/* =========================================================
    Component: Stay Access Info
    File: assets/css/3_components/stay-access.css
    役割: 宿詳細のアクセス情報（マップ、住所、交通手段リスト）の装飾
   ========================================================= */

/* ==========================================
   1. アクセスヘッダー（住所とボタン）
   ========================================== */
.p-stayAccess__header {
    display: flex;
    flex-wrap: wrap; /* スマホでボタンが落ちるようにする */
    justify-content: space-between;
    align-items: center;
    gap: var(--wan-s-4);
    margin-bottom: var(--wan-s-4);
}
@media screen and (max-width: 768px) {
    .p-stayAccess__header {
        display: block;
    }
}

.p-stayAccess__address {
    font-size: var(--wan-f-size-md);
    color: var(--wan-color-text);
    display: flex;
    align-items: center;
    gap: var(--wan-s-2);
    margin: 0;
}
@media screen and (max-width: 768px) {
    .p-stayAccess__address {
        gap: 0 !important;
        margin-bottom: var(--wan-s-3) !important;
    }
}

/* マップピンなどのアイコンを入れる場合の予約領域 */
.p-stayAccess__addressIcon {
    color: var(--wan-color-brand);
}

.p-stayAccess__mapLink {
    flex-shrink: 0;
}


/* ==========================================
   2. Googleマップ埋め込みエリア
   ========================================== */
.p-stayAccess__mapEmbed {
    width: 100%;
    aspect-ratio: 16 / 9; /* 美しいワイド比率を維持 */
    margin-bottom: var(--wan-s-6);
    border-radius: var(--wan-r-md);
    overflow: hidden;
    background-color: var(--wan-color-bg-light); /* 読み込み前のプレースホルダー色 */
    border: 1px solid var(--wan-color-border-light);
}

.p-stayAccess__mapEmbed iframe {
    width: 100%;
    height: 100%;
    border: none;
    display: block;
}


/* ==========================================
   3. 交通手段詳細リスト (dl/dt/dd)
   ========================================== */
.p-stayAccess__list {
    border-top: 1px solid var(--wan-color-border-light);
    margin: 0;
    padding: 0;
}

/* 各交通手段の行 (車、電車、バスなど) */
.p-stayAccess__item {
    display: flex;
    flex-direction: column; /* スマホでは縦並び */
    gap: var(--wan-s-2);
    padding: var(--wan-s-4) 0;
    border-bottom: 1px solid var(--wan-color-border-light);
}
@media screen and (min-width: 768px) {
    .p-stayAccess__item {
        flex-direction: row; /* PCでは横並び */
        gap: var(--wan-s-6);
    }
}

/* ラベル (車でのアクセス 等) */
.p-stayAccess__label {
    font-size: var(--wan-f-size-sm);
    font-weight: var(--wan-f-weight-bold);
    color: var(--wan-color-brand);
    margin: 0;
    flex-shrink: 0;
}
@media screen and (min-width: 768px) {
    .p-stayAccess__label {
        width: 160px; /* PCでのラベル幅を固定して表のように見せる */
    }
}

/* 詳細テキスト (dd) */
.p-stayAccess__description {
    margin: 0;
    color: var(--wan-color-text);
    line-height: var(--wan-f-lh-relaxed);
}

.p-stayAccess__description .u-text-sm {
    font-size: var(--wan-f-size-xs);
}