/* 教室詳細：スライダー画像が1〜2枚のときの並べ表示 */
.school_detail .school_photos{display:flex;justify-content:center;max-width:1000px;margin:17px auto 0;}
.school_detail .school_photos li{width:50%;padding:0 5px;box-sizing:border-box;}
.school_detail .school_photos_1 li{width:670px;max-width:100%;}
/* 写真の縦横比をスライダー画像（670×400）にそろえて切り抜く */
.school_detail .school_photos li span{position:relative;display:block;padding-top:59.7%;overflow:hidden;}
.school_detail .school_photos img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;}

/* 教室カード・教室一覧の都道府県見出し */
.school_pref_ttl{position:relative;text-align:center;font-size:24px;letter-spacing:.2em;color:#0071bc;line-height:1.4;}
.school_pref_ttl::after{content:'';display:block;width:48px;height:2px;margin:10px auto 0;background:#0071bc;}
.school_cards .school_pref_ttl{margin:0 0 66px;}
.school_cards .card-grid__container + .school_pref_ttl{margin-top:70px;}
.school_list .school_pref_ttl{margin:0 0 30px;}
/* 都道府県ごとのカード：教室が少ない県でもカードが横に伸びないよう幅をそろえて中央寄せ */
.school_cards .card-grid__container{display:flex;flex-wrap:wrap;justify-content:center;gap:56px 16px;}
.school_cards .card-grid__item{width:calc((100% - 32px) / 3);}
.school_list .school_box_out + .school_pref_anchor + .school_pref_ttl{margin-top:50px;}

/* 教室一覧の都道府県スイッチ */
.school_pref_switch{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:0 0 40px;}
.school_pref_switch li{width:180px;}
.school_pref_switch a{display:block;padding:12px 0;border:1px solid #0071bc;border-radius:30px;background:#fff;color:#0071bc;text-align:center;font-size:18px;letter-spacing:.15em;text-decoration:none;transition:background .2s,color .2s;}
.school_pref_switch a:hover{background:#0071bc;color:#fff;}
/* 飛び先：固定メニュー（PC 90px）に見出しが隠れないよう少し上 */
.school_pref_anchor{display:block;position:relative;top:-110px;visibility:hidden;}

@media screen and (max-width:900px){
  .school_cards .card-grid__item{width:calc((100% - 16px) / 2);}
}
@media screen and (max-width:600px){
  .school_cards .card-grid__item{width:100%;}
}

@media screen and (max-width:768px){
  .school_pref_ttl{font-size:20px;}
  .school_cards .card-grid__container + .school_pref_ttl{margin-top:50px;}
  .school_list .school_box_out + .school_pref_anchor + .school_pref_ttl{margin-top:30px;}
  .school_pref_switch{gap:8px;margin-bottom:24px;}
  .school_pref_switch li{width:calc(50% - 4px);}
  .school_pref_switch a{padding:10px 0;font-size:16px;}
  .school_pref_anchor{top:-80px;}
  .school_detail .school_photos{display:block;}
  .school_detail .school_photos li,
  .school_detail .school_photos_1 li{width:auto;padding:0;}
  .school_detail .school_photos li + li{margin-top:8px;}
}
