@charset "UTF-8";
/*
Theme Name:延羽の湯 鶴橋店 2026年10月 PHP8対応
Theme URI:
Description:
Version: 1.0
Author: Nobuo Akiyama
Author URI: http://www.tmc-labo.com/
Tags:
*/
.row {
  --bs-gutter-x: 15px;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(var(--bs-gutter-y) * -1);
  margin-right: calc(var(--bs-gutter-x) / -2);
  margin-left: calc(var(--bs-gutter-x) / -2);
}
.row.g-0, .row.gy-0 {
  --bs-gutter-y: 0;
}
.row.g-0, .row.gx-0 {
  --bs-gutter-x: 0;
}

@media screen and (max-width: 480px) {
  .pc-only,
  .only-pc {
    display: none;
  }
}

@media screen and (min-width: 481px) {
  .sp-only,
  .only-sp {
    display: none;
  }
}

@font-face {
  font-family: "FontAwesome";
  font-style: normal;
  src: url(webfonts/fontawesome-pro-light-300.woff2) format("woff2"), url(webfonts/fontawesome-pro-light-300.woff) format("woff");
}
.slide-button {
  position: relative;
  z-index: 1;
  display: inline-block;
  padding: 0.5em 4em;
  border: 2px solid #333;
  font-weight: 400;
  text-align: center;
  text-decoration: none;
  transition: 0.3s;
}
.slide-button:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  content: "";
  background: #333;
  transition: transform 0.3s;
  transform-origin: right top;
  transform: scale(0, 1);
}
.slide-button:hover {
  color: #fff;
}
.slide-button:hover:before {
  transform-origin: left top;
  transform: scale(1, 1);
}

.button-wrap-general {
  padding: 30px 0;
  text-align: center;
}
@media screen and (min-width: 481px) {
  .button-wrap-general {
    padding: 60px 0;
  }
}
.button-wrap-general.button-v {
  display: flex;
  justify-content: space-around;
}
.button-wrap-general.button-h {
  display: flex;
  justify-content: flex-start;
}
.button-wrap-general + .button-wrap-general {
  padding-top: 0;
  margin-top: -15px;
}
@media screen and (min-width: 482px) {
  .button-wrap-general + .button-wrap-general {
    margin-top: -30px;
  }
}

.button-for-gmap-access {
  padding-top: 0;
}

.button-wrap-left {
  padding-top: 30px;
  padding-bottom: 0px;
}
.button-wrap-left .masters-button {
  margin-left: 0;
  margin-right: auto;
}

@media screen and (min-width: 1201px) {
  .two-col-buttons {
    display: flex;
    justify-content: space-between;
  }
  .two-col-buttons .button-wrap-general + .button-wrap-general {
    margin-top: 0 !important;
    padding-top: 60px !important;
  }
}
.no-padding-bottom {
  padding-bottom: 0;
}

.no-padding-top {
  padding-top: 0;
}

@media screen and (min-width: 481px) {
  .xs-only, .only-xs {
    display: none;
  }
}

@media screen and (max-width: 480px) {
  .hidden-xs {
    display: none;
  }
}

a {
  text-decoration: none;
}

.no-gutters {
  margin: 0;
  padding: 0;
}

.no-gutters　 > .col,
.no-gutters　 > [class*=col-] {
  margin: 0;
  padding: 0;
}

p:first-child,
ul:first-child,
ol:first-child {
  margin-top: 0;
}

p:last-child,
ul:last-child,
ol:last-child {
  margin-bottom: 0;
}

.masters-button {
  letter-spacing: 0.15rem;
  font-size: 13px;
  background-color: transparent;
  padding: 10px 40px;
  border: 1px solid #fff;
  display: inline-block;
  position: relative;
  -webkit-transition: background-color 0.3s linear;
  min-width: 200px;
  text-align: center;
  line-height: 1.8;
  color: #fff;
}
.masters-button:hover {
  cursor: pointer;
}
.masters-button.pdf:after {
  content: "\f1c1";
  font-family: "FontAwesome";
  display: inline;
  border: none;
  animation: none;
  transform: none;
  background-color: transparent;
  width: 1em;
  height: 1em;
  line-height: 1;
  font-size: 18px;
  right: 0.5em;
  top: 50%;
  margin-top: -0.5em;
}
.masters-button:hover {
  background-color: rgb(63, 37, 38);
  color: #fff;
  -webkit-transition: background-color 0.3s linear;
}
.masters-button.bgwhite {
  border: 1px solid rgb(63, 37, 38);
  color: rgb(63, 37, 38);
}
.masters-button.bgwhite:hover {
  color: #fff;
  background-color: rgb(63, 37, 38);
}

@keyframes arrow01 {
  0% {
    transform: scale(0, 1);
  }
  30% {
    transform: scale(0, 1);
  }
  40% {
    transform: scale(1, 1);
  }
  85% {
    transform: scale(1, 1);
    opacity: 1;
  }
  90% {
    transform: scale(1, 1);
    opacity: 0;
  }
  100% {
    transform: scale(1, 1);
    opacity: 0;
  }
}
@media screen and (min-width: 481px) {
  .sticky-inner {
    position: sticky;
    top: 100px;
  }
}

@media screen and (max-width: 480px) {
  main {
    overflow: hidden;
  }
}

body {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  background-color: #1a1a1a;
  color: #fff;
}
body p {
  line-height: 2;
  letter-spacing: 0.05rem;
}
body a {
  text-decoration: none;
  color: rgba(63, 37, 38, 0.7);
}
body a:hover {
  text-decoration: none;
  color: rgba(63, 37, 38, 0.9);
}
body ul, body ol {
  margin-bottom: 0;
  padding-left: 0;
}
body ul li, body ol li {
  list-style-type: none;
  letter-spacing: 0.15rem;
}
body ul li dl dt, body ol li dl dt {
  letter-spacing: 0.1rem;
}
body h1, body h2, body h3 {
  letter-spacing: 0.2rem;
}
body h1 {
  font-size: 21px;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 481px) {
  body h1 {
    font-size: 28px;
  }
}
body h2 {
  font-size: 21px;
  letter-spacing: 0.05em;
}
body h3 {
  font-size: 18px;
  letter-spacing: 0.05em;
}
body h4 {
  font-size: 18px;
  font-weight: normal;
}
body .container {
  max-width: 1140px;
}
body .hCenter {
  text-align: center;
  margin-bottom: 1em;
  letter-spacing: 0.2rem;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  body .hCenter {
    margin-bottom: 4em;
  }
  body .hCenter:before {
    content: "";
    width: 160px;
    display: block;
    height: 1px;
    background-color: rgb(226, 154, 39);
    bottom: -60px;
    left: calc(50% - 80px);
    position: absolute;
    z-index: 1;
  }
}
body .hLeft {
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  letter-spacing: 0.2rem;
}
@media screen and (min-width: 481px) {
  body .hLeft {
    margin-bottom: 4em;
  }
  body .hLeft:before {
    background-color: rgb(226, 154, 39);
    content: "";
    display: block;
    height: 2px;
    width: 160px;
    left: 0;
    bottom: -60px;
    position: absolute;
    z-index: 1;
  }
}
body p.lead {
  margin-bottom: 60px;
  margin-top: -30px;
  text-align: center;
  font-size: 18px;
  color: rgba(247, 252, 254, 0.5);
  font-feature-settings: "palt";
  color: rgba(63, 37, 38, 0.9);
}
body p.lead.left {
  text-align: left;
}
@media screen and (min-width: 481px) {
  body p.lead.left {
    white-space: nowrap;
  }
}
body p + h1, body p + h2, body p + h3 {
  margin-top: 3rem;
}
body p.lead {
  margin-bottom: 30px;
  margin-top: 0px;
  font-size: 14px;
  line-height: 1.5;
}
body table.default {
  width: 100%;
}
body table.default thead {
  border-right: 1px solid rgb(63, 37, 38);
}
body table.default thead th, body table.default thead td {
  font-size: 14px;
  background-color: rgb(63, 37, 38);
  color: #fff;
  padding: 0.5em;
  border-left: 1px solid rgb(63, 37, 38);
}
body table.default thead th.price, body table.default thead td.price {
  border-left: 1px solid #fff;
}
body table.default tbody tr th, body table.default tbody tr td {
  font-size: 13px;
  background-color: #fff;
  padding: 0.5em;
  border: rgb(63, 37, 38) 1px solid;
}
body table.default tbody tr td {
  text-align: right;
}
body table.default tbody tr td.marge {
  width: 20em;
}
body table.default tbody tr th {
  font-weight: normal;
}
body table.default.no-line {
  border-top: 1px solid #ccc;
}
body table.default.no-line thead {
  border: none !important;
}
body table.default.no-line thead th, body table.default.no-line thead td {
  border: none !important;
}
body table.default.no-line tbody {
  border: none !important;
}
body table.default.no-line tbody th, body table.default.no-line tbody td {
  border: none !important;
}
@media screen and (min-width: 481px) {
  body p.lead {
    margin-bottom: 60px;
    margin-top: 0px;
    text-align: center;
    font-size: 18px;
    color: rgb(0, 22, 7);
    line-height: 2.5;
    font-feature-settings: "palt";
  }
  body h1 {
    font-size: 36px;
  }
  body h2 {
    font-size: 28px;
  }
  body h3 {
    font-size: 28px;
  }
  body h4 {
    font-size: 18px;
  }
  body table.default:last-child {
    margin-bottom: 0;
  }
  body table.default tbody tr th, body table.default tbody tr td, body table.default thead tr th, body table.default thead tr td {
    font-size: 16px !important;
  }
  body table.default thead th.price {
    width: 10em;
    text-align: center;
  }
}
@media screen and (max-width: 480px) {
  body p {
    font-size: 13px;
  }
}

nav#fix-menu {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 100vw;
  height: 45px;
  z-index: 100;
}
nav#fix-menu ul {
  display: flex;
  justify-content: center;
  padding: 0;
  margin: 0;
}
nav#fix-menu ul li {
  display: block;
  font-size: 12px;
  width: 50%;
}
nav#fix-menu ul li a {
  color: #fff;
  background-color: rgba(0, 0, 0, 0.7);
}
nav#fix-menu ul li:first-child a {
  background-color: rgba(63, 37, 38, 0.7);
}
nav#fix-menu ul li:hover {
  background-color: rgba(247, 252, 254, 0.9);
  color: rgb(63, 37, 38);
  -webkit-transition: background-color 0.3s linear;
}
@media screen and (max-width: 480px) {
  nav#fix-menu ul {
    height: 100%;
  }
  nav#fix-menu ul li a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
  }
}
@media screen and (min-width: 481px) {
  nav#fix-menu {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    position: fixed;
    right: 0;
    top: 50%;
    z-index: 100;
    height: auto;
    width: auto;
    transform: translateY(-50%);
  }
  nav#fix-menu ul {
    display: flex;
    padding-left: 0;
    padding: 0;
    justify-content: center;
    margin: 0;
  }
  nav#fix-menu ul li {
    display: block;
    font-size: 15px;
    display: block;
    width: 100%;
  }
  nav#fix-menu ul li a {
    color: #fff;
    padding: 10px;
    display: block;
    background-color: rgba(0, 0, 0, 0.7);
  }
  nav#fix-menu ul li:first-child a {
    background-color: rgba(63, 37, 38, 0.7);
  }
  nav#fix-menu ul li:hover {
    background-color: rgba(247, 252, 254, 0.9);
    color: rgb(63, 37, 38);
    -webkit-transition: background-color 0.3s linear;
  }
}

footer {
  padding-top: 60px;
  background-image: url("img/bg_ftr_img.png");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-color: #000;
  color: #fff;
}
footer div.footer-inner {
  width: 100%;
  max-width: 1170px;
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
}
footer #footer-window {
  max-width: 1170px;
  margin: 0 auto;
}
footer #footer-window div.footer-image {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-around;
}
footer #footer-window div.footer-image div.footer-sns {
  width: 320px;
  text-align: center;
}
footer #footer-window div.footer-image div.footer-sns img {
  width: 115px;
}
footer #footer-window div.footer-image div.footer-sns div.logos {
  width: 115px;
  margin: 30px auto;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
footer #footer-window div.footer-image div.footer-sns div.logos a {
  color: #fff;
}
footer #footer-window div.footer-image div.footer-sns p {
  font-size: 11px;
}
footer #footer-window div.footer-image dl.footer-info {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  font-size: 14px;
  width: calc(100% - 320px);
  margin-left: 0px;
  margin-top: 15px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.02em;
}
footer #footer-window div.footer-image dl.footer-info dt {
  font-weight: normal;
  width: 6em;
}
footer #footer-window div.footer-image dl.footer-info dd {
  width: calc(100% - 6em);
}
footer div.list-wrap {
  width: 100%;
  max-width: 970px;
  margin: 0 0 0 auto;
  margin-top: -60px;
}
footer div.list-wrap ul.footer-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  width: 100%;
  font-size: 13px;
  margin-left: auto;
  margin-right: 0;
  width: 70%;
}
footer div.list-wrap ul.footer-list li {
  display: inline-block;
  font-size: 13px;
  margin-top: 10px;
  margin-left: 2em;
}
footer div.list-wrap ul.footer-list li a {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: rgba(247, 252, 254, 0.5);
}
footer div.nobutag-logo {
  width: 100%;
  padding: 60px 0 30px;
}
footer nav.fotter-legal {
  padding-bottom: 15px;
  width: 50%;
  text-align: left;
  font-size: 11px;
}
footer nav.fotter-legal a {
  color: rgba(247, 252, 254, 0.5);
}
footer nav.fotter-legal ul li {
  display: inline-block;
  margin-right: 3em;
}
footer div.copy {
  width: 50%;
  text-align: right;
  font-size: 11px;
  align-items: end;
}
footer .scroll-wrap {
  display: none;
}
footer .footer-wrap {
  background-color: rgb(0, 76, 27);
  width: 100%;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
}
footer .footer-wrap a {
  color: #fff;
}
footer .footer-wrap .footer-copy {
  order: 3;
  width: 100%;
  background-color: #fff;
  text-align: center;
  padding: 15px 15px 60px;
  color: rgba(0, 22, 7, 0.6);
}
footer .footer-wrap .footer-copy span {
  font-size: 11px;
}
footer .footer-wrap .footer-menu {
  order: 2;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
footer .footer-wrap .footer-menu hr {
  display: none;
}
footer .footer-wrap .footer-menu ul {
  width: 50%;
}
footer .footer-wrap .footer-menu ul.footer-sub-menu {
  border-left: 1px solid rgba(247, 252, 254, 0.5);
}
footer .footer-wrap .footer-menu ul.footer-sub-menu.ms3 {
  width: 100%;
  padding-top: 10px;
  border-left: none;
}
footer .footer-wrap .footer-menu ul.footer-sub-menu.ms3 li {
  display: block;
  border: none;
  padding-left: 15px;
}
footer .footer-wrap .footer-menu ul.footer-sub-menu.ms3 li a {
  padding: 0;
  margin-bottom: 10px;
  font-size: 11px;
}
footer .footer-wrap .footer-menu ul.footer-club-menu.ms1 li:nth-child(5),
footer .footer-wrap .footer-menu ul.footer-club-menu.ms1 li:nth-child(7),
footer .footer-wrap .footer-menu ul.footer-club-menu.ms1 li:nth-child(6) {
  width: 100vw;
}
@media screen and (max-width: 480px) {
  footer .footer-wrap .footer-menu ul.footer-club-menu.ms2 {
    border-left: 1px solid rgba(247, 252, 254, 0.5);
  }
}
footer .footer-wrap .footer-menu ul li {
  display: block;
  font-size: 13px;
  border-bottom: 1px solid rgba(247, 252, 254, 0.5);
}
footer .footer-wrap .footer-menu ul li a {
  padding: 10px 15px;
  display: block;
}
footer .footer-wrap .footer-info {
  order: 1;
  width: 100%;
  border-bottom: 1px solid rgba(247, 252, 254, 0.5);
  padding: 30px 15px 0;
}
footer .footer-wrap .footer-info dl {
  margin-bottom: 0px;
}
footer .footer-wrap .footer-info dl dt {
  margin-bottom: 15px;
}
footer .footer-wrap .footer-info dl dt img.footer-logo {
  width: 100%;
}
footer .footer-wrap .footer-info dl dd.addresstel {
  line-height: 2;
  margin-bottom: 30px;
}
footer .footer-wrap .footer-info dl dd.sns {
  background-color: #fff;
  color: rgba(0, 22, 7, 0.6);
  margin: 0 -15px;
  padding: 15px;
  text-align: center;
  display: flex;
  justify-content: space-around;
}
footer .footer-wrap .footer-info dl dd.sns i {
  font-size: 32px;
}
footer .footer-wrap .footer-info dl dd.sns a {
  color: rgba(0, 22, 7, 0.6);
}
footer .footer-wrap .footer-info dl dd.sns span {
  display: none;
}
@media screen and (min-width: 801px) {
  footer .scroll-wrap {
    top: 0;
    display: block;
    order: 1;
    width: 90px;
    position: relative;
  }
  footer .footer-wrap {
    align-items: end;
    margin-top: 60px;
    order: 2;
    padding-top: 0;
    width: calc(100% - 90px);
  }
  footer .footer-wrap .footer-info {
    width: 38.2%;
  }
  footer .footer-wrap.for-ms {
    align-items: unset;
  }
  footer .footer-wrap .footer-info {
    border-bottom: none;
    padding-right: 60px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    padding-left: 0;
    padding-top: 30px;
    padding-bottom: 60px;
    order: 2;
    width: min(100vw - 670px, 38%);
  }
}
@media screen and (min-width: 801px) and (min-width: 1250px) {
  footer .footer-wrap .footer-info {
    padding-right: 0;
  }
}
@media screen and (min-width: 801px) {
  footer .footer-wrap .footer-info dl {
    margin: 0 auto;
    width: min(100%, 320px);
  }
  footer .footer-wrap .footer-info dl dt {
    margin-bottom: 30px;
  }
  footer .footer-wrap .footer-info dl dt img.footer-logo {
    width: min(100%, 320px);
  }
  footer .footer-wrap .footer-info dl dd {
    padding-left: 15%;
    font-size: 13px;
    margin-bottom: 15px;
  }
  footer .footer-wrap .footer-info dl dd i {
    margin-right: 0.5em;
  }
  footer .footer-wrap .footer-info dl dd.addresstel {
    margin-bottom: 0px;
  }
  footer .footer-wrap .footer-info dl dd.sns {
    text-align: left;
    display: block;
    background-color: transparent;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    color: #fff;
    padding-left: 15%;
  }
  footer .footer-wrap .footer-info dl dd.sns i {
    font-size: 21px;
  }
  footer .footer-wrap .footer-info dl dd.sns a {
    color: #fff;
  }
  footer .footer-wrap .footer-info dl dd.sns span {
    display: inline;
  }
}
@media screen and (min-width: 801px) {
  footer .footer-wrap .footer-menu {
    padding: 60px;
    align-items: end;
    order: 1;
    width: clamp(570px, 61.8%, 700px);
  }
  footer .footer-wrap .footer-menu hr {
    display: block;
    width: 100%;
    margin-top: 0;
    margin-bottom: 30px;
    border-bottom: 1px solid rgba(247, 252, 254, 0.5);
  }
  footer .footer-wrap .footer-menu ul.footer-sub-menu {
    font-size: 11px;
    width: 100%;
    border: none;
    display: flex;
    justify-content: space-between;
  }
  footer .footer-wrap .footer-menu ul.footer-sub-menu li {
    letter-spacing: 0;
    display: inline-block;
    padding: 0;
    border: none;
  }
  footer .footer-wrap .footer-menu ul.footer-sub-menu li a {
    padding: 0;
    font-size: 11px;
  }
  footer .footer-wrap .footer-menu ul.footer-garden-menu,
  footer .footer-wrap .footer-menu ul.footer-club-menu {
    font-size: 14px;
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    margin-bottom: 15px;
    justify-content: space-between;
  }
  footer .footer-wrap .footer-menu ul.footer-garden-menu li,
  footer .footer-wrap .footer-menu ul.footer-club-menu li {
    display: inline-block;
    padding: 0;
    width: 50%;
    margin-bottom: 15px;
    border: none;
  }
}
@media screen and (min-width: 801px) and (min-width: 1250px) {
  footer .footer-wrap .footer-menu ul.footer-garden-menu li,
  footer .footer-wrap .footer-menu ul.footer-club-menu li {
    width: 33.333%;
  }
}
@media screen and (min-width: 801px) {
  footer .footer-wrap .footer-menu ul.footer-garden-menu li a,
  footer .footer-wrap .footer-menu ul.footer-club-menu li a {
    padding: 0;
    font-size: 14px;
  }
}
@media screen and (min-width: 801px) {
  footer .footer-wrap .footer-menu ul.footer-club-menu {
    width: 50%;
  }
  footer .footer-wrap .footer-menu ul.footer-club-menu li {
    width: 100%;
  }
}
@media screen and (min-width: 801px) {
  footer .footer-wrap .footer-copy {
    padding: 15px;
  }
}
@media screen and (max-width: 480px) {
  footer {
    background-size: cover;
    background-position: 88% 0;
  }
  footer .nobutag-logo {
    text-align: center;
  }
  footer div.copy {
    width: 100%;
    padding: 15px;
    color: rgba(247, 252, 254, 0.9);
    text-align: center;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 11px;
  }
  footer nav.fotter-legal {
    width: 100%;
  }
  footer nav.fotter-legal ul {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 12px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
  }
  footer nav.fotter-legal ul li {
    margin: 0;
    text-align: center;
    letter-spacing: 0;
    width: 30%;
  }
  footer .footer-inner #footer-window div.footer-image div.footer-sns {
    width: 100%;
    margin-bottom: 15px;
  }
  footer .footer-inner #footer-window div.footer-image div.footer-sns div.logos i {
    font-size: 21px;
  }
  footer .footer-inner #footer-window div.footer-image div.footer-sns p {
    font-size: 14px;
    border-bottom: 1px solid rgba(247, 252, 254, 0.5);
    padding-bottom: 30px;
    margin: 0 30px 30px;
  }
}
@media screen and (max-width: 480px) and (min-width: 481px) {
  footer .footer-inner #footer-window div.footer-image div.footer-sns p {
    width: 220px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 480px) {
  footer .footer-inner #footer-window div.footer-image dl.footer-info {
    margin: 0 auto 30px;
    padding: 15px 2em;
    width: 100%;
  }
  footer .footer-inner #footer-window div.footer-image dl.footer-info dt {
    width: 100%;
    margin-bottom: 5px;
    font-weight: bold;
  }
  footer .footer-inner #footer-window div.footer-image dl.footer-info dd {
    margin-bottom: 15px;
    color: rgba(247, 252, 254, 0.9);
    width: 100%;
  }
  footer .footer-inner #footer-window div.footer-image dl.footer-info dd a {
    color: #fff;
  }
}
@media screen and (max-width: 480px) {
  footer .footer-inner div.list-wrap {
    display: flex;
    flex-wrap: wrap;
  }
  footer .footer-inner div.list-wrap ul.footer-list {
    padding: 60px 0 0;
    width: 50vw;
    display: block;
  }
  footer .footer-inner div.list-wrap ul.footer-list li {
    text-align: left;
    margin-bottom: 10px;
  }
  footer .footer-inner div.list-wrap ul.footer-list.s-2 li {
    width: 100%;
    margin-left: 0;
  }
}

.footer-link {
  background-color: rgba(63, 37, 38, 0.1);
  padding: 30px 0;
}
.footer-link ul {
  display: flex;
  height: auto;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  margin: 0 auto;
}
.footer-link ul li {
  padding: 15px 0;
  width: min(100%, 280px);
}
.footer-link ul li img {
  width: 100%;
}
@media screen and (min-width: 801px) {
  .footer-link {
    padding: 60px;
  }
  .footer-link ul {
    flex-direction: initial;
    max-width: 660px;
    justify-content: space-around;
  }
  .footer-link ul li {
    padding: 0;
    margin-bottom: 0;
  }
}

header.site-header {
  width: 100%;
  position: fixed;
  z-index: 31;
  color: #fff;
}
header.site-header .header-inner {
  height: 120px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  position: relative;
  width: 100%;
  padding-right: 180px;
  padding-left: 30px;
  margin-left: auto;
  margin-right: 0;
  -webkit-transition: background-color 0.3s linear;
  transition: all 0.3s;
}
header.site-header .header-inner .gnav-wrap {
  order: 2;
  display: flex;
  margin-right: 60px;
  flex-direction: column;
}
header.site-header .header-inner .gnav-wrap nav#header-sub-menu {
  order: 1;
  display: flex;
  height: 100%;
  min-width: 600px;
  font-size: 11px;
  margin-top: -30px;
}
header.site-header .header-inner .gnav-wrap nav#header-sub-menu ul {
  width: 100%;
  display: flex;
  justify-content: flex-end;
}
header.site-header .header-inner .gnav-wrap nav#header-sub-menu ul li {
  margin-left: 2em;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  white-space: nowrap;
  text-align: center;
  line-height: 1;
  display: inline-block;
}
header.site-header .header-inner .gnav-wrap nav#header-sub-menu ul li a {
  color: rgba(247, 252, 254, 0.9);
  letter-spacing: 0.05em;
}
header.site-header .header-inner .gnav-wrap nav#header-sub-menu ul li a.tel-header i {
  margin-right: 8px;
}
header.site-header .header-inner .gnav-wrap nav#global-menu {
  min-width: 600px;
  order: 2;
  display: flex;
  height: 100%;
  margin-top: 20px;
}
header.site-header .header-inner .gnav-wrap nav#global-menu ul {
  width: 100%;
  display: flex;
  justify-content: flex-end;
}
header.site-header .header-inner .gnav-wrap nav#global-menu ul li {
  letter-spacing: 0.05em;
  margin-left: 2em;
  white-space: nowrap;
  text-align: center;
  line-height: 1;
  display: inline-block;
}
header.site-header .header-inner .gnav-wrap nav#global-menu ul li a {
  font-size: 18px;
  color: #fff;
  letter-spacing: 0.05em;
}
header.site-header .header-inner .gnav-wrap nav#global-menu ul li a.tel-header i {
  margin-right: 8px;
}
@media screen and (max-width: 916px) {
  header.site-header .header-inner .gnav-wrap nav#global-menu ul {
    display: none;
  }
}
@media screen and (max-width: 1100px) {
  header.site-header .header-inner .gnav-wrap nav#global-menu ul li a {
    letter-spacing: 0.05em;
    padding: 0 7.5px;
  }
}
header.site-header .header-inner .header-title {
  margin-right: auto;
  order: 1;
  display: flex;
  align-items: center;
  line-height: 1;
  height: 100%;
}
header.site-header .header-inner .header-title img {
  vertical-align: baseline;
  height: 45px;
  vertical-align: bottom;
  display: none;
}
header.site-header .header-inner .header-title svg {
  height: 40px;
  width: auto;
}
header.site-header .header-inner .header-title svg .a {
  transition: all 0.3s;
}
@media screen and (max-width: 480px) {
  header.site-header .header-inner {
    padding: 0 15px;
  }
}
header.site-header.no-top .header-inner .header-title img {
  display: block;
}
header.site-header.menu-on {
  pointer-events: none;
  background-color: transparent !important;
  z-index: 10000;
}
header.site-header.menu-on .header-inner {
  background-color: transparent !important;
  backdrop-filter: blur(0px) !important;
}
header.site-header.menu-on .header-inner .header-title img {
  display: block;
}
header.site-header.menu-on .header-inner .header-title svg {
  height: 40px;
  width: auto;
}
header.site-header.menu-on .header-inner .header-title svg .a {
  fill: #fff !important;
  transition: all 0.3s;
}
header.site-header.menu-on .header-inner nav#global-menu {
  display: none;
}
header.site-header.menu-on .header-inner nav#header-sub-menu {
  display: none;
  pointer-events: auto !important;
  margin-left: auto !important;
}
header.site-header.menu-on .header-inner nav#header-sub-menu ul li a {
  color: #fff !important;
}
header.site-header.menu-on .header-inner nav#header-sub-menu ul li a.masters-button {
  border-color: #fff !important;
}
header.site-header.menu-on .header-inner nav#header-sub-menu ul li a.masters-button:hover {
  background-color: #fff !important;
  color: #fff !important;
}
header.site-header #sns-link {
  display: none;
}
@media screen and (min-width: 1110px) {
  header.site-header #sns-link {
    display: block;
    position: absolute;
    right: 350px;
  }
  header.site-header #sns-link a {
    margin-left: 10px;
    color: #fff;
  }
}
header.site-header.no-top .header-inner, header.site-header.hide .header-inner {
  background-color: rgba(26, 26, 26, 0.9);
  backdrop-filter: blur(5px);
  -webkit-transition: background-color 0.3s linear;
  transition: all 0.3s;
  height: 52px;
}
header.site-header.no-top .header-inner .header-title img, header.site-header.hide .header-inner .header-title img {
  display: block;
}
header.site-header.no-top .header-inner nav#global-menu ul li a, header.site-header.hide .header-inner nav#global-menu ul li a {
  color: rgba(247, 252, 254, 0.9) !important;
}
header.site-header.no-top .header-inner div.gnav-wrap nav#header-sub-menu, header.site-header.hide .header-inner div.gnav-wrap nav#header-sub-menu {
  display: none;
}
header.site-header.no-top .header-inner div.gnav-wrap nav#global-menu, header.site-header.hide .header-inner div.gnav-wrap nav#global-menu {
  margin-top: 0;
}
header.site-header.no-top .header-inner .header-title svg, header.site-header.hide .header-inner .header-title svg {
  height: 40px;
  width: auto;
}
header.site-header.no-top .header-inner .header-title svg .a, header.site-header.hide .header-inner .header-title svg .a {
  fill: rgb(63, 37, 38);
  transition: all 0.3s;
}
@media screen and (min-width: 1110px) {
  header.site-header.no-top .header-inner #sns-link a, header.site-header.hide .header-inner #sns-link a {
    color: rgb(63, 37, 38);
  }
}
@media screen and (max-width: 480px) {
  header.site-header .header-inner {
    position: relative;
    height: 52px;
  }
  header.site-header .header-inner .header-title svg, header.site-header .header-inner .header-title img {
    height: 30px !important;
  }
  header.site-header .header-inner nav#header-sub-menu {
    width: 40px;
    height: 60px;
    position: absolute;
    right: 0;
    top: 0;
    padding-right: 0;
  }
  header.site-header .header-inner nav#header-sub-menu ul {
    width: 40px;
    height: 100%;
  }
  header.site-header .header-inner nav#header-sub-menu ul li {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  header.site-header .header-inner nav#header-sub-menu ul li span {
    display: none;
  }
  header.site-header .header-inner nav#header-sub-menu ul li:last-child {
    display: none;
  }
}

.garden-header nav#garden-nav {
  display: none;
}
.garden-header .header-inner {
  height: 60px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  position: relative;
}
.garden-header .header-inner h1 {
  width: min(100vw - 60px, 240px);
  margin: 0 auto 0 15px;
  display: flex;
  align-items: center;
}
.garden-header .header-inner h1 img {
  width: 100%;
}
.garden-header .header-inner .contact-block {
  position: absolute;
  right: 10px;
  padding-top: 15px;
}
.garden-header .header-inner .contact-block span.tel i {
  font-size: 32px;
}
.garden-header .header-inner .contact-block span.tel span {
  display: none;
}
.garden-header .header-inner .contact-block span.hour {
  display: none;
}
@media screen and (min-width: 801px) {
  .garden-header .header-inner {
    height: 135px;
  }
  .garden-header .header-inner h1 {
    width: 100%;
    justify-content: center;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    height: 80px;
    margin: 0 auto;
  }
  .garden-header .header-inner h1 img {
    height: 40px;
  }
  .garden-header .header-inner .contact-block {
    display: block;
    position: absolute;
    right: 0px;
    height: 80px;
    top: 0;
    padding: 5px;
    align-items: center;
    width: clamp(240px, 20%, 360px);
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    padding-right: 15px;
  }
}
@media screen and (min-width: 801px) and (min-width: 481px) and (max-width: 814px) {
  .garden-header .header-inner .contact-block {
    display: none;
  }
}
@media screen and (min-width: 801px) {
  .garden-header .header-inner .contact-block span.tel {
    display: block;
    line-height: 1;
    font-size: 21px;
    font-weight: bold;
  }
  .garden-header .header-inner .contact-block span.tel i {
    font-size: 18px;
  }
  .garden-header .header-inner .contact-block span.tel span {
    display: inline;
  }
}
@media screen and (min-width: 801px) {
  .garden-header .header-inner .contact-block span.hour {
    margin-left: 30px;
    display: block;
    line-height: 1.3;
    font-size: 11px;
  }
}
@media screen and (min-width: 801px) {
  .garden-header nav#garden-nav {
    background-color: rgb(63, 37, 38);
    width: 100%;
    margin: 0 auto;
    display: block;
  }
  .garden-header nav#garden-nav ul {
    max-width: 960px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
  }
  .garden-header nav#garden-nav ul li {
    width: 14.2857142857%;
    text-align: center;
  }
  .garden-header nav#garden-nav ul li a {
    color: #fff;
    display: block;
    padding: 20px;
    line-height: 1;
    font-size: 16px;
    position: relative;
  }
  .garden-header nav#garden-nav ul li a:after {
    border-bottom: solid 2px #fff;
    bottom: 0;
    position: absolute;
    content: "";
    display: block;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    width: 0;
    left: 0;
  }
  .garden-header nav#garden-nav ul li a:hover {
    cursor: pointer;
    background-color: rgb(0, 76, 27);
    color: #fff;
    -webkit-transition: background-color 0.3s linear;
  }
  .garden-header nav#garden-nav ul li a:hover:after {
    contain: "";
    width: 100%;
  }
  .garden-header nav#garden-nav ul li.current a {
    cursor: pointer;
    background-color: rgb(0, 76, 27);
    color: #fff;
    -webkit-transition: background-color 0.3s linear;
  }
  .garden-header nav#garden-nav ul li.current a:after {
    contain: "";
    width: 100%;
  }
  .garden-header nav#garden-nav ul li:first-child.current {
    background-color: inherit;
  }
  .garden-header nav#garden-nav ul li:first-child.current:after {
    contain: none;
  }
}
@media screen and (min-width: 801px) {
  .garden-header.hide {
    position: fixed;
    top: -80px;
    left: 0;
    z-index: 10;
    width: 100vw;
  }
  .garden-header.hide nav#garden-nav {
    display: block;
    background-color: rgba(63, 37, 38, 0.9);
    backdrop-filter: blur(5px);
  }
  .garden-header.hide .header-inner {
    height: 55px;
  }
}

dl.spec {
  margin-top: 30px;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
}
@media screen and (max-width: 480px) {
  dl.spec {
    max-width: none;
  }
}
dl.spec.long {
  max-width: none;
}
dl.spec dt {
  line-height: 1;
  font-weight: normal;
  font-size: 14px;
  margin: 0;
  padding: 15px 30px;
  border-right: 1px solid #ccc;
  margin: 0;
  min-width: 9em;
  text-align: right;
}
dl.spec.moreheight dt {
  padding: 30px;
}
dl.spec dd {
  line-height: 1;
  margin: 0;
  padding-left: 30px;
  padding-right: 30px;
  font-size: 18px;
  vertical-align: bottom;
}
dl.spec dd span {
  display: block;
  font-size: 80%;
  padding-top: 5px;
}
@media screen and (max-width: 480px) {
  dl.spec dt {
    width: 30%;
    border-right: none;
    padding: 0 15px 0 0;
    min-width: auto;
  }
  dl.spec dd {
    width: 70%;
    border-left: 1px solid #ccc;
    padding: 15px 0 15px 15px;
  }
}

.note {
  font-size: 85%;
  opacity: 0.9;
  letter-spacing: 0;
  line-height: 1.5;
}

.title-area {
  padding-top: 60px;
}
.title-area .title-wrap {
  padding-top: 57vw;
  background-size: contain;
  background-repeat: no-repeat;
  background-color: #333;
}
.title-area .title-wrap .title-area-inner {
  padding-bottom: 15px;
}
.title-area .title-wrap .title-area-inner .container {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.title-area .title-wrap .title-area-inner .container nav#bread {
  order: 1;
  line-height: 1;
  position: static;
  margin-bottom: 15px;
}
.title-area .title-wrap .title-area-inner .container nav#bread ul {
  display: flex;
  line-height: 1;
  align-items: center;
}
.title-area .title-wrap .title-area-inner .container nav#bread ul li {
  line-height: 1;
  letter-spacing: 0;
  font-size: 11px;
  display: inline-block;
  color: rgba(63, 37, 38, 0.7);
}
.title-area .title-wrap .title-area-inner .container nav#bread ul li a {
  line-height: 1;
  padding: 0 10px 0 0;
  display: inline-block;
  color: rgba(63, 37, 38, 0.7);
}
.title-area .title-wrap .title-area-inner .container nav#bread ul li a:hover {
  color: rgb(164, 194, 165);
  -webkit-transition: background-color 0.3s linear;
}
.title-area .title-wrap .title-area-inner .container nav#bread ul li:after {
  content: ">";
  padding-right: 10px;
}
.title-area .title-wrap .title-area-inner .container nav#bread ul li:last-child:after {
  content: "";
}
.title-area .title-wrap .title-area-inner .container h1 {
  order: 2;
  width: 100%;
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .title-area .title-wrap .title-area-inner .container h1 {
    margin-bottom: 2em;
  }
  .title-area .title-wrap .title-area-inner .container h1:before {
    display: none;
  }
  .title-area .title-wrap .title-area-inner .container h1:after {
    display: none;
  }
}
.title-area .title-wrap .title-area-inner .container p.description {
  order: 3;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
.title-area .title-wrap nav#bread ul {
  padding-top: 15px;
  padding-bottom: 0px;
  display: flex;
  margin-bottom: 30px;
  justify-content: flex-end;
}
.title-area .title-wrap nav#bread ul li {
  color: rgba(247, 252, 254, 0.5);
  display: inline-block;
  font-size: 11px;
}
.title-area .title-wrap nav#bread ul li:before {
  content: "\f054";
  margin-right: 10px;
  margin-left: 10px;
  font-family: "FontAwesome";
  font-weight: 900;
}
.title-area .title-wrap nav#bread ul li:first-child:before {
  content: "";
}
.title-area .title-wrap nav#bread ul li a {
  color: rgba(247, 252, 254, 0.5);
}
@media screen and (min-width: 481px) {
  .title-area {
    position: relative;
    padding-top: 80px;
  }
  .title-area .title-wrap {
    padding-top: 0;
    background-position: center center;
    background-size: cover;
  }
  .title-area .title-wrap .title-area-inner {
    height: auto;
  }
  .title-area .title-wrap .title-area-inner .container {
    z-index: 1;
    position: relative;
    padding: 120px 0;
    max-width: 970px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .title-area .title-wrap .title-area-inner .container.page-facility {
    height: min(100vh - 80px, 700px);
  }
  .title-area .title-wrap .title-area-inner .container h1 {
    color: #fff;
    width: 100%;
    margin-bottom: 0;
  }
  .title-area .title-wrap .title-area-inner .container h1 + p.description {
    width: min(75%, 690px);
    margin-top: 30px;
    margin-bottom: 0;
    font-size: 16px;
    line-height: 2.5;
    color: #fff;
    letter-spacing: 0.05em;
  }
  .title-area .title-wrap .title-area-inner .container nav#bread {
    line-height: 1;
    position: absolute;
    right: 0;
    transform: translate(0%, 90%);
    bottom: 0;
    background-color: rgb(63, 37, 38);
  }
  .title-area .title-wrap .title-area-inner .container nav#bread aside.animation-scroll {
    right: 30px;
    bottom: -85px;
  }
  .title-area .title-wrap .title-area-inner .container nav#bread aside.animation-scroll span.bar {
    background-color: rgb(63, 37, 38);
  }
  .title-area .title-wrap .title-area-inner .container nav#bread ul {
    padding-right: 35px;
  }
  .title-area .title-wrap .title-area-inner .container nav#bread ul li {
    color: #fff;
    font-size: 11px;
  }
  .title-area .title-wrap .title-area-inner .container nav#bread ul li:after {
    padding-right: 0;
  }
  .title-area .title-wrap .title-area-inner .container nav#bread ul li a {
    padding: 10px 15px;
    color: #fff;
  }
  .title-area .title-wrap .title-area-inner .container nav#bread ul li a:hover {
    color: rgb(164, 194, 165);
    background-color: rgb(0, 76, 27);
  }
  .title-area .title-wrap .title-area-inner .container nav#bread ul li span {
    padding: 10px 15px;
  }
}

.pageBox {
  padding: 30px 0;
}
.pageBox.regular-page .container {
  max-width: 970px;
}
.pageBox#pageNav {
  background-color: #1a1a1a;
  background-image: url(img/bg_top.png);
  background-position: center top;
  background-repeat: no-repeat;
}
.pageBox#restaurant span.yen {
  font-size: 11px;
  padding-left: 2px;
}
.pageBox#restaurant .all-menu-wrap {
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .pageBox#restaurant .all-menu-wrap nav#menu-list ul li {
    font-size: 14px;
    padding: 5px 0;
    display: block;
    width: 100%;
  }
  .pageBox#restaurant .all-menu-wrap nav#menu-list ul li a {
    display: block;
    position: relative;
    width: 100%;
  }
  .pageBox#restaurant .all-menu-wrap nav#menu-list ul li a:after {
    content: "▼";
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-0.5em);
    line-height: 1;
  }
}
@media screen and (min-width: 481px) {
  .pageBox#restaurant .all-menu-wrap nav#menu-list {
    position: sticky;
    top: 80px;
    z-index: 10;
    width: 100%;
  }
  .pageBox#restaurant .all-menu-wrap nav#menu-list ul {
    background-color: rgba(247, 252, 254, 0.9);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    position: sticky;
    padding: 15px 0;
    top: 100px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
  }
  .pageBox#restaurant .all-menu-wrap nav#menu-list ul li {
    display: inline-block;
  }
  .pageBox#restaurant .all-menu-wrap nav#menu-list ul li a {
    display: block;
  }
}
@media screen and (max-width: 480px) {
  .pageBox#restaurant .menu-wrap {
    margin-left: -15px;
    margin-right: -15px;
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 15px;
  }
  .pageBox#restaurant .menu-wrap#menu-4 {
    background-color: rgb(241, 242, 235);
  }
}
.pageBox#restaurant .menu-wrap#menu-drink .row .drinklists {
  margin-bottom: 30px;
}
.pageBox#restaurant .menu-wrap#menu-drink .row .drinklists h4 {
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  font-size: 18px;
}
@media screen and (min-width: 481px) {
  .pageBox#restaurant .menu-wrap#menu-drink .row .drinklists h4 {
    margin-bottom: 2em;
  }
  .pageBox#restaurant .menu-wrap#menu-drink .row .drinklists h4:before {
    display: none;
  }
  .pageBox#restaurant .menu-wrap#menu-drink .row .drinklists h4:after {
    display: none;
  }
}
.pageBox#restaurant .menu-wrap#menu-drink .row dl.drink-list {
  display: flex;
  flex-wrap: wrap;
}
.pageBox#restaurant .menu-wrap#menu-drink .row dl.drink-list dt {
  font-size: 14px;
  padding: 5px 0;
  width: calc(100% - 5em);
  font-weight: normal;
  position: relative;
}
.pageBox#restaurant .menu-wrap#menu-drink .row dl.drink-list dt span {
  background-color: #fff;
  padding-right: 10px;
}
.pageBox#restaurant .menu-wrap#menu-drink .row dl.drink-list dt:after {
  z-index: -1;
  content: "";
  border-top: dotted 1px #ccc;
  height: 1px;
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 100%;
}
.pageBox#restaurant .menu-wrap#menu-drink .row dl.drink-list dd {
  padding: 5px 0;
  margin-bottom: 0;
  font-size: 14px;
  width: 5em;
  text-align: right;
}
.pageBox#restaurant .menu-wrap .menu-inner {
  padding-top: 30px;
  padding-bottom: 0;
}
@media screen and (max-width: 480px) {
  .pageBox#restaurant .menu-wrap .menu-inner .row {
    justify-content: flex-start !important;
  }
}
.pageBox#restaurant .menu-wrap .menu-inner h3 {
  text-align: center;
  margin-bottom: 1em;
  letter-spacing: 0.2rem;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .pageBox#restaurant .menu-wrap .menu-inner h3 {
    margin-bottom: 4em;
  }
  .pageBox#restaurant .menu-wrap .menu-inner h3:before {
    content: "";
    width: 160px;
    display: block;
    height: 1px;
    background-color: rgb(226, 154, 39);
    bottom: -60px;
    left: calc(50% - 80px);
    position: absolute;
    z-index: 1;
  }
}
.pageBox#restaurant .menu-wrap .menu-inner .menu-detail {
  margin-bottom: 15px;
  position: relative;
}
.pageBox#restaurant .menu-wrap .menu-inner .menu-detail figure {
  margin-bottom: 5px;
}
.pageBox#restaurant .menu-wrap .menu-inner .menu-detail figure img {
  width: 100%;
  vertical-align: bottom;
}
.pageBox#restaurant .menu-wrap .menu-inner .menu-detail dl {
  position: relative;
  width: 100%;
  margin-bottom: 0;
}
.pageBox#restaurant .menu-wrap .menu-inner .menu-detail dl dt {
  padding-bottom: 8px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.3;
  letter-spacing: 0;
}
.pageBox#restaurant .menu-wrap .menu-inner .menu-detail dl dt span {
  display: block;
  font-size: 11px;
  color: rgba(63, 37, 38, 0.7);
}
.pageBox#restaurant .menu-wrap .menu-inner .menu-detail dl dd.supp {
  margin-bottom: 0;
  font-size: 9px;
  padding-top: 4px;
}
.pageBox#restaurant .menu-wrap .menu-inner .menu-detail dl dd.price {
  margin-bottom: 0;
  border-top: 1px dotted #ccc;
  padding: 8px 0;
  border-bottom: 1px dotted #ccc;
  font-size: 14px;
}
.pageBox#restaurant .menu-wrap .menu-inner .menu-detail dl dd.price .adlunch {
  font-size: 11px;
  color: rgb(63, 37, 38);
  display: block;
  margin-left: auto;
}
.pageBox#restaurant .restaurant-lead h2 {
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .pageBox#restaurant .restaurant-lead h2 {
    margin-bottom: 2em;
  }
  .pageBox#restaurant .restaurant-lead h2:before {
    display: none;
  }
  .pageBox#restaurant .restaurant-lead h2:after {
    display: none;
  }
}
.pageBox#restaurant .restaurant-lead h3 {
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .pageBox#restaurant .restaurant-lead h3 {
    margin-bottom: 2em;
  }
  .pageBox#restaurant .restaurant-lead h3:before {
    display: none;
  }
  .pageBox#restaurant .restaurant-lead h3:after {
    display: none;
  }
}
.pageBox#restaurant .restaurant-lead .lunch-notice {
  border: 1px solid rgb(226, 154, 39);
  padding: 15px;
}
.pageBox#restaurant .restaurant-lead .lunch-notice p {
  margin-bottom: 0;
}
.pageBox#restaurant .restaurant-lead .lunch-notice p.notice-title {
  color: rgb(226, 154, 39);
  font-size: 16px;
}
@media screen and (min-width: 481px) {
  .pageBox#restaurant .all-menu-wrap {
    margin-top: 60px;
  }
  .pageBox#restaurant .menu-wrap .menu-inner {
    padding-top: 60px;
    padding-bottom: 0;
  }
  .pageBox#restaurant .menu-wrap .menu-inner .menu-detail {
    padding: 15px;
  }
  .pageBox#restaurant .menu-wrap .menu-inner .menu-detail figure {
    margin-bottom: 15px;
  }
  .pageBox#restaurant .menu-wrap .menu-inner .menu-detail dl dt {
    font-size: 18px;
  }
  .pageBox#restaurant .menu-wrap .menu-inner .menu-detail dl dt span {
    font-size: 14px;
  }
  .pageBox#restaurant .menu-wrap .menu-inner .menu-detail dl dd.supp {
    font-size: 13px;
  }
  .pageBox#restaurant .menu-wrap .menu-inner .menu-detail dl dd.price {
    font-size: 16px;
    border-bottom: 0;
  }
  .pageBox#restaurant .menu-wrap .menu-inner .menu-detail dl dd.price .adlunch {
    font-size: 14px;
  }
  .pageBox#restaurant .menu-wrap#menu-drink .row .drinklists {
    padding: 0 30px;
    margin-bottom: 60px;
  }
  .pageBox#restaurant .menu-wrap#menu-drink .row .drinklists h4 {
    letter-spacing: 0.2rem;
    text-align: left;
    margin-bottom: 1em;
    position: relative;
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
    font-feature-settings: "palt";
    font-size: 21px;
  }
}
@media screen and (min-width: 481px) and (min-width: 481px) {
  .pageBox#restaurant .menu-wrap#menu-drink .row .drinklists h4 {
    margin-bottom: 2em;
  }
  .pageBox#restaurant .menu-wrap#menu-drink .row .drinklists h4:before {
    display: none;
  }
  .pageBox#restaurant .menu-wrap#menu-drink .row .drinklists h4:after {
    display: none;
  }
}
@media screen and (min-width: 481px) {
  .pageBox#restaurant .menu-wrap#menu-drink .row .drinklists dl.drink-list dt {
    font-size: 16px;
  }
  .pageBox#restaurant .menu-wrap#menu-drink .row .drinklists dl.drink-list dd {
    font-size: 16px;
  }
}
.pageBox.access table.access-table {
  margin-bottom: 30px;
}
.pageBox.access table.access-table thead tr th.th-1 {
  width: 30%;
}
.pageBox.access table.access-table thead tr th.th-2 {
  width: 70%;
}
.pageBox.access table.access-table tbody tr td {
  text-align: left !important;
}
@media screen and (min-width: 481px) {
  .pageBox.access table.access-table {
    margin-bottom: 60px;
  }
}
.pageBox#notification {
  background-color: rgb(164, 194, 165) !important;
}
.pageBox#notification .hCenter:before {
  background-color: #fff;
}
.pageBox#notification div.for-kids {
  margin-bottom: 60px;
}
.pageBox#notification div.for-kids .kids-wrap {
  display: flex;
  flex-wrap: wrap;
}
.pageBox#notification div.for-kids .kids-wrap figure {
  width: 180px;
  margin-right: 60px;
}
.pageBox#notification div.for-kids .kids-wrap figure img {
  width: 100%;
  border-radius: 240px;
}
.pageBox#notification div.for-kids .kids-wrap .kids-cont ul.kids-list li {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.4;
  font-size: 14px;
}
.pageBox#school {
  background-color: rgb(63, 37, 38);
}
.pageBox#school h2 {
  color: #fff;
  margin-bottom: 30px;
}
.pageBox#school h2:before, .pageBox#school h2:after {
  border: none;
  height: 0;
  width: 0;
}
.pageBox#school .pro-detail {
  background-color: rgb(241, 242, 235);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  padding: 15px 15px 30px;
}
.pageBox#school .pro-detail figure {
  width: 30%;
  padding-right: 15px;
}
.pageBox#school .pro-detail figure img {
  border-radius: 240px;
  width: 100%;
  box-shadow: 0 2.5rem 2rem -2rem hsla(200deg, 50%, 20%, 0.2);
  border: 1px solid #fff;
}
.pageBox#school .pro-detail .pro-detail-inner {
  width: 70%;
}
.pageBox#school .pro-detail .pro-detail-inner h3 {
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  margin-bottom: 10px;
}
@media screen and (min-width: 481px) {
  .pageBox#school .pro-detail .pro-detail-inner h3 {
    margin-bottom: 2em;
  }
  .pageBox#school .pro-detail .pro-detail-inner h3:before {
    display: none;
  }
  .pageBox#school .pro-detail .pro-detail-inner h3:after {
    display: none;
  }
}
.pageBox#school .pro-detail .pro-detail-inner span.title {
  font-size: 11px;
  line-height: 1.3;
}
.pageBox#school .pro-detail .pro-detail-inner p {
  margin-top: 10px;
  border-top: 1px dotted rgba(63, 37, 38, 0.4);
  padding-top: 10px;
  margin-bottom: 0;
  font-size: 13px;
  letter-spacing: 0;
  line-height: 1.5;
}
.pageBox#school .school-wrap article {
  margin-bottom: 30px;
  box-shadow: 0 2.5rem 2rem -2rem hsla(200deg, 50%, 20%, 0.2);
  background-color: #fff;
  padding: 15px 30px 30px;
  box-shadow: 0 2.5rem 2rem -2rem hsla(200deg, 50%, 20%, 0.2);
}
.pageBox#school .school-wrap article:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 320px) {
  .pageBox#school .school-wrap article {
    padding: 15px;
  }
}
.pageBox#school .school-wrap article dl.school-num {
  display: flex;
  flex-wrap: wrap;
  font-size: 11px;
  justify-content: center;
}
.pageBox#school .school-wrap article dl.school-num dt {
  margin: 0;
  background-color: rgb(34, 116, 165);
  color: #fff;
  border: 1px solid rgb(34, 116, 165);
  font-weight: normal;
  padding: 8px;
  line-height: 1;
}
.pageBox#school .school-wrap article dl.school-num dt:first-child {
  border-radius: 4px 0 0 4px;
}
.pageBox#school .school-wrap article dl.school-num dd {
  background-color: #fff;
  padding: 8px;
  line-height: 1;
  margin: 0;
  color: rgb(34, 116, 165);
  border: 1px solid rgb(34, 116, 165);
}
.pageBox#school .school-wrap article dl.school-num dd:last-child {
  border-radius: 0 4px 4px 0;
}
.pageBox#school .school-wrap article h1 {
  margin-top: -32px;
  text-align: center;
  margin-bottom: 30px;
  font-size: 21px;
}
.pageBox#school .school-wrap article h1 span.tanto-pro {
  font-size: 11px;
  display: inline-block;
  background-color: rgb(226, 154, 39);
  color: #fff;
  border-radius: 18px;
  padding: 6px 12px;
}
.pageBox#school .school-wrap article h1 span.tanto-pro span {
  display: inline;
  padding: 0;
}
.pageBox#school .school-wrap article h1 span.school-name {
  display: block;
  padding-top: 20px;
}
.pageBox#school .school-wrap article h1 + p.school-exp {
  padding-top: 15px;
  margin-top: 15px;
}
.pageBox#school .school-wrap article p.p-fee {
  font-size: 16px;
}
.pageBox#school .school-wrap article ul, .pageBox#school .school-wrap article ol {
  padding-left: 1.5em;
  font-size: 13px;
}
.pageBox#school .school-wrap article ul li, .pageBox#school .school-wrap article ol li {
  list-style-type: disc;
  letter-spacing: 0;
}
.pageBox#school .school-wrap article p.p-mature {
  font-size: 13px;
  letter-spacing: 0;
  line-height: 1.4;
}
.pageBox#school .school-wrap article p.p-mature span {
  color: rgb(34, 116, 165);
}
.pageBox#school .school-wrap article p.school-exp {
  margin-top: -30px;
  border: 1px solid rgb(34, 116, 165);
  padding: 30px 15px 15px;
  line-height: 1.5;
  letter-spacing: 0;
}
.pageBox#school .school-wrap article p + h2, .pageBox#school .school-wrap article p + h3 {
  margin-top: 15px;
}
.pageBox#school .school-wrap article table.school-table {
  margin-bottom: 30px;
  border: 1px solid rgb(34, 116, 165);
}
.pageBox#school .school-wrap article table.school-table:last-child {
  margin-bottom: 0;
}
.pageBox#school .school-wrap article table.school-table thead tr th, .pageBox#school .school-wrap article table.school-table thead tr td {
  background-color: rgb(34, 116, 165);
  padding: 0.5em;
  color: #fff;
}
.pageBox#school .school-wrap article table.school-table thead tr th {
  border-left: 1px solid #fff;
}
.pageBox#school .school-wrap article table.school-table thead tr th:first-child {
  border-left: 1px solid rgb(34, 116, 165);
}
.pageBox#school .school-wrap article table.school-table thead tr th:last-child {
  border-right: 1px solid rgb(34, 116, 165);
}
.pageBox#school .school-wrap article table.school-table tbody th, .pageBox#school .school-wrap article table.school-table tbody td {
  border: 1px solid rgb(34, 116, 165);
  text-align: left;
}
.pageBox#school .school-wrap article h2 {
  color: rgb(34, 116, 165);
  font-size: 18px;
  margin-bottom: 15px;
}
.pageBox#school .school-wrap article h2 span.ticket-tick {
  background-color: rgb(226, 154, 39);
  color: #fff;
  padding: 3px 8px;
  font-size: 75%;
  letter-spacing: 0;
  border-radius: 2px;
}
.pageBox#school .school-wrap article h2:before {
  content: "";
  border-top: 1px solid rgb(34, 116, 165);
  width: 25px;
  margin-left: -30px;
  display: block;
  transform: translate(-35%, 0.5em);
  -webkit-transform: translate(-35%, 0.5em);
  -ms-transform: translate(-35%, 0.5em);
}
@media screen and (min-width: 481px) {
  .pageBox#school .pro-wrap {
    margin-bottom: 60px;
  }
  .pageBox#school .sticky-inner {
    top: 120px;
  }
  .pageBox#school .pro-detail {
    border-radius: 2px;
    border-top: 2px solid rgb(226, 154, 39);
    margin: 30px;
    padding: 30px;
    flex-direction: column;
    align-items: center;
  }
  .pageBox#school .pro-detail figure {
    width: 50%;
  }
  .pageBox#school .pro-detail .pro-detail-inner {
    width: 100%;
    margin-top: 30px;
  }
  .pageBox#school .pro-detail .pro-detail-inner h3 {
    text-align: center;
    margin-bottom: 30px;
    font-size: 21px;
  }
  .pageBox#school .pro-detail .pro-detail-inner span.title {
    font-size: 14px;
  }
  .pageBox#school .pro-detail .pro-detail-inner p {
    font-size: 14px;
  }
  .pageBox#school .school-wrap article {
    max-width: 660px;
    margin-bottom: 0;
    margin-top: 30px;
  }
  .pageBox#school .school-wrap article h1:after {
    display: none;
  }
  .pageBox#school .school-wrap article dl.school-num {
    font-size: 16px;
  }
  .pageBox#school .school-wrap article table.school-table th, .pageBox#school .school-wrap article table.school-table td {
    font-size: 14px !important;
  }
}
.pageBox .point-cont {
  margin-top: 60px;
  padding: 15px;
  border: 1px solid #ccc;
}
.pageBox .point-cont h3 {
  margin-bottom: 15px !important;
  font-size: 21px !important;
}
.pageBox .point-cont img.point-cont-image {
  border-radius: 4px;
  width: 100%;
}
@media screen and (max-width: 480px) {
  .pageBox .point-cont img.point-cont-image {
    margin-bottom: 30px;
  }
}
.pageBox .point-cont p {
  font-size: 14px;
  line-height: 1.3;
}
.pageBox#feature, .pageBox#feature-2 {
  background-image: url(img/bg_for_biginner.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  overflow: hidden;
  padding-bottom: 0;
  background-color: rgba(63, 37, 38, 0.1);
}
.pageBox#feature dl.service, .pageBox#feature-2 dl.service {
  border: 1px solid #ccc;
  padding: 15px;
}
.pageBox#feature dl.service dt, .pageBox#feature-2 dl.service dt {
  font-weight: normal;
  margin-bottom: 10px;
}
.pageBox#feature dl.service dd, .pageBox#feature-2 dl.service dd {
  line-height: 1.3;
  display: inline;
  margin-right: 1em;
  font-size: 13px;
}
.pageBox#feature dl.service dd:before, .pageBox#feature-2 dl.service dd:before {
  content: "・";
}
.pageBox#feature .tokuten-present, .pageBox#feature-2 .tokuten-present {
  width: 100%;
  padding-right: 30px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.pageBox#feature .tokuten-present tr:nth-child(2n-1) td, .pageBox#feature .tokuten-present tr:nth-child(2n-1) th, .pageBox#feature-2 .tokuten-present tr:nth-child(2n-1) td, .pageBox#feature-2 .tokuten-present tr:nth-child(2n-1) th {
  background-color: rgb(241, 242, 235);
}
.pageBox#feature .tokuten-present th, .pageBox#feature-2 .tokuten-present th {
  padding: 30px;
  font-size: 18px;
  font-weight: normal;
  border-right: 1px dotted #ccc;
  border-bottom: 1px dotted #ccc;
}
.pageBox#feature .tokuten-present th span, .pageBox#feature-2 .tokuten-present th span {
  font-size: 14px;
  display: block;
}
.pageBox#feature .tokuten-present td, .pageBox#feature-2 .tokuten-present td {
  font-size: 13px;
  padding: 30px;
  border-bottom: 1px dotted #ccc;
}
@media screen and (min-width: 481px) {
  .pageBox#feature .tokuten-present tr th, .pageBox#feature-2 .tokuten-present tr th {
    font-size: 24px;
  }
  .pageBox#feature .tokuten-present tr th span, .pageBox#feature-2 .tokuten-present tr th span {
    font-size: 18px;
  }
  .pageBox#feature .tokuten-present tr td, .pageBox#feature-2 .tokuten-present tr td {
    font-size: 16px;
  }
}
@media screen and (min-width: 1300px) {
  .pageBox#feature .tokuten-present tr th, .pageBox#feature-2 .tokuten-present tr th {
    text-align: right;
  }
  .pageBox#feature .tokuten-present tr th span, .pageBox#feature-2 .tokuten-present tr th span {
    display: inline-block;
  }
}
.pageBox#feature .tokuten-box, .pageBox#feature-2 .tokuten-box {
  margin-bottom: 60px;
  padding-left: 30px;
  padding-bottom: 30px;
  border-radius: 4px;
  border-left: 1px dotted #ccc;
  border-bottom: 1px dotted #ccc;
}
.pageBox#feature .tokuten-box h2, .pageBox#feature-2 .tokuten-box h2 {
  margin-bottom: 30px !important;
}
.pageBox#feature .tokuten-box dl.menber-kaisuken, .pageBox#feature-2 .tokuten-box dl.menber-kaisuken {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  display: flex;
  flex-wrap: wrap;
  max-width: 420px;
  margin-right: auto;
}
.pageBox#feature .tokuten-box dl.menber-kaisuken dt, .pageBox#feature-2 .tokuten-box dl.menber-kaisuken dt {
  font-size: 18px;
  width: 60%;
  font-weight: normal;
}
.pageBox#feature .tokuten-box dl.menber-kaisuken dt span, .pageBox#feature-2 .tokuten-box dl.menber-kaisuken dt span {
  font-size: 16px;
  padding-left: 1em;
}
.pageBox#feature .tokuten-box dl.menber-kaisuken dd, .pageBox#feature-2 .tokuten-box dl.menber-kaisuken dd {
  font-size: 16px;
  width: 40%;
  text-align: right;
}
@media screen and (max-width: 480px) {
  .pageBox#feature .tokuten-box, .pageBox#feature-2 .tokuten-box {
    padding-right: 30px;
  }
}
.pageBox#feature .feature_v_2 figure, .pageBox#feature-2 .feature_v_2 figure {
  position: relative;
  overflow: hidden;
  margin-bottom: 15px;
}
.pageBox#feature .feature_v_2 figure.for-ms, .pageBox#feature-2 .feature_v_2 figure.for-ms {
  margin-bottom: 45px;
}
.pageBox#feature .feature_v_2 figure img, .pageBox#feature-2 .feature_v_2 figure img {
  width: 100%;
}
.pageBox#feature .feature_v_2 figure figcaption, .pageBox#feature-2 .feature_v_2 figure figcaption {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 8px;
  font-size: 13px;
  background-color: rgba(247, 252, 254, 0.5);
  line-height: 1;
}
.pageBox#feature .feature_v_1, .pageBox#feature-2 .feature_v_1 {
  margin-bottom: 30px;
}
.pageBox#feature .feature_v_1 h2, .pageBox#feature-2 .feature_v_1 h2 {
  text-align: center;
  margin-bottom: 1em;
  letter-spacing: 0.2rem;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .pageBox#feature .feature_v_1 h2, .pageBox#feature-2 .feature_v_1 h2 {
    margin-bottom: 4em;
  }
  .pageBox#feature .feature_v_1 h2:before, .pageBox#feature-2 .feature_v_1 h2:before {
    content: "";
    width: 160px;
    display: block;
    height: 1px;
    background-color: rgb(226, 154, 39);
    bottom: -60px;
    left: calc(50% - 80px);
    position: absolute;
    z-index: 1;
  }
}
.pageBox#feature .feature_v_1 h3, .pageBox#feature-2 .feature_v_1 h3 {
  text-align: center;
  margin-bottom: 1em;
  letter-spacing: 0.2rem;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .pageBox#feature .feature_v_1 h3, .pageBox#feature-2 .feature_v_1 h3 {
    margin-bottom: 4em;
  }
  .pageBox#feature .feature_v_1 h3:before, .pageBox#feature-2 .feature_v_1 h3:before {
    content: "";
    width: 160px;
    display: block;
    height: 1px;
    background-color: rgb(226, 154, 39);
    bottom: -60px;
    left: calc(50% - 80px);
    position: absolute;
    z-index: 1;
  }
}
.pageBox#feature .feature_v_1 h3.hLeft, .pageBox#feature-2 .feature_v_1 h3.hLeft {
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .pageBox#feature .feature_v_1 h3.hLeft, .pageBox#feature-2 .feature_v_1 h3.hLeft {
    margin-bottom: 2em;
  }
  .pageBox#feature .feature_v_1 h3.hLeft:before, .pageBox#feature-2 .feature_v_1 h3.hLeft:before {
    display: none;
  }
  .pageBox#feature .feature_v_1 h3.hLeft:after, .pageBox#feature-2 .feature_v_1 h3.hLeft:after {
    display: none;
  }
}
.pageBox#feature .feature_h_loop, .pageBox#feature-2 .feature_h_loop {
  display: flex;
  flex-direction: column;
  margin-bottom: 30px;
  font-size: 13px;
}
.pageBox#feature .feature_h_loop figure, .pageBox#feature-2 .feature_h_loop figure {
  order: 2;
  margin-bottom: 15px;
  margin-right: calc(1 * var(--bs-gutter-x) / -2);
  margin-left: calc(1 * var(--bs-gutter-x) / -2);
}
.pageBox#feature .feature_h_loop figure img, .pageBox#feature-2 .feature_h_loop figure img {
  width: 100%;
}
.pageBox#feature .feature_h_loop h3, .pageBox#feature-2 .feature_h_loop h3 {
  margin-right: calc(1 * var(--bs-gutter-x) / -2);
  margin-left: calc(1 * var(--bs-gutter-x) / -2);
  background-color: rgb(63, 37, 38);
  color: #fff;
  padding: 10px 10px;
  letter-spacing: 0;
  order: 1;
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  margin-bottom: 0;
}
@media screen and (min-width: 481px) {
  .pageBox#feature .feature_h_loop h3, .pageBox#feature-2 .feature_h_loop h3 {
    margin-bottom: 2em;
  }
  .pageBox#feature .feature_h_loop h3:before, .pageBox#feature-2 .feature_h_loop h3:before {
    display: none;
  }
  .pageBox#feature .feature_h_loop h3:after, .pageBox#feature-2 .feature_h_loop h3:after {
    display: none;
  }
}
.pageBox#feature .feature_h_loop p, .pageBox#feature-2 .feature_h_loop p {
  order: 3;
  line-height: 1.5;
}
.pageBox#feature.sauna-page, .pageBox#feature-2.sauna-page {
  background-image: none;
  background-color: #fff;
  color: rgb(0, 22, 7);
}
.pageBox#feature.sauna-page div.sauna-title-gender, .pageBox#feature-2.sauna-page div.sauna-title-gender {
  padding: 120px 0 60px;
}
.pageBox#feature.sauna-page div.sauna-title-gender.first, .pageBox#feature-2.sauna-page div.sauna-title-gender.first {
  padding-top: 60px;
}
.pageBox#feature.nobeha-feature .feature_v_1 div.p-next-title, .pageBox#feature-2.nobeha-feature .feature_v_1 div.p-next-title {
  margin-bottom: 15px;
}
.pageBox#feature.nobeha-feature .feature_v_1 div.custom.custom-fitness, .pageBox#feature-2.nobeha-feature .feature_v_1 div.custom.custom-fitness {
  margin: 0 auto 60px;
}
.pageBox#feature.nobeha-feature .feature_v_1 div.custom.custom-fitness img, .pageBox#feature-2.nobeha-feature .feature_v_1 div.custom.custom-fitness img {
  width: 100%;
  max-width: 480px;
  height: auto;
}
.pageBox#feature.nobeha-feature .feature_v_1 div.custom.pg, .pageBox#feature-2.nobeha-feature .feature_v_1 div.custom.pg {
  width: min(100%, 240px);
  margin: 30px auto 0;
}
.pageBox#feature.nobeha-feature .feature_v_1 div.custom.pg img, .pageBox#feature-2.nobeha-feature .feature_v_1 div.custom.pg img {
  width: 100%;
  height: auto;
}
.pageBox#feature.nobeha-feature .feature_v_1 div.custom.onsen, .pageBox#feature-2.nobeha-feature .feature_v_1 div.custom.onsen {
  border: 1px solid rgb(63, 37, 38);
  padding: 15px;
  font-size: 14px;
}
.pageBox#feature.nobeha-feature .feature_v_1 div.custom.onsen dl, .pageBox#feature-2.nobeha-feature .feature_v_1 div.custom.onsen dl {
  margin-bottom: 0;
}
.pageBox#feature.nobeha-feature .feature_v_1 div.custom.onsen dl dd:last-child, .pageBox#feature-2.nobeha-feature .feature_v_1 div.custom.onsen dl dd:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 480px) {
  .pageBox#feature.nobeha-feature, .pageBox#feature-2.nobeha-feature {
    padding-top: 0px;
  }
  .pageBox#feature.nobeha-feature.restaurant-block, .pageBox#feature-2.nobeha-feature.restaurant-block {
    padding-top: 0;
  }
  .pageBox#feature.nobeha-feature .feature_v_2, .pageBox#feature-2.nobeha-feature .feature_v_2 {
    margin: 0 -15px 30px;
  }
  .pageBox#feature.nobeha-feature .feature_v_1, .pageBox#feature-2.nobeha-feature .feature_v_1 {
    margin-bottom: 0;
  }
  .pageBox#feature.nobeha-feature .feature_v_1 div.p-next-title, .pageBox#feature-2.nobeha-feature .feature_v_1 div.p-next-title {
    margin-bottom: 30px;
  }
  .pageBox#feature.nobeha-feature .feature_v_1 .button-wrap-general, .pageBox#feature-2.nobeha-feature .feature_v_1 .button-wrap-general {
    justify-content: center !important;
  }
  .pageBox#feature.nobeha-feature.fac, .pageBox#feature-2.nobeha-feature.fac {
    padding-bottom: 30px;
  }
  .pageBox#feature.nobeha-feature.fac .feature_v_1 div.p-next-title:last-child, .pageBox#feature-2.nobeha-feature.fac .feature_v_1 div.p-next-title:last-child {
    margin-bottom: 0;
  }
  .pageBox#feature.nobeha-feature.fac .feature_v_1 .sticky-inner, .pageBox#feature-2.nobeha-feature.fac .feature_v_1 .sticky-inner {
    padding-bottom: 15px;
  }
  .pageBox#feature.nobeha-feature.fac .feature_v_2, .pageBox#feature-2.nobeha-feature.fac .feature_v_2 {
    margin-bottom: 15px;
  }
  .pageBox#feature.nobeha-feature.fac .feature_v_2 figure, .pageBox#feature-2.nobeha-feature.fac .feature_v_2 figure {
    margin: 0 -15px 0;
  }
}
@media screen and (min-width: 481px) {
  .pageBox#feature, .pageBox#feature-2 {
    overflow: unset;
  }
  .pageBox#feature.no-padding, .pageBox#feature-2.no-padding {
    padding-top: 0;
    padding-bottom: 0;
  }
  .pageBox#feature .feature_v_1, .pageBox#feature-2 .feature_v_1 {
    margin-bottom: 0;
  }
  .pageBox#feature .feature_v_1 .sticky-inner, .pageBox#feature-2 .feature_v_1 .sticky-inner {
    padding-bottom: 60px;
    padding-top: 60px;
    width: min(420px, 100%);
    margin: 0 auto;
  }
  .pageBox#feature .feature_v_1 h2, .pageBox#feature-2 .feature_v_1 h2 {
    letter-spacing: 0.2rem;
    text-align: left;
    margin-bottom: 1em;
    position: relative;
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
    font-feature-settings: "palt";
  }
}
@media screen and (min-width: 481px) and (min-width: 481px) {
  .pageBox#feature .feature_v_1 h2, .pageBox#feature-2 .feature_v_1 h2 {
    margin-bottom: 2em;
  }
  .pageBox#feature .feature_v_1 h2:before, .pageBox#feature-2 .feature_v_1 h2:before {
    display: none;
  }
  .pageBox#feature .feature_v_1 h2:after, .pageBox#feature-2 .feature_v_1 h2:after {
    display: none;
  }
}
@media screen and (min-width: 481px) {
  .pageBox#feature .feature_v_1 h2 span.subtitle-h2, .pageBox#feature-2 .feature_v_1 h2 span.subtitle-h2 {
    font-size: 14px;
    font-weight: normal;
    display: block;
    margin-bottom: 30px;
    padding-bottom: 30px;
    position: relative;
    color: rgb(63, 37, 38);
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  .pageBox#feature .feature_v_1 h2 span.subtitle-h2:after, .pageBox#feature-2 .feature_v_1 h2 span.subtitle-h2:after {
    margin-top: 1em;
    content: "";
    width: 35px;
    display: block;
    border-bottom: 2px solid rgb(63, 37, 38);
  }
}
@media screen and (min-width: 481px) {
  .pageBox#feature .feature_v_1 .p-next-title, .pageBox#feature .feature_v_1 .custom, .pageBox#feature-2 .feature_v_1 .p-next-title, .pageBox#feature-2 .feature_v_1 .custom {
    width: min(100%, 520px);
  }
  .pageBox#feature .feature_v_1 .p-next-title h3, .pageBox#feature .feature_v_1 .custom h3, .pageBox#feature-2 .feature_v_1 .p-next-title h3, .pageBox#feature-2 .feature_v_1 .custom h3 {
    letter-spacing: 0.2rem;
    text-align: left;
    margin-bottom: 1em;
    position: relative;
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
    font-feature-settings: "palt";
  }
}
@media screen and (min-width: 481px) and (min-width: 481px) {
  .pageBox#feature .feature_v_1 .p-next-title h3, .pageBox#feature .feature_v_1 .custom h3, .pageBox#feature-2 .feature_v_1 .p-next-title h3, .pageBox#feature-2 .feature_v_1 .custom h3 {
    margin-bottom: 2em;
  }
  .pageBox#feature .feature_v_1 .p-next-title h3:before, .pageBox#feature .feature_v_1 .custom h3:before, .pageBox#feature-2 .feature_v_1 .p-next-title h3:before, .pageBox#feature-2 .feature_v_1 .custom h3:before {
    display: none;
  }
  .pageBox#feature .feature_v_1 .p-next-title h3:after, .pageBox#feature .feature_v_1 .custom h3:after, .pageBox#feature-2 .feature_v_1 .p-next-title h3:after, .pageBox#feature-2 .feature_v_1 .custom h3:after {
    display: none;
  }
}
@media screen and (min-width: 481px) {
  .pageBox#feature .feature_v_2, .pageBox#feature-2 .feature_v_2 {
    margin-bottom: 0;
  }
  .pageBox#feature .feature_v_2 figure, .pageBox#feature-2 .feature_v_2 figure {
    margin-bottom: 0;
  }
  .pageBox#feature .feature_v_2 figure img, .pageBox#feature-2 .feature_v_2 figure img {
    width: 100%;
  }
}
@media screen and (min-width: 481px) {
  .pageBox#feature .col-md-4, .pageBox#feature-2 .col-md-4 {
    max-width: 360px;
  }
}
@media screen and (min-width: 481px) {
  .pageBox#feature .feature_h_loop, .pageBox#feature-2 .feature_h_loop {
    display: block;
  }
  .pageBox#feature .feature_h_loop h3, .pageBox#feature-2 .feature_h_loop h3 {
    order: 2;
    margin-right: auto;
    margin-left: auto;
    color: rgb(0, 22, 7);
    background-color: transparent;
    padding: 0;
    margin-bottom: 1rem;
    letter-spacing: 0.2rem;
    text-align: left;
    margin-bottom: 1em;
    position: relative;
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
    font-feature-settings: "palt";
    font-size: 21px;
  }
}
@media screen and (min-width: 481px) and (min-width: 481px) {
  .pageBox#feature .feature_h_loop h3, .pageBox#feature-2 .feature_h_loop h3 {
    margin-bottom: 2em;
  }
  .pageBox#feature .feature_h_loop h3:before, .pageBox#feature-2 .feature_h_loop h3:before {
    display: none;
  }
  .pageBox#feature .feature_h_loop h3:after, .pageBox#feature-2 .feature_h_loop h3:after {
    display: none;
  }
}
@media screen and (min-width: 481px) {
  .pageBox#feature .feature_h_loop figure, .pageBox#feature-2 .feature_h_loop figure {
    order: 1;
    margin-bottom: 30px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (min-width: 481px) {
  .pageBox#feature.nobeha-feature, .pageBox#feature-2.nobeha-feature {
    padding-bottom: 120px;
  }
  .pageBox#feature.nobeha-feature.fac, .pageBox#feature-2.nobeha-feature.fac {
    padding-bottom: 0;
  }
  .pageBox#feature.nobeha-feature .for-kisu .feature_v_2, .pageBox#feature-2.nobeha-feature .for-kisu .feature_v_2 {
    order: 2;
  }
  .pageBox#feature.nobeha-feature .for-kisu .feature_v_1, .pageBox#feature-2.nobeha-feature .for-kisu .feature_v_1 {
    order: 1;
  }
  .pageBox#feature.nobeha-feature .feature_v_2 figure.for-fac-1, .pageBox#feature-2.nobeha-feature .feature_v_2 figure.for-fac-1 {
    height: 100%;
  }
  .pageBox#feature.nobeha-feature .feature_v_2 figure.for-fac-1 img, .pageBox#feature-2.nobeha-feature .feature_v_2 figure.for-fac-1 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
@media screen and (min-width: 1200px) {
  .pageBox#feature .feature_v_1 .sticky-inner, .pageBox#feature-2 .feature_v_1 .sticky-inner {
    padding-bottom: 60px;
    padding-top: 60px;
    width: min(520px, 100%);
    margin: 0 auto;
  }
}
@media screen and (max-width: 480px) {
  .pageBox#feature.top-for-beginner, .pageBox#feature-2.top-for-beginner {
    padding: 0;
  }
  .pageBox#feature.top-for-beginner .container, .pageBox#feature-2.top-for-beginner .container {
    margin: 0;
    padding: 0;
  }
  .pageBox#feature.top-for-beginner .container figure.for-ms, .pageBox#feature-2.top-for-beginner .container figure.for-ms {
    margin-bottom: 0;
  }
  .pageBox#feature.top-for-beginner .container .feature_v_1 .sticky-inner, .pageBox#feature-2.top-for-beginner .container .feature_v_1 .sticky-inner {
    padding: 15px;
  }
}
.pageBox.shop-price {
  background-color: #fff;
  color: rgb(0, 22, 7);
}
.pageBox.shop-price h2, .pageBox.shop-price h3, .pageBox.shop-price p, .pageBox.shop-price th, .pageBox.shop-price td {
  color: rgb(0, 22, 7);
}
.pageBox.shop-price div.menu-wrap {
  position: relative;
  margin: 0 auto;
  max-width: 660px;
}
.pageBox.shop-price div.menu-wrap h3 {
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .pageBox.shop-price div.menu-wrap h3 {
    margin-bottom: 2em;
  }
  .pageBox.shop-price div.menu-wrap h3:before {
    display: none;
  }
  .pageBox.shop-price div.menu-wrap h3:after {
    display: none;
  }
}
.pageBox.shop-price div.menu-wrap div.shimei {
  color: rgba(0, 22, 7, 0.6);
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.pageBox.shop-price div.menu-wrap div.shimei + div.button-wrap-general {
  margin-bottom: 60px;
}
.pageBox.shop-price div.menu-wrap table {
  margin: 30px auto 60px;
  width: 100%;
}
.pageBox.shop-price div.menu-wrap table + div.shimei {
  margin-bottom: 60px;
  margin-top: -45px;
  font-size: 13px;
  text-align: right;
}
.pageBox.shop-price div.menu-wrap table tr th {
  font-weight: normal;
  font-size: 14px;
  padding: 10px 10px 10px 0;
  border-bottom: 1px dotted #ccc;
  width: 60%;
  vertical-align: bottom;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.pageBox.shop-price div.menu-wrap table tr th span {
  font-size: 18px;
  display: block;
  margin-bottom: 10px;
}
.pageBox.shop-price div.menu-wrap table tr td {
  border-bottom: 1px dotted #ccc;
  padding: 10px 0 10px 15px;
  vertical-align: bottom;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  width: 15%;
  text-align: right;
}
.pageBox.shop-price div.menu-wrap table tr td.min {
  width: 15%;
  padding: 10px;
}
.pageBox.onsen-page {
  background-image: none !important;
  background-color: #fff !important;
  color: rgb(0, 22, 7);
}
.pageBox.onsen-page div.sauna-title-gender {
  padding: 120px 0 60px;
}
.pageBox.onsen-page div.sauna-title-gender.first {
  padding-top: 60px;
}
.pageBox#feater-2 {
  padding-top: 120px;
}
.pageBox#onsenguide {
  padding-top: 120px;
}
.pageBox#top-feature {
  background-color: #fff;
}
.pageBox#top-feature h2 {
  margin-bottom: 60px;
  color: rgb(0, 22, 7);
}
.pageBox#top-feature p {
  color: rgb(0, 22, 7);
}
.pageBox#top-feature div.feature-box-slide {
  padding-top: 60px;
  padding-bottom: 60px;
}
.pageBox#top-feature div.feature-box-slide div.feature-explain {
  margin-bottom: 60px;
}
.pageBox#top-feature div.feature-box-slide div.feature-explain div.feature-button-right {
  text-align: right;
}
@media screen and (max-width: 480px) {
  .pageBox#top-feature div.feature-box-slide {
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 30px;
  }
  .pageBox#top-feature div.feature-box-slide div.feature-explain {
    margin-bottom: 30px;
  }
  .pageBox#top-feature div.feature-box-slide h2 {
    margin-bottom: 15px;
  }
  .pageBox#top-feature div.feature-box-slide .feature-button-right {
    margin-top: 15px;
  }
  .pageBox#top-feature div.feature-box-slide .feature-button-right a {
    width: 100%;
  }
}
.pageBox#top-feature div.feature-box-regular div.feature-image img {
  width: 100%;
  object-fit: cover;
}
.pageBox#top-feature div.feature-box-regular div.feature-box-regular-inner {
  padding-bottom: 60px;
  padding-top: 60px;
  width: min(520px, 100%);
  margin: 0 auto;
}
@media screen and (max-width: 480px) {
  .pageBox#top-feature div.feature-box-regular {
    overflow: hidden;
  }
  .pageBox#top-feature div.feature-box-regular div.feature-image {
    background-image: none;
  }
  .pageBox#top-feature div.feature-box-regular div.feature-text .feature-box-regular-inner {
    margin-bottom: 30px;
    padding-bottom: 0;
    width: 100%;
    padding-top: 0;
    padding-left: 12.5px;
    padding-right: 12.5px;
  }
  .pageBox#top-feature div.feature-box-regular div.feature-text h2 {
    margin-bottom: 15px;
  }
  .pageBox#top-feature div.feature-box-regular div.feature-text figure.only-sp {
    width: calc(100% + 25px);
    margin: 0 -12.5px 10px;
  }
  .pageBox#top-feature div.feature-box-regular div.feature-text figure.only-sp img {
    width: 100%;
  }
  .pageBox#top-feature div.feature-box-regular div.feature-text div.button-wrap-general {
    padding-bottom: 0;
  }
  .pageBox#top-feature div.feature-box-regular div.feature-text div.button-wrap-general a {
    width: 100%;
  }
}
.pageBox#course-2 {
  padding-top: 0;
  padding-bottom: 0;
}
@media screen and (min-width: 481px) {
  .pageBox#course-2 {
    padding-top: 60px;
    position: relative;
  }
  .pageBox#course-2:after {
    content: "";
    position: absolute;
    width: 75vw;
    right: 0;
    top: 0;
    height: 100%;
    background-color: rgba(63, 37, 38, 0.1);
    display: block;
    z-index: -1;
  }
}
.pageBox .half-box-img figure {
  position: relative;
  margin-bottom: 0;
  overflow: hidden;
  margin-bottom: 15px;
}
.pageBox .half-box-img figure.for-ms {
  margin-bottom: 0;
}
.pageBox .half-box-img figure img {
  width: 100%;
}
.pageBox .half-box-img figure figcaption {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 8px;
  font-size: 13px;
  background-color: rgba(247, 252, 254, 0.5);
  line-height: 1;
}
@media screen and (max-width: 480px) {
  .pageBox .half-box-img {
    margin: 0 -15px 15px;
  }
  .pageBox .half-box-img figure {
    margin: 0 -15px 0;
  }
}
@media screen and (min-width: 481px) {
  .pageBox .half-box-img figure {
    margin-bottom: 0;
  }
  .pageBox .half-box-img figure img {
    width: 100%;
  }
  .pageBox .half-box-img figure.mid-image {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .pageBox .half-box-img figure.cover {
    height: 100%;
  }
  .pageBox .half-box-img figure.cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .pageBox .half-box-img figure.half-left {
    width: 50%;
    margin-right: auto;
  }
  .pageBox .half-box-img figure.center-image {
    height: 100%;
    display: flex;
    align-content: end;
    align-items: center;
  }
  .pageBox .half-box-img figure.center-image img {
    height: auto;
  }
  .pageBox .half-box-img figure.bottom-image {
    height: 100%;
    display: flex;
    align-content: end;
    align-items: flex-end;
  }
  .pageBox .half-box-img figure.bottom-image img {
    height: auto;
  }
  .pageBox .half-box-img figure.half-right {
    width: 50%;
    margin-left: auto;
  }
}
.pageBox .half-box-text {
  margin-bottom: 30px;
}
.pageBox .half-box-text h2 {
  text-align: center;
  margin-bottom: 1em;
  letter-spacing: 0.2rem;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .pageBox .half-box-text h2 {
    margin-bottom: 4em;
  }
  .pageBox .half-box-text h2:before {
    content: "";
    width: 160px;
    display: block;
    height: 1px;
    background-color: rgb(226, 154, 39);
    bottom: -60px;
    left: calc(50% - 80px);
    position: absolute;
    z-index: 1;
  }
}
.pageBox .half-box-text h3 {
  text-align: center;
  margin-bottom: 1em;
  letter-spacing: 0.2rem;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .pageBox .half-box-text h3 {
    margin-bottom: 4em;
  }
  .pageBox .half-box-text h3:before {
    content: "";
    width: 160px;
    display: block;
    height: 1px;
    background-color: rgb(226, 154, 39);
    bottom: -60px;
    left: calc(50% - 80px);
    position: absolute;
    z-index: 1;
  }
}
.pageBox .half-box-text div.p-next-title p.img-wrap {
  text-align: center;
}
.pageBox .half-box-text div.p-next-title p img {
  margin: 0 auto 15px;
  max-width: 240px;
  width: 100%;
}
@media screen and (max-width: 480px) {
  .pageBox .half-box-text {
    margin-bottom: 0;
  }
  .pageBox .half-box-text div.p-next-title {
    margin-bottom: 30px;
  }
  .pageBox .half-box-text div.p-next-title:last-child {
    margin-bottom: 0;
  }
  .pageBox .half-box-text .button-wrap-general {
    justify-content: center !important;
  }
  .pageBox .half-box-text .sticky-inner {
    padding: 0 15px 15px;
  }
}
@media screen and (min-width: 481px) {
  .pageBox .half-box-text {
    margin-bottom: 0;
  }
  .pageBox .half-box-text .sticky-inner {
    padding-bottom: 60px;
    padding-top: 60px;
    width: min(420px, 100%);
    margin: 0 auto;
  }
  .pageBox .half-box-text h2 {
    text-align: left;
    margin-bottom: 1em;
    position: relative;
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
    font-feature-settings: "palt";
    letter-spacing: 0.2rem;
  }
}
@media screen and (min-width: 481px) and (min-width: 481px) {
  .pageBox .half-box-text h2 {
    margin-bottom: 4em;
  }
  .pageBox .half-box-text h2:before {
    background-color: rgb(226, 154, 39);
    content: "";
    display: block;
    height: 2px;
    width: 160px;
    left: 0;
    bottom: -60px;
    position: absolute;
    z-index: 1;
  }
}
@media screen and (min-width: 481px) {
  .pageBox .half-box-text h2.no-border {
    letter-spacing: 0.2rem;
    text-align: left;
    margin-bottom: 1em;
    position: relative;
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
    font-feature-settings: "palt";
  }
}
@media screen and (min-width: 481px) and (min-width: 481px) {
  .pageBox .half-box-text h2.no-border {
    margin-bottom: 2em;
  }
  .pageBox .half-box-text h2.no-border:before {
    display: none;
  }
  .pageBox .half-box-text h2.no-border:after {
    display: none;
  }
}
@media screen and (min-width: 481px) {
  .pageBox .half-box-text .p-next-title {
    width: min(100%, 520px);
  }
  .pageBox .half-box-text .p-next-title h3 {
    letter-spacing: 0.2rem;
    text-align: left;
    margin-bottom: 1em;
    position: relative;
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
    font-feature-settings: "palt";
  }
}
@media screen and (min-width: 481px) and (min-width: 481px) {
  .pageBox .half-box-text .p-next-title h3 {
    margin-bottom: 2em;
  }
  .pageBox .half-box-text .p-next-title h3:before {
    display: none;
  }
  .pageBox .half-box-text .p-next-title h3:after {
    display: none;
  }
}
@media screen and (min-width: 481px) {
  .pageBox .row.text-first .half-box-img {
    order: 2;
  }
  .pageBox .row.text-first .half-box-text {
    order: 1;
  }
}
@media screen and (min-width: 481px) {
  .pageBox .row.img-first .half-box-img {
    order: 1;
  }
  .pageBox .row.img-first .half-box-text {
    order: 2;
  }
}
.pageBox.course-course .course-table {
  margin-top: 30px;
  overflow: auto; /*スクロールさせる*/
  white-space: nowrap;
  width: 100%;
}
.pageBox.course-course .course-table .table-wrap .table-scroll::-webkit-scrollbar {
  height: 5px;
}
.pageBox.course-course .course-table .table-wrap 　 .table-scroll::-webkit-scrollbar-track {
  background-color: rgb(63, 37, 38);
}
.pageBox.course-course .course-table .table-wrap .table-scroll::-webkit-scrollbar-thumb {
  background-color: rgb(164, 194, 165);
}
.pageBox.course-course .course-table table {
  font-size: 13px;
  width: 100%;
}
.pageBox.course-course .course-table table tr th {
  background-color: rgb(164, 194, 165);
  padding: 5px;
  text-align: center;
  border: 1px solid rgb(63, 37, 38);
}
.pageBox.course-course .course-table table tr td {
  background-color: #fff;
  padding: 5px;
  text-align: center;
  border: 1px solid rgb(63, 37, 38);
}
.pageBox.course-course .course-spec-wrap h2 {
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  letter-spacing: 0.2rem;
}
@media screen and (min-width: 481px) {
  .pageBox.course-course .course-spec-wrap h2 {
    margin-bottom: 4em;
  }
  .pageBox.course-course .course-spec-wrap h2:before {
    background-color: rgb(226, 154, 39);
    content: "";
    display: block;
    height: 2px;
    width: 160px;
    left: 0;
    bottom: -60px;
    position: absolute;
    z-index: 1;
  }
}
.pageBox.course-course .course-spec-wrap .course-spec {
  border: 1px solid rgba(63, 37, 38, 0.7);
  padding: 15px;
  margin-bottom: 15px;
}
.pageBox.course-course .course-spec-wrap .course-spec p {
  color: rgb(63, 37, 38);
  margin-bottom: 0;
  font-size: 13px;
}
.pageBox.course-course .course-spec-wrap .course-spec p span {
  font-size: 16px;
  font-weight: bold;
}
.pageBox.course-course .course-spec-wrap figure.illust {
  margin-top: 15px;
  width: 100%;
}
.pageBox.course-course .course-spec-wrap figure.illust img {
  width: 100%;
}
@media screen and (min-width: 481px) {
  .pageBox.course-course .container {
    max-width: 970px;
    margin: 0 auto;
  }
  .pageBox.course-course .course-spec-wrap {
    display: flex;
    flex-wrap: wrap;
  }
  .pageBox.course-course .course-spec-wrap h2 {
    width: 100%;
    text-align: left;
    margin-bottom: 1em;
    position: relative;
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
    font-feature-settings: "palt";
    letter-spacing: 0.2rem;
  }
}
@media screen and (min-width: 481px) and (min-width: 481px) {
  .pageBox.course-course .course-spec-wrap h2 {
    margin-bottom: 4em;
  }
  .pageBox.course-course .course-spec-wrap h2:before {
    background-color: rgb(226, 154, 39);
    content: "";
    display: block;
    height: 2px;
    width: 160px;
    left: 0;
    bottom: -60px;
    position: absolute;
    z-index: 1;
  }
}
@media screen and (min-width: 481px) {
  .pageBox.course-course .course-spec-wrap figure.illust {
    margin-top: 60px;
  }
  .pageBox.course-course .course-spec-wrap figure.illust img {
    width: 100%;
  }
}
@media screen and (min-width: 481px) {
  .pageBox.course-course .course-spec-wrap .course-spec {
    border: none;
    margin-bottom: 0;
    padding: 0;
    width: 50%;
  }
  .pageBox.course-course .course-spec-wrap .course-spec p {
    color: rgb(63, 37, 38);
    font-size: 16px;
  }
  .pageBox.course-course .course-spec-wrap .course-spec p span {
    font-size: 24px;
    font-weight: bold;
  }
}
@media screen and (min-width: 481px) {
  .pageBox.course-course .course-spec-wrap .course-exp {
    width: 50%;
  }
}
.pageBox.course-detail {
  padding-top: 0;
  padding-bottom: 0;
}
.pageBox.course-detail .course-wrap {
  background-size: contain;
  background-repeat: no-repeat;
  padding-top: 59vw;
}
.pageBox.course-detail .course-wrap .course-exp {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.pageBox.course-detail .course-wrap .course-exp div.name {
  background-color: rgb(63, 37, 38);
  color: #fff;
  width: 75%;
  height: auto;
  padding: 15px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-top: -45px;
  text-align: center;
}
.pageBox.course-detail .course-wrap .course-exp div.name h2 {
  text-align: center;
  font-size: 16px;
  width: 100%;
  margin-bottom: 5px;
}
.pageBox.course-detail .course-wrap .course-exp div.name p.info {
  line-height: 1.4;
  letter-spacing: 0;
  width: 100%;
  font-weight: bold;
  font-size: 14px;
}
.pageBox.course-detail .course-wrap .course-exp div.name p.info span {
  font-size: 16px;
}
.pageBox.course-detail .course-wrap .course-exp div.msgclblock {
  width: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  height: 120px;
}
.pageBox.course-detail .course-wrap .course-exp div.msgclblock img {
  width: 80%;
  margin: 0 auto;
}
.pageBox.course-detail .course-wrap .course-exp .course-inner {
  padding: 15px;
}
.pageBox.course-detail .course-wrap .course-exp .course-inner p.title {
  width: 100%;
  text-align: center;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  letter-spacing: 0.2rem;
  text-align: center;
  font-size: 18px;
}
@media screen and (min-width: 481px) {
  .pageBox.course-detail .course-wrap .course-exp .course-inner p.title {
    margin-bottom: 2em;
  }
  .pageBox.course-detail .course-wrap .course-exp .course-inner p.title:before {
    display: none;
  }
  .pageBox.course-detail .course-wrap .course-exp .course-inner p.title:after {
    display: none;
  }
}
.pageBox.course-detail .course-wrap .course-exp div.msgclblock {
  margin: -30px auto 15px;
}
@media screen and (min-width: 481px) {
  .pageBox.course-detail .course-wrap {
    background-size: cover;
    padding-top: 135px;
  }
  .pageBox.course-detail .course-wrap.msgcl {
    padding-bottom: 60px;
  }
  .pageBox.course-detail .course-wrap .course-exp {
    background-color: rgba(0, 0, 0, 0.7);
    width: 50vw;
  }
  .pageBox.course-detail .course-wrap .course-exp.left {
    margin-right: auto;
  }
  .pageBox.course-detail .course-wrap .course-exp.right {
    margin-left: auto;
  }
  .pageBox.course-detail .course-wrap .course-exp div.name {
    width: 270px;
    height: 270px;
    padding: 50px 30px;
    margin-top: -135px;
  }
  .pageBox.course-detail .course-wrap .course-exp div.name h2 {
    font-size: 28px;
  }
  .pageBox.course-detail .course-wrap .course-exp div.name p.info {
    font-size: 20px;
  }
  .pageBox.course-detail .course-wrap .course-exp div.name p.info span {
    font-size: 24px;
  }
  .pageBox.course-detail .course-wrap .course-exp .course-inner {
    width: min(100%, 500px);
    margin: 0 auto;
    color: #fff;
    padding: 60px 60px 0;
  }
  .pageBox.course-detail .course-wrap .course-exp .course-inner h2, .pageBox.course-detail .course-wrap .course-exp .course-inner p.title {
    width: min(100%, 420px);
    margin: 0 auto 30px;
  }
  .pageBox.course-detail .course-wrap .course-exp .course-inner a.masters-button {
    background-color: transparent;
    color: #fff;
    border-color: #fff;
  }
  .pageBox.course-detail .course-wrap .course-exp .course-inner a.masters-button:after {
    background-color: #fff;
  }
  .pageBox.course-detail .course-wrap .course-exp .course-inner a.masters-button:hover {
    background-color: #fff;
    color: rgb(63, 37, 38);
  }
  .pageBox.course-detail .course-wrap .course-exp div.msgclblock {
    width: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    margin: 0 auto 0;
    transform: translateY(60px);
    height: 120px;
  }
  .pageBox.course-detail .course-wrap .course-exp div.msgclblock img {
    width: 80%;
    margin: 0 auto;
  }
}
.pageBox#top-story {
  padding: 30px 15px 15px;
  background-color: #fff;
}
.pageBox#top-story .story-image {
  margin: 0 -15px 15px;
  width: 100vw;
  height: 66.6666vw;
}
.pageBox#top-story .story-image .swiper-container {
  height: 100%;
}
.pageBox#top-story .story-image img {
  height: 100%;
}
@media screen and (min-width: 481px) {
  .pageBox#top-story {
    padding: 0;
    background-color: rgb(63, 37, 38);
    position: relative;
  }
  .pageBox#top-story .story-wrap {
    background-color: #fff;
    padding: 60px calc(10% + 60px) 60px 0;
    width: 90%;
    margin-right: auto;
  }
  .pageBox#top-story .story-wrap .story-wrap-inner {
    width: 420px;
    margin: 0 auto;
  }
  .pageBox#top-story .story-wrap .story-wrap-inner h2 {
    white-space: nowrap;
    letter-spacing: 0.2rem;
    text-align: left;
    margin-bottom: 1em;
    position: relative;
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
    font-feature-settings: "palt";
  }
}
@media screen and (min-width: 481px) and (min-width: 481px) {
  .pageBox#top-story .story-wrap .story-wrap-inner h2 {
    margin-bottom: 2em;
  }
  .pageBox#top-story .story-wrap .story-wrap-inner h2:before {
    display: none;
  }
  .pageBox#top-story .story-wrap .story-wrap-inner h2:after {
    display: none;
  }
}
@media screen and (min-width: 481px) {
  .pageBox#top-story .story-wrap .story-wrap-inner p.lead {
    text-align: left;
    white-space: nowrap;
  }
}
@media screen and (min-width: 481px) {
  .pageBox#top-story .story-image {
    display: block;
    box-shadow: 0 2.5rem 2rem -2rem hsla(200deg, 50%, 20%, 0.2);
    vertical-align: baseline;
    overflow: hidden;
    position: absolute;
    width: min(35vw, 640px);
    height: 23.4vw;
    right: 15px;
    top: 50%;
    transform: translate(0%, -120px);
    -webkit-transform: translate(0%, -120px);
    -ms-transform: translate(0%, -120px);
  }
  .pageBox#top-story .story-image img {
    height: 100%;
  }
}
@media screen and (min-width: 1050px) {
  .pageBox#top-story .story-wrap {
    padding: 60px calc(25% + 60px) 60px 0;
    width: 75%;
  }
  .pageBox#top-story .story-wrap .story-wrap-inner {
    margin: 0 auto;
    width: 420px;
  }
  .pageBox#top-story .story-image {
    width: 50vw;
    height: 33.33333vw;
    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
  }
}
.pageBox#top-story.for-course {
  background-color: #fff;
}
@media screen and (max-width: 480px) {
  .pageBox#top-story.for-course {
    padding-top: 0;
  }
  .pageBox#top-story.for-course .story-wrap {
    padding-top: 30px;
  }
}
@media screen and (min-width: 481px) {
  .pageBox#top-story.for-course .story-image {
    left: 15px;
    right: auto;
  }
  .pageBox#top-story.for-course .story-wrap {
    margin-left: auto;
    margin-right: 0;
    padding: 60px 0 60px calc(10% + 60px);
    padding: 60px 60px 60px 10%;
  }
}
@media screen and (min-width: 1050px) {
  .pageBox#top-story.for-course .story-wrap {
    padding: 60px 0 60px calc(25% + 60px);
    padding: 60px 60px 60px 25%;
  }
}
.pageBox#top-course {
  padding-top: 0;
  padding-bottom: 0;
}
.pageBox#top-course .top-course-wrap {
  position: relative;
  width: 100vw;
  background-repeat: no-repeat;
  background-size: cover;
}
.pageBox#top-course .top-course-wrap .top-course-inner {
  background-color: rgba(0, 0, 0, 0.3);
  padding: 60px 30px;
}
.pageBox#top-course .top-course-wrap .top-course-inner h2 {
  text-align: center;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  letter-spacing: 0.2rem;
  line-height: 2;
  color: #fff;
}
@media screen and (min-width: 481px) {
  .pageBox#top-course .top-course-wrap .top-course-inner h2 {
    margin-bottom: 2em;
  }
  .pageBox#top-course .top-course-wrap .top-course-inner h2:before {
    display: none;
  }
  .pageBox#top-course .top-course-wrap .top-course-inner h2:after {
    display: none;
  }
}
.pageBox#top-course .top-course-wrap .top-course-inner p {
  color: #fff;
}
@media screen and (min-width: 481px) {
  .pageBox#top-course .top-course-wrap {
    height: clamp(640px, 100vh, 720px);
    position: relative;
  }
  .pageBox#top-course .top-course-wrap .top-course-inner {
    padding: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
  }
  .pageBox#top-course .top-course-wrap .top-course-inner h2, .pageBox#top-course .top-course-wrap .top-course-inner p {
    color: #fff;
  }
}
.pageBox#top-hotel {
  padding-top: 0;
  padding-bottom: 0;
}
.pageBox#top-hotel .hotel-wrap {
  width: 100vw;
  height: 51vw;
  background-repeat: no-repeat;
  background-size: cover;
}
.pageBox#top-hotel .hotel-exp {
  padding: 30px;
}
.pageBox#top-hotel .hotel-exp p br {
  display: none;
}
.pageBox#top-hotel .hotel-exp .hotel-detail {
  text-align: center;
  padding: 15px 0;
}
.pageBox#top-hotel .hotel-exp .hotel-detail .button-wrap-general {
  padding: 0;
}
.pageBox#top-hotel .hotel-exp .hotel-detail .button-wrap-general a {
  letter-spacing: 0;
}
.pageBox#top-hotel .hotel-exp .hotel-detail p span {
  font-size: 120%;
}
@media screen and (min-width: 482px) {
  .pageBox#top-hotel {
    position: relative;
    display: flex;
  }
  .pageBox#top-hotel .hotel-wrap {
    margin-right: auto;
    width: 75%;
    height: clamp(640px, 100vh, 720px);
  }
  .pageBox#top-hotel .hotel-exp {
    background-color: rgba(247, 252, 254, 0.9);
    width: 50%;
    position: absolute;
    right: -25%;
    padding: 30px;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  }
  .pageBox#top-hotel .hotel-exp .title-inner {
    width: min(100%, 550px);
    margin: 0 auto 30px;
  }
  .pageBox#top-hotel .hotel-exp p br {
    display: inline;
  }
}
@media screen and (min-width: 482px) and (min-width: 1000px) {
  .pageBox#top-hotel .hotel-exp {
    padding: 60px;
  }
  .pageBox#top-hotel .hotel-exp .title-inner {
    margin: 0 auto 60px;
  }
}
.pageBox#facilities .facilities-wrap .col-12 p.note {
  margin-top: 15px;
  margin-bottom: 30px;
  font-size: 11px;
}
.pageBox#facilities .facilities-wrap .fac-box figure {
  margin-bottom: 15px;
}
.pageBox#facilities .facilities-wrap .fac-box figure img {
  width: 100%;
  margin-bottom: 10px;
}
.pageBox#facilities .facilities-wrap .fac-box figcaption {
  font-size: 13px;
  background-color: rgba(247, 252, 254, 0.5);
  line-height: 1;
}
.pageBox#facilities .facilities-wrap .fac-box + .icon-feature {
  margin-top: 30px;
}
.pageBox#facilities .icon-feature {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
}
.pageBox#facilities .icon-feature li {
  width: 50%;
  display: flex;
  margin-bottom: 15px;
  align-items: center;
}
.pageBox#facilities .icon-feature li span {
  font-size: 13px;
  letter-spacing: 0;
  padding-left: 15px;
}
@media screen and (min-width: 481px) {
  .pageBox#facilities .icon-feature li {
    width: 20%;
  }
  .pageBox#facilities .facilities-wrap .col-12 p.note {
    margin-bottom: 60px;
    font-size: 13px;
  }
  .pageBox#facilities .facilities-wrap .fac-box img {
    margin-bottom: 15px;
  }
  .pageBox#facilities .facilities-wrap .fac-box figure {
    margin-bottom: 30px;
  }
  .pageBox#facilities .facilities-wrap .fac-box figure figcaption {
    font-size: 16px;
  }
  .pageBox#facilities .facilities-wrap .fac-box + .icon-feature {
    margin-top: 60px;
  }
}
.pageBox#price {
  background-color: rgba(63, 37, 38, 0.1);
}
.pageBox#price .cashless {
  width: 100%;
  max-width: 360px;
  margin: 0 auto 30px;
}
.pageBox#price .cashless img {
  width: 100%;
}
.pageBox#price .price-wrap h3.h3Left {
  margin-bottom: 30px;
}
.pageBox#price p:last-child {
  margin-bottom: 0;
}
.pageBox#price table.table-price {
  margin-bottom: 30px;
}
.pageBox#price table.table-price:last-child {
  margin-bottom: 0;
}
.pageBox#price table.table-price + p.note {
  margin-top: -20px;
}
.pageBox#price h3 {
  margin-top: 2rem;
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .pageBox#price h3 {
    margin-bottom: 2em;
  }
  .pageBox#price h3:before {
    display: none;
  }
  .pageBox#price h3:after {
    display: none;
  }
}
.pageBox#price .reward-wrap {
  margin-bottom: 30px;
  background-color: #fff;
  padding: 15px;
}
.pageBox#price .reward-wrap h4 {
  text-align: center;
  margin: 0 auto;
  text-align: center;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  letter-spacing: 0.2rem;
  font-size: 21px;
}
@media screen and (min-width: 481px) {
  .pageBox#price .reward-wrap h4 {
    margin-bottom: 2em;
  }
  .pageBox#price .reward-wrap h4:before {
    display: none;
  }
  .pageBox#price .reward-wrap h4:after {
    display: none;
  }
}
.pageBox#price .reward-wrap h4 i {
  color: rgb(226, 154, 39);
  margin-bottom: 15px;
}
.pageBox#price .reward-wrap ol {
  display: flex;
  flex-wrap: wrap;
}
.pageBox#price .reward-wrap ol li {
  width: 100%;
  padding-left: 35px;
  position: relative;
  margin-bottom: 15px;
  text-indent: -2.3em;
  letter-spacing: 0;
}
.pageBox#price .reward-wrap ol li:before {
  content: "01";
  color: rgb(226, 154, 39);
  font-size: 16px;
  font-weight: bold;
  position: static;
  line-height: 1;
  left: 0;
  margin-right: 1em;
  letter-spacing: 0;
  top: -8px;
}
.pageBox#price .reward-wrap ol li:nth-child(2):before {
  content: "02";
}
.pageBox#price .reward-wrap ol li:nth-child(3):before {
  content: "03";
}
.pageBox#price .reward-wrap ol li:nth-child(4):before {
  content: "04";
}
.pageBox#price .reward-wrap ol li:nth-child(5):before {
  content: "05";
}
.pageBox#price .reward-wrap ol li:nth-child(6):before {
  content: "06";
}
.pageBox#price .reward-wrap ol li:nth-child(7):before {
  content: "07";
}
.pageBox#price .reward-wrap ol li:nth-child(8):before {
  content: "08";
}
.pageBox#price .reward-wrap ol li:nth-child(9):before {
  content: "09";
}
@media screen and (min-width: 481px) {
  .pageBox#price h3 {
    margin-bottom: 30px;
  }
  .pageBox#price .container {
    max-width: 800px;
  }
  .pageBox#price table.table-price {
    margin-bottom: 60px;
  }
  .pageBox#price table.table-price:last-child {
    margin-bottom: 60px;
  }
  .pageBox#price table.table-price + p.note {
    margin-top: -45px;
    margin-bottom: 60px;
  }
  .pageBox#price .reward-wrap {
    margin-bottom: 60px;
    padding: 30px;
  }
  .pageBox#price .reward-wrap ol {
    display: flex;
    flex-wrap: wrap;
  }
  .pageBox#price .reward-wrap ol li {
    text-indent: 0;
    padding-left: 30px;
    font-size: 14px;
    letter-spacing: 0;
    width: 50%;
    padding-left: 60px;
    padding-right: 10px;
    position: relative;
    margin-bottom: 40px;
  }
  .pageBox#price .reward-wrap ol li:before {
    font-size: 32px;
    font-weight: bold;
    position: absolute;
    line-height: 1;
    left: 0;
    top: -8px;
  }
  .pageBox#price .reward-wrap ol li:last-child {
    margin-bottom: 0;
  }
  .pageBox#price .reward-wrap ol li:nth-last-child(2) {
    margin-bottom: 0;
  }
}
.pageBox#tokusho table.tokusho-table {
  display: list-item;
  margin-bottom: 30px;
  border-top: 1px dotted #ccc;
  font-size: 16px;
}
.pageBox#tokusho table.tokusho-table:last-child {
  margin-bottom: 0;
}
.pageBox#tokusho table.tokusho-table tr {
  border-bottom: 1px dotted #ccc;
}
.pageBox#tokusho table.tokusho-table tr th, .pageBox#tokusho table.tokusho-table tr td {
  display: list-item;
  width: 100%;
}
.pageBox#tokusho table.tokusho-table tr th {
  padding-top: 1em;
  letter-spacing: 0.02em;
}
.pageBox#tokusho table.tokusho-table tr td {
  padding-bottom: 1em;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 481px) {
  .pageBox#tokusho h3 {
    margin-bottom: 30px;
  }
  .pageBox#tokusho .container {
    max-width: 800px;
  }
  .pageBox#tokusho table.tokusho-table {
    display: table;
    width: 100%;
    margin-bottom: 60px;
  }
  .pageBox#tokusho table.tokusho-table tr th, .pageBox#tokusho table.tokusho-table tr td {
    padding: 1em 0;
    display: table-cell;
  }
  .pageBox#tokusho table.tokusho-table tr th {
    width: 40%;
  }
  .pageBox#tokusho table.tokusho-table tr td {
    width: 60%;
  }
  .pageBox#tokusho table.tokusho-table:last-child {
    margin-bottom: 60px;
  }
  .pageBox#tokusho table.tokusho-table + p.note {
    margin-top: -45px;
    margin-bottom: 60px;
  }
}
.pageBox.no-padding {
  padding-top: 0;
  padding-bottom: 0;
}
.pageBox.gallery {
  padding-top: 0;
}
.pageBox.gallery h2 {
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .pageBox.gallery h2 {
    margin-bottom: 2em;
  }
  .pageBox.gallery h2:before {
    display: none;
  }
  .pageBox.gallery h2:after {
    display: none;
  }
}
.pageBox.gallery .gallery-inner {
  width: 100%;
  padding: 15px;
}
.pageBox.gallery .container-fluid {
  padding: 0px 0 15px;
}
.pageBox.gallery .container-fluid.gallery-2 {
  background-color: rgba(63, 37, 38, 0.1);
}
.pageBox.gallery .gallery-slider-wrap {
  margin: 0 auto;
}
@media screen and (min-width: 481px) {
  .pageBox.gallery {
    padding-bottom: 0;
  }
  .pageBox.gallery .container-fluid {
    padding: 60px 0;
  }
  .pageBox.gallery .container-fluid .gallery-inner {
    width: min(100%, 660px);
    margin: 0 auto 30px;
  }
  .pageBox.gallery .gallery-slider-wrap {
    margin: 0px auto;
  }
}
.pageBox.compe .post_password {
  display: flex;
  margin-bottom: 30px;
  flex-wrap: wrap;
}
.pageBox.compe .post_password input {
  margin-bottom: 10px;
  font-size: 13px;
}
.pageBox.compe .post_password p.note {
  width: 100%;
}
.pageBox.compe .compe-wrap {
  margin-top: 30px;
  overflow: auto; /*スクロールさせる*/
  white-space: nowrap;
  width: 100%;
}
.pageBox.compe .compe-wrap .table-scroll::-webkit-scrollbar {
  height: 5px;
}
.pageBox.compe .compe-wrap 　 .table-scroll::-webkit-scrollbar-track {
  background-color: rgb(63, 37, 38);
}
.pageBox.compe .compe-wrap .table-scroll::-webkit-scrollbar-thumb {
  background-color: rgb(164, 194, 165);
}
.pageBox.compe .pdf-button {
  background-color: rgba(63, 37, 38, 0.7);
  color: #fff;
  font-size: 13px;
  padding: 2px 8px;
}
.pageBox.compe span.compe-name + .pdf-button {
  margin-left: 10px;
}
.pageBox.compe table.compe-table tbody tr td {
  text-align: left;
}
.pageBox.compe table.compe-table tbody tr.cancelled td {
  background-color: #ccc;
}
@media screen and (min-width: 481px) {
  .pageBox.compe .post_password {
    display: flex;
  }
  .pageBox.compe .post_password input {
    margin-right: 5px;
  }
}
.pageBox.covid-19 {
  padding-top: 15px;
  padding-bottom: 15px;
}
.pageBox.covid-19 .covid-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border: 1px solid rgb(0, 22, 7);
  padding: 15px;
}
.pageBox.covid-19 .covid-wrap .button-wrap-general {
  padding: 0;
}
.pageBox.covid-19 .covid-wrap h2 {
  text-align: center;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  letter-spacing: 0.2rem;
}
@media screen and (min-width: 481px) {
  .pageBox.covid-19 .covid-wrap h2 {
    margin-bottom: 2em;
  }
  .pageBox.covid-19 .covid-wrap h2:before {
    display: none;
  }
  .pageBox.covid-19 .covid-wrap h2:after {
    display: none;
  }
}
@media screen and (min-width: 481px) {
  .pageBox.covid-19 {
    padding-bottom: 15px;
  }
  .pageBox.covid-19.for-garden {
    padding-top: 15px;
  }
  .pageBox.covid-19 .covid-wrap {
    padding: 30px 0;
  }
  .pageBox.covid-19 .covid-wrap h2 + p {
    margin-top: -30px;
    margin-bottom: 30px;
  }
}
.pageBox.reserve .container h2, .pageBox.reserve .container h3, .pageBox.manner .container h2, .pageBox.manner .container h3, .pageBox.compe .container h2, .pageBox.compe .container h3, .pageBox.price .container h2, .pageBox.price .container h3 {
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
}
@media screen and (min-width: 481px) {
  .pageBox.reserve .container h2, .pageBox.reserve .container h3, .pageBox.manner .container h2, .pageBox.manner .container h3, .pageBox.compe .container h2, .pageBox.compe .container h3, .pageBox.price .container h2, .pageBox.price .container h3 {
    margin-bottom: 2em;
  }
  .pageBox.reserve .container h2:before, .pageBox.reserve .container h3:before, .pageBox.manner .container h2:before, .pageBox.manner .container h3:before, .pageBox.compe .container h2:before, .pageBox.compe .container h3:before, .pageBox.price .container h2:before, .pageBox.price .container h3:before {
    display: none;
  }
  .pageBox.reserve .container h2:after, .pageBox.reserve .container h3:after, .pageBox.manner .container h2:after, .pageBox.manner .container h3:after, .pageBox.compe .container h2:after, .pageBox.compe .container h3:after, .pageBox.price .container h2:after, .pageBox.price .container h3:after {
    display: none;
  }
}
.pageBox.reserve .container ul + h1, .pageBox.reserve .container ul + h2, .pageBox.reserve .container ul + h3, .pageBox.reserve .container ol + h1, .pageBox.reserve .container ol + h2, .pageBox.reserve .container ol + h3, .pageBox.manner .container ul + h1, .pageBox.manner .container ul + h2, .pageBox.manner .container ul + h3, .pageBox.manner .container ol + h1, .pageBox.manner .container ol + h2, .pageBox.manner .container ol + h3, .pageBox.compe .container ul + h1, .pageBox.compe .container ul + h2, .pageBox.compe .container ul + h3, .pageBox.compe .container ol + h1, .pageBox.compe .container ol + h2, .pageBox.compe .container ol + h3, .pageBox.price .container ul + h1, .pageBox.price .container ul + h2, .pageBox.price .container ul + h3, .pageBox.price .container ol + h1, .pageBox.price .container ol + h2, .pageBox.price .container ol + h3 {
  margin-top: 3rem;
}
.pageBox.reserve .container ul li, .pageBox.manner .container ul li, .pageBox.compe .container ul li, .pageBox.price .container ul li {
  list-style-type: disc;
  margin-left: 1.5em;
}
.pageBox.reserve .container ol li, .pageBox.manner .container ol li, .pageBox.compe .container ol li, .pageBox.price .container ol li {
  list-style-type: decimal;
  margin-left: 1.5em;
}
@media screen and (max-width: 480px) {
  .pageBox.reserve .container p, .pageBox.reserve .container li, .pageBox.manner .container p, .pageBox.manner .container li, .pageBox.compe .container p, .pageBox.compe .container li, .pageBox.price .container p, .pageBox.price .container li {
    font-size: 13px;
  }
}
@media screen and (min-width: 481px) {
  .pageBox.reserve .container h2, .pageBox.reserve .container h3, .pageBox.reserve .container ul, .pageBox.reserve .container ol, .pageBox.reserve .container li, .pageBox.reserve .container p, .pageBox.manner .container h2, .pageBox.manner .container h3, .pageBox.manner .container ul, .pageBox.manner .container ol, .pageBox.manner .container li, .pageBox.manner .container p, .pageBox.compe .container h2, .pageBox.compe .container h3, .pageBox.compe .container ul, .pageBox.compe .container ol, .pageBox.compe .container li, .pageBox.compe .container p, .pageBox.price .container h2, .pageBox.price .container h3, .pageBox.price .container ul, .pageBox.price .container ol, .pageBox.price .container li, .pageBox.price .container p {
    max-width: calc(100% - 3em);
  }
}
.pageBox.membership-2 {
  background-color: #fff;
  padding-bottom: 0;
}
.pageBox.membership-2 h3 {
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  letter-spacing: 0.2rem;
}
@media screen and (min-width: 481px) {
  .pageBox.membership-2 h3 {
    margin-bottom: 4em;
  }
  .pageBox.membership-2 h3:before {
    background-color: rgb(226, 154, 39);
    content: "";
    display: block;
    height: 2px;
    width: 160px;
    left: 0;
    bottom: -60px;
    position: absolute;
    z-index: 1;
  }
}
@media screen and (min-width: 481px) {
  .pageBox.membership-2 .button-wrap-general {
    text-align: left;
  }
}
.pageBox.membership {
  background-color: rgba(63, 37, 38, 0.1);
}
.pageBox.membership h2 {
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  letter-spacing: 0.2rem;
}
@media screen and (min-width: 481px) {
  .pageBox.membership h2 {
    margin-bottom: 4em;
  }
  .pageBox.membership h2:before {
    background-color: rgb(226, 154, 39);
    content: "";
    display: block;
    height: 2px;
    width: 160px;
    left: 0;
    bottom: -60px;
    position: absolute;
    z-index: 1;
  }
}
.pageBox.membership .tokuten {
  background-color: #fff;
  box-shadow: 0 2.5rem 2rem -2rem hsla(200deg, 50%, 20%, 0.2);
  border-radius: 4px;
  margin: 30px auto;
  padding: 30px;
}
.pageBox.membership .tokuten .toku-inner h3 {
  text-align: center;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  letter-spacing: 0.2rem;
}
@media screen and (min-width: 481px) {
  .pageBox.membership .tokuten .toku-inner h3 {
    margin-bottom: 2em;
  }
  .pageBox.membership .tokuten .toku-inner h3:before {
    display: none;
  }
  .pageBox.membership .tokuten .toku-inner h3:after {
    display: none;
  }
}
.pageBox.membership .tokuten .toku-inner ul li {
  margin-bottom: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.pageBox.membership .tokuten .toku-inner ul li:last-child {
  margin-bottom: 0;
}
.pageBox.membership .tokuten .toku-inner ul li span {
  width: 40px;
  display: block;
}
.pageBox.membership .tokuten .toku-inner ul li span img {
  width: 100%;
}
.pageBox.membership .tokuten .toku-inner ul li .toku-wrap {
  width: calc(100% - 55px);
}
.pageBox.membership .tokuten .toku-inner ul li .toku-wrap h4 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 15px;
}
.pageBox.membership .tokuten .toku-inner ul li .toku-wrap p {
  letter-spacing: 0;
  line-height: 1.5;
}
.pageBox.membership .tokuten .toku-inner ul.notice-list li {
  margin-bottom: 15px;
  position: relative;
  padding-left: 1.8em;
}
.pageBox.membership .tokuten .toku-inner ul.notice-list li:before {
  position: absolute;
  left: -1em;
  content: "●";
  color: rgb(226, 154, 39);
}
.pageBox.membership .toroku-wrap {
  margin-top: 30px;
  overflow: auto; /*スクロールさせる*/
  white-space: nowrap;
  width: 100%;
}
.pageBox.membership .toroku-wrap .table-scroll::-webkit-scrollbar {
  height: 5px;
}
.pageBox.membership .toroku-wrap 　 .table-scroll::-webkit-scrollbar-track {
  background-color: rgb(63, 37, 38);
}
.pageBox.membership .toroku-wrap .table-scroll::-webkit-scrollbar-thumb {
  background-color: rgb(164, 194, 165);
}
.pageBox.membership table.toroku {
  margin-bottom: 15px;
  border: 1px solid rgb(63, 37, 38);
}
.pageBox.membership table.toroku .note {
  font-size: 11px;
  letter-spacing: 0;
}
.pageBox.membership table.toroku thead tr th {
  border-left: 1px solid #fff;
}
.pageBox.membership table.toroku thead tr th.type {
  border-left: 1px solid rgb(63, 37, 38);
}
.pageBox.membership table.toroku thead tr th.fee,
.pageBox.membership table.toroku thead tr th.we,
.pageBox.membership table.toroku thead tr th.wd {
  width: 12%;
}
.pageBox.membership table.toroku tbody tr {
  border-bottom: 1px solid rgb(63, 37, 38);
}
.pageBox.membership table.toroku tbody tr td:first-child,
.pageBox.membership table.toroku tbody tr td:nth-child(2),
.pageBox.membership table.toroku tbody tr td:nth-child(3) {
  text-align: left;
}
.pageBox.membership table.toroku tbody td.type {
  display: flex;
  border: none;
  align-items: center;
}
.pageBox.membership table.toroku tbody td.type .icon {
  margin-right: 10px;
  display: block;
  color: #fff;
  font-size: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  padding: 8px;
  border-radius: 2px;
  background-color: rgb(34, 116, 165);
}
.pageBox.membership table.toroku tbody td.type .icon.end {
  background-color: rgb(226, 154, 39);
}
.pageBox.membership table.toroku tbody tr.tr-end td {
  color: #ccc !important;
}
@media screen and (min-width: 481px) {
  .pageBox.membership .to-tel {
    background-color: #fff;
  }
  .pageBox.membership .tokuten {
    margin: 60px auto;
    padding: 60px 90px;
  }
  .pageBox.membership .tokuten .toku-inner ul li {
    margin-bottom: 60px;
  }
  .pageBox.membership .tokuten .toku-inner ul li span {
    width: 60px;
  }
  .pageBox.membership .tokuten .toku-inner ul li .toku-wrap {
    width: calc(100% - 90px);
  }
  .pageBox.membership .tokuten .toku-inner ul li .toku-wrap h4 {
    font-size: 21px;
    font-weight: 500;
  }
  .pageBox.membership .tokuten .toku-inner ul + .notice {
    margin-top: 60px;
  }
}
.pageBox.reserve {
  background-color: rgba(63, 37, 38, 0.1);
}
.pageBox.reserve .guide-go {
  margin-top: 30px;
}
.pageBox.reserve .guide-wrap {
  border-radius: 4px;
  padding: 15px;
}
.pageBox.reserve .guide-wrap .guide-inner {
  padding: 15px;
  background-color: #fff;
}
.pageBox.reserve .guide-wrap p.title {
  text-align: center;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  letter-spacing: 0.2rem;
  font-size: 18px;
}
@media screen and (min-width: 481px) {
  .pageBox.reserve .guide-wrap p.title {
    margin-bottom: 2em;
  }
  .pageBox.reserve .guide-wrap p.title:before {
    display: none;
  }
  .pageBox.reserve .guide-wrap p.title:after {
    display: none;
  }
}
.pageBox.reserve .guide-wrap p.ex {
  font-size: 14px;
  width: min(100%, 600px);
  margin: 0 auto 30px;
}
.pageBox.reserve .guide-wrap .button-wrap {
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 481px) {
  .pageBox.reserve .guide-go {
    margin-top: 60px;
  }
  .pageBox.reserve .guide-wrap .guide-inner {
    padding: 30px;
  }
  .pageBox.reserve .guide-wrap .guide-inner p.title {
    font-size: 28px;
  }
}
.pageBox.price .button-wrap-horizontal a {
  width: 100%;
}
.pageBox.price .button-wrap-horizontal a:first-child {
  margin-bottom: 30px;
}
@media screen and (max-width: 480px) {
  .pageBox.price table.fee-table {
    margin-bottom: 30px;
    width: 100%;
  }
  .pageBox.price table.fee-table tr th {
    font-weight: normal;
    display: list-item;
    font-size: 13px;
    background-color: rgb(63, 37, 38);
    color: #fff;
    margin: 0 -15px;
    padding: 10px 15px;
  }
  .pageBox.price table.fee-table tr td {
    padding-bottom: 15px;
    display: list-item;
    font-size: 13px;
    padding-top: 15px;
  }
}
@media screen and (min-width: 481px) {
  .pageBox.price .button-wrap-horizontal {
    padding-top: 30px;
  }
  .pageBox.price .button-wrap-horizontal a {
    width: auto;
    margin-right: 30px;
  }
  .pageBox.price table.fee-table {
    width: 100%;
    border-bottom: 1px dotted #ccc;
    margin-bottom: 60px;
  }
  .pageBox.price table.fee-table tr th {
    border-top: 1px dotted #ccc;
    font-weight: normal;
    width: 30%;
    padding: 15px 0;
  }
  .pageBox.price table.fee-table tr td {
    border-top: 1px dotted #ccc;
    padding: 15px 0;
  }
}
.pageBox#access {
  background: rgb(255, 255, 255);
  background: linear-gradient(180deg, rgb(255, 255, 255) 40%, rgb(0, 0, 0) 50%);
  padding-bottom: 0;
}
.pageBox#access h2, .pageBox#access p {
  color: rgb(0, 22, 7);
}
.pageBox#access div.for-map a.masters-button {
  width: 100%;
}
.pageBox#access.top-access {
  background-color: #fff;
  padding-bottom: 0;
}
@media screen and (max-width: 480px) {
  .pageBox#access.top-access p.lead {
    margin: 0 15px 15px;
  }
  .pageBox#access.top-access p.access-info {
    margin: 15px auto 15px;
    color: rgba(247, 252, 254, 0.9);
  }
  .pageBox#access.top-access .for-map .button-wrap-general {
    margin: 0 auto 30px;
    padding: 0;
  }
}
.pageBox#access.access-page {
  padding-top: 0;
  padding-bottom: 0;
}
.pageBox#access #map-wrap {
  width: 100vw;
  height: 100vw;
}
.pageBox#access #map-wrap iframe {
  height: 100%;
  width: 100%;
}
.pageBox#access dl.info {
  display: flex;
  flex-wrap: wrap;
}
.pageBox#access dl.info dt {
  letter-spacing: 0.1em;
  color: rgb(0, 76, 27);
  margin-bottom: 5px;
  font-size: 18px;
}
.pageBox#access dl.info dd {
  font-weight: normal;
  margin-bottom: 15px;
  width: 100%;
  font-size: 14px;
}
.pageBox#access dl.info dd:last-child {
  margin-bottom: 0;
}
.pageBox#access div.howaccess .howaccess-inner {
  background-color: #fff;
  padding: 15px;
  border-radius: 2px;
  box-shadow: 0 2.5rem 2rem -2rem hsla(200deg, 50%, 20%, 0.2);
  border: 1px solid #ccc;
  margin-bottom: 15px;
}
.pageBox#access div.howaccess h3 {
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  font-size: 21px;
  margin-bottom: 30px;
}
@media screen and (min-width: 481px) {
  .pageBox#access div.howaccess h3 {
    margin-bottom: 2em;
  }
  .pageBox#access div.howaccess h3:before {
    display: none;
  }
  .pageBox#access div.howaccess h3:after {
    display: none;
  }
}
.pageBox#access div.howaccess h4 {
  border-bottom: 1px dotted rgba(63, 37, 38, 0.7);
  margin-bottom: 15px;
  padding-bottom: 15px;
}
.pageBox#access div.howaccess p {
  font-size: 14px;
  line-height: 1.4;
}
.pageBox#access div.howaccess p + h4 {
  margin-top: 30px;
}
.pageBox#access div.howaccess p:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 481px) {
  .pageBox#access {
    padding-bottom: 60px;
  }
  .pageBox#access p.access-info {
    margin: 15px auto;
    text-align: center;
    color: rgba(247, 252, 254, 0.5);
  }
  .pageBox#access p.access-info span {
    margin: 0 15px;
  }
  .pageBox#access .container {
    max-width: 800px;
  }
  .pageBox#access #map-wrap {
    width: 100%;
    height: 360px;
  }
  .pageBox#access.access-page {
    padding-top: 0;
    padding-bottom: 0;
  }
  .pageBox#access div.howaccess {
    border: none;
  }
  .pageBox#access div.howaccess .howaccess-inner {
    border: none;
    padding: 0;
    box-shadow: none;
  }
  .pageBox#access div.howaccess p + h4 {
    margin-top: 30px;
  }
  .pageBox#access dl.info {
    display: flex;
    flex-wrap: wrap;
    padding-top: 15px;
    border-top: 1px dotted #ccc;
    margin-bottom: 60px;
  }
  .pageBox#access dl.info dt, .pageBox#access dl.info dd {
    font-weight: normal;
    padding: 0.5em 0;
    width: 100%;
    border-bottom: 1px dotted #ccc;
  }
  .pageBox#access dl.info dt {
    font-size: 16px;
    letter-spacing: 0.1em;
    width: 8em;
  }
  .pageBox#access dl.info dd {
    font-size: 16px;
    width: calc(100% - 11em);
    margin-bottom: 0;
  }
}
.pageBox.other-garden {
  padding-bottom: 0;
  background-color: rgb(63, 37, 38);
  color: #fff;
}
.pageBox.other-garden span.garden-log-img {
  width: 100%;
  margin: 0 auto 30px;
  display: block;
}
.pageBox.other-garden span.garden-log-img img {
  width: 100%;
}
.pageBox.other-garden .garden-block {
  margin-bottom: 15px;
}
.pageBox.other-garden .garden-block .wrap-image {
  display: flex;
  align-items: center;
  overflow: hidden;
  flex-wrap: wrap;
  position: relative;
  -webkit-transition: background-color 0.3s linear;
  position: relative;
}
.pageBox.other-garden .garden-block .wrap-image:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  background-color: rgba(0, 0, 0, 0.3);
  display: block;
  left: 0;
  top: 0;
}
.pageBox.other-garden .garden-block .wrap-image:hover:before {
  -webkit-transition: background-color 0.3s linear;
  background-color: rgba(0, 0, 0, 0.2);
}
.pageBox.other-garden .garden-block .wrap-image span {
  display: block;
  width: min(61.8%, 420px);
}
.pageBox.other-garden .garden-block .wrap-image span img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  height: 60px;
}
.pageBox.other-garden .garden-block .wrap-image .inner {
  width: 100%;
  overflow: hidden;
}
.pageBox.other-garden .garden-block .wrap-image .inner img {
  width: 100%;
}
.pageBox.other-garden .g-0 .garden-block {
  margin-bottom: 0;
}
.pageBox.other-garden .g-0 .garden-block .wrap-image span img {
  height: 40px;
}
.pageBox.other-garden.club-top {
  background-color: #fff;
}
@media screen and (min-width: 481px) {
  .pageBox.other-garden {
    padding-bottom: 0;
  }
  .pageBox.other-garden .justify-content-between {
    margin-bottom: 30px;
  }
  .pageBox.other-garden .justify-content-between .garden-block {
    margin-bottom: 0;
    padding: 30px;
  }
}
@media screen and (min-width: 481px) and (min-width: 1200px) {
  .pageBox.other-garden .justify-content-between .garden-block {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 481px) {
  .pageBox.other-garden .justify-content-between .garden-block .wrap-image span img {
    height: 120px;
    width: auto;
  }
}
@media screen and (min-width: 481px) {
  .pageBox.other-garden span.garden-log-img {
    width: 400px;
    margin: 0 auto 30px;
  }
}
@media screen and (min-width: 481px) {
  .pageBox.other-garden .g-0 .garden-block {
    margin-bottom: 0;
  }
  .pageBox.other-garden .g-0 .garden-block .wrap-image span img {
    height: 60px;
  }
}
@media screen and (min-width: 481px) {
  .pageBox.other-garden.club-top .justify-content-between {
    margin-bottom: 0;
  }
  .pageBox.other-garden.club-top .justify-content-between .garden-block .wrap-image span img {
    height: min(30%, 60px);
  }
}
@media screen and (min-width: 481px) {
  .pageBox {
    padding: 60px 0;
    margin-left: auto;
    margin-right: auto;
  }
}
.pageBox#vrfloor h2 {
  text-align: center;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  letter-spacing: 0.2rem;
}
@media screen and (min-width: 481px) {
  .pageBox#vrfloor h2 {
    margin-bottom: 2em;
  }
  .pageBox#vrfloor h2:before {
    display: none;
  }
  .pageBox#vrfloor h2:after {
    display: none;
  }
}
.pageBox#vrfloor p.lead {
  color: #fff;
  margin-bottom: 30px;
}
.pageBox#news {
  padding-bottom: 1px;
  margin-bottom: -1px;
}
.pageBox#news.archive-page {
  padding-bottom: 60px;
}
.pageBox#news div.for-top-news {
  max-width: 320px;
  margin: 0px auto 60px;
}
.pageBox#news h2 {
  text-align: center;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  letter-spacing: 0.2rem;
}
@media screen and (min-width: 481px) {
  .pageBox#news h2 {
    margin-bottom: 2em;
  }
  .pageBox#news h2:before {
    display: none;
  }
  .pageBox#news h2:after {
    display: none;
  }
}
.pageBox#news div.row div.col-12 {
  margin-bottom: 60px;
}
.pageBox#news div.row div.col-12.news-limit a {
  max-width: 267px !important;
  margin: 0 auto;
}
.pageBox#news div.row div.col-12 h3, .pageBox#news div.row div.col-12 a {
  color: rgb(0, 22, 7);
}
.pageBox#news div.row div.col-12 a {
  width: 100%;
  margin: 0 auto;
  display: block;
}
.pageBox#news div.row div.col-12 a h3 {
  color: rgb(0, 22, 7);
  font-size: 18px;
  margin-bottom: 15px;
  width: 100%;
  text-align: left;
  line-height: 1.6;
  min-height: 3em;
}
.pageBox#news div.row div.col-12 a div.info {
  text-align: right;
  color: rgba(0, 22, 7, 0.6);
  margin-bottom: 15px;
  font-size: 13px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1;
  padding: 8px 0;
  border-top: 1px dotted rgba(0, 22, 7, 0.6);
}
.pageBox#news div.row div.col-12 a figure {
  width: 100%;
  max-width: 240px;
  margin: 0 auto;
}
.pageBox#news div.row div.col-12 a figure img {
  width: 100%;
  border-radius: 4px;
}
.pageBox#news div.row div.col-12.news-archive a h3 {
  font-size: 14px;
  text-align: center;
}
.pageBox#news article h1.hCenter {
  font-size: 28px;
}
.pageBox#news article .article-body {
  max-width: 660px;
  margin: 0 auto 60px;
}
.pageBox#news article .article-body img {
  max-width: 660px;
}
.pageBox#news #button-wrap-general {
  text-align: center;
  padding: 0px 0 0;
}
.pageBox#news #button-wrap-general .masters-button {
  width: 100%;
}
.pageBox#news #more-news {
  display: none;
}
.pageBox#news .news-wrap {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 480px) {
  .pageBox#news {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .pageBox#news .news-wrap {
    width: 100%;
    padding: 0 0px;
  }
  .pageBox#news #more-news {
    margin-bottom: 0;
  }
  .pageBox#news #button-wrap-general {
    padding-top: 30px;
    padding-bottom: 0px;
  }
}
@media screen and (max-width: 1080px) {
  .pageBox#news .top-footer-image {
    background-attachment: scroll;
    background-size: contain;
  }
  .pageBox#news .top-footer-image .inner {
    height: 50vw;
  }
}
@media screen and (max-width: 480px) {
  .pageBox#news .scroll-wrap {
    /*中身スクロールします*/
    overflow: auto;
    /*テーブルを入れた場合、セル内の文字を折り返ししないようにします*/
    white-space: nowrap;
    /*惰性を与えてスムーズなスクロールにしますよ*/
    -webkit-overflow-scrolling: touch;
    padding: 0 90px 30px 0;
    transform: translateX(calc((100vw - 280px) / 2 - 30px));
  }
  .pageBox#news .scroll-wrap div.row {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start !important;
    width: 885px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .pageBox#news .scroll-wrap div.row div.col-12 {
    width: 280px !important;
    padding: 0 !important;
    margin: 0 15px 0 0 !important;
  }
  .pageBox#news .scroll-wrap div.row div.col-12:last-child {
    margin-right: 0;
  }
  .pageBox#news .scroll-wrap div.row div.col-12 a {
    width: 100%;
    max-width: none;
  }
  .pageBox#news .yoko_scroll::-webkit-scrollbar {
    /*スクロールバーを出しますよ*/
    height: 5px;
  }
  .pageBox#news .yoko_scroll::-webkit-scrollbar-thumb {
    /*スクロールバーの色を変えるなら*/
    background: red;
  }
  .pageBox#news #button-wrap-general {
    margin: 30px auto 0;
    text-align: center;
    padding: 0px 0 0;
  }
  .pageBox#news #button-wrap-general .masters-button {
    width: 100%;
  }
}

#main-visual-ms {
  display: flex;
  position: relative;
  flex-wrap: wrap;
  justify-content: space-between;
  background-position: center center;
  background-size: cover;
}
#main-visual-ms .inner {
  width: 100%;
}
#main-visual-ms .inner #message-1 {
  transition: all 0.3s;
  opacity: 1;
}
#main-visual-ms .inner #message-1 img.top-on-movie {
  width: 240px;
  height: auto;
  margin: 0 auto;
}
#main-visual-ms .inner #message-1.hide {
  transition: all 0.3s;
  opacity: 0;
  transform: translate(0, -50px);
}
#main-visual-ms .container {
  position: relative;
}
#main-visual-ms .main-content {
  margin-bottom: 60px;
  display: flex;
  flex-wrap: wrap;
  position: relative;
  align-items: center;
  max-width: 1170px;
  justify-content: flex-start;
}
#main-visual-ms .main-content div.logo-area {
  position: absolute;
  left: 0px;
  top: 150px;
}
#main-visual-ms .main-content .banner-for-abroad {
  width: 330px;
  position: absolute;
  right: 20px;
  bottom: -20px;
}
#main-visual-ms .main-content .banner-for-abroad img {
  width: 100%;
}
@media screen and (max-width: 480px) {
  #main-visual-ms .main-content .banner-for-abroad {
    position: static;
    width: 100%;
    max-width: 320px;
    margin: 30px auto 0;
    display: none;
  }
}
#main-visual-ms .main-content dl.top-info {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  font-size: 16px;
  width: 660px;
  margin-left: 0px;
  margin-top: 30px;
}
#main-visual-ms .main-content dl.top-info dt {
  font-weight: normal;
  width: 6em;
}
#main-visual-ms .main-content dl.top-info dd {
  width: calc(100% - 6em);
}
#main-visual-ms .main-content dl.top-info.in-english {
  width: 660px;
}
#main-visual-ms .main-content dl.top-info.in-english dt {
  width: 8em;
}
#main-visual-ms .main-content dl.top-info.in-english dd {
  width: calc(100% - 8em);
}
#main-visual-ms .main-content div.titles {
  position: absolute;
  right: 28px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
#main-visual-ms .main-content div.titles p.tl1 {
  font-size: 18px;
  vertical-align: middle;
}
#main-visual-ms .main-content div.titles p.tl2 {
  font-size: 32px;
  vertical-align: middle;
}
#main-visual-ms .main-content div.titles p.tl3 {
  vertical-align: middle;
  margin-top: 100px;
  font-size: 18px;
}
#main-visual-ms .main-content div.titles p {
  letter-spacing: 0.3em;
  text-shadow: 0px 4px 6px rgba(0, 0, 0, 0.94);
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-feature-settings: normal;
  -webkit-text-orientation: upright;
  text-orientation: upright;
}
#main-visual-ms .main-content div.titles.in-english {
  writing-mode: unset;
}
#main-visual-ms .main-content div.titles.in-english p {
  writing-mode: unset !important;
  letter-spacing: 0.01em;
}
#main-visual-ms .main-content div.titles.in-english p.tl1 {
  font-size: 24px;
  line-height: 1;
}
#main-visual-ms .main-content div.titles.in-english p.tl2 {
  font-size: 52px;
  line-height: 1;
}
#main-visual-ms .main-content div.titles.in-english p.tl3 {
  font-size: 24px;
  line-height: 1.5;
  margin-top: 45px;
}
#main-visual-ms .main-news-wrap {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 80px;
  width: 100vw;
  background-color: rgba(0, 76, 27, 0.8);
  color: #fff;
  display: flex;
}
#main-visual-ms .main-news-wrap .row {
  height: 100%;
}
#main-visual-ms .main-news-wrap .title-wrap {
  width: 210px;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  padding-right: 25px;
  justify-content: right;
}
#main-visual-ms .main-news-wrap .title-wrap h2 {
  margin-right: 15px;
  font-size: 20px;
  line-height: 1;
  margin-bottom: 0;
}
#main-visual-ms .main-news-wrap .title-wrap span {
  font-size: 10px;
}
#main-visual-ms .main-news-wrap .title-wrap span:before {
  content: "\f054";
  margin-right: 10px;
  font-family: "FontAwesome";
}
#main-visual-ms .main-news-wrap .title-wrap span a {
  color: #fff;
}
#main-visual-ms .main-news-wrap .list-wrap {
  border-left: 2px solid rgb(0, 54, 19);
  width: calc(100% - 210px);
  position: relative;
}
#main-visual-ms .main-news-wrap .list-wrap .new {
  padding: 4px 12px;
  background-color: rgb(63, 37, 38);
  color: #fff;
  display: inline-block;
  border-radius: 12px;
  position: absolute;
  font-size: 11px;
  top: -11px;
  left: 35px;
}
@media screen and (max-width: 480px) {
  #main-visual-ms .main-news-wrap .list-wrap .new {
    left: 0;
    border-radius: 0 12px 12px 0;
    top: -13px;
  }
}
#main-visual-ms .main-news-wrap ul.main-news-list {
  height: 100%;
  padding: 0 0 0 35px;
  margin: 0;
  display: flex;
  align-items: center;
}
#main-visual-ms .main-news-wrap ul.main-news-list li {
  list-style-type: none;
  font-size: 13px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#main-visual-ms .main-news-wrap ul.main-news-list li a {
  color: #fff;
  font-size: 13px;
}
#main-visual-ms .main-news-wrap ul.main-news-list li span {
  display: block;
  color: rgba(0, 22, 7, 0.6);
  font-size: 11px;
  letter-spacing: 0rem;
}
#main-visual-ms .main-news-wrap ul.main-news-list li span .date {
  display: inline-block;
  color: rgba(247, 252, 254, 0.5);
}
#main-visual-ms .main-news-wrap ul.main-news-list li span .cat {
  display: inline-block;
  margin-left: 1em;
}
@media screen and (max-width: 480px) {
  #main-visual-ms div.inner div.container {
    height: auto;
  }
  #main-visual-ms div.inner div.main-content {
    width: 100vw;
    margin-bottom: 30px;
    position: relative;
  }
  #main-visual-ms div.inner div.main-content div.logo-area {
    position: absolute;
    width: 115px;
    left: 50%;
    top: 80px;
    transform: translateX(-57.5px);
  }
  #main-visual-ms div.inner div.main-content div.logo-area img {
    width: 100%;
  }
  #main-visual-ms div.inner div.main-content div.titles {
    left: 15px;
    bottom: 180px;
  }
  #main-visual-ms div.inner div.main-content div.titles p.tl1 {
    font-size: 13px;
    vertical-align: middle;
  }
  #main-visual-ms div.inner div.main-content div.titles p.tl3 {
    font-size: 13px;
    margin-top: 3em;
    vertical-align: middle;
  }
  #main-visual-ms div.inner div.main-content div.titles p.tl2 {
    font-size: 21px;
    line-height: 1;
    vertical-align: middle;
  }
  #main-visual-ms div.inner div.main-content div.titles p {
    text-shadow: 0px 4px 6px rgba(0, 0, 0, 0.94);
  }
  #main-visual-ms div.inner div.main-content div.titles.china {
    bottom: 210px;
  }
  #main-visual-ms div.inner div.main-content div.titles.china p.tl2 {
    line-height: 1.3;
  }
  #main-visual-ms div.inner div.main-content div.titles.korea {
    bottom: 200px;
  }
  #main-visual-ms div.inner div.main-content div.titles.korea p.tl3 {
    letter-spacing: 0;
  }
  #main-visual-ms div.inner div.main-content div.titles.in-english {
    left: 0;
    width: 100%;
    bottom: 280px;
    text-align: center;
  }
  #main-visual-ms div.inner div.main-content div.titles.in-english p.tl1 {
    font-size: 16px;
  }
  #main-visual-ms div.inner div.main-content div.titles.in-english p.tl2 {
    font-size: 24px;
  }
  #main-visual-ms div.inner div.main-content div.titles.in-english p.tl3 {
    font-size: 16px;
    margin-top: 30px;
  }
  #main-visual-ms div.inner div.main-content div.movie-background {
    margin: 0 -15px;
    height: 174.2vw;
    width: 100vw;
  }
  #main-visual-ms div.inner div.main-content div.movie-background:before {
    content: "";
    width: 100vw;
    height: 300px;
    display: block;
    background: transparent;
    background: linear-gradient(rgba(255, 255, 255, 0) 0, #1a1a1a 80%); /* 徐々に透明にする */
    position: absolute;
    left: 0;
    bottom: 0;
  }
  #main-visual-ms div.inner div.main-content .top-info {
    margin: 0 auto 15px;
    font-size: 14px;
    padding: 0 15px;
  }
}

.banner-for-abroad-out {
  background-color: #1a1a1a;
  padding: 0 15px 30px;
  text-align: center;
}
.banner-for-abroad-out a {
  display: block;
}
.banner-for-abroad-out a img {
  width: 100%;
  max-width: 320px;
  margin: 0 auto;
  vertical-align: bottom;
}
@media screen and (min-width: 481px) {
  .banner-for-abroad-out {
    display: none;
  }
}

div.movie-background {
  position: relative;
  margin: 120px auto 0;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  z-index: -1;
  padding: 0;
  width: 100%;
  overflow: hidden;
  width: 960px;
}
div.movie-background video {
  width: 100%;
}

div.movie-background-2 {
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  z-index: -1;
  padding: 0;
  margin: 0;
  width: 100%;
  overflow: hidden;
}
div.movie-background-2 video {
  position: absolute;
  min-height: 100%;
  min-width: 100%;
  height: auto;
  width: auto;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

#garden-main-visual-switch {
  height: 61.8vh;
  background: #000;
  display: flex;
  position: relative;
  flex-wrap: wrap;
  justify-content: space-between;
  background-position: center center;
  background-size: cover;
}
#garden-main-visual-switch .inner {
  width: 100%;
}
#garden-main-visual-switch .container {
  position: relative;
}
#garden-main-visual-switch .main-content {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#garden-main-visual-switch .main-content span.w-logo {
  display: block;
  width: 61.8%;
  margin: 0 auto 30px;
}
#garden-main-visual-switch .main-content span.w-logo img {
  width: 100%;
}
#garden-main-visual-switch .main-content h1 {
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  font-size: 21px;
  color: #fff;
  text-align: center;
}
@media screen and (min-width: 481px) {
  #garden-main-visual-switch .main-content h1 {
    margin-bottom: 2em;
  }
  #garden-main-visual-switch .main-content h1:before {
    display: none;
  }
  #garden-main-visual-switch .main-content h1:after {
    display: none;
  }
}
#garden-main-visual-switch .main-content p.main-lead {
  font-size: 13px;
  letter-spacing: 0;
  line-height: 1.6;
  color: #fff;
  text-align: center;
  max-width: 61.8vw;
  margin: 0 auto;
  text-align: left;
}
@media screen and (min-width: 481px) {
  #garden-main-visual-switch {
    margin-top: 0;
    margin-bottom: 0;
    height: clamp(480px, 100vh - 135px, 800px);
  }
  #garden-main-visual-switch .inner {
    width: 100%;
    margin-top: 0;
  }
  #garden-main-visual-switch .main-content {
    margin-top: 0;
  }
  #garden-main-visual-switch .main-content h1 {
    font-size: 31px;
    margin-bottom: 30px;
  }
  #garden-main-visual-switch .main-content p.main-lead {
    font-size: 16px;
  }
}
@media screen and (min-width: 801px) {
  #garden-main-visual-switch.hide {
    margin-top: 135px;
  }
  #garden-main-visual-switch .main-content {
    height: clamp(480px, 100vh - 135px, 800px);
    width: clamp(801px, 61.8%, 1200px);
  }
  #garden-main-visual-switch .main-content h1 {
    letter-spacing: 0.2rem;
    text-align: left;
    margin-bottom: 1em;
    position: relative;
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
    font-feature-settings: "palt";
    color: #fff;
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 801px) and (min-width: 481px) {
  #garden-main-visual-switch .main-content h1 {
    margin-bottom: 2em;
  }
  #garden-main-visual-switch .main-content h1:before {
    display: none;
  }
  #garden-main-visual-switch .main-content h1:after {
    display: none;
  }
}
@media screen and (min-width: 801px) {
  #garden-main-visual-switch .main-content p.main-lead {
    color: #fff;
  }
}

aside.animation-scroll {
  position: absolute;
  right: 90px;
  bottom: 0;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
aside.animation-scroll span.title {
  writing-mode: vertical-lr;
  font-size: 0.7rem;
  margin-bottom: 0.7rem;
  letter-spacing: 0.15rem;
}
aside.animation-scroll span.bar {
  display: block;
  width: 1px;
  height: 100px;
  background-color: rgba(247, 252, 254, 0.5);
  position: relative;
  overflow: hidden;
}
aside.animation-scroll span.bar:after {
  content: "";
  display: block;
  width: 1px;
  height: 70px;
  background-color: #fff;
  position: absolute;
  top: -70px;
  left: 0;
  -webkit-animation: animation-scroll 1.4s infinite;
  animation: animation-scroll 1.4s infinite;
}
@media screen and (max-width: 480px) {
  aside.animation-scroll {
    bottom: 0px;
    right: 15px;
  }
  aside.animation-scroll span.bar {
    height: 50px;
  }
  aside.animation-scroll span.bar:after {
    height: 35px;
    top: -35px;
  }
}

.animation-scroll-up {
  position: absolute;
  right: calc(50% - 0.1em);
  top: 0;
  color: #fff;
}
.animation-scroll-up a {
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
.animation-scroll-up a:hover {
  color: #fff;
}
.animation-scroll-up span.title {
  writing-mode: vertical-rl;
  font-size: 0.7rem;
  margin-top: 0.7rem;
  letter-spacing: 0.15rem;
}
.animation-scroll-up span.bar {
  display: block;
  width: 1px;
  height: 100px;
  background-color: rgba(247, 252, 254, 0.5);
  position: relative;
  overflow: hidden;
}
.animation-scroll-up span.bar:after {
  content: "";
  display: block;
  width: 1px;
  height: 70px;
  background-color: #fff;
  position: absolute;
  bottom: -70px;
  left: 0;
  -webkit-animation: animation-scroll-up 1.4s infinite;
  animation: animation-scroll-up 1.4s infinite;
}
@media screen and (max-width: 480px) {
  .animation-scroll-up {
    bottom: 60px;
    right: 15px;
  }
  .animation-scroll-up span.bar {
    height: 50px;
  }
  .animation-scroll-up span.bar:after {
    height: 35px;
    top: -35px;
  }
}

@-webkit-keyframes animation-scroll {
  from {
    top: -70px;
  }
  to {
    top: 100%;
  }
}
@keyframes animation-scroll {
  from {
    top: -70px;
  }
  to {
    top: 100%;
  }
}
@-webkit-keyframes animation-scroll-up {
  from {
    bottom: -70px;
  }
  to {
    bottom: 100%;
  }
}
@keyframes animation-scroll-up {
  from {
    bottom: -70px;
  }
  to {
    bottom: 100%;
  }
}
.news-list dl {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  padding: 30px 0;
  border-top: 1px solid #ccc;
  position: relative;
  margin-bottom: 0;
}
.news-list dl dt.news-title {
  font-size: 18px;
  margin-bottom: 0px;
  width: calc(100% - 60px);
  font-weight: normal;
  line-height: 1.3;
}
.news-list dl dd.date {
  width: 100%;
  font-size: 12px;
  color: rgba(0, 22, 7, 0.6);
  margin-bottom: 0;
}
.news-list dl dd.cont {
  width: 100%;
  font-size: 13px;
  margin-bottom: 0;
}
.news-list dl dd.cont .cont-inner {
  padding-top: 30px;
}
.news-list dl dd.cont .cont-inner img {
  max-width: 100%;
  height: auto;
}
.news-list dl dd.cont div.news-image {
  text-align: center;
  padding: 30px;
  max-width: 100%;
}
.news-list dl dd.cont div.link {
  text-align: right;
  width: 100%;
  margin-top: 30px;
  padding-right: 30px;
}
.news-list dl dd.link {
  text-align: right;
  width: 100%;
}
.news-list .toggle {
  display: none;
}
.news-list .option {
  position: relative;
  margin-bottom: 1em;
}
.news-list .title,
.news-list .cont {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translateZ(0);
  transition: all 0.3s;
}
.news-list .title:hover,
.news-list .cont:hover {
  cursor: pointer;
}
.news-list .title {
  border: solid 1px rgba(0, 22, 7, 0.6);
  padding: 1em;
  display: block;
  font-weight: bold;
  margin: 0;
  width: 30px;
  height: 30px;
  border-radius: 30px;
  position: absolute;
  right: 0;
  top: 30px;
}
.news-list .title::after,
.news-list .title::before {
  content: "";
  position: absolute;
  right: calc(50% - 1px);
  top: calc(50% - 1px);
  width: 2px;
  height: 0.75em;
  background-color: rgba(0, 22, 7, 0.6);
  transition: all 0.3s;
  margin-top: -0.375em;
}
.news-list .title::after {
  transform: rotate(90deg);
  top: calc(50% - 1px);
}
.news-list .cont {
  max-height: 0;
  overflow: hidden;
}
.news-list .toggle:checked + .title + .cont {
  max-height: 1000px;
  height: auto;
  transition: all 1.5s;
}
.news-list .toggle:checked + .title::before {
  transform: rotate(90deg) !important;
}
@media screen and (max-width: 480px) {
  .news-list .title {
    top: 50%;
    padding: 0;
    transform: translateY(-50%);
    padding: 0;
    width: 24px;
    height: 24px;
  }
  .news-list dl {
    padding: 15px 0;
  }
  .news-list dl dt.news-title {
    font-size: 13px;
    width: calc(100% - 45px);
  }
  .news-list dl dd.link {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .news-list dl dd.link span.title-2 a.masters-button {
    width: 100%;
  }
  .news-list dl dd.date {
    letter-spacing: 0;
    font-size: 11px;
    margin-bottom: 0;
  }
  .news-list dl dd.cont {
    padding: 0;
    font-size: 12px;
    line-height: 1.5;
    padding-top: 0px;
  }
  .news-list dl dd.cont div.link {
    margin-top: 15px;
    text-align: center;
    padding-bottom: 15px;
    padding-right: 0;
  }
  .news-list dl dd.cont div.link a.masters-button {
    width: 100%;
  }
  .news-list dl dd.cont div.news-image img {
    width: 100%;
  }
}

.swiper-button-prev,
.swiper-button-next {
  display: none !important;
}

.swiper-pagination {
  width: 100%;
  bottom: 10px;
}
.swiper-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  margin: 0 3px;
  background-color: #fff;
  opacity: 0.4;
}
.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  opacity: 1;
}

#lang-menu {
  position: fixed;
  line-height: 1;
  top: 20px;
  font-size: 13px;
  right: 120px;
  z-index: 100;
}
#lang-menu:hover {
  cursor: pointer;
}
#lang-menu a {
  color: #fff;
  font-size: 13px;
}
@media screen and (max-width: 480px) {
  #lang-menu {
    right: 70px;
  }
}

#lang-body {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  -webkit-transition: background-color 0.3s linear;
  transition: all 0.4s;
}
#lang-body.open {
  display: block;
  width: 100vw;
  height: 120px;
  z-index: 99;
  background-color: rgba(26, 26, 26, 0.9);
  color: #fff;
  -webkit-transition: background-color 0.3s linear;
  transition: all 0.4s;
}
#lang-body div.lang-inner {
  display: flex;
  align-items: center;
  height: 100%;
  margin: 0 auto;
  width: 100%;
  max-width: 480px;
  padding: 15px;
}
#lang-body div.lang-inner ul {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  justify-content: space-around;
}
#lang-body div.lang-inner ul li {
  text-align: center;
  border-right: 1px solid rgba(247, 252, 254, 0.5);
  width: 33.3333333333%;
}
#lang-body div.lang-inner ul li:last-child {
  border-right: none;
}
#lang-body div.lang-inner ul li a {
  color: rgba(247, 252, 254, 0.9);
}

#b-menu {
  position: fixed;
  display: flex;
  padding: 0px;
  border-radius: 100px;
  width: auto;
  height: auto;
  z-index: 9996;
  justify-content: center;
  top: 17px;
  right: 70px;
}
#b-menu a {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 480px) {
  #b-menu {
    top: 23px;
    right: 15px;
  }
}
#b-menu.hide button.menu-trigger:after, #b-menu.no-top button.menu-trigger:after {
  color: rgba(247, 252, 254, 0.9);
}
#b-menu.hide button.menu-trigger span, #b-menu.no-top button.menu-trigger span {
  background-color: rgba(247, 252, 254, 0.9);
}

button.menu-trigger {
  cursor: pointer;
  background-color: transparent;
  border: none;
  outline: none;
}
button.menu-trigger:after {
  content: "MENU";
  color: #fff;
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translate(20px, -50%);
  font-size: 11px;
}
@media screen and (max-width: 480px) {
  button.menu-trigger:after {
    top: -10px;
    left: -100%;
  }
}

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
}

.menu-trigger {
  position: relative;
  width: 24px;
  height: 16px;
}

.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 2px;
}

.menu-trigger span:nth-of-type(1) {
  top: 0;
  opacity: 1;
}

.menu-trigger span:nth-of-type(2) {
  top: 7px;
  width: 75%;
  opacity: 1;
}

.menu-trigger span:nth-of-type(3) {
  bottom: 0;
  opacity: 1;
}

.menu-trigger.active span:nth-of-type(1) {
  transform: translateY(14px) rotate(-45deg);
  opacity: 0;
}

.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}

.menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-14px) rotate(45deg);
  opacity: 0;
}

.menu-trigger:hover span:nth-of-type(3) {
  transform: scale(0.5, 1);
  transform-origin: bottom left;
}

#b-menu:hover .menu-trigger span:nth-of-tyle(2) {
  transition: all 0.3s ease;
  width: 100%;
}

div#spmenuModal {
  height: 100%;
}
div#spmenuModal div.modal-content {
  background-color: transparent;
  z-index: -1;
  height: 100%;
  border: none;
  flex-direction: inherit;
  justify-content: center;
  align-items: center;
}
div#spmenuModal div.modal-content div.spmenuInner {
  display: flex;
  flex-direction: column;
  height: 100%;
  position: relative;
  padding: 0 15px;
  width: 100%;
}
div#spmenuModal div.modal-content div.spmenuInner a {
  color: rgb(0, 22, 7);
}
div#spmenuModal div.modal-content div.spmenuInner div.lists {
  position: absolute;
  background-color: rgba(26, 26, 26, 0.9);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  height: 100%;
  padding: 80px 30px 30px;
  width: 100%;
  left: 0;
  top: 0;
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  animation: fadeIn 2s linear;
  animation-fill-mode: both;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
div#spmenuModal div.modal-content div.spmenuInner .lists-inner {
  width: min(100%, 1200px);
  height: min(100%, 800px);
  display: flex;
  flex-wrap: wrap;
  align-content: center;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap {
  width: 300px;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap h2 {
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  font-size: 18px;
}
@media screen and (min-width: 481px) {
  div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap h2 {
    margin-bottom: 2em;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap h2:before {
    display: none;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap h2:after {
    display: none;
  }
}
div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap h2 a {
  color: #fff;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap .modal-buttons {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap .modal-buttons a.masters-button {
  margin: 15px auto;
  width: 100%;
  background-color: transparent;
  border-color: #fff;
  color: #fff;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap .modal-buttons a.masters-button:hover {
  background-color: #fff;
  color: rgb(63, 37, 38);
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap {
  padding-right: 30px;
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  justify-content: space-around;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-28 {
  width: 28%;
  margin-left: auto;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-30 {
  width: 30%;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-33 {
  width: 100%;
  width: 33%;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-100 {
  width: 100%;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.big-list {
  width: 100%;
  margin-bottom: 0;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.big-list li {
  color: #fff;
  margin-bottom: 20px;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.big-list li span {
  letter-spacing: 0.2rem;
  text-align: left;
  margin-bottom: 1em;
  position: relative;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-feature-settings: "palt";
  font-size: 18px;
}
@media screen and (min-width: 481px) {
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.big-list li span {
    margin-bottom: 2em;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.big-list li span:before {
    display: none;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.big-list li span:after {
    display: none;
  }
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.big-list li + ul.sub-list {
  margin-top: -10px;
  margin-bottom: 20px;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.sub-list {
  margin-bottom: 0;
  width: 100%;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.sub-list li {
  color: #fff;
  display: inline-block;
  font-size: 12px;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.sub-list li a {
  margin-right: 2em;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .ex {
  padding-top: 15px;
  border-top: 1px dotted rgba(247, 252, 254, 0.5);
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .garden {
  padding-top: 30px;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap a {
  color: rgba(247, 252, 254, 0.9);
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap a:hover {
  color: #fff;
  transition: all 0.4s;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap h2 {
  margin-bottom: 15px;
  font-size: 16px;
  color: #fff;
  text-align: left;
}
div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap p {
  font-size: 11px;
  color: #fff;
  line-height: 1.3;
  margin-bottom: 15px;
}
@media screen and (max-width: 720px) {
  div#spmenuModal div.modal-content div.spmenuInner div.lists {
    padding: 60px 15px 15px;
    height: auto;
  }
  div#spmenuModal div.modal-content div.spmenuInner .lists-inner {
    width: 100%;
    height: 100%;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap {
    order: 1;
    padding-top: 15px;
    padding-bottom: 30px;
    width: 100%;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap h2 {
    font-size: 16px;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap h2 a {
    color: #fff;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-button-wrap .modal-buttons a.masters-button {
    margin: 0 auto 10px;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap {
    padding-right: 0;
    order: 2;
    width: 100%;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.big-list.garden li:first-child span {
    display: none;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.big-list li {
    margin-bottom: 5px;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap ul.big-list li a span {
    font-size: 16px;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-100 {
    width: 100%;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-33 {
    width: 100%;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-28,
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-30 {
    width: 50%;
    font-size: 11px;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-30,
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-28 .list-wrap-33 {
    font-size: 13px;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-30 ul.big-list li,
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-28 .list-wrap-33 ul.big-list li {
    margin-bottom: 15px;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-30 ul.big-list li a,
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-28 .list-wrap-33 ul.big-list li a {
    padding: 5px 0;
  }
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-30 ul.big-list li a span,
  div#spmenuModal div.modal-content div.spmenuInner .modal-mainlist-wrap .list-wrap-28 .list-wrap-33 ul.big-list li a span {
    font-size: 13px;
  }
}
div#spmenuModal #menu-walkthrough {
  background-image: url("img/bath_iwaburo.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
div#spmenuModal #menu-walkthrough a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 200px;
  overflow: hidden;
  position: relative;
  flex-wrap: wrap;
  font-size: 21px;
}
div#spmenuModal #menu-walkthrough a:after {
  content: "";
  width: 100%;
  height: 200px;
  background-color: rgba(0, 0, 0, 0.3);
  position: absolute;
  left: 0;
  top: 0;
}
div#spmenuModal #menu-walkthrough a span.title {
  z-index: 2;
  display: block;
  text-align: center;
  width: calc(100% - 30px);
  align-self: end;
}
div#spmenuModal #menu-walkthrough a span.exp {
  z-index: 2;
  text-align: center;
  font-size: 13px;
  display: block;
  width: calc(100% - 30px);
}
div#spmenuModal #menu-walkthrough a video {
  z-index: 0;
  width: 100%;
  position: absolute;
  left: 0;
  height: auto;
  top: 0;
}
div#spmenuModal.spmenuModal-on .close-spmenuModal {
  position: fixed;
  display: flex;
  padding: 0px;
  width: auto;
  height: auto;
  z-index: 9996;
  justify-content: center;
  top: 17px;
  right: 70px;
}
@media screen and (max-width: 480px) {
  div#spmenuModal.spmenuModal-on .close-spmenuModal {
    top: 23px;
    right: 15px;
  }
}
div#spmenuModal.spmenuModal-on .close-spmenuModal #closeSPMenu {
  display: flex;
  align-items: center;
  justify-content: center;
}
div#spmenuModal.spmenuModal-on .close-spmenuModal #closeSPMenu div.button {
  cursor: pointer;
  border: none;
  outline: none;
  position: relative;
  width: 24px;
  height: 16px;
}
div#spmenuModal.spmenuModal-on .close-spmenuModal #closeSPMenu div.button span {
  position: absolute;
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
  position: relative;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 4px;
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 2px;
}
div#spmenuModal.spmenuModal-on .close-spmenuModal #closeSPMenu div.button span:nth-of-type(1) {
  transform: translateY(14px) rotate(-45deg);
  top: -8px;
  left: 0px;
}
div#spmenuModal.spmenuModal-on .close-spmenuModal #closeSPMenu div.button span:nth-of-type(2) {
  top: 11px;
  opacity: 0;
}
div#spmenuModal.spmenuModal-on .close-spmenuModal #closeSPMenu div.button span:nth-of-type(3) {
  bottom: -6px;
  left: 0px;
  transform: translateY(-14px) rotate(45deg);
}

.gallery .slider-gallery-wrap {
  margin-bottom: 30px;
}
@media screen and (min-width: 481px) {
  .gallery .slider-gallery-wrap {
    margin-bottom: 90px;
  }
}
.gallery .swiper-container {
  width: 100%;
}
.gallery .swiper-container.main-image {
  width: min(100%, 640px);
  margin: 0 auto 15px;
}
.gallery .swiper-container.slider-thumbnail {
  height: 90px;
  width: 600px;
}
.gallery .swiper-container.slider-thumbnail .swiper-wrapper .swiper-slide {
  padding: 5px;
  height: 100%;
  opacity: 0.5;
  overflow: hidden;
}
.gallery .swiper-container.slider-thumbnail .swiper-wrapper .swiper-slide img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.gallery .swiper-container.slider-thumbnail .swiper-wrapper .swiper-slide.swiper-slide-thumb-active {
  opacity: 1;
}
@media screen and (max-width: 480px) {
  .gallery .swiper-container .swiper-slide img {
    height: auto;
    width: 100% !important;
    max-height: 360px;
  }
}
@media screen and (min-width: 481px) {
  .gallery .swiper-container.main-image {
    height: 420px;
    margin: 0 auto 30px;
  }
  .gallery .swiper-container.slider-thumbnail {
    height: auto !important;
  }
  .gallery .swiper-container.slider-thumbnail .swiper-wrapper {
    display: flex;
    flex-wrap: wrap;
  }
}

/*
右から左へ
----------------------------*/
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
/*
左から右へ
----------------------------*/
@keyframes infinity-scroll-right {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0%);
  }
}
/*
IE11対策
----------------------------*/
_:-ms-lang(x)::-ms-backdrop,
.d-demo {
  display: -ms-grid;
  overflow: hidden;
}

/*----------------------------*/
.d-demo__wrap {
  display: flex;
  overflow: hidden;
}

.d-demo__list {
  display: flex;
  list-style: none;
}

.d-demo__list--left {
  animation: infinity-scroll-left 95s infinite linear 0.5s both;
}

.d-demo__list--right {
  animation: infinity-scroll-right 95s infinite linear 0.5s both;
}

.d-demo__item {
  width: 16.6666666667vw;
  width: 180px;
  margin-right: 12px;
}
@media screen and (min-width: 481px) {
  .d-demo__item {
    width: 320px;
    margin-right: 45px;
  }
}

.d-demo__item > img {
  width: 100%;
}

/*
マウスオーバーで一時停止させたい場合は以下
----------------------------*/
.d-demo__wrap:hover .d-demo__list--left {
  animation-play-state: paused;
}

nav#mid-list ul.big-type {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
nav#mid-list ul.big-type li {
  width: calc(50% - 15px);
  margin-bottom: 30px;
  background-color: #fff;
  border-radius: 2px;
}
@media screen and (max-width: 480px) {
  nav#mid-list ul.big-type li {
    width: 100%;
    margin-bottom: 15px;
  }
}
nav#mid-list ul.big-type li a {
  padding: 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 480px) {
  nav#mid-list ul.big-type li a {
    padding: 15px;
  }
}
nav#mid-list ul.big-type li a figure {
  width: 60px;
  margin: 0;
}
nav#mid-list ul.big-type li a figure img {
  width: 60px;
  height: auto;
}
nav#mid-list ul.big-type li a .text-body {
  text-align: left;
  width: calc(100% - 80px);
}
nav#mid-list ul.big-type li a .text-body h3 {
  font-size: 18px;
  text-align: left !important;
  margin-bottom: 10px;
  padding-bottom: 0;
}
nav#mid-list ul.big-type li a .text-body h3:before {
  border: none !important;
  height: 0 !important;
  background: none !important;
}
nav#mid-list ul.big-type li a .text-body h3:after {
  border: none !important;
  height: 0 !important;
  background: none !important;
}
nav#mid-list ul.big-type li a .text-body p {
  font-size: 11px;
  line-height: 1.3;
}
nav#mid-list ul.reg-type {
  margin-top: 30px;
  width: 100%;
}
nav#mid-list ul.reg-type li {
  margin-bottom: 15px;
}
nav#mid-list ul.reg-type li a {
  width: 100%;
}
@media screen and (min-width: 481px) {
  nav#mid-list ul.reg-type {
    max-width: 320px;
    margin: 60px auto 0px;
  }
  nav#mid-list ul.reg-type li {
    margin-bottom: 30px;
  }
  nav#mid-list ul.reg-type li a {
    width: 100%;
  }
}

body.front div#wrap {
  background-image: url("img/bg_left.png");
  background-repeat: no-repeat;
  background-position: left top;
}
body.front div#wrap main {
  background-image: url("img/bg_right.png");
  background-repeat: no-repeat;
  background-position: right top;
}

.tabContents {
  display: none;
}

.tabContents.active {
  display: block;
}

div.tab-wrapper {
  margin: 30px auto 0;
  box-shadow: 0 2.5rem 2rem -2rem hsla(200deg, 50%, 20%, 0.2);
}
div.tab-wrapper ul.comp-tab {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
div.tab-wrapper ul.comp-tab li {
  width: 50%;
}
div.tab-wrapper ul.comp-tab li a {
  padding: 15px;
  text-align: center;
  display: block;
  font-weight: 700;
}
div.tab-wrapper ul.comp-tab li.active {
  font-size: 120%;
}
@media screen and (max-width: 480px) {
  div.tab-wrapper .tabContents.for-member {
    padding: 0;
  }
}
div.tab-wrapper .tabContents.for-member p.tab-annnai {
  padding: 0 15px;
  margin-bottom: 0;
}

.tab-wrap {
  display: flex;
  flex-wrap: wrap;
}

.tab-label {
  color: White;
  background: LightGray;
  margin-right: 5px;
  padding: 3px 12px;
  order: -1;
}

.tab-content {
  width: 100%;
  display: none;
}

/* アクティブなタブ */
.tab-switch:checked + .tab-label {
  background: DeepSkyBlue;
}

.tab-switch:checked + .tab-label + .tab-content {
  display: block;
}

/* ラジオボタン非表示 */
.tab-switch {
  display: none;
}

dl.price-list {
  display: flex;
  max-width: 480px;
  margin: 60px auto 0 0;
  flex-wrap: wrap;
}
dl.price-list dt {
  font-size: 14px;
  padding: 5px 0;
  width: calc(100% - 7em);
  font-weight: normal;
  position: relative;
}
dl.price-list dt span {
  background-color: #fff;
  padding-right: 10px;
}
dl.price-list dt:after {
  z-index: -1;
  content: "";
  border-top: dotted 1px #ccc;
  height: 1px;
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 100%;
}
dl.price-list dd {
  padding: 5px 0;
  margin-bottom: 0;
  font-size: 14px;
  width: 7em;
  text-align: left;
}

div.family-room {
  position: relative;
}
div.family-room h3 {
  margin-bottom: 30px;
}
div.family-room h3 figure {
  margin-bottom: 15px;
}
div.family-room figure {
  margin-bottom: 15px;
}
div.family-room ul.spec-icon {
  position: absolute;
  right: 20px;
  top: 80px;
  font-size: 21px;
  z-index: 20;
  color: #fff;
}

.para {
  position: relative;
}
.para img.anime {
  z-index: 10;
  left: 0;
  top: 0;
  position: absolute;
  width: 100%;
  opacity: 0;
  animation: change-img-anim 30s infinite;
}
.para img.anime:nth-of-type(1) {
  animation-delay: 0s;
}
.para img.anime:nth-of-type(2) {
  animation-delay: 6s;
}
.para img.anime:nth-of-type(3) {
  animation-delay: 12s;
}

@keyframes change-img-anim {
  0% {
    opacity: 0;
  }
  5% {
    opacity: 1;
  }
  45% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
.back-gray {
  background-color: rgba(250, 246, 238, 0.89) !important;
}
.back-gray h2, .back-gray p, .back-gray h3 {
  color: rgb(0, 22, 7);
}

dl.access-info {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  border-top: 1px solid #ccc;
  margin-bottom: 60px;
}
dl.access-info dt {
  width: 6em;
  padding: 15px 15px 15px 0;
  border-bottom: 1px solid #ccc;
  font-size: 18px;
  margin: 0;
}
dl.access-info dd {
  margin: 0;
  font-size: 18px;
  padding: 15px 0 15px 15px;
  width: calc(100% - 6em);
  border-bottom: 1px solid #ccc;
}

div.key-steps {
  max-width: 420px;
  margin: 0 auto;
}
@media screen and (max-width: 480px) {
  div.key-steps {
    padding: 30px 15px 15px;
  }
}

@media screen and (max-width: 480px) {
  div.key-notice {
    padding: 15px;
  }
}

div.key-step {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  padding: 0px;
  border-radius: 12px;
  border: 1px solid rgb(164, 194, 165);
  background-color: #fff;
  box-shadow: 0 2.5rem 2rem -2rem hsla(200deg, 50%, 20%, 0.2);
  margin-bottom: 60px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
div.key-step div.title-box {
  color: rgb(63, 37, 38);
  width: 100%;
  padding: 30px 30px 0;
  font-size: 21px;
  position: relative;
}
div.key-step div.title-box span {
  line-height: 1;
  font-weight: bold;
  background-color: rgb(63, 37, 38);
  color: #fff;
  padding: 15px;
  border-radius: 30px;
  width: 50px;
  height: 50px;
  display: flex;
  position: absolute;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  font-weight: normal;
  left: -15px;
  top: -20px;
}
div.key-step div.cont-box {
  padding: 30px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
div.key-step div.cont-box figure {
  width: 120px;
  height: 80px;
  margin-bottom: 0;
  text-align: center;
}
div.key-step div.cont-box figure img {
  height: 60px;
  width: auto;
  margin: 0 auto;
}
div.key-step div.cont-box .pbox {
  width: calc(100% - 120px);
}
div.key-step div.cont-box .pbox.ponly {
  width: 100%;
}
div.key-step div.cont-box .pbox p {
  margin-bottom: 0;
}
div.key-step div.cont-box .pbox p.chu {
  color: rgb(226, 154, 39);
}
@media screen and (max-width: 480px) {
  div.key-step:last-child {
    margin-bottom: 15px;
  }
}

.pagination .nav-links {
  text-align: center;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.pagination .nav-links .current {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin: 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: rgba(26, 26, 26, 0.9);
  color: rgba(247, 252, 254, 0.9);
  font-size: 14px;
  line-height: 27px;
}
.pagination .nav-links .dots {
  display: inline-block;
  margin: 8px;
  font-size: 14px;
  font-weight: bold;
  line-height: 27px;
}
.pagination .nav-links a.page-numbers {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin: 8px;
  border: 1px solid #005bac;
  border-radius: 4px;
  font-size: 14px;
  text-decoration: none;
  line-height: 27px;
}
.pagination .nav-links a.page-numbers:hover {
  background: rgb(164, 194, 165);
  border-color: rgb(164, 194, 165);
  color: #fff;
  transition: all 0.3s;
}
.pagination .nav-links a.prev.page-nunbers,
.pagination .nav-links a.next.page-numbers {
  width: auto;
  padding-right: 6px;
  padding-left: 6px;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.pagination .nav-links a.prev.page-numbers,
.pagination .nav-links a.next.page-numbers {
  width: auto;
  padding-right: 6px;
  padding-left: 6px;
  border: 0;
  border-radius: 0;
  background: transparent;
}

@media screen and (min-width: 481px) {
  body.not-front .title-area {
    padding-top: 52px;
  }
}

/*# sourceMappingURL=style.css.map */
