/* メニュー用
============================================== */

main#main .color_yellow {
  color: #F4F405 !important;
}

main#main .pageBody {
  padding-bottom: calc(5 * var(--legacy-base));
}
/* ルビ調整 */
@supports (-ms-ime-align: auto) {
  main#main rt {
    position: relative;
    top: .5em;
  }
}
/* 枠あり2カラム */
main#main .container2 {
  position: relative;
  border: 1px solid #A5A5A5;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  main#main .container2 {
    width: calc(95% / 2);
    margin-bottom: 5%;
  }
}
@media (max-width: 767px) {
  main#main .container2 {
    width: 100%;
    max-width: 520px;
    margin-right: auto;
    margin-bottom: 6%;
    margin-left: auto;
  }
}
/* 枠なし */
main#main .container2._noborder {
  border: none;
}

main#main .boxHeading {
  color: #fff;
  background-color: #333;
  padding: .5em;
  margin-bottom: 5%;
  font-size: calc(2.8 * var(--legacy-base));
  font-weight: 500;
  text-align: center;
  line-height: 1;
}
@media (max-width: 767px){
  main#main .boxHeading {
    max-width: 520px;
    margin-right: auto;
    margin-left: auto;
    font-size: calc(1.8 * var(--legacy-base));
  }
}
main#main .boxHeading.bg_red {
  background-color: #821923;
}

/* アレルギー情報 */
main#main .allergyInfoLink {
  font-size: calc(1.9 * var(--legacy-base));
  font-weight: 700;
  text-align: right;
}
main#main .allergyInfoLink a {
  color: #AC000C;
}
main#main .allergyInfoLink .arrow::before,
main#main .allergyInfoLink .arrow:hover::before {
  width: 10px;
  height: 10px;
  margin: 0 11px 2px 0;
  border-top: 3px solid #AC000C;
  border-right: 3px solid #AC000C;
}
@media (max-width: 767px){
  main#main .allergyInfoLink {
    font-size: calc(1.4 * var(--legacy-base));
  }
  main#main .allergyInfoLink .arrow::before{
    width: 7px;
    height: 7px;
    margin: 0 8px 2px 0;
  }
}

/* 注意 */
main#main .menu_attention {
  list-style-type: none;
}
main#main .menu_attention_txt {
  font-size: calc(1.8 * var(--legacy-base));
  font-weight: 500;
  color: #fff;
}
main#main .menu_attention_txt a {
  color: #fff;
  text-decoration: underline;
}
@media (max-width: 767px){
  main#main .menu_attention_txt {
    font-size: calc(1.25 * var(--legacy-base));
  }
}

/* メニューページ */
main#main .menuSelectContainer > * {
  width: 100%;
  text-align: center;
}
main#main .menuSelectTtl {
  font-size: calc(2.8 * var(--legacy-base));
  margin-bottom: 1.8%;
}
main#main .menuSelectTtl .f-small {
  font-size: calc(2 * var(--legacy-base));
}
main#main .menuSelectTtl .heading {
  display: block;
  margin-bottom: -4px;
  font-size: calc(1.8 * var(--legacy-base));
  font-weight: 400;
}
main#main .menuSelectImg {
  display: block;
  margin-top: calc(2.5 * var(--legacy-base));
  margin-bottom: calc(3 * var(--legacy-base));
  /*border: 1px solid #707070;*/
  /*box-sizing: unset;*/
}
main#main .menuSelectImg img,
main#main .border {
  border: 1px solid #707070;
}
@media (min-width: 768px){
  main#main .menuSelect {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: calc(5 * var(--legacy-base))
  }
  main#main .menuSelectContainer {
    width: calc((100% - 40px) / 2);
  }
  main#main .menuSelectContainer:nth-child(n + 3) {
    margin-top: calc(7 * var(--legacy-base));
  }
}
@media (max-width: 767px){
  main#main .menuSelectContainer:nth-child(n + 2) {
    margin-top: calc(3.5 * var(--legacy-base));
  }
  main#main .menuSelectTtl {
    font-size: calc(1.7 * var(--legacy-base));
  }
  main#main .menuSelectTtl .f-small {
    font-size: calc(1.5 * var(--legacy-base));
  }
  main#main .menuSelectTtl .heading {
    font-size: calc(1.3 * var(--legacy-base));
  }
  main#main .menuSelectImg {
    margin-top: calc(1.2 * var(--legacy-base));
    margin-bottom: calc(2.5 * var(--legacy-base));
  }
}

/* メニュー説明 */
main#main .item_description {
  padding: 4% 6% 6%;
  text-align: left;
}
main#main .item_description_top {
  font-size: calc(2 * var(--legacy-base));
  font-weight: 500;
  line-height: 1.2;
}
main#main .item_description_top .square {
  display: inline-block;
  padding: .1em .3em;
  font-size: calc(1.6 * var(--legacy-base));
  background-color: #AC000C;
  color: #fff;
}
main#main .item_description_top span + span {
  margin-left: .8em;
}
main#main .item_ttl {
  font-size: calc(2.8 * var(--legacy-base));
  font-weight: 700;
  margin-bottom: .3em;
}
main#main .item_ttl_line2{
  font-size: calc(2.8 * var(--legacy-base));
  font-weight: 700;
}
main#main .l_height_1_3{
  line-height: 1.3;
}
main#main .item_description .f-small {
  font-size: calc(1.8 * var(--legacy-base));
}
main#main .item_attention {
  margin-top: calc(1 * var(--legacy-base));
  font-size: calc(1.6 * var(--legacy-base));
}
main#main .item_lunchtime {
  display: flex;
  justify-content: right;
}
main#main .item_lunchtime .item_price {
  background-color: #AC000C;
  border-radius: 10px;
  padding: .2% 4%;
  width: -moz-fit-content;
  width: fit-content;
}
@media (max-width: 960px){
  main#main .item_ttl_line2{
    font-size: calc(2.1 * var(--legacy-base));
  }
}
@media (max-width: 767px){
  main#main .item_description {
    padding: 4% 5% 5%;
    text-align: left;
  }
  main#main .item_description_top {
    font-size: calc(1.5 * var(--legacy-base));
  }
  main#main .item_description_top .square {
    font-size: calc(1.2 * var(--legacy-base));
  }
  main#main .item_ttl {
    font-size: calc(1.8 * var(--legacy-base));
  }
  main#main .item_ttl_line2{
    font-size: calc(1.8 * var(--legacy-base));
  }
  main#main .item_description .f-small {
    font-size: calc(1.3 * var(--legacy-base));
  }
  main#main .item_attention {
    font-size: calc(1.2 * var(--legacy-base));
  }
}
/* 価格 */
main#main .item_price {
  position: relative;
  font-size: calc(2.8 * var(--legacy-base));
  font-weight: 500;
  text-align: right;
}
main#main .item_txt + .item_price {
  margin-top: .3em;
}
main#main .item_price._add {
  margin-top: 0;
  font-size: calc(2.3 * var(--legacy-base));
}
main#main .item_price .tax {
  margin-left: .2em;
  font-size: calc(1.4 * var(--legacy-base));
}
main#main .item_price .cat {
  font-size: calc(2.5 * var(--legacy-base));
}
main#main .item_price .num {
  position: absolute;
  top: 50%;
  right: 10em;
  transform: translateY(-40%);
  font-size: calc(1.6 * var(--legacy-base));
}
main#main .item_price .num._d4 {
  right: 12.5em;
}
main#main .item_price .num._d5 {
  right: 15em;
}
@media (max-width: 767px){
  main#main .item_price {
    font-size: calc(2.2 * var(--legacy-base));
  }
  main#main .item_price._add,
  main#main .item_price .cat {
    font-size: calc(1.5 * var(--legacy-base));
  }
  main#main .item_price .tax {
    font-size: calc(1.2 * var(--legacy-base));
  }
  main#main .item_price .num {
    font-size: calc(1.2 * var(--legacy-base));
    right: 12em;
  }
  main#main .item_price .num._d4 {
  right: 13.5em;
}
}

/* ドリンクメニュー用 */
main#main .item_separate {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: calc(2 * var(--legacy-base));
  font-weight: 500;
}
main#main .item_separate:nth-child(n + 2) {
  margin-top: .3em;
}
main#main .item_separate .tax {
  margin-left: .2em;
  font-size: calc(1.4 * var(--legacy-base));
}
@media (max-width: 767px){
  main#main .item_separate {
    font-size: calc(1.6 * var(--legacy-base));
  }
  main#main .item_separate .tax {
    font-size: calc(1.2 * var(--legacy-base));
  }
}

/* バナーなど */
main#main .item_choice {
  margin-top: 6%;
  padding: .2em;
  font-size: calc(1.8 * var(--legacy-base));
  font-weight: 500;
  line-height: 1.5;
  background-color: #AC000C;
  color: #fff;
  text-align: center;
}
main#main .item_change {
  margin-top: 6%;
  padding: .5em;
  background-color: #FFBC60;
  color: #000;
  font-size: calc(1.8 * var(--legacy-base));
  font-weight: 500;
  text-align: center;
}
main#main .item_change .menu {
  display: inline-block;
  margin-top: .3em;
  margin-bottom: .3em;
  padding: .4em .8em;
  background-color: #fff;
  color: #EB7721;
  line-height: 1.2;
  vertical-align: middle;
}
main#main .item_change .or {
  margin-right: .5em;
  margin-left: .5em;
}
main#main .item_banner {
  margin-top: 4%;
  text-align: center;
}
main#main .item_banner img {
  width: 240px;
}
main#main .item_price .chat {
  position: relative;
  display: inline-block;
  margin-right: 1em;
  padding: 0 .2em;
  background-color: #D70F0F;
  color: #F4F405;
  border-radius: .2em;
  font-size: calc(1.8 * var(--legacy-base));
  font-weight: 700;
  line-height: 1.4;
}
main#main .item_price .chat:before {
  content: "";
  position: absolute;
  top: 50%;
  right: -.8em;
  transform: translateY(-50%);
  border: .3em solid transparent;
  border-left: .6em solid #D70F0F;
  z-index: 0;
}
@media (max-width: 767px){
  main#main .item_choice {
    margin-top: 5%;
    font-size: calc(1.4 * var(--legacy-base));
  }
  main#main .item_price .chat {
    font-size: calc(1.4 * var(--legacy-base));
  }
  main#main .item_change {
    margin-top: 5%;
    font-size: calc(1.4 * var(--legacy-base));
  }
  main#main .item_change .menu {
    font-size: calc(1.3 * var(--legacy-base));
  }
}

/* アレルギー表示 */
main#main .has_allergy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
main#main .has_allergy .item_description {
  padding-bottom: 4%;
}
main#main .item_allergy {
  margin: auto 6% 6%;
  padding-top: 4%;
  border-top: 1px solid #A5A5A5;
}
@media (max-width: 767px){
  main#main .item_allergy {
    margin: auto 5% 5%;
  }
}

/* 4カラム */
main#main .container4 {
  position: relative;
  border: 1px solid #A5A5A5;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  main#main .container4 {
    width: calc(94% / 4);
    margin-bottom: 2%;
  }
  main#main .container4:not(:nth-child(4n+1)) {
    margin-left: 2%;
  }
}
@media (max-width: 767px) {
  main#main .container4 {
    width: calc(94% / 2);
    margin-bottom: 6%;
  }
  main#main .container4:not(:nth-child(2n+1)) {
    margin-left: 6%;
  }
}
main#main .container4 .item_ttl {
  margin-bottom: 0;
  font-size: calc(2.2 * var(--legacy-base));
  text-align: center;
}
main#main .container4 .item_price {
  font-size: calc(2.1 * var(--legacy-base));
  text-align: center;
}
main#main .container4 .item_price .tax {
  font-size: calc(1.2 * var(--legacy-base));
}
@media (max-width: 767px){
  main#main .container4 .item_ttl {
    font-size: calc(1.4 * var(--legacy-base));
  }
  main#main .container4 .item_price {
    font-size: calc(1.3 * var(--legacy-base));
  }
  main#main .container4 .item_price .tax {
    font-size: calc(.8 * var(--legacy-base));
  }
}

/* サイドメニュー 餃子バナー */
main#main .banner_gyoza {
  max-width: 700px;
  margin: 0 auto 5%;
}
main#main .banner_gyoza p {
  margin-top: .5em;
  font-size: calc(1.6 * var(--legacy-base));
}
@media (max-width: 767px){
  main#main .banner_gyoza {
    max-width: 520px;
  }
  main#main .banner_gyoza p {
    font-size: calc(1.2 * var(--legacy-base));
  }
}

/* キッズメニュー下部 */
main#main .babyfood_box {
  margin-bottom: 2em;
  padding: 5%;
  background-color: #F28A9E;
  color: #fff;
}
main#main .babyfood_box .ttl {
  margin-bottom: .5em;
  font-size: calc(3 * var(--legacy-base));
  font-weight: 700;
}
main#main .babyfood_box .txt {
  margin-bottom: .5em;
  font-size: calc(2 * var(--legacy-base));
}
main#main .babyfood_box .price {
  font-size: calc(3 * var(--legacy-base));
  font-weight: 500;
  text-align: right;
}
main#main .babyfood_box .tax {
  font-size: calc(1.6 * var(--legacy-base));
}
main#main .babyfood_ttl {
  margin-bottom: .5em;
  font-size: calc(3 * var(--legacy-base));
  font-weight: 700;
  color: #F56C87;
  line-height: 1.4;
}
main#main .babyfood_list {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: calc(2 * var(--legacy-base));
  color: #F56C87;
}
main#main .babyfood_list li {
  position: relative;
  padding-left: 1.2em;
}
main#main .babyfood_list li:before {
  content: "";
  position: absolute;
  top: .35em;
  left: 0;
  width: 1em;
  height: 1em;
  border: 1px solid #F28A9E;
  border-radius: 50%;
}
main#main .babyfood_list li:after {
  content: counter(my-counter);
  counter-increment: my-counter;
  position: absolute;
  top: .4em;
  left: .3em;
  width: 1em;
  height: 1em;
  color: #F28A9E;
  font-size: 90%;
  line-height: 1;
}
main#main .allergy_ttl {
  margin-bottom: .5em;
  font-size: calc(2.8 * var(--legacy-base));
  font-weight: bold;
}
main#main .allergy_txt {
  font-size: calc(2 * var(--legacy-base));
}
@media (max-width: 767px){
  main#main .babyfood_box .txt,
  main#main .babyfood_list,
  main#main .allergy_txt {
    font-size: calc(1.5 * var(--legacy-base));
  }
  main#main .babyfood_box .ttl,
  main#main .babyfood_box .price,
  main#main .babyfood_ttl,
  main#main .allergy_ttl {
    font-size: calc(2 * var(--legacy-base));
  }
}

/* ラーメン */
main#main .ramen_bg {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 4.5%;
  background-position: center;
  background-repeat: no-repeat;
}
@media (max-width: 767px){
  main#main .ramen_bg {
    max-width: 520px;
  }
}

/* フッターバナー */
main#main .bg-black .part--banner {
  background-color: #000;
}
main#main .bg-yellow .part--banner {
  background-color: #f8f1d1;
}
main#main .part--banner {
  padding-bottom: calc(6 * var(--legacy-base));
}
@media (max-width: 767px){
}