@charset "utf-8";

/*----- service -----*/
.ttl_wrap.service{background:url(/img/common/h1_business.jpg) no-repeat center/cover;}
.ttl_wrap.service{margin-bottom:0 !important;}
.page_ttl.service::after{left:206px;}
.page_ttl{margin-bottom:77px;}
.parent_catch{
	text-align:center;
	margin-bottom:100px;
}
.biz_list{padding:0;}
.biz_item{list-style:none;}
.biz_head{
	padding:0;
	margin:0 0 30px;
	font-size:3.2rem;
	line-height:4rem;
	font-weight:normal;
	letter-spacing:3.06px;
}
.biz_head::before{display:none;}

.biz_item:not(:last-child){margin-bottom:70px;}
.biz_link{
	display:flex;
	text-decoration:none;padding:80px 0;
	position:relative;
}
.biz_item:nth-child(even) .biz_link{flex-direction:row-reverse;}
.biz_link::before{
	position:absolute;
	content:'';
	display:inline-block;
	height:100%;
	width:100vw;
	z-index:-10;
	top:0;
}
.biz_item:nth-child(odd) .biz_link::before{
	background:#18326B;
	margin-left:calc(50% - 50vw);
	right:60px;
}
.biz_item:nth-child(even) .biz_link::before{
	background:#304572;
	margin-right:calc(50% - 50vw);
	left:60px;
}
.biz_txt_wrap,.biz_img_wrap{width:50%;}
.biz_txt_wrap{
	color:#fff;
	position:relative;
}
.biz_item:nth-child(odd) .biz_txt_wrap{padding-right:30px;}
.biz_item:nth-child(even) .biz_txt_wrap{padding-left:30px;}

.biz_img_wrap{overflow: hidden;}
.biz_img_wrap img{width:100%;transition: transform 0.3s;}
.biz_item:hover .biz_img_wrap img{transform:scale(1.05);}

.read_more{
	position:absolute;
	right:40px;
	margin-bottom:0;
	font-family:'Teko', sans-serif;
	font-size:1.8rem;
	letter-spacing:1.8px;
}
.more_txt{
	position:relative;
	display:block;
	padding-right:110px;
}
.read_more::before,
.more_txt::before,
.more_txt::after{
	content:'';
	position:absolute;
	top:0;
	bottom:2px;
	margin:auto;
}
.read_more::before{
	right:0;
	width:25px;
	height:25px;
	border:1px solid #fff;
	border-radius:50%;
	transition:transform 0.4s;
}
.biz_link:hover .read_more::before{transform:scale(0.8);}
.more_txt::before{
	right:12px;
	width:88px;
	height:1px;
	background:#fff;
}
.biz_link:hover .more_txt::before{animation:lineHover 0.6s;}
.more_txt::after{
	right:10px;
	width:5px;
	height:5px;
	background:#fff;
	border-radius:50%;
}
@keyframes lineHover{
	0%{
		transform-origin:right top;
		transform:scaleX(1);
	}
	50%{
		transform-origin:right top;
		transform:scaleX(0);
	}
	51%{
		transform-origin:left top;
		transform:scaleX(0);
	}
	100% {
		transform-origin:left top;
		transform:scaleX(1);
	}
}

/*----- service c2-----*/
.page_ttl_c2{
	font-size:3.2rem;
	letter-spacing:5.76px;
	line-height:6rem;
	color:#333;
	font-weight:bold;
	max-width:1140px;
	padding:80px 20px 33px 20px;
	margin:0 auto;
}
.page_ttl_c2::before{
	display:block;
	content:'サービス紹介';
	font-size:1.3rem;
	letter-spacing:2.34px;
	line-height:4rem;
	color:#062461;
}
.page_ttl_c2::after{display:none;}

.service_c2_head{
	border:4px solid #18326B;
	padding:30px 20px 10px;
	text-align:center;
	color:#18326B;
}
.service_c2_catch{
	font-size:2.4rem;
	letter-spacing:4.32px;
	line-height:4.5rem;
	font-weight:bold;
	margin-bottom:10px;
}
.service_c2_p{
	font-weight:500;
}

.chosen_box{
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	gap:30px;
	padding:40px;
	background:#F5F5F5;
}
.chosen_item{
	background:#FFFFFF;
	padding:18px 30px 5px 30px;
}
.chosen_h3{
	font-size:1.8rem;
	letter-spacing:3px;
	line-height:3rem;
	color:#18326B;
	text-align:center;
	margin:0;
	padding-bottom:11px;
}
.span_br{display: block !important;}
.chosen_h3::after{display:none;}
.chosen_h3 span{
	display:inline-block;
	font-size:3rem;
	letter-spacing:3px;
	line-height:4rem;
	font-weight:500;
	font-family:'Teko', sans-serif;
	margin-bottom:20px;
	position:relative;
}
.chosen_h3 span::after{
	position:absolute;
	display:block;
	content:'';
	background:#062461;
	width:20px;
	height:2px;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
}
.chosen_p{
	font-size:1.3rem;
	letter-spacing:1.3px;
	gap:15px 20px;
}

.reverse_item{
	display:flex;
	flex-direction:column-reverse;
	justify-content:flex-end;
}
.flow_list{padding-left:0;}
.flow_item{
	background:#F5F5F5;
	padding:22px 30px 1px 30px;
	list-style:none;
	position:relative;
}
.flow_item:not(:last-child){margin-bottom:52px;}
.flow_item:not(:last-child)::after{
	display:inline-block;
	position:absolute;
	content:'';
	width:40px;
	height:14px;
	background:#566382;
	clip-path:polygon(0 0, 50% 100%, 100% 0);
	right:0;
	left:0;
	bottom:-32px;
	margin:auto;
}
.flow_ttl{
	margin:0;
	padding-bottom:5px;
}
.flow_ttl::after{display:none;}
.flow_ttl span{
	display:inline-block;
	font-size:3rem;
	letter-spacing:3px;
	line-height:4.3rem;
	font-weight:500;
	font-family:'Teko', sans-serif;
	margin-right:16px;
	color:#18326B;
	position:relative;
}
.flow_ttl span::after{
	position:absolute;
	display:block;
	content:'';
	background:#062461;
	width:20px;
	height:2px;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
}
.flow_txt{margin-left:40px;}

h5{
	font-size: 1.7rem;
	letter-spacing: 1.7px;
	line-height: 3.5rem;
	font-weight: bold;
	color: #062461;
	margin: 25px 0 15px;
}

ul.column_2,ul.column_3,ol.column_2,ol.column_3{padding-left:0;}
.column_2 li,.column_3 li{list-style:none;padding-left:0;margin-bottom:10px;}
.column_3 h3{margin:13px 0 16px;}
.column_3 p{margin-bottom:5px;}

a.back_btn[target="_blank"]{
	padding-right: 0;
	background: none;
}
.left_btn{margin-left: 0;}
.case_list{margin-bottom: 30px;}

/*----- resin -----*/
.processing_list{
	display:grid;
	grid-template-columns:1fr 1fr 1fr 1fr;
	gap:5px 20px;
	border:1px solid #DDDDDD;
	padding:25px 40px 25px 60px;
}
.processing_item{margin-bottom:0 !important;}

.delivery_list{padding-left:0;}
.delivery_item{
	list-style:none;
	margin-bottom:0 !important;
}
.column_353{
	display:grid;
	grid-template-columns:353px auto;
	gap:20px;
	margin-top:30px;
}

.facility {table-layout: auto !important;}

/*----- roof -----*/
.active_list{padding-left: 0;}
.active_item{list-style: none;}

.ba_box{
	padding: 40px 40px 15px;
	background: #F5F5F5;
}
.ba_list{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	margin-bottom: 25px;
}
.be_item{position: relative;}
.be_item::after{
	position: absolute;
	display: inline-block;
	content: '';
	width: 14px;
	height: 40px;
	background: #566382;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 0;
	bottom: 0;
	right: -27px;
	margin: auto;
}
.ba_item img{width: 100%;}
.ba_txt{
	font-size: 1.8rem;
	letter-spacing: 3.24px;
	line-height: 2.6rem;
	font-weight: bold;
	color: #fff;
	text-align: center;
	padding: 11px 20px 12px;
}
.ba_txt p{margin-bottom: 0 !important;}
.be_txt{background: #556282;}
.af_txt{background: #0F348E;}

/*-----products-----*/
.sale_img{border: 1px solid #CCCCCC;}
@media screen and (max-width:1023px){
/*----- service -----*/
.biz_head{
	font-size:2.8rem;
}
/*----- service c2-----*/
.chosen_box{
	grid-template-columns:1fr;
	gap:25px;
	padding:25px;
}
.chosen_item{padding:12px 30px 1px 30px;}
.chosen_h3 span{margin-bottom:11px;}
.chosen_h3 br{display: none;}

/*----- service -----*/
.page_ttl.service::after{left:190px;}

}


@media screen and (max-width:767px){

/*----- service -----*/
.page_ttl{margin-bottom:40px;}
.page_ttl.service::after{left:165px;}
.parent_catch {
	text-align:left;
	margin-bottom:37px;
}
.biz_head{
	font-size:2.4rem;
	letter-spacing:4.32px;
	line-height:3.4rem;
	margin:30px 0 20px;
}
.biz_txt{
	margin-bottom:20px;
}
.biz_item:not(:last-child) {
	margin-bottom:40px;
}
.biz_link{padding:40px 0 65px;}
.biz_link,.biz_item:nth-child(even) .biz_link{flex-direction:column-reverse;}
.biz_txt_wrap, .biz_img_wrap{width:100%;}
.biz_item:nth-child(odd) .biz_link::before{right:20px;}
.biz_item:nth-child(even) .biz_link::before{left:20px;}
.biz_item:nth-child(odd) .biz_txt_wrap{padding-right:40px;}
.biz_item:nth-child(even) .biz_txt_wrap{padding-left:40px;}
.biz_item:nth-child(even) .read_more {right:0;}

/*----- service c2-----*/
.page_ttl_c2{
	font-size:2.6rem;
	letter-spacing:4.68px;
	padding:50px 20px 36px 20px;
}
.page_ttl_c2::before{
	font-size:1.2rem;
	letter-spacing:2.16px;
	line-height:3rem;
}

.service_c2_head{
	padding:33px 23px 10px;
	text-align:left;
}
.service_c2_catch{
	font-size:1.8rem;
	letter-spacing:3.24px;
	line-height:3rem;
	margin-bottom:26px;
}
.service_c2_catch br{display:none;}
.chosen_item{padding:12px 15px 1px 15px;}
.flow_item{
	padding:15px 30px 22px;
}
.flow_item:not(:last-child){margin-bottom:55px;}
.flow_item:not(:last-child)::after{bottom:-34px;}
.flow_txt{margin-left:40px;margin-bottom: 0;}
.flow_ttl{margin-bottom: 0;}
.column_3 p{margin-bottom:5px;}

/*----- resin -----*/
.processing_list{
	grid-template-columns:1fr;
	gap:9px;
	padding:23px 20px 27px 37px;
}
.column_353{
	grid-template-columns:1fr;
	margin-top:23px;
}
.delivery_info{margin-bottom: 7px;}
.delivery_img img{width:100%;}

/*----- roof -----*/
.ba_box{
	padding: 30px 25px 5px;
}
.ba_list{
	grid-template-columns: 1fr;
	gap: 45px;
	margin-bottom: 16px;
}
.be_item::after{
	width: 40px;
	height:14px;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	top: auto;
	bottom: -30px;
	right: 0;
	left: 0;
}
.ba_txt{
	font-size: 1.3rem;
	letter-spacing: 2.34px;
	line-height: 1.9rem;
	padding:3px 10px 3px;
}
}
