/* 訪問エリアと分院紹介の表示契約。図の余白・凡例・写真・連絡先を一組として扱います。 */
/* 公開時も限定プレビューと同じ外枠・フッター折返しを維持します。 */
body.bnka-live{margin:0;background:#fff;color:#173c48}
body.bnka-live .bnk-footer-nav a{white-space:normal!important;overflow-wrap:anywhere}
/* 資格は段落の余白を挟まず、読みやすい通常の行送りで連続表示します。 */
.ba-page .ba-card-dialog .ba-card-qualifications{white-space:normal;line-height:1.5}
/* 携帯では曜日を行、午前・午後を列へ転置し、横スクロールをなくします。 */
.ba-page .ba-schedule-mobile{display:none}
@media(max-width:767px){
 .ba-page .ba-schedule-desktop{display:none}
 .ba-page .ba-schedule-mobile{display:block;overflow:visible}
 .ba-page .ba-schedule-mobile .ba-schedule-table{min-width:0;width:100%;table-layout:fixed}
 .ba-page .ba-schedule-mobile th:first-child{width:52px;white-space:nowrap}
 .ba-page .ba-schedule-mobile th,.ba-page .ba-schedule-mobile td{padding:9px 5px}
 .ba-page .ba-schedule-mobile .ba-doctor-trigger,.ba-page .ba-schedule-mobile .ba-doctor-name{font-size:15px;padding:6px 2px;letter-spacing:0;width:100%;max-width:10em;min-height:44px;white-space:nowrap}
 .ba-page .ba-schedule-mobile .ba-doctor-trigger+.ba-doctor-trigger{margin-top:5px}
 .ba-page .ba-schedule-mobile .ba-schedule-empty{font-size:13px;white-space:normal}
 .ba-page .ba-schedule-scroll-hint{display:none}
}
.ba-page .ba-locations .ba-location-visual{aspect-ratio:3/2;margin:22px 0 24px!important;border:0;border-radius:8px;overflow:hidden;background:#f3f6f7}
.ba-page .ba-locations .ba-map-zoom{height:100%;width:100%;position:relative;display:block;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.ba-page .ba-locations .ba-map-zoom>img{display:block;width:100%;height:100%;object-fit:contain;transform:none}
/* 採用図の上下余白のみを補正。北矢印・区域・院ピン・凡例はすべて残します。別画像には適用しません。 */
.ba-page #ba-area .is-coverage-reference .ba-map-zoom>img{position:absolute;top:-7.5%;left:0;width:100%;height:112.5%;max-width:none;object-fit:fill;transform:none;mix-blend-mode:multiply}
.ba-page .ba-locations .ba-access-map .ba-map-zoom{padding:1.8%;background:#f3f6f7}
/* 既存画像の外周だけを表示範囲から外し、案内内容・色は変更しません。 */
.ba-page .ba-locations .is-route-reference .ba-map-zoom>img{clip-path:inset(1.2% round 8px);transform:scale(1.025)}
.ba-page .ba-locations .ba-regions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:16px 30px;margin:0 0 20px!important}
.ba-page .ba-regions>li{display:flex;align-items:flex-start;gap:10px;min-width:0}
.ba-page .ba-regions h3{font-size:23px;line-height:1.5;color:var(--ba-area-full);margin:0 0 4px;font-weight:700}
.ba-page .ba-regions .is-partial h3{padding:0;border-radius:0;background:transparent;color:var(--ba-area-full)}
.ba-page .ba-regions p{font-size:15px;line-height:1.6;color:var(--ba-ink)}
.ba-region-pin{display:block;flex:none;width:25px;height:25px;margin-top:5px;background:var(--ba-area-full);mask:url('icons/pin.svg') center/contain no-repeat}
.ba-regions .is-partial .ba-region-pin{background:var(--ba-area-partial)}
.ba-page .ba-locations .ba-access-grid{display:grid;grid-template-columns:48% minmax(0,1fr);align-items:stretch;gap:20px}
.ba-page .ba-locations .ba-access-grid.is-single{grid-template-columns:1fr}
.ba-page .ba-locations .ba-access-photo-frame{width:100%;border-radius:6px;overflow:hidden;align-self:stretch}
.ba-page .ba-locations .ba-access-photo{display:block;width:100%;height:100%;aspect-ratio:3/2;object-fit:cover;object-position:50% 50%;border-radius:0}
/* 連絡先を横ラベルに統一し、写真と情報の上下端を同じ行で揃えます。 */
.ba-page .ba-locations .ba-access-grid>div{display:flex;flex-direction:column;justify-content:space-between;min-width:0}
.ba-page .ba-locations .ba-access-grid address{padding-bottom:0}
.ba-page .ba-locations .ba-contact-list{font-size:17px;display:grid;gap:5px;margin:10px 0 0!important}
.ba-page .ba-locations .ba-contact-list>div{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:baseline;gap:6px;padding:0;margin:0}
.ba-page .ba-locations .ba-contact-list>div:not(.ba-contact-phone){display:grid;padding:0}
.ba-page .ba-locations .ba-contact-list a{padding:0}
.ba-page .ba-locations .ba-contact-list dt{padding:0;font-size:12px;line-height:1.6}
.ba-page .ba-locations .ba-contact-phone a{font-size:clamp(25px,2.3vw,32px);white-space:nowrap}
.ba-page .ba-locations .ba-contact-list a[href^="mailto:"]{overflow-wrap:anywhere}
@media(max-width:1200px){
 .ba-page .ba-locations .ba-access-grid{grid-template-columns:1fr;gap:18px}
 .ba-page .ba-locations .ba-access-photo{aspect-ratio:16/9;height:auto}
 .ba-page .ba-locations .ba-contact-list>div:not(.ba-contact-phone){display:grid;grid-template-columns:42px minmax(0,1fr);gap:8px}
}
@media(max-width:767px){
 .ba-page .ba-locations .ba-location-visual{margin:18px 0 22px!important}
 .ba-page .ba-locations .ba-regions{gap:16px 20px}
 .ba-page .ba-regions h3{font-size:21px}
 .ba-page .ba-locations .ba-contact-phone a{font-size:30px}
}
@media(prefers-reduced-motion:reduce){.ba-page .ba-locations *{transition:none!important}}

/* あだち院：一部対応の地域名も地図の淡色と揃えます。背景色は付けません。 */
body.bnka-live .ba-page .ba-regions .is-partial h3,body.bnka-preview .ba-page .ba-regions .is-partial h3{color:var(--ba-area-partial);background:transparent}
