@charset "Shift_JIS";

/* よくある質問
============================ */
.faq dl {
	width: min(90%, 1110px);
	background: #fff;
	padding: 40px 5%;
	margin: 0 auto 40px!important;
}
.faq dl:last-of-type {
	margin-bottom: 0!important;
}
.faq dt {
	border-bottom: 1px solid #245381;
	padding-left: 1.8em;
	padding-bottom: 0.95em;
	margin-bottom: 0.9em;
	font-size: min(2.8vw, 32px);
	font-weight: 700;
	color: #245381;
	line-height: 1.3;
	position: relative;
}
.faq dt::before {
	position: absolute;
	left: 0;
	top: -0.2em;
	content: "Q";
	color: #58c5c2;
	font-size: min(3.5vw, 42px);
}
.faq dd {
	line-height: 1.85;
}
@media screen and (max-width: 767px) {
	.faq dl {
		width: 100%;
		padding: 30px 25px;
		margin: 0 auto 20px!important;
	}
	.faq dt {
		padding-left: 1.6em;
		font-size: 18px
	}
	.faq dt::before {
		top: -0.2em;
		font-size: 22px;
	}
}

/* 選考フロー */
.faq .step .col {
	background: #f6f6f6;
	align-items: center;
	padding: 20px 35px;
	position: relative;
	margin-bottom: 15px;
}
.faq .step .col::before {
	display: block;
	content: "";
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 0;
	height: 0;
	border: 17px solid transparent;
	border-top: 15px solid #70cccc;
}
.faq .step .col:last-of-type::before {
	display: none;
}
.faq .step .col .ttl {
	flex-basis: 13em;
	background: #245381;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 2.5em;
}
.faq .step .col .txt {
	flex-basis: calc(100% - 16em);
	line-height: 1.75;
}
@media screen and (max-width: 994px) {
	.faq .step .col {
		padding: 20px 25px;
	}
	.faq .step .col .txt {
		flex-basis: calc(100% - 15em);
	}
}
@media screen and (max-width: 767px) {
	.faq .step .col {
		padding: 25px 25px;
	}
	.faq .step .col .ttl {
		flex-basis: 100%;
		min-width: 100%;
		min-height: 30px;
		margin-bottom: 10px!important;
	}
}