@charset "UTF-8";

.wrap.lower {
	padding: 70px 0 112px;
	margin-bottom: 88px;
}

.guidance {
	display: none;
}

.deco img {
	display: block;
	margin: 0 auto;
}

/* 見学 */

.visit {
	margin: 87px auto 0;
	width: 90%;
	max-width: 848px;
}

.visit p:last-child {
	text-align: left;
}

.visit h2 {
	margin-bottom: 35px;
}

.visit .col {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 48px;
	margin: 39px auto 52px;
}

.visit .tel {
	background: #FFEDEB;
	border: 2px solid #EA6861;
	border-radius: 20px;
	padding: 24px;
	position: relative;
}

.visit .tel h3 {
	background: #EA6861;
	border-radius: 40px;
	color: #fff;
	text-align: center;
	margin: 0 auto;
	padding: 10px 0;
	max-width: 240px;
}

.visit .tel p {
	color: #EA6861;
	font-size: 35px;
	font-weight: bold;
	letter-spacing: .05em;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	pointer-events: none;
}

.visit .tel p::before {
	content: "";
	background: url(../img/admission/tel.svg) no-repeat;
	background-size: contain;
	display: block;
	width: 43px;
	height: 43px;
}

.visit .tel a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	pointer-events: none;
}

.visit .mail {
	background: #ECF9F6;
	border: 2px solid #4F9F89;
	border-radius: 20px;
	padding: 24px 24px 12px;
	position: relative;
}

.visit .mail h3 {
	background: #4F9F89;
	border-radius: 40px;
	color: #fff;
	text-align: center;
	padding: 10px 0;
	margin: 0 auto;
	max-width: 270px;
}

.visit .mail p {
	color: #4F9F89;
	text-align: left;
	margin-top: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
}

.visit .mail p::before {
	content: "";
	background: url(../img/admission/mail.svg) no-repeat;
	background-size: contain;
	display: block;
	width: 35px;
	height: 28px;
}

.visit .mail a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

/* 質問 */

.question {
	margin: 124px auto 0;
	width: 90%;
}

.question>p {
	margin-top: 35px;
}

/* 質問　アコーディオン */
.qa__group {
	background: #fff;
	margin: 90px auto 0;
	max-width: 850px;
	width: 100%;
}

.qa__head {
	background: #fff;
	border: none;
	border-bottom: 2px dashed #EA6861;
	color: #1F1F1F;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.875;
	padding: 15px 1em 15px 60px;
	position: relative;
	text-align: left;
	width: 100%;
}

.qa__head:first-child {
	margin-top: 0;
}

.qa__head:before {
	content: "";
	position: absolute;
	left: 0px;
	top: 9px;
	background: url(../img/admission/question.svg) no-repeat;
	background-size: contain;
	width: 43px;
	height: 41px;
}

.qa__head:after {
	content: "";
	position: absolute;
	right: 17px;
	top: 50%;
	transform: translatey(-50%);
	background: url(../img/admission/open.svg) no-repeat;
	background-size: contain;
	width: 24px;
	height: 24px;
	transition: .2s;
}

.qa__head.is-open:after {
	background: url(../img/admission/close.svg) no-repeat;
	background-size: contain;
	background-position: center;
}

.qa__body {
	box-sizing: border-box;
	font-size: 17px;
	text-align: left;
	transform: scaleY(0);
	transform-origin: center top;
	transition: all 0.5s;
	padding: 0 1em 0 60px;
	position: relative;
	max-width: 850px;
	width: 100%;
}

.qa__body.is-open {
	transform: scaleY(1);
	padding: 15px 1em 0 60px;
	margin-bottom: 30px;
}

.qa__body:before {
	content: "";
	position: absolute;
	left: 0;
	top: 9px;
	background: url(../img/admission/answer.svg) no-repeat;
	background-size: contain;
	width: 43px;
	height: 41px;
}

.qa__body p {
	text-align: left;
	line-height: 0;
}

.qa__body.is-open p {
	line-height: 1.375;
	min-height: calc(1em * 1.375 * 2);
}

/* 希望の方 */

.hope {
	background: #FFEDEB;
	border: 2px solid #EA6861;
	border-radius: 20px;
	box-sizing: border-box;
	text-align: center;
	padding: 48px 0 50px;
	margin: 200px auto 0;
	width: 90%;
	max-width: 1008px;
}

.hope p {
	margin-top: 33px;
}

.hope span {
	color: #EA6861;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .05em;
	line-height: 1.85;
	margin-top: 6px;
}

.hope .btn {
	background: #EA6861;
	border: 2px solid #EA6861;
	margin-top: 30px;
	max-width: 240px;
}

.hope .btn:hover {
	background: #fff;
	color: #EA6861;
}

.hope .btn:hover::after {
	background: url(../img/arrow-r.svg) no-repeat;
	background-size: contain;
}

/* tab */
@media screen and (max-width: 1040px) {
	.visit .col {
		grid-template-columns: repeat(1, 1fr);
		max-width: 400px;
	}
}

/* sp */
@media screen and (max-width: 767px) {

	.wrap.lower {
		padding: 22px 0 48px;
		max-width: 100%;
		margin-bottom: 24px;
	}

	/* 見学 sp */
	.visit {
		margin-top: 51px;
	}

	.visit .col {
		gap: 16px;
		margin: 56px auto 24px;
	}

	.visit .tel a {
		pointer-events: all;
	}

	/* 質問 sp */
	.question {
		margin-top: 90px;
	}

	.question>p {
		margin-top: 34px;
		text-align: left;
	}

	.qa__group {
		margin-top: 27px;
	}

	.qa__head {
		padding: 15px 54px 15px 54px;
	}

	.qa__head:after {
		right: 9px;
	}

	/* 希望の方 */
	.hope {
		margin-top: 52px;
		padding: 48px 17px 40px;
	}

	.hope p {
		font-size: 14px;
	}
}