@charset "utf-8";

@font-face {
	font-family: number;
	src: local("Noto Sans JP");
	size-adjust:115%;
	unicode-range: U+0021-003F;
}

:root {
	--key-font-color:#333;
	--key-font-link-color:#666;
	--key-font-hover-color:#CAA846;
	--key-font-reverse-color:#fff;
	--form-key-color:#ccc;
	--common-font-sans-serif:-apple-system, BlinkMacSystemFont,"Noto Sans JP", sans-serif;
	--common-font-serif:'Sorts Mill Goudy', 'Noto Serif JP', "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	--form-common-fontsize:10px;
	--common-blankspace:calc(100vw*0.1);
	--common-margin:20px;
	--common-margin-x2:40px;
	--common-margin-x3:60px;
	--common-margin-x4:80px;
	--common-margin-x5:100px;
}

*{ margin:0; padding:0; border:0; }
*, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }

.lpwarap{
	font-family: YakuHanJP, -apple-system, BlinkMacSystemFont,"Noto Sans JP","游ゴシック", YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN", sans-serif;
	color: var(--key-font-color);
	background-color:#fff;
	position: relative;
	left: 0;
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/*  */

.number{
	font-family: "english","number";
}

h1,h2,h3,h4,h5,h6{ font-weight: 700;}

/*  */

/* */

.img-responsive { width: 100%; max-width: 100%; height: auto;}
.img-responsive-overwrite { margin: 0 auto; }

img{
	vertical-align:top;
}

figure { -webkit-margin-before: 0 !important; 	-webkit-margin-after: 0 !important; 	-webkit-margin-start: 0 !important; 	-webkit-margin-end: 0 !important; }

/* */

.br-sp{ display: block; }
.br-pc{ display: none; }
@media screen and (min-width: 900px){
	.br-sp{ display: none; }
	.br-pc{ display: block; }
}

/* section-01 */

#section-01{
	background-color: #333333;
	margin: 0;
	padding: var(--common-blankspace) 0;
}

.w955{
	width: 90%;
	max-width: 955px;
	margin: 0 auto;
	padding: 0;
}

.w468{
	width: 90%;
	max-width: 468px;
	margin: 0 auto;
	padding: 0;
}

.w780{
	width: 90%;
	max-width: 780px;
	margin: 0 auto;
	padding: 0;
}

.w100p{
	width: 100%;
	margin: 0;
	padding: 0;
}

.section-01-title{
	width: 90%;
	height: auto;
	margin: 0 auto var(--common-margin);
	padding: 0;
	color: #FFF;
	position: relative;
	display: block;
	font-size: 24px;
}

@media screen and (min-width: 900px){
	.section-01-title{
		width: calc(36px * 24);
		font-size: 36px;
	}
}


#section-01 ul{
	width: 90%;
	max-width: 955px;
	margin: 0 auto;
	padding: 0;
	display: flex;
	flex-direction: column;
	flex-wrap:wrap;
	justify-content:center;
	gap:var(--common-margin) 0;
}
#section-01 ul li{
	flex: 0 1 100%;
	list-style: none;
	text-align: center;
	border-radius: 20px;
	background-color: #FFF;
}

@media screen and (min-width: 900px){
	#section-01 ul{
		flex-direction: row;
		flex-wrap:nowrap;
		gap:0 var(--common-margin);
		align-items:stretch;
	}
	#section-01 ul li{
		flex: 0 1 33.33%;
	}
}

.section-01-box{
	margin: 0;
	padding: var(--common-margin);
}

.section-01-subtitle{
	font-size: 36px;
	color: #000;
	margin: 0 0 var(--common-margin);
	padding: 0;
}
.section-01-subtitle span{
	border-bottom:solid #FF0000 6px;
}
.section-01-number{
	font-size: 54px;
	line-height: 54px;
	margin: 0 0 calc(var(--common-margin)/2);
	padding: 0;
	font-weight: 900;
}
.section-01-number span{
	font-size: 36px;
}
.section-01-text{
	text-align: left;
	font-size: 16px;
}

@media screen and (min-width: 900px){
	.section-01-subtitle{
		font-size: 36px;
	}
}

/*  */

#section-02{
	margin: 0;
	padding: var(--common-blankspace) 0;
}

.section-02-title{
	width: 90%;
	max-width: 386px;
	margin: 0 auto var(--common-blankspace);
	padding: 0;
	font-size:24px;
}

#section-02 ul{
	width: 90%;
	max-width: 955px;
	margin: 0 auto;
	padding: 0;
	display: flex;
	flex-direction: column;
	flex-wrap:wrap;
	justify-content:center;
	gap:var(--common-margin) 0;
}

#section-02 li{
	flex: 0 1 100%;
	list-style: none;
	text-align: center;
	border: solid 1px #ccc;
	background-color: #FFF;
}

.section-02-inner{
	margin: 0;
	padding: var(--common-margin);
	text-align: left;
}

.section-02-subtitle{
	margin: 0 0 var(--common-margin);
	padding: 0;
	line-height: 28px;
	font-size: 14px;
}
.section-02-subtitle img{
	height: 28px;
	margin-right: 10px;
}
.section-02-text{
	font-size: 12px;
}

@media screen and (min-width: 900px){
	.section-02-title{
		font-size:36px;
	}
	#section-02 ul{
		flex-direction: row;
		flex-wrap:wrap;
		gap:var(--common-margin);
		align-items:stretch;
	}
	#section-02 ul li{
		flex: 0 1 calc(50% - var(--common-margin));
	}
	.section-02-subtitle{
		font-size: 18px;
	}
	.section-02-subtitle img{
		height: 44px;
		margin-right: 10px;
	}
}




/*  */

#section-03{
	margin: 0 0 var(--common-blankspace);
	padding: 0;
	background-color: #000;
}

.slide-wrap{
	position: relative;
}

.section-03-tile{
	width: 90%;
	max-width: 780px;
	margin:0 auto;
	padding: 0;
	position: absolute;
	top: var(--common-margin);
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	z-index: 999;
}

.slick-prev{
	left: 45px;
}
.slick-next {
    right: 45px;
}
.slick-prev, .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: 40px;
    height: 40px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
	z-index: 999;
}

.slick-prev:before, .slick-next:before {
    font-family: 'slick';
    font-size: 40px;
    line-height: 1;
    opacity: .75;
    color: red;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-prev:before {
    content: '←';
}
.slick-next:before {
    content: '→';
}

/*  */

.section-04-title{
	width: 90%;
	height: auto;
	margin: 0 auto var(--common-blankspace);
	padding: 0;
	color: #FFF;
	position: relative;
	display: block;
	font-size: 24px;
}

@media screen and (min-width: 900px){
	.section-04-title{
		width: 300px;
		font-size: 36px;
	}
}

.section-04-box{
	width: 90%;
	max-width: 630px;
	margin: 0 auto var(--common-blankspace);
	padding: 0;
}
.section-04-box picture{
	margin: 0 auto var(--common-margin);
	padding: 0;
}
.section-04-subtitle{
	position: relative;
	display: block;
	margin: var(--common-margin) auto;
	padding: 0;
	font-size: 16px;
	line-height: 20px;
	padding-left:50px;
	text-indent:-50px;
}
.section-04-subtitle::before{
	width: 40px;
	height: 18px;
	margin: 0 10px 0 0;
	content: "";
	background: url("../img/section-04-point.png") no-repeat 0 0 / cover;
	position:relative;
	display: inline-block;
	bottom: -20px;
	z-index: 2;
}
.section-04-subtitle::after{
	content: "";
	width: 100%;
	left: 0;
	bottom: -15px;
	border:solid  #000 3px;
	position: absolute;
	display: block;
}
.section-04-subtitle span{
	color: #FF0000;
}
.section-04-text{
	font-size: 16px;
	padding: var(--common-margin) 0;
}
@media screen and (min-width: 900px){
	.section-04-subtitle{
		font-size: 22px;
		line-height: 27px;
		padding-left:75px;
		text-indent:-75px;
	}
	.section-04-subtitle::before{
		width: 65px;
		height: 30px;
		bottom: -10px;
	}
}

/*  */

#section-05{
	background-color: #333333;
	color: #fff;
	margin: 0;
	padding: var(--common-blankspace) 0;
}

.section-05-title{
	text-align: center;
	font-size: 24px;
}

.section-05-body,
.section-05-body2{
		width: 90%;
	max-width: 955px;
	margin: 0 auto;
	padding:0 0 calc(var(--common-blankspace)/2);
}

.section-05-body{
	margin-bottom:var(--common-margin);
	padding: calc(var(--common-blankspace)/2) 0;
	background-color: #555;
	position: relative;
}

.section-05-enterbtn{
	font-size: 14px;
	font-weight: 700;
	background-color: #FF7228;
	display: inline-block;
	writing-mode: vertical-rl;
	text-orientation: upright;
	font-feature-settings: initial;
	position: absolute;
	right: -24px;
	top: 14px;
}

.section-05-enterbtn a{
	color: #fff;
	display: block;
	
	padding: var(--common-margin) calc(var(--common-margin)/2);
}

.section-05-enterbtn a:hover{
	text-decoration: none;
	background-color: #000;
	color:#fff;;
}

.section-05-enterbtn a img{
	width: 14px;
}

.section-05-subtitle{
	text-align: center;
	line-height: 22px;
	margin: 0 auto var(--common-margin);
	font-size: 18px;
}

@media screen and (min-width: 900px){
	.section-05-title{
		font-size: 36px;
	}
	.section-05-enterbtn{
		right: 0;
		top: 0;
	}
	.section-05-subtitle{
		font-size: 24px;
		line-height: 34px;
	}
}

.section-05-wrap{
	width: 90%;
	max-width: 792px;
	margin: 0 auto var(--common-margin);
	display: flex;
	flex-direction: column;
	flex-wrap:wrap;
	gap:var(--common-margin) 0;
}

.section-05-wrap li{
	flex: 0 1 100%;
	list-style: none;
	border-bottom:solid 1px #ccc ;
}

.section-05-wrap li:last-child{
	border-bottom:none;
}

.section-05-subsubtitle,
.section-05-subsubtitle2{
	background-color: #000;
	border-radius: 20px 20px 0 0;
	padding: var(--common-margin);
	font-size: 24px;
	line-height:24px;
	text-align: center;
	font-weight: 700;
}
.section-05-subsubtitle2{
	background-color: #C70000;
}

.section-05-wrap li ol{
	width: 100%;
}
.section-05-wrap li ol li{
	width: 100%;
	display: flex;
	flex-direction: column;
	flex-wrap:wrap;
	align-items:flex-end;
	list-style: none;
	background-color: #fff;
	color: #000;
	font-weight: 700;
}

.section-05-wrap li ol li div{
	width: 100%;
	flex: 0 1 100%;
	vertical-align:text-bottom;
}

.section-05-wrap li ol li div:first-child{
	text-align:center;
	font-size: 22px;
	padding: var(--common-margin) 0 0;
}
.section-05-wrap li ol li div:last-child{
	text-align:center;
	font-size: 36px;
	padding: 0 0 var(--common-margin) 0;
}

@media screen and (min-width: 900px){
	.section-05-subsubtitle,
	.section-05-subsubtitle2{
		font-size: 36px;
		line-height:36px;
	}
	.section-05-wrap{
		flex-direction: row;
		flex-wrap:nowrap;
		justify-content: space-between;
		gap:0 var(--common-margin);
		align-items:stretch;
	}
	.section-05-wrap li{
		width: calc(50% - var(--common-margin));
		flex: 0 1 calc(50% - var(--common-margin));
	}
	.section-05-wrap li ol li{
		flex-direction: row;
		flex-wrap:nowrap;
		justify-content:space-between;
		align-items:flex-end;
		gap:var(--common-margin) 0;
	}
	.section-05-wrap li ol li div{
		width: 50%;
		flex: 0 1 50%;
	}
	.section-05-wrap li ol li div:first-child{
		text-align:left;
		font-size: 24px;
		padding: var(--common-margin) 0 var(--common-margin) var(--common-margin);
	}
	.section-05-wrap li ol li div:last-child{
		text-align: right;
		font-size: 36px;
		padding: var(--common-margin) var(--common-margin) var(--common-margin) 0;
	}
}

.section-05-wrap li ol li div.type2{
	font-size: 18px;
}

.f14{
	font-size: 14px;
	line-height: 14px;
	font-weight: 700;
}

.f12{
	font-size: 12px;
}

.red{
	color: #8D0000;
}



.section-05-memo{
	width: 90%;
	max-width: 792px;
	margin: 0 auto;
	font-size: 12px;
}


.section-05-item{
	width: 90%;
		max-width: 792px;
		margin: 0 auto;
		text-align: center;
}

@media screen and (min-width: 900px){
	.section-05-memo{
		width: 90%;
		max-width: 792px;
		margin: 0 auto;
		font-size: 14px;
	}
}

.plus-mark{
	text-align: center;
	margin-bottom:var(--common-margin);
}

.plus-mark img{
	width: 60px;
}

.member{
	position: relative;
}

.member::before{
	content: "お一人様";
	display: inline-block;
	position: relative;
	margin-right: 10px;
	font-size: 14px;
}

@media screen and (min-width: 900px){
	.member::before{
		display: block;
		position: absolute;
		margin-right: 0;
		top:calc(var(--common-margin)/2);
		right:var(--common-margin);
	}
}
.section-05-food{
	background: url("../img/section-05-img-01.png") no-repeat 0 / cover;
}
.section-05-drink{
	background: url("../img/section-05-img-02.png") no-repeat 0 / cover;
}

.pdf-mark{
	text-align: center;
	margin-bottom:var(--common-margin);
}

/*  */

#section-06{
	margin: 0;
	padding: var(--common-blankspace) 0;
}

.section-06-title{
	width: 90%;
	max-width: 271px;
	margin: 0 auto var(--common-blankspace);
	padding: 0;
}

.section-06-q,
.section-06-a{
	position: relative;
	font-weight: 700;
	font-size: 18px;
	padding-left:18px;
	text-indent:-18px;
}

@media screen and (min-width: 1025px) {
	.section-06-q,
	.section-06-a{
		font-size: 24px;
		padding-left:24px;
		text-indent:-24px;
	}
}

.section-06-q::before,
.section-06-a::before{
	display: inline-block;
	margin-right: var(--common-margin);
}

.section-06-q{
	color: #E94D19;
}
.section-06-q::before{
	color: #E94D19;
	content: "Q";
}
.section-06-a{
	font-size: 16px;
	margin-bottom: var(--common-margin-x2);
	padding-bottom: var(--common-margin-x2);
	border-bottom: dotted 1px #ccc;
}
.section-06-a::before{
	color: #000;
	content: "A";
	font-size: 24px;
}

.tab {
    font-size: var(--common-font-size-s);
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0;
    margin-bottom: var(--common-margin)
}

.tab li {
    display: inline-block;
    list-style-type: none;
    background: #fff;
    border-top: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
    flex: 1;
    text-align: center;
    padding: calc(var(--common-margin)/2);
	font-size: 10px;
}

@media screen and (min-width: 1025px) {
    .tab {
        font-size:var(--common-font-size)
    }
	.tab li {
		font-size: 12px;
	}
}

.tab li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: calc(var(--common-margin)/2);
    font-weight: 700
}

.tab li a.active {
    color: #fff;
    font-weight: var(--common-font-weight);
    --b: 2em;
    --h: 1em;
    --p: 50%;
    padding: calc(var(--common-margin)/2);
    clip-path: polygon(0 100%,0 0,100% 0,100% 100%,min(100%,var(--p) + var(--b)/2) 100%, var(--p) calc(100% + var(--h)), max(0% ,var(--p) - var(--b)/2) 100%);
    border-image: fill 0//var(--h) conic-gradient(#eb6700 0 0)
}

#qatab .tab {
    font-size: var(--common-font-size-s);
    display: flex;
    justify-content: space-between;
    margin-bottom: var(--common-blankspace);
    position: relative
}

@media screen and (min-width: 1025px) {
    #qatab .tab {
        font-size:var(--common-font-size);
        margin-bottom: calc(var(--common-blankspace)/2)
    }
}

#qatab .tab li {
    display: inline-block;
    list-style-type: none;
    flex: 1;
    text-align: center;
    background-color: transparent
}

#qatab .tab li a {
    display: block;
    width: 100%;
    height: 100%
}

#qatab .tab li a.active {
    font-weight: 700;
    background-color: transparent
}

.global-nav--bar {
    position: absolute;
    display: block;
    bottom: 0;
    left: 0;
    width: 33%;
    height: 5px;
    background: #999;
    -webkit-transition: all .5s;
    transition: all .5s;
    z-index: -1
}

#qatab .tab li:nth-child(1):hover~.global-nav--bar,#qatab .tab li:nth-child(1).active~.global-nav--bar {
    left: 0
}

#qatab .tab li:nth-child(2):hover~.global-nav--bar,#qatab .tab li:nth-child(2).active~.global-nav--bar {
    left: 33%
}

#qatab .tab li:nth-child(3):hover~.global-nav--bar,#qatab .tab li:nth-child(3).active~.global-nav--bar {
    left: 66%
}

.tab-area {
    display: none;
}





/*  */

.btn-box{
	margin: 0;
	padding: var(--common-margin) 0;
	border-top: solid #8D0000 5px;
	border-bottom: solid #8D0000 5px;
	background-image: repeating-linear-gradient(45deg, #020000, #020000 30px, #0d0a0a 30px, #0d0a0a 60px, #131111 60px, #131111 90px);
}

.btn-box ul{
	width: 60%;
	max-width: 955px;
	margin: 0 auto;
	padding: 0;
	display: flex;
	flex-direction: column;
	flex-wrap:wrap;
	justify-content:center;
	align-items:center;
	gap:var(--common-margin) 0;
}

.btn-box ul li{
	flex: 0 1 100%;
	list-style: none;
	text-align: center;
}

@media screen and (min-width: 900px){
	.btn-box ul{
		flex-direction: row;
		flex-wrap:nowrap;
		justify-content:center;
		align-items:center;
		gap:0 var(--common-margin);
	}
	.btn-box ul li{
		flex: 0 1 33.33%;
	}
}

.btn-box ul li a{
	display: block;
}

.btn-box ul li a img{
	width: 100%; max-width: 100%; height: auto;
}


