@charset "utf-8";
/*
Theme Name: sankakuya_skelton
Theme URL: https://sankakux4.org
Description: original theme
Author:yuya matsuo
Version: 1.0.0
*/

/* reset */

html{
	scroll-behavior:smooth;
}

body{
	margin:0;
	width:100%;
	overflow-x:hidden;
	overflow-y: scroll;
        scrollbar-width: none;
        text-rendering:optimizeSpeed;
        -webkit-text-size-adjust: 100%;
        overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict;
}

*{
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin-block-start:0;
	margin-block-end:0;
	margin-inline-start:0;
	margin-inline-end:0;
	overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict;
}

*::before,
*::after{
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

h1,h2,h3,h4,h5,h6{
	font-size:1rem;
	font-weight:400;
	margin:0;
	padding:0;
	line-height:1.8;
}

p{
	margin:0;
	padding:0;
}

ul,
ol{
	list-style:none;
	padding:0;
	margin:0;
}

li{
	list-style-position: inside;
}

figure,
blockquote,
dl,
dt,
dd{
	margin:0;
}

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

table th{
	font-weight:400;
	text-align:left;
}

a:not([class]){
	text-decoration-skip-ink:auto;
}

::-webkit-scrollbar {
	display: none;
	-webkit-appearance: none;
}

input,
button,
select,
textarea {
	background: transparent;
	border: none;
	border-radius: 0;
	font-family: inherit;
	outline: none;
	margin:0;
}

select,
select option{
	color:#21211F !important;
}

textarea {
	resize: vertical;
}

input[type='checkbox'],
input[type='radio'] {
	display: none;
}

input[type='submit'],
input[type='button'],
label,
button,
select {
	cursor: pointer;
}

select::-ms-expand {
	display: none;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button,
input[type="month"]::-webkit-outer-spin-button,
input[type="month"]::-webkit-inner-spin-button,
input[type="datetime-local"]::-webkit-outer-spin-button,
input[type="datetime-local"]::-webkit-inner-spin-button,
input[type="week"]::-webkit-outer-spin-button,
input[type="week"]::-webkit-inner-spin-button,
input[type="time"]::-webkit-outer-spin-button,
input[type="time"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-outer-spin-button,
input[type="date"]::-webkit-inner-spin-button {
	display: none;
}

input[type="number"],
input[type="month"],
input[type="datetime-local"],
input[type="week"],
input[type="time"],
input[type="date"] {
	-moz-appearance: textfield;
}

input[type="date"]::-webkit-clear-button,
input[type="month"]::-webkit-clear-button,
input[type="datetime-local"]::-webkit-clear-button,
input[type="time"]::-webkit-clear-button,
input[type="week"]::-webkit-clear-button {
	-webkit-appearance: none;
}

@media(prefers-reduced-motion:reduce){
	*{
		animation-duration:.01ms !important;
		animation-iteration-count:1 !important;
		transition-duration:.01ms !important;
		scroll-behavior:auto !important;
	}
}

img{
	display:block;
	vertical-align:bottom;
	max-width:100%;
}

.wpcf7-spinner{
	display:none !important;
}

/* common */

html{
	font-size:16px;
}

body{
	background:#fff;
	font-family: 'Noto Sans JP', sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	color:#21211F;
	font-weight:500;
	letter-spacing:0.025em;
	line-height:1.8;
	margin:0;
	overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict;
}

.pj{
	font-family: "Plus Jakarta Sans", sans-serif;
}

.inter{
	font-family: "Inter", sans-serif;
}

a{
	display:block;
	color:#21211F;
	transition: .5s;
	text-decoration:none;
	-webkit-tap-highlight-color: transparent;
}

a:hover{
	color:#21211F;
	text-decoration:none;
	opacity:0.8;
}

/* layout */

main{
	display:block;
	margin:70px auto 0;
}

.container{
	max-width:calc(100vw - 100px);
	width:1080px;
	margin:0 auto;
}

.flex-wrap{
	display: flex;
	flex-wrap: wrap;
}

/* parts */

.text-center{
	text-align:center;
}

.text-right{
	text-align:right;
}

.img-fluid{
	width:100%;
	height:auto;
}

.img-trim{
	position: relative;
	overflow: hidden;
	aspect-ratio:1 / 1;
}

.img-trim img{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.img-trim.img-trim16x9{
	aspect-ratio:16 / 9;
}

.img-trim.img-trim5x3{
	aspect-ratio:5 / 3;
}

.img-trim.img-trim3x2{
	aspect-ratio:3 / 2;
}

.img-trim.img-trim4x3{
	aspect-ratio:4 / 3;
}

.img-trim.img-trim4x5{
	aspect-ratio:4 / 5;
}

.heading01{
	font-weight:700;
	font-size:1.25rem;
	letter-spacing:0.04em;
	line-height:1;
	margin-bottom:26px;
}

.heading01 span{
	display:inline-block;
	margin-right:42px;
	position:relative;
}

.heading01 span::after{
	position:absolute;
	right:-31px;
	bottom:0;
	content:"";
	width:20px;
	height:1px;
	background:#21211F;
}

.heading02{
	font-weight:700;
	font-size:2.5rem;
	letter-spacing:0.02em;
	line-height:1;
	margin-bottom:36px;
}

.heading03{
	line-height:1;
	color:#000;
	margin-bottom:100px;
}

.heading03 .pj{
	display:block;
	font-weight:600;
	font-size:1.25rem;
	margin-bottom:1.25em;
}

.heading03 .jp{
	font-weight:700;
	font-size:3.25rem;
}

.bg_gray{
	background:#fafafa;
}

.btn{
	display:inline-block;
	background:#21211F;
	color:#fff;
	font-weight:700;
	letter-spacing:0.05em;
	line-height:1;
	padding:22px 80px;
	border:2px solid #21211F;
	position: relative;
	overflow: hidden;
}

.btn:hover{
	opacity:1;
}

.btn .circle{
	position: absolute;
	width: 20px;
	height: 20px;
	background: #fff;
	border-radius: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: transform .4s ease, opacity .3s ease;
	pointer-events: none;
	z-index: 1;
	opacity: 0;
}

.btn_txt {
	position: relative;
	z-index: 2;
	transition: color .3s ease;
	color:#fff;
}

/* animation */

@keyframes revealUp {
	0% {
		transform: translateY(100%);
		opacity: 0;
	}
	100% {
		transform: translateY(0);
		opacity: 1;
	}
}

.heading_animation .glyph,
.heading_animation_img .glyph {
	position: relative;
	display: inline-block;
	visibility: hidden;
	opacity: 0;
	transform-origin: top right;
	transform: translateX(1rem) scale(0.99);
	filter: blur(12px);
	will-change: filter, transform, opacity;
}

.heading_animation_img .glyph img {
	display: block;
}

.bg_metaball{
	position: relative;
	overflow: hidden;
	background:#ededed;
}

.bg_metaball #metaballs{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
	z-index: 1;
	filter: blur(35px);
}

.bg_metaball .container{
	position: relative;
	z-index: 2;
}

/* fix_cta */

.fix_cta{
	position: fixed;
	bottom: 40px;
	right: 40px;
	z-index: 999;
	opacity: 0;
	transition: opacity 0.5s ease;
	pointer-events:none;
}

.fix_cta.show{
	opacity: 1;
	pointer-events:auto;
}

@media (min-width: 1340px) {
	.fix_cta {
		right: max(40px, calc(50% - 670px));
	}
}

.fix_cta a{
	width:315px;
	transition:.2s;
}

.fix_cta a:hover{
	opacity:0.8;
}


/* modal */

.modal_wrap{
	position:fixed;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	z-index:2000;
	background: rgba(0,0,0,0.8);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 0;
	visibility: hidden;
	transition: opacity .5s ease, visibility .5s ease;
	pointer-events: none;
}

.modal_wrap.active{
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.modal_wrap .modal_inner .modal_contents{
	width:1200px;
	border-radius:20px;
	position:relative;
}

.modal_wrap .modal_inner .modal_contents .modal_close{
	position:absolute;
	top:20px;
	right:20px;
	width:40px;
	height:40px;
	border-radius:10px;
	background:#FFDEDE;
}

.modal_wrap .modal_inner .modal_contents .modal_close::before{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%) rotate(45deg);
	transform-origin:center;
	content:"";
	width:10px;
	height:1px;
	background:#21211F;
}

.modal_wrap .modal_inner .modal_contents .modal_close::after{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%) rotate(-45deg);
	transform-origin:center;
	content:"";
	width:10px;
	height:1px;
	background:#000;
}

.modal_wrap .modal_inner .modal_contents .modal_close:hover{
	background:#000;
}

.modal_wrap .modal_inner .modal_contents .modal_close:hover::before,
.modal_wrap .modal_inner .modal_contents .modal_close:hover::after{
	background:#fff;
}

.modal_wrap .modal_inner .modal_contents .content_wrap .img{
	width:56.666666%;
	border-radius:20px 0 0 20px;
	overflow: hidden;
}

.modal_wrap .modal_inner .modal_contents .content_wrap .txt{
	background:#fff;
	width:43.333334%;
	padding:90px 58px;
	height:680px;
	border-radius:0 20px 20px 0;
	overflow-y:scroll;
}

.modal_wrap .modal_inner .modal_contents .content_wrap .txt h2{
	font-weight:700;
	font-size:2.5rem;
	letter-spacing:0.02em;
	line-height:1.4;
	color:#000;
	margin-bottom:1em;
}

.modal_wrap .modal_inner .modal_contents .content_wrap .txt p{
	line-height:2;
	color:#000;
}

.modal_wrap .modal_inner .modal_contents .content_wrap .txt a{
	display:inline-block;
	text-decoration:underline;
}

/* header */

.header{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:1000;
	background:#fff;
}

.header_wrap{
	max-width:1440px;
	margin:0 auto;
	padding:25px 40px;
	justify-content: space-between;
	align-items: center;
}

.header .header_wrap .logo{
	width:126px;
}

.header .header_wrap .gnav{
	justify-content: flex-end;
	align-items: center;
}

.header .header_wrap .gnav .g_nav_content .main_menu ul{
	font-size:0.75rem;
	line-height:1;
	justify-content: flex-end;
}

.header .header_wrap .gnav .g_nav_content .main_menu ul li{
	margin-left:24px;
	
}

.header .header_wrap .gnav .g_nav_content .main_menu ul li:first-child{
	margin-left:0;
}

.header .header_wrap .gnav .g_nav_content .main_menu ul li a{
	position:relative;
}

.header .header_wrap .gnav .g_nav_content .main_menu ul li a::before{
	content: "";
	position: absolute;
	top: calc(100% + 0.4em);
	left: 0;
	width: 100%;
	height: 1px;
	background: #21211F;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .4s ease;
}

.header .header_wrap .gnav .g_nav_content .main_menu ul li a:hover{
	opacity:1;
}

.header .header_wrap .gnav .g_nav_content .main_menu ul li a:hover::before{
	transform: scaleX(1);
	transform-origin: left;
}

.header .header_wrap .gnav .g_nav_content .main_menu ul li a::before {
	transition: transform .4s ease, transform-origin 0s;
}

.header .header_wrap .gnav .g_nav_content .main_menu ul li a:not(:hover)::before {
	transform: scaleX(0);
	transform-origin: right;
}

.header .header_wrap .gnav .language{
	width:50px;
	font-weight:600;
	font-size:0.625rem;
	border:1px solid #21211F;
	border-radius: 100vmax;
	line-height:1;
	padding:4px 0;
	margin-left:32px;
}

/* footer */

.footer{
	padding:20px 0;
}

#ticket .footer{
	background:#fafafa;
}

.footer .footer_wrap{
	max-width:1400px;
	margin:0 auto;
	background:#000;
	color:#888;
	border-radius:10px;
	padding:33px 60px;
	justify-content: space-between;
	align-items: center;
}

.footer .footer_wrap a{
	color:#fff;
}

.footer .footer_wrap .sns ul{
	align-items: center;
}

.footer .footer_wrap .sns ul li{
	margin-right:20px;
}

.footer .footer_wrap .sns ul li:last-child{
	margin-right:0;
}

.footer .footer_wrap .sns ul li a .icon{
	height:26px;
	width: auto;
}

.footer .footer_wrap .sns ul li a .icon svg{
	height:100%;
	width:auto;
}

.footer .footer_wrap .sns ul li a .icon svg path{
	fill:#fff;
	transition:.5s;
}

.hc03 .sns ul li a:hover .icon svg path{
	fill:#ccc;
}

.footer .footer_wrap .sns ul li a:not(.line) img{
	filter:brightness(0) invert(1);
}

.footer .footer_wrap .about{
	justify-content: flex-end;
	align-items: center;
}

.footer .footer_wrap .about ul{
	justify-content: flex-end;
	font-size:0.875rem;
	line-height:1;
}

.footer .footer_wrap .about ul li{
	margin-left:30px;
}

.footer .footer_wrap .about ul li:first-child{
	margin-left:0;
}

.footer .footer_wrap .about ul li a{
	position:relative;
}

.footer .footer_wrap .about ul li a::before{
	content: "";
	position: absolute;
	top: calc(100% + 0.4em);
	left: 0;
	width: 100%;
	height: 1px;
	background: #fff;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .4s ease;
}

.footer .footer_wrap .about ul li a:hover{
	opacity:1;
}

.footer .footer_wrap .about ul li a:hover::before{
	transform: scaleX(1);
	transform-origin: left;
}

.footer .footer_wrap .about ul li a::before {
	transition: transform .4s ease, transform-origin 0s;
}

.footer .footer_wrap .about ul li a:not(:hover)::before {
	transform: scaleX(0);
	transform-origin: right;
}

.footer .footer_wrap .about h6{
	font-size:0.875rem;
	margin-left:30px;
}

/* home */

.fv .keyhole_slider{
	position: relative;
	width: 100%;
	overflow: hidden;
	margin-bottom:calc(100vw / 1440 * 24);
}

.fv .keyhole_slider .keyhole_track{
	display: flex;
	will-change: transform;
}

.fv .keyhole_slider .keyhole_track .keyhole_item{
	position: relative;
	flex: 0 0 auto;
	width: calc(100vw / 1440 * 233);
	height: calc(100vw / 1440 * 233 * (1200 / 700));
	overflow: hidden;
}

.fv .keyhole_slider .keyhole_track .keyhole_item .keyhole_mask{
	position: absolute;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.fv .keyhole_slider .keyhole_track .keyhole_item .keyhole_mask::after{
	content: '';
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url('./img/fv_keyhole.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	pointer-events: none;
	z-index: 10;
}

.fv .keyhole_slider .keyhole_track .keyhole_item .keyhole_mask .keyhole_bg{
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 98%;
	height: 100%;
	object-fit: cover;
	transform: translateX(-50%);
	will-change: transform;
}

.fv .txt .name{
	width:calc(100vw / 1440 * 1360);
	margin:0 auto calc(100vw / 1440 * 36);
}

.fv .txt .name .reveal{
	display:block;
	overflow: hidden;
}

.fv .txt .name .reveal-item{
	display:block;
	transform: translateY(100%);
	opacity: 0;
	animation: revealUp 0.8s cubic-bezier(.25, .8, .25, 1) forwards;
}

.fv .txt .date{
	background:#21211F;
	padding:calc(100vw / 1440 * 28) calc(100vw / 1440 * 40);
	justify-content: space-between;
	align-items: center;
	position:relative;
}

.fv .txt .date::after{
	position:absolute;
	top:0;
	left:0;
	content:"";
	width:100%;
	height:100%;
	background-image: url(./img/fv_dot_pattern.webp);
	background-repeat: repeat;
	background-size: auto;
	z-index:2;
}

.fv .txt .date .title{
	width:calc(100vw / 1440 * 335);
	position:relative;
	z-index:3;
}

.fv .txt .date .title::after{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	right:calc(100vw / 1440 * -4);
	content:"";
	width:calc(100vw / 1440 * 2);
	height:calc(100vw / 1440 * 90);
	background:#fff;
}

.fv .txt .date .title p{
	color:#fff;
	font-weight:700;
	font-size:calc(100vw / 1440 * 40);
	line-height:1.375;
}

.fv .txt .date .img{
	width:calc(100vw / 1440 * 986);
	position:relative;
	z-index:3;
}

.home_contents{
	padding:100px 0;
}

.home_contents .toggle_btn{
	font-weight:700;
	font-size:1.625rem;
	color:#000;
	letter-spacing:0.030769em;
	line-height:1;
	padding:18px 0;
	border-bottom:1px solid #888;
	position:relative;
	cursor:pointer;
	transition:.5s;
}

.home_contents .toggle_btn.active{
	margin-bottom:60px;
}

.home_contents .toggle_btn::before{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	right:20px;
	content:"";
	width:22px;
	height:2px;
	background:#21211F;
}

.home_contents .toggle_btn::after{
	position:absolute;
	top:50%;
	transform:translateY(-50%) rotate(90deg);
	transform-origin:center;
	right:20px;
	content:"";
	width:22px;
	height:2px;
	background:#21211F;
	transition:.5s;
}

.home_contents .toggle_btn.active::after{
	transform:translateY(-50%);
}

.home_contents .toggle_btn .comment{
	display:inline-block;
	font-size:0.875rem;
	color:#8e8e8e;
	letter-spacing:0.057142em;
	margin-left:0.5em;
}

.home_contents .toggle_btn.new{
	padding-left:94px;
}

.home_contents .toggle_btn.new .label{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	left:0;
	background:#000;
	font-size:0.875rem;
	color:#fff;
	letter-spacing:0.057142em;
	padding:0.57em 1.4em;
	border-radius:100vmax;
}

.home_contents .toggle_content{
	display:none;
}

.home_contents .toggle_content.active{
	display:block;
}


.home_contents .summary dl{
	position:relative;
}

.home_contents .summary dl::before{
	position:absolute;
	top:100%;
	left:0;
	content:"";
	width:0;
	height:1px;
	background:#888;
	transition:1s;
}

.home_contents .summary dl.active::before{
	width:100%;
}

.home_contents .summary dl dt,
.home_contents .summary dl dd{
	padding:40px 0;
	letter-spacing:0.05em;
	color:#000;
}

.home_contents .summary dl:nth-last-child(2) dt,
.home_contents .summary dl:nth-last-child(2) dd,
.home_contents .summary dl:last-child dt,
.home_contents .summary dl:last-child dd{
	border-bottom:0;
}

.home_contents .summary dl dt{
	width:29.62963%;
	font-weight:700;
}

.home_contents .summary dl dd{
	width:70.37037%;
}

.home_contents .summary dl dd .block{
	margin-bottom:36px;
}

.home_contents .summary dl dd .block:last-child{
	margin-bottom:0;
}

.home_contents .summary dl dd a{
	display:inline-block;
	text-decoration:underline;
}

.home_contents .summary dl dd .img{
	width:126px;
}

.home_contents .summary dl dd .google_map{
	width: 100%;
	aspect-ratio:760 / 370;
}

.home_contents .summary dl dd .google_map iframe{
	 width: 100%;
	height: 100%;
	filter: grayscale(1);
}

.hc01 .heading01{
	margin-bottom:56px;
}

.hc01 h3{
	margin-bottom:56px;
}

.hc01 h3 .glyph{
	height:60px;
	width:auto;
}

.hc01 h3 .glyph img{
	height:100%;
	width:auto;
}

.hc01 .txt .reveal{
	overflow: hidden;
}

.hc01 .txt .reveal .reveal-item{
	display: block;
	transform: translateY(100%);
	opacity: 0;
}

.hc01 .txt.active .reveal .reveal-item{
	animation: revealUp 0.8s cubic-bezier(.25, .8, .25, 1) forwards;
}

.hc01 .txt.active .reveal  .reveal-item:nth-child(1) { animation-delay: 0.0s; }
.hc01 .txt.active .reveal  .reveal-item:nth-child(2) { animation-delay: 0.1s; }
.hc01 .txt.active .reveal  .reveal-item:nth-child(3) { animation-delay: 0.2s; }
.hc01 .txt.active .reveal  .reveal-item:nth-child(4) { animation-delay: 0.3s; }
.hc01 .txt.active .reveal  .reveal-item:nth-child(5) { animation-delay: 0.4s; }

.hc01 p{
	font-size:1.125rem;
	letter-spacing:0.044444em;
	line-height:2.555555;
}

.hc02 .box{
	margin-bottom:62px;
}

.hc03 .summary{
	margin-bottom:100px;
}

.hc03 .summary dl dd{
	font-weight:700;
}

.hc03 .sns h5{
	justify-content: center;
	align-items: flex-end;
	margin-bottom:42px;
}

.hc03 .sns h5 span{
	display:inline-block;
	font-size:2.5rem;
	letter-spacing:0.02em;
	text-indent:0.02em;
	line-height:1;
	font-weight:500;
	margin:0 0.025em 0.15em;
}

.hc03 .sns h5 span.inter{
	font-size:2.8125rem;
	font-weight:400;
	margin:0 0.025em;
}

.hc03 .sns ul{
	justify-content: center;
	align-items: center;
	margin-bottom:52px;
}

.hc03 .sns ul li{
	width:16.666666%;
	position:relative;
}

.hc03 .sns ul li::after{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	right:0;
	content:"";
	width:1px;
	height:120px;
	background:#888;
}

.hc03 .sns ul li:last-child::after{
	content:none;
}

.hc03 .sns ul li a{
	justify-content: center;
	padding:30px 0;
}

.hc03 .sns ul li a .icon{
	height:60px;
	width:auto;
}

.hc03 .sns ul li a .icon svg{
	height:100%;
	width:auto;
}

.hc03 .sns ul li a .icon svg path{
	fill:#000;
	transition:.5s;
}

.hc03 .sns ul li a:hover .icon svg path{
	fill:#2C2C2C;
}

.hc03 .sns p{
	color:#000;
	letter-spacing:0.05em;
	text-indent:0.05em;
}

.hc04 .box{
	margin-bottom:80px;
}

.hc04 .box:last-child{
	margin-bottom:0;
}

.hc04 .box .faq_archive article{
	background:#fff;
	padding:20px 26px;
	margin-bottom:20px;
}

.hc04 .box .faq_archive article:last-child{
	margin-bottom:0;
}

.hc04 .box .faq_archive article .question{
	align-items: center;
	padding-bottom:14px;
	border-bottom:1px solid #ccc;
	margin-bottom:16px;
}

.hc04 .box .faq_archive article .question span{
	display:inline-block;
	font-weight:700;
	font-size:1.5rem;
	color:#818181;
	margin-right:0.3em;
}

.hc04 .box .faq_archive article .question h6{
	font-weight:700;
	letter-spacing:0.025em;
}

.hc04 .box .faq_archive article .answer p a{
	display:inline-block;
	text-decoration:underline;
}

.hc06{
	padding:0 0 100px;
}

.hc06 .sponsor_archive{
	justify-content:flex-start;
	gap: 20px;
}

.hc06 .sponsor_archive article{
	width:18.518518%;
	transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1);
	transform: translateY(2rem);
	opacity: 0;
}

.hc06 .sponsor_archive article.active{
	transform: translateY(0);
	opacity: 1;
}

/* page */

.page_content{
	padding:100px 0;
}

/* rooms */

.rooms_archive{
	justify-content:flex-start;
	gap: 20px;
}

.rooms_archive .card{
	width:23.611111%;
	margin-bottom:8px;
}

.rooms_archive .card.modal_open{
	cursor:pointer;
}

.rooms_archive .card:last-child{
	margin-right:auto;
}

.rooms_archive .card .img{
	margin-bottom:8px;
	position:relative;
}

.rooms_archive .card .img .mask{
	position: absolute;
	inset: 0;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	mask-image: url('./img/rooms_keyhole.svg');
	-webkit-mask-image: url('./img/rooms_keyhole.svg');
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-position: center;
	-webkit-mask-position: center;
	transition:.5s;
}

.rooms_archive .card.modal_open .img,
.rooms_archive .card.modal_open .img img{
	transition:.5s;
}

.rooms_archive .card.modal_open:hover .img{
	border-radius:5px;
	overflow:hidden;
}

.rooms_archive .card.modal_open:hover .img img{
	transform:scale(1.1);
}

.rooms_archive .card p{
	font-size:0.875rem;
}

.rooms_archive .card p br{
	display:none;
}

.pickup_content{
	padding:0 0 100px;
}

.pickup_content h3{
	width:100vw;
	overflow: hidden;
	margin-bottom:100px;
	position:relative;
}

.pickup_content h3::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width:calc(100vw / 1440 * 100);
	height: 100%;
	pointer-events: none;
	background: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,0));
	z-index: 10;
}

.pickup_content h3::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width:calc(100vw / 1440 * 100);
	height: 100%;
	pointer-events: none;
	background: linear-gradient(to left, rgba(255,255,255,1), rgba(255,255,255,0));
	z-index: 10;
}

.pickup_content h3 .loop{
	width:200%;
	display: flex;
	animation: loop 20s linear infinite;
}

@keyframes loop {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-100vw);
	}
}

.pickup_content h3 .loop .img{
	width:calc(100vw / 1440 * 2384);
	margin:0 calc(100vw / 1440 * 20);
	flex-shrink: 0;
}

.pickup_content .content_wrap{
	max-width:1400px;
	margin:0 auto;
	justify-content:flex-start;
	gap: 20px;
}

.pickup_content .content_wrap .box{
	width:49.285714%;
	position: relative;
	overflow: hidden;
	border-radius:20px;
}

.pickup_content .content_wrap .box .img .img-trim{
	aspect-ratio: 690 / 500;
}

.pickup_content .content_wrap .box .img .img-trim .parallax-img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 120%;
	transform: translate(-50%, -50%);
	will-change: transform;
	pointer-events: none;
	transition: transform 0.25s ease-out;
}

.pickup_content .content_wrap .box .mask {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 5;
	mask-image: url('./img/pickup_keyhole.svg');
	mask-size: contain;
	mask-repeat: no-repeat;
	mask-position: center;
	-webkit-mask-image: url('./img/pickup_keyhole.svg');
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	background: rgba(0, 0, 0, 0.85);
}

.pickup_content .content_wrap .box .txt{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:6;
	color:#fff;
}

.pickup_content .content_wrap .box .txt .label{
	position:absolute;
	top:20px;
	left:20px;
	font-size:0.875rem;
	letter-spacing:0.028574em;
}

.pickup_content .content_wrap .box .txt h4{
	position:absolute;
	left:20px;
	bottom:50px;
	width:calc(100% - 40px);
	font-size:1.125rem;
	letter-spacing:0.044444em;
	text-indent:0.044444em;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-line-clamp: 1;
}

/* ticket */

.ticket_content .content_wrap{
	justify-content: space-between;
}

.ticket_content .content_wrap .title{
	width:29.259256%;
	position:relative;
}

.ticket_content .content_wrap .title::after{
	position:absolute;
	top:0;
	right:-15.82278%;
	content:"";
	width:1px;
	height:100%;
	background:#2c2c2c;
}

.ticket_content .content_wrap .summary{
	width:60.185185%;
	padding-top:10px;
}

.ticket_content .content_wrap .summary h2{
	font-weight:700;
	font-size:1.875rem;
	letter-spacing:0.026666em;
	text-indent:0.026666em;
	color:#000;
	margin-bottom:1em;
}

.ticket_content .content_wrap .summary table{
	width:100%;
	margin-bottom:36px;
	color:#000;
}

.ticket_content .content_wrap .summary table th{
	width:53.846154%;
}

.ticket_content .content_wrap .summary table td{
	width:23.076923%;
}

.ticket_content .content_wrap .summary table td:last-child{
	border-left:1px solid #2c2c2c;
}

.ticket_content .content_wrap .summary table thead{
	border-bottom:1px solid #2c2c2c;
}

.ticket_content .content_wrap .summary table thead th,
.ticket_content .content_wrap .summary table thead td{
	padding:0 20px 20px;
}

.ticket_content .content_wrap .summary table thead td span{
	display:block;
	background:#000;
	color:#fff;
	font-size:0.8125rem;
	line-height:1.875rem;
	border-radius:100vmax;
}

.ticket_content .content_wrap .summary table tbody{
	font-size:1.625rem;
}

.ticket_content .content_wrap .summary table tbody th,
.ticket_content .content_wrap .summary table tbody td{
	padding:6px 20px;
}

.ticket_content .content_wrap .summary table tbody tr:first-child th,
.ticket_content .content_wrap .summary table tbody tr:first-child td{
	padding:24px 20px 6px;
}

.ticket_content .content_wrap .summary table tbody tr:last-child th,
.ticket_content .content_wrap .summary table tbody tr:last-child td{
	padding:6px 20px 0;
}

.ticket_content .content_wrap .summary .comment{
	margin-bottom:20px;
}

.ticket_content .content_wrap .summary .comment p{
	font-size:0.875rem;
	color:#696969;
	letter-spacing:0.057142em;
}

.ticket_content .content_wrap .summary .btn_wrap a{
	display:inline-block;
	width:315px;
}

.ticket_notes{
	padding:50px;
	background:#fff;
}

.ticket_notes h3{
	font-weight:700;
	font-size:1.625rem;
	letter-spacing:0.05em;
	text-indent:0.05em;
	color:#000;
	margin-bottom:1em;
}

.ticket_notes .block{
	margin-bottom:15px;
}

.ticket_notes .block p{
	font-size:0.9375rem;
	line-height:1.866666;
	letter-spacing:0.053333em;
	color:#000;
}

/* display */

.pc-none{
	display:none;
}

@media (max-width:1440px){
	
	/* common */
	
	html{
		font-size:calc(100vw / 1440 * 16);
	}
	
	/* layout */
	
	main{
		margin:calc(100vw / 1440 * 70) auto 0;
	}
	
	.container{
		max-width:calc(100vw - (100vw / 1440 * 100));
		width:calc(100vw / 1440 * 1080);
	}
	
	/* parts */
	
	.heading01{
		margin-bottom:calc(100vw / 1440 * 26);
	}
	
	.heading01 span{
		margin-right:calc(100vw / 1440 * 42);
	}
	
	.heading01 span::after{
		right:calc(100vw / 1440 * -31);
		width:calc(100vw / 1440 * 20);
	}
	
	.heading02{
		margin-bottom:calc(100vw / 1440 * 36);
	}
	
	.heading03{
		margin-bottom:calc(100vw / 1440 * 100);
	}
	
	.btn{
		padding:calc(100vw / 1440 * 22) calc(100vw / 1440 * 80);
	}
	
	/* animation */
	
	.heading_animation .glyph{
		filter:blur(calc(100vw / 1440 * 12));
	}
	
	/* fix_cta */
	
	.fix_cta{
		bottom:calc(100vw / 1440 * 40);
		right:calc(100vw / 1440 * 40);
	}
	
	.fix_cta a{
		width:calc(100vw / 1440 * 315);
	}
	
	/* modal */
	
	.modal_wrap .modal_inner .modal_contents{
		width:calc(100vw / 1440 * 1200);
	}
	
	.modal_wrap .modal_inner .modal_contents .modal_close{
		top:calc(100vw / 1440 * 20);
		right:calc(100vw / 1440 * 20);
		width:calc(100vw / 1440 * 40);
		height:calc(100vw / 1440 * 40);
	}
	
	.modal_wrap .modal_inner .modal_contents .modal_close::before{
		width:calc(100vw / 1440 * 10);
	}
	
	.modal_wrap .modal_inner .modal_contents .modal_close::after{
		width:calc(100vw / 1440 * 10);
	}
	
	.modal_wrap .modal_inner .modal_contents .content_wrap .txt{
		padding:calc(100vw / 1440 * 90) calc(100vw / 1440 * 58);
		height:calc(100vw / 1440 * 680);
	}
	
	/* header */
	
	.header_wrap{
		max-width:100%;
		padding:calc(100vw / 1440 * 25) calc(100vw / 1440 * 40);
	}
	
	.header .header_wrap .logo{
		width:calc(100vw / 1440 * 126);
	}
	
	.header .header_wrap .gnav .g_nav_content .main_menu ul li{
		margin-left:calc(100vw / 1440 * 24);
	}
	
	.header .header_wrap .gnav .language{
		width:calc(100vw / 1440 * 50);
		padding:calc(100vw / 1440 * 4) 0;
		margin-left:calc(100vw / 1440 * 32);
	}
	
	/* footer */
	
	.footer{
		padding:calc(100vw / 1440 * 20) 0;
	}
	
	.footer .footer_wrap{
		max-width:calc(100vw / 1440 * 1400);
		padding:calc(100vw / 1440 * 33) calc(100vw / 1440 * 60);
	}
	
	.footer .footer_wrap .sns ul li{
		margin-right:calc(100vw / 1440 * 20);
	}
	
	.footer .footer_wrap .sns ul li a .icon{
		height:calc(100vw / 1440 * 26);
	}
	
	.footer .footer_wrap .about ul li{
		margin-left:calc(100vw / 1440 * 30);
	}
	
	.footer .footer_wrap .about h6{
		margin-left:calc(100vw / 1440 * 30);
	}
	
	/* home */
	
	.fv .keyhole_slider{
		margin-bottom:calc(100vw / 1440 * 24);
	}
	
	.fv .keyhole_slider .keyhole_track .keyhole_item{
		width: calc(100vw / 1440 * 233);
		height: calc(100vw / 1440 * 233 * (1200 / 700));
	
	}
	
	.fv .txt .name{
		width:calc(100vw / 1440 * 1360);
		margin:0 auto calc(100vw / 1440 * 36);
	}
	
	.fv .txt .date{
		padding:calc(100vw / 1440 * 28) calc(100vw / 1440 * 40);
	}
	
	.fv .txt .date .title{
		width:calc(100vw / 1440 * 335);
	}
	
	.fv .txt .date .title::after{
		right:calc(100vw / 1440 * -4);
		width:calc(100vw / 1440 * 2);
		height:calc(100vw / 1440 * 90);
	}
	
	.fv .txt .date .title p{
		font-size:calc(100vw / 1440 * 40);
	}
	
	.fv .txt .date .img{
		width:calc(100vw / 1440 * 986);
	}
	
	.home_contents{
		padding:calc(100vw / 1440 * 100) 0;
	}
	
	.home_contents .toggle_btn{
		padding:calc(100vw / 1440 * 18) 0;
	}
	
	.home_contents .toggle_btn.active{
		margin-bottom:calc(100vw / 1440 * 60);
	}
	
	.home_contents .toggle_btn::before{
		right:calc(100vw / 1440 * 20);
		width:calc(100vw / 1440 * 22);
	}
	
	.home_contents .toggle_btn::after{
		right:calc(100vw / 1440 * 20);
		width:calc(100vw / 1440 * 22);
	}
	
	.home_contents .toggle_btn.new{
		padding-left:calc(100vw / 1440 * 94);
	}
	
	.home_contents .summary dl dt,
	.home_contents .summary dl dd{
		padding:calc(100vw / 1440 * 40) 0;
	}
	
	.home_contents .summary dl dd .block{
		margin-bottom:calc(100vw / 1440 * 36);
	}
	
	.home_contents .summary dl dd .img{
		width:calc(100vw / 1440 * 126);
	}
	
	.hc01 .heading01{
		margin-bottom:calc(100vw / 1440 * 56);
	}
	
	.hc01 h3{
		margin-bottom:calc(100vw / 1440 * 56);
	}
	
	.hc01 h3 .glyph{
		height:calc(100vw / 1440 * 60);
	}
	
	.hc02 .box{
		margin-bottom:calc(100vw / 1440 * 62);
	}
	
	.hc03 .summary{
		margin-bottom:calc(100vw / 1440 * 100);
	}
	
	.hc03 .sns h5{
		margin-bottom:calc(100vw / 1440 * 42);
	}
	
	.hc03 .sns ul{
		margin-bottom:calc(100vw / 1440 * 52);
	}
	
	.hc03 .sns ul li::after{
		height:calc(100vw / 1440 * 120);
	}
	
	.hc03 .sns ul li a{
		padding:calc(100vw / 1440 * 30) 0;
	}
	
	.hc03 .sns ul li a .icon{
		height:calc(100vw / 1440 * 60);
	}
	
	.hc04 .box{
		margin-bottom:calc(100vw / 1440 * 80);
	}
	
	.hc04 .box .faq_archive article{
		padding:calc(100vw / 1440 * 20) calc(100vw / 1440 * 26);
		margin-bottom:calc(100vw / 1440 * 20);
	}
	
	.hc04 .box .faq_archive article .question{
		padding-bottom:calc(100vw / 1440 * 14);
		margin-bottom:calc(100vw / 1440 * 16);
	}
	
	.hc06{
		padding:0 0 calc(100vw / 1440 * 100);
	}
	
	.hc06 .sponsor_archive{
		gap:calc(100vw / 1440 * 20);
	}
	
	/* page */
	
	.page_content{
		padding:calc(100vw / 1440 * 100) 0;
	}
	
	/* rooms */
	
	.rooms_archive{
		gap:calc(100vw / 1440 * 20);
	}
	
	.rooms_archive .card{
		margin-bottom:calc(100vw / 1440 * 8);
	}
	
	.rooms_archive .card .img{
		margin-bottom:calc(100vw / 1440 * 8);
	}
	
	.rooms_archive .card .img .mask{
		backdrop-filter: blur(calc(100vw / 1440 * 20));
		-webkit-backdrop-filter: blur(calc(100vw / 1440 * 20));
	}
	
	.pickup_content{
		padding:0 0 calc(100vw / 1440 * 100);
	}
	
	.pickup_content h3{
		margin-bottom:calc(100vw / 1440 * 100);
	}
	
	.pickup_content h3::before {
		width:calc(100vw / 1440 * 100);
	}
	
	.pickup_content h3::after {
		width:calc(100vw / 1440 * 100);
	}
	
	.pickup_content h3 .loop .img{
		width:calc(100vw / 1440 * 2384);
		margin:0 calc(100vw / 1440 * 20);
	}
	
	.pickup_content .content_wrap{
		max-width:calc(100vw / 1440 * 1400);
		gap:calc(100vw / 1440 * 20);
	}
	
	.pickup_content .content_wrap .box .txt .label{
		top:calc(100vw / 1440 * 20);
		left:calc(100vw / 1440 * 20);
	}
	
	.pickup_content .content_wrap .box .txt h4{
		left:calc(100vw / 1440 * 20);
		bottom:calc(100vw / 1440 * 50);
		width:calc(100% - (100vw / 1440 * 40));
	}
	
	/* ticket */
	
	.ticket_content .content_wrap .summary{
		padding-top:calc(100vw / 1440 * 10);
	}
	
	.ticket_content .content_wrap .summary table{
		margin-bottom:calc(100vw / 1440 * 36);
	}
	
	.ticket_content .content_wrap .summary table thead th,
	.ticket_content .content_wrap .summary table thead td{
		padding:0 calc(100vw / 1440 * 20) calc(100vw / 1440 * 20);
	}
	
	.ticket_content .content_wrap .summary table tbody th,
	.ticket_content .content_wrap .summary table tbody td{
		padding:calc(100vw / 1440 * 6) calc(100vw / 1440 * 20);
	}
	
	.ticket_content .content_wrap .summary table tbody tr:first-child th,
	.ticket_content .content_wrap .summary table tbody tr:first-child td{
		padding:calc(100vw / 1440 * 24) calc(100vw / 1440 * 20) calc(100vw / 1440 * 6);
	}
	
	.ticket_content .content_wrap .summary table tbody tr:last-child th,
	.ticket_content .content_wrap .summary table tbody tr:last-child td{
		padding:calc(100vw / 1440 * 6) calc(100vw / 1440 * 20) 0;
	}
	
	.ticket_content .content_wrap .summary .comment{
		margin-bottom:calc(100vw / 1440 * 20);
	}
	
	.ticket_content .content_wrap .summary .btn_wrap a{
		width:calc(100vw / 1440 * 315);
	}
	
	.ticket_notes{
		padding:calc(100vw / 1440 * 50);
	}
	
	.ticket_notes .block{
		margin-bottom:calc(100vw / 1440 * 15);
	}

}

@media (max-width: 960px){

	/* display */
	
	.sp-none{
		display:none;
	}
	
	.pc-none{
		display:block;
	}

	/* common */

	html{
		font-size:calc(100vw / 750 * 28);
	}
	
	a:hover{
		opacity:1;
	}
	
	/* layout */

	main{
		margin:calc(100vw / 750 * 140) auto 0;
	}
	
	.container{
		width:89.333333vw;
	}
	
	/* parts */
	
	.heading01{
		font-size:calc(100vw / 750 * 32);
		margin-bottom:calc(100vw / 750 * 40);
	}
	
	.heading01 span{
		margin-right:calc(100vw / 750 * 60);
	}
	
	.heading01 span::after{
		right:calc(100vw / 750 * -50);
		width:calc(100vw / 750 * 40);
	}
	
	.heading02{
		font-size:calc(100vw / 750 * 52);
		margin-bottom:calc(100vw / 750 * 68);
	}
	
	.heading03{
		margin-bottom:calc(100vw / 750 * 120);
	}
	
	.heading03 .pj{
		font-size:calc(100vw / 750 * 32);
	}
	
	.heading03 .jp{
		font-size:calc(100vw / 750 * 56);
	}
	
	.btn{
		width:100%;
		font-size:calc(100vw / 750 * 32);
		padding:calc(100vw / 750 * 40) 0;
	}
	
	/* animation */
	
	.heading_animation .glyph{
		filter:blur(calc(100vw / 750 * 12));
	}
	
	/* fix_cta */
	
	.fix_cta{
		bottom:calc(100vw / 750 * 40);
		right:calc(100vw / 750 * 40);
	}
	
	.fix_cta a{
		width:calc(100vw / 750 * 670);
	}
	
	/* modal */
	
	.modal_wrap{
		-webkit-backdrop-filter: blur(calc(100vw / 750 * 16));
		backdrop-filter: blur(calc(100vw / 750 * 16));
	}
	
	.modal_wrap .modal_inner .modal_contents{
		width:89.333333vw;
		border-radius:20px;
	}
	
	.modal_wrap .modal_inner .modal_contents .modal_close{
		top:auto;
		bottom:15px;
		right:15px;
		width:40px;
		height:40px;
	}
	
	.modal_wrap .modal_inner .modal_contents .modal_close::before{
		width:10px;
	}
	
	.modal_wrap .modal_inner .modal_contents .modal_close::after{
		width:10px;
	}
	
	.modal_wrap .modal_inner .modal_contents .content_wrap .img{
		width:100%;
		border-radius:20px 20px 0 0;
	}
	
	.modal_wrap .modal_inner .modal_contents .content_wrap .txt{
		width:100%;
		height:calc(100dvh - (100vw / 750 * 80) - (100vw / 750 * 670));
		padding:25px 15px 67px;
		border-radius:0 0 20px 20px;
	}
	
	.modal_wrap .modal_inner .modal_contents .content_wrap .txt h2{
		font-size:24px;
	}
	
	.modal_wrap .modal_inner .modal_contents .content_wrap .txt .editor_contents{
		font-size:12px;
	}
	
	/* header */
	
	.header_wrap{
		max-width:100%;
		padding:calc(100vw / 750 * 35) calc(100vw / 750 * 40);
	}
	
	.header .header_wrap .logo{
		width:calc(100vw / 750 * 270);
	}
	
	.header .header_wrap .gnav .g_nav_btn{
		width:calc(100vw / 750 * 182);
		background:#000;
		color:#fff;
		padding:calc(100vw / 750 * 21) calc(100vw / 750 * 34);
		border-radius:100vmax;
		cursor:pointer;
		transition:.5s;
	}
	
	.header .header_wrap .gnav .g_nav_btn .g_nav_btn_inner{
		justify-content: space-between;
		align-items: center;
	}
	
	.header .header_wrap .gnav .g_nav_btn .g_nav_btn_inner .txt span{
		display:block;
		font-size:calc(100vw / 750 * 22);
		line-height:calc(100vw / 750 * 28);
		letter-spacing:calc(100vw / 750 * 0.8);
	}
	
	.header .header_wrap .gnav .g_nav_btn .g_nav_btn_inner .txt span:last-child{
		display:none;
	}
	
	.header .header_wrap .gnav .g_nav_btn .g_nav_btn_inner .icon{
		width:calc(100vw / 750 * 30);
		height:calc(100vw / 750 * 12);
		position:relative;
	}
	
	.header .header_wrap .gnav .g_nav_btn .g_nav_btn_inner .icon .menu__line{
		position:absolute;
		top:0;
		left:0;
		content:"";
		width:100%;
		height:calc(100vw / 750 * 2);
		background:#fff;
		transition:.5s;
	}
	
	.header .header_wrap .gnav .g_nav_btn .g_nav_btn_inner .icon .menu__line:last-child{
		top:auto;
		bottom:0;
	}
	
	.header .header_wrap .gnav .g_nav_content{
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		position:fixed;
		top:0;
		left:0;
		width:100vw;
		height:100dvh;
		background: rgba(0, 0, 0, 0.5);
		-webkit-backdrop-filter: blur(5px);
		backdrop-filter: blur(5px);
		transition: opacity .5s ease, visibility .5s ease;
		padding:calc(100vw / 750 * 140) calc(100vw / 750 * 40) calc(100vw / 750 * 40);
	}
	
	.header .header_wrap .gnav .g_nav_content .g_nav_inner{
		width:100%;
		height:100%;
		background:#000;
		border-radius:calc(100vw / 750 * 20);
		padding:calc(100vw / 750 * 40);
		color:#888;
		position:relative;
	}
	
	.header .header_wrap .gnav .g_nav_content .g_nav_inner .main_menu{
		width:100%;
		border-bottom:1px solid #fff;
		margin-bottom:calc(100vw / 750 * 54);
	}
	
	.header .header_wrap .gnav .g_nav_content .g_nav_inner .main_menu ul{
		flex-direction: column;
		font-size:16px;
		line-height:2.5;
		letter-spacing:0.03em;
		margin-bottom:1.25em;
	}
	
	.header .header_wrap .gnav .g_nav_content .g_nav_inner .main_menu ul li{
		margin-left:0;
		width:100%;
	}
	
	.header .header_wrap .gnav .g_nav_content .main_menu ul li a{
		color:#fff;
	}
	
	.header .header_wrap .gnav .g_nav_content .main_menu ul li a::before{
		content:none;
	}
	
	.header .header_wrap .gnav .g_nav_content .sub_menu{
		width:100%;
	}
	
	.header .header_wrap .gnav .g_nav_content .sub_menu ul li{
		margin-right:20px;
	}
	
	.header .header_wrap .gnav .g_nav_content .sub_menu ul li:last-child{
		margin-right:0;
	}
	
	.header .header_wrap .gnav .g_nav_content .sub_menu ul li a{
		color:#fff;
	}
	
	.header .header_wrap .gnav .g_nav_content .sub_menu ul li a .icon{
		height:26px;
		width:auto;
	}
	
	.header .header_wrap .gnav .g_nav_content .sub_menu ul li a .icon svg{
		height: 100%;
		width: auto;
	}
	
	.header .header_wrap .gnav .g_nav_content .sub_menu ul li a .icon svg path{
		fill: #fff;
		transition: .5s;
	}
	
	.header .header_wrap .gnav .g_nav_content .sub_menu ul li a:hover .icon svg path{
		fill: #2c2c2c;
	}
	
	.header .header_wrap .gnav .g_nav_content .about{
		width:100%;
		position:absolute;
		bottom:calc(100vw / 750 * 40);
		left:calc(100vw / 750 * 40);
	}
	
	.header .header_wrap .gnav .g_nav_content .about .language{
		font-size:10px;
		color:#fff;
		border: 1px solid #fff;
		width:78px;
		padding:6.5px 0;
		margin-left:0;
		margin-bottom:22px;
	}
	
	.header .header_wrap .gnav .g_nav_content .about ul{
		margin-bottom:30px;
		font-size:14px;
	}
	
	.header .header_wrap .gnav .g_nav_content .about ul li{
		margin-bottom:20px;
		line-height:1;
	}
	
	.header .header_wrap .gnav .g_nav_content .about ul li:last-child{
		margin-bottom:0;
	}
	
	.header .header_wrap .gnav .g_nav_content .about ul li a{
		color:#888;
		display:inline-block;
		position:relative;
	}
	
	.header .header_wrap .gnav .g_nav_content .about ul li a::after{
		position:absolute;
		top:50%;
		transform:translateY(-50%);
		right:-20px;
		content:"";
		width:10px;
		height:10px;
		background:url("./img/icon_link.svg") 0 0 no-repeat;
		background-size:cover;
	}
	
	.header .header_wrap .gnav .g_nav_content .about  h6{
		font-size:10px;
	}
	
	.header.active .header_wrap .logo{
		position:relative;
		z-index:1001;
	}
	
	.header.active .header_wrap .logo img{
		filter: brightness(0) invert(1);
	}
	
	.header.active .header_wrap .gnav .g_nav_btn{
		position:relative;
		z-index:1001;
		background:#fff;
		color:#2c2c2c;
	}
	
	.header.active .header_wrap .gnav .g_nav_btn .g_nav_btn_inner .txt span:first-child{
		display:none;
	}
	
	.header.active .header_wrap .gnav .g_nav_btn .g_nav_btn_inner .txt span:last-child{
		display:block;
	}
	
	.header.active .header_wrap .gnav .g_nav_btn .g_nav_btn_inner .icon .menu__line{
		background:#2c2c2c;
		top:50%;
		transform:translateY(-50%) rotate(45deg);
		transform-origin:center;
	}
	
	.header.active .header_wrap .gnav .g_nav_btn .g_nav_btn_inner .icon .menu__line:last-child{
		bottom:auto;
		top:50%;
		transform:translateY(-50%) rotate(135deg);
	}
	
	.header.active .header_wrap .gnav .g_nav_content{
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
	
	.header .header_wrap .gnav .g_nav_content .main_menu ul li{
		margin-left:calc(100vw / 750 * 24);
	}

	
	/* footer */
	
	.footer{
		padding:calc(100vw / 750 * 20);
	}
	
	.footer .footer_wrap{
		max-width:100%;
		border-radius:calc(100vw / 750 * 20);
		padding:calc(100vw / 750 * 60) calc(100vw / 750 * 40);
	}
	
	.footer .footer_wrap .sns{
		width:100%;
		margin-bottom:calc(100vw / 750 * 80);
	}
	
	.footer .footer_wrap .sns ul li{
		margin-right:calc(100vw / 750 * 40);
	}
	
	.footer .footer_wrap .sns ul li a .icon{
		height:calc(100vw / 750 * 64);
	}
	
	.footer .footer_wrap .about{
		flex-direction: column;
		justify-content: flex-start;
		width:100%;
	}
	
	.footer .footer_wrap .about ul{
		width:100%;
		flex-direction: column;
		justify-content: flex-start;
		font-size:calc(100vw / 750 * 24);
		margin-bottom:calc(100vw / 750 * 32);
	}
	
	.footer .footer_wrap .about ul li{
		margin-left:0;
		margin-bottom:calc(100vw / 750 * 36);
	}
	
	.footer .footer_wrap .about h6{
		width:100%;
		margin-left:0;
		font-size:calc(100vw / 750 * 26);
		line-height:1;
	}
	
	/* home */

	.fv .keyhole_slider{
		margin-bottom:0;
	}
	
	.fv .keyhole_slider .keyhole_track .keyhole_item{
		width: calc(100vw / 750 * 192);
		height: calc(100vw / 750 * 192 * (1200 / 700));
	}
	
	.fv .txt .name{
		width:calc(100vw / 750 * 670);
		margin:calc(100vw / 750 * 38) auto calc(100vw / 750 * 64);
	}
	
	.fv .txt .date{
		padding:calc(100vw / 750 * 40) calc(100vw / 750 * 52);
	}
	
	.fv .txt .date .title{
		width:100%;
	}
	
	.fv .txt .date .title::after{
		content:none;
	}
	
	.fv .txt .date .title p{
		font-size:calc(100vw / 750 * 44);
		line-height:1;
		letter-spacing:calc(100vw / 750 * 3.65);
		font-weight:900;
		margin-bottom:0;
		margin-bottom:calc(100vw / 750 * 36);
	}
	
	.fv .txt .date .img{
		width:100%;
	}
	
	.home_contents{
		padding:calc(100vw / 750 * 160) 0;
	}
	
	.home_contents .toggle_btn{
		padding:calc(100vw / 750 * 24) 0;
		font-size:calc(100vw / 750 * 44);
	}
	
	.home_contents .toggle_btn .comment{
		font-size:calc(100vw / 750 * 24);
	}
	
	.home_contents .toggle_btn.active{
		margin-bottom:calc(100vw / 750 * 40);
	}
	
	.home_contents .toggle_btn::before{
		right:0;
		width:calc(100vw / 750 * 44);
	}
	
	.home_contents .toggle_btn::after{
		right:0;
		width:calc(100vw / 750 * 44);
	}
	
	.home_contents .toggle_btn.new{
		padding-left:calc(100vw / 750 * 140);
	}
	
	.home_contents .toggle_btn.new .label{
		font-size:calc(100vw / 750 * 24);
		padding: 0.68em 1.03em;
	}
	
	.home_contents .summary dl dt,
	.home_contents .summary dl dd{
		padding:calc(100vw / 750 * 90) 0;
	}
	
	.home_contents .summary dl dd .block{
		margin-bottom:calc(100vw / 750 * 36);
	}
	
	.home_contents .summary dl dd .img{
		width:calc(100vw / 750 * 126);
	}
	
	.hc01 .heading01{
		margin-bottom:calc(100vw / 750 * 80);
	}
	
	.hc01 h3{
		margin-bottom:calc(100vw / 750 * 32);
	}
	
	.hc01 h3 .glyph{
		height:calc(100vw / 750 * 55.8);
	}
	
	.hc01 p{
		font-size:calc(100vw / 750 * 24);
		line-height:2.833333;
	}
	
	.hc02{
		padding:calc(100vw / 750 * 160) 0 0;
	}
	
	.hc02 .box{
		margin-bottom:calc(100vw / 750 * 68);
	}
	
	.hc03 .summary{
		margin-bottom:calc(100vw / 750 * 200);
	}
	
	.hc03 .sns h5{
		margin-bottom:calc(100vw / 750 * 30);
	}
	
	.hc03 .sns h5 span{
		font-size:calc(100vw / 750 * 52);
	}
	
	.hc03 .sns h5 span.inter{
		font-size:calc(100vw / 750 * 60);
	}
	
	.hc03 .sns ul{
		margin-bottom:calc(100vw / 750 * 48);
	}
	
	.hc03 .sns ul li{
		width:23.380281%;
	}
	
	.hc03 .sns ul li::after{
		height:calc(100vw / 750 * 110);
	}
	
	.hc03 .sns ul li a{
		padding:calc(100vw / 750 * 27) 0;
	}
	
	.hc03 .sns ul li a .icon{
		height:calc(100vw / 750 * 55.6);
	}
	
	.hc04 .box{
		margin-bottom:calc(100vw / 750 * 68);
	}
	
	.hc04 .box .faq_archive article{
		padding:calc(100vw / 750 * 40);
		margin-bottom:calc(100vw / 750 * 40);
	}
	
	.hc04 .box .faq_archive article .question{
		justify-content: space-between;
		padding-bottom:calc(100vw / 750 * 36);
		margin-bottom:calc(100vw / 750 * 40);
	}
	
	.hc04 .box .faq_archive article .question span{
		font-size:calc(100vw / 750 * 48);
		margin-right:0;
	}
	
	.hc04 .box .faq_archive article .question h6{
		width:calc(100% - (100vw / 750 * 72));
		line-height:1.6;
	}
	
	.home_contents.hc05 .summary dl{
		margin-bottom:calc(100vw / 750 * 100);
	}
	
	.home_contents.hc05 .summary dl:last-child{
		margin-bottom:0;
	}
	
	.home_contents.hc05 .summary dl::before{
		content:none;
	}
	
	.home_contents.hc05 .summary dl dt{
		width:100%;
		position:relative;
		padding:0 0 calc(100vw / 750 * 26);
	}
	
	.home_contents.hc05 .summary dl dt::before {
		position: absolute;
		top: 100%;
		left: 0;
		content: "";
		width: 0;
		height: 1px;
		background: #888;
		transition: 1s;
	}
	
	.home_contents.hc05 .summary dl.active dt::before{
		width: 100%;
	}
	
	.home_contents.hc05 .summary dl dd{
		width:100%;
		padding:calc(100vw / 750 * 40) 0 0;
	}
	
	.hc06{
		padding:0 0 calc(100vw / 750 * 160);
	}
	
	.hc06 .sponsor_archive{
		gap:calc(100vw / 750 * 18);
	}
	
	.hc06 .sponsor_archive article{
		width:31.044776%;
	}
	
	/* page */
	
	.page_content{
		padding:calc(100vw / 750 * 160) 0;
	}
	
	/* rooms */
	
	.rooms_archive{
		gap:calc(100vw / 750 * 22);
	}
	
	.rooms_archive .card{
		width:48.358208%;
		margin-bottom:calc(100vw / 750 * 22);
	}
	
	.rooms_archive .card .img{
		margin-bottom:calc(100vw / 750 * 16);
	}
	
	.rooms_archive .card .img .mask{
		backdrop-filter: blur(calc(100vw / 750 * 20));
		-webkit-backdrop-filter: blur(calc(100vw / 750 * 20));
	}
	
	.rooms_archive .card p{
		font-size:calc(100vw / 750 * 24);
	}
	
	.pickup_content{
		padding:0 0 calc(100vw / 750 * 160);
	}
	
	.pickup_content h3{
		margin-bottom:calc(100vw / 750 * 100);
	}
	
	.pickup_content h3::before {
		width:calc(100vw / 750 * 100);
	}
	
	.pickup_content h3::after {
		width:calc(100vw / 750 * 100);
	}
	
	.pickup_content h3 .loop .img{
		width:calc(100vw / 750 * 3100);
		margin:0 calc(100vw / 750 * 20);
	}
	
	.pickup_content .content_wrap{
		max-width:89.333333vw;
		gap:calc(100vw / 750 * 40);
	}
	
	.pickup_content .content_wrap .box{
		width:100%;
		border-radius:calc(100vw / 750 * 20);
	}
	
	.pickup_content .content_wrap .box .img .img-trim{
		aspect-ratio: 335 / 210;
	}
	
	.pickup_content .content_wrap .box .mask{
		mask-image: url(./img/pickup_keyhole-sp.svg);
		-webkit-mask-image: url(./img/pickup_keyhole-sp.svg);
	}
	
	.pickup_content .content_wrap .box .txt .label{
		top:calc(100vw / 750 * 26);
		left:calc(100vw / 750 * 28);
		font-size:calc(100vw / 750 * 20);
	}
	
	.pickup_content .content_wrap .box .txt h4{
		font-size:calc(100vw / 750 * 28);
		left:calc(100vw / 750 * 40);
		bottom:calc(100vw / 750 * 48);
		width:calc(100% - (100vw / 750 * 80));
	}
	
	/* ticket */
	
	.ticket_content .content_wrap .title{
		width:100%;
	}
	
	.ticket_content .content_wrap .summary{
		width:100%;
		padding-top:calc(100vw / 750 * 10);
	}
	
	.ticket_content .content_wrap .summary h2{
		font-size:calc(100vw / 750 * 48);
		margin-bottom:calc(100vw / 750 * 64);
	}
	
	.ticket_content .content_wrap .summary table{
		margin-bottom:calc(100vw / 750 * 60);
	}
	
	.ticket_content .content_wrap .summary table th{
		width:35.52239%;
	}
	
	.ticket_content .content_wrap .summary table td{
		width:32.238805%;
	}
	
	.ticket_content .content_wrap .summary table thead th,
	.ticket_content .content_wrap .summary table thead td{
		padding:0 calc(100vw / 750 * 28) calc(100vw / 750 * 24);
	}
	
	.ticket_content .content_wrap .summary table thead td span{
		font-size:calc(100vw / 750 * 22);
		line-height:calc(100vw / 750 * 52);
	}
	
	.ticket_content .content_wrap .summary table tbody{
		font-size:calc(100vw / 750 * 36);
	}
	
	.ticket_content .content_wrap .summary table tbody th,
	.ticket_content .content_wrap .summary table tbody td{
		padding:calc(100vw / 750 * 14) calc(100vw / 750 * 24);
	}
	
	.ticket_content .content_wrap .summary table tbody tr:first-child th,
	.ticket_content .content_wrap .summary table tbody tr:first-child td{
		padding:calc(100vw / 750 * 28) calc(100vw / 750 * 24) calc(100vw / 750 * 14);
	}
	
	.ticket_content .content_wrap .summary table tbody tr:last-child th,
	.ticket_content .content_wrap .summary table tbody tr:last-child td{
		padding:calc(100vw / 750 * 14) calc(100vw / 750 * 28) 0;
	}
	
	.ticket_content .content_wrap .summary .comment{
		font-size:calc(100vw / 750 * 24);
		margin-bottom:calc(100vw / 750 * 44);
	}
	
	.ticket_content .content_wrap .summary .btn_wrap a{
		width:100%;
	}
	
	.ticket_notes{
		padding:calc(100vw / 750 * 72) calc(100vw / 750 * 36);
	}
	
	.ticket_notes h3{
		font-size:calc(100vw / 750 * 44);
		margin-bottom:calc(100vw / 750 * 60);
	}
	
	.ticket_notes .block{
		margin-bottom:calc(100vw / 750 * 24);
	}
	
	.ticket_notes .block p{
		font-size:calc(100vw / 750 * 24);
	}

}

