.p-room__slider {
  text-align: center;
  padding: 16rem 0 8rem;
}

/* ── タブナビゲーション ── */
.p-room__tab-navigation {
  max-width: 104rem;
  padding: 0 2rem;
  margin: auto;
  margin-top: 8rem;
}

.p-room__tab-navigation-list {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}

.p-room__tab-navigation-item {
  width: 25%;
  font-family: "Yu Mincho", "YuMincho", "Noto Serif JP", serif;
  padding: 1.8rem 3rem;
  color: #d6c5ad;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  cursor: pointer;
  border: 1px solid #3a3a36;
  text-align: left;
}

.p-room__tab-navigation-item.is-active {
  background-color: #d6c5ad;
  color: #1c1c18;
}

.p-room__tab-panels {
  margin-top: 8rem;
}

/* ── タブパネル切替 ── */
.p-room__tab-panel {
  display: none;
}

.p-room__tab-panel.is-active {
  display: block;
}

/* ── スライドラッパー ── */
.p-room__slide-wrapper {
  position: relative;
}

.p-room__slide-wrapper .splide__slide img {
  width: 100%;
  height: auto;
  display: block;
}

.p-room__slide-wrapper .splide__pagination {
  bottom: -6rem;
}

/* ── スライドキャプション ── */
.p-room__slide-caption {
  position: absolute;
  bottom: 4rem;
  left: 50%;
  transform: translateX(-50%);
  display: inline-flex;
  flex-direction: column;
  min-width: 24rem;
}

.p-room__slide-caption-text {
  display: block;
  width: 100%;
  padding: 1.2rem 2rem;
  text-align: center;
  color: #d6c5ad;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  background-color: rgba(20, 20, 18, 0.9);
  font-family: "Yu Mincho", "YuMincho", "Noto Serif JP", serif;
}

/* ── スライドキャプションナビゲーション ── */
.p-room__slide-caption-navigation {
  display: flex;
  border-top: 1px solid #3a3a36;
}

.p-room__slide-caption-navigation-previous,
.p-room__slide-caption-navigation-next {
  flex: 1;
  background-color: #1c1c18;
  color: #d6c5ad;
  border: none;
  height: 4.5rem;
  font-size: 2.8rem;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.p-room__slide-caption-navigation-previous {
  border-right: 1px solid #3a3a36;
}

.p-room__main-ttl {
  margin-top: 4rem;
  font-family: "Yu Mincho", "YuMincho", "Noto Serif JP", serif;
  text-align: center;
  font-size: 2.4rem;
  color: #d6c5ad;
}

.p-room__main-text {
  margin-top: 2rem;
  color: #d6c5ad;
  text-align: center;
  font-size: 1.8rem;
}

.p-room__main-image {
  margin-top: 8rem;
}

.p-room__main-container {
  margin-top: 12rem;
}

.p-room__main-container-ttl {
  font-size: 2rem;
  text-align: center;
  color: #d6c5ad;
}

.p-room__main-container-ttl.--ver01:before {
  background: url(../img/room/kyukeiTitle.webp) no-repeat;
}

.p-room__main-container-ttl.--ver02:before {
  background: url(../img/room/freeTitle.webp) no-repeat;
}

.p-room__main-container-ttl.--ver03:before {
  background: url(../img/room/stayTitle.webp) no-repeat;
}

.p-room__main-container-ttl.--ver04:before {
  background: url(../img/room/extTitle.webp) no-repeat;
}

.p-room__main-container-ttl:before {
  content: '';
  vertical-align: sub;
  display: inline-block;
  width: 3rem;
  height: 3rem;
  background-size: contain;
  background-position: center;
}

.p-room__main-container-table {
  margin-top: 4rem;
}

.p-room__main-container-table-header,
.p-room__main-container-table-row {
  display: flex;
  border-bottom: 1px solid #3a3a36;
}

.p-room__main-container-table-header-cell {
  flex: 2;
  padding: 1.2rem 2rem;
  color: #d6c5ad;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  text-align: center;
}

.p-room__main-container-table-header-cell:first-child {
  flex:2;
}

.p-room__main-container-table-row-time {
  flex: 2;
  padding: 2rem;
  color: #d6c5ad;
  font-family: "Yu Mincho", "YuMincho", "Noto Serif JP", serif;
  font-size: 2rem;
  text-align: center;
  border-right: 1px solid #3a3a36;
}

.p-room__main-container-table-row-price {
  flex: 2;
  padding: 2rem;
  color: #d6c5ad;
  font-size: 2rem;
  text-align: center;
  font-family: "Yu Mincho", "YuMincho", "Noto Serif JP", serif;
}

.p-room__main-container-text {
  color: #d6c5ad;
  text-align: center;
  font-size: 2rem;
  margin-top: 2rem;
  font-family: "Yu Mincho", "YuMincho", "Noto Serif JP", serif;
}

.p-room__main-container-table-row-part {
  flex: 1;
  font-family: "Yu Mincho", "YuMincho", "Noto Serif JP", serif;
  padding: 2rem;
  color: #d6c5ad;
  font-size: 1.6rem;
  text-align: center;
  border-right: 1px solid #3a3a36;
}

.p-room__main-container-table-row-day {
  flex: 2;
  font-family: "Yu Mincho", "YuMincho", "Noto Serif JP", serif;
  padding: 2rem;
  color: #d6c5ad;
  font-size: 1.6rem;
  text-align: center;
  border-right: 1px solid #3a3a36;
}


.p-room__main-text02 {
  font-size: 1.8rem;
  text-align: center;
  margin-top: 8rem;
  color: #d6c5ad;
}

.p-room__main-btn {
  margin-top: 8rem;
}

.p-room__main-btn a {
  color: #d6c5ad;
  text-align: center;
  text-align: center;
  font-size: 3.2rem;
  padding: 8rem 0;
  border: .2rem solid #d6c5ad;
}

.p-room__main-btn a:hover {
  background-color: #d6c5ad;
  color: #333;
}

@media screen and (max-width: 768px) {
  .p-room__slider {
    padding: 8rem 0;
  }

  .p-room__tab-navigation {
    margin-top: 4rem;
  }

  .p-room__tab-navigation-item {
    width: 32%;
    font-size: 1rem;
    padding: 1rem 0;
    text-align: center;
  }

  .p-room__tab-navigation-list {
    gap: .6rem;
  }

  .p-room__tab-panels {
    margin-top: 4rem;
  }

  .p-room__slide-caption {
    bottom: -10rem;
  }

  .p-room__slide-caption-text {
    font-size: 1.2rem;
  }

  .p-room__slide-caption-navigation-previous,
  .p-room__slide-caption-navigation-next {
    height: 3rem;
  }

  .p-room__slide-wrapper .splide__pagination {
    bottom: -2.5rem;
  }

  .p-room__main {
    margin-top: 8rem;
  }

  .p-room__main-ttl{
    font-size: 2rem;
  }

  .p-room__main-text{
    font-size: 1.6rem;
    text-align: left;
  }

  .p-room__main-image{
    margin-top: 4rem;
  }

  .p-room__main-container{
    margin-top: 4rem;
  }

  .p-room__main-container-table-header-cell{
    font-size: 1.2rem;
  }
  .p-room__main-container-table-header-cell{
    padding: 1rem 0;
  }

  .p-room__main-container-table-row-time{
    font-size: 1.2rem;
        padding: 1rem 0;
  }

  .p-room__main-container-table-row-price{
        font-size: 1.2rem;
        padding: 1rem 0;
  }

  .p-room__main-container-text{
    font-size: 1.4rem;
    text-align: left;
  }

  .p-room__main-container-table-row-day{
        font-size: 1.2rem;
        padding: 1rem 0;
  }

  .p-room__main-container-table-row-part{
            font-size: 1.2rem;
        padding: 1rem 0;
  }

  .p-room__main-text02{
    margin-top: 4rem;
    font-size: 1.4rem;
    text-align: left;
  }

  .p-room__main-btn{
    margin-top: 4rem;
  }

  .p-room__main-btn a{
    font-size: 2rem;
    padding: 2rem 0;
  }
}