@charset "UTF-8";
/*
Theme Name: 南アルプス三景園オートキャンプ場
Description: 南アルプス三景園オートキャンプ場専用テーマ
Author: 南アルプス三景園オートキャンプ場
Author URI: https://sankeien-camp.com
Version: 1.0.0
*/
/* ------------------------------ */
/* Reset */
/* ------------------------------ */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
main, article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: var(--line-height-default);
  font-size: var(--font-size-default);
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

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

.b-guide {
  color: yellow;
}

/* ------------------------------ */
/* Fonts */
/* ------------------------------ */
/* Noto Sans JP */
@font-face {
  font-family: "Noto Sans JP";
  src: url(./fonts/NotoSansJP-Light.woff) format("woff");
  font-weight: 300;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url(./fonts/NotoSansJP-Regular.woff) format("woff");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url(./fonts/NotoSansJP-Medium.woff) format("woff");
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url(./fonts/NotoSansJP-Bold.woff) format("woff");
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url(./fonts/NotoSansJP-Black.woff) format("woff");
  font-weight: 900;
  font-display: swap;
}
/* Lato */
@font-face {
  font-family: "Lato";
  src: url(./fonts/Lato-Thin.woff) format("woff");
  font-weight: 100;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url(./fonts/Lato-Light.woff) format("woff");
  font-weight: 300;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url(./fonts/Lato-Regular.woff) format("woff");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url(./fonts/Lato-Bold.woff) format("woff");
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url(./fonts/Lato-Black.woff) format("woff");
  font-weight: 900;
  font-display: swap;
}
:root {
  /* fonts */
  --font-default: "Noto Sans JP", sans-serif;
  --font-en: "Helvetica", "Neue Haas Grotesk", "San Francisco", Arial, sans-serif;
  --font-lato: "Lato", "Helvetica Neue", Arial, sans-serif;
  /* color */
  --color-main: #00471D;
  --color-text: #4D4D4D;
  --color-marker: #FBE5A4;
  --color-white: #ffffff;
  --color-beige: #F9F6EF;
  --color-beige2: #F0E8DB;
  --color-yellow: #FFCC33;
  --color-light-yellow: #FFD96A;
  --color-green: #3C7A4C;
  --color-light-green: #87ae8f;
  --color-blue: #40B4C3;
  --color-gray: #BEBEBE;
  --color-light-gray: #ECECEC;
  --color-red: #C02222;
  --color-light-red: #F0DFD9;
  /* font size */
  --font-size-default: 16px;
  --font-size-xxs: 0.625em;
  --font-size-xs: 0.75em;
  --font-size-s: 0.875em;
  --font-size-m: 1.125em;
  --font-size-l: 1.25em;
  --font-size-xl: 1.5em;
  --font-size-xxl: 1.625em;
  --font-size-xxxl: 1.75em;
  --font-size-spl: 1.875em;
  --font-size-exl: 2.125em;
  --line-height-default: 1.4;
}

/* ------------------------------ */
/* Animations */
/* ------------------------------ */
.a-fade-up {
  opacity: 0;
  -webkit-transform: translateY(20px);
          transform: translateY(20px);
}
.a-fade-up.is-inview {
  -webkit-animation: fadeUp 0.8s ease forwards;
          animation: fadeUp 0.8s ease forwards;
}

@-webkit-keyframes fadeUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes fadeUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.a-fade-right {
  opacity: 0;
  -webkit-transform: translateX(20px);
          transform: translateX(20px);
}
.a-fade-right.is-inview {
  -webkit-animation: fadeRight 0.8s ease forwards;
          animation: fadeRight 0.8s ease forwards;
}

@-webkit-keyframes fadeRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
            transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@keyframes fadeRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
            transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.a-fade-in {
  opacity: 0;
}
.a-fade-in.is-inview {
  -webkit-animation: fadeIn 1s ease forwards;
          animation: fadeIn 1s ease forwards;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.a-blur-in {
  opacity: 0;
  -webkit-filter: blur(5px);
          filter: blur(5px);
}
.a-blur-in.is-inview {
  -webkit-animation: blurIn 1s ease forwards;
          animation: blurIn 1s ease forwards;
}

@-webkit-keyframes blurIn {
  0% {
    opacity: 0;
    -webkit-filter: blur(5px);
            filter: blur(5px);
  }
  100% {
    opacity: 1;
    -webkit-filter: blur(0);
            filter: blur(0);
  }
}

@keyframes blurIn {
  0% {
    opacity: 0;
    -webkit-filter: blur(5px);
            filter: blur(5px);
  }
  100% {
    opacity: 1;
    -webkit-filter: blur(0);
            filter: blur(0);
  }
}
.a-scale-up {
  opacity: 0;
  -webkit-transform: scale(0.9);
          transform: scale(0.9);
}
.a-scale-up.is-inview {
  -webkit-animation: scaleUp 0.8s ease forwards;
          animation: scaleUp 0.8s ease forwards;
}

@-webkit-keyframes scaleUp {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
  70% {
    opacity: 1;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes scaleUp {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
  70% {
    opacity: 1;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  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);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[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;
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 21.3333333333vw;
}
@media screen and (min-width: 768px) {
  html {
    scroll-padding-top: min((7.8125vw), 100px);
  }
}

body {
  font-size: 4.2666666667vw;
  font-family: var(--font-default);
  color: var(--color-text);
  background-color: var(--color-beige);
}
@media screen and (min-width: 768px) {
  body {
    font-size: min((1.25vw), 16px);
  }
}

main {
  overflow: hidden;
}

a {
  text-decoration: none;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  color: var(--color-text);
}
a img {
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

img {
  max-width: 100%;
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Main */
/* ------------------------------ */
.b-main {
  width: 100%;
  background-color: #F9F6EF;
}
.b-main--404 {
  background-image: url("images/common/bg-mountain.png");
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center bottom;
}
@media screen and (min-width: 768px) {
  .b-main {
    max-width: 1280px;
    margin: 0 auto;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Main Header */
/* ------------------------------ */
.b-main-header {
  position: fixed;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  padding: 2.6666666667vw 5.3333333333vw;
  z-index: 9999;
  -webkit-transition: background-color 0.5s ease;
  transition: background-color 0.5s ease;
  background-color: transparent;
}
.b-main-header__logo {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5333333333vw;
  z-index: 1;
}
.b-main-header__logo__img {
  width: 10.1333333333vw;
}
.b-main-header__logo__text {
  font-size: 2.6666666667vw;
  font-weight: 700;
}
.b-main-header__nav {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: var(--color-beige);
  padding: 21.3333333333vw 5.3333333333vw 0;
  z-index: 0;
}
.b-main-header__nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.6666666667vw;
}
.b-main-header__nav__list__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 4.2666666667vw;
  font-weight: 700;
  height: 10.6666666667vw;
}
.b-main-header__nav__list__item a::after {
  content: "";
  display: block;
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  background-image: url("/wp/wp-content/themes/sankeien/images/common/icon-arrow-green.svg");
  background-size: contain;
  background-repeat: no-repeat;
  margin-left: auto;
}
.b-main-header__nav__list__item--instagram {
  text-align: center;
  margin: 5.3333333333vw auto 0;
}
.b-main-header__nav__list__item--instagram__txt {
  display: inline-block;
  font-family: var(--font-en);
  font-size: 3.7333333333vw;
  font-weight: 700;
  margin: 0px 0px 2.1333333333vw;
}
.b-main-header__nav__list__item--instagram__txt::before, .b-main-header__nav__list__item--instagram__txt::after {
  content: "";
  display: inline-block;
  width: 5.3333333333vw;
  height: 0.2666666667vw;
  background-color: var(--color-text);
  vertical-align: middle;
  margin: 0 2.6666666667vw;
  -webkit-transform-origin: center center;
          transform-origin: center center;
}
.b-main-header__nav__list__item--instagram__txt::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.b-main-header__nav__list__item--instagram__txt::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.b-main-header__nav__list__item--instagram a {
  width: 9.3333333333vw;
  height: 9.3333333333vw;
  margin: 0px auto;
  padding: 0;
  background-image: url("/wp/wp-content/themes/sankeien/images/common/icon-instagram-gray.svg");
  background-size: contain;
  background-repeat: no-repeat;
}
.b-main-header__nav__list__item--instagram a::after {
  display: none;
}
.b-main-header__nav__reserve {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.3333333333vw;
  width: 100%;
  height: 16vw;
  margin: 9.0666666667vw auto 0;
  background-color: var(--color-yellow);
  border-radius: 8vw;
}
.b-main-header__nav__reserve__icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 6.4vw;
  height: 6.4vw;
}
.b-main-header__nav__reserve__txt {
  font-size: 3.7333333333vw;
  font-weight: 700;
  color: var(--color-main);
}
.b-main-header__nav-toggle {
  position: relative;
  width: 10.6666666667vw;
  height: 10.6666666667vw;
  cursor: pointer;
  margin: 0px 0px 0px auto;
  z-index: 2;
}
.b-main-header__nav-toggle__bar {
  position: absolute;
  width: 8vw;
  height: 0.2666666667vw;
  background-color: var(--color-text);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.b-main-header__nav-toggle__bar:nth-child(1) {
  top: 2.1333333333vw;
  left: 1.3333333333vw;
}
.b-main-header__nav-toggle__bar:nth-child(2) {
  top: 4.5333333333vw;
  left: 1.3333333333vw;
}
.b-main-header__nav-toggle__bar:nth-child(3) {
  top: 6.9333333333vw;
  left: 1.3333333333vw;
}
.b-main-header__nav-toggle.is-active .b-main-header__nav-toggle__bar:nth-child(1) {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 4.2666666667vw;
}
.b-main-header__nav-toggle.is-active .b-main-header__nav-toggle__bar:nth-child(2) {
  opacity: 0;
}
.b-main-header__nav-toggle.is-active .b-main-header__nav-toggle__bar:nth-child(3) {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 4.2666666667vw;
}
.b-main-header.is-scroll {
  background-color: rgba(255, 255, 255, 0.6);
}
@media screen and (min-width: 768px) {
  .b-main-header {
    padding: min((0.78125vw), 10px) min((3.125vw), 40px);
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .b-main-header__logo {
    gap: min((0.3125vw), 4px);
  }
  .b-main-header__logo__img {
    width: min((8.59375vw), 110px);
    -webkit-transition: width 0.3s ease;
    transition: width 0.3s ease;
  }
  .b-main-header__logo__text {
    display: none;
  }
  .b-main-header__nav {
    position: relative;
    height: auto;
    width: min((85.15625vw), 1090px);
    padding: 0px;
    margin: 0px;
    background-color: transparent;
    -webkit-transition: width 0.3s ease;
    transition: width 0.3s ease;
  }
  .b-main-header__nav__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: min((0vw), 0px);
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .b-main-header__nav__list__item a {
    position: relative;
    font-size: min((1.09375vw), 14px);
    height: min((3.90625vw), 50px);
    padding: 0px min((1.5625vw), 20px);
  }
  .b-main-header__nav__list__item a::after {
    display: none;
  }
  .b-main-header__nav__list__item a::before {
    content: "";
    position: absolute;
    bottom: 0px;
    left: 50%;
    width: 0%;
    height: min((0.15625vw), 2px);
    background-color: var(--color-main);
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    -webkit-transition: width 0.3s ease;
    transition: width 0.3s ease;
  }
  .b-main-header__nav__list__item a:hover, .b-main-header__nav__list__item a:focus {
    color: var(--color-main);
  }
  .b-main-header__nav__list__item a:hover::before, .b-main-header__nav__list__item a:focus::before {
    width: 100%;
  }
  .b-main-header__nav__list__item--instagram {
    margin: 0 0 0 min((1.5625vw), 20px);
  }
  .b-main-header__nav__list__item--instagram__txt {
    display: none;
  }
  .b-main-header__nav__list__item--instagram a {
    width: min((2.734375vw), 35px);
    height: min((2.734375vw), 35px);
  }
  .b-main-header__nav__list__item--instagram a::before {
    display: none;
  }
  .b-main-header__nav__list__item--instagram a:hover, .b-main-header__nav__list__item--instagram a:focus {
    background-color: initial;
  }
  .b-main-header__nav__reserve {
    position: fixed;
    bottom: min((3.125vw), 40px);
    right: min((3.125vw), 40px);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: min((0.390625vw), 5px);
    width: min((11.71875vw), 150px);
    height: min((11.71875vw), 150px);
    border-radius: 50%;
    border: min((0.078125vw), 1px) solid var(--color-yellow);
  }
  .b-main-header__nav__reserve__icon {
    width: min((2.34375vw), 30px);
    height: min((2.34375vw), 30px);
  }
  .b-main-header__nav__reserve__txt {
    font-size: min((1.25vw), 16px);
  }
  .b-main-header__nav__reserve:hover {
    background-color: var(--color-white);
  }
  .b-main-header__nav-toggle {
    display: none;
  }
  .b-main-header.is-scroll .b-main-header__nav {
    width: min((89.0625vw), 1140px);
  }
  .b-main-header.is-scroll .b-main-header__logo__img {
    width: min((4.6875vw), 60px);
  }
}

.home .b-main-header__logo__text {
  color: var(--color-white);
}
.home .b-main-header__nav-toggle__bar {
  background-color: var(--color-white);
}
.home .b-main-header.nav-open .b-main-header__logo__text {
  color: var(--color-text);
}
.home .b-main-header.nav-open .b-main-header__nav-toggle__bar {
  background-color: var(--color-text);
}
.home .b-main-header.is-scroll .b-main-header {
  background-color: rgba(255, 255, 255, 0.6);
}
.home .b-main-header.is-scroll .b-main-header__logo__text {
  color: var(--color-text);
}
.home .b-main-header.is-scroll .b-main-header__nav-toggle__bar {
  background-color: var(--color-text);
}
@media screen and (min-width: 768px) {
  .home .b-main-header__nav__list__item a {
    color: var(--color-white);
  }
  .home .b-main-header__nav__list__item a::before {
    background-color: var(--color-white);
  }
  .home .b-main-header__nav__list__item--instagram a {
    background-image: url("/wp/wp-content/themes/sankeien/images/common/icon-instagram-white.svg");
  }
  .home .b-main-header.is-scroll .b-main-header__nav__list__item a {
    color: var(--color-text);
  }
  .home .b-main-header.is-scroll .b-main-header__nav__list__item a::before {
    background-color: var(--color-main);
  }
  .home .b-main-header.is-scroll .b-main-header__nav__list__item a:hover, .home .b-main-header.is-scroll .b-main-header__nav__list__item a:focus {
    color: var(--color-main);
  }
  .home .b-main-header.is-scroll .b-main-header__nav__list__item--instagram a {
    background-image: url("/wp/wp-content/themes/sankeien/images/common/icon-instagram-gray.svg");
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Main Footer */
/* ------------------------------ */
.b-main-footer {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 5.3333333333vw;
  background-color: var(--color-main);
  color: var(--color-white);
  padding: 10.6666666667vw 5.3333333333vw 10.6666666667vw;
}
.b-main-footer__info {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}
.b-main-footer__info__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.3333333333vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 1.3333333333vw;
}
.b-main-footer__info__logo__img {
  width: 14.6666666667vw;
}
.b-main-footer__info__logo__text {
  font-size: 3.7333333333vw;
  font-weight: 700;
  color: var(--color-white);
}
.b-main-footer__info__address {
  font-size: 3.2vw;
  font-weight: 500;
  line-height: 1.8;
  text-align: center;
}
.b-main-footer__info__address a {
  color: var(--color-white);
}
.b-main-footer__nav {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.b-main-footer__nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5.3333333333vw 10.1333333333vw;
}
.b-main-footer__nav__list__item {
  width: calc(50% - 5.0666666667vw);
}
.b-main-footer__nav__list__item a {
  display: block;
  font-size: 3.7333333333vw;
  font-weight: 700;
  color: var(--color-white);
  text-align: center;
  line-height: 1.6;
}
.b-main-footer__sns {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5.3333333333vw;
}
.b-main-footer__sns__item {
  width: 9.3333333333vw;
}
.b-main-footer__sns__item a {
  display: block;
  width: 100%;
}
.b-main-footer__sns__item a img {
  width: 100%;
  height: auto;
}
.b-main-footer__copyright {
  position: absolute;
  top: 100%;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: var(--color-beige2);
  width: 100vw;
  height: 8.5333333333vw;
}
.b-main-footer__copyright small {
  display: block;
  font-size: 2.6666666667vw;
  font-weight: 700;
  text-align: center;
  color: var(--color-main);
  opacity: 0.8;
}
@media screen and (min-width: 768px) {
  .b-main-footer {
    position: relative;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    grid-template-areas: "info nav" "sns nav";
    gap: min((0.78125vw), 10px) min((3.125vw), 40px);
    width: min((85.15625vw), 1090px);
    margin: 0 auto;
    padding: min((3.125vw), 40px) 0 min((5.625vw), 72px);
  }
  .b-main-footer__nav {
    position: relative;
    grid-area: nav;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .b-main-footer__nav__list {
    gap: min((1.5625vw), 20px) min((2.96875vw), 38px);
  }
  .b-main-footer__nav__list__item {
    width: min((17.1875vw), 220px);
  }
  .b-main-footer__nav__list__item a {
    position: relative;
    font-size: min((1.09375vw), 14px);
    padding: min((0.3125vw), 4px) 0;
  }
  .b-main-footer__nav__list__item a::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0%;
    height: min((0.15625vw), 2px);
    background-color: var(--color-white);
    -webkit-transition: width 0.3s ease;
    transition: width 0.3s ease;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .b-main-footer__nav__list__item a:hover::before, .b-main-footer__nav__list__item a:focus::before {
    width: 100%;
  }
  .b-main-footer__sns {
    position: relative;
    grid-area: sns;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .b-main-footer__sns__item {
    width: min((2.734375vw), 35px);
  }
  .b-main-footer__info {
    position: relative;
    grid-area: info;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .b-main-footer__info__logo {
    gap: min((0.390625vw), 5px);
    margin: 0px 0px min((0.78125vw), 10px);
  }
  .b-main-footer__info__logo__img {
    width: min((4.296875vw), 55px);
  }
  .b-main-footer__info__logo__text {
    font-size: min((1.09375vw), 14px);
  }
  .b-main-footer__info__address {
    font-size: min((0.9375vw), 12px);
    text-align: left;
  }
  .b-main-footer__copyright {
    top: 100%;
    left: 50%;
    width: 100vw;
    height: min((2.5vw), 32px);
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .b-main-footer__copyright small {
    font-size: min((0.78125vw), 10px);
  }
  .b-main-footer::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    height: 100%;
    background-color: var(--color-main);
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Footer Reserve */
/* ------------------------------ */
.b-footer-reserve {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 4vw;
  height: 68.2666666667vw;
  padding: 0 10.6666666667vw;
  background-image: url("/wp/wp-content/themes/sankeien/images/common/bg-footer-reserve-sp.jpg");
  background-size: cover;
}
.b-footer-reserve__title {
  font-size: 5.3333333333vw;
  font-weight: 700;
  color: var(--color-white);
  border-bottom: 0.2666666667vw solid var(--color-white);
}
.b-footer-reserve__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 10.6666666667vw;
  font-size: 4.8vw;
  font-weight: 700;
  color: var(--color-main);
  background-color: var(--color-yellow);
  border-radius: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-footer-reserve {
    gap: min((1.171875vw), 15px);
    height: min((17.421875vw), 223px);
    padding: 0 min((3.125vw), 40px);
    background-image: url("/wp/wp-content/themes/sankeien/images/common/bg-footer-reserve-pc.jpg");
  }
  .b-footer-reserve__title {
    font-size: min((1.875vw), 24px);
    border-width: min((0.078125vw), 1px);
  }
  .b-footer-reserve__btn {
    height: min((3.125vw), 40px);
    width: min((25.546875vw), 327px);
    max-width: 100%;
    font-size: min((1.40625vw), 18px);
    border: min((0.078125vw), 1px) solid var(--color-yellow);
  }
  .b-footer-reserve__btn:hover, .b-footer-reserve__btn:focus {
    background-color: var(--color-white);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Main Hero Header */
/* ------------------------------ */
.b-main-hero-header {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 133.3333333333vw;
  overflow: hidden;
  color: var(--color-white);
}
.b-main-hero-header__title {
  position: relative;
  z-index: 1;
  font-size: 4.2666666667vw;
  margin: 0px 0px 2.1333333333vw;
}
.b-main-hero-header__subtitle {
  position: relative;
  z-index: 1;
  font-size: 9.6vw;
  font-weight: 900;
  text-align: center;
  line-height: 1.2;
}
.b-main-hero-header__subscript {
  position: relative;
  z-index: 1;
  font-size: 3.2vw;
  font-weight: 700;
  letter-spacing: 0.1em;
  margin: 2.6666666667vw 0px 0px;
}
.b-main-hero-header__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.b-main-hero-header__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 768px) {
  .b-main-hero-header {
    height: min((62.5vw), 800px);
  }
  .b-main-hero-header__title {
    font-size: min((1.71875vw), 22px);
    margin: 0px 0px min((0.9375vw), 12px);
  }
  .b-main-hero-header__subtitle {
    font-size: min((5vw), 64px);
  }
  .b-main-hero-header__subscript {
    font-size: min((1.875vw), 24px);
    margin: min((3.125vw), 40px) 0px 0px;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Front Section */
/* ------------------------------ */
.b-front-section__contents {
  position: relative;
  padding: 0px 5.3333333333vw;
}
.b-front-section__contents__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0px 0px 5.3333333333vw;
  text-align: center;
  color: var(--color-main);
}
.b-front-section__contents__title__txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 4.2666666667vw;
  font-weight: 700;
}
.b-front-section__contents__title__txt::before {
  content: "";
  display: inline-block;
  width: 1.6vw;
  height: 1.6vw;
  border-radius: 50%;
  background-color: var(--color-main);
  margin-right: 1.3333333333vw;
}
.b-front-section__contents__title::before {
  content: attr(data-en);
  font-family: var(--font-lato);
  font-size: 16vw;
  font-weight: 700;
  color: var(--color-beige2);
  line-height: 1;
  margin: 0px auto 1.3333333333vw;
}
.b-front-section__contents__title--left {
  text-align: left;
}
.b-front-section__contents__title--left .b-front-section__contents__title__txt {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.b-front-section__contents__title--left::before {
  margin: 0px auto 1.3333333333vw 0px;
  text-align: left;
}
.b-front-section__contents__title--beige .b-front-section__contents__title__txt {
  color: var(--color-beige);
}
.b-front-section__contents__title--beige .b-front-section__contents__title__txt::before {
  background-color: var(--color-beige);
}
.b-front-section__contents__title--beige::before {
  color: var(--color-beige);
}
.b-front-section__contents__title--en-beige::before {
  color: var(--color-beige);
}
.b-front-section__contents__title--en-small::before {
  font-size: 13.3333333333vw;
}
.b-front-section__contents__txt {
  font-size: 4.2666666667vw;
  font-weight: 300;
  line-height: 2;
  margin: 5.3333333333vw 0px;
}
.b-front-section__contents__txt--center {
  text-align: center;
}
.b-front-section__contents__txt--center-sp {
  text-align: center;
}
.b-front-section__contents__txt--white {
  color: var(--color-white);
}
.b-front-section__contents__img {
  display: block;
  margin: 5.3333333333vw auto;
}
.b-front-section__contents__img--rounded {
  border-radius: 2.6666666667vw;
}
.b-front-section__contents__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 10.6666666667vw;
  width: 74.6666666667vw;
  margin: 5.3333333333vw auto 0px;
  font-size: 3.7333333333vw;
  font-weight: 700;
  color: var(--color-white);
  background-color: var(--color-main);
  border-radius: 5.3333333333vw;
}
.b-front-section__contents__btn--beige {
  background-color: var(--color-beige);
  color: var(--color-main);
}
.b-front-section__contents__list-with-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2.6666666667vw;
  margin: 5.3333333333vw auto;
}
.b-front-section__contents__list-with-icon__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 26.6666666667vw;
  height: 26.6666666667vw;
  background-image: url("/wp/wp-content/themes/sankeien/images/common/list-with-icon-bg.svg");
  background-size: contain;
  background-repeat: no-repeat;
}
.b-front-section__contents__list-with-icon__item__icon {
  display: block;
  width: 6.4vw;
  height: 6.4vw;
}
.b-front-section__contents__list-with-icon__item__txt {
  font-size: 3.2vw;
  line-height: 1.4;
  text-align: center;
  color: var(--color-main);
}
.b-front-section__contents__photos {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5.3333333333vw 1.3333333333vw;
}
.b-front-section__contents__photos__item {
  width: calc((100% - 1.3333333333vw) / 2);
}
.b-front-section__contents__photos__item img {
  display: block;
  width: 100%;
  height: 27.2vw;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 2.6666666667vw;
}
.b-front-section__contents__lead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 72.2666666667vw;
  height: 9.6vw;
  margin: 2.6666666667vw auto 5.3333333333vw;
  font-size: 3.7333333333vw;
  font-weight: 700;
  color: var(--color-beige);
  background-image: url("/wp/wp-content/themes/sankeien/images/top/lead-bg.svg");
  background-size: 100% auto;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .b-front-section__contents {
    padding: 0px min((10.9375vw), 140px);
  }
  .b-front-section__contents__title {
    margin: 0px 0px min((1.5625vw), 20px);
  }
  .b-front-section__contents__title__txt {
    font-size: min((1.25vw), 16px);
  }
  .b-front-section__contents__title__txt::before {
    width: min((0.46875vw), 6px);
    height: min((0.46875vw), 6px);
    margin-right: min((0.390625vw), 5px);
  }
  .b-front-section__contents__title::before {
    font-size: min((6.25vw), 80px);
    margin: 0px auto min((0.390625vw), 5px);
  }
  .b-front-section__contents__title--left {
    text-align: left;
  }
  .b-front-section__contents__title--left .b-front-section__contents__title__txt {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .b-front-section__contents__title--left::before {
    margin: 0px auto min((0.390625vw), 5px) 0px;
    text-align: left;
  }
  .b-front-section__contents__title--left-pc {
    text-align: left;
  }
  .b-front-section__contents__title--left-pc .b-front-section__contents__title__txt {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .b-front-section__contents__title--left-pc::before {
    margin: 0px auto min((0.390625vw), 5px) 0px;
    text-align: left;
  }
  .b-front-section__contents__txt {
    font-size: min((1.25vw), 16px);
    margin: min((1.5625vw), 20px) 0px;
  }
  .b-front-section__contents__txt--center-sp {
    text-align: left;
  }
  .b-front-section__contents__img {
    margin: min((1.5625vw), 20px) 0px;
  }
  .b-front-section__contents__img--rounded {
    border-radius: min((0.78125vw), 10px);
  }
  .b-front-section__contents__btn {
    height: min((3.125vw), 40px);
    width: min((21.875vw), 280px);
    font-size: min((1.09375vw), 14px);
    margin: min((1.5625vw), 20px) auto 0px;
    border: min((0.078125vw), 1px) solid var(--color-main);
  }
  .b-front-section__contents__btn:hover, .b-front-section__contents__btn:focus {
    background-color: var(--color-white);
    color: var(--color-main);
  }
  .b-front-section__contents__btn--beige {
    border: none;
  }
  .b-front-section__contents__btn--beige:hover, .b-front-section__contents__btn--beige:focus {
    background-color: var(--color-main);
    color: var(--color-white);
  }
  .b-front-section__contents__list-with-icon {
    gap: min((0.78125vw), 10px);
    margin: min((1.5625vw), 20px) 0px;
  }
  .b-front-section__contents__list-with-icon__item {
    width: min((11.71875vw), 150px);
    height: min((11.71875vw), 150px);
  }
  .b-front-section__contents__list-with-icon__item__icon {
    width: min((3.125vw), 40px);
    height: min((3.125vw), 40px);
  }
  .b-front-section__contents__list-with-icon__item__txt {
    font-size: min((1.5625vw), 20px);
  }
  .b-front-section__contents__photos {
    gap: min((1.5625vw), 20px);
  }
  .b-front-section__contents__photos__item {
    width: calc((100% - min((4.6875vw), 60px)) / 4);
  }
  .b-front-section__contents__photos__item img {
    height: min((11.328125vw), 145px);
    border-radius: min((0.78125vw), 10px);
  }
  .b-front-section__contents__lead {
    width: min((31.25vw), 400px);
    height: min((4.296875vw), 55px);
    margin: min((1.5625vw), 20px) auto min((3.125vw), 40px);
    font-size: min((1.5625vw), 20px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Front Section - About */
/* ------------------------------ */
.b-front-section--about {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5.3333333333vw;
  margin: 8vw 0px 5.3333333333vw;
  background-image: url(/wp/wp-content/themes/sankeien/images/top/about-bg.svg);
  background-size: 40.8vw 45.6vw;
  background-repeat: no-repeat;
  background-position: right 0 top 116.2666666667vw;
}
.b-front-section--about .b-front-section__contents {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
.b-front-section--about .b-front-section__contents__img {
  margin-left: 0;
  margin-right: -5.3333333333vw;
  border-top-left-radius: 2.6666666667vw;
  border-bottom-left-radius: 2.6666666667vw;
  overflow: hidden;
}
.b-front-section--about .b-front-section__visual {
  position: relative;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  padding: 8vw 0px 0px;
}
.b-front-section--about .b-front-section__visual__catch {
  position: absolute;
  top: 0;
  left: 5.3333333333vw;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  text-orientation: mixed;
  font-size: 6.4vw;
  font-weight: 700;
  color: var(--color-main);
  z-index: 1;
}
.b-front-section--about .b-front-section__visual__catch__txt {
  display: inline-block;
  line-height: 1;
  background-color: var(--color-white);
  padding: 2.6666666667vw 1.3333333333vw;
  margin: 0px 2.6666666667vw 0px 0px;
}
.b-front-section--about .b-front-section__visual__img {
  display: block;
  overflow: hidden;
}
.b-front-section--about .b-front-section__visual__img img {
  display: block;
  width: 100%;
}
.b-front-section--about .b-front-section__visual__img[data-index="1"] {
  width: 56vw;
  border-top-right-radius: 2.6666666667vw;
  border-bottom-right-radius: 2.6666666667vw;
}
.b-front-section--about .b-front-section__visual__img[data-index="2"] {
  width: 52.8vw;
  border-radius: 2.6666666667vw;
  margin: -60.2666666667vw 0px 0px auto;
}
@media screen and (min-width: 768px) {
  .b-front-section--about {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: min((10.546875vw), 135px);
    margin: min((4.6875vw), 60px) 0px min((3.125vw), 40px);
    background-size: min((19.84375vw), 254px) min((22.265625vw), 285px);
    background-position: right min((3.359375vw), 43px) top min((11.015625vw), 141px);
  }
  .b-front-section--about .b-front-section__contents {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: min((37.5vw), 480px);
    padding: 0px;
  }
  .b-front-section--about .b-front-section__contents__img {
    display: none;
  }
  .b-front-section--about .b-front-section__visual {
    width: min((41.015625vw), 525px);
    padding: min((3.671875vw), 47px) 0px 0px;
  }
  .b-front-section--about .b-front-section__visual__catch {
    font-size: min((2.5vw), 32px);
    left: min((22.34375vw), 286px);
  }
  .b-front-section--about .b-front-section__visual__catch__txt {
    padding: min((0.78125vw), 10px) min((0.390625vw), 5px);
    margin: 0px min((0.78125vw), 10px) 0px 0px;
    letter-spacing: 0.1em;
  }
  .b-front-section--about .b-front-section__visual__img[data-index="1"] {
    width: min((38.515625vw), 493px);
    border-radius: min((0.78125vw), 10px);
    margin: 0px 0px 0px max((-1.5625vw), -20px);
  }
  .b-front-section--about .b-front-section__visual__img[data-index="2"] {
    width: min((16.796875vw), 215px);
    border-radius: min((0.78125vw), 10px);
    margin: max((-12.34375vw), -158px) 0px 0px auto;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Front Section - Enjoy */
/* ------------------------------ */
.b-front-section--enjoy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.7333333333vw;
  padding: 21.3333333333vw 0px;
  background-color: var(--color-beige2);
  background-image: url(/wp/wp-content/themes/sankeien/images/top/enjoy-wave-top.svg), url(/wp/wp-content/themes/sankeien/images/top/enjoy-wave-bottom.svg);
  background-size: 100% auto, 100% auto;
  background-repeat: no-repeat, no-repeat;
  background-position: left 0 top 0, left 0 bottom -1px;
}
.b-front-section--enjoy .b-front-section__visual {
  position: relative;
}
.b-front-section--enjoy .b-front-section__visual__img {
  display: block;
  overflow: hidden;
  height: auto;
}
.b-front-section--enjoy .b-front-section__visual__img img {
  display: block;
  width: 100%;
  height: auto;
}
.b-front-section--enjoy .b-front-section__visual__img[data-index="1"] {
  width: 71.2vw;
  border-top-right-radius: 2.6666666667vw;
  border-bottom-right-radius: 2.6666666667vw;
}
.b-front-section--enjoy .b-front-section__visual__img[data-index="2"] {
  width: 36.5333333333vw;
  border-radius: 2.6666666667vw;
  margin-top: -27.2vw;
  margin-left: 57.8666666667vw;
}
.b-front-section--enjoy .b-front-section__visual__img[data-index="3"] {
  width: 61.8666666667vw;
  margin-top: -12vw;
}
.b-front-section--enjoy .b-front-section__visual__catch {
  font-family: var(--font-lato);
  font-size: 10.6666666667vw;
  font-weight: 700;
  color: var(--color-white);
  letter-spacing: 0.08em;
}
@media screen and (min-width: 768px) {
  .b-front-section--enjoy {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: min((1.5625vw), 20px);
    margin: max((-16.40625vw), -210px) 0px 0px;
    padding: min((16.328125vw), 209px) 0px min((6.25vw), 80px) min((10.9375vw), 140px);
    background-image: url(/wp/wp-content/themes/sankeien/images/top/enjoy-wave-top-pc.svg), none;
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: left 0 top 0;
  }
  .b-front-section--enjoy .b-front-section__contents {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: min((37.5vw), 480px);
    padding: 0px;
  }
  .b-front-section--enjoy .b-front-section__visual {
    width: min((49.375vw), 632px);
  }
  .b-front-section--enjoy .b-front-section__visual__img[data-index="1"] {
    width: min((44.765625vw), 573px);
    border-radius: min((0.78125vw), 10px);
    margin: 0px max((-1.5625vw), -20px) 0px auto;
  }
  .b-front-section--enjoy .b-front-section__visual__img[data-index="1"] img {
    display: block;
  }
  .b-front-section--enjoy .b-front-section__visual__img[data-index="2"] {
    position: relative;
    width: min((16.40625vw), 210px);
    border-radius: min((1.5625vw), 20px);
    margin-top: max((-6.953125vw), -89px);
    margin-left: min((22.34375vw), 286px);
    z-index: 1;
  }
  .b-front-section--enjoy .b-front-section__visual__img[data-index="3"] {
    width: min((32.34375vw), 414px);
    margin-top: max((-6.09375vw), -78px);
    z-index: 0;
  }
  .b-front-section--enjoy .b-front-section__visual__catch {
    font-size: min((5vw), 64px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Front Section - News */
/* ------------------------------ */
.b-front-section--news {
  margin: 8vw 0px;
}
@media screen and (min-width: 768px) {
  .b-front-section--news {
    margin: min((6.25vw), 80px) 0px;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Front Section - Area Information */
/* ------------------------------ */
.b-front-section--area-information {
  padding: 13.3333333333vw 0px;
  background-color: var(--color-beige2);
  background-image: url(/wp/wp-content/themes/sankeien/images/top/area-info-wave-top-sp.svg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: left 0 top 0;
}
@media screen and (min-width: 768px) {
  .b-front-section--area-information {
    padding: min((9.84375vw), 126px) 0px min((7.8125vw), 100px);
    background-image: url(/wp/wp-content/themes/sankeien/images/top/area-info-wave-top-pc.svg);
    background-position: left 0 top max((-0.078125vw), -1px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Front Section - Instagram */
/* ------------------------------ */
.b-front-section--instagram {
  position: relative;
  background-color: var(--color-green);
  background-image: url(/wp/wp-content/themes/sankeien/images/top/instagram-wave-top-sp.svg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: left 0 top 0;
  padding: 24.5333333333vw 0px 8vw;
}
.b-front-section--instagram::before {
  content: "";
  position: absolute;
  top: 0;
  left: -12vw;
  display: block;
  width: 27.7333333333vw;
  height: 28vw;
  background-image: url("/wp/wp-content/themes/sankeien/images/top/decoration1.svg");
  background-size: 100% auto;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .b-front-section--instagram {
    padding: min((6.25vw), 80px) 0px min((6.25vw), 80px);
    background-image: url(/wp/wp-content/themes/sankeien/images/top/instagram-wave-top-pc.svg);
    background-position: left 0 top max((-0.078125vw), -1px);
  }
  .b-front-section--instagram::before {
    width: min((19.84375vw), 254px);
    height: min((20.078125vw), 257px);
    left: 0;
    top: min((0.78125vw), 10px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Front Section - Site */
/* ------------------------------ */
.b-front-section--site {
  position: relative;
  padding: 28.8vw 0px 26.6666666667vw;
  background-image: url(/wp/wp-content/themes/sankeien/images/top/site-wave-top-sp.svg), url(/wp/wp-content/themes/sankeien/images/top/site-bg-sp.jpg);
  background-size: 100% auto, cover;
  background-repeat: no-repeat, no-repeat;
  background-position: left 0 top -0.2666666667vw, center top;
}
.b-front-section--site::before {
  content: "";
  position: absolute;
  top: -18.6666666667vw;
  right: -11.7333333333vw;
  display: block;
  width: 27.7333333333vw;
  height: 30.6666666667vw;
  background-image: url("/wp/wp-content/themes/sankeien/images/top/decoration2.svg");
  background-size: 100% auto;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .b-front-section--site {
    padding: min((6.25vw), 80px);
    background-image: none, url(/wp/wp-content/themes/sankeien/images/top/site-bg-pc.jpg);
    background-position: left 0 top max((-0.078125vw), -1px), center top;
  }
  .b-front-section--site::before {
    width: min((16.953125vw), 217px);
    height: min((18.75vw), 240px);
    right: max((-3.359375vw), -43px);
    top: max((-12.5vw), -160px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Front Section - Guide */
/* ------------------------------ */
.b-front-section--guide {
  padding: 37.0666666667vw 0px 6.4vw;
  background-image: url(/wp/wp-content/themes/sankeien/images/top/guide-bg.svg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center top 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-front-section--guide {
    padding: min((13.984375vw), 179px) 0px min((3.75vw), 48px);
    background-size: min((36.796875vw), 471px) auto;
    background-position: left min((52.03125vw), 666px) top min((3.4375vw), 44px);
  }
  .b-front-section--guide .b-front-section__contents {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "image title" "image text" "image button";
    -webkit-column-gap: min((3.125vw), 40px);
       -moz-column-gap: min((3.125vw), 40px);
            column-gap: min((3.125vw), 40px);
  }
  .b-front-section--guide .b-front-section__contents__title {
    grid-area: title;
    margin: 0px 0px min((1.5625vw), 20px);
  }
  .b-front-section--guide .b-front-section__contents__txt {
    grid-area: text;
    text-align: left;
    margin: 0px 0px min((1.5625vw), 20px);
  }
  .b-front-section--guide .b-front-section__contents__img {
    grid-area: image;
  }
  .b-front-section--guide .b-front-section__contents__btn {
    grid-area: button;
    margin: 0px;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Front Section - FAQ */
/* ------------------------------ */
.b-front-section--faq {
  padding: 13.3333333333vw 0px;
  background-color: var(--color-beige2);
}
@media screen and (min-width: 768px) {
  .b-front-section--faq {
    padding: min((4.6875vw), 60px) 0px;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Front Section - Access */
/* ------------------------------ */
.b-front-section--access {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.7333333333vw;
  padding: 8vw 0 0;
}
.b-front-section--access .b-front-section__contents {
  position: relative;
}
.b-front-section--access .b-front-section__contents__map {
  margin: 5.3333333333vw -5.3333333333vw 0;
  height: 58.6666666667vw;
}
.b-front-section--access .b-front-section__contents__map iframe {
  width: 100%;
  height: 100%;
  border: 0;
}
@media screen and (min-width: 768px) {
  .b-front-section--access {
    padding: min((3.90625vw), 50px) 0;
  }
  .b-front-section--access .b-front-section__contents {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "title map" "txt map";
    -webkit-column-gap: min((3.125vw), 40px);
       -moz-column-gap: min((3.125vw), 40px);
            column-gap: min((3.125vw), 40px);
  }
  .b-front-section--access .b-front-section__contents__title {
    grid-area: title;
  }
  .b-front-section--access .b-front-section__contents__txt {
    grid-area: txt;
  }
  .b-front-section--access .b-front-section__contents__map {
    grid-area: map;
    margin: 0;
    height: min((39.0625vw), 500px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Front Gallery */
/* ------------------------------ */
.b-front-gallery {
  margin: 5.3333333333vw 0px;
}
.b-front-gallery__item {
  position: relative;
  padding: 0px 3.7333333333vw;
}
.b-front-gallery__item img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 2.6666666667vw;
}
.b-front-gallery__item:nth-child(even) {
  margin-top: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-front-gallery {
    margin: min((6.25vw), 80px) max((-3.125vw), -40px);
  }
  .b-front-gallery__item {
    padding: 0px min((0.78125vw), 10px);
  }
  .b-front-gallery__item:nth-child(even) {
    margin-top: min((1.5625vw), 20px);
  }
  .b-front-gallery__item img {
    border-radius: min((0.78125vw), 10px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/*  Front Image Separator  */
/* ------------------------------ */
.b-front-img-separator {
  display: block;
  width: 100%;
  height: auto;
  margin: 8vw 0px;
}
@media screen and (min-width: 768px) {
  .b-front-img-separator {
    margin: 0px;
  }
}
.b-front-img-separator--btm {
  margin: 0;
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Utility */
/* ------------------------------ */
/* margin */
.u-mg-tp--0 {
  margin-top: 0px !important;
}
.u-mg-tp--10 {
  margin-top: 10px !important;
}
.u-mg-tp--20 {
  margin-top: 20px !important;
}
.u-mg-tp--30 {
  margin-top: 30px !important;
}
.u-mg-tp--40 {
  margin-top: 40px !important;
}
.u-mg-tp--50 {
  margin-top: 50px !important;
}
.u-mg-tp--60 {
  margin-top: 60px !important;
}
.u-mg-tp--70 {
  margin-top: 70px !important;
}
.u-mg-tp--80 {
  margin-top: 80px !important;
}
.u-mg-tp--90 {
  margin-top: 90px !important;
}
.u-mg-tp--100 {
  margin-top: 100px !important;
}
.u-mg-tp--110 {
  margin-top: 110px !important;
}
.u-mg-tp--120 {
  margin-top: 120px !important;
}
.u-mg-tp--130 {
  margin-top: 130px !important;
}
.u-mg-tp--140 {
  margin-top: 140px !important;
}
.u-mg-tp--150 {
  margin-top: 150px !important;
}
.u-mg-tp--160 {
  margin-top: 160px !important;
}
.u-mg-tp--170 {
  margin-top: 170px !important;
}
.u-mg-tp--180 {
  margin-top: 180px !important;
}
.u-mg-tp--190 {
  margin-top: 190px !important;
}
.u-mg-tp--200 {
  margin-top: 200px !important;
}
@media screen and ( max-width: 1279px ) {
  .u-mg-tp-md-down--0 {
    margin-top: 0px !important;
  }
  .u-mg-tp-md-down--10 {
    margin-top: 10px !important;
  }
  .u-mg-tp-md-down--20 {
    margin-top: 20px !important;
  }
  .u-mg-tp-md-down--30 {
    margin-top: 30px !important;
  }
  .u-mg-tp-md-down--40 {
    margin-top: 40px !important;
  }
  .u-mg-tp-md-down--50 {
    margin-top: 50px !important;
  }
  .u-mg-tp-md-down--60 {
    margin-top: 60px !important;
  }
  .u-mg-tp-md-down--70 {
    margin-top: 70px !important;
  }
  .u-mg-tp-md-down--80 {
    margin-top: 80px !important;
  }
  .u-mg-tp-md-down--90 {
    margin-top: 90px !important;
  }
  .u-mg-tp-md-down--100 {
    margin-top: 100px !important;
  }
  .u-mg-tp-md-down--110 {
    margin-top: 110px !important;
  }
  .u-mg-tp-md-down--120 {
    margin-top: 120px !important;
  }
  .u-mg-tp-md-down--130 {
    margin-top: 130px !important;
  }
  .u-mg-tp-md-down--140 {
    margin-top: 140px !important;
  }
  .u-mg-tp-md-down--150 {
    margin-top: 150px !important;
  }
  .u-mg-tp-md-down--160 {
    margin-top: 160px !important;
  }
  .u-mg-tp-md-down--170 {
    margin-top: 170px !important;
  }
  .u-mg-tp-md-down--180 {
    margin-top: 180px !important;
  }
  .u-mg-tp-md-down--190 {
    margin-top: 190px !important;
  }
  .u-mg-tp-md-down--200 {
    margin-top: 200px !important;
  }
}
@media screen and ( min-width: 768px ) {
  .u-mg-tp-sm-up--0 {
    margin-top: 0px !important;
  }
  .u-mg-tp-sm-up--10 {
    margin-top: 10px !important;
  }
  .u-mg-tp-sm-up--20 {
    margin-top: 20px !important;
  }
  .u-mg-tp-sm-up--30 {
    margin-top: 30px !important;
  }
  .u-mg-tp-sm-up--40 {
    margin-top: 40px !important;
  }
  .u-mg-tp-sm-up--50 {
    margin-top: 50px !important;
  }
  .u-mg-tp-sm-up--60 {
    margin-top: 60px !important;
  }
  .u-mg-tp-sm-up--70 {
    margin-top: 70px !important;
  }
  .u-mg-tp-sm-up--80 {
    margin-top: 80px !important;
  }
  .u-mg-tp-sm-up--90 {
    margin-top: 90px !important;
  }
  .u-mg-tp-sm-up--100 {
    margin-top: 100px !important;
  }
  .u-mg-tp-sm-up--110 {
    margin-top: 110px !important;
  }
  .u-mg-tp-sm-up--120 {
    margin-top: 120px !important;
  }
  .u-mg-tp-sm-up--130 {
    margin-top: 130px !important;
  }
  .u-mg-tp-sm-up--140 {
    margin-top: 140px !important;
  }
  .u-mg-tp-sm-up--150 {
    margin-top: 150px !important;
  }
  .u-mg-tp-sm-up--160 {
    margin-top: 160px !important;
  }
  .u-mg-tp-sm-up--170 {
    margin-top: 170px !important;
  }
  .u-mg-tp-sm-up--180 {
    margin-top: 180px !important;
  }
  .u-mg-tp-sm-up--190 {
    margin-top: 190px !important;
  }
  .u-mg-tp-sm-up--200 {
    margin-top: 200px !important;
  }
}
@media screen and ( max-width: 767px ) {
  .u-mg-tp-sm-down--0 {
    margin-top: 0px !important;
  }
  .u-mg-tp-sm-down--10 {
    margin-top: 10px !important;
  }
  .u-mg-tp-sm-down--20 {
    margin-top: 20px !important;
  }
  .u-mg-tp-sm-down--30 {
    margin-top: 30px !important;
  }
  .u-mg-tp-sm-down--40 {
    margin-top: 40px !important;
  }
  .u-mg-tp-sm-down--50 {
    margin-top: 50px !important;
  }
  .u-mg-tp-sm-down--60 {
    margin-top: 60px !important;
  }
  .u-mg-tp-sm-down--70 {
    margin-top: 70px !important;
  }
  .u-mg-tp-sm-down--80 {
    margin-top: 80px !important;
  }
  .u-mg-tp-sm-down--90 {
    margin-top: 90px !important;
  }
  .u-mg-tp-sm-down--100 {
    margin-top: 100px !important;
  }
  .u-mg-tp-sm-down--110 {
    margin-top: 110px !important;
  }
  .u-mg-tp-sm-down--120 {
    margin-top: 120px !important;
  }
  .u-mg-tp-sm-down--130 {
    margin-top: 130px !important;
  }
  .u-mg-tp-sm-down--140 {
    margin-top: 140px !important;
  }
  .u-mg-tp-sm-down--150 {
    margin-top: 150px !important;
  }
  .u-mg-tp-sm-down--160 {
    margin-top: 160px !important;
  }
  .u-mg-tp-sm-down--170 {
    margin-top: 170px !important;
  }
  .u-mg-tp-sm-down--180 {
    margin-top: 180px !important;
  }
  .u-mg-tp-sm-down--190 {
    margin-top: 190px !important;
  }
  .u-mg-tp-sm-down--200 {
    margin-top: 200px !important;
  }
}
@media screen and ( min-width: 768px ) {
  .u-mg-tp-sm-up--0 {
    margin-top: 0px !important;
  }
  .u-mg-tp-sm-up--10 {
    margin-top: 10px !important;
  }
  .u-mg-tp-sm-up--20 {
    margin-top: 20px !important;
  }
  .u-mg-tp-sm-up--30 {
    margin-top: 30px !important;
  }
  .u-mg-tp-sm-up--40 {
    margin-top: 40px !important;
  }
  .u-mg-tp-sm-up--50 {
    margin-top: 50px !important;
  }
  .u-mg-tp-sm-up--60 {
    margin-top: 60px !important;
  }
  .u-mg-tp-sm-up--70 {
    margin-top: 70px !important;
  }
  .u-mg-tp-sm-up--80 {
    margin-top: 80px !important;
  }
  .u-mg-tp-sm-up--90 {
    margin-top: 90px !important;
  }
  .u-mg-tp-sm-up--100 {
    margin-top: 100px !important;
  }
  .u-mg-tp-sm-up--110 {
    margin-top: 110px !important;
  }
  .u-mg-tp-sm-up--120 {
    margin-top: 120px !important;
  }
  .u-mg-tp-sm-up--130 {
    margin-top: 130px !important;
  }
  .u-mg-tp-sm-up--140 {
    margin-top: 140px !important;
  }
  .u-mg-tp-sm-up--150 {
    margin-top: 150px !important;
  }
  .u-mg-tp-sm-up--160 {
    margin-top: 160px !important;
  }
  .u-mg-tp-sm-up--170 {
    margin-top: 170px !important;
  }
  .u-mg-tp-sm-up--180 {
    margin-top: 180px !important;
  }
  .u-mg-tp-sm-up--190 {
    margin-top: 190px !important;
  }
  .u-mg-tp-sm-up--200 {
    margin-top: 200px !important;
  }
}

.u-mg-bt--0 {
  margin-bottom: 0px !important;
}
.u-mg-bt--10 {
  margin-bottom: 10px !important;
}
.u-mg-bt--20 {
  margin-bottom: 20px !important;
}
.u-mg-bt--30 {
  margin-bottom: 30px !important;
}
.u-mg-bt--40 {
  margin-bottom: 40px !important;
}
.u-mg-bt--50 {
  margin-bottom: 50px !important;
}
.u-mg-bt--60 {
  margin-bottom: 60px !important;
}
.u-mg-bt--70 {
  margin-bottom: 70px !important;
}
.u-mg-bt--80 {
  margin-bottom: 80px !important;
}
.u-mg-bt--90 {
  margin-bottom: 90px !important;
}
.u-mg-bt--100 {
  margin-bottom: 100px !important;
}
.u-mg-bt--110 {
  margin-bottom: 110px !important;
}
.u-mg-bt--120 {
  margin-bottom: 120px !important;
}
.u-mg-bt--130 {
  margin-bottom: 130px !important;
}
.u-mg-bt--140 {
  margin-bottom: 140px !important;
}
.u-mg-bt--150 {
  margin-bottom: 150px !important;
}
.u-mg-bt--160 {
  margin-bottom: 160px !important;
}
.u-mg-bt--170 {
  margin-bottom: 170px !important;
}
.u-mg-bt--180 {
  margin-bottom: 180px !important;
}
.u-mg-bt--190 {
  margin-bottom: 190px !important;
}
.u-mg-bt--200 {
  margin-bottom: 200px !important;
}
@media screen and ( max-width: 1279px ) {
  .u-mg-bt-md-down--0 {
    margin-bottom: 0px !important;
  }
  .u-mg-bt-md-down--10 {
    margin-bottom: 10px !important;
  }
  .u-mg-bt-md-down--20 {
    margin-bottom: 20px !important;
  }
  .u-mg-bt-md-down--30 {
    margin-bottom: 30px !important;
  }
  .u-mg-bt-md-down--40 {
    margin-bottom: 40px !important;
  }
  .u-mg-bt-md-down--50 {
    margin-bottom: 50px !important;
  }
  .u-mg-bt-md-down--60 {
    margin-bottom: 60px !important;
  }
  .u-mg-bt-md-down--70 {
    margin-bottom: 70px !important;
  }
  .u-mg-bt-md-down--80 {
    margin-bottom: 80px !important;
  }
  .u-mg-bt-md-down--90 {
    margin-bottom: 90px !important;
  }
  .u-mg-bt-md-down--100 {
    margin-bottom: 100px !important;
  }
  .u-mg-bt-md-down--110 {
    margin-bottom: 110px !important;
  }
  .u-mg-bt-md-down--120 {
    margin-bottom: 120px !important;
  }
  .u-mg-bt-md-down--130 {
    margin-bottom: 130px !important;
  }
  .u-mg-bt-md-down--140 {
    margin-bottom: 140px !important;
  }
  .u-mg-bt-md-down--150 {
    margin-bottom: 150px !important;
  }
  .u-mg-bt-md-down--160 {
    margin-bottom: 160px !important;
  }
  .u-mg-bt-md-down--170 {
    margin-bottom: 170px !important;
  }
  .u-mg-bt-md-down--180 {
    margin-bottom: 180px !important;
  }
  .u-mg-bt-md-down--190 {
    margin-bottom: 190px !important;
  }
  .u-mg-bt-md-down--200 {
    margin-bottom: 200px !important;
  }
}
@media screen and ( min-width: 1280px ) {
  .u-mg-bt-md-up--0 {
    margin-bottom: 0px Im !important;
  }
  .u-mg-bt-md-up--10 {
    margin-bottom: 10px Im !important;
  }
  .u-mg-bt-md-up--20 {
    margin-bottom: 20px Im !important;
  }
  .u-mg-bt-md-up--30 {
    margin-bottom: 30px Im !important;
  }
  .u-mg-bt-md-up--40 {
    margin-bottom: 40px Im !important;
  }
  .u-mg-bt-md-up--50 {
    margin-bottom: 50px Im !important;
  }
  .u-mg-bt-md-up--60 {
    margin-bottom: 60px Im !important;
  }
  .u-mg-bt-md-up--70 {
    margin-bottom: 70px Im !important;
  }
  .u-mg-bt-md-up--80 {
    margin-bottom: 80px Im !important;
  }
  .u-mg-bt-md-up--90 {
    margin-bottom: 90px Im !important;
  }
  .u-mg-bt-md-up--100 {
    margin-bottom: 100px Im !important;
  }
  .u-mg-bt-md-up--110 {
    margin-bottom: 110px Im !important;
  }
  .u-mg-bt-md-up--120 {
    margin-bottom: 120px Im !important;
  }
  .u-mg-bt-md-up--130 {
    margin-bottom: 130px Im !important;
  }
  .u-mg-bt-md-up--140 {
    margin-bottom: 140px Im !important;
  }
  .u-mg-bt-md-up--150 {
    margin-bottom: 150px Im !important;
  }
  .u-mg-bt-md-up--160 {
    margin-bottom: 160px Im !important;
  }
  .u-mg-bt-md-up--170 {
    margin-bottom: 170px Im !important;
  }
  .u-mg-bt-md-up--180 {
    margin-bottom: 180px Im !important;
  }
  .u-mg-bt-md-up--190 {
    margin-bottom: 190px Im !important;
  }
  .u-mg-bt-md-up--200 {
    margin-bottom: 200px Im !important;
  }
}
@media screen and ( max-width: 767px ) {
  .u-mg-bt-sm-down--0 {
    margin-bottom: 0px !important;
  }
  .u-mg-bt-sm-down--10 {
    margin-bottom: 10px !important;
  }
  .u-mg-bt-sm-down--20 {
    margin-bottom: 20px !important;
  }
  .u-mg-bt-sm-down--30 {
    margin-bottom: 30px !important;
  }
  .u-mg-bt-sm-down--40 {
    margin-bottom: 40px !important;
  }
  .u-mg-bt-sm-down--50 {
    margin-bottom: 50px !important;
  }
  .u-mg-bt-sm-down--60 {
    margin-bottom: 60px !important;
  }
  .u-mg-bt-sm-down--70 {
    margin-bottom: 70px !important;
  }
  .u-mg-bt-sm-down--80 {
    margin-bottom: 80px !important;
  }
  .u-mg-bt-sm-down--90 {
    margin-bottom: 90px !important;
  }
  .u-mg-bt-sm-down--100 {
    margin-bottom: 100px !important;
  }
  .u-mg-bt-sm-down--110 {
    margin-bottom: 110px !important;
  }
  .u-mg-bt-sm-down--120 {
    margin-bottom: 120px !important;
  }
  .u-mg-bt-sm-down--130 {
    margin-bottom: 130px !important;
  }
  .u-mg-bt-sm-down--140 {
    margin-bottom: 140px !important;
  }
  .u-mg-bt-sm-down--150 {
    margin-bottom: 150px !important;
  }
  .u-mg-bt-sm-down--160 {
    margin-bottom: 160px !important;
  }
  .u-mg-bt-sm-down--170 {
    margin-bottom: 170px !important;
  }
  .u-mg-bt-sm-down--180 {
    margin-bottom: 180px !important;
  }
  .u-mg-bt-sm-down--190 {
    margin-bottom: 190px !important;
  }
  .u-mg-bt-sm-down--200 {
    margin-bottom: 200px !important;
  }
}
@media screen and ( min-width: 768px ) {
  .u-mg-bt-sm-up--0 {
    margin-bottom: 0px !important;
  }
  .u-mg-bt-sm-up--10 {
    margin-bottom: 10px !important;
  }
  .u-mg-bt-sm-up--20 {
    margin-bottom: 20px !important;
  }
  .u-mg-bt-sm-up--30 {
    margin-bottom: 30px !important;
  }
  .u-mg-bt-sm-up--40 {
    margin-bottom: 40px !important;
  }
  .u-mg-bt-sm-up--50 {
    margin-bottom: 50px !important;
  }
  .u-mg-bt-sm-up--60 {
    margin-bottom: 60px !important;
  }
  .u-mg-bt-sm-up--70 {
    margin-bottom: 70px !important;
  }
  .u-mg-bt-sm-up--80 {
    margin-bottom: 80px !important;
  }
  .u-mg-bt-sm-up--90 {
    margin-bottom: 90px !important;
  }
  .u-mg-bt-sm-up--100 {
    margin-bottom: 100px !important;
  }
  .u-mg-bt-sm-up--110 {
    margin-bottom: 110px !important;
  }
  .u-mg-bt-sm-up--120 {
    margin-bottom: 120px !important;
  }
  .u-mg-bt-sm-up--130 {
    margin-bottom: 130px !important;
  }
  .u-mg-bt-sm-up--140 {
    margin-bottom: 140px !important;
  }
  .u-mg-bt-sm-up--150 {
    margin-bottom: 150px !important;
  }
  .u-mg-bt-sm-up--160 {
    margin-bottom: 160px !important;
  }
  .u-mg-bt-sm-up--170 {
    margin-bottom: 170px !important;
  }
  .u-mg-bt-sm-up--180 {
    margin-bottom: 180px !important;
  }
  .u-mg-bt-sm-up--190 {
    margin-bottom: 190px !important;
  }
  .u-mg-bt-sm-up--200 {
    margin-bottom: 200px !important;
  }
}

/* visibility  */
.u-show-sm-down {
  display: none !important;
}
@media screen and ( max-width: 767px ) {
  .u-show-sm-down {
    display: block !important;
  }
}

.u-show-sm-up {
  display: none !important;
}
@media screen and ( min-width: 768px ) {
  .u-show-sm-up {
    display: block !important;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* ページタイトル */
/* ------------------------------ */
.b-page-title {
  background-color: #F0E8DB;
  padding-top: 42px;
  padding-bottom: 50px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .b-page-title {
    position: relative;
    padding-top: 120px;
    padding-bottom: 100px;
  }
  .b-page-title::before {
    position: absolute;
    content: "";
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 100vw;
    height: 100%;
    background-color: #F0E8DB;
  }
}
.b-page-title::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 52vw;
  height: 11.4666666667vw;
  background: url(images/common/page-title-bg.png) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .b-page-title::after {
    width: min((30.46875vw), 390px);
    height: min((6.71875vw), 86px);
  }
}
.b-page-title__text {
  color: #00471D;
  font-size: 4.2666666667vw;
  font-weight: 700;
  text-align: center;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .b-page-title__text {
    font-size: min((1.875vw), 24px);
  }
}
.b-page-title__text::before {
  display: block;
  content: attr(data-en);
  margin-bottom: 5px;
  color: #F9F6EF;
  font-size: 16vw;
  font-family: "Lato", sans-serif;
  margin-bottom: -2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .b-page-title__text::before {
    font-size: min((9.375vw), 120px);
    margin-bottom: max((-1.171875vw), -15px);
  }
}
.b-page-title__text--break::before {
  line-height: 100%;
  margin-bottom: 0;
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* アンカーリンク */
/* ------------------------------ */
.b-page-anchor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 30px 0;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .b-page-anchor {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 10px;
    max-width: min((74.21875vw), 950px);
    width: 95%;
    padding: min((3.125vw), 40px);
    margin-right: auto;
    margin-left: auto;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.b-page-anchor li {
  list-style: none;
}
@media screen and (min-width: 768px) {
  .b-page-anchor li {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
  }
}
.b-page-anchor__btn {
  display: block;
  background-color: var(--color-main);
  margin-right: auto;
  margin-left: auto;
  padding: 10px;
  border-radius: 60px;
  text-align: center;
  width: 89.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-page-anchor__btn {
    width: 100%;
    border: 1px solid var(--color-main);
  }
  .b-page-anchor__btn:hover, .b-page-anchor__btn:focus {
    background-color: var(--color-white);
  }
  .b-page-anchor__btn:hover .b-page-anchor__btn__text, .b-page-anchor__btn:focus .b-page-anchor__btn__text {
    color: var(--color-main);
  }
  .b-page-anchor__btn:hover .b-page-anchor__btn__text::after, .b-page-anchor__btn:focus .b-page-anchor__btn__text::after {
    background: url(images/common/arrow-green.png) no-repeat center/cover;
    -webkit-transform: translateY(-50%) rotate(0deg);
            transform: translateY(-50%) rotate(0deg);
  }
}
.b-page-anchor__btn__text {
  color: var(--color-white);
  font-size: 3.7333333333vw;
  position: relative;
  padding-right: 9.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-page-anchor__btn__text {
    font-size: min((1.25vw), 16px);
    padding-right: min((3.125vw), 40px);
  }
}
.b-page-anchor__btn__text::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  background: url(images/common/anchor-arrow.png) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .b-page-anchor__btn__text::after {
    width: min((1.5625vw), 20px);
    height: min((1.5625vw), 20px);
  }
}
@media screen and (min-width: 768px) {
  .b-page-anchor__break {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Page Navigation */
/* ------------------------------ */
.b-page-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2.6666666667vw 4vw;
  margin: 8vw 0;
  padding: 0px 5.3333333333vw;
}
.b-page-nav__item {
  min-width: calc((100% - 4vw) / 2);
}
.b-page-nav__item__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 10.6666666667vw;
  padding: 0 2.6666666667vw 0 4vw;
  border: 0.2666666667vw solid var(--color-main);
  border-radius: 5.3333333333vw;
  background-color: var(--color-white);
}
.b-page-nav__item__link span {
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 3.7333333333vw;
  font-weight: 700;
  color: var(--color-main);
}
.b-page-nav__item__link::after {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  background: url("images/common/icon-arrow-green.svg") no-repeat center;
  background-size: contain;
}
.b-page-nav__item__link.current {
  pointer-events: none;
  background-color: var(--color-main);
}
.b-page-nav__item__link.current span {
  color: var(--color-white);
}
.b-page-nav__item__link.current::after {
  background-image: none;
}
@media screen and (min-width: 768px) {
  .b-page-nav {
    gap: min((0.78125vw), 10px);
    max-width: min((74.21875vw), 950px);
    margin: min((3.125vw), 40px) auto;
    padding: 0px min((3.125vw), 40px);
  }
  .b-page-nav__item {
    min-width: calc((100% - min((3.125vw), 40px)) / 5);
  }
  .b-page-nav__item__link {
    height: min((3.125vw), 40px);
    padding: 0 min((1.5625vw), 20px) 0 min((1.953125vw), 25px);
    border-width: min((0.078125vw), 1px);
    border-radius: min((1.5625vw), 20px);
  }
  .b-page-nav__item__link span {
    font-size: min((1.09375vw), 14px);
  }
  .b-page-nav__item__link::after {
    width: min((1.5625vw), 20px);
    height: min((1.5625vw), 20px);
    background-size: contain;
  }
  .b-page-nav__item__link:hover, .b-page-nav__item__link:focus {
    background-color: var(--color-main);
  }
  .b-page-nav__item__link:hover span, .b-page-nav__item__link:focus span {
    color: var(--color-white);
  }
  .b-page-nav__item__link:hover::after, .b-page-nav__item__link:focus::after {
    background-image: url("images/common/icon-arrow-white.svg");
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* セクション共通 */
/* ------------------------------ */
.b-section {
  padding: 0 5.0666666667vw;
}
@media screen and (min-width: 768px) {
  .b-section {
    padding: 0 min((3.125vw), 40px);
    max-width: min((74.21875vw), 950px);
    width: 95%;
    margin-right: auto;
    margin-left: auto;
  }
}
.b-section:not(:first-of-type) {
  margin-top: 16vw;
}
@media screen and (min-width: 768px) {
  .b-section:not(:first-of-type) {
    margin-top: min((6.25vw), 80px);
  }
}
.b-section:last-of-type {
  padding-bottom: 16vw;
}
@media screen and (min-width: 768px) {
  .b-section:last-of-type {
    padding-bottom: min((6.25vw), 80px);
  }
}
@media screen and (min-width: 768px) {
  .b-section--pc950c {
    max-width: min((74.21875vw), 950px);
    width: 95%;
    margin-right: auto;
    margin-left: auto;
    padding: 0;
  }
}

.b-blue-bg {
  margin: 26.6666666667vw 0;
  background-color: #D2E9EB;
  padding-bottom: 0;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .b-blue-bg {
    margin: min((21.875vw), 280px) 0;
  }
}
.b-blue-bg .b-section--blue {
  padding: 0;
  margin: 10.6666666667vw 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-blue-bg .b-section--blue {
    padding-bottom: min((1.5625vw), 20px);
    margin: min((0vw), 0px) auto;
  }
}
.b-blue-bg::before, .b-blue-bg::after {
  position: absolute;
  content: "";
  left: 0;
  width: 100%;
  height: 16vw;
  background: url(images/enjoy/rainy-bg.png) no-repeat center/cover;
  z-index: 0;
}
@media screen and (min-width: 768px) {
  .b-blue-bg::before, .b-blue-bg::after {
    height: min((17.1875vw), 220px);
    background: url(images/enjoy/rainy-bg-pc.png) no-repeat center/cover;
  }
}
.b-blue-bg::before {
  top: -15.7333333333vw;
}
@media screen and (min-width: 768px) {
  .b-blue-bg::before {
    top: -18%;
  }
}
.b-blue-bg::after {
  bottom: -15.7333333333vw;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
@media screen and (min-width: 768px) {
  .b-blue-bg::after {
    bottom: -18%;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* セクションタイトル */
/* ------------------------------ */
.b-section-title__text {
  color: var(--color-main);
  font-size: 4.2666666667vw;
  font-weight: 700;
  padding: 0 2.6666666667vw;
  position: relative;
}
@media screen and (min-width: 768px) {
  .b-section-title__text {
    font-size: min((1.40625vw), 18px);
    padding: 0 min((1.171875vw), 15px);
  }
}
.b-section-title__text::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  width: 1.6vw;
  height: 1.6vw;
  border-radius: 50%;
  background-color: var(--color-main);
}
@media screen and (min-width: 768px) {
  .b-section-title__text::before {
    width: min((0.46875vw), 6px);
    height: min((0.46875vw), 6px);
  }
}
.b-section-title::before {
  display: block;
  content: attr(data-en);
  white-space: pre-line;
  margin-bottom: -5px;
  color: var(--color-beige2);
  font-family: "Lato", sans-serif;
  font-weight: 700;
  font-size: 10.6666666667vw;
}
@media screen and (min-width: 768px) {
  .b-section-title::before {
    font-size: min((4.6875vw), 60px);
  }
}
.b-section-title--white::before {
  color: var(--color-white);
  position: relative;
  z-index: 1;
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* セクションアンカーリンク */
/* ------------------------------ */
.b-section-anchor {
  margin-top: 8vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .b-section-anchor {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 20px;
    margin-top: min((2.34375vw), 30px);
  }
}
.b-section-anchor__link {
  border: 1px solid var(--color-main);
  border-radius: 2.6666666667vw;
  background-color: var(--color-white);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 9%;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .b-section-anchor__link {
    border-radius: min((0.78125vw), 10px);
    gap: 6%;
    height: min((6.25vw), 80px);
    overflow: hidden;
  }
  .b-section-anchor__link:hover, .b-section-anchor__link:focus {
    background-color: var(--color-main);
  }
  .b-section-anchor__link:hover .b-section-anchor__link__text, .b-section-anchor__link:focus .b-section-anchor__link__text {
    color: var(--color-white);
  }
  .b-section-anchor__link:hover::after, .b-section-anchor__link:focus::after {
    background: url(images/common/icon-arrow-white.svg) no-repeat center/cover;
    -webkit-transform: translateY(-50%) rotate(90deg);
            transform: translateY(-50%) rotate(90deg);
  }
}
.b-section-anchor__link::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 8vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  background: url(images/common/arrow-green.png) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .b-section-anchor__link::after {
    right: min((1.5625vw), 20px);
    width: min((1.5625vw), 20px);
    height: min((1.5625vw), 20px);
  }
}
.b-section-anchor__link__img {
  width: 27%;
  aspect-ratio: 89/63;
}
@media screen and (min-width: 768px) {
  .b-section-anchor__link__img {
    aspect-ratio: 90/100;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.b-section-anchor__link__text {
  font-size: 3.7333333333vw;
  color: var(--color-main);
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .b-section-anchor__link__text {
    font-size: min((1.25vw), 16px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* 小見出しアンカーリンク */
/* ------------------------------ */
.b-subheading-anchor {
  margin-top: 2.6666666667vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .b-subheading-anchor {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: min((0.78125vw), 10px);
  }
}
.b-subheading-anchor li {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0;
}
.b-subheading-anchor__link {
  display: block;
  width: 100%;
  border: 1px solid var(--color-main);
  border-radius: 50px;
  background-color: var(--color-white);
  padding: 2.6666666667vw 5.3333333333vw;
  font-size: 3.2vw;
  color: var(--color-main);
  font-weight: 700;
  position: relative;
}
@media screen and (min-width: 768px) {
  .b-subheading-anchor__link {
    padding: min((0.78125vw), 10px) min((1.5625vw), 20px);
    padding-right: min((3.90625vw), 50px);
    font-size: min((1.09375vw), 14px);
    min-width: min((19.140625vw), 245px);
    white-space: nowrap;
  }
  .b-subheading-anchor__link:hover, .b-subheading-anchor__link:focus {
    background-color: var(--color-main);
    color: var(--color-white);
  }
  .b-subheading-anchor__link:hover::after, .b-subheading-anchor__link:focus::after {
    background: url(images/common/icon-arrow-white.svg) no-repeat center/cover;
    -webkit-transform: translateY(-50%) rotate(90deg);
            transform: translateY(-50%) rotate(90deg);
  }
}
.b-subheading-anchor__link::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 5.3333333333vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  background: url(images/common/arrow-green.png) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .b-subheading-anchor__link::after {
    right: min((1.5625vw), 20px);
    width: min((1.5625vw), 20px);
    height: min((1.5625vw), 20px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* 見出し、説明文 */
/* ------------------------------ */
.b-explanation__heading {
  color: var(--color-main);
  font-size: 4.2666666667vw;
  font-weight: 700;
  padding-bottom: 5px;
  border-bottom: 1px solid var(--color-main);
  margin-top: 8vw;
}
@media screen and (min-width: 768px) {
  .b-explanation__heading {
    font-size: min((1.875vw), 24px);
    margin-top: min((3.125vw), 40px);
  }
}
.b-explanation__heading--large {
  font-size: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-explanation__heading--large {
    font-size: min((1.875vw), 24px);
  }
}
.b-explanation__heading__small {
  font-size: 3.2vw;
  font-weight: 400;
  padding-left: 1.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-explanation__heading__small {
    font-size: min((1.25vw), 16px);
  }
}

.b-explanation__text {
  line-height: 180%;
  font-size: 3.7333333333vw;
  margin-top: 2.6666666667vw;
}
.b-explanation__text a {
  color: var(--color-blue);
  font-weight: bold;
  text-decoration: underline;
}
.b-explanation__text b {
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .b-explanation__text {
    font-size: min((1.25vw), 16px);
    margin-top: min((1.5625vw), 20px);
  }
}
.b-explanation__text--note {
  padding: 2.6666666667vw;
  background-color: var(--color-white);
  border-radius: 1.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-explanation__text--note {
    padding: min((1.5625vw), 20px);
    border-radius: min((0.390625vw), 5px);
  }
}
.b-explanation__text--attention {
  padding: 2.6666666667vw 5.3333333333vw;
  background-color: var(--color-light-red);
  border-radius: 1.3333333333vw;
}
.b-explanation__text--attention b {
  font-weight: 700;
  color: var(--color-red);
}
@media screen and (min-width: 768px) {
  .b-explanation__text--attention {
    padding: min((1.5625vw), 20px) min((2.34375vw), 30px);
    border-radius: min((0.390625vw), 5px);
  }
}
.b-explanation__text--center {
  text-align: center;
}
.b-explanation__text--item-center {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0px auto;
}
.b-explanation__img {
  max-width: 89.3333333333vw;
  width: 100%;
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .b-explanation__img {
    width: calc(33.3% - 13.3333333333px);
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.b-explanation__img img {
  display: block;
  width: 100%;
  aspect-ratio: auto;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 10px;
}
.b-explanation__img--list {
  width: 100%;
  gap: 5.3333333333vw;
}
.b-explanation__img--list img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .b-explanation__img--list {
    gap: min((1.5625vw), 20px);
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .b-explanation__img--list img {
    width: calc(33.3% - 13.3333333333px);
  }
}

.b-explanation-flex {
  margin-top: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-explanation-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: min((3.90625vw), 50px);
    margin-top: min((1.5625vw), 20px);
  }
}
@media screen and (min-width: 768px) {
  .b-explanation-flex .b-explanation__text {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .b-explanation-flex .b-explanation__img {
    max-width: min((35.15625vw), 450px);
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .b-explanation-flex--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
.b-explanation-flex--reverse .b-explanation__text--bg {
  position: relative;
  z-index: 1;
}
.b-explanation-flex--reverse .b-explanation__text--bg::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 40.8vw;
  height: 45.6vw;
  background: url(images/enjoy/enjoy-text-bg.png) no-repeat center/cover;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .b-explanation-flex--reverse .b-explanation__text--bg::after {
    width: min((11.953125vw), 153px);
    height: min((13.359375vw), 171px);
  }
}
.b-explanation-flex--contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 768px) {
  .b-explanation-flex--contents {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.b-explanation-flex--contents .b-explanation__text__wrap {
  display: contents;
}
@media screen and (min-width: 768px) {
  .b-explanation-flex--contents .b-explanation__text__wrap {
    display: block;
    width: 100%;
  }
}
.b-explanation-flex--contents .b-explanation__text__wrap .b-explanation__text1 {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.b-explanation-flex--contents .b-explanation__text__wrap .b-explanation__text2 {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}
.b-explanation-flex--contents .b-explanation__img {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.b-explanation__contents {
  width: 100%;
}

.b-explanation__list {
  margin: 2.6666666667vw 0;
  padding-left: 5.3333333333vw;
  list-style-type: disc;
}
.b-explanation__list__item {
  font-size: 3.7333333333vw;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .b-explanation__list {
    margin: min((1.5625vw), 20px) 0;
    padding-left: min((2.34375vw), 30px);
  }
  .b-explanation__list__item {
    font-size: min((1.25vw), 16px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Sub Section */
/* ------------------------------ */
.b-sub-section {
  margin: 8vw 0;
}
.b-sub-section__heading {
  font-size: 5.3333333333vw;
  font-weight: 700;
  margin: 0 0 2.6666666667vw;
  padding: 2.6666666667vw;
  background-color: var(--color-beige2);
}
.b-sub-section__section {
  margin: 5.3333333333vw 0;
}
.b-sub-section__section__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.6666666667vw;
  font-size: 4.8vw;
  font-weight: 700;
  color: var(--color-main);
  margin: 0 0 5.3333333333vw;
}
.b-sub-section__section__heading::before {
  content: "";
  display: block;
  width: 3.2vw;
  height: 3.2vw;
  background-color: var(--color-main);
  border-radius: 0.5333333333vw;
  margin-top: 1.6vw;
}
.b-sub-section__section__sub {
  margin: 5.3333333333vw 0;
}
.b-sub-section__section__sub__heading {
  font-size: 4.2666666667vw;
  font-weight: 700;
  margin: 0 0 2.6666666667vw;
}
.b-sub-section__section__sub__img {
  display: block;
  margin: 2.6666666667vw 0;
}
.b-sub-section__section__sub__txt {
  font-size: 3.2vw;
  line-height: 1.8;
}
.b-sub-section__section__sub__txt b {
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .b-sub-section {
    margin: min((3.125vw), 40px) 0;
  }
  .b-sub-section__heading {
    font-size: min((1.5625vw), 20px);
    margin: 0 0 min((1.5625vw), 20px);
    padding: min((1.171875vw), 15px);
  }
  .b-sub-section__section {
    margin: min((3.125vw), 40px) 0;
  }
  .b-sub-section__section__heading {
    gap: min((0.78125vw), 10px);
    font-size: min((1.71875vw), 22px);
    margin: 0 0 min((2.34375vw), 30px);
  }
  .b-sub-section__section__heading::before {
    width: min((1.09375vw), 14px);
    height: min((1.09375vw), 14px);
    margin-top: min((0.625vw), 8px);
    border-radius: min((0.15625vw), 2px);
  }
  .b-sub-section__section__sub {
    margin: min((2.34375vw), 30px) 0;
  }
  .b-sub-section__section__sub__heading {
    font-size: min((1.40625vw), 18px);
    margin: 0 0 min((1.171875vw), 15px);
  }
  .b-sub-section__section__sub__img {
    margin: min((1.171875vw), 15px) 0;
  }
  .b-sub-section__section__sub__txt {
    font-size: min((1.09375vw), 14px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* テーブル */
/* ------------------------------ */
.b-section-table {
  border-collapse: separate;
  overflow: hidden;
  border-radius: 10px;
  width: 100%;
  font-size: 3.7333333333vw;
  margin-top: 15px;
}
@media screen and (min-width: 768px) {
  .b-section-table {
    font-size: min((1.25vw), 16px);
  }
}
.b-section-table tr:last-of-type .b-section-table__td {
  border-bottom: none;
}
.b-section-table .b-section-table__tr-white .b-section-table__td {
  border-top: 1px solid var(--color-beige2);
}
.b-section-table .b-section-table__tr-white .b-section-table__td:first-child {
  border-right: 1px solid var(--color-beige2);
}
.b-section-table__th {
  background-color: var(--color-beige2);
  padding: 2.6666666667vw 0;
  width: 61%;
  font-weight: 500;
}
.b-section-table__th:first-of-type {
  border-right: 1px solid var(--color-white);
}
@media screen and (min-width: 768px) {
  .b-section-table__th {
    padding: min((0.78125vw), 10px) 0;
    width: 40%;
  }
}
.b-section-table__th__small {
  font-size: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .b-section-table__th__small {
    font-size: min((0.9375vw), 12px);
  }
}
.b-section-table__td {
  background-color: var(--color-white);
  padding: 3.2vw 2.6666666667vw;
  font-weight: 300;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .b-section-table__td {
    text-align: center;
    padding: min((1.328125vw), 17px) min((1.171875vw), 15px);
  }
}
.b-section-table__caption {
  font-size: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .b-section-table__caption {
    font-size: min((0.9375vw), 12px);
  }
}

@media screen and (min-width: 768px) {
  .b-section-table--side {
    width: 100%;
  }
}
.b-section-table--side .b-section-table__th {
  text-align: left;
  padding-left: 10px;
}
.b-section-table--side .b-section-table__th:first-of-type {
  border-right: none;
}
.b-section-table--side .b-section-table__td {
  text-align: left;
  border-radius: 0 10px 10px 0;
}

.b-section-table--lines tr:first-of-type td {
  border-radius: 0 10px 0 0 !important;
}
.b-section-table--lines tr:last-of-type td {
  border-radius: 0 0 10px 0 !important;
}
.b-section-table--lines tr:not(:last-child) td {
  border-bottom: 1px solid var(--color-beige2);
}
.b-section-table--lines .b-section-table__th {
  border-bottom: 1px solid var(--color-white);
}
.b-section-table--lines .b-section-table__td {
  border-right: none;
  border-radius: 0;
  padding: 4vw;
}
@media screen and (min-width: 768px) {
  .b-section-table--lines .b-section-table__td {
    padding: min((1.328125vw), 17px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* 定義 */
/* ------------------------------ */
.b-description {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 3.7333333333vw;
  gap: 1.3333333333vw;
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .b-description {
    font-size: min((1.25vw), 16px);
    gap: min((0.78125vw), 10px);
  }
}
.b-description--block {
  display: block;
}
@media screen and (min-width: 768px) {
  .b-description--block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.b-description--block .b-description__content {
  margin-top: 8px;
}
.b-description__title {
  background-color: var(--color-beige2);
  padding: 5px;
  width: 31.4666666667vw;
  text-align: center;
  font-weight: 500;
  border-radius: 5px;
}
@media screen and (min-width: 768px) {
  .b-description__title {
    width: min((11.71875vw), 150px);
  }
}
.b-description__title--transparent {
  background-color: transparent;
  text-align: left;
}
.b-description__title--th-short {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.b-description--block {
  display: block;
}
@media screen and (min-width: 768px) {
  .b-description--block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.b-description--block .b-description__content {
  margin-top: 8px;
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* リスト(白背景) */
/* ------------------------------ */
.b-lists {
  background-color: var(--color-white);
  border-radius: 5px;
  padding: 4vw;
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .b-lists {
    padding: min((1.5625vw), 20px);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.b-list {
  font-size: 3.2vw;
}
@media screen and (min-width: 768px) {
  .b-list {
    font-size: min((1.25vw), 16px);
  }
}
.b-list--dot li {
  font-size: 3.7333333333vw;
  padding-left: 5.3333333333vw;
  line-height: 180%;
  position: relative;
}
.b-list--dot li:not(:last-of-type) {
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .b-list--dot li {
    font-size: min((1.25vw), 16px);
    padding-left: min((1.5625vw), 20px);
  }
}
.b-list--dot li::before {
  position: absolute;
  content: "";
  top: 1.8666666667vw;
  left: 0;
  width: 2.1333333333vw;
  height: 2.1333333333vw;
  background-color: var(--color-main);
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  .b-list--dot li::before {
    top: min((0.625vw), 8px);
    left: 0;
    width: min((0.625vw), 8px);
    height: min((0.625vw), 8px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* ゴミ処理について(ガイドページ) */
/* ------------------------------ */
.b-list-with-icon__title {
  border: 1px solid var(--color-main);
  border-radius: 5px;
  width: 89.3333333333vw;
  margin-right: auto;
  margin-left: auto;
  font-size: 3.7333333333vw;
  font-weight: 500;
  padding: 2.6666666667vw;
  text-align: center;
  color: var(--color-main);
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .b-list-with-icon__title {
    width: 100%;
    margin-left: 0;
    font-size: min((1.5625vw), 20px);
    padding: min((1.171875vw), 15px);
  }
}
.b-list-with-icon__lead {
  font-size: 3.7333333333vw;
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .b-list-with-icon__lead {
    font-size: min((1.25vw), 16px);
    margin-top: 20px;
  }
}
.b-list-with-icon__lists {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.6666666667vw;
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .b-list-with-icon__lists {
    grid-template-columns: repeat(4, 1fr);
    gap: min((1.5625vw), 20px);
    margin-top: 20px;
  }
}
.b-list-with-icon__box {
  background-color: var(--color-white);
  border-radius: 5px;
  display: grid;
  padding: 2.6666666667vw 4vw;
}
@media screen and (min-width: 768px) {
  .b-list-with-icon__box {
    padding: min((1.5625vw), 20px);
  }
}
.b-list-with-icon__label {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  text-align: center;
  font-size: 3.7333333333vw;
  font-weight: 500;
  color: var(--color-main);
}
@media screen and (min-width: 768px) {
  .b-list-with-icon__label {
    font-size: min((1.40625vw), 18px);
  }
}
.b-list-with-icon__text {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  text-align: center;
  font-size: 3.2vw;
}
@media screen and (min-width: 768px) {
  .b-list-with-icon__text {
    font-size: min((1.25vw), 16px);
  }
}
.b-list-with-icon__text__small {
  display: block;
  font-size: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .b-list-with-icon__text__small {
    font-size: min((1.09375vw), 14px);
  }
}
.b-list-with-icon__img {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  width: 18.6666666667vw;
  margin: 10px auto;
}
@media screen and (min-width: 768px) {
  .b-list-with-icon__img {
    width: min((9.375vw), 120px);
  }
}
.b-list-with-icon__prohibition {
  background-color: #F0DFD9;
  border-radius: 5px;
  margin-top: 20px;
  padding: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-list-with-icon__prohibition {
    padding: min((1.5625vw), 20px);
  }
}
.b-list-with-icon__prohibition__label {
  background-color: #A31010;
  border-radius: 5px;
  color: var(--color-white);
  font-size: 3.7333333333vw;
  text-align: center;
  padding: 3px;
}
@media screen and (min-width: 768px) {
  .b-list-with-icon__prohibition__label {
    font-size: min((1.5625vw), 20px);
  }
}
.b-list-with-icon__prohibition__label small {
  font-size: 3.2vw;
}
@media screen and (min-width: 768px) {
  .b-list-with-icon__prohibition__label small {
    font-size: min((1.09375vw), 14px);
  }
}
.b-list-with-icon__prohibition__list li {
  font-size: 3.7333333333vw;
  margin-top: 5px;
}
@media screen and (min-width: 768px) {
  .b-list-with-icon__prohibition__list li {
    font-size: min((1.25vw), 16px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* 注意事項(ガイドページ) */
/* ------------------------------ */
.b-attention {
  margin-top: 10px;
  background-color: var(--color-white);
  border-radius: 5px;
  padding: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-attention {
    margin-top: 20px;
    padding: min((1.5625vw), 20px);
  }
}
.b-attention__title {
  border-radius: 5px;
  text-align: center;
  color: var(--color-white);
  font-size: 3.7333333333vw;
  padding: 5px 0;
}
@media screen and (min-width: 768px) {
  .b-attention__title {
    font-size: min((1.5625vw), 20px);
  }
}
.b-attention__list li {
  font-size: 3.7333333333vw;
  padding-left: 15px;
  margin-top: 10px;
  line-height: 180%;
  position: relative;
}
@media screen and (min-width: 768px) {
  .b-attention__list li {
    font-size: min((1.25vw), 16px);
    padding-left: min((1.5625vw), 20px);
  }
}
.b-attention__list li::before {
  position: absolute;
  content: "";
  top: 1.8666666667vw;
  left: 0;
  width: 2.1333333333vw;
  height: 2.1333333333vw;
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  .b-attention__list li::before {
    top: min((0.625vw), 8px);
    left: 0;
    width: min((0.625vw), 8px);
    height: min((0.625vw), 8px);
  }
}
.b-attention--red .b-attention__title {
  background-color: #A31010;
}
.b-attention--red .b-attention__list li::before {
  background-color: #A31010;
}
.b-attention--green .b-attention__title {
  background-color: var(--color-main);
}
.b-attention--green .b-attention__list li::before {
  background-color: var(--color-main);
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* 地図 */
/* ------------------------------ */
.b-map {
  position: relative;
  width: 100%;
  max-width: 100%;
  background: #F9F6EF;
  margin-top: 10.6666666667vw;
  padding: 0 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-map {
    max-width: min((74.21875vw), 950px);
    margin-top: min((4.375vw), 56px);
    margin-left: auto;
    margin-right: auto;
    padding: 0 min((3.125vw), 40px);
  }
}
.b-map__content {
  width: 100%;
  height: 64vw;
}
@media screen and (min-width: 768px) {
  .b-map__content {
    height: 600px !important;
  }
}

.b-map__content img:not(.leaflet-image-layer) {
  width: 89% !important;
  height: auto !important;
  max-width: 100% !important;
  -webkit-transform: none !important;
          transform: none !important;
}

.b-map__content img.leaflet-image-layer {
  max-width: none !important;
}

.leaflet-container img.leaflet-image-layer {
  max-width: none !important;
}

.leaflet-container {
  background: #F9F6EF;
}

.leaflet-control-zoom {
  border: none !important;
}

.leaflet-bar {
  margin-top: 40px !important;
}
.leaflet-bar a {
  background-color: #F1F1F1;
  border-bottom: 1px solid #C3C3C3;
}
@media screen and (min-width: 768px) {
  .leaflet-bar a {
    width: 40px !important;
    height: 40px !important;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* サイトエリア紹介 */
/* ------------------------------ */
.b-site-label {
  font-size: 4.2666666667vw;
  background-color: var(--color-main);
  color: var(--color-white);
  border-radius: 5px;
  text-align: center;
  padding: 5px;
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .b-site-label {
    font-size: min((1.5625vw), 20px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* アンカーリンク(楽しみ方ページ) */
/* ------------------------------ */
.b-anchor-box {
  margin: 8vw 0;
  padding: 0 5.3333333333vw;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px 10px;
}
@media screen and (min-width: 768px) {
  .b-anchor-box {
    margin: min((4.6875vw), 60px) 0;
    max-width: min((74.21875vw), 950px);
    width: 95%;
    margin-right: auto;
    margin-left: auto;
    grid-template-columns: repeat(4, 1fr);
    padding: 0;
  }
}
.b-anchor-box__block {
  border: 1px solid var(--color-main);
  background-color: var(--color-white);
  border-radius: 3.2vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .b-anchor-box__block {
    border-radius: min((1.5625vw), 20px);
  }
  .b-anchor-box__block:hover, .b-anchor-box__block:focus {
    background-color: var(--color-main);
  }
  .b-anchor-box__block:hover .b-anchor-box__block__text, .b-anchor-box__block:focus .b-anchor-box__block__text {
    color: var(--color-white);
  }
  .b-anchor-box__block:hover::after, .b-anchor-box__block:focus::after {
    background: url(images/common/icon-arrow-white.svg) no-repeat center/cover;
    -webkit-transform-origin: center;
            transform-origin: center;
    -webkit-transform: translateX(-50%) rotate(90deg);
            transform: translateX(-50%) rotate(90deg);
  }
}
.b-anchor-box__block::after {
  position: absolute;
  content: "";
  bottom: 1.3333333333vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  background: url(images/common/arrow-green.png) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .b-anchor-box__block::after {
    bottom: min((0.78125vw), 10px);
    width: min((1.5625vw), 20px);
    height: min((1.5625vw), 20px);
  }
}
.b-anchor-box__block__text {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  min-height: 13.3333333333vw;
  margin-top: 5.3333333333vw;
  margin-bottom: 8vw;
  font-size: 3.7333333333vw;
  font-weight: 700;
  line-height: 180%;
  color: var(--color-main);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .b-anchor-box__block__text {
    min-height: min((4.6875vw), 60px);
    font-size: min((1.25vw), 16px);
    margin-top: min((1.5625vw), 20px);
    margin-bottom: min((3.125vw), 40px);
  }
}
.b-anchor-box__block__img {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* アンカーリンク(enjoyページ季節の楽しみ方のアンカーリンク) */
/* ------------------------------ */
.b-anchor-white {
  margin-top: 5.3333333333vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .b-anchor-white {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-top: min((2.34375vw), 30px);
    gap: min((0.78125vw), 10px);
  }
}
.b-anchor-white__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.1333333333vw;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 0.2666666667vw solid var(--color-main);
  background-color: var(--color-white);
  border-radius: 50px;
  padding: 2.6666666667vw 4vw;
  font-weight: 700;
  color: var(--color-main);
  position: relative;
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 768px) {
  .b-anchor-white__link {
    gap: min((0.625vw), 8px);
    font-size: min((1.25vw), 16px);
    padding: min((0.78125vw), 10px) min((1.171875vw), 15px);
    min-width: min((19.53125vw), 250px);
    border-width: min((0.078125vw), 1px);
  }
  .b-anchor-white__link:hover, .b-anchor-white__link:focus {
    background-color: var(--color-main);
    color: var(--color-white);
  }
  .b-anchor-white__link:hover::after, .b-anchor-white__link:focus::after {
    background: url(images/common/icon-arrow-white.svg) no-repeat center/cover;
    -webkit-transform: translateY(-50%) rotate(90deg);
            transform: translateY(-50%) rotate(90deg);
  }
}
.b-anchor-white__link::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 2.6666666667vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  background: url(images/common/arrow-green.png) no-repeat center/cover;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .b-anchor-white__link::after {
    right: min((0.78125vw), 10px);
    width: min((1.5625vw), 20px);
    height: min((1.5625vw), 20px);
  }
}
.b-anchor-white__link__en {
  font-size: 3.2vw;
  font-weight: 300;
}
@media screen and (min-width: 768px) {
  .b-anchor-white__link__en {
    font-size: min((0.9375vw), 12px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
.b-beige__label {
  background-color: var(--color-beige2);
  border-radius: 50px;
  padding: 2.6666666667vw;
  width: 100%;
  text-align: center;
  font-weight: 700;
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .b-beige__label {
    padding: min((0.78125vw), 10px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* 白バックボタン(周辺情報ページ) */
/* ------------------------------ */
.b-white__btn {
  display: block;
  background-color: var(--color-white);
  color: var(--color-main);
  border: 1px solid var(--color-main);
  border-radius: 50px;
  padding: 2.1333333333vw;
  text-align: center;
  font-size: 3.7333333333vw;
  font-weight: 500;
  margin-top: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-white__btn {
    margin-top: min((3.125vw), 40px);
    padding: min((0.9375vw), 12px);
    padding: min((0.625vw), 8px);
    font-size: min((1.25vw), 16px);
    cursor: pointer;
    border: min((0.078125vw), 1px) solid var(--color-main);
  }
  .b-white__btn:hover, .b-white__btn:focus {
    background-color: var(--color-main);
    color: var(--color-white);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* 季節の楽しみ方のパーツ */
/* ------------------------------ */
.b-dot-title__h3 {
  font-size: 6.4vw;
  font-weight: 700;
  color: var(--color-main);
  padding-left: 2.6666666667vw;
  position: relative;
  margin-top: 10.6666666667vw;
  margin-bottom: -4vw;
}
@media screen and (min-width: 768px) {
  .b-dot-title__h3 {
    font-size: min((2.5vw), 32px);
    padding-left: min((1.5625vw), 20px);
    position: relative;
    margin-top: min((3.125vw), 40px);
    margin-bottom: max((-1.171875vw), -15px);
  }
}
.b-dot-title__h3::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.6vw;
  height: 1.6vw;
  border-radius: 50%;
  background-color: var(--color-main);
}
@media screen and (min-width: 768px) {
  .b-dot-title__h3::before {
    width: min((0.625vw), 8px);
    height: min((0.625vw), 8px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/*  Card Article */
/* ------------------------------ */
.b-card-article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  height: 100%;
}
.b-card-article__img {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  width: 100%;
  height: 55.2vw;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 2.6666666667vw;
  overflow: hidden;
  margin: 0px 0px 2.6666666667vw;
}
.b-card-article__link {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.b-card-article__title {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  position: relative;
  font-size: 3.7333333333vw;
  font-weight: 700;
  line-height: 1.8;
  color: var(--color-dark);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.b-card-article__meta {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.3333333333vw;
  margin: 0px 0px 1.3333333333vw;
}
.b-card-article__meta__date {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-size: 3.7333333333vw;
}
.b-card-article__meta__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5333333333vw;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  height: 7.2vw;
  z-index: 2;
  overflow: hidden;
}
.b-card-article__meta__tags__item {
  max-width: 100%;
}
.b-card-article__meta__tags__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 7.2vw;
  max-width: 100%;
  padding: 0px 4vw;
  font-size: 3.2vw;
  font-weight: 700;
  color: var(--color-main);
  border: 0.2666666667vw solid var(--color-main);
  border-radius: 5.3333333333vw;
  background-color: var(--color-white);
}
.b-card-article__meta__tags__item a span {
  display: inline-block;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  max-width: 100%;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .b-card-article {
    padding: 0px 0px min((0.78125vw), 10px);
  }
  .b-card-article__img {
    position: relative;
    height: min((14.453125vw), 185px);
    margin: 0px 0px min((0.78125vw), 10px);
    border-radius: min((0.78125vw), 10px);
  }
  .b-card-article__img img {
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
  }
  .b-card-article__img::after {
    content: "";
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: transparent min((0.15625vw), 2px) solid;
    border-radius: min((0.78125vw), 10px);
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
  }
  .b-card-article__title {
    font-size: min((1.09375vw), 14px);
  }
  .b-card-article__meta {
    gap: min((0.390625vw), 5px);
    margin: 0px 0px min((0.390625vw), 5px);
  }
  .b-card-article__meta__date {
    font-size: min((1.09375vw), 14px);
  }
  .b-card-article__meta__tags {
    height: min((2.109375vw), 27px);
    gap: min((0.15625vw), 2px);
  }
  .b-card-article__meta__tags__item a {
    font-size: min((0.9375vw), 12px);
    height: min((2.109375vw), 27px);
    padding: 0px min((1.171875vw), 15px);
    border-width: min((0.078125vw), 1px);
    border-radius: min((1.5625vw), 20px);
  }
  .b-card-article__meta__tags__item a:hover, .b-card-article__meta__tags__item a:focus {
    background-color: var(--color-main);
    color: var(--color-white);
  }
  .b-card-article::after {
    content: "";
    position: absolute;
    bottom: 0px;
    left: 50%;
    height: min((0.15625vw), 2px);
    width: 0%;
    background-color: var(--color-main);
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .b-card-article:hover .b-card-article__img img, .b-card-article:focus .b-card-article__img img {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  .b-card-article:hover .b-card-article__img::after, .b-card-article:focus .b-card-article__img::after {
    border: var(--color-main) min((0.15625vw), 2px) solid;
  }
  .b-card-article:hover .b-card-article__title, .b-card-article:focus .b-card-article__title {
    color: var(--color-main);
  }
  .b-card-article:hover::after, .b-card-article:focus::after {
    width: 100%;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/*  List Article */
/* ------------------------------ */
.b-list-article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8vw;
}
.b-list-article--news {
  padding: 0 5.3333333333vw;
  margin-bottom: 8vw;
}
@media screen and (min-width: 768px) {
  .b-list-article {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: min((2.34375vw), 30px);
    max-width: min((78.125vw), 1000px);
    margin: 0 auto;
  }
  .b-list-article__item {
    width: calc((100% - min((4.6875vw), 60px)) / 3);
  }
  .b-list-article--news {
    padding: 0;
    margin-bottom: min((4.6875vw), 60px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* List FAQ */
/* ------------------------------ */
.b-list-faq {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5.3333333333vw;
}
.b-list-faq__item {
  padding: 2.6666666667vw 4.5333333333vw;
  background-color: var(--color-white);
  border-radius: 2.6666666667vw;
}
.b-list-faq__item__question, .b-list-faq__item__answer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.1333333333vw;
  font-size: 4.2666666667vw;
  line-height: 1.8;
}
.b-list-faq__item__question::before, .b-list-faq__item__answer::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 9.3333333333vw;
  height: 9.3333333333vw;
  background-size: contain;
  background-repeat: no-repeat;
}
.b-list-faq__item__question {
  font-weight: bold;
}
.b-list-faq__item__question::before {
  background-image: url(/wp/wp-content/themes/sankeien/images/common/icon-question.svg);
}
.b-list-faq__item__answer {
  margin-top: 0.5rem;
}
.b-list-faq__item__answer::before {
  background-image: url(/wp/wp-content/themes/sankeien/images/common/icon-answer.svg);
}
@media screen and (min-width: 768px) {
  .b-list-faq {
    gap: min((1.5625vw), 20px);
  }
  .b-list-faq__item {
    padding: min((0.78125vw), 10px) min((1.5625vw), 20px);
    border-radius: min((0.78125vw), 10px);
  }
  .b-list-faq__item__question, .b-list-faq__item__answer {
    font-size: min((1.40625vw), 18px);
  }
  .b-list-faq__item__question::before, .b-list-faq__item__answer::before {
    width: min((2.734375vw), 35px);
    height: min((2.734375vw), 35px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Pagination */
/* ------------------------------ */
.b-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2.6666666667vw;
  margin-top: 10.6666666667vw;
}
.b-pagination__item a,
.b-pagination__item span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 10.6666666667vw;
  height: 10.6666666667vw;
  font-size: 3.7333333333vw;
  font-weight: 700;
  color: var(--color-main);
  border: 0.2666666667vw solid var(--color-main);
  border-radius: 50%;
}
.b-pagination__item a.current,
.b-pagination__item span.current {
  background-color: var(--color-main);
  color: var(--color-white);
  pointer-events: none;
}
.b-pagination__item a.next, .b-pagination__item a.prev,
.b-pagination__item span.next,
.b-pagination__item span.prev {
  background: url("images/common/icon-arrow-green.svg") no-repeat center;
  background-size: 5.3333333333vw;
}
.b-pagination__item a.prev,
.b-pagination__item span.prev {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
@media screen and (min-width: 768px) {
  .b-pagination {
    gap: min((1.171875vw), 15px);
    margin-top: min((4.6875vw), 60px);
  }
  .b-pagination__item a,
  .b-pagination__item span {
    width: min((3.125vw), 40px);
    height: min((3.125vw), 40px);
    font-size: min((1.09375vw), 14px);
    border-width: min((0.078125vw), 1px);
  }
  .b-pagination__item a.next, .b-pagination__item a.prev,
  .b-pagination__item span.next,
  .b-pagination__item span.prev {
    background-size: min((1.5625vw), 20px);
  }
  .b-pagination__item a:hover {
    background-color: var(--color-main);
    color: var(--color-white);
  }
  .b-pagination__item a:hover.next, .b-pagination__item a:hover.prev {
    background-image: url("images/common/icon-arrow-white.svg");
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Article Header */
/* ------------------------------ */
.b-article-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0 0 10.6666666667vw;
  padding: 20vw 5.3333333333vw 0;
}
.b-article-header__title {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  margin: 1.3333333333vw 0 0;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 1.8;
}
.b-article-header__meta {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.3333333333vw;
  width: 100%;
}
.b-article-header__meta__date {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-size: 3.7333333333vw;
  margin: 0.8vw 0 0;
}
.b-article-header__meta__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.3333333333vw;
  overflow: hidden;
}
.b-article-header__meta__tags__item {
  max-width: 100%;
}
.b-article-header__meta__tags__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 4vw;
  max-width: 100%;
  height: 7.4666666667vw;
  background-color: var(--color-white);
  border: 0.2666666667vw solid var(--color-main);
  border-radius: 3.7333333333vw;
}
.b-article-header__meta__tags__item a span {
  display: inline-block;
  max-width: 100%;
  font-size: 3.2vw;
  font-weight: 700;
  color: var(--color-main);
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.b-article-header__eyecatch {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  margin: 5.3333333333vw 0 0;
}
.b-article-header__eyecatch img {
  width: 100%;
  height: auto;
  border-radius: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .b-article-header {
    max-width: min((74.21875vw), 950px);
    margin: 0 auto min((4.6875vw), 60px);
    padding: min((9.375vw), 120px) min((3.125vw), 40px) 0;
  }
  .b-article-header__title {
    font-size: min((2.1875vw), 28px);
    margin: min((0.78125vw), 10px) 0 0;
  }
  .b-article-header__meta {
    gap: min((0.78125vw), 10px);
  }
  .b-article-header__meta__date {
    font-size: min((1.09375vw), 14px);
    margin: min((0.234375vw), 3px) 0 0;
  }
  .b-article-header__meta__tags {
    gap: min((0.390625vw), 5px);
  }
  .b-article-header__meta__tags__item a {
    height: min((2.1875vw), 28px);
    padding: 0 min((1.171875vw), 15px);
    border: min((0.078125vw), 1px) solid var(--color-main);
    border-radius: min((1.09375vw), 14px);
  }
  .b-article-header__meta__tags__item a span {
    font-size: min((0.9375vw), 12px);
  }
  .b-article-header__meta__tags__item a:hover, .b-article-header__meta__tags__item a:focus {
    background-color: var(--color-main);
  }
  .b-article-header__meta__tags__item a:hover span, .b-article-header__meta__tags__item a:focus span {
    color: var(--color-white);
  }
  .b-article-header__eyecatch {
    margin: min((1.5625vw), 20px) 0 0;
  }
  .b-article-header__eyecatch img {
    border-radius: min((0.78125vw), 10px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Article Content */
/* ------------------------------ */
/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
.b-article-content {
  padding: 0px 5.3333333333vw 10.6666666667vw;
}
@media screen and (min-width: 768px) {
  .b-article-content {
    max-width: min((74.21875vw), 950px);
    margin: 0 auto;
    padding: 0 min((3.125vw), 40px) min((4.6875vw), 60px);
  }
}
.b-article-content h2 {
  margin: 0 0 5.3333333333vw;
  font-size: 5.3333333333vw;
  font-weight: 700;
  display: block;
  line-height: 1.8;
  --lh: 1.8em;
  --ink: .8em;
  padding: 0 0.2em;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0, var(--color-marker)), color-stop(0, transparent));
  background: linear-gradient(to bottom, transparent calc(var(--lh) - var(--ink)), var(--color-marker) 0 var(--lh), transparent 0);
  background-size: 100% var(--lh);
  background-repeat: repeat-y;
}
.b-article-content h3 {
  margin: 0 0 5.3333333333vw;
  padding: 0 0 2.1333333333vw;
  font-size: 4.8vw;
  font-weight: 700;
  border-bottom: 0.2666666667vw solid var(--color-yellow);
}
.b-article-content h4, .b-article-content h5, .b-article-content h6 {
  margin: 0 0 4vw;
  font-size: 4.2666666667vw;
  font-weight: 700;
}
.b-article-content p {
  font-size: 3.7333333333vw;
  line-height: 1.8;
  margin: 5.3333333333vw 0;
}
.b-article-content p strong {
  font-weight: 700;
}
.b-article-content p em {
  font-style: italic;
}
.b-article-content p a {
  color: var(--color-blue);
  font-weight: 700;
}
.b-article-content p a[target=_blank]::after {
  content: "";
  display: inline-block;
  width: 6.4vw;
  height: 6.4vw;
  background-image: url("./images/common/icon-external-link.svg");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
.b-article-content img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 5.3333333333vw auto;
  border-radius: 2.6666666667vw;
}
.b-article-content ul {
  margin: 5.3333333333vw 0;
  padding-left: 8vw;
  list-style: none;
}
.b-article-content ul li {
  position: relative;
  margin: 2.6666666667vw 0;
  font-size: 3.7333333333vw;
  line-height: 1.8;
}
.b-article-content ul li::before {
  content: "";
  position: absolute;
  top: 2.1333333333vw;
  left: -5.3333333333vw;
  width: 2.6666666667vw;
  height: 2.6666666667vw;
  background-color: var(--color-yellow);
  border-radius: 50%;
}
.b-article-content ol {
  margin: 5.3333333333vw 0;
  padding-left: 7.4666666667vw;
  list-style: decimal;
}
.b-article-content ol li {
  position: relative;
  margin: 2.6666666667vw 0;
  font-size: 3.7333333333vw;
  line-height: 1.8;
}
.b-article-content blockquote {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 5.3333333333vw 0;
  padding: 2.6666666667vw 3.7333333333vw 2.6666666667vw 2.6666666667vw;
  background-color: var(--color-white);
  border-left: 1.0666666667vw solid var(--color-yellow);
  font-size: 3.7333333333vw;
  line-height: 1.8;
}
.b-article-content blockquote::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 6.4vw;
  height: 6.4vw;
  background-image: url("./images/common/icon-quote.svg");
  background-size: contain;
  background-repeat: no-repeat;
}
.b-article-content blockquote p:first-child {
  margin-top: 0;
}
.b-article-content blockquote p:last-child {
  margin-bottom: 0;
}
.b-article-content table {
  width: 100%;
  margin: 5.3333333333vw 0;
  border-collapse: collapse;
  border-radius: 2.6666666667vw;
  font-size: 3.7333333333vw;
}
.b-article-content table th, .b-article-content table td {
  padding: 2.6666666667vw;
  text-align: left;
  vertical-align: top;
}
.b-article-content table th {
  border-bottom: 0.2666666667vw solid var(--color-white);
  border-right: 0.2666666667vw solid var(--color-white);
  background-color: var(--color-beige2);
  font-weight: 700;
}
.b-article-content table td {
  border-bottom: 0.2666666667vw solid var(--color-beige2);
  border-right: 0.2666666667vw solid var(--color-beige2);
  background-color: var(--color-white);
}
.b-article-content table tr:first-child th:first-child, .b-article-content table tr:first-child td:first-child {
  border-top-left-radius: 2.6666666667vw;
}
.b-article-content table tr:first-child th:last-child, .b-article-content table tr:first-child td:last-child {
  border-top-right-radius: 2.6666666667vw;
}
.b-article-content table tr:last-child th:first-child, .b-article-content table tr:last-child td:first-child {
  border-bottom-left-radius: 2.6666666667vw;
}
.b-article-content table tr:last-child th:last-child, .b-article-content table tr:last-child td:last-child {
  border-bottom-right-radius: 2.6666666667vw;
}
.b-article-content table tr:last-child th, .b-article-content table tr:last-child td {
  border-bottom: none;
}
.b-article-content table tr th:last-child, .b-article-content table tr td:last-child {
  border-right: none;
}
.b-article-content hr {
  border: none;
  border-top: 0.5333333333vw solid var(--color-beige2);
  margin: 8vw 0;
}
.b-article-content hr.u-clear {
  clear: both;
  border: none;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .b-article-content h2 {
    font-size: min((1.875vw), 24px);
    margin: 0 0 min((2.34375vw), 30px);
  }
  .b-article-content h3 {
    font-size: min((1.5625vw), 20px);
    margin: 0 0 min((2.34375vw), 30px);
    padding: 0 0 min((0.78125vw), 10px);
    border-width: min((0.078125vw), 1px);
  }
  .b-article-content h4, .b-article-content h5, .b-article-content h6 {
    font-size: min((1.40625vw), 18px);
    margin: 0 0 min((1.5625vw), 20px);
  }
  .b-article-content p {
    font-size: min((1.25vw), 16px);
    margin: min((1.5625vw), 20px) 0;
  }
  .b-article-content p a:hover, .b-article-content p a:focus {
    text-decoration: underline;
  }
  .b-article-content p a[target=_blank]::after {
    width: min((1.5625vw), 20px);
    height: min((1.5625vw), 20px);
  }
  .b-article-content img {
    border-radius: min((0.78125vw), 10px);
    margin: min((1.5625vw), 20px) auto;
  }
  .b-article-content img.alignleft {
    display: inline;
    float: left;
    margin: 0 min((1.5625vw), 20px) min((1.5625vw), 20px) 0;
  }
  .b-article-content img.alignright {
    display: inline;
    float: right;
    margin: 0 0 min((1.5625vw), 20px) min((1.5625vw), 20px);
  }
  .b-article-content ul {
    margin: min((1.5625vw), 20px) 0;
    padding-left: min((3.125vw), 40px);
  }
  .b-article-content ul li {
    font-size: min((1.25vw), 16px);
    margin: min((1.171875vw), 15px) 0;
  }
  .b-article-content ul li::before {
    top: min((0.78125vw), 10px);
    left: max((-1.953125vw), -25px);
    width: min((0.9375vw), 12px);
    height: min((0.9375vw), 12px);
  }
  .b-article-content ol {
    margin: min((1.5625vw), 20px) 0;
    padding-left: min((2.96875vw), 38px);
  }
  .b-article-content ol li {
    font-size: min((1.25vw), 16px);
    margin: min((1.171875vw), 15px) 0;
  }
  .b-article-content blockquote {
    margin: min((2.34375vw), 30px) 0;
    padding: min((1.5625vw), 20px) min((2.34375vw), 30px) min((1.5625vw), 20px) min((1.5625vw), 20px);
    font-size: min((1.25vw), 16px);
    border-width: min((0.3125vw), 4px);
  }
  .b-article-content blockquote::before {
    width: min((2.5vw), 32px);
    height: min((2.5vw), 32px);
  }
  .b-article-content table {
    font-size: min((1.25vw), 16px);
    margin: min((2.34375vw), 30px) 0;
  }
  .b-article-content table th, .b-article-content table td {
    padding: min((1.171875vw), 15px);
    border-width: min((0.078125vw), 1px);
  }
  .b-article-content table tr:first-child th:first-child, .b-article-content table tr:first-child td:first-child {
    border-top-left-radius: min((0.78125vw), 10px);
  }
  .b-article-content table tr:first-child th:last-child, .b-article-content table tr:first-child td:last-child {
    border-top-right-radius: min((0.78125vw), 10px);
  }
  .b-article-content table tr:last-child th:first-child, .b-article-content table tr:last-child td:first-child {
    border-bottom-left-radius: min((0.78125vw), 10px);
  }
  .b-article-content table tr:last-child th:last-child, .b-article-content table tr:last-child td:last-child {
    border-bottom-right-radius: min((0.78125vw), 10px);
  }
  .b-article-content hr {
    border-top: min((0.15625vw), 2px) solid var(--color-beige2);
    margin: min((3.125vw), 40px) 0;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Breadcrumbs */
/* ------------------------------ */
.b-breadcrumbs {
  margin: 2.6666666667vw 0 0;
  padding: 0px 5.3333333333vw;
}
.b-breadcrumbs__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.5333333333vw 0;
  font-size: 3.2vw;
  padding: 0;
  list-style: none;
}
.b-breadcrumbs__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.b-breadcrumbs__list li::after {
  content: ">";
  display: inline-block;
  margin: 0 1.3333333333vw;
  color: var(--color-text-light);
}
.b-breadcrumbs__list li:last-child::after {
  content: "";
  margin: 0;
}
.b-breadcrumbs__list li a {
  font-weight: bold;
  color: var(--color-blue);
}
.b-breadcrumbs--article {
  padding: 0px;
  margin: 0 0 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .b-breadcrumbs {
    max-width: min((74.21875vw), 950px);
    margin: min((1.5625vw), 20px) auto 0;
    padding: 0 min((3.125vw), 40px);
  }
  .b-breadcrumbs__list {
    font-size: min((0.9375vw), 12px);
    margin: 0 0 min((1.5625vw), 20px);
  }
  .b-breadcrumbs__list li::after {
    margin: 0 min((0.390625vw), 5px);
  }
  .b-breadcrumbs--article {
    margin: 0 0 min((1.5625vw), 20px);
    padding: 0;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Not Found */
/* ------------------------------ */
.b-not-found {
  padding: 100px 5.3333333333vw;
}
.b-not-found__title {
  width: 74.6666666667vw;
  margin: 0 auto 5.3333333333vw;
}
.b-not-found__title__img {
  width: 100%;
}
.b-not-found__text {
  font-size: 4.2666666667vw;
  font-weight: 700;
  text-align: center;
  margin: 5.3333333333vw auto;
}
@media screen and (min-width: 768px) {
  .b-not-found {
    max-width: min((74.21875vw), 950px);
    margin: min((3.125vw), 40px) auto;
    padding: min((14.0625vw), 180px) min((0vw), 0px);
  }
  .b-not-found__title {
    width: min((29.296875vw), 375px);
    margin: 0 auto min((1.5625vw), 20px);
  }
  .b-not-found__text {
    font-size: min((1.25vw), 16px);
    margin: min((1.5625vw), 20px) auto;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Button */
/* ------------------------------ */
.b-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 10.6666666667vw;
  width: 74.6666666667vw;
  margin: 5.3333333333vw 0;
  font-size: 3.7333333333vw;
  font-weight: 700;
  color: var(--color-white);
  background-color: var(--color-main);
  border-radius: 5.3333333333vw;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.b-btn--center {
  margin-left: auto !important;
  margin-right: auto !important;
}
.b-btn--arrow-right {
  width: 100%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 4vw;
  color: var(--color-main);
  background-color: var(--color-white);
  border: 0.2666666667vw solid var(--color-main);
}
.b-btn--arrow-right::after {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  background: url("images/common/icon-arrow-green.svg") no-repeat center;
  background-size: contain;
}
.b-btn--reservation {
  gap: 1.3333333333vw;
  width: 100%;
  height: 16vw;
  margin: 5.3333333333vw auto;
  background-color: var(--color-yellow);
  color: var(--color-main);
  border-radius: 8vw;
}
.b-btn--reservation::after {
  content: "";
  display: block;
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  background-image: url("images/common/icon-arrow-green.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.b-btn--phone {
  gap: 1.3333333333vw;
  font-size: 5.3333333333vw;
  letter-spacing: 0.05em;
  width: 100%;
}
.b-btn--phone::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 6.4vw;
  height: 6.4vw;
  background: url("images/common/icon-phone-white.svg") no-repeat center;
  background-size: contain;
}
.b-btn--white {
  background-color: var(--color-white);
  color: var(--color-main);
  border: 0.2666666667vw solid var(--color-main);
}
@media screen and (min-width: 768px) {
  .b-btn {
    height: min((3.125vw), 40px);
    width: min((21.875vw), 280px);
    margin: min((1.5625vw), 20px) 0;
    font-size: min((1.09375vw), 14px);
    border-radius: min((1.5625vw), 20px);
    border: min((0.078125vw), 1px) solid var(--color-main);
  }
  .b-btn:hover, .b-btn:focus {
    background-color: var(--color-white);
    color: var(--color-main);
  }
  .b-btn--arrow-right {
    width: min((31.25vw), 400px);
    padding: 0 min((1.171875vw), 15px);
  }
  .b-btn--arrow-right::after {
    width: min((1.5625vw), 20px);
    height: min((1.5625vw), 20px);
  }
  .b-btn--arrow-right:hover, .b-btn--arrow-right:focus {
    background-color: var(--color-main);
    color: var(--color-white);
  }
  .b-btn--arrow-right:hover::after, .b-btn--arrow-right:focus::after {
    background-image: url(images/common/icon-arrow-white.svg);
  }
  .b-btn--reservation {
    width: min((31.25vw), 400px);
    height: min((4.6875vw), 60px);
    margin: min((1.5625vw), 20px) auto;
    border-radius: min((2.34375vw), 30px);
    border-color: var(--color-yellow);
  }
  .b-btn--reservation::after {
    width: min((1.5625vw), 20px);
    height: min((1.5625vw), 20px);
  }
  .b-btn--phone {
    gap: min((0.390625vw), 5px);
    font-size: min((1.875vw), 24px);
    width: min((23.4375vw), 300px);
  }
  .b-btn--phone::before {
    width: min((1.875vw), 24px);
    height: min((1.875vw), 24px);
  }
  .b-btn--phone:hover::before, .b-btn--phone:focus::before {
    background-image: url(images/common/icon-phone-green.svg);
  }
  .b-btn--white:hover, .b-btn--white:focus {
    background-color: var(--color-main);
    color: var(--color-white);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Data Table */
/* ------------------------------ */
.b-data-table {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 2.6666666667vw 0;
}
.b-data-table__title, .b-data-table__description {
  width: 50%;
  padding: 1.3333333333vw 0;
  font-size: 3.7333333333vw;
  line-height: 1.8;
  border-bottom: 0.2666666667vw dashed var(--color-gray);
}
.b-data-table__title small, .b-data-table__description small {
  font-size: 3.2vw;
}
.b-data-table__title b, .b-data-table__description b {
  font-weight: 700;
}
.b-data-table__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 2.6666666667vw;
  font-weight: 700;
}
.b-data-table--advance-reservation .b-data-table__title {
  width: 55%;
}
.b-data-table--advance-reservation .b-data-table__description {
  width: 45%;
}
@media screen and (min-width: 768px) {
  .b-data-table {
    margin: min((1.5625vw), 20px) 0;
  }
  .b-data-table__title, .b-data-table__description {
    font-size: min((1.25vw), 16px);
    padding: min((0.78125vw), 10px) 0;
    border-width: min((0.078125vw), 1px);
  }
  .b-data-table__title small, .b-data-table__description small {
    font-size: min((1.09375vw), 14px);
  }
  .b-data-table__title {
    padding-right: min((1.171875vw), 15px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Available Calendar */
/* ------------------------------ */
.b-available-calendar {
  margin: 5.3333333333vw 0;
}
.b-available-calendar > table {
  width: 100%;
}
.b-available-calendar > table > tbody > tr:nth-child(2) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.6666666667vw;
}
.b-available-calendar > table > tbody > tr:nth-child(2) > td {
  width: 100%;
}
.b-available-calendar > table > tbody > tr:nth-child(2) > td > table {
  width: 100%;
}
.b-available-calendar .available-notes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.3333333333vw;
  font-size: 3.2vw;
  margin: 2.6666666667vw 0 0;
}
@media screen and (min-width: 768px) {
  .b-available-calendar {
    margin: min((3.125vw), 40px) 0;
  }
  .b-available-calendar > table > tbody > tr:nth-child(2) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: min((1.5625vw), 20px);
  }
  .b-available-calendar .available-notes {
    font-size: min((1.09375vw), 14px);
    margin: min((1.5625vw), 20px) auto 0;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Float Menu */
/* ------------------------------ */
.b-float-menu {
  position: fixed;
  bottom: 0px;
  right: 0px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100vw;
  z-index: 1000;
}
.b-float-menu__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.3333333333vw;
  height: 14.4vw;
  width: 50%;
  font-size: 3.7333333333vw;
  font-weight: 700;
  color: var(--color-main);
  background-color: var(--color-yellow);
}
.b-float-menu__link::before {
  content: "";
  display: block;
  width: 6.4vw;
  height: 6.4vw;
  background-image: url("images/common/icon-calendar.svg");
  background-size: contain;
  background-repeat: no-repeat;
}
.b-float-menu__link--reserve {
  background-color: var(--color-light-yellow);
}
@media screen and (min-width: 768px) {
  .b-float-menu__link {
    display: none;
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Form */
/* ------------------------------ */
.b-form {
  width: calc(100% - 10.6666666667vw);
  margin: 8vw auto;
  padding: 5.3333333333vw;
  background-color: var(--color-white);
}
.b-form__lead {
  font-size: 4.2666666667vw;
  font-weight: 700;
  margin: 0 0 5.3333333333vw;
}
.b-form__desc {
  font-size: 3.7333333333vw;
  margin: 2.6666666667vw 0;
}
.b-form__desc--attention {
  color: var(--color-red);
  font-weight: 700;
}
.b-form__section:not(:last-child) {
  margin: 0 0 10.6666666667vw;
}
.b-form__section__heading {
  font-size: 4.8vw;
  font-weight: 700;
  color: var(--color-main);
  margin: 0px 0 2.6666666667vw 0;
  padding: 0 0 1.3333333333vw 0;
  border-bottom: 0.2666666667vw solid var(--color-main);
}
.b-form__section__note {
  display: block;
  font-size: 3.7333333333vw;
  margin: 0 0 2.6666666667vw 0;
}
.b-form__section__item:not(:last-child) {
  margin: 0 0 8vw;
}
.b-form__section__item__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.6666666667vw;
  font-size: 4.2666666667vw;
  font-weight: 700;
  margin: 0 0 2.6666666667vw;
}
.b-form__section__item__label--required::before {
  content: "必須";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 4.8vw;
  font-size: 2.6666666667vw;
  font-weight: 700;
  color: var(--color-red);
  margin: 0.5333333333vw 0 0 0;
  padding: 0 2.6666666667vw;
  border: 0.2666666667vw solid var(--color-red);
  border-radius: 2.4vw;
}
.b-form__section__item__note {
  display: block;
  font-size: 3.2vw;
  margin: 1.3333333333vw 0;
}
.b-form__section__item__data {
  font-size: 3.7333333333vw;
  margin: 0 0 5.3333333333vw;
}
.b-form__selector {
  margin: 0 0 8vw;
}
.b-form__selector__txt {
  font-size: 3.7333333333vw;
  font-weight: 700;
  margin: 0 0 2.6666666667vw;
}
.b-form__selector__item {
  display: block;
  margin: 1.3333333333vw 0 0;
}
.b-form__selector__item__input {
  visibility: hidden;
  position: absolute;
}
.b-form__selector__item__input:checked + .b-form__selector__item__label {
  font-weight: 700;
  color: var(--color-main);
  background-color: var(--color-light-green);
}
.b-form__selector__item__input:checked + .b-form__selector__item__label::before {
  background-image: url("./images/common/icon-radio-on.svg");
}
.b-form__selector__item__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.6666666667vw;
  font-size: 3.7333333333vw;
  border: 0.2666666667vw solid var(--color-main);
  padding: 2.6666666667vw;
  border-radius: 8vw;
  cursor: pointer;
}
.b-form__selector__item__label::before {
  content: "";
  display: block;
  width: 6.4vw;
  height: 6.4vw;
  background-image: url("./images/common/icon-radio-off.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.b-form .wpcf7 form.invalid .wpcf7-response-output {
  font-size: 4.2666666667vw;
  font-weight: bold;
  border-color: var(--color-red);
  margin: 5.3333333333vw 0 10.6666666667vw;
}
@media screen and (min-width: 768px) {
  .b-form {
    max-width: min((74.21875vw), 950px);
    margin: min((3.125vw), 40px) auto;
    padding: min((4.6875vw), 60px) min((6.25vw), 80px);
  }
  .b-form__lead {
    font-size: min((1.5625vw), 20px);
    margin: 0 0 min((2.34375vw), 30px);
  }
  .b-form__desc {
    font-size: min((1.25vw), 16px);
    margin: min((1.171875vw), 15px) 0;
  }
  .b-form__desc--attention {
    font-size: min((1.25vw), 16px);
  }
  .b-form .b-form__section:not(:last-child) {
    margin: 0 0 min((4.6875vw), 60px);
  }
  .b-form .b-form__section__heading {
    font-size: min((1.875vw), 24px);
    margin: 0 0 min((1.171875vw), 15px) 0;
    padding: 0 0 min((0.625vw), 8px) 0;
    border-width: min((0.15625vw), 2px);
  }
  .b-form .b-form__section__note {
    font-size: min((1.25vw), 16px);
    margin: 0 0 min((1.171875vw), 15px) 0;
  }
  .b-form .b-form__section__item:not(:last-child) {
    margin: 0 0 min((3.125vw), 40px);
  }
  .b-form .b-form__section__item__label {
    gap: min((0.78125vw), 10px);
    font-size: min((1.40625vw), 18px);
    margin: 0 0 min((1.171875vw), 15px) 0;
  }
  .b-form .b-form__section__item__label--required::before {
    height: min((1.71875vw), 22px);
    font-size: min((0.9375vw), 12px);
    margin: min((0.234375vw), 3px) 0 0 0;
    padding: 0 min((0.9375vw), 12px);
    border-width: min((0.078125vw), 1px);
    border-radius: min((0.859375vw), 11px);
  }
  .b-form .b-form__section__item__note {
    font-size: min((1.09375vw), 14px);
    margin: min((0.625vw), 8px) 0;
  }
  .b-form .b-form__section__item__data {
    font-size: min((1.25vw), 16px);
    margin: 0 0 min((2.34375vw), 30px);
  }
  .b-form__selector {
    margin: 0 0 min((4.6875vw), 60px);
  }
  .b-form__selector__txt {
    font-size: min((1.40625vw), 18px);
    margin: 0 0 min((1.171875vw), 15px);
  }
  .b-form__selector__item {
    margin: min((0.625vw), 8px) 0 0;
  }
  .b-form__selector__item__label {
    gap: min((0.78125vw), 10px);
    font-size: min((1.40625vw), 18px);
    padding: min((0.78125vw), 10px);
    border-width: min((0.078125vw), 1px);
  }
  .b-form__selector__item__label::before {
    width: min((2.03125vw), 26px);
    height: min((2.03125vw), 26px);
  }
  .b-form .wpcf7 form.invalid .wpcf7-response-output {
    font-size: min((1.40625vw), 18px);
    margin: min((2.34375vw), 30px) 0 min((3.125vw), 40px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Form Input */
/* ------------------------------ */
.b-form__section__item input[type=text],
.b-form__section__item input[type=email],
.b-form__section__item input[type=tel],
.b-form__section__item input[type=date],
.b-form__section__item select,
.b-form__section__item textarea {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background-color: var(--color-light-gray);
  padding: 2.6666666667vw;
  font-size: 3.7333333333vw;
  width: 100%;
  max-width: 100%;
}
.b-form__section__item select {
  background-image: url("./images/common/icon-arrow-gray.svg");
  background-repeat: no-repeat;
  background-position: right 2.6666666667vw center;
  background-size: 5.3333333333vw 5.3333333333vw;
}
.b-form__section__item .wpcf7-radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.6666666667vw;
}
.b-form__section__item .wpcf7-radio .wpcf7-list-item {
  margin: 0px;
}
.b-form__section__item .wpcf7-radio .wpcf7-list-item input[type=radio] {
  visibility: hidden;
  position: absolute;
}
.b-form__section__item .wpcf7-radio .wpcf7-list-item input[type=radio]:checked + .wpcf7-list-item-label::before {
  background-image: url("./images/common/icon-radio-on.svg");
}
.b-form__section__item .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.6666666667vw;
  font-size: 3.7333333333vw;
}
.b-form__section__item .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label::before {
  content: "";
  display: block;
  width: 6.4vw;
  height: 6.4vw;
  background-image: url("./images/common/icon-radio-off.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (min-width: 768px) {
  .b-form__section__item input[type=text],
  .b-form__section__item input[type=email],
  .b-form__section__item input[type=tel],
  .b-form__section__item input[type=date],
  .b-form__section__item select,
  .b-form__section__item textarea {
    padding: min((0.78125vw), 10px);
    font-size: min((1.25vw), 16px);
  }
  .b-form__section__item select {
    background-position: right min((0.78125vw), 10px) center;
    background-size: min((1.5625vw), 20px) min((1.5625vw), 20px);
  }
  .b-form__section__item .wpcf7-radio {
    gap: min((0.78125vw), 10px);
  }
  .b-form__section__item .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label {
    font-size: min((1.25vw), 16px);
    gap: min((0.78125vw), 10px);
  }
  .b-form__section__item .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label::before {
    width: min((1.875vw), 24px);
    height: min((1.875vw), 24px);
  }
}

.b-form input[type=submit],
.b-form input[type=button] {
  display: block;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: 10.6666666667vw;
  width: 100%;
  font-size: 3.7333333333vw;
  font-weight: 700;
  color: var(--color-white);
  background-color: var(--color-main);
  border: 0.2666666667vw solid var(--color-main);
  border-radius: 5.3333333333vw;
  margin: 5.3333333333vw 0 0;
}
.b-form input[type=button] {
  background-color: var(--color-white);
  color: var(--color-main);
}
@media screen and (min-width: 768px) {
  .b-form input[type=submit],
  .b-form input[type=button] {
    display: block;
    height: min((3.90625vw), 50px);
    width: min((23.4375vw), 300px);
    font-size: min((1.25vw), 16px);
    border-width: min((0.078125vw), 1px);
    border-radius: min((1.953125vw), 25px);
    margin: min((2.34375vw), 30px) auto 0;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .b-form input[type=submit]:hover, .b-form input[type=submit]:focus,
  .b-form input[type=button]:hover,
  .b-form input[type=button]:focus {
    background-color: var(--color-light-green);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Reserve Complete */
/* ------------------------------ */
.b-reserve-complete {
  text-align: center;
  padding: 21.3333333333vw 5.3333333333vw 26.6666666667vw;
}
.b-reserve-complete .b-reserve-complete__heading {
  font-size: 6.4vw;
  font-weight: bold;
  color: var(--color-main);
  margin-bottom: 5.3333333333vw;
}
.b-reserve-complete .b-reserve-complete__txt {
  font-size: 3.7333333333vw;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .b-reserve-complete {
    padding: min((7.8125vw), 100px) min((1.5625vw), 20px);
  }
  .b-reserve-complete .b-reserve-complete__heading {
    font-size: min((2.5vw), 32px);
    margin-bottom: min((2.34375vw), 30px);
  }
  .b-reserve-complete .b-reserve-complete__txt {
    font-size: min((1.25vw), 16px);
  }
}

/* ------------------------------ */
/* General Styles */
/* ------------------------------ */
/* ------------------------------ */
/* Weather Widget */
/* ------------------------------ */
.b-weather-widget {
  position: absolute;
  bottom: 2.6666666667vw;
  right: 2.6666666667vw;
  z-index: 10;
}