@charset "utf-8";
/* CSS Document */
.cate_wrap .cate .box_wrap .box{
	margin-top: 100px;
}

.item_wrap .item .img_wrap{
	padding: 30px;
}
.item_wrap .item .img_wrap > div{
	gap: 30px;
}
.item_wrap .item .img_wrap > div a{
	width: calc(100% / 4 - 90px / 4);
}

.item_wrap .item:not(:last-of-type){
	margin-bottom: 30px;
}
.item_wrap .item .titlebox{
	position: relative;
	padding: 15px 60px;
	cursor: pointer;
	background-color: #666666;
	color: #fff;
}
.item_wrap .item .titlebox .icon{
	position: absolute;
	top: 50%;
	right: 20px;
	width: 30px;
}
.item_wrap .item .titlebox .icon::before,.item_wrap .item .titlebox .icon::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	height: 2px;
	background-color: #fff;
	transition: ease 0.3s;
}
.item_wrap .item .titlebox .icon::after{
	transform: translate(-50%,-50%) rotate(90deg);
}
.item_wrap .item .titlebox.on .icon::after{
	transform: translate(-50%,-50%) rotate(0deg);
}
body.on .item_wrap .item .img_wrap{
	display: none;
}
/* ---------- IEのみ ---------- */
@media all and (-ms-high-contrast: none) {
}
/* ---------- 1280px ~ ---------- */
@media screen and (max-width: 1280px){

}
/* ---------- 1080px ~ ---------- */
@media screen and (max-width: 1080px){
	.item_wrap .item .titlebox .icon{
		position: absolute;
		top: 50%;
		right: 20px;
		width: 25px;
	}
	.item_wrap .item .titlebox .icon::before,.item_wrap .item .titlebox .icon::after{
		height: 3px;
	}

}
/* ---------- 768px ~ ---------- */
@media screen and (max-width: 768px){
	.cate_wrap .cate .box_wrap .box{
		margin-top: 80px;
	}
	.item_wrap .item .img_wrap{
		padding: 20px;
	}
	.item_wrap .item .img_wrap > div{
		gap: 20px;
	}
	.item_wrap .item .img_wrap > div a{
		width: calc(100% / 4 - 60px / 4);
	}

}
/* ---------- 576px ~ ---------- */
@media screen and (max-width: 576px){
	.cate_wrap .cate .box_wrap .box{
		margin-top: 50px;
	}
	.item_wrap .item .titlebox .icon{
		position: absolute;
		top: 50%;
		right: 15px;
		width: 18px;
	}
	.item_wrap .item .titlebox .icon::before,.item_wrap .item .titlebox .icon::after{
		height: 2px;
	}
	.item_wrap .item .titlebox{
		padding: 15px 40px;
	}
	.item_wrap .item .img_wrap{
		padding: 20px;
	}
	.item_wrap .item .img_wrap > div{
		gap: 20px;
	}
	.item_wrap .item .img_wrap > div a{
		width: calc(100% / 2 - 20px / 2);
	}
}
/* ---------- 350px ~ ---------- */
@media screen and (max-width: 350px){
}

