@charset "UTF-8";
/* ===================================================================
CSS information

file name  : copy.css
author     : Abilive
style info : コピー
=================================================================== */
/* ===================================================================
CSS information

file name  : _settings.scss
author     : Abilive
style info : 汎用設定
=================================================================== */
@-webkit-keyframes FadeIn {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes FadeIn {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes FadeUp {
  0% {
    -webkit-transform: translateY(-200%);
            transform: translateY(-200%);
  }
  50% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes FadeUp {
  0% {
    -webkit-transform: translateY(-200%);
            transform: translateY(-200%);
  }
  50% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
/*共通設定*/
*,
::before,
::after {
  padding: 0;
  margin: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

ul,
ol {
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
}

img {
  max-width: 100%;
}

.wrap {
  overflow: hidden;
}

.parent {
  padding: 80px 5vw;
}

.parent-02 {
  padding: 0 5vw;
}

.parent-03 {
  padding: 0 5vw;
}

.child {
  max-width: 1360px;
  width: 100%;
  margin: 0 auto;
}

.sp-br,
.sp-ul {
  display: none;
}

/*終わり*/
/*アニメーション*/
/*スクロールふわっと表示*/
.scroll {
  opacity: 0;
  -webkit-transform: translate3d(0, 20px, 0);
          transform: translate3d(0, 20px, 0);
}

.scroll.is-active {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition: 0.8s;
  transition: 0.8s;
}

/*終わり*/
/*js表示 一個ずつ出てくる*/
.scr-target {
  opacity: 0;
  -webkit-transform: translate3d(0, 35px, 0);
          transform: translate3d(0, 35px, 0);
}

.scr-target.is-active {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition: 1s;
  transition: 1s;
}

/*終わり*/
/*スクロールフェードイン*/
.js-fadeLeft {
  opacity: 0;
  -webkit-transform: translateX(-40px);
          transform: translateX(-40px);
  -webkit-transition: opacity .6s, -webkit-transform .6s;
  transition: opacity .6s, -webkit-transform .6s;
  transition: opacity .6s, transform .6s;
  transition: opacity .6s, transform .6s, -webkit-transform .6s;
}

.js-fadeLeft.is-inview {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.js-fadeRight {
  opacity: 0;
  -webkit-transform: translateX(40px);
          transform: translateX(40px);
  -webkit-transition: opacity .6s, -webkit-transform .6s;
  transition: opacity .6s, -webkit-transform .6s;
  transition: opacity .6s, transform .6s;
  transition: opacity .6s, transform .6s, -webkit-transform .6s;
}

.js-fadeRight.is-inview {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.js-fadeUp {
  opacity: 0;
  -webkit-transform: translateY(40px);
          transform: translateY(40px);
  -webkit-transition: opacity .6s, -webkit-transform .6s;
  transition: opacity .6s, -webkit-transform .6s;
  transition: opacity .6s, transform .6s;
  transition: opacity .6s, transform .6s, -webkit-transform .6s;
}

.js-fadeUp.is-inview {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

/*終わり*/
/*終わり*/
/*<header class="header">*/
.header {
  padding: 16px 0;
  width: 100%;
  height: 80px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  color: #fff;
}

.header-inner {
  width: 100%;
  height: 100%;
}

.header-site-menu {
  width: 100%;
  height: 100%;
}

.header-nav {
  position: relative;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.header-nav .pc-ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 32px;
  font-size: 16px;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

.header-nav .pc-ul-01 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.reserve-btn {
  border: solid 1px #fff;
  padding: 8px 40px;
}

/*終わり*/
/*<div class="banner">*/
.banner {
  padding: 0 5vw;
  position: fixed;
  bottom: 16px;
  right: 0;
  z-index: 1;
}

.banner-btn {
  display: inline-block;
  max-width: 200px;
  width: 100%;
  text-align: right;
}

.banner-btn img {
  display: block;
}

/*終わり*/
/*<div class="r-banner">*/
.r-banner {
  position: fixed;
  -webkit-box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
  width: 100%;
  height: 60px;
  bottom: 0;
  right: 0;
  z-index: 1;
}

.r-banner-in {
  background-color: #fff;
  width: 100%;
  height: 100%;
}

.r-banner-flex {
  padding: 4px 2vw;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.r-banner-flex .flex-l {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.r-banner-img {
  max-width: 80px;
  width: 100%;
  margin-right: 16px;
}

.r-banner-txt {
  font-size: 16px;
}

.r-banner-btn {
  text-align: center;
  border: solid 1px #222;
  max-width: 180px;
  width: 100%;
  height: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

/*終わり*/
/*<footer class="index-footer">*/
.index-footer {
  background-color: #f1f1f1;
}

.index-footer-txt {
  text-align: center;
  padding: 4px 0;
}

/*終わり*/
/*<footer class="footer">*/
.footer {
  margin-bottom: 60px;
}

.footer-in {
  border-top: solid 2px #f1f1f1;
}

.footer-nav {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 16px 0;
}

.footer-nav li {
  width: 23%;
  text-align: center;
  margin-bottom: 8px;
}

.footer-txt {
  border-top: solid 2px #f1f1f1;
  padding: 16px;
}

.footer-txt-in {
  max-width: 600px;
  width: 100%;
  margin: 0 auto;
}

.footer .txt-05 {
  background-color: #f1f1f1;
  padding: 4px 5vw;
  text-align: center;
}

.pc-none {
  display: none;
}

.stay_box {
  margin: 0 auto;
  padding: 30px 0 0 0;
  max-width: 1200px;
  background: #fff;
  text-align: center;
  border-top: solid 2px #f1f1f1;
}

.stay_box .hotel_tel {
  margin: 20px 0;
}

.stay_box .hotel_tel .h_code {
  display: inline-block;
  margin: 0 10px 10px 0;
  border: 1px solid #2c818b;
  border-radius: 10px;
  padding-top: 5px;
  width: 100px;
  background: #2c818b;
  color: #fff;
  font-size: 12px;
  text-align: center;
}

.stay_box .hotel_tel .h_code span {
  display: block;
  margin-top: 5px;
  border-radius: 0 0 9px 9px;
  background: #fff;
  color: #000;
  font-size: 20px;
}

.stay_box .hotel_tel .h_txt {
  display: inline-block;
  color: #000;
  font-size: 16px;
}

.stay_box .hotel_tel .h_txt span {
  display: inline-block;
  padding-left: 10px;
  color: #000;
  font-size: 36px;
}

.ukv {
  background: #736969;
  text-align: center;
  padding: 50px 0 50px 0;
}

.ukv h1 {
  font-size: 30px;
  color: #fff;
}

.ukv h1 span {
  display: block;
  font-size: 16px;
  font-weight: normal;
}

.con_about .box_about {
  width: 1200px;
  margin: 0 auto 4em;
}

.con_about .box_about .box_tbl {
  width: 100%;
}

.con_about .box_about .box_tbl .tbl_basic {
  width: 100%;
}

.box_tbl table tr:nth-child(1) {
  border-top: 2px solid #999;
}

.con_about .box_about .box_tbl .tbl_basic th {
  width: 25%;
  text-align: left;
}

.box_tbl table tr th, .box_tbl table tr td {
  border-bottom: 1px solid #ccc;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: 0.1em;
  padding: 15px;
}

.con_about .box_about .box_tbl .tbl_basic td dl {
  margin-bottom: 5px;
  padding-bottom: 5px;
  border-bottom: 1px dotted #aaa;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.con_about .box_about .box_tbl .tbl_basic td dl dt {
  width: 25%;
}

.con_about .box_about .box_tbl .tbl_basic td dl dd {
  width: 70%;
  border-left: 1px dotted #aaa;
}

.con_about .box_about .box_tbl .tbl_basic td dl dt, .con_about .box_about .box_tbl .tbl_basic td dl dd {
  padding: 0.4em 0.4em 0.4em 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.con_about .box_about .box_tbl .tbl_basic td dl:last-child {
  border-bottom: none;
}

.bbtn {
  width: 300px;
  margin: auto;
}

.bbtn a {
  display: block;
  background: #000;
  border-radius: 50px;
  text-align: center;
  padding: 10px 0;
  color: #fff;
}

.tst {
  font-weight: bold;
  margin: 10px 0;
}

.tst_n {
  font-weight: bold;
  margin: 0;
}

.privacyBox {
  margin-bottom: 50px;
  color: #333;
}

.privacyBox .mb20 {
  margin-bottom: 4px;
}

.privacyBox .ttl {
  width: 100%;
  min-width: 600px;
  border-collapse: collapse;
}

.privacyBox table tbody tr {
  border: 1px solid #ddd;
}

.privacyBox table tbody tr .none {
  border: none;
}

.privacyBox table tbody tr th {
  background: #fff7e6;
  border: 1px solid #ddd;
  padding: 15px;
}

.privacyBox table tbody tr {
  border: 1px solid #ddd;
}

.privacyBox table tbody tr .tbl_list {
  line-height: 2;
  width: 50%;
}

.box_tbl table tr:nth-child(1) {
  border-top: 2px solid #999;
}

.privacyBox table tbody tr {
  border: 1px solid #ddd;
}

.privacyBox table tbody tr td {
  padding: 15px;
  border: 1px solid #ddd;
}

.table-wrap {
  overflow-x: auto;
}

.privacyBox .list li {
  line-height: 2;
  text-indent: -1.2em;
  padding-left: 2em;
}

.pp {
  margin-bottom: 15px;
}

.scInrS {
  color: #956f29;
  text-decoration: underline;
}

.dateLabel {
  margin: 0 0 15px 0;
}

.icatch {
  margin: 0 0 15px 0;
  width: 100%;
}

.icatch img {
  width: 100%;
  height: auto;
}

.con_about .box_infonews p {
  margin-bottom: 10px;
}

.con_about .box_infonews {
  max-width: 900px;
  margin: 0 auto 4em;
}

.con_about .box_infonews img {
  width: 100%;
  height: auto;
  margin: 10px 0;
}

.infobtn {
  border-radius: 50px;
  border: 1px solid #000;
  padding: 10px 50px;
  margin: 30px 0 0 0;
}

/*終わり*/
/*タブレット*/
@media (max-width: 1024px) {
  /*共通設定*/
  .header-nav .pc-ul {
    display: none;
  }

  /*終わり*/
  /*<header class="header">*/
  .header {
    padding: 0 5vw;
    width: 100%;
    height: 80px;
    position: fixed;
    z-index: 100;
  }

  .header-nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }

  .header-nav .sp-ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 32px;
    font-size: 16px;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  }

  /*ハンバーガーボタン*/
  .hamburger {
    display: block;
    position: fixed;
    z-index: 60;
    position: absolute;
    top: 50%;
    right: 5vw;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 42px;
    height: 42px;
    cursor: pointer;
    text-align: center;
    background-color: #907f41;
    -webkit-box-shadow: 0 0 2px #fff;
            box-shadow: 0 0 2px #fff;
    border-radius: 4px;
  }

  .hamburger span {
    display: block;
    position: absolute;
    width: 30px;
    height: 3px;
    left: 6px;
    background: #fff;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
  }

  .hamburger span:nth-child(1) {
    top: 10px;
  }

  .hamburger span:nth-child(2) {
    top: 20px;
  }

  .hamburger span:nth-child(3) {
    top: 30px;
  }

  /* ナビ開いてる時のボタン */
  .hamburger.active span:nth-child(1) {
    top: 20px;
    left: 6px;
    -webkit-transform: rotate(315deg);
    transform: rotate(315deg);
  }

  .hamburger.active span:nth-child(2),
  .hamburger.active span:nth-child(3) {
    top: 20px;
    -webkit-transform: rotate(-315deg);
    transform: rotate(-315deg);
  }

  .header-nav {
    position: fixed;
    z-index: 50;
    top: 0;
    left: 0;
    text-align: center;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    width: 100%;
  }

  .header-nav .sp-ul {
    background-color: #907f41;
    margin: 0 auto;
    width: 100%;
    height: 100vh;
    color: #fff;
  }

  .header-nav .sp-ul li {
    list-style-type: none;
    padding: 0;
    width: 50%;
    margin: 0;
  }

  .header-nav .sp-ul li:last-child {
    padding-bottom: 0;
    border-bottom: none;
  }

  .header-nav .sp-ul a:hover {
    background: #ddd;
  }

  .header-nav .sp-ul li a {
    padding: 1.5em 0;
    font-size: 16px;
    text-decoration: none;
    display: block;
  }

  /* このクラスを、jQueryで付与・削除する */
  .header-nav.active {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }

  /*終わり*/
  /*<div class="banner">*/
  .banner-btn {
    max-width: 200px;
  }

  /*終わり*/
  /*<footer class="footer">*/
  .footer-nav li {
    font-size: 12px;
    width: 25%;
  }

  /*終わり*/
  .con_about .box_about {
    width: 95%;
  }

  .con_about .box_about .box_tbl .tbl_basic th {
    width: 100%;
  }

  .box_tbl table tr th, .box_tbl table tr td {
    display: block;
  }

  .con_about .box_about .box_tbl .tbl_basic td dl {
    border-bottom: none;
  }

  .con_about .box_about .box_tbl .tbl_basic td dl dt {
    width: 100%;
    background: #ccc;
    border-bottom: 1px dotted #aaa;
  }

  .con_about .box_about .box_tbl .tbl_basic td dl dd {
    width: 100%;
    margin-bottom: 0.4em;
    border-left: none;
    border-radius: none;
  }

  .box_tbl table tr th {
    background: #ccc;
    max-width: none;
  }
}
/*スマホ*/
@media (max-width: 599px) {
  /*共通設定*/
  .parent {
    padding: 50px 4%;
  }

  .pc-br {
    display: none;
  }

  .sp-br {
    display: block;
  }

  /*終わり*/
  /*<header class="header">*/
  /*ハンバーガーボタン*/
  .header-nav .sp-ul {
    padding: 0 5vw;
  }

  .header-nav .sp-ul li {
    width: 100%;
  }

  .header-nav .sp-ul li a {
    padding: 8px 0;
    width: 100%;
    display: block;
  }

  /*終わり*/
  /*<div class="banner">*/
  .banner-btn {
    max-width: 150px;
  }

  /*終わり*/
  /*<div class="r-banner">*/
  .r-banner-img {
    margin-right: 8px;
  }

  .r-banner-txt {
    font-size: 12px;
  }

  .r-banner-btn {
    max-width: 80px;
    font-size: 12px;
  }

  /*終わり*/
  /*<footer class="footer">*/
  .footer {
    margin-bottom: 100px;
  }

  .footer-in {
    border-top: none;
  }

  .footer-nav {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
  }

  .footer-nav::after {
    content: "";
    position: absolute;
    top: 0;
    /* left: -5vw; */
    width: 100vw;
    height: 100%;
    background-color: #333;
    z-index: -1;
  }

  .footer-nav li {
    width: 100%;
    text-align: left;
    margin-bottom: 16px;
    color: #fff;
    padding-left: 4%;
  }

  .footer-nav li a {
    display: block;
  }

  .footer-txt {
    border-top: none;
    padding: 16px 4vw;
  }

  .parent-02 {
    padding: 0;
  }

  .parent-03 {
    padding: 50px 4%;
  }

  .pc-none {
    display: inherit;
  }

  .stay_box .hotel_tel .h_code {
    display: inline-block;
    margin: 0 10px 10px 0;
    border: 1px solid #2c818b;
    border-radius: 10px;
    padding-top: 5px;
    width: 100px;
    background: #2c818b;
    color: #fff;
    font-size: 12px;
    text-align: center;
  }

  .stay_box .hotel_tel .h_txt {
    display: block;
    color: #000;
    font-size: 16px;
  }

  /*終わり*/
}
.topuse {
  text-align: left !important;
  margin-top: 2rem;
}

.global-header .link-lang {
  margin-left: 20px !important;
}

.global-header .link-lang a {
  border: 1px solid #FFF;
  padding: 11px 20px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 700;
}

.global-header .link-reserve a {
  padding: 11px 35px !important;
}

.global-header .link-reserve {
  margin-left: 20px !important;
}

.en_home .global-header .link-lang {
  margin: unset !important;
  width: auto;
}

@media screen and (max-width: 1024px) {
  .global-header .link-reserve {
    margin: 0 auto !important;
    width: 200px;
  }

  .global-header .link-reserve a {
    display: block;
  }

  .global-header .link-lang {
    margin: 0 auto !important;
    width: 200px;
  }

  .global-header .link-lang a {
    display: block;
  }

  body.home .global-header .link-lang {
    margin: unset !important;
    width: auto;
  }
}
.plan-link {
  font-size: 15px !important;
}

.plan-link a:before {
  width: 22px !important;
}

.plan-link a:before, .plan-link a:after {
  /* right: -82%!important;*/
}

.plan-link a:after {
  width: 7px !important;
}

@media screen and (max-width: 768px) {
  .plan-link a {
    padding-right: 5%;
  }
}
.mat100 {
  margin-top: 100px;
}

.en_home .header {
  opacity: 1;
}

/* .en_home header.global-header {
    position: fixed;
    position: absolute;
    right: 0;
    left: 0;
    z-index: 100;
} */
.plan-detail th {
  white-space: normal !important;
}

a.other_link {
  font-weight: bold;
  display: block;
  text-align: center;
  width: 300px;
  margin: 20px auto;
  padding: 20px 0;
  border: 2px solid #f1f1f1;
  position: relative;
}

a.other_link:after {
  position: absolute;
  top: 53%;
  right: 7%;
  height: 1px;
  background: #343434;
  content: "";
  width: 10px;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  -webkit-transform-origin: right center;
          transform-origin: right center;
}

a.other_link:before {
  position: absolute;
  top: 53%;
  right: 7.2%;
  height: 1px;
  width: 20px;
  background: #343434;
  content: "";
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
  .footer-nav li a.other_link {
    display: inline-block;
  }

  .footer-nav li:last-child {
    margin-bottom: 0;
  }
}
/*共通設定*/
#booked-widget-8whimdb8urq {
  position: absolute;
  right: 0;
}

@media (min-width: 641px) {
  #booked-widget-8whimdb8urq {
    top: 0;
  }
}
@media (max-width: 640px) {
  #booked-widget-8whimdb8urq {
    top: 70px;
  }
}
/*終わり*/
/*<section class="fv">*/
.fv {
  width: 100%;
  height: 100vh;
  padding-top: 130px;
  color: #fff;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  position: relative;
}

.fv-in {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.fv-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.fv-h1 {
  font-size: 80px;
  line-height: 1.1;
  font-weight: 400;
  width: 25%;
}

.fv-h1 span {
  font-weight: 200;
}

.fv-btn-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 60px;
}

.fv-btn {
  font-size: 32px;
  border-left: solid 1px #fff;
  padding-left: 16px;
  font-weight: 600;
}

.fv-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  -webkit-transition: .4s ease-in-out;
  transition: .4s ease-in-out;
  opacity: 0;
}

.fv-img01 {
  opacity: 1;
}

.fv-img02.active,
.fv-img03.active,
.fv-img04.active {
  opacity: 1;
}

/*終わり*/
/*<section class="service">*/
.service-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  padding: 50px 0 150px 0;
}

.service-flex02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  padding: 50px 0 0 0;
}

.service-flex-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.service-img {
  width: 48%;
  /*height: 350px;*/
  height: 600px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 5px;
}

.service-detail {
  width: 48%;
  line-height: 2.1875;
  font-size: 16px;
}

.service-h2 {
  font-size: 45px;
  margin-bottom: 32px;
  line-height: 1.1;
  font-family: YuMincho, "Zen Old Mincho", "Hiragino Mincho ProN", serif;
  font-weight: normal;
}

.service-h2 span {
  font-size: 14px;
}

.service-dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  padding: 16px 0;
}

.service-dl dt {
  width: 20%;
  font-weight: 600;
  padding-bottom: 8px;
}

.service-dl dd {
  width: 80%;
  padding-bottom: 8px;
}

.service-flex-02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  padding: 50px 0;
}

.service-detail-02 {
  width: 30%;
}

.thumb-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.big-thumb-area {
  width: 100%;
  /*height: 300px;*/
  height: 600px;
}

.big-thumb {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 5px;
}

.thumb-area ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  margin-top: calc(4% / 3);
}

.thumb-area ul li {
  width: 24%;
}

.thumb,
.thumb02,
.thumb03 {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/*<div class="stay">*/
/*<div class="suite">*/
.suite .service-txt {
  padding-bottom: 24px;
  border-bottom: solid 1px #f9f9f9;
}

/*<div class="deluxe">*/
.deluxe .service-txt {
  padding-bottom: 24px;
  border-bottom: solid 1px #f9f9f9;
}

/*<div class="deluxe-02">*/
.deluxe-02 .service-txt {
  padding-bottom: 24px;
  border-bottom: solid 1px #f9f9f9;
}

/*<div class="superior">*/
.superior {
  border-bottom: none;
}

.superior .service-txt {
  padding-bottom: 24px;
  border-bottom: solid 1px #f9f9f9;
}

/*<div class="dine">*/
.dine {
  border-bottom: none;
}

.dine .service-img {
  height: auto;
}

.dine .service-txt {
  margin-bottom: 16px;
}

/*<div class="service-flex-02">*/
.wood-img,
.lounge-img,
.ryoutei-img {
  display: inline-block;
  width: 100%;
  height: 200px;
}

.wood-h2,
.lounge-h2,
.ryoutei-h2 {
  font-size: 16px;
  margin: 16px 0;
}

.wood .txt-02,
.lounge .txt-02,
.ryoutei .txt-02 {
  margin-top: 8px;
  font-weight: 600;
}

.wood .txt-03 span,
.wood .txt-04 span,
.ryoutei .txt-03 span,
.ryoutei .txt-04 span {
  margin-right: 16px;
}

/*<div class="nature">*/
.nature {
  border-bottom: none;
}

.nature .service-img {
  height: auto;
}

/*<div class="onsen">*/
.onsen {
  border-bottom: none;
}

.onsen .service-img {
  height: auto;
}

/*終わり*/
/*<section class="info">*/
.info-h2 {
  text-align: center;
  font-size: 45px;
  margin-bottom: 32px;
  font-family: YuMincho, "Zen Old Mincho", "Hiragino Mincho ProN", serif;
  font-weight: normal;
}

.swiper-box {
  width: 95%;
  margin: 0 auto;
  border: solid 1px #f1f1f1;
}

.no-swiper-box {
  border: none;
  text-align: center;
}

.info-img {
  width: 100%;
  height: 240px;
  -o-object-fit: cover;
     object-fit: cover;
}

.swiper-title {
  padding: 8px 16px;
}

.info-txt {
  padding: 0 16px 8px 16px;
}

.swiper-button-prev,
.swiper-button-next {
  color: #222;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  font-size: 24px;
  font-weight: 600;
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, -5px);
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, -5px);
}

/*終わり*/
/*<section class="news">*/
.news-in {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}

.news-h2 {
  text-align: center;
  font-size: 45px;
  margin-bottom: 32px;
  font-family: YuMincho, "Zen Old Mincho", "Hiragino Mincho ProN", serif;
  font-weight: normal;
}

.news-ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  margin-bottom: 24px;
}

.news-time {
  width: auto;
}

.news-cate {
  width: 20%;
  text-align: center;
  background-color: #222;
  color: #fff;
}

.news-title {
  width: 65%;
}

.no-news {
  text-align: center;
}

/*終わり*/
/*<section class="access">*/
.access-h2 {
  text-align: center;
  font-size: 45px;
  margin-bottom: 32px;
  font-family: YuMincho, "Zen Old Mincho", "Hiragino Mincho ProN", serif;
  font-weight: normal;
}

.car {
  margin: 16px 0;
}

.access-title {
  font-weight: 600;
}

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

/*終わり*/
/*タブレット*/
@media (max-width: 1024px) {
  /*共通設定*/
  .fv-h1 {
    width: 45%;
  }

  /*終わり*/
  .service-img {
    height: auto;
  }

  /*<section class="fv">*/
  .fv-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 50px;
  }

  /*終わり*/
  /*<section class="service">*/
  .service-flex {
    display: block;
    padding: 50px 0;
  }

  .service-img {
    width: 100%;
    margin-bottom: 50px;
  }

  .service-detail {
    width: 100%;
  }

  .service-flex-02 {
    display: block;
  }

  .service-detail-02 {
    width: 100%;
    margin-bottom: 64px;
  }

  /*<div class="service-flex-02">*/
  .wood-img,
  .lounge-img,
  .ryoutei-img {
    height: auto;
  }

  /*終わり*/
  /*<section class="access">*/
  .map-area iframe {
    height: 320px;
  }

  .big-thumb-area {
    width: 100%;
    height: auto;
  }

  /*終わり*/
}
/*スマホ*/
@media (max-width: 768px) {
  .fv {
    padding-top: 80px;
    /* height: calc(100vh + 80px); */
    height: auto;
  }

  .fv-in {
    padding-top: 120px;
  }
}
@media (max-width: 599px) {
  /*共通設定*/
  .fv-h1 {
    width: 45%;
  }

  /*終わり*/
  /*<section class="fv">*/
  .fv-h1 {
    font-size: 48px;
    line-height: 1.1;
  }

  .fv-btn-flex {
    gap: 32px;
  }

  .fv-btn {
    font-size: 24px;
  }

  /*終わり*/
  /*<section class="service">*/
  .service-img {
    /*height: 220px;*/
    height: 300px;
  }

  .service-h2 {
    font-size: 35px;
  }

  .big-thumb-area {
    width: 100%;
    /*height: 200px;*/
    height: 300px;
  }

  .info-h2 {
    font-size: 35px;
    text-align: left;
  }

  .news-h2 {
    font-size: 35px;
    text-align: left;
  }

  .access-h2 {
    font-size: 35px;
    text-align: left;
  }

  /*終わり*/
  /*<section class="info">*/
  .info-img {
    width: 100%;
    height: 200px;
    -o-object-fit: cover;
       object-fit: cover;
  }

  /*終わり*/
  /*<section class="news">*/
  .news-ul li a {
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
  }

  .news-cate {
    width: auto;
    padding: 0 4px;
    margin-left: 16px;
  }

  .news-title {
    width: 100%;
    margin-top: 4px;
  }

  /*終わり*/
  /*<section class="access">*/
  .map-area iframe {
    height: 200px;
  }

  /*終わり*/
}
/*#search_tri*/
#search_tri {
  margin: 4em auto 0;
}

@media (max-width: 750px) {
  #search_tri {
    margin: 4em 0 0;
  }
}
@media only screen and (max-width: 992px) {
  .search-widget-search-container-bf1818 {
    width: 100% !important;
  }
}
@media (max-width: 420px) {
  .fv-in {
    /*justify-content: flex-start;*/
  }
}
@media (max-width: 400px) {
  .parent-02 {
    padding: 0 0vw;
  }
}
.global-header .logo {
  /* font-size: 24px; */
  /* font-family: "Noto Sans JP", sans-serif; */
  width: 85px;
  padding: 10px 0 0 0;
}

.global-header {
  padding: 10px 4% !important;
}

@media screen and (max-width: 1024px) {
  .global-header {
    padding: 10px 4% !important;
  }

  .global-header .logo {
    /* font-size: 24px; */
    /* font-family: "Noto Sans JP", sans-serif; */
    width: 50px;
    padding: 10px 0 0 0;
  }
}
@media screen and (max-width: 768px) {
  .global-header {
    padding: 5px 4% !important;
  }
}
.global-header-wrap {
  height: auto !important;
}

/*------アビリブ追記記述----------*/
/*20250117 Tripla差し替え改修*/
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .fv {
    padding-bottom: 80px;
  }
}
@media only screen and (max-width: 767px) {
  .fv {
    padding-bottom: 50px;
  }
}
@media screen and (max-height: 800px) {
  .fv-h1 {
    width: 25%;
  }

  .fv-flex {
    gap: 10px;
  }

  .global-header {
    padding: 20px 4% 10px !important;
  }
}
.con_access .box_route_pc {
  margin-top: 30px;
}

.con_access .box_route_pc > ul > li > .taxi_opt .taxi_table {
  width: 90%;
  border-collapse: collapse;
  font-size: 14px;
  margin: 30px auto;
}

.con_access .box_route_pc > ul > li > .taxi_opt .taxi_table th,
.con_access .box_route_pc > ul > li > .taxi_opt .taxi_table td {
  border-bottom: 1px solid #ddd;
  padding: 10px 12px;
  text-align: center;
}

.con_access .box_route_pc > ul > li > .taxi_opt .taxi_table th {
  background: #efefef;
  font-weight: 600;
}

.con_access .box_route_pc > ul > li > .taxi_opt .taxi_btn {
  display: block;
  margin: 20px auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.con_access .box_route_pc > ul > li > .taxi_opt .taxi_btn a {
  width: 280px;
  position: relative;
  display: block;
  padding: 15px 10px;
  font-size: 14px;
  color: #333;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  border: 1px solid #333;
}

.con_access .box_route_pc > ul > li > .taxi_opt .taxi_btn a::before {
  content: '';
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  display: block;
  width: 30px;
  height: 1px;
  background-color: #333;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.con_access .box_route_pc > ul > li > .taxi_opt .taxi_btn a::after {
  content: '';
  position: absolute;
  right: 19px;
  top: calc(50% - 4px);
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  display: block;
  width: 10px;
  height: 1px;
  background-color: #333;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.con_access .box_route_pc > ul > li > .taxi_opt .taxi_btn a:hover::before,
.con_access .box_route_pc > ul > li > .taxi_opt .taxi_btn a:hover::after {
  right: 15px;
}

.con_access .box_route_sp {
  padding: 10px;
}

.con_access .box_route_sp > ul > li > .taxi_opt .taxi_table {
  width: 600px;
  border-collapse: collapse;
  font-size: 14px;
  margin: 20px auto;
  /* display: block;
  overflow-x: auto;
  white-space: nowrap; */
}

.con_access .box_route_sp .taxi_table th,
.con_access .box_route_sp .taxi_table td {
  padding: 15px 11px;
  font-size: 14px;
}

.con_access .box_route_sp > ul > li > .taxi_opt .taxi_table th {
  background: #efefef;
  font-weight: 600;
}

.con_access .box_route_sp .taxi_btn {
  display: block;
  margin: 15px auto;
  width: 100%;
  text-align: center;
  position: relative;
}

.con_access .box_route_sp .taxi_btn a {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 12px 10px;
  font-size: 14px;
  border: 1px solid #333;
  display: block;
}

.con_access .box_route_sp .taxi_btn a::before {
  content: '';
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  display: block;
  width: 30px;
  height: 1px;
  background-color: #333;
}

.con_access .box_route_sp .taxi_btn a::after {
  content: '';
  position: absolute;
  right: 19px;
  top: calc(50% - 4px);
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  display: block;
  width: 10px;
  height: 1px;
  background-color: #333;
}

/*
Theme Name: 箱根リトリートサイト
Theme URI:
Description: 箱根リトリートサイト
Version: 1.0
Author: MIKI
Author URI:
*/
body {
  color: #464646;
}

:root {
  --hedding-font-family: YuMincho, "Zen Old Mincho", "Hiragino Mincho ProN", serif;
  --main-wide-top: 80px;
}

.view_pc-tab,
.view_sp {
  display: none;
}

@media screen and (min-width: 768px) {
  .view_pc-tab {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .view_sp {
    display: block;
  }
}
.inner {
  max-width: 1360px;
  margin: 8.21rem auto 240px;
}

.inner--mg-btm {
  margin-bottom: 100px;
}

.inner--mg-btm-sm {
  margin-bottom: 25px;
}

.c-intro .page-header-left {
  padding-right: 133px;
}

@media only screen and (min-width: 768px) {
  .c-intro .u-align--pt {
    margin-inline: auto;
  }
}

.c-intro .page-title {
  font-family: var(--hedding-font-family);
  font-size: 60px;
  font-weight: normal;
  line-height: 1;
  margin-bottom: 7px;
}

.c-intro .page-subtitle {
  font-family: var(--hedding-font-family);
  font-size: 24px;
}

.c-intro .page-lead {
  line-height: 2.1875;
  font-size: 16px;
}
.c-intro .page-lead em {
  font-weight: 700;
}

/* .plan-header {
  margin-bottom: 200px;
} */
.plan-header .plan-title {
  font-family: var(--hedding-font-family);
  font-size: 60px;
  font-weight: normal;
  margin-bottom: 10px;
}

.plan-header .plan-number {
  font-family: var(--hedding-font-family);
  font-size: 24px;
  margin-bottom: 20px;
}

.plan-header .plan-subtitle {
  font-family: var(--hedding-font-family);
  font-size: 35px;
  position: relative;
  padding-left: 1.5em;
  margin-bottom: 48px;
}

/*.plan-header .plan-subtitle::before {
  position: absolute;
  top: 0.9em;
  left: 0;
  display: block;
  white-space: nowrap;
  content: "";
  width: 1em;
  height: 1px;
  background: #333;
}*/
.plan-header .plan-lead {
  line-height: 2.1875;
  font-size: 16px;
}

.inst-header {
  margin: 5px 0 0 20px;
}

@media (max-width: 1024px) {
  .inst-header {
    margin: 0;
  }
}
.img-wide {
  max-width: 100vw;
  margin: var(--main-wide-top) calc(50% - 50vw) 200px;
  margin-bottom: 165px;
  border-radius: 0;
}

.grid-wrap {
  margin: 0 auto 313px auto;
}

.grid-wrap--mg-btm-none {
  margin-bottom: 0;
}

.grid-wrap--mg-lg {
  margin-bottom: 405px;
}

.grid-wrap--mg-sm {
  margin-bottom: 35px;
}

.grid-typeA {
  display: grid;
  grid-template-columns: 35.2% 26.471% 26.471%;
  gap: 8% 5.88%;
  grid-auto-flow: row;
  grid-template-areas: "A B B" "A C D";
  margin-bottom: 6%;
  width: 100%;
  height: 100%;
}

.grid-typeA.dine-mg-btm-lg {
  margin-bottom: 11%;
}

.page-id-145 .grid-typeA {
  margin-bottom: 7%;
}

.grid-typeA .gridA1 {
  grid-area: A;
}

.grid-typeA .gridA2 {
  grid-area: B;
}

.grid-typeA .gridA3 {
  grid-area: C;
}

.grid-typeA .gridA4 {
  grid-area: D;
}

.grid-typeA img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  /* height: 100%; */
  height: auto;
}

.grid-typeB {
  display: grid;
  grid-template-columns: 58.61% auto;
  gap: 6% 5.8%;
  grid-auto-flow: row;
  grid-template-areas: "A B" "C B" "C D";
}

.grid-typeB .gridA1 {
  grid-area: A;
}

.grid-typeB .gridA2 {
  grid-area: B;
  height: 92%;
}

.grid-typeB .gridA3 {
  grid-area: C;
}

.grid-typeB .gridA3 caption {
  margin-top: 6.5%;
}

.grid-typeB .gridA4 {
  grid-area: D;
}

.grid-typeB img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  /*height: 100%;*/
  height: auto;
}

.grid-typeA2 {
  display: grid;
  grid-template-columns: 26.4% 26.8% auto;
  gap: 8% 5.746%;
  grid-auto-flow: row;
  grid-template-areas: "A A D" "B C D";
  margin-bottom: 5.7%;
}

.grid-typeA2.dine-mg-btm-sm {
  margin-bottom: 10.8%;
}

.grid-typeA2 .gridA1 {
  grid-area: A;
}

.grid-typeA2 .gridA2 {
  grid-area: B;
}

.grid-typeA2 .gridA3 {
  grid-area: C;
}

.grid-typeA2 .gridA4 {
  grid-area: D;
}

.grid-typeA2 img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  /*height: 100%;*/
  height: auto;
}

.grid-typeB2 {
  display: grid;
  grid-template-columns: auto 58.61%;
  gap: 5.5% 6%;
  grid-auto-flow: row;
  grid-template-areas: "A A" "B C" "B D" "E D";
}

.page-id-76 .grid-typeB2,
.page-id-137 .grid-typeB2 {
  gap: 4.5% 6%;
}

.grid-typeB2 .gridA1 {
  grid-area: A;
}

.grid-typeB2 .gridA2 {
  grid-area: B;
  height: 92%;
}

.grid-typeB2 .gridA3 {
  grid-area: C;
}

.grid-typeB2 .gridA4 {
  grid-area: D;
}

.grid-typeB2 .gridA4 caption {
  margin-top: 4%;
}

.grid-typeB2 img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  /* height: 100%;*/
  height: auto;
}

.grid-typeB3 {
  display: grid;
  grid-template-columns: auto 58.61%;
  gap: 5.8% 6%;
  gap: 4.1% 5.88%;
  grid-auto-flow: row;
  grid-template-areas: "A B" "A C" "D C";
}

.grid-typeB3 .gridA1 {
  grid-area: A;
  height: 85%;
}

.grid-typeB3 .gridA2 {
  grid-area: B;
}

.grid-typeB3 .gridA3 {
  grid-area: C;
}

.grid-typeB3 .gridA3 caption {
  margin-top: 6.5%;
}

.grid-typeB3 img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  /*height: 100%;*/
  height: auto;
}

.grid-typeB4 {
  display: grid;
  grid-template-columns: 58.61% auto;
  grid-template-rows: auto;
  gap: 6% 5.88%;
  grid-auto-flow: row;
  grid-template-areas: "A A" "B C" "D C";
}

.grid-typeB4.onsen-wellness {
  gap: 4% 5.88%;
  grid-template-areas: "A A" "B C" "D C" "D E";
  margin-bottom: 200px;
  width: 100%;
  height: 100%;
}

.grid-typeB4.onsen-wellness .plan-link {
  margin-top: 40px;
  text-align: left;
}

.grid-typeB4 .gridA1 {
  grid-area: A;
}

.grid-typeB4 .gridA2 {
  grid-area: B;
}

.grid-typeB4 .gridA3 {
  grid-area: C;
}

.grid-typeB4 .gridA4 {
  grid-area: D;
}

.grid-typeB4 img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  /* height: 100%; */
  height: auto;
}

.grid-typeB5 {
  display: grid;
  grid-template-columns: 25% 25% auto;
  gap: 3% 6.5%;
  grid-auto-flow: row;
  grid-template-areas: "A A A" "B C D" "E E D" "F F .";
}

.page-id-74 .grid-typeB5,
.page-id-145 .grid-typeB5 {
  gap: 5.5vw 6.5%;
}

.page-id-51 .grid-typeB5,
.page-id-157 .grid-typeB5 {
  gap: 5vw 6.5%;
}

.grid-typeB5 .gridA1 {
  grid-area: A;
}

.grid-typeB5 .gridA2 {
  grid-area: B;
}

.grid-typeB5 .gridA3 {
  grid-area: C;
}

.grid-typeB5 .gridA4 {
  grid-area: D;
}

.grid-typeB5 .gridA5 {
  grid-area: E;
}

.grid-typeB5 .gridA6 {
  grid-area: F;
}

.grid-typeB5 img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  /*height: 100%;*/
  height: auto;
}

.grid-typeB6 {
  display: grid;
  grid-template-columns: auto 58.61%;
  gap: 8% 5.5%;
  grid-template-areas: "A B" "A C";
  margin-bottom: 10%;
}

.grid-typeB6 .gridA1 {
  grid-area: A;
}

.grid-typeB6 .gridA1.dine-height--max {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.grid-typeB6 .gridA2 {
  grid-area: B;
}

.grid-typeB6 .gridA3 {
  grid-area: C;
}

.grid-typeB7 {
  display: grid;
  gap: 4% 5.88%;
  grid-template-areas: "A B C";
  margin-bottom: 9%;
}

.grid-typeB7 .gridA1 {
  grid-area: A;
}

.grid-typeB7 .gridA2 {
  grid-area: B;
}

.grid-typeB7 .gridA3 {
  grid-area: C;
}

.grid-typeB8 {
  /* display: grid;
  gap: 6% 6.2%;
    grid-template-columns: 26.471% 26.471% 36.2%;
  grid-template-rows: 23% 23% auto;
  grid-template-areas:
    "A A H"
    "B C H"
    "D E H"
	"F G H"
	"I I .";
  margin-bottom: 18%; */
  display: grid;
  gap: 2.2rem 6.2%;
  grid-template-columns: 26.471% 26.471% 36.2%;
  grid-template-rows: auto auto auto auto auto;
  grid-template-areas: "A A H" "B C H" "D E H" "F G H" "I I .";
  margin-bottom: 3rem;
}

.grid-typeB8 .gridA1 {
  grid-area: A;
}

.grid-typeB8 .gridA2 {
  grid-area: B;
}

.grid-typeB8 .gridA3 {
  grid-area: C;
}

.grid-typeB8 .gridA4 {
  grid-area: D;
}

.grid-typeB8 .gridA5 {
  grid-area: E;
}

.grid-typeB8 .gridA6 {
  grid-area: F;
}

.grid-typeB8 .gridA7 {
  grid-area: G;
}

.grid-typeB8 .gridA8 {
  grid-area: H;
}

.grid-typeB8 .gridA9 {
  grid-area: I;
}

.grid-typeA3 {
  display: grid;
  gap: 8.5% 5.88%;
  grid-template-columns: 35.2% 26.471% 26.471%;
  grid-auto-flow: row;
  grid-template-areas: "A B C" "A D D";
  margin-bottom: 6.2%;
}

.grid-typeA3 .gridA1 {
  grid-area: A;
}

.grid-typeA3 .gridA2 {
  grid-area: B;
}

.grid-typeA3 .gridA3 {
  grid-area: C;
}

.grid-typeA3 .gridA4 {
  grid-area: D;
}

.grid-typeA3 img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  /*height: 100%;*/
  height: auto;
}

.grid-typeA4 {
  display: grid;
  grid-template-columns: 26.5% 26.5% auto;
  gap: 10% 5.7%;
  grid-auto-flow: row;
  grid-template-areas: "A B E" "C D E";
  margin-bottom: 6%;
}

.grid-typeA4 .gridA1 {
  grid-area: A;
}

.grid-typeA4 .gridA2 {
  grid-area: B;
}

.grid-typeA4 .gridA3 {
  grid-area: C;
}

.grid-typeA4 .gridA4 {
  grid-area: D;
}

.grid-typeA4 .gridA5 {
  grid-area: E;
}

.grid-typeA4 img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  /*height: 100%;*/
  height: auto;
}

.grid-typeA5 {
  display: grid;
  grid-template-columns: 25% 25% auto;
  grid-template-rows: auto auto;
  gap: 3vw;
  grid-auto-flow: row;
  grid-template-areas: "A B E" "C D E";
  margin-bottom: 3vw;
}

.grid-typeA5 .gridA1 {
  grid-area: A;
}

.grid-typeA5 .gridA2 {
  grid-area: B;
}

.grid-typeA5 .gridA3 {
  grid-area: C;
}

.grid-typeA5 .gridA4 {
  grid-area: D;
}

.grid-typeA5 .gridA5 {
  grid-area: E;
}

.grid-typeA5 img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  /*height: 100%;*/
  height: auto;
}

.grid-typeA6 {
  display: grid;
  grid-template-columns: auto 26% 26%;
  grid-template-rows: auto auto;
  gap: 4.3vw;
  grid-auto-flow: row;
  grid-template-areas: "A B B" "A C C" "A D E";
  margin-bottom: 4vw;
}

.grid-typeA6 .gridA1 {
  grid-area: A;
}

.grid-typeA6 .gridA2 {
  grid-area: B;
}

.grid-typeA6 .gridA3 {
  grid-area: C;
}

.grid-typeA6 .gridA4 {
  grid-area: D;
}

.grid-typeA6 .gridA5 {
  grid-area: E;
}

.grid-typeA6 img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  /*height: 100%;*/
  height: auto;
}

.meetingsevent_grid {
  margin: 200px auto 160px auto;
}

/* 画像ratio */
.main_image {
  width: 100%;
  height: 100%;
  aspect-ratio: 1360 / 601;
  -o-object-fit: cover;
     object-fit: cover;
}

.gridA1-ratio {
  aspect-ratio: 479 / 937;
}

.gridA2-ratio {
  aspect-ratio: 16 / 10;
}

.gridA3-ratio {
  aspect-ratio: 1 / 1;
}

.gridA4-ratio {
  aspect-ratio: 1 / 1;
}

.gridA5-ratio {
  aspect-ratio: 797 / 499;
}

.gridA6-ratio {
  aspect-ratio: 23/45;
}

.plan-detail.dine-wd {
  max-width: 650px;
  margin-bottom: 18%;
}

.plan-detail table {
  margin: 3rem 0 5rem;
  width: 100%;
}

.plan-detail caption {
  font-family: var(--hedding-font-family);
  font-size: 35px;
  font-weight: 700;
  text-align: left;
}

.plan-detail th,
.plan-detail td {
  text-align: left;
  padding: 40px 20px 40px 0;
}

.plan-detail th {
  white-space: nowrap;
  border-bottom: 1px solid #333;
}

.plan-detail td {
  padding-left: 20px;
  border-bottom: 1px solid #CCC;
}

.plan-detail .detail-title {
  font-family: var(--hedding-font-family);
  font-size: 60px;
  margin-bottom: 20px;
  line-height: 1;
}

.plan-detail .c-title + p {
  margin-top: 1.42rem;
}

.grid-typeB5 table {
  margin-bottom: 40px;
}

.grid-typeB5 .plan-link {
  text-align-last: left;
}

.plan-link {
  font-family: var(--hedding-font-family);
  font-size: 24px;
  text-align: center;
}

.plan-link a:hover {
  opacity: 0.7;
}

.plan-link a {
  position: relative;
  font-weight: bold;
  padding-right: 3%;
}

.plan-link a:before,
.plan-link a:after {
  position: absolute;
  top: 50%;
  right: -19%;
  height: 1px;
  background: #343434;
  content: "";
}

.plan-link a:before {
  width: 30px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.plan-link a:after {
  width: 10px;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  -webkit-transform-origin: right center;
          transform-origin: right center;
}

.global-header-wrap {
  background: url(img/common/globalnav-bg.png) rgba(0, 0, 0, 0.6);
  background-blend-mode: lighten;
  position: fixed;
  width: 100%;
  height: 130px;
  z-index: 9999;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.global-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  padding: 44px 4%;
  position: relative;
  font-family: var(--hedding-font-family);
  max-width: 1360px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #FFF;
}

.end {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: end !important;
}

.global-header .logo {
  font-size: 24px;
  font-family: "Noto Sans JP", sans-serif;
}

.logo--bold {
  font-weight: 700;
  margin-right: 15px;
}

.global-header .link-reserve {
  margin-left: 40px;
}

.global-header .link-reserve a {
  border: 1px solid #FFF;
  padding: 11px 51px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 700;
}

.global-header .btn-global-nav {
  display: none;
  position: absolute;
  top: auto;
  right: 2.5vw;
  width: 42px;
  height: 42px;
  z-index: 12;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
  -webkit-transition: all 400ms;
  transition: all 400ms;
  border-radius: 3px;
  text-align: center;
}

.global-header .btn-global-nav span {
  display: block;
  position: absolute;
  width: 28px;
  height: 3px;
  left: 6px;
  background: #FFF;
  -webkit-transition: all 400ms;
  transition: all 400ms;
}

.global-header .btn-global-nav span:nth-child(1) {
  top: 10px;
}

.global-header .btn-global-nav span:nth-child(2) {
  top: 20px;
}

.global-header .btn-global-nav span:nth-child(3) {
  top: 30px;
}

.global-header.open .btn-global-nav span:nth-child(1) {
  background: #ffffff;
  top: 20px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.global-header.open .btn-global-nav span:nth-child(2),
.global-header.open .btn-global-nav span:nth-child(3) {
  top: 20px;
  background: #ffffff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.global-nav-wrapper {
  position: relative;
}

.global-nav-wrapper .global-nav-wrapper-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.global-nav-wrapper .global-nav {
  font-size: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.global-nav-wrapper .menu-item {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  margin: 0 20px;
  padding-bottom: 3px;
}

.global-nav-wrapper .current-menu-item a {
  border-bottom: 1px solid #FFF;
  padding-bottom: 4px;
}

@media screen and (max-width: 768px) {
  .global-header-wrap {
    height: 80px;
  }

  .global-header {
    padding: 20px 4%;
  }

  .plan-link a:before,
  .plan-link a:after {
    right: -2.5em;
  }
}
@media screen and (max-width: 1024px) {
  .global-header .btn-global-nav {
    display: block;
  }

  .global-header.open .global-nav-wrapper {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }

  .global-header .link-reserve {
    margin: 0;
  }

  .global-nav-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
    width: 100%;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.8);
    font-size: 16px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    z-index: 1;
    margin: 0 auto;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }

  .global-nav-wrapper .global-nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 30px;
  }

  .global-nav-wrapper .global-nav-wrapper-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
    width: 100%;
    height: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 30px;
  }
}
.page-template-page-ville-nature .wp-block-media-text,
.page-template-page-fore-nature .wp-block-media-text {
  margin-bottom: 200px;
}

.page-template-page-ville-nature .wp-block-media-text:nth-child(even) .wp-block-media-text__media,
.page-template-page-fore-nature .wp-block-media-text:nth-child(even) .wp-block-media-text__media {
  grid-column: 2/2;
}

.page-template-page-ville-nature .wp-block-media-text:nth-child(even) .wp-block-media-text__content,
.page-template-page-fore-nature .wp-block-media-text:nth-child(even) .wp-block-media-text__content {
  grid-column: 1/2;
}

.page-template-page-ville-nature .wp-block-media-text h2,
.page-template-page-fore-nature .wp-block-media-text h2 {
  font-family: var(--hedding-font-family);
  font-size: 35px;
  font-weight: normal;
  margin-bottom: 20px;
}

.page-template-page-ville-nature .wp-block-media-text p,
.page-template-page-fore-nature .wp-block-media-text p {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 10px;
}

.page-template-page-ville-nature .wp-block-media-text a,
.page-template-page-fore-nature .wp-block-media-text a {
  font-family: var(--hedding-font-family);
  font-size: 24px;
  text-align: center;
  position: relative;
}

.page-template-page-ville-nature .wp-block-media-text a:before,
.page-template-page-ville-nature .wp-block-media-text a:after,
.page-template-page-fore-nature .wp-block-media-text a:before,
.page-template-page-fore-nature .wp-block-media-text a:after {
  position: absolute;
  top: 50%;
  right: -1.5em;
  height: 1px;
  background: #343434;
  content: "";
}

.page-template-page-ville-nature .wp-block-media-text a:before,
.page-template-page-fore-nature .wp-block-media-text a:before {
  width: 30px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.page-template-page-ville-nature .wp-block-media-text a:after,
.page-template-page-fore-nature .wp-block-media-text a:after {
  width: 10px;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  -webkit-transform-origin: right center;
          transform-origin: right center;
}

.fore-nature__figure,
.villa-nature__figure {
  width: 50%;
  min-width: 300px;
  aspect-ratio: 680 / 450;
}

.fore-nature__figure img,
.villa-nature__figure img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  aspect-ratio: 680 / 450;
}

.fore-nature__col-flex,
.villa-nature__col-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 5.88235294117647%;
          column-gap: 5.88235294117647%;
  margin-bottom: 130px;
}

.fore-nature__col-flex:nth-child(2n),
.villa-nature__col-flex:nth-child(2n) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.fore-nature__text-box,
.villa-nature__text-box {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.fore-nature__box-title,
.villa-nature__box-title {
  margin-bottom: 50px;
  font-size: 35px;
  font-family: YuMincho, "Zen Old Mincho", "Hiragino Mincho ProN", serif;
}

.fore-nature__text,
.villa-nature__text {
  font-size: 16px;
  white-space: pre-wrap;
}

.fore-nature__link,
.villa-nature__link {
  display: inline-block;
  font-size: 24px;
  font-weight: 600;
  font-family: YuMincho, "Zen Old Mincho", "Hiragino Mincho ProN", serif;
  position: relative;
  margin-top: 55px;
  padding-right: 3%;
}

.fore-nature__link:hover,
.villa-nature__link:hover {
  opacity: 0.7;
}

.fore-nature__link:after,
.villa-nature__link:after {
  content: "";
  display: inline-block;
  width: 30px;
  aspect-ratio: 1;
  background-image: url("./img/common/arrow.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  font-weight: 600;
  bottom: -4%;
  right: -20%;
}

.fadeup {
  opacity: 0;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  -webkit-transition-duration: 1.2s;
          transition-duration: 1.2s;
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
}

.fadeup.on {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.c-intro {
  margin-top: 5.71rem;
}

.c-intro,
.plan-header,
.grid-wrap,
.fore-nature__inner,
.villa-nature__inner {
  margin-right: 4%;
  margin-left: 4%;
}

@media screen and (max-width: 900px) {
  .img-wide {
    margin-bottom: 90px;
  }

  .inner > img:first-of-type {
    position: relative;
    left: 4%;
    width: 92%;
  }

  .inner > img {
    border-radius: 0;
  }

  .plan-header .plan-title {
    font-size: 50px;
  }

  .plan-header .plan-subtitle {
    font-size: 30px;
  }

  .fore-nature__figure,
  .villa-nature__figure {
    width: 100%;
    min-width: auto;
    aspect-ratio: 680 / 450;
    margin-bottom: 40px;
  }

  .fore-nature__figure img,
  .villa-nature__figure img {
    width: 100%;
    aspect-ratio: 680 / 450;
  }

  .fore-nature__col-flex,
  .villa-nature__col-flex,
  .fore-nature__col-flex:nth-child(2n),
  .villa-nature__col-flex:nth-child(2n) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 130px;
  }

  .fore-nature__box-title,
  .villa-nature__box-title {
    margin-bottom: 20px;
  }

  .fore-nature__text-box,
  .villa-nature__text-box {
    width: 100%;
  }

  .fore-nature__link,
  .villa-nature__link {
    font-size: 24px;
    margin-top: 45px;
  }

  .page-id-76 .grid-typeB2,
  .page-id-137 .grid-typeB2 {
    gap: 3.3% 6%;
  }

  .grid-wrap--mg-sm {
    margin-bottom: 45px;
  }

  .grid-wrap--tab-mg-sm {
    margin-bottom: 150px;
  }

  .grid-wrap--tab-mg-sm-sm {
    margin-bottom: 25px;
  }

  .grid-wrap--tab-mg-sm-lg {
    margin-bottom: 208px;
  }

  .page-id-76 .grid-wrap--tab-mg-sm-lg,
  .page-id-137 .grid-wrap--tab-mg-sm-lg {
    margin-bottom: 180px;
  }

  .grid-wrap--tab-mg-negtive {
    margin-bottom: -30px;
  }

  .grid-typeB4.onsen-wellness {
    gap: 5.5vw 5.88%;
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 768px) {
  .inner {
    margin: 185px auto;
  }

  .inner--mg-btm-sm {
    margin-bottom: 0;
  }

  .inner--tab-mg-lg {
    margin-bottom: 260px;
  }

  .inner > img {
    height: 300px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 0;
  }

  .inner--mg-btm,
  .inner--sp-mg-btm {
    margin-bottom: 30px;
  }

  .c-intro {
    margin: 4.28rem auto 20px;
    display: block;
    width: 90%;
  }

  .c-intro .page-header-left {
    padding: 0;
    margin-bottom: 30px;
  }

  .c-intro .page-title {
    font-size: 34px;
  }

  .c-intro .page-subtitle {
    font-size: 18px;
  }

  .img-wide {
    margin: 0 auto;
  }

  .plan-detail {
    padding: 0 0 0;
  }

  .plan-detail .detail-title {
    font-size: 35px;
  }

  p.detail-title.mt_t {
    margin-top: 48px;
  }

  .plan-detail th,
  .plan-detail td {
    text-align: left;
    padding: 10px 20px 10px 20px;
    font-size: 14px;
  }

  .plan-link {
    font-size: 18px;
    margin-bottom: 60px;
  }

  .plan-link a {
    padding-right: 1%;
  }

  .plan-header {
    margin-bottom: 40px;
    padding: 40px 0;
  }

  .plan-header .plan-title {
    font-size: 28px;
  }

  .plan-header .plan-subtitle {
    font-size: 20px;
  }

  .plan-header .plan-number {
    font-size: 20px;
  }

  .page-template-page-ville-nature .wp-block-media-text,
  .page-template-page-fore-nature .wp-block-media-text {
    margin-bottom: 20px;
  }

  .page-template-page-ville-nature .wp-block-media-text .wp-block-media-text__media,
  .page-template-page-fore-nature .wp-block-media-text .wp-block-media-text__media {
    margin-bottom: 20px;
  }

  .page-template-page-ville-nature .wp-block-media-text:nth-child(even) .wp-block-media-text__media,
  .page-template-page-ville-nature .wp-block-media-text:nth-child(even) .wp-block-media-text__content,
  .page-template-page-fore-nature .wp-block-media-text:nth-child(even) .wp-block-media-text__media,
  .page-template-page-fore-nature .wp-block-media-text:nth-child(even) .wp-block-media-text__content {
    grid-column: auto;
  }

  .grid-wrap {
    margin: 0 auto;
    padding: 0 4%;
  }

  .grid-wrap--mg-sm {
    margin-bottom: 30px;
  }

  .page-id-76 .grid-wrap--tab-mg-sm-lg,
  .page-id-137 .grid-wrap--tab-mg-sm-lg {
    margin-bottom: 0;
  }

  .grid-typeA,
  .grid-typeA2,
  .grid-typeA3,
  .grid-typeA4,
  .grid-typeA6,
  .grid-typeB,
  .grid-typeB2,
  .grid-typeB3,
  .grid-typeB4,
  .grid-typeB5 .grid-typeB6 .grid-typeB7,
  .grid-typeB8 {
    grid-template-columns: auto;
    grid-template-rows: auto;
  }

  .grid-typeA {
    grid-template-areas: "A A" "B B" "C D";
    gap: 4.5% 10.88%;
    margin-bottom: 32%;
  }

  .dine-wd .grid-typeA {
    gap: 5.3% 10.88%;
  }

  .page-id-145 .grid-typeA {
    margin-bottom: 32%;
  }

  .grid-typeA.dine-mg-btm-lg {
    margin-bottom: 33%;
  }

  .grid-typeB4.onsen-wellness {
    gap: 10.3vw 5.88%;
    grid-template-areas: "A" "B" "C" "D";
    margin-bottom: 0;
  }

  .grid-typeA2 {
    grid-template-areas: "A A" "B C" "D D";
    gap: 5% 11.746%;
    margin-bottom: 34.7%;
  }

  .grid-typeA2.dine-mg-btm-sm {
    margin-bottom: 33%;
  }

  .grid-typeA3 {
    grid-template-columns: auto;
    grid-template-areas: "A A" "B C" "D D";
    gap: 5% 12%;
    margin-bottom: 35%;
  }

  .grid-typeA4 {
    grid-template-areas: "A B" "C D" "E E";
    gap: 5% 10%;
    margin-bottom: 30%;
  }

  .grid-typeA6 {
    gap: 10vw;
    grid-template-areas: "A A" "B B" "C C" "D E";
    margin-bottom: 10vw;
  }

  .grid-typeB {
    grid-template-areas: "A" "B" "C" "D";
    gap: 4% 5.8%;
    padding-bottom: 33%;
  }

  .page-id-69 .grid-typeB,
  .page-id-139 .grid-typeB {
    gap: 4.5% 6%;
  }

  .page-id-60 .grid-typeB,
  .page-id-139 .grid-typeB {
    gap: 4.5% 5.8%;
  }

  .page-id-49 .grid-typeB,
  .page-id-149 .grid-typeB {
    padding-bottom: 43%;
  }

  .page-id-76 .grid-typeB,
  .page-id-137 .grid-typeB {
    padding-bottom: 49%;
  }

  .page-id-76 .grid-typeB2,
  .page-id-137 .grid-typeB2 {
    padding-bottom: 59%;
  }

  .grid-typeB .gridA2 {
    height: 100%;
  }

  .grid-typeB2,
  .page-id-76 .grid-typeB2,
  .page-id-137 .grid-typeB2 {
    grid-template-areas: "A" "B" "C" "D" "E";
  }

  .grid-typeB2 {
    gap: 4% 6%;
    padding-bottom: 54%;
  }

  .page-id-76 .grid-typeB2,
  .page-id-137 .grid-typeB2 {
    gap: 3.3% 6%;
  }

  .page-id-49 .grid-typeB2,
  .page-id-149 .grid-typeB2 {
    gap: 3.7% 6%;
  }

  .grid-typeB2 .gridA2 {
    grid-area: B;
    height: 100%;
  }

  .grid-typeB3 {
    grid-template-areas: "A" "B" "C" "D";
    gap: 4% 6%;
    padding-bottom: 41%;
  }

  .grid-typeB3 .gridA1 {
    height: 100%;
  }

  .page-id-60 .grid-typeB3,
  .page-id-139 .grid-typeB3 {
    gap: 5% 6%;
  }

  .grid-typeB4 {
    grid-template-areas: "A" "B" "C" "D";
    gap: 4%;
  }

  .page-id-57 .grid-typeB4 {
    gap: 4.5%;
  }

  .grid-typeB5 {
    grid-template-areas: "A A" "B C" "D D" "E E" "F F";
    gap: 3.3% 11%;
  }

  .page-id-74 .grid-typeB5,
  .page-id-145 .grid-typeB5 {
    gap: 10.5vw 10%;
  }

  .page-id-51 .grid-typeB5,
  .page-id-157 .grid-typeB5 {
    gap: 10.4vw 10.5%;
  }

  .grid-typeB6 {
    grid-template-columns: auto;
    gap: 5.5% 0;
    grid-template-areas: "A" "B" "C";
    margin-bottom: 35%;
  }

  .grid-typeB7 {
    margin-bottom: 18%;
  }

  .grid-typeB8 {
    gap: 10vw;
    grid-template-areas: "A A" "B C" "D E" "F G" "H H" "I I";
    margin-bottom: 18%;
    gap: 2% 8.88%;
  }

  .grid-typeA .gridA1,
  .grid-typeA2 .gridA4,
  .grid-typeA3 .gridA1,
  .grid-typeA4 .gridA5,
  .grid-typeA6 .gridA1 {
    width: 65%;
  }

  .grid-typeB .gridA2,
  .grid-typeB2 .gridA2,
  .grid-typeB3 .gridA1,
  .grid-typeB4 .gridA3,
  .grid-typeB5 .gridA4,
  .grid-typeB6 .gridA1 {
    width: 65%;
    margin-left: auto;
  }
}
@media screen and (max-width: 470px) {
  .inner--sp-mg-sm {
    margin-bottom: 80px;
  }

  .inner--tab-mg-lg {
    margin-bottom: 200px;
  }

  .fore-nature__inner,
  .villa-nature__inner {
    padding: 0 2%;
  }

  .fore-nature__figure,
  .villa-nature__figure {
    margin-bottom: 20px;
  }

  .fore-nature__col-flex,
  .villa-nature__col-flex {
    margin-bottom: 80px;
  }

  .fore-nature__box-title,
  .villa-nature__box-title {
    margin-bottom: 15px;
    font-size: 24px;
  }

  .fore-nature__text,
  .villa-nature__text {
    font-size: 14px;
  }

  .fore-nature__link,
  .villa-nature__link {
    font-size: 18px;
    margin-top: 30px;
  }

  .fore-nature__link::after,
  .villa-nature__link::after {
    width: 23px;
    bottom: -8%;
    right: -35%;
  }

  .page-id-69 .grid-wrap--mg-sm,
  .page-id-139 .grid-wrap--mg-sm {
    margin-bottom: 0;
  }

  .grid-typeB5 {
    gap: 2.1% 11%;
  }
}
.modal-content {
  display: none;
}

.modaal-content-container {
  font-family: var(--hedding-font-family);
  color: #464646;
}

.modaal-content-container .modal-inner {
  border: 1px solid #333;
  border-radius: 5px;
  padding: 40px;
}

.modaal-content-container .modal-title {
  font-size: 48px;
  letter-spacing: 10px;
  font-weight: normal;
  text-align: center;
  margin-bottom: 40px;
}

.modaal-content-container h3 {
  font-size: 20px;
  position: relative;
  margin-bottom: 40px;
}

.modaal-content-container h3::before {
  content: "";
  border-bottom: 1px solid #333;
  display: block;
  width: 5em;
  position: absolute;
  bottom: -6px;
}

.modaal-content-container h3.title-notice::before {
  display: none;
}

.modaal-content-container h4 {
  font-size: 16px;
  margin-top: 20px;
  margin-bottom: 10px;
}

.modaal-content-container p {
  margin-bottom: 10px;
}

.modaal-content-container .menu-body {
  min-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 40px;
}

.modaal-content-container .menu-content {
  -ms-flex-preferred-size: calc(50% - 20px);
      flex-basis: calc(50% - 20px);
}

.modaal-content-container .menu-content:nth-child(1) {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.modaal-content-container .menu-content:nth-child(2) {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}

.modaal-content-container .menu-content:nth-child(3) {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.modaal-content-container .menu-content:nth-child(4) {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}

.modaal-content-container .modal-footer {
  text-align: center;
  margin: 10px auto -20px;
}

@media screen and (max-width: 768px) {
  .modaal-content-container .menu-content {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }

  .modaal-content-container {
    padding: 20px 20px 30px !important;
  }

  .modaal-content-container .modal-inner {
    padding: 20px;
  }

  .modaal-content-container .menu-body {
    gap: 20px;
  }

  .modaal-content-container .modal-title {
    font-size: 35px;
    margin-bottom: 10px;
  }

  .modaal-content-container h3 {
    font-size: 18px;
    margin-bottom: 30px;
  }
}
#modaal-close {
  position: absolute;
  right: -20px;
  top: -20px;
  background: #333;
}

/*!
	Modaal - accessible modals - v0.4.4
	by Humaan, for all humans.
	http://humaan.com
 */
.modaal-noscroll {
  overflow: hidden;
}

.modaal-accessible-hide {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.modaal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  opacity: 0;
}

.modaal-wrapper {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: auto;
  opacity: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.modaal-wrapper * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
}

.modaal-wrapper .modaal-close {
  border: none;
  background: transparent;
  padding: 0;
  -webkit-appearance: none;
}

.modaal-wrapper.modaal-start_none {
  display: none;
  opacity: 1;
}

.modaal-wrapper.modaal-start_fade {
  opacity: 0;
}

.modaal-wrapper *[tabindex="0"] {
  outline: none !important;
}

.modaal-wrapper.modaal-fullscreen {
  overflow: hidden;
}

.modaal-outer-wrapper {
  display: table;
  position: relative;
  width: 100%;
  height: 100%;
}

.modaal-fullscreen .modaal-outer-wrapper {
  display: block;
}

.modaal-inner-wrapper {
  display: table-cell;
  width: 100%;
  height: 100%;
  position: relative;
  vertical-align: middle;
  text-align: center;
  padding: 80px 25px;
}

.modaal-fullscreen .modaal-inner-wrapper {
  padding: 0;
  display: block;
  vertical-align: top;
}

.modaal-container {
  position: relative;
  display: inline-block;
  width: 100%;
  margin: auto;
  text-align: left;
  color: #000;
  max-width: 1000px;
  border-radius: 0px;
  background: #fff;
  -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  cursor: auto;
}

.modaal-container.is_loading {
  height: 100px;
  width: 100px;
  overflow: hidden;
}

.modaal-fullscreen .modaal-container {
  max-width: none;
  height: 100%;
  overflow: auto;
}

.modaal-close {
  position: fixed;
  right: 20px;
  top: 20px;
  color: #fff;
  cursor: pointer;
  opacity: 1;
  width: 50px;
  height: 50px;
  background: transparent;
  border-radius: 100%;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.modaal-close:focus,
.modaal-close:hover {
  outline: none;
  background: #fff;
}

.modaal-close:focus:before,
.modaal-close:focus:after,
.modaal-close:hover:before,
.modaal-close:hover:after {
  background: #b93d0c;
}

.modaal-close span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.modaal-close:before,
.modaal-close:after {
  display: block;
  content: " ";
  position: absolute;
  top: 14px;
  left: 23px;
  width: 4px;
  height: 22px;
  border-radius: 4px;
  background: #fff;
  -webkit-transition: background 0.2s ease-in-out;
  transition: background 0.2s ease-in-out;
}

.modaal-close:before {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.modaal-close:after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.modaal-fullscreen .modaal-close {
  background: #afb7bc;
  right: 10px;
  top: 10px;
}

.modaal-content-container {
  padding: 30px;
}

.modaal-confirm-wrap {
  padding: 30px 0 0;
  text-align: center;
  font-size: 0;
}

.modaal-confirm-btn {
  font-size: 14px;
  display: inline-block;
  margin: 0 10px;
  vertical-align: middle;
  cursor: pointer;
  border: none;
  background: transparent;
}

.modaal-confirm-btn.modaal-ok {
  padding: 10px 15px;
  color: #fff;
  background: #555;
  border-radius: 3px;
  -webkit-transition: background 0.2s ease-in-out;
  transition: background 0.2s ease-in-out;
}

.modaal-confirm-btn.modaal-ok:hover {
  background: #2f2f2f;
}

.modaal-confirm-btn.modaal-cancel {
  text-decoration: underline;
}

.modaal-confirm-btn.modaal-cancel:hover {
  text-decoration: none;
  color: #2f2f2f;
}

@keyframes instaReveal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes instaReveal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.modaal-instagram .modaal-container {
  width: auto;
  background: transparent;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}

.modaal-instagram .modaal-content-container {
  padding: 0;
  background: transparent;
}

.modaal-instagram .modaal-content-container > blockquote {
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
}

.modaal-instagram iframe {
  opacity: 0;
  margin: -6px !important;
  border-radius: 0 !important;
  width: 1000px !important;
  max-width: 800px !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  -webkit-animation: instaReveal 1s linear forwards;
          animation: instaReveal 1s linear forwards;
}

.modaal-image .modaal-inner-wrapper {
  padding-left: 140px;
  padding-right: 140px;
}

.modaal-image .modaal-container {
  width: auto;
  max-width: 100%;
}

.modaal-gallery-wrap {
  position: relative;
  color: #fff;
}

.modaal-gallery-item {
  display: none;
}

.modaal-gallery-item img {
  display: block;
}

.modaal-gallery-item.is_active {
  display: block;
}

.modaal-gallery-label {
  position: absolute;
  left: 0;
  width: 100%;
  margin: 20px 0 0;
  font-size: 18px;
  text-align: center;
  color: #fff;
}

.modaal-gallery-label:focus {
  outline: none;
}

.modaal-gallery-control {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  opacity: 1;
  cursor: pointer;
  color: #fff;
  width: 50px;
  height: 50px;
  background: transparent;
  border: none;
  border-radius: 100%;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.modaal-gallery-control.is_hidden {
  opacity: 0;
  cursor: default;
}

.modaal-gallery-control:focus,
.modaal-gallery-control:hover {
  outline: none;
  background: #fff;
}

.modaal-gallery-control:focus:before,
.modaal-gallery-control:focus:after,
.modaal-gallery-control:hover:before,
.modaal-gallery-control:hover:after {
  background: #afb7bc;
}

.modaal-gallery-control span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.modaal-gallery-control:before,
.modaal-gallery-control:after {
  display: block;
  content: " ";
  position: absolute;
  top: 16px;
  left: 25px;
  width: 4px;
  height: 18px;
  border-radius: 4px;
  background: #fff;
  -webkit-transition: background 0.2s ease-in-out;
  transition: background 0.2s ease-in-out;
}

.modaal-gallery-control:before {
  margin: -5px 0 0;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.modaal-gallery-control:after {
  margin: 5px 0 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.modaal-gallery-next-inner {
  left: 100%;
  margin-left: 40px;
}

.modaal-gallery-next-outer {
  right: 45px;
}

.modaal-gallery-prev:before,
.modaal-gallery-prev:after {
  left: 22px;
}

.modaal-gallery-prev:before {
  margin: 5px 0 0;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.modaal-gallery-prev:after {
  margin: -5px 0 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.modaal-gallery-prev-inner {
  right: 100%;
  margin-right: 40px;
}

.modaal-gallery-prev-outer {
  left: 45px;
}

.modaal-video-wrap {
  margin: auto 50px;
  position: relative;
}

.modaal-video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  background: #000;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
}

.modaal-video-container iframe,
.modaal-video-container object,
.modaal-video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modaal-iframe .modaal-content {
  width: 100%;
  height: 100%;
}

.modaal-iframe-elem {
  width: 100%;
  height: 100%;
  display: block;
}

@media only screen and (min-width: 1400px) {
  .modaal-video-container {
    padding-bottom: 0;
    height: 731px;
  }
}
@media only screen and (max-width: 1140px) {
  .modaal-image .modaal-inner-wrapper {
    padding-left: 25px;
    padding-right: 25px;
  }

  .modaal-gallery-control {
    top: auto;
    bottom: 20px;
    -webkit-transform: none;
            transform: none;
    background: rgba(0, 0, 0, 0.7);
  }

  .modaal-gallery-control:before,
  .modaal-gallery-control:after {
    background: #fff;
  }

  .modaal-gallery-next {
    left: auto;
    right: 20px;
  }

  .modaal-gallery-prev {
    left: 20px;
    right: auto;
  }
}
@media screen and (max-width: 900px) {
  .modaal-instagram iframe {
    width: 500px !important;
  }
}
@media screen and (max-height: 1100px) {
  .modaal-instagram iframe {
    width: 700px !important;
  }
}
@media screen and (max-height: 1000px) {
  .modaal-inner-wrapper {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .modaal-instagram iframe {
    width: 600px !important;
  }
}
@media screen and (max-height: 900px) {
  .modaal-instagram iframe {
    width: 500px !important;
  }

  .modaal-video-container {
    max-width: 900px;
    max-height: 510px;
  }
}
@media only screen and (max-width: 600px) {
  .modaal-instagram iframe {
    width: 280px !important;
  }
}
@media only screen and (max-height: 820px) {
  .modaal-gallery-label {
    display: none;
  }
}
.modaal-loading-spinner {
  background: none;
  position: absolute;
  width: 200px;
  height: 200px;
  top: 50%;
  left: 50%;
  margin: -100px 0 0 -100px;
  -webkit-transform: scale(0.25);
          transform: scale(0.25);
}
@-webkit-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
  100% {
    opacity: 0.1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
  100% {
    opacity: 0.1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
.modaal-loading-spinner > div {
  width: 24px;
  height: 24px;
  margin-left: 4px;
  margin-top: 4px;
  position: absolute;
}

.modaal-loading-spinner > div > div {
  width: 100%;
  height: 100%;
  border-radius: 15px;
  background: #fff;
}

.modaal-loading-spinner > div:nth-of-type(1) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.modaal-loading-spinner > div:nth-of-type(2) > div,
.modaal-loading-spinner > div:nth-of-type(3) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner > div:nth-of-type(1) {
  -webkit-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(2) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
          animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0.12s;
  animation-delay: 0.12s;
}

.modaal-loading-spinner > div:nth-of-type(2) {
  -webkit-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(3) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
          animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0.25s;
  animation-delay: 0.25s;
}

.modaal-loading-spinner > div:nth-of-type(4) > div,
.modaal-loading-spinner > div:nth-of-type(5) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner > div:nth-of-type(3) {
  -webkit-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(4) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
          animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0.37s;
  animation-delay: 0.37s;
}

.modaal-loading-spinner > div:nth-of-type(4) {
  -webkit-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(5) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
          animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
}

.modaal-loading-spinner > div:nth-of-type(6) > div,
.modaal-loading-spinner > div:nth-of-type(7) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner > div:nth-of-type(5) {
  -webkit-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(6) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
          animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0.62s;
  animation-delay: 0.62s;
}

.modaal-loading-spinner > div:nth-of-type(6) {
  -webkit-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(7) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
          animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0.75s;
  animation-delay: 0.75s;
}

.modaal-loading-spinner > div:nth-of-type(7) {
  -webkit-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(8) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0.87s;
  animation-delay: 0.87s;
}

.modaal-loading-spinner > div:nth-of-type(8) {
  -webkit-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
}
.home .header {
  opacity: 1;
}

.home header.global-header {
  /* position: fixed; */
  position: absolute;
  right: 0;
  left: 0;
  z-index: 100;
}

.course_link {
  display: block;
  margin: 16px auto 0 auto;
  width: 834px;
}

.course_link ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.course_link ul li {
  max-width: 49%;
  -webkit-box-flex: 31.33333%;
      -ms-flex: 31.33333%;
          flex: 31.33333%;
}

span.p01 {
  margin-right: 10px;
  font-weight: bold;
}

span.p02 {
  font-weight: bold;
  font-size: 20px;
}

.course_link ul a {
  font-family: Muli, Helvetica Neue, Arial, sans-serif !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0 auto;
  width: 90%;
  background: rgba(255, 255, 255, 0.9);
  padding: 15px 25px 10px;
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);
  border-radius: 4px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #141617;
  display: block;
  text-align: center;
}

.course_link.en li {
  max-width: 100%;
  -webkit-box-flex: 100%;
      -ms-flex: 100%;
          flex: 100%;
}

@media only screen and (max-width: 992px) {
  .course_link {
    display: block;
    margin: 16px auto 0 auto;
    width: 100%;
  }

  .course_link ul a span {
    display: block;
  }
}
@media (max-width: 599px) {
  .course_link {
    padding: 50px 4%;
    width: 92.7%;
  }

  .course_link ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }

  .course_link ul li {
    max-width: 100%;
    -webkit-box-flex: 100%;
        -ms-flex: 100%;
            flex: 100%;
    margin-bottom: 8px;
  }

  .course_link ul li a {
    width: 100%;
  }
}
@media (min-width: 768px) {
  ::-webkit-full-page-media, :future, :root .grid-typeA {
    gap: 4% 5.88%;
  }

  ::-webkit-full-page-media, :future, :root .grid-typeA2 {
    gap: 4% 5.746%;
  }

  ::-webkit-full-page-media, :future, :root .grid-typeA3 {
    gap: 4% 5.88%;
  }

  ::-webkit-full-page-media, :future, :root .grid-typeA4 {
    gap: 4% 5.7%;
  }

  ::-webkit-full-page-media, :future, :root .grid-typeB6 {
    gap: 4% 5.5%;
  }
}
/*------アビリブ追記記述----------*/
/*ボタン*/
.abi_btn a {
  display: block;
  background: #000;
  color: #fff;
  padding: 1em 0;
}

.abi_btn a:before {
  background: #fff;
  right: 10%;
}

.abi_btn a:after {
  background: #fff;
  right: 10%;
}

.mt-b {
  margin-bottom: 80px;
}

/*nav*/
.page_nav {
  background: #f9f6f6;
  padding: 50px 30px 30px;
}

.page_nav ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 20px;
}

.page_nav ul li {
  width: 30%;
  position: relative;
  display: inline-block;
  padding-left: 20px;
  color: #333;
  text-decoration: none;
}

.page_nav ul li:before {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #333;
  border-left: solid 2px #333;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}

.before_none:before {
  display: none;
}

.page_nav ul li a {
  display: inline-block;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.page_nav ul li a:hover {
  -webkit-transform: translateX(10px);
          transform: translateX(10px);
}

/*崩れ補正*/
@media (min-width: 768px) {
  .abi_marginbottom {
    margin-bottom: 350px;
  }

  /* .abi_marginbottom .grid-typeB8 {
  	grid-template-rows: 5.5% 5% 5% auto;
  } */
  /* .abi_marginbottom .grid-typeB8_villa {
  	grid-template-rows: 5.5% 6% 6% auto !important;
  } */
  .abi_marginbottom .grid-typeB8_7 {
    grid-template-rows: 7.5% 7% 7% auto !important;
  }

  /* .abi_marginbottom .grid-typeB8_75 {
  	grid-template-rows: 7.5% 7.5% 7.5% auto !important;
  } */
}
/*レスポンシブ*/
@media (max-width: 768px) {
  .page_nav {
    margin-bottom: 60px;
  }

  .page_nav ul {
    display: inline-grid;
    margin: 0;
  }

  .page_nav ul li {
    width: 100%;
    margin: 0 auto 20px;
  }

  .page_nav ul .before_none {
    display: none;
  }

  .meetingsevent_info {
    margin-top: 30%;
  }
}
/*20250123 Tripla差し替え改修*/
.global-header .login-reserve {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 150px;
  margin-inline: 1rem 3rem;
}

html[lang="en"] .global-header .login-reserve {
  width: 190px;
}

.global-header .login-reserve a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.5;
  font-family: 'Noto Sans JP', sans-serif;
}

.global-header .login-reserve a:not(:first-child):before {
  content: "/";
  display: block;
  margin-inline: .6rem;
}

@media only screen and (min-width: 1025px) {
  .global-header .btn-global-nav {
    display: block;
  }

  .global-header .link-reserve,
  .global-header .link-lang {
    margin: 0 auto !important;
    width: 200px;
  }

  .global-header .link-reserve a,
  .global-header .link-lang a {
    display: block;
  }

  .global-header .inst-header {
    margin: 0;
  }

  .global-header .inst-header a {
    display: block;
  }

  .global-header.open .global-nav-wrapper {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }

  .global-header .global-nav-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
    width: 100%;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.8);
    font-size: 16px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    z-index: 1;
    margin: 0 auto;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }

  .global-header .global-nav-wrapper .global-nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 30px;
  }

  .global-header .global-nav-wrapper .global-nav-wrapper-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
    width: 100%;
    height: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .global-header .login-reserve {
    width: 9.4rem;
  }

  html[lang="en"] .global-header .login-reserve {
    width: 12.5rem;
  }

  html[lang="en"] .global-header .login-reserve a {
    font-size: 10px;
  }
}
.btn_rsv_system {
  width: 100%;
  margin: 16px auto 0;
}

.btn_rsv_system a {
  display: block;
  position: relative;
  padding: 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #000;
  color: #fff;
  text-align: center;
  font-size: 15px;
  font-weight: bold;
  font-family: var(--hedding-font-family);
  -webkit-transition: opacity .3s ease;
  transition: opacity .3s ease;
}

.btn_rsv_system a:before, .btn_rsv_system a:after {
  content: "";
  position: absolute;
  right: 10%;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  height: 1px;
  background: #fff;
}

.btn_rsv_system a:before {
  width: 22px;
}

.btn_rsv_system a:after {
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  -webkit-transform-origin: right center;
          transform-origin: right center;
  width: 7px;
}

.btn_rsv_system a:hover {
  opacity: .7;
}

@media only screen and (min-width: 1025px) {
  .btn_rsv_system {
    max-width: 834px;
  }
}
@media only screen and (max-width: 767px) {
  .btn_rsv_system {
    width: 92.7%;
    padding-inline: 4%;
  }

  .btn_rsv_system a {
    padding-right: 4em;
  }
}
#search_tripla {
  width: 100%;
  margin-top: 4em;
  text-shadow: none;
}

@media only screen and (min-width: 768px) {
  #search_tripla {
    max-width: 836px;
    margin-inline: auto;
  }
}
/* @media only screen and (min-width: 768px) {
	#search_tripla {
		max-width: 834px;
		margin-inline: auto;
	}
	#search_tripla .search-widget-search-container-bf1818 {
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: flex-end;
		column-gap: .6rem;
		width: 100% !important;
	}
	#search_tripla .search-widget-input-wrapper-eaf5bf {
		display: flex;
		flex-direction: row;
		column-gap: .6rem;
	}
	#search_tripla .input-container-slot-239963 {
		min-width: 270px;
	}
	#search_tripla .search-widget-calendar-9fdfc9 {
		width: 100% !important;
	}
	#search_tripla .button-btn-f51c1a {
		margin-bottom: 18px;
	}
}

@media only screen and (max-width: 767px) {
	#search_tripla .search-widget-button-wrapper-d2b715 {
		display: block;
	}
	#search_tripla .search-widget-button-wrapper-d2b715 .button-btn-f51c1a {
		display: block;
		width: 6.8em;
		margin-inline: auto;
	}
} */
/*クラブオリエンタル追従バナー*/
.con_kv_member {
  bottom: 100px;
  --color: #fff;
  color: var(--color);
  --swiper-dots: rgba(255, 255, 255, 0.5);
  --swiper-pause-border: #fff;
  --swiper-pause-inne: #fff;
  --swiper-arrow-border: #fff;
  --swiper-arrow-arr: #fff;
  z-index: 1;
}

@media only screen and (max-width: 1024px) {
  .con_kv_member {
    --swiper-dots: #fff;
  }
}
@media only screen and (min-width: 768px) {
  .con_kv_member {
    max-width: 420px;
    overflow: visible;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    height: 0;
    z-index: 999;
    bottom: 100px;
    position: fixed;
    right: 0.5em;
    top: auto;
  }
}
@media only screen and (max-width: 767px) {
  .con_kv_member {
    margin-top: 3em;
    margin-bottom: 1.5em;
  }
}
@media only screen and (min-width: 1025px) {
  .con_kv_member .view_ctrl_css {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_kv_member .view_ctrl_css {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .con_kv_member .view_ctrl_css {
    display: none;
  }
}
.zoom-200 .con_kv_member .view_ctrl_css {
  display: block;
}

.con_kv_member > .inne {
  margin-right: auto;
  margin-left: auto;
  position: relative;
  width: var(--kv-member-width);
  background-color: var(--color-group-member1);
  border-radius: .3rem;
}

@media only screen and (max-width: 767px) {
  .con_kv_member > .inne {
    width: calc(388 / 428 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_kv_member > .inne {
    display: block;
  }
}
html:lang(en) .zoom-200 .con_kv_member > .inne {
  width: 20.66rem;
}

.con_kv_member .st_kv_member {
  padding-top: .86rem;
  padding-bottom: .66rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-weight: normal;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.con_kv_member .st_kv_member .free {
  border: 1px solid rgba(167, 167, 167, 0.9);
  padding-right: .86rem;
  padding-left: .86rem;
  min-height: 1.06rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.con_kv_member .st_kv_member .mem {
  width: 100%;
  text-align: center;
  margin-top: .5em;
  margin-bottom: .5em;
  line-height: 1.2;
}

@media only screen and (max-width: 767px) {
  .con_kv_member .st_kv_member {
    padding-bottom: .33rem;
  }
}
@media only screen and (min-width: 768px) {
  .con_kv_member .st_kv_member .free {
    font-size: .8rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_kv_member .st_kv_member .free {
    font-size: .75rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_kv_member .st_kv_member .free {
    height: 1.2rem;
  }
}
@media only screen and (min-width: 768px) {
  .con_kv_member .st_kv_member .mem {
    font-size: .87rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_kv_member .st_kv_member .mem {
    font-size: .81rem;
  }
}
.zoom-200 .con_kv_member .st_kv_member .mem {
  padding-right: 1em;
  padding-left: 1em;
}

.con_kv_member .st_kv_member .en {
  font-family: 'Cormorant Garamond', serif;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  line-height: 1;
  font-weight: 300;
}
.con_kv_member .txt_send {
  border-bottom-left-radius: .3rem;
  border-bottom-right-radius: .3rem;
  min-height: 1.33rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  background-color: var(--color-group-member2);
  line-height: 1.4;
  padding: .25em;
}

@media only screen and (min-width: 768px) {
  .con_kv_member .st_kv_member .en {
    font-size: 1.33rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_kv_member .st_kv_member .en {
    font-size: 1.88rem;
  }
}
@media only screen and (min-width: 768px) {
  .con_kv_member .txt_send {
    font-size: .87rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_kv_member .txt_send {
    font-size: .81rem;
  }
}
.zoom-200 .con_kv_member .txt_send {
  font-size: .8rem;
  height: auto;
  line-height: 1.2;
  padding-right: 1em;
  padding-left: 1em;
  padding-top: .5em;
  padding-bottom: .5em;
}

@media only screen and (max-width: 1024px) {
  .con_kv_member .txt_send {
    padding: .5em .25em;
    height: auto;
  }
}
.con_kv_member .box_off {
  width: 90%;
  margin: .5em auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: .66rem;
  min-height: 3rem;
  background-color: var(--color-group-member2);
}

.con_kv_member .box_off .txt {
  font-size: .8rem;
  line-height: 1.3;
  padding-top: .5em;
  margin-left: .5rem;
}

.con_kv_member .box_off .num {
  font-size: 1.2rem;
}

.con_kv_member .box_off .num span {
  font-size: 160%;
}

.con_kv_member .box_bene {
  width: 80%;
  margin: 0 auto;
}

.con_kv_member .box_bene .catch {
  font-size: 1rem;
}

.con_kv_member .box_bene ul li {
  list-style-type: disc;
  list-style-position: inside;
  font-size: 85%;
}

.con_kv_member .btn_tokuten a {
  margin: 1em auto 0;
  padding: 1em .5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 95%;
  text-decoration: none;
  text-align: center;
  color: var(--color-txt2);
  background-color: #dddccc;
  line-height: 1.2;
}

.con_kv_member .link_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-around;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: .8rem;
}

.zoom-200 .con_kv_member .link_btn {
  padding-top: .5em;
  padding-bottom: .5em;
}

.con_kv_member .link_com {
  padding-bottom: .2em;
}

.con_kv_member .link_btn .s_tit {
  width: 15%;
  font-size: 120%;
  text-align: center;
}

.con_kv_member .link_btn a {
  padding: .25em .5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 27%;
  text-decoration: none;
  text-align: center;
  color: var(--color-txt2);
  line-height: 1.2;
  font-size: 90%;
}

@media only screen and (min-width: 768px) {
  .con_kv_member .link_btn a {
    min-height: 2.33rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_kv_member .link_btn a {
    min-height: 2.5em;
    font-size: 80%;
    letter-spacing: -0.08em;
  }
}
.mouse .con_kv_member .link_btn a {
  -webkit-transition: opacity 0.1s ease-in;
  transition: opacity 0.1s ease-in;
}
.mouse .con_kv_member .link_btn a:hover {
  opacity: 0.7;
}

.touch .con_kv_member .link_btn a {
  -webkit-tap-highlight-color: transparent;
}
.touch .con_kv_member .link_btn a.touchstart {
  opacity: 0.7;
}
.touch .con_kv_member .link_btn a.touchend {
  -webkit-transition-delay: 200ms;
  transition-delay: 200ms;
}

.zoom-200 .con_kv_member .link_btn a {
  font-size: .8rem;
}

html:lang(en) .con_kv_member .link_btn a {
  line-height: 1;
}

@media only screen and (min-width: 768px) {
  html:lang(en) .con_kv_member .link_btn a {
    min-height: 2.66rem;
  }
}
@media only screen and (max-width: 767px) {
  html:lang(en) .con_kv_member .link_btn a {
    min-height: 3em;
  }
}
.con_kv_member .link_btn a.detail {
  background-color: #dddccc;
}
.con_kv_member .link_btn a.login, .con_kv_member .link_btn a.member {
  background-color: #fff;
}
.con_kv_member .ic_close {
  /* width: 1.8rem; */
  aspect-ratio: 1;
  border-radius: 100px;
  position: absolute;
  right: -.34rem;
  top: -.6rem;
  background-color: var(--color-group-member2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.con_kv_member .ic_close .ic {
  width: .6rem;
  aspect-ratio: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

:root {
  --color-main: #2c7680;
  --color: var(--color-txt2);
  --color-txt1: #fff;
  --color-txt2: #333;
  --color-txt3: #555;
  --color-txt4: #707070;
  --color-txt5: #35595A;
  --color-sub1: #ACACAC;
  --color-sub2: #ABC7C7;
  --color-line2: #DADADA;
  --color-line3: #DBDBDB;
  --color-btn: #EDF2F5;
  --color-hotel-sub: #2879A6;
  --color-rest-sub: #357B8A;
  /* --color-group-member1:#09294D; */
  --color-group-member1: #000;
  /* --color-group-member2:#0A1726; */
  --color-group-member2: #706c4c;
  --color-group-footer: #142333;
  --bgc-base: linear-gradient(150deg, #f0f6f8 0%, rgba(248, 242, 239, 0.8) 34%, rgba(255, 255, 255, 0.6) 48%, rgba(244, 238, 236, 0.6) 65%, #f9efeb 80%, #e8eff4 100%);
  --bgc-txt-title: linear-gradient(80deg, #0d7483 0%, #0d7483 13%, #0d7c83 24%, #26565e 36%, #0d6083 46%, #0d7483 57%, #0d6083 66%, #26565e 80%, #0d7c83 88%, #0d7483 100%);
  --bgc-hotel-main: linear-gradient(60deg, #2879a6 0%, #146694 29%, #0e5b85 51%, #146694 80%, #2879a6 100%);
  --bgc-rest-main: linear-gradient(60deg, #357b8a 4%, #1b6985 27%, #0d7483 72%, #39808f 90%);
  --bgc-txt-deco: linear-gradient(60deg, #46958b 4%, #58ccb0 28%, #3c8ea8 56%, #0f8482 96%);
  --bgc-room-standard: linear-gradient(90deg, #0d6e7b 0%, #34818b 100%);
  --bgc-room-suite: linear-gradient(90deg, #2b5063 0%, #387da1 100%);
  --color: var(--color-txt2);
  --swiper-dots: var(--color-sub1);
  --swiper-pause-border: var(--color-txt3);
  --swiper-pause-inne: var(--color-txt2);
  --swiper-arrow-border: var(--color-line);
  --swiper-arrow-arr: var(--color-txt4);
  --swiper-arrow: 3.33rem;
  --pagination-pt: 8;
  --pagination-size: 26;
}

.closebtn {
  position: absolute;
  top: 3px;
  right: 5px;
  color: white;
  font-size: 30px;
  padding: 10px;
  line-height: 1;
  cursor: pointer;
  z-index: 1;
}

.closebtn:hover {
  color: lightgrey;
}

@media screen and (max-height: 650px) {
  .con_kv_member {
    bottom: 55px;
    z-index: 10000;
  }

  .con_kv_member .box_off .num {
    font-size: 1.1rem;
  }

  .con_kv_member .btn_tokuten a {
    padding: .8em .5em;
  }

  .global-nav-wrapper .global-nav-wrapper-inner {
    gap: 10px;
  }

  .global-nav-wrapper .global-nav {
    gap: 20px;
  }

  .global-header .global-nav-wrapper {
    -webkit-transform: translateY(-140%);
            transform: translateY(-140%);
  }

  .global-header .global-nav-wrapper .global-nav {
    gap: 15px;
  }
}
#booked-widget-ngv3l4bhkof {
  position: absolute;
  right: 30px;
}

@media (min-width: 641px) {
  #booked-widget-ngv3l4bhkof {
    top: 0;
  }
}
@media (max-width: 640px) {
  #booked-widget-ngv3l4bhkof {
    top: 70px;
    right: 0px;
  }
}
/* season.php */
.season_inner {
  margin: 0 auto 240px;
}

@media (max-width: 640px) {
  .season_inner {
    margin: 0 auto 240px;
  }

  .plan-link {
    font-size: 18px;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1025px) {
  .l-footer {
    margin-top: 12.85rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .l-footer {
    margin-top: 10rem;
  }
}
@media only screen and (max-width: 767px) {
  .l-footer {
    margin-top: 5.71rem;
  }
}
