@charset "utf-8";





/* ◆◆ Base Customize */
@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");
}

/* ◇ 高速表示なし (js-inとの喧嘩) */
.g-main > * > *{
	content-visibility: visible;
}





/* ◆ Wrapper */
.g-afternoon{
	font-family: "DNPShueiGoKinStd-L", "DNPShueiGoKinStd-B", "DNPShueiGoKinStd-M", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "メイリオ", Meiryo, Osaka, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #000;
	background: #fff;
	overflow: hidden;
}
.sitewidth--article{
	
}





/* ◆ Animation */
.js-in:not(.js-in--active){
	visibility: hidden;
}
.js-in.js-in--active{
	animation: kf-jsin 600ms ease-out both;
}

@keyframes kf-jsin{
	from{
		opacity: 0;
		transform: translateY(1rem);
	}
}





/* ◆ Components */

@media (max-width: 768px){
	.sp-left{
		text-align: left;
	}
	.lp-small{
		font-size: .75em;
		line-height: 1.5;
	}
}

/* ◇ Title */
.lp-title1{
	line-height: 1.33;
	font-size: 2.5em;
	font-weight: normal;
	font-family: "Volta W01 Regular", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	color: #f34e72;
	margin: 0 0 .66em;
}
.lp-title1__main{}
.lp-title1__ruby{
	font-size: .65em;
}

@media (max-width: 768px){
	.lp-title1{
		font-size: 2em;
	}
}



/* ◇ Button */
.lp-button{
	line-height: 1.33;
	text-align: center;
	text-decoration: none;
	
	display: block;
	position: relative;
	z-index: 0;
	
	padding: 1em;
	
	
	
	
}
.lp-button--reserve{
	font-size: 1.375em;
	color: #fff;
	background: #f34e72;
	box-sizing: border-box;
}
.lp-button--reserve::after,
.lp-button--reserve::before{
	position: absolute;
	top: 0;
	bottom: 0;
}
.lp-button--reserve::after{
	content: "〉";
	font-size: .875em;
	display: flex;
	align-items: center;
	right: .5em;
}
.lp-button--reserve::before{
	content: "";
	left: 1em;
	width: 1.5em;
	height: 1.5em;
	margin: auto 0;
	background: url(./img/icon-peach.png) no-repeat center / contain;
}
.lp-button--small{
	color: #666;
	display: inline-block;
	border: 1px solid;
}
.lp-button--small:hover{
	color: #fff;
	background: #b20b1c;
}



/* ◇ Link */
.lp-link{
	color: inherit;
}
.lp-link:hover{
	text-decoration: none;
}



/* ◇ Note */
.lp-right{
	text-align: right;
}





/* ◆ Header */
.lp-header{
	text-align: center;
	/* background: #fe6a8a; */
}
.lp-header__image{
	max-width: 100%;
}

@media (min-width: 769px){
	.lp-header{
		/* padding-top: 20px; */
	}
	.lp-header__logo{
		display: none;
	}
}
@media (max-width: 768px){
	.lp-header{
		/* height: calc(100vh - 50px - 1px); */
		/* min-height: 168.5333333333333vw; */
		overflow: hidden;
		box-sizing: border-box;
		
		position: relative;
		z-index: 0;
	}
	.lp-header__logo{
		position: absolute;
		
		top: 14%;
		left: 0;
		right: 0;
		
		width: 85%;
		margin: 0 auto;
		
	}
	.lp-header__image{
		width: 100%;
		/* height: 100%; */
		/* object-fit: cover; */
		/* object-position: center bottom; */
	}
}
/* @supports (-webkit-touch-callout: none) and (max-width: 768px){
	.lp-header{
		height: -webkit-fill-available;
	}
} */





/* ◆ Intro */
.lp-intro,
.sitewidth--intro{
	position: relative;
	z-index: 0;
}
.sitewidth--intro{
	max-width: calc(30rem + 5%);
}
.lp-intro{
	overflow: hidden;
	padding: 6rem 0;
	background: url(./img/intro-bg.jpg) no-repeat center / cover;
}



.lp-intro-title{
	line-height: 1.33;
	font-size: inherit;
	font-weight: normal;
	text-align: center;
}
.lp-intro-title__catch{
	font-size: .875em;
}
.lp-intro-title__name{
	font-size: 2.75em;
	font-weight: bold;
	font-family: "Volta W01 Regular", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	color: #f34e72;
}
.lp-intro-title__theme{
	font-size: 1.25em;
}
.lp-intro-reserve{
	text-align: center;
}
.lp-intro__period{
	font-size: 1.5em;
	margin: 0;
}
.lp-intro-desc > *{
	margin: 0;
}
lp-intro-desc > * + *{
	margin-top: 1rem;
}
@media (min-width: 769px){
	.lp-intro__ornament{
		position: absolute;
	}
	.lp-intro__ornament--1,
	.lp-intro__ornament--2{
		top: 16%;
		width: 19.875rem;
		max-width: 318px;
		
		/* width: 24.8125rem;
		max-width: 397px; */
	}
	.lp-intro__ornament--1{
		right: 95%;
	}
	.lp-intro__ornament--2{
		left: 95%;
	}
	.lp-intro__ornament--3{
		top: 80%;
		left: 160%;
		width: 20.3125rem;
		max-width: 325px;
	}
}
@media (max-width: 768px){
	.lp-intro-desc{
		padding: 1em;
		position: relative;
		z-index: 0;
	}
	.lp-intro-desc::before{
		content: "";
		position: absolute;
		z-index: -1;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: rgba(255,255,255,.6);
		filter: blur(.25rem);
	}
	.lp-intro__ornaments{
		display: flex;
		margin: 3em 0;
		position: absolute;
		z-index: -1;
		margin-left: -5%;
	}
	.lp-intro__ornaments > *{
		flex: 1 1 50%;
		width: 30%;
	}
	.lp-intro__ornaments > * + *{
		margin-left: 2em;
	}
	.lp-intro__ornament--3{
		display: none;
	}
}



/* ◆ Product */
.lp-product-wrap{}
.lp-product{
	list-style: none;
	margin: 0;
	padding: 0;
}
.lp-product__item{}
.lp-product__photo{
	width: 100%;
}
.lp-product-name{
	line-height: 1.33;
	font-size: 1.875em;
	font-weight: normal;
	color:  #15a7fb;
	/* position: relative;
	z-index: 0; */
	margin: 0 0 1.33em;
}
.lp-product-name__ornament{
	/* position: absolute;
	top: 0;
	left: 0;
	transform: translate(-60%, -60%); */
}
@media (min-width: 769px){
	.lp-product-name{
		display: flex;
		align-items: flex-end;
	}
	.lp-product-name__ornament{
		order: 1;
		margin-left: 1em;
	}
}
@media (max-width: 768px){
	.lp-product-name{
		display: flex;
		align-items: flex-end;
		justify-content: space-evenly;
	}
	.lp-product-name__ornament{
		order: 1;
		max-width: 2.5em;
		margin-left: 1em;
	}
}


@media (min-width: 769px){
	.lp-product__item{
		margin-top: 3em;
	}
	.lp-product__illust{
		max-width: 90%;
	}
	.lp-product-grid:nth-child(odd) .lp-product__illust{
		transform: translate(-55%, 40%);
	}
	.lp-product-grid:nth-child(even) .lp-product__illust{
		transform: translate(65%, 40%);
	}
}
@media (max-width: 1023px) and (min-width: 769px){
	.lp-product-grid:nth-child(odd) .lp-product__illust{
		transform: translate(-50%, 10%);
	}
	.lp-product-grid:nth-child(even) .lp-product__illust{
		transform: translate(60%, 10%);
	}
}
@media (max-width: 768px){
	.lp-product__item{
		margin-top: 3.5em;
	}
	.lp-product__photo,
	.lp-product__illust{
		flex: 0 0 auto;
	}
	.lp-product__photo{
		width: 100%;
	}
	.lp-product__illust{
		position: static;
		margin-bottom: -6em;
		width: 40%;
	}
}




/* ◇ Product Grid */
.lp-product-grid{}
.lp-product-grid__photo{
	position: relative;
	z-index: 0;
}
.lp-product-grid__photo::before{
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: url(./img/product-shadow.png) no-repeat center / 100% 100%;
	/* border-radius: .75rem; */
}
.lp-product-grid__body{}
.lp-product-grid .lp-product-grid__photo::before{
	transform: translate(1.25rem, 1.25rem);
}
@media (min-width: 769px){
	.lp-product-grid:nth-child(odd) .lp-product-grid__photo::before{
		transform: translate(-1.25rem, 1.25rem);
	}
}



@media (min-width: 769px){
	.lp-product-grid{
		display: flex;
		align-items: center;
	}
	.lp-product-grid__photo,
	.lp-product-grid__body{
		flex: 0 0 auto;
	}
	.lp-product-grid__photo{
		display: flex;
		flex-direction: column-reverse;
		width: 50%;
	}
	.lp-product-grid__body{
		width: 50%;
		flex: 1 1 auto;
	}
	
	.lp-product-grid:nth-child(odd) .lp-product-grid__photo{
		/* margin-left: 13.9%; */
		margin-right: 7%;
	}
	.lp-product-grid:nth-child(even) .lp-product-grid__photo{
		order: 1;
		margin-left: 7%;
		/* margin-right: 13.9%; */
	}
	
	.lp-product-grid__body{}
}
@media (max-width: 768px){
	.lp-product-grid{}
	.lp-product-grid__photo{
		text-align: center;
		margin-bottom: 5em;
	}
	.lp-product-grid__photo{
		display: flex;
		flex-direction: column-reverse;
	}
}




/* ◆ Present */
.lp-present-wrap{
	overflow: hidden;
}
.lp-present{
	background: #fcf2f2;
	border: .625em solid #fcf2f2;
	box-shadow: inset 0 0 0 1px #b20b1c;
}
.lp-present__photo{}

@media (min-width: 769px){
	.lp-present{
		padding: 2em 3.5em;
	}
	.lp-present__photo{
		box-sizing: border-box;
		max-width: 80%;
   }
}
@media (max-width: 768px){
	.lp-present{
		padding: 1.875em;
	}
	.lp-present__photo{
		width: 65%;
	}
	.lp-title1--present{
		text-align: center;
	}
}



/* ◇ Present Grid */
.lp-present-grid{}
.lp-present-grid__photo{}
.lp-present-grid__body{}

@media (min-width: 769px){
	.lp-present-grid{
		display: flex;
	}
	.lp-present-grid__photo,
	.lp-present-grid__body{
		box-sizing: border-box;
		flex: 1 1 0%;
	}
	.lp-present-grid__photo{
		text-align: center;
		
		order: 1;
		display: flex;
		align-items: center;
		align-self: center;
		
		height: 0;
		max-width: 35%;
		margin: 0 0 0 6%;
	}
	.lp-present-grid__body{}
}
@media (max-width: 768px){
	.lp-present-grid{}
	.lp-present-grid__photo{
		text-align: center;
		margin-bottom: 1.875em;
	}
	.lp-present-grid__body{}
}






/* ◆ Gift */
.lp-gift{}
.lp-gift-mv{
	margin: 0 0 3.75em;
}

@media (max-width: 768px){
	.lp-gift-mv{
		margin-left: -5.96%;
		margin-right: -5.96%;
	}
}



/* ◇ Gift Gallery */
.lp-gift-gallery{
	list-style: none;
	margin: 0;
	padding: 0;
}
.lp-gift-gallery__item{}
.lp-gift-gallery__photo{
	width: 100%;
	margin: 0 0 1.5em;
}
.lp-gift-gallery__title{
	line-height: 1.33;
	font-size: 1.125em;
	font-weight: bold;
	text-align: center;
	
	margin: 0 0 .66em;
}

/* ◇ Slick Custom */
.lp-gift-gallery.slick-slider .slick-arrow{
	cursor: pointer;
	
	line-height: 1;
	font-size: 3em;
	color: #ccc;
	
	background: inherit;
	border: inherit;
	
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 50%;
	padding: 0 0 0 0;
}
.lp-gift-gallery.slick-slider .slick-prev{
	right: 100%;
}
.lp-gift-gallery.slick-slider .slick-next{
	left: 100%;
}

@media (min-width: 769px){
	.lp-gift-gallery.slick-slider{
		margin-left: -1em;
		margin-right: -1em;
	}
	.lp-gift-gallery.slick-slider .slick-slide > div{
		margin-left: 1em;
		margin-right: 1em;
		padding: 0 1em;
	}
	.lp-gift-gallery.slick-slider .slick-slide .lp-gift-gallery__photo{
		margin-left: -1em;
		margin-right: -1em;
		width: calc(100% + 2em);
	}
}
@media (max-width: 768px){
	.lp-gift-gallery.slick-slider .slick-arrow{
		top: 24vw;
		bottom: auto;
	}
	.lp-gift-gallery.slick-slider .slick-prev{
		right: 90%;
	}
	.lp-gift-gallery.slick-slider .slick-next{
		left: 90%;
	}
	.lp-gift-gallery.slick-slider .slick-slide > div{
		margin: 0 15%;
	}
}




/* ◇ Gift Menu */
.lp-gift-menu{
	list-style-type: disc;
	margin: 0 0 0 1.25em;
	padding: 0;
}
.lp-gift-menu__item{}











/* ◆ Plan */
.lp-plan{}
.lp-plan__header{
	text-align: center;
}
.lp-plan__contents{
	background: url(./img/plan-bg.jpg) no-repeat center / 100% 100%;
	border-style: solid;
	border-width: 1px 0;
	border-color: #d9d9d9 transparent transparent;
}
.lp-plan__inner{
	background: #fff;
}
@media (min-width: 769px){
	.lp-plan__inner{
		padding: 5.625rem;
	}
}
.lp-plan__label{
	line-height: 1.33;
	font-size: 1.25em;
	font-weight: bold;
	font-family: "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	text-align: center;
	color: #fff;
	background: #000;
	
	padding: .5em 1em;
}
.lp-plan__photo{
	box-sizing: border-box;
	width: 100%;
}
.lp-plan__header{}
.lp-title1--plan{
	font-size: 1.875em;
	text-align: left;
}
.lp-plan__desc{}
.lp-plan__spec{
	margin: 0 0 1.875em;
}

@media (min-width: 769px){
	.lp-plan__photo{
		height: 100%;
		object-fit: cover;
	}
	.lp-plan__label{
		position: absolute;
		top: -1em;
	}
	.lp-plan-list__item:nth-child(odd) .lp-plan__label{
		left: -1em;
	}
	.lp-plan-list__item:nth-child(even) .lp-plan__label{
		right: -1em;
	}
}
@media (max-width: 768px){
	.lp-plan__label{
		position: absolute;
		top: -1em;
		left: 1em;
	}
}



/* ◇ Plan Anchor */
.lp-plan-anchor{
	border-bottom: 1px solid #ccc;
	margin: 0 0 3.75em;
	padding: 0 0 1.875em;
}
.lp-nav__items{
	font-family: "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	color: #000;
	
	display: flex;
	justify-content: center;
	
	list-style: none;
	margin: 0;
	padding: 0;
}
.lp-nav__item{}
.lp-nav__item:not(:first-child)::before{
	content: "｜";
	margin: 0 .5em;
}
.lp-nav__more{
	color: inherit;
}
.lp-nav__more:not(:hover){
	text-decoration: inherit;
}

@media (min-width: 769px){
	.lp-nav__items{
		font-size: 1.875em;
	}
}
@media (max-width: 768px){
	.lp-nav__items{
		font-size: 1.25em;
	}
}



/* ◇ Plan List */
.lp-plan-list{
	list-style: none;
	margin: 0;
	padding: 0;
}
.lp-plan-list__item{}
.lp-plan-list__item:not(:last-child){
	margin-bottom: 5.625em;
}



/* ◇ Plan Grid */
.lp-plan-grid{}
.lp-plan-grid__photo{
	position: relative;
	z-index: 0;
}
.lp-plan-grid__body{}

@media (min-width: 769px){
	.lp-plan-grid{
		display: flex;
	}
	.lp-plan-grid__photo,
	.lp-plan-grid__body{
		flex: 1 1 0%;
		
		/* 40 */
	}
	.lp-plan-grid__photo{}
	.lp-plan-grid:nth-child(odd) .lp-plan-grid__photo{
		margin-right: 3.8%;
	}
	.lp-plan-grid:nth-child(even) .lp-plan-grid__photo{
		order: 1;
		margin-left: 3.8%;
	}
	.lp-plan-grid__body{}
}
@media (max-width: 768px){
	.lp-plan-grid{}
	.lp-plan-grid__photo{
		margin: 0 -5.96% 1em;
	}
	.lp-plan-grid__body{}
}



/* ◇ Plan Spec Table */
.lp-spec{
	border-spacing: 0 1em;
}
.lp-spec__head,
.lp-spec__body{
	vertical-align: middle;
}
.lp-spec__head{
	line-height: 1.33;
	font-size: 1.125em;
	font-weight: normal;
	text-align: center;
	white-space: nowrap;
	
	color: #fff;
	background: #f9a6b8;
	
	padding: .5em 1em;
}
.lp-spec__body{
	padding-left: 1em;
}

@media (max-width: 768px){
	.lp-spec{
		font-size: .875em;
	}
}



/* ◇ Plan Nav */
.lp-plan-list-nav{}
.lp-nav{
	list-style: none;
	margin: 0;
	padding: 0;
}
.lp-nav__item{}





/* ◆ Term */
.lp-term{
	margin: 3.75em 0;
}
.lp-term__title{
	line-height: 1.33;
	font-size: 1.25em;
	font-weight: normal;
	border-bottom: 1px solid #b20b1c;
	
	margin: 0 0 .66em;
	padding: 0 0 .33em;
}
.lp-term__note{}



/* @ Drink Menu */
.lp-drink{}
.lp-drink > .sitewidth{
	position: relative;
	z-index: 0;
}
.lp-drink-frame{
	position: relative;
	z-index: 0;
	border: solid;
	border-width: 0 1px;
	border-image: linear-gradient(currentcolor 20%, transparent 20%, transparent 80%, currentcolor 80%) 1;
	padding: 3.75rem;
}
.lp-drink-frame::after,
.lp-drink-frame::before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	border: solid;
	border-width: 1px 0 0;
	border-image: linear-gradient(90deg, currentcolor 20%, transparent 20%, transparent 80%, currentcolor 80%) 1;
}
.lp-drink-frame::after{
	top: 0;
}
.lp-drink-frame::before{
	bottom: 0;
}
.lp-drink__ornament{
	
}
.lp-drink__title{
	line-height: 1.33;
	font-size: 1.375em;
	margin: 0 0 2.75rem;
}
.lp-drink__list{
	font-size: .875em;
	margin: 0;
	padding: 0;
}
.lp-drink__item{
	margin-left: 1.25em;
}
@media (min-width: 769px){
	.lp-drink__list{
		columns: 2 auto;
		column-gap: 3.75rem;
	}
	.lp-drink__item{
		page-break-inside: avoid;
	}
	.lp-drink__ornament{
		position: absolute;
		top: 0;
		right: 0;
		transform: translate(24%, -30%);
		
		width: 28.875em;
		max-width: 462px;
	}
}
@media (max-width: 768px){
	.lp-drink-frame{
		padding: 1.875rem;
	}
	.lp-drink__title{
		margin-bottom: 1em;
	}
	.lp-drink__ornament{
		width: 100%;
		margin-bottom: 3.75rem;
	}
}
