@import url("./jishushitsu.css");

.review-ribbon{padding:9px 20px;background:#fff1e9;color:#7d3219;border-bottom:1px solid #e9c2af;text-align:center;font-size:.76rem;font-weight:800;line-height:1.5}
.hero h1{max-width:11.8em}
.hero h1 .h1-intro,.hero h1 em{white-space:normal}
.school h2{white-space:pre-line}
.school-visual .story-photo{margin:0}
.school-visual .story-photo img{height:320px;object-fit:cover}
.table-scroll{margin-top:25px;border-top:1px solid var(--line);overflow-x:auto}
.table-scroll table{width:100%;border-collapse:collapse;font-size:.83rem;line-height:1.6}
.table-scroll th,.table-scroll td{padding:12px 11px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.table-scroll th{font-size:.74rem;color:var(--orange);white-space:nowrap}
.table-scroll td:first-child{font-weight:800}
.sources{padding:58px 0 34px;background:#faf8f5}
.sources h2{margin:8px 0 16px;font-size:1.55rem}
.sources ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}
.sources li{border-top:1px solid var(--line)}
.sources a{display:flex;justify-content:space-between;gap:15px;padding:10px 0;font-size:.83rem;font-weight:750;text-decoration:none}
.sources a span{color:var(--orange)}
.sources p{max-width:58em;margin-top:16px;color:var(--muted);font-size:.76rem}
.review-index{padding:85px 0 110px}
.review-index>h1{margin:15px 0 20px}
.review-index>p:not(.section-label){max-width:48em;color:var(--muted)}
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:50px}
.review-card{display:flex;flex-direction:column;gap:11px;min-height:210px;padding:26px;background:var(--sand);text-decoration:none;border-top:3px solid var(--orange)}
.review-card small{color:var(--orange);font-weight:800;letter-spacing:.12em}
.review-card b{font-size:1.2rem;line-height:1.4}
.review-card span{color:var(--muted);font-size:.81rem;line-height:1.7}
.review-card strong{margin-top:auto;font-size:.8rem;color:var(--orange)}
.review-note{margin-top:70px;padding:30px 35px;border:1px solid var(--line)}
.review-note h2{font-size:1.5rem}
.review-note ul{margin:15px 0 0;padding-left:1.2em;color:var(--muted);font-size:.9rem}
@media(max-width:900px){.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){
  .hero h1{font-size:clamp(1.95rem,8.6vw,2.8rem);max-width:none;overflow-wrap:anywhere}
  .hero h1 .h1-intro{font-size:.58em}
  .hero-index span{font-size:.69rem;line-height:1.3}
  .school-visual .story-photo img{height:225px}
  .table-scroll{overflow-x:visible;border-top:0}
  .table-scroll table,.table-scroll tbody,.table-scroll tr,.table-scroll td{display:block;width:100%}
  .table-scroll thead{display:none}
  .table-scroll tr{padding:8px 0;border-top:1px solid var(--line)}
  .table-scroll td{display:flex;gap:12px;padding:5px 0;border:0;font-size:.83rem}
  .table-scroll td:before{content:attr(data-label);flex:0 0 86px;color:var(--orange);font-size:.72rem;font-weight:800}
  .table-scroll td:first-child{font-weight:800}
  .sources ul{display:block}
  .review-index{padding:55px 0 70px}
  .review-grid{grid-template-columns:1fr;margin-top:30px}
  .review-card{min-height:0;padding:20px}
  .review-note{margin-top:45px;padding:22px}
}
@media print{
  .review-ribbon,.site-header nav,.contact,.related,.review-index{display:none!important}
  .hero{padding:0}.hero-image{display:none}.story{padding:20px 0}.story-photo{display:none}.school{color:#000;background:#fff;padding:15px 0}
  .school-grid{display:block}.school-visual{display:none}.visit{padding:15px 0}.visit-grid{gap:10px}
}
