/* 新レイアウトのページ用の見た目の指定（2026-10-13 に各ページの本文から移した）
   読み込みは inc/css.inc（対象ページだけ）。直したら読み込み側の ?ver= は自動で変わる（更新時刻を使用） */

/* ── 拡大教科書（小学校・中学校 共通） ── */
.kz{max-width:1000px;margin:0 auto;text-align:left;font-size:16px;line-height:1.8;color:#222}
.kz p{margin:0 0 1em}
.kz strong{font-size:inherit;font-weight:bold;color:#b52b27}
.kz .kz-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px;padding:0;list-style:none}
.kz .kz-nav li{flex:1 1 170px;margin:0;padding:0}
.kz .kz-nav a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:8px 12px;border:2px solid #0c3c6c;border-radius:8px;background:#fff;color:#0c3c6c;font-size:16px;font-weight:bold;line-height:1.3;text-align:center;text-decoration:none;transition:background .15s,color .15s}
.kz .kz-nav a:hover,.kz .kz-nav a:focus{background:#0c3c6c;color:#fff}
.kz-sec{margin:0 0 56px;scroll-margin-top:110px}
.kz-sub{margin:0 0 40px;scroll-margin-top:110px}
.kz .kz-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:64px;min-height:40px;padding:6px 16px;border-radius:20px;color:#fff;font-size:14px;font-weight:bold;line-height:1.2;text-decoration:none;transition:opacity .15s}
.kz .kz-btn:hover,.kz .kz-btn:focus{opacity:.8;color:#fff}
.kz .kz-pdf{background:#c9302c}
.kz .kz-link{background:#0c3c6c}
.kk-size{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 28px;padding:0;list-style:none}
.kk-size li{margin:0;padding:16px;border:1px solid #d5dbe3;border-radius:8px;background:#fff}
.kk-size h3{font-weight:bold;margin:0 0 10px;padding:0 0 8px;border-bottom:2px solid #0c3c6c;font-size:17px;color:#0c3c6c}
.kk-size dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:10px 12px;align-items:center}
.kk-size dt{font-weight:bold;white-space:nowrap}
.kk-size dd{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.kk-pt{font-weight:bold}
.kk-steps{margin:0 0 20px;padding:0;list-style:none;counter-reset:kk;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.kk-steps li{counter-increment:kk;margin:0;padding:14px 16px 14px 56px;position:relative;background:#f5f7fa;border-radius:8px;line-height:1.6}
.kk-steps li::before{content:counter(kk);position:absolute;left:14px;top:14px;width:30px;height:30px;border-radius:50%;background:#0c3c6c;color:#fff;font-weight:bold;display:flex;align-items:center;justify-content:center}
.kk-note{margin:0 0 20px;padding:12px 16px;border-left:4px solid #e0a100;background:#fff8e1;font-size:15px}
.kk-guide{display:flex;align-items:center;gap:24px;margin:0 0 40px;padding:22px 24px;border:2px solid #0c3c6c;border-radius:10px;background:#eef4fa}
.kk-guide-txt{flex:1 1 auto}
.kz .kk-guide-txt p{margin:0;font-size:15px;line-height:1.7}
.kz .kk-guide-txt .kk-guide-ttl{margin:0 0 4px;font-size:18px;font-weight:bold;color:#0c3c6c}
.kz .kk-guide-btn{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:280px;min-height:76px;padding:12px 28px;border-radius:10px;background:#0c3c6c;color:#fff;font-size:19px;font-weight:bold;line-height:1.3;text-align:center;text-decoration:none;box-shadow:0 3px 0 #06223f;transition:transform .1s,box-shadow .1s,background .15s}
.kz .kk-guide-btn span{font-size:13px;font-weight:normal}
.kz .kk-guide-btn:hover,.kz .kk-guide-btn:focus{background:#14508c;color:#fff;transform:translateY(2px);box-shadow:0 1px 0 #06223f}
.kk-more{margin:0}.kk-h3{font-weight:bold;margin:0 0 12px;padding-left:12px;border-left:6px solid #0c3c6c;font-size:20px;line-height:1.4}
.kk-cap{margin:0 0 10px;font-size:14px;color:#444}
.kk-table{width:100%;border-collapse:collapse;border-top:2px solid #0c3c6c;font-size:15px;line-height:1.5}
.kk-table th,.kk-table td{padding:12px 10px;border-bottom:1px solid #d5dbe3;text-align:left;vertical-align:middle}
.kk-table thead th{background:#0c3c6c;color:#fff;font-size:14px;white-space:nowrap}
.kk-table tbody tr:nth-child(odd):not(.kk-grp){background:#f5f7fa}
.kk-table .kk-grp th{padding:10px 12px;background:#dfe9f3;border-top:2px solid #0c3c6c;border-bottom:1px solid #b9c7d6}
.kk-grp-in{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px}
.kk-grp-t{font-size:17px;font-weight:bold;color:#0c3c6c}
.kk-table .kk-no{white-space:nowrap;font-weight:bold}
.kk-table .kk-ttl{font-weight:bold}
.kk-vols{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;list-style:none}
.kk-vols li{margin:0;white-space:nowrap}
.kk-table .kk-c{white-space:nowrap}
@media (max-width:767px){
	.kz .kz-nav li{flex:1 1 45%}
	.kz-sec{margin-bottom:40px;scroll-margin-top:80px}
	.kz-sub{scroll-margin-top:80px}
	.kk-size,.kk-steps{grid-template-columns:1fr}
	.kk-guide{flex-direction:column;align-items:stretch;gap:14px;padding:18px 16px}
	.kz .kk-guide-btn{min-width:0}
	.kz .kz-btn{min-height:44px}
	.kk-table,.kk-table tbody,.kk-table tr,.kk-table td,.kk-table .kk-grp th{display:block;width:auto}
	.kk-table tr.kk-grp{padding:0}
	.kk-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
	.kk-table tr{padding:12px 10px;border-bottom:1px solid #d5dbe3}
	.kk-table td{padding:2px 0;border:0}
	.kk-table td[data-l]::before{content:attr(data-l) "：";font-size:13px;color:#555}
	.kk-table .kk-ttl{font-size:16px;padding-bottom:4px}
	.kk-table .kk-ttl::before{content:none}
	.kk-table .kk-btn{padding-top:8px}
	.kk-table .kk-btn::before{content:none}
}
/* 中学校は教科が2つなので、文字の大きさの欄を2列に（スマホは共通の1列のまま） */
@media (min-width:768px){.kk-size.kk-size-2{grid-template-columns:repeat(2,1fr)}}

/* ── 訂正・変更のお知らせ ── */
.rv-head{max-width:1200px;margin:0 auto}
.rv{max-width:1000px;margin:0 auto;text-align:left}
.rv *{box-sizing:border-box}
.rv-lead{margin:0 0 18px;line-height:1.9}
.rv-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 30px}
.rv-nav a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:8px;border:2px solid #0b3a6b;border-radius:8px;background:#fff;color:#0b3a6b;font-weight:700;font-size:17px;text-decoration:none}
.rv-nav a:hover{background:#0b3a6b;color:#fff}
.rv-sec{margin:0 0 40px;scroll-margin-top:90px}
.rv-sec>h2{margin-bottom:18px}
.rv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rv-grid.rv-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.rv-card{border:1px solid #d8dee6;border-radius:10px;background:#fff;overflow:hidden}
.rv-card>h3{margin:0;padding:11px 16px;background:#0b3a6b;color:#fff;font-size:18px;font-weight:700;line-height:1.4}
.rv-rows{margin:0;padding:0 16px;list-style:none}
.rv-rows>li{padding:14px 0;border-top:1px solid #e3e8ee}
.rv-rows>li:first-child{border-top:0}
.rv-kind{display:block;margin:0 0 8px;font-size:16px;font-weight:700;color:#0b3a6b}
.rv-item{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}
.rv-item:first-of-type{margin-top:0}
.rv-what{font-size:14px;line-height:1.5}
.rv-btn{flex:none;display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:999px;background:#d0312d;color:#fff !important;font-size:14px;font-weight:700;line-height:1.3;text-decoration:none !important;white-space:nowrap}
.rv-btn small{font-size:12px;font-weight:400;opacity:.9}
.rv-btn:hover{background:#a82420}
.rv-none{display:inline-block;padding:5px 12px;border-radius:999px;background:#f1f3f6;color:#5b6673;font-size:13px}
@media (max-width:1023px){.rv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.rv-grid,.rv-grid.rv-2{grid-template-columns:minmax(0,1fr)}.rv-nav a{font-size:16px}}
