@charset "UTF-8";
#premium button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
}
#premium :root {
	--header-h: 89px;
}
#premium .sec-title__wrap {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	text-align: center;
}
#premium .sec-title__en {
	color: #7B7260;
	text-transform: uppercase;
	font-family: "Oswald", sans-serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	font-size: 2.75rem;
	letter-spacing: 0.11em;
}
#premium .sec-title__jp {
	margin-top: min(2vw, 27px);
	font-family: YakuHanMP, "Noto Serif JP", serif;
	color: #fff;
	font-size: 1.5rem;
}
#premium .sec__lead {
	margin-top: min(3vw, 40px);
	color: #fff;
	font-size: 1rem;
	text-align: center;
}
@media screen and (max-width: 768px) {
	#premium .sec-title__en {
		font-size: clamp(1.875rem, 0.772rem + 4.9vw, 3.125rem);
	}
	#premium .sec-title__jp {
		margin-top: min(4vw, 30px);
		font-size: clamp(1.125rem, 0.353rem + 3.43vw, 2rem);
	}
	#premium .sec__lead {
		margin-top: min(5.3vw, 40px);
	}
	#premium {
		/*@media screen end*/
	}
}
#premium .mv {
	position: relative;
	z-index: 1;
}
#premium .bg-fixed {
	position: fixed;
	inset: 0;
	z-index: 0;
}
#premium .bg-fixed img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	display: block;
}
#premium .stage-sticky {
	top: 0;
	width: 100%;
	height: 100dvh;
}
#premium .balcony-layer {
	position: absolute;
	inset: 0;
	z-index: 1;
	opacity: 0;
}
#premium .balcony-img-box {
	position: absolute;
	inset: 0;
	-webkit-transform-origin: center bottom;
	        transform-origin: center bottom;
	-webkit-transform: scale(0.65);
	        transform: scale(0.65);
}
#premium .balcony-img-box figcaption {
	position: absolute;
	bottom: 10px;
	right: 10px;
	font-size: 0.626rem;
	color: #fff;
	text-transform: uppercase;
	font-family: "EB Garamond", serif;
}
#premium .balcony-img-box img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	display: block;
}
#premium .filter-layer {
	position: absolute;
	inset: 0;
	z-index: 2;
	background: rgba(8, 8, 6, 0);
	pointer-events: none;
}
#premium .fv-texts {
	position: absolute;
	inset: 0;
	z-index: 3;
	pointer-events: none;
	color: #C9A96E;
}
#premium .fv-kanji,
#premium .fv-body-text {
	opacity: 0;
	visibility: hidden;
}
#premium .fv-kanji.is-active,
#premium .fv-body-text.is-active {
	visibility: visible;
}
#premium .fv-kanji {
	position: absolute;
	top: 30%;
	right: 8%;
	text-align: justify;
}
#premium .fv-kanji.is-active {
	-webkit-animation: fadeInUp 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0.15s forwards;
	        animation: fadeInUp 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0.15s forwards;
}
#premium .fv-kanji .main-char {
	letter-spacing: 0.12em;
	font-size: clamp(5rem, 3.567rem + 2.98vw, 6.25rem);
	line-height: 1.2;
	font-weight: 400;
	display: block;
}
#premium .fv-kanji .sub-en {
	margin-top: min(2vw, 26px);
	font-family: "EB Garamond", serif;
	font-size: clamp(1rem, 0.713rem + 0.6vw, 1.25rem);
	letter-spacing: 0.4em;
	display: block;
	font-weight: 300;
	text-transform: uppercase;
}
#premium .fv-body-text {
	position: absolute;
	bottom: 10%;
	left: 7%;
	color: #C9A96E;
}
#premium .fv-body-text.is-active {
	-webkit-animation: fadeInUp 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0.4s forwards;
	        animation: fadeInUp 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0.4s forwards;
}
#premium .fv-body-text .eyebrow {
	font-size: clamp(1rem, 0.713rem + 0.6vw, 1.25rem);
	color: #C9A96E;
	letter-spacing: 0.25em;
	font-weight: 300;
}
#premium .fv-body-text .headline {
	margin-top: 9px;
	font-size: clamp(1.625rem, 0.909rem + 1.49vw, 2.25rem);
	line-height: 1.75;
	letter-spacing: 0.08em;
	font-weight: 300;
}
#premium .premium-text {
	position: absolute;
	inset: 0;
	z-index: 4;
	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;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	text-align: center;
	opacity: 0;
	-webkit-transform: translateY(22px);
	        transform: translateY(22px);
	pointer-events: none;
}
#premium .premium-text .label-en {
	font-family: "EB Garamond", serif;
	font-size: 0.875rem;
	letter-spacing: 0.5em;
	color: #C9A96E;
	font-weight: 300;
}
#premium .premium-text .title-ja {
	margin-top: min(2vw, 28px);
	font-family: YakuHanMP, "Noto Serif JP", serif;
	font-size: clamp(22px, 3vw, 44px);
	color: #fff;
	line-height: 1.85;
	letter-spacing: 0.12em;
	font-weight: 300;
}
@-webkit-keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translateY(28px);
		        transform: translateY(28px);
	}
	to {
		opacity: 1;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}
@keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translateY(28px);
		        transform: translateY(28px);
	}
	to {
		opacity: 1;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}
#premium .premium-text__features {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr)[3];
	grid-template-columns: repeat(3, 1fr);
	width: min(80vw, 1000px);
	margin-top: min(5vw, 64px);
	list-style: none;
}
#premium .premium-text__feature {
	text-align: center;
	position: relative;
}
#premium .feature-script {
	display: block;
	font-family: "Allura", cursive;
	font-size: clamp(1.875rem, 0.729rem + 2.38vw, 2.875rem);
	color: rgba(255, 255, 255, 0.2);
	line-height: 1.2;
	letter-spacing: 0.02em;
	position: absolute;
	top: -23%;
	left: 50%;
	-webkit-transform: translateX(-50%) rotate(-7.402deg);
	        transform: translateX(-50%) rotate(-7.402deg);
	width: 120%;
}
#premium .feature-main {
	font-size: clamp(1rem, 0.212rem + 1.64vw, 1.688rem);
	color: #C9A96E;
	line-height: 1.7;
	letter-spacing: 0.02em;
}
#premium .feature-main .feature-main--bigger {
	font-size: 1.35em;
}
#premium .feature-main .feature-main--note {
	font-size: 0.5em;
	vertical-align: super;
}
@media screen and (max-width: 768px) {
	#premium .fv-kanji {
		top: 40%;
		right: 5%;
	}
	#premium .fv-kanji .main-char {
		font-size: clamp(3.125rem, 0.368rem + 12.25vw, 6.25rem);
	}
	#premium .fv-kanji .sub-en {
		font-size: clamp(0.688rem, 0.081rem + 2.7vw, 1.375rem);
		letter-spacing: 0.3em;
	}
	#premium .fv-body-text .eyebrow {
		font-size: clamp(0.875rem, 0.434rem + 1.96vw, 1.375rem);
	}
	#premium .fv-body-text .headline {
		margin-top: min(2vw, 17px);
		font-size: clamp(1.25rem, 0.423rem + 3.68vw, 2.188rem);
	}
	#premium .fv-body-text {
		left: 10%;
		bottom: 15%;
	}
	#premium .premium-text .title-ja {
		font-size: clamp(1.125rem, 0.132rem + 4.41vw, 2.25rem);
	}
	#premium .premium-text__features {
		-ms-grid-columns: 1fr;
		grid-template-columns: 1fr;
		width: 88vw;
		margin-top: min(12vw, 100px);
		gap: min(6vw, 40px);
	}
	#premium .premium-text__feature {
		padding-inline: 0;
	}
	#premium .feature-script {
		font-size: clamp(1.5rem, 6vw, 2rem);
	}
	#premium .feature-main {
		font-size: clamp(1.125rem, 0.574rem + 2.45vw, 1.75rem);
	}
	#premium {
		/*@media screen end*/
	}
}
#premium .prm-intro {
	position: relative;
	z-index: 1;
	padding-block: min(12vw, 130px) min(12vw, 160px);
}
#premium .prm-intro__inner {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr min(2vw, 30px) min(30vw, 400px) min(2vw, 30px) 1fr;
	grid-template-columns: 1fr min(30vw, 400px) 1fr;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	width: 100%;
	max-width: 1300px;
	margin-inline: auto;
	gap: 0 min(2vw, 30px);
}
#premium .prm-intro__col--center {
	text-align: center;
	position: relative;
	z-index: 2;
}
#premium .prm-intro__col-note {
	position: absolute;
	bottom: 0;
	right: 10px;
	font-size: 0.625rem;
	color: #fff;
}
#premium .prm-intro__text {
	color: rgba(255, 255, 255, 0.88);
	font-size: clamp(0.75rem, 0.177rem + 1.19vw, 1.25rem);
	line-height: 2.6;
	letter-spacing: 0.05em;
	opacity: 0;
	-webkit-transform: translateY(20px);
	        transform: translateY(20px);
	-webkit-transition: opacity 0.9s ease, -webkit-transform 0.9s ease;
	transition: opacity 0.9s ease, -webkit-transform 0.9s ease;
	transition: opacity 0.9s ease, transform 0.9s ease;
	transition: opacity 0.9s ease, transform 0.9s ease, -webkit-transform 0.9s ease;
}
#premium .prm-intro__text.is-visible {
	opacity: 1;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}
#premium .prm-intro__col--left,
#premium .prm-intro__col--right {
	position: relative;
	height: min(72vw, 800px);
}
#premium .prm-intro__img-wrap {
	position: absolute;
	overflow: hidden;
	will-change: transform;
	-webkit-box-shadow: -35px 112px 23.6px 0 rgba(0, 0, 0, 0.25);
	        box-shadow: -35px 112px 23.6px 0 rgba(0, 0, 0, 0.25);
	opacity: 0;
	-webkit-transition: opacity 0.9s ease;
	transition: opacity 0.9s ease;
}
#premium .prm-intro__img-wrap.is-visible {
	opacity: 1;
}
#premium .prm-intro__img-wrap img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	display: block;
	-webkit-transform-origin: center center;
	        transform-origin: center center;
}
#premium .prm-intro__img--a {
	top: 0;
	right: 0;
	width: 40%;
	aspect-ratio: 150/168;
	z-index: 2;
}
#premium .prm-intro__img--b {
	top: 12%;
	left: 0;
	width: 70%;
	aspect-ratio: 356/526;
}
#premium .prm-intro__img--c {
	bottom: 0%;
	left: 8%;
	width: 40%;
	aspect-ratio: 154/152;
}
#premium .prm-intro__img--d {
	top: 0;
	right: 0;
	width: 68%;
	aspect-ratio: 287/221;
}
#premium .prm-intro__img--e {
	top: 49%;
	right: 31%;
	width: 57.5%;
	aspect-ratio: 260/258;
}
#premium .prm-intro__img--f {
	top: 74%;
	right: 5%;
	width: 40%;
	aspect-ratio: 154/152;
}
@media screen and (max-width: 768px) {
	#premium .prm-intro__inner {
		-ms-grid-columns: 1fr;
		grid-template-columns: 1fr;
	}
	#premium .prm-intro__col--left {
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
	}
	#premium .prm-intro__col--center {
		-webkit-box-ordinal-group: 3;
		    -ms-flex-order: 2;
		        order: 2;
		padding-block: min(10vw, 60px);
	}
	#premium .prm-intro__col--right {
		-webkit-box-ordinal-group: 4;
		    -ms-flex-order: 3;
		        order: 3;
	}
	#premium .prm-intro__text {
		font-size: clamp(0.875rem, 3.5vw, 1.125rem);
		line-height: 2.2;
	}
	#premium .prm-intro__img--a {
		right: auto;
		left: 28%;
		width: 20%;
	}
	#premium .prm-intro__img--b {
		width: 40%;
	}
	#premium .prm-intro__img--c {
		bottom: -132%;
		width: 20%;
	}
	#premium .prm-intro__img--d {
		top: -130%;
		width: 32%;
	}
	#premium .prm-intro__img--e {
		top: 18%;
		right: 10%;
		width: 28.5%;
	}
	#premium .prm-intro__img--f {
		top: 47%;
		right: 0%;
		width: 17%;
	}
	#premium {
		/*@media screen end*/
	}
}
#premium .urban-view {
	position: relative;
}
#premium .urban-view__imgbox {
	position: relative;
}
#premium .urban-view__img {
	margin-top: min(4.9vw, 64px);
}
#premium .urban-view__caption {
	position: absolute;
	bottom: -14px;
	right: 5px;
	color: #fff;
	font-size: 0.625rem;
}
#premium .scroll-hint-icon {
	width: 130px;
	left: 3%;
}
@media screen and (max-width: 768px) {
	#premium .urban-view__img {
		margin-top: min(10.9vw, 82px);
		width: 200%;
	}
	#premium {
		/*@media screen end*/
	}
}
#premium .prm-plan {
	position: relative;
	z-index: 1;
	padding-block: min(12vw, 130px) 0;
}
#premium .prm-plan__header {
	width: min(90%, 1200px);
	margin-inline: auto;
	margin-bottom: min(7vw, 90px);
}
#premium .prm-plan__stage-wrapper {
	height: 950vh;
	position: relative;
}
#premium .prm-plan__stage {
	position: sticky;
	top: 0;
	width: 100%;
	height: 100dvh;
	overflow: hidden;
}
#premium .prm-plan__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	will-change: transform;
}
#premium .prm-plan__bg img {
	width: 100%;
	height: 100%;
	display: block;
	aspect-ratio: 1920/1080;
	-o-object-fit: cover;
	   object-fit: cover;
	-webkit-transform: scale(0.5);
	        transform: scale(0.5);
	-webkit-transform-origin: center bottom;
	        transform-origin: center bottom;
}
#premium .prm-plan__bg figcaption {
	position: absolute;
	bottom: 10px;
	right: 10px;
	font-size: 0.625rem;
	color: #fff;
	text-transform: uppercase;
}
#premium .prm-plan__filter {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: rgba(0, 0, 0, 0.8);
	opacity: 0;
}
#premium .prm-plan__panel,
#premium .prm-plan__viewer {
	position: relative;
	z-index: 2;
	height: 100%;
}
#premium .prm-plan__stage {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: minmax(300px, 38%) 1fr;
	grid-template-columns: minmax(300px, 38%) 1fr;
}
#premium .prm-plan__panel {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	padding-left: clamp(40px, 5vw, 90px);
}
#premium .prm-plan__content.is-current {
	opacity: 1;
	visibility: visible;
}
#premium .prm-plan__info {
	opacity: 0;
}
#premium .prm-plan__filter {
	opacity: 0;
}
#premium .prm-plan__info {
	width: min(100%, 500px);
	color: #fff;
	opacity: 0;
}
#premium .prm-plan__type {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	gap: 0.45em;
}
#premium .prm-plan__type em {
	font-family: "EB Garamond", serif;
	font-size: clamp(4rem, 5vw, 5rem);
	font-style: italic;
	line-height: 0.9;
	font-weight: 300;
}
#premium .prm-plan__type span {
	font-size: clamp(0.875rem, 0.5vw + 0.7rem, 1rem);
	letter-spacing: 0.18em;
	text-transform: uppercase;
}
#premium .prm-plan__ldk {
	margin-top: 0;
	font-size: clamp(2.5rem, 0.566rem + 4.02vw, 4.188rem);
	font-weight: 300;
	line-height: 1.2;
	letter-spacing: 0.05em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: baseline;
	    -ms-flex-align: baseline;
	        align-items: baseline;
}
#premium .prm-plan__ldk span {
	font-size: 0.45em;
}
#premium .prm-plan__ldk-sub {
	display: block;
	margin-top: 12px;
	font-size: 0.26em;
	letter-spacing: 0.12em;
}
#premium .prm-plan__ldk-sub .num {
	font-size: 1.5em;
}
#premium .prm-plan__area-label {
	font-size: 0.875rem;
	letter-spacing: 0.12em;
}
#premium .prm-plan__area {
	margin-top: min(1vw, 27px);
	font-size: 2rem;
	font-weight: 300;
	line-height: 0.95;
	letter-spacing: 0.05em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: baseline;
	    -ms-flex-align: baseline;
	        align-items: baseline;
}
#premium .prm-plan__area--num {
	font-size: 1.4em;
}
#premium .prm-plan__area-unit {
	font-size: 0.75em;
}
#premium .prm-plan__area-tsubo {
	margin-top: 12px;
	font-size: 0.4em;
	letter-spacing: 0.08em;
}
#premium .prm-plan__area-list {
	display: -ms-grid;
	display: grid;
	gap: 2px;
	margin-top: min(1vw, 54px);
	font-size: 0.95rem;
	letter-spacing: 0.08em;
	line-height: 1.8;
}
#premium .prm-plan__descs {
	position: relative;
	margin-top: min(2vw, 54px);
	min-height: 150px;
	text-align: justify;
}
#premium .prm-plan__desc {
	position: absolute;
	inset: 0;
	opacity: 0;
	color: #fff;
	font-size: clamp(0.813rem, 0.168rem + 1.34vw, 1.375rem);
	line-height: 2;
	letter-spacing: 0.12em;
}
#premium .prm-plan__desc.prm-plan__desc--note {
	font-size: 0.6875rem;
	letter-spacing: 0.02em;
	color: #BBBBBB;
}
#premium .prm-plan__desc.prm-plan__desc--note img {
	display: block;
	width: 80%;
}
#premium .prm-plan__desc.is-current {
	opacity: 1;
}
#premium .prm-plan__viewer {
	position: relative;
	display: -ms-grid;
	display: grid;
	place-items: center;
	overflow: hidden;
}
#premium .prm-plan__content {
	position: absolute;
	inset: 0;
	display: -ms-grid;
	display: grid;
	place-items: center;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}
#premium .prm-plan__content video {
	width: 100%;
	height: 100%;
	display: block;
}
#premium .prm-plan__content video source {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	display: block;
}
#premium .prm-plan__content .prm-plan__image-note {
	position: absolute;
	bottom: 10px;
	right: 10px;
	font-size: 0.625rem;
	color: #fff;
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.8), 0px 0px 5px rgba(0, 0, 0, 0.8), 0px 0px 5px rgba(0, 0, 0, 0.8), 0px 0px 5px rgba(0, 0, 0, 0.8);
}
#premium .prm-plan__content.is-current {
	opacity: 1;
	visibility: visible;
}
#premium .prm-plan__content--madori {
	-ms-grid-rows: 1fr;
	grid-template-rows: 1fr;
	gap: 0;
	-webkit-transform: translateY(calc(var(--header-h) / 2));
	        transform: translateY(calc(var(--header-h) / 2));
}
#premium .prm-plan__content--madori img {
	width: auto;
	height: auto;
	max-width: min(78%, 720px);
	max-height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
}
#premium .prm-plan__note {
	width: min(90%, 820px);
	color: #fff;
	text-align: left;
	font-size: 0.75rem;
	line-height: 1.9;
	letter-spacing: 0.05em;
	opacity: 0.65;
}
#premium .prm-plan__content video {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	display: block;
}
#premium .prm-plan__copy {
	position: absolute;
	z-index: 5;
	color: #fff;
	font-size: clamp(2rem, 3vw, 3.5rem);
	line-height: 1.45;
	letter-spacing: 0.25em;
	text-shadow: 0 5px 20px rgba(0, 0, 0, 0.45);
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	        writing-mode: vertical-rl;
}
#premium .prm-plan__copy.prm-plan__copy--video1 {
	left: 64%;
	bottom: 2%;
}
#premium .prm-plan__copy.prm-plan__copy--video2 {
	left: 28%;
	bottom: 18%;
}
#premium .prm-plan__copy.prm-plan__copy--video3 {
	left: 64%;
	bottom: 22%;
}
#premium .prm-plan__image-note {
	position: absolute;
	right: 20px;
	bottom: 20px;
	z-index: 5;
	color: #fff;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
}
#premium .prm-plan__content {
	opacity: 0;
	visibility: hidden;
}
#premium .prm-plan__note {
	opacity: 0;
	-webkit-transform: translateY(20px);
	        transform: translateY(20px);
}
@media screen and (max-width: 768px) {
	#premium .prm-plan__stage {
		-ms-grid-columns: 1fr;
		grid-template-columns: 1fr;
	}
	#premium .prm-plan__stage-wrapper {
		height: 400vh;
	}
	#premium .prm-plan__panel {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 50%;
		z-index: 3;
		padding-top: calc(var(--header-h) + 10px);
		padding-inline: 0;
		-webkit-box-align: end;
		    -ms-flex-align: end;
		        align-items: flex-end;
	}
	#premium .prm-plan__viewer {
		position: absolute;
		bottom: 0;
		left: 0;
		height: 50%;
		width: 100%;
		overflow: visible;
	}
	#premium .prm-plan__info {
		width: 80%;
		margin-inline: auto;
	}
	#premium .prm-plan__type em {
		font-size: clamp(2rem, -0.426rem + 10.78vw, 4.75rem);
	}
	#premium .prm-plan__ldk {
		margin-top: 0;
		font-size: clamp(2rem, -0.096rem + 9.31vw, 4.375rem);
	}
	#premium .prm-plan__area {
		margin-top: 0;
		font-size: clamp(1.125rem, -0.75rem + 8.33vw, 3.25rem);
	}
	#premium .prm-plan__area-list {
		margin-top: min(1vw, 12px);
		font-size: clamp(0.75rem, 0.529rem + 0.98vw, 1rem);
	}
	#premium .prm-plan__descs {
		margin-top: min(1vw, 25px);
	}
	#premium .prm-plan__desc {
		font-size: 1rem;
		line-height: 1.9;
		letter-spacing: 0.08em;
	}
	#premium .prm-plan__desc.prm-plan__desc--note {
		font-size: clamp(0.625rem, 0.46rem + 0.74vw, 0.813rem);
	}
	#premium .prm-plan__content--madori {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
		z-index: 5;
	}
	#premium .prm-plan__content--madori img {
		width: 92vw;
		height: auto;
		-o-object-fit: contain;
		   object-fit: contain;
		-webkit-transform: none;
		        transform: none;
	}
	#premium .prm-plan__note {
		width: 100%;
		font-size: 0.65rem;
		line-height: 1.8;
	}
	#premium .prm-plan__copy {
		height: 82%;
		font-size: clamp(1.375rem, 0.382rem + 4.41vw, 2.5rem);
		letter-spacing: 0.1em;
	}
	#premium .prm-plan__copy.prm-plan__copy--video1, #premium .prm-plan__copy.prm-plan__copy--video2, #premium .prm-plan__copy.prm-plan__copy--video3 {
		left: 50%;
		bottom: 50%;
		-webkit-transform: translate(-50%, 50%);
		        transform: translate(-50%, 50%);
	}
	#premium .prm-plan__image-note {
		right: 5vw;
		bottom: 5vw;
	}
}
#premium .prm-movie {
	position: relative;
	padding-block: min(13.8vw, 180px) 0;
	z-index: 10;
	-webkit-transform: translateZ(0);
	        transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	        backface-visibility: hidden;
}
#premium .prm-movie__inner {
	width: 75%;
	max-width: 730px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: min(6.7vw, 88px);
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	margin-inline: auto;
}
#premium .prm-movie__img {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	width: 40%;
	cursor: pointer;
	-webkit-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease;
}
#premium .prm-movie__img:hover {
	opacity: 0.8;
}
#premium .prm-movie__img img {
	-webkit-filter: drop-shadow(-18px 40px 18px rgba(0, 0, 0, 0.2)) drop-shadow(-40px 80px 50px rgba(0, 0, 0, 0.18));
	        filter: drop-shadow(-18px 40px 18px rgba(0, 0, 0, 0.2)) drop-shadow(-40px 80px 50px rgba(0, 0, 0, 0.18));
}
#premium .prm-movie__btn {
	margin-top: min(3.7vw, 48px);
	position: relative;
	display: inline-block;
	width: 19rem;
	border: 1px solid;
	-o-border-image: linear-gradient(90deg, #FFF5C4 0%, #7B7260 100%) 1;
	   border-image: -webkit-gradient(linear, left top, right top, from(#FFF5C4), to(#7B7260)) 1;
	   border-image: linear-gradient(90deg, #FFF5C4 0%, #7B7260 100%) 1;
	background-size: 200% 100%;
}
#premium .prm-movie__btn button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 100%;
	height: 100%;
	padding: 18px 88px;
	background: transparent;
	color: #fff;
	font-family: "Shippori Mincho", serif;
	text-transform: uppercase;
	white-space: nowrap;
	font-size: clamp(0.938rem, 0.866rem + 0.15vw, 1rem);
	-webkit-transition: background-color 0.3s ease, color 0.3s ease;
	transition: background-color 0.3s ease, color 0.3s ease;
}
#premium .prm-movie__btn button:hover {
	background-color: rgba(255, 245, 196, 0.08);
}
#premium .movie-modal {
	padding: 0;
	border: none;
	background: transparent;
	overflow: visible;
	max-width: none;
	max-height: none;
}
#premium .movie-modal::-ms-backdrop {
	background: rgba(0, 0, 0, 0.75);
}
#premium .movie-modal::backdrop {
	background: rgba(0, 0, 0, 0.75);
}
#premium .movie-modal__movie {
	height: 80vh;
	aspect-ratio: 9/16;
}
#premium .movie-modal video {
	width: 100%;
	display: block;
	height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
}
#premium .movie-modal__inner {
	position: relative;
	overflow: visible;
}
#premium .movie-modal__close {
	position: absolute;
	top: -28px;
	right: -28px;
	display: -ms-grid;
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	aspect-ratio: 1;
	border: none;
	color: #fff;
	cursor: pointer;
}
#premium .movie-modal__close span {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 24px;
	height: 2px;
	background: #fff;
	-webkit-transform-origin: center;
	        transform-origin: center;
}
#premium .movie-modal__close span:first-child {
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	        transform: translate(-50%, -50%) rotate(45deg);
}
#premium .movie-modal__close span:last-child {
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	        transform: translate(-50%, -50%) rotate(-45deg);
}
@media screen and (max-width: 768px) {
	#premium .prm-movie {
		padding-block: min(16vw, 120px) 0;
	}
	#premium .prm-movie__inner {
		-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;
	}
	#premium .prm-movie__img {
		width: 75%;
	}
	#premium .prm-movie__btn {
		width: 100%;
	}
	#premium .movie-modal__movie {
		height: auto;
		width: 90vw;
		aspect-ratio: 9/16;
	}
	#premium .movie-modal__close {
		top: -32px;
		right: -14px;
		width: 44px;
		height: 44px;
	}
	#premium {
		/*@media screen end*/
	}
}
#premium .prm-qa {
	margin-top: min(16.6vw, 216px);
}
#premium .prm-qa__building {
	width: 100%;
}
#premium .prm-qa__inner {
	width: 95%;
	max-width: 1000px;
	margin-inline: auto;
	margin-top: max(-8.46vw, -110px);
	position: relative;
	z-index: 2;
}
#premium .prm-qa__list {
	margin-top: min(6.6vw, 86px);
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr min(3vw, 40px) 1fr min(3vw, 40px) 1fr;
	grid-template-columns: repeat(3, 1fr);
	gap: min(4.7vw, 62px) min(3vw, 40px);
}
#premium .prm-qa__list-ttl {
	margin-top: min(1.5vw, 20px);
	font-size: clamp(0.875rem, 0.588rem + 0.6vw, 1.125rem);
	line-height: 1.6;
	color: #C9A96E;
}
#premium .prm-qa__list-text {
	margin-top: min(1.15vw, 15px);
	letter-spacing: 0.05em;
	text-align: justify;
	color: #fff;
}
#premium .prm-qa__list-note {
	margin-top: min(1.5vw, 20px);
	color: #fff;
	font-size: 0.625rem;
}
#premium .prm-qa__list-imgbox {
	position: relative;
}
#premium .prm-qa__list-img {
	aspect-ratio: 287/179;
}
#premium .prm-qa__list-img img {
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}
#premium .prm-qa__list-imgNote {
	position: absolute;
	bottom: 4px;
	right: 4px;
	font-size: 0.625rem;
}
@media screen and (max-width: 768px) {
	#premium .prm-qa,
	#premium .prm-qa__inner {
		margin-top: 0;
	}
	#premium .prm-qa__list {
		-ms-grid-columns: (1fr)[2];
		grid-template-columns: repeat(2, 1fr);
	}
	#premium .prm-qa__list-ttl {
		font-size: clamp(0.844rem, 0.154rem + 3.064vw, 1.625rem);
	}
	#premium .prm-qa__list-text {
		font-size: clamp(0.875rem, 0.765rem + 0.49vw, 1rem);
	}
	#premium {
		/*@media screen end*/
	}
}
#premium .toilet-feature {
	margin-top: min(6.5vw, 84px);
	padding: min(4.1vw, 54px) min(5.2vw, 68px) min(5vw, 66px) min(6.1vw, 80px);
	background-image: url(../img/toilet_bg.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
#premium .toilet-feature__wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: min(4.3vw, 96px);
}
#premium .toilet-feature__main {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	width: 16%;
	text-align: center;
}
#premium .toilet-feature__main-image {
	position: relative;
}
#premium .toilet-feature__main-image figcaption {
	position: absolute;
	bottom: -10%;
	right: -15%;
	font-size: 0.625rem;
	color: #fff;
}
#premium .toilet-feature__main-image img {
	width: 100%;
	height: auto;
	display: block;
}
#premium .toilet-feature__main-title {
	margin-top: 24px;
	color: #fff;
	font-size: clamp(0.75rem, 0.463rem + 0.6vw, 1rem);
	letter-spacing: 0.03em;
}
#premium .toilet-feature__content {
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}
#premium .toilet-feature__content-inner {
	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;
}
#premium .toilet-feature__block--mt {
	margin-top: min(2.6vw, 34px);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: min(1.9vw, 25px);
}
#premium .toilet-feature__block--mt .toilet-feature__heading {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	width: 20%;
}
#premium .toilet-feature__heading {
	padding-block: 8px;
	background-color: #3E2E2A;
	color: #C9A96E;
	font-size: 0.875rem;
	display: -ms-grid;
	display: grid;
	place-items: center;
	text-align: center;
}
#premium .toilet-feature__block--counter {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	width: 41%;
}
#premium .toilet-feature__block--deodorize {
	width: 55%;
}
#premium .toilet-feature__wide-image {
	margin-top: min(0.9vw, 12px);
	position: relative;
}
#premium .toilet-feature__wide-image figcaption {
	position: absolute;
	bottom: 4px;
	right: 4px;
	font-size: 0.625rem;
	color: #fff;
}
#premium .toilet-feature__wide-image img {
	width: 100%;
	height: auto;
	display: block;
}
#premium .toilet-feature__deodorization {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 8px 1fr 8px 1fr 8px 1fr;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
	margin-top: min(0.9vw, 12px);
}
#premium .toilet-feature__deodorization-item {
	text-align: center;
}
#premium .toilet-feature__deodorization-item img {
	width: 100%;
	height: auto;
	display: block;
}
#premium .toilet-feature__deodorization-item p {
	margin-top: 10px;
	color: #fff;
	font-size: clamp(0.625rem, 0.41rem + 0.45vw, 0.813rem);
	line-height: 1.5;
	letter-spacing: 0.03em;
}
#premium .toilet-feature__clean {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr min(2vw, 26px) 1fr;
	grid-template-columns: repeat(2, 1fr);
	gap: min(0.9vw, 12px) min(2vw, 26px);
}
#premium .toilet-feature__clean-item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-column-gap: min(1.5vw, 20px);
	   -moz-column-gap: min(1.5vw, 20px);
	        column-gap: min(1.5vw, 20px);
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
#premium .toilet-feature__clean-image {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	width: 110px;
}
#premium .toilet-feature__clean-image img {
	width: 100%;
	height: auto;
	display: block;
}
#premium .toilet-feature__clean-text h3 {
	color: #C9A96E;
	font-size: clamp(0.688rem, 0.186rem + 1.04vw, 1.125rem);
	font-weight: 400;
}
#premium .toilet-feature__clean-text p {
	margin-top: min(0.9vw, 12px);
	color: #fff;
	font-size: 0.875rem;
	line-height: 1.2;
	letter-spacing: 0.08em;
	text-align: justify;
}
#premium .toilet-feature__eco {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-column-gap: min(1vw, 24px);
	   -moz-column-gap: min(1vw, 24px);
	        column-gap: min(1vw, 24px);
}
#premium .toilet-feature__eco-text {
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}
#premium .toilet-feature__eco-title {
	color: #C9A96E;
	font-family: YakuHanMP, "Noto Serif JP", serif;
	font-size: clamp(0.844rem, 0.593rem + 0.52vw, 1.063rem);
	line-height: 1.2;
	letter-spacing: 0.01em;
}
#premium .toilet-feature__eco-text p:last-child {
	margin-top: 20px;
	color: #fff;
	font-size: 0.875rem;
	line-height: 1.5;
	letter-spacing: 0.01em;
	text-align: justify;
}
#premium .toilet-feature__eco-box {
	width: 50%;
	margin-block: auto;
	padding: min(1.38vw, 18px) min(1.15vw, 15px);
	background-color: #fff;
	text-align: center;
}
#premium .toilet-feature__eco-box p:first-child {
	color: #1A41AD;
	font-size: clamp(0.938rem, 0.723rem + 0.45vw, 1.125rem);
}
#premium .toilet-feature__eco-box p:last-child {
	margin-top: min(1.5vw, 20px);
	color: #333;
	font-size: clamp(0.75rem, 0.535rem + 0.45vw, 0.938rem);
	line-height: 1.5;
	letter-spacing: 0.04em;
}
#premium .toilet-feature__note {
	color: #fff;
	font-size: 0.625rem;
	line-height: 1.8;
	text-align: justify;
	letter-spacing: 0.05em;
}
#premium .toilet-feature__note.toilet-feature__note1 {
	text-align: right;
}
#premium .toilet-feature__note.toilet-feature__note2 {
	margin-top: min(1.7vw, 22px);
}
#premium .toilet-feature__note.toilet-feature__note3 {
	text-align: right;
}
#premium .visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}
#premium .premium-cta {
	position: relative;
	margin-top: min(10vw, 130px);
}
#premium .premium-cta__sticky {
	position: relative;
	height: 100dvh;
	min-height: 640px;
	overflow: hidden;
	color: #C9A96E;
}
#premium .premium-cta__bg,
#premium .premium-cta__filter {
	position: absolute;
	inset: 0;
}
#premium .premium-cta__bg {
	background-image: url(../img/cta_bg.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	-webkit-transform: scale(1.03);
	        transform: scale(1.03);
}
#premium .premium-cta__filter {
	z-index: 1;
	background-color: #000;
	opacity: 0;
}
#premium .premium-cta__content {
	position: relative;
	z-index: 2;
	width: min(72vw, 1200px);
	height: 100%;
	margin-inline: auto;
}
#premium .premium-cta__title-wrap,
#premium .premium-cta__body {
	opacity: 0;
	-webkit-transform: translateY(40px);
	        transform: translateY(40px);
}
#premium .premium-cta__title-wrap {
	position: absolute;
	top: 16%;
	right: 0;
	text-align: center;
}
#premium .premium-cta__title {
	font-family: YakuHanMP, "Shippori Mincho", "Noto Serif JP", serif;
	font-size: clamp(4rem, 6.3vw, 6.875rem);
	line-height: 1;
	letter-spacing: 0.08em;
}
#premium .premium-cta__en {
	margin-top: min(2.2vw, 30px);
	font-family: "EB Garamond", serif;
	font-size: clamp(1rem, 1.4vw, 1.5rem);
	letter-spacing: 0.31em;
	text-transform: uppercase;
}
#premium .premium-cta__body {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	width: min(48vw, 400px);
	text-align: center;
}
#premium .premium-cta__sub {
	font-size: clamp(1rem, 1.35vw, 1.375rem);
	letter-spacing: 0.2em;
}
#premium .premium-cta__copy {
	margin-top: min(1.2vw, 16px);
	font-family: YakuHanMP, "Shippori Mincho", "Noto Serif JP", serif;
	font-size: clamp(1.75rem, 1.463rem + 0.6vw, 2rem);
	letter-spacing: 0.16em;
}
#premium .premium-cta__button {
	position: relative;
	display: block;
	width: 100%;
	margin-top: min(3vw, 42px);
	padding-block: min(1.45vw, 22px);
	background: -webkit-gradient(linear, left top, left bottom, from(#3E2E2A), to(#C9A96E));
	background: linear-gradient(180deg, #3E2E2A 0%, #C9A96E 100%);
	color: #fff;
	font-size: clamp(1rem, 1.15vw, 1.25rem);
	letter-spacing: 0.16em;
	line-height: 1.4;
	text-align: center;
	overflow: hidden;
}
#premium .premium-cta__button::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, #3E2E2A 0%, #C9A96E 100%);
	opacity: 0;
	-webkit-transition: opacity 0.55s ease;
	transition: opacity 0.55s ease;
}
#premium .premium-cta__button .premium-cta__button-label {
	position: relative;
	z-index: 1;
	display: block;
	margin-bottom: 4px;
	font-family: "EB Garamond", serif;
	font-size: 0.75rem;
	letter-spacing: 0.42em;
	color: rgba(240, 236, 227, 0.3);
	-webkit-transition: color 0.55s ease;
	transition: color 0.55s ease;
}
#premium .premium-cta__button .premium-cta__button-text {
	position: relative;
	z-index: 1;
}
#premium .premium-cta__button:hover::after {
	opacity: 1;
}
#premium .premium-cta__button:hover .premium-cta__button-label {
	color: rgba(240, 236, 227, 0.6);
}
@media screen and (max-width: 768px) {
	#premium .toilet-feature__wrapper {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	#premium .toilet-feature__main {
		width: 55%;
		margin-inline: auto;
	}
	#premium .toilet-feature__content-inner {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		gap: min(4.6vw, 35px);
	}
	#premium .toilet-feature__block--counter,
	#premium .toilet-feature__block--deodorize {
		width: 100%;
	}
	#premium .toilet-feature__block--mt {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	#premium .toilet-feature__block--mt .toilet-feature__heading {
		width: 100%;
	}
	#premium .toilet-feature__clean {
		-ms-grid-columns: 1fr;
		grid-template-columns: 1fr;
		row-gap: min(2.1vw, 16px);
	}
	#premium .toilet-feature__clean-text h3 {
		font-size: clamp(1rem, 0.559rem + 1.96vw, 1.5rem);
	}
	#premium .toilet-feature__clean-text p {
		margin-top: min(3vw, 23px);
	}
	#premium .toilet-feature__eco {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		gap: min(4.3vw, 32px);
	}
	#premium .toilet-feature__eco-title {
		font-size: clamp(1.125rem, 0.353rem + 3.43vw, 2rem);
	}
	#premium .toilet-feature__eco-box {
		width: 97%;
	}
	#premium .premium-cta {
		margin-top: min(18vw, 90px);
	}
	#premium .premium-cta__sticky {
		min-height: 560px;
	}
	#premium .premium-cta__bg {
		background-image: url(../img/cta_bg_sp.jpg);
		background-position: 58% center;
		-webkit-transform: scale(1.06);
		        transform: scale(1.06);
	}
	#premium .premium-cta__content {
		width: 86%;
	}
	#premium .premium-cta__title {
		font-size: clamp(3.5rem, 18vw, 5.25rem);
	}
	#premium .premium-cta__en {
		margin-top: 18px;
		font-size: clamp(0.875rem, 3.3vw, 1.125rem);
		letter-spacing: 0.3em;
	}
	#premium .premium-cta__body {
		top: 47%;
		left: 50%;
		width: min(86vw, 420px);
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
	#premium .premium-cta__sub {
		font-size: clamp(0.938rem, 3.6vw, 1.125rem);
	}
	#premium .premium-cta__copy {
		margin-top: 12px;
		font-size: clamp(1.5rem, 6vw, 2.25rem);
		letter-spacing: 0.1em;
	}
	#premium .premium-cta__button {
		margin-top: min(8vw, 60px);
		padding-block: min(2.5vw, 34px);
	}
	#premium {
		/*@media screen end*/
	}
}
#premium .note__list {
	position: relative;
	width: 95%;
	max-width: 1100px;
	margin-inline: auto;
	padding-block: min(4.6vw, 60px) min(14vw, 190px);
}
#premium .note__text {
	font-size: 0.625rem;
	color: #fff;
	line-height: 1.9;
	text-align: justify;
	letter-spacing: 0em;
}
@media screen and (max-width: 768px) {
	#premium {
		/*@media screen end*/
	}
}

#premium .movie-modal__movie {
	position: relative;
	background-color: #000;
}
#premium .movie-modal__movie iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* iOSのバウンススクロール時やリサイズ時のチラつきでデフォルトの白背景が露出するのを防ぐ */
html,
body.premium {
	background-color: #080806;
}
/*# sourceMappingURL=premium.css.map */