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

/* ---------- cate1 ---------- */
.cate1{
	position: relative;
}
.cate1::after{
	position: absolute;
	content:"";
	background-color: #D7DBC7;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 30vw;
	z-index: 1;
}
.cate1 .box_wrap{
	position: relative;
	gap: 100px;
	z-index: 2;
	padding-bottom: 150px;
}
.cate1 .box_wrap .leftbox{
	width: calc(60% - 50px);
	padding-left: 100px;
}
.cate1 .box_wrap .rightbox{
	width: calc(40% - 50px);
	margin-top: -50px;
}

.cate1 .box_wrap .rightbox img{
    width: 80%;
    display: block;
    height: auto;
	margin-left: auto;
}
.cate1 .box_wrap .leftbox img{
	width: 420px;
	margin-right: auto;
}
.cate1 .box_wrap .leftbox p{
	width: 90%;
	margin-left: auto;
	margin-top: 100px;
}
/* ---------- cate2 ---------- */
.cate2 .box_wrap{
	gap: 40px;
}
.cate2 .box_wrap .boxitem{
	gap: 40px;
	border-bottom: #8B8B8B66 1px solid;
	padding-bottom: 60px;
}
.cate2 .box_wrap .boxitem .meritbox p{
	line-height: 1;
}
.cate2 .box_wrap .boxitem .meritbox{
	width: 14%;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	border: #8B8B8B66 1px solid;
}
.cate2 .box_wrap .boxitem .imgbox{
	width: 30%;
}
.cate2 .box_wrap .boxitem .txtbox{
	flex: 1;
}
/* ---------- cate3 ---------- */
.cate3 .box_wrap{
	gap: 60px 0px;
	align-items: flex-start;
}
.cate3 .box_wrap .box-item{
	position: relative;
	width: 50%;
	z-index: 1;
}
.cate3 .box_wrap .box-item:nth-of-type(2){
	animation-delay: 0.2s;
}
.cate3 .box_wrap .box-item:nth-of-type(3){
	animation-delay: 0.2s;
}
.cate3 .box_wrap .box-item .imgbox{
	position: relative;
	z-index: 1;
	margin-bottom: -20%;
}
.cate3 .box_wrap .box-item .imgbox .label{
	position: absolute;
	top: -20px;
	right: 20px;
	background-color: #375213;
	padding: 10px 5px;
}

.cate3 .box_wrap .box-item .txtbox{
	position: relative;
	width: 90%;
	margin-left: 10%;
	gap: 20px;
	background-color: #FFFFFF;
	padding: 30px;
	align-items: flex-start;
	color: #222222;
	z-index: 2;
	margin: 0 auto;
}

/* ---------- IEのみ ---------- */
@media all and (-ms-high-contrast: none) {
}
/* ---------- 1280px ~ ---------- */
@media screen and (max-width: 1280px){

	.cate1 .box_wrap {
		position: relative;
		gap: 50px;
		z-index: 2;
		padding-bottom: 150px;
	}
	.cate1 .box_wrap .leftbox{
		width: calc(60% - 25px);
		padding-left: 0px;
	}
	.cate1 .box_wrap .rightbox{
		width: calc(40% - 25px);
		margin-top: -50px;
	}
	.cate1::after {
		height: 45vw;
	}
}
/* ---------- 1080px ~ ---------- */
@media screen and (max-width: 1080px){
    .cate1 .box_wrap {
        flex-direction: column;
    }
    .cate1 .box_wrap .leftbox {
        width: 100%;
    }
	.cate1 .box_wrap .leftbox p {
		width: 100%;
		margin-top: 50px;
	}
	.cate1 .box_wrap .leftbox img {
		width: 50%;
		margin-left: auto;
	}
	.cate1 .box_wrap .rightbox img {
		width: 100%;
	}
	.cate1 .box_wrap .rightbox{
		width: 40%;
		margin-top: 0px;
		margin-left: auto;
	}
	.cate1::after {
		height: 100vw;
	}
	.cate2 .box_wrap .boxitem {
		flex-direction: column;
	}
	.cate2 .box_wrap .boxitem .imgbox{
		width: 60%;
	}
	.cate2 .box_wrap .boxitem .txtbox{
		width: 60%;
	}
	.cate2 .box_wrap .boxitem .meritbox{
		width: 140px;
	}
	.cate3 .box_wrap{
		flex-direction: column;
	}
	.cate3 .box_wrap .box-item{
		width: 80%;
		margin: 0 auto;
	}
}
/* ---------- 768px ~ ---------- */
@media screen and (max-width: 768px){
	.cate1 .box_wrap {
		padding-bottom: 100px;
	}
    .cate1 .box_wrap .leftbox img {
        width: 80%;
    }
    .cate1 .box_wrap .leftbox p {
        margin-top: 30px;
    }
    .cate1 .box_wrap {
        gap: 30px;
    }
	.cate2 .box_wrap .boxitem .imgbox{
		width: 80%;
	}
	.cate2 .box_wrap .boxitem .txtbox{
		width: 80%;
	}
	.cate3 .box_wrap .box-item{
		width: 100%;
	}
    .cate3 .box_wrap {
        gap: 60px;
    }
	.cate3 .box_wrap .box-item .txtbox {
		gap: 10px;
		margin-left: 5%;
	}
}
/* ---------- 576px ~ ---------- */
@media screen and (max-width: 576px){
	.cate1 .box_wrap {
		padding-bottom: 80px;
	}
	.cate1::after {
		height: 150vw;
	}
	.cate2 .box_wrap .boxitem {
		gap: 30px;
	}
	.cate2 .box_wrap .boxitem .meritbox{
		width: 110px;
	}

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

