/* ===== TOILET / TILE / PARKING ===== */

/* ----- 共通ラッパー幅 ----- */
.toilet,
.tile-parking {
  max-width: 1200px;
  width: 80%;
  margin: 0 auto;
}

/* ===== TOILET ===== */

.toilet {
  color: #e8e0d0;
}

/* ----- ヘッダー ----- */
.toilet-header {
  padding: 1% 0%;
  border-top: 1px solid #a9a082; margin: 4% auto 3%;
  border-bottom: 1px solid #a9a082; 
}

.toilet-header__title {
  font-size: clamp(1.0rem, 1.4vw, 1.3rem);
  font-weight: 400;
  letter-spacing: 0.2em;
  color: #e8e0d0;
  margin: 0;
}

/* ----- 4列（gap1.5% × 3本） ----- */
.toilet-row {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 1.5%;
  width: 100%;
}

.toilet-row__img,
.toilet-row__text {
  flex: 0 0 calc((100% - 4.5%) / 4);
  min-width: 0;
  box-sizing: border-box;
}

.toilet-row__img img {
  width: 100%;
  height: auto;
  display: block;
}

.toilet-row__text {
  padding: 0 3% 5% 0;
  text-align: left;
}

.toilet-row__title {
  font-size: clamp(0.82rem, 1.05vw, 0.98rem);
  font-weight: 600;
  line-height: 1.65;
  letter-spacing: 0.04em;
  color: #e8e0d0;
  margin: 0 0 5% 0;
}

.toilet-row__desc {
  font-size: clamp(0.72rem, 0.88vw, 0.82rem);
  line-height: 1.9;
  color: rgba(232, 224, 208, 0.8);
  margin: 0;
}

/* ===== TILE & PARKING 横並び ===== */

.tile-parking {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 1.5%;
}

.tile,
.parking {
  flex: 0 0 calc(50% - 0.75%);
  min-width: 0;
  color: #e8e0d0;
}

/* ----- TILEヘッダー ----- */
.tile-header,
.parking-header {
  padding: 1% 0%;
  border-top: 1px solid #a9a082; margin: 8% auto 6%;
  border-bottom: 1px solid #a9a082; 
}

.tile-header__title,
.parking-header__title {
  font-size: clamp(1.0rem, 1.4vw, 1.3rem);
  font-weight: 400;
  letter-spacing: 0.2em;
  color: #e8e0d0;
  margin: 0;
}

/* ----- TILE 2列 ----- */
.tile-row,
.parking-row {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 1.5%;
  width: 100%;
}

.tile-row__img,
.tile-row__text,
.parking-row__img,
.parking-row__text {
  flex: 0 0 calc(50% - 0.75%);
  min-width: 0;
  box-sizing: border-box;
}

.tile-row__img img,
.parking-row__img img {
  width: 100%;
  height: auto;
  display: block;
}

/* image photoキャプション */
.parking-row__img {
  position: relative;
}

.parking-row__caption {
  position: absolute;
  bottom: 4%;
  right: 4%;
  font-size: clamp(0.60rem, 0.72vw, 0.68rem);
  color: rgba(232, 224, 208, 0.6);
  letter-spacing: 0.05em;
}

.tile-row__text,
.parking-row__text {
  padding: 0 3% 5% 0;
  text-align: left;
}

.tile-row__title,
.parking-row__title {
  font-size: clamp(0.82rem, 1.05vw, 0.98rem);
  font-weight: 600;
  line-height: 1.65;
  letter-spacing: 0.04em;
  color: #e8e0d0;
  margin: 0 0 5% 0;
}

.tile-row__desc,
.parking-row__desc {
  font-size: clamp(0.72rem, 0.88vw, 0.82rem);
  line-height: 1.9;
  color: rgba(232, 224, 208, 0.8);
  margin: 0;
}

/* ===== SP（767px以下） ===== */
@media screen and (max-width: 767px) {

	.toilet-header {
  padding: 1% 0%;width: 90%;
  border-top: 1px solid #a9a082; margin: 4% auto 8%;
  border-bottom: 1px solid #a9a082; 
}
	
	
	
.tile-header,
.parking-header {
  padding: 1% 0%;width: 90%;
  border-top: 1px solid #a9a082; margin: 8% auto 6%;
  border-bottom: 1px solid #a9a082; 
}
	
	
  .toilet,
  .tile-parking {
    width: 90%;
  }

  /* TOILET 縦1列 */
  .toilet-row {
    display: block;
    width: 100%;
  }

  .toilet-row__img,
  .toilet-row__text {
    display: block;
    width: 90%;
    margin: 0 auto;
    flex: none;
  }

  .toilet-row__text {
    padding: 4% 0 4% 0;
  }

  .toilet-row__title {
    font-size: clamp(0.88rem, 4.0vw, 1.05rem);
  }

  .toilet-row__desc {
    font-size: clamp(0.78rem, 3.4vw, 0.9rem);
  }

  /* TILE & PARKING 縦積み */
  .tile-parking {
    display: block;
    width: 100%;
  }

  .tile,
  .parking {
    flex: none;
    width: 90%;margin: 0 auto;
  }

  .tile-row,
  .parking-row {
    display: block;
    width: 100%;
  }

  .tile-row__img,
  .tile-row__text,
  .parking-row__img,
  .parking-row__text {
    display: block;
    width: 90%;
    margin: 0 auto;
    flex: none;
  }

  .tile-row__text,
  .parking-row__text {
    padding: 4% 0 4% 0;
  }

  .tile-row__title,
  .parking-row__title {
    font-size: clamp(0.88rem, 4.0vw, 1.05rem);
  }

  .tile-row__desc,
  .parking-row__desc {
    font-size: clamp(0.78rem, 3.4vw, 0.9rem);
  }
}

/* ===== /TOILET / TILE / PARKING ===== */
