@charset "UTF-8";

/* ---------------------------------------------
  PC
--------------------------------------------- */
/*================
  共通
================*/
#wrapper .section__inner {
  max-width: 1366px;
  margin-inline: auto;
}
#wrapper .section__title {
  text-align: center;
  position: relative;
  z-index: 1;
}
#wrapper .section__title-en {
  font-size: min(20 / 1366 * 100vw, 20px);
  line-height: 2.5;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #b99b66;
}
#wrapper .section__title-ja {
  font-size: min(40 / 1366 * 100vw, 40px);
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #fff;
}
#wrapper .section__title-ja--black {
  color: #000;
}
/*================
  アニメーション
================*/
/* スクロールアニメーション共通 */
#wrapper .io {
  transition: all 1.5s ease;
}
/* fade-in
-------------------- */
#wrapper .io-fade-in {
  opacity: 0;
  transition-delay: 0.2s;
}
#wrapper .io-fade-in.is-animation-active {
  opacity: 1;
}
/*================
  追従ボタン
================*/
#wrapper .float {
  position: fixed;
  top: min(110 / 1366 * 100vw, 110px);
  right: 0;
  width: fit-content;
  z-index: 5;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0.4s, opacity 0.4s;
}
#wrapper .float.is-floating-show {
  visibility: visible;
  opacity: 1;
}
#wrapper .float__button-text {
  display: block;
  font-size: min(18 / 1366 * 100vw, 18px);
  line-height: 3.8;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #970000;
  writing-mode: vertical-rl;
  border-radius: 10px 0 0 10px;
  padding: min(16 / 1366 * 100vw, 16px) 0;
}
/*================
  fv
================*/
#wrapper .fv {
  height: auto;
  position: relative;
  width: 100%;
  overflow: hidden;
}
#wrapper .fv__guide {
  width: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
  height: 165px;
}
#wrapper .fv__guide-scroll {
  position: absolute;
  right: min(132 / 1366 * 100vw, 132px);
  padding-bottom: 120px;
  font-size: 10px;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #fff;
  writing-mode: vertical-rl;
}
#wrapper .fv__guide-scroll::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
  width: 1px;
  height: 110px;
  background-color: #fff;
  animation: fv__guide-scroll 2s infinite;
}
@keyframes fv__guide-scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
/*================
  achievements
================*/
#wrapper .achievements {
  background-image: url(/suki-syabu/assets/img/top/bg_achievements_pc.jpg);
  background-size: auto;
  background-repeat: repeat;
  padding: min(148 / 1366 * 100vw, 148px) 0 min(150 / 1366 * 100vw, 150px);
  position: relative;
}
#wrapper .achievements__inner {
  position: relative;
  padding-right: min(80 / 1366 * 100vw, 80px);
}
#wrapper .achievements__inner::before {
  content: "";
  background: url(/suki-syabu/assets/img/top/bg_achievements_logo.png) top/cover no-repeat;
  position: absolute;
  top: max(-130 / 1366 * 100vw, -130px);
  left: min(40 / 1366 * 100vw, 40px);
  width: min(401 / 1366 * 100vw, 401px);
  height: min(441 / 1366 * 100vw, 441px);
  z-index: 0;
  pointer-events: none;
  opacity: 0.1;
}
#wrapper .achievements__inner::after {
  content: "";
  background: url(/suki-syabu/assets/img/top/bg_achievements_text.png) top/cover no-repeat;
  position: absolute;
  bottom: max(-160 / 1366 * 100vw, -160px);
  left: 0;
  right: 0;
  margin-inline: auto;
  width: min(1193 / 1366 * 100vw, 1193px);
  height: min(123 / 1366 * 100vw, 123px);
  z-index: 0;
  pointer-events: none;
  opacity: 0.1;
}
#wrapper .achievements__contents {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: min(45 / 1366 * 100vw, 45px);
  position: relative;
  z-index: 1;
}
#wrapper .achievements__title {
  font-size: min(40 / 1366 * 100vw, 40px);
  line-height: 2.5;
  letter-spacing: 0.1em;
  font-weight: 400;
  text-align: center;
}
#wrapper .achievements__badge {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(22 / 1366 * 100vw, 22px);
}
#wrapper .achievements__description {
  font-size: min(20 / 1366 * 100vw, 20px);
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-top: min(27 / 1366 * 100vw, 27px);
}
#wrapper .achievements__badge-image {
  width: min(215 / 1366 * 100vw, 215px);
}
#wrapper .achievements__photo {
  width: min(620 / 1366 * 100vw, 620px);
}
/*================
  concept
================*/
#wrapper .concept {
  background-image: url(/suki-syabu/assets/img/top/bg_concept_pc.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  padding: min(90 / 1366 * 100vw, 90px) 0 min(170 / 1366 * 100vw, 170px);
  position: relative;
}
#wrapper .concept::after {
  content: "";
  background: url(/suki-syabu/assets/img/top/bg_concept_decoration.png) bottom/contain no-repeat;
  position: absolute;
  bottom: max(-145 / 1366 * 100vw, -145px);
  left: min(32 / 1366 * 100vw, 32px);
  width: min(259 / 1366 * 100vw, 259px);
  height: min(201 / 1366 * 100vw, 201px);
  z-index: 1;
  pointer-events: none;
}
#wrapper .concept__inner {
  position: relative;
}
#wrapper .concept__contents-block {
  display: flex;
  align-items: center;
  gap: min(75 / 1366 * 100vw, 75px);
}
#wrapper .concept__contents-block:first-of-type {
  margin-top: min(100 / 1366 * 100vw, 100px);
}
#wrapper .concept__contents-block:nth-child(even) {
  flex-direction: row-reverse;
}
#wrapper .concept__contents-left {
  width: min(683 / 1366 * 100% ,683px);
}
#wrapper .concept__contents-right {
  width: 40%;
}
#wrapper .concept__contents-lead {
  font-size: min(40 / 1366 * 100vw, 40px);
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #fff;
}
#wrapper .concept__contents-description {
  font-size: min(14 / 1366 * 100vw, 14px);
  line-height: 2.5;
  letter-spacing: 0.06em;
  font-weight: 400;
  color: #fff;
  margin-top: min(15 / 1366 * 100vw, 15px);
  width: 87%;
}
#wrapper .concept__contents-banner {
  border-top: 1px solid #b99b66;
  border-bottom: 1px solid #b99b66;
  padding: min(65 / 1366 * 100vw, 65px) 0 min(50 / 1366 * 100vw, 50px);
  width: min(1200 / 1366 * 100vw, 1200px);
  margin: min(103 / 1366 * 100vw, 103px) auto 0;
  position: relative;
}
#wrapper .concept__contents-banner::before {
  content: "";
  background: url(/suki-syabu/assets/img/top/bg_concept_banner_decoration.png) right/contain no-repeat;
  position: absolute;
  top: max(-75 / 1366 * 100vw, -75px);
  right: max(-75 / 1366 * 100vw, -75px);
  width: min(294 / 1366 * 100vw, 294px);
  height: min(333 / 1366 * 100vw, 333px);
  pointer-events: none;
}
#wrapper .concept__contents-banner-lead {
  font-size: min(30 / 1366 * 100vw, 30px);
  line-height: 1;
  letter-spacing: 0.2em;
  font-weight: 400;
  text-align: center;
  color: #b99b66;
}
#wrapper .concept__contents-banner-lead--large {
  font-size: min(50 / 1366 * 100vw, 50px);
}
#wrapper .concept__contents-banner-image {
  width: min(598 / 1366 * 100vw, 598px);
  margin: min(35 / 1366 * 100vw, 35px) auto 0;
}
/*================
  menu
================*/
#wrapper .menu {
  background-image: url(/suki-syabu/assets/img/top/bg_menu_pc.jpg);
  background-size: auto;
  background-repeat: repeat;
  padding: min(160 / 1366 * 100vw, 160px) 0 min(130 / 1366 * 100vw, 130px);
  position: relative;
}
#wrapper .menu::before {
  content: "";
  background: url(/suki-syabu/assets/img/top/bg_menu_decoration_01_pc.png) left/contain no-repeat;
  position: absolute;
  top: min(77 / 1366 * 100vw, 77px);
  left: 0;
  width: min(359 / 1366 * 100vw, 359px);
  height: min(134 / 1366 * 100vw, 134px);
  z-index: 0;
  pointer-events: none;
}
#wrapper .menu::after {
  content: "";
  background: url(/suki-syabu/assets/img/top/bg_menu_decoration_02_pc.png) right/contain no-repeat;
  position: absolute;
  top: min(32 / 1366 * 100vw, 32px);
  right: 0;
  width: min(355 / 1366 * 100vw, 355px);
  height: min(486 / 1366 * 100vw, 486px);
  z-index: 0;
  pointer-events: none;
}
#wrapper .menu__inner {
  position: relative;
  padding: 0 min(80 / 1366 * 100vw, 80px);
}
#wrapper .menu__accordion {
  position: relative;
  z-index: 1;
}
#wrapper .menu__accordion:first-of-type {
  margin-top: min(83 / 1366 * 100vw, 83px);
}
#wrapper .menu__accordion:not(:first-of-type) {
  margin-top: min(50 / 1366 * 100vw, 50px);
}
#wrapper .menu__accordion::after {
  content: "";
  display: block;
  padding-top: min(50 / 1366 * 100vw, 50px);
  margin-inline: auto;
}
#wrapper .menu__accordion:not(:last-of-type)::after {
  border-bottom: min(2 / 1366 * 100vw, 2px) solid #000;
}
#wrapper .menu__accordion-heading {
  font-size: min(30 / 1366 * 100vw, 30px);
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 400;
  width: fit-content;
  margin-inline: auto;
  position: relative;
  cursor: pointer;
  display: flex;
  align-items: center;
}
#wrapper .menu__accordion-heading::before {
  font-size: min(18 / 1366 * 100vw, 18px);
  line-height: 1.666;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #fff;
  border-radius: 10px;
  width: min(120 / 1366 * 100vw, 120px);
  text-align: center;
  margin-right: min(46 / 1366 * 100vw, 46px);
}
#wrapper .menu__accordion-heading--sukiyaki::before {
  content: "すき焼き";
  background-color: #970000;
}
#wrapper .menu__accordion-heading--syabusyabu::before {
  content: "しゃぶしゃぶ";
  background-color: #b99b66;
  letter-spacing: -0.14em;
}
#wrapper .menu__accordion-text {
  width: min(28 / 1366 * 100vw, 28px);
  height: min(28 / 1366 * 100vw, 28px);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: min(140 / 1366 * 100vw, 140px);
}
#wrapper .menu__accordion-heading--sukiyaki .menu__accordion-text {
  background-color: #970000;
}
#wrapper .menu__accordion-heading--syabusyabu .menu__accordion-text {
  background-color: #b99b66;
}
#wrapper .menu__accordion-text::before,
#wrapper .menu__accordion-text::after {
  content: "";
  position: absolute;
  width: min(14 / 1366 * 100vw, 14px);
  height: min(2 / 1366 * 100vw, 2px);
  background-color: #fff;
}
#wrapper .menu__accordion-text::before {
  transform: rotate(-90deg);
  transition: transform 0.3s;
}
#wrapper .menu__accordion-heading.is-accordion-open .menu__accordion-text::before {
  transform: rotate(0deg);
}
#wrapper .menu__accordion-body {
  display: none;
}
#wrapper .menu__accordion-body-block {
  display: flex;
  align-items: flex-end;
  gap: min(20 / 1366 * 100vw, 20px);
  margin-top: min(60 / 1366 * 100vw, 60px);
}
#wrapper .menu__accordion-body-block::after {
  content: "";
  background: url(/suki-syabu/assets/img/top/bg_menu_decoration_03.png) right/contain no-repeat;
  position: absolute;
  top: min(70 / 1366 * 100vw, 70px);
  left: 47%;
  width: min(151 / 1366 * 100vw, 151px);
  height: min(114 / 1366 * 100vw, 114px);
  z-index: 0;
  pointer-events: none;
  opacity: 0.1;
}
#wrapper .menu__accordion-body-image {
  width: min(600 / 1366 * 100vw, 600px);
}
#wrapper .menu__accordion-body-detail {
  width: calc(100% - min(620 / 1366 * 100vw, 620px));
}
#wrapper .menu__accordion-body-detail-price {
  font-size: min(30 / 1366 * 100vw, 30px);
  line-height: 1;
  letter-spacing: 0.03em;
  font-weight: 700;
  display: block;
}
#wrapper .menu__accordion-body-detail-name {
  font-size: min(20 / 1366 * 100vw, 20px);
  line-height: 1.75;
  letter-spacing: 0.1em;
  font-weight: 400;
  display: block;
  margin-top: min(5 / 1366 * 100vw, 5px);
}
#wrapper .menu__accordion-body-detail-group {
  display: flex;
  flex-direction: column;
  gap: min(10 / 1366 * 100vw, 10px);
  margin-top: min(20 / 1366 * 100vw, 20px);
}
#wrapper .menu__accordion-body-detail-list {
  display: flex;
  gap: min(10 / 1366 * 100vw, 10px);
}
#wrapper .menu__accordion-body-detail-list-item {
  font-size: min(18 / 1366 * 100vw, 18px);
  line-height: 2.8;
  letter-spacing: 0.1em;
  font-weight: 400;
  background-color: #fff;
  position: relative;
  padding: 0 min(20 / 1366 * 100vw, 20px) 0 min(35 / 1366 * 100vw, 35px);
}
#wrapper .menu__accordion-body-detail-list-item::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 -50%;
  width: min(15 / 1366 * 100vw, 15px);
  height: 1px;
  background-color: #000;
}
/*================
  voice
================*/
#wrapper .voice {
  background-color: #222;
  padding: min(100 / 1366 * 100vw, 100px) 0 min(130 / 1366 * 100vw, 130px);
}
#wrapper .voice__text {
  font-size: min(20 / 1366 * 100vw, 20px);
  line-height: 2.5;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #fff;
  text-align: center;
  margin-top: min(40 / 1366 * 100vw, 40px);
}
#wrapper .voice__review {
  max-width: 1200px;
  margin-inline: auto;
}
/*================
  sns
================*/
#wrapper .sns {
  background-color: #222;
  padding: 0  min(83 / 1366 * 100vw, 83px);
}
#wrapper .sns__review {
  max-width: 1200px;
  margin-inline: auto;
}
#wrapper .sns__inner {
  background-color: #fff;
  padding: min(33 / 1366 * 100vw, 33px) 0;
}
#wrapper .sns__button {
  margin-top: min(10 / 1366 * 100vw, 10px);
}
#wrapper .sns__button-link {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(10 / 1366 * 100vw, 10px);
  width: min(237 / 1366 * 100vw, 237px);
  border-radius: 23px;
  background-color: #b99b66;
  margin-inline: auto;
}
#wrapper .sns__button-image {
  width: min(23 / 1366 * 100vw, 23px);
  margin-top: min(1 / 1366 * 100vw, 1px);
}
#wrapper .sns__button-text {
  font-size: min(20 / 1366 * 100vw, 20px);
  line-height: 2.25;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #fff;
}
/*================
  shop
================*/
#wrapper .shop {
  padding: min(80 / 1366 * 100vw, 80px) 0 min(55 / 1366 * 100vw, 55px);
  background-color: #222;
}
#wrapper .shop__inner {
  padding: 0 min(83 / 1366 * 100vw, 83px);
}
#wrapper .shop__contents {
  margin-top: min(55 / 1366 * 100vw, 55px);
  display: flex;
  gap: min(40 / 1366 * 100vw, 40px);
}
#wrapper .shop__contents-image {
  width: min(580 / 1366 * 100vw, 580px);
}
#wrapper .shop__contents-detail {
  width: min(580 / 1366 * 100vw, 580px);
}
#wrapper .shop__contents-text {
  display: block;
  padding-bottom: min(30 / 1366 * 100vw, 30px);
  margin-top: max(-10 / 1366 * 100vw, -10px);
}
#wrapper .shop__contents-text-group {
  display: flex;
}
#wrapper .shop__contents-text-left {
  width: 16%;
}
#wrapper .shop__contents-text-left-heading {
  font-size: min(12 / 1366 * 100vw, 12px);
  line-height: 2.25;
  font-weight: 400;
  letter-spacing: 0.04em;
  color: #fff;
}
#wrapper .shop__contents-text-right-body {
  font-size: min(12 / 1366 * 100vw, 12px);
  line-height: 2.25;
  font-weight: 400;
  letter-spacing: 0.04em;
  color: #fff;
}
#wrapper .shop__contents-text-right-body--access {
  line-height: 1;
}
#wrapper .shop__contents-text-right-body--access-time {
  font-size: min(12 / 1366 * 100vw, 12px);
  line-height: 2.25;
  font-weight: 400;
  letter-spacing: 0.04em;
  color: #fff;
}
#wrapper .shop__contents-text-right-body-note {
  font-size: min(10 / 1366 * 100vw, 10px);
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: 0.04em;
  color: #fff;
}
#wrapper .shop__contents-map {
  display: inline-block;
  width: 20px;
  height: 15px;
}
#wrapper .shop__contents-map-link {
  text-decoration: underline;
  color: #fff;
}
#wrapper .shop__contents-text-right-body-tel {
  color: #fff;
}
#wrapper .shop__link {
  display: flex;
  gap: min(11 / 1366 * 100vw, 11px);
}
#wrapper .shop__link-wrap {
  width: calc(1 / 3 * 100%);
}
#wrapper .shop__link-text {
  font-size: min(14 / 1366 * 100vw, 14px);
  line-height: 2.7;
  font-weight: 400;
  letter-spacing: 0.04em;
  color: #b99b66;
  border: 1px solid #b99b66;
  display: block;
  text-align: center;
}
#wrapper .shop__button {
  margin-top: min(30 / 1366 * 100vw, 30px);
  text-align: center;
}
#wrapper .shop__button-text {
  font-size: min(20 / 1366 * 100vw, 20px);
  line-height: 2.8;
  font-weight: 400;
  letter-spacing: 0.2em;
  color: #fff;
  background-color: #970000;
  width: 100%;
  display: block;
  position: relative;
}
#wrapper .shop__button-text::before {
  content: "";
  width: min(18 / 1366 * 100vw, 18px);
  height: min(18 / 1366 * 100vw, 18px);
  background-color: #fff;
  display: block;
  position: absolute;
  top: 50%;
  left: 70%;
  translate: 0 -50%;
  border-radius: 50%;
}
#wrapper .shop__button-text::after {
  content: "";
  border-style: solid;
  border-width: min(5 / 1366 * 100vw, 5px) 0 min(5 / 1366 * 100vw, 5px) min(6 / 1366 * 100vw, 6px);
  border-color: transparent transparent transparent #970000;
  position: absolute;
  top: 50%;
  left: 71.8%;
  translate: -50% -50%;
}
/* ---------------------------------------------
  SP
--------------------------------------------- */
@media (max-width: 750px) {
  /*================
  共通
  ================*/
  #wrapper .section__inner {
    padding: 0 min(40 / 750 * 100vw, 40px);
  }
  #wrapper .section__title-en {
    font-size: min(28 / 750 * 100vw, 28px);
  }
  #wrapper .section__title-ja {
    font-size: min(50 / 750 * 100vw, 50px);
  }
  /*================
    追従ボタン
  ================*/
  #wrapper .float {
    position: fixed;
    top: auto;
    bottom: 0;
    right: 0;
    width: 100%;
  }
  #wrapper .float__button-text {
    font-size: min(40 / 750 * 100vw, 40px);
    line-height: 2.25;
    writing-mode: horizontal-tb;
    border-radius: 0;
    padding: 0;
    text-align: center;
  }
  /*================
    fv
  ================*/
  #wrapper .fv {
    height: calc(100svh - min(90 / 750 * 100vw, 90px));
  }
  #wrapper .fv__guide {
    height: min(231 / 750 * 100vw, 231px);
  }
  #wrapper .fv__guide-scroll {
    right: min(40 / 750 * 100vw, 40px);
    padding-bottom: min(150 / 750 * 100vw, 150px);
    font-size: min(18 / 750 * 100vw, 18px);
  }
  #wrapper .fv__guide-scroll::after {
    height: min(137 / 750 * 100vw, 137px);
    left: 45%;
  }
  /*================
    achievements
  ================*/
  #wrapper .achievements {
    background: url(/suki-syabu/assets/img/top/bg_achievements_sp.jpg) top/cover no-repeat;
    padding: min(100 / 750 * 100vw, 100px) 0 min(165 / 750 * 100vw, 165px);
  }
  #wrapper .achievements__inner {
    padding: 0 min(40 / 750 * 100vw, 40px);
  }
  #wrapper .achievements__inner::before {
    top: max(-80 / 750 * 100vw, -80px);
    left: min(10 / 750 * 100vw, 10px);
    width: min(351 / 750 * 100vw, 351px);
    height: min(386 / 750 * 100vw, 386px);
  }
  #wrapper .achievements__inner::after {
    bottom: max(-170 / 750 * 100vw, -170px);
    width: min(673 / 750 * 100vw, 673px);
    height: min(70 / 750 * 100vw, 70px);
  }
  #wrapper .achievements__contents {
    flex-direction: column;
    gap: min(70 / 750 * 100vw, 70px);
  }
  #wrapper .achievements__title {
    font-size: min(50 / 750 * 100vw, 50px);
  }
  #wrapper .achievements__description {
    font-size: min(26 / 750 * 100vw, 26px);
    margin-top: min(55 / 750 * 100vw, 55px);
    text-align: center;
  }
  #wrapper .achievements__badge {
    gap: min(28 / 750 * 100vw, 28px);
    margin-top: min(10 / 750 * 100vw, 10px);
  }
  #wrapper .achievements__badge-image {
    width: min(285 / 750 * 100vw, 285px);
  }
  #wrapper .achievements__photo {
    width: 100%;
  }
  /*================
    concept
  ================*/
  #wrapper .concept {
    background-image: url(/suki-syabu/assets/img/top/bg_concept_sp.jpg);
    background-position: right;
    padding: min(140 / 750 * 100vw, 140px) 0 min(100 / 750 * 100vw, 100px);
  }
  #wrapper .concept::after {
    bottom: max(-125 / 750 * 100vw, -125px);
    left: min(40 / 750 * 100vw, 40px);
    width: min(240 / 750 * 100vw, 240px);
    height: min(186 / 750 * 100vw, 186px);
  }
  #wrapper .concept__contents-block {
    flex-direction: column-reverse;
    gap: min(60 / 750 * 100vw, 60px);
    margin-bottom: min(75 / 750 * 100vw, 75px);
  }
  #wrapper .concept__contents-block:first-of-type {
    margin-top: min(80 / 750 * 100vw, 80px);
  }
  #wrapper .concept__contents-block:nth-child(even) {
    flex-direction: column-reverse;
  }
  #wrapper .concept__contents-block:last-of-type {
    margin-bottom: min(100 / 750 * 100vw, 100px);
  }
  #wrapper .concept__contents-left {
    width: 100%;
  }
  #wrapper .concept__contents-right {
    width: 100%;
  }
  #wrapper .concept__contents-lead {
    font-size: min(38 / 750 * 100vw, 38px);
    letter-spacing: 0.08em;
    text-align: center;
    white-space: nowrap;
    font-feature-settings: "palt";
  }
  #wrapper .concept__contents-description {
    font-size: min(24 / 750 * 100vw, 24px);
    line-height: 2;
    letter-spacing: 0.02em;
    margin-top: min(35 / 750 * 100vw, 35px);
    width: 100%;
  }
  #wrapper .concept__contents-banner {
    padding: min(45 / 750 * 100vw, 45px) 0 min(75 / 750 * 100vw, 75px);
    width: 100%;
    margin: min(103 / 750 * 100vw, 103px) auto 0;
  }
  #wrapper .concept__contents-banner::before {
    display: none;
  }
  #wrapper .concept__contents-banner-lead {
    font-size: min(40 / 750 * 100vw, 40px);
    line-height: 1.5;
  }
  #wrapper .concept__contents-banner-lead--large {
    font-size: min(60 / 750 * 100vw, 60px);
  }
  #wrapper .concept__contents-banner-image {
    width: min(598 / 750 * 100vw, 598px);
    margin: min(55 / 750 * 100vw, 55px) auto 0;
  }
  /*================
    menu
  ================*/
  #wrapper .menu {
    background: url(/suki-syabu/assets/img/top/bg_menu_sp.jpg) top / cover no-repeat;
    padding: min(75 / 750 * 100vw, 75px) 0 min(63 / 750 * 100vw, 63px);
  }
  #wrapper .menu::before {
    background: url(/suki-syabu/assets/img/top/bg_menu_decoration_01_sp.png) left/contain no-repeat;
    top: min(43 / 750 * 100vw, 43px);
    left: 0;
    width: min(180 / 750 * 100vw, 180px);
    height: min(263 / 750 * 100vw, 263px);
  }
  #wrapper .menu::after {
    background: url(/suki-syabu/assets/img/top/bg_menu_decoration_02_sp.png) right/contain no-repeat;
    top: min(58 / 750 * 100vw, 58px);
    right: 0;
    width: min(279 / 750 * 100vw, 279px);
    height: min(247 / 750 * 100vw, 247px);
  }
  #wrapper .menu__inner {
    padding: 0 min(70 / 750 * 100vw, 70px);
  }
  #wrapper .menu__accordion:first-of-type {
    margin-top: min(112 / 750 * 100vw, 112px);
  }
  #wrapper .menu__accordion:not(:first-of-type) {
    margin-top: min(35 / 735 * 100vw, 50px);
  }
  #wrapper .menu__accordion::after {
    padding-top: min(35 / 750 * 100vw, 35px);
  }
  #wrapper .menu__accordion:not(:last-of-type)::after {
    border-bottom: min(2 / 750 * 100vw, 2px) solid #000;
  }
  #wrapper .menu__accordion-heading {
    font-size: min(35 / 750 * 100vw, 35px);
    line-height: 1.428;
    letter-spacing: 0.06em;
    width: 100%;
    justify-content: space-between;
    padding: 0 min(12 / 750 * 100vw, 12px);
  }
  #wrapper .menu__accordion-heading::before {
    font-size: min(24 / 750 * 100vw, 24px);
    line-height: 1.666;
    border-radius: min(10 / 750 * 100vw, 10px);
    width: min(180 / 750 * 100vw, 180px);
    margin-right: 0;
  }
  #wrapper .menu__accordion-heading--syabusyabu::before {
    letter-spacing: 0;
  }
  #wrapper .menu__accordion-text {
    width: min(50 / 750 * 100vw, 50px);
    height: min(50 / 750 * 100vw, 50px);
    margin-left: min(100 / 750 * 100vw, 100px);
  }
  #wrapper .menu__accordion-text::before,
  #wrapper .menu__accordion-text::after {
    width: min(24 / 750 * 100vw, 24px);
    height: min(2 / 750 * 100vw, 2px);
  }
  #wrapper .menu__accordion-body-block {
    flex-direction: column;
    align-items: center;
    gap: min(30 / 750 * 100vw, 30px);
    margin-top: min(60 / 750 * 100vw, 60px);
  }
  #wrapper .menu__accordion-body-block::after {
    display: none;
  }
  #wrapper .menu__accordion-body-image {
    width: 100%;
  }
  #wrapper .menu__accordion-body-detail {
    width: 100%;
  }
  #wrapper .menu__accordion-body-detail-price {
    font-size: min(30 / 750 * 100vw, 30px);
    letter-spacing: 0.06em;
  }
  #wrapper .menu__accordion-body-detail-name {
    font-size: min(24 / 750 * 100vw, 24px);
    line-height: 1;
    letter-spacing: 0.06em;
    margin-top: min(20 / 750 * 100vw, 20px);
  }
  #wrapper .menu__accordion-body-detail-group {
    gap: min(10 / 750 * 100vw, 10px);
    margin-top: min(30 / 750 * 100vw, 30px);
  }
  #wrapper .menu__accordion-body-detail-list {
    gap: min(10 / 750 * 100vw, 10px);
  }
  #wrapper .menu__accordion-body-detail-list-item {
    font-size: min(20 / 750 * 100vw, 20px);
    line-height: 2.75;
    letter-spacing: 0.07em;
    padding: 0 min(20 / 750 * 100vw, 20px) 0 min(35 / 750 * 100vw, 35px);
    white-space: nowrap;
  }
  #wrapper .menu__accordion-body-detail-list-item::before {
    width: min(15 / 750 * 100vw, 15px);
  }
  /*================
    voice
  ================*/
  #wrapper .voice {
    padding: min(85 / 750 * 100vw, 85px) 0 min(110 / 750 * 100vw, 110px);
  }
  #wrapper .voice__text {
    font-size: min(24 / 750 * 100vw, 24px);
    margin-top: min(30 / 750 * 100vw, 30px);
  }
  /*================
    sns
  ================*/
  #wrapper .sns {
    padding: 0;
  }
  #wrapper .sns__inner {
    padding: min(70 / 750 * 100vw, 70px) 0 min(102 / 750 * 100vw, 102px);
  }
  #wrapper .sns__button {
    margin-top: min(20 / 750 * 100vw, 20px);
  }
  #wrapper .sns__button-link {
    gap: min(15 / 750 * 100vw, 15px);
    width: min(388 / 750 * 100vw, 388px);
    border-radius: 38px;
  }
  #wrapper .sns__button-image {
    width: min(31 / 750 * 100vw, 31px);
    margin-top: min(3 / 750 * 100vw, 3px);
  }
  #wrapper .sns__button-text {
    font-size: min(30 / 750 * 100vw, 30px);
    line-height: 2.5;
  }
  /*================
    shop
  ================*/
  #wrapper .shop {
    padding: min(80 / 750 * 100vw, 80px) 0 min(100 / 750 * 100vw, 100px);
  }
  #wrapper .shop__contents {
    display: flex;
    flex-direction: column;
    gap: min(40 / 750 * 100vw, 40px);
    margin-top: min(90 / 750 * 100vw, 90px);
  }
  #wrapper .shop__contents-image {
    width: 100%;
  }
  #wrapper .shop__contents-detail {
    width: 100%;
  }
  #wrapper .shop__contents-text {
    padding-bottom: min(45 / 750 * 100vw, 45px);
    margin-top: 0;
    }
  #wrapper .shop__contents-text-left {
    width: 20%;
  }
  #wrapper .shop__contents-text-left-heading {
    font-size: min(24 / 750 * 100vw, 24px);
  }
  #wrapper .shop__contents-text-right {
    width: 80%;
  }
  #wrapper .shop__contents-text-right-body {
    font-size: min(24 / 750 * 100vw, 24px);
  }
  #wrapper .shop__contents-text-right-body--access-time {
    font-size: min(24 / 750 * 100vw, 24px);
  }
  #wrapper .shop__contents-text-right-body-note {
    font-size: min(18 / 750 * 100vw, 18px);
  }
  #wrapper .shop__contents-map {
    width: min(30 / 750 * 100vw, 30px);
    height: min(25 / 750 * 100vw, 25px);
  }
  #wrapper .shop__link {
    flex-direction: column;
    gap: min(50 / 750 * 100vw, 50px);
  }
  #wrapper .shop__link-wrap {
    width: 100%;
  }
  #wrapper .shop__link-text {
    font-size: min(24 / 750 * 100vw, 24px);
    line-height: 2.8;
  }
  #wrapper .shop__button {
    margin-top: min(50 / 750 * 100vw, 50px);
  }
  #wrapper .shop__button-text {
    font-size: min(35 / 750 * 100vw, 35px);
    line-height: 2.7;
  }
  #wrapper .shop__button-text::before {
    width: min(30 / 750 * 100vw, 30px);
    height: min(30 / 750 * 100vw, 30px);
    left: auto;
    right: min(40 / 750 * 100vw, 40px);
  }
  #wrapper .shop__button-text::after {
    border-width: min(8 / 750 * 100vw, 8px) 0 min(8 / 750 * 100vw, 8px) min(12 / 750 * 100vw, 12px);
    left: auto;
    right: 6.25%;
  }
}