@charset "utf-8";
/*------------------------------------------------------------
	service
------------------------------------------------------------*/
#main {
	margin-top: -9.6rem;
}
#main .serviceBox {
	padding: 14rem 0;
}
#main .serviceBox .imgBox {
	margin-bottom: 4.8rem;
	gap: 4.8rem;
}
#main .serviceBox .imgBox .textBox {
	flex: 1;
}
#main .serviceBox .imgBox .textBox .sub {
	margin-left: auto;
	width: 59.6rem;
}
#main .serviceBox .imgBox .photoBox {
	width: calc(50% - 2.4rem);
	border-radius: 0.4rem 0 0 0.4rem;
	aspect-ratio: 696/457;
	overflow: hidden;
}
#main .serviceBox .imgBox .photoBox img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#main .serviceBox .imgBox .hTitle {
	margin-bottom: 2.8rem;
	font-size: 4.8rem;
	font-weight: 600;
	color: #640000;
}
#main .serviceBox .imgBox .image {
	margin-bottom: 4rem;
	width: 16rem;
}
#main .serviceBox .imgBox p {
	font-size: 1.6rem;
	line-height: 2;
}
#main .serviceBox .solutionUl {
	display: flex;
	flex-wrap: wrap;
	gap: 4.8rem 3.8%;
}
#main .serviceBox .solutionUl > li {
	padding: 2.3rem 3.2rem 3.2rem;
	position: relative;
	width: 48.1%;
	border-radius: 0.4rem;
	overflow: hidden;
	background: url(../img/common/bg01.png) repeat left top / 144rem 20rem;
}
#main .serviceBox .solutionUl > li::after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	content: "";
	background-color: #F3F3F3;
	mix-blend-mode: multiply;
	pointer-events: none;
}
#main .serviceBox .solutionUl .headLine03 {
	margin-bottom: 3.2rem;
}
#main .serviceBox .solutionUl .headLine03::after {
	display: none;
}
#main .serviceBox .solutionUl .hTitle {
	margin-bottom: 1.6rem;
	font-size: 3.2rem;
	font-weight: 600;
	color: #640000;
}
#main .serviceBox .solutionUl p {
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 2;
	color: #222;
}
#main .serviceBox.style01 .solutionUl > li {
	background: url(../img/common/bg01.png) repeat left top / 114rem 20rem;
}
#main .serviceBox.style01 .solutionUl li::after {
	display: none;
}
#main .serviceBox.serviceBox01 .solutionUl {
	gap: 4.8rem 4.025%;
}
#main .serviceBox.serviceBox01 .solutionUl > li {
	width: 30.65%;
}
#main .serviceBox.serviceBox01 .solutionUl .headLine03 {
	margin-bottom: 4rem;
}
#main .serviceBox.serviceBox01 .solutionUl .hTitle {
	margin-bottom: 2.5rem;
}
#main .serviceBox.serviceBox02 .solutionUl {
	gap: 4.8rem 0;
}
#main .serviceBox.serviceBox02 .solutionUl > li {
	width: 100%;
}
#main .serviceBox.serviceBox02 .solutionUl .headLine03 {
	margin-bottom: 4rem;
}
#main .serviceBox.serviceBox02 .solutionUl .hTitle {
	margin-bottom: 2.4rem;
}
#main .serviceBox .solutionUl .dottedUl li {
	padding-left: 1em;
	text-indent: -1em;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 2;
	color: #222;
}
#main .serviceBox .comAnchorUl01 {
	margin-top: 14rem;
}
#main .serviceBox:last-of-type {
	padding-bottom: 20rem;
}
@media all and (max-width: 896px) {
	#main {
		margin-top: -5.45rem;
	}
	#main .serviceBox {
		padding: 5rem 0;
	}
	#main .serviceBox .imgBox {
		margin: 0 2rem 2rem;
		display: block;
	}
	#main .serviceBox .imgBox .textBox {
		margin-bottom: 2rem;
	}
	#main .serviceBox .imgBox .textBox .sub {
		width: auto;
	}
	#main .serviceBox .imgBox .photoBox {
		width: auto;
		border-radius: 0.4rem;
		aspect-ratio: inherit;
	}
	#main .serviceBox .imgBox .hTitle {
		margin-bottom: 2rem;
		font-size: 2.6rem;
	}
	#main .serviceBox .imgBox .image {
		margin: 0 auto 2rem;
		width: 8rem;
	}
	#main .serviceBox .imgBox p {
		font-size: 1.6rem;
		line-height: 2;
	}
	#main .serviceBox .solutionUl {
		display: block;
	}
	#main .serviceBox .solutionUl > li {
		margin-bottom: 2rem;
		padding: 2rem;
		width: auto !important;
	}
	#main .serviceBox .solutionUl > li:last-child {
		margin-bottom: 0;
	}
	#main .serviceBox .solutionUl .headLine03 {
		margin-bottom: 1.5rem !important;
	}
	#main .serviceBox .solutionUl .hTitle {
		font-size: 2rem !important;
	}
	#main .serviceBox .solutionUl p {
		font-size: 1.4rem;
	}
	#main .serviceBox .solutionUl .dottedUl li {
		font-size: 1.4rem;
	}
	#main .serviceBox .comAnchorUl01 {
		margin-top: 5rem;
	}
	#main .serviceBox:last-of-type {
		padding-bottom: 5rem;
	}
}