@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lexend+Giga:wght@300&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lexend+Giga&display=swap");
@-webkit-keyframes floatUp_5 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-5px);
		        transform: translateY(-5px);
	}
}
@keyframes floatUp_5 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-5px);
		        transform: translateY(-5px);
	}
}
@-webkit-keyframes floatUp_7 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-7px);
		        transform: translateY(-7px);
	}
}
@keyframes floatUp_7 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-7px);
		        transform: translateY(-7px);
	}
}
@-webkit-keyframes floatUp_10 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-10px);
		        transform: translateY(-10px);
	}
}
@keyframes floatUp_10 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-10px);
		        transform: translateY(-10px);
	}
}
@-webkit-keyframes floatUp_15 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-15px);
		        transform: translateY(-15px);
	}
}
@keyframes floatUp_15 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-15px);
		        transform: translateY(-15px);
	}
}
@-webkit-keyframes sway_15 {
	0% {
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	100% {
		-webkit-transform: translateX(-15px);
		        transform: translateX(-15px);
	}
}
@keyframes sway_15 {
	0% {
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	100% {
		-webkit-transform: translateX(-15px);
		        transform: translateX(-15px);
	}
}
@-webkit-keyframes slide_loop_y {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
	}
}
@keyframes slide_loop_y {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
	}
}
@-webkit-keyframes slide_loop_x {
	0% {
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	100% {
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
}
@keyframes slide_loop_x {
	0% {
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	100% {
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
}
@-webkit-keyframes rotate {
	0% {
		-webkit-transform: rotate(0);
		        transform: rotate(0);
	}
	100% {
		-webkit-transform: rotate(360deg);
		        transform: rotate(360deg);
	}
}
@keyframes rotate {
	0% {
		-webkit-transform: rotate(0);
		        transform: rotate(0);
	}
	100% {
		-webkit-transform: rotate(360deg);
		        transform: rotate(360deg);
	}
}
@-webkit-keyframes rotate_r {
	0% {
		-webkit-transform: rotate(0);
		        transform: rotate(0);
	}
	100% {
		-webkit-transform: rotate(-360deg);
		        transform: rotate(-360deg);
	}
}
@keyframes rotate_r {
	0% {
		-webkit-transform: rotate(0);
		        transform: rotate(0);
	}
	100% {
		-webkit-transform: rotate(-360deg);
		        transform: rotate(-360deg);
	}
}
.is-fade > *:not(.is-not) {
	opacity: 0;
	-webkit-transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
	transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
}
.is-fade > .is-not {
	opacity: 0;
	-webkit-transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
	transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
}
.is-fade.fadeIn > * {
	opacity: 1;
}

.box-fade {
	opacity: 0;
	-webkit-transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
	transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
}
.box-fade.fadeIn {
	opacity: 1;
}

.p_hover a:hover {
	opacity: 0.7;
}

.svg.c_white svg {
	fill: #fff;
}
.svg.c_black svg {
	fill: #000;
}

.img-fit img {
	width: 100%;
	height: 100%;
	-o-object-position: 50% 50%;
	   object-position: 50% 50%;
	-o-object-fit: cover;
	   object-fit: cover;
}

.replace_img {
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: 50% 50%;
}

@media screen and (min-width: 801px) {
	.l_tel {
		pointer-events: none;
	}
}
.slick-prev,
.slick-next {
	width: 80px;
	height: 80px;
	background-color: var(--c_base2);
	border-radius: 35px;
	z-index: 10;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.slick-prev::before,
.slick-next::before {
	width: 16px;
	aspect-ratio: 1/1;
	content: "";
	display: block;
	background-color: var(--c_key1);
	-webkit-mask-image: url(../img/common/ico_arrow.svg);
	        mask-image: url(../img/common/ico_arrow.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: 0 0;
	        mask-position: 0 0;
	-webkit-mask-size: auto 100%;
	        mask-size: auto 100%;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.slick-prev::before {
	rotate: -135deg;
}

.slick-next::before {
	rotate: 45deg;
}

@media screen and (max-width: 800px) {
	.slick-prev,
	.slick-next {
		width: 40px;
		height: 40px;
	}
	.slick-prev::before,
	.slick-next::before {
		width: 8px;
	}
	.slick-prev {
		left: 0;
		border-radius: 0 min(4.375vw, 17.5px) min(4.375vw, 17.5px) 0;
	}
	.slick-next {
		right: 0;
		border-radius: min(4.375vw, 17.5px) 0 0 min(4.375vw, 17.5px);
	}
}
.hl_en {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	color: var(--c_key1);
	text-transform: uppercase;
}

.hl_jp {
	font-size: 17px;
	font-weight: 500;
	position: relative;
}
.hl_jp::before {
	width: 100%;
	height: 100%;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #9ab1d6;
	border: 1px solid #000;
	border-radius: 30px;
	z-index: -1;
	-webkit-transition: all 0.4s cubic-bezier(0.37, 0, 0.63, 1);
	transition: all 0.4s cubic-bezier(0.37, 0, 0.63, 1);
}
.hl_jp span {
	height: 38px;
	display: inline-block;
	position: relative;
	padding: 0 15px 1px;
	background-color: #fff;
	border: 1px solid #000;
	border-radius: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	z-index: 2;
}
.fadeIn .hl_jp::before {
	translate: 10px 10px;
}

@media screen and (max-width: 800px) {
	.hl_jp {
		font-size: 13px;
		font-size: clamp(10.5px, 3.25vw, 13px);
	}
	.hl_jp span {
		height: 23px;
		min-width: unset;
		padding: 0 8px 1px;
	}
	.fadeIn .hl_jp::before {
		translate: 5px 5px;
	}
}
.page_title {
	overflow: hidden;
	position: relative;
	padding-bottom: 110px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: column-reverse;
	        flex-direction: column-reverse;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-transition-duration: 0.6s, 0s;
	        transition-duration: 0.6s, 0s;
	-webkit-transition-delay: 0.2s, 0s;
	        transition-delay: 0.2s, 0s;
	-webkit-transition-property: opacity, padding;
	transition-property: opacity, padding;
	z-index: 1;
}
.page_title:not(.page_title._noimg)::before, .page_title:not(.page_title._noimg)::after {
	content: "";
}
.page_title:not(.page_title._noimg) .hl_en {
	margin-top: -0.6em;
}
.page_title:not(.page_title._noimg).fadeIn .img {
	scale: 1;
}
.page_title:not(.page_title._noimg).fadeIn::before, .page_title:not(.page_title._noimg).fadeIn::after {
	scale: 1;
	opacity: 1;
}
.page_title._noimg {
	padding: 102px 0 10px;
}
.page_title::before, .page_title::after {
	display: block;
	position: absolute;
	bottom: 13px;
	background-repeat: no-repeat;
	background-size: auto 100%;
	background-position: 0 0;
	pointer-events: none;
	z-index: 3;
	scale: 0.8;
	opacity: 0;
	-webkit-transition: all 1s cubic-bezier(0.22, 1, 0.36, 1);
	transition: all 1s cubic-bezier(0.22, 1, 0.36, 1);
	-webkit-transition-delay: 0.4s;
	        transition-delay: 0.4s;
	-webkit-transition-property: scale, opacity;
	transition-property: scale, opacity;
	-webkit-animation: floatUp_15 1.6s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	        animation: floatUp_15 1.6s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
}
.page_title::before {
	right: 50%;
	margin-right: min(25vw, 350px);
	-webkit-transform-origin: 0 100%;
	        transform-origin: 0 100%;
}
.page_title::after {
	left: 50%;
	margin-left: min(25vw, 350px);
	-webkit-transform-origin: 100% 100%;
	        transform-origin: 100% 100%;
}
.page_title .hl_en {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	color: var(--c_key1);
	font-size: min(8.3334vw, 100px);
	letter-spacing: -0.05em;
	text-align: center;
	position: relative;
	margin-bottom: 12px;
	z-index: 5;
}
.page_title .hl_jp {
	font-size: 20px;
}
.page_title .hl_jp::before {
	-webkit-transition-delay: 0.6s;
	        transition-delay: 0.6s;
}
.page_title .hl_jp span {
	height: 38px;
	padding: 0 19px 1px;
}
.page_title .img {
	width: 97%;
	max-width: 1350px;
	aspect-ratio: 2700/1080;
	overflow: hidden;
	position: relative;
	margin: 0 auto;
	border-radius: 270px;
	z-index: 1;
	scale: 0.8;
	-webkit-transition: all 1s cubic-bezier(0.22, 1, 0.36, 1);
	transition: all 1s cubic-bezier(0.22, 1, 0.36, 1);
	-webkit-transition-delay: 0.2s;
	        transition-delay: 0.2s;
}
.page_title .img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}
.page_title::before {
	width: min(49.0715%, 687px);
	aspect-ratio: 1374/562;
	background-image: url(../img/room/title_illust01.png);
}
.page_title::after {
	width: min(49.1429%, 688px);
	aspect-ratio: 1376/558;
	background-image: url(../img/room/title_illust02.png);
}

@media screen and (max-width: 800px) {
	.page_title {
		padding-bottom: calc(min(17.5vw, 70px) + 5px);
	}
	.page_title:not(.page_title._noimg) .hl_en {
		margin-top: 0;
	}
	.page_title._noimg {
		padding: 52px 0 10px;
	}
	.page_title .hl_en {
		font-size: min(13.75vw, 55px);
		line-height: 0.9091;
	}
	.page_title .hl_jp {
		font-size: clamp(11.2px, 3.5vw, 14px);
	}
	.page_title .hl_jp span {
		height: 23px;
		padding: 0 12px 1px;
	}
	.page_title .img {
		width: 100%;
		aspect-ratio: 800/600;
		max-width: unset;
		margin-bottom: 34px;
		border: 0.5px solid #000;
		border-radius: min(25vw, 200px);
	}
	.page_title::before {
		width: min(85.875%, 687px);
		bottom: -80px;
		margin-right: 80px;
	}
	.page_title::after {
		width: min(86%, 688px);
		bottom: -75px;
		margin-left: 81px;
	}
}
.cmn_bnr {
	overflow: hidden;
	position: relative;
	padding-bottom: 100px;
	background-color: var(--c_base2);
}
.cmn_bnr::before {
	width: 100%;
	height: calc(100% - min(17.8572vw, 250px));
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	border-radius: 50px 50px 0 0;
	background-color: var(--c_base);
	z-index: 1;
}
.cmn_bnr_inner {
	width: 94%;
	max-width: 1300px;
	margin: 0 auto;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	z-index: 2;
}
.cmn_bnr_item {
	position: relative;
	z-index: 1;
}
.cmn_bnr_item a {
	width: 100%;
	height: 100%;
	display: block;
	position: relative;
}
@media screen and (min-width: 801px) {
	.cmn_bnr_item a:hover .img img {
		scale: 1.1;
	}
	.cmn_bnr_item a:hover .box_text .sub::before {
		background-color: var(--c_key2);
	}
	.cmn_bnr_item a:hover .illust::before {
		rotate: 10deg;
		translate: 0 -4px;
	}
}
.cmn_bnr_item .img {
	overflow: hidden;
	position: relative;
	border-radius: 50px;
	z-index: 1;
}
.cmn_bnr_item .img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.cmn_bnr_item .box_text {
	position: relative;
	z-index: 2;
}
.cmn_bnr_item .box_text .sub {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-size: 12px;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	height: 26px;
	padding: 0 20px 0 10px;
	display: inline-block;
	background-color: #fff;
	border: 1px solid #000;
	border-radius: 26px;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.cmn_bnr_item .box_text .sub::before {
	width: 10px;
	aspect-ratio: 1/1;
	content: "";
	display: block;
	margin-right: 9px;
	background-color: var(--c_key1);
	border-radius: 50%;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.cmn_bnr_item ._arrow {
	aspect-ratio: 1/1;
	display: block;
	background-color: var(--c_key1);
	background-image: url(../img/common/ico_arrow.svg);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	border-radius: 50%;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.cmn_bnr_item._rounge {
	margin-bottom: 50px;
}
@media screen and (min-width: 801px) {
	.cmn_bnr_item._rounge a:hover ._arrow {
		background-color: var(--c_key2);
	}
}
.cmn_bnr_item._rounge .img {
	margin-bottom: -100px;
}
.cmn_bnr_item._rounge .box_text {
	width: 70%;
	max-width: 700px;
	display: inline-block;
	padding: 46px 0 0 55px;
	position: relative;
	background-color: var(--c_base);
	border-top-right-radius: 50px;
	z-index: 1;
}
.cmn_bnr_item._rounge .box_text::before, .cmn_bnr_item._rounge .box_text::after {
	width: 50px;
	aspect-ratio: 1/1;
	content: "";
	display: block;
	position: absolute;
	background-color: var(--c_base);
	-webkit-mask-image: url(../img/common/parts_radius.svg);
	        mask-image: url(../img/common/parts_radius.svg);
	-webkit-mask-size: 100% 100%;
	        mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	rotate: -90deg;
	z-index: 1;
}
.cmn_bnr_item._rounge .box_text::before {
	top: 0;
	left: 0;
	translate: 0 -100%;
}
.cmn_bnr_item._rounge .box_text::after {
	top: 100px;
	right: 0;
	translate: 100% -100%;
}
.cmn_bnr_item._rounge .box_text h3 {
	font-size: 40px;
	margin-bottom: 23px;
}
.cmn_bnr_item._rounge .box_text .sub {
	margin-left: -6px;
}
.cmn_bnr_item._rounge ._arrow {
	width: 70px;
	position: absolute;
	top: 50px;
	right: 50px;
	background-size: 28.5715%;
}
.cmn_bnr_item._rounge .illust {
	width: min(100%, 688px);
	position: absolute;
	right: -200px;
	bottom: -15px;
	z-index: 2;
	-webkit-user-select: none;
	   -moz-user-select: none;
	    -ms-user-select: none;
	        user-select: none;
	pointer-events: none;
	-webkit-animation: sway_15 1.8s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	        animation: sway_15 1.8s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
}
.cmn_bnr_item._rounge .illust::before, .cmn_bnr_item._rounge .illust::after {
	width: 100%;
	height: 100%;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 100%;
}
.cmn_bnr_item._rounge .illust::before {
	background-image: url(../img/common/cmn_bnr_illust03.png);
	z-index: 4;
	-webkit-transform-origin: 40% 40%;
	        transform-origin: 40% 40%;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.cmn_bnr_item._rounge .illust::after {
	background-image: url(../img/common/cmn_bnr_illust02.png);
	z-index: 3;
}
.cmn_bnr_item._rounge .illust span {
	display: block;
	position: relative;
	z-index: 5;
}
.cmn_bnr_item:not(._rounge) {
	width: 49.2308%;
	min-height: 220px;
}
@media screen and (min-width: 801px) {
	.cmn_bnr_item:not(._rounge) a:hover .icon ._arrow {
		background-color: var(--c_key2);
	}
}
.cmn_bnr_item:not(._rounge) .img {
	height: 100%;
}
.cmn_bnr_item:not(._rounge) .box_text {
	width: 100%;
	position: absolute;
	top: 50%;
	left: 0;
	translate: 0 -50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.cmn_bnr_item:not(._rounge) .box_text h3 {
	color: #fff;
	font-size: 32px;
	margin-bottom: 20px;
}
.cmn_bnr_item:not(._rounge) .icon {
	width: 105px;
	height: 90px;
	position: absolute;
	right: 0;
	bottom: 0;
	background-color: var(--c_base);
	border-top-left-radius: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	pointer-events: none;
	z-index: 2;
}
.cmn_bnr_item:not(._rounge) .icon::before, .cmn_bnr_item:not(._rounge) .icon::after {
	width: 45px;
	aspect-ratio: 1/1;
	content: "";
	display: block;
	position: absolute;
	background-color: var(--c_base);
	-webkit-mask-image: url(../img/common/parts_radius.svg);
	        mask-image: url(../img/common/parts_radius.svg);
	-webkit-mask-size: 100% 100%;
	        mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	rotate: -180deg;
	z-index: 1;
}
.cmn_bnr_item:not(._rounge) .icon::before {
	left: 0;
	bottom: 0;
	translate: -100% 0;
}
.cmn_bnr_item:not(._rounge) .icon::after {
	top: 0;
	right: 0;
	translate: 0 -100%;
}
.cmn_bnr_item:not(._rounge) .icon ._arrow {
	width: 50px;
	margin: 10px 0 0 0;
	background-size: 32%;
}

@media screen and (max-width: 800px) {
	.cmn_bnr {
		overflow: visible;
		padding-bottom: min(12.5vw, 50px);
	}
	.cmn_bnr::before {
		height: calc(100% - min(28.75vw, 230px));
		border-radius: min(6.25vw, 25px) min(6.25vw, 25px) 0 0;
	}
	.cmn_bnr_inner {
		width: 92.5%;
	}
	.cmn_bnr_item .img {
		border-radius: min(3.75vw, 30px);
	}
	.cmn_bnr_item .box_text .sub {
		font-size: 10px;
		height: 18px;
		margin-left: 3px;
		padding: 0 20px 0 7px;
		border-width: 0.5px;
	}
	.cmn_bnr_item .box_text .sub::before {
		width: 7px;
		margin-right: 8px;
	}
	.cmn_bnr_item._rounge {
		margin-bottom: min(7vw, 56px);
	}
	.cmn_bnr_item._rounge .img {
		aspect-ratio: 740/520;
		margin-bottom: -50px;
	}
	.cmn_bnr_item._rounge .box_text {
		width: 84%;
		max-width: 310px;
		padding: 24px 0 0 19px;
		border-top-right-radius: min(6.25vw, 25px);
	}
	.cmn_bnr_item._rounge .box_text::before, .cmn_bnr_item._rounge .box_text::after {
		width: min(6.25vw, 25px);
	}
	.cmn_bnr_item._rounge .box_text::after {
		top: 50px;
	}
	.cmn_bnr_item._rounge .box_text h3 {
		font-size: min(6.25vw, 25px);
		margin-bottom: 13px;
	}
	.cmn_bnr_item._rounge .box_text .sub {
		margin-left: 2px;
	}
	.cmn_bnr_item._rounge ._arrow {
		width: 35px;
		position: absolute;
		top: 25px;
		right: 33px;
	}
	.cmn_bnr_item._rounge .illust {
		width: 204px;
		overflow: hidden;
		top: -170px;
		bottom: auto;
		right: -5vw;
		-webkit-animation: floatUp_10 1.8s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
		        animation: floatUp_10 1.8s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	}
	.cmn_bnr_item._rounge .illust::before, .cmn_bnr_item._rounge .illust::after {
		width: 344px;
		aspect-ratio: 1376/828;
	}
	.cmn_bnr_item._rounge .illust span {
		width: 344px;
	}
	.cmn_bnr_item:not(._rounge) {
		width: 47.973%;
		min-height: unset;
	}
	.cmn_bnr_item:not(._rounge) .img {
		aspect-ratio: 355/340;
	}
	.cmn_bnr_item:not(._rounge) .box_text {
		padding-bottom: 5px;
	}
	.cmn_bnr_item:not(._rounge) .box_text h3 {
		font-size: clamp(14.4px, 4.5vw, 18px);
	}
	.cmn_bnr_item:not(._rounge) .icon {
		width: 55px;
		height: 45px;
		border-top-left-radius: min(6.25vw, 25px);
	}
	.cmn_bnr_item:not(._rounge) .icon::before, .cmn_bnr_item:not(._rounge) .icon::after {
		width: min(5vw, 20px);
	}
	.cmn_bnr_item:not(._rounge) .icon ._arrow {
		width: 25px;
	}
}
.cmn_movie {
	overflow: hidden;
	position: relative;
}
.cmn_movie.is-view .cmn_movie_inner::before {
	opacity: 0;
	translate: 10px -10px;
	-webkit-transform-origin: 100% 0%;
	        transform-origin: 100% 0%;
	-webkit-transition-duration: 0.6s;
	        transition-duration: 0.6s;
	-webkit-transition-delay: 0.8s;
	        transition-delay: 0.8s;
}
.cmn_movie.is-view .illust::before {
	opacity: 0;
	translate: 10px -10px;
	-webkit-transform-origin: 100% 0%;
	        transform-origin: 100% 0%;
	-webkit-transition-duration: 0.6s;
	        transition-duration: 0.6s;
	-webkit-transition-delay: 0.4s;
	        transition-delay: 0.4s;
}
.cmn_movie.is-view .illust::after {
	opacity: 0;
	translate: 10px -10px;
	-webkit-transform-origin: 100% 0%;
	        transform-origin: 100% 0%;
	-webkit-transition-duration: 0.6s;
	        transition-duration: 0.6s;
	-webkit-transition-delay: 0.6s;
	        transition-delay: 0.6s;
}
.cmn_movie.is-view .illust span {
	opacity: 0;
	-webkit-transition-duration: 0.8s;
	        transition-duration: 0.8s;
}
.cmn_movie.is-view.fadeIn .cmn_movie_inner::before {
	opacity: 1;
	translate: 0 0;
}
.cmn_movie.is-view.fadeIn .illust::before {
	opacity: 1;
	translate: 0 0;
}
.cmn_movie.is-view.fadeIn .illust::after {
	opacity: 1;
	translate: 0 0;
}
.cmn_movie.is-view.fadeIn .illust span {
	opacity: 1;
}
.cmn_movie_inner {
	width: 93%;
	max-width: 1300px;
	position: relative;
	margin: 0 auto;
	padding: 106px 0 100px;
}
.cmn_movie_inner::before {
	width: min(8.7693%, 114px);
	aspect-ratio: 228/150;
	content: "";
	display: block;
	position: absolute;
	bottom: 105px;
	left: 0;
	left: -3.923%;
	background-image: url(../img/concept/movie_illust04.png);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-position: 0 0;
}
.cmn_movie_hl {
	position: relative;
	margin-bottom: 87px;
	margin-left: min(2.6154%, 34px);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	z-index: 3;
}
.cmn_movie_hl .hl_en {
	font-size: 110px;
	font-size: clamp(100px, 11vw, 110px);
	letter-spacing: -0.05em;
	margin-right: 28px;
}
.cmn_movie_list {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: start;
}
.cmn_movie_list_item {
	width: 49.2308%;
	overflow: hidden;
	border-radius: 50px;
}
.cmn_movie_list_item:nth-child(2) {
	margin-top: min(9.2308%, 120px);
}
.cmn_movie_list_item a {
	display: block;
	position: relative;
}
.cmn_movie_list_item a::before, .cmn_movie_list_item a::after {
	width: 100px;
	aspect-ratio: 1/1;
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 50%;
	border-radius: 50%;
	translate: 50% -50%;
	z-index: 2;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.cmn_movie_list_item a::before {
	background-color: #2b2a23;
	background-image: url(../img/top/tourism_movie_btn_bg.png);
	background-repeat: no-repeat;
	background-size: 100%;
	-webkit-animation: rotate 10s infinite linear;
	        animation: rotate 10s infinite linear;
}
.cmn_movie_list_item a::after {
	background-image: url(../img/top/movie_btn_ico.png);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 14% auto;
	z-index: 3;
}
.cmn_movie_list_item a img {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
@media screen and (min-width: 801px) {
	.cmn_movie_list_item a:hover img {
		scale: 1.1;
	}
}
.cmn_movie .illust {
	width: min(52.9231%, 688px);
	aspect-ratio: 1376/780;
	position: absolute;
	left: 50%;
	bottom: 50%;
	margin-bottom: -32px;
	margin-left: 11.5715%;
	-webkit-user-select: none;
	   -moz-user-select: none;
	    -ms-user-select: none;
	        user-select: none;
	pointer-events: none;
	z-index: 2;
}
.cmn_movie .illust::before, .cmn_movie .illust::after {
	content: "";
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-position: 0 0;
	z-index: 2;
}
.cmn_movie .illust::before {
	width: min(13.9535%, 96px);
	aspect-ratio: 192/126;
	bottom: 50%;
	left: 62.9361%;
	margin-bottom: 31.25%;
	background-image: url(../img/concept/movie_illust02.png);
}
.cmn_movie .illust::after {
	width: min(30.9594%, 213px);
	aspect-ratio: 426/222;
	top: 0;
	left: -23.9825%;
	margin-top: 15.8431%;
	background-image: url(../img/concept/movie_illust03.png);
}
.cmn_movie .illust span {
	display: block;
	-webkit-animation: floatUp_15 1.6s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	        animation: floatUp_15 1.6s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
}

@media screen and (max-width: 800px) {
	.cmn_movie {
		padding-top: 0;
	}
	.cmn_movie_inner {
		width: 92.5%;
		padding: 0 0 min(47.5vw, 190px);
	}
	.cmn_movie_inner::before {
		display: none;
	}
	.cmn_movie_hl {
		margin: 0 0 62px;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.cmn_movie_hl .hl_en {
		font-size: clamp(48px, 15vw, 60px);
		letter-spacing: -0.08em;
		margin-right: 0;
		margin-bottom: 7px;
	}
	.cmn_movie_hl .hl_jp span {
		width: 80px;
	}
	.cmn_movie_list {
		display: block;
	}
	.cmn_movie_list_item {
		width: 100%;
		border-radius: min(6.25vw, 25px);
	}
	.cmn_movie_list_item:nth-child(2) {
		margin-top: 15px;
	}
	.cmn_movie_list_item a::before, .cmn_movie_list_item a::after {
		width: 110px;
	}
	.cmn_movie .illust {
		width: min(105%, 840px);
		left: 50%;
		bottom: 0;
		margin-bottom: -29px;
		margin-left: -86px;
	}
}
.modaal-wrapper.tateya_02 .modaal-video-container {
	width: 100%;
	height: auto;
	aspect-ratio: 1920/1440;
	overflow: hidden;
	border-radius: min(3.9286vw, 55px);
}
.modaal-wrapper.tateya_02 .modaal-close {
	right: 50%;
	top: 50%;
	margin-top: max(-34.8214%, -487.5px);
	margin-right: max(-46.4285%, -650px);
	translate: 30% -30%;
}
.modaal-wrapper.tateya_01 .modaal-video-container {
	width: 100%;
	height: auto;
	aspect-ratio: 16/9;
	overflow: hidden;
}
.modaal-wrapper.tateya_01 .modaal-close {
	right: 50%;
	top: 50%;
	margin-top: max(-26.1071%, -365.5px);
	margin-right: max(-46.4285%, -650px);
	translate: 50% -50%;
}

@media screen and (max-width: 800px) {
	.modaal-wrapper.tateya_01 .modaal-close {
		right: 0;
		margin-right: 0;
		translate: 0% -50%;
	}
}
html, body, div, span, em, small, main, header, footer, section, nav, ::before, ::after,
h1, h2, h3, h4, h5, h6, p, a, img,
dl, dt, dd, ol, ul, li,
table, caption, tr, th, td,
input, button, textarea, select, option {
	font-style: normal;
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	word-break: break-all;
}

ol, ul {
	list-style: none;
}

img {
	vertical-align: bottom;
	-webkit-box-shadow: #000 0 0 0;
	        box-shadow: #000 0 0 0;
	-webkit-backface-visibility: hidden;
	max-width: 100%;
	width: 100%;
	height: auto;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

a {
	color: inherit;
	text-decoration: none;
	outline: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

select {
	background-color: transparent;
}
select:focus-visible {
	outline: none;
}

svg {
	width: 100%;
}

select,
textarea,
input[type=text],
input[type=email],
input[type=tel],
input[type=submit],
input[type=radio],
button {
	-webkit-appearance: none;
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	border-radius: 0;
}

textarea:focus,
input:focus {
	outline: none;
}

@keyframes floatUp_5 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-5px);
		        transform: translateY(-5px);
	}
}
@keyframes floatUp_7 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-7px);
		        transform: translateY(-7px);
	}
}
@keyframes floatUp_10 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-10px);
		        transform: translateY(-10px);
	}
}
@keyframes floatUp_15 {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-15px);
		        transform: translateY(-15px);
	}
}
@keyframes sway_15 {
	0% {
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	100% {
		-webkit-transform: translateX(-15px);
		        transform: translateX(-15px);
	}
}
@keyframes slide_loop_y {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
	}
}
@keyframes slide_loop_x {
	0% {
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	100% {
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
}
@keyframes rotate {
	0% {
		-webkit-transform: rotate(0);
		        transform: rotate(0);
	}
	100% {
		-webkit-transform: rotate(360deg);
		        transform: rotate(360deg);
	}
}
@keyframes rotate_r {
	0% {
		-webkit-transform: rotate(0);
		        transform: rotate(0);
	}
	100% {
		-webkit-transform: rotate(-360deg);
		        transform: rotate(-360deg);
	}
}
.is-fade > *:not(.is-not) {
	opacity: 0;
	-webkit-transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
	transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
}
.is-fade > .is-not {
	opacity: 0;
	-webkit-transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
	transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
}
.is-fade.fadeIn > * {
	opacity: 1;
}

.box-fade {
	opacity: 0;
	-webkit-transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
	transition: all 0.6s cubic-bezier(0.37, 0, 0.63, 1);
}
.box-fade.fadeIn {
	opacity: 1;
}

.p_hover a:hover {
	opacity: 0.7;
}

.svg.c_white svg {
	fill: #fff;
}
.svg.c_black svg {
	fill: #000;
}

.img-fit img {
	width: 100%;
	height: 100%;
	-o-object-position: 50% 50%;
	   object-position: 50% 50%;
	-o-object-fit: cover;
	   object-fit: cover;
}

.replace_img {
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: 50% 50%;
}

@media screen and (min-width: 801px) {
	.l_tel {
		pointer-events: none;
	}
}
.slick-prev,
.slick-next {
	width: 80px;
	height: 80px;
	background-color: var(--c_base2);
	border-radius: 35px;
	z-index: 10;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.slick-prev::before,
.slick-next::before {
	width: 16px;
	aspect-ratio: 1/1;
	content: "";
	display: block;
	background-color: var(--c_key1);
	-webkit-mask-image: url(../img/common/ico_arrow.svg);
	        mask-image: url(../img/common/ico_arrow.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: 0 0;
	        mask-position: 0 0;
	-webkit-mask-size: auto 100%;
	        mask-size: auto 100%;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.slick-prev::before {
	rotate: -135deg;
}

.slick-next::before {
	rotate: 45deg;
}

@media screen and (max-width: 800px) {
	.slick-prev,
	.slick-next {
		width: 40px;
		height: 40px;
	}
	.slick-prev::before,
	.slick-next::before {
		width: 8px;
	}
	.slick-prev {
		left: 0;
		border-radius: 0 min(4.375vw, 17.5px) min(4.375vw, 17.5px) 0;
	}
	.slick-next {
		right: 0;
		border-radius: min(4.375vw, 17.5px) 0 0 min(4.375vw, 17.5px);
	}
}
.hl_en {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	color: var(--c_key1);
	text-transform: uppercase;
}

.hl_jp {
	font-size: 17px;
	font-weight: 500;
	position: relative;
}
.hl_jp::before {
	width: 100%;
	height: 100%;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #9ab1d6;
	border: 1px solid #000;
	border-radius: 30px;
	z-index: -1;
	-webkit-transition: all 0.4s cubic-bezier(0.37, 0, 0.63, 1);
	transition: all 0.4s cubic-bezier(0.37, 0, 0.63, 1);
}
.hl_jp span {
	height: 38px;
	display: inline-block;
	position: relative;
	padding: 0 15px 1px;
	background-color: #fff;
	border: 1px solid #000;
	border-radius: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	z-index: 2;
}
.fadeIn .hl_jp::before {
	translate: 10px 10px;
}

@media screen and (max-width: 800px) {
	.hl_jp {
		font-size: 13px;
		font-size: clamp(10.5px, 3.25vw, 13px);
	}
	.hl_jp span {
		height: 23px;
		min-width: unset;
		padding: 0 8px 1px;
	}
	.fadeIn .hl_jp::before {
		translate: 5px 5px;
	}
}
.page_title {
	overflow: hidden;
	position: relative;
	padding-bottom: 110px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: column-reverse;
	        flex-direction: column-reverse;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-transition-duration: 0.6s, 0s;
	        transition-duration: 0.6s, 0s;
	-webkit-transition-delay: 0.2s, 0s;
	        transition-delay: 0.2s, 0s;
	-webkit-transition-property: opacity, padding;
	transition-property: opacity, padding;
	z-index: 1;
}
.page_title:not(.page_title._noimg)::before, .page_title:not(.page_title._noimg)::after {
	content: "";
}
.page_title:not(.page_title._noimg) .hl_en {
	margin-top: -0.6em;
}
.page_title:not(.page_title._noimg).fadeIn .img {
	scale: 1;
}
.page_title:not(.page_title._noimg).fadeIn::before, .page_title:not(.page_title._noimg).fadeIn::after {
	scale: 1;
	opacity: 1;
}
.page_title._noimg {
	padding: 102px 0 10px;
}
.page_title::before, .page_title::after {
	display: block;
	position: absolute;
	bottom: 13px;
	background-repeat: no-repeat;
	background-size: auto 100%;
	background-position: 0 0;
	pointer-events: none;
	z-index: 3;
	scale: 0.8;
	opacity: 0;
	-webkit-transition: all 1s cubic-bezier(0.22, 1, 0.36, 1);
	transition: all 1s cubic-bezier(0.22, 1, 0.36, 1);
	-webkit-transition-delay: 0.4s;
	        transition-delay: 0.4s;
	-webkit-transition-property: scale, opacity;
	transition-property: scale, opacity;
	-webkit-animation: floatUp_15 1.6s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	        animation: floatUp_15 1.6s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
}
.page_title::before {
	right: 50%;
	margin-right: min(25vw, 350px);
	-webkit-transform-origin: 0 100%;
	        transform-origin: 0 100%;
}
.page_title::after {
	left: 50%;
	margin-left: min(25vw, 350px);
	-webkit-transform-origin: 100% 100%;
	        transform-origin: 100% 100%;
}
.page_title .hl_en {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	color: var(--c_key1);
	font-size: min(8.3334vw, 100px);
	letter-spacing: -0.05em;
	text-align: center;
	position: relative;
	margin-bottom: 12px;
	z-index: 5;
}
.page_title .hl_jp {
	font-size: 20px;
}
.page_title .hl_jp::before {
	-webkit-transition-delay: 0.6s;
	        transition-delay: 0.6s;
}
.page_title .hl_jp span {
	height: 38px;
	padding: 0 19px 1px;
}
.page_title .img {
	width: 97%;
	max-width: 1350px;
	aspect-ratio: 2700/1080;
	overflow: hidden;
	position: relative;
	margin: 0 auto;
	border-radius: 270px;
	z-index: 1;
	scale: 0.8;
	-webkit-transition: all 1s cubic-bezier(0.22, 1, 0.36, 1);
	transition: all 1s cubic-bezier(0.22, 1, 0.36, 1);
	-webkit-transition-delay: 0.2s;
	        transition-delay: 0.2s;
}
.page_title .img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}
.page_title::before {
	width: min(49.0715%, 687px);
	aspect-ratio: 1374/562;
	background-image: url(../img/room/title_illust01.png);
}
.page_title::after {
	width: min(49.1429%, 688px);
	aspect-ratio: 1376/558;
	background-image: url(../img/room/title_illust02.png);
}

@media screen and (max-width: 800px) {
	.page_title {
		padding-bottom: calc(min(17.5vw, 70px) + 5px);
	}
	.page_title:not(.page_title._noimg) .hl_en {
		margin-top: 0;
	}
	.page_title._noimg {
		padding: 52px 0 10px;
	}
	.page_title .hl_en {
		font-size: min(13.75vw, 55px);
		line-height: 0.9091;
	}
	.page_title .hl_jp {
		font-size: clamp(11.2px, 3.5vw, 14px);
	}
	.page_title .hl_jp span {
		height: 23px;
		padding: 0 12px 1px;
	}
	.page_title .img {
		width: 100%;
		aspect-ratio: 800/600;
		max-width: unset;
		margin-bottom: 34px;
		border: 0.5px solid #000;
		border-radius: min(25vw, 200px);
	}
	.page_title::before {
		width: min(85.875%, 687px);
		bottom: -80px;
		margin-right: 80px;
	}
	.page_title::after {
		width: min(86%, 688px);
		bottom: -75px;
		margin-left: 81px;
	}
}
.cmn_bnr {
	overflow: hidden;
	position: relative;
	padding-bottom: 100px;
	background-color: var(--c_base2);
}
.cmn_bnr::before {
	width: 100%;
	height: calc(100% - min(17.8572vw, 250px));
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	border-radius: 50px 50px 0 0;
	background-color: var(--c_base);
	z-index: 1;
}
.cmn_bnr_inner {
	width: 94%;
	max-width: 1300px;
	margin: 0 auto;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	z-index: 2;
}
.cmn_bnr_item {
	position: relative;
	z-index: 1;
}
.cmn_bnr_item a {
	width: 100%;
	height: 100%;
	display: block;
	position: relative;
}
@media screen and (min-width: 801px) {
	.cmn_bnr_item a:hover .img img {
		scale: 1.1;
	}
	.cmn_bnr_item a:hover .box_text .sub::before {
		background-color: var(--c_key2);
	}
	.cmn_bnr_item a:hover .illust::before {
		rotate: 10deg;
		translate: 0 -4px;
	}
}
.cmn_bnr_item .img {
	overflow: hidden;
	position: relative;
	border-radius: 50px;
	z-index: 1;
}
.cmn_bnr_item .img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.cmn_bnr_item .box_text {
	position: relative;
	z-index: 2;
}
.cmn_bnr_item .box_text .sub {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-size: 12px;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	height: 26px;
	padding: 0 20px 0 10px;
	display: inline-block;
	background-color: #fff;
	border: 1px solid #000;
	border-radius: 26px;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.cmn_bnr_item .box_text .sub::before {
	width: 10px;
	aspect-ratio: 1/1;
	content: "";
	display: block;
	margin-right: 9px;
	background-color: var(--c_key1);
	border-radius: 50%;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.cmn_bnr_item ._arrow {
	aspect-ratio: 1/1;
	display: block;
	background-color: var(--c_key1);
	background-image: url(../img/common/ico_arrow.svg);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	border-radius: 50%;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.cmn_bnr_item._rounge {
	margin-bottom: 50px;
}
@media screen and (min-width: 801px) {
	.cmn_bnr_item._rounge a:hover ._arrow {
		background-color: var(--c_key2);
	}
}
.cmn_bnr_item._rounge .img {
	margin-bottom: -100px;
}
.cmn_bnr_item._rounge .box_text {
	width: 70%;
	max-width: 700px;
	display: inline-block;
	padding: 46px 0 0 55px;
	position: relative;
	background-color: var(--c_base);
	border-top-right-radius: 50px;
	z-index: 1;
}
.cmn_bnr_item._rounge .box_text::before, .cmn_bnr_item._rounge .box_text::after {
	width: 50px;
	aspect-ratio: 1/1;
	content: "";
	display: block;
	position: absolute;
	background-color: var(--c_base);
	-webkit-mask-image: url(../img/common/parts_radius.svg);
	        mask-image: url(../img/common/parts_radius.svg);
	-webkit-mask-size: 100% 100%;
	        mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	rotate: -90deg;
	z-index: 1;
}
.cmn_bnr_item._rounge .box_text::before {
	top: 0;
	left: 0;
	translate: 0 -100%;
}
.cmn_bnr_item._rounge .box_text::after {
	top: 100px;
	right: 0;
	translate: 100% -100%;
}
.cmn_bnr_item._rounge .box_text h3 {
	font-size: 40px;
	margin-bottom: 23px;
}
.cmn_bnr_item._rounge .box_text .sub {
	margin-left: -6px;
}
.cmn_bnr_item._rounge ._arrow {
	width: 70px;
	position: absolute;
	top: 50px;
	right: 50px;
	background-size: 28.5715%;
}
.cmn_bnr_item._rounge .illust {
	width: min(100%, 688px);
	position: absolute;
	right: -200px;
	bottom: -15px;
	z-index: 2;
	-webkit-user-select: none;
	   -moz-user-select: none;
	    -ms-user-select: none;
	        user-select: none;
	pointer-events: none;
	-webkit-animation: sway_15 1.8s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	        animation: sway_15 1.8s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
}
.cmn_bnr_item._rounge .illust::before, .cmn_bnr_item._rounge .illust::after {
	width: 100%;
	height: 100%;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 100%;
}
.cmn_bnr_item._rounge .illust::before {
	background-image: url(../img/common/cmn_bnr_illust03.png);
	z-index: 4;
	-webkit-transform-origin: 40% 40%;
	        transform-origin: 40% 40%;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.cmn_bnr_item._rounge .illust::after {
	background-image: url(../img/common/cmn_bnr_illust02.png);
	z-index: 3;
}
.cmn_bnr_item._rounge .illust span {
	display: block;
	position: relative;
	z-index: 5;
}
.cmn_bnr_item:not(._rounge) {
	width: 49.2308%;
	min-height: 220px;
}
@media screen and (min-width: 801px) {
	.cmn_bnr_item:not(._rounge) a:hover .icon ._arrow {
		background-color: var(--c_key2);
	}
}
.cmn_bnr_item:not(._rounge) .img {
	height: 100%;
}
.cmn_bnr_item:not(._rounge) .box_text {
	width: 100%;
	position: absolute;
	top: 50%;
	left: 0;
	translate: 0 -50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.cmn_bnr_item:not(._rounge) .box_text h3 {
	color: #fff;
	font-size: 32px;
	margin-bottom: 20px;
}
.cmn_bnr_item:not(._rounge) .icon {
	width: 105px;
	height: 90px;
	position: absolute;
	right: 0;
	bottom: 0;
	background-color: var(--c_base);
	border-top-left-radius: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	pointer-events: none;
	z-index: 2;
}
.cmn_bnr_item:not(._rounge) .icon::before, .cmn_bnr_item:not(._rounge) .icon::after {
	width: 45px;
	aspect-ratio: 1/1;
	content: "";
	display: block;
	position: absolute;
	background-color: var(--c_base);
	-webkit-mask-image: url(../img/common/parts_radius.svg);
	        mask-image: url(../img/common/parts_radius.svg);
	-webkit-mask-size: 100% 100%;
	        mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	rotate: -180deg;
	z-index: 1;
}
.cmn_bnr_item:not(._rounge) .icon::before {
	left: 0;
	bottom: 0;
	translate: -100% 0;
}
.cmn_bnr_item:not(._rounge) .icon::after {
	top: 0;
	right: 0;
	translate: 0 -100%;
}
.cmn_bnr_item:not(._rounge) .icon ._arrow {
	width: 50px;
	margin: 10px 0 0 0;
	background-size: 32%;
}

@media screen and (max-width: 800px) {
	.cmn_bnr {
		overflow: visible;
		padding-bottom: min(12.5vw, 50px);
	}
	.cmn_bnr::before {
		height: calc(100% - min(28.75vw, 230px));
		border-radius: min(6.25vw, 25px) min(6.25vw, 25px) 0 0;
	}
	.cmn_bnr_inner {
		width: 92.5%;
	}
	.cmn_bnr_item .img {
		border-radius: min(3.75vw, 30px);
	}
	.cmn_bnr_item .box_text .sub {
		font-size: 10px;
		height: 18px;
		margin-left: 3px;
		padding: 0 20px 0 7px;
		border-width: 0.5px;
	}
	.cmn_bnr_item .box_text .sub::before {
		width: 7px;
		margin-right: 8px;
	}
	.cmn_bnr_item._rounge {
		margin-bottom: min(7vw, 56px);
	}
	.cmn_bnr_item._rounge .img {
		aspect-ratio: 740/520;
		margin-bottom: -50px;
	}
	.cmn_bnr_item._rounge .box_text {
		width: 84%;
		max-width: 310px;
		padding: 24px 0 0 19px;
		border-top-right-radius: min(6.25vw, 25px);
	}
	.cmn_bnr_item._rounge .box_text::before, .cmn_bnr_item._rounge .box_text::after {
		width: min(6.25vw, 25px);
	}
	.cmn_bnr_item._rounge .box_text::after {
		top: 50px;
	}
	.cmn_bnr_item._rounge .box_text h3 {
		font-size: min(6.25vw, 25px);
		margin-bottom: 13px;
	}
	.cmn_bnr_item._rounge .box_text .sub {
		margin-left: 2px;
	}
	.cmn_bnr_item._rounge ._arrow {
		width: 35px;
		position: absolute;
		top: 25px;
		right: 33px;
	}
	.cmn_bnr_item._rounge .illust {
		width: 204px;
		overflow: hidden;
		top: -170px;
		bottom: auto;
		right: -5vw;
		-webkit-animation: floatUp_10 1.8s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
		        animation: floatUp_10 1.8s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	}
	.cmn_bnr_item._rounge .illust::before, .cmn_bnr_item._rounge .illust::after {
		width: 344px;
		aspect-ratio: 1376/828;
	}
	.cmn_bnr_item._rounge .illust span {
		width: 344px;
	}
	.cmn_bnr_item:not(._rounge) {
		width: 47.973%;
		min-height: unset;
	}
	.cmn_bnr_item:not(._rounge) .img {
		aspect-ratio: 355/340;
	}
	.cmn_bnr_item:not(._rounge) .box_text {
		padding-bottom: 5px;
	}
	.cmn_bnr_item:not(._rounge) .box_text h3 {
		font-size: clamp(14.4px, 4.5vw, 18px);
	}
	.cmn_bnr_item:not(._rounge) .icon {
		width: 55px;
		height: 45px;
		border-top-left-radius: min(6.25vw, 25px);
	}
	.cmn_bnr_item:not(._rounge) .icon::before, .cmn_bnr_item:not(._rounge) .icon::after {
		width: min(5vw, 20px);
	}
	.cmn_bnr_item:not(._rounge) .icon ._arrow {
		width: 25px;
	}
}
.cmn_movie {
	overflow: hidden;
	position: relative;
}
.cmn_movie.is-view .cmn_movie_inner::before {
	opacity: 0;
	translate: 10px -10px;
	-webkit-transform-origin: 100% 0%;
	        transform-origin: 100% 0%;
	-webkit-transition-duration: 0.6s;
	        transition-duration: 0.6s;
	-webkit-transition-delay: 0.8s;
	        transition-delay: 0.8s;
}
.cmn_movie.is-view .illust::before {
	opacity: 0;
	translate: 10px -10px;
	-webkit-transform-origin: 100% 0%;
	        transform-origin: 100% 0%;
	-webkit-transition-duration: 0.6s;
	        transition-duration: 0.6s;
	-webkit-transition-delay: 0.4s;
	        transition-delay: 0.4s;
}
.cmn_movie.is-view .illust::after {
	opacity: 0;
	translate: 10px -10px;
	-webkit-transform-origin: 100% 0%;
	        transform-origin: 100% 0%;
	-webkit-transition-duration: 0.6s;
	        transition-duration: 0.6s;
	-webkit-transition-delay: 0.6s;
	        transition-delay: 0.6s;
}
.cmn_movie.is-view .illust span {
	opacity: 0;
	-webkit-transition-duration: 0.8s;
	        transition-duration: 0.8s;
}
.cmn_movie.is-view.fadeIn .cmn_movie_inner::before {
	opacity: 1;
	translate: 0 0;
}
.cmn_movie.is-view.fadeIn .illust::before {
	opacity: 1;
	translate: 0 0;
}
.cmn_movie.is-view.fadeIn .illust::after {
	opacity: 1;
	translate: 0 0;
}
.cmn_movie.is-view.fadeIn .illust span {
	opacity: 1;
}
.cmn_movie_inner {
	width: 93%;
	max-width: 1300px;
	position: relative;
	margin: 0 auto;
	padding: 106px 0 100px;
}
.cmn_movie_inner::before {
	width: min(8.7693%, 114px);
	aspect-ratio: 228/150;
	content: "";
	display: block;
	position: absolute;
	bottom: 105px;
	left: 0;
	left: -3.923%;
	background-image: url(../img/concept/movie_illust04.png);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-position: 0 0;
}
.cmn_movie_hl {
	position: relative;
	margin-bottom: 87px;
	margin-left: min(2.6154%, 34px);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	z-index: 3;
}
.cmn_movie_hl .hl_en {
	font-size: 110px;
	font-size: clamp(100px, 11vw, 110px);
	letter-spacing: -0.05em;
	margin-right: 28px;
}
.cmn_movie_list {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: start;
}
.cmn_movie_list_item {
	width: 49.2308%;
	overflow: hidden;
	border-radius: 50px;
}
.cmn_movie_list_item:nth-child(2) {
	margin-top: min(9.2308%, 120px);
}
.cmn_movie_list_item a {
	display: block;
	position: relative;
}
.cmn_movie_list_item a::before, .cmn_movie_list_item a::after {
	width: 100px;
	aspect-ratio: 1/1;
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 50%;
	border-radius: 50%;
	translate: 50% -50%;
	z-index: 2;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.cmn_movie_list_item a::before {
	background-color: #2b2a23;
	background-image: url(../img/top/tourism_movie_btn_bg.png);
	background-repeat: no-repeat;
	background-size: 100%;
	-webkit-animation: rotate 10s infinite linear;
	        animation: rotate 10s infinite linear;
}
.cmn_movie_list_item a::after {
	background-image: url(../img/top/movie_btn_ico.png);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 14% auto;
	z-index: 3;
}
.cmn_movie_list_item a img {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
@media screen and (min-width: 801px) {
	.cmn_movie_list_item a:hover img {
		scale: 1.1;
	}
}
.cmn_movie .illust {
	width: min(52.9231%, 688px);
	aspect-ratio: 1376/780;
	position: absolute;
	left: 50%;
	bottom: 50%;
	margin-bottom: -32px;
	margin-left: 11.5715%;
	-webkit-user-select: none;
	   -moz-user-select: none;
	    -ms-user-select: none;
	        user-select: none;
	pointer-events: none;
	z-index: 2;
}
.cmn_movie .illust::before, .cmn_movie .illust::after {
	content: "";
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-position: 0 0;
	z-index: 2;
}
.cmn_movie .illust::before {
	width: min(13.9535%, 96px);
	aspect-ratio: 192/126;
	bottom: 50%;
	left: 62.9361%;
	margin-bottom: 31.25%;
	background-image: url(../img/concept/movie_illust02.png);
}
.cmn_movie .illust::after {
	width: min(30.9594%, 213px);
	aspect-ratio: 426/222;
	top: 0;
	left: -23.9825%;
	margin-top: 15.8431%;
	background-image: url(../img/concept/movie_illust03.png);
}
.cmn_movie .illust span {
	display: block;
	-webkit-animation: floatUp_15 1.6s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	        animation: floatUp_15 1.6s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
}

@media screen and (max-width: 800px) {
	.cmn_movie {
		padding-top: 0;
	}
	.cmn_movie_inner {
		width: 92.5%;
		padding: 0 0 min(47.5vw, 190px);
	}
	.cmn_movie_inner::before {
		display: none;
	}
	.cmn_movie_hl {
		margin: 0 0 62px;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.cmn_movie_hl .hl_en {
		font-size: clamp(48px, 15vw, 60px);
		letter-spacing: -0.08em;
		margin-right: 0;
		margin-bottom: 7px;
	}
	.cmn_movie_hl .hl_jp span {
		width: 80px;
	}
	.cmn_movie_list {
		display: block;
	}
	.cmn_movie_list_item {
		width: 100%;
		border-radius: min(6.25vw, 25px);
	}
	.cmn_movie_list_item:nth-child(2) {
		margin-top: 15px;
	}
	.cmn_movie_list_item a::before, .cmn_movie_list_item a::after {
		width: 110px;
	}
	.cmn_movie .illust {
		width: min(105%, 840px);
		left: 50%;
		bottom: 0;
		margin-bottom: -29px;
		margin-left: -86px;
	}
}
.modaal-wrapper.tateya_02 .modaal-video-container {
	width: 100%;
	height: auto;
	aspect-ratio: 1920/1440;
	overflow: hidden;
	border-radius: min(3.9286vw, 55px);
}
.modaal-wrapper.tateya_02 .modaal-close {
	right: 50%;
	top: 50%;
	margin-top: max(-34.8214%, -487.5px);
	margin-right: max(-46.4285%, -650px);
	translate: 30% -30%;
}
.modaal-wrapper.tateya_01 .modaal-video-container {
	width: 100%;
	height: auto;
	aspect-ratio: 16/9;
	overflow: hidden;
}
.modaal-wrapper.tateya_01 .modaal-close {
	right: 50%;
	top: 50%;
	margin-top: max(-26.1071%, -365.5px);
	margin-right: max(-46.4285%, -650px);
	translate: 50% -50%;
}

@media screen and (max-width: 800px) {
	.modaal-wrapper.tateya_01 .modaal-close {
		right: 0;
		margin-right: 0;
		translate: 0% -50%;
	}
}
:root {
	--c_base: #f6f5f4;
	--c_base2: #fbfaf9;
	--c_base3: #fcf9ef;
	--c_key1: #184a9a;
	--c_key2: #e05727;
	--c_text: #131313;
}

html {
	font-size: 10px;
}

body {
	color: #131313;
	line-height: 1;
	font-family: "Zen Kaku Gothic New", "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
	font-weight: 400;
	-webkit-text-size-adjust: 100%;
	padding-top: 144px;
	background-color: var(--c_base2);
}
body::before, body::after {
	width: 100%;
	height: 280px;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background-repeat: no-repeat;
	background-size: auto 100%;
	pointer-events: none;
	z-index: 100;
}
body::before {
	background-image: url(../img/common/head_bg_deco_l.png);
	background-position: 0 0;
}
body::after {
	background-image: url(../img/common/head_bg_deco_r.png);
	background-position: 100% 0;
}
body.nav_active {
	overflow: hidden;
}

.grecaptcha-badge {
	z-index: 10;
}

@media screen and (min-width: 801px) {
	.pc_off {
		display: none !important;
	}
}
@media screen and (max-width: 800px) {
	body {
		padding-top: 100px;
	}
	body::before, body::after {
		height: 115px;
	}
	.sp_off {
		display: none !important;
	}
}
.wrap_1200 {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}

/* ========================================

header

======================================== */
.header {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1000;
	opacity: 0;
}
.header .logo {
	width: min(10%, 121px);
	position: absolute;
}
.header_nav {
	margin: 0 auto;
}
.header_nav ul {
	font-size: clamp(12.5px, 1.25vw, 15px);
	font-weight: 500;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
@media screen and (min-width: 801px) {
	.header_nav ul li a:hover {
		color: var(--c_key1);
	}
}
.header_btn {
	position: absolute;
}
.header_btn_item {
	position: relative;
}
.header_btn_item a {
	color: #fff;
	font-weight: 500;
	width: 100%;
	height: 100%;
}
.header_btn_item a::before {
	aspect-ratio: 1/1;
	content: "";
	display: block;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: 50% 0;
	        mask-position: 50% 0;
}
@media screen and (min-width: 801px) {
	.header_btn_item a:hover {
		scale: 0.9;
	}
}
.header_btn_item._access a {
	background-color: var(--c_key2);
}
.header_btn_item._access a::before {
	background-color: #fff;
	-webkit-mask-image: url(../img/common/ico_pin.svg);
	        mask-image: url(../img/common/ico_pin.svg);
	-webkit-mask-size: auto 100%;
	        mask-size: auto 100%;
}
.header_btn_item._reserve a {
	background-color: var(--c_key1);
}
.header_btn_item._reserve a::before {
	background-image: url(../img/common/head_btn_reserve_icon.png);
	background-size: 100% auto;
}
.header_normal {
	width: 93%;
	max-width: 1300px;
	position: relative;
	margin: 0 auto;
	padding-top: 40px;
}
.header_normal .logo {
	position: absolute;
	left: 10px;
	top: 46px;
}
.header_normal .header_nav {
	width: 65%;
	max-width: 700px;
	height: 64px;
	position: relative;
	padding: 3px 0;
	background-color: var(--c_key1);
	border-radius: 30px;
}
.header_normal .header_nav::before, .header_normal .header_nav::after {
	width: 10px;
	aspect-ratio: 1/1;
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 10px);
	background-color: var(--c_key2);
	border: 5px solid var(--c_base2);
	border-radius: 50%;
	-webkit-box-sizing: content-box;
	        box-sizing: content-box;
}
.header_normal .header_nav::before {
	left: -9px;
}
.header_normal .header_nav::after {
	right: -9px;
}
.header_normal .header_nav ul {
	padding: 0 min(2.8572vw, 40px);
	background-color: var(--c_base2);
	border-radius: 29px;
}
.header_normal .header_btn {
	width: clamp(125px, 14.4616%, 188px);
	top: 40px;
	right: 0;
}
.header_normal .header_btn_item {
	width: 58.5107%;
	aspect-ratio: 1/1;
}
.header_normal .header_btn_item a {
	padding-bottom: 8px;
	border: 1px solid #fff;
	border-radius: min(3.5715vw, 50px);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.header_normal .header_btn_item a::before {
	margin-bottom: 9.2593%;
}
.header_normal .header_btn_item._access {
	z-index: 1;
}
.header_normal .header_btn_item._access a {
	font-size: clamp(13px, 1.2308vw, 16px);
}
.header_normal .header_btn_item._access a::before {
	width: 20.3704%;
	max-width: 22px;
}
.header_normal .header_btn_item._reserve {
	margin-top: -22.3405%;
	margin-left: auto;
	z-index: 3;
}
.header_normal .header_btn_item._reserve a {
	font-size: clamp(13px, 1.3077vw, 17px);
}
.header_normal .header_btn_item._reserve a::before {
	width: 24.0741%;
	max-width: 26px;
}
.header_fixed {
	width: 100%;
	max-width: 1300px;
	height: 70px;
	padding: 0 min(2vw, 30px);
	background-color: #fff;
	border-radius: 0 0 30px 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	position: fixed;
	top: 0;
	right: 50%;
	translate: 50% -100%;
	-webkit-transition: translate 0.3s;
	transition: translate 0.3s;
	z-index: 5;
}
.header_fixed .logo {
	width: min(13.2%, 132px);
	top: calc(50% - 3px);
	left: min(2vw, 30px);
	translate: 0 -50%;
}
.header_fixed .header_nav {
	padding-bottom: 3px;
}
.header_fixed .header_nav ul li:not(:last-of-type) {
	margin-right: 1.6em;
}
.header_fixed .header_nav ul li a .en {
	display: none;
}
.header_fixed .header_btn {
	right: 30px;
	top: 50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	translate: 0 -50%;
}
.header_fixed .header_btn_item {
	width: clamp(90px, 10vw, 110px);
	width: clamp(90px, 9.1667vw, 110px);
	height: 32px;
}
.header_fixed .header_btn_item a {
	font-size: clamp(12px, 1.2728vw, 14px);
	border-radius: 32px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.header_fixed .header_btn_item a::before {
	width: 18px;
}
.header_fixed .header_btn_item a .jp {
	padding-bottom: 2px;
}
.header_fixed .header_btn_item a .en {
	display: none;
}
.header_fixed .header_btn_item._access {
	margin-left: 5px;
}
.header_fixed .header_btn_item._access a {
	padding-left: 8.1819%;
}
.header_fixed .header_btn_item._access a::before {
	margin-right: 4.5455%;
}
.header_fixed .header_btn_item._reserve a {
	padding-left: 6.3634%;
}
.header_fixed .header_btn_item._reserve a::before {
	margin-right: 7.2728%;
}
.header_fixed .header_btn_item._out {
	display: none;
}
@media screen and (min-width: 801px) {
	body.fixed .header_fixed {
		-webkit-transition: translate 0.3s;
		transition: translate 0.3s;
		translate: 50% 0;
		opacity: 1;
	}
}

@media screen and (max-width: 1000px) {
	.header_fixed {
		-webkit-box-pack: end;
		    -ms-flex-pack: end;
		        justify-content: flex-end;
	}
	.header_fixed .header_nav {
		margin: 0 20px 0 0;
	}
	.header_fixed .header_btn {
		position: relative;
		top: auto;
		right: auto;
		translate: 0 0;
	}
}
@media screen and (max-width: 900px) {
	.header_normal .header_nav {
		width: 68%;
	}
	.header_normal .header_btn {
		width: min(12%, 100px);
		min-width: unset;
		height: 64px;
	}
	.header_normal .header_btn_item {
		width: 100%;
	}
	.header_normal .header_btn_item._access {
		display: none;
	}
	.header_normal .header_btn_item._reserve {
		height: 100%;
		aspect-ratio: auto;
		margin-top: 0;
	}
	.header_normal .header_btn_item._reserve a {
		padding-bottom: 0;
	}
	.header_normal .header_btn_item._reserve a::before {
		width: 20px;
	}
	.header_fixed .header_btn_item._access {
		display: none;
	}
}
@media screen and (max-width: 800px) {
	.header {
		height: 100px;
	}
	body.fixed .header::before {
		opacity: 1;
	}
	.header::before {
		width: 100%;
		height: 100px;
		content: "";
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		-webkit-backdrop-filter: blur(1.5px);
		        backdrop-filter: blur(1.5px);
		-webkit-mask-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0)), color-stop(30%, rgba(0, 0, 0, 0.5)), to(rgb(0, 0, 0)));
		-webkit-mask-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 30%, rgb(0, 0, 0) 100%);
		        mask-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0)), color-stop(30%, rgba(0, 0, 0, 0.5)), to(rgb(0, 0, 0)));
		        mask-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 30%, rgb(0, 0, 0) 100%);
		-webkit-mask-composite: source-in, xor;
		        mask-composite: intersect;
		-webkit-transition: all 0.4s linear;
		transition: all 0.4s linear;
		opacity: 0;
	}
	.header .header_normal {
		width: 100%;
		height: 100px;
		position: fixed;
		padding: min(6.25vw, 25px) 0 0 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		z-index: 100;
	}
	.header .header_normal .logo {
		width: min(41.5vw, 166px);
		height: 46px;
		position: relative;
		top: auto;
		left: auto;
		margin-right: min(2.5vw, 10px);
		margin-left: min(5vw, 20px);
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	.header .header_normal .header_nav {
		display: none;
	}
	.header .header_normal .header_btn {
		width: min(27.5vw, 110px);
		height: 46px;
		max-width: unset;
		margin-top: 2px;
		margin-right: calc(min(5vw, 20px) + 60px);
		position: relative;
		top: auto;
		right: auto;
	}
	.header .header_normal .header_btn_item._access {
		display: none;
	}
	.header .header_normal .header_btn_item._reserve a {
		font-size: clamp(10.5px, 3.25vw, 13px);
		padding-bottom: 0;
		border: none;
		border-radius: 45px;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
	}
	.header .header_normal .header_btn_item._reserve a::before {
		width: min(5vw, 20px);
		margin-bottom: 0;
		margin-right: min(2.5vw, 10px);
	}
	.header_inner {
		height: 100vh;
		height: 100dvh;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		overflow-y: auto;
		z-index: 101;
		opacity: 0;
		visibility: hidden;
		-webkit-transition: all 0.6s cubic-bezier(0.33, 1, 0.68, 1);
		transition: all 0.6s cubic-bezier(0.33, 1, 0.68, 1);
		pointer-events: none;
	}
	.header_fixed {
		height: auto;
		padding: min(32.5vw, 130px) 0 0 0;
		position: relative;
		right: auto;
		top: auto;
		background-color: var(--c_base2);
		border-radius: 0;
		background-image: url(../img/common/head_bg_deco_l.png), url(../img/common/head_bg_deco_r.png);
		background-repeat: no-repeat;
		background-size: auto 115px;
		background-position: 0 0, 100% 0;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: start;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		translate: 0 0;
		z-index: 99;
	}
	.header_fixed::after {
		width: 100%;
		height: 382px;
		content: "";
		display: block;
		background-image: url(../img/common/foot_bg_map_sp.png);
		background-repeat: no-repeat;
		background-size: auto 100%;
		background-position: 50% 100%;
		pointer-events: none;
		z-index: 1;
	}
	.header_fixed_inner {
		height: 100vh;
		overflow: scroll;
	}
	.header_fixed .logo {
		width: min(41.5vw, 166px);
		height: 46px;
		position: absolute;
		top: min(6.25vw, 25px);
		left: min(5vw, 20px);
		margin-right: min(2.5vw, 10px);
		translate: 0 0;
		-ms-flex-negative: 0;
		    flex-shrink: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	.header_fixed .header_nav {
		width: calc(100% - min(20vw, 80px));
		margin: 0 0 min(7.5vw, 30px);
		-ms-flex-negative: 0;
		    flex-shrink: 0;
	}
	.header_fixed .header_nav ul {
		font-size: clamp(12.8px, 4vw, 16px);
		width: 100%;
		display: block;
		padding-bottom: 0;
	}
	.header_fixed .header_nav ul li {
		height: min(17.75vw, 71px);
	}
	.header_fixed .header_nav ul li:not(:last-of-type) {
		margin: 0;
		border-bottom: 0.5px solid #2e2717;
	}
	.header_fixed .header_nav ul li a {
		width: 100%;
		height: 100%;
		position: relative;
		padding-right: calc(min(7.5vw, 30px) + min(5vw, 20px));
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	.header_fixed .header_nav ul li a::before, .header_fixed .header_nav ul li a::after {
		width: min(7.5vw, 30px);
		aspect-ratio: 1/1;
		display: block;
		content: "";
		position: absolute;
		right: 0;
		top: 50%;
		border-radius: 50%;
		translate: 0 -50%;
	}
	.header_fixed .header_nav ul li a::before {
		background-color: var(--c_key1);
	}
	.header_fixed .header_nav ul li a::after {
		background-color: #fff;
		-webkit-mask-image: url(../img/common/ico_arrow.svg);
		        mask-image: url(../img/common/ico_arrow.svg);
		-webkit-mask-repeat: no-repeat;
		        mask-repeat: no-repeat;
		-webkit-mask-size: min(33.3334%, 10px);
		        mask-size: min(33.3334%, 10px);
		-webkit-mask-position: 50% 50%;
		        mask-position: 50% 50%;
		border-radius: 50%;
	}
	.header_fixed .header_nav ul li a .en {
		font-family: "Lexend Giga", sans-serif;
		font-optical-sizing: auto;
		font-weight: 400;
		color: var(--c_key1);
		font-size: 10px;
		text-transform: uppercase;
		display: block;
		margin-left: auto;
	}
	.header_fixed .header_btn {
		width: calc(100% - min(20vw, 80px));
		margin-bottom: min(18.75vw, 75px);
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
	}
	.header_fixed .header_btn_item {
		width: 100%;
		height: 50px;
	}
	.header_fixed .header_btn_item a::before {
		width: 20px;
	}
	.header_fixed .header_btn_item a .en {
		font-family: "Lexend Giga", sans-serif;
		font-optical-sizing: auto;
		font-weight: 400;
		color: #fff;
		font-size: 10px;
		text-transform: uppercase;
		display: block;
		margin-left: auto;
	}
	.header_fixed .header_btn_item._access {
		display: block;
	}
	.header_fixed .header_btn_item._access a {
		font-size: 14px;
		padding: 0 30px 0 15px;
	}
	.header_fixed .header_btn_item._access a::before {
		width: 20px;
		margin-right: 15px;
	}
	.header_fixed .header_btn_item._reserve {
		margin-bottom: 10px;
	}
	.header_fixed .header_btn_item._reserve a {
		font-size: 14px;
		padding: 0 30px 0 15px;
	}
	.header_fixed .header_btn_item._reserve a::before {
		width: 20px;
		margin-right: 15px;
	}
	.header_fixed .header_btn_item._out {
		width: min(27.5vw, 110px);
		height: 46px;
		display: block;
		position: absolute;
		top: calc(min(6.25vw, 25px) + 2px);
		right: calc(min(5vw, 20px) + 60px);
	}
	.header_fixed .header_btn_item._out a {
		font-size: clamp(10.5px, 3.25vw, 13px);
		padding: 0;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
	.header_fixed .header_btn_item._out a::before {
		width: min(5vw, 20px);
		margin-bottom: 0;
		margin-right: min(2.5vw, 10px);
	}
	.header_fixed .header_btn_item._out a .jp {
		padding-bottom: 0;
	}
	.header .btn_nav {
		cursor: pointer;
		width: 50px;
		height: 50px;
		display: block;
		position: fixed;
		top: min(6.25vw, 25px);
		right: min(5vw, 20px);
		background-color: var(--c_key1);
		border-radius: 20px;
		z-index: 999;
		-webkit-transition: all 0.3s cubic-bezier(0.33, 1, 0.68, 1);
		transition: all 0.3s cubic-bezier(0.33, 1, 0.68, 1);
	}
	.header .btn_nav .menu {
		width: 100%;
		height: calc(100% - 6px);
		margin-top: 3px;
		background-color: #fbfaf9;
		border-radius: 22.5px;
	}
	.header .btn_nav span, .header .btn_nav::before, .header .btn_nav::after {
		width: 20px;
		height: 2.5px;
		display: block;
		position: absolute;
		left: calc(50% - 10px);
		background: var(--c_key2);
		-webkit-transition: all 0.3s cubic-bezier(0.33, 1, 0.68, 1);
		transition: all 0.3s cubic-bezier(0.33, 1, 0.68, 1);
	}
	.header .btn_nav span {
		top: 50%;
	}
	.header .btn_nav::before, .header .btn_nav::after {
		content: "";
		-webkit-transform-origin: 50% 50%;
		        transform-origin: 50% 50%;
	}
	.header .btn_nav::before {
		-webkit-animation: btn_nav_top_off cubic-bezier(0.33, 1, 0.68, 1) 0.4s forwards;
		        animation: btn_nav_top_off cubic-bezier(0.33, 1, 0.68, 1) 0.4s forwards;
	}
	.header .btn_nav::after {
		-webkit-animation: btn_nav_bottom_off cubic-bezier(0.33, 1, 0.68, 1) 0.4s forwards;
		        animation: btn_nav_bottom_off cubic-bezier(0.33, 1, 0.68, 1) 0.4s forwards;
	}
	body.nav_active .header::before {
		height: 100vh;
	}
	body.nav_active .header_inner {
		opacity: 1;
		visibility: visible;
		pointer-events: unset;
	}
	body.nav_active .header .btn_nav span {
		opacity: 0;
	}
	body.nav_active .header .btn_nav::before {
		-webkit-animation: btn_nav_top_on cubic-bezier(0.33, 1, 0.68, 1) 0.4s forwards;
		        animation: btn_nav_top_on cubic-bezier(0.33, 1, 0.68, 1) 0.4s forwards;
	}
	body.nav_active .header .btn_nav::after {
		-webkit-animation: btn_nav_bottom_on cubic-bezier(0.33, 1, 0.68, 1) 0.4s forwards;
		        animation: btn_nav_bottom_on cubic-bezier(0.33, 1, 0.68, 1) 0.4s forwards;
	}
}
@-webkit-keyframes btn_nav_top_off {
	0% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(30deg);
		        transform: rotate(30deg);
	}
	50% {
		top: 50%;
		scale: 1 1;
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	100% {
		top: calc(50% - 5px);
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
}
@keyframes btn_nav_top_off {
	0% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(30deg);
		        transform: rotate(30deg);
	}
	50% {
		top: 50%;
		scale: 1 1;
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	100% {
		top: calc(50% - 5px);
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
}
@-webkit-keyframes btn_nav_top_on {
	0% {
		top: calc(50% - 5px);
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	50% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	100% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(30deg);
		        transform: rotate(30deg);
	}
}
@keyframes btn_nav_top_on {
	0% {
		top: calc(50% - 5px);
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	50% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	100% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(30deg);
		        transform: rotate(30deg);
	}
}
@-webkit-keyframes btn_nav_bottom_off {
	0% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(-30deg);
		        transform: rotate(-30deg);
	}
	50% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	100% {
		top: calc(50% + 5px);
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
}
@keyframes btn_nav_bottom_off {
	0% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(-30deg);
		        transform: rotate(-30deg);
	}
	50% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	100% {
		top: calc(50% + 5px);
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
}
@-webkit-keyframes btn_nav_bottom_on {
	0% {
		top: calc(50% + 5px);
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	50% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	100% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(-30deg);
		        transform: rotate(-30deg);
	}
}
@keyframes btn_nav_bottom_on {
	0% {
		top: calc(50% + 5px);
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	50% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
	}
	100% {
		top: 50%;
		scale: 1.2 1;
		-webkit-transform: rotate(-30deg);
		        transform: rotate(-30deg);
	}
}
/* ========================================

footer

======================================== */
.footer {
	background-color: #fff;
}
.footer::after {
	width: 100%;
	height: 558px;
	content: "";
	display: block;
	pointer-events: none;
	background-image: url(../img/common/foot_bg_map.png);
	background-repeat: no-repeat;
	background-position: 50% 0%;
	background-size: auto 100%;
	z-index: 10;
}
.footer_inner {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.footer_info {
	margin-right: 5%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
.footer_info .logo {
	width: 118px;
	width: clamp(90px, 9.077vw, 118px);
	margin-right: clamp(30px, 3.8462vw, 50px);
}
.footer_info_text {
	padding-bottom: 7px;
}
.footer_info_text_address {
	font-family: "Lexend Giga", "Zen Kaku Gothic New", "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
	font-weight: 400;
	font-size: clamp(12.5px, 1.077vw, 14px);
	font-size: 14px;
	line-height: 1.5715;
	margin-bottom: 0.7143em;
}
.footer_info_text_tel {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-size: clamp(13px, 1.154vw, 15px);
	margin-bottom: 1.9334em;
}
.footer_info_text_tel em {
	font-size: clamp(19px, 1.692vw, 22px);
	font-weight: 300;
	letter-spacing: -0.03em;
	margin-left: 0.3em;
}
.footer_info_text_instagram {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-size: 15px;
}
.footer_info_text_instagram a {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.footer_info_text_instagram a::before {
	width: 20px;
	height: 20px;
	content: "";
	display: block;
	margin-right: 15px;
	background-color: var(--c_text);
	-webkit-mask-image: url(../img/common/footer_info_insta_icon.png);
	        mask-image: url(../img/common/footer_info_insta_icon.png);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: 0 0;
	        mask-position: 0 0;
	-webkit-mask-size: auto 100%;
	        mask-size: auto 100%;
	-webkit-transition: inherit;
	transition: inherit;
}
.footer_info_text_instagram a span {
	border-bottom: 1px solid var(--c_text);
	-webkit-transition: inherit;
	transition: inherit;
}
@media screen and (min-width: 801px) {
	.footer_info_text_instagram a:hover:before {
		background-color: #d95a2e;
	}
	.footer_info_text_instagram a:hover span {
		color: #d95a2e;
		border-color: #d95a2e;
	}
}
.footer_nav {
	margin-bottom: 30px;
	padding-top: 18px;
}
.footer_nav_main {
	font-size: clamp(15px, 1.231vw, 16px);
	margin-bottom: 0.75em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}
.footer_nav_main li {
	margin-bottom: 0.75em;
}
@media screen and (min-width: 1201px) {
	.footer_nav_main li:not(:first-of-type) {
		margin-left: 1.85em;
	}
	.footer_nav_main li a:hover {
		color: var(--c_key1);
		text-shadow: 0.2px 0.2px 0 var(--c_key1), -0.2px -0.2px 0 var(--c_key1), -0.2px -0.2px 0 var(--c_key1), 0.2px 0.2px 0 var(--c_key1);
	}
}
.footer_nav_sub {
	font-size: 13px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}
.footer_nav_sub li {
	margin-bottom: 1em;
}
@media screen and (min-width: 1201px) {
	.footer_nav_sub li:not(:last-of-type)::after {
		content: "/";
		margin: 0 1em;
	}
}
@media screen and (min-width: 801px) {
	.footer_nav_sub li a:hover {
		opacity: 0.6;
	}
}
.footer_sub {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
	margin-top: -10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}
.footer_sub .copyright {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-size: 13px;
	text-transform: uppercase;
	margin-bottom: 32px;
	padding-left: 12px;
}
.footer_sub .pagetop {
	width: 174px;
	margin-right: -20px;
	-webkit-user-select: none;
	   -moz-user-select: none;
	    -ms-user-select: none;
	        user-select: none;
}
.footer_sub .pagetop a {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.footer_sub .pagetop a::after {
	width: 100%;
	aspect-ratio: 174/100;
	content: "";
	display: block;
	position: relative;
	background-image: url(../img/common/foot_pagetop_illust_human.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	-webkit-animation: floatUp_7 0.8s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	        animation: floatUp_7 0.8s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	z-index: 2;
}
.footer_sub .pagetop a::before {
	width: 67px;
	height: 59px;
	content: "";
	display: block;
	position: absolute;
	right: 36px;
	top: 6px;
	background-image: url(../img/common/foot_pagetop_illust_star.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	-webkit-animation: floatUp_7 0.8s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	        animation: floatUp_7 0.8s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	z-index: 1;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	opacity: 0;
}
.footer_sub .pagetop a span {
	width: 110px;
	position: relative;
	display: block;
	margin-bottom: 9px;
	z-index: 3;
}
@media screen and (min-width: 801px) {
	.footer_sub .pagetop a:hover:before {
		opacity: 1;
	}
}

@media screen and (min-width: 801px) and (max-width: 1200px) {
	.footer_nav {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-flex: 1;
		    -ms-flex-positive: 1;
		        flex-grow: 1;
	}
	.footer_nav_main {
		font-size: clamp(13.5px, 1.25vw, 15px);
		margin-right: 8.6419%;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.footer_nav_sub {
		font-size: clamp(11.5px, 1.0834vw, 13px);
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
	}
}
@media screen and (max-width: 800px) {
	.footer {
		position: relative;
		padding-top: 50px;
		background-color: #fcf9ef;
	}
	.footer::after {
		height: 382px;
		background-image: url(../img/common/foot_bg_map_sp.png);
		background-size: auto 100%;
	}
	.footer::before {
		width: 100%;
		height: 80px;
		content: "";
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		background-color: #fcf9ef;
		clip-path: ellipse(130% 511px at 50% 511px);
		translate: 0 -40px;
		z-index: 2;
	}
	.footer_inner {
		width: 100%;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.footer_info {
		width: 90%;
		margin: 0 auto 40px;
		padding: 0;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}
	.footer_info .logo {
		width: clamp(60px, 18.5vw, 74px);
		margin-right: clamp(16px, 5vw, 20px);
	}
	.footer_info_text {
		margin-top: -6px;
	}
	.footer_info_text_address {
		font-size: clamp(11.2px, 3.5vw, 14px);
		margin-bottom: 0.5715em;
	}
	.footer_info_text_tel {
		font-size: clamp(10.5px, 3.25vw, 13px);
		margin-bottom: 0.7693em;
	}
	.footer_info_text_tel em {
		font-size: clamp(16px, 5vw, 20px);
	}
	.footer_info_text_instagram {
		font-size: clamp(11.2px, 3.5vw, 14px);
	}
	.footer_info_text_instagram a::before {
		width: 24px;
		height: 24px;
		margin-right: 12px;
	}
	.footer_nav {
		width: 80%;
		margin: 0 auto 4px;
		padding: 0;
	}
	.footer_nav_main {
		font-size: clamp(12px, 3.75vw, 15px);
		margin-bottom: 38px;
		padding-bottom: 25px;
		border-bottom: 1px solid rgba(48, 48, 48, 0.3);
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
	.footer_nav_main li {
		margin: 0 13px 15px;
	}
	.footer_nav_sub {
		font-size: clamp(10.5px, 3.25vw, 13px);
		max-width: 360px;
		margin: 0 auto;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
	.footer_nav_sub li:nth-child(odd)::after {
		content: "/";
		margin: 0 1em;
	}
	.footer_sub {
		display: block;
		margin-top: 0;
		margin-bottom: 58px;
	}
	.footer_sub .copyright {
		font-size: 11px;
		text-align: center;
	}
	.footer_sub .pagetop {
		width: 150px;
		margin-right: 0;
		position: absolute;
		top: -135px;
		right: 50%;
		translate: 50% 0%;
		z-index: 200;
	}
}
/* ========================================

cmn_attention

======================================== */
.cmn_attention {
	position: relative;
	padding: 100px 0 80px;
	background-color: var(--c_base);
	z-index: 2;
}
.cmn_attention::before {
	width: 100%;
	height: 100%;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #fff;
	border-radius: 50px 50px 0 0;
}
.cmn_attention_inner {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	padding: 59px 0 65px;
	background-color: var(--c_base);
	border-radius: 25px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.cmn_attention_inner::after {
	width: 118px;
	aspect-ratio: 118/120;
	content: "";
	display: block;
	position: absolute;
	bottom: -29px;
	left: -20px;
	background-image: url(../img/common/cmn_attention_illust02.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.cmn_attention_hl {
	width: clamp(100px, 12.5%, 150px);
	margin-left: 5%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: column-reverse;
	        flex-direction: column-reverse;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
@media screen and (min-width: 801px) {
	.cmn_attention_hl {
		-webkit-writing-mode: vertical-rl;
		    -ms-writing-mode: tb-rl;
		        writing-mode: vertical-rl;
	}
}
.cmn_attention_hl .jp {
	font-size: 30px;
	font-weight: 500;
	margin-right: 18px;
}
.cmn_attention_hl .en {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	color: var(--c_key1);
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: -0.05em;
	margin-top: 4px;
}
.cmn_attention_cont {
	width: calc(90% - clamp(100px, 12.5%, 150px));
	max-width: 920px;
	margin-right: 5%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
}
.cmn_attention_cont > div {
	margin-bottom: 23px;
}
.cmn_attention_cont > div._facilities {
	width: min(40.5%, 370px);
	margin-right: 30px;
}
.cmn_attention_cont > div._note {
	width: calc(100% - min(40.5%, 370px) - 30px);
}
.cmn_attention_cont > div._cancel {
	width: 100%;
	margin-bottom: 0;
}
.cmn_attention_cont dt {
	margin-bottom: 14px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.cmn_attention_cont dt::before {
	font-size: min(1.8vw, 18px);
	content: "/";
	margin: 0 0.8em;
}
.cmn_attention_cont dt em {
	font-size: 18px;
	font-weight: 500;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	-webkit-box-ordinal-group: 0;
	    -ms-flex-order: -1;
	        order: -1;
}
.cmn_attention_cont dt .en {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-size: 12px;
	font-size: min(1.3334vw, 12px);
	margin-top: 2px;
}
.cmn_attention_cont dd {
	font-size: 14px;
	line-height: 1.7143;
}

@media screen and (max-width: 800px) {
	.cmn_attention {
		padding: min(12.5vw, 50px) 0 200px;
		background-color: #fff;
	}
	.cmn_attention::before {
		display: none;
	}
	.cmn_attention_inner {
		width: 92.5%;
		display: block;
		padding: 49px 0 20px;
		border-radius: 15px;
	}
	.cmn_attention_inner::after {
		width: clamp(75px, 23.5vw, 94px);
		scale: -1 1;
		top: 21px;
		right: 20px;
		bottom: auto;
		left: auto;
	}
	.cmn_attention_hl {
		width: 86.4865%;
		margin: 0 auto;
		margin-bottom: min(12.5vw, 50px);
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.cmn_attention_hl .jp {
		font-size: clamp(17px, 5.5vw, 22px);
		margin: 0 0 9px;
	}
	.cmn_attention_hl .en {
		font-size: clamp(10px, 3vw, 12px);
	}
	.cmn_attention_cont {
		width: 86.4865%;
		margin: 0 auto;
	}
	.cmn_attention_cont > div {
		width: 100%;
		padding-bottom: 20px;
	}
	.cmn_attention_cont > div:not(:last-of-type) {
		border-bottom: 1px solid rgba(48, 48, 48, 0.3);
	}
	.cmn_attention_cont > div._facilities {
		width: 100%;
		margin-right: 0;
	}
	.cmn_attention_cont > div._note {
		width: 100%;
	}
	.cmn_attention_cont dt {
		margin-bottom: 10px;
	}
	.cmn_attention_cont dt::before {
		font-size: clamp(10px, 3vw, 12px);
		margin: 0 0.7em;
	}
	.cmn_attention_cont dt em {
		font-size: clamp(12px, 3.75vw, 15px);
	}
	.cmn_attention_cont dt .en {
		font-size: clamp(10px, 3vw, 12px);
	}
	.cmn_attention_cont dd {
		font-size: 13px;
		line-height: 1.5385;
	}
}
.cmn_attention {
	display: none;
}

.footer {
	margin-top: 150px;
}

@media screen and (min-width: 801px) {
	.footer {
		background-color: var(--c_base2);
	}
}
@media screen and (max-width: 800px) {
	.page_title._noimg {
		padding-top: 46px;
	}
	.page_title._noimg .hl_en {
		margin-bottom: 15px;
	}
}
/* ========================================

news

======================================== */
.news {
	overflow: hidden;
	padding-top: 154px;
}
.news_inner {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.news_aside {
	width: max(26.6667%, 200px);
	position: relative;
	padding-top: 100px;
}
.news_aside::before {
	width: 50vw;
	aspect-ratio: 1070/510;
	content: "";
	display: block;
	position: absolute;
	top: -91px;
	left: -46px;
	background-image: url(../img/news/aside_cat_illust.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: min(110%, 535px) auto;
	z-index: 1;
}
.news_aside_hl {
	margin-bottom: 48px;
	position: relative;
	z-index: 2;
}
.news_aside_hl h3 {
	margin-bottom: 22px;
}
.news_aside_hl .hl_en {
	font-size: 18px;
	letter-spacing: 0.05em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.news_aside_hl .hl_en::before {
	width: 10px;
	aspect-ratio: 1/1;
	content: "";
	display: inline-block;
	margin-right: 16px;
	background-color: #9ab1d6;
	border-radius: 50%;
}
.news_aside ul {
	font-size: 18px;
	font-weight: 500;
	border-top: 1px solid #9ab1d6;
	position: relative;
	z-index: 2;
}
.news_aside ul li {
	border-bottom: 1px solid #9ab1d6;
}
.news_aside ul li small {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-size: 0.7223em;
	margin-left: 1em;
}
.news_aside ul li a {
	padding: 30px 0 30px 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
@media screen and (min-width: 801px) {
	.news_aside ul li a:hover {
		color: var(--c_key1);
	}
}
.news_aside_select {
	display: none;
}
.news_main {
	width: min(65.8334%, 790px);
}
.news_main .cs {
	font-size: 15px;
	font-weight: 500;
	text-align: center;
	margin-bottom: 80px;
}
.news_list {
	margin-bottom: 100px;
}
.news_list_item:not(:last-child) {
	margin-bottom: min(4.1667vw, 50px);
}
.news_list_item a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
@media screen and (min-width: 801px) {
	.news_list_item a:hover .img img {
		scale: 1.1;
	}
	.news_list_item a:hover .cat {
		color: #fff;
		background-color: var(--c_key1);
		border-color: var(--c_key1);
	}
	.news_list_item a:hover h2 {
		color: var(--c_key1);
	}
	.news_list_item a:hover .date {
		color: var(--c_key1);
	}
}
.news_list_item .img {
	width: 40.5064%;
	min-height: 180px;
	aspect-ratio: 320/212;
	overflow: hidden;
	border-radius: 50px;
}
.news_list_item .img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.news_list_item .box_text {
	width: min(100%, 420px);
	margin-left: min(6%, 40px);
	margin-bottom: min(6%, 40px);
}
.news_list_item .box_text .cat {
	font-size: clamp(12px, 1.4vw, 14px);
	font-weight: 500;
	min-width: 100px;
	margin-bottom: 1.5em;
	padding: 0.7143em 22px;
	background-color: #fff;
	border-radius: 18px;
	border: 1px solid #000;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-transition-duration: 0.6s;
	        transition-duration: 0.6s;
	-webkit-transition-property: color, background-color, border-color;
	transition-property: color, background-color, border-color;
}
.news_list_item .box_text h2 {
	font-size: clamp(18px, 2.2vw, 22px);
	line-height: 1.4546;
	margin-bottom: 0.5455em;
	padding-left: 10px;
	-webkit-transition-duration: 0.6s;
	        transition-duration: 0.6s;
	-webkit-transition-property: color;
	transition-property: color;
}
.news_list_item .box_text .date {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-size: 15px;
	padding-left: 10px;
	-webkit-transition-duration: 0.6s;
	        transition-duration: 0.6s;
	-webkit-transition-property: color;
	transition-property: color;
}
.news_pagination {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-size: 18px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.news_pagination_select {
	display: none;
}
.news_pagination_link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
}
.news_pagination .page-numbers {
	width: min(5vw, 50px);
	height: min(5vw, 50px);
	margin: 0 min(1.5%, 10px);
	border-radius: 50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
.news_pagination .page-numbers.current {
	color: #fff;
	background-color: var(--c_key1);
}
.news_pagination .page-numbers.prev, .news_pagination .page-numbers.next {
	margin: 0;
	background-color: #fff;
	border: 1px solid #2e2717;
}
.news_pagination .page-numbers.prev.disabled, .news_pagination .page-numbers.next.disabled {
	opacity: 0.3;
	pointer-events: none;
}
.news_pagination .page-numbers.prev::before, .news_pagination .page-numbers.next::before {
	width: 100%;
	height: 100%;
	content: "";
	display: block;
	background-color: var(--c_key1);
	-webkit-mask-image: url(../img/common/ico_arrow.svg);
	        mask-image: url(../img/common/ico_arrow.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-size: 26%;
	        mask-size: 26%;
	-webkit-mask-position: 50% 50%;
	        mask-position: 50% 50%;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.news_pagination .page-numbers.prev::before {
	rotate: -135deg;
}
.news_pagination .page-numbers.next::before {
	rotate: 45deg;
}
.news_pagination .page-numbers.dots {
	padding-bottom: 0.5em;
}
@media screen and (min-width: 801px) {
	.news_pagination .page-numbers:hover:not(.current, .dots, .prev, .next) {
		background-color: #fff;
		background-color: rgba(24, 74, 154, 0.1);
	}
	.news_pagination .page-numbers.prev:hover, .news_pagination .page-numbers.next:hover {
		background-color: var(--c_key1);
	}
	.news_pagination .page-numbers.prev:hover::before, .news_pagination .page-numbers.next:hover::before {
		background-color: #fff;
	}
}

@media screen and (max-width: 800px) {
	.news {
		margin-bottom: 250px;
		padding-top: 38px;
	}
	.news_inner {
		width: 100%;
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
	}
	.news_aside {
		width: 90%;
		margin: 0 auto 50px;
		padding-top: 0;
	}
	.news_aside::before {
		width: 299px;
		top: -2px;
		right: 0;
		left: auto;
		margin-right: -125px;
		background-size: 100% auto;
	}
	.news_aside_hl {
		width: 88.8889%;
		margin: 0 auto 37px;
	}
	.news_aside_hl h3 {
		width: 61.25%;
		margin-bottom: 13px;
	}
	.news_aside_hl .hl_en {
		font-size: 12px;
	}
	.news_aside_hl .hl_en::before {
		width: 8px;
		margin-right: 6px;
	}
	.news_aside_select {
		display: block;
		position: relative;
	}
	.news_aside_select::before {
		width: 15px;
		height: 10px;
		content: "";
		display: block;
		position: absolute;
		top: calc(50% - 4px);
		right: 25px;
		background-color: var(--c_key1);
		z-index: 3;
		clip-path: polygon(0 0, 100% 0, 50% 100%);
	}
	.news_aside_select select {
		font-size: 16px;
		width: 100%;
		height: 50px;
		position: relative;
		padding: 0 34px;
		background-color: #fff;
		border: 1px solid var(--c_key1);
		border-radius: 50px;
		z-index: 2;
	}
	.news_aside ul {
		display: none;
	}
	.news_main {
		width: 80%;
		margin: 0 auto;
	}
	.news_list {
		margin-bottom: 50px;
	}
	.news_list_item:not(:last-child) {
		margin-bottom: 38px;
	}
	.news_list_item a {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.news_list_item .img {
		width: 100%;
		aspect-ratio: 640/426;
		position: relative;
		border-radius: min(10.5vw, 42px);
		z-index: 1;
	}
	.news_list_item .box_text {
		text-align: center;
		width: 100%;
		position: relative;
		margin: -15px 0 0 0;
		z-index: 2;
	}
	.news_list_item .box_text .cat {
		font-size: 13px;
		height: 30px;
		padding: 0 20px;
	}
	.news_list_item .box_text h2 {
		font-size: clamp(15.2px, 4.75vw, 19px);
		margin-bottom: 6px;
	}
	.news_pagination_select {
		position: relative;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	.news_pagination_select::before {
		width: 15px;
		height: 10px;
		content: "";
		display: block;
		position: absolute;
		top: calc(50% - 4px);
		right: 25px;
		background-color: var(--c_key1);
		z-index: 3;
		clip-path: polygon(0 0, 100% 0, 50% 100%);
	}
	.news_pagination_select select {
		font-size: 15px;
		width: 100%;
		height: 100%;
		padding: 0 50px;
	}
	.news_pagination_link {
		display: none;
	}
	.news_pagination .page-numbers.prev, .news_pagination .page-numbers.next {
		width: 50px;
		height: 50px;
	}
}
/* ========================================

news_entry

======================================== */
.news_entry {
	overflow: hidden;
	padding-top: 60px;
}
.news_entry_head {
	margin-bottom: 220px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.news_entry_head .cat {
	font-size: 17px;
	font-weight: 500;
	min-width: 120px;
	height: 40px;
	margin-bottom: 1.5em;
	padding: 0 26px;
	background-color: #fff;
	border-radius: 20px;
	border: 1px solid #000;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.news_entry_head h1 {
	font-size: 34px;
	font-weight: 500;
	text-align: center;
	line-height: 1.2942;
	width: 90%;
	margin: 0 auto 0.5455em;
}
.news_entry_head .date {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-size: 18px;
	font-weight: 300;
	padding-left: 10px;
}
.news_entry_main {
	width: min(90%, 1300px);
	position: relative;
	margin: 0 auto;
	padding-top: calc(min(52.1458vw, 644px) + min(9.7166vw, 120px) - 120px);
	background-color: #fff;
	border-radius: 25px;
}
.news_entry_main .thumbnail {
	width: min(90%, 1000px);
	aspect-ratio: 1000/644;
	position: absolute;
	top: -120px;
	right: 50%;
	translate: 50% 0%;
	z-index: 1;
}
.news_entry_main .thumbnail img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	border-radius: 50px;
}
.news_entry_main .thumbnail::before, .news_entry_main .thumbnail::after {
	width: min(68.8%, 688px);
	content: "";
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 100%;
	z-index: 2;
}
.news_entry_main .thumbnail::before {
	aspect-ratio: 1376/632;
	bottom: 0;
	right: 100%;
	margin-right: -13%;
	background-image: url(../img/news/entry_head_illust01.png);
}
.news_entry_main .thumbnail::after {
	aspect-ratio: 1376/578;
	top: -111px;
	left: 100%;
	margin-left: -13%;
	background-image: url(../img/news/entry_head_illust02.png);
}
.news_entry_main_cont {
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0.03em;
	width: min(90%, 860px);
	position: relative;
	margin: 0 auto;
	padding-bottom: 80px;
	z-index: 2;
}
.news_entry_main_cont h2 {
	color: #fff;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.2728;
	letter-spacing: 0.03em;
	margin: 0 5px 2em;
	padding: 19px 40px 23px;
	position: relative;
	background-color: var(--c_key1);
	border-radius: 20px;
}
.news_entry_main_cont h2::before {
	width: 20px;
	height: 20px;
	content: "";
	display: block;
	position: absolute;
	left: -10px;
	top: calc(50% - 10px);
	background-color: var(--c_key2);
	border: 1px solid #fff;
	border-radius: 10px;
}
.news_entry_main_cont h3 {
	color: var(--c_key1);
	font-size: 22px;
	font-weight: 500;
	line-height: 1.2728;
	letter-spacing: 0.05em;
	margin-bottom: 1em;
}
.news_entry_main_cont h4 {
	color: var(--c_key1);
	font-size: 18px;
	font-weight: 600;
	line-height: 1.2728;
	letter-spacing: 0.05em;
	margin-bottom: 1em;
}
.news_entry_main_cont p {
	margin-bottom: 2em;
}
.news_entry_main_cont p a {
	color: var(--c_key1);
	-webkit-text-decoration: underline 0.5px;
	        text-decoration: underline 0.5px;
	text-underline-offset: 2px;
}
@media screen and (min-width: 801px) {
	.news_entry_main_cont p a:hover {
		opacity: 0.7;
	}
}
.news_entry_main_cont img {
	width: unset;
	height: unset;
	border-radius: 50px;
}
.news_entry_main_cont .box {
	font-size: clamp(13px, 1.0667vw, 16px);
	line-height: 1.8667;
	margin-bottom: 2em;
	padding: 32px 40px;
	border: 1px solid var(--c_key1);
	border-radius: 15px;
}
.news_entry_main_cont .box p:last-child {
	margin-bottom: 0;
}
.news_entry_main_cont ol {
	counter-reset: ol_li;
	margin-bottom: 2em;
}
.news_entry_main_cont ol li {
	line-height: 1.6;
	letter-spacing: 0.03em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.news_entry_main_cont ol li:not(:last-of-type) {
	margin-bottom: 0.5em;
}
.news_entry_main_cont ol li::before {
	color: var(--c_key1);
	counter-increment: ol_li;
	content: counter(ol_li) ".";
	margin-right: 0.7em;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
.news_entry_main_cont ul {
	margin-bottom: 2em;
}
.news_entry_main_cont ul li {
	line-height: 1.6;
	letter-spacing: 0.03em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.news_entry_main_cont ul li:not(:last-of-type) {
	margin-bottom: 0.5em;
}
.news_entry_main_cont ul li::before {
	color: var(--c_key1);
	content: "・";
	margin-right: 0.3em;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	margin-left: -0.3em;
}
.news_entry_main_cont hr {
	border-color: #aaa;
	border-style: dotted;
	border-width: 2px;
	margin: 1em 0;
	height: 0px;
	border-top: none;
	border-radius: 0;
}
.news_entry_main_pagination {
	height: 210px;
	border-top: 1px solid #f3eee9;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.news_entry_main_pagination .top {
	width: 120px;
	height: 50px;
}
.news_entry_main_pagination .top a {
	color: #fff;
	font-size: 18px;
	letter-spacing: 0.05em;
	width: 100%;
	height: 100%;
	background-color: var(--c_key1);
	border: 1px solid var(--c_key1);
	border-radius: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
@media screen and (min-width: 801px) {
	.news_entry_main_pagination .top a:hover {
		color: var(--c_key1);
		background-color: #fff;
	}
}
.news_entry_main_pagination .post {
	width: calc(50% - 100px - min(4vw, 50px));
}
.news_entry_main_pagination .post a {
	width: 100%;
	height: 100%;
	position: relative;
	padding: 20px 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
@media screen and (min-width: 801px) {
	.news_entry_main_pagination .post a:hover {
		color: var(--c_key1);
	}
	.news_entry_main_pagination .post a:hover ._arrow {
		background-color: var(--c_key1);
		border-color: var(--c_key1);
	}
	.news_entry_main_pagination .post a:hover ._arrow::before {
		background-color: #fff;
	}
}
.news_entry_main_pagination .post .txt {
	font-size: 19px;
	line-height: 1.3685;
	margin-bottom: 8px;
}
.news_entry_main_pagination .post .date {
	font-family: "Lexend Giga", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-size: 15px;
	letter-spacing: 0.05em;
}
.news_entry_main_pagination .post ._arrow {
	width: 50px;
	height: 50px;
	display: block;
	position: relative;
	border: 1px solid #2e2717;
	border-radius: 50%;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.news_entry_main_pagination .post ._arrow::before {
	width: 100%;
	height: 100%;
	aspect-ratio: 1/1;
	content: "";
	display: block;
	background-color: var(--c_key1);
	-webkit-mask-image: url(../img/common/ico_arrow.svg);
	        mask-image: url(../img/common/ico_arrow.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: 50% 50%;
	        mask-position: 50% 50%;
	-webkit-mask-size: 28%;
	        mask-size: 28%;
	rotate: 45deg;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.news_entry_main_pagination .post.post_prev {
	margin-left: min(4vw, 50px);
}
.news_entry_main_pagination .post.post_prev a {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
}
.news_entry_main_pagination .post.post_prev ._arrow {
	scale: -1 1;
	margin-right: 30px;
}
.news_entry_main_pagination .post.post_next {
	margin-right: min(4vw, 50px);
}
.news_entry_main_pagination .post.post_next ._arrow {
	margin-left: 30px;
}

@media screen and (max-width: 800px) {
	.news_entry {
		margin-bottom: 190px;
		padding-top: 20px;
	}
	.news_entry_head {
		margin-bottom: 180px;
	}
	.news_entry_head .cat {
		font-size: 13px;
		min-width: 95px;
		height: 30px;
		padding: 0 20px;
	}
	.news_entry_head h1 {
		font-size: clamp(17px, 5.5vw, 22px);
		font-weight: 400;
		width: 80%;
		margin-bottom: 14px;
	}
	.news_entry_head .date {
		font-size: 15px;
	}
	.news_entry_main {
		width: 100%;
		padding-top: calc(min(52.1458vw, 644px) + min(16.25vw, 65px) - 120px);
		padding-top: calc(min(58vw, 464px) + min(16.25vw, 65px) - 120px);
	}
	.news_entry_main .thumbnail::before, .news_entry_main .thumbnail::after {
		width: min(95.5556%, 688px);
	}
	.news_entry_main .thumbnail::before {
		bottom: -38px;
		margin-right: -27.7778%;
	}
	.news_entry_main .thumbnail::after {
		top: -94px;
		margin-left: -27.7778%;
	}
	.news_entry_main .thumbnail img {
		border-radius: min(10.5vw, 42px);
	}
	.news_entry_main_cont {
		font-size: 15px;
		line-height: 1.6667;
		width: 80%;
		padding-bottom: 40px;
	}
	.news_entry_main_cont h2 {
		font-size: 17px;
		margin: 0 0 2em;
		padding: 14px 25px 15px;
		border-radius: 15px;
	}
	.news_entry_main_cont h2::before {
		width: 15px;
		height: 15px;
		left: -7.5px;
		top: calc(50% - 7.5px);
	}
	.news_entry_main_cont h3 {
		font-size: 18px;
	}
	.news_entry_main_cont h4 {
		font-size: 16px;
	}
	.news_entry_main_cont img {
		width: unset;
		height: unset;
		border-radius: min(10.5vw, 42px);
	}
	.news_entry_main_cont .box {
		font-size: 14px;
		line-height: 1.7143;
		margin-bottom: 2em;
		padding: 18px 25px;
		border-radius: 7.5px;
	}
	.news_entry_main_pagination {
		min-height: 195px;
		padding: 40px 0;
	}
	.news_entry_main_pagination .top {
		width: min(22.5vw, 90px);
		height: 40px;
	}
	.news_entry_main_pagination .top a {
		font-size: clamp(12px, 3.75vw, 15px);
	}
	.news_entry_main_pagination .post {
		width: calc(50% - min(22.5vw, 90px) / 2 - min(10vw, 40px));
	}
	.news_entry_main_pagination .post a {
		padding: 7px 0;
	}
	.news_entry_main_pagination .post .box_text {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
	}
	.news_entry_main_pagination .post .txt {
		font-size: 15px;
		line-height: 1.4;
		margin-bottom: 0;
	}
	.news_entry_main_pagination .post .date {
		font-size: clamp(10.5px, 3.25vw, 13px);
		font-weight: 400;
		letter-spacing: -0.01em;
		margin-bottom: 15px;
	}
	.news_entry_main_pagination .post ._arrow {
		width: 25px;
		height: 25px;
		position: absolute;
		top: 0;
	}
	.news_entry_main_pagination .post.post_prev {
		margin-left: min(12.55vw, 20px);
	}
	.news_entry_main_pagination .post.post_prev .date {
		margin-left: 34px;
	}
	.news_entry_main_pagination .post.post_prev ._arrow {
		scale: -1 1;
		margin-right: 0;
		left: 0;
	}
	.news_entry_main_pagination .post.post_next {
		margin-right: min(12.55vw, 20px);
	}
	.news_entry_main_pagination .post.post_next .box_text {
		-webkit-box-align: end;
		    -ms-flex-align: end;
		        align-items: flex-end;
	}
	.news_entry_main_pagination .post.post_next .date {
		margin-right: 34px;
	}
	.news_entry_main_pagination .post.post_next ._arrow {
		margin-left: 0;
		right: 0;
	}
}