@charset "UTF-8";
.c-shop {
  mask-composite: add;
  mask-repeat: repeat-x;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 768px) {
  .c-shop {
    height: max(87.6rem, 1px);
    margin-top: -15.7rem;
    mask-image:
      url(../images/common/mask_concave_top_pc.svg), var(--gradient-mask);
    mask-position:
      50% 0,
      50% max(16.6rem, 1px);
    mask-size:
      clamp(max(192rem, 1px), 100vw, 100%) max(16.8rem, 1px),
      100% calc(100% - max(16.6rem, 1px));
  }
}
@media screen and (max-width: 767px) {
  .c-shop {
    height: max(71.6rem, 1px);
    margin-top: -2.4rem;
    mask-image:
      url(../images/common/mask_concave_top_sp.svg), var(--gradient-mask);
    mask-position:
      50% 0,
      50% max(3.4rem, 1px);
    mask-size:
      100% max(3.6rem, 1px),
      100% calc(100% - max(3.4rem, 1px));
  }
}
.c-shop-img,
.c-shop-img img {
  height: 100%;
  width: 100%;
}
.c-shop-img img {
  object-fit: cover;
}
.c-shop-inner {
  color: var(--color-white);
  height: 100%;
  inset: 0;
  position: absolute;
}
@media screen and (min-width: 768px) {
  .c-shop-inner {
    margin: 0 auto;
    max-width: max(122.4rem, 1px);
    padding-top: max(36.8rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .c-shop-inner {
    padding-top: max(38.7rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .c-shop-ttl {
    filter: drop-shadow(
      0 max(0.4rem, 1px) max(1.2rem, 1px)
        rgb(var(--color-beige-deepest-rgb) / 20%)
    );
    width: max(36.6rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .c-shop-ttl {
    filter: drop-shadow(
      0 max(0.4rem, 1px) max(1.2rem, 1px)
        rgb(var(--color-beige-deepest-rgb) / 20%)
    );
    margin: 0 auto;
    width: max(24.7rem, 1px);
  }
}
.c-shop-txt {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .c-shop-txt {
    font-family: var(--font-family-base);
    font-size: max(2rem, 1px);
    font-weight: var(--font-weight-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-base);
  }
}
@media screen and (max-width: 767px) {
  .c-shop-txt {
    font-family: var(--font-family-base);
    font-size: max(1.6rem, 1px);
    font-weight: var(--font-weight-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-base);
  }
}
@media screen and (min-width: 768px) {
  .c-shop-txt {
    margin-top: max(3.7rem, 1px);
    width: max(36.6rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .c-shop-txt {
    margin-top: max(3.1rem, 1px);
  }
}
.c-shop-link {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .c-shop-link {
    margin-top: max(4.4rem, 1px);
    width: max(36.6rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .c-shop-link {
    margin-top: max(3.4rem, 1px);
  }
}
.mv {
  overflow: hidden;
  position: relative;
}
.mv-img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .mv-img {
    height: max(72rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .mv-img {
    height: max(40rem, 1px);
  }
}
.mv-img img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.mv-inner {
  color: var(--color-white);
  display: flex;
  height: 100%;
  inset: 0;
  position: absolute;
}
@media screen and (min-width: 768px) {
  .mv-inner {
    align-items: flex-start;
    filter: drop-shadow(
      0 max(0.4rem, 1px) max(1.2rem, 1px)
        rgb(var(--color-beige-deepest-rgb) / 20%)
    );
    flex-direction: row-reverse;
    gap: max(4.2rem, 1px);
    margin: 0 auto;
    max-width: max(110.4rem, 1px);
    padding-top: max(18rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .mv-inner {
    align-items: flex-end;
    filter: drop-shadow(
      0 max(0.4rem, 1px) max(1.2rem, 1px)
        rgb(var(--color-beige-deepest-rgb) / 20%)
    );
    gap: max(3.2rem, 1px);
    margin: 0 max(4rem, 1px);
    padding: 0 0 max(4rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .mv-ttl {
    width: max(8.6rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .mv-ttl {
    width: max(4rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .mv-txt {
    padding-top: max(14.4rem, 1px);
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) {
  .mv-txt {
    font-family: var(--font-family-shuei);
    font-feature-settings: normal;
    font-size: max(2rem, 1px);
    font-weight: var(--font-weight-bold);
    letter-spacing: var(--tracking-none);
    line-height: var(--leading-relaxed);
    text-orientation: mixed;
    writing-mode: vertical-rl;
  }
}
@media screen and (min-width: 768px) and (max-width: 767px) {
  .mv-txt {
    font-family: var(--font-family-shuei);
    font-feature-settings: normal;
    font-size: max(1.6rem, 1px);
    font-weight: var(--font-weight-bold);
    letter-spacing: var(--tracking-none);
    line-height: var(--leading-base);
    text-orientation: mixed;
    writing-mode: vertical-rl;
  }
}
@media screen and (max-width: 767px) {
  .mv-txt {
    font-family: var(--font-family-shuei);
    font-size: max(1.4rem, 1px);
    font-weight: var(--color-weight-bold);
    letter-spacing: var(--tracking-base);
  }
}
.navi {
  background-color: var(--color-white);
  position: sticky;
  width: 100%;
  z-index: var(--zindex-middle);
}
@media screen and (min-width: 768px) {
  .navi {
    box-shadow: 0 max(0.2rem, 1px) max(0.4rem, 1px) 0
      rgb(var(--color-beige-deepest-rgb) / 10%);
    top: var(--wp-admin--admin-bar--height);
  }
}
@media screen and (max-width: 767px) {
  .navi {
    box-shadow: 0 max(0.2rem, 1px) max(0.4rem, 1px) 0
      rgb(var(--color-beige-deepest-rgb) / 10%);
    top: 0;
  }
}
.navi-list {
  align-items: stretch;
  display: flex;
}
@media screen and (min-width: 768px) {
  .navi-list {
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .navi-list {
    overflow: auto;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
}
@media screen and (min-width: 768px) {
  .navi-parent {
    gap: max(1.2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .navi-parent {
    padding-inline: max(0.3rem, 1px);
  }
}
.navi-parent-item {
  flex: 0 0 auto;
}
@media screen and (max-width: 767px) {
  .navi-parent-item {
    padding-inline: max(1rem, 1px);
    scroll-snap-align: center;
  }
  .navi-parent-item:first-of-type {
    padding-left: max(1.7rem, 1px);
  }
  .navi-parent-item:last-of-type {
    padding-right: max(1.7rem, 1px);
  }
}
.navi-parent-link {
  display: block;
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-base);
  line-height: var(--leading-normal);
  position: relative;
  text-align: center;
  text-decoration: none;
  transition: color 0.3s var(--ease-power1-out);
}
@media screen and (min-width: 768px) {
  .navi-parent-link {
    font-size: max(1.6rem, 1px);
    min-width: max(13rem, 1px);
    padding: max(1.7rem, 1px) max(1.2rem, 1px) max(1.6rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .navi-parent-link {
    font-size: max(1.4rem, 1px);
    min-width: max(11.6rem, 1px);
    padding: max(1.6rem, 1px) max(1rem, 1px) max(1.5rem, 1px);
  }
}
@media screen and (hover: hover) and (min-width: 768px) {
  .navi-parent-link:hover {
    color: var(--color-red);
  }
}
.navi-parent-link:after {
  background-color: var(--color-red);
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  opacity: 0;
  position: absolute;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .navi-parent-link:after {
    height: max(0.2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .navi-parent-link:after {
    height: max(0.2rem, 1px);
  }
}
.navi-parent-link.is-active {
  color: var(--color-red);
}
.navi-parent-link.is-active:after {
  opacity: 1;
}
.navi-children {
  background-image: var(--gradient-white);
}
@media screen and (min-width: 768px) {
  .navi-children {
    gap: max(0.6rem, 1px);
    padding: max(1.4rem, 1px) 0;
  }
}
@media screen and (max-width: 767px) {
  .navi-children {
    gap: max(0.6rem, 1px);
    padding: max(1.2rem, 1px) 0;
  }
}
.navi-children-item {
  flex: 0 0 auto;
}
@media screen and (max-width: 767px) {
  .navi-children-item {
    scroll-snap-align: center;
  }
  .navi-children-item:first-of-type {
    padding-left: max(2rem, 1px);
  }
  .navi-children-item:last-of-type {
    padding-right: max(2rem, 1px);
  }
}
.navi-children-link {
  background-color: var(--color-white);
  border: 0 solid var(--color-beige-pale);
  border-radius: var(--border-radius-full);
  display: block;
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-base);
  line-height: var(--leading-normal);
  text-align: center;
  text-decoration: none;
  transition:
    color 0.3s var(--ease-power1-out),
    border-color 0.3s var(--ease-power1-out),
    background-color 0.3s var(--ease-power1-out);
}
@media screen and (min-width: 768px) {
  .navi-children-link {
    border-width: max(0.1rem, 1px);
    font-size: max(1.6rem, 1px);
    min-width: max(10.4rem, 1px);
    padding: max(0.6rem, 1px) max(1.6rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .navi-children-link {
    border-width: max(0.1rem, 1px);
    font-size: max(1.4rem, 1px);
    min-width: max(9.6rem, 1px);
    padding: max(0.7rem, 1px) max(1rem, 1px) max(0.5rem, 1px);
  }
}
@media screen and (hover: hover) and (min-width: 768px) {
  .navi-children-link:hover {
    color: var(--color-red);
  }
}
.navi-children-link.is-active {
  background-color: var(--color-red);
  border-color: var(--color-red);
  color: var(--color-white);
}
@media screen and (min-width: 768px) {
  .l-navi {
    height: max(72rem, 1px);
    padding: max(4.8rem, 1px) 0;
    pointer-events: none;
    position: absolute;
    top: 0;
  }
}
.l-navi-inner {
  pointer-events: auto;
}
@media screen and (min-width: 768px) {
  .l-navi-inner {
    position: sticky;
    top: calc(max(4.8rem, 1px) + var(--wp-admin--admin-bar--height));
  }
}
.article {
  position: relative;
}
@media screen and (min-width: 768px) {
  .article {
    padding-bottom: max(25.5rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .article {
    padding: 0 max(2rem, 1px) max(7.8rem, 1px);
  }
}
.article-bg {
  background-image: url(../images/common/bg_wood.jpg);
  background-position: 50% 0;
  background-repeat: repeat;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .article-bg {
    background-size: max(48rem, 1px) max(48rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .article-bg {
    background-size: max(48rem, 1px) max(48rem, 1px);
  }
}
.article-body {
  overflow: hidden;
  position: relative;
}
.article-notes01 {
  background-color: rgb(var(--color-gold-deep-rgb) / 10%);
  border: 0 solid rgb(var(--color-gold-deep-rgb) / 30%);
  border-radius: var(--border-radius);
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .article-notes01 {
    font-family: var(--font-family-base);
    font-size: max(1.2rem, 1px);
    font-weight: var(--font-weight-medium);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (max-width: 767px) {
  .article-notes01 {
    font-family: var(--font-family-base);
    font-size: max(1.1rem, 1px);
    font-weight: var(--font-weight-medium);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (min-width: 768px) {
  .article-notes01 {
    border-width: max(0.1rem, 1px);
    margin-top: max(4.8rem, 1px);
    max-width: max(124.8rem, 1px);
    padding: max(3.6rem, 1px) max(1.8rem, 1px);
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .article-notes01 {
    border-width: max(0.1rem, 1px);
    margin-top: max(3rem, 1px);
    padding: max(3rem, 1px);
  }
}
.article-notes01 blockquote,
.article-notes01 ol,
.article-notes01 p,
.article-notes01 ul {
  margin-top: 1em;
}
.article-notes01 blockquote:first-child,
.article-notes01 ol:first-child,
.article-notes01 p + ol,
.article-notes01 p + ul,
.article-notes01 p:first-child,
.article-notes01 ul:first-child {
  margin-top: 0;
}
.article-notes01 p {
  overflow-wrap: anywhere;
  text-align: justify;
  text-justify: inter-ideograph;
}
.article-notes01 strong {
  font-weight: var(--font-weight-bold);
}
.article-notes01 blockquote {
  background-color: var(--color-gray-pale);
  border-radius: var(--border-radius-inner);
  padding: 1em;
}
.article-notes01 a {
  text-decoration: underline;
  text-underline-offset: 0.3em;
}
.article-notes01 a[target="_blank"]:after {
  aspect-ratio: 1/1;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAgMTAwIj48cGF0aCBkPSJNOTEuNjcgMTYuNjd2NTBIMjV2LTUwek0zMy4zMyA1OC4zM2g1MFYyNWgtNTB6bS0xNi42Ni0yNVY3NUg3NXY4LjMzSDguMzN2LTUwaDguMzN6Ii8+PC9zdmc+");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  margin: 0 0.2em;
  vertical-align: middle;
  width: 1em;
}
@media screen and (hover: hover) and (min-width: 768px) {
  .article-notes01 a:hover {
    text-decoration: none;
  }
}
.article-notes01 ol,
.article-notes01 ul {
  list-style: none;
}
.article-notes01 ol > li,
.article-notes01 ul > li {
  margin-top: 0.25em;
  position: relative;
}
.article-notes01 ol > li:before,
.article-notes01 ul > li:before {
  align-items: center;
  display: flex;
  left: 0;
  position: absolute;
  top: 0;
  width: 2em;
}
.article-notes01 ol ol,
.article-notes01 ol p,
.article-notes01 ol ul,
.article-notes01 ul ol,
.article-notes01 ul p,
.article-notes01 ul ul {
  margin-top: 0;
}
.article-notes01 ol.is-note,
.article-notes01 ul.is-note {
  font-size: 0.9em;
}
.article-notes01 ul > li {
  padding-left: 1em;
}
.article-notes01 ul:not(.is-note) li:before {
  aspect-ratio: 1/1;
  background-color: currentcolor;
  clip-path: circle(50% at 50% 50%);
  content: "";
  left: 0.2em;
  top: 0.6em;
  width: 0.3em;
}
html:not([lang^="en"]) .article-notes01 ul.is-note li {
  padding-left: 1.2em;
}
html:not([lang^="en"]) .article-notes01 ul.is-note li:before {
  content: "※";
  top: 0;
}
html[lang^="en"] .article-notes01 ul.is-note li {
  padding-left: 1em;
}
html[lang^="en"] .article-notes01 ul.is-note li:before {
  content: "*";
  top: 0;
}
.article-notes01 ol {
  counter-reset: item;
}
.article-notes01 ol > li {
  padding-left: 1.3em;
}
.article-notes01 ol > li:before {
  content: counters(item, ".") ". ";
  counter-increment: item;
  justify-content: flex-end;
  width: 1em;
}
.article-notes02 {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}
@media screen and (min-width: 768px) {
  .article-notes02 {
    font-family: var(--font-family-base);
    font-size: max(1.2rem, 1px);
    font-weight: var(--font-weight-medium);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (max-width: 767px) {
  .article-notes02 {
    font-family: var(--font-family-base);
    font-size: max(1.1rem, 1px);
    font-weight: var(--font-weight-medium);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (min-width: 768px) {
  .article-notes02 {
    gap: max(1.2rem, 1px) max(2.4rem, 1px);
    justify-content: center;
    margin-top: max(8rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .article-notes02 {
    gap: max(1rem, 1px);
    margin: max(2.4rem, 1px) max(3rem, 1px) 0;
  }
}
.article-notes02 > li {
  padding-left: 1.2em;
  position: relative;
}
.article-notes02 > li:before {
  align-items: center;
  content: "※";
  display: flex;
  left: 0;
  position: absolute;
  top: 0;
  width: 2em;
}
.article-attention {
  background-color: rgb(var(--color-gold-deep-rgb) / 10%);
  border: 0 solid rgb(var(--color-gold-deep-rgb) / 30%);
  border-radius: var(--border-radius);
  display: flex;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .article-attention {
    align-items: center;
    border-width: max(0.1rem, 1px);
    margin-top: max(7.2rem, 1px);
    max-width: max(124.8rem, 1px);
    padding: max(3.6rem, 1px) max(7.2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .article-attention {
    border-width: max(0.1rem, 1px);
    flex-direction: column;
    margin-top: max(3rem, 1px);
    padding: max(3rem, 1px);
  }
}
.article-attention-ttl {
  flex: 1 1 auto;
  font-family: var(--font-family-toppan);
  font-weight: var(--font-weight-extra-bold);
  letter-spacing: var(--tracking-base);
  line-height: var(--leading-normal);
}
@media screen and (min-width: 768px) {
  .article-attention-ttl {
    font-size: max(2.4rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .article-attention-ttl {
    font-size: max(2rem, 1px);
  }
}
.article-attention-body {
  flex: 0 0 auto;
}
.article-attention-body blockquote,
.article-attention-body ol,
.article-attention-body p,
.article-attention-body ul {
  margin-top: 1em;
}
.article-attention-body blockquote:first-child,
.article-attention-body ol:first-child,
.article-attention-body p + ol,
.article-attention-body p + ul,
.article-attention-body p:first-child,
.article-attention-body ul:first-child {
  margin-top: 0;
}
.article-attention-body p {
  overflow-wrap: anywhere;
  text-align: justify;
  text-justify: inter-ideograph;
}
.article-attention-body strong {
  font-weight: var(--font-weight-bold);
}
.article-attention-body blockquote {
  background-color: var(--color-gray-pale);
  border-radius: var(--border-radius-inner);
  padding: 1em;
}
.article-attention-body a {
  text-decoration: underline;
  text-underline-offset: 0.3em;
}
.article-attention-body a[target="_blank"]:after {
  aspect-ratio: 1/1;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAgMTAwIj48cGF0aCBkPSJNOTEuNjcgMTYuNjd2NTBIMjV2LTUwek0zMy4zMyA1OC4zM2g1MFYyNWgtNTB6bS0xNi42Ni0yNVY3NUg3NXY4LjMzSDguMzN2LTUwaDguMzN6Ii8+PC9zdmc+");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  margin: 0 0.2em;
  vertical-align: middle;
  width: 1em;
}
@media screen and (hover: hover) and (min-width: 768px) {
  .article-attention-body a:hover {
    text-decoration: none;
  }
}
.article-attention-body ol,
.article-attention-body ul {
  list-style: none;
}
.article-attention-body ol > li,
.article-attention-body ul > li {
  margin-top: 0.25em;
  position: relative;
}
.article-attention-body ol > li:before,
.article-attention-body ul > li:before {
  align-items: center;
  display: flex;
  left: 0;
  position: absolute;
  top: 0;
  width: 2em;
}
.article-attention-body ol ol,
.article-attention-body ol p,
.article-attention-body ol ul,
.article-attention-body ul ol,
.article-attention-body ul p,
.article-attention-body ul ul {
  margin-top: 0;
}
.article-attention-body ol.is-note,
.article-attention-body ul.is-note {
  font-size: 0.9em;
}
.article-attention-body ul > li {
  padding-left: 1em;
}
.article-attention-body ul:not(.is-note) li:before {
  aspect-ratio: 1/1;
  background-color: currentcolor;
  clip-path: circle(50% at 50% 50%);
  content: "";
  left: 0.2em;
  top: 0.6em;
  width: 0.3em;
}
html:not([lang^="en"]) .article-attention-body ul.is-note li {
  padding-left: 1.2em;
}
html:not([lang^="en"]) .article-attention-body ul.is-note li:before {
  content: "※";
  top: 0;
}
html[lang^="en"] .article-attention-body ul.is-note li {
  padding-left: 1em;
}
html[lang^="en"] .article-attention-body ul.is-note li:before {
  content: "*";
  top: 0;
}
.article-attention-body ol {
  counter-reset: item;
}
.article-attention-body ol > li {
  padding-left: 1.3em;
}
.article-attention-body ol > li:before {
  content: counters(item, ".") ". ";
  counter-increment: item;
  justify-content: flex-end;
  width: 1em;
}
@media screen and (min-width: 768px) {
  .article-attention-body {
    font-size: max(1.6rem, 1px);
    width: max(72rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .article-attention-body {
    font-size: max(1.4rem, 1px);
    margin-top: max(2.4rem, 1px);
  }
}
.article-attention-body ol,
.article-attention-body ul {
  font-family: var(--font-family-toppan);
  font-weight: var(--font-weight-extra-bold);
  letter-spacing: var(--tracking-base);
  line-height: var(--leading-normal);
}
@media screen and (min-width: 768px) {
  .article-attention-body ol,
  .article-attention-body ul {
    font-size: max(1.8rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .article-attention-body ol,
  .article-attention-body ul {
    font-size: max(1.5rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .category:has(.category-ttl) {
    margin-top: calc(-12rem - var(--wp-admin--admin-bar--height));
    padding-top: calc(max(17.6rem, 1px) + var(--wp-admin--admin-bar--height));
  }
}
@media screen and (max-width: 767px) {
  .category:has(.category-ttl) {
    margin-top: -10.8rem;
    padding-top: max(13.2rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .category:not(:has(.category-ttl)) {
    margin-top: max(7.2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .category:not(:has(.category-ttl)) {
    margin-top: max(3rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .category + .category {
    margin-top: calc(-6.8rem - var(--wp-admin--admin-bar--height));
    padding-top: calc(max(17.6rem, 1px) + var(--wp-admin--admin-bar--height));
  }
}
@media screen and (max-width: 767px) {
  .category + .category {
    margin-top: -7.8rem;
    padding-top: max(13.2rem, 1px);
  }
}
.category-ttl {
  font-family: var(--font-family-toppan);
  font-weight: var(--font-weight-extra-bold);
  letter-spacing: var(--tracking-base);
  line-height: var(--leading-normal);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .category-ttl {
    font-size: max(7.2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .category-ttl {
    font-size: max(3.2rem, 1px);
  }
}
.category-list {
  align-items: stretch;
  display: grid;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .category-list {
    gap: max(4.8rem, 1px);
    grid-template-columns: repeat(auto-fill, max(60rem, 1px));
    margin-inline: max(2.4rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .category-list {
    gap: max(2rem, 1px);
    grid-template-columns: 1fr;
  }
}
@media screen and (min-width: 768px) {
  .category-list:has(.menu-banner) {
    grid-template-columns: repeat(auto-fill, max(77.6rem, 1px));
  }
  .category-list:has(> .menu-banner:only-child) {
    grid-template-columns: max(77.6rem, 1px);
    justify-content: center;
  }
  .category-ttl + .category-list {
    margin-top: max(5.6rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .category-ttl + .category-list {
    margin-top: max(2.4rem, 1px);
  }
}
.menu {
  background-color: var(--color-white);
  border: 0 solid var(--color-beige);
  border-radius: var(--border-radius);
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 768px) {
  .menu {
    border-width: max(0.1rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu {
    border-width: max(0.1rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu:has(.menu-img) {
    padding: max(1.2rem, 1px) max(4.8rem, 1px) max(4rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu:has(.menu-img) {
    padding: max(1rem, 1px) max(3rem, 1px) max(2.8rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu:not(:has(.menu-img)) {
    padding: max(4.8rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu:not(:has(.menu-img)) {
    padding: max(3rem, 1px);
  }
}
.menu.menu-topping {
  display: grid;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .menu.menu-topping {
    gap: max(3.9rem, 1px) max(4.8rem, 1px);
    grid-column: 1/-1;
    grid-template-columns: repeat(auto-fill, max(33.5rem, 1px));
    padding: max(7.2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu.menu-topping {
    gap: max(1.6rem, 1px);
    grid-template-columns: 1fr;
    padding: max(3rem, 1px);
  }
}
.menu.menu-banner {
  background-color: initial;
  border-radius: 0;
  border-width: 0;
  overflow: visible;
  padding: 0;
}
.menu-img {
  border-radius: var(--border-radius-inner);
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 768px) {
  .menu-img {
    height: max(44.4rem, 1px);
    margin-inline: -3.6rem;
  }
}
@media screen and (max-width: 767px) {
  .menu-img {
    height: max(26.2rem, 1px);
    margin-inline: -2rem;
  }
}
.menu-img:has(.c-img-no):before {
  border: 0 solid var(--color-beige-pale);
  border-radius: var(--border-radius-inner);
  content: "";
  display: block;
  inset: 0;
  position: absolute;
}
@media screen and (min-width: 768px) {
  .menu-img:has(.c-img-no):before {
    border-width: max(0.1rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-img:has(.c-img-no):before {
    border-width: max(0.1rem, 1px);
  }
}
.menu-img img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.menu-spiciness {
  align-items: center;
  background-color: var(--color-white);
  border: 0 solid var(--color-red);
  border-radius: var(--border-radius-full);
  color: var(--color-red);
  display: flex;
  position: absolute;
}
@media screen and (min-width: 768px) {
  .menu-spiciness {
    border-width: max(0.1rem, 1px);
    gap: max(0.4rem, 1px);
    padding: max(0.9rem, 1px) max(1.5rem, 1px) max(0.9rem, 1px) max(1.1rem, 1px);
    right: max(3.2rem, 1px);
    top: max(3.2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-spiciness {
    border-width: max(0.1rem, 1px);
    gap: max(0.4rem, 1px);
    padding: max(0.7rem, 1px) max(1.1rem, 1px) max(0.7rem, 1px) max(0.9rem, 1px);
    right: max(2rem, 1px);
    top: max(2rem, 1px);
  }
}
.menu-spiciness-list {
  display: flex;
}
.menu-spiciness-item {
  aspect-ratio: 1/1;
  line-height: var(--leading-none);
}
@media screen and (min-width: 768px) {
  .menu-spiciness-item {
    width: max(2.4rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-spiciness-item {
    width: max(1.8rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-spiciness-item + .menu-spiciness-item {
    margin-left: -1.2rem;
  }
}
@media screen and (max-width: 767px) {
  .menu-spiciness-item + .menu-spiciness-item {
    margin-left: -0.8rem;
  }
}
@media screen and (min-width: 768px) {
  .menu-spiciness-txt {
    font-family: var(--font-family-toppan);
    font-size: max(1.6rem, 1px);
    font-weight: var(--font-weight-extra-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (max-width: 767px) {
  .menu-spiciness-txt {
    font-family: var(--font-family-toppan);
    font-size: max(1.2rem, 1px);
    font-weight: var(--font-weight-extra-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (min-width: 768px) {
  .menu-spiciness-txt {
    font-size: max(1.6rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-spiciness-txt {
    font-size: max(1.4rem, 1px);
  }
}
.menu-item {
  position: relative;
}
@media screen and (min-width: 768px) {
  * + .menu-item {
    margin-top: max(3.2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  * + .menu-item {
    margin-top: max(2.4rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-item:not(:last-child) {
    padding-bottom: max(2.4rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-item:not(:last-child) {
    padding-bottom: max(1.6rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-item + .menu-item {
    margin-top: max(2.4rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-item + .menu-item {
    margin-top: max(1.6rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-item-label {
    font-family: var(--font-family-toppan);
    font-size: max(1.6rem, 1px);
    font-weight: var(--font-weight-extra-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (max-width: 767px) {
  .menu-item-label {
    font-family: var(--font-family-toppan);
    font-size: max(1.2rem, 1px);
    font-weight: var(--font-weight-extra-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (min-width: 768px) {
  .menu-item-ttl {
    font-family: var(--font-family-toppan);
    font-size: max(3.6rem, 1px);
    font-weight: var(--font-weight-extra-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (max-width: 767px) {
  .menu-item-ttl {
    font-family: var(--font-family-toppan);
    font-size: max(2.4rem, 1px);
    font-weight: var(--font-weight-extra-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
.menu-item-price {
  align-items: center;
  display: flex;
  font-family: var(--font-family-toppan);
  font-weight: var(--font-weight-extra-bold);
  justify-content: flex-end;
  letter-spacing: var(--tracking-base);
  line-height: var(--leading-tight);
}
@media screen and (min-width: 768px) {
  .menu-item-price {
    margin-top: max(0.7rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-item-price {
    margin-top: max(0.8rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-item-price + .menu-item-price {
    margin-top: max(1.1rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-item-price + .menu-item-price {
    margin-top: max(1rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-item-price span + strong {
    margin-left: max(0.5rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-item-price span + strong {
    margin-left: max(0.6rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-item-price strong {
    font-size: max(3.6rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-item-price strong {
    font-size: max(2.4rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-item-price span {
    font-size: max(2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-item-price span {
    font-size: max(1.2rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-item-price strong + span {
    margin-left: max(0.1rem, 1px);
    margin-top: 0.5em;
  }
}
@media screen and (max-width: 767px) {
  .menu-item-price strong + span {
    margin: 0.5em max(0.2rem, 1px) 0;
  }
}
@media screen and (min-width: 768px) {
  .menu-item-price small {
    font-size: max(1.2rem, 1px);
    margin-left: max(0.1rem, 1px);
    margin-top: 1em;
  }
}
@media screen and (max-width: 767px) {
  .menu-item-price small {
    font-size: max(1rem, 1px);
    margin-top: 0.6em;
  }
}
.menu-item-price.is-strike {
  position: relative;
  width: max-content;
  margin-inline: auto 0;
}
.menu-item-price.is-strike::before {
  content: "";
  position: absolute;
  left: -5%;
  right: 0;
  bottom: 35%;
  border-top: 1px solid currentColor;
  transform: translateY(-50%);
  pointer-events: none;
  width: 110%;
}
.menu-item-txt {
  overflow-wrap: anywhere;
  text-align: justify;
  text-justify: inter-ideograph;
}
@media screen and (min-width: 768px) {
  .menu-item-txt {
    font-size: max(1.5rem, 1px);
    margin-top: max(2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-item-txt {
    font-size: max(1.3rem, 1px);
    margin-top: max(1.7rem, 1px);
  }
}
.menu-item:not(:last-child):after {
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .menu-item:not(:last-child):after {
    background-image: linear-gradient(
      to right,
      var(--color-beige-pale) max(0.4rem, 1px),
      #0000 max(0.4rem, 1px)
    );
    background-repeat: repeat-x;
    background-size: calc(max(0.4rem, 1px) + max(0.4rem, 1px)) 100%;
    height: max(0.1rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-item:not(:last-child):after {
    background-image: linear-gradient(
      to right,
      var(--color-beige-pale) max(0.4rem, 1px),
      #0000 max(0.4rem, 1px)
    );
    background-repeat: repeat-x;
    background-size: calc(max(0.4rem, 1px) + max(0.4rem, 1px)) 100%;
    height: max(0.1rem, 1px);
  }
}
.menu-details {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .menu-details {
    gap: max(1.2rem, 1px);
    margin-top: max(2.4rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-details {
    gap: max(1rem, 1px);
    margin-top: max(1.6rem, 1px);
  }
}
.menu-details-item {
  padding-left: 1.5em;
  position: relative;
}
@media screen and (min-width: 768px) {
  .menu-details-item {
    font-family: var(--font-family-toppan);
    font-size: max(1.6rem, 1px);
    font-weight: var(--font-weight-extra-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (max-width: 767px) {
  .menu-details-item {
    font-family: var(--font-family-toppan);
    font-size: max(1.2rem, 1px);
    font-weight: var(--font-weight-extra-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (min-width: 768px) {
  .menu-details-item {
    font-size: max(2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-details-item {
    font-size: max(1.3rem, 1px);
  }
}
.menu-details-item:before {
  aspect-ratio: 1/1;
  background-color: currentcolor;
  border-radius: var(--border-radius-full);
  content: "";
  height: 0.3em;
  left: 0.5em;
  margin: auto;
  position: absolute;
  top: 0.6em;
  width: 0.3em;
}
.menu-campaign {
  background-color: var(--color-beige-lightest);
  border: 0 solid var(--color-red);
  border-radius: var(--border-radius-inner);
  color: var(--color-red);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .menu-campaign {
    font-family: var(--font-family-toppan);
    font-size: max(1.6rem, 1px);
    font-weight: var(--font-weight-extra-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (max-width: 767px) {
  .menu-campaign {
    font-family: var(--font-family-toppan);
    font-size: max(1.2rem, 1px);
    font-weight: var(--font-weight-extra-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (min-width: 768px) {
  .menu-campaign {
    border-width: max(0.1rem, 1px);
    font-size: max(2rem, 1px);
    margin-top: max(2.4rem, 1px);
    padding: max(2.4rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-campaign {
    border-width: max(0.1rem, 1px);
    font-size: max(1.3rem, 1px);
    margin-top: max(1.6rem, 1px);
    padding: max(1.6rem, 1px);
  }
}
.menu-campaign blockquote,
.menu-campaign ol,
.menu-campaign p,
.menu-campaign ul {
  margin-top: 1em;
}
.menu-campaign blockquote:first-child,
.menu-campaign ol:first-child,
.menu-campaign p + ol,
.menu-campaign p + ul,
.menu-campaign p:first-child,
.menu-campaign ul:first-child {
  margin-top: 0;
}
.menu-campaign p {
  overflow-wrap: anywhere;
  text-align: justify;
  text-justify: inter-ideograph;
}
.menu-campaign strong {
  font-weight: var(--font-weight-bold);
}
.menu-campaign blockquote {
  background-color: var(--color-gray-pale);
  border-radius: var(--border-radius-inner);
  padding: 1em;
}
.menu-campaign a {
  text-decoration: underline;
  text-underline-offset: 0.3em;
}
.menu-campaign a[target="_blank"]:after {
  aspect-ratio: 1/1;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAgMTAwIj48cGF0aCBkPSJNOTEuNjcgMTYuNjd2NTBIMjV2LTUwek0zMy4zMyA1OC4zM2g1MFYyNWgtNTB6bS0xNi42Ni0yNVY3NUg3NXY4LjMzSDguMzN2LTUwaDguMzN6Ii8+PC9zdmc+");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  margin: 0 0.2em;
  vertical-align: middle;
  width: 1em;
}
@media screen and (hover: hover) and (min-width: 768px) {
  .menu-campaign a:hover {
    text-decoration: none;
  }
}
.menu-campaign ol,
.menu-campaign ul {
  list-style: none;
}
.menu-campaign ol > li,
.menu-campaign ul > li {
  margin-top: 0.25em;
  position: relative;
}
.menu-campaign ol > li:before,
.menu-campaign ul > li:before {
  align-items: center;
  display: flex;
  left: 0;
  position: absolute;
  top: 0;
  width: 2em;
}
.menu-campaign ol ol,
.menu-campaign ol p,
.menu-campaign ol ul,
.menu-campaign ul ol,
.menu-campaign ul p,
.menu-campaign ul ul {
  margin-top: 0;
}
.menu-campaign ol.is-note,
.menu-campaign ul.is-note {
  font-size: 0.9em;
}
.menu-campaign ul > li {
  padding-left: 1em;
}
.menu-campaign ul:not(.is-note) li:before {
  aspect-ratio: 1/1;
  background-color: currentcolor;
  clip-path: circle(50% at 50% 50%);
  content: "";
  left: 0.2em;
  top: 0.6em;
  width: 0.3em;
}
html:not([lang^="en"]) .menu-campaign ul.is-note li {
  padding-left: 1.2em;
}
html:not([lang^="en"]) .menu-campaign ul.is-note li:before {
  content: "※";
  top: 0;
}
html[lang^="en"] .menu-campaign ul.is-note li {
  padding-left: 1em;
}
html[lang^="en"] .menu-campaign ul.is-note li:before {
  content: "*";
  top: 0;
}
.menu-campaign ol {
  counter-reset: item;
}
.menu-campaign ol > li {
  padding-left: 1.3em;
}
.menu-campaign ol > li:before {
  content: counters(item, ".") ". ";
  counter-increment: item;
  justify-content: flex-end;
  width: 1em;
}
.menu-campaign blockquote,
.menu-campaign ol,
.menu-campaign p,
.menu-campaign ul {
  display: inline-block;
}
.menu-sub {
  display: grid;
  grid-template-columns: 1fr;
}
@media screen and (min-width: 768px) {
  .menu-sub {
    gap: max(0.9rem, 1px);
    margin-top: max(2.7rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-sub {
    gap: max(1rem, 1px);
    margin-top: max(2.2rem, 1px);
  }
}
.menu-sub-item {
  align-items: center;
  display: flex;
}
.menu-sub-ttl {
  background-color: var(--color-beige-verylight);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .menu-sub-ttl {
    font-size: max(1.4rem, 1px);
    padding: max(0.2rem, 1px) max(1.2rem, 1px);
    width: max(20.5rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-sub-ttl {
    font-size: max(1rem, 1px);
    padding: 0 max(0.3rem, 1px);
    width: max(14.2rem, 1px);
  }
}
.menu-sub-price {
  align-items: center;
  display: flex;
  font-family: var(--font-family-toppan);
  font-weight: var(--font-weight-extra-bold);
  justify-content: flex-end;
  letter-spacing: var(--tracking-base);
  line-height: var(--leading-tight);
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .menu-sub-price strong {
    font-size: max(3.6rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-sub-price strong {
    font-size: max(2.4rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-sub-price span {
    font-size: max(2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-sub-price span {
    font-size: max(1.2rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-sub-price strong + span {
    margin-left: max(0.1rem, 1px);
    margin-top: 0.5em;
  }
}
@media screen and (max-width: 767px) {
  .menu-sub-price strong + span {
    margin: 0.5em max(0.2rem, 1px) 0;
  }
}
@media screen and (min-width: 768px) {
  .menu-sub-price small {
    font-size: max(1.2rem, 1px);
    margin-left: max(0.1rem, 1px);
    margin-top: 1em;
  }
}
@media screen and (max-width: 767px) {
  .menu-sub-price small {
    font-size: max(1rem, 1px);
    margin-top: 0.6em;
  }
}
.menu-notes {
  list-style: none;
}
@media screen and (min-width: 768px) {
  .menu-notes {
    font-family: var(--font-family-base);
    font-size: max(1.2rem, 1px);
    font-weight: var(--font-weight-medium);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (max-width: 767px) {
  .menu-notes {
    font-family: var(--font-family-base);
    font-size: max(1.1rem, 1px);
    font-weight: var(--font-weight-medium);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (min-width: 768px) {
  .menu-notes {
    margin-top: max(2.8rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-notes {
    margin-top: max(2.1rem, 1px);
  }
}
.menu-notes > li {
  padding-left: 1.2em;
  position: relative;
}
.menu-notes > li:before {
  align-items: center;
  content: "※";
  display: flex;
  left: 0;
  position: absolute;
  top: 0;
  width: 2em;
}
.menu-notes > li + li {
  margin-top: 0.4em;
}
.menu-topping-item {
  align-items: center;
  display: flex;
  position: relative;
}
@media screen and (min-width: 768px) {
  .menu-topping-item {
    padding-bottom: max(1.5rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-topping-item {
    padding-bottom: max(1.1rem, 1px);
  }
}
.menu-topping-item:after {
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .menu-topping-item:after {
    background-image: linear-gradient(
      to right,
      var(--color-beige-pale) max(0.4rem, 1px),
      #0000 max(0.4rem, 1px)
    );
    background-repeat: repeat-x;
    background-size: calc(max(0.4rem, 1px) + max(0.4rem, 1px)) 100%;
    height: max(0.1rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-topping-item:after {
    background-image: linear-gradient(
      to right,
      var(--color-beige-pale) max(0.4rem, 1px),
      #0000 max(0.4rem, 1px)
    );
    background-repeat: repeat-x;
    background-size: calc(max(0.4rem, 1px) + max(0.4rem, 1px)) 100%;
    height: max(0.1rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-topping-ttl {
    font-family: var(--font-family-toppan);
    font-size: max(1.6rem, 1px);
    font-weight: var(--font-weight-extra-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (max-width: 767px) {
  .menu-topping-ttl {
    font-family: var(--font-family-toppan);
    font-size: max(1.2rem, 1px);
    font-weight: var(--font-weight-extra-bold);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (min-width: 768px) {
  .menu-topping-ttl {
    font-size: max(2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-topping-ttl {
    font-size: max(1.8rem, 1px);
  }
}
.menu-topping-ttl sup {
  font-size: 0.6em;
}
.menu-topping-ttl span {
  font-size: 0.8em;
}
.menu-topping-price {
  align-items: center;
  display: flex;
  font-family: var(--font-family-toppan);
  font-weight: var(--font-weight-extra-bold);
  justify-content: flex-end;
  letter-spacing: var(--tracking-base);
  line-height: var(--leading-tight);
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .menu-topping-price strong {
    font-size: max(2.4rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-topping-price strong {
    font-size: max(2rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-topping-price span {
    font-size: max(2rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-topping-price span {
    font-size: max(1.2rem, 1px);
  }
}
@media screen and (min-width: 768px) {
  .menu-topping-price strong + span {
    margin: 0 max(0.1rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-topping-price strong + span {
    margin: 0.5em max(0.2rem, 1px) 0;
  }
}
@media screen and (min-width: 768px) {
  .menu-topping-price small {
    font-size: max(1.2rem, 1px);
    margin-top: 0.3em;
  }
}
@media screen and (max-width: 767px) {
  .menu-topping-price small {
    font-size: max(1rem, 1px);
    margin-top: 0.6em;
  }
}
.menu-topping-notes {
  color: var(--color-gray);
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .menu-topping-notes {
    font-family: var(--font-family-base);
    font-size: max(1.2rem, 1px);
    font-weight: var(--font-weight-medium);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (max-width: 767px) {
  .menu-topping-notes {
    font-family: var(--font-family-base);
    font-size: max(1.1rem, 1px);
    font-weight: var(--font-weight-medium);
    letter-spacing: var(--tracking-base);
    line-height: var(--leading-normal);
  }
}
@media screen and (min-width: 768px) {
  .menu-topping-notes {
    gap: max(1.8rem, 1px);
    grid-column: 1/-1;
    justify-content: flex-end;
    padding-top: max(0.9rem, 1px);
  }
}
@media screen and (max-width: 767px) {
  .menu-topping-notes {
    gap: max(1rem, 1px);
    padding-top: max(0.8rem, 1px);
  }
}
.menu-banner-link {
  display: block;
}
@media screen and (hover: hover) and (min-width: 768px) {
  .menu-banner-link[href]:hover .menu-banner-img {
    box-shadow: 0 max(0.4rem, 1px) max(0.6rem, 1px) 0
      rgb(var(--color-beige-deepest-rgb) / 24%);
    transform: scale(0.98);
  }
}
.menu-banner-img {
  border-radius: var(--border-radius);
  overflow: hidden;
  transition:
    box-shadow 0.2s var(--ease-power4-out),
    transform 0.4s var(--ease-power4-out);
}
@media screen and (min-width: 768px) {
  .menu-banner-img {
    box-shadow: 0 max(1.6rem, 1px) max(2.4rem, 1px) 0
      rgb(var(--color-beige-deepest-rgb) / 24%);
  }
}
@media screen and (max-width: 767px) {
  .menu-banner-img {
    box-shadow: 0 max(0.8rem, 1px) max(1.2rem, 1px) 0
      rgb(var(--color-beige-deepest-rgb) / 24%);
  }
}
