@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@400;500;700;900&family=Jost:ital,wght@0,100..900;1,100..900&display=swap');

/* CSS Document */


/* 
------------------------------------------------------------------------------------------------------------------------
Set out
------------------------------------------------------------------------------------------------------------------------
*/

*:not(select):not(input), *:before, *:after {
    margin: 0;
    padding: 0;
	border: 0;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
html, body {
	width:100%;
	margin:0;
	padding:0;
	overflow-x:clip;
}
body {
	font-size:18px;
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
	line-height:1.6;
	font-weight: 400;
	color:#2F1F09;
	background-color: #fff;
	-webkit-text-size-adjust: 100%;
	text-align: justify;
}

.clearfix:after {
    content:"";
    display:block;
    clear:both;
}
.clear {
	clear:both;
}

li {
	list-style-type:none;
}
img {
	max-width:100%;
	height: auto;
	margin:0;
	padding:0;
	vertical-align:bottom;
	transition:.3s;
}
a {
	text-decoration:none;
	color:#000;
	transition:.3s;
}
a:hover {
	opacity:0.8;
	text-decoration:border;
	transition:.3s;
	color:#006EAD;
}
a.bt_blue {
	text-decoration:underline;
	color:#006EAD;
	transition:.3s;
}
a.bt_blue:hover {
	opacity:0.8;
	text-decoration:border;
	transition:.3s;
	color:#27ACFF;
}
a:hover img{
	opacity:0.8;
	transition:.3s;
}
h1,h2,h3,h4,h5,h6 {
	font-weight:bold;
	letter-spacing:normal;
	text-align: center;
	font-family: 'Helvetica', 'Noto Sans JP';
}
h1 a:hover img {
	opacity:1;
}

h2 {
	font-size: 50px;
}

img {
	width:100%;
	height:auto;
}

.align {
	text-align:center!important;
}
.align_left {
	text-align:left!important;
}
.align_right {
	text-align:right!important;
}

.bold {
	font-weight:bold;
}
.font_s {
	font-size:12px;
}
p.cau {
	font-size:16px;
	font-weight: 300;
}
.mb0 {margin-bottom:0px!important;}

.mb10 {margin-bottom:10px!important;}

.mb15 {margin-bottom:15px!important;}
.mb20 {margin-bottom:20px!important;}
.mb30 {margin-bottom:30px!important;}
.mb50 {margin-bottom:50px!important;}
.mb60 {margin-bottom:60px!important;}
.mb70 {margin-bottom:70px!important;}
.mb80 {margin-bottom:80px!important;}
.mb100 {margin-bottom:100px!important;}
.mb200 {margin-bottom:200px!important;}
.pb30 {padding-bottom:30px!important;}
.pt30 {padding-top:30px!important;}
.pt50 {padding-top:50px!important;}

.in {display:none;}
.in2 {display:none;}

.fs12 {font-size:12px!important;}
.fs20 {font-size:20px!important;}
.lineheight3 {line-height: 3.0!important;}
.blue {
	color:#006EAD;
}

.w50 {width:50%!important;}
.w60 {width:60%!important;}
.w70 {width:70%!important;}
.w80 {width:80%!important;}
.w90 {width:90%!important;}

.doubleBox{
	width:100%;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

@media screen and (max-width:850px){
	body {
		font-size:16px;
	}
	p.cau {
		font-size:12px;
	}
	.in {display:block;}
	.out {display:none;}
}

@media screen and (min-width: 768px) {
	a[href^="tel:"] {
			pointer-events: none;
	}
}


/* 
------------------------------------------------------------------------------------------------------------------------
Layout 
------------------------------------------------------------------------------------------------------------------------
*/


.wrap {
	width:94%;
	margin-left:auto;
	margin-right:auto;
	box-sizing:content-box;
}
.wrap_m {
	width:90%;
	margin-left:auto;
	margin-right:auto;
	box-sizing:content-box;
}



/* 
------------------------------------------------------------------------------------------------------------------------
header
------------------------------------------------------------------------------------------------------------------------
*/
header{
	position: fixed;
	width: 100%;
	max-width:419px;
	background-color:#1F6256;
	top:0;
	left:50%;
	margin: 0 auto;
	transform: translateX(-50%);
	z-index: 1000;
}

@media screen and (max-width:850px){

	header {
		max-width: 850px;
	}

}

/* 
------------------------------------------------------------------------------------------------------------------------
Footer
------------------------------------------------------------------------------------------------------------------------
*/

footer {
	z-index: 2;
	color:#fff;
	font-size:14px;
}
footer div.foot_inner {
	position: relative;
	background-image: radial-gradient(circle at 50% 50%, #0c0c0b, #484848);
	margin-top:-30px;
	padding-top:80px;
	padding-bottom:60px;
	z-index: 2;
}
footer div.foot_inner p.ttl {
	text-align: center;
	margin-bottom:25px;
}
footer div.foot_inner p.ttl img {
	width:242px;
}
footer div.foot_inner .map {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
footer div.foot_inner p.shop {
	margin-top:25px;
}

footer div.foot_inner .map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
footer div.foot_inner p.logo {
	margin-top:35px;
}
footer div.foot_inner p.logo img {
	width:255px;
}
footer div.foot_inner p.train {
	margin-top:30px;
	font-weight: bold;
}
footer div.foot_inner p.time {
	margin-top:10px;
}
footer div.foot_inner p.time img {
	width:265px;
}
footer div.foot_inner p.address {
	margin-top:30px;
}
footer p.copyright {
	color:#1F6256;
	font-size:11px;
	text-align: center;
	padding: 4px;
	background-color: #FFF462;
}


@media screen and (max-width:850px){

	


}




/* 
------------------------------------------------------------------------------------------------------------------------
top
------------------------------------------------------------------------------------------------------------------------
*/

div.topban {
	width:100%;
	text-align: center;
	padding-bottom:50px;
	background:#FFF462;
}

div.mainPc {
	position: fixed;
	top:0;
	left:0;
	width:100%;
	height:100vh;
  background-color: #fff;
	background-image: url("../images/bg_main.webp");
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	z-index: 0;
}

div.mainPcBottom {
	position: absolute;
	bottom:0;
	left:0;
	width: 55vw;
	z-index: 0;
}

div.mainPcLeft {
	position: absolute;
	width: calc((100vw - 419px) / 2);
	z-index: 1000;
	top:50%;
	left:0;
	transform: translateY(-55%);
}

div.mainPcLeftInner {
	width:100%;
	margin: auto;
	text-align: center;
}
div.mainPcLeft p.menu img {
	width:32.185%;
	margin-bottom:30px;
}
div.mainPcLeft ul {
	font-size:1.3763vw;
	font-weight: 900;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width:27.408vw;
	margin: 0 auto 50px auto;
}
div.mainPcLeft ul li {
	margin: 4px 4px 18px 4px;
}
div.mainPcLeft ul li a {
	border-radius: 50px;
	border:1px solid #2F1F09;
	background-color:#fdf7b9;
	padding:4px 18px 6px 15px;
	transition: 0.3s;
	color:#2F1F09;
}
div.mainPcLeft ul li a:hover {
	opacity: 1;
	border:1px solid #1F6256;
	background-color:#1F6256;
	color:#fff;
}
div.mainPcLeft p.xplosion {
	text-align: center;
}
div.mainPcLeft p.xplosion img {
	width:21.289vw;
}



@media screen and (max-width:850px){

	div.mainPc{
		display: none;
	}

}

div.mainContent {
	position: relative;
	width:100%;
	max-width: 419px;
	margin: 0 auto 0 auto;
	z-index: 1;
	box-shadow: 0px 0px 10px 3px rgba(3,0,0,0.3);
}
div.mainContent div.mcopy {
	position: relative;
	background-image: url("../images/bg_catch.webp");
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: cover;
	padding-bottom: 90px;
	z-index: 1;
}
div.mcopy p.copy {
	font-size:23px;
	font-weight: 900;
	color: #1F6256;
	text-align: center;
	margin-bottom:45px;
}
div.mcopy p.copy strong {
	font-size:28px;
	font-weight: 900;
}
div.mcopy p.read {
	color: #1F6256;
	text-align: center;
	font-size:17px;
	line-height: 1.8;
}

div.mainMenu {
	position: relative;
	background-image: url("../images/bg_menu.webp");
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: cover;
	background-color: #EEEDE1;
	border-radius: 32px;
	padding:65px 0 50px 0;
	margin-top:-35px;
	z-index: 3;
}
div.mainMenu p.ttl {
	text-align: center;
}
div.mainMenu p.ttl img {
	max-width:194px;
}
div.mainMenu p.read {
	text-align: center;
	font-size: 11px;
	margin-top:20px;
}
div.mainMenu p.power_bowl {
	margin-top:60px;
}
div.mainMenu p.copy {
	margin-top:30px;
	font-size:20px;
	font-weight: 900;
	text-align: center;
}
div.mainMenu p.copy strong {
	font-size:23px;
	font-weight: 900;
}
div.mainMenu p.ex {
	margin-top:20px;
	text-align: center;
	font-size:18px;
	font-weight: 900;
}
div.mainMenu p.ex span {
	font-size:15px;
	font-weight: 900;
}
div.mainMenu p.protein {
	margin-top:20px;
}

div.menuBox {
	position:relative;
	padding-top:50px;
	height:auto;
}
div.menuBox div.menu_list {
	position: -webkit-sticky;
	position:sticky;
	top:75px;
	left:0;
	z-index: 10;
}
div.menuBox div.menu_list ul {
	font-size:16px;
	font-weight: 900;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width:100%;
}
div.menuBox div.menu_list ul li {
	margin: 4px 4px 20px 4px;
}
div.menuBox div.menu_list ul li:nth-child(1) {
	margin-left:50px;
}
div.menuBox div.menu_list ul li:nth-child(2) {
	margin-right:50px;
}
div.menuBox div.menu_list ul li a {
	border-radius: 50px;
	border:1px solid #2F1F09;
	background-color:#fdf7b9;
	padding:4px 18px 6px 15px;
	transition: 0.3s;
	color:#2F1F09;
}
div.menuBox div.menu_list ul a:hover {
	opacity: 1;
	border:1px solid #1F6256;
	background-color:#1F6256;
	color:#fff;
}
div.menuBox div.menu_list ul a.active {
	border:1px solid #1F6256;
	background-color:#1F6256;
	color:#fff;
}
div.menuBox div.menu_detail {
	margin-top:-80px;
	display: none;
	transition: 0.3s;
}
div.menuBox div.menu_detail.active {
	display: block;
	transition: 0.3s;
}

div.menuBox div.menu01 {
	position: relative;
}
div.menuBox div.menu01 p.deco01 {
	position: absolute;
	top:-165px;
	left:0;
	z-index: 2;
}
div.menuBox div.menu01 div.menu01_01 {
	background-image: url("../images/bg_menu01.webp");
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100% 100%;
	margin-top:25px;
	padding:30px 0 50px 0;
	position: relative;
}
div.menuBox div.menu01 div.menu01_01 p.deco02 {
	position: absolute;
	width:214px;
	bottom:-15px;
	right:0;
	z-index: 2;
}
div.menuBox div.menu01 .detail {
	position: relative;
	z-index: 5;
}
div.menuBox div.menu01 dl.menu01_01_01 {
	background-image: url("../images/box01_bg01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%;
}
div.menuBox div.menu01 dl.menu01_01_02 {
	background-image: url("../images/box01_deco02.webp");
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100%;
	margin-top:50px;
}
div.menuBox div.menu01 div.menu01_01 dl dt {
	padding-right:15px;
}
div.menuBox div.menu01 div.menu01_01 dl.menu01_01_02 dt {
	padding-right:0;
}
div.menuBox div.menu01 div.menu01_01 dl dd {
	position: relative;
	width:94%;
	margin: -70px auto 0 auto;
	background-color: #1F6256;
	border-radius: 20px;
	color:#fff;
	font-size:14px;
	padding:25px 15px;
}
div.menuBox div.menu01 div.menu01_01 dl dd p.number {
	position: absolute;
	text-align: right;
	top:-75px;
	right:-1px;
	width:130px;
}
div.menuBox div.menu01 div.menu01_01 dl dd p.number img {
	width:130px;
}
div.menuBox div.menu01 div.menu01_01 dl dd p.name {
	font-size:22px;
	font-weight: 900;
	margin-bottom:10px;
}
div.menuBox div.menu01 div.menu01_01 dl dd ul.list {
	font-size:15px;
	font-weight: 900;
	color: #1F6256;
	display: flex;
	flex-wrap: wrap;
	margin: 15px 0 20px 0;
}
div.menuBox div.menu01 div.menu01_01 dl dd ul.list::after {
    content: '';
    width: 100%;
}
div.menuBox div.menu01 div.menu01_01 dl dd ul.list li {
	margin-top:8px;
    margin-right:8px;
	border-radius: 50px;
	background-color: #D8E4D6;
	padding:6px 15px;
}
div.menuBox div.menu01 div.menu01_01 dl dd ul.list li:nth-child(n+3) {
    order: 1;
}
div.menuBox div.menu01 div.menu01_01 dl dd ul.price {
	font-weight: 700;
	font-family: "Jost", sans-serif;
	display: flex;
	justify-content: space-between;
	align-items:baseline;
}
div.menuBox div.menu01 div.menu01_01 dl dd ul.price li:first-child {
	font-size:48px;
	color:#fff;
}
div.menuBox div.menu01 div.menu01_01 dl dd ul.price li:first-child span {
	font-size:27px;
}
div.menuBox div.menu01 div.menu01_01 dl dd ul.price li:last-child {
	font-size:18px;
	color:#FFF462;
}
div.menuBox div.menu01 div.menu01_01 dl dd ul.price li:last-child span {
	font-size:25px;
	font-family: "Zen Kaku Gothic Antique", sans-serif;
}
div.menuBox div.menu01 div.menu01_01 dl dd ul.price li:last-child strong {
	font-size:35px;
}


div.menuBox div.menu01 div.menu01_02 {
	padding:30px 0;
	position: relative;
}
div.menuBox div.menu01 div.menu01_02 p.deco01 {
	position: absolute;
	width:148px;
	top:-40px;
	left:0;
	z-index: 2;
}

div.menuBox div.menu01 dl {
	background-size: 100%;
}
div.menuBox div.menu01 dl.menu01_02_02 {
	background-image: url("../images/menu_01_02_deco02.webp");
	background-repeat: no-repeat;
	background-position: top right;
	background-size: 40.266%;
	margin-top:50px;
}
div.menuBox div.menu01 div.menu01_02 dl dd {
	position: relative;
	width:94%;
	margin: -70px auto 0 auto;
	font-size:14px;
	padding:25px 15px;
}
div.menuBox div.menu01 div.menu01_02 dl dd p.number {
	position: absolute;
	text-align: right;
	top:-135px;
	right:-1px;
	width:130px;
}
div.menuBox div.menu01 div.menu01_02 dl dd p.number img {
	width:130px;
}
div.menuBox div.menu01 div.menu01_02 dl dd p.name {
	font-size:22px;
	font-weight: 900;
	margin-bottom:10px;
}
div.menuBox div.menu01 div.menu01_02 dl dd ul.list {
	font-size:15px;
	font-weight: 900;
	color: #1F6256;
	display: flex;
	flex-wrap: wrap;
	margin: 15px 0 20px 0;
}
div.menuBox div.menu01 div.menu01_02 dl dd ul.list::after {
    content: '';
    width: 100%;
}
div.menuBox div.menu01 div.menu01_02 dl dd ul.list li {
	margin-top:8px;
    margin-right:8px;
	border-radius: 50px;
	background-color: #D8E4D6;
	padding:6px 15px;
}
div.menuBox div.menu01 div.menu01_02 dl dd ul.list li:nth-child(n+3) {
    order: 1;
}
div.menuBox div.menu01 div.menu01_02 dl dd ul.price {
	font-weight: 700;
	font-family: "Jost", sans-serif;
	display: flex;
	justify-content: space-between;
	align-items:baseline;
}
div.menuBox div.menu01 div.menu01_02 dl dd ul.price li:nth-child(1) {
	font-size:48px;
	color:#1F6256;
}
div.menuBox div.menu01 div.menu01_02 dl dd ul.price li:nth-child(1) span {
	font-size:27px;
}
div.menuBox div.menu01 div.menu01_02 dl dd ul.price li:nth-child(2) {
	font-size:18px;
	color:#C84835;
}
div.menuBox div.menu01 div.menu01_02 dl dd ul.price li:nth-child(2) span {
	font-size:25px;
	font-family: "Zen Kaku Gothic Antique", sans-serif;
}
div.menuBox div.menu01 div.menu01_02 dl dd ul.price li:nth-child(2) strong {
	font-size:35px;
}



div.menuBox div.menu02 {
	position: relative;
	background-image: url("../images/bg_salad.webp");
	background-repeat: no-repeat;
	background-size: 100%;
}
div.menuBox div.menu02.menu_sand {
	background-image: url("../images/bg_sand.webp");
}
div.menuBox div.menu02.menu_soup {
	background-image: url("../images/bg_soup.webp");
}

div.menuBox div.menu02 div.menu02_02 {
	padding:30px 0;
	position: relative;
}
div.menuBox div.menu02 div.menu02_02 p.deco01 {
	position: absolute;
	width:148px;
	top:-40px;
	left:0;
	z-index: 2;
}

div.menuBox div.menu02 dl {
	background-size: 100%;
}
div.menuBox div.menu02 dl.menu02_02_02 {
	background-image: url("../images/menu_01_02_deco02.webp");
	background-repeat: no-repeat;
	background-position: top right;
	background-size: 40.266%;
	margin-top:50px;
}
div.menuBox div.menu02 div.menu02_02 dl dd {
	position: relative;
	width:94%;
	margin: -70px auto 0 auto;
	font-size:14px;
	padding:25px 15px;
}
div.menuBox div.menu02 div.menu02_02 dl dd p.number {
	position: absolute;
	text-align: right;
	top:-135px;
	right:-1px;
	width:130px;
}
div.menuBox div.menu02 div.menu02_02 dl dd p.number img {
	width:130px;
}
div.menuBox div.menu02 div.menu02_02 dl dd p.name {
	font-size:22px;
	font-weight: 900;
	margin-bottom:10px;
}
div.menuBox div.menu02 div.menu02_02 dl dd ul.list {
	font-size:15px;
	font-weight: 900;
	color: #1F6256;
	display: flex;
	flex-wrap: wrap;
	margin: 15px 0 20px 0;
}
div.menuBox div.menu02 div.menu02_02 dl dd ul.list::after {
    content: '';
    width: 100%;
}
div.menuBox div.menu02 div.menu02_02 dl dd ul.list li {
	margin-top:8px;
    margin-right:8px;
	border-radius: 50px;
	background-color: #D8E4D6;
	padding:6px 15px;
}
div.menuBox div.menu02 div.menu02_02 dl dd ul.list li:nth-child(n+3) {
    order: 1;
}
div.menuBox div.menu02 div.menu02_02 dl dd ul.price {
	font-weight: 700;
	font-family: "Jost", sans-serif;
	display: flex;
	justify-content: space-between;
	align-items:baseline;
}
div.menuBox div.menu02 div.menu02_02 dl dd ul.price li:nth-child(1) {
	font-size:48px;
	color:#1F6256;
}
div.menuBox div.menu02 div.menu02_02 dl dd ul.price li:nth-child(1) span {
	font-size:27px;
}
div.menuBox div.menu02 div.menu02_02 dl dd ul.price li:nth-child(2) {
	font-size:18px;
	color:#C84835;
}
div.menuBox div.menu02 div.menu02_02 dl dd ul.price li:nth-child(2) span {
	font-size:25px;
	font-family: "Zen Kaku Gothic Antique", sans-serif;
}
div.menuBox div.menu02 div.menu02_02 dl dd ul.price li:nth-child(2) strong {
	font-size:35px;
}


div.menuBox div.menu_topping {
	position: relative;
	background-image: url("../images/bg_topping.webp");
	background-repeat: no-repeat;
	background-size: 100%;
}
div.menuBox div.menu_topping dl + dl {
	margin-top:30px;
}
div.menuBox div.menu_topping dl dd ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
div.menuBox div.menu_topping dl dd ul li {
	width:48%;
	position: relative;
	margin-top: 15px;
}
div.menuBox div.menu_topping p.number {
	position: absolute;
	top:0;
	left:0;
	width:74px;
}
div.menuBox div.menu_topping p.name {
	font-size:20px;
	font-weight: 900;
}
div.menuBox div.menu_topping p.name span {
	font-size:16px;
	font-weight: 400;
}
div.menuBox div.menu_topping p.price {
	font-size:20px;
	font-weight: 700;
	font-family: "Jost", sans-serif;
	margin-top:5px;
}
div.menuBox div.menu_topping p.price span {
	font-size:20px;
	font-weight: 700;
	font-family: "Zen Kaku Gothic Antique", sans-serif;
}



div.nomiho {
	position:relative;
	background-image: linear-gradient(to right, transparent 0%, transparent 5%, #FFF462 5%, #FFF462 95%, transparent 95%, transparent 100%);
	padding-bottom:30px;
}
div.nomiho p.plus {
	position:absolute;
	top:-15.75px;
	left:50%;
	transform: translateX(-50%);
	width:31.5px;
}
div.nomiho p.nomiho_zu {
	padding:28px 6% 0 8%;
	margin:0 0 25px 0;
}

@keyframes infinity-scroll-left {
	from {
	transform: translateX(0);
	}
	to {
	transform: translateX(-100%);
	}
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
.scroll-infinity__list--left_sm {
  animation: infinity-scroll-left 40s infinite linear 0.5s both;
}
.scroll-infinity__item {
  width: calc(419px * 2);
}
.scroll-infinity__item>img {
  width: 100%;
}
.scroll-infinity__sm {
  width: 419px;
}
.scroll-infinity__sm>img {
  width: 100%;
}
@keyframes infinity-scroll-right {
	from {
	transform: translateX(-100%);
	}
	to {
	transform: translateX(0%);
	}
}
.scroll-infinity__list--right{
  animation :infinity-scroll-right 80s infinite linear 0.5s both;
}
.scroll-infinity__list--right_sm{
  animation :infinity-scroll-right 40s infinite linear 0.5s both;
}
div.scroll-infinity .bottom {
	margin-top:-20px;
}

@media screen and (max-width:850px){

	div.mainContent {
		position: relative;
		width:100%;
		max-width: 850px;
		margin: 0 auto 0 auto;
		z-index: 1;
		box-shadow: 0px 0px 0px 0px rgba(3,0,0,0.3);
	}
	div.menuBox div.menu_list {
		top:130px;
	}
	div.menuBox div.menu_list ul li:nth-child(1) {
		margin-left:4px;
	}
	div.menuBox div.menu_list ul li:nth-child(2) {
		margin-right:4px;
	}

}


@media screen and (max-width:490px){
	div.menuBox div.menu_list {
		top:75px;
	}

}

