.pageBg{
 background: url(../img/honten/bg.png) left top;
 background-attachment: fixed;
}
.pageBg2,
.tabArea .tabBtn.active{
 background: #c26a56 !important;
}
.pageColor,
.pageColor a{
 color: #c26a56 !important;
}
.pageTtl{
 text-align: center;
 padding: 20px 50px;
}
.pageTtl>.inner{
 position: relative;
 display: inline-block;
}
.pageTtl>.inner:before{
 display: block;
 content: "";
 width: 208px;
 height: 38px;
 background: url(../img/ttlbg_r_black.png) no-repeat center center;
 background-size: 100% auto;
 position: absolute;
 right: -100px;
 top: -25px;
}
.pageTtl.white>.inner:before{
 background: url(../img/ttlbg_r_white.png) no-repeat center center;
 background-size: 100% auto;
}
.pageTtl>.inner:after{
 display: block;
 content: "";
 width: 208px;
 height: 38px;
 background: url(../img/ttlbg_l_black.png) no-repeat center center;
 background-size: 100% auto;
 position: absolute;
 left: -100px;
 bottom: -20px;
}
.pageTtl.white>.inner:after{
 background: url(../img/ttlbg_l_white.png) no-repeat center center;
 background-size: 100% auto;
}
.pageSttl1{
 position: relative;
}
.pageSttl1:before{
 display: block;
 content: "";
 width: 2em;
 height: 2em;
 position: absolute;
 left: -0.3em;
 top: -0.3em;
 background: url(../img/honten/sttl_bg.png) no-repeat left center;
 background-size: auto 100%;
}
.pageSttl1>span{
 position: relative;
}
.pageSttl2{
 position: relative;
}
.pageSttl2:before{
 display: block;
 content: "";
 width: 2em;
 height: 2em;
 position: absolute;
 left: -0.4em;
 top: -0.4em;
 background: url(../img/honten/sttl_bg2.png) no-repeat left center;
 background-size: auto 100%;
}
.pageSttl2>span{
 position: relative;
}
.pageSttl3{
 position: relative;
}
.pageSttl3:before{
 display: block;
 content: "";
 width: 100%;
 border-bottom: solid 1px #333;
 position: absolute;
 top: 50%;
}
.pageSttl3>span{
 position: relative;
}
.pageSttl3>span:before{
 display: block;
 content: "";
 width: 100%;
 height: 100%;
 background: #fff;
 position: absolute;
 left: 0px;
 top: 0px;
 padding-right: 10px;
}
.pageSttl3>span:after{
 display: block;
 content: "";
 width: 3em;
 height: 3em;
 position: absolute;
 left: -1em;
 top: -0.8em;
 background: url(../img/honten/sttl_bg3.png) no-repeat left center;
 background-size: auto 100%;
 z-index: 2;
}
.pageSttl3>span>span{
 position: relative;
 z-index: 3;
}
#sec_pagettl{
 background-color: #c26a56;
 position: relative;
}
#sec_pagettl:before{
 display: block;
 content: "";
 width: 70%;
 height: 100%;
 position: absolute;
 top: 0px;
 right: 0px;
 background: url(../img/honten/bg.png) left top;
}
#sec_pagettl .inner{
 position: relative;
 padding: 50px 0px 50px;
 background: url(../img/ttl_shape.png) no-repeat center bottom 10px;
 max-width: 1600px;
 margin-left: auto;
 margin-right: auto;
 background-size: contain;
}
#sec_osusume .maxWidth{
 position: relative;
 height: 1200px;
}
.kokura #sec_osusume .maxWidth,
.soba #sec_osusume .maxWidth,
.yume #sec_osusume .maxWidth,
.katsu #sec_osusume .maxWidth{
 position: relative;
 height: 1150px;
}
#sec_osusume .data{
 position: relative;
 width: 550px;
 height: 550px;
 margin-top: 150px;
 text-shadow: 0px 0px 1px #111,  0px 0px 2px #111, 0px 0px 3px #111 , 0px 0px 3px #111 ,  -1px -1px 4px #111;
}
.kokura #sec_osusume .data,
.soba #sec_osusume .data,
.yume #sec_osusume .data,
.katsu #sec_osusume .data{
 position: relative;
 margin-top: 100px;
}
.kokura #sec_osusume .img,
.soba #sec_osusume .img,
.yume #sec_osusume .img,
.katsu #sec_osusume .img{
 position: relative;
}
#sec_osusume .data:before{
 display: block;
 content: "";
 width: 550px;
 height: 550px;
 background-color: #1c1c1c;
 position: absolute;
 left: 0px;
 top: 0px;
 border-radius: 50%;
}
.kokura #sec_osusume .data:before{
 background: url(../img/kokura/detailbg.png) no-repeat bottom center;
 background-size: cover;
}
.soba #sec_osusume .data:before{
 background-image: url(../img/soba/detailbg.png);
 background-repeat: no-repeat;
 background-position: bottom 22% left 40%;
 background-size: 65% auto;
}
.yume #sec_osusume .data:before{
 background-image: url(../img/yume/detailbg.png);
 background-repeat: no-repeat;
 background-position: bottom 22% left 45%;
 background-size: 62% auto;
}
.katsu #sec_osusume .data:before{
 background-image: url(../img/katsu/detailbg.png);
 background-repeat: no-repeat;
 background-position: bottom 22% left 40%;
 background-size: 65% auto;
}

#sec_osusume .data .inner{
 position: relative;
 padding: 60px;
 z-index: 2;
}
#sec_osusume .imgPC{
 position: absolute;
 top: 150px;
 left: 5px;
 padding: 50px;
}
#sec_item{
 position: relative;
}
#sec_item:before{
 display: block;
 content: "";
 width: 100%;
 height: 150px;
 position: absolute;
 top:-148px;
 left: 0px;
 background: url(../img/pagesection.png);
 background-size: 100% 100%;
}
#sec_menulist .tabArea .tabBtns{
 width: 100%;
 overflow-x: auto;
 display: flex;
 align-items: flex-end;
}
#sec_menulist .tabArea .tabBtns::-webkit-scrollbar{
 width: 4px;
}
#sec_menulist .tabArea .tabBtns::-webkit-scrollbar-track{
 background: #e0e0e0;
}
#sec_menulist .tabArea .tabBtns::-webkit-scrollbar-thumb{
 background: #aaa;
 border:solid 1px #e0e0e0;
}
#sec_menulist .tabArea .tabBtn{
 background: #afada6;
 border-radius: 10px 10px 0px 0px;
 display: flex;
 align-items: center;
 /*padding: 10px 0px 10px 15px;*/
 padding: 10px 15px;
 min-width: 11em;
 min-height: 5em;
 margin-right: 10px;
 cursor: pointer;
 user-select: none;
}
#sec_menulist .tabArea .tabBtn.active{
 color: #fff;
 padding: 15px;
}
#sec_menulist .tabArea .tabData{
 display: none;
}
#sec_menulist .tabArea .tabData.active{
 display: block;
}
#sec_menulist .tabArea .tabData .menu{
 display: flex;
 justify-content: space-between;

 position: relative;
 margin-bottom: 10px;
 line-height: 1.2em;
}
#sec_menulist .tabArea .tabData .menu:before{
 display: block;
 content: "";
 width: 100%;
 position: absolute;
 top: 0.6em;
 margin-top: -1px;
 border-bottom: dotted 1px #333;
}
#sec_menulist .tabArea .tabData .menu p{
 background: #fff;
 position: relative;
}
#sec_menulist .tabArea .tabData .menu p:first-child{
 padding-right: 1em;
 max-width: 65%;
}
#sec_menulist .tabArea .tabData .menu p:last-child{
 padding-left: 1em;
}
#sec_news .newsList li{
 border-bottom: solid 1px #333;
}
#sec_news .newsList li a{
 display: block;
 padding: 20px 0px;
 transition: .5s;
}
#sec_news .newsList li a:hover{
 background: #eee;
}
#sec_news .newsList li a>p{
 display: inline-block;
}
#sec_news .newsList li a>p.date{
 width: 10em;
}
#sec_gallery .text{
 display: flex;
 justify-content: flex-start;
 padding: 0px 40px
}
#sec_gallery .text .inner{
 width: 140px;
}
#sec_gallery .text .inner h3{
 display: flex;
 justify-content: center;
}
#sec_gallery .text .inner .data{
 display: flex;
 justify-content: center;
}
#sec_access .list li h3{
 border-bottom: solid 1px #333;
 padding-bottom: 5px;
 margin-bottom: 5px;
}
#sec_access .list li{
 padding-bottom: 20px;
}
#sec_access .gmap iframe{
 width: 100%;
}


.telBtn{
 display: flex;
 width: 450px;
 border: solid 1px #c26a56;
 align-items: center;
 background: #c26a56;
 margin-left: auto;
 margin-right: auto;
}
.telBtn .icon{
 position: relative;
 padding: 20px 25px;
 background: #fff;
}
.telBtn .icon:before{
 display: block;
 content: "";
 position: absolute;
 right: -9px;
 border-left: 10px solid #fff;
 border-top: 20px solid transparent;
 border-bottom: 20px solid transparent;
 top: calc( 50% - 20px );
}
.telBtn .icon>span{
 display: flex;
 background: #c26a56;
 color: #fff;
 border-radius: 50%;
 width: 50px;
 height: 50px;
 justify-content: center;
 align-items: center;
}
.telBtn .number{
 width: 100%;
 text-align: center;
 color: #fff;
 letter-spacing: .2em;
}


/* 小倉 */
.kokura .pageColor,
.kokura .pageColor a{
 color: #92a368 !important;
}
.kokura .pageBg{
 background: url(../img/kokura/bg.png) left top;
 background-attachment: fixed;
}
.kokura #sec_pagettl:before{
 background: url(../img/kokura/bg.png) left top;
}
.kokura .pageBg2,
.kokura .tabArea .tabBtn.active{
 background: #92a368 !important;
}
.kokura #sec_pagettl{
 background-color: #92a368;
 position: relative;
}
.kokura .pageSttl1:before{
 background: url(../img/kokura/sttl_bg.png) no-repeat left center;
 background-size: auto 100%;
}
.kokura .pageSttl2:before{
 background: url(../img/kokura/sttl_bg2.png) no-repeat left center;
 background-size: auto 100%;
}
.kokura .pageSttl3>span:after{
 background: url(../img/kokura/sttl_bg3.png) no-repeat left center;
 background-size: auto 100%;
}
.kokura .telBtn{
 border: solid 1px #92a368;
 background: #92a368;
}
.kokura .telBtn .icon>span{
 background: #92a368;
}

/* そばのれん */
:root {
 --purple1: #725287;
 --purple2: #f2eef4;
 --purple3: #ddd5e2;
}
.fontSystem-ui{
 font-family: system-ui;
}
.soba .pageColor,
.soba .pageColor a{
 color: var(--purple1) !important;
}
.soba .pageColorbg{
 background: var(--purple1);
}
.soba .pageColor2,
.soba .pageColor2 a{
 color: #7a6a84 !important;
}
.soba .pageBg{
 background: url(../img/soba/bg2.png) left top;
 background-attachment: fixed;
}
.soba #sec_pagettl:before{
 background: none;
}
.soba #sec_pagettl .inner{
 background: none;
}
.soba h1{
 display: flex;
 align-items: baseline;
 flex-wrap: wrap;
 gap: 10px;
 color: var(--purple1);
}
.soba h1 span{
 font-size: 1.625rem;
 margin-left: 15px;
}
.soba .pageTtl2{
 color: var(--purple1);
 font-size: 2rem;
 line-height: 1.3125em;
 background-color: var(--purple2);
 padding: .4em 0;
 margin-top: -80px;
}
.soba .pageBg2,
.soba .tabArea .tabBtn.active{
 background: #7a6a84 !important;
}
.soba #sec_pagettl{
 background-color: #fff;
 position: relative;
}
.soba .pageSttl1:before{
 background: url(../img/soba/sttl_bg.png) no-repeat left center;
 background-size: auto 100%;
}
.soba .pageSttl2:before{
 background: url(../img/soba/sttl_bg2.png) no-repeat left center;
 background-size: auto 100%;
}
.soba .pageSttl3>span:after{
 background: url(../img/soba/sttl_bg3.png) no-repeat left center;
 background-size: auto 100%;
}
.soba .telBtn{
 border: solid 1px var(--purple1);
 background: var(--purple1);
}
.soba .telBtn .icon>span{
 background: var(--purple1);
}
.soba .borderColor1{
 position: relative;
 display: block;
 align-items: center;
 border-bottom: solid 2px var(--purple3);
 padding-bottom: 4px;
}
.soba .borderColor1::after{
 position: absolute;
 display: block;
 content: " ";
 border-bottom: solid 2px var(--purple1);
 bottom: -2px;
 width: 2em;
}
.soba .borderColor2{
 position: relative;
 display: flex;
 align-items: center;
 border-bottom: solid 2px #fff;
 padding-bottom: 4px;
}
.soba .borderColor2:not(:has(img)){
 padding-bottom: 14px;
}
.soba .borderColor2::after{
 position: absolute;
 display: block;
 content: " ";
 border-bottom: solid 3px #1c1c1c;
 bottom: -3px;
 width: 2em;
}
.soba #sec_main_img ul{
 display: flex;
 justify-content: space-between;
 gap: 2px;
}
.soba #sec_nav{
 background-color: var(--purple2);
 padding: 18px 0 15px;
}
.soba #sec_nav ul{
 display: flex;
 justify-content: center;
 flex-wrap: wrap;
}
.soba #sec_nav ul li{
 position: relative;
 display: flex;
 align-items: center;
 border-right: solid 1px var(--purple3);
 padding-left: 44px;
 padding-right: 21px;
}
.soba #sec_nav ul li:nth-last-of-type(1){
 border-right: none;
 padding-right: 0;
}
.soba #sec_nav ul li::before{
 position: absolute;
 display: block;
 content: "";
 width: 7px;
 height: 7px;
 border-top: 2px solid var(--purple1);
 border-right: 2px solid var(--purple1);
 top: 50%;
 left: 21px;
 -webkit-transform: rotate(135deg);
 transform: rotate(135deg) translate(-50%, 50%);
}
.soba #sec_renew{
 margin-bottom: -40px;
}
.soba #sec_renew h2{
 padding-top: 15px;
 padding-bottom: 15px;
}
.soba #sec_blog{
 background: url(../img/soba/news_bg.jpg) no-repeat top center;
 background-size: cover;
}
.soba #sec_blog h2{
 position: relative;
 width: fit-content;
 height: auto;
 color: var(--purple1);
 background: rgba(255, 255, 255, .8);
 margin: 10px auto 40px;
 padding: .59375em .75em;
}
.soba #sec_blog h2 span{
 position: absolute;
 content: '';
 background-color: var(--purple1);
}
.soba #sec_blog h2 span:nth-of-type(1),
.soba #sec_blog h2 span:nth-of-type(3){
 width: calc(100% + 24px);
 height: 2px;
 left: 50%;
 transform: translateX(-50%);
}
.soba #sec_blog h2 span:nth-of-type(2),
.soba #sec_blog h2 span:nth-of-type(4){
 width: 2px;
 height: calc(100% + 22px);
 top: 50%;
 transform: translateY(-50%);
}
.soba #sec_blog h2 span:nth-of-type(1){
 top: 0;
}
.soba #sec_blog h2 span:nth-of-type(2){
 right: 0;
}
.soba #sec_blog h2 span:nth-of-type(3){
 bottom: 0;
}
.soba #sec_blog h2 span:nth-of-type(4){
 left: 0;
}
.soba #sec_about h2 + p{
 font-weight: 600;
}
.soba #sec_about .certified{
 background: var(--purple2);
 border-radius: 20px;
}
.soba #sec_about .certified h3{
 width: 100%;
 height: auto;
 padding: 13px 0;
 background: var(--purple1);
 border-radius: 20px 20px 0 0;
}
.soba #sec_about .certified h3 span:not(.dIb){
 position: relative;
 display: block;
 width: fit-content;
 padding: 0 1.2em;
 margin: 0 auto;
}
.soba #sec_about .certified h3 span:not(.dIb)::before,
.soba #sec_about .certified h3 span:not(.dIb)::after{
 position: absolute;
 display: block;
 content: "";
 width: 2px;
 height: 100%;
 background: #fff;
 top: 0;
}
.soba #sec_about .certified h3 span:not(.dIb)::before{
 left: 0;
 transform: rotate(150deg);
}
.soba #sec_about .certified h3 span:not(.dIb)::after{
 right: 0;
 transform: rotate(-150deg);
}
.soba #sec_about .certified h3 + div{
  padding: 20px 10px 0 20px;
}
.soba #sec_about .certified h4{
 position: relative;
 display: flex;
 justify-content: left;
 align-items: center;
 gap: 3px;
 color: var(--purple1);
}
.soba #sec_about .certified h4::before{
 display: flex;
 content: "？";
 width: 18px;
 height: 18px;
 color: #fff;
 font-size: .9375rem;
 text-align: center;
 justify-content: center;
 align-items: center;
 background: var(--purple1);
 border-radius: 50%;
}
.soba #sec_about .certified .fukidashi{
 position: relative;
 display: block;
 width: fit-content;
 color: var(--purple1);
 letter-spacing: .02em;
 line-height: 1.4em;
 background: #fff;
 border: solid 1px var(--purple1);
 border-radius: 10px;
 margin: 10px auto 15px;
 padding: 10px 13px;
}
.soba #sec_about .certified .fukidashi span{
  font-size: 1.125rem;
}
.soba #sec_about .certified .fukidashi::before{
 position: absolute;
 display: block;
 content: "";
 width: 13px;
 height: 12px;
 background: url(../img/soba/fukidashi.png);
 background-size: 86% 97%;
 background-repeat: no-repeat;
 top: 50%;
 right: 1px;
 transform: translate(100%, -50%);
}
.soba #sec_about .certified div.img{
 display: flex;
 align-items: end;
}
.soba #sec_about h3.wbr{
 letter-spacing: .02em;
}
.soba #sec_about .mainList{
 display: flex;
 justify-content: space-between;
 gap: 25px;
}
.soba #sec_about .mainList li{
 width: calc((100% - 50px) / 3);
 box-shadow: 0 0 10px rgba(122, 106, 132, .8);
}
.soba #sec_about .mainList li .text{
 padding: 24px;
}
.soba #sec_about .mainList li .text h4{
 position: relative;
 font-size: 1.5rem;
 line-height: 1;
 padding-left: 12px;
}
.soba #sec_about .mainList li .text h4::before{
 position: absolute;
 display: block;
 content: "";
 width: 5px;
 height: .8lh;
 background: var(--purple1);
 top: 50%;
 left: 0;
 transform: translateY(-50%);
}
.soba #sec_menu h3.borderColor1,
.soba #sec_menu h3.borderColor2{
 font-size: 1.75rem;
}
.soba #sec_menu h3.borderColor1{
 display: flex;
}
.soba #sec_menu .menuList{
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
}
.soba #sec_menu .menuList li{
 width: calc((100% - 60px) / 2);
 margin-bottom: 60px;
}
.soba #sec_menu .menuList:nth-of-type(1) li{
  margin-bottom: 40px;
}
.soba #sec_menu .menuList li:nth-last-of-type(1),
.soba #sec_menu .menuList:nth-of-type(3) li{
 margin-bottom: 0;
}
.soba #sec_menu .menuList li h4.ttlSash{
 display: flex;
 justify-content: space-between;
 align-items: baseline;
 flex-wrap: wrap;
 font-size: 1.5rem;
 color: #fff;
 font-feature-settings: "palt";
 letter-spacing: .02em;
 background: #1c1c1c;
 padding: 12px 18px;
}
.soba #sec_menu .menuList li h4.recommend{
 position: relative;
 background: #d10101;
 width: calc(100% - 79px);
 letter-spacing: .015em;
 margin-left: 37px;
 padding: 12px 16px 12px 26px;
}
.soba #sec_menu .menuList li h4.recommend::before{
 position: absolute;
 display: block;
 content: "";
 width: 60px;
 height: 61px;
 background: url(../img/soba/recommend.png) no-repeat top center;
 background-size: contain;
 top: 0;
 left: -11px;
 transform: translateX(-50%);
}
.soba #sec_menu .menuList li.w100.col1 h4{
 justify-content: left;
}
.soba #sec_menu .menuList li.w100.col1 h4 .menuttl{
 margin-right: 58px;
}
.soba #sec_menu .menuList li ul li.w100 h4{
 justify-content: space-between;
 gap: 0;
}
.soba #sec_menu .menuList li h4 .menuttl{
 display: flex;
 align-items: center;
}
.soba #sec_menu .menuList li h4 .menuttl span{
 font-size: 1rem;
 letter-spacing: .02em;
 font-weight: 400;
 border: solid 1px #fff;
 margin-left: 20px;
 padding: 3px 7px;
}
.soba #sec_menu .menuList li h4.recommend .menuttl span,
.soba #sec_menu .menuList li ul li.w100 h4 .menuttl span{
 margin-left: 7px;
}
.soba #sec_menu .menuList li h4 .price{
 font-size: 1.625rem;
}
.soba #sec_menu .menuList li h4 .price span{
 font-size: 1rem;
}
.soba #sec_menu .menuList li h4 .price span.fontSystem-ui{
 display: none;
}
.soba #sec_menu .menuList li .menu_img{
 text-align: center;
 color: #fff;
 width: min(100%, 571px);
 margin: 20px auto 0;
}
.soba #sec_menu .menuList li.w100 .menu_img{
 display: flex;
 width: 100%;
 max-width: none;
}
.soba #sec_menu .menuList li .menu_img > div.flex{
 justify-content: space-between;
}
.soba #sec_menu .menuList li .menu_img > div.flex.col1{
 justify-content: center;
}
.soba #sec_menu .menuList li.w100 .menu_img > div.flex{
 align-items: baseline;
}
.soba #sec_menu .menuList li .menu_img > div.flex.column{
 flex-direction: column;
 justify-content: flex-start;
 align-items: center;
}
.soba #sec_menu .menuList li .menu_img > div.flex figure{
 width: min(calc((100% - 15px) / 2), 278px);
 height: auto;
}
.soba #sec_menu .menuList li .menu_img > div.flex figure:has(img.w100),
.soba #sec_menu .menuList li .menu_img > div.flex.column figure{
 width: 100%;
}
.soba #sec_menu .menuList li .menu_img > div.flex img{
 width: 100%;
 height: auto;
}
.soba #sec_menu .menuList li .menu_img .plus{
 position: relative;
 width: 32px;
 height: 32px;
 margin: 15px auto;
}
.soba #sec_menu .menuList li .menu_img .plus::before,
.soba #sec_menu .menuList li .menu_img .plus::after{
 position: absolute;
 display: block;
 content: "";
 width: 32px;
 height: 4px;
 background: #fff;
 top: 50%;
 left: 0;
}
.soba #sec_menu .menuList li .menu_img .plus::after{
 transform: rotate(90deg);
}
.soba #sec_menu .menuList li.w100 .menu_img .plus{
 margin: auto;
 transform: translateY(-100%);
}
.soba #sec_menu .menuList li .buffet{
 display: flex;
 justify-content: space-between;
}
.soba #sec_menu .menuList li.w100 .buffet{
  margin: 0 auto;
  max-width: 571px;
}
.soba #sec_menu .menuList li.w100 .buffet div:has(img){
 margin-left: 15px;
}
.soba #sec_menu .menuList li.w100 .buffet:not(:has(.textV)){
 margin: 0;
}
.soba #sec_menu .menuList li.w100 .buffet:not(:has(.textV)) div:has(img){
 width: auto;
 margin-left: 0;
}
.soba #sec_menu .menuList li .menu_img .buffet .textV{
 width: fit-content;
 height: min(100%, 180px);
 font-size: 1.25rem;
 background: #1c1c1c;
 border-radius: 20px;
 padding: 0 5px;
}
.soba #sec_menu .menuList li .menu_img .buffet div img + p span{
 font-size: .875rem;
}
.soba #sec_menu .menuList li h3.bgBlack{
 padding: 13px 0;
}
.soba #sec_menu .menuList li .text{
 padding: 25px 30px 20px;
}
.soba #sec_menu .menuList li.w100 ul.priceList{
 width: calc((100% - 55px) / 2);
}
.soba #sec_menu .menuList .priceList li{
 position: relative;
 display: flex;
 justify-content: space-between;
 align-items: baseline;
 width: 100%;
 background-image: radial-gradient(#242424 10%, transparent 20%), radial-gradient(#242424 10%, transparent 20%);
 background-size: 10px 10px;
 background-repeat: repeat-x;
 background-position: right .5em;
 margin-bottom: 0;
}
.soba #sec_menu .menuList .priceList li:has(.priceList2){
 align-items: baseline;
}
.soba #sec_menu .menuList .priceList li > span{
 background: #fff;
}
.soba #sec_menu .menuList .priceList li .name{
 padding-right: 12px;
}
.soba #sec_menu .menuList .priceList li .price{
 line-height: 1;
 padding-left: 12px;
}
.soba #sec_menu .menuList .priceList li .price.red,
.soba #sec_menu .menuList .priceList2 li.red{
 color: #d40000;
}
.soba #sec_menu .menuList .priceList2{
 display: flex;
 flex-direction: column;
 gap: 5px;
 padding-left: 12px;
}
.soba #sec_menu .menuList .priceList li .price,
.soba #sec_menu .menuList .priceList2 li{
 font-variant-numeric: tabular-nums;
 letter-spacing: .015em;
}
.soba #sec_menu .menuList .priceList2 li{
 width: fit-content;
 background: #fff;
}
.soba #sec_menu .menuList .priceList2 li .s{
 text-decoration: line-through;
}
.soba #sec_menu .menuList .priceList2 li .triangles{
 position: relative;
 display: flex;
 justify-content: center;
 padding-left: 13px;
 padding-right: 13px;
}
.soba #sec_menu .menuList .priceList2 li .triangles span{
 width: 0;
 height: 0;
 border-style: solid;
 border-top: 6px solid transparent;
 border-bottom: 6px solid transparent;
 border-left: 7px solid #000000;
 border-right: 0;
 margin-right: 5px;
}
.soba #sec_menu .menuList .priceList2 li .triangles span:nth-last-child(1){
 margin-right: 0;
}
.soba #sec_menu .priceList3{
 display: inline-flex;
 flex-wrap: wrap;
}
.soba #sec_menu .menuList .priceList3 li{
 position: relative;
 width: fit-content;
 margin-top: 0;
 margin-bottom: 0;
 padding-left: 1em;
}
.soba #sec_menu .menuList .priceList3 li::before{
 position: absolute;
 display: block;
 content: "・";
 font-size: 1rem;
 color: #1c1c1c;
 top: 0;
 left: 0;
}
.soba #sec_menu h3 svg{
 width: 30px;
 height: auto;
 fill: var(--purple1);
}
.soba .fa-car-side{
 transform: scale(-1, 1);
}

/* ゆめシティ */
.yume .pageColor,
.yume .pageColor a{
 color: #d7bb41 !important;
}
.yume .pageBg{
 background: url(../img/yume/bg.png) left top;
 background-attachment: fixed;
}
.yume #sec_pagettl:before{
 background: url(../img/yume/bg.png) left top;
}
.yume .pageBg2,
.yume .tabArea .tabBtn.active{
 background: #d7bb41 !important;
}
.yume #sec_pagettl{
 background-color: #d7bb41;
 position: relative;
}
.yume .pageSttl1:before{
 background: url(../img/yume/sttl_bg.png) no-repeat left center;
 background-size: auto 100%;
}
.yume .pageSttl2:before{
 background: url(../img/yume/sttl_bg2.png) no-repeat left center;
 background-size: auto 100%;
}
.yume .pageSttl3>span:after{
 background: url(../img/yume/sttl_bg3.png) no-repeat left center;
 background-size: auto 100%;
}
.yume .telBtn{
 border: solid 1px #d7bb41;
 background: #d7bb41;
}
.yume .telBtn .icon>span{
 background: #d7bb41;
}

/*23/12/5追記*/
.yakiniku_menu_wrap{
 display: flex;
 flex-wrap: wrap;
 gap: 1em;
 margin: 0 auto 40px;
 justify-content: center;
}
.yakiniku_menu_btn{
 position: relative;
 background: #d7bb41;
 padding: 18px 50px 18px 26px;
}   
.yakiniku_menu_btn:before {
 content: "";
 position: absolute;
 top: 50%;
 right: 25px;
 transform: translateY(-50%);
 border: 5px solid transparent;
 border-left: 8px solid #fff;
}
/*23/12/5追記 fin*/
/*
===================================================
	pc small
===================================================
*/
@media screen and (max-width: 1400px) {
 #sec_osusume .imgPC{
  position: absolute;
  top: 15%;
  bottom: auto;
  left: 5vw;
 }
 #sec_osusume .maxWidth{
  position: relative;
  height: 1000px;
 }
 #sec_osusume .data{
  margin-top: 50px !important;
 }

 .kokura #sec_osusume .maxWidth,
 .soba #sec_osusume .maxWidth,
 .yume #sec_osusume .maxWidth,
 .katsu #sec_osusume .maxWidth{
  height: 1100px;
 }
 .kokura #sec_osusume .img img,
 .soba #sec_osusume .img img,
 .katsu #sec_osusume .img img{
  height: 200px;
  width: auto;
 }
 .soba #sec_renew h2,
 .soba #sec_about h2.borderColor1{
  font-size: 1.5rem;
 }
 .soba #sec_osusume .img img{
  object-fit: contain;
 }
 .soba #sec_menu .menuList li{
  width: 100%;
  margin-bottom: 0;
 }
 .soba #sec_menu .menuList:nth-of-type(1) li{
  margin-bottom: 0;
 }
 /* .soba #sec_menu .menuList li,
 .soba #sec_menu .menuList:nth-of-type(2) li.bgWhite{
  margin-top: 40px;
 } */
 .soba #sec_menu .menuList li + li{
  margin-top: 40px;
 }
 .soba #sec_menu .menuList .priceList li,
 .soba #sec_menu .menuList .priceList2 li,
 .soba #sec_menu .priceList3 li{
  margin-top: 0;
 }
 .soba #sec_menu .menuList li.w100 ul.priceList{
  width: calc((100% - 35px) / 2);
 }
 .soba #sec_menu .menuList li h4,
 .soba #sec_menu .menuList li.w100 h4{
  gap: 10px;
 }
 .soba #sec_menu .menuList li.w100.col1 h4{
  justify-content: space-between;
 }
 .soba #sec_menu .menuList li .menu_img:has(.main_menu){
  position: relative;
  justify-content: center;
 }
 .soba #sec_menu .menuList li .menu_img:has(.main_menu) .plus{
  position: absolute;
  top: 50%;
  right: 50%;
  transform: translate(40%, -187%);
 }
 .main_menu{
  width: min(100%, 254px);
  margin-right: 50px;
 }
 .soba #sec_menu .menuList li .menu_img > div.flex{
  justify-content: center;
 }
 .soba #sec_menu .menuList li .menu_img > div.flex figure:nth-child(2){
  margin-left: 15px;
 }
 .soba #sec_menu .menuList li .menu_img > div.flex img.w100{
  max-width: 278px;
 }
 .soba #sec_menu .menuList li .menu_img .plus{
  width: 20px;
  height: 20px;
  margin: 10px auto;
 }
 .soba #sec_menu .menuList li.w100:not(:has(.main_menu)) .menu_img{
  display: block;
 }
 .soba #sec_menu .menuList li .menu_img .plus::before,
 .soba #sec_menu .menuList li .menu_img .plus::after{
  width: 20px;
  height: 3px;
 }
 .soba #sec_menu .menuList li.w100:not(:has(.main_menu)) .menu_img .plus{
  margin: 10px auto;
  transform: translateY(0);
 }
 .soba #sec_menu .menuList li.w100:has(div.flex.column) .menu_img{
  justify-content: space-between;
  width: min(100%, 571px);
 }
 .soba #sec_menu .menuList li.w100:has(div.flex.column) .plus{
  margin: auto 10px;
  transform: translateY(-130%);
 }
}

/*
===================================================
	tb
===================================================
*/
@media screen and (max-width: 1100px) {
/*23/12/5追記*/
 .yakiniku_menu_wrap{
   display: grid;
   gap: 1em;
   margin: 0 auto 32px;
  }
 }


/*
===================================================
	sp
===================================================
*/
@media screen and (max-width: 960px) {
 #sec_pagettl .inner{
  padding: 30px 15vw 30px 0px;
 }
 #sec_pagettl h1 img{
  height: 25px;
  width: auto;
 }
 .soba #sec_pagettl h1 img:nth-of-type(1){
  height: calc(23px * .8);
 }
 .soba #sec_pagettl h1 img:nth-of-type(2){
  height: calc(38px * .8);
 }
 .pageTtl{
  text-align: center;
  padding: 20px 50px;
 }
 .pageTtl>.inner{
  position: relative;
  display: inline-block;
 }
 .pageTtl>.inner:before{
  display: block;
  content: "";
  width: 120px;
  height: 30px;
  position: absolute;
  right: -60px;
  top: -15px;
 }
 .pageTtl>.inner:after{
  display: block;
  content: "";
  width: 120px;
  height: 30px;
  position: absolute;
  left: -60px;
  bottom: -15px;
 }

 #sec_pagettl:before{
  width: 60%;
 }

 #sec_osusume .maxWidth {
  position: relative;
  height: auto !important;
 }
 #sec_osusume .data{
  position: relative;
  width: 90vw;
  max-width: 500px;
  height: 90vw;
  max-height: 500px;
  margin-top: 20px !important;
  margin-left: auto;
  margin-right: auto;
 }
 #sec_osusume .data:before{
  width: 90vw;
  max-width: 500px;
  height: 90vw;
  max-height: 500px;
  left: 50%;
  top: 0px;
  margin-left: -50%;
 }
 #sec_osusume .data .inner{
  padding: 7vw 40px 0px;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
 }
 .honten #sec_osusume .imgSP{
  position: relative;
  text-align: center;
  padding-bottom: 80px;
  margin-top: -30vw;
 }
 .kokura #sec_osusume .img .inner,
 .soba #sec_osusume .img .inner,
 .yume #sec_osusume .img .inner,
 .katsu #sec_osusume .img .inner{
  text-align: center;
  padding: 20px 0px 100px 5vw;
 }
 .kokura #sec_osusume .img .inner>p,
 .soba #sec_osusume .img .inner>p,
 .katsu #sec_osusume .img .inner>p{
  display: inline-block;
  width: 47%;
 }
 .kokura #sec_osusume .img .inner>p img,
 .soba #sec_osusume .img .inner>p img,
 .katsu #sec_osusume .img .inner>p img{
  width: 100%;
  height: auto;
 }

 #sec_item{
  position: relative;
 }
 #sec_item:before{
  display: block;
  content: "";
  width: 100%;
  height: 50px;
  position: absolute;
  top:-48px;
  left: 0px;
  background: url(../img/pagesection.png);
  background-size: 100% 100%;
 }

 #sec_menulist .tabArea .tabBtn{
  padding: 5px 10px;
  margin-right: 5px;
  font-size: 10px;
  min-height: 6em;
 }
 #sec_menulist .tabArea .tabBtn.active{
  height: 8em;
  padding: 5px 10px;
 }

 #sec_news .newsList li a>p.date{
  width: auto;
  margin-right: 1em;
 }

 #sec_gallery .text .inner{
  width: 140px;
  margin-left: auto;
  margin-right: auto;
 }

 .telBtn{
  display: flex;
  width: 300px;
  border: solid 1px #c26a56;
  align-items: center;
  background: #c26a56;
  margin-left: auto;
  margin-right: auto;
 }
 .telBtn .icon{
  position: relative;
  padding: 5px 10px;
  background: #fff;
 }
 .telBtn .icon:before{
  display: block;
  content: "";
  position: absolute;
  right: -10px;
  border-left: 10px solid #fff;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  top: calc( 50% - 20px );
 }
 .telBtn .icon>span{
  display: flex;
  background: #c26a56;
  color: #fff;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  justify-content: center;
  align-items: center;
 }
 .telBtn .number{
  width: 100%;
  text-align: center;
  color: #fff;
  letter-spacing: .2em;
  font-size: 80%;
  line-height: 1.5em;
 }

 .gmap iframe{
  width: 100%;
  height: 80vw;
 }
 .soba h1 span{
  font-size: 1.2rem;
  margin-left: 0;
 }
 .soba .pageTtl2{
  margin-top: -40px;
 }
 .soba #sec_renew{
  margin-bottom: -10px;
 }
 .soba #sec_about .certified div.img{
  justify-content: center;
 }
 .soba #sec_about .certified .fukidashi::before{
  top: 100%;
  right: 50%;
  transform: translate(50%, 0) rotate(90deg);
 }
 .soba #sec_about .mainList{
  flex-direction: column;
  align-items: center;
 }
 .soba #sec_about .mainList li{
  width: min(100%, 383px);
 }
 .soba #sec_menu .menuList li h4 .menuttl,
 .soba #sec_menu .menuList li h4 .price{
  font-size: 1.25rem;
 }
 .soba #sec_menu .menuList li h4 .menuttl span{
  font-size: .9rem;
  padding: 2px 5px;
 }
 .soba #sec_menu .menuList li.w100 ul.priceList{
  width: 100%;
 }
}
/*
===================================================
	sp
===================================================
*/
@media screen and (max-width: 768px) {
 .soba #sec_menu h3.borderColor2{
  flex-direction: column;
  align-items: baseline;
  gap: .5em;
  padding-bottom: 1rem;
 }
 .soba #sec_menu h3.borderColor2 img{
  position: absolute;
  top: 0;
  transform: translateY(-31%);
 }
 .soba #sec_menu h3.borderColor2 img{
  left: 2.5em;
 }
 .soba #sec_menu .menuList h3.borderColor2 img{
  left: 3.5em;
 }
 .soba #sec_menu .menuList li h4.ttlSash{
  padding: 10px 15px;
 }
 .soba #sec_menu .menuList li h4.ttlSash span.fontSystem-ui{
  display: none;
 }
 .soba #sec_menu .menuList li h4.recommend{
  width: calc(100% - 77px);
  padding: 10px 15px 10px 24px;
 }
 .soba #sec_menu .menuList li h4.recommend::before{
  width: 48px;
  height: 48.8px;
 }
 .soba #sec_menu .menuList li h4.ttlSash .price{
  display: flex;
  justify-content: end;
  align-items: end;
  text-align: right;
  margin-top: 5px;
 }
 .soba #sec_menu .menuList li h4.ttlSash .price span.fontSystem-ui{
  display: block;
  font-size: .9rem;
  letter-spacing: .02em;
  font-weight: 400;
  line-height: 1.2;
  border: solid 1px #fff;
  margin-right: 18px;
  padding: 2px 5px;
 }
 .soba #sec_menu .menuList li .menu_img .buffet .textV{
  font-size: 1rem;
 }
 .soba #sec_menu .menuList .priceList li:has(.priceList2){
  flex-direction: column;
  background-image: none;
 } 
 .soba #sec_menu .menuList .priceList li:has(.priceList2) > .name,
 .soba #sec_menu .menuList .priceList li:has(.priceList2) > .price,
 .soba #sec_menu .menuList .priceList2 li{
  width: 100%;
  padding: 0;
 }
 .soba #sec_menu .menuList .priceList li:has(.priceList2) .price{
  text-align: right;
 }
 .soba #sec_menu .menuList .priceList2{
  padding-left: 0;
 }
 .soba #sec_menu .menuList .priceList2 li{
  flex-direction: row;
  justify-content: end;
 }
 .soba #sec_menu .menuList .priceList2 li{
  position: relative;
  z-index: 1;
 }
 .soba #sec_menu .menuList .priceList2 li::after {
  position: absolute;
  display: block;
  content: "";
  height: 20px;
  background-image: radial-gradient(#242424 10%, transparent 20%), radial-gradient(#242424 10%, transparent 20%);
  background-size: 10px 10px;
  background-repeat: repeat-x;
  background-position: right center;
  z-index: 2;
  top: 0;
  left: 0;
 }
 .soba #sec_menu .menuList .priceList2 li::after{
  width: calc(100% - 15em);
 }
 .soba #sec_menu .menuList .priceList2 li .triangles{
  padding-left: 10px;
  padding-right: 10px;
 }
}
/*
===================================================
	sp small
===================================================
*/
@media screen and (max-width: 610px) {
 .soba #sec_nav ul{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  max-width: 248px;
  margin: 0 auto;
 }
 .soba #sec_nav ul li{
  width: 6em;
  padding: 5px 0 5px 44px;
  border: none;
 }
 .soba #sec_nav ul li:nth-of-type(2){
  order: -1;
  font-weight: bold;
 }
 .soba #sec_nav ul li:nth-of-type(2)::before {
    width: 1em;
    height: 1em;
    transform: rotate(0deg) translate(-50%, -46%);
    border: none;
    background: url(../img/soba/icon_menu.png) no-repeat center center;
    background-size: contain;
    left: 24px;
 }
 .soba #sec_nav ul li:nth-of-type(1),
 .soba #sec_nav ul li:nth-of-type(4){
  border-left: solid 1px var(--purple3);
 }
 .soba #sec_menu .menuList li h4.ttlSash{
  display: block;
 }
 .soba #sec_menu .menuList li h4.recommend{
  width: auto;
  margin-left: 0;
 }
 .soba #sec_menu .menuList li h4.recommend .menuttl{
  margin-left: 30px;
 }
 .soba #sec_menu .menuList li h4.recommend::before{
  transform: translate(0, -28%);
 }
 .soba #sec_menu .menuList li .menu_img > div.flex figure{
  width: min(calc((100% - 10px) / 2), 278px);
 }
 .soba #sec_menu .menuList li .menu_img > div.flex figure:nth-child(2){
  margin-left: 10px;
 }
 .soba #sec_menu .menuList li .buffet div:has(img){
  width: calc((100% - 54px) / 2);
 }
 .soba #sec_menu .menuList li.w100 .buffet{
  width: 100%;
 }
 .soba #sec_menu .menuList li.w100:not(:has(.menu_img)) .buffet div:has(img),
 .soba #sec_menu .menuList li.w100 .buffet:not(:has(.textV)){
  margin-left: 10px;
 }
 .soba #sec_menu .menuList li .menu_img > div.flex.column,
 .soba #sec_menu .menuList li.w100 .buffet div:has(img){
  width: calc(100% - 40px);
 }
 .soba #sec_menu .menuList li .menu_img:has(div.flex.column){
  justify-content: space-between;
 }
 .soba #sec_menu .menuList li.w100:has(div.flex.column) .menu_img{
  position: relative;
 }
 .soba #sec_menu .menuList li.w100:has(div.flex.column) .plus{
  position: absolute;
  top: 50%;
  right: 50%;
 }
 .soba #sec_menu .menuList li .menu_img:has(.main_menu){
  justify-content: space-between;
 }
 .main_menu,
 .soba #sec_menu .menuList li.w100 .menu_img:has(.main_menu) .buffet:not(:has(.textV)){
  width: calc((100vw - 70px) / 2);
 }
 /* .soba #sec_menu .menuList li.w100 .menu_img.grid .buffet:not(:has(.textV)){
  margin-left: 0;
 }
 .soba #sec_menu .menuList li.w100 .menu_img.grid .buffet:not(:has(.textV)) div{
  width: 100%;
 } */
 .main_menu{
  margin-right: 0;
 }

}
/*
===================================================
	sp small
===================================================
*/
@media screen and (max-width: 480px) {
 #sec_osusume .data .inner{
  padding: 7vw 40px 0px;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.3em;
  font-size: 90%;
 }
 .soba #sec_pagettl h1 img:nth-of-type(1){
  height: calc(23px * .65);
 }
 .soba #sec_pagettl h1 img:nth-of-type(2){
  height: calc(38px * .65);
 }
 .soba #sec_about .certified h3 span:not(.dIb){
  padding: 0 .9em;
 }
 .soba #sec_menu .menuList li h4 .menuttl{
  flex-wrap: wrap;
  align-items: baseline;
  gap: 10px;
 }
 .soba #sec_menu .menuList li h4 .menuttl span,
 .soba #sec_menu .menuList li h4.recommend .menuttl span{
  margin-left: 0;
 } 
 .soba #sec_menu .menuList li.w100:has(div.flex.column) .plus{
  width: 17px;
  height: 17px;
  margin: auto 10px;
 }
 .soba #sec_menu .menuList li.w100:has(div.flex.column) .plus::before,
 .soba #sec_menu .menuList li.w100:has(div.flex.column) .plus::after{
  width: 17px;
  height: 3px;
 }
 .soba #sec_menu .menuList li .menu_img .buffet div img + p span{
  font-size: .78rem;
 }
 .soba #sec_menu .menuList .priceList:not(:has(.priceList2)) li .name:has(.dIb){
  display: grid;
  background: none;
  padding-right: 0;
 }
 .soba #sec_menu .menuList .priceList:not(:has(.priceList2)) li .name .name_ttl{
  width: fit-content;
  background: #fff;
  padding-right: 12px;
 }
}
@media screen and (max-width: 345px) {
 .soba #sec_about .certified h3 span:not(.dIb)::before{
  left: calc(50% - 5em);
 }
 .soba #sec_about .certified h3 span:not(.dIb)::after{
  right: calc(50% - 5em);
 }
}