/* -----------------------------------------
   ALL ROOMS SUMMARY PAGE & GALLERY
   å®¢å®¤ä¸?è¦§ãƒ»è©³ç´°ã¾ã¨ã‚?¼ˆã‚®ãƒ£ãƒ©ãƒªãƒ¼å®Œå?é€£å‹•ç‰ˆ??
----------------------------------------- */
.rooms-detail-list {
  margin-top: 5rem;
  display: flex;
  flex-direction: column;
  gap: 8rem; /* éƒ¨å±‹ã¨éƒ¨å±‹ã?é–“ã?ã‚?£ãŸã‚Šã¨ã—ãŸä½™ç™½ */
}

.room-detail-block {
  width: 100%;
  scroll-margin-top: 150px !important;
}

.room-detail-row {
  display: flex;
  align-items: center;
  gap: 5rem;
}

/* å¥?•°ç•ªç›®?ˆã¾ãŸã?reverseã‚¯ãƒ©ã‚¹?‰ã?å·¦å³åè»¢ãƒ«ãƒ¼ãƒ« */
.room-detail-row.reverse {
  flex-direction: row-reverse;
}

/* =========================================
   ç”»åƒã‚®ãƒ£ãƒ©ãƒªãƒ¼ã‚¨ãƒªã‚¢?ˆç¸¦é•·ç”»åƒã‚‚å…¨ä½“è¡¨ç¤º??ƒŒæ™¯ãƒœã‚«ã‚·ã§ä½™ç™½ã‚’æ¶ˆã™??
========================================= */
.room-detail-visual {
  flex: 1.2;
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}

/* ãƒ¡ã‚¤ãƒ³ç”»åƒã‚¨ãƒªã‚¢??16:10ã®ã‚µã‚¤ã‚ºã‚’å®Œå?ã«ç¶­æŒã™ã‚‹åœŸå°?? */
.main-image-wrapper {
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  overflow: hidden !important;
  border: 1px solid var(--border) !important;
  position: relative !important; /* å†??ã®é‡ãªã‚Šã‚’åˆ¶å¾¡ã™ã‚‹ãŸã‚ã«å¿? ? */
  background: #000 !important;
}

/* ãƒ¡ã‚¤ãƒ³ç”»åƒã‚¨ãƒªã‚¢??16:10ã®ã‚µã‚¤ã‚ºã‚’ç¶­æŒã™ã‚‹åœŸå°?? */
.main-image-wrapper {
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  overflow: hidden !important;
  /* ðŸ’¡ è§£æ±º?šæž ç·šã‚’ 'none' ã«å¤‰æ›´ã—ã¦å®Œå?ã«æ¶ˆåŽ»ã—ã¾ã—ãŸ */
  border: none !important; 
  background-color: #0a0a0a !important; 
}

/* å®Ÿéš›ã«æ‰‹å‰ã«è¡¨ç¤ºã•ã‚Œã‚‹ãƒ¡ã‚¤ãƒ³ç”»åƒã?è¨­å®šï¼ˆè¦‹å?ã‚Œãªã??ä½“è¡¨ç¤º?? */
.gallery-main {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important; /* â˜?¸¦é•·ç”»åƒã§ã‚‚çµ¶å¯¾ã«è¦‹å?ã‚‰ã›ãšã?ä¸Šã‹ã‚‰ä¸‹ã¾ã§å…¨éƒ¨å†™ã—ã¾ã? */
  object-position: center !important; 
  display: block !important;
  transition: opacity 0.2s ease !important;
  position: relative !important;
  z-index: 2 !important; /* ãƒœã‚«ã—ãŸèƒŒæ™¯ã‚ˆã‚Šæ‰‹å‰ã«è¡¨ç¤º */
}

/* ãƒ›ãƒãƒ¼æ™‚ã«ç”»åƒãŒå°‘ã—æ‹¡å¤§ã™ã‚‹ãƒ©ã‚°ã‚¸ãƒ¥ã‚¢ãƒªãƒ¼ãªã‚¨ãƒ•ã‚§ã‚¯ãƒ? */
.room-detail-block:hover .main-image-wrapper img {
  transform: scale(1.03);
}

/* çœŸä¸‹ã«ä¸¦ã¶ã‚µãƒ ãƒã‚¤ãƒ«?ˆæ¨ªä¸¦ã³ãƒ»ç­‰é–“éš”ã«ä¿®æ­£?? */
.thumbnail-slider {
  display: flex !important;
  gap: 10px !important; /* â˜??çœŸåŒå£«ã®éš™é–“ã‚?10pxã«å¼·åˆ¶å›ºå®? */
  overflow-x: auto !important;
  white-space: nowrap !important;
  width: 100% !important;
  padding-bottom: 4px !important;
  justify-content: flex-start !important; /* å·¦è©°ã‚ã§æ•´åˆ? */
}

/* ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ«ãƒã??ˆé»’èƒŒæ™¯ã«æº¶ã‘è¾¼ã‚?æ¥µç´°ãƒ?‚¶ã‚¤ãƒ³?? */
.thumbnail-slider::-webkit-scrollbar {
  height: 2px;
}
.thumbnail-slider::-webkit-scrollbar-thumb {
  background: var(--border);
}

/* ã‚µãƒ ãƒã‚¤ãƒ«å˜ä½“ã?è¨­å®šï¼ˆã‚µã‚¤ã‚ºã‚’å¼·åˆ¶å›ºå®šï¼? */
.thumb-img {
  width: 75px !important; 
  height: 75px !important;
  aspect-ratio: 1 / 1 !important; /* æ­£æ–¹å½¢ */
  object-fit: cover !important;
  cursor: pointer !important;
  border: 1px solid transparent !important;
  opacity: 0.5 !important;
  transition: all 0.2s ease !important;
  flex-shrink: 0 !important; /* æ¨ªã«æ½°ã‚Œã‚‹ã®ã‚’çµ¶å¯¾ã«é˜²ã? */
}

.thumb-img:hover {
  opacity: 0.9 !important;
}

/* é¸æŠžä¸­ã®ã‚µãƒ ãƒã‚¤ãƒ« */
.thumb-img.active {
  border-color: var(--gold) !important;
  opacity: 1 !important;
}

/* =========================================
   ãƒ?‚­ã‚¹ãƒˆã‚¨ãƒªã‚¢
========================================= */
.room-detail-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  text-align: left;
}

.room-detail-cat {
  font-family: 'Cinzel', serif;
  font-size: 0.65rem;
  letter-spacing: 0.3em;
  color: var(--gold);
  text-transform: uppercase;
  margin-bottom: 0.8rem;
}

.room-detail-name {
  font-size: 2rem;
  color: var(--white);
  margin-bottom: 1.5rem;
  font-weight: 400;
}

.room-detail-desc {
  font-size: 0.88rem;
  color: var(--text);
  line-height: 2;
  margin-bottom: 2rem;
  text-align: justify;
}

/* éƒ¨å±‹ã”ã¨ã®ãƒŸãƒ‹ã‚¹ãƒšãƒƒã‚¯è¡¨ */
.room-detail-content .room-spec-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 2.5rem;
}

.room-detail-content .room-spec-table th,
.room-detail-content .room-spec-table td {
  padding: 0.8rem 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  font-size: 0.85rem;
}

.room-detail-content .room-spec-table th {
  color: var(--gold);
  width: 25%;
  text-align: left;
  font-weight: 400;
}

.room-detail-content .room-spec-table td {
  color: var(--muted);
  font-weight: 300;
}

/* ãƒœã‚¿ãƒ³ã‚µã‚¤ã‚ºã‚’å°‘ã—ã‚³ãƒ³ãƒ‘ã‚¯ãƒˆã«èª¿æ•´ */
.reserve-btn.btn-sm {
  padding: 0.7rem 2rem !important;
  font-size: 0.8rem !important;
  display: inline-block !important;
  text-decoration: none;
}

/* =========================================
   --- ã‚¹ãƒžã?ãƒ»ã‚¿ãƒ–ãƒ¬ãƒ?ƒˆå¯¾å¿œï¼?1024pxä»¥ä¸‹ã§1åˆ—ã«æœ?é©åŒ–ï¼? ---
========================================= */
@media screen and (max-width: 1024px) {
  .rooms-detail-list {
    gap: 5rem;
  }
  
  .room-detail-row,
  .room-detail-row.reverse {
    flex-direction: column !important; /* å¼·åˆ¶çš?«ç¸¦ä¸¦ã³ */
    gap: 2rem;
  }
  
  .room-detail-visual {
    width: 100%;
    flex: none;
  }
  
  .room-detail-content {
    width: 100%;
    flex: none;
  }
  
  .room-detail-name {
    font-size: 1.6rem;
    margin-bottom: 1rem;
  }
  
  .room-detail-content .room-spec-table th {
    width: 30%;
  }
}