/* Generated by scripts/build-site-css.mjs. */
/* ress.min.css */
/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */html{box-sizing:border-box;overflow-y:scroll;-webkit-text-size-adjust:100%}*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}:after,:before{text-decoration:inherit;vertical-align:inherit}*{padding:0;margin:0}audio:not([controls]){display:none;height:0}hr{overflow:visible}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}summary{display:list-item}small{font-size:80%}[hidden],template{display:none}abbr[title]{border-bottom:1px dotted;text-decoration:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}code,kbd,pre,samp{font-family:monospace}b,strong{font-weight:bolder}dfn{font-style:italic}mark{background-color:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}input{border-radius:0}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}[disabled]{cursor:default}[type=number]{width:auto}[type=search]{-webkit-appearance:textfield}[type="search"]::-webkit-search-cancel-button,[type="search"]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}button{overflow:visible}[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner,button::-moz-focus-inner{border-style:0;padding:0}[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}[type=reset],[type=submit],button,html [type="button"]{-webkit-appearance:button}button,select{text-transform:none}button,input,select,textarea{background-color:transparent;border-style:none;color:inherit}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}img{border-style:none}progress{vertical-align:baseline}svg:not(:root){overflow:hidden}audio,canvas,progress,video{display:inline-block}@media screen{[hidden~=screen]{display:inherit}[hidden~="screen"]:not(:active):not(:focus):not(:target){position:absolute!important;clip:rect(0 0 0 0)!important}}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled]{cursor:default}::-moz-selection{background-color:#b3d4fc;color:#000;text-shadow:none}::selection{background-color:#b3d4fc;color:#000;text-shadow:none}
/* style.css */
@charset "UTF-8";

html {
  font-size: 0.78125vw;
}

body {
  width: 100%;
  margin: 0 auto;
  font: 1rem/1.6 "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  color: #222;
  font-size: 1.5rem;
  letter-spacing: 0;
  word-break: break-all;
  background-color: #f7f7ee;
  overflow: hidden;
}
body.fixed {
  width: 100%;
  position: fixed;
  overflow: hidden;
  top: 0;
}

.site-wrap {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.main-contents {
  width: 30%;
  position: relative;
}
.main-contents::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../../images/noise.gif) repeat left top/150px;
  opacity: 0.13;
  mix-blend-mode: hard-light;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  pointer-events: none;
  -webkit-filter: brightness(120%);
          filter: brightness(120%);
}

.side-contents {
  width: 35%;
  height: 100%;
  z-index: 999;
  position: fixed;
  top: 0;
}

.left-contents {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  left: 0;
  background-color: #f7f7ee;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.left-contents::before {
  content: "";
  width: 100%;
  height: 100vh;
  background: url(../../images/noise.gif) repeat left top/150px;
  opacity: 0.18;
  mix-blend-mode: hard-light;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 998;
  pointer-events: none;
  -webkit-filter: brightness(112%);
          filter: brightness(112%);
}

.right-contents {
  right: 0;
}
.right-contents img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.section-block {
  width: 100%;
  padding: 6rem 2rem;
  position: relative;
}

.pd-x_none {
  padding-right: 0 !important;
  padding-left: 0 !important;
}
.pd-y_none {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.pd-b_none {
  padding-bottom: 0 !important;
}

.text-area p {
  line-height: 1.9285;
}

.bg-c01 {
  background-color: #02B236;
  color: #FFF;
}
.bg-pattern01 {
  background: url(./images/pattern01.png) repeat left top/180px;
}

a {
  color: #444444;
  text-decoration: none;
  -webkit-transition: background-color 0.5s ease-out;
  transition: background-color 0.5s ease-out;
}
a.imgLink {
  display: block;
  width: 100%;
  height: 100%;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  -webkit-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out;
}
a:hover {
  cursor: pointer;
}

.link-underline {
  text-decoration: underline;
}
.link-block {
  display: block;
}
.link-color {
  color: #2175cb;
}

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

svg {
  vertical-align: bottom;
}

p {
  line-height: 1.7666666667;
  letter-spacing: 0.1em;
}
p:not(:last-child) {
  margin-bottom: 1.5em;
}

.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.text-serif {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
}
.text-caution {
  color: #b33f4c;
}
.text-bold {
  font-weight: bold;
}
.text-lead {
  font-size: 24px;
}
.text-red {
  color: #b33f4c;
}
.text-blue {
  color: #1d348b;
}

.HarunoUmi {
  font-family: "Kaisei HarunoUmi", serif;
}

.cf01 {
  font-family: "Spartan", sans-serif;
}

.pc_only {
  display: inherit;
}
@media screen and (max-width: 599px) {
  .pc_only {
    display: none;
  }
}

.tab_only {
  display: none;
}
@media screen and (max-width: 834px) {
  .tab_only {
    display: inherit;
  }
}

.sp_only {
  display: none;
}
@media screen and (max-width: 599px) {
  .sp_only {
    display: inherit;
  }
}

.headline-01 {
  margin-bottom: 5rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 900;
  font-size: 3.6rem;
  text-align: center;
}
.headline-02 {
  margin-bottom: 2rem;
  font-family: "Reggae One", cursive;
  font-size: 2.8rem;
  text-align: center;
  line-height: 1.2413793103;
}
.headline-03 {
  width: 29.5rem;
  height: 4.5rem;
  margin: 0 auto 5rem;
  padding: 0 2rem;
  border: 2px solid #242426;
  border-radius: 0.25rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 900;
  font-size: 2.9rem;
  line-height: 1;
  color: #242426;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}
.headline-03::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #EEE;
  border-radius: 0.25rem;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.headline-03.bg-yellow::before {
  background-color: #f2dc23;
  top: 0.6rem;
  left: 0.7rem;
}
.headline-icon {
  margin-top: 3.2rem;
  margin-bottom: 3.2rem;
  text-align: center;
}
.headline-icon.icon01 img {
  width: 5.3rem;
}
.headline-icon.icon02 img {
  width: 2.4rem;
}
.headline-04 {
  height: 8rem;
  margin-right: -2rem;
  margin-left: -2rem;
  margin-bottom: 3.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "Montserrat", sans-serif;
  font-weight: 900;
  font-size: 2.9rem;
  text-align: center;
}
.headline-04.bg-pink {
  background-color: #f9c6d7;
}
.headline-04.bg-yellow {
  background-color: #ffd87e;
}

.btn-more {
  width: 20rem;
  height: 6.9rem;
  margin: 4rem auto 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #ffd87e;
  border: 0.1rem solid #4052a0;
  font-family: "Montserrat", sans-serif;
  font-weight: 900;
  font-size: 1.8rem;
  font-style: italic;
  color: #4052a0;
  -webkit-box-shadow: 0.6rem 0.9rem 0 #4052a0;
          box-shadow: 0.6rem 0.9rem 0 #4052a0;
}

ul {
  list-style-type: none;
}
ul.dot {
  list-style-type: none;
}
ul.dot li {
  text-indent: -1.1em;
  margin-left: 1.1em;
}
ul.dot li:before {
  content: "・";
}
ul.dot li:not(:last-child) {
  margin-bottom: 0.3em;
}
ul.note {
  list-style-type: none;
}
ul.note li {
  text-indent: -1.1em;
  margin-left: 1.1em;
}
ul.note li:before {
  content: "※";
  font-family: cursive;
}
ul.note li:not(:last-child) {
  margin-bottom: 0.3em;
}

dl.note dt {
  position: relative;
}
dl.note dt span {
  position: absolute;
}
dl.note dd {
  padding-left: 1em;
}

.site-header {
  width: 100%;
  height: 8.2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #f7f7ee;
  border-bottom: 0.3rem solid #4052a0;
  position: absolute;
  top: 100vh;
  -webkit-transition: background 0.4s ease-in-out;
  transition: background 0.4s ease-in-out;
  z-index: 999;
}
.site-header.is-fixed .menu-buttton {
  top: 3.6rem;
  right: 1rem;
  position: fixed;
}
.site-header.is-open {
  background-color: #ffd87e;
  position: fixed;
  top: 0 !important;
}
.site-header.is-open .header-actions {
  display: none;
}

@media (min-width: 834px) {
  .site-header.is-fixed .menu-buttton {
    right: calc(35% + 1rem);
  }
  .site-header.is-open {
    max-width: 30%;
  }
}
.header-logo {
  width: min(15.8rem, 42vw);
  margin: 0;
  line-height: 1;
}
.header-logo a {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #4052a0;
  text-align: center;
  text-decoration: none;
}
.header-brand-primary,
.header-brand-main {
  display: block;
  font-family: "Reggae One", cursive;
  font-weight: 400;
  white-space: nowrap;
}
.header-brand-primary {
  color: #4052a0;
  font-size: 1.15rem;
  letter-spacing: 0.08em;
  line-height: 1.25;
}
.header-brand-main {
  color: #4052a0;
  font-size: 3.2rem;
  letter-spacing: 0.04em;
  line-height: 1.15;
  text-shadow: 0.1rem 0.1rem 0 #ffd87e;
}

.header-actions {
  position: absolute;
  top: 50%;
  left: 1.2rem;
  display: flex;
  align-items: center;
  gap: 0.45rem;
  transform: translateY(-50%);
}

.header-link-ig {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background-color: #ffd87e;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 0.1rem solid #4052a0;
  -webkit-box-shadow: 0.3rem 0.3rem 0 #4052a0;
          box-shadow: 0.3rem 0.3rem 0 #4052a0;
  flex: none;
}
.header-link-ig img {
  width: 1.6rem;
}
.header-link-reserve {
  width: 5.8rem;
  height: 3rem;
  padding: 0 0.25rem;
  border: 0.1rem solid #4052a0;
  background-color: #ffd87e;
  box-shadow: 0.3rem 0.3rem 0 #4052a0;
  color: #4052a0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.15rem;
  flex: none;
  font-family: "Reggae One", cursive;
  font-size: 0.9rem;
  line-height: 1;
  white-space: nowrap;
}
.header-link-reserve span {
  font-family: Arial, sans-serif;
  font-size: 0.8em;
}

.menu-buttton {
  width: 6rem;
  height: 3.4rem;
  background-color: #ffd87e;
  border: 0.1rem solid #4052a0;
  font-family: "Montserrat", sans-serif;
  font-weight: 900;
  font-size: 1.3rem;
  font-style: italic;
  -webkit-box-shadow: 0.2rem 0.3rem 0 #4052a0;
          box-shadow: 0.2rem 0.3rem 0 #4052a0;
  position: absolute;
  top: 50%;
  right: 1rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.navi-menu {
  width: 100%;
  height: 100%;
  padding-top: 8.2rem;
  text-align: center;
  background-color: #ffd87e;
  position: absolute;
  top: 100vh;
  left: 0;
  z-index: 998;
  display: none;
}
.navi-menu.is-fixed {
  position: fixed;
  top: 0 !important;
}

.contents-navi {
  font-family: "Montserrat", sans-serif;
  font-weight: 900;
  font-size: 3.6rem;
  font-style: italic;
  line-height: 1;
}
.contents-navi li {
  margin-top: 5rem;
}
.contents-navi a {
  color: #4052a0;
}

.external-link {
  margin-top: 3rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.external-link li:not(:last-child) {
  margin-right: 6rem;
}
.external-link a {
  width: 5.8rem;
  height: 5.8rem;
  border-radius: 50%;
  background-color: #ffd87e;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 0.1rem solid #4052a0;
  -webkit-box-shadow: 0.5rem 0.5rem 0 #4052a0;
          box-shadow: 0.5rem 0.5rem 0 #4052a0;
}

.link-tel {
  margin-top: 5rem;
  display: inline-block;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: 3rem;
  font-style: italic;
  color: #4052a0;
  line-height: 1;
}

.footer-block {
  padding: 3.5rem 3rem;
  border-top: 0.5rem solid #ffd87e;
  background-color: #4052a0;
  color: #FFF;
}

.copyright {
  font-family: "Reggae One", cursive;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  color: #ffd87e;
  line-height: 1;
  text-align: center;
}

.hero-visual {
  width: 100%;
  height: 100vh;
  margin-bottom: 8.2rem;
  background-color: #098d50;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}

.bokeh-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  -webkit-filter: brightness(200%);
          filter: brightness(200%);
  opacity: 0.6;
  mix-blend-mode: screen;
  -webkit-transition: 1s ease-in-out;
  transition: 1s ease-in-out;
}
.bokeh-wrap.is-active {
  -webkit-animation: bright 1s ease-in-out 1 alternate;
          animation: bright 1s ease-in-out 1 alternate;
  opacity: 1;
}
.bokeh-wrap.is-active span {
  -webkit-transform: scale(4);
          transform: scale(4);
  -webkit-transform-origin: center !important;
          transform-origin: center !important;
  opacity: 1;
}
.bokeh-wrap > span {
  width: 30px;
  height: 30px;
  position: absolute;
  border-radius: 50%;
  opacity: 0.72;
  -webkit-transition: 1s ease-in-out;
  transition: 1s ease-in-out;
}
.bokeh-wrap > span:nth-child(1) {
  width: 11rem;
  height: 11rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(180, 75, 0, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(2) {
  width: 11rem;
  height: 11rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(3) {
  width: 10rem;
  height: 10rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(0, 78, 131, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(4) {
  width: 14rem;
  height: 14rem;
  background-color: #8d0007;
  border: 0.1rem solid rgba(180, 75, 0, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(5) {
  width: 14rem;
  height: 14rem;
  background-color: #004e83;
  border: 0.1rem solid rgba(180, 75, 0, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(6) {
  width: 13rem;
  height: 13rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(7) {
  width: 9rem;
  height: 9rem;
  background-color: #8d0007;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(8) {
  width: 14rem;
  height: 14rem;
  background-color: #004e83;
  border: 0.1rem solid rgba(180, 75, 0, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(9) {
  width: 11rem;
  height: 11rem;
  background-color: #004e83;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(10) {
  width: 10rem;
  height: 10rem;
  background-color: #004e83;
  border: 0.1rem solid rgba(180, 75, 0, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(11) {
  width: 14rem;
  height: 14rem;
  background-color: #004e83;
  border: 0.1rem solid rgba(180, 75, 0, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(12) {
  width: 9rem;
  height: 9rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(0, 78, 131, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(13) {
  width: 11rem;
  height: 11rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(180, 75, 0, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(14) {
  width: 9rem;
  height: 9rem;
  background-color: #004e83;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(15) {
  width: 12rem;
  height: 12rem;
  background-color: #8d0007;
  border: 0.1rem solid rgba(0, 78, 131, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(16) {
  width: 14rem;
  height: 14rem;
  background-color: #004e83;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(17) {
  width: 13rem;
  height: 13rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(18) {
  width: 14rem;
  height: 14rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(0, 78, 131, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(19) {
  width: 14rem;
  height: 14rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(20) {
  width: 12rem;
  height: 12rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(0, 78, 131, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(21) {
  width: 12rem;
  height: 12rem;
  background-color: #8d0007;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(22) {
  width: 9rem;
  height: 9rem;
  background-color: #004e83;
  border: 0.1rem solid rgba(0, 78, 131, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(23) {
  width: 12rem;
  height: 12rem;
  background-color: #8d0007;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(24) {
  width: 12rem;
  height: 12rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(180, 75, 0, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(25) {
  width: 9rem;
  height: 9rem;
  background-color: #004e83;
  border: 0.1rem solid rgba(0, 78, 131, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(26) {
  width: 12rem;
  height: 12rem;
  background-color: #004e83;
  border: 0.1rem solid rgba(180, 75, 0, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(27) {
  width: 13rem;
  height: 13rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(28) {
  width: 14rem;
  height: 14rem;
  background-color: #004e83;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(29) {
  width: 13rem;
  height: 13rem;
  background-color: #8d0007;
  border: 0.1rem solid rgba(141, 0, 7, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(30) {
  width: 9rem;
  height: 9rem;
  background-color: #b44b00;
  border: 0.1rem solid rgba(180, 75, 0, 0.75);
  -webkit-box-shadow: 0.1rem 0.1rem 0 #aa5c24;
          box-shadow: 0.1rem 0.1rem 0 #aa5c24;
  -webkit-filter: blur(0.6rem);
          filter: blur(0.6rem);
}
.bokeh-wrap > span:nth-child(3n+1) {
  -webkit-animation: blink 4s ease-in-out infinite alternate;
          animation: blink 4s ease-in-out infinite alternate;
}
.bokeh-wrap > span:nth-child(5n+2) {
  -webkit-animation: blink 2.5s ease-in-out infinite alternate;
          animation: blink 2.5s ease-in-out infinite alternate;
}

@-webkit-keyframes blink {
  0% {
    opacity: 0;
    -webkit-filter: brightness(100%) blur(0.5rem);
            filter: brightness(100%) blur(0.5rem);
  }
  50% {
    opacity: 1;
    -webkit-filter: brightness(100%) blur(0.6rem);
            filter: brightness(100%) blur(0.6rem);
  }
  100% {
    opacity: 1;
    -webkit-filter: brightness(120%) blur(0.7rem);
            filter: brightness(120%) blur(0.7rem);
  }
}

@keyframes blink {
  0% {
    opacity: 0;
    -webkit-filter: brightness(100%) blur(0.5rem);
            filter: brightness(100%) blur(0.5rem);
  }
  50% {
    opacity: 1;
    -webkit-filter: brightness(100%) blur(0.6rem);
            filter: brightness(100%) blur(0.6rem);
  }
  100% {
    opacity: 1;
    -webkit-filter: brightness(120%) blur(0.7rem);
            filter: brightness(120%) blur(0.7rem);
  }
}
@-webkit-keyframes bright {
  0% {
    -webkit-filter: brightness(200%);
            filter: brightness(200%);
  }
  50% {
    -webkit-filter: brightness(500%);
            filter: brightness(500%);
  }
  100% {
    -webkit-filter: brightness(200%);
            filter: brightness(200%);
  }
}
@keyframes bright {
  0% {
    -webkit-filter: brightness(200%);
            filter: brightness(200%);
  }
  50% {
    -webkit-filter: brightness(500%);
            filter: brightness(500%);
  }
  100% {
    -webkit-filter: brightness(200%);
            filter: brightness(200%);
  }
}
.doodle-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}
.doodle-wrap .doodle {
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.hero-logo {
  position: absolute;
  top: 5.4rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 990;
}
.hero-logo img {
  width: 22.8rem;
  max-width: none;
  -webkit-filter: blur(0.25rem);
          filter: blur(0.25rem);
}

.hero-image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}
.hero-image * {
  width: 100%;
  height: 100%;
}
.hero-image img {
  -o-object-fit: cover;
     object-fit: cover;
}

.hero-navi {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: absolute;
  right: 2.2rem;
  bottom: 1.4rem;
  z-index: 990;
}
.hero-navi li:not(:last-child) {
  margin-right: 2.2rem;
}
.hero-navi .icon01 {
  width: 4.2rem;
}
.hero-navi .icon02 {
  width: 2.1rem;
}
.hero-navi .icon03 {
  width: 2.8rem;
}

.hero-button {
  position: absolute;
  right: 2.2rem;
  bottom: 1.4rem;
  z-index: 990;
}
.hero-button a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 4.5rem;
  padding: 0 1.5rem;
  border: 2px solid #242426;
  border-radius: 0.25rem;
  font-family: "Reggae One", cursive;
  font-size: 1.8rem;
  line-height: 1;
  white-space: nowrap;
  color: #242426;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}
.hero-button a::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #f2dc23;
  border-radius: 0.25rem;
  position: absolute;
  top: 0.6rem;
  left: 0.7rem;
  z-index: -1;
}
.hero-button .icon {
  width: 3.6rem;
  margin-right: 0.6rem;
}

.text-box {
  padding-right: 2rem;
  padding-left: 2rem;
}

.block-concept {
  position: relative;
}
.block-concept::before {
  content: "";
  width: 49rem;
  height: 49rem;
  display: block;
  background: url(../../images/bg_dot_yellow.svg) repeat left top/2.6rem 3.5rem;
  position: absolute;
  top: 3.8rem;
  left: 13.5rem;
  z-index: -1;
}

.concept-img01 {
  width: 26.5rem;
  margin: 0 auto;
  -webkit-filter: drop-shadow(1rem 1rem 0 #4052a0);
          filter: drop-shadow(1rem 1rem 0 #4052a0);
}
.concept-img01 img {
  width: 100%;
}
.concept-img01.img01-1 {
  margin-bottom: -1.5rem;
}
.concept-img01.img01-2 {
  margin-bottom: -3rem;
  -webkit-transform: rotate(7.6deg);
          transform: rotate(7.6deg);
  -webkit-transform-origin: right center;
          transform-origin: right center;
  position: relative;
  left: -0.5rem;
}
.concept-img01.img01-3 {
  margin-bottom: 4.5rem;
  -webkit-transform: rotate(-7deg);
          transform: rotate(-7deg);
  -webkit-transform-origin: left center;
          transform-origin: left center;
  position: relative;
  right: -0.8rem;
}
.concept-photo-gallery {
  width: 100%;
  margin: 0 auto 0.9rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  column-gap: 0.9rem;
  row-gap: 1.8rem;
}
.concept-photo-stage {
  position: relative;
  isolation: isolate;
  margin: 0 auto 4rem;
  padding: 1rem 0.8rem 0.75rem;
  background: #2a1c31 url("/brand/rebu10/concept-gallery/watercolor-paisley-poster-545375654.jpg") center / cover no-repeat;
}
.concept-photo-stage::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background: rgba(24, 15, 27, 0.2);
  pointer-events: none;
}
.concept-photo-background {
  position: absolute;
  z-index: -1;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.concept-photo-stage .concept-photo-gallery,
.concept-photo-stage .concept-photo-note {
  position: relative;
  z-index: 1;
}
.concept-photo-gallery .concept-img01 {
  width: 100%;
  margin: 0;
  filter: drop-shadow(0.7rem 0.7rem 0 #4052a0);
}
.concept-photo-gallery .concept-img01 img {
  width: 100%;
  height: auto;
  display: block;
}
.concept-photo-gallery .img01-1 {
  margin-top: 1.2rem;
  transform: rotate(-3.5deg);
}
.concept-photo-gallery .img01-2 {
  margin-top: 0.2rem;
  transform: rotate(4.4deg);
}
.concept-photo-gallery .img01-3 {
	margin-top: 0.6rem;
	transform: rotate(-2.8deg);
}
.concept-photo-gallery .img01-4 {
	margin-top: 1.4rem;
	transform: rotate(3.6deg);
}
.concept-photo-note {
  width: fit-content;
  margin: 0 auto;
  padding: 0.2rem 0.8rem;
  max-width: 28rem;
  color: #fff;
  background: rgba(29, 20, 32, 0.78);
  font-size: 0.78rem;
  line-height: 1.7;
  letter-spacing: 0.06em;
  text-align: center;
}
.concept-img02 {
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
  padding: 5rem 0;
  position: relative;
}
.concept-img02::before {
  content: "";
  width: 37.5rem;
  height: 40rem;
  display: block;
  background: url(../../images/bg_stripe_blue.png) no-repeat center/contain;
  position: absolute;
  top: 0;
  left: -2rem;
  z-index: -1;
}
.concept-img02 span {
  width: 28rem;
  height: 28rem;
  margin: 0 auto;
  display: block;
  border-radius: 50%;
  border: 0.6rem solid #e2bf4e;
  overflow: hidden;
  -webkit-box-shadow: 0.4rem 0.8rem 0 #4052a0;
          box-shadow: 0.4rem 0.8rem 0 #4052a0;
}
.concept-img02 span img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.menu-group.group02 {
  padding-top: 10rem;
  position: relative;
}
.menu-group.group02::before {
  content: "";
  width: 39rem;
  height: 49rem;
  display: block;
  background: url(../../images/bg_dot_pink.svg) repeat right top/2.6rem 3.5rem;
  position: absolute;
  top: 0;
  right: 10rem;
  z-index: -1;
}
.menu-group.group03 {
  padding-top: 6rem;
  position: relative;
}
.menu-group.group03::before {
  content: "";
  width: 14.4rem;
  height: 14rem;
  display: block;
  background: url(../../images/bg_dot_pink.svg) repeat left top/0.8rem 1rem;
  position: absolute;
  top: -11rem;
  right: 1.6rem;
  z-index: -1;
}

.menu-box:not(:last-child) {
  margin-bottom: 4rem;
}
.menu-box .image {
  width: 29.5rem;
  height: 29.5rem;
  margin: 0 auto 2rem;
  border: 0.6rem solid #4052a0;
  -webkit-box-shadow: 1rem 1rem 0 #4052a0;
          box-shadow: 1rem 1rem 0 #4052a0;
  background-color: #4052a0;
  position: relative;
}
.menu-box .image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.menu-box .image .label {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.9rem 0.4rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 900;
  font-size: 1.8rem;
  line-height: 1;
  color: #FFF;
  background-color: #4052a0;
  -webkit-transform: rotate(-18deg);
          transform: rotate(-18deg);
  -webkit-transform-origin: right center;
          transform-origin: right center;
  position: absolute;
  top: -1.5rem;
  left: -3.2rem;
}
.menu-box .text {
  padding: 0 2rem;
}
.menu-box .name {
  margin-bottom: 1.4rem;
  margin-right: -2rem;
  margin-left: -2rem;
  font-family: "Reggae One", cursive;
  font-size: 2.4rem;
  color: #4052a0;
  text-align: center;
  line-height: 1.5;
}
.menu-box .name.typography {
  line-height: 1;
}
.menu-box p {
  font-size: 1.4rem;
  color: #4052a0;
  line-height: 1.7142857143;
}

.typography01 {
  width: 29.5rem;
}

.typography02 {
  width: 31.6rem;
}

.typography03 {
  width: 19.1rem;
}

.sub-menu-list {
  margin-top: 6.5rem;
}
.sub-menu-list .headline {
  margin-bottom: 4.4rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 800;
  font-size: 3rem;
  text-align: center;
  color: #4052a0;
}

.sub-menu-slider {
  width: 29.5rem;
  margin: 0 auto;
}

.sub-menu-box .image {
  width: 100%;
  margin: 0 auto 2rem;
  position: relative;
}
.sub-menu-box .image img {
  width: 100%;
}
.sub-menu-box .image .label {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.9rem 0.4rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 900;
  font-size: 1.8rem;
  line-height: 1;
  color: #FFF;
  background-color: #4052a0;
  -webkit-transform: rotate(-18deg);
          transform: rotate(-18deg);
  -webkit-transform-origin: right center;
          transform-origin: right center;
  position: absolute;
  top: -1.5rem;
  left: -3.2rem;
}
.sub-menu-box .name {
  font-family: "Reggae One", cursive;
  font-size: 2rem;
  color: #4052a0;
  text-align: center;
  line-height: 1.5;
}

.curry-catch-visual {
  margin-top: 9.5rem;
  text-align: center;
}
.curry-catch-visual img {
  width: 29.5rem;
}

.curry-menu .headline-icon {
  margin-top: 0;
  margin-bottom: 6.4rem;
}
.curry-menu .headline-icon.menu-curry-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.1rem;
}
.curry-menu .headline-icon.icon01.menu-curry-icon img {
  width: 3.6rem;
  display: block;
  image-rendering: pixelated;
  flex: none;
}
.menu-curry-spoon {
  width: 2.6rem;
  height: 0.77rem;
  overflow: visible;
  flex: none;
}
.menu-curry-spoon .spoon-motion {
  animation: menuSpoonScoop 1s steps(1, end) infinite;
  transform-box: fill-box;
}
@keyframes menuSpoonScoop {
  0%, 62%, 100% { transform: translate(0, 0); }
  70% { transform: translate(0, -1px); }
  78% { transform: translate(-1px, -2px); }
  87% { transform: translate(-1px, -1px); }
  94% { transform: translate(0, 0); }
}
@media (prefers-reduced-motion: reduce) {
  .concept-photo-background {
    display: none;
  }
  .menu-curry-spoon .spoon-motion {
    animation: none;
    transform: none;
  }
}

.drink-menu {
  padding-bottom: 3rem;
  position: relative;
}
.drink-menu::before {
  content: "";
  width: 14.4rem;
  height: 14rem;
  display: block;
  background: url(../../images/bg_dot_pink.svg) repeat left top/0.8rem 1rem;
  position: absolute;
  top: -1.5rem;
  right: 1.6rem;
  z-index: -1;
}
.drink-menu .headline-03 {
  width: 29.5rem;
  margin-bottom: 5rem;
}
.drink-menu .headline-03::before {
  background-color: #f9c6d7;
  top: 0.8rem;
}
.drink-menu .menu-list {
  position: relative;
}
.drink-menu .menu-list::before {
  content: "";
  width: 37.5rem;
  height: 37.5rem;
  display: block;
  background: url(../../images/bg_plus_yellow.svg) repeat left top/3rem 3rem;
  position: absolute;
  top: 5rem;
  left: -2rem;
  z-index: -1;
}
.drink-menu .menu-box .image {
  border-color: #b33f4c;
  -webkit-box-shadow: 0.8rem 0.4rem 0 #b33f4c;
          box-shadow: 0.8rem 0.4rem 0 #b33f4c;
  background-color: #b33f4c;
}
.drink-menu .menu-box .label {
  background-color: #b33f4c;
}

.dessert-menu {
  padding-bottom: 2.5rem;
}
.dessert-menu .headline-03 {
  width: 29.5rem;
  margin-bottom: 5rem;
}
.dessert-menu .headline-03::before {
  background-color: #f9cfbd;
  top: 0.6rem;
  left: 0.8rem;
}
.dessert-menu .menu-box .image {
  border-color: #1697b1;
  -webkit-box-shadow: 0.8rem 0.4rem 0 #1697b1;
          box-shadow: 0.8rem 0.4rem 0 #1697b1;
  background-color: #1697b1;
}
.dessert-menu .menu-box .label {
  background-color: #1697b1;
}

.menu-slider .image {
  margin-bottom: 3rem;
  border: none;
}
.menu-slider .text {
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.menu-slider .swiper-slide-visible .text {
  opacity: 1;
}

.menu-thumbnail {
  margin-right: -2rem;
  margin-left: -2rem;
  margin-bottom: 4rem;
}
.menu-thumbnail .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
.menu-thumbnail .swiper-slide {
  width: 15.2rem;
  margin: 0 auto;
}
.menu-thumbnail .swiper-slide:not(:first-child) {
  margin-left: 3.6rem;
}
.menu-thumbnail .swiper-slide:nth-child(even) {
  margin-top: -1.2rem;
}
.menu-thumbnail .image-thumb {
  -webkit-box-shadow: 0.8rem 0.8rem 0 #1697b1;
          box-shadow: 0.8rem 0.8rem 0 #1697b1;
  position: relative;
  -webkit-transform: rotate(3.8deg);
          transform: rotate(3.8deg);
}
.menu-thumbnail .image-thumb > img {
  width: 100%;
}
.menu-thumbnail .label {
  min-width: 6.8rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-right: 1rem;
  padding-left: 1rem;
  text-align: center;
  background-color: #1b1b1b;
  position: absolute;
  bottom: -1.6rem;
  left: -0.8rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.menu-thumbnail .label.txt {
  padding: 0 1rem;
  font-family: "Reggae One", cursive;
  font-size: 2rem;
  color: #FFF;
}

.sub-menu-slider .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}

.label-katsu {
  width: 3.8rem;
}
.label-croquette {
  width: 6.9rem;
}
.label-potefly {
  width: 8.1rem;
}
.label-chorizo {
  width: 9.3rem;
}

.loop-txt {
  height: 3.5rem;
  margin-top: 1.2rem;
  margin-bottom: 1.2rem;
  margin-right: -2rem;
  margin-left: -2rem;
  background-repeat: repeat-x;
  background-size: auto 3.5rem;
}
.loop-doping {
  background-image: url(../../images/loop-txt01.svg);
  -webkit-animation: loopText01 5s linear infinite;
          animation: loopText01 5s linear infinite;
}
.loop-other {
  margin-top: 3rem;
  margin-bottom: 3rem;
  background-image: url(../../images/loop-txt02.svg);
  -webkit-animation: loopText02 5s linear infinite;
          animation: loopText02 5s linear infinite;
}
.loop-topping {
  background-image: url(../../images/loop-txt03.svg);
  -webkit-animation: loopText01 5s linear infinite;
          animation: loopText01 5s linear infinite;
}

@-webkit-keyframes loopText01 {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -21.4rem 0;
  }
}

@keyframes loopText01 {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -21.4rem 0;
  }
}
@-webkit-keyframes loopText02 {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -35.9rem 0;
  }
}
@keyframes loopText02 {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -35.9rem 0;
  }
}
.block-location {
  padding-bottom: 3rem;
}
.block-location .headline-04 {
  margin-bottom: 5rem;
}
.block-location .map {
  width: 33.5rem;
  height: 26rem;
  margin: 0 auto 4.5rem;
  border-radius: 0.25rem;
  -webkit-filter: drop-shadow(0.5rem 0.5rem 0 #4052a0);
          filter: drop-shadow(0.5rem 0.5rem 0 #4052a0);
}

.location-visual {
  margin: 0 -2rem 6rem;
}
.location-visual img {
  width: 100%;
}
.location-visual img:not(:last-child) {
  margin-bottom: 0.6rem;
}

.location-info {
  padding: 0 2rem;
}
.location-info dl {
  padding-bottom: 1.5rem;
  border-bottom: 0.1rem solid #4052a0;
}
.location-info dl:not(:last-child) {
  margin-bottom: 1.5rem;
}
.location-info dt {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 1.5rem;
  font-size: 1.5rem;
  font-weight: bold;
  position: relative;
}
.location-info dt::before {
  content: "";
  height: 1.3rem;
  display: block;
  background-color: #f9c6d7;
  border-radius: 0.25rem;
  position: absolute;
  left: -0.5rem;
  right: -0.5rem;
  bottom: 0;
  z-index: -1;
}
.location-info dd {
  font-size: 1.4rem;
}

.acount-name {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 4rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: 1.8rem;
  text-align: center;
  text-transform: uppercase;
  position: relative;
}
.acount-name::before {
  content: "";
  height: 1rem;
  display: block;
  background-color: #f9c6d7;
  border-radius: 0.25rem;
  position: absolute;
  left: -0.5rem;
  right: -0.5rem;
  bottom: 0;
  z-index: -1;
}

.left-image {
  width: 39.6rem;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.1);
}
.left-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.info-block {
  width: 39.6rem;
  height: calc(100vh - 5rem);
  background-color: #94833f;
  border: 2px solid #191919;
  position: relative;
}
.info-block::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border: 1px solid #FFF;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%202%2010%22%20style%3D%22enable-background%3Anew%200%200%202%2010%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20style%3D%22fill%3A%23fff%22%20d%3D%22M0%203h2v4H0z%22%2F%3E%3C%2Fsvg%3E"), url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%202%2010%22%20style%3D%22enable-background%3Anew%200%200%202%2010%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20style%3D%22fill%3A%23fff%22%20d%3D%22M0%203h2v4H0z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: repeat-y, repeat-y;
  background-position: left center, right center;
  background-size: 2px 10px, 2px 10px;
  z-index: 9;
  pointer-events: none;
}
.info-block > div {
  width: 100%;
  position: absolute;
  left: 0;
}
.info-block .area01 {
  height: 50%;
  top: 0;
}
.info-block .area01 .main {
  height: calc(100vh - 42rem);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 9;
}
.info-block .area01 .main img {
  width: 19.2rem;
}
.info-block .area01 .text01 {
  font-size: 1.4rem;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  position: absolute;
  top: 2rem;
  left: 1.5rem;
}
.info-block .area01 .text02 {
  font-size: 2.2rem;
  line-height: 1.36;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  white-space: nowrap;
  position: absolute;
  top: 2rem;
  right: 1.6rem;
}
.info-block .area01 .text02 img {
  width: 2.3rem;
}
.info-block .area02 {
  height: 36rem;
  bottom: 0;
  overflow: hidden;
}
.info-block .area02::before {
  content: "";
  width: 54.7rem;
  height: 46.5rem;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22547%22%20height%3D%22467%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22%23DC4617%22%20d%3D%22M.7%2021.884S361.892-94.938%20492.342%20223.963c130.45%20318.902-13.676%20230.947-13.676%20230.947L45.124%20336.4%201.36%20300.379.7%2021.884Z%22%2F%3E%3C%2Fsvg%3E");
  background-size: cover;
  display: block;
  position: absolute;
  top: 0;
  left: -13rem;
}
.info-block .area02 .logo {
  position: absolute;
  top: 26%;
  left: 3rem;
}
.info-block .area02 .logo::after {
  content: "";
  height: 0.6rem;
  display: block;
  background: rgb(18, 15, 14);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(18, 15, 14, 0)), color-stop(70%, rgb(18, 15, 14)));
  background: -webkit-linear-gradient(top, rgba(18, 15, 14, 0) 0%, rgb(18, 15, 14) 70%);
  background: linear-gradient(180deg, rgba(18, 15, 14, 0) 0%, rgb(18, 15, 14) 70%);
  position: absolute;
  bottom: 2.2rem;
  left: -0.4rem;
  right: -0.4rem;
}
.info-block .area02 .logo img {
  width: 21rem;
  position: relative;
  z-index: 2;
}
.info-block .area03 {
  height: 16rem;
  bottom: 0;
  overflow: hidden;
  color: #FFF;
}
.info-block .area03::before {
  content: "";
  width: 40rem;
  height: 27.4rem;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22400%22%20height%3D%22275%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22%230E0E0E%22%20d%3D%22M0%2013s264.616-68.794%20360%20118.999C455.383%20319.794%20349.999%20268%20349.999%20268L33%20197.999.999%20177%200%2013Z%22%2F%3E%3C%2Fsvg%3E");
  background-size: cover;
  display: block;
  position: absolute;
  top: 0;
  left: -1.4rem;
}
.info-block .area03 .inner {
  position: absolute;
  left: 2.5rem;
  bottom: 2rem;
}
.info-block .address {
  margin-bottom: 0.5rem;
  font-style: normal;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  line-height: 1.5;
}
.info-block .link-map {
  font-size: 1.2rem;
  color: #e2ddc3;
}

.link-phone {
  display: block;
  position: absolute;
  left: 0.5rem;
  bottom: 2.5rem;
}
.link-phone img {
  width: 1.4rem;
}

.link-instagram {
  display: block;
  position: absolute;
  right: 0.6rem;
  bottom: 2.5rem;
}
.link-instagram img {
  width: 1.2rem;
}

.link-otoriyose {
  display: block;
  position: absolute;
  right: 0.5rem;
  bottom: 16rem;
}
.link-otoriyose img {
  width: 1.4rem;
}

.menu-box .image[data-color=orange] {
  -webkit-box-shadow: 1rem 1rem 0 #ea5514;
          box-shadow: 1rem 1rem 0 #ea5514;
}
.menu-box .image[data-color=blue] {
  -webkit-box-shadow: 1rem 1rem 0 #4052a0;
          box-shadow: 1rem 1rem 0 #4052a0;
}

.image-thumb[data-color=red] {
  -webkit-box-shadow: 0.8rem 0.8rem 0 #f62309;
          box-shadow: 0.8rem 0.8rem 0 #f62309;
}
.image-thumb[data-color=orange] {
  -webkit-box-shadow: 0.8rem 0.8rem 0 #f76e2d;
          box-shadow: 0.8rem 0.8rem 0 #f76e2d;
}
.image-thumb[data-color=yellow] {
  -webkit-box-shadow: 0.8rem 0.8rem 0 #fab119;
          box-shadow: 0.8rem 0.8rem 0 #fab119;
}
.image-thumb[data-color=green] {
  -webkit-box-shadow: 0.8rem 0.8rem 0 #53a251;
          box-shadow: 0.8rem 0.8rem 0 #53a251;
}
.image-thumb[data-color=pink] {
  -webkit-box-shadow: 0.8rem 0.8rem 0 #f9c6d7;
          box-shadow: 0.8rem 0.8rem 0 #f9c6d7;
}

@media (max-width: 833px) {
  html {
    height: -webkit-fill-available;
    font-size: 2.6666666667vw;
  }
  .site-header.is-fixed {
    max-width: 100%;
  }
  .main-contents {
    width: 100%;
  }
  .side-contents {
    display: none;
  }
}
@supports (-webkit-touch-callout: none) {
  .hero-visual {
    max-height: -webkit-fill-available;
  }
}
@media (max-width: 599px) {
  .sp_none {
    display: none;
  }
}

/* add.css */
@charset "UTF-8";

.menu-box .text .note {
  font-size: 87.5%;
  color: #4052a0;
}

.menu-box .text p + .note {
  margin-top: -1em;
}

.block-location {
  padding-bottom: 6.0rem;
}

.btn-menu {
  width: 26.7rem;
  font-family: "Reggae One", cursive;
  font-style: normal;
  gap: 1.0rem;
}

.sub-menu-slider2 {
  width: 29.5rem;
  margin: 0 auto;
}

.sub-menu-slider2 .swiper-wrapper {
  transition-timing-function: linear;
}

.sub-menu-slider2 .swiper-slide {
  margin-bottom: 0;
}
/* slick.css */
/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

/* swiper-bundle.min.css */
/**
 * Swiper 8.4.7
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: January 30, 2023
 */

@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-pointer-events{touch-action:pan-y}.swiper-pointer-events.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:10px;left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:50%;background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:10px;top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:4px;left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}
/* rebu10-theme.css */
@charset "UTF-8";

/* Re;BU10's central column: moving spice contours, ink, and warm paper. */
.main-contents {
  --rebu-ink: #2b1a16;
  --rebu-coral: #d64d2d;
  --rebu-mustard: #e0aa3b;
  --rebu-olive: #687143;
  --rebu-paper: #fff0d2;
  isolation: isolate;
  background: var(--rebu-coral);
  color: var(--rebu-ink);
}

.main-contents::before { content: none; }

.center-motion {
  position: fixed;
  top: 0;
  left: 35%;
  z-index: 0;
  width: 30%;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
  background: var(--rebu-coral) url("/brand/rebu10/background/spice-contours-poster.jpg") left center / cover no-repeat;
}
.center-motion::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: rgba(70, 20, 12, 0.08);
}
.center-motion-video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: left center;
}
.main-contents > .section-block,
.main-contents > .hero-visual,
.main-contents > .footer-block,
.main-contents > .tokoshio-mobile-promotion { position: relative; z-index: 1; }

/* Header and overlay menu carry the restaurant's own palette and routes. */
.main-contents .site-header {
  background: rgba(255, 240, 210, 0.97);
  border-bottom: 3px double var(--rebu-ink);
}
.main-contents .site-header.is-open { background: var(--rebu-paper); }
.main-contents .header-logo a,
.main-contents .header-brand-primary,
.main-contents .header-brand-main { color: var(--rebu-ink); }
.main-contents .header-brand-main { text-shadow: 0.12rem 0.12rem 0 var(--rebu-mustard); }
.main-contents .header-link-ig,
.main-contents .header-link-reserve {
  background: var(--rebu-mustard);
  border-color: var(--rebu-ink);
  box-shadow: 0.25rem 0.25rem 0 var(--rebu-ink);
  color: var(--rebu-ink);
}
.main-contents .menu-buttton.text-blue {
  width: 5.4rem;
  height: 5.4rem;
  border: 2px solid var(--rebu-mustard);
  border-radius: 50%;
  background: var(--rebu-ink);
  color: var(--rebu-paper);
  box-shadow: 0 0 0 1px var(--rebu-ink), 0.35rem 0.35rem 0 var(--rebu-mustard);
  font-size: 1.1rem;
  font-style: normal;
  letter-spacing: 0.04em;
}
.main-contents .menu-buttton:hover,
.main-contents .menu-buttton:focus-visible { background: var(--rebu-olive); outline: 2px solid var(--rebu-ink); outline-offset: 3px; }
.main-contents .navi-menu {
  position: fixed;
  inset: 0 auto 0 35%;
  top: 0 !important;
  width: 30%;
  height: 100vh;
  height: 100dvh;
  padding: clamp(9rem, 17vh, 15rem) 2rem 3rem;
  overflow-y: auto;
  background: var(--rebu-paper) url("/brand/rebu10/decor/spice-orbit.png") center 60% / 65% auto no-repeat;
  border-inline: 1px solid var(--rebu-ink);
}
.main-contents .navi-menu::before {
  content: "";
  position: fixed;
  pointer-events: none;
  inset: 0 auto 0 35%;
  width: 30%;
  opacity: 0.76;
  background: rgba(255, 240, 210, 0.72);
}
.main-contents .navi-menu > * { position: relative; }
.main-contents .contents-navi { font: 700 2.5rem/1.15 "Montserrat", sans-serif; font-style: normal; letter-spacing: 0.05em; }
.main-contents .contents-navi li { margin-top: 2.2rem; }
.main-contents .contents-navi a { color: var(--rebu-ink); }
.main-contents .contents-navi a:hover,
.main-contents .contents-navi a:focus-visible { color: var(--rebu-coral); text-decoration: underline; text-decoration-thickness: 0.12em; }
.main-contents .nav-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 1.1rem; margin-top: 4rem; }
.main-contents .nav-social-link,
.main-contents .nav-reserve-link,
.main-contents .nav-company-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 4.2rem;
  padding: 0.6rem 1rem;
  border: 1px solid var(--rebu-ink);
  color: var(--rebu-ink);
  background: var(--rebu-mustard);
  box-shadow: 0.25rem 0.25rem 0 var(--rebu-ink);
  font: 700 1.3rem/1.2 "Reggae One", sans-serif;
}
.main-contents .nav-social-link { width: 4.2rem; border-radius: 50%; }
.main-contents .nav-company-link { min-height: 44px; white-space: nowrap; }
.main-contents .nav-company-link:focus-visible { outline: 2px solid var(--rebu-paper); outline-offset: 4px; }
.main-contents .nav-social-link img { width: 2rem; filter: brightness(0) saturate(100%) sepia(20%); }
.main-contents .link-tel { margin-top: 3.2rem; color: var(--rebu-ink); font-size: 2rem; font-style: normal; }

/* Remove reference dots, stripes, offset blue frames, and pink bands. */
.main-contents .block-concept::before,
.main-contents .concept-img02::before,
.main-contents .menu-group.group02::before,
.main-contents .menu-group.group03::before,
.main-contents .drink-menu::before,
.main-contents .drink-menu .menu-list::before,
.main-contents .headline-03::before { content: none; }
.main-contents .text-blue,
.main-contents .text-red { color: var(--rebu-ink); }

.main-contents .block-concept { padding-top: 6rem; }
.main-contents .concept-photo-stage {
  padding: 1.25rem 1rem 1rem;
  margin-bottom: 2rem;
  border: 0.45rem solid var(--rebu-paper);
  box-shadow: 0 1rem 0 rgba(43, 26, 22, 0.68);
}
.main-contents .concept-photo-gallery .concept-img01 { filter: drop-shadow(0.4rem 0.4rem 0 var(--rebu-ink)); }
.main-contents .concept-photo-note { background: rgba(43, 26, 22, 0.88); color: var(--rebu-paper); }
.main-contents .concept-spice-orbit {
  width: 10.8rem;
  margin: 2.4rem auto 1.2rem;
  filter: drop-shadow(0.2rem 0.3rem 0 rgba(43, 26, 22, 0.24));
}
.main-contents .concept-spice-orbit img { display: block; width: 100%; height: auto; }
.main-contents .block-concept .headline-02 {
  margin: 0 auto 1.7rem;
  padding: 1.2rem 1rem;
  color: var(--rebu-paper);
  background: var(--rebu-ink);
  font-size: 2.45rem;
  line-height: 1.55;
  text-align: center;
  box-shadow: inset 0 0 0 2px var(--rebu-mustard);
}
.main-contents .block-concept .text-box {
  padding: 2rem 2.1rem;
  background: rgba(255, 240, 210, 0.94);
  border-left: 0.5rem solid var(--rebu-olive);
  box-shadow: 0 0.7rem 0 rgba(43, 26, 22, 0.27);
}
.main-contents .block-concept .text-box p { font-size: 1.38rem; line-height: 1.95; letter-spacing: 0.025em; }
.main-contents .concept-img02 { margin: 2.8rem auto 1rem; padding: 2rem 0; }
.main-contents .concept-img02 span {
  border: 0.55rem solid var(--rebu-paper);
  outline: 0.18rem solid var(--rebu-ink);
  box-shadow: 0.5rem 0.7rem 0 rgba(43, 26, 22, 0.7);
}

.main-contents .block-menu { background: transparent; }
.main-contents .headline-03 {
  width: min(29.5rem, 100%);
  min-height: 5.3rem;
  height: auto;
  margin-bottom: 3.8rem;
  padding: 0.7rem 2rem;
  border: 0;
  border-block: 2px solid var(--rebu-mustard);
  border-radius: 0;
  color: var(--rebu-paper);
  background: var(--rebu-ink);
  font-size: 2.4rem;
  line-height: 1.15;
  letter-spacing: 0.045em;
  clip-path: polygon(0 0, 100% 0, calc(100% - 1.2rem) 100%, 1.2rem 100%);
}
.main-contents .curry-menu .menu-group {
  margin: 0 auto 2.8rem;
  padding: 3.4rem 1.4rem 2.8rem;
  border: 1px solid rgba(43, 26, 22, 0.66);
  background: rgba(255, 240, 210, 0.95);
  box-shadow: 0.55rem 0.65rem 0 rgba(43, 26, 22, 0.65);
}
.main-contents .curry-menu .menu-group.group02,
.main-contents .curry-menu .menu-group.group03 { padding-top: 3.4rem; }
.main-contents .curry-menu .menu-box .image,
.main-contents .curry-menu .image-thumb,
.main-contents .curry-menu figure[class*="representativeImage"] {
  border-color: var(--rebu-ink);
  background: var(--rebu-paper);
  box-shadow: 0.5rem 0.5rem 0 var(--rebu-olive);
}
.main-contents .curry-menu .menu-box .image img,
.main-contents .curry-menu .image-thumb img { position: static; transform: none; background: transparent; }
.main-contents .menu-box .name,
.main-contents .menu-box p,
.main-contents .sub-menu-box .name { color: var(--rebu-ink); }
.main-contents .curry-menu .sub-menu-list,
.main-contents .drink-menu,
.main-contents .dessert-menu { padding: 3.5rem 1.2rem; background: rgba(255, 240, 210, 0.9); border: 1px solid rgba(43, 26, 22, 0.58); }
.main-contents .curry-menu .sub-menu-list { margin-top: 4rem; }
.main-contents .drink-menu .headline-03,
.main-contents .dessert-menu .headline-03 { color: var(--rebu-paper); }

.main-contents .rebu-art-interlude {
  position: relative;
  z-index: 1;
  width: calc(100% - 4rem);
  max-width: 46rem;
  margin: 5rem auto 0;
  padding: 0.8rem;
  border: 2px solid var(--rebu-ink);
  background: var(--rebu-paper);
  box-shadow: 0.65rem 0.65rem 0 var(--rebu-mustard);
}
.main-contents .rebu-art-interlude img {
  display: block;
  width: 100%;
  height: auto;
}

.main-contents .block-location { padding-top: 5.5rem; }
.main-contents .block-location .headline-04 {
  height: 6.5rem;
  margin-inline: -2rem;
  background: var(--rebu-ink);
  color: var(--rebu-paper);
  border-block: 2px solid var(--rebu-mustard);
  letter-spacing: 0.05em;
}
.main-contents .location-visual { margin-bottom: 2.6rem; }
.main-contents .location-visual img { border-block: 0.3rem solid var(--rebu-paper); }
.main-contents .block-location .map {
  max-width: 100%;
  border: 0.45rem solid var(--rebu-paper);
  border-radius: 0;
  filter: drop-shadow(0.45rem 0.45rem 0 var(--rebu-ink));
}
.main-contents .location-info {
  padding: 2.2rem 1.8rem;
  background: rgba(255, 240, 210, 0.96);
  border-left: 0.5rem solid var(--rebu-olive);
}
.main-contents .location-info dl { border-bottom-color: rgba(43, 26, 22, 0.45); }
.main-contents .location-info dt::before { background: rgba(224, 170, 59, 0.62); border-radius: 0; }
.main-contents .location-info a { color: var(--rebu-ink); text-decoration: underline; text-underline-offset: 0.15em; }
.main-contents .btn-menu {
  border: 1px solid var(--rebu-ink);
  background: var(--rebu-mustard);
  color: var(--rebu-ink);
  box-shadow: 0.5rem 0.5rem 0 var(--rebu-ink);
}
.main-contents .btn-menu::before { content: none; }
.main-contents .pdf-badge {
  display: inline-grid;
  place-items: center;
  width: 2.4rem;
  height: 2.8rem;
  margin-left: 0.6rem;
  border: 1px solid var(--rebu-ink);
  clip-path: polygon(0 0, 72% 0, 100% 28%, 100% 100%, 0 100%);
  background: var(--rebu-paper);
  color: var(--rebu-ink);
  font: 700 0.72rem/1 Arial, sans-serif;
}
.main-contents .footer-block {
  position: relative;
  z-index: 1;
  border-top: 0.35rem solid var(--rebu-mustard);
  background: var(--rebu-ink);
  color: var(--rebu-paper);
}
.main-contents .copyright { color: var(--rebu-paper); }

@media (max-width: 833px) {
  .center-motion { left: 0; width: 100%; }
  .main-contents .navi-menu { left: 0; width: 100%; }
  .main-contents .navi-menu::before { left: 0; width: 100%; }
}
@media (max-width: 599px) {
  .main-contents .navi-menu { background-size: 72% auto; }
  .main-contents .block-concept .headline-02 { font-size: 2.15rem; }
  .main-contents .block-concept .text-box p { font-size: 1.42rem; }
}
@media (prefers-reduced-motion: reduce) {
  .center-motion-video { display: none; }
}

/* rebu10-retro-center.css */
/* Central-column art direction. The fixed brand panels are intentionally untouched. */
.main-contents {
  --retro-ink: #21171c;
  --retro-ivory: #fff2d5;
  --retro-gold: #f8c45b;
  --retro-orange: #e77a3e;
  --retro-violet: #3c2454;
  background: #20141b;
  color: var(--retro-ivory);
}
.main-contents .center-motion { display: none; }
.main-contents > .retro-center,
.main-contents > .section-block,
.main-contents > .footer-block,
.main-contents > .tokoshio-mobile-promotion { position: relative; z-index: 1; }
.main-contents .site-header {
  position: relative;
  z-index: 1002;
  background: #21151c;
  border-bottom: 1px solid rgba(255, 225, 169, .44);
}
.main-contents .site-header.is-fixed { position: fixed; left: 35%; width: 30%; }
.main-contents .site-header.is-open { background: #21151c; }
.main-contents .header-brand-primary,
.main-contents .header-brand-main,
.main-contents .header-logo a { color: #fff0cf; }
.main-contents .header-brand-main { text-shadow: 2px 2px 0 #784434; }
.main-contents .header-link-ig,
.main-contents .header-link-reserve { background: var(--retro-gold); border-color: #1a1017; box-shadow: 3px 3px 0 #e47a40; }
.main-contents .menu-buttton.text-blue { background: #22151d; border-color: #ffc967; color: #fff0cf; box-shadow: 3px 3px 0 #dc7942; }
.main-contents .navi-menu,
.main-contents .navi-menu::before { background-color: #21151c; }
.main-contents .navi-menu { border-color: #f8c45b; }
.main-contents .navi-menu::before { background: rgba(33,21,28,.82); }
.main-contents .contents-navi a,
.main-contents .link-tel { color: #fff0cf; }
.main-contents .contents-navi a:hover,
.main-contents .contents-navi a:focus-visible { color: #f8c45b; }
.retro-center { min-width: 0; overflow: hidden; background: #20141b; color: var(--retro-ivory); }
.retro-center a { color: inherit; }
.retro-center img { display: block; max-width: 100%; }
.retro-center .retro-scene { position: relative; isolation: isolate; overflow: hidden; padding: 36px clamp(22px, 2.8vw, 45px) 70px; }
.retro-center .retro-scene::before,
.retro-center .retro-scene::after { content: ""; position: absolute; inset: 0; pointer-events: none; z-index: -2; }
.retro-center .retro-scene::before { background-size: cover; background-position: center; }
.retro-center .retro-scene::after { z-index: -1; }
.retro-center .retro-section-line { display: flex; justify-content: space-between; gap: 8px; align-items: center; border-bottom: 1px solid rgba(255, 231, 185, .55); padding: 0 0 14px; color: #ffe7b2; font-size: clamp(9px, .72vw, 12px); letter-spacing: .1em; }
.retro-center .retro-section-line span:last-child { color: #ffca68; letter-spacing: .17em; white-space: nowrap; }
.retro-center .retro-eyebrow { color: #ffd16d; font-size: clamp(10px, .76vw, 13px); font-weight: 700; letter-spacing: .13em; }
.retro-center .retro-hero { min-height: min(860px, 91svh); padding-top: 47px; background: #3c241e; }
.retro-center .retro-hero-backdrop { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: 53% 40%; }
.retro-center .retro-hero::after { background: linear-gradient(180deg, rgba(22,12,19,.60), rgba(32,14,21,.34) 33%, rgba(27,11,20,.56) 72%, #21141b 100%); }
.retro-center .retro-hero-brand { margin: 58px 0 0; padding-left: 14px; border-left: 5px solid #ffd16d; }
.retro-center .retro-hero h1 { margin: 14px 0 18px; font-size: clamp(18px, 2.5vw, 49px); line-height: 1.4; letter-spacing: -.04em; color: #fff1d1; text-shadow: 3px 3px 0 #39212e, 0 8px 16px #201015; }
.retro-center .retro-hero h1 strong { display: block; color: #ffd16d; font-size: 1.4em; line-height: 1.15; letter-spacing: .04em; text-shadow: 4px 4px 0 #6a2f2f; }
.retro-center .retro-hero-copy { max-width: 32em; margin: 0; color: #fff5dd; font-size: clamp(13px, .91vw, 16px); line-height: 1.9; text-shadow: 0 2px 8px #1b1015; }
.retro-center .retro-hero-photo { position: relative; width: 92%; margin: 55px auto 30px; padding: 7px; background: #f3d9ae; transform: rotate(-2deg); box-shadow: 8px 10px 0 #351e2c, 0 20px 30px #190f16a8; }
.retro-center .retro-hero-photo img { width: 100%; aspect-ratio: 1.29; object-fit: cover; }
.retro-center .retro-hero-photo::before,
.retro-center .retro-hero-photo::after { content: ""; position: absolute; width: 23px; height: 23px; z-index: 2; background: #ffd169; }
.retro-center .retro-hero-photo::before { top: -9px; left: -9px; clip-path: polygon(0 0,100% 0,100% 32%,32% 32%,32% 100%,0 100%); }
.retro-center .retro-hero-photo::after { bottom: -9px; right: -9px; clip-path: polygon(68% 0,100% 0,100% 100%,0 100%,0 68%,68% 68%); }
.retro-center .retro-hero-photo figcaption { position: absolute; right: 0; bottom: -24px; background: #21141b; color: #ffe6b4; padding: 7px 10px; border: 1px solid #ffd169; font-size: 9px; letter-spacing: .1em; transform: rotate(2deg); }
.retro-center .retro-scroll { display: flex; align-items: center; justify-content: space-between; margin-top: 40px; color: #f8d394; font-size: 10px; letter-spacing: .12em; }
.retro-center .retro-scroll a { display: grid; place-items: center; width: 31px; height: 31px; border: 1px solid #f8d394; font-size: 18px; }
.retro-center .retro-story { background: #27383e; }
.retro-center .retro-story::before { background-image: url('/brand/rebu10/retro/chef-route-800.webp'); background-position: 52% 36%; }
.retro-center .retro-story::after { background: linear-gradient(180deg, rgba(11,24,31,.59), rgba(14,26,31,.4) 32%, rgba(11,20,28,.78) 78%, #1a1c25); }
.retro-center .retro-story h2 { margin: 45px 0 12px; padding-left: 16px; border-left: 5px solid #ffca70; color: #fff1d4; font-size: clamp(22px, 2.25vw, 48px); line-height: 1.3; text-shadow: 3px 3px 0 #18313a; }
.retro-center .retro-story h2 span { color: #ffda8b; }
.retro-center .retro-story-lead { max-width: 35em; margin: 0 0 38px; font-size: clamp(14px, .96vw, 17px); line-height: 1.85; }
.retro-center .retro-travel { display: flex; gap: 12px; align-items: flex-start; margin: 0 -12px 40px; padding: 13px 12px 18px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-color: #f0be74 transparent; }
.retro-center .retro-travel figure { flex: 0 0 49%; margin: 0; padding: 5px 5px 0; background: #f2ddba; color: #24191d; box-shadow: 4px 6px 0 #142530; scroll-snap-align: center; }
.retro-center .retro-travel figure:nth-child(1) { transform: rotate(-3deg) translateY(6px); }
.retro-center .retro-travel figure:nth-child(2) { transform: rotate(2deg); }
.retro-center .retro-travel figure:nth-child(3) { transform: rotate(3deg) translateY(8px); }
.retro-center .retro-travel img { width: 100%; aspect-ratio: .78; object-fit: cover; }
.retro-center .retro-travel figcaption { display: flex; justify-content: space-between; padding: 9px 3px 10px; font-size: clamp(9px, .7vw, 12px); letter-spacing: .06em; }
.retro-center .retro-copy-box { position: relative; margin: 34px 0 0; padding: clamp(22px, 2vw, 34px); border: 1px solid #f1c783; background: rgba(19,29,35,.9); box-shadow: 7px 7px 0 #14262e; }
.retro-center .retro-copy-box::before,
.retro-center .retro-copy-box::after { content: ""; position: absolute; width: 12px; height: 12px; background: #f1c783; }
.retro-center .retro-copy-box::before { top: -5px; left: -5px; }
.retro-center .retro-copy-box::after { right: -5px; bottom: -5px; }
.retro-center .retro-copy-box p { margin: 0; font-size: clamp(14px, .92vw, 16px); line-height: 1.98; }
.retro-center .retro-belief { margin: 34px 0 0; color: #ffdf9b; font-size: clamp(17px, 1.55vw, 24px); font-weight: 700; line-height: 1.7; text-align: center; text-shadow: 0 3px 9px #13242a; }
.retro-center .retro-dish { background: #5c2b20; }
.retro-center .retro-dish::before { background-image: url('/brand/rebu10/retro/menu-spices-800.webp'); }
.retro-center .retro-dish::after { background: linear-gradient(180deg, rgba(39,18,20,.70), rgba(52,24,22,.55) 34%, rgba(37,17,22,.84)); }
.retro-center .retro-dish h2,
.retro-center .retro-salt h2,
.retro-center .retro-salad h2 { margin: 44px 0 14px; color: #fff0ca; font-size: clamp(27px, 2.55vw, 44px); line-height: 1.34; text-shadow: 3px 4px 0 #472426; }
.retro-center .retro-dish-lead,
.retro-center .retro-salt-lead,
.retro-center .retro-salad-lead { margin: 0 0 26px; color: #fff2d9; font-size: clamp(14px, .94vw, 17px); line-height: 1.9; }
.retro-center .retro-dish-photo,
.retro-center .retro-salad-photo { position: relative; margin: 0 -15px 28px; padding: 5px; background: #f4d3a4; box-shadow: 8px 8px 0 #271820; }
.retro-center .retro-dish-photo img,
.retro-center .retro-salad-photo img { width: 100%; aspect-ratio: 1.12; object-fit: cover; }
.retro-center .retro-dish-photo figcaption,
.retro-center .retro-salad-photo figcaption { position: absolute; right: 5px; bottom: 5px; padding: 7px 9px; background: #21151c; color: #ffe3b1; font-size: 10px; }
.retro-center .retro-body { padding: 23px 21px; background: #20171c; color: #fff1d8; border: 2px solid #ffd48d; box-shadow: 6px 6px 0 #aa4c2b; font-size: clamp(14px, .89vw, 16px); line-height: 1.95; }
.retro-center .retro-body p { margin: 0 0 1.1em; }
.retro-center .retro-body p:last-child { margin-bottom: 0; }
.retro-center .retro-salt { background: #312545; }
.retro-center .retro-salt::before { background: radial-gradient(circle at 52% 36%, #6a5488 0%, #3a2a55 47%, #231b32 100%); }
.retro-center .retro-salt::after { background: linear-gradient(180deg, rgba(21,15,37,.25), rgba(21,15,37,.64)); }
.retro-center .retro-salt-art { position: relative; display: grid; place-items: center; min-height: 340px; margin: 15px -16px 30px; overflow: hidden; }
.retro-center .retro-salt-art::before,
.retro-center .retro-salt-art::after { content: ""; position: absolute; border: 1px solid rgba(255,226,178,.45); border-radius: 50%; aspect-ratio: 1; }
.retro-center .retro-salt-art::before { width: 76%; }
.retro-center .retro-salt-art::after { width: 96%; border-color: rgba(255,226,178,.19); }
.retro-center .retro-salt-art img { width: 48%; max-width: 240px; box-shadow: 11px 14px 0 #1b1425, 0 20px 30px #110d1bbf; transform: rotate(3deg); }
.retro-center .retro-salt .retro-body { box-shadow: 6px 6px 0 #6a477e; }
.retro-center .retro-link { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 58px; margin-top: 30px; padding: 12px 19px; background: #d4cfe0; border: 2px solid #f6e7ff; box-shadow: 6px 6px 0 #1c1428; color: #35234a; font-size: clamp(13px, .95vw, 17px); font-weight: 700; text-decoration: none; transition: transform .2s, box-shadow .2s; }
.retro-center .retro-link:hover { transform: translate(-3px,-3px); box-shadow: 9px 9px 0 #1c1428; }
.retro-center .retro-link span { font-size: 26px; }
.retro-center .retro-salad { background: #3e4930; }
.retro-center .retro-salad::before { background: radial-gradient(circle at 20% 21%, #748158, transparent 38%), radial-gradient(circle at 80% 74%, #40563b, transparent 50%), #3e4930; }
.retro-center .retro-salad::after { background: linear-gradient(180deg, rgba(17,28,19,.28), rgba(16,28,22,.68)); }
.retro-center .retro-salad .retro-body { box-shadow: 6px 6px 0 #607847; }
.retro-center .retro-bridge { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 12px; padding: 22px 28px; background: #20151b; border-top: 4px solid #f3bd66; border-bottom: 4px solid #f3bd66; }
.retro-center .retro-bridge strong { color: #ffe1a8; font-size: clamp(20px, 1.9vw, 33px); }
.retro-center .retro-bridge span { color: #ffd177; font-size: 25px; }
.retro-center .retro-scene:not(.retro-hero),
.main-contents .curry-menu,
.main-contents .drink-menu,
.main-contents .dessert-menu,
.main-contents #spice-gallery,
.main-contents .block-location { content-visibility: auto; contain-intrinsic-size: auto 900px; }
.retro-center .retro-story { contain-intrinsic-size: auto 1200px; }
.retro-center .retro-salt { contain-intrinsic-size: auto 1150px; }
.retro-center .retro-dish,
.retro-center .retro-salad { contain-intrinsic-size: auto 1000px; }
.main-contents .curry-menu { contain-intrinsic-size: auto 2600px; }
.main-contents .drink-menu,
.main-contents .dessert-menu { contain-intrinsic-size: auto 500px; }
.main-contents .block-location { contain-intrinsic-size: auto 1400px; }
.retro-center.retro-reveal-ready .retro-reveal { opacity: 0; translate: 0 20px; transition: opacity .7s ease, translate .7s ease; }
.retro-center.retro-reveal-ready .retro-reveal.is-visible { opacity: 1; translate: 0 0; }
.main-contents .curry-menu,
.main-contents .drink-menu,
.main-contents .dessert-menu,
.main-contents .block-location { background: #221720; color: #fff0d6; }
.main-contents .curry-menu { padding-top: 5rem; }
.main-contents .curry-menu .headline-03,
.main-contents .drink-menu .headline-03,
.main-contents .dessert-menu .headline-03,
.main-contents .block-location .headline-04 { color: #fff0d6; background: #2b1b2b; border-color: #f6bd64; box-shadow: 6px 6px 0 #a95438; }
.main-contents .curry-menu .menu-group,
.main-contents .drink-menu,
.main-contents .dessert-menu { background-color: #31232c; }
.main-contents .curry-menu .menu-box .text,
.main-contents .curry-menu .menu-box .name,
.main-contents .curry-menu .menu-box p,
.main-contents .curry-menu .groupDescription,
.main-contents .curry-menu .lineup li { color: #fff1d9; }
.main-contents .curry-menu .sub-menu-list,
.main-contents .drink-menu,
.main-contents .dessert-menu { background: #31232c; border-color: #f6bd64; }
.main-contents .menu-box .name,
.main-contents .menu-box p { color: #fff1d9; }
.main-contents .block-location { padding-bottom: 7rem; }
.main-contents .location-info { color: #fff0d6; background: #30242c; border: 1px solid #f6bd64; box-shadow: 6px 6px 0 #7d4c3e; }
.main-contents .location-info a { color: #fff0d6; }
.main-contents .footer-block { background: #19141b; border-top: 4px solid #f6bd64; }
.main-contents .copyright { color: #ffe3ab; }
@media (max-width: 833px) {
  .main-contents .site-header.is-fixed { left: 0; width: 100%; }
  .main-contents .site-header { position: relative; top: 0 !important; }
  .retro-center .retro-hero { min-height: 760px; }
  .retro-center .retro-hero h1 { font-size: clamp(36px, 6vw, 56px); }
  .retro-center .retro-hero-copy,
  .retro-center .retro-body,
  .retro-center .retro-copy-box p { font-size: 15px; }
  .retro-center .retro-travel figure { flex-basis: 36%; }
}
@media (max-width: 600px) {
  .retro-center .retro-scene { padding: 27px 22px 62px; }
  .retro-center .retro-hero { min-height: 0; padding-bottom: 60px; }
  .retro-center .retro-hero-brand { margin-top: 50px; }
  .retro-center .retro-hero h1 { font-size: clamp(31px, 8vw, 43px); }
  .retro-center .retro-hero-photo { margin-top: 48px; }
  .retro-center .retro-story h2 { font-size: 37px; }
  .retro-center .retro-travel { margin-inline: -22px; padding-inline: 25px; }
  .retro-center .retro-travel figure { flex-basis: min(62vw, 260px); }
  .retro-center .retro-dish h2,
  .retro-center .retro-salt h2,
  .retro-center .retro-salad h2 { font-size: 31px; }
  .retro-center .retro-salt-art { min-height: 270px; }
  .retro-center .retro-body,
  .retro-center .retro-copy-box p { font-size: 14px; }
}
@media (max-width: 359px) {
  .retro-center .retro-hero h1 { font-size: 25px; letter-spacing: -.055em; }
}
@media (prefers-reduced-motion: reduce) {
  .retro-center.retro-reveal-ready .retro-reveal { opacity: 1; translate: none; transition: none; }
}
