@charset "utf-8";


@font-face{
	font-family:"Volta W01 Regular";
	src:url("../common/font/volta/84cb270c-d85b-4d27-8c17-ff5308877d15.eot?#iefix");
	src:url("../common/font/volta/84cb270c-d85b-4d27-8c17-ff5308877d15.eot?#iefix") format("eot"),url("../common/font/volta/fd13c272-0931-4a2b-b4c5-5f6ae56166a3.woff2") format("woff2"),url("../common/font/volta/64536f75-1fb4-48f0-a4e0-3b74bc0a845f.woff") format("woff"),url("../common/font/volta/55347e02-1eee-4a24-9747-740dea2b2701.ttf") format("truetype");
}


/* @ Base Customize */
:root{
	--device-ratio: 1;
}
@media (max-width: 1023px){
	:root{
		--device-ratio: .9;
	}
}
@media (max-width: 768px){
	:root{
		--device-ratio: .8;
	}
}
.g-main {
	background-color: transparent;
}
.g-main > * > *{
	content-visibility: visible;
}

/* img */
img {
	max-width: 100%;
}

/* @ Animation */
.js-in:not(.js-in--active){
	visibility: hidden;
}
.js-in.js-in--active{
	animation: kf-jsin 600ms ease-out both;
}
.js-in--horizontal.js-in--active{
	animation: kf-jsin-horizontal 600ms ease-out both;
}

@keyframes kf-jsin{
	from{
		opacity: 0;
		transform: translateY(1rem);
	}
}
@keyframes kf-jsin-horizontal{
	from{
		opacity: 0;
		transform: translateX(1.875rem);
	}
}

/* rule */
.lp-stack > *{
	margin-block: 0;
}
.lp-stack > * + *{
	margin-top: calc(1.953125rem * var(--device-ratio));
}
.lp-stack--page > * + *{
	margin-top: calc(7.450580596923828rem * var(--device-ratio));
}
.lp-stack--page > :where(:is(.lp-ttl-page, hgroup) + *){
	margin-top: calc(3.75rem * var(--device-ratio));
}
.lp-stack--section > * + *{
	margin-top: calc(3.814697265625rem * var(--device-ratio));
}
.lp-stack--content > * + *{
	margin-top: calc(1.953125rem * var(--device-ratio));
}
.lp-stack--sentence > * + *{
	margin-top: 1rem;
}
.lp-stack--half-sentence > * + *{
	margin-top: .5rem;
}
.lp-stack--fit > * + *{
	margin-top: 0;
}
@media (max-width: 768px){
	.lp-stack--page > * + *{
		margin-top: calc(3.725rem * var(--device-ratio));
	}
	.lp-stack--section > * + *{
		margin-top: calc(2.5rem * var(--device-ratio));
	}
	.lp-stack--content > * + *{
		margin-top: calc(1.5rem * var(--device-ratio));
	}
}

.lp-stack > :where(:is(.for-pc, .for-sp):first-child + *){
	margin-top: 0;
}




/*++++++++++++++++++
  components
++++++++++++++++++*/

/* hr */
.lp-hr{
	border: 0;
	border-bottom: 1px solid;
}

/* list */
.lp-nolist{
	list-style: none;
	padding-left: 0;
}

/* image */
.lp-image{
	
}
.lp-image--center{
	display: block !important;
	margin-inline: auto;
}
.lp-image--circle{
	border-radius: 100vmax;
}

/* title */
.lp-ttl{
	line-height: 1.5;
	font-size: 1em;
	/* font-weight: bold; */
	font-weight: normal;
	font-feature-settings: "palt";
	font-family: "Volta W01 Regular", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.lp-ttl[data-ruby]::before{
	content: attr(data-ruby);
	font-size: 1.555em;
	font-weight: bold;
	display: block;
}
.lp-ttl-center{
	text-align: center;
}
.lp-ttl-lv1{ font-size: 2.44140625em; }
.lp-ttl-lv2{ font-size: 1.953125em; }
.lp-ttl-lv3{ font-size: 1.5625em; }
.lp-ttl-lv4{ font-size: 1.25em; }
.lp-ttl-lv5{ font-size: 1em; }
.lp-ttl-lv6{ font-size: .8em; }
.lp-ttl-lv1[data-ruby]{ font-size: 1.5625em; }
.lp-ttl-lv2[data-ruby]{ font-size: 1.25em; }
.lp-ttl-lv3[data-ruby]{ font-size: 1em; }
.lp-ttl-lv4[data-ruby]{ font-size: .8em; }
.lp-ttl-lv5[data-ruby]{ font-size: .64em; }
.lp-ttl-lv6[data-ruby]{ font-size: .512em; }
@media (max-width: 768px){
	.lp-ttl-lv1{ font-size: 1.5625em; }
	.lp-ttl-lv2{ font-size: 1.25em; }
	.lp-ttl-lv3{ font-size: 1.125em; }
	.lp-ttl-lv4{ font-size: 1em; }
	.lp-ttl-lv5{ font-size: .8em; }
	.lp-ttl-lv6{ font-size: 0.64em; }
	.lp-ttl-lv1[data-ruby]{ font-size: 1.125em; }
	.lp-ttl-lv2[data-ruby]{ font-size: 1em; }
	.lp-ttl-lv3[data-ruby]{ font-size: .8em; }
	.lp-ttl-lv4[data-ruby]{ font-size: 0.64em; }
	.lp-ttl-lv5[data-ruby]{ font-size: 0.512em; }
	.lp-ttl-lv6[data-ruby]{ font-size: 0.4096em; }
}
.lp-ttl--sideline{
	display: flex;
	align-items: center;
	gap: 0 1.875em;
}
.lp-ttl--sideline::after,
.lp-ttl--sideline::before{
	content: "";
	display: block;
	border-bottom: 1px solid;
	flex: 1 1 0;
	min-width: 1em;
}
.lp-ttl--frame{
	border: 1px solid;
	max-width: fit-content;
	padding: .5em .75em;
}

.lp-ttl-page{
	font-size: 3.2em;
	font-weight: normal;
	font-family:"Volta W01 Regular";
}
@media (max-width: 768px){
	.lp-ttl-page{
		font-size: 2.048em;
	}
}

/* note */
.note--right{
	text-align: right;
}

@media (max-width: 768px){
	.lp-sp-center{
		text-align: center;
	}
}

/* button */
.lp-btn{
	text-align: center;
	text-decoration: none;
	color: inherit;
	padding: 1em;
	box-sizing: border-box;
	
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: .5em 1em;
	
	transition: 666ms ease;
}
.lp-btn:hover{
	transition-duration: 120ms;
}
.lp-btn--reserve{
	line-height: 1.5;
	font-size: calc(1.25em * var(--device-ratio));
	
	color: white;
	background: #082f47;
	border-radius: 100em;
	padding: 1em 2em;
}
.lp-btn--reserve:hover{
	background: #2896ce;
}
.lp-btn--reserve::after{
	content: "";
	width: 2em;
	height: .5em;
	border-style: solid;
	border-width: 0 2px 1px 0;
	transform: skewX(45deg);
}
.lp-btn--xmas-dinner{
	text-align: left;
}

.lp-btn--restaurant{
	background: #c69c6d;
}
.lp-btn--restaurant:hover{
	background: color-mix(in srgb, #c69c6d, black 10%);
}

/* button list */
.lp-btnlist:where(ul, ol){
	list-style: none;
	padding-left: 0;
}
.lp-btnlist{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: calc(1.5em * var(--device-ratio)) calc(3.125em * var(--device-ratio));
}
.lp-btnlist > *{
	flex: 0 1 350px;
}
.lp-btnlist--long > *{
	flex: 0 1 700px;
}
@media (max-width: 768px){
	.lp-btnlist > *{
		flex: 1 1 100%;
	}
}
.lp-btnlist--for-column{
	flex-direction: column;
}
.lp-btnlist--for-column > *{
	flex: 1 1 0;
}

/* box */
.lp-box{
	box-sizing: border-box;
	padding: calc(3.75em * var(--device-ratio));
}
.lp-box--dinner{
	padding-block: calc(1.875em * var(--device-ratio));
}
@media (max-width: 768px){
	.lp-box--dinner{
		padding-inline: 0;
	}
}

/* list */
.list{
	margin-left: 1.25em;
	padding-left: 0;
}

/* event info */
.lp-event-info{
	min-width: 100%;
}
.lp-event-info tbody{
	display: grid;
	grid-template-columns: auto 1fr;
	row-gap: 1em;
}
.lp-event-info tr{
	display: grid;
	grid-template-columns: subgrid;
	grid-column: span 2;
	column-gap: 1em;
}
.lp-event-info th{
	border: 1px solid;
	padding: .5em 1em;
	
	display: grid;
	align-content: center;
}
.lp-event-info td{
	align-self: center;
}
@media (max-width: 768px){
	.lp-event-info tr{
		display: block;
	}
	.lp-event-info th{
		max-width: fit-content;
	}
}

/* menu price */
.lp-menu-price{
	display: flex;
	flex-wrap: wrap;
	gap: 0 1em;
	width: fit-content;
	min-width: min(320px, 100%);
}
.lp-menu-price::before{
	content: "";
	flex: 1 1 0;
	min-width: 1em;
	align-self: center;
	border-bottom: 2px dotted;
}
.lp-menu-price > :first-child{
	order: -1;
}
.lp-menu-price dd{
	margin-left: 0;
}

/* note list */
.lp-notelist{
	list-style: none;
	padding-left: 0;
}
.lp-notelist--centering{
	max-width: fit-content;
	margin-inline: auto;
}
.lp-notelist li{
	text-indent: -1em;
	padding-left: 1em;
}



/*++++++++++++++++++
  layout
++++++++++++++++++*/

/* cards */
.lp-cards:where(ul, ol){
	list-style: none;
	padding-left: 0;
}
.lp-cards{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr));
	gap: calc(3.75em * var(--device-ratio)) calc(1em * var(--device-ratio));
}

/* split */
.lp-split{
	display: flex;
	column-gap: calc(1.875em * var(--device-ratio));
	row-gap: calc(1.75em * var(--device-ratio));
}
.lp-split > *{
	flex: 1 1 0;
	align-content: center;
}
.lp-split--fit{
	column-gap: 0;
}
.lp-split--alternate{
	flex-direction: row-reverse;
}
@media (max-width: 768px){
	.lp-split{
		flex-direction: column;
	}
}



/*++++++++++++++++++
  contents
++++++++++++++++++*/



/* wrap */
.lp-wrap{
	font-family: "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	color: #000;
	color: #4d4d4d;
	background:
		url(./img/tree-8.png) repeat-x bottom,
		url(./img/smoky.jpg);
	
	position: relative;
	z-index: 0;
}



/* header */
.sitewidth--mv{
	max-width: calc(770px + 12%);
}
.lp-main-mv{
	background: url(./img/mv.webp) no-repeat bottom / cover;
	width: 100%;
	max-height: 100vh;
	min-height: 320px;
	aspect-ratio: 1536 / 879;
	
	display: flex;
	align-items: center;
	
	position: relative;
	z-index: 1;
}
.lp-main-mv > *{
	flex: 1 1;
}
.lp-main-mv__title{
	margin-bottom: 7.5vw;
	max-width: 60%;
}
@media (max-width: 1200px) and (min-width: 769px){
	.lp-main-mv__title{
		max-width: 50%;
	}
}
@media (max-width: 768px){
	.lp-main-mv__title{
		margin-top: 7.5vw;
		margin-bottom: 7.5vw;
		max-width: 50%;
	}
}



/* nav */
.lp-main-nav{
	/* background: linear-gradient(#19173e, #272758); */
	
	/* background: url(./img/smoky.jpg); */
}

.lp-main-frame{
	/* background:
		url(./img/tree-8.png) repeat-x bottom,
		linear-gradient(#272758, #1c1b33, #353577, #8aa1bf, #afd2dc); */
		
	/* background:
		url(./img/tree-8.png) repeat-x bottom,
		url(./img/smoky.jpg); */
	
	
	
		
	padding-block: calc(5.625em * var(--device-ratio));
	
	
	
	position: relative;
	z-index: 0;
}
@media (max-width: 768px){
	.lp-main-frame{
		background-size: auto 6.66em, auto;
	}
}
/* .lp-main-frame::before{
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: url(./img/star-8.png) center;
	animation: twinkle 160ms ease-in-out infinite alternate;
} */
@keyframes twinkle{
	from { opacity: 1; }
	to   { opacity: .666; }
}

.lp-main-frame__inner{
	border: 1px solid white;
	background: rgb(255 255 255 / .6);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
	padding: calc(3.75em * var(--device-ratio)) calc(7.5em * var(--device-ratio));
}
@media (max-width: 768px){
	.lp-main-frame__inner{
		padding: calc(3.75em * var(--device-ratio)) calc(1.875em * var(--device-ratio));
	}
}

/* slick custom */
.slick-slider .lp-main-frame__inner{
	box-sizing: border-box;
}
.slick-slider .slick-slide .lp-main-frame__inner img{
	display: revert;
}

/* index nav */
.sitewidth--main-nav{
	max-width: calc(1080px + 5%);
}
.lp-index-list:where(ul, ol){
	list-style: none;
	padding-inline: 0;
}
.lp-index-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-block: 0;
	gap: calc(1.875em * var(--device-ratio));
}
@media (max-width: 768px){
	.lp-index-list{
		gap: calc(.25em * var(--device-ratio));
	}
}
.lp-index-list > *{
	flex: 1 1 0;
}
.lp-index-list > :nth-child(odd){
	translate: 0 -23%;
}
.lp-index{
	display: flex;
	flex-direction: column;
	
	position: relative;
	z-index: 0;
	
	margin-top: 96px;
}
.lp-index > *{
	flex: 0 0 auto;
}
.lp-index::before{
	content: "";
	/* min-height: 96px; */
	background: url(./img/index-chain.png) repeat-y bottom;
	
	position: absolute;
	left: 0;
	right: 0;
	bottom: 100%;
}
/* .lp-index--afternoon::before		{ height: 45px; }
.lp-index--xmascake::before			{ height: 190px; }
.lp-index--event::before			{ height: 80px; }
.lp-index--dinner::before			{ height: 155px; }
.lp-index--eatin::before			{ height: 170px; }
@media (max-width: 768px){
	.lp-index--afternoon::before	{ height: 80px; }
	.lp-index--xmascake::before		{ height: 120px; }
	.lp-index--event::before		{ height: 90px; }
	.lp-index--dinner::before		{ height: 115px; }
	.lp-index--eatin::before		{ height: 120px; }
} */
.lp-index--afternoon::before		{ height: 100vh; }
.lp-index--xmascake::before			{ height: 100vh; }
.lp-index--event::before			{ height: 100vh; }
.lp-index--dinner::before			{ height: 100vh; }
.lp-index--eatin::before			{ height: 100vh; }
.lp-index__more{
	background: linear-gradient(to right bottom, #b9b6b1, #e9eaea);
	border-radius: 99em;
	display: block;
	align-self: center;
	padding: calc(6px * var(--device-ratio));
}
@media (max-width: 768px){
	.lp-index__more{
		padding: calc(3px * var(--device-ratio));
	}
}
.lp-index__more:where(:any-link:hover, .is-active){
	background: linear-gradient(to right bottom, #6f4b26, #b1954f, #eadcba);
}
.lp-index__more:not(:any-link){
	position: relative;
}
.lp-index__more:not(:any-link)::before{
	content: "coming soon";
	display: block;
	
	line-height: 1;
	font-size: min(1.25em, 3.75vw);
	font-weight: bold;
	font-family: serif;
	text-align: center;
	color: white;
	padding-top: 33.3%;
	
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: grid;
	place-items: center;
}
@media (max-width: 768px){
	.lp-index__more:not(:any-link)::before{
		padding-top: 0;
	}
}
.lp-index__thumb{
	border-radius: inherit;
}
.lp-index__thumb:where(.lp-index__more:not(:any-link) > *){
	filter: brightness(.4);
}
.lp-index__thumb:where(.lp-index__more:any-link:hover > *){
	animation: flash 333ms ease both;
}
@keyframes flash{
	from { filter: brightness(1.5); }
	to   { filter: brightness(1); }
}

/* arrange @ 251106 */
@media (max-width: 768px){
	.lp-index-list{
		gap: 3%;
		margin-top: 24px;
	}
	.lp-index{
		flex: 0 1 30%;
		margin-top: 0;
		translate: none !important;
		
	}
}



/* dinner */
.lp-dinner-split-image{
	height: 100%;
	object-fit: cover;
}



/*++++++++++ AFTERNOON TEA ++++++++++*/

.lp-image--afternoon-logo{
	max-width: 40%;
}
@media (max-width: 768px){
	.lp-image--afternoon-snowman{
		max-width: 30%;
	}
	.lp-image--afternoon-horse{
		max-width: 50%;
	}
}

/* AFT > Welcome Menu */
.lp-welcome-menu-list{
	padding-left: 0;
}

.lp-welcome-menu-list > * + *{
	margin-top: 2em;
}

.lp-welcome-menu{
	
}
.lp-welcome-menu__ph{
	container-type: inline-size;
}
.lp-welcome-menu__body{
	padding-block: 1.875em;
}
.lp-welcome-menu__image{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media (min-width: 769px){
	.lp-welcome-menu__image{
		--radius-a: 30cqw;
		--radius-b: 0;
		border-radius: 0 var(--radius-a, 0) 0 var(--radius-b, 0);
	}
	.lp-welcome-menu__image:where(.lp-welcome-menu__image--alternate){
		--radius-a: 0;
		--radius-b: 30cqw;
	}
}


/* AFT > Stand sweets */
.lp-cards--aft-standsweets{
	gap: calc(3.75em * var(--device-ratio));
}
@media (max-width: 768px){
	.lp-cards--aft-standsweets{
		grid-template-columns: repeat(2, 1fr);
		gap: 1.875em;
	}
}


/* AFT > Savory */
@media (min-width: 769px){
	.afternoon-savory__ph{
		aspect-ratio: 1;
		object-fit: cover;
	}
}
@media (max-width: 768px){
	.lp-cards--afternoon-savory{
		grid-template-columns: repeat(2, 1fr);
	}
	
	#aft-savory-main{
		order: -1;
		grid-column: span 2;
	}
}


/* Free Flow Drink */
.lp-free-flow-reserve{
	flex: 0 1 530px;
	
	display: grid;
	align-items: center;
}
.lp-free-flow-reserve > *{
	grid-area: 1 / 1;
}
.lp-image--free-flow-reserve{
	justify-self: end;
	/* translate: 50% 0; */
	translate: 70% 0;
}
.lp-btn--free-flow-reserve{
	background: #703843;
}



/*++++++++++ CHRISTMAS CAKE ++++++++++*/

.lp-box--spec{
	/* font-size: .75em; */
	border: 1px solid #666;
	max-width: fit-content;
	padding: .5em 1em;
}

.lp-ttl--christmascake-menu{
	text-decoration: underline;
}



/*++++++++++ LUNCH & DINNER ++++++++++*/
.lp-box-plan{
	outline: 3px solid white;
	outline-offset: -1em;
}
@media (max-width: 768px){
	.lp-box-plan{
		outline: 1px solid white;
		padding: 2em;
	}
}

.lp-box-plan--stay{
	background: #f7e5d2;
}

.lp-box-plan--concert{
	background: #9da9bb;
}
