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

file name  : rooms.css
author     : Abilive
style info : 客室
=================================================================== */
/* ===================================================================
CSS information

file name  : _settings.scss
author     : Abilive
style info : 汎用設定
=================================================================== */
.p-room__int {
  display: flex;
  justify-content: space-between;
  position: relative;
}
.p-room__int::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  background: url(../../rooms/images/bg_int.png) no-repeat;
  background-size: contain;
}
@media only screen and (min-width: 1025px) {
  .p-room__int::before {
    width: 84.7vw;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-room__int::before {
    width: 75vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int::before {
    width: 80vw;
  }
}
@media only screen and (min-width: 1025px) {
  .p-room__int::before {
    height: 80.4vw;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-room__int::before {
    height: 70vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int::before {
    height: 75vw;
  }
}
@media only screen and (min-width: 1025px) {
  .p-room__int::before {
    top: -14.6vw;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-room__int::before {
    top: -10vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int::before {
    top: -5vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int {
    flex-direction: column-reverse;
  }
  .p-room__int .c-room_int_sptit .c-title {
    justify-content: center;
  }
}
.p-room__int__main {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
}
@media only screen and (min-width: 768px) {
  .p-room__int__main {
    width: calc(513 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__main {
    width: 100%;
  }
}
@media only screen and (min-width: 1025px) {
  .p-room__int__main {
    margin-top: 8.4vw;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-room__int__main {
    margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__main {
    margin-top: 2em;
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__main {
    justify-content: flex-end;
  }
}
@media only screen and (min-width: 768px) {
  html:not([lang=ja]) .p-room__int__main {
    width: calc(582 / 1440 * 100%);
  }
}
.p-room__int__main .p-room__int__main__subimg {
  position: relative;
}
@media only screen and (min-width: 768px) {
  .p-room__int__main .p-room__int__main__subimg {
    width: calc(172 / 582 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__main .p-room__int__main__subimg {
    width: 25%;
  }
}
@media only screen and (min-width: 768px) {
  html:not([lang=ja]) .p-room__int__main .p-room__int__main__subimg {
    width: calc(172 / 582 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  html:not([lang=ja]) .p-room__int__main .p-room__int__main__subimg {
    width: 25%;
  }
}
@media only screen and (min-width: 1025px) {
  .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img {
    margin-top: 9vw;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img {
    margin-top: 18vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img {
    margin-top: 0;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1199px) {
  .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img {
    margin-top: 15vw;
  }
}
@media only screen and (max-width: 767px) {
  html:lang(en) .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img {
    margin-top: 1em;
  }
}
@media only screen and (max-width: 767px) {
  html:lang(fr) .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img {
    margin-top: 2em;
  }
}
.p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img:nth-of-type(2) {
  position: absolute;
  z-index: -1;
}
@media only screen and (min-width: 768px) {
  .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img:nth-of-type(2) {
    width: calc(241 / 172 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img:nth-of-type(2) {
    width: calc(241 / 172 * 100%);
  }
}
@media only screen and (min-width: 1025px) {
  .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img:nth-of-type(2) {
    bottom: -7vw;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img:nth-of-type(2) {
    bottom: -8vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img:nth-of-type(2) {
    bottom: 0;
  }
}
@media only screen and (min-width: 768px) {
  .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img:nth-of-type(2) {
    right: -15vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img:nth-of-type(2) {
    right: -13em;
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__main .p-room__int__main__subimg .p-room__int__main__subimg__img:nth-of-type(2) {
    top: 90%;
    bottom: auto;
  }
}
.p-room__int__main__txt {
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  .p-room__int__main__txt {
    width: calc(260 / 513 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__main__txt {
    width: 65%;
  }
}
@media only screen and (min-width: 768px) {
  .p-room__int__main__txt {
    margin-left: calc(30 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__main__txt {
    margin-left: 5%;
  }
}
@media only screen and (min-width: 768px) {
  html:not([lang=ja]) .p-room__int__main__txt {
    margin-right: auto;
    margin-left: auto;
    max-width: calc(260 / 13 * 1rem);
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1059px) {
  html:not([lang=ja]) .p-room__int__main__txt {
    margin-left: 10%;
  }
}
.p-room__int__main__txt .c-title {
  justify-content: center;
}
@media only screen and (min-width: 1025px) {
  .p-room__int__main__txt .txt {
    margin-top: calc(35 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-room__int__main__txt .txt {
    margin-top: calc(25 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__main__txt .txt {
    margin-top: 1.5em;
  }
}
@media only screen and (min-width: 768px) {
  .p-room__int__img {
    width: calc(808 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__img {
    width: 90%;
  }
}
@media only screen and (min-width: 768px) {
  .p-room__int__img {
    margin-left: calc(50 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__img {
    margin-left: auto;
  }
}
@media only screen and (min-width: 768px) {
  .p-room__int__img {
    margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-room__int__img {
    margin-top: 1.5em;
  }
}

@media only screen and (min-width: 1025px) {
  .tmp_anch {
    margin-top: calc(160 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_anch {
    margin-top: calc(140 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .tmp_anch {
    margin-top: 15em;
  }
}

.p-rooms-type__hot {
  position: relative;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot {
    margin-top: calc(100 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot {
    margin-top: calc(80 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot {
    margin-top: 4em;
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot {
    padding-top: calc(140 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot {
    padding-top: calc(120 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot {
    padding-top: 4.5em;
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot {
    padding-bottom: calc(140 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot {
    padding-bottom: calc(120 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot {
    padding-bottom: 4.5em;
  }
}
.p-rooms-type__hot::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background: url(../../rooms/images/bg_hot_room.jpg) no-repeat;
  background-size: cover;
}
.p-rooms-type__hot__int {
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__int {
    width: calc(1360 / 1440 * 100%);
    max-width: calc(1360px);
  }
}
@media only screen and (min-width: 1025px) and (min-width: 1441px) {
  .p-rooms-type__hot__int {
    max-width: calc(1360px * ((15 + 0) / 13));
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot__int {
    width: calc(1360 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__int {
    width: calc(388 / 428 * 100%);
  }
}
.p-rooms-type__hot__int .c-title {
  text-align: center;
  color: #fff;
}
.p-rooms-type__hot__int .txt {
  text-align: center;
  color: #fff;
  word-break: keep-all;
  overflow-wrap: break-word;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__hot__int .txt {
    margin-top: calc(15 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__int .txt {
    margin-top: 1em;
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__room {
    margin-top: calc(70 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot__room {
    margin-top: calc(50 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room {
    margin-top: 3em;
  }
}
.p-rooms-type__hot__room__main {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__main {
    flex-direction: column-reverse;
  }
}
.p-rooms-type__hot__room__main .c-title {
  justify-content: center;
  color: #fff;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__room__main__txt {
    width: calc(211 / 1440 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot__room__main__txt {
    width: 22%;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__main__txt {
    width: 80%;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1349px) {
  .p-rooms-type__hot__room__main__txt {
    width: calc(248 / 1440 * 100%);
  }
}
.p-rooms-type__hot__room__main__txt .txt {
  color: #fff;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__room__main__txt .txt {
    margin-top: calc(45 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot__room__main__txt .txt {
    margin-top: calc(25 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__main__txt .txt {
    margin-top: 2em;
  }
}
.p-rooms-type__hot__room__main__txt .c-circle-btn {
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__hot__room__main__txt .c-circle-btn {
    margin-top: calc(20 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__main__txt .c-circle-btn {
    margin-top: 1.5em;
  }
}
.p-rooms-type__hot__room__main__txt .c-circle-btn > a .c-circle-btn__text {
  color: #fff;
}
.p-rooms-type__hot__room__main__txt .c-circle-btn > a .c-circle-btn__circle::before {
  background-color: #fff;
}
.p-rooms-type__hot__room__main__txt .c-circle-btn > a .c-circle-btn__circle > span::before {
  border-color: #fff;
}
.p-rooms-type__hot__room__main__txt .c-circle-btn > a .c-circle-btn__circle > span::after {
  background-color: rgba(243, 242, 242, 0.3);
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__room__main__img {
    width: calc(1024 / 1440 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot__room__main__img {
    width: 65%;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__main__img {
    width: 90%;
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__room__main__img {
    margin-left: calc(110 / 1440 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot__room__main__img {
    margin-left: 7%;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__main__img {
    margin-left: auto;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__main__img {
    margin-top: 1.5em;
    margin-right: auto;
  }
}
.p-rooms-type__hot__room__main__img .c-slider__element {
  overflow: hidden;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__room__main__img .c-slider__element {
    padding-right: calc(288 / 1024 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot__room__main__img .c-slider__element {
    padding-right: calc(226 / 1024 * 100%);
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__room__main__img .c-slider__element .inner {
    width: calc(724 / 736 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot__room__main__img .c-slider__element .inner {
    width: 95%;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__main__img .c-slider__element .inner {
    width: 100%;
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__room__main__img .c-slider__btn {
    left: calc(-60 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot__room__main__img .c-slider__btn {
    left: calc(-55 / 13 * 1rem);
  }
}
.p-rooms-type__hot__room__sub {
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__room__sub {
    width: calc(900 / 1440 * 100%);
    max-width: calc(900px);
  }
}
@media only screen and (min-width: 1025px) and (min-width: 1441px) {
  .p-rooms-type__hot__room__sub {
    max-width: calc(900px * ((15 + 0) / 13));
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot__room__sub {
    width: calc(1160 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__sub {
    width: calc(348 / 428 * 100%);
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__room__sub {
    margin-top: calc(40 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot__room__sub {
    margin-top: calc(30 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__sub {
    margin-top: 4em;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__sub {
    width: 70%;
  }
}
.p-rooms-type__hot__room__sub .c-title {
  text-align: center;
  color: #fff;
}
.p-rooms-type__hot__room__sub__inner {
  display: flex;
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__hot__room__sub__inner {
    margin-top: calc(25 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__sub__inner {
    margin-top: 1.5em;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__sub__inner {
    display: block;
  }
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__hot__room__sub__inner__item {
    width: calc(286 / 900 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__sub__inner__item {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__hot__room__sub__inner__item:nth-of-type(n+2) {
    margin-left: calc(21 / 900 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__sub__inner__item:nth-of-type(n+2) {
    margin-left: 0;
  }
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__hot__room__sub__inner__item:nth-of-type(n+2) {
    margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__sub__inner__item:nth-of-type(n+2) {
    margin-top: 2.5em;
  }
}
.p-rooms-type__hot__room__sub__inner__item > a .img {
  transition: opacity .3s ease-in-out;
}
.p-rooms-type__hot__room__sub__inner__item > a .c-text-link {
  width: 100%;
  color: #fff;
  justify-content: flex-end;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__hot__room__sub__inner__item > a .c-text-link {
    margin-top: calc(11 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__sub__inner__item > a .c-text-link {
    margin-top: 0.5em;
  }
}
.p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link {
  width: 100%;
  flex-direction: column;
  align-items: flex-end;
}
.p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__text {
  width: 100%;
  flex-direction: column;
  align-items: flex-start;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__text {
    font-size: calc(13 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__text {
    font-size: calc(calc(13 + var(--font-size-sp-add)) / var(--font-size) * 1rem);
  }
}
.p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__text .num {
  margin-top: .5em;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__text .num {
    font-size: calc(10 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__text .num {
    font-size: calc(calc(10 + var(--font-size-sp-add)) / var(--font-size) * 1rem);
  }
}
.p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__text .num .n {
  font-family: var(--font-en);
  font-optical-sizing: auto;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__text .num .n {
    font-size: calc(18 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__text .num .n {
    font-size: calc(calc(18 + var(--font-size-sp-add)) / var(--font-size) * 1rem);
  }
}
.p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__text .l {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__arrow {
  justify-content: flex-end;
  width: 100%;
  color: #fff;
  fill: #fff;
}
.p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__arrow::before {
  background-color: #fff;
}
.p-rooms-type__hot__room__sub__inner__item > a .c-text-link__link .c-text-link__arrow > span::before {
  border-color: #fff;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__room__sub__inner__item > a:hover .img {
    opacity: .7;
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__hot__room + .p-rooms-type__hot__room {
    margin-top: calc(135 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__hot__room + .p-rooms-type__hot__room {
    margin-top: calc(115 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__hot__room + .p-rooms-type__hot__room {
    margin-top: 7em;
  }
}

.p-rooms-type__upp, .p-rooms-type__sta {
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp, .p-rooms-type__sta {
    width: calc(900 / 1440 * 100%);
    max-width: calc(900px);
  }
}
@media only screen and (min-width: 1025px) and (min-width: 1441px) {
  .p-rooms-type__upp, .p-rooms-type__sta {
    max-width: calc(900px * ((15 + 0) / 13));
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__upp, .p-rooms-type__sta {
    width: calc(1160 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp, .p-rooms-type__sta {
    width: calc(388 / 428 * 100%);
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp, .p-rooms-type__sta {
    margin-top: calc(45 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__upp, .p-rooms-type__sta {
    margin-top: calc(25 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp, .p-rooms-type__sta {
    margin-top: 2em;
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp, .p-rooms-type__sta {
    padding-top: calc(100 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__upp, .p-rooms-type__sta {
    padding-top: calc(100 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp, .p-rooms-type__sta {
    padding-top: 3.5em;
  }
}
.p-rooms-type__upp .c-title-main, .p-rooms-type__sta .c-title-main {
  text-align: center;
}
@media only screen and (min-width: 1025px) and (max-width: 1365px) {
  .p-rooms-type__upp, .p-rooms-type__sta {
    width: calc(1160 / 1440 * 100%);
  }
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room, .p-rooms-type__sta__room {
    margin-top: calc(30 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room, .p-rooms-type__sta__room {
    margin-top: 2em;
  }
}
.p-rooms-type__upp__room__img .c-slider__element, .p-rooms-type__sta__room__img .c-slider__element {
  position: relative;
}
.p-rooms-type__upp__room__img .c-slider__element .cap_txt, .p-rooms-type__sta__room__img .c-slider__element .cap_txt {
  padding: .2em 2em;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  background-color: var(--color-e9e8e3);
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room__img .c-slider__element .cap_txt, .p-rooms-type__sta__room__img .c-slider__element .cap_txt {
    font-size: calc(11 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__img .c-slider__element .cap_txt, .p-rooms-type__sta__room__img .c-slider__element .cap_txt {
    font-size: calc(calc(11 + var(--font-size-sp-add)) / var(--font-size) * 1rem);
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp__room__img .c-slider__btn--prev, .p-rooms-type__sta__room__img .c-slider__btn--prev {
    left: calc(-80 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__upp__room__img .c-slider__btn--prev, .p-rooms-type__sta__room__img .c-slider__btn--prev {
    left: calc(-55 / 13 * 1rem);
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp__room__img .c-slider__btn--next, .p-rooms-type__sta__room__img .c-slider__btn--next {
    right: calc(-80 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__upp__room__img .c-slider__btn--next, .p-rooms-type__sta__room__img .c-slider__btn--next {
    right: calc(-55 / 13 * 1rem);
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp__room__img .c-slider__pagination.swiper-pagination-horizontal, .p-rooms-type__sta__room__img .c-slider__pagination.swiper-pagination-horizontal {
    flex-direction: row;
    justify-content: center;
    right: 0;
    left: 0;
    width: auto;
    margin-right: auto;
    margin-left: auto;
    bottom: calc(-30 / 13 * 1rem);
  }
  .p-rooms-type__upp__room__img .c-slider__pagination.swiper-pagination-horizontal .swiper-pagination-bullet, .p-rooms-type__sta__room__img .c-slider__pagination.swiper-pagination-horizontal .swiper-pagination-bullet {
    margin: 0 var(--slider-pagination-pt) !important;
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp__room__txt, .p-rooms-type__sta__room__txt {
    margin-top: calc(60 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__upp__room__txt, .p-rooms-type__sta__room__txt {
    margin-top: calc(40 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__txt, .p-rooms-type__sta__room__txt {
    margin-top: 3em;
  }
}
.p-rooms-type__upp__room__txt .txt, .p-rooms-type__sta__room__txt .txt {
  text-align: center;
  word-break: keep-all;
  overflow-wrap: break-word;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp__room__txt .txt, .p-rooms-type__sta__room__txt .txt {
    width: calc(800 / 900 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__upp__room__txt .txt, .p-rooms-type__sta__room__txt .txt {
    width: 90%;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__txt .txt, .p-rooms-type__sta__room__txt .txt {
    width: 100%;
  }
}
.p-rooms-type__upp__room__det, .p-rooms-type__sta__room__det {
  display: flex;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp__room__det, .p-rooms-type__sta__room__det {
    width: calc(800 / 900 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__upp__room__det, .p-rooms-type__sta__room__det {
    width: 90%;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det, .p-rooms-type__sta__room__det {
    width: 90%;
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp__room__det, .p-rooms-type__sta__room__det {
    margin-top: calc(50 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__upp__room__det, .p-rooms-type__sta__room__det {
    margin-top: calc(40 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det, .p-rooms-type__sta__room__det {
    margin-top: 3em;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det, .p-rooms-type__sta__room__det {
    display: block;
  }
}
.p-rooms-type__upp__room__det__map, .p-rooms-type__sta__room__det__map {
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room__det__map, .p-rooms-type__sta__room__det__map {
    width: calc(340 / 800 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__map, .p-rooms-type__sta__room__det__map {
    width: 100%;
  }
}
.p-rooms-type__upp__room__det__map .c-slider__ctrls, .p-rooms-type__sta__room__det__map .c-slider__ctrls {
  align-items: baseline;
  justify-content: flex-end;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room__det__map .c-slider__ctrls, .p-rooms-type__sta__room__det__map .c-slider__ctrls {
    margin-top: 1em;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__map .c-slider__ctrls, .p-rooms-type__sta__room__det__map .c-slider__ctrls {
    justify-content: center;
  }
}
.p-rooms-type__upp__room__det__map .c-slider__ctrls .c-slider__ctrls__btn--prev, .p-rooms-type__sta__room__det__map .c-slider__ctrls .c-slider__ctrls__btn--prev {
  margin-right: .5em;
}
.p-rooms-type__upp__room__det__map .c-slider__ctrls .c-slider__ctrls__btn--next, .p-rooms-type__sta__room__det__map .c-slider__ctrls .c-slider__ctrls__btn--next {
  margin-left: .5em;
}
.p-rooms-type__upp__room__det__map .c-slider__ctrls button:disabled, .p-rooms-type__sta__room__det__map .c-slider__ctrls button:disabled {
  opacity: .3;
  cursor: none;
}
.p-rooms-type__upp__room__det__map .c-slider, .p-rooms-type__sta__room__det__map .c-slider {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room__det__map .c-slider .c-slider__element:not(.swiper-initialized) .c-slider__wrapper, .p-rooms-type__sta__room__det__map .c-slider .c-slider__element:not(.swiper-initialized) .c-slider__wrapper {
    display: flex;
    flex-direction: column;
  }
}
.p-rooms-type__upp__room__det__map .c-slider .c-slider__wrapper, .p-rooms-type__sta__room__det__map .c-slider .c-slider__wrapper {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room__det__map .floor, .p-rooms-type__sta__room__det__map .floor {
    margin-top: calc(25 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__map .floor, .p-rooms-type__sta__room__det__map .floor {
    margin-top: 1.5em;
  }
}
html:not([lang=en]):not([lang=fr]) .p-rooms-type__upp__room__det__map .floor, html:not([lang=en]):not([lang=fr]) .p-rooms-type__sta__room__det__map .floor {
  display: flex;
  align-items: flex-start;
}
.p-rooms-type__upp__room__det__map .floor .img, .p-rooms-type__sta__room__det__map .floor .img {
  margin-left: auto;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room__det__map .floor .img, .p-rooms-type__sta__room__det__map .floor .img {
    width: calc(254 / 340 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__map .floor .img, .p-rooms-type__sta__room__det__map .floor .img {
    width: 75%;
  }
}
@media only screen and (min-width: 768px) {
  html:lang(en) .p-rooms-type__upp__room__det__map .floor .img, html:lang(fr) .p-rooms-type__upp__room__det__map .floor .img, html:lang(en) .p-rooms-type__sta__room__det__map .floor .img, html:lang(fr) .p-rooms-type__sta__room__det__map .floor .img {
    margin-top: 1em;
  }
}
.p-rooms-type__upp__room__det__map .floor .img.wl, .p-rooms-type__sta__room__det__map .floor .img.wl {
  margin-left: 1em;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room__det__map .floor .img.wl, .p-rooms-type__sta__room__det__map .floor .img.wl {
    width: calc(336 / 340 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__map .floor .img.wl, .p-rooms-type__sta__room__det__map .floor .img.wl {
    width: 85%;
  }
}
.p-rooms-type__upp__room__det__map .floor:has(> .c-title) .img, .p-rooms-type__sta__room__det__map .floor:has(> .c-title) .img {
  margin-right: 0;
}
.p-rooms-type__upp__room__det__map .floor:has(> .c-title) .c-title, .p-rooms-type__sta__room__det__map .floor:has(> .c-title) .c-title {
  padding-left: 1em;
  display: flex;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room__det__txt, .p-rooms-type__sta__room__det__txt {
    width: calc(400 / 800 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__txt, .p-rooms-type__sta__room__det__txt {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room__det__txt, .p-rooms-type__sta__room__det__txt {
    margin-left: calc(60 / 800 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__txt, .p-rooms-type__sta__room__det__txt {
    margin-left: 0;
  }
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room__det__txt, .p-rooms-type__sta__room__det__txt {
    margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__txt, .p-rooms-type__sta__room__det__txt {
    margin-top: 3em;
  }
}
.p-rooms-type__upp__room__det__txt .c-table, .p-rooms-type__sta__room__det__txt .c-table {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room__det__txt .c-table, .p-rooms-type__sta__room__det__txt .c-table {
    margin-top: calc(20 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__txt .c-table, .p-rooms-type__sta__room__det__txt .c-table {
    margin-top: 1.5em;
  }
}
.p-rooms-type__upp__room__det__txt .c-table tbody tr th, .p-rooms-type__sta__room__det__txt .c-table tbody tr th {
  padding: .785em 1em;
  text-align: left;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp__room__det__txt .c-table tbody tr th, .p-rooms-type__sta__room__det__txt .c-table tbody tr th {
    width: calc(137 / 400 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__upp__room__det__txt .c-table tbody tr th, .p-rooms-type__sta__room__det__txt .c-table tbody tr th {
    width: 40%;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__txt .c-table tbody tr th, .p-rooms-type__sta__room__det__txt .c-table tbody tr th {
    width: 35%;
  }
}
html:lang(en) .p-rooms-type__upp__room__det__txt .c-table tbody tr th, html:lang(fr) .p-rooms-type__upp__room__det__txt .c-table tbody tr th, html:lang(en) .p-rooms-type__sta__room__det__txt .c-table tbody tr th, html:lang(fr) .p-rooms-type__sta__room__det__txt .c-table tbody tr th {
  line-height: 1.5;
}
.p-rooms-type__upp__room__det__txt .c-table tbody tr td, .p-rooms-type__sta__room__det__txt .c-table tbody tr td {
  padding: .785em 1.5em;
  word-break: keep-all;
  overflow-wrap: break-word;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp__room__det__txt .c-table tbody tr td, .p-rooms-type__sta__room__det__txt .c-table tbody tr td {
    width: calc(263 / 400 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__upp__room__det__txt .c-table tbody tr td, .p-rooms-type__sta__room__det__txt .c-table tbody tr td {
    width: 60%;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__txt .c-table tbody tr td, .p-rooms-type__sta__room__det__txt .c-table tbody tr td {
    width: 65%;
  }
}
html:lang(en) .p-rooms-type__upp__room__det__txt .c-table tbody tr td, html:lang(fr) .p-rooms-type__upp__room__det__txt .c-table tbody tr td, html:lang(en) .p-rooms-type__sta__room__det__txt .c-table tbody tr td, html:lang(fr) .p-rooms-type__sta__room__det__txt .c-table tbody tr td {
  line-height: 1.5;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__upp__room__det__txt .c-text-link, .p-rooms-type__sta__room__det__txt .c-text-link {
    margin-top: calc(25 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__upp__room__det__txt .c-text-link, .p-rooms-type__sta__room__det__txt .c-text-link {
    margin-top: calc(20 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__txt .c-text-link, .p-rooms-type__sta__room__det__txt .c-text-link {
    margin-top: 1.5em;
  }
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__upp__room__det__txt .c-large-btn, .p-rooms-type__sta__room__det__txt .c-large-btn {
    margin-top: calc(20 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__upp__room__det__txt .c-large-btn, .p-rooms-type__sta__room__det__txt .c-large-btn {
    margin-top: 1.5em;
  }
}
.p-rooms-type__upp__room__det__txt .c-large-btn .c-large-btn__link, .p-rooms-type__sta__room__det__txt .c-large-btn .c-large-btn__link {
  min-width: 100%;
}

.p-rooms-type__ame {
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__ame {
    width: calc(800 / 1440 * 100%);
    max-width: calc(800px);
  }
}
@media only screen and (min-width: 1025px) and (min-width: 1441px) {
  .p-rooms-type__ame {
    max-width: calc(800px * ((15 + 0) / 13));
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__ame {
    width: calc(1160 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__ame {
    width: calc(348 / 428 * 100%);
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__ame {
    margin-top: calc(40 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__ame {
    margin-top: calc(20 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__ame {
    margin-top: 4em;
  }
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__ame {
    padding-top: calc(100 / 13 * 1rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__ame {
    padding-top: calc(100 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__ame {
    padding-top: 3em;
  }
}
.p-rooms-type__ame .c-title-main {
  text-align: center;
}
@media only screen and (min-width: 1025px) and (max-width: 1365px) {
  .p-rooms-type__ame {
    width: calc(1160 / 1440 * 100%);
  }
}
.p-rooms-type__ame .c-table {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .p-rooms-type__ame .c-table {
    margin-top: calc(20 / 13 * 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__ame .c-table {
    margin-top: 1.5em;
  }
}
.p-rooms-type__ame .c-table tr th {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--color-e9e8e3);
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__ame .c-table tr th {
    width: calc(250 / 800 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__ame .c-table tr th {
    width: 25%;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__ame .c-table tr th {
    width: 100%;
  }
}
@media only screen and (min-width: 1025px) {
  html:lang(en) .p-rooms-type__ame .c-table tr th {
    width: calc(180 / 800 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  html:lang(en) .p-rooms-type__ame .c-table tr th {
    width: 25%;
  }
}
@media only screen and (max-width: 767px) {
  html:lang(en) .p-rooms-type__ame .c-table tr th {
    width: 100%;
  }
}
@media only screen and (min-width: 1025px) {
  html:lang(fr) .p-rooms-type__ame .c-table tr th {
    width: calc(200 / 800 * 100%);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  html:lang(fr) .p-rooms-type__ame .c-table tr th {
    width: 30%;
  }
}
@media only screen and (max-width: 767px) {
  html:lang(fr) .p-rooms-type__ame .c-table tr th {
    width: 100%;
  }
}
.p-rooms-type__ame .c-table tr td {
  padding: .785em 3em;
}
.p-rooms-type__ame .c-table tr td .tbl-list {
  display: flex;
  flex-wrap: wrap;
}
.p-rooms-type__ame .c-table tr td .tbl-list > li {
  position: relative;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__ame .c-table tr td .tbl-list > li {
    width: calc(94% / 4);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__ame .c-table tr td .tbl-list > li {
    width: calc(96% / 3);
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__ame .c-table tr td .tbl-list > li {
    width: calc(98% / 2);
  }
}
.p-rooms-type__ame .c-table tr td .tbl-list > li:nth-of-type(n+2) {
  margin-left: 2%;
}
@media only screen and (min-width: 1025px) {
  .p-rooms-type__ame .c-table tr td .tbl-list > li:nth-of-type(n+5) {
    margin-top: 1%;
  }
  .p-rooms-type__ame .c-table tr td .tbl-list > li:nth-of-type(4n+1) {
    margin-left: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .p-rooms-type__ame .c-table tr td .tbl-list > li:nth-of-type(n+4) {
    margin-top: 1%;
  }
  .p-rooms-type__ame .c-table tr td .tbl-list > li:nth-of-type(3n+1) {
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__ame .c-table tr td .tbl-list > li:nth-of-type(n+3) {
    margin-top: 1%;
  }
  .p-rooms-type__ame .c-table tr td .tbl-list > li:nth-of-type(2n+1) {
    margin-left: 0;
  }
}
.p-rooms-type__ame .c-table tr td .tbl-list > li::before {
  content: "・";
  position: relative;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 767px) {
  .p-rooms-type__ame .c-table table {
    display: block;
  }
  .p-rooms-type__ame .c-table tbody {
    display: block;
  }
  .p-rooms-type__ame .c-table tr {
    display: block;
  }
  .p-rooms-type__ame .c-table th,
  .p-rooms-type__ame .c-table td {
    box-sizing: border-box;
    display: block;
    width: 100% !important;
    padding: 1em !important;
  }
  .p-rooms-type__ame .c-table th {
    text-align: center;
  }
}
