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

.main-wrap .cate_wrap .cate1 .boxwrap .box{
	position: relative;
	padding: 0 5%;
}
.main-wrap .cate_wrap .cate1 .boxwrap .box:not(:last-of-type){
	margin-bottom: 100px;
}
.main-wrap .cate_wrap .cate1 .boxwrap .box:nth-of-type(even){
	flex-direction: row-reverse;
}
.main-wrap .cate_wrap .cate1 .boxwrap .box::after{
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background-color: #E6EDE9;
	width: 100%;
	height: 90%;
	z-index: 1;
}
.main-wrap .cate_wrap .cate1 .boxwrap .box > div{
	position: relative;
	z-index: 2;
}
.main-wrap .cate_wrap .cate1 .boxwrap .box .imgbox{
	width: 40%;
	position: relative;
	box-shadow: 20px 20px 0 #2E9568;
}
.main-wrap .cate_wrap .cate1 .boxwrap .box .imgbox p{
	position: absolute;
  	font-size: clamp(24px, 2.8vw, 40px);
	top: 0;
	right: 0px;
	transform: translateX(100%);
	white-space: nowrap;
}
.main-wrap .cate_wrap .cate1 .boxwrap .box .txtbox{
	width: 60%;
}
.main-wrap .cate_wrap .cate1 .boxwrap .box:nth-of-type(odd) .txtbox{
	padding-left: 10%;
}
.main-wrap .cate_wrap .cate1 .boxwrap .box:nth-of-type(even) .txtbox{
	padding-right: 10%;
}
.main-wrap .cate_wrap .cate1 .boxwrap .box .title_left_line span{
	font-family: "Zen Old Mincho","游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
	font-size: clamp(20px, 2.2vw,30px);
	font-weight: 700;
	padding-left: 5px;
}

.main-wrap .cate_wrap .cate2{
	position: relative;
	padding-top: 80px;
	padding-bottom: 80px;
}
body.on .main-wrap .cate_wrap .cate2::after{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.60);
}
.main-wrap .cate_wrap .cate2 > div{
	position: relative;
	z-index: 3;
}
.main-wrap .cate_wrap .cate2 .titlebox p{
	font-size: clamp(24px, 4vw,60px);
	font-weight: 600;
	letter-spacing: 0.2rem;
}
.main-wrap .cate_wrap .cate2 .contact_box{
	max-width: 1100px;
	margin: 0 auto;
	padding: 30px;
	gap: 30px;
}
.main-wrap .cate_wrap .cate2 .contact_box > div{
	padding-left: 30px;
	border-left: 1px solid #B1B1B1;
	gap: 30px;
}
.main-wrap .cate_wrap .cate2 .contact_box .tel_link p{
	color: #248C5E;
}
/* ---------- IEのみ ---------- */
@media all and (-ms-high-contrast: none) {
}
/* ---------- 1280px ~ ---------- */
@media screen and (max-width: 1280px){

}
/* ---------- 1080px ~ ---------- */
@media screen and (max-width: 1080px){
	.main-wrap .cate_wrap .cate1{
		padding-left: 0;
		padding-right: 0;
	}
	.main-wrap .cate_wrap .cate1 .boxwrap .box{
		position: relative;
		padding: 0 5%;
	}
.main-wrap .cate_wrap .cate1 .boxwrap .box:not(:last-of-type){
	margin-bottom: 80px;
}
	.main-wrap .cate_wrap .cate2 .contact_box{
		gap: 20px;
	}
.main-wrap .cate_wrap .cate2 .contact_box > div{
	padding-left: 0px;
	border-left: none;
	gap: 20px;
	width: 100%;
}
	
}
/* ---------- 768px ~ ---------- */
@media screen and (max-width: 768px){

}
/* ---------- 576px ~ ---------- */
@media screen and (max-width: 576px){
.main-wrap .cate_wrap .cate1 .boxwrap .box:not(:last-of-type){
	margin-bottom: 50px;
}
	.main-wrap .cate_wrap .cate1 .boxwrap .box{
		position: relative;
		padding: 40px 20px;
	}
.main-wrap .cate_wrap .cate1 .boxwrap .box::after{
	height: 100%;
}
	.main-wrap .cate_wrap .cate1 .boxwrap .box .imgbox{
		width: 80%;
		box-shadow: 15px 15px 0 #2E9568;
		margin-bottom: 30px;
	}
	.main-wrap .cate_wrap .cate1 .boxwrap .box .txtbox{
		width: 100%;
	}
	.main-wrap .cate_wrap .cate1 .boxwrap .box:nth-of-type(odd) .txtbox{
		padding-left: 0;
	}
	.main-wrap .cate_wrap .cate1 .boxwrap .box:nth-of-type(even) .txtbox{
		padding-right: 0;
	}

}
/* ---------- 350px ~ ---------- */
@media screen and (max-width: 350px){
}

