#top main {
  max-width: 1920px;
  margin-inline: auto;
}
#top main img {
  max-width: 100%;
}
#top main a {
  text-decoration: none;
}
#top .guestRoom-cont {
  padding-bottom: 140px;
}
@media (max-width: 767px) {
  #top .guestRoom-cont {
    padding-bottom: 90px;
  }
}
#top .guestRoom-cont.space {
  padding-bottom: 120px;
}
@media (max-width: 767px) {
  #top .guestRoom-cont.space {
    padding-bottom: 92px;
  }
}
#top .guestRoom-cont .tag {
  padding-bottom: 70px;
}
@media (max-width: 767px) {
  #top .guestRoom-cont .tag {
    padding-bottom: 19px;
  }
}
@media (max-width: 767px) {
  #top .guestRoom-cont .txBox {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media (max-width: 767px) {
  #top .guestRoom-cont .txBox .tag {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media (max-width: 767px) {
  #top .guestRoom-cont .txBox .h3page-ttl {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media (max-width: 767px) {
  #top .guestRoom-cont .txBox .link {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
    width: 175px;
    margin: 0 0 0 auto;
  }
  #top .guestRoom-cont .txBox .link.global-btn {
    padding: 11px 7px;
  }
  #top .guestRoom-cont .txBox .link.global-btn .tx {
    font-size: 13px;
  }
}
#top .h1page-ttl,
#top .h4page-ttl {
  font-weight: 500;
}

.topPage-btn .global-btn {
  padding: 15px 0;
  border: 1px solid #6F6B57;
  width: 257px;
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media (max-width: 767px) {
  .topPage-btn .global-btn {
    padding: 9px 0;
  }
}
.topPage-btn .global-btn .tx {
  font-size: 14px;
}
@media (min-width: 768px) {
  .topPage-btn .global-btn.center-pc {
    margin-inline: auto;
  }
  .topPage-btn .global-btn.right-pc {
    margin-right: auto;
  }
  .topPage-btn .global-btn.left-pc {
    margin-left: auto;
  }
}
@media (max-width: 767px) {
  .topPage-btn .global-btn.center-sp {
    margin-inline: auto;
  }
  .topPage-btn .global-btn.right-sp {
    margin-right: auto;
  }
  .topPage-btn .global-btn.left-sp {
    margin-left: auto;
  }
}

.topNew-btn {
  padding-bottom: 95px;
}
@media (max-width: 767px) {
  .topNew-btn {
    padding-right: 32px;
    padding-bottom: 60px;
  }
}
.topNew-btn .global-btn {
  width: 250px;
  background: #F0F0E8;
  border: none;
}

.rooms-btn {
  padding-bottom: 60px;
}
@media (max-width: 767px) {
  .rooms-btn {
    padding: 0 0 40px 32px;
  }
}
@media (max-width: 767px) {
  .rooms-btn .global-btn {
    width: 180px;
  }
}

.facilities-btn {
  padding-bottom: 40px;
}
@media (max-width: 767px) {
  .facilities-btn .global-btn {
    width: 180px;
  }
}

.foods-btn {
  pointer-events: visible;
}
@media (max-width: 767px) {
  .foods-btn .global-btn {
    width: 180px;
  }
}

.activity-btn {
  padding-bottom: 60px;
}
@media (max-width: 767px) {
  .activity-btn {
    padding-bottom: 40px;
  }
}
.activity-btn .global-btn {
  width: 200px;
}
@media (max-width: 767px) {
  .activity-btn .global-btn {
    width: 175px;
  }
}

@media (max-width: 767px) {
  .access-btn .global-btn {
    width: 225px;
  }
}

.bgBox-area {
  position: relative;
}
.bgBox-area .bgBox {
  position: absolute;
  z-index: 0;
}
.bgBox-area.top-cont .bgBox {
  top: 38%;
  left: 0;
  width: 720px;
  height: 450px;
  background: #F0F0E8;
}
.bgBox-area.top-cont .sec {
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  .bgBox-area.conBg-cont {
    background: -webkit-gradient(linear, left top, left bottom, from(#F0F0E8), color-stop(70%, #F0F0E8), color-stop(70%, #fff), to(#fff));
    background: -webkit-linear-gradient(top, #F0F0E8 0%, #F0F0E8 70%, #fff 70%, #fff 100%);
    background: linear-gradient(180deg, #F0F0E8 0%, #F0F0E8 70%, #fff 70%, #fff 100%);
  }
}
.bgBox-area.conBg-cont .bgBox {
  background: #F0F0E8;
  width: 477px;
  height: 305px;
  bottom: 0;
  right: 0;
}
.bgBox-area.foods-cont .bgBox {
  width: 800px;
  height: 370px;
  background: #F0F0E8;
  z-index: 0;
  border-radius: 20px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media (max-width: 1000px) {
  .bgBox-area.foods-cont .bgBox {
    top: 45%;
    height: 500px;
  }
}
@media (max-width: 767px) {
  .bgBox-area.foods-cont .bgBox {
    width: 340px;
    height: 460px;
    top: 64%;
  }
}

.topMainVisual {
  position: relative;
  z-index: 1;
  margin: 80px 0 70px;
  width: 100%;
  max-width: 1920px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media (max-width: 767px) {
  .topMainVisual {
    margin: 65px 0 43px;
  }
}
@media (min-width: 768px) {
  .topMainVisual .box {
    padding-left: 32px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.topMainVisual .lead {
  width: calc(24.7% - 32px);
}
@media (max-width: 767px) {
  .topMainVisual .lead {
    position: absolute;
    top: 30px;
    left: 0;
    width: 100%;
    bottom: 0;
    right: 0;
    z-index: 3;
  }
}
@media (max-width: 767px) {
  .topMainVisual .lead-main {
    padding-left: 30px;
  }
}
.topMainVisual .mvSwiper {
  width: 73%;
  max-width: 1378px;
}
@media (max-width: 767px) {
  .topMainVisual .mvSwiper {
    width: 100%;
  }
}
.topMainVisual .mvSwiper .swiper-slide img {
  width: 100%;
}
.topMainVisual .tag {
  width: 205px;
  padding-bottom: 6px;
}
@media (max-width: 767px) {
  .topMainVisual .tag {
    -webkit-filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(277deg) brightness(103%) contrast(101%);
            filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(277deg) brightness(103%) contrast(101%);
  }
}
.topMainVisual .main-tx {
  text-align: left;
  padding-bottom: 36px;
}
.topMainVisual .main-tx.h1page-ttl {
  letter-spacing: 0.15em;
}
@media (max-width: 767px) {
  .topMainVisual .main-tx {
    color: #fff;
  }
}
@media (max-width: 767px) {
  .topMainVisual .sub-tx {
    position: absolute;
    bottom: 12px;
    right: 24px;
  }
}
.topMainVisual .sub-tx .sub {
  font-size: 14px;
  letter-spacing: 0.12em;
  line-height: 1.7;
  color: #3D3D3D;
}
@media (max-width: 1000px) {
  .topMainVisual .sub-tx .sub {
    font-size: 13px;
  }
}
@media (max-width: 767px) {
  .topMainVisual .sub-tx .sub {
    color: #fff;
  }
}

.topNew-list {
  max-width: 1144px;
  margin-inline: auto;
  padding: 0 32px 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media (max-width: 767px) {
  .topNew-list {
    padding: 0 32px 20px;
  }
}
.topNew-list ul {
  gap: 5.1%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media (max-width: 767px) {
  .topNew-list ul {
    gap: 4.9%;
  }
}
.topNew-list ul li {
  width: 21.175%;
}
@media (max-width: 767px) {
  .topNew-list ul li {
    width: 47.55%;
  }
  .topNew-list ul li:nth-child(n+3) {
    margin-top: 16px;
  }
}

.mvSwiper .swiper {
  position: relative;
}
.mvSwiper .swiper-controller {
  width: 130px;
  height: 8px;
  position: absolute;
  right: 45px;
  bottom: 25px;
  color: #fff;
  pointer-events: none;
}
.mvSwiper .swiper-pagination-bullet-active {
  background: none;
}
.mvSwiper .swiper-pagination-bullet {
  position: relative;
  font-size: 14px;
  opacity: 1;
  background: none;
  height: auto;
  margin: 0 7px !important;
  pointer-events: visible;
}
.mvSwiper .swiper-pagination-bullet::after {
  content: "";
  position: absolute;
  top: 0;
  left: 49%;
  -webkit-transform: translate(-50%, -100%);
          transform: translate(-50%, -100%);
  width: 8px;
  height: 8px;
  background: transparent;
  border-radius: 100vw;
}
.mvSwiper .swiper-pagination-bullet.swiper-pagination-bullet-active {
  color: #94873F;
}
.mvSwiper .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
  background: #94873F;
}
@media (min-width: 768px) {
  .mvSwiper .swiper-pagination-bullet:hover {
    color: #94873F;
  }
}
.mvSwiper .swiper-button-prev,
.mvSwiper .swiper-button-next {
  position: absolute;
  top: 90%;
  width: 14px;
  height: 14px;
  pointer-events: visible;
}
.mvSwiper .swiper-button-prev::after,
.mvSwiper .swiper-button-next::after {
  display: none;
}
.mvSwiper .swiper-button-prev .imgBox,
.mvSwiper .swiper-button-next .imgBox {
  position: relative;
  width: 100%;
  height: 100%;
}
.mvSwiper .swiper-button-prev .img,
.mvSwiper .swiper-button-next .img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
}
.mvSwiper .swiper-button-prev .img.hover,
.mvSwiper .swiper-button-next .img.hover {
  opacity: 0;
}
.mvSwiper .swiper-button-prev .img.rotate,
.mvSwiper .swiper-button-next .img.rotate {
  -webkit-transform: translate(-50%, 0%) rotate(180deg);
          transform: translate(-50%, 0%) rotate(180deg);
  top: 25%;
}
@media (min-width: 768px) {
  .mvSwiper .swiper-button-prev:hover .img,
  .mvSwiper .swiper-button-next:hover .img {
    opacity: 0;
  }
  .mvSwiper .swiper-button-prev:hover .img:hover,
  .mvSwiper .swiper-button-next:hover .img:hover {
    opacity: 1;
  }
}
.mvSwiper .swiper-button-prev {
  left: 0;
}
.mvSwiper .swiper-button-next {
  right: 0;
}

.conSwiper .swiper {
  overflow: auto;
  overflow-y: visible;
  padding-bottom: 40px;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.conSwiper .swiper::-webkit-scrollbar {
  display: none;
}
.conSwiper .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important;
}
.conSwiper .swiper-slide:nth-child(2n) {
  -webkit-transform: translateY(40px);
          transform: translateY(40px);
}

.concept-cont {
  max-width: 1490px;
  margin-left: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 3;
  margin-bottom: 73px;
  padding: 0 0 67px 32px;
}
@media (min-width: 768px) {
  .concept-cont {
    gap: 4.8%;
  }
}
@media (max-width: 1500px) {
  .concept-cont {
    max-width: 1232px;
  }
}
@media (max-width: 767px) {
  .concept-cont {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 60px 0 0 0;
  }
}
.concept-cont .h2page-ttl,
.concept-cont .h1page-ttl {
  text-align: left;
}
.concept-cont .main {
  width: 336px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
@media (max-width: 767px) {
  .concept-cont .main {
    padding: 0 32px 52px;
  }
}
@media (min-width: 768px) {
  .concept-cont .conSwiper {
    width: calc(100% - 336px - 4.8%);
  }
}
.concept-cont .head {
  padding-bottom: 24px;
}
.concept-cont .lead {
  font-size: 20px;
  letter-spacing: 0.18em;
  line-height: 1.8;
  font-weight: 500;
  padding-bottom: 40px;
}
@media (max-width: 767px) {
  .concept-cont .lead {
    padding-bottom: 24px;
  }
}

.map-img {
  max-width: 800px;
  margin-inline: auto;
  margin-bottom: 110px;
}
@media (max-width: 767px) {
  .map-img {
    margin-bottom: 60px;
  }
}

@media (max-width: 767px) {
  .rooms-ttl {
    padding: 0 0 0 32px;
  }
}
@media (max-width: 767px) {
  .rooms-ttl .h2page-ttl,
  .rooms-ttl .h1page-ttl,
  .rooms-ttl .h3page-ttl {
    text-align: left;
  }
}
.rooms-ttl .h2page-ttl {
  padding-bottom: 5px;
}
.rooms-ttl .h1page-ttl {
  padding-bottom: 14px;
}
.rooms-ttl .h3page-ttl {
  padding-bottom: 24px;
  padding-left: 26px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 8px;
}
@media (max-width: 767px) {
  .rooms-ttl .h3page-ttl {
    -webkit-box-pack: start;
    -webkit-justify-content: start;
        -ms-flex-pack: start;
            justify-content: start;
    padding-left: 0;
  }
}
.rooms-ttl .h3page-ttl span {
  font-weight: 500;
}
.rooms-ttl .h3page-ttl .bar {
  width: 18px;
  height: 1px;
  border-bottom: 1px solid #3D3D3D;
}

.sec-facilities {
  padding: 80px 0 88px;
}
@media (max-width: 767px) {
  .sec-facilities {
    padding: 60px 32px;
  }
}

.facilities-ttl .h2page-ttl {
  padding-bottom: 5px;
}
@media (max-width: 767px) {
  .facilities-ttl .h2page-ttl {
    text-align: left;
  }
}
.facilities-ttl .h1page-ttl {
  padding-bottom: 14px;
}
@media (max-width: 767px) {
  .facilities-ttl .h1page-ttl {
    text-align: left;
  }
}
.facilities-ttl .h3page-ttl {
  padding-bottom: 24px;
  font-weight: 500;
}
@media (max-width: 767px) {
  .facilities-ttl .h3page-ttl {
    text-align: left;
  }
}

.facilities-cont {
  max-width: 800px;
  margin-inline: auto;
}
.facilities-cont .caption {
  padding: 8px 18px;
}
.facilities-cont .img {
  margin-bottom: 16px;
}
.facilities-cont .ttl {
  position: relative;
  padding-left: 18px;
}
.facilities-cont .ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 8px;
  height: 8px;
  background: #94873F;
  border-radius: 100vw;
}
.facilities-cont ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media (min-width: 768px) {
  .facilities-cont ul {
    gap: 7%;
  }
}
@media (max-width: 767px) {
  .facilities-cont ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media (min-width: 768px) {
  .facilities-cont ul li {
    width: 46.5%;
  }
}
@media (max-width: 767px) {
  .facilities-cont ul li:nth-child(n+2) {
    margin-top: 40px;
  }
}

.foods-ttl {
  position: relative;
  z-index: 3;
}
.foods-ttl .h2page-ttl {
  text-align: left;
  padding-bottom: 5px;
}
.foods-ttl .h1page-ttl {
  text-align: left;
  padding-bottom: 14px;
}
.foods-ttl .h3page-ttl {
  text-align: left;
  padding-bottom: 24px;
  font-weight: 500;
}

.foods-imgBox .box {
  width: 100%;
  height: 100%;
  position: relative;
  pointer-events: none;
}
@media (max-width: 1000px) {
  .foods-imgBox .box {
    overflow: hidden;
  }
}
.foods-imgBox .img {
  position: absolute;
}
.foods-imgBox .img01 {
  width: 45.4%;
  max-width: 491px;
  top: 0;
  left: 32px;
}
@media (max-width: 1000px) {
  .foods-imgBox .img01 {
    width: 99.6%;
    max-width: 319px;
  }
}
@media (max-width: 767px) {
  .foods-imgBox .img01 {
    left: 0;
  }
}
.foods-imgBox .img02 {
  width: 21.1%;
  max-width: 228px;
  bottom: 0;
  right: 32px;
}
@media (max-width: 1000px) {
  .foods-imgBox .img02 {
    width: 71.7%;
  }
}
@media (max-width: 767px) {
  .foods-imgBox .img02 {
    max-width: 280px;
    right: 0;
  }
}

.foods-cont {
  aspect-ratio: 1080/552;
  max-width: 1080px;
  margin: 120px auto;
}
@media (min-width: 768px) {
  .foods-cont {
    padding: 0 32px;
  }
}
@media (max-width: 1000px) {
  .foods-cont {
    aspect-ratio: auto;
    max-width: 767px;
  }
}
@media (max-width: 767px) {
  .foods-cont {
    max-width: 100%;
    margin: 60px 0;
  }
}
.foods-cont .foods-imgBox {
  position: absolute;
  z-index: 3;
  pointer-events: none;
  inset: 0;
}
@media (max-width: 1000px) {
  .foods-cont .foods-imgBox {
    position: relative;
    inset: auto;
    aspect-ratio: 767/672;
  }
}
@media (max-width: 767px) {
  .foods-cont .foods-imgBox {
    aspect-ratio: auto;
    height: 672px;
  }
}
.foods-cont .main {
  position: absolute;
  right: calc(50% - 300px);
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 3;
  width: 280px;
}
@media (max-width: 1000px) {
  .foods-cont .main {
    top: 34%;
  }
}
@media (max-width: 767px) {
  .foods-cont .main {
    position: relative;
    width: 100%;
    -webkit-transform: translate(0);
            transform: translate(0);
    inset: auto;
    padding-bottom: 40px;
    padding: 0 32px 40px;
  }
}

.activity-ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (max-width: 767px) {
  .activity-ttl {
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
  }
}
.activity-ttl .h2page-ttl {
  padding-bottom: 5px;
}
.activity-ttl .h1page-ttl {
  padding-bottom: 14px;
}
.activity-ttl .h3page-ttl {
  padding-bottom: 24px;
  text-align: left;
  font-weight: 400;
}

.activity-img {
  max-width: 1080px;
  margin-inline: auto;
  padding-bottom: 120px;
}
@media (max-width: 767px) {
  .activity-img {
    padding-bottom: 60px;
  }
}

@media (max-width: 767px) {
  .activity-head {
    padding: 0 32px;
  }
}

.access-cont {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  max-width: 800px;
  margin-inline: auto;
  padding-bottom: 30px;
}
@media (min-width: 768px) {
  .access-cont {
    gap: 9.25%;
  }
}
@media (max-width: 767px) {
  .access-cont {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-bottom: 10px;
  }
}
@media (max-width: 767px) {
  .access-cont .main {
    padding: 0 32px 47px;
  }
}
.access-cont .access-ttl {
  padding-bottom: 24px;
}
@media (min-width: 768px) {
  .access-cont .access-ttl {
    width: 326px;
  }
}
@media (min-width: 768px) {
  .access-cont .access-img {
    width: calc(100% - 326px - 9.25%);
  }
}

.access-ttl .h2page-ttl {
  padding-bottom: 5px;
  text-align: left;
}
.access-ttl .h1page-ttl {
  padding-bottom: 14px;
  text-align: left;
}
.access-ttl .h3page-ttl {
  text-align: left;
  font-weight: 500;
}

@media (max-width: 767px) {
  .access-img {
    padding: 0 32px 0;
  }
}

.guideMap-ttl .h2page-ttl {
  padding-bottom: 5px;
}

.news-ttl {
  padding-bottom: 40px;
}
@media (max-width: 767px) {
  .news-ttl {
    padding: 0 0 20px 32px;
  }
}
@media (max-width: 767px) {
  .news-ttl .h2page-ttl,
  .news-ttl .h4page-ttl {
    text-align: left;
  }
}

@media (min-width: 768px) {
  .topMainVisual .lead {
    width: 352px;
  }
  .topMainVisual .mvSwiper {
    width: calc(100% - 352px);
  }
  .guestRoom-cont .sub-img ul {
    margin-left: -5px;
  }
  .guestRoom-cont .sub-img ul li {
    width: calc(25% - 5px);
  }
}
@media (max-width: 767px) {
  .guestRoom-cont .sub-img ul {
    margin-left: 0;
  }
}