@charset "utf-8";
@keyframes waves{0%{transform:scale(0);opacity:0;} 70%{transform:scale(1);opacity:0.8;} 100%{transform:scale(0.8);opacity:0;}}
@keyframes wavesTxt{0%{opacity:0;} 70%{opacity:1.0;} 100%{opacity:0;}}
#menulistCat .menulistTtl{text-align:center;}
#menulistCat .menulistCatList{
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
}
#menulistCat .menulistCatList li,
#menulistCat .menulistCatList li a{
	display:block;
	line-height:1.0;
}
#menulistCat .menulistCatList li{width:31.25%;}
#menulistCat .menulistCatList li:not(:nth-child(3n+1)){margin-left:3.125%;}
#menulistCat .menulistCatList li:nth-child(n+4){margin-top:3.125%;}
#menulistCat .menulistCatList li:nth-child(16){margin-left:17.1875%;}
#menulistCat .menulistCatList li a{border:1px solid #fff;}
#menulistCat .menulistCatList li a:hover{
	border-color:#ac2e44;
	background-color:#ac2e44;
	opacity:1;
}
#menulistCat .menulistCatList li a img{pointer-events:none;}
#menulistCat .menulistCatList li a:hover img{opacity:1;}
#menulistCat .lunchBnr{
	position:relative;
	width:100%;
	display:block;
  margin:0 auto;
	line-height:1.0;
  overflow:hidden;
}
#menulistCat .lunchBnr a{
	width:100%;
	height:100%;
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	position:absolute;
	top:0;
	left:0;
}
#menulistCat .lunchBnr a:hover{opacity:1;}
#menulistCat .lunchBnr a:before{
  content:"";
  display:block;
  width:100%;
  height:100%;
  position:absolute;
  top:0;
  left:0;
  transition:background-color 0.4s;
  z-index:0;
}
#menulistCat .lunchBnr a:hover:before{background-color:rgba(0,0,0,0.3);}
#menulistCat .lunchBnr a > *{
  display:block;
  position:relative;
  z-index:1;
}
#menulistCat .lunchBnr .bg img{
	transform:scale(1.0);
	transition:transform 0.4s;
	transform-origin:center center;
}
#menulistCat .lunchBnr a:hover img{opacity:1;}
#floatPriceNavi{
	position:fixed;
  bottom:0;
	z-index:99;
	transition:opacity 0.4s;
}
#floatPriceNavi.hide{
	opacity:0;
	pointer-events:none;
}
#floatPriceNavi ul{
	display:flex;
	justify-content:space-between;
}
#floatPriceNavi ul li,
#floatPriceNavi ul li a{display:block;}
#floatPriceNavi ul li a img{pointer-events:none;}
#menulistFg li{position:relative;}
#menulistFg li .lunchTtl{
	display:block;
	width:23.419%;
	margin:0 auto;
}
#menulistFg li .lunchCaut{
	display:block;
	text-align:right;
	line-height:1.6;
}
#menulistFg li a{display:block;}
#menulistFg li span{
	display:block;
	position:absolute;
	left:0;
}
#menulistFg li span:first-of-type{top:0;}
#menulistFg li.menuFg01 #zammai{top:46.86%;}
#menulistFg li.menuFg04 #hikarimono{top:72.24185%;}
#menulistFg li.menuFg05 #ebi{top:49.94%;}
#menulistFg li.menuFg06 #etc{top:48.21358%;}
#menulistFg li.menuFg09 #tempura{top:75.8539%;}
#menulistFg li.menuFg11 #wammono{top:78.916%;}
.popMenuFg,
.popPriceBox{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100vh;
	overflow:hidden;
	opacity:0;
	z-index:-1;
	transition:opacity 0.4s,z-index 0s ease 0.4s;
	pointer-events:none;
  cursor:pointer;
}
.popMenuFg{background-color:#000524;}
.popPriceBox{background-color:rgba(0,5,36,0.9);}
.openMenulist .popMenuFg,
.popMenuInner > li.show,
.openPop .popPriceBox,
.popPriceMenu.show{
	opacity:1;
	z-index:1002;
	transition:opacity 0.4s ease 0s,z-index 0s;
	pointer-events:all;
}
.popMenuInner > li,
.popPriceMenu{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100vh;
	color:#fff;
	overflow-x:hidden;
	overflow-y:auto;
	opacity:0;
	z-index:-1;
	transition:opacity 0.4s,z-index 0s ease 0.4s;
}
.popPriceMenu{background-color:#000524;}
.popMenuInner > li{
	display:flex;
	justify-content:center;
	align-content:center;
}
.popMenuInner > li img{
	width:90%;
	height:90%;
	margin:auto;
	object-fit:contain;
	object-position:center center;
}
.popMenuFg .closePopBtn,
.popPriceBox .closePopBtn{
	position:fixed;
	top:0;
	right:0;
	cursor:pointer;
	z-index:1004;
}
.popMenuFg > button[id^="popMenu"],
.popPriceBox > button[id^="popTk"]{
	position:fixed;
	display:none;
	cursor:pointer;
	z-index:-1;
}
.popMenuFg > button[id^="popMenu"] img,
.popPriceBox > button[id^="popTk"] img{
	background-color:rgba(255,255,255,0.5);
	border-radius:50%;
}
.openMenulist .popMenuFg > button[id^="popMenu"],
.openPop .popPriceBox > button[id^="popTk"]{
	display:block;
	z-index:1003;
}
.popMenuFg #popMenuNext img,
.popPriceBox #popTkNext img{
	transform-origin:center center;
	transform:rotate(180deg);
}
.popMenuFg .popMenuInner > li,
.popMenuFg .popMenuInner .zoomFg,
.popPriceMenu .popPriceInner{margin:0 auto;}
.popMenuFg .popMenuInner > li iframe{
	width:100%;
	height:100%;
	border:none;
	background-color:transparent;
	overflow: hidden;
}
.popPriceMenu .plateTtl{
	position:relative;
	z-index:1;
}
.popPriceMenu .plateTtlFg{
	position:relative;
	z-index:0;
}
.popPriceMenu .plateTtlFg:before{
	content:"";
	display:block;
	width:100%;
	height:0;
	padding-top:50%;
}
.popPriceMenu .plateTtlFg img{
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center center;
}
.popPriceMenu .plateSttl{
	display:block;
	border-top:1px solid #fff;
	border-bottom:1px solid #fff;
	line-height:1.0;
	text-align:center;
}
.popPriceMenu .plateList li{
	text-align:center;
	line-height:1.73;
}
.popPriceMenu .plateList li small{display:block;}
@media screen and (max-width:767.98px){
	#menulistCat .menulistTtl{
		font-size:4.189vw;
		letter-spacing:0.676vw;
	}
	#menulistCat .menulistCatList,
	#menulistCat .lunchBnr{margin-top:7.246vw;}
	#menulistCat .lunchBnr:hover .bg img{transform:scale(1.2);}
	#menulistCat .lunchBnrCatch{
    margin-top:6vw;
		font-size:3.6vw;
	}
	#menulistFg{margin:20vw -11vw 0;}
	#menulistFg li a{position:relative;}
	#menulistFg li a:before{
		content:"";
		width:100%;
		height:40px;
		position:absolute;
		left:0;
		top:calc(50% - 20px);
		background:url("../img/menulist/tap-icon.svg") no-repeat center center / contain;
		line-height:1.8;
		text-align:center;
		opacity:0;
		animation:2s ease-in 1s infinite forwards wavesTxt;
		z-index:2;
	}
	#menulistFg li a:after{
		content:"";
		position:absolute;
		left:calc(50% - 50px);
		top:calc(50% - 50px);
		width:100px;
		height:100px;
		border:1px solid #fff;
		opacity:0;
		background:radial-gradient(circle,rgba(0,0,0,0.2) 0%,rgba(125,125,125,0.4) 40%,rgba(255,255,255,0.5) 60%,rgba(255,255,255,1) 100%);
		transform:scale(0);
		border-radius:50%;
		transform-origin:center center;
		animation:2s ease-in 1s infinite forwards waves;
	}
	#menulistFg li.menuFg11{padding-bottom:16px;}
	#menulistFg li.menuFg12,
	#menulistFg li.menuFg13{margin-top:7.8125%;}
	#menulistFg li .lunchTtl{margin-bottom:2.604%;}
	#menulistFg li .lunchCaut{margin-top:1.3%;font-size:2.5134vw;}
	#floatPriceNavi{
		width:100%;
		left:0;
		background:url("../img/menulist/plate-bg.jpg") no-repeat center bottom / cover;
	}
	#floatPriceNavi ul{
		padding:12px 5.8%;
		margin-left:-1.47vw;
	}
	#floatPriceNavi ul li{width:11.1111%;}
	#floatPriceNavi ul li a{
		width:127%;/*115*/
		margin-right:-15%;
	}
	main > article > section.popPriceMenu:not([data-bg]):not([data-w]){width:100vw;}
	.popPriceMenu{
		width:78vw;
		left:11vw;
		padding-bottom:21.622vw;
	}
	.popMenuFg .closePopBtn,
	.popPriceBox .closePopBtn{
		width:14.892vw;
		padding:6.216vw 6.216vw 3vw 3vw;
	}
	.popMenuFg > button[id^="popMenu"],
	.popPriceBox > button[id^="popTk"]{
		width:calc(32px + 4vw);
		height:100vh;
		top:0;
	}
	.popMenuFg > button[id^="popMenu"] img,
	.popPriceBox > button[id^="popTk"] img{
		position:absolute;
		top:calc(50vh - 16px);
		width:32px;
	}
	.popMenuFg #popMenuPrev,
	.popPriceBox #popTkPrev{left:0;}
	.popMenuFg #popMenuPrev img,
	.popPriceBox #popTkPrev img{left:4vw;}
	.popMenuFg #popMenuNext,
	.popPriceBox #popTkNext{right:0;}
	.popMenuFg #popMenuNext img,
	.popPriceBox #popTkNext img{right:4vw;}
	.popPriceMenu .popPriceInner{
		width:83.3333%;
		padding-bottom:60px;
	}
	.popPriceMenu .plateTtl{margin-bottom:-7.703vw;}
	.popPriceMenu .plateTtl img{
		width:36.3929vw;
		height:36.3929vw;
		margin:-4vw 0 0 -8.2125vw;
	}
	.popPriceMenu .plateSttl{
		margin:5.405vw auto 5.135vw;
		padding:2.703vw 0;
		font-size:7.027vw;
		letter-spacing:0.676vw;
	}
	.popPriceMenu .plateList+.plateSttl{margin-top:18.108vw;}
	.popPriceMenu .plateList li{font-size:4.189vw;}
	.popPriceMenu .plateList li.betw{margin-top:1.6vw;}
	.popPriceMenu .plateList li small{font-size:3.449764706vw;}
	#orderCall{bottom:20vw;}
}
@media screen and (min-width:768px){
	#menulistCat .menulistTtl{
		font-size:3.0rem;
		letter-spacing:0.66rem;
	}
	#menulistCat .menulistCatList{
		width:77.617%;
		margin-top:16px;
	}
  #menulistCat .lunchBnr{
		width:77.617%;
		margin-top:43px;
	}
  #menulistCat .lunchBnr:hover .bg img{transform:scale(1.1);}
	#menulistCat .lunchBnrCatch{
		margin-top:30px;
		font-size:1.8rem;
	}
	#menulistFg{margin-top:118px;}
	#menulistFg li.menuFg12,
	#menulistFg li.menuFg13{margin-top:60px;}
	#menulistFg li .lunchTtl{margin-bottom:20px;}
	#menulistFg li .lunchCaut{margin-top:8px;font-size:1.5rem;}
	#floatPriceNavi{
		width:590px;
		padding:8px 0;
		background-color:rgba(0,5,36,0.8);
		transition:opacity 0.4s;
	}
	#floatPriceNavi li{padding:0 4px;}
	#floatPriceNavi.hide{
		opacity:0;
		visibility:hidden;
	}
	.popPriceMenu{
		width:568px;
		left:calc(50% - 284px);
		padding-bottom:124px;
	}
	.popMenuFg{background-color:rgba(0,5,36,0.9);}
	.popPriceMenu .popPriceInner{
		position:relative;
		width:100%;
		margin-top:58px;
		padding:45px;
		background-color:#000524;
	}
	.popMenuFg .closePopBtn,
	.popPriceBox .closePopBtn{
		width:32px;
		margin:36px 36px 0 0;
	}
	.popMenuFg > button[id^="popMenu"],
	.popPriceBox > button[id^="popTk"]{
		width:50px;
		top:calc(50% - 25px);
	}
	.popPriceBox #popTkPrev{left:calc(50% - 316px);}
	.popPriceBox #popTkNext{right:calc(50% - 312px);}
	.popPriceMenu .plateTtl{
		position:absolute;
		left:-8px;
		top:-68px;
		margin-bottom:-70px;
	}
	.popPriceMenu .plateTtl img{
		width:184px;
		height:184px;
		margin:0;
	}
	.popPriceMenu .plateSttl{
		margin:36px 50px 21px;
		padding:11px 0;
		font-size:2.9rem;
		letter-spacing:0.3rem;
	}
  .popPriceMenu .plateList{margin:0 50px;}
	.popPriceMenu .plateList+.plateSttl{margin-top:73px;}
	.popPriceMenu .plateList li{font-size:1.7rem;}
  .popPriceMenu .plateList li.betw{margin-top:10px;}
  .popPriceMenu .plateList li small{font-size:1.4rem;}
	.popMenuFg #popMenuPrev{left:40px;}
	.popMenuFg #popMenuNext{right:40px;}
}
@media screen and (min-width:1240px) and (max-width:1603.98px){
	#floatPriceNavi{right:calc(50vw - 456px);/*global left+width*/}
}
@media screen and (min-width:1604px) and (max-width:2003.98px){
	#floatPriceNavi{right:calc(50vw - 517px);/*global left+width*/}
}
@media screen and (min-width:2004px) and (max-width:2403.98px){
	#floatPriceNavi{right:calc(50vw - 548px);/*global left+width*/}
}
@media screen and (min-width:2400px){
	#floatPriceNavi{right:calc(50vw - 582px);/*global left+width*/}/***********580px  +2*/
}

