@charset "UTF-8";
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.page-content {
  padding-top: calc(var(--header-height, 90px));
}
@media screen and (max-width: 767px) {
  .page-content {
    padding-top: calc(var(--header-height, 90px));
  }
}

.p-kv-slide__wrap {
  position: relative;
  overflow: hidden;
}

.p-kv-slide {
  display: flex;
  width: 100%;
  aspect-ratio: 1920/1080;
}
@media screen and (max-width: 767px) {
  .p-kv-slide {
    flex-direction: column-reverse;
    aspect-ratio: 390/520;
  }
}
.p-kv-slide__imgWrap {
  position: relative;
  flex: 1 1 50%;
  overflow: hidden;
}
.p-kv-slide__imgWrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 35%);
  pointer-events: none;
}
.p-kv-slide__img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-kv-slide__copy {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  transform: translate(-50%, -50%);
  writing-mode: vertical-rl;
  color: #fff;
  font-family: "Shippori Mincho", serif;
  font-size: 64px;
  font-weight: 500;
  line-height: 1.2;
  text-shadow: 0 0 6px rgb(0, 0, 0), 0 0 12px rgb(0, 0, 0);
  display: flex;
}
@media screen and (max-width: 1500px) {
  .p-kv-slide__copy {
    font-size: 48px;
  }
}
@media screen and (max-width: 1271px) {
  .p-kv-slide__copy {
    font-size: 34px;
  }
}
.p-kv-slide__copyLine {
  word-break: keep-all;
}
.p-kv-slide__copyLine--first {
  transform: translateX(0.35em);
  letter-spacing: 0.2em;
}
@media screen and (max-width: 767px) {
  .p-kv-slide__copyLine--first {
    transform: translateX(0.65em);
  }
}
.p-kv-slide__copyLine--second {
  transform: translateX(-0.35em);
  margin-top: -0.5em;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 767px) {
  .p-kv-slide__copyLine--second {
    margin-top: -3.5em;
    transform: translateX(-0.65em);
  }
}
.p-kv-slide__caption {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 2;
  padding: 8px;
  box-shadow: rgba(0, 0, 0, 0.45);
  color: #fff;
  text-align: right;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .p-kv-slide__caption {
    font-size: 10px;
  }
}
@media screen and (max-width: 767px) {
  .p-kv-slide__caption--wrap {
    padding: 8px 8px;
    line-height: 1.3;
  }
}
@media screen and (min-width: 768px) {
  .p-kv-slide__imgWrap--left .p-kv-slide__caption {
    right: auto;
    left: 0;
    text-align: left;
  }
}
.p-kv-slide__caption.black {
  color: #fff;
}
.p-kv-slide__caption.shadow {
  text-shadow: 1px 0 5px #4C4C4C;
}

.swiper-button__wrap05 {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  pointer-events: none;
}
.swiper-button__wrap05 .swiper-button-next05,
.swiper-button__wrap05 .swiper-button-prev05 {
  position: static;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.8);
  pointer-events: auto;
  transition: opacity 0.2s ease;
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap05 .swiper-button-next05,
  .swiper-button__wrap05 .swiper-button-prev05 {
    width: 32px;
    height: 32px;
  }
}
.swiper-button__wrap05 .swiper-button-next05:hover,
.swiper-button__wrap05 .swiper-button-prev05:hover {
  opacity: 0.8;
}
.swiper-button__wrap05 .swiper-button-next05:focus-visible,
.swiper-button__wrap05 .swiper-button-prev05:focus-visible {
  outline: 2px solid #987941;
  outline-offset: 2px;
}
.swiper-button__wrap05 .swiper-button-next05:active,
.swiper-button__wrap05 .swiper-button-prev05:active {
  opacity: 0.6;
}
.swiper-button__wrap05 .swiper-button-next05::after,
.swiper-button__wrap05 .swiper-button-prev05::after {
  position: absolute;
  width: 40px;
  height: 40px;
  content: "";
  background: url("https://img.dormy-hotels.com/static/img/alltop/common/icon-common-arrow.svg") no-repeat;
  background-position: center;
  background-size: cover;
}
#staging .swiper-button__wrap05 .swiper-button-next05::after,
#staging .swiper-button__wrap05 .swiper-button-prev05::after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/common/icon-common-arrow.svg");
}
#develop .swiper-button__wrap05 .swiper-button-next05::after,
#develop .swiper-button__wrap05 .swiper-button-prev05::after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/common/icon-common-arrow.svg");
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap05 .swiper-button-next05::after,
  .swiper-button__wrap05 .swiper-button-prev05::after {
    width: 32px;
    height: 32px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .swiper-button__wrap05 .swiper-button-next05,
  .swiper-button__wrap05 .swiper-button-prev05 {
    transition: none;
  }
}
.swiper-button__wrap05 .swiper-button-prev05::after {
  transform: rotate(180deg);
}

.swiper-pagination05 {
  position: absolute;
  right: 0;
  bottom: 16px;
  left: 0;
  z-index: 3;
  --swiper-pagination-color: #fff;
  --swiper-pagination-bullet-inactive-color: #fff;
  --swiper-pagination-bullet-inactive-opacity: 0.5;
  text-align: center;
}

.p-about {
  padding: 40px 0;
  background-color: #fff;
}

/* ページの h1（デザイン上は非表示。検索エンジン・スクリーンリーダー向けに設置） */
.p-about__h1 {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* search-popup: 開閉ロジック
     * ------------------------------------------------------- */
.form-group {
  position: relative;
}

.search-popup-btn {
  cursor: pointer;
}

/* search-area / search-popup: ヘッダー(z-index:10)より下に表示させる
     * ------------------------------------------------------- */
.sticky-header {
  z-index: 3;
  box-shadow: none;
}

/* subMenuContentwrap: PC時、ヘッダー直下に固定してページ下部まで追従
 * ------------------------------------------------------- */
.subMenuContentwrap {
  z-index: 100;
}
@media screen and (min-width: 1025px) {
  .subMenuContentwrap {
    position: fixed;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .subMenuContentwrap .search-area .container {
    padding: 15px 20px;
    width: 100%;
    border-radius: 0;
    margin: 0;
    max-width: 100%;
  }
  .subMenuContentwrap .search-area__body {
    padding: 0;
    max-width: 1200px;
    margin: 0 auto;
  }
}

.subMenuContentwrap__spacer {
  height: 0;
}

.search-area {
  z-index: 5;
  border-radius: 25px;
  display: flex;
  gap: 10px;
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .search-area {
    border-radius: 0;
    display: none;
  }
}
/* SP：追従の「ご宿泊予約」（.js-sp-search-open）から検索ガジェットを上から開く（is-open は reserve.js で付与）
 * ------------------------------------------------------- */
@media screen and (max-width: 767px) {
  .search-area.is-open {
    display: block;
  }
  .search-area.is-open .container {
    padding: 0;
  }
  .search-area.is-open .search-area__sp-btn {
    display: none;
  }
  .search-area.is-open .search-area__body {
    top: var(--cta-fixed-height, 0px);
  }
  /* SPはガジェットの背景が白のため、項目名（目的地・チェックイン等）のグレー背景が帯に見える */
  .search-area.is-open .form-block .form-group .form-label {
    background-color: transparent;
  }
  /* 閉じるボタン（下部固定「空室検索」ガジェットの「閉じる」と同じ見た目） */
  .search-area.is-open .search-area__close {
    display: block;
    margin: 12px auto 0;
    padding: 0;
    border: 0;
    background: none;
    color: #4C4C4C;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 14px;
    line-height: 1;
    text-decoration: underline;
    cursor: pointer;
  }
}
.search-area__close {
  display: none;
}

/* 人数／室数ポップアップ：SPは下部固定「空室検索」ガジェットの人数／室数（#roomsModal01）と同じ見た目にする
 * （top_nono/style.css は野乃ページと共用のため、総合TOPのみここで上書き）
 * ------------------------------------------------------- */
.search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-footer .search-popup__cancel {
  display: none;
}
@media screen and (max-width: 767px) {
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-body {
    padding: 15px;
    color: #4C4C4C;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group {
    margin: 0;
    padding: 0;
    border-bottom: 0;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group + .setting-group {
    margin-top: 20px;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group:first-child .d-flex {
    justify-content: flex-start;
    align-items: center;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group .setting-name {
    width: 130px;
    margin: 0 10px 0 0;
    padding: 5px 0;
    border-right: 0;
    color: #4C4C4C;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group:first-child .setting-name {
    border-right: 1px solid #d4d4d4;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group:first-child .setting-field {
    margin-left: 0;
    padding: 3px 0;
  }
  /* 区切り線：室数と部屋の間（#roomsModal01 .category01::after と同じ） */
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group:first-child {
    position: relative;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group:first-child::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -10px;
    left: 0;
    height: 1px;
    background-color: #d4d4d4;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group .room-group {
    display: flex;
    flex-wrap: wrap;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group .room-group + .room-group {
    margin-top: 20px;
    padding-top: 0;
    border-top: 0;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group .room-group .setting-field {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 20px;
    padding: 3px 0;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group .setting-sub-group {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 0;
    padding: 0;
    border-bottom: 0;
  }
  /* 区切り線：大人と子供の間（#roomsModal01 .subCategorys::after と同じ） */
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group .setting-sub-group:first-child {
    position: relative;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group .setting-sub-group:first-child::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -10px;
    left: 0;
    height: 1px;
    background-color: #d4d4d4;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group .setting-sub-group .d-flex {
    justify-content: space-between;
    align-items: center;
    margin: 0;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-setting .setting-group .setting-sub-label {
    margin: 0;
    padding-right: 18px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .js-qty {
    gap: 0 5px;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .js-qty .js-qty__adjust {
    width: 16px;
    height: 16px;
    padding: 0;
    border: 0;
    background-size: 16px 16px;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .js-qty .js-qty__adjust--minus {
    background-image: url("https://img.dormy-hotels.com/static/img/common/icon-minus.svg");
  }
  #staging .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .js-qty .js-qty__adjust--minus {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/common/icon-minus.svg");
  }
  #develop .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .js-qty .js-qty__adjust--minus {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/common/icon-minus.svg");
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .js-qty .js-qty__adjust--plus {
    background-image: url("https://img.dormy-hotels.com/static/img/common/icon-plus.svg");
  }
  #staging .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .js-qty .js-qty__adjust--plus {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/common/icon-plus.svg");
  }
  #develop .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .js-qty .js-qty__adjust--plus {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/common/icon-plus.svg");
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .js-qty .js-qty__adjust:disabled {
    opacity: 0.3;
    filter: none;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .js-qty .js-qty__num {
    width: 29px;
    height: 16px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 14.4px;
    font-weight: 700;
    line-height: 16px;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .attention {
    margin: 10px 0;
    font-size: 11px;
    line-height: 1.4;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-footer {
    padding: 0 15px 15px;
    border-top: 0;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-footer .d-flex {
    justify-content: flex-end;
    gap: 0 15px;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-footer .popup-close-btn {
    display: inline-block;
    width: 130px;
    height: 39px;
    padding: 12px 0;
    border: 1px solid #a5852e;
    border-radius: 4px;
    background-color: #a5852e;
    color: #fff;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
  }
  .search-area .form-block .form-group__rooms .search-popup.search-popup__rooms .search-popup-footer .popup-close-btn.search-popup__cancel {
    border-color: #d4d4d4;
    background-color: #d4d4d4;
    color: #000;
  }
}
.search-area .container {
  padding: 30px 16px;
  width: 100%;
  background-color: rgba(246, 246, 246, 0.9490196078);
  border-radius: 25px;
}
@media screen and (max-width: 767px) {
  .search-area .container {
    padding: 8px 16px;
  }
}

.search-area .form-block .form-group .form-label {
  background-color: transparent;
  background-color: rgba(246, 246, 246, 0.9490196078);
  margin-bottom: 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  padding-bottom: 5px;
}

.search-area input::-moz-placeholder {
  font-family: "Zen Kaku Gothic New", sans-serif;
  border-radius: 4px;
}

.search-area input,
.search-area select,
.search-area input::placeholder,
.search-area .form-block .form-group__rooms .form-field .form-preview,
.search-area .form-block .form-group .form-field .form-control,
.search-area .form-block .form-group .form-field .btn {
  font-family: "Zen Kaku Gothic New", sans-serif;
  border-radius: 4px;
}

.search-area .form-submit .btn {
  font-weight: 700;
}

#search-area-preview::-moz-placeholder {
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.search-area .form-submit .btn,
.search-area .popup-close-btn,
#search-area-preview::placeholder {
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.search-area .form-block .form-group__checkin .form-field .form-disabled,
.search-area .form-block .form-group .form-field .form-select {
  font-family: "Zen Kaku Gothic New", sans-serif;
  border-radius: 4px;
}

.search-area .form-block .form-group .form-field .form-preview {
  padding-left: 40px;
}

.search-area .form-block .form-group__checkin .form-field,
.search-area .form-block .form-group__stays .form-field .form-select {
  width: 100%;
}

.p-intro {
  margin-top: 68px;
}
@media screen and (max-width: 767px) {
  .p-intro {
    margin-top: 20px;
  }
}

.allWrap {
  overflow: visible;
}

@media screen and (max-width: 767px) {
  .footerLogoSpacer {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-slide-list__cntr {
    margin-top: 0px;
  }
}

.p-slide-list__wrap {
  position: sticky;
  margin-top: 50px;
  /* PCはヘッダー直下に固定表示される検索バーの下に重ねる（--fixed-search-height は Top.blade.php で設定） */
  top: calc(var(--header-height, 90px) + var(--fixed-search-height, 0px));
  left: 0;
  overflow: hidden;
  pointer-events: none;
}
@media screen and (min-width: 1920px) {
  .p-slide-list__wrap {
    height: calc(100dvh - var(--header-height, 90px) - var(--fixed-search-height, 0px));
  }
}
@media screen and (max-width: 767px) {
  .p-slide-list__wrap {
    height: auto;
    top: calc(var(--header-height, 90px) + var(--cta-fixed-height, 0px));
  }
}
.p-slide-list__inr {
  height: 100%;
}

#onsen {
  z-index: 1;
}

#experience {
  z-index: 2;
}

#view {
  z-index: 3;
}

#gourmet {
  z-index: 4;
}

#shape {
  z-index: 5;
}

#various {
  z-index: 6;
}

#onsen.is-front,
#experience.is-front,
#view.is-front,
#gourmet.is-front,
#shape.is-front,
#various.is-front {
  z-index: 7;
}

.p-slide-list__cont {
  padding: 40px 0 142px;
  position: relative;
  height: 100%;
  pointer-events: auto;
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont {
    padding: 32px 0 326px;
  }
}
.p-slide-list__cont::after {
  position: absolute;
  content: "";
  width: 100px;
  height: 100%;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-onsen.png");
  z-index: 1;
}
#staging .p-slide-list__cont::after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-onsen.png");
}
#develop .p-slide-list__cont::after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-onsen.png");
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont::after {
    content: none;
  }
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont .p-slide-list__width::after {
    position: absolute;
    content: "";
    width: 100px;
    height: 100%;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-onsen.png");
    z-index: 1;
    top: 0;
    height: 101%;
    transform: none;
  }
  #staging .p-slide-list__cont .p-slide-list__width::after {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-onsen.png");
  }
  #develop .p-slide-list__cont .p-slide-list__width::after {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-onsen.png");
  }
}
.p-slide-list__cont::before {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont::before {
    background-size: cover;
  }
}
.p-slide-list__cont.--onsen::before {
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/kv-onsen.png");
}
#staging .p-slide-list__cont.--onsen::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/kv-onsen.png");
}
#develop .p-slide-list__cont.--onsen::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/kv-onsen.png");
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont.--onsen::before {
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/kv-onsen_sp.png");
    background-position-y: bottom;
  }
  #staging .p-slide-list__cont.--onsen::before {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/kv-onsen_sp.png");
  }
  #develop .p-slide-list__cont.--onsen::before {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/kv-onsen_sp.png");
  }
}
.p-slide-list__cont.--experience::after {
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-experience.png");
}
#staging .p-slide-list__cont.--experience::after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-experience.png");
}
#develop .p-slide-list__cont.--experience::after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-experience.png");
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont.--experience .p-slide-list__width::after {
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-experience.png");
  }
  #staging .p-slide-list__cont.--experience .p-slide-list__width::after {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-experience.png");
  }
  #develop .p-slide-list__cont.--experience .p-slide-list__width::after {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-experience.png");
  }
}
.p-slide-list__cont.--experience::before {
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/kv-experience.png");
}
#staging .p-slide-list__cont.--experience::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/kv-experience.png");
}
#develop .p-slide-list__cont.--experience::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/kv-experience.png");
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont.--experience::before {
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/kv-experience_sp.png");
    background-position-y: bottom;
  }
  #staging .p-slide-list__cont.--experience::before {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/kv-experience_sp.png");
  }
  #develop .p-slide-list__cont.--experience::before {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/kv-experience_sp.png");
  }
}
.p-slide-list__cont.--view::after {
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-view.png");
}
#staging .p-slide-list__cont.--view::after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-view.png");
}
#develop .p-slide-list__cont.--view::after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-view.png");
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont.--view .p-slide-list__width::after {
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-view.png");
  }
  #staging .p-slide-list__cont.--view .p-slide-list__width::after {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-view.png");
  }
  #develop .p-slide-list__cont.--view .p-slide-list__width::after {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-view.png");
  }
}
.p-slide-list__cont.--view::before {
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/kv-view.png");
}
#staging .p-slide-list__cont.--view::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/kv-view.png");
}
#develop .p-slide-list__cont.--view::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/kv-view.png");
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont.--view::before {
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/kv-view_sp.png");
    background-position-y: bottom;
  }
  #staging .p-slide-list__cont.--view::before {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/kv-view_sp.png");
  }
  #develop .p-slide-list__cont.--view::before {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/kv-view_sp.png");
  }
}
.p-slide-list__cont.--gourmet::after {
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-gourmet.png");
}
#staging .p-slide-list__cont.--gourmet::after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-gourmet.png");
}
#develop .p-slide-list__cont.--gourmet::after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-gourmet.png");
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont.--gourmet .p-slide-list__width::after {
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-gourmet.png");
  }
  #staging .p-slide-list__cont.--gourmet .p-slide-list__width::after {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-gourmet.png");
  }
  #develop .p-slide-list__cont.--gourmet .p-slide-list__width::after {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-gourmet.png");
  }
}
.p-slide-list__cont.--gourmet::before {
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/kv-gourmet.png");
}
#staging .p-slide-list__cont.--gourmet::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/kv-gourmet.png");
}
#develop .p-slide-list__cont.--gourmet::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/kv-gourmet.png");
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont.--gourmet::before {
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/kv-gourmet_sp.png");
    background-position-y: bottom;
  }
  #staging .p-slide-list__cont.--gourmet::before {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/kv-gourmet_sp.png");
  }
  #develop .p-slide-list__cont.--gourmet::before {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/kv-gourmet_sp.png");
  }
}
.p-slide-list__cont.--shape::after {
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-shape.png");
}
#staging .p-slide-list__cont.--shape::after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-shape.png");
}
#develop .p-slide-list__cont.--shape::after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-shape.png");
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont.--shape .p-slide-list__width::after {
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-shape.png");
  }
  #staging .p-slide-list__cont.--shape .p-slide-list__width::after {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-shape.png");
  }
  #develop .p-slide-list__cont.--shape .p-slide-list__width::after {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-shape.png");
  }
}
.p-slide-list__cont.--shape::before {
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/kv-shape.png");
}
#staging .p-slide-list__cont.--shape::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/kv-shape.png");
}
#develop .p-slide-list__cont.--shape::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/kv-shape.png");
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont.--shape::before {
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/kv-shape_sp.png");
    background-position-y: bottom;
  }
  #staging .p-slide-list__cont.--shape::before {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/kv-shape_sp.png");
  }
  #develop .p-slide-list__cont.--shape::before {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/kv-shape_sp.png");
  }
}
.p-slide-list__cont.--various::after {
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-various.png");
}
#staging .p-slide-list__cont.--various::after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-various.png");
}
#develop .p-slide-list__cont.--various::after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-various.png");
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont.--various .p-slide-list__width::after {
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-various.png");
  }
  #staging .p-slide-list__cont.--various .p-slide-list__width::after {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-various.png");
  }
  #develop .p-slide-list__cont.--various .p-slide-list__width::after {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-various.png");
  }
}
.p-slide-list__cont.--various::before {
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/kv-various.png");
}
#staging .p-slide-list__cont.--various::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/kv-various.png");
}
#develop .p-slide-list__cont.--various::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/kv-various.png");
}
@media screen and (max-width: 767px) {
  .p-slide-list__cont.--various::before {
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/kv-various_sp.png");
    background-position-y: bottom;
  }
  #staging .p-slide-list__cont.--various::before {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/kv-various_sp.png");
  }
  #develop .p-slide-list__cont.--various::before {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/kv-various_sp.png");
  }
}

.p-slide-list__mainTtl {
  font-size: 24px;
  font-weight: 700;
  padding: 10px 16px;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .p-slide-list__mainTtl {
    font-size: 24px;
    padding: 4px 14px;
  }
}
.p-slide-list__mainTtl.--onsen {
  color: #EF7A44;
  background-color: #FFEEC9;
}
.p-slide-list__mainTtl.--experience {
  color: #41776C;
  background-color: #E4FEFB;
}
.p-slide-list__mainTtl.--view {
  color: #F6E7FF;
  background-color: #502868;
}
.p-slide-list__mainTtl.--gourmet {
  color: #FFF189;
  background-color: #604B00;
}
.p-slide-list__mainTtl.--shape {
  color: #CA4600;
  background-color: #FFD1B1;
}
.p-slide-list__mainTtl.--various {
  color: #2B5C47;
  background-color: #DECC93;
}

.p-slide-list {
  margin-top: 20px;
}

.p-slide-list__link {
  padding: 10px;
  border-radius: 8px;
  background-color: #fff;
  text-decoration: none;
  transition: 0.8s;
  display: flex;
  flex-direction: column;
  height: 100%;
}
@media screen and (min-width: 1272px) {
  .p-slide-list__link:hover {
    opacity: 0.7;
  }
  .p-slide-list__link:hover .p-slide-list__imgWrap img {
    transform: scale(1.2);
  }
}
@media screen and (max-width: 767px) {
  .p-slide-list__link {
    border-radius: 16px;
  }
}

.p-slide-list__imgWrap {
  border-radius: 8px;
  overflow: hidden;
  aspect-ratio: 36/24;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-slide-list__imgWrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.8s;
}

.p-slide-list__icon {
  width: 32px;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-slide-list__subWrap {
  display: flex;
  gap: 3px;
  border-bottom: 1px solid #F4F4F4;
  padding-top: 10px;
  padding-bottom: 10px;
}

.p-slide-list__subTtl {
  font-size: 14px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-slide-list__subTtl {
    font-size: 12px;
  }
}

.p-slide-list__ttl {
  font-size: 16px;
  font-weight: 500;
  margin-top: 5px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-slide-list__ttl {
    font-size: 14px;
  }
}

.p-slide-list__width {
  margin-left: calc((100% - 1520px) / 2);
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 1540px) {
  .p-slide-list__width {
    margin-left: 40px;
  }
}
@media screen and (max-width: 767px) {
  .p-slide-list__width {
    margin-left: 15px;
  }
}

.swiper-button__wrap {
  position: absolute;
  display: flex;
  gap: 24px;
  right: calc((100% - 1520px) / 2);
  top: 25px;
  z-index: 3;
}
@media screen and (max-width: 1540px) {
  .swiper-button__wrap {
    right: 40px;
  }
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap {
    right: 15px;
    top: 30px;
  }
}
.swiper-button__wrap .swiper-button-next,
.swiper-button__wrap .swiper-button-prev {
  position: static;
  width: 40px;
  height: 40px;
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap .swiper-button-next,
  .swiper-button__wrap .swiper-button-prev {
    width: 32px;
    height: 32px;
  }
}
.swiper-button__wrap .swiper-button-next:after,
.swiper-button__wrap .swiper-button-prev:after {
  width: 40px;
  height: 40px;
  content: "";
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/arrow-onsen.svg") no-repeat;
  background-size: contain;
}
#staging .swiper-button__wrap .swiper-button-next:after,
#staging .swiper-button__wrap .swiper-button-prev:after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/arrow-onsen.svg");
}
#develop .swiper-button__wrap .swiper-button-next:after,
#develop .swiper-button__wrap .swiper-button-prev:after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/arrow-onsen.svg");
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap .swiper-button-next:after,
  .swiper-button__wrap .swiper-button-prev:after {
    width: 32px;
    height: 32px;
  }
}
.swiper-button__wrap.--experience .swiper-button-next:after,
.swiper-button__wrap.--experience .swiper-button-prev:after {
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/arrow-experience.svg") no-repeat;
  background-size: contain;
}
#staging .swiper-button__wrap.--experience .swiper-button-next:after,
#staging .swiper-button__wrap.--experience .swiper-button-prev:after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/arrow-experience.svg");
}
#develop .swiper-button__wrap.--experience .swiper-button-next:after,
#develop .swiper-button__wrap.--experience .swiper-button-prev:after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/arrow-experience.svg");
}
.swiper-button__wrap.--view .swiper-button-next:after,
.swiper-button__wrap.--view .swiper-button-prev:after {
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/arrow-view.svg") no-repeat;
  background-size: contain;
}
#staging .swiper-button__wrap.--view .swiper-button-next:after,
#staging .swiper-button__wrap.--view .swiper-button-prev:after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/arrow-view.svg");
}
#develop .swiper-button__wrap.--view .swiper-button-next:after,
#develop .swiper-button__wrap.--view .swiper-button-prev:after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/arrow-view.svg");
}
.swiper-button__wrap.--gourmet .swiper-button-next:after,
.swiper-button__wrap.--gourmet .swiper-button-prev:after {
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/arrow-gourmet.svg") no-repeat;
  background-size: contain;
}
#staging .swiper-button__wrap.--gourmet .swiper-button-next:after,
#staging .swiper-button__wrap.--gourmet .swiper-button-prev:after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/arrow-gourmet.svg");
}
#develop .swiper-button__wrap.--gourmet .swiper-button-next:after,
#develop .swiper-button__wrap.--gourmet .swiper-button-prev:after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/arrow-gourmet.svg");
}
.swiper-button__wrap.--shape .swiper-button-next:after,
.swiper-button__wrap.--shape .swiper-button-prev:after {
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/arrow-shape.svg") no-repeat;
  background-size: contain;
}
#staging .swiper-button__wrap.--shape .swiper-button-next:after,
#staging .swiper-button__wrap.--shape .swiper-button-prev:after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/arrow-shape.svg");
}
#develop .swiper-button__wrap.--shape .swiper-button-next:after,
#develop .swiper-button__wrap.--shape .swiper-button-prev:after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/arrow-shape.svg");
}
.swiper-button__wrap.--various .swiper-button-next:after,
.swiper-button__wrap.--various .swiper-button-prev:after {
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/arrow-various.svg") no-repeat;
  background-size: contain;
}
#staging .swiper-button__wrap.--various .swiper-button-next:after,
#staging .swiper-button__wrap.--various .swiper-button-prev:after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/arrow-various.svg");
}
#develop .swiper-button__wrap.--various .swiper-button-next:after,
#develop .swiper-button__wrap.--various .swiper-button-prev:after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/arrow-various.svg");
}
.swiper-button__wrap .swiper-button-next::after {
  transform: rotate(180deg);
}

.p-category-list__item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 16.6666666667%;
  position: relative;
  padding: 8px;
}
@media screen and (max-width: 1271px) {
  .p-category-list__item {
    padding: 8px 2px;
    gap: 4px;
  }
}
@media screen and (max-width: 767px) {
  .p-category-list__item {
    padding: 8px 0;
  }
}
.p-category-list__item::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  inset: 0;
  z-index: -1;
}
.p-category-list__item.--onsen::before {
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/frame-onsen.png") no-repeat;
}
#staging .p-category-list__item.--onsen::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/frame-onsen.png");
}
#develop .p-category-list__item.--onsen::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/frame-onsen.png");
}
.p-category-list__item.--experience {
  margin-left: 16.6666666667%;
}
.p-category-list__item.--experience::before {
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/frame-experience.png") no-repeat;
}
#staging .p-category-list__item.--experience::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/frame-experience.png");
}
#develop .p-category-list__item.--experience::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/frame-experience.png");
}
.p-category-list__item.--view {
  margin-left: 33.3333333333%;
}
.p-category-list__item.--view::before {
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/frame-view.png") no-repeat;
}
#staging .p-category-list__item.--view::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/frame-view.png");
}
#develop .p-category-list__item.--view::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/frame-view.png");
}
.p-category-list__item.--gourmet {
  margin-left: 50%;
}
.p-category-list__item.--gourmet::before {
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/frame-gourmet.png") no-repeat;
}
#staging .p-category-list__item.--gourmet::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/frame-gourmet.png");
}
#develop .p-category-list__item.--gourmet::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/frame-gourmet.png");
}
.p-category-list__item.--shape {
  margin-right: 16.6666666667%;
  margin-left: auto;
}
.p-category-list__item.--shape::before {
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/frame-shape.png") no-repeat;
}
#staging .p-category-list__item.--shape::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/frame-shape.png");
}
#develop .p-category-list__item.--shape::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/frame-shape.png");
}
.p-category-list__item.--various {
  margin-left: auto;
}
.p-category-list__item.--various::before {
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/frame-various.png") no-repeat;
}
#staging .p-category-list__item.--various::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/frame-various.png");
}
#develop .p-category-list__item.--various::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/frame-various.png");
}

.p-category-list__link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  text-decoration: none;
  cursor: pointer;
  pointer-events: auto;
  transition: opacity 0.2s ease;
}
@media screen and (min-width: 1272px) {
  .p-category-list__link:hover {
    opacity: 0.7;
  }
}
.p-category-list__link:focus-visible {
  outline: 2px solid #987941;
  outline-offset: 2px;
}
.p-category-list__link:active {
  transform: scale(0.97);
}

.p-category-list__ttl {
  color: #fff;
  font-size: 20px;
  font-weight: 700;
}
@media screen and (max-width: 1271px) {
  .p-category-list__ttl {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .p-category-list__ttl {
    font-size: 10px;
    text-align: center;
    padding: 0;
    letter-spacing: 0;
  }
}
.p-category-list__ttl.--experience {
  color: #41776C;
}
.p-category-list__ttl.--view {
  color: #502868;
}
.p-category-list__ttl.--gourmet {
  color: #604B00;
}
.p-category-list__ttl.--various {
  color: #FBECBF;
}

.p-category-list__img {
  max-width: 56px;
}
@media screen and (max-width: 1271px) {
  .p-category-list__img {
    max-width: 30px;
  }
}
@media screen and (max-width: 767px) {
  .p-category-list__img {
    display: none;
  }
}

.p-region {
  padding: 121px 0 81px;
}
@media screen and (max-width: 767px) {
  .p-region {
    padding: 48px 0;
  }
}

.p-region__cont {
  max-width: 1720px;
  margin-right: auto;
  display: flex;
  gap: 24px;
  padding-right: 20px;
}
@media screen and (max-width: 767px) {
  .p-region__cont {
    flex-direction: column;
  }
}

.p-region-list__wrap {
  width: 60%;
  padding: 56px 20px 100px;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-region-list__wrap {
    padding: 16px 28px 16px 16px;
  }
}
.p-region-list__wrap::before {
  position: absolute;
  content: "";
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/bg-region.png") no-repeat;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  inset: 0;
  z-index: -1;
  border-radius: 0 32px 32px 0;
}
#staging .p-region-list__wrap::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/bg-region.png");
}
#develop .p-region-list__wrap::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/bg-region.png");
}
@media screen and (max-width: 767px) {
  .p-region-list__wrap::before {
    border-radius: 0 24px 24px 0;
  }
}
.p-region-list__wrap::after {
  position: absolute;
  content: "";
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/leaf_sp.svg") no-repeat;
  background-size: contain;
  width: 400px;
  height: 400px;
  bottom: -120px;
  right: 10px;
  z-index: -1;
}
#staging .p-region-list__wrap::after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/leaf_sp.svg");
}
#develop .p-region-list__wrap::after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/leaf_sp.svg");
}
@media screen and (max-width: 767px) {
  .p-region-list__wrap::after {
    width: 200px;
    height: 200px;
    bottom: -30px;
    background: url("https://img.dormy-hotels.com/static/img/alltop/top/leaf_sp.svg") no-repeat;
    background-size: contain;
  }
  #staging .p-region-list__wrap::after {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/leaf_sp.svg");
  }
  #develop .p-region-list__wrap::after {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/leaf_sp.svg");
  }
}
@media screen and (max-width: 767px) {
  .p-region-list__wrap {
    width: 100%;
  }
}

.p-region-list__cont {
  max-width: 812px;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  z-index: 3;
}

.p-region-list {
  display: flex;
  flex-wrap: wrap;
  max-width: 452px;
  gap: 24px 16px;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .p-region-list {
    margin-top: 16px;
    gap: 8px 6px;
  }
}

.p-region-list__item {
  background-color: #fff;
  border: none;
  color: #7E7E7E;
  font-weight: 700;
  border-radius: 46px;
  padding: 10px 40px 10px 16px;
  position: relative;
  font-size: 18px;
  transition: 0.5s;
  cursor: pointer;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
@media screen and (min-width: 1272px) {
  .p-region-list__item:hover {
    background-color: #987941;
    color: #fff;
  }
  .p-region-list__item:hover::before {
    background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/icon-region-active.svg");
  }
  #staging .p-region-list__item:hover::before {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/icon-region-active.svg");
  }
  #develop .p-region-list__item:hover::before {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/icon-region-active.svg");
  }
}
@media screen and (max-width: 767px) {
  .p-region-list__item {
    font-size: 13px;
    padding: 7px 32px 7px 10px;
  }
}
.p-region-list__item::before {
  position: absolute;
  content: "";
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/icon-region.svg") no-repeat;
  width: 16px;
  height: 16px;
  -o-object-fit: contain;
     object-fit: contain;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.5s;
}
#staging .p-region-list__item::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/icon-region.svg");
}
#develop .p-region-list__item::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/icon-region.svg");
}
@media screen and (max-width: 767px) {
  .p-region-list__item::before {
    right: 10px;
  }
}
.p-region-list__item.active {
  background-color: #987941;
  color: #fff;
}
.p-region-list__item.active::before {
  background-image: url("https://img.dormy-hotels.com/static/img/alltop/top/icon-region-active.svg");
}
#staging .p-region-list__item.active::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/icon-region-active.svg");
}
#develop .p-region-list__item.active::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/icon-region-active.svg");
}

.p-region-tab {
  width: calc(40% - 24px);
}
@media screen and (max-width: 767px) {
  .p-region-tab {
    width: calc(100% - 20px);
    margin-left: 20px;
    margin-right: 20px;
  }
}

.p-region-tab__list {
  height: 100%;
}
@media screen and (max-width: 767px) {
  .p-region-tab__list {
    width: 100%;
  }
}

.p-region-tab__item {
  position: relative;
  text-decoration: none;
  padding: 24px;
  height: 100%;
  display: none;
}
@media screen and (max-width: 767px) {
  .p-region-tab__item {
    padding: 8px;
  }
}
@media screen and (min-width: 1272px) {
  .p-region-tab__item:hover .p-region-tab__img {
    transform: scale(1.2);
  }
  .p-region-tab__item:hover .p-region-tab__btn {
    background-color: #987941;
    color: #fff;
    border: 1px solid #987941;
  }
  .p-region-tab__item:hover .p-region-tab__btn::after {
    background-color: #fff;
  }
}
.p-region-tab__item.active {
  display: block;
}
.p-region-tab__item::before {
  position: absolute;
  content: "";
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/bg-region.png") no-repeat;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  inset: 0;
  z-index: -1;
  border-radius: 32px;
}
#staging .p-region-tab__item::before {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/bg-region.png");
}
#develop .p-region-tab__item::before {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/bg-region.png");
}
@media screen and (max-width: 767px) {
  .p-region-tab__item::before {
    border-radius: 16px;
  }
}

.p-region-tab__inr {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.p-region-tab__imgWrap {
  overflow: hidden;
  border-radius: 16px;
}
@media screen and (max-width: 767px) {
  .p-region-tab__imgWrap {
    border-radius: 10px;
  }
}
.p-region-tab__img {
  transition: 0.8s;
}

.p-region-tab__txtCntr {
  padding-left: 48px;
  margin-top: 10px;
  margin-bottom: 16px;
}
@media screen and (max-width: 1271px) {
  .p-region-tab__txtCntr {
    padding-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .p-region-tab__txtCntr {
    padding-left: 0;
    margin-top: 5px;
  }
}

.p-region-tab__ttl {
  font-size: 24px;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .p-region-tab__ttl {
    font-size: 18px;
  }
}

.p-region-tab__txt {
  margin-top: 10px;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-region-tab__txt {
    font-size: 13px;
    margin-top: 5px;
  }
}

.p-region-tab__btn {
  margin-left: auto;
  margin-top: auto;
}

.p-feature {
  padding-top: 120px;
  padding-bottom: 80px;
  position: relative;
  overflow-x: hidden;
}
@media screen and (max-width: 767px) {
  .p-feature {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}

.p-feature__btn {
  margin: 32px auto 0;
}
@media screen and (max-width: 767px) {
  .p-feature__btn {
    margin-top: 16px;
  }
}

.p-feature-slide__wrap {
  position: relative;
}
.p-feature-slide__wrap::before, .p-feature-slide__wrap::after {
  position: absolute;
  content: "";
  width: 100px;
  height: 444px;
  background-size: contain;
  background-position: top;
  top: 0;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .p-feature-slide__wrap::before, .p-feature-slide__wrap::after {
    top: -10px;
    width: 40px;
    height: 110%;
  }
}
.p-feature-slide__wrap::before {
  background: linear-gradient(to left, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 81%);
  left: 0;
}
.p-feature-slide__wrap::after {
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 81%);
  right: 0;
}

.p-feature-slide {
  transition: 0.8s;
  overflow: hidden;
}
@media screen and (min-width: 1272px) {
  .p-feature-slide:hover {
    opacity: 0.7;
  }
  .p-feature-slide:hover .p-feature-slide__img {
    transform: scale(1.2);
  }
}

.p-feature-slide__list {
  margin-top: 32px;
  padding-left: 5%;
}
@media screen and (max-width: 767px) {
  .p-feature-slide__list {
    padding-left: 0;
  }
}

.p-feature__img {
  position: absolute;
  right: -200px;
  top: -70px;
  transform: translateY(-20%);
  width: 320px;
  height: 320px;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .p-feature__img {
    right: -70px;
    top: 10px;
    width: 200px;
    height: 200px;
  }
}

.p-feature__txt {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .p-feature__txt {
    margin-top: 10px;
  }
}

.p-feature-slide {
  display: flex;
  flex-direction: column;
  border-radius: 12px;
  text-decoration: none;
}
.p-feature-slide.swiper-slide {
  height: auto !important;
}

.p-feature-slide__imgWrap {
  overflow: hidden;
  aspect-ratio: 380/254;
}

.p-feature-slide__img {
  aspect-ratio: 380/254;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.8s;
}

.p-feature-slide__txtCntr {
  background-color: #E7E5E2;
  padding: 12px;
  height: auto;
  flex: 1 0 auto;
}

.p-feature-slide__ul {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.p-feature-slide__li {
  background-color: #4C4C4C;
  border-radius: 2px;
  color: #fff;
  font-size: 12px;
  padding: 4px 6px;
}

.p-feature-slide__subTtl {
  font-size: 14px;
  font-weight: 500;
  margin-top: 8px;
}
@media screen and (max-width: 767px) {
  .p-feature-slide__subTtl {
    font-size: 12px;
    margin-top: 10px;
  }
}

.p-feature-slide__ttl {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  margin-top: 5px;
}

.swiper-button__wrap02 {
  position: absolute;
  display: flex;
  gap: 24px;
  right: calc((100% - 1120px) / 2);
  top: -72px;
  z-index: 3;
}
@media screen and (max-width: 1540px) {
  .swiper-button__wrap02 {
    right: 40px;
  }
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap02 {
    top: -56px;
    right: 15px;
  }
}
.swiper-button__wrap02 .swiper-button-next02,
.swiper-button__wrap02 .swiper-button-prev02 {
  position: static;
  width: 40px;
  height: 40px;
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap02 .swiper-button-next02,
  .swiper-button__wrap02 .swiper-button-prev02 {
    width: 32px;
    height: 32px;
  }
}
.swiper-button__wrap02 .swiper-button-next02:after,
.swiper-button__wrap02 .swiper-button-prev02:after {
  position: absolute;
  width: 40px;
  height: 40px;
  content: "";
  background: url("https://img.dormy-hotels.com/static/img/alltop/common/icon-common-arrow.svg") no-repeat;
  background-position: center;
  background-size: cover;
}
#staging .swiper-button__wrap02 .swiper-button-next02:after,
#staging .swiper-button__wrap02 .swiper-button-prev02:after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/common/icon-common-arrow.svg");
}
#develop .swiper-button__wrap02 .swiper-button-next02:after,
#develop .swiper-button__wrap02 .swiper-button-prev02:after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/common/icon-common-arrow.svg");
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap02 .swiper-button-next02:after,
  .swiper-button__wrap02 .swiper-button-prev02:after {
    width: 32px;
    height: 32px;
  }
}
.swiper-button__wrap02 .swiper-button-prev02::after {
  transform: rotate(180deg);
}

.swiper-pagination02 {
  --swiper-pagination-color: #987941;
  --swiper-pagination-bullet-inactive-color: #987941;
  --swiper-pagination-bullet-inactive-opacity: 0.3;
  margin-top: 24px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .swiper-pagination02 {
    margin-top: 16px;
  }
}

.p-brand {
  padding: 80px 0 108px;
}
@media screen and (max-width: 767px) {
  .p-brand {
    padding: 40px 0 88px;
  }
}

.p-brand__txt {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .p-brand__txt {
    margin-top: 10px;
  }
}

.p-brand-list {
  display: flex;
  gap: 16px;
  padding-left: 16px;
  padding-right: 16px;
  flex-wrap: wrap;
  margin-top: 32px;
}
@media screen and (max-width: 1271px) {
  .p-brand-list {
    margin-top: 24px;
    padding-left: 9px;
    padding-right: 9px;
    gap: 8px;
  }
}

.p-brand-list__item {
  width: calc((100% - 48px) / 4);
  border-radius: 24px;
  background-color: #4C4C4C;
  position: relative;
  display: flex;
  flex-direction: column;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
@media screen and (max-width: 1271px) {
  .p-brand-list__item {
    width: calc((100% - 16px) / 2);
    border-radius: 16px;
  }
}
.p-brand-list__item.is-open .p-brand-list__main {
  justify-content: space-between;
}

.p-brand-list__hero {
  position: relative;
  width: 100%;
  aspect-ratio: 46/30;
  overflow: hidden;
}
.p-brand-list__hero::after {
  position: absolute;
  content: "";
  inset: 0;
  background: linear-gradient(to bottom, transparent 60%, #4C4C4C 100%);
}
@media screen and (max-width: 1271px) {
  .p-brand-list__hero {
    aspect-ratio: 183/130;
  }
}

.p-brand-list__heroImg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-brand-list__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  padding: 0 10% 32px;
  flex: 1 0 auto;
  justify-content: space-between;
}
@media screen and (max-width: 1271px) {
  .p-brand-list__content {
    padding: 0 12px 12px;
    gap: 16px;
  }
}

.p-brand-list__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 60px;
}
.p-brand-list__logo img {
  max-width: 100%;
  max-height: 100%;
  width: 70%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (min-width: 768px) {
  .p-brand-list__logo img {
    width: 80%;
  }
}
@media screen and (max-width: 1271px) {
  .p-brand-list__logo {
    height: 48px;
  }
}

.p-brand-list__main {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
  width: 100%;
  flex: 1;
}
@media screen and (max-width: 1271px) {
  .p-brand-list__main {
    gap: 16px;
  }
}

.p-brand-list__detail {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  width: 100%;
}

.p-brand-list__detailToggle {
  font-family: "Zen Kaku Gothic New", sans-serif;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 4px 0 12px;
  border: none;
  background: none;
  color: #fff;
  font-size: 14px;
  letter-spacing: 0.28px;
  cursor: pointer;
}

.p-brand-list__detailIcon {
  position: relative;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}
.p-brand-list__detailIcon::before, .p-brand-list__detailIcon::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  width: 16px;
  height: 2px;
  background-color: #987941;
  transform: translate(-50%, -50%);
  transition: transform 0.3s, background-color 0.3s, opacity 0.3s;
}
.p-brand-list__detailIcon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.p-brand-list__item.is-open .p-brand-list__detailIcon::before {
  background-color: #987941;
}
.p-brand-list__item.is-open .p-brand-list__detailIcon::after {
  transform: translate(-50%, -50%) rotate(0deg);
  opacity: 0;
}
.p-brand-list__item.is-open .p-brand-list__detailText {
  display: block;
}

.p-brand-list__detailText {
  display: none;
  width: 100%;
  color: #fff;
  font-size: 14px;
  line-height: 1.8;
  padding-bottom: 12px;
}
@media screen and (max-width: 767px) {
  .p-brand-list__detailText {
    font-size: 12px;
  }
}

.p-brand-list__cta {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  max-width: 340px;
  padding: 16px 16px 16px 24px;
  border-radius: 80px;
  border: 1px solid #987941;
  background-color: #987941;
  color: #fff;
  font-size: 14px;
  letter-spacing: 0.28px;
  text-decoration: none;
  transition: 0.5s;
}
.p-brand-list__cta::after {
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  background-color: #987941;
  -webkit-mask: url("https://img.dormy-hotels.com/static/img/alltop/common/icon-arrow-white.svg") no-repeat;
          mask: url("https://img.dormy-hotels.com/static/img/alltop/common/icon-arrow-white.svg") no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  opacity: 0;
  transition: 0.5s;
}
#staging .p-brand-list__cta::after {
  -webkit-mask-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/common/icon-arrow-white.svg");
  mask-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/common/icon-arrow-white.svg");
}
#develop .p-brand-list__cta::after {
  -webkit-mask-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/common/icon-arrow-white.svg");
  mask-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/common/icon-arrow-white.svg");
}
@media screen and (min-width: 1272px) {
  .p-brand-list__cta:hover {
    background-color: #fff;
    color: #987941;
    opacity: 1;
  }
  .p-brand-list__cta:hover .p-brand-list__ctaIcon {
    opacity: 0;
  }
  .p-brand-list__cta:hover::after {
    opacity: 1;
  }
}
@media screen and (max-width: 767px) {
  .p-brand-list__cta {
    padding: 8px 8px 8px 20px;
    font-size: 12px;
  }
  .p-brand-list__cta::after {
    right: 8px;
  }
}
@media screen and (max-width: 767px) {
  .p-brand-list__cta span {
    line-height: 1.2;
  }
}

.p-brand-list__ctaIcon {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  transition: opacity 0.5s;
}

.p-info {
  padding-top: 100px;
  padding-bottom: 100px;
  background-color: #E7E5E2;
  position: relative;
  overflow: hidden;
}
.p-info::before, .p-info::after {
  position: absolute;
  content: "";
  background: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-newopen_r.png") no-repeat;
  width: 100px;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  top: 0;
  z-index: 2;
}
#staging .p-info::before,
#staging .p-info::after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-newopen_r.png");
}
#develop .p-info::before,
#develop .p-info::after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-newopen_r.png");
}
@media screen and (max-width: 767px) {
  .p-info::before, .p-info::after {
    content: none;
  }
}
.p-info::before {
  transform: rotate(180deg);
  left: 0;
}
.p-info::after {
  right: 0;
}
@media screen and (max-width: 767px) {
  .p-info {
    padding-top: 48px;
    padding-bottom: 96px;
  }
}

.p-info__img {
  position: absolute;
  width: 320px;
  height: 320px;
  -o-object-fit: contain;
     object-fit: contain;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 767px) {
  .p-info__img {
    width: 200px;
    height: 200px;
    bottom: -10px;
    right: -10px;
  }
}

.p-info-slide__wrap {
  position: relative;
  margin-top: 24px;
}
@media screen and (max-width: 767px) {
  .p-info-slide__wrap::before, .p-info-slide__wrap::after {
    position: absolute;
    content: "";
    background: url("https://img.dormy-hotels.com/static/img/alltop/top/shadow-newopen_r-sp.png") no-repeat;
    width: 40px;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    top: 0;
    z-index: 2;
  }
  #staging .p-info-slide__wrap::before,
  #staging .p-info-slide__wrap::after {
    background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-newopen_r-sp.png");
  }
  #develop .p-info-slide__wrap::before,
  #develop .p-info-slide__wrap::after {
    background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/top/shadow-newopen_r-sp.png");
  }
}
.p-info-slide__wrap::before {
  transform: rotate(180deg);
  left: 0;
}
.p-info-slide__wrap::after {
  right: 0;
}
@media screen and (max-width: 767px) {
  .p-info-slide__wrap {
    margin-top: 56px;
  }
}

.p-info-slide__list {
  padding-left: 5%;
}
@media screen and (max-width: 767px) {
  .p-info-slide__list {
    padding-left: 0;
  }
}

.p-info-slide__imgWrap {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  aspect-ratio: 380/232;
}
@media screen and (max-width: 767px) {
  .p-info-slide__imgWrap {
    aspect-ratio: 183/130;
  }
}

.p-info-slide__img {
  width: 100%;
  height: 100%;
  border-radius: 8px;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.8s;
}

.p-info-slide {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px 10px 24px;
  border-radius: 16px;
  text-decoration: none;
  background-color: #fff;
  transition: 0.8s;
}
@media screen and (min-width: 1272px) {
  .p-info-slide:hover {
    opacity: 0.7;
  }
  .p-info-slide:hover .p-info-slide__img {
    transform: scale(1.2);
  }
}

.swiper-button__wrap03 {
  position: absolute;
  display: flex;
  gap: 24px;
  right: calc((100% - 1520px) / 2);
  top: -64px;
  z-index: 3;
}
@media screen and (max-width: 1540px) {
  .swiper-button__wrap03 {
    right: 40px;
  }
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap03 {
    top: -48px;
    right: 15px;
  }
}
.swiper-button__wrap03 .swiper-button-next03,
.swiper-button__wrap03 .swiper-button-prev03 {
  position: static;
  width: 40px;
  height: 40px;
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap03 .swiper-button-next03,
  .swiper-button__wrap03 .swiper-button-prev03 {
    width: 32px;
    height: 32px;
  }
}
.swiper-button__wrap03 .swiper-button-next03:after,
.swiper-button__wrap03 .swiper-button-prev03:after {
  position: absolute;
  width: 40px;
  height: 40px;
  content: "";
  background: url("https://img.dormy-hotels.com/static/img/alltop/common/icon-common-arrow.svg") no-repeat;
  background-position: center;
  background-size: cover;
}
#staging .swiper-button__wrap03 .swiper-button-next03:after,
#staging .swiper-button__wrap03 .swiper-button-prev03:after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/common/icon-common-arrow.svg");
}
#develop .swiper-button__wrap03 .swiper-button-next03:after,
#develop .swiper-button__wrap03 .swiper-button-prev03:after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/common/icon-common-arrow.svg");
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap03 .swiper-button-next03:after,
  .swiper-button__wrap03 .swiper-button-prev03:after {
    width: 32px;
    height: 32px;
  }
}
.swiper-button__wrap03 .swiper-button-prev03::after {
  transform: rotate(180deg);
}

.swiper-pagination03 {
  --swiper-pagination-color: #987941;
  --swiper-pagination-bullet-inactive-color: #987941;
  --swiper-pagination-bullet-inactive-opacity: 0.3;
  margin-top: 24px;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .swiper-pagination03 {
    margin-top: 16px;
  }
}

.p-info-slide__txtCntr {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.p-info-slide__ttl {
  display: flex;
  flex-direction: column;
  height: 90px;
  color: #4C4C4C;
  overflow: hidden;
}

.p-info-slide__ttlArea {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
}

.p-info-slide__ttlName {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}

.p-info-slide__date {
  display: inline-flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  padding: 6px 12px 6px 48px;
  border-radius: 64px;
  background-color: #B80000;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.28px;
  position: relative;
}
.p-info-slide__date::before {
  content: "NEW";
  position: absolute;
  top: 50%;
  left: 6px;
  transform: translateY(-50%);
  padding: 2px 6px;
  border-radius: 64px;
  background-color: #fff;
  color: #B80000;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.24px;
  line-height: 1;
}

.p-campaign {
  position: relative;
  overflow: hidden;
  padding: 100px 50px 20px;
  background: linear-gradient(180deg, #E7E5E2 0%, #fff 100%);
}
@media screen and (max-width: 767px) {
  .p-campaign {
    padding: 48px 20px 96px;
    background: linear-gradient(180deg, #E7E5E2 0%, #E7E5E2 66%, #fff 100%);
  }
}

.p-campaign__img {
  position: absolute;
  left: 0;
  width: 330px;
  height: 330px;
  top: 0%;
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .p-campaign__img {
    width: 200px;
    height: 200px;
    left: -50px;
  }
}

.p-campaign__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-campaign__head {
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
  }
}

.p-campaign__titleWrap {
  display: flex;
  align-items: center;
  gap: 8px;
}
@media screen and (max-width: 767px) {
  .p-campaign__titleWrap {
    width: 100%;
  }
}

.p-campaign__icon {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .p-campaign__icon {
    width: 40px;
    height: 40px;
  }
}

.p-campaign__ttl {
  color: #4C4C4C;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0.64px;
}
@media screen and (max-width: 767px) {
  .p-campaign__ttl {
    font-size: 24px;
    letter-spacing: 0.48px;
  }
}

.p-campaign-slide__ul {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 4px;
}

.p-campaign-slide__li {
  background-color: #4C4C4C;
  border-radius: 2px;
  color: #fff;
  font-size: 12px;
  padding: 4px 6px;
}

.swiper-button__wrap04 {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .swiper-button__wrap04 {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap04 {
    gap: 16px;
  }
}
.swiper-button__wrap04 .swiper-button-next04,
.swiper-button__wrap04 .swiper-button-prev04 {
  position: relative;
  width: 40px;
  height: 40px;
}
.swiper-button__wrap04 .swiper-button-next04::after,
.swiper-button__wrap04 .swiper-button-prev04::after {
  position: absolute;
  inset: 0;
  content: "";
  background: url("https://img.dormy-hotels.com/static/img/alltop/common/icon-common-arrow.svg") no-repeat;
  background-position: center;
  background-size: cover;
}
#staging .swiper-button__wrap04 .swiper-button-next04::after,
#staging .swiper-button__wrap04 .swiper-button-prev04::after {
  background-image: url("https://staging-img.kyoritsu-hotels.net/static/img/alltop/common/icon-common-arrow.svg");
}
#develop .swiper-button__wrap04 .swiper-button-next04::after,
#develop .swiper-button__wrap04 .swiper-button-prev04::after {
  background-image: url("https://develop-img.kyoritsu-hotels.net/static/img/alltop/common/icon-common-arrow.svg");
}
@media screen and (max-width: 767px) {
  .swiper-button__wrap04 .swiper-button-next04,
  .swiper-button__wrap04 .swiper-button-prev04 {
    width: 32px;
    height: 32px;
  }
}
.swiper-button__wrap04 .swiper-button-prev04::after {
  transform: rotate(180deg);
}

.p-campaign-slide__width {
  overflow: hidden;
  padding: 0;
}

.p-campaign-slide__wrap {
  margin-top: 24px;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-campaign-slide__list {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
  }
  .p-campaign-slide__list .p-campaign-slide {
    width: calc(25% - 12px);
  }
}
@media screen and (max-width: 767px) {
  .p-campaign-slide__list {
    padding-left: 0;
  }
}

.swiper-pagination04 {
  --swiper-pagination-color: #987941;
  --swiper-pagination-bullet-inactive-color: #987941;
  --swiper-pagination-bullet-inactive-opacity: 0.3;
  margin-top: 24px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .swiper-pagination04 {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .swiper-pagination04 {
    margin-top: 16px;
  }
}

.p-campaign-slide {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 10px 10px 12px;
  border-radius: 16px;
  background-color: #fff;
  text-decoration: none;
  transition: 0.5s;
}
@media screen and (min-width: 1272px) {
  .p-campaign-slide:hover {
    opacity: 0.7;
  }
  .p-campaign-slide:hover .p-campaign-slide__img {
    transform: scale(1.2);
  }
}
@media screen and (max-width: 767px) {
  .p-campaign-slide {
    gap: 4px;
    padding: 6px 6px 8px;
    border-radius: 6px;
  }
}

.p-campaign-slide__imgWrap {
  position: relative;
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  aspect-ratio: 380/232;
}
@media screen and (max-width: 767px) {
  .p-campaign-slide__imgWrap {
    aspect-ratio: 183/130;
    border-radius: 2px;
  }
}

.p-campaign-slide__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.8s;
}

.p-campaign-slide__ttl {
  display: flex;
  align-items: center;
  padding: 0 8px;
  color: #4C4C4C;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media screen and (max-width: 767px) {
  .p-campaign-slide__ttl {
    padding: 0;
  }
}

.p-campaign__more {
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 180px;
  margin: 32px auto 0;
  padding: 16px 16px 16px 24px;
  border: 1px solid #4C4C4C;
  border-radius: 80px;
  background-color: #fff;
  color: #4C4C4C;
  font-size: 14px;
  letter-spacing: 0.28px;
  text-decoration: none;
  transition: 0.5s;
}
@media screen and (min-width: 1272px) {
  .p-campaign__more:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .p-campaign__more {
    display: flex;
    padding: 8px 16px 8px 24px;
  }
}

.p-campaign__moreIcon {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
}

.p-value {
  padding-top: 112px;
  padding-bottom: 112px;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .p-value {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}

.p-value__img {
  position: absolute;
  -o-object-fit: contain;
     object-fit: contain;
  width: 320px;
  height: 320px;
  top: -20px;
  left: 0;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .p-value__img {
    width: 200px;
    height: 200px;
    top: -30px;
    left: -10px;
  }
}

.p-value__cont {
  background-color: #F9F7F3;
  position: relative;
  padding: 50px;
  overflow: hidden;
  border-radius: 48px;
}
@media screen and (max-width: 767px) {
  .p-value__cont {
    padding: 24px 14px;
    border-radius: 24px;
  }
}

.p-value-list {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  margin-top: 40px;
  position: relative;
}
@media screen and (max-width: 1271px) {
  .p-value-list {
    flex-direction: column;
    margin-top: 24px;
  }
}

.p-value-list__item {
  width: calc((100% - 32px) / 2);
  display: flex;
  align-items: center;
  box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.2);
  background-color: #fff;
  border-radius: 80px;
  padding: 12px;
  max-width: 616px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1271px) {
  .p-value-list__item {
    width: 100%;
    padding: 7px;
    gap: 1px;
  }
}

.p-value-list__icon {
  aspect-ratio: 1/1;
  width: 100%;
  max-width: 96px;
  background-color: #987941;
  color: #fff;
  font-weight: 600;
  font-size: 20px;
  border-radius: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-value-list__icon {
    max-width: 60px;
    font-size: 14px;
  }
}
.p-value-list__icon .moresmall {
  font-size: 14px;
  line-height: 1.1;
}
@media screen and (max-width: 767px) {
  .p-value-list__icon .moresmall {
    font-size: 11px;
  }
}
.p-value-list__icon .small {
  font-size: 21px;
  line-height: 1.1;
}
@media screen and (max-width: 767px) {
  .p-value-list__icon .small {
    font-size: 13px;
  }
}

.p-value-list__txtWrap {
  width: calc(100% - 96px);
  padding-right: 8px;
}
@media screen and (max-width: 767px) {
  .p-value-list__txtWrap {
    width: calc(100% - 60px);
    padding-right: 5px;
  }
}

.p-value-list__txt {
  color: #987941;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-value-list__txt {
    font-size: 20px;
    line-height: 1.1;
    margin-left: -0.5em;
  }
}
.p-value-list__txt .small {
  font-size: 24px;
  color: #4c4c4c;
}
@media screen and (max-width: 767px) {
  .p-value-list__txt .small {
    font-size: 16px;
  }
}
.p-value-list__txt .gray {
  color: #4c4c4c;
}

.p-value-list__caption {
  font-size: 14px;
  display: inline-block;
  font-weight: 700;
  text-align: center;
  margin: 0 auto;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-value-list__caption {
    font-size: 12px;
  }
}

.p-value__btn {
  margin: 30px auto 0;
}
@media screen and (max-width: 767px) {
  .p-value__btn {
    margin-top: 24px;
  }
}

.p-links {
  background-color: #F9F7F3;
  padding-top: 72px;
  padding-bottom: 72px;
}
@media screen and (max-width: 767px) {
  .p-links {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}

.p-links__flex {
  display: flex;
  gap: 16px;
}
@media screen and (max-width: 767px) {
  .p-links__flex {
    flex-direction: column;
  }
}

.p-links__snsImg {
  position: absolute;
  -o-object-fit: contain;
     object-fit: contain;
  width: 168px;
  height: 168px;
  top: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .p-links__snsImg {
    width: 140px;
    height: 140px;
    z-index: 1;
  }
}

.p-links__styleImg {
  position: absolute;
  width: 320px;
  height: 320px;
  top: -3px;
  right: -2px;
}
@media screen and (max-width: 767px) {
  .p-links__styleImg {
    width: 200px;
    height: 200px;
    -o-object-fit: contain;
       object-fit: contain;
    top: -20px;
    right: -30px;
    z-index: 1;
  }
}

.p-links__item {
  background-color: #fff;
  border-radius: 32px;
  width: calc((100% - 16px) / 2);
  padding: 24px 32px;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-links__item {
    padding: 24px 16px;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-links__txt {
    margin-top: 10px;
  }
}

.sns-group-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  position: relative;
  z-index: 1;
  margin-top: 24px;
}
.sns-group-list__row {
  display: flex;
  align-items: stretch;
  gap: 8px;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sns-group-list__row {
    flex-direction: column;
  }
}

.sns-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: 100%;
  padding: 16px 0;
  background-color: #f4f4f4;
  border-radius: 16px;
}
.sns-group__logo {
  display: block;
  height: 36px;
  width: auto;
}
@media screen and (max-width: 767px) {
  .sns-group__logo {
    height: 24px;
  }
}
.sns-group__list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  width: 100%;
  list-style: none;
}
@media screen and (max-width: 767px) {
  .sns-group__list {
    gap: 20px;
  }
}
.sns-group__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
}
.sns-group__link img {
  transition: 0.5s;
}
@media screen and (min-width: 1272px) {
  .sns-group__link:hover {
    opacity: 1;
  }
  .sns-group__link:hover .sns-group__icon {
    transform: scale(0.8);
  }
}
.sns-group__link:focus-visible {
  outline: 2px solid #987941;
  outline-offset: 2px;
}
.sns-group__link:active {
  opacity: 0.8;
}
.sns-group__icon {
  max-width: 42px;
  transition: 0.5s;
}
.sns-group__label {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  color: #414141;
  white-space: nowrap;
}
.sns-group--sm {
  flex: 1 1 0;
  min-width: 0;
  align-self: stretch;
  gap: 10px;
  padding: 10px 16px 16px;
}

.p-links__img-banner {
  width: 100%;
  z-index: 1;
  position: relative;
  transition: 0.5s;
}

.p-links__img-bannerWrap {
  display: flex;
  margin-top: 24px;
  border-radius: 24px;
  overflow: hidden;
}
@media screen and (min-width: 1272px) {
  .p-links__img-bannerWrap:hover .p-links__img-banner {
    transform: scale(1.2);
  }
}

.top-link {
  display: flex;
  transition: 0.5s;
}
@media screen and (min-width: 1272px) {
  .top-link:hover {
    opacity: 0.7;
  }
}

.p-cta-list {
  display: none;
  align-items: stretch;
  gap: 8px;
  margin-top: 24px;
}
@media screen and (max-width: 767px) {
  .p-cta-list {
    display: flex;
  }
}

.p-cta-list__item {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 16px;
  padding: 32px 40px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  transition: 0.5s;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .p-cta-list__item {
    flex-direction: column;
    padding: 8px 12px;
    gap: 6px;
  }
}
@media screen and (min-width: 1272px) {
  .p-cta-list__item:hover {
    opacity: 0.7;
  }
}
.p-cta-list__item--reserve {
  flex: 1 1 0;
  justify-content: space-between;
  background-color: #987941;
  padding: 8px;
}
.p-cta-list__item--coupon {
  flex-shrink: 0;
  background-color: #fff;
  border: 2px solid #987941;
  padding: 8px;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .p-cta-list__item--coupon {
    justify-content: center;
  }
}
@media screen and (min-width: 1272px) {
  .p-cta-list__item--coupon:hover {
    opacity: 1;
    background-color: #987941;
    border-color: #fff;
  }
  .p-cta-list__item--coupon:hover .p-cta-list__ttl--brand {
    color: #fff;
  }
  .p-cta-list__item--coupon:hover .p-cta-list__icon,
  .p-cta-list__item--coupon:hover .p-cta-list__arrow {
    filter: brightness(0) invert(1);
  }
}

.p-cta-list__body {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 6px;
}
@media screen and (max-width: 767px) {
  .p-cta-list__body {
    flex-direction: column;
  }
}

.p-cta-list__icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-cta-list__text {
  display: flex;
  flex-direction: column;
  gap: 6px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-cta-list__text {
    text-align: center;
  }
}

.p-cta-list__ttl {
  font-weight: 700;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.36px;
  color: #fff;
  white-space: nowrap;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-cta-list__ttl {
    text-align: center;
    font-size: 16px;
  }
}
.p-cta-list__ttl--brand {
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: 0.32px;
  color: #987941;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-cta-list__ttl--brand {
    font-size: 14px;
  }
}

.p-cta-list__sub {
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.24px;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .p-cta-list__sub {
    font-size: 10px;
    line-height: 1.2;
  }
}

.p-cta-list__arrow {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
}

.p-cta-fixed {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  z-index: 9;
  gap: 4px;
  padding: 6px;
  background-color: #F6F6F6;
  transition: transform 0.3s, top 0.3s;
  transition: 0.5s;
}
@media screen and (max-width: 767px) {
  .p-cta-fixed {
    display: flex;
    top: calc(var(--header-height, 90px));
    opacity: 0;
  }
  .p-cta-fixed.is-show {
    transform: translateY(0);
    opacity: 1;
  }
}

.p-cta-fixed__item {
  display: flex;
  flex: 1 1 0;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  height: 48px;
  padding: 8px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition: 0.5s;
}
@media screen and (min-width: 1272px) {
  .p-cta-fixed__item:hover {
    opacity: 0.7;
  }
}
.p-cta-fixed__item--reserve {
  background-color: #987941;
}
.p-cta-fixed__item--coupon {
  justify-content: center;
  background-color: #fff;
  border: 2px solid #987941;
}

.p-cta-fixed__body {
  display: flex;
  align-items: center;
  gap: 4px;
}

.p-cta-fixed__icon {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-cta-fixed__ttl {
  font-weight: 700;
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: 0.26px;
  color: #fff;
  white-space: nowrap;
}
.p-cta-fixed__item--coupon .p-cta-fixed__ttl {
  color: #987941;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.p-cta-fixed__arrow {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
}

.p-sec-about {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
  padding: 80px 0;
}
@media screen and (max-width: 767px) {
  .p-sec-about {
    gap: 40px;
    padding: 40px 0;
  }
}

.p-sec-about__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-sec-about__body {
    gap: 8px;
  }
}

.p-sec-about__ttl {
  font-weight: 700;
  font-size: 28px;
  line-height: 1.3;
  letter-spacing: 0.1em;
  color: #987941;
}
@media screen and (max-width: 767px) {
  .p-sec-about__ttl {
    font-size: 20px;
  }
}

.p-sec-about__text {
  font-size: 16px;
  line-height: 2;
  color: #4c4c4c;
}
.p-sec-about__text p {
  font-weight: 500;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .p-sec-about__text {
    font-size: 12px;
  }
}

.p-sec-about__imgWrap {
  display: block;
  width: 100%;
}

.p-sec-about__img {
  display: block;
  width: 100%;
  height: auto;
}