@charset "utf-8";
/* mv */
.mv {
	display: flex;
	align-items: center;
	height: 48.1vw;
	background-image: url("../img/mv_sp.jpg");
	background-size: cover;
}

@media (min-width: 768px) {
	.mv {
		height: 546px;
		padding-top: 45px;
		background-image: url("../img/mv.jpg");
	}
}
/* sec01 */
.sec01 .bg {
	margin-bottom: 3.63rem;
	padding: 5rem 0;
	text-align: center;
}

.sec01 .intro_txt {
	margin-top: 2.94rem;
	line-height: 1.88;
}

.sec01 .intro_txt a {
	color: #007f80;
	text-decoration: underline;
}

.faq_list {
	margin: 0 auto 6em;
}

.faq_list > div:not(:last-child) {
	margin-bottom: 2em;
	padding-bottom: 1.5em;
	border-bottom: 1px solid #d4d4d4;
}

.faq_list dt,
.faq_list dd {
	margin: 0;
	padding: 0 0 0 3.3rem;
	position: relative;
}

.faq_list dt::before,
.faq_list dd::before {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.21rem;
	height: 2.04rem;
	color: #fff;
	font-size: 1.31rem;
	font-weight: bold;
	line-height: 1;
	border-radius: 1.5rem;
	position: absolute;
	top: 0;
	left: 0;
}

.faq_list dt {
	margin-bottom: 1em;
	font-size: 1.25em;
	letter-spacing: 0.06em;
	line-height: 1.45;
}

.faq_list dt::before {
	content: 'Q';
	padding-bottom: .2em;
	background-color: #ff9a2c;
}

.faq_list dd {
	line-height: 2;
}

.faq_list dd::before {
	content: 'A';
	padding-bottom: .1em;
	background-color: #007f80;
}

@media (min-width: 768px) {
	.sec01 {
		font-size: 20px;
	}

	.sec01 .bg {
		margin-bottom: 75px;
		padding: 106px 0;
	}

	.sec01 .intro_txt {
		margin-top: 42px;
	}

	.faq_list > div:not(:last-child) {
		margin-bottom: 48px;
		padding-bottom: 50px;
	}

	.faq_list dt,
	.faq_list dd {
		padding-left: 140px;
	}

	.faq_list dt::before,
	.faq_list dd::before {
		width: 100px;
		height: 48px;
		font-size: 32px;
	}

	.faq_list dt {
		margin-bottom: 45px;
		padding-top: 3px;
		font-size: 26px;
	}
}
