@charset "utf-8";
/* CSS Document */

/*===================================
	.comms.block01
=====================================*/

.comms.block01{
	padding: 29px 0 77px;
}

.comms.block01.bg-color{
	padding: 40px 0 70px;
	background: #fffbee;
	margin-bottom: 56px;
	position: relative;
}

/* ── 上の装飾（17pxはみ出す） ── */
.comms.block01.bg-color::before {
    content: '';
    position: absolute;
    
    /* 天辺から17px上に配置 */
    top: -17px; 
    left: 50%;
    width: 100vw;
    height: 34px; /* 円の直径 */
    transform: translateX(-50%);
    z-index: -1;

    background-image: radial-gradient(#fffbee 70%, transparent 71%);
    background-size: 34px 34px;
    background-repeat: repeat-x;
    background-position: center top;
}

/* ── 下の装飾（16pxはみ出す） ── */
.comms.block01.bg-color::after {
    content: '';
    position: absolute;
    
    /* 底辺から16px下に配置 */
    bottom: -16px; 
    left: 50%;
    width: 100vw;
    height: 34px; /* 円の直径 */
    transform: translateX(-50%);
    z-index: -1;

    background-image: radial-gradient(#fffbee 70%, transparent 71%);
    background-size: 34px 34px;
    background-repeat: repeat-x;
    background-position: center top; 
}


.comms.block01 .sec-inner p{
	font-size: 100%;
	line-height: 1.85;
	letter-spacing: 0.05em;
	text-align: justify;
	color: #333333;
}

.comms.block01 .sec-inner p.large_txt{
	font-size: 111.11%;/*15*/
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #754c24;
	text-align: justify;
}

.comms.block01 .sec-inner p a{
	color: #0056b3;
	text-decoration: underline;
}

/**/

.comms.block01 .sec-inner .large_img{
	width: 92.17%;/*553*/
	margin: 0 auto;
}

.comms.block01 .sec-inner .large_img img{
	width: 100%;
	height: auto;
}

/**/

.comms.block01 .sec-inner .check_list_btn{
	width: 100%;
	position: relative;
}

.comms.block01 .sec-inner .check_list_btn::before{
	content: '';
	background: url("../images/comms/sp_checklist_shadow.webp")no-repeat;
	background-size: 100% auto;
	width: 100vw;
	height: auto;
	aspect-ratio: 720 / 260;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
}

.comms.block01 .sec-inner .check_list_btn a{
	display: flex;
	align-items: center;
	width: 100%;
	height: 80px;
	border-radius: 10px;
	background-image: url("../images/common/link_ico_col06.svg");
	background-repeat: no-repeat;
	background-size: 6.67% auto;/*40*/
	background-position: right 5.5% center;/*33*/
	background-color: #fff;
	font-size: 107.41%;/*14.5*/
	line-height: 1.21;
	letter-spacing: 0.1em;
	color: #000;
	text-decoration: none;
	padding-left: 31.67%;/*190*/
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);	
	box-sizing: border-box;
	position: relative;
}

.comms.block01 .sec-inner .check_list_btn a::before{
	content: '';
	background: url("../images/comms/checklist_ico.webp")no-repeat;
	background-size: 100% auto;
	width: 20.67%;/*124*/
	height: auto;
	aspect-ratio: 124 / 78;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 5.83%;/*35*/
	z-index: 1;
}

.comms.block01 .sec-inner .check_list_btn a p{
	line-height: 1.21;
}

/**/

.comms.block01 .sec-inner .comms_list{
	list-style: none;
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 32px 0;
	position: relative;
	z-index: 1;
}

.comms.block01 .sec-inner .comms_list::before{
	content: '';
	background: url("../images/comms/sp_cl_shadow.webp")no-repeat;
	background-size: 100% 100%;
	width: 100vw;
	height: calc(100% + 22px);
	position: absolute;
	top: 16px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.comms.block01 .sec-inner .comms_list .list01{
	width: 100%;
}

.comms.block01 .sec-inner .comms_list .list01 a{
	display: block;
	width: 100%;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
	padding: 0px 0 14px;
	box-sizing: border-box;
	text-decoration: none;
}

.comms.block01 .sec-inner .comms_list .list01 a p.link_head{
	display: flex;
	align-items: center;
	width: 86.67%;/*520*/
	height: 65px;
	padding-left: 25.17%;/*151*/
	border-bottom: 1px solid rgba(0,164,152,0.5);
	box-sizing: border-box;
	font-size: 111.11%;/*15*/
	line-height: 1.17;
	color: #333333;
	margin: 0 auto;
	background-image: url("../images/common/link_ico_col06.svg");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 7.69% auto;/*40*/
	position: relative;
}

.comms.block01 .sec-inner .comms_list .list01 a p.link_head::before{
	content: '';
	background: url("../images/comms/comms_ico01.webp")no-repeat;
	background-size: 100% auto;
	width: 18.85%;/*98*/
	height: auto;
	aspect-ratio: 98 / 82;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 3.08%;/*16*/
	z-index: 1;
}

.comms.block01 .sec-inner .comms_list .list01:nth-child(2) a p.link_head::before{
	background: url("../images/comms/comms_ico02.webp")no-repeat;
	background-size: 100% auto;
}

.comms.block01 .sec-inner .comms_list .list01:nth-child(3) a p.link_head::before{
	background: url("../images/comms/comms_ico03.webp")no-repeat;
	background-size: 100% auto;
}

.comms.block01 .sec-inner .comms_list .list01:nth-child(4) a p.link_head::before{
	background: url("../images/comms/comms_ico04.webp")no-repeat;
	background-size: 100% auto;
}

.comms.block01 .sec-inner .comms_list .list01 a p.link_txt{
	padding: 11px 5.5% 0 7.0%;/*33 42*/
	box-sizing: border-box;
	line-height: 1.48;
}