/* ===== ISA: 校舎案内 ===== */
/* 共通ヘッダー */
.isa-recohead {
    display:flex; align-items:center; gap:10px;
    padding:14px 16px; border-radius:4px;
}
.isa-recohead__icon { width:28px; height:28px; object-fit:contain; }
.isa-recohead__title { font-size:clamp(18px,2.4vw,24px); font-weight:800; letter-spacing:.02em; }

/* 校舎案内は「related」スタイルを流用 */
.isa-recohead-related {
    background:#fff;
    color:#232a31;
    border-bottom:2px solid rgba(0,0,0,.25);
    padding-bottom:10px;
}


.isa-campus{
    font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans","ヒラギノ角ゴ ProN W3",
    "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3",Meiryo,sans-serif;
    color:#10344a;
}

.isa-campus__list{
    margin-top: 24px;
    max-width: 980px;          /* 好きな上限幅に */
    width: 100%;
    margin-inline: auto;       /* 中央配置 */
    padding-inline: clamp(16px, 5vw, 90px); /* SPで過剰な左右90pxを抑制 */
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 42px;
    text-align: left;          /* 親が center でも左寄せ維持 */
}

.isa-campus__row{
    display:flex; align-items:flex-start; gap:40px;
    text-decoration:none; color:inherit;
    padding:8px 6px; border-radius:8px;
    transition:background .12s ease, box-shadow .12s ease;
}
.isa-campus__row:hover{ background:#f7fbff; box-shadow:0 6px 18px rgba(0,0,0,.06); }

.isa-campus__thumb{
    width:215px; max-width:42vw; aspect-ratio:16/9;
    background:#eee; overflow:hidden; flex:0 0 auto;
}
.isa-campus__img{ max-width: 22px height:100%; object-fit:cover; display:block; }
.isa-campus__ph{ display:block; width:100%; height:100%; background:#e6e6e6; }

.isa-campus__body{ flex:1 1 auto; min-width:0; }
.isa-campus__headline{ display:flex; align-items:center; gap:14px; }
.isa-campus__icon{ width:28px; height:28px; flex:0 0 auto; }
.isa-campus__title{ margin:0; font-size:20px; line-height:1.5; font-weight:600; color:#137bc8; max-width: 196px; }

.isa-campus__underline{ margin:12px 0 14px; height:2px; background:#137bc8; opacity:.25; }


@media (max-width:900px){
    .isa-campus__thumb{ width:320px; }
    .isa-campus__title{ font-size:24px; }
}
@media (max-width:640px){
    .isa-campus__row{ flex-direction:column; gap:16px; }
    .isa-campus__thumb{ width:100%; }
    .isa-campus__title{ font-size:20px; }
}

/* blocks/isa-campus-list/campus-list.css などに追加 */
.isa-campus__iconimg,
.isa-campus__icon{
    max-width: 22px;
    flex: 0 0 auto;
}

/* 画像が縦横比ズレても見栄え良く */
.isa-campus__iconimg{
    object-fit: cover;
}