@charset "utf-8";

/* -----------------------------
	下層共通
-------------------------------- */
/* -----------------------------
	service-area
-------------------------------- */
.service-area{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 30px 0;
	padding: 80px 0;
}
.service-area .ttl-m{
	width: 100%;
}
.service-area .service-box{
	border-radius: 15px;
	background-color: var(--main-bg);
	position: relative;
	z-index: 1;
	width: calc((100% - 60px) /3 );
	width: 380px;
	padding: 0px;
	gap: 20px;
	display: block;
	position: relative;
	top: 0px;
	transition: .5s;
}
.service-area .service-box::before{
	position: absolute;
	content: "";
	width: 150px;
	height: 150px;
	border-radius: 15px 0 0 0;
	background-color: var(--main-color);
	left: 0;
	top: 0;
	z-index: -1;
}
.service-area .service-box .thumb{
	width: 320px;
	height: 180px;
	border-radius: 15px;
	object-fit: cover;
}
.service-area .service-box .ttl-fxbox{
	display: block;
}
.service-area .service-box .ttl-fxbox .ttl{
	font-weight: bold;
	/* color: var(--main-color); */
	font-size: 3.0rem;
	margin: 20px 0 15px;
}
.service-area .service-box .ttl-fxbox .catch{
	font-size: 1.6rem;
	text-align: left;
	font-weight: 500;
}
.service-area .service-box:hover{
	top: -5px;
	transition: .5s;
}
.service-area .service-box a{
	display: block;
	width: 100%;
	height: 100%;
	padding: 30px 30px 40px;
	position: relative;
}
.service-area .service-box a::before{
	position: absolute;
	content: "";
	width: 17px;
	height: 13px;
	right: 20px;
	bottom: 20px;
}
.service-area .service-box.ihin-seiri a::before{
	background: url(../img/arrow-ihin.svg) no-repeat right center / cover;
}
.service-area .service-box.special-cleanup a::before{
	background: url(../img/arrow-special.svg) no-repeat right center / cover;
}
.service-area .service-box.fire-cleanup a::before{
	background: url(../img/arrow-fire.svg) no-repeat right center / cover;
}
.service-area .service-box.garbage-cleanup a::before{
	background: url(../img/arrow-garbage.svg) no-repeat right center / cover;
}
.service-area .service-box.demolition a::before{
	background: url(../img/arrow-demolition.svg) no-repeat right center / cover;
}
.service-area .service-box.restoration a::before{
	background: url(../img/arrow-restoration.svg) no-repeat right center / cover;
}

@media screen and (max-width: 768px) {
	.service-area{
		padding: 50px 20px;
		margin: 0;
		gap: 15px;
	}
	.service-area .service-box{
		width: 100% !important;
		gap: 20px;
	}
	.service-area .service-box::before{
		width: 90px;
		height: 90px;
	}
	.service-area .service-box a{
		padding: 15px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.service-area .service-box .thumb{
		width: 120px !important;
		height: 120px !important;
	}
	.service-area .service-box .ttl-fxbox{
		width: calc(100% - 135px);
	}
	.service-area .service-box .ttl-fxbox .ttl{
		font-size: 2.0rem;
		margin: 0;
		text-align: left;
	}
	.service-area .service-box .ttl-fxbox .catch{
		font-size: 1.3rem;
		margin: 10px 0 0;
	}
}