@charset "UTF-8";

/* !ページタイトル -------------------------------------------------------------- */
.page_title {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 22em;
	max-height: 28vh;
	min-height: 10vw;
	background: url(../images/bg_pagetitle.webp) center no-repeat;
	background-size: 100%;
}
@media screen and (max-width: 1024px) {
	.page_title {
		height: 18em;
	}
}
@media screen and (max-width: 540px) {
	.page_title {
		height: 32vw;
	}
}


/* !パンくずリスト -------------------------------------------------------------- */
.breadcrumb {
	color: #fff;
	width: 90%;
	max-width: 1480px;
	margin: 0 auto;
	font-size: .75em;
	font-weight: 400;
}
.breadcrumb li {
	display: inline;
}
.breadcrumb li::after {
	content: "";
	margin-left: 0.8em;
	margin-right: 0.8em;
	background: #fff;
	display: inline-block;
	width: .45em;
	height: .7em;
	clip-path: polygon(13% 0, 100% 50%, 13% 100%, 0 90%, 70% 50%, 0 10%);
}
.breadcrumb li:last-child::after {
	content: none;
}
.breadcrumb li a {
}
.breadcrumb li a:hover {
	color: #b9f301;
}
.breadcrumb li:first-child::before {
	content: "";
	background: url(../images/icon-home.png) no-repeat;
	width: 1.667em;
	height: 1.667em;
	display: inline-block;
	vertical-align: -0.55em;
}
.breadcrumb li a br {
	display: none;
}
@media screen and (max-width: 540px) {
	.breadcrumb {
	}
}


/* !contents -------------------------------------------------------------- */
.bg_02 {
	background: url(../images/bg_02.webp) center top no-repeat;
	background-size: 120em;
	padding: 4.16% 0 10%;
}
.bg_03 {
	background: url(../images/bg_03.webp) center bottom no-repeat;
	background-size: 100%;
}
.bg_04 {
	background: url(../images/bg_04.webp) center top no-repeat;
	background-size: 100%;
	padding: 12.5em 0 10%;
}
.bg_05 {
	background: url(../images/bg_05.webp) center top repeat-y;
	background-size: 100%;
}
.bg_05_2 {
	background: url(../images/bg_05_2.webp) center top repeat-y;
	background-size: 100%;
}
.bg_06 {
	background: url(../images/bg_06.webp) center top no-repeat;
	background-size: 100%;
	padding: 12.5em 0 5.5%;
}
.bg_07 {
	background: url(../images/bg_07.webp) center top no-repeat;
	background-size: 100%;
}
.bg_08 {
	background: url(../images/bg_08.webp) center top no-repeat;
	background-size: 100%;
}
.bg_09 {
	background: #fff url(../images/bg_09.webp) center top no-repeat;
	background-size: 100%;
}
@media screen and (max-width: 540px) {
	.bg_05 {
		background-size: 110%;
	}
	.bg_05_2 {
		background-size: 110%;
	}
	.bg_09 {
		background-size: 150%;
		background-position: right top;
	}
	.bg_04 {
		padding: 18vw 0;
	}
	.bg_06 {
		padding: 18vw 0 10vw;
	}
	.service .bg_05 {
		background: none;
	}
}
.box-2 {
	padding: 3.4% 1% 1%;
}
.icon_10 {
	width: 5em;
	margin-bottom: 3%;
}
.step_01 {
	width: 10.5em;
	margin-right: 1.8em;
}
.priceTable th {
	background: var(--green);
	color: #fff;
	font-weight: 600;
}
.priceTable th:first-child {
	border-radius: 1em 0 0 0;
}
.priceTable th:last-child {
	border-radius: 0 1em 0 0;
}
.priceTable tr {
}
.priceTable td {
	border-top: 1px solid #e6e6e6;
}
.priceTable th > span,
.priceTable td > span {
	display: flex;
	align-items: center;
	min-height: 3.2em;
	padding: 1% 12.5%;
}
.box-3 {
	padding: 2.66%;
}
.qa_dl {
	padding: 2em 0;
}
.qa_dl dt {
	color: var(--green);
	padding: 0 0 0 3.5em;
}
.qa_dl dd {
	padding: 1.2em 0 1.2em 3.5em;
	border-bottom: 1px solid #bcbcbc;
}
.qa_dl dt,
.qa_dl dd {
	position: relative;
}
.qa_dl dt::before,
.qa_dl dd::before {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	content: "";
	display: block;
	width: 2.2em;
	height: 2.2em;
	border-radius: 50%;
	background: var(--green);
	left: 0;
}
.qa_dl dd::before {
	background: #7A6642;
}
.qa_dl dt::after,
.qa_dl dd::after {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	font-size: 120%;
	left: .58em;
	color: #fff;
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
	font-variation-settings:
	"wdth" 100;
	content: "Q";
}
.qa_dl dd::after {
	content: "A";
}
.qa_dl dd + dt {
	margin-top: 2.3em;
}
@media screen and (max-width: 1024px) {
	.step_01 {
		width: 7em;
		margin-right: 1.2em;
	}
}
@media screen and (max-width: 540px) {
	.step_01 {
		width: 20vw;
	}
	.box-3 {
		padding: 5%;
	}
	.img_service img {
		width: 100%;
		margin-bottom: 2vw;
	}
	.service-top .fz40 br {
		display: none;
	}
	.qa_dl dt {
		padding: 0 0 0 3em;
	}
	.qa_dl dd {
		padding: 1.2em 0 1.2em 3em;
	}
	.priceTable th:first-child {
		border-radius: .7em 0 0 0;
	}
	.priceTable th:last-child {
		border-radius: 0 .7em 0 0;
	}
	.priceTable th > span,
	.priceTable td > span {
		padding: 7% 3%;
		font-size: 3.5vw;
	}
	.priceTable th {
		white-space: nowrap;
	}
	.priceTable th:first-child,
	.priceTable td:first-child {
		padding: 0 0 0 2%;
	}
}


.service-btn {
	display: block;
}
.box-4 {
	padding: 4.5% 12% 7%;
}
.border-bottom {
	border-bottom: 2px solid #333;
}
@media screen and (max-width: 540px) {
	.box-4 {
		padding: 6% 6% 7%;
	}
	.face {
		width: 23vw;
	}
}


.db {
	display: block;
}


.service_top_dl {
}
.service_top_dl dt {
	color: var(--green);
	border-left: .25em solid var(--green);
	padding-left: .5em;
}
.service_top_dl dd {
	border-bottom: 1px solid var(--green);
	padding: .5em 0 .9em;
}
.service_top_dl dd + dt {
	margin-top: 2.4em;
}
.icon_service {
	height: 4.75em;
}




@media screen and (max-width: 1333px) {
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 540px) {
}




@media screen and (max-width: 1333px) {
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 540px) {
}
