@charset "UTF-8";

@font-face {
  font-style: normal;
  font-weight: normal;
  src: url("../fonts/icomoon.eot?6jck9b");
  src: url("../fonts/icomoon.eot?6jck9b#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?6jck9b") format("truetype"), url("../fonts/icomoon.woff?6jck9b") format("woff"), url("../fonts/icomoon.svg?6jck9b#icomoon") format("svg");
  font-family: "icomoon";
  font-display: block;
}

[class^=icon-],
[class*=" icon-"] {
  speak: never;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-right: 0.2em;
  margin-left: 0.2em;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  text-transform: none;
}

.icon-envelope-o:before {
  content: "\f003";
}

.icon-twitter-square:before {
  content: "\f081";
}

.icon-external-link:before {
  content: "\e901";
}

.icon-phone:before {
  content: "\f095";
}

.icon-phone-square:before {
  content: "\f098";
}

.icon-caret-down:before {
  content: "\f0d7";
}

.icon-caret-up:before {
  content: "\f0d8";
}

.icon-caret-left:before {
  content: "\f0d9";
}

.icon-caret-right:before {
  content: "\f0da";
}

.icon-angle-left:before {
  content: "\f104";
}

.icon-angle-right:before {
  content: "\f105";
}

.icon-angle-up:before {
  content: "\f106";
}

.icon-angle-down:before {
  content: "\f107";
}

.icon-exclamation:before {
  content: "\f12a";
}

.icon-time:before {
  content: "\e900";
}

.icon-timer:before {
  content: "\e902";
}

:root {
  --Dark-brown: #380606;
  --Goldenrod: #c9952d;
  --Dark-gold: #996527;
  --White: #fff;
  --Black: #231815;
  --Green: #43ac43;
  --Twitter: #1d9bf0;
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-size: inherit;
  line-height: inherit;
  font-family: inherit;
}

::before,
::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
  text-decoration: inherit;
  vertical-align: inherit;
}

b,
strong {
  font-weight: bold;
}

main {
  display: block;
}

ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  word-break: break-all;
}

img {
  max-width: 100%;
  height: auto;
  border-style: none;
}

video {
  outline: none;
}

pre,
code {
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
}

svg:not([fill]) {
  fill: currentColor;
}

[hidden] {
  display: none;
  /* Add the correct display in IE */
}

/* 
 * Form
 */

button,
input,
optgroup,
select,
textarea {
  font-size: inherit;
  line-height: inherit;
  font-family: inherit;
}

/* Show the overflow in IE. */

button,
input {
  /* Show the overflow in Edge. */
  overflow: visible;
}

/* Remove the inheritance of text transform in Edge, Firefox, and IE.  */

button,
select {
  /* Remove the inheritance of text transform in Firefox. */
  text-transform: none;
}

/* button */

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  display: inline-block;
  cursor: pointer;
}

[role=button] {
  cursor: pointer;
}

/* normalize 通り */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/* normalize 通り */

legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: table;
  max-width: 100%;
  padding: 0;
  color: inherit;
  white-space: normal;
}

input,
textarea,
select,
button {
  padding: 0.25em 0.5em;
  border: 1px solid var(--Black);
  border-radius: 0;
  color: #333;
}

[type=color] {
  padding: 0;
}

[type=range] {
  vertical-align: middle;
}

/* 
 * Accessibility
 */

/* Specify the progress cursor of updating elements */

[aria-busy=true] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */

[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */

[aria-disabled] {
  cursor: default;
}

/* Hide content from screens but not screenreaders */

html {
  color: var(--Black);
  font-size: 62.5%;
}

body {
  -webkit-text-size-adjust: 100%;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1.2;
  font-family: "Noto Sans CJK JP", sans-serif;
}

a,
a:link,
a:visited,
a:active,
a:hover {
  color: currentColor;
  text-decoration: none;
}

p {
  line-height: 1.5;
}

sup {
  font-size: 0.5em;
  vertical-align: super;
}

svg {
  transform-box: fill-box;
}

ruby {
  text-indent: 0px;
}

ruby > rt {
  display: block;
  font-size: 50%;
  text-align: start;
}

rt {
  -webkit-text-emphasis: none;
  line-height: normal;
  text-emphasis: none;
  text-indent: 0px;
}

_::-webkit-full-page-media,
_:future,
:root ruby > rt {
  zoom: 0.5;
  font-size: -webkit-ruby-text;
}

.header {
  -webkit-transition: opacity 0.2s;
  z-index: 1;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: rgba(0, 0, 0, 0.8);
  color: var(--White);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s;
}

.header__inner {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  display: grid;
  grid-template-columns: auto 100px;
  justify-content: center;
  padding: 1rem 2rem;
  gap: 1rem;
}

.header__inner p {
  -ms-flex-item-align: center;
  align-self: center;
}

.is-open .header {
  opacity: 1;
  pointer-events: initial;
}

.kv {
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.3)), color-stop(50%, rgba(255, 255, 255, 0)), to(rgba(0, 0, 0, 0.3)));
  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.3) 0%, rgba(255, 255, 255, 0) 50%, rgba(0, 0, 0, 0.3) 100%);
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.3) 0%, rgba(255, 255, 255, 0) 50%, rgba(0, 0, 0, 0.3) 100%);
  background-color: var(--Dark-brown);
}

.kv-image {
  display: grid;
  grid-template-columns: repeat(8, 12.5%);
}

.kv-image img {
  -o-object-fit: cover;
  height: 200px;
  object-fit: cover;
}

.kv-catch {
  padding: 5rem 4rem;
}

.logo-set {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: grid;
  grid-template-columns: repeat(5, auto);
  justify-content: space-between;
  max-width: 420px;
  margin-right: auto;
  margin-left: auto;
  gap: 1rem;
}

.logo-set__item {
  -ms-flex-item-align: center;
  align-self: center;
}

.menu {
  padding: 10rem 2rem 8rem;
  border: 1rem solid var(--Goldenrod);
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.3)), color-stop(50%, rgba(255, 255, 255, 0)), to(rgba(0, 0, 0, 0.3)));
  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.3) 0%, rgba(255, 255, 255, 0) 50%, rgba(0, 0, 0, 0.3) 100%);
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.3) 0%, rgba(255, 255, 255, 0) 50%, rgba(0, 0, 0, 0.3) 100%);
}

.menu__inner {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
}

.menu-catch {
  padding: 0 0 8rem;
  border-bottom: 1px solid var(--White);
}

.menu-list {
  display: grid;
  grid-template-columns: repeat(2, calc(50% - 20px));
  gap: 4rem;
}

.menu-list__item {
  padding: 2rem 0;
  border-bottom: 2px solid var(--Goldenrod);
}

.menu-list__item.--inversion {
  margin-right: -1rem;
  margin-left: -1rem;
  padding-right: 1rem;
  padding-left: 1rem;
  border: none;
  background-color: var(--Dark-gold);
  color: var(--Dark-brown);
}

.menu-list__inner {
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: repeat(2, calc(50% - 10px));
  column-gap: 20px;
}

.menu-list__image {
  grid-area: 1/2/2/3;
  padding-bottom: 1rem;
}

.menu-list__image img {
  -o-object-fit: cover;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.menu-info {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.menu-info__comment {
  -webkit-box-flex: 2;
  -ms-flex: 2 1 auto;
  flex: 2 1 auto;
}

.menu-point {
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 80px auto;
  column-gap: 10px;
  row-gap: 5px;
  padding: 0.6em 1em;
  border-radius: 5px;
  background-color: var(--Goldenrod);
  color: var(--Dark-brown);
}

.menu-point__head {
  -ms-flex-item-align: center;
  align-self: center;
  padding: 0.3em 1em;
  overflow: hidden;
  border-radius: 5px;
  background: url("../images/bg_arrow.svg") no-repeat center right/cover;
  color: var(--White);
}

.menu-point__title {
  font-weight: 400;
  font-size: 2rem;
}

.menu-point__text {
  grid-area: 2/1/3/3;
}

.restaurant {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 390px;
}

.restaurant__name {
  padding-bottom: 0.3em;
}

.restaurant__category {
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  font-weight: 400;
  font-size: 1.3rem;
}

.restaurant__info {
  grid-area: 2/1/3/3;
  padding-top: 0.3em;
  border-top: 1px solid var(--Goldenrod);
}

.--inversion .restaurant__info {
  border-color: var(--Dark-brown);
}

.program {
  padding: 8rem 2rem;
}

.program__inner {
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}

.program__name {
  padding-top: 4rem;
  border-top: 1px solid var(--White);
}

.program-detail {
  display: grid;
  grid-template-rows: repeat(3, auto);
  grid-template-columns: 105px auto;
  max-width: 330px;
  margin-right: auto;
  margin-left: auto;
  padding: 1rem;
  border-radius: 10px;
  background-color: var(--White);
  color: var(--Dark-brown);
}

.program-detail dd::before {
  content: ": ";
}

.program-profile {
  max-width: 600px;
  margin-right: auto;
  margin-left: auto;
  padding: 2rem 3rem;
  border: 1px solid var(--White);
  border-radius: 10px;
}

.footer {
  padding: 2rem 2rem;
  background-color: var(--Dark-brown);
}

.u-disp {
  display: block;
}

.u-none {
  display: none;
}

.u-inline {
  display: inline;
}

.u-ib {
  display: inline-block;
}

.u-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.u-grid {
  display: grid;
}

.mt0 {
  margin-top: 0rem;
}

.mt5 {
  margin-top: 0.5rem;
}

.mt10 {
  margin-top: 1rem;
}

.mt15 {
  margin-top: 1.5rem;
}

.mt20 {
  margin-top: 2rem;
}

.mt25 {
  margin-top: 2.5rem;
}

.mt30 {
  margin-top: 3rem;
}

.mt35 {
  margin-top: 3.5rem;
}

.mt40 {
  margin-top: 4rem;
}

.mt45 {
  margin-top: 4.5rem;
}

.mt50 {
  margin-top: 5rem;
}

.mt55 {
  margin-top: 5.5rem;
}

.mt60 {
  margin-top: 6rem;
}

.mt65 {
  margin-top: 6.5rem;
}

.mt70 {
  margin-top: 7rem;
}

.mt75 {
  margin-top: 7.5rem;
}

.mt80 {
  margin-top: 8rem;
}

.mt85 {
  margin-top: 8.5rem;
}

.mt90 {
  margin-top: 9rem;
}

.mt95 {
  margin-top: 9.5rem;
}

.mt100 {
  margin-top: 10rem;
}

.mAuto {
  margin-right: auto;
  margin-left: auto;
}

.u-icon {
  margin-right: 0.2em;
  vertical-align: bottom;
}

.fs10 {
  font-size: 1rem;
}

.fs11 {
  font-size: 1.1rem;
}

.fs12 {
  font-size: 1.2rem;
}

.fs13 {
  font-size: 1.3rem;
}

.fs14 {
  font-size: 1.4rem;
}

.fs15 {
  font-size: 1.5rem;
}

.fs16 {
  font-size: 1.6rem;
}

.fs17 {
  font-size: 1.7rem;
}

.fs18 {
  font-size: 1.8rem;
}

.fs19 {
  font-size: 1.9rem;
}

.fs20 {
  font-size: 2rem;
}

.fs21 {
  font-size: 2.1rem;
}

.fs22 {
  font-size: 2.2rem;
}

.fs23 {
  font-size: 2.3rem;
}

.fs24 {
  font-size: 2.4rem;
}

.fs25 {
  font-size: 2.5rem;
}

.fs26 {
  font-size: 2.6rem;
}

.fs27 {
  font-size: 2.7rem;
}

.fs28 {
  font-size: 2.8rem;
}

.fs29 {
  font-size: 2.9rem;
}

.fs30 {
  font-size: 3rem;
}

.fs31 {
  font-size: 3.1rem;
}

.fs32 {
  font-size: 3.2rem;
}

.fs33 {
  font-size: 3.3rem;
}

.fs34 {
  font-size: 3.4rem;
}

.fs35 {
  font-size: 3.5rem;
}

.fs36 {
  font-size: 3.6rem;
}

.fs37 {
  font-size: 3.7rem;
}

.fs38 {
  font-size: 3.8rem;
}

.fs39 {
  font-size: 3.9rem;
}

.fs40 {
  font-size: 4rem;
}

.fs41 {
  font-size: 4.1rem;
}

.fs42 {
  font-size: 4.2rem;
}

.fs43 {
  font-size: 4.3rem;
}

.fs44 {
  font-size: 4.4rem;
}

.fs45 {
  font-size: 4.5rem;
}

.fs46 {
  font-size: 4.6rem;
}

.fs47 {
  font-size: 4.7rem;
}

.fs48 {
  font-size: 4.8rem;
}

.fs49 {
  font-size: 4.9rem;
}

.fs50 {
  font-size: 5rem;
}

.fw1 {
  font-weight: 100;
}

.fw2 {
  font-weight: 200;
}

.fw3 {
  font-weight: 300;
}

.fw4 {
  font-weight: 400;
}

.fw5 {
  font-weight: 500;
}

.fw6 {
  font-weight: 600;
}

.fw7 {
  font-weight: 700;
}

.fw8 {
  font-weight: 800;
}

.fw9 {
  font-weight: 900;
}

.lh0 {
  line-height: 0;
}

.lh1 {
  line-height: 0.1;
}

.lh2 {
  line-height: 0.2;
}

.lh3 {
  line-height: 0.3;
}

.lh4 {
  line-height: 0.4;
}

.lh5 {
  line-height: 0.5;
}

.lh6 {
  line-height: 0.6;
}

.lh7 {
  line-height: 0.7;
}

.lh8 {
  line-height: 0.8;
}

.lh9 {
  line-height: 0.9;
}

.lh10 {
  line-height: 1;
}

.lh11 {
  line-height: 1.1;
}

.lh12 {
  line-height: 1.2;
}

.lh13 {
  line-height: 1.3;
}

.lh14 {
  line-height: 1.4;
}

.lh15 {
  line-height: 1.5;
}

.lh16 {
  line-height: 1.6;
}

.lh17 {
  line-height: 1.7;
}

.lh18 {
  line-height: 1.8;
}

.lh19 {
  line-height: 1.9;
}

.lh20 {
  line-height: 2;
}

.u-wbr {
  word-break: keep-all;
  overflow-wrap: break-word;
}

.alignCenter {
  text-align: center;
}

.alignLeft {
  text-align: left;
}

.alignRight {
  text-align: right;
}

.alignJustify {
  text-align: justify;
}

.u-selif {
  font-family: "Noto Serif JP", sans-serif;
}

.u-paragraph p {
  margin-bottom: 0.8em;
  line-height: 1.8;
}

.u-kerning {
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.bgDark-brown {
  background-color: var(--Dark-brown);
}

.txtDark-brown {
  color: var(--Dark-brown);
}

.bdrDark-brown {
  border-color: var(--Dark-brown);
}

.bgGoldenrod {
  background-color: var(--Goldenrod);
}

.txtGoldenrod {
  color: var(--Goldenrod);
}

.bdrGoldenrod {
  border-color: var(--Goldenrod);
}

.bgDark-gold {
  background-color: var(--Dark-gold);
}

.txtDark-gold {
  color: var(--Dark-gold);
}

.bdrDark-gold {
  border-color: var(--Dark-gold);
}

.bgWhite {
  background-color: var(--White);
}

.txtWhite {
  color: var(--White);
}

.bdrWhite {
  border-color: var(--White);
}

.bgBlack {
  background-color: var(--Black);
}

.txtBlack {
  color: var(--Black);
}

.bdrBlack {
  border-color: var(--Black);
}

.bgGreen {
  background-color: var(--Green);
}

.txtGreen {
  color: var(--Green);
}

.bdrGreen {
  border-color: var(--Green);
}

.bgTwitter {
  background-color: var(--Twitter);
}

.txtTwitter {
  color: var(--Twitter);
}

.bdrTwitter {
  border-color: var(--Twitter);
}

@media screen and (min-width: 768px) {
  .restaurant__name a {
    -webkit-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
  }

  .restaurant__name a:hover,
  .restaurant__name a:focus-visible {
    -webkit-transition: all 0.1s ease-in;
    color: var(--White);
    transition: all 0.1s ease-in;
  }

  .program-detail a {
    -webkit-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
  }

  .program-detail a:hover,
  .program-detail a:focus-visible {
    -webkit-transition: all 0.1s ease-in;
    text-decoration: underline;
    transition: all 0.1s ease-in;
  }

  .u-disp-nosp {
    display: block;
  }

  .u-none-nosp {
    display: none;
  }

  .u-inline-nosp {
    display: inline;
  }

  .u-ib-nosp {
    display: inline-block;
  }

  .u-flex-nosp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .u-grid-nosp {
    display: grid;
  }

  .mt0-nosp {
    margin-top: 0rem;
  }

  .mt5-nosp {
    margin-top: 0.5rem;
  }

  .mt10-nosp {
    margin-top: 1rem;
  }

  .mt15-nosp {
    margin-top: 1.5rem;
  }

  .mt20-nosp {
    margin-top: 2rem;
  }

  .mt25-nosp {
    margin-top: 2.5rem;
  }

  .mt30-nosp {
    margin-top: 3rem;
  }

  .mt35-nosp {
    margin-top: 3.5rem;
  }

  .mt40-nosp {
    margin-top: 4rem;
  }

  .mt45-nosp {
    margin-top: 4.5rem;
  }

  .mt50-nosp {
    margin-top: 5rem;
  }

  .mt55-nosp {
    margin-top: 5.5rem;
  }

  .mt60-nosp {
    margin-top: 6rem;
  }

  .mt65-nosp {
    margin-top: 6.5rem;
  }

  .mt70-nosp {
    margin-top: 7rem;
  }

  .mt75-nosp {
    margin-top: 7.5rem;
  }

  .mt80-nosp {
    margin-top: 8rem;
  }

  .mt85-nosp {
    margin-top: 8.5rem;
  }

  .mt90-nosp {
    margin-top: 9rem;
  }

  .mt95-nosp {
    margin-top: 9.5rem;
  }

  .mt100-nosp {
    margin-top: 10rem;
  }

  .mAuto-nosp {
    margin-right: auto;
    margin-left: auto;
  }

  .fs10-nosp {
    font-size: 1rem;
  }

  .fs11-nosp {
    font-size: 1.1rem;
  }

  .fs12-nosp {
    font-size: 1.2rem;
  }

  .fs13-nosp {
    font-size: 1.3rem;
  }

  .fs14-nosp {
    font-size: 1.4rem;
  }

  .fs15-nosp {
    font-size: 1.5rem;
  }

  .fs16-nosp {
    font-size: 1.6rem;
  }

  .fs17-nosp {
    font-size: 1.7rem;
  }

  .fs18-nosp {
    font-size: 1.8rem;
  }

  .fs19-nosp {
    font-size: 1.9rem;
  }

  .fs20-nosp {
    font-size: 2rem;
  }

  .fs21-nosp {
    font-size: 2.1rem;
  }

  .fs22-nosp {
    font-size: 2.2rem;
  }

  .fs23-nosp {
    font-size: 2.3rem;
  }

  .fs24-nosp {
    font-size: 2.4rem;
  }

  .fs25-nosp {
    font-size: 2.5rem;
  }

  .fs26-nosp {
    font-size: 2.6rem;
  }

  .fs27-nosp {
    font-size: 2.7rem;
  }

  .fs28-nosp {
    font-size: 2.8rem;
  }

  .fs29-nosp {
    font-size: 2.9rem;
  }

  .fs30-nosp {
    font-size: 3rem;
  }

  .fs31-nosp {
    font-size: 3.1rem;
  }

  .fs32-nosp {
    font-size: 3.2rem;
  }

  .fs33-nosp {
    font-size: 3.3rem;
  }

  .fs34-nosp {
    font-size: 3.4rem;
  }

  .fs35-nosp {
    font-size: 3.5rem;
  }

  .fs36-nosp {
    font-size: 3.6rem;
  }

  .fs37-nosp {
    font-size: 3.7rem;
  }

  .fs38-nosp {
    font-size: 3.8rem;
  }

  .fs39-nosp {
    font-size: 3.9rem;
  }

  .fs40-nosp {
    font-size: 4rem;
  }

  .fs41-nosp {
    font-size: 4.1rem;
  }

  .fs42-nosp {
    font-size: 4.2rem;
  }

  .fs43-nosp {
    font-size: 4.3rem;
  }

  .fs44-nosp {
    font-size: 4.4rem;
  }

  .fs45-nosp {
    font-size: 4.5rem;
  }

  .fs46-nosp {
    font-size: 4.6rem;
  }

  .fs47-nosp {
    font-size: 4.7rem;
  }

  .fs48-nosp {
    font-size: 4.8rem;
  }

  .fs49-nosp {
    font-size: 4.9rem;
  }

  .fs50-nosp {
    font-size: 5rem;
  }

  .alignCenter-nosp {
    text-align: center;
  }

  .alignLeft-nosp {
    text-align: left;
  }

  .alignRight-nosp {
    text-align: right;
  }

  .alignJustify-nosp {
    text-align: justify;
  }

  .u-hover {
    -webkit-transition: opacity 0.2s ease-in;
    transition: opacity 0.2s ease-in;
  }

  .u-hover:hover,
  .u-hover:focus-visible {
    -webkit-transition: opacity 0.1s ease-in;
    opacity: 0.7;
    transition: opacity 0.1s ease-in;
  }
}

@media screen and (min-width:1201px) {
  .u-disp-pc {
    display: block;
  }

  .u-none-pc {
    display: none;
  }

  .u-inline-pc {
    display: inline;
  }

  .u-ib-pc {
    display: inline-block;
  }

  .u-flex-pc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .u-grid-pc {
    display: grid;
  }

  .mt0-pc {
    margin-top: 0rem;
  }

  .mt5-pc {
    margin-top: 0.5rem;
  }

  .mt10-pc {
    margin-top: 1rem;
  }

  .mt15-pc {
    margin-top: 1.5rem;
  }

  .mt20-pc {
    margin-top: 2rem;
  }

  .mt25-pc {
    margin-top: 2.5rem;
  }

  .mt30-pc {
    margin-top: 3rem;
  }

  .mt35-pc {
    margin-top: 3.5rem;
  }

  .mt40-pc {
    margin-top: 4rem;
  }

  .mt45-pc {
    margin-top: 4.5rem;
  }

  .mt50-pc {
    margin-top: 5rem;
  }

  .mt55-pc {
    margin-top: 5.5rem;
  }

  .mt60-pc {
    margin-top: 6rem;
  }

  .mt65-pc {
    margin-top: 6.5rem;
  }

  .mt70-pc {
    margin-top: 7rem;
  }

  .mt75-pc {
    margin-top: 7.5rem;
  }

  .mt80-pc {
    margin-top: 8rem;
  }

  .mt85-pc {
    margin-top: 8.5rem;
  }

  .mt90-pc {
    margin-top: 9rem;
  }

  .mt95-pc {
    margin-top: 9.5rem;
  }

  .mt100-pc {
    margin-top: 10rem;
  }

  .mAuto-pc {
    margin-right: auto;
    margin-left: auto;
  }

  .fs10-pc {
    font-size: 1rem;
  }

  .fs11-pc {
    font-size: 1.1rem;
  }

  .fs12-pc {
    font-size: 1.2rem;
  }

  .fs13-pc {
    font-size: 1.3rem;
  }

  .fs14-pc {
    font-size: 1.4rem;
  }

  .fs15-pc {
    font-size: 1.5rem;
  }

  .fs16-pc {
    font-size: 1.6rem;
  }

  .fs17-pc {
    font-size: 1.7rem;
  }

  .fs18-pc {
    font-size: 1.8rem;
  }

  .fs19-pc {
    font-size: 1.9rem;
  }

  .fs20-pc {
    font-size: 2rem;
  }

  .fs21-pc {
    font-size: 2.1rem;
  }

  .fs22-pc {
    font-size: 2.2rem;
  }

  .fs23-pc {
    font-size: 2.3rem;
  }

  .fs24-pc {
    font-size: 2.4rem;
  }

  .fs25-pc {
    font-size: 2.5rem;
  }

  .fs26-pc {
    font-size: 2.6rem;
  }

  .fs27-pc {
    font-size: 2.7rem;
  }

  .fs28-pc {
    font-size: 2.8rem;
  }

  .fs29-pc {
    font-size: 2.9rem;
  }

  .fs30-pc {
    font-size: 3rem;
  }

  .fs31-pc {
    font-size: 3.1rem;
  }

  .fs32-pc {
    font-size: 3.2rem;
  }

  .fs33-pc {
    font-size: 3.3rem;
  }

  .fs34-pc {
    font-size: 3.4rem;
  }

  .fs35-pc {
    font-size: 3.5rem;
  }

  .fs36-pc {
    font-size: 3.6rem;
  }

  .fs37-pc {
    font-size: 3.7rem;
  }

  .fs38-pc {
    font-size: 3.8rem;
  }

  .fs39-pc {
    font-size: 3.9rem;
  }

  .fs40-pc {
    font-size: 4rem;
  }

  .fs41-pc {
    font-size: 4.1rem;
  }

  .fs42-pc {
    font-size: 4.2rem;
  }

  .fs43-pc {
    font-size: 4.3rem;
  }

  .fs44-pc {
    font-size: 4.4rem;
  }

  .fs45-pc {
    font-size: 4.5rem;
  }

  .fs46-pc {
    font-size: 4.6rem;
  }

  .fs47-pc {
    font-size: 4.7rem;
  }

  .fs48-pc {
    font-size: 4.8rem;
  }

  .fs49-pc {
    font-size: 4.9rem;
  }

  .fs50-pc {
    font-size: 5rem;
  }

  .alignCenter-pc {
    text-align: center;
  }

  .alignLeft-pc {
    text-align: left;
  }

  .alignRight-pc {
    text-align: right;
  }

  .alignJustify-pc {
    text-align: justify;
  }
}

@media screen and (max-width:1200px) {
  .u-disp-tab {
    display: block;
  }

  .u-none-tab {
    display: none;
  }

  .u-inline-tab {
    display: inline;
  }

  .u-ib-tab {
    display: inline-block;
  }

  .u-flex-tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .u-grid-tab {
    display: grid;
  }

  .mt0-tab {
    margin-top: 0rem;
  }

  .mt5-tab {
    margin-top: 0.5rem;
  }

  .mt10-tab {
    margin-top: 1rem;
  }

  .mt15-tab {
    margin-top: 1.5rem;
  }

  .mt20-tab {
    margin-top: 2rem;
  }

  .mt25-tab {
    margin-top: 2.5rem;
  }

  .mt30-tab {
    margin-top: 3rem;
  }

  .mt35-tab {
    margin-top: 3.5rem;
  }

  .mt40-tab {
    margin-top: 4rem;
  }

  .mt45-tab {
    margin-top: 4.5rem;
  }

  .mt50-tab {
    margin-top: 5rem;
  }

  .mt55-tab {
    margin-top: 5.5rem;
  }

  .mt60-tab {
    margin-top: 6rem;
  }

  .mt65-tab {
    margin-top: 6.5rem;
  }

  .mt70-tab {
    margin-top: 7rem;
  }

  .mt75-tab {
    margin-top: 7.5rem;
  }

  .mt80-tab {
    margin-top: 8rem;
  }

  .mt85-tab {
    margin-top: 8.5rem;
  }

  .mt90-tab {
    margin-top: 9rem;
  }

  .mt95-tab {
    margin-top: 9.5rem;
  }

  .mt100-tab {
    margin-top: 10rem;
  }

  .mAuto-tab {
    margin-right: auto;
    margin-left: auto;
  }

  .fs10-tab {
    font-size: 1rem;
  }

  .fs11-tab {
    font-size: 1.1rem;
  }

  .fs12-tab {
    font-size: 1.2rem;
  }

  .fs13-tab {
    font-size: 1.3rem;
  }

  .fs14-tab {
    font-size: 1.4rem;
  }

  .fs15-tab {
    font-size: 1.5rem;
  }

  .fs16-tab {
    font-size: 1.6rem;
  }

  .fs17-tab {
    font-size: 1.7rem;
  }

  .fs18-tab {
    font-size: 1.8rem;
  }

  .fs19-tab {
    font-size: 1.9rem;
  }

  .fs20-tab {
    font-size: 2rem;
  }

  .fs21-tab {
    font-size: 2.1rem;
  }

  .fs22-tab {
    font-size: 2.2rem;
  }

  .fs23-tab {
    font-size: 2.3rem;
  }

  .fs24-tab {
    font-size: 2.4rem;
  }

  .fs25-tab {
    font-size: 2.5rem;
  }

  .fs26-tab {
    font-size: 2.6rem;
  }

  .fs27-tab {
    font-size: 2.7rem;
  }

  .fs28-tab {
    font-size: 2.8rem;
  }

  .fs29-tab {
    font-size: 2.9rem;
  }

  .fs30-tab {
    font-size: 3rem;
  }

  .fs31-tab {
    font-size: 3.1rem;
  }

  .fs32-tab {
    font-size: 3.2rem;
  }

  .fs33-tab {
    font-size: 3.3rem;
  }

  .fs34-tab {
    font-size: 3.4rem;
  }

  .fs35-tab {
    font-size: 3.5rem;
  }

  .fs36-tab {
    font-size: 3.6rem;
  }

  .fs37-tab {
    font-size: 3.7rem;
  }

  .fs38-tab {
    font-size: 3.8rem;
  }

  .fs39-tab {
    font-size: 3.9rem;
  }

  .fs40-tab {
    font-size: 4rem;
  }

  .fs41-tab {
    font-size: 4.1rem;
  }

  .fs42-tab {
    font-size: 4.2rem;
  }

  .fs43-tab {
    font-size: 4.3rem;
  }

  .fs44-tab {
    font-size: 4.4rem;
  }

  .fs45-tab {
    font-size: 4.5rem;
  }

  .fs46-tab {
    font-size: 4.6rem;
  }

  .fs47-tab {
    font-size: 4.7rem;
  }

  .fs48-tab {
    font-size: 4.8rem;
  }

  .fs49-tab {
    font-size: 4.9rem;
  }

  .fs50-tab {
    font-size: 5rem;
  }

  .alignCenter-tab {
    text-align: center;
  }

  .alignLeft-tab {
    text-align: left;
  }

  .alignRight-tab {
    text-align: right;
  }

  .alignJustify-tab {
    text-align: justify;
  }
}

@media screen and (max-width: 767px) {
  html {
    font-size: 54.6875%;
  }

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

  .kv-image img {
    height: 42vw;
  }

  .menu-list {
    grid-template-columns: 100%;
  }

  .menu-list__inner {
    grid-template-rows: repeat(3, auto);
    grid-template-columns: 100%;
  }

  .menu-list__image {
    grid-area: 1/1/2/2;
  }

  .menu-list__image img {
    height: 80vw;
  }

  .restaurant {
    min-height: initial;
  }

  .restaurant__info {
    grid-area: 3/1/4/2;
  }

  .u-disp-sp {
    display: block;
  }

  .u-none-sp {
    display: none;
  }

  .u-inline-sp {
    display: inline;
  }

  .u-ib-sp {
    display: inline-block;
  }

  .u-flex-sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .u-grid-sp {
    display: grid;
  }

  .mt0-sp {
    margin-top: 0rem;
  }

  .mt5-sp {
    margin-top: 0.5rem;
  }

  .mt10-sp {
    margin-top: 1rem;
  }

  .mt15-sp {
    margin-top: 1.5rem;
  }

  .mt20-sp {
    margin-top: 2rem;
  }

  .mt25-sp {
    margin-top: 2.5rem;
  }

  .mt30-sp {
    margin-top: 3rem;
  }

  .mt35-sp {
    margin-top: 3.5rem;
  }

  .mt40-sp {
    margin-top: 4rem;
  }

  .mt45-sp {
    margin-top: 4.5rem;
  }

  .mt50-sp {
    margin-top: 5rem;
  }

  .mt55-sp {
    margin-top: 5.5rem;
  }

  .mt60-sp {
    margin-top: 6rem;
  }

  .mt65-sp {
    margin-top: 6.5rem;
  }

  .mt70-sp {
    margin-top: 7rem;
  }

  .mt75-sp {
    margin-top: 7.5rem;
  }

  .mt80-sp {
    margin-top: 8rem;
  }

  .mt85-sp {
    margin-top: 8.5rem;
  }

  .mt90-sp {
    margin-top: 9rem;
  }

  .mt95-sp {
    margin-top: 9.5rem;
  }

  .mt100-sp {
    margin-top: 10rem;
  }

  .mAuto-sp {
    margin-right: auto;
    margin-left: auto;
  }

  .fs10-sp {
    font-size: 1rem;
  }

  .fs11-sp {
    font-size: 1.1rem;
  }

  .fs12-sp {
    font-size: 1.2rem;
  }

  .fs13-sp {
    font-size: 1.3rem;
  }

  .fs14-sp {
    font-size: 1.4rem;
  }

  .fs15-sp {
    font-size: 1.5rem;
  }

  .fs16-sp {
    font-size: 1.6rem;
  }

  .fs17-sp {
    font-size: 1.7rem;
  }

  .fs18-sp {
    font-size: 1.8rem;
  }

  .fs19-sp {
    font-size: 1.9rem;
  }

  .fs20-sp {
    font-size: 2rem;
  }

  .fs21-sp {
    font-size: 2.1rem;
  }

  .fs22-sp {
    font-size: 2.2rem;
  }

  .fs23-sp {
    font-size: 2.3rem;
  }

  .fs24-sp {
    font-size: 2.4rem;
  }

  .fs25-sp {
    font-size: 2.5rem;
  }

  .fs26-sp {
    font-size: 2.6rem;
  }

  .fs27-sp {
    font-size: 2.7rem;
  }

  .fs28-sp {
    font-size: 2.8rem;
  }

  .fs29-sp {
    font-size: 2.9rem;
  }

  .fs30-sp {
    font-size: 3rem;
  }

  .fs31-sp {
    font-size: 3.1rem;
  }

  .fs32-sp {
    font-size: 3.2rem;
  }

  .fs33-sp {
    font-size: 3.3rem;
  }

  .fs34-sp {
    font-size: 3.4rem;
  }

  .fs35-sp {
    font-size: 3.5rem;
  }

  .fs36-sp {
    font-size: 3.6rem;
  }

  .fs37-sp {
    font-size: 3.7rem;
  }

  .fs38-sp {
    font-size: 3.8rem;
  }

  .fs39-sp {
    font-size: 3.9rem;
  }

  .fs40-sp {
    font-size: 4rem;
  }

  .fs41-sp {
    font-size: 4.1rem;
  }

  .fs42-sp {
    font-size: 4.2rem;
  }

  .fs43-sp {
    font-size: 4.3rem;
  }

  .fs44-sp {
    font-size: 4.4rem;
  }

  .fs45-sp {
    font-size: 4.5rem;
  }

  .fs46-sp {
    font-size: 4.6rem;
  }

  .fs47-sp {
    font-size: 4.7rem;
  }

  .fs48-sp {
    font-size: 4.8rem;
  }

  .fs49-sp {
    font-size: 4.9rem;
  }

  .fs50-sp {
    font-size: 5rem;
  }

  .alignCenter-sp {
    text-align: center;
  }

  .alignLeft-sp {
    text-align: left;
  }

  .alignRight-sp {
    text-align: right;
  }

  .alignJustify-sp {
    text-align: justify;
  }
}

@media screen {
  [hidden~=screen] {
    display: inherit;
  }

  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    clip: rect(0 0 0 0) !important;
    position: absolute !important;
  }
}