@charset "UTF-8";
/* CSS Document */



/*----fv----------------------------*/



@media screen and (max-width:979px) {

}
@media screen and (max-width:768px) {
	
}
@media screen and (max-width:520px) {
	
}





/*----コンテンツsection----------------------------*/
section.cont{
	position: relative;
	margin-top: 100px;
	padding-bottom: 100px;
	overflow: hidden;
}
section.cont_01{
	margin-top: 120px;
}
.cont:before{
	content: "";
	position: absolute;
	display: block;
	width: calc((100% / 6) *5);
	height: 50%;
	top: 0;
	right: 0;
	background-color: var(--main-bg-color);
	z-index: -10;
}
.cont.cont_02:before{
	right: auto;
	left: 0;
}
.cont:after{
	content: "Ventilation \A air conditioningPlumbing";
	position: absolute;
	display: block;
	width: calc((100% / 6) *5);
	top: 0;
	right: 0;
	font-size: 10rem;
	line-height: .8;
	letter-spacing: .05em;
	font-weight: 700;
	text-align: right;
	white-space: pre;
	color: #fff;
	opacity: .4;
	z-index: -1;
}
.cont.cont_02:after{
	content: "Plumbing \A and sanitary";
	right: auto;
	left: 0;
	text-align: left;
}
.cont.cont_03:after{
	content: "Plant piping";
}
.cont .wrapper{
	position: relative;
	width: calc((100% / 12) *11);
	margin-right: auto;
}
.cont.cont_02 .wrapper{
	margin-right: 0;
	margin-left: auto;
}
.cont .wrapper .img{
	position: absolute;
	width: calc((100vw / 12) * 5);
	aspect-ratio: 3 / 2;
	top: 60px;
	left: 0;
	right: auto;
}
.cont .wrapper .img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.cont.cont_02 .wrapper .img{
	left: auto;
	right: 0;
}
.cont .wrapper .txt{
	width: calc((100vw / 12) * 7);
	padding-top: 150px;
	margin-left: auto;
}
.cont.cont_02  .wrapper .txt{
	margin-left: auto;
	margin-right: calc(100vw / 3);
}
.cont .wrapper .txt .inner{
	background-color: var(--main-color);
	padding: 60px calc(100vw / 12) 60px calc((100vw / 12) * 1.5);
}
.cont.cont_02 .wrapper .txt .inner{
	background-color: var(--main-color);
	padding: 60px calc((100vw / 12) * 1.5) 60px calc(100vw / 12);
}
.cont .wrapper .txt .cont_ttl{
	position: relative;
	font-size: 3rem;
	line-height: 1.5;
	letter-spacing: .1em;
	font-weight: 600;
	color: #fff;
	margin-bottom: 40px;
	padding-top: 30px;
}
.cont .wrapper .txt .cont_ttl:after{
	content: "Service 01";
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	font-size: 2rem;
	line-height: 1;
	letter-spacing: 0;
	font-family: "davis-sans", sans-serif;
	font-weight: 700;
	color: #fff;
	background-color: #22a1d8;
}
.cont.cont_02 .wrapper .txt .cont_ttl:after{
	content: "Service 02";
}
.cont.cont_03 .wrapper .txt .cont_ttl:after{
	content: "Service 03";
}
.cont .wrapper .txt p{
	font-size: 1.6rem;
	line-height: 1.5;
	letter-spacing: .14em;
	color: #fff;
	text-align: justify;
}


@media screen and (min-width:1899px) {
	section.cont{
		margin-top: 100px;
		padding-bottom: 120px;
	}
	.cont .wrapper .img{
		position: absolute;
		width: calc((100vw / 3) * 1);
		aspect-ratio: 3 / 2;
		top: 60px;
		left: calc((100vw / 12) * 1);
		right: auto;
	}
	.cont.cont_02 .wrapper .img{
		left: auto;
		right: calc((100vw / 12) * 1);
	}
	.cont .wrapper .img img{
		width: 100%;
		max-height: 500px;
		object-fit: cover;
	}
	.cont .wrapper .txt{
		width: calc((100vw / 12) * 7);
		padding-top: 150px;
		margin-left: auto;
	}
}
@media screen and (max-width:979px) {

}
@media screen and (max-width:768px) {
	.cont:before {
	    height: 80%;
	}
	.cont .wrapper .img {
	    position: initial;
	    width: calc((100vw / 3) * 2);
	    padding-top: 60px;
	}
	.cont.cont_02 .wrapper .img {
	    margin-left: auto
	}
	.cont .wrapper .txt {
	    width: calc((100vw / 6) * 5);
	    margin-left: auto;
	    margin-top: -40px;
	    padding-top: 0;
	}
	.cont .wrapper .txt .inner {
	    padding: 80px 60px 60px;
	}
}

@media screen and (max-width:520px) {
	section.cont{
		padding-bottom: 60px;
		margin-top: 80px;
	}
	.cont:before {
		width: 100%;
	    height: 100%;
	}
	.cont:after{
		font-size: 6rem;
	}
	.cont .wrapper{
		position: relative;
		width: calc((100% / 12) *11);
		margin-right: 0;
		margin-left: auto;
	}
	.cont.cont_02 .wrapper{
		margin-right: auto;
		margin-left: 0;
	}
	.cont .wrapper .img {
	    position: initial;
	    width: calc((100vw / 12) * 11);
	    padding-top: 60px;
	    margin-left: calc((100vw / 12) * -1);
	}
	.cont.cont_02 .wrapper .img {
	    margin-right: calc((100vw / 12) * -1);
	}
	.cont .wrapper .txt {
	    width: calc((100vw / 12) *11);
	    margin-left: auto;
	    margin-top: -40px;
	    padding-top: 0;
	}
	.cont .wrapper .txt .inner {
	    padding: 80px 20px 60px;
	}
	.cont.cont_02 .wrapper .txt .inner {
	    padding: 80px 20px 60px;
	}
	.cont .wrapper .txt .cont_ttl{
		font-size: 2.4rem;
		margin-bottom: 20px;
    	padding-top: 20px;
	}
	.cont .wrapper .txt .cont_ttl:after{
		font-size: 1.6rem;
	}
	.cont .wrapper .txt p{
		font-size: 1.4rem;
		line-height: 1.5;
	}

}

/*----slider----------------------------*/

.cont .slick-dots{
	text-align: right;
}
.cont.cont_02 .slick-dots{
	text-align: left;
}
.cont .slick-dots li{
	width: 5px;
	height: 5px;
	background-color: var(--text-color-lightgray);
	border-radius: 10px;
	margin: 10px 5px;
}
.cont .slick-dots li.slick-active{
	background-color: #22a1d8;
}
@media screen and (max-width:768px) {
	.cont .slick-dots{
		padding: 0 calc((100vw / 4) * 1);
	}
}
@media screen and (max-width:520px) {
	.cont .slick-dots{
		padding: 0 calc((100vw / 12) * 1);
	}
}