@charset "UTF-8";
/* CSS Document */
/*----------------------------------------
変数
----------------------------------------*/
/*----------------------------------------
サイト共通 スタイルシート
----------------------------------------*/
.swiper-button-prev,
.swiper-button-next {
  background-color: var(--colorBackGround);
  -webkit-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  overflow: hidden;
}
@media screen and (max-width: 899px) {
  .swiper-button-prev,
  .swiper-button-next {
    width: 32px;
    height: 32px;
  }
}
@media screen and (min-width: 900px) {
  .swiper-button-prev,
  .swiper-button-next {
    width: 28px;
    height: 28px;
  }
}
.swiper-button-prev::after,
.swiper-button-next::after {
  content: "";
  width: 25%;
  height: 50%;
  background-size: contain;
}

.swiper-button-next {
  right: 0;
}
@media screen and (max-width: 899px) {
  .swiper-button-next {
    -webkit-transform: translate(-20%, 0);
            transform: translate(-20%, 0);
  }
}
@media screen and (min-width: 900px) {
  .swiper-button-next {
    -webkit-transform: translate(50%, 0);
            transform: translate(50%, 0);
  }
}
.swiper-button-next::after {
  background-image: url(../../assets/images/common/arrow_right.svg);
}

.swiper-button-prev {
  left: 0;
}
@media screen and (max-width: 899px) {
  .swiper-button-prev {
    -webkit-transform: translate(20%, 0);
            transform: translate(20%, 0);
  }
}
@media screen and (min-width: 900px) {
  .swiper-button-prev {
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
}
.swiper-button-prev::after {
  background-image: url(../../assets/images/common/arrow_left.svg);
}

/* stayページ
---------------------------------------------- */
#pageLead {
  background-color: var(--colorMain);
}

.roomContents {
  background-color: var(--colorMain);
}
@media screen and (max-width: 899px) {
  .roomContents {
    padding-bottom: 72px;
  }
}
@media screen and (min-width: 900px) {
  .roomContents {
    padding-bottom: 64px;
  }
}
.roomContents .roomContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 899px) {
  .roomContents .roomContainer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 32px;
  }
}
@media screen and (min-width: 900px) {
  .roomContents .roomContainer {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    gap: 64px 40px;
  }
}
@media screen and (min-width: 900px) {
  .roomContents .roomBox {
    width: calc((100% - 40px) / 2);
  }
}
.roomContents .roomBox .image {
  aspect-ratio: 792/592;
}
@media screen and (max-width: 899px) {
  .roomContents .roomBox .image {
    margin-inline: calc(50% - 50vw);
  }
}
.roomContents .roomBox .image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.roomContents .roomBox .roomTitle {
  font-size: var(--size25px);
  font-family: var(--fontEn);
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.2;
}
@media screen and (max-width: 899px) {
  .roomContents .roomBox .roomTitle {
    text-align: center;
    margin-top: 24px;
  }
}
@media screen and (min-width: 900px) {
  .roomContents .roomBox .roomTitle {
    margin-top: 16px;
  }
}
.roomContents .roomBox .roomCaption {
  margin-top: 8px;
  letter-spacing: -0.03em;
  line-height: 1.5;
}
@media screen and (max-width: 899px) {
  .roomContents .roomBox .roomCaption {
    font-size: var(--size14px);
    text-align: center;
  }
}
.roomContents .roomBox .btnBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
@media screen and (max-width: 899px) {
  .roomContents .roomBox .btnBox {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 24px;
  }
}
@media screen and (min-width: 900px) {
  .roomContents .roomBox .btnBox {
    margin-top: 20px;
  }
}

/* Room詳細ページ共通
---------------------------------------------- */
#PageMainImageWrap .pageMainImage .imagePc,
#PageMainImageWrap .pageMainImage .imageSp {
  width: 100%;
  height: 100%;
}
#PageMainImageWrap .pageMainImage .mainImageList {
  position: relative;
  width: 100%;
  height: 100%;
}
#PageMainImageWrap .pageMainImage .mainImageList .mainImageListItem {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  opacity: 0;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
}
#PageMainImageWrap .pageMainImage .mainImageList .mainImageListItem.show {
  opacity: 1;
}

.roomDetail {
  background-color: var(--colorMain);
}
@media screen and (max-width: 899px) {
  .roomDetail {
    padding-top: 56px;
  }
}
@media screen and (min-width: 900px) {
  .roomDetail {
    padding-top: 152px;
    padding-bottom: 128px;
  }
}
.roomDetail .roomInfoContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 899px) {
  .roomDetail .roomInfoContainer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (min-width: 900px) {
  .roomDetail .roomInfoContainer {
    gap: 11%;
  }
}
@media screen and (min-width: 900px) {
  .roomDetail .roomInfoContainer .areaImage {
    width: 50%;
  }
}
.roomDetail .roomInfoContainer .areaImage .roomDetailSwiperWrap {
  position: relative;
}
@media screen and (min-width: 900px) {
  .roomDetail .roomInfoContainer .areaText {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (min-width: 900px) {
  .roomDetail .roomInfoContainer .areaText .pageTitle {
    text-align: left;
  }
}
.roomDetail .roomInfoContainer .areaText .roomCaption {
  line-height: 1.5;
  letter-spacing: -0.03em;
}
@media screen and (max-width: 899px) {
  .roomDetail .roomInfoContainer .areaText .roomCaption {
    font-size: var(--size14px);
    text-align: center;
    margin-top: 24px;
  }
}
@media screen and (min-width: 900px) {
  .roomDetail .roomInfoContainer .areaText .roomCaption {
    margin-top: 40px;
  }
}
.roomDetail .roomInfoContainer .areaText .roomDetailList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 899px) {
  .roomDetail .roomInfoContainer .areaText .roomDetailList {
    max-width: 350px;
    margin: 48px auto 0;
  }
}
@media screen and (min-width: 900px) {
  .roomDetail .roomInfoContainer .areaText .roomDetailList {
    margin-top: 60px;
  }
}
.roomDetail .roomInfoContainer .areaText .roomDetailList dt,
.roomDetail .roomInfoContainer .areaText .roomDetailList dd {
  line-height: 2;
  letter-spacing: -0.03em;
}
@media screen and (max-width: 899px) {
  .roomDetail .roomInfoContainer .areaText .roomDetailList dt,
  .roomDetail .roomInfoContainer .areaText .roomDetailList dd {
    font-size: var(--size14px);
  }
}
.roomDetail .roomInfoContainer .areaText .roomDetailList dt {
  width: 4em;
}
.roomDetail .roomInfoContainer .areaText .roomDetailList dd {
  width: calc(100% - 4em);
}
.roomDetail .roomInfoContainer .areaText .btnLink {
  min-width: 150px;
}
@media screen and (max-width: 899px) {
  .roomDetail .roomInfoContainer .areaText .btnLink {
    margin-top: 56px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 900px) {
  .roomDetail .roomInfoContainer .areaText .btnLink {
    margin-top: 40px;
    margin-right: auto;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 899px) {
  .roomDetail .roomInfoContainer .areaText .floorPlanImage {
    max-width: 400px;
    margin: 56px auto 0;
  }
}
@media screen and (min-width: 900px) {
  .roomDetail .roomInfoContainer .areaText .floorPlanImage {
    margin-top: auto;
  }
}
@media screen and (min-width: 900px) {
  .roomDetail .roomInfoContainer .areaText .floorPlanImage img {
    width: auto;
    height: auto;
    max-width: 100%;
  }
}

@media screen and (max-width: 899px) {
  #otherRoom {
    padding-top: 112px;
    padding-bottom: 56px;
    background-color: var(--colorMain);
  }
}
@media screen and (min-width: 900px) {
  #otherRoom {
    padding-top: 56px;
    padding-bottom: 128px;
    background-color: var(--colorBackGround);
  }
}
#otherRoom .swiperArea {
  position: relative;
}
@media screen and (max-width: 589px) {
  #otherRoom .swiperArea {
    margin-top: 56px;
    margin-inline: calc(50% - 50vw);
  }
}
@media screen and (min-width: 900px) {
  #otherRoom .swiperArea {
    margin-right: calc(50% - 50vw);
  }
}
@media screen and (min-width: 900px) {
  #otherRoom .otherRoomSwiper {
    margin-top: 56px;
    margin-left: unset;
  }
}
@media screen and (max-width: 899px) {
  #otherRoom .otherRoomSwiper .swiper-slide {
    text-align: center;
  }
}
#otherRoom .otherRoomSwiper .swiper-slide .image {
  margin-bottom: 8px;
}
#otherRoom .otherRoomSwiper .swiper-slide .sectionTitle.onSpTab {
  margin-top: 24px;
  font-family: var(--fontEn);
  font-weight: 600;
  font-size: 1.875rem;
  line-height: 1.2;
}
#otherRoom .otherRoomSwiper .swiper-slide .roomName {
  font-size: var(--size24px);
  font-weight: 500;
  font-family: var(--fontEn);
  line-height: 1.25;
}
@media screen and (max-width: 899px) {
  #otherRoom .otherRoomSwiper .swiper-slide .roomName {
    margin-top: 4px;
  }
}
#otherRoom .otherRoomSwiper .swiper-slide .roomExplanation {
  line-height: 1.25;
  margin-top: 4px;
}
@media screen and (min-width: 900px) {
  #otherRoom .otherRoomSwiper .swiper-slide .roomExplanation {
    font-weight: 500;
  }
}
#otherRoom .otherRoomSwiper .swiper-slide .btnBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  margin-top: 20px;
}
@media screen and (max-width: 899px) {
  #otherRoom .otherRoomSwiper .swiper-slide .btnBox {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (min-width: 900px) {
  #otherRoom .otherRoomSwiper .swiper-slide .btnBox {
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
  }
}
#otherRoom .otherRoomSwiper .pageButtonBox {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
@media screen and (max-width: 899px) {
  #otherRoom .otherRoomSwiper .pageButtonBox {
    height: calc(100% - (8px + 2.25rem + 24px + 1.25rem + 4px + 0.75rem + 20px));
  }
}
@media screen and (min-width: 900px) {
  #otherRoom .otherRoomSwiper .pageButtonBox {
    height: calc(100% - (8px + 1.875rem + 1.25rem + 20px + 0.75rem + 20px));
  }
}
#otherRoom .otherRoomSwiper .pageButtonBox .pageButtonBoxInner {
  position: relative;
  width: 100%;
  height: 100%;
}
#otherRoom .swiperArea {
  position: relative;
}
@media screen and (max-width: 899px) {
  #otherRoom .swiperArea {
    margin-inline: calc(50% - 50vw);
  }
}
@media screen and (min-width: 900px) {
  #otherRoom .swiperArea {
    margin-right: calc(50% - 50vw);
  }
}
#otherRoom .swiper {
  height: 100%;
  position: unset;
}
@media screen and (min-width: 900px) {
  #otherRoom .swiper {
    width: calc(100% - 18px);
  }
}
@media screen and (min-width: 900px) {
  #otherRoom .swiper .swiper-slide {
    width: 345px;
  }
}
@media screen and (min-width: 1367px) {
  #otherRoom .swiper .swiper-slide {
    width: 464px;
  }
}
#otherRoom .swiper .swiper-slide img {
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 899px) {
  #otherRoom .swiper .swiper-slide img {
    aspect-ratio: 390/320;
  }
}
@media screen and (min-width: 900px) {
  #otherRoom .swiper .swiper-slide img {
    aspect-ratio: 464/352;
  }
}
#otherRoom .swiper .swiper-button-prev,
#otherRoom .swiper .swiper-button-next {
  background-color: var(--colorBackGround);
  -webkit-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  overflow: hidden;
}
@media screen and (max-width: 899px) {
  #otherRoom .swiper .swiper-button-prev,
  #otherRoom .swiper .swiper-button-next {
    width: 32px;
    height: 32px;
  }
}
@media screen and (min-width: 900px) {
  #otherRoom .swiper .swiper-button-prev,
  #otherRoom .swiper .swiper-button-next {
    width: 40px;
    height: 40px;
  }
}
#otherRoom .swiper .swiper-button-prev::after,
#otherRoom .swiper .swiper-button-next::after {
  content: "";
  width: 25%;
  height: 50%;
  background-size: contain;
}
#otherRoom .swiper .swiper-button-next {
  right: 0;
}
@media screen and (max-width: 899px) {
  #otherRoom .swiper .swiper-button-next {
    -webkit-transform: translate(-20%, 0);
            transform: translate(-20%, 0);
  }
}
@media screen and (min-width: 900px) {
  #otherRoom .swiper .swiper-button-next {
    -webkit-transform: translate(-100%, 0);
            transform: translate(-100%, 0);
  }
}
#otherRoom .swiper .swiper-button-next::after {
  background-image: url(../../assets/images/common/arrow_right.svg);
}
#otherRoom .swiper .swiper-button-prev {
  left: 0;
}
@media screen and (max-width: 899px) {
  #otherRoom .swiper .swiper-button-prev {
    -webkit-transform: translate(20%, 0);
            transform: translate(20%, 0);
  }
}
@media screen and (min-width: 900px) {
  #otherRoom .swiper .swiper-button-prev {
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
}
#otherRoom .swiper .swiper-button-prev::after {
  background-image: url(../../assets/images/common/arrow_left.svg);
}/*# sourceMappingURL=stay.css.map */