@import url("https://fonts.googleapis.com/css2?family=Kaisei+Opti:wght@500;700&family=Zen+Maru+Gothic&display=swap");
@keyframes wheel {
	0% {
		width: 0px;
		right: -27px;
		opacity: 0;
		transform: rotate(0deg);
	}
	10% {
		opacity: 1;
	}
	50% {
		width: 14px;
		right: -35px;
		opacity: 1;
	}
	90% {
		opacity: 1;
	}
	100% {
		width: 0px;
		right: -27px;
		opacity: 0;
		transform: rotate(360deg);
	}
}
@keyframes buttonwheel {
	0% {
		height: 0px;
		opacity: 0;
		transform: translateY(50%) rotate(-90deg);
	}
	10% {
		opacity: 1;
	}
	50% {
		height: 25px;
		opacity: 1;
	}
	90% {
		opacity: 1;
	}
	100% {
		height: 0px;
		opacity: 0;
		transform: translateY(50%) rotate(270deg);
	}
}
#breadcrumbs {
	padding-bottom: 20px;
}

#entertitle {
	position: relative;
}
#entertitle .body {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	flex-direction: column;
	height: calc(100vh - 132px - 20px - 1em);
	min-height: 600px;
	padding: 40px;
	font-size: min(1.09375vw * var(--fontratio, 1), 14px * var(--fontratio, 1));
	font-family: "Kaisei Opti", serif;
	text-align: center;
}
@media screen and (max-width: 959px) {
	#entertitle .body {
		font-size: min(1.3658536585vw * var(--fontratio, 1), 11.2px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	#entertitle .body {
		font-size: min(3.1818402204vw * var(--fontratio, 1), 11.9319008264px * var(--fontratio, 1));
	}
}
#entertitle .body:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	height: 110%;
	background: url(../../admission/welcometoshirayuri/images/laurel.png) no-repeat center bottom;
	background-size: auto 110%;
	z-index: -1;
}
@media screen and (max-width: 767px) {
	#entertitle .body:before {
		height: 100%;
		background-position: center center;
		background-size: 110% auto;
	}
}
#entertitle .body:after {
	content: "";
	display: block;
	position: absolute;
	top: -10%;
	left: 50%;
	height: 120%;
	background: rgba(255, 255, 255, 0.51);
	transform: translateX(-50%);
	border-radius: 50%;
	z-index: -2;
	aspect-ratio: 1 / 1;
	filter: blur(70px);
}
@media screen and (max-width: 767px) {
	#entertitle .body:after {
		top: 50%;
		width: 100%;
		height: auto;
		transform: translate(-50%, -50%);
	}
}
#entertitle h1 {
	font-size: min(2.1875vw * var(--fontratio, 1), 28px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 500;
}
@media screen and (max-width: 959px) {
	#entertitle h1 {
		font-size: min(2.7317073171vw * var(--fontratio, 1), 22.4px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	#entertitle h1 {
		font-size: min(4.8516584022vw * var(--fontratio, 1), 18.1937190083px * var(--fontratio, 1));
	}
}
#entertitle .l {
	font-size: min(5.46875vw * var(--fontratio, 1), 70px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 700;
}
@media screen and (max-width: 959px) {
	#entertitle .l {
		font-size: min(6.8292682927vw * var(--fontratio, 1), 56px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	#entertitle .l {
		font-size: min(8.6170798898vw * var(--fontratio, 1), 32.3140495868px * var(--fontratio, 1));
	}
}
#entertitle .l em {
	font-style: normal;
	color: #FF526C;
}
#entertitle .m {
	font-size: min(3.125vw * var(--fontratio, 1), 40px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 500;
}
@media screen and (max-width: 959px) {
	#entertitle .m {
		font-size: min(3.9024390244vw * var(--fontratio, 1), 32px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	#entertitle .m {
		font-size: min(6.1179063361vw * var(--fontratio, 1), 22.9421487603px * var(--fontratio, 1));
	}
}
#entertitle .s {
	margin-top: 35px;
	font-size: min(1.875vw * var(--fontratio, 1), 24px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 500;
}
@media screen and (max-width: 959px) {
	#entertitle .s {
		font-size: min(2.3414634146vw * var(--fontratio, 1), 19.2px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	#entertitle .s {
		font-size: min(4.3957245179vw * var(--fontratio, 1), 16.4839669421px * var(--fontratio, 1));
	}
}
#entertitle:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% + 400px);
	background: url(../../admission/welcometoshirayuri/images/entertitle.jpg) no-repeat center top;
	background-size: cover;
	z-index: -2;
}
@media screen and (max-width: 767px) {
	#entertitle:before {
		height: calc(100% + 100px);
	}
}
#entertitle:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% + 400px);
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 28%, white 100%);
	background-size: cover;
	z-index: -1;
}
@media screen and (max-width: 767px) {
	#entertitle:after {
		height: calc(100% + 100px);
	}
}
#entertitle.scroll .decoration:after {
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	bottom: -5%;
}
#entertitle .decoration:before {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	width: min(587px, 30.5729166667vw);
	background: url(../../admission/welcometoshirayuri/images/enterrt.png) no-repeat left bottom;
	background-size: 100%;
	aspect-ratio: 587 / 429;
}
@media screen and (max-width: 767px) {
	#entertitle .decoration:before {
		width: min(400px, 52.0833333333vw);
	}
}
#entertitle .decoration:after {
	content: "";
	display: block;
	position: fixed;
	bottom: 0;
	left: 0;
	width: min(827px, 43.0729166667vw);
	max-height: 60vh;
	background: url(../../admission/welcometoshirayuri/images/enterlb.png) no-repeat left bottom;
	background-size: auto 100%;
	z-index: 5;
	aspect-ratio: 827 / 793;
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
	transition: 600ms;
}
@media screen and (max-width: 767px) {
	#entertitle .decoration:after {
		width: min(550px, 71.6145833333vw);
		bottom: 45px;
	}
}

.enterblock01 {
	margin-top: 340px;
	margin-bottom: 120px;
	background: url(../../admission/welcometoshirayuri/images/enterline.svg) no-repeat center center;
	background-size: auto 100%;
}
@media screen and (max-width: 767px) {
	.enterblock01 {
		margin-top: 150px;
		padding-top: 230px;
		background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 170px, white 250px), url(../../admission/welcometoshirayuri/images/enterline.svg);
		background-position: 20% top;
		background-size: 1000px auto;
	}
}
.enterblock01 > div {
	position: relative;
	width: 100%;
	max-width: 1360px;
	margin: auto;
	padding: 0px 40px;
}
@media screen and (max-width: 959px) {
	.enterblock01 > div {
		padding: 0px 20px;
	}
}
@media screen and (max-width: 767px) {
	.enterblock01 > div {
		padding: 0px 15px;
	}
}
.enterblock01 .canvas {
	position: relative;
	aspect-ratio: 1280 / 3600;
}
@media screen and (max-width: 767px) {
	.enterblock01 .canvas {
		aspect-ratio: auto;
	}
	.enterblock01 .canvas:after {
		content: "";
		display: block;
		position: absolute;
		width: 100%;
		height: 210px;
		bottom: -80px;
		background: url(../../admission/welcometoshirayuri/images/enterline3.svg) no-repeat right center;
		background-size: auto 100%;
		pointer-events: none;
	}
}
.enterblock01 h2 {
	position: absolute;
	top: 0.8333333333%;
	left: 50%;
	font-size: min(4.6875vw * var(--fontratio, 1), 60px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 500;
	color: #0C75C7;
	font-family: "Kaisei Opti", serif;
	text-align: center;
	white-space: nowrap;
	transform: translateX(-50%);
}
@media screen and (max-width: 959px) {
	.enterblock01 h2 {
		font-size: min(5.8536585366vw * var(--fontratio, 1), 48px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock01 h2 {
		font-size: min(7.8898071625vw * var(--fontratio, 1), 29.5867768595px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock01 h2 {
		position: static;
		margin-bottom: 40px;
		transform: translateX(0%);
	}
}
.enterblock01 h2 span {
	display: block;
	margin-bottom: 20px;
	font-size: min(2.65625vw * var(--fontratio, 1), 34px * var(--fontratio, 1));
	color: #1A1311;
}
@media screen and (max-width: 959px) {
	.enterblock01 h2 span {
		font-size: min(3.3170731707vw * var(--fontratio, 1), 27.2px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock01 h2 span {
		font-size: min(5.5038236915vw * var(--fontratio, 1), 20.639338843px * var(--fontratio, 1));
	}
}
.enterblock01 h3 {
	margin-bottom: 20px;
	font-size: min(3.28125vw * var(--fontratio, 1), 42px * var(--fontratio, 1));
	line-height: 1.4;
	font-weight: 500;
	color: #1A1311;
	font-family: "Kaisei Opti", serif;
}
@media screen and (max-width: 959px) {
	.enterblock01 h3 {
		font-size: min(3.6585365854vw * var(--fontratio, 1), 30px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock01 h3 {
		font-size: min(6.314137741vw * var(--fontratio, 1), 23.6780165289px * var(--fontratio, 1));
	}
}
.enterblock01 h4 {
	margin-bottom: 20px;
	font-size: min(1.875vw * var(--fontratio, 1), 24px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 500;
	color: #1A1311;
	font-family: "Kaisei Opti", serif;
	text-shadow: 1px 1px #fff, -1px -1px #fff, 1px -1px #fff, -1px 1px #fff;
}
@media screen and (max-width: 959px) {
	.enterblock01 h4 {
		font-size: min(2.3414634146vw * var(--fontratio, 1), 19.2px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock01 h4 {
		font-size: min(4.3957245179vw * var(--fontratio, 1), 16.4839669421px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 959px) {
	.enterblock01 h4 {
		margin-bottom: 15px;
	}
}
.enterblock01 * + h4 {
	margin-top: 25px;
}
.enterblock01 p {
	margin-top: 20px;
	font-size: min(1.328125vw * var(--fontratio, 1), 17px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	color: #1A1311;
	font-family: "Zen Maru Gothic", sans-serif;
	text-shadow: 1px 1px #fff, -1px -1px #fff, 1px -1px #fff, -1px 1px #fff;
}
@media screen and (max-width: 959px) {
	.enterblock01 p {
		font-size: min(1.6585365854vw * var(--fontratio, 1), 13.6px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock01 p {
		font-size: min(3.5571129477vw * var(--fontratio, 1), 13.3391735537px * var(--fontratio, 1));
	}
}
.enterblock01 p a {
	color: #0C75C7;
	position: relative;
	display: inline-block;
}
.enterblock01 p a:before {
	content: "";
	display: block;
	position: absolute;
	bottom: calc(0.25em - 10px);
	right: 55%;
	width: 15%;
	height: 1px;
	background: #0C75C7;
	opacity: 0;
	transform: scaleX(3);
	pointer-events: none;
	transform-origin: right;
	transition: transform 0s 0.3s, bottom 0.3s, right 0s 0.3s, width 0s 0.3s, opacity 0.3s;
	pointer-events: none;
}
.enterblock01 p a:hover:before {
	opacity: 1;
	right: 0%;
	width: 100%;
	bottom: calc(0.25em - 5px);
	transition: transform 0.3s 0.1s, bottom 0s, right 0.3s, width 0.3s 0.4s, opacity 0.25s;
	transform: scaleX(1);
}
.enterblock01 p.s {
	font-size: min(1.171875vw * var(--fontratio, 1), 15px * var(--fontratio, 1));
	line-height: 1.4;
}
@media screen and (max-width: 959px) {
	.enterblock01 p.s {
		font-size: min(1.4634146341vw * var(--fontratio, 1), 12px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock01 p.s {
		font-size: min(3.3079889807vw * var(--fontratio, 1), 12.4049586777px * var(--fontratio, 1));
	}
}
.enterblock01 .image {
	position: absolute;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	overflow: hidden;
	aspect-ratio: 1 / 1;
	z-index: 0;
}
.enterblock01 .image:before {
	content: "";
	display: block;
	position: absolute;
	width: calc(100% - 6px);
	height: calc(100% - 6px);
	border-radius: 50%;
	border: 3px solid #6BB3EB;
	z-index: 5;
}
.enterblock01 .image.popup {
	opacity: 0;
	transition: 800ms 300ms;
	transform: translate(-50%, -42%) scale(0.8);
}
@media screen and (max-width: 767px) {
	.enterblock01 .image.popup {
		transform: translate(0%, 8%) scale(0.8) !important;
	}
}
.enterblock01 .image.popup.popon {
	opacity: 1;
	transform: translate(-50%, -50%) scale(1);
}
@media screen and (max-width: 767px) {
	.enterblock01 .image.popup.popon {
		transform: translate(0%, 0%) scale(1) !important;
	}
}
.enterblock01 .image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.enterblock01 .image.i01 {
	width: 46.875%;
	left: 72.65625%;
	top: 17.8055555556%;
}
@media screen and (max-width: 767px) {
	.enterblock01 .image.i01 {
		position: relative;
		top: 0%;
		left: 0;
		margin: 20px 0 20px auto;
		transform: translate(0%, 0%);
		width: 70%;
	}
}
.enterblock01 .image.i02 {
	width: 25.15625%;
	left: 43.828125%;
	top: 22.5277777778%;
}
@media screen and (max-width: 767px) {
	.enterblock01 .image.i02 {
		width: 150px;
		top: auto;
		left: auto;
		right: calc(65% - 30px);
		margin-top: -150px;
		transform: translate(0%, 0%);
	}
}
.enterblock01 .image.i03 {
	width: 31.25%;
	left: 15.625%;
	top: 30.75%;
}
@media screen and (max-width: 767px) {
	.enterblock01 .image.i03 {
		position: relative;
		top: 0%;
		left: 0;
		margin: 20px auto 20px 20px;
		transform: translate(0%, 0%);
	}
}
.enterblock01 .image.i04 {
	width: 46.875%;
	left: 27.34375%;
	top: 50.1944444444%;
}
@media screen and (max-width: 767px) {
	.enterblock01 .image.i04 {
		position: relative;
		top: 0%;
		left: 0;
		margin: 20px auto 20px 10px;
		transform: translate(0%, 0%);
		width: 70%;
	}
}
.enterblock01 .image.i05 {
	width: 25.15625%;
	left: 53.046875%;
	top: 57.7222222222%;
}
@media screen and (max-width: 767px) {
	.enterblock01 .image.i05 {
		width: 150px;
		top: auto;
		left: calc(65% - 20px);
		margin-top: -150px;
		transform: translate(0%, 0%);
	}
}
.enterblock01 .image.i06 {
	width: 46.875%;
	left: 72.65625%;
	top: 76.0833333333%;
}
@media screen and (max-width: 767px) {
	.enterblock01 .image.i06 {
		position: relative;
		top: 0%;
		left: 0;
		margin: 20px 0px 20px auto;
		transform: translate(0%, 0%);
		width: 70%;
	}
}
.enterblock01 .image.i07 {
	width: 25.15625%;
	left: 46.953125%;
	top: 79.7777777778%;
}
@media screen and (max-width: 767px) {
	.enterblock01 .image.i07 {
		width: 150px;
		top: auto;
		left: auto;
		right: calc(65% - 30px);
		margin-top: -150px;
		transform: translate(0%, 0%);
	}
}
.enterblock01 .image.i08 {
	width: 39.375%;
	left: 19.6875%;
	top: 88.1388888889%;
}
@media screen and (max-width: 767px) {
	.enterblock01 .image.i08 {
		position: relative;
		top: 0%;
		left: 0;
		margin: 20px auto 20px 0;
		transform: translate(0%, 0%);
	}
}
.enterblock01 .area1 {
	position: absolute;
	width: 100%;
	top: 11.6666666667%;
	left: 0;
	z-index: 5;
}
@media screen and (max-width: 767px) {
	.enterblock01 .area1 {
		position: static;
	}
}
.enterblock01 .area1 p {
	max-width: 28.125%;
}
@media screen and (max-width: 767px) {
	.enterblock01 .area1 p {
		max-width: 100%;
	}
}
.enterblock01 .area2 {
	position: absolute;
	display: flex;
	flex-wrap: wrap;
	gap: 40px min(40px, 3.125vw);
	width: 65.625%;
	top: 30%;
	left: 34.375%;
	z-index: 5;
}
@media screen and (max-width: 767px) {
	.enterblock01 .area2 {
		position: static;
		width: 100%;
		gap: 30px min(40px, 3.125vw);
	}
}
.enterblock01 .area2 > div {
	width: calc((100% - min(40px, 3.125vw)) / 2);
}
@media screen and (max-width: 767px) {
	.enterblock01 .area2 > div {
		width: 100%;
	}
}
.enterblock01 .area3 {
	position: absolute;
	width: 100%;
	top: 42.7777777778%;
	right: 0;
	z-index: 5;
}
@media screen and (max-width: 767px) {
	.enterblock01 .area3 {
		position: static;
	}
}
.enterblock01 .area3 h3 {
	text-align: right;
}
@media screen and (max-width: 767px) {
	.enterblock01 .area3 h3 {
		text-align: left;
	}
}
.enterblock01 .area3 h4, .enterblock01 .area3 p {
	max-width: 31.25%;
	margin-right: 0;
	margin-left: auto;
}
@media screen and (max-width: 767px) {
	.enterblock01 .area3 h4, .enterblock01 .area3 p {
		max-width: 100%;
	}
}
.enterblock01 .area4 {
	position: absolute;
	width: 100%;
	top: 68.6111111111%;
	left: 0;
	z-index: 5;
}
@media screen and (max-width: 767px) {
	.enterblock01 .area4 {
		position: static;
	}
	.enterblock01 .area4:before {
		content: "";
		display: block;
		position: absolute;
		width: 100%;
		height: 100px;
		margin-top: 40px;
		background: url(../../admission/welcometoshirayuri/images/enterline2.svg) no-repeat right center;
		background-size: auto 100%;
		pointer-events: none;
	}
}
.enterblock01 .area4 p {
	max-width: 31.25%;
}
@media screen and (max-width: 767px) {
	.enterblock01 .area4 p {
		max-width: 100%;
	}
}
.enterblock01 .area5 {
	position: absolute;
	width: 100%;
	top: 85.5555555556%;
	left: 42.578125%;
	z-index: 5;
}
@media screen and (max-width: 767px) {
	.enterblock01 .area5 {
		position: static;
	}
}
.enterblock01 .area5 p {
	max-width: 28.125%;
}
@media screen and (max-width: 767px) {
	.enterblock01 .area5 p {
		max-width: 100%;
	}
}

.enterblock02 {
	position: relative;
	clip-path: inset(0);
}
.enterblock02:before {
	content: "";
	display: block;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: url(../../admission/welcometoshirayuri/images/entertitle.jpg) no-repeat center center;
	background-size: cover;
	opacity: 0.25;
	z-index: -1;
}
.enterblock02:after {
	content: "";
	display: block;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: #74CAFF;
	background-size: cover;
	opacity: 0.41;
	z-index: -2;
}
.enterblock02 > div {
	position: relative;
	width: 100%;
	max-width: 1360px;
	margin: auto;
	padding: 150px 40px;
}
@media screen and (max-width: 959px) {
	.enterblock02 > div {
		padding: 100px 20px;
	}
}
@media screen and (max-width: 767px) {
	.enterblock02 > div {
		padding: 75px 15px;
	}
}
.enterblock02 h2 {
	margin-bottom: 80px;
	font-size: min(4.6875vw * var(--fontratio, 1), 60px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 500;
	color: #0C75C7;
	font-family: "Kaisei Opti", serif;
	text-align: center;
}
@media screen and (max-width: 959px) {
	.enterblock02 h2 {
		font-size: min(5.8536585366vw * var(--fontratio, 1), 48px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock02 h2 {
		font-size: min(7.8898071625vw * var(--fontratio, 1), 29.5867768595px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock02 h2 {
		margin-bottom: 40px;
	}
}
.enterblock02 h2 span {
	display: block;
	margin-bottom: 20px;
	font-size: min(2.65625vw * var(--fontratio, 1), 34px * var(--fontratio, 1));
	line-height: 1.3;
	color: #1A1311;
}
@media screen and (max-width: 959px) {
	.enterblock02 h2 span {
		font-size: min(3.3170731707vw * var(--fontratio, 1), 27.2px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock02 h2 span {
		font-size: min(5.5038236915vw * var(--fontratio, 1), 20.639338843px * var(--fontratio, 1));
	}
}
.enterblock02 h2 br {
	display: none;
}
@media screen and (max-width: 959px) {
	.enterblock02 h2 br {
		display: block;
	}
}
.enterblock02 .slidewrap li {
	display: flex;
	flex-direction: column;
	gap: 15px;
	padding: 20px;
	width: min(400px, 31.25vw);
	height: auto !important;
	min-width: 320px;
	background: #fff;
}
@media screen and (max-width: 959px) {
	.enterblock02 .slidewrap li {
		padding: 15px;
	}
}
.enterblock02 .slidewrap li .image {
	overflow: hidden;
}
.enterblock02 .slidewrap li .course {
	margin-top: 5px;
}
.enterblock02 .slidewrap li .message,
.enterblock02 .slidewrap li .course {
	font-size: min(1.328125vw * var(--fontratio, 1), 17px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	color: #000;
	font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (max-width: 959px) {
	.enterblock02 .slidewrap li .message,
	.enterblock02 .slidewrap li .course {
		font-size: min(1.6585365854vw * var(--fontratio, 1), 13.6px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock02 .slidewrap li .message,
	.enterblock02 .slidewrap li .course {
		font-size: min(3.5571129477vw * var(--fontratio, 1), 13.3391735537px * var(--fontratio, 1));
	}
}
.enterblock02 .slidewrap li .message a,
.enterblock02 .slidewrap li .course a {
	color: #0C75C7;
	position: relative;
	display: inline-block;
}
.enterblock02 .slidewrap li .message a:before,
.enterblock02 .slidewrap li .course a:before {
	content: "";
	display: block;
	position: absolute;
	bottom: calc(0.25em - 10px);
	right: 55%;
	width: 15%;
	height: 1px;
	background: #0C75C7;
	opacity: 0;
	transform: scaleX(3);
	pointer-events: none;
	transform-origin: right;
	transition: transform 0s 0.3s, bottom 0.3s, right 0s 0.3s, width 0s 0.3s, opacity 0.3s;
	pointer-events: none;
}
.enterblock02 .slidewrap li .message a:hover:before,
.enterblock02 .slidewrap li .course a:hover:before {
	opacity: 1;
	right: 0%;
	width: 100%;
	bottom: calc(0.25em - 5px);
	transition: transform 0.3s 0.1s, bottom 0s, right 0.3s, width 0.3s 0.4s, opacity 0.25s;
	transform: scaleX(1);
}
.enterblock02 .slidewrap li .name {
	font-size: min(1.5625vw * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 500;
	color: #000;
	font-family: "Kaisei Opti", serif;
}
@media screen and (max-width: 959px) {
	.enterblock02 .slidewrap li .name {
		font-size: min(1.9512195122vw * var(--fontratio, 1), 16px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock02 .slidewrap li .name {
		font-size: min(3.9228650138vw * var(--fontratio, 1), 14.7107438017px * var(--fontratio, 1));
	}
}
.enterblock02 .switch {
	margin-top: min(80px, 6.25vw);
}
.enterblock02 .switch ul {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
}
.enterblock02 .switch ul a {
	display: block;
	width: 10px;
	height: 10px;
	text-indent: -10000px;
	background: #7D8E9E;
	border-radius: 50%;
	overflow: hidden;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	transition: opacity 200ms, background 600ms, border 600ms;
}
.enterblock02 .switch ul a:hover {
	opacity: 0.7;
}
.enterblock02 .switch ul .on a {
	background: #0C75C7;
}
.enterblock02 .switch ul li:first-child a {
	margin-right: 20px;
	width: 60px;
	height: 60px;
	background: url(../images/arrow2.svg) no-repeat left 22px center #0C75C7;
	background-size: 18px auto;
	transform: rotate(-180deg);
}
@media screen and (max-width: 959px) {
	.enterblock02 .switch ul li:first-child a {
		width: 45px;
		height: 45px;
		background-position: left 17px center;
		background-size: 14px auto;
	}
}
.enterblock02 .switch ul li:last-child a {
	margin-left: 20px;
	width: 60px;
	height: 60px;
	background: url(../images/arrow2.svg) no-repeat left 22px center #0C75C7;
	background-size: 18px auto;
}
@media screen and (max-width: 959px) {
	.enterblock02 .switch ul li:last-child a {
		width: 45px;
		height: 45px;
		background-position: left 17px center;
		background-size: 14px auto;
	}
}

.enterblock03 {
	position: relative;
	clip-path: inset(0);
}
.enterblock03:before {
	content: "";
	display: block;
	position: fixed;
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
	background: url(../../admission/welcometoshirayuri/images/enterbg.jpg) no-repeat center bottom;
	background-size: 100% auto;
	opacity: 0.25;
	mix-blend-mode: multiply;
	z-index: -1;
}
@media screen and (max-width: 767px) {
	.enterblock03:before {
		bottom: 50px;
	}
}
.enterblock03 > div {
	position: relative;
	width: 100%;
	max-width: 1560px;
	margin: auto;
	padding: 0px 40px 120px;
}
@media screen and (max-width: 959px) {
	.enterblock03 > div {
		padding: 0px 20px 60px;
	}
}
@media screen and (max-width: 767px) {
	.enterblock03 > div {
		padding: 0px 15px 60px;
	}
}
.enterblock03 h2 {
	margin-bottom: 40px;
	font-size: min(4.6875vw * var(--fontratio, 1), 60px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 500;
	color: #0C75C7;
	font-family: "Kaisei Opti", serif;
	text-align: center;
}
@media screen and (max-width: 959px) {
	.enterblock03 h2 {
		font-size: min(5.8536585366vw * var(--fontratio, 1), 48px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock03 h2 {
		font-size: min(7.8898071625vw * var(--fontratio, 1), 29.5867768595px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock03 h2 {
		margin-bottom: 40px;
	}
}
.enterblock03 h2 span {
	display: block;
	margin-bottom: 20px;
	font-size: min(2.65625vw * var(--fontratio, 1), 34px * var(--fontratio, 1));
	line-height: 1.3;
	color: #1A1311;
}
@media screen and (max-width: 959px) {
	.enterblock03 h2 span {
		font-size: min(3.0487804878vw * var(--fontratio, 1), 25px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock03 h2 span {
		font-size: min(5.5038236915vw * var(--fontratio, 1), 20.639338843px * var(--fontratio, 1));
	}
}
.enterblock03 p {
	font-size: min(1.328125vw * var(--fontratio, 1), 17px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	color: #000;
	font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
}
@media screen and (max-width: 959px) {
	.enterblock03 p {
		font-size: min(1.6585365854vw * var(--fontratio, 1), 13.6px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock03 p {
		font-size: min(3.5571129477vw * var(--fontratio, 1), 13.3391735537px * var(--fontratio, 1));
	}
}
.enterblock03 .button {
	margin-top: 20px;
	margin-bottom: min(120px, 9.375vw);
}
.enterblock03 .button a {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: min(40px, 3.125vw);
	width: 80%;
	max-width: 505px;
	height: min(96px, 7.5vw);
	margin: auto;
	font-size: min(1.875vw * var(--fontratio, 1), 24px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 500;
	color: #fff;
	font-family: "Kaisei Opti", serif;
	background: #6BB3EB;
	border-radius: 100px;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
@media screen and (max-width: 959px) {
	.enterblock03 .button a {
		font-size: min(2.3414634146vw * var(--fontratio, 1), 19.2px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock03 .button a {
		font-size: min(4.3957245179vw * var(--fontratio, 1), 16.4839669421px * var(--fontratio, 1));
	}
}
.enterblock03 .button a:hover {
	opacity: 0.7;
}
@media screen and (max-width: 767px) {
	.enterblock03 .button a {
		height: 65px;
	}
}
.enterblock03 .button a:after {
	content: "";
	display: block;
	width: 10px;
	height: 18px;
	background: url(../images/arrow2.svg) no-repeat center center;
	background-size: 10px auto;
	transform: rotate(90deg);
}
.enterblock03 .list {
	position: relative;
	padding: 0 100px;
}
@media screen and (max-width: 959px) {
	.enterblock03 .list {
		padding: 0 60px;
	}
}
.enterblock03 .slidewrap ul {
	pointer-events: none;
}
.enterblock03 .slidewrap li {
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
}
.enterblock03 .slidewrap li.swiper-slide-active {
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
}
.enterblock03 .slidewrap li.swiper-slide-active + li,
.enterblock03 .slidewrap li.swiper-slide-active + li + li {
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
}
@media screen and (max-width: 767px) {
	.enterblock03 .slidewrap li.swiper-slide-active + li,
	.enterblock03 .slidewrap li.swiper-slide-active + li + li {
		opacity: 0;
		pointer-events: none;
		visibility: hidden;
	}
}
.enterblock03 .slidewrap li {
	display: flex;
	flex-direction: column;
	gap: 20px;
	width: calc((100% - (40px * 2)) / 3);
	--temp: calc((100% - (40px * 2)) / 3);
	height: auto !important;
	transition: opacity 600ms, visibility 600ms;
}
@media screen and (max-width: 959px) {
	.enterblock03 .slidewrap li {
		gap: 15px;
	}
}
@media screen and (max-width: 767px) {
	.enterblock03 .slidewrap li {
		width: 100%;
	}
}
.enterblock03 .slidewrap li .image {
	border-radius: 50%;
	overflow: hidden;
	margin-bottom: 20px;
}
.enterblock03 .slidewrap li .title {
	font-size: min(1.796875vw * var(--fontratio, 1), 23px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 500;
	color: #000;
	font-family: "Kaisei Opti", serif;
}
@media screen and (max-width: 959px) {
	.enterblock03 .slidewrap li .title {
		font-size: min(2.243902439vw * var(--fontratio, 1), 18.4px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock03 .slidewrap li .title {
		font-size: min(4.2790964187vw * var(--fontratio, 1), 16.0466115702px * var(--fontratio, 1));
	}
}
.enterblock03 .slidewrap li .info {
	font-size: min(1.328125vw * var(--fontratio, 1), 17px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	color: #000;
	font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (max-width: 959px) {
	.enterblock03 .slidewrap li .info {
		font-size: min(1.6585365854vw * var(--fontratio, 1), 13.6px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock03 .slidewrap li .info {
		font-size: min(3.5571129477vw * var(--fontratio, 1), 13.3391735537px * var(--fontratio, 1));
	}
}
.enterblock03 .slidewrap li .related {
	margin-top: auto;
	margin-bottom: 0;
	font-size: min(1.796875vw * var(--fontratio, 1), 23px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 500;
	color: #0C75C7;
	font-family: "Kaisei Opti", serif;
}
@media screen and (max-width: 959px) {
	.enterblock03 .slidewrap li .related {
		font-size: min(2.243902439vw * var(--fontratio, 1), 18.4px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock03 .slidewrap li .related {
		font-size: min(4.2790964187vw * var(--fontratio, 1), 16.0466115702px * var(--fontratio, 1));
	}
}
.enterblock03 .slidewrap li .related a {
	color: #0C75C7;
	position: relative;
	display: inline-block;
}
.enterblock03 .slidewrap li .related a:before {
	content: "";
	display: block;
	position: absolute;
	bottom: calc(0.15em - 10px);
	right: 55%;
	width: 15%;
	height: 1px;
	background: #0C75C7;
	opacity: 0;
	transform: scaleX(3);
	pointer-events: none;
	transform-origin: right;
	transition: transform 0s 0.3s, bottom 0.3s, right 0s 0.3s, width 0s 0.3s, opacity 0.3s;
	pointer-events: none;
}
.enterblock03 .slidewrap li .related a:hover:before {
	opacity: 1;
	right: 0%;
	width: 100%;
	bottom: calc(0.15em - 5px);
	transition: transform 0.3s 0.1s, bottom 0s, right 0.3s, width 0.3s 0.4s, opacity 0.25s;
	transform: scaleX(1);
}
.enterblock03 .switch ul a {
	position: absolute;
	display: block;
	top: var(--listwidth, 200px);
	margin-top: -30px;
	width: 60px;
	height: 60px;
	text-indent: -10000px;
	background: url(../images/arrow2.svg) no-repeat left 22px center #0C75C7;
	background-size: 18px auto;
	border-radius: 50%;
	overflow: hidden;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	transition: opacity 200ms, background 600ms, border 600ms;
	z-index: 5;
}
.enterblock03 .switch ul a:hover {
	opacity: 0.7;
}
@media screen and (max-width: 959px) {
	.enterblock03 .switch ul a {
		width: 45px;
		height: 45px;
		background-position: left 17px center;
		background-size: 14px auto;
	}
}
.enterblock03 .switch ul li:first-child a {
	left: 0px;
	transform: rotate(-180deg);
}
.enterblock03 .switch ul li:last-child a {
	right: 0px;
}

.enterblock04 {
	position: relative;
	clip-path: inset(0);
}
.enterblock04:before {
	content: "";
	display: block;
	position: fixed;
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
	background: url(../../admission/welcometoshirayuri/images/enterbg.jpg) no-repeat center bottom;
	background-size: 100% auto;
	opacity: 0.25;
	mix-blend-mode: multiply;
	z-index: -1;
}
@media screen and (max-width: 767px) {
	.enterblock04:before {
		bottom: 50px;
	}
}
.enterblock04:after {
	content: "";
	display: block;
	position: fixed;
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
	background: #7FD658;
	opacity: 0.2;
	z-index: -1;
}
.enterblock04 > div {
	position: relative;
	width: 100%;
	max-width: 1360px;
	margin: auto;
	padding: 150px 40px;
}
@media screen and (max-width: 959px) {
	.enterblock04 > div {
		padding: 100px 20px;
	}
}
@media screen and (max-width: 767px) {
	.enterblock04 > div {
		padding: 75px 15px;
	}
}
.enterblock04 h2 {
	margin-bottom: 80px;
	font-size: min(4.6875vw * var(--fontratio, 1), 60px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 500;
	color: #0C75C7;
	font-family: "Kaisei Opti", serif;
	text-align: center;
}
@media screen and (max-width: 959px) {
	.enterblock04 h2 {
		font-size: min(5.8536585366vw * var(--fontratio, 1), 48px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock04 h2 {
		font-size: min(7.8898071625vw * var(--fontratio, 1), 29.5867768595px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock04 h2 {
		margin-bottom: 40px;
	}
}
.enterblock04 h2 span {
	display: block;
	margin-bottom: 20px;
	font-size: min(2.65625vw * var(--fontratio, 1), 34px * var(--fontratio, 1));
	color: #1A1311;
}
@media screen and (max-width: 959px) {
	.enterblock04 h2 span {
		font-size: min(3.3170731707vw * var(--fontratio, 1), 27.2px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock04 h2 span {
		font-size: min(5.5038236915vw * var(--fontratio, 1), 20.639338843px * var(--fontratio, 1));
	}
}
.enterblock04 .list ul {
	display: flex;
	flex-wrap: wrap;
	gap: min(40px, 3.125vw);
}
.enterblock04 .list ul li {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	padding: min(40px, 3.125vw) 10px min(30px, 2.34375vw);
	width: calc((100% - min(40px, 3.125vw) * 2) / 3);
	background: #fff;
	border: 3px solid #0C75C7;
	border-radius: 20px;
}
@media screen and (max-width: 767px) {
	.enterblock04 .list ul li {
		gap: 15px;
		padding: 10px;
	}
}
.enterblock04 .list ul li.size4 {
	width: calc((100% - min(40px, 3.125vw) * 3) / 4);
}
@media screen and (max-width: 767px) {
	.enterblock04 .list ul li.size4 {
		width: calc((100% - min(40px, 3.125vw) * 1) / 2);
	}
}
.enterblock04 .list ul li.size4 h3 {
	min-height: 2.6em;
}
.enterblock04 .list ul li.size3 {
	width: calc((100% - min(40px, 3.125vw) * 2) / 3);
}
@media screen and (max-width: 767px) {
	.enterblock04 .list ul li.size3 {
		width: calc((100% - min(40px, 3.125vw) * 1) / 2);
		order: -1;
	}
}
.enterblock04 .list ul li.size2 {
	width: calc((100% - min(40px, 3.125vw) * 2) / 3 * 2 + min(40px, 3.125vw));
}
@media screen and (max-width: 767px) {
	.enterblock04 .list ul li.size2 {
		width: 100%;
	}
}
.enterblock04 .list ul li.size1 {
	width: 100%;
}
.enterblock04 .list h3 {
	font-size: min(1.875vw * var(--fontratio, 1), 24px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 500;
	font-family: "Kaisei Opti", serif;
	text-align: center;
}
@media screen and (max-width: 959px) {
	.enterblock04 .list h3 {
		font-size: min(2.1951219512vw * var(--fontratio, 1), 18px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock04 .list h3 {
		font-size: min(4.3957245179vw * var(--fontratio, 1), 16.4839669421px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock04 .list h3 {
		display: flex;
		align-items: center;
	}
}
.enterblock04 .list .image {
	max-width: 100%;
}
.enterblock04 .list p {
	margin: auto 0 0 auto;
	width: fit-content;
	padding-left: 1em;
	padding-right: 10px;
	text-indent: -1em;
	font-size: min(1.25vw * var(--fontratio, 1), 16px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (max-width: 959px) {
	.enterblock04 .list p {
		font-size: min(1.5609756098vw * var(--fontratio, 1), 12.8px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock04 .list p {
		font-size: min(3.4330798898vw * var(--fontratio, 1), 12.8740495868px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock04 .list p {
		padding-right: 0px;
	}
}
.enterblock04 .button {
	margin-top: 40px;
}
.enterblock04 .button a {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: min(40px, 3.125vw);
	width: 80%;
	max-width: 505px;
	height: min(96px, 7.5vw);
	margin: auto;
	font-size: min(1.875vw * var(--fontratio, 1), 24px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 500;
	color: #fff;
	font-family: "Kaisei Opti", serif;
	background: #6BB3EB;
	border-radius: 100px;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
@media screen and (max-width: 959px) {
	.enterblock04 .button a {
		font-size: min(2.3414634146vw * var(--fontratio, 1), 19.2px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock04 .button a {
		font-size: min(4.3957245179vw * var(--fontratio, 1), 16.4839669421px * var(--fontratio, 1));
	}
}
.enterblock04 .button a:hover {
	opacity: 0.7;
}
@media screen and (max-width: 767px) {
	.enterblock04 .button a {
		height: 65px;
	}
}
.enterblock04 .button a:after {
	content: "";
	display: block;
	width: 10px;
	height: 18px;
	background: url(../images/arrow2.svg) no-repeat center center;
	background-size: 10px auto;
	transform: rotate(90deg);
}

.enterblock05 {
	position: relative;
	clip-path: inset(0);
}
.enterblock05:before {
	content: "";
	display: block;
	position: fixed;
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
	background: url(../../admission/welcometoshirayuri/images/enterbg.jpg) no-repeat center bottom;
	background-size: 100% auto;
	opacity: 0.25;
	mix-blend-mode: multiply;
	z-index: -1;
}
@media screen and (max-width: 767px) {
	.enterblock05:before {
		bottom: 50px;
	}
}
.enterblock05 > div {
	position: relative;
	width: 100%;
	max-width: 1080px;
	margin: auto;
	padding: 150px 40px;
}
@media screen and (max-width: 959px) {
	.enterblock05 > div {
		padding: 100px 20px;
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 > div {
		padding: 75px 15px;
	}
}
.enterblock05 h2 {
	margin-bottom: 20px;
	font-size: min(4.6875vw * var(--fontratio, 1), 60px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 500;
	color: #0C75C7;
	font-family: "Kaisei Opti", serif;
	text-align: center;
}
@media screen and (max-width: 959px) {
	.enterblock05 h2 {
		font-size: min(5.8536585366vw * var(--fontratio, 1), 48px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 h2 {
		font-size: min(7.8898071625vw * var(--fontratio, 1), 29.5867768595px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 h2 {
		margin-bottom: 40px;
	}
}
.enterblock05 h2 span {
	display: block;
	margin-bottom: 20px;
	font-size: min(2.65625vw * var(--fontratio, 1), 34px * var(--fontratio, 1));
	color: #1A1311;
}
@media screen and (max-width: 959px) {
	.enterblock05 h2 span {
		font-size: min(3.3170731707vw * var(--fontratio, 1), 27.2px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 h2 span {
		font-size: min(5.5038236915vw * var(--fontratio, 1), 20.639338843px * var(--fontratio, 1));
	}
}
.enterblock05 h2 + p {
	margin-bottom: 50px;
	font-size: min(1.328125vw * var(--fontratio, 1), 17px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	color: #000;
	font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
}
@media screen and (max-width: 959px) {
	.enterblock05 h2 + p {
		font-size: min(1.6585365854vw * var(--fontratio, 1), 13.6px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 h2 + p {
		font-size: min(3.5571129477vw * var(--fontratio, 1), 13.3391735537px * var(--fontratio, 1));
	}
}
.enterblock05 .list {
	position: relative;
	width: min(100%, 65vw);
	margin: auto;
}
@media screen and (max-width: 767px) {
	.enterblock05 .list {
		width: min(100%, 70vw);
	}
}
.enterblock05 .list dl {
	display: flex;
	flex-direction: column;
	gap: 40px;
}
.enterblock05 .list div {
	position: relative;
	display: flex;
	flex-direction: column;
}
.enterblock05 .list div:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
	background: #E1F0FB;
	border-radius: min(50px, 3.90625vw);
	pointer-events: none;
	z-index: -1;
}
.enterblock05 .list div:first-child:before {
	content: "";
	display: block;
	position: absolute;
	top: min(54px, 4.21875vw);
	right: 93.3%;
	width: min(586px, 45.78125vw);
	background: url(../../admission/welcometoshirayuri/images/enterdeco.svg) no-repeat center center;
	background-size: 100%;
	aspect-ratio: 586.033 / 250.785;
	transform: translateY(-100%);
	z-index: -2;
}
@media screen and (max-width: 1279px) {
	.enterblock05 .list div:first-child:before {
		right: 58vw;
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 .list div:first-child:before {
		right: 60vw;
	}
}
.enterblock05 .list div:last-child:before {
	content: "";
	display: block;
	position: absolute;
	top: min(71px, 5.546875vw);
	left: 92.7%;
	width: min(586px, 45.78125vw);
	background: url(../../admission/welcometoshirayuri/images/enterdeco.svg) no-repeat center center;
	background-size: 100%;
	aspect-ratio: 586.033 / 250.785;
	transform: translateY(-100%) rotateX(180deg);
	z-index: -2;
}
@media screen and (max-width: 1279px) {
	.enterblock05 .list div:last-child:before {
		top: min(90px, 7.03125vw);
		left: 50vw;
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 .list div:last-child:before {
		top: min(110px, 8.59375vw);
		left: 55vw;
	}
}
.enterblock05 .list dt {
	position: relative;
	display: flex;
	align-items: center;
	padding: 10px min(100px, 7.8125vw) 10px 0;
	min-height: min(100px, 7.8125vw);
	font-size: min(1.328125vw * var(--fontratio, 1), 17px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 400;
	font-family: "Zen Maru Gothic", sans-serif;
	cursor: pointer;
	user-select: none;
}
@media screen and (max-width: 959px) {
	.enterblock05 .list dt {
		font-size: min(1.6585365854vw * var(--fontratio, 1), 13.6px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 .list dt {
		font-size: min(3.5571129477vw * var(--fontratio, 1), 13.3391735537px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 .list dt {
		min-height: 55px;
	}
}
.enterblock05 .list dt.open:before {
	top: 100%;
	opacity: 0;
}
.enterblock05 .list dt:before {
	content: "";
	display: block;
	position: absolute;
	width: min(100px, 7.8125vw);
	height: 100%;
	top: 0%;
	right: 0;
	background: url(../images/bar.svg) no-repeat center center;
	transition: top 400ms, opacity 400ms;
	pointer-events: none;
	opacity: 1;
	transform: rotate(90deg);
}
@media screen and (max-width: 767px) {
	.enterblock05 .list dt:before {
		background-size: 12px auto;
	}
}
.enterblock05 .list dt:after {
	content: "";
	display: block;
	position: absolute;
	width: min(100px, 7.8125vw);
	height: 100%;
	top: 0%;
	right: 0;
	background: url(../images/bar.svg) no-repeat center center;
	pointer-events: none;
}
@media screen and (max-width: 767px) {
	.enterblock05 .list dt:after {
		background-size: 12px auto;
	}
}
.enterblock05 .list dt span {
	display: flex;
	justify-content: center;
	flex-shrink: 0;
	width: min(100px, 7.8125vw);
	font-size: min(2.34375vw * var(--fontratio, 1), 30px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 500;
	color: #0C75C7;
	font-family: "Kaisei Opti", serif;
}
@media screen and (max-width: 959px) {
	.enterblock05 .list dt span {
		font-size: min(2.9268292683vw * var(--fontratio, 1), 24px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 .list dt span {
		font-size: min(5.0732782369vw * var(--fontratio, 1), 19.0247933884px * var(--fontratio, 1));
	}
}
.enterblock05 .list dd {
	position: relative;
	display: none;
	padding: 10px min(50px, 3.90625vw) min(40px, 3.125vw);
	font-size: min(1.328125vw * var(--fontratio, 1), 17px * var(--fontratio, 1));
	line-height: 1.7;
	font-weight: 400;
	font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (max-width: 959px) {
	.enterblock05 .list dd {
		font-size: min(1.6585365854vw * var(--fontratio, 1), 13.6px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 .list dd {
		font-size: min(3.5571129477vw * var(--fontratio, 1), 13.3391735537px * var(--fontratio, 1));
	}
}
.enterblock05 .list dd a {
	color: #0C75C7;
	position: relative;
	display: inline-block;
}
.enterblock05 .list dd a:before {
	content: "";
	display: block;
	position: absolute;
	bottom: calc(0.35em - 10px);
	right: 55%;
	width: 15%;
	height: 1px;
	background: #000;
	opacity: 0;
	transform: scaleX(3);
	pointer-events: none;
	transform-origin: right;
	transition: transform 0s 0.3s, bottom 0.3s, right 0s 0.3s, width 0s 0.3s, opacity 0.3s;
	pointer-events: none;
}
.enterblock05 .list dd a:hover:before {
	opacity: 1;
	right: 0%;
	width: 100%;
	bottom: calc(0.35em - 5px);
	transition: transform 0.3s 0.1s, bottom 0s, right 0.3s, width 0.3s 0.4s, opacity 0.25s;
	transform: scaleX(1);
}
.enterblock05 .button {
	margin-top: min(220px, 17.1875vw);
}
.enterblock05 .button a {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: min(40px, 3.125vw);
	width: 80%;
	max-width: 505px;
	height: min(96px, 7.5vw);
	margin: auto;
	font-size: min(1.875vw * var(--fontratio, 1), 24px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 500;
	color: #fff;
	font-family: "Kaisei Opti", serif;
	background: #6BB3EB;
	border-radius: 100px;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
@media screen and (max-width: 959px) {
	.enterblock05 .button a {
		font-size: min(2.3414634146vw * var(--fontratio, 1), 19.2px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 .button a {
		font-size: min(4.3957245179vw * var(--fontratio, 1), 16.4839669421px * var(--fontratio, 1));
	}
}
.enterblock05 .button a:hover {
	opacity: 0.7;
}
@media screen and (max-width: 767px) {
	.enterblock05 .button a {
		height: 65px;
	}
}
.enterblock05 .button a:after {
	content: "";
	display: block;
	width: 10px;
	height: 18px;
	background: url(../images/arrow2.svg) no-repeat center center;
	background-size: 10px auto;
	transform: rotate(90deg);
}
.enterblock05 .button + p {
	margin-top: 20px;
	font-size: min(1.328125vw * var(--fontratio, 1), 17px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	color: #000;
	font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
}
@media screen and (max-width: 959px) {
	.enterblock05 .button + p {
		font-size: min(1.6585365854vw * var(--fontratio, 1), 13.6px * var(--fontratio, 1));
	}
}
@media screen and (max-width: 767px) {
	.enterblock05 .button + p {
		font-size: min(3.5571129477vw * var(--fontratio, 1), 13.3391735537px * var(--fontratio, 1));
	}
}

.contents .anchorlink {
	background: #fff;
	border: 1px solid #0C75C7;
}
