@charset "UTF-8";
/* HTML
----------------------------------------------- */
html {
		overflow-x: hidden;
		overflow-y: scroll !important;
}
html.is-nav-open {
		height: 100%;
		overscroll-behavior: none;
}
@media screen and (max-width: 767px) {
		html {
				overflow-y: auto;
		}
}

/* Body
----------------------------------------------- */
.is-nav-open body {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 1;
}

/* Page content
----------------------------------------------- */
@media screen and (max-width: 1023px) {
		.page-content {
				position: relative;
				margin-top: 64px;
				z-index: 99;
		}
}

/* Header
----------------------------------------------- */
.l-header {
		position: relative;
		z-index: 20;
}
.l-header:before {
		display: block;
		content: "";
		position: absolute;
		top: 97px;
		left: 0;
		right: 0;
		height: 4px;
		background-color: #FBE7AE;
		z-index: 1;
}
@media screen and (max-width: 1023px) {
		.l-header {
				border-bottom: 1px solid rgb(230, 230, 230);
		}
		.l-header:before {
				display: none;
		}
}
.l-header__logo {
		position: relative;
		margin-inline: auto;
		padding-top: 12px;
		width: fit-content;
		height: 165px;
		z-index: 1;
}
.l-header__logo .anchor {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 3.5px;
		font-size: 0;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
}
.l-header__logo .anchor:before, .l-header__logo .anchor:after {
		display: block;
		content: "";
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
}
.l-header__logo .anchor:before {
		width: 98px;
		background-image: url(../albums/abm00002002.svg);
		aspect-ratio: 98/103;
}
.l-header__logo .anchor:after {
		width: 271px;
		background-image: url(../albums/abm00002003.png);
		aspect-ratio: 271/25;
}
@media screen and (max-width: 1023px) {
		.l-header__logo {
				padding: 0;
				height: auto;
		}
		.l-header__logo .anchor {
				flex-direction: row;
				gap: 3px;
				height: 90px;
		}
		.l-header__logo .anchor:before {
				width: 49px;
		}
		.l-header__logo .anchor:after {
				width: 195px;
		}
}
.l-header__sub {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		z-index: -1;
}
@media screen and (max-width: 1023px) {
		.l-header__sub {
				position: fixed;
				top: 0;
				left: 0;
				right: 0;
				background-color: #208a76;
				z-index: 2;
		}
}
.l-header__sub .outer {
		margin-inline: 15px;
}
@media screen and (max-width: 1023px) {
		.l-header__sub .outer {
				margin-inline: 0;
		}
}
.l-header__sub .inner {
		display: flex;
		justify-content: flex-end;
		align-items: flex-end;
		margin-inline: auto;
		max-width: 1372px;
		height: 89px;
}
@media screen and (max-width: 1023px) {
		.l-header__sub .inner {
				justify-content: flex-start;
				align-items: center;
				max-width: initial;
				height: 64px;
		}
}
.l-header__sub .content {
		display: flex;
		align-items: center;
		position: relative;
		padding-right: 52px;
		z-index: 1;
}
@media screen and (max-width: 1023px) {
		.l-header__sub .content {
				padding-right: 128px;
				width: 100%;
		}
}
.l-header__sub .list {
		display: flex;
		align-items: center;
		gap: 12px;
}
@media screen and (max-width: 1023px) {
		.l-header__sub .list {
				gap: 27px;
				margin-left: 23px;
				gap: 32px;
				margin-left: 28px;
		}
}
.l-header__sub .list li .anchor {
		display: flex;
		align-items: center;
		gap: 5px;
}
.l-header__sub .list li .anchor:before {
		flex-shrink: 0;
		display: block;
		content: "";
		height: 40px;
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
}
.l-header__sub .list li .anchor.-contact:before {
		width: 32px;
		background-image: url(../albums/abm00002001.svg);
}
.l-header__sub .list li .anchor.-access:before {
		width: 36px;
		background-image: url(../albums/abm00001996.svg);
}
.l-header__sub .list li .anchor span {
		color: #333;
		font-family: "あずきフォントB", "azukiB", "あずきフォント", "azuki", "メイリオ", Meiryo, sans-serif;
		font-size: 14px;
		line-height: 1em;
}
@media screen and (max-width: 1023px) {
		.l-header__sub .list li .anchor.-contact:before {
				width: 28px;
		}
		.l-header__sub .list li .anchor.-access:before {
				width: 36px;
		}
		.l-header__sub .list li .anchor span {
				display: none;
		}
}
.l-header__sub .u-searchbox {
		flex-shrink: 0;
		position: absolute;
		top: 50%;
		right: 0;
		margin-top: -20px;
		z-index: 1;
}
@media screen and (max-width: 1023px) {
		.l-header__sub .u-searchbox {
				right: 64px;
				margin-top: -25px;
		}
}
.l-header__sub .u-menu {
		display: none;
}
@media screen and (max-width: 1023px) {
		.l-header__sub .u-menu {
				display: flex;
				position: absolute;
				top: 50%;
				right: 0;
				margin-top: -32px;
				z-index: 2;
		}
}

/* Nav
----------------------------------------------- */
.l-nav {
		font-family: "あずきフォントB", "azukiB", "あずきフォント", "azuki", "メイリオ", Meiryo, sans-serif;
}
@media (min-width: 1024px) {
		.l-nav {
				position: sticky;
				top: 0;
				z-index: 9999;
				height: 102px;
				border: 4px solid #FBE7AE;
				border-left: none;
				border-right: none;
				background-color: #fff;
		}
		.l-nav__outer {
				margin-inline: 15px;
				height: 100%;
		}
		.l-nav__inner {
				margin-inline: auto;
				max-width: 1048px;
				height: 100%;
		}
		.l-nav__inner > .list {
				display: flex;
				align-items: center;
				position: relative;
				margin-top: 2px;
				height: 100%;
				z-index: 1;
		}
		.l-nav__inner > .list:before {
				display: block;
				content: "";
				position: absolute;
				top: 0;
				right: -2px;
				bottom: 0;
				width: 4px;
				background-image: url(../albums/abm00002017.png);
				background-position: center;
				background-repeat: no-repeat;
				background-size: contain;
				z-index: 1;
		}
		.l-nav__inner > .list > li {
				position: relative;
				width: 100%;
				height: 100%;
				z-index: 1;
		}
		.l-nav__inner > .list > li:has(.-news) {
				display: none;
		}
		.l-nav__inner > .list > li:before {
				display: block;
				content: "";
				position: absolute;
				top: 50%;
				left: -2px;
				margin-top: -28px;
				width: 4px;
				height: 56px;
				background-image: url(../albums/abm00002017.png);
				background-position: center;
				background-repeat: no-repeat;
				background-size: contain;
				z-index: 1;
		}
		.l-nav__inner > .list > li > .anchor {
				display: flex;
				justify-content: center;
				align-items: center;
				gap: 10px;
				position: relative;
				height: 100%;
				z-index: 1;
		}
		.l-nav__inner > .list > li > .anchor:before {
				flex-shrink: 0;
				display: block;
				content: "";
				height: 56px;
				background-position: center;
				background-repeat: no-repeat;
				background-size: contain;
		}
		.l-nav__inner > .list > li > .anchor:after {
				display: block;
				content: "";
				position: absolute;
				left: 24px;
				right: 24px;
				bottom: 19px;
				height: 3px;
				background-image: url(../albums/abm00001993.png);
				background-position: center;
				background-repeat: repeat-x;
				background-repeat: cover;
				opacity: 0;
				z-index: 1;
		}
		.l-nav__inner > .list > li > .anchor.-introduction:before {
				width: 32px;
				background-image: url(../albums/abm00002002.svg);
		}
		.l-nav__inner > .list > li > .anchor.-life:before {
				width: 36px;
				background-image: url(../albums/abm00002007.svg);
		}
		.l-nav__inner > .list > li > .anchor.-support:before {
				width: 23px;
				background-image: url(../albums/abm00002009.svg);
		}
		.l-nav__inner > .list > li > .anchor.-admission:before {
				width: 32px;
				background-image: url(../albums/abm00002011.svg);
		}
		.l-nav__inner > .list > li > .anchor.-preschool:before {
				width: 32px;
				background-image: url(../albums/youchien_m6.png);
		}
		.l-nav__inner > .list > li > .anchor .-label {
				padding-top: 4px;
				font-size: 18px;
				line-height: 1em;
		}
		.l-nav__inner > .list > li > .anchor .-icon {
				display: block;
				margin-top: 0.4em;
				width: 12px;
				background-image: url(../albums/ic_nav_toggle.png);
				background-position: center;
				background-repeat: no-repeat;
				background-size: contain;
				aspect-ratio: 1/1;
		}
		.l-nav__inner > .list > li > .anchor[aria-current=page]:after {
				opacity: 1;
				transition-duration: 0s;
		}
}
@media (min-width: 1024px) and (any-hover: hover) {
		.l-nav__inner > .list > li > .anchor:after {
				transition-property: opacity;
				transition-duration: 0.25s;
		}
		.l-nav__inner > .list > li > .anchor:hover {
				text-decoration: none;
		}
		.l-nav__inner > .list > li > .anchor:hover:after {
				opacity: 1;
				transition-duration: 0.1s;
		}
}
@media (min-width: 1024px) {
		.l-nav__inner > .list > li > .toggle, .l-nav__inner > .list > li > .arrow {
				display: none;
		}
		.l-nav__inner > .list > li > .sub {
				position: absolute;
				top: 75px;
				left: 50%;
				margin-left: -165px;
				padding-top: 17px;
				width: 330px;
				pointer-events: none;
				visibility: hidden;
				opacity: 0;
				translate: 0 10px;
				z-index: 1;
		}
		.l-nav__inner > .list > li > .sub:before {
				display: block;
				content: "";
				position: absolute;
				top: 2px;
				left: 50%;
				margin-left: -15px;
				width: 30px;
				background-image: url(../albums/ic_nav_arrow.png);
				background-position: center;
				background-repeat: no-repeat;
				background-size: contain;
				z-index: -2;
				aspect-ratio: 1/1;
		}
		.l-nav__inner > .list > li > .sub > .list {
				position: relative;
				padding: 19px 27px 22px;
				border: 5px solid #FBE6A8;
				border-radius: 8px;
				background-color: #FFF9EB;
				z-index: 1;
		}
		.l-nav__inner > .list > li > .sub > .list > li {
				border-bottom: 2px dotted #B29782;
		}
		.l-nav__inner > .list > li > .sub > .list > li > .anchor {
				display: flex;
				align-items: center;
				padding: 13px 10px;
				color: #333;
				font-family: "メイリオ", Meiryo, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "MS Gothic", sans-serif;
				font-size: 15px;
				line-height: 1.4em;
		}
		.l-nav__inner > .list > li > .sub > .list > li > .anchor:before {
				flex-shrink: 0;
				display: block;
				content: "";
				margin-top: -0.2em;
				margin-right: 0;
				width: 0px;
				background-image: url(../albums/ic_nav_anchor.png);
				background-position: center;
				background-repeat: no-repeat;
				background-size: contain;
				aspect-ratio: 1/1;
		}
}
@media (min-width: 1024px) and (any-hover: hover) {
		.l-nav__inner > .list > li > .sub > .list > li > .anchor {
				transition-property: color;
				transition-duration: 0.25s;
		}
		.l-nav__inner > .list > li > .sub > .list > li > .anchor:before {
				transition-property: margin-right, width;
				transition-duration: 0.25s;
		}
		.l-nav__inner > .list > li > .sub > .list > li > .anchor:hover {
				color: #F39124;
				text-decoration: none;
		}
		.l-nav__inner > .list > li > .sub > .list > li > .anchor:hover:before {
				margin-right: 6px;
				width: 14px;
		}
}
@media (min-width: 1024px) {
		.l-nav__inner > .list > li.is-sub-open > .anchor:after {
				opacity: 1;
		}
		.l-nav__inner > .list > li.is-sub-open > .sub {
				pointer-events: auto;
				visibility: visible;
				opacity: 1;
				translate: 0 0;
		}
}
@media (min-width: 1024px) and (max-width: 1167px) {
		.l-nav__inner > .list > li:has(.-introduction) > .sub {
				left: 0;
				margin-left: 0;
		}
		.l-nav__inner > .list > li:has(.-introduction) > .sub:before {
				left: 25%;
				margin-left: 0;
		}
		.l-nav__inner > .list > li:has(.-preschool) > .sub {
				left: auto;
				right: 0;
				margin-left: 0;
		}
		.l-nav__inner > .list > li:has(.-preschool) > .sub:before {
				left: auto;
				right: 25%;
				margin-left: 0;
		}
}
@media (min-width: 1024px) and (any-hover: hover) {
		.l-nav__inner > .list > li > .sub {
				transition-property: visibility, opacity, translate;
				transition-duration: 0s, 0.25s, 0.25s;
				transition-delay: 0.25s, 0s, 0.25s;
				transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
		}
		.l-nav__inner > .list > li > .sub > .list > li {
				opacity: 0;
				translate: 0 -5px;
				transition-property: opacity, translate;
				transition-duration: 0.25s;
				transition-delay: 0s;
				transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
		}
		.l-nav__inner > .list > li:hover > .anchor:after {
				opacity: 1;
				transition-duration: 0.1s;
		}
		.l-nav__inner > .list > li:hover > .sub {
				pointer-events: auto;
				visibility: visible;
				opacity: 1;
				translate: 0 0;
				transition-delay: 0s;
				transition-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
		}
		.l-nav__inner > .list > li:hover > .sub > .list > li {
				opacity: 1;
				translate: 0 0;
				transition-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
		}
		.l-nav__inner > .list > li:hover > .sub > .list > li:nth-child(1) {
				transition-delay: 0.1s;
		}
		.l-nav__inner > .list > li:hover > .sub > .list > li:nth-child(2) {
				transition-delay: 0.15s;
		}
		.l-nav__inner > .list > li:hover > .sub > .list > li:nth-child(3) {
				transition-delay: 0.2s;
		}
		.l-nav__inner > .list > li:hover > .sub > .list > li:nth-child(4) {
				transition-delay: 0.25s;
		}
		.l-nav__inner > .list > li:hover > .sub > .list > li:nth-child(5) {
				transition-delay: 0.3s;
		}
		.l-nav__inner > .list > li:hover > .sub > .list > li:nth-child(6) {
				transition-delay: 0.35s;
		}
		.l-nav__inner > .list > li:hover > .sub > .list > li:nth-child(7) {
				transition-delay: 0.4s;
		}
		.l-nav__inner > .list > li:hover > .sub > .list > li:nth-child(8) {
				transition-delay: 0.45s;
		}
		.l-nav__inner > .list > li:hover > .sub > .list > li:nth-child(9) {
				transition-delay: 0.5s;
		}
		.l-nav__inner > .list > li:hover > .sub > .list > li:nth-child(10) {
				transition-delay: 0.55s;
		}
}
@media screen and (max-width: 1023px) {
		.l-nav {
				position: fixed;
				top: 64px;
				left: 0;
				right: 0;
				bottom: 0;
				pointer-events: none;
				visibility: hidden;
				overflow: hidden;
				z-index: 9999;
		}
		.l-nav__outer {
				position: absolute;
				inset: 0;
				background-color: #208a76;
				overflow: auto;
				z-index: 1;
				translate: -100% 0;
		}
		.l-nav__inner {
				padding-bottom: 80px;
				overflow: hidden;
		}
		.l-nav__inner > .list {
				border-bottom: 1px solid #1A6E5E;
		}
		.l-nav__inner > .list > li {
				display: block;
				position: relative;
				border-top: 1px solid #1A6E5E;
				z-index: 1;
		}
		.l-nav__inner > .list > li > .anchor {
				display: flex;
				align-items: center;
				gap: 8px;
				padding: 0 60px 0 30px;
				height: 64px;
				color: #fff;
		}
		.l-nav__inner > .list > li > .anchor:before {
				flex-shrink: 0;
				display: block;
				content: "";
				width: 22px;
				height: 36px;
				background-position: center;
				background-repeat: no-repeat;
				background-size: contain;
		}
		.l-nav__inner > .list > li > .anchor.-introduction:before {
				background-image: url(../albums/abm00002002.svg);
		}
		.l-nav__inner > .list > li > .anchor.-life:before {
				background-image: url(../albums/abm00002007.svg);
		}
		.l-nav__inner > .list > li > .anchor.-support:before {
				background-image: url(../albums/abm00002009.svg);
		}
		.l-nav__inner > .list > li > .anchor.-admission:before {
				background-image: url(../albums/abm00002011.svg);
		}
		.l-nav__inner > .list > li > .anchor.-preschool:before {
				background-image: url(../albums/youchien_m6.png);
		}
		.l-nav__inner > .list > li > .anchor.-news:before {
				background-image: url(../albums/abm00002015.png);
		}
		.l-nav__inner > .list > li > .anchor .-label {
				font-size: 18px;
				line-height: 1em;
		}
		.l-nav__inner > .list > li > .toggle, .l-nav__inner > .list > li > .arrow {
				display: block;
				position: absolute;
				top: 0;
				right: 0;
				margin: 0;
				padding: 0;
				width: 64px;
				border: none;
				outline: none;
				background: none;
				aspect-ratio: 1/1;
		}
		.l-nav__inner > .list > li > .toggle:before, .l-nav__inner > .list > li > .toggle:after {
				display: block;
				content: "";
				position: absolute;
				background-color: #fff;
				z-index: 1;
		}
		.l-nav__inner > .list > li > .toggle:before {
				top: 50%;
				left: 50%;
				margin: -7px 0 0 -1px;
				width: 2px;
				height: 14px;
		}
		.l-nav__inner > .list > li > .toggle:after {
				top: 50%;
				left: 50%;
				margin: -1px 0 0 -7px;
				width: 14px;
				height: 2px;
		}
		.l-nav__inner > .list > li > .arrow {
				display: flex;
				justify-content: center;
				align-items: center;
				pointer-events: none;
		}
		.l-nav__inner > .list > li > .arrow:before {
				display: block;
				content: "";
				margin: 0 0 0 -6px;
				width: 8px;
				border: 2px solid #fff;
				border-top: none;
				border-left: none;
				rotate: -45deg;
				aspect-ratio: 1/1;
		}
		.l-nav__inner > .list > li > .sub {
				display: block;
				block-size: 0;
				background-color: #227D6C;
				overflow: hidden;
		}
		.l-nav__inner > .list > li > .sub > .list > li {
				border-top: 1px solid #1A6E5E;
		}
		.l-nav__inner > .list > li > .sub > .list > li > .anchor {
				display: block;
				padding: 15px 24px 15px 62px;
				color: #fff;
				font-family: "メイリオ", Meiryo, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "MS Gothic", sans-serif;
				font-size: 15px;
				letter-spacing: 0.02em;
				line-height: 1.4em;
		}
		.is-nav-ready .l-nav {
				transition-property: visibility;
				transition-duration: 0s;
				transition-delay: 0.5s;
		}
		.is-nav-ready .l-nav .l-nav__outer {
				transition-property: translate;
				transition-duration: 0.5s;
				transition-delay: 0s;
				transition-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
				will-change: translate;
		}
		.is-nav-ready .l-nav .l-nav__inner > .list > li > .toggle {
				transition-property: rotate;
				transition-duration: 0.25s;
				transition-delay: 0s;
				transition-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
		}
		.is-nav-ready .l-nav .l-nav__inner > .list > li > .toggle:after {
				transition-property: scale;
				transition-duration: 0.25s;
				transition-delay: 0.25s;
				transition-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
		}
		.is-nav-ready .l-nav .l-nav__inner > .list > li > .toggle[aria-expanded=true] {
				rotate: 90deg;
		}
		.is-nav-ready .l-nav .l-nav__inner > .list > li > .toggle[aria-expanded=true]:after {
				scale: 0 1;
		}
		.is-nav-ready .l-nav .l-nav__inner > .list > li > .sub {
				transition-property: block-size;
				transition-duration: 0.5s;
				transition-delay: 0s;
				transition-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
				will-change: block-size;
		}
		.is-nav-open .l-nav {
				pointer-events: auto;
				visibility: visible;
				transition-delay: 0s;
		}
		.is-nav-open .l-nav .l-nav__outer {
				translate: 0 0;
				transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
		}
}

/* Search box
----------------------------------------------- */
.u-searchbox {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		gap: 8px;
		width: 100%;
		pointer-events: none;
}
@media screen and (max-width: 1023px) {
		.u-searchbox {
				max-width: 345px;
				width: calc(100% - 64px - 15px);
		}
}
.u-searchbox form {
		display: contents;
}
.u-searchbox .box {
		width: 100%;
		scale: 0 1;
		overflow: hidden;
		visibility: hidden;
		pointer-events: none;
		transform-origin: right;
}
.u-searchbox .box .query {
		width: 100%;
		height: 40px;
		color: #333;
		font-size: 14px;
		text-indent: 0.65em;
		border-color: #f29300;
		border-radius: 0px;
}
@media screen and (max-width: 1023px) {
		.u-searchbox .box .query {
				border-color: transparent;
		}
}
.u-searchbox .button {
		flex-shrink: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0;
		padding: 0;
		width: 40px;
		border: none;
		border-radius: 4px;
		outline: none;
		background: none;
		background-color: #f29300;
		-webkit-appearance: none;
}
.u-searchbox .button:before {
		display: block;
		content: "";
		width: 16px;
		background-color: #fff;
		aspect-ratio: 1/1;
		mask-image: url("../albums/ic_search.svg");
		mask-position: center;
		mask-repeat: no-repeat;
		mask-size: contain;
}
@media (any-hover: hover) {
		.u-searchbox .button {
				transition-property: background-color;
				transition-duration: 0.25s;
		}
		.u-searchbox .button:hover {
				background-color: #d47500;
				transition-duration: 0.1s;
		}
}
.u-searchbox .button {
		pointer-events: auto;
		aspect-ratio: 1/1;
}
.u-searchbox .button[type=submit] {
		display: none;
}
@media screen and (max-width: 1023px) {
		.u-searchbox .button {
				width: 50px;
				border-radius: 0;
				background-color: transparent;
		}
		.u-searchbox .button:before {
				width: 18px;
		}
}
@media screen and (max-width: 1023px) and (any-hover: hover) {
		.u-searchbox .button {
				transition: none;
		}
		.u-searchbox .button:hover {
				background-color: transparent;
		}
}
.u-searchbox.js-searchbox-ready .box {
		transition-property: visibility, scale;
		transition-duration: 0s, 0.35s;
		transition-delay: 0.35s, 0s;
		transition-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
		will-change: scale;
}
.u-searchbox.js-searchbox-ready .box .query {
		transition-property: border-radius;
		transition-duration: 0.35s;
		transition-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
}
.u-searchbox.js-searchbox-open .box {
		scale: 1 1;
		visibility: visible;
		pointer-events: auto;
		transition-delay: 0s, 0s;
		transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}
.u-searchbox.js-searchbox-open .box .query {
		border-radius: 4px;
		transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}
.u-searchbox.js-searchbox-focus .button[type=submit] {
		display: flex;
}
.u-searchbox.js-searchbox-focus .button[type=button] {
		display: none;
}

/* Menu button
----------------------------------------------- */
.u-menu {
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		margin: 0;
		padding: 0;
		width: 64px;
		border: none;
		outline: none;
		background: no-repeat;
		z-index: 1;
		aspect-ratio: 1/1;
}
.u-menu__open {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		margin: -1px 0 0 -10px;
		width: 20px;
		height: 2px;
		color: #fff;
		background-color: currentcolor;
		z-index: 1;
}
.u-menu__open:before, .u-menu__open:after {
		display: block;
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		height: 2px;
		background-color: currentcolor;
}
.u-menu__open:before {
		top: -7px;
}
.u-menu__open:after {
		bottom: -7px;
}
.u-menu__close {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		margin: -11px 0 0 -11px;
		width: 22px;
		height: 22px;
		color: #fff;
		z-index: 1;
		rotate: 45deg;
}
.u-menu__close:before, .u-menu__close:after {
		display: block;
		content: "";
		position: absolute;
		background-color: currentcolor;
		z-index: 1;
}
.u-menu__close:before {
		top: 0;
		left: 50%;
		bottom: 0;
		margin-left: -1px;
		width: 2px;
		scale: 1 0;
		transform-origin: bottom;
}
.u-menu__close:after {
		top: 50%;
		left: 0;
		right: 0;
		margin-top: -1px;
		height: 2px;
		scale: 0 1;
		transform-origin: right;
}
.is-nav-ready .u-menu .u-menu__open {
		transform-origin: left;
		transition-property: scale;
		transition-duration: 0.5s;
		transition-delay: 0.25s;
		transition-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
}
.is-nav-ready .u-menu .u-menu__close:before, .is-nav-ready .u-menu .u-menu__close:after {
		transition-property: scale;
		transition-duration: 0.5s;
		transition-delay: 0s;
		transition-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
}
.is-nav-ready .u-menu .u-menu__close:before {
		transition-delay: 0.1s;
}
.is-nav-open .u-menu .u-menu__open {
		transform-origin: right;
		scale: 0 1;
		transition-delay: 0s;
		transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}
.is-nav-open .u-menu .u-menu__close:before, .is-nav-open .u-menu .u-menu__close:after {
		scale: 1 1;
		transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}
.is-nav-open .u-menu .u-menu__close:before {
		transform-origin: top;
		transition-delay: 0.25s;
}
.is-nav-open .u-menu .u-menu__close:after {
		transform-origin: left;
		transition-delay: 0.35s;
}