@charset "UTF-8";
/* 100点BBS リニューアル2 回1（2026-10-22）：全ページ共通のヘッダー・メニュー・パンくず・フッター（中身の見た目には効かない書き方） */
.r-head,.r-foot,.r-crumb2{--brand:#dc2626;--brand-d:#b91c1c;--brand-l:#fef2f2;--ink:#0f172a;--ink7:#334155;--ink5:#64748b;--ink3:#cbd5e1;--ink2:#e2e8f0;--ink1:#f1f5f9;--bg:#f8fafc;font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;line-height:1.6;text-align:left}
.r-head,.r-foot,.r-crumb2{font-size:16px}
.r-head *,.r-foot *,.r-crumb2 *{box-sizing:border-box}
.r-head .r-nav a,.r-head .r-menu{line-height:1.3}
/* /high/ など独立のページ（body に 8px の余白がある）でも端まで */
body.hs:not(.hs-sp):not(.hs-pc)>.r-head{margin:-8px -8px 0!important;width:auto!important}
body.hs:not(.hs-sp):not(.hs-pc)>.r-foot{margin:24px -8px -8px!important;width:auto!important}
.r-head .r-wrap,.r-foot .r-wrap,.r-crumb2 .r-wrap{max-width:1200px;margin:0 auto;padding:0 16px}
.r-head ul,.r-foot ul,.r-crumb2 ol{list-style:none;margin:0;padding:0}
.r-head li,.r-foot li,.r-crumb2 li{list-style:none;margin:0;padding:0;background:none;border:0;float:none;width:auto}
.r-head li::before,.r-foot li::before{content:none}
/* ヘッダー */
.r-head{background:#fff;border-bottom:1px solid var(--ink2);position:sticky;top:0;z-index:50;width:100%;margin:0;height:auto;color:var(--ink);text-shadow:none;box-shadow:none}
/* 古いスマホの CSS（header に高さ44px・紺の地・影）に負けない */
.rc-sp .r-head,body.hs .r-head{height:auto!important;position:sticky!important;margin:0!important;background:#fff!important;text-shadow:none!important;box-shadow:none!important;color:var(--ink)!important}
.r-head-in{display:flex;align-items:center;gap:16px;min-height:60px}
.r-head .r-logo{display:block;flex:none;line-height:0;margin:0;padding:0}.r-head .r-logo img{width:auto!important;height:28px!important;max-width:none!important;border:0}
.r-nav{flex:1;min-width:0}.r-nav ul{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}.r-nav ul::-webkit-scrollbar{display:none}
.r-head .r-nav a{display:block;white-space:nowrap;padding:10px 12px;border-radius:8px;color:var(--ink7);text-decoration:none;font-size:14px;font-weight:bold;background:none}
.r-head .r-nav a:hover{background:var(--brand-l);color:var(--brand)}
.r-head .r-nav a.r-cur{color:var(--brand);background:var(--brand-l)}
.r-hsearch{flex:none;display:flex;gap:6px;margin:0;width:240px}
@media (max-width:1180px){.r-head .r-nav a{padding:10px 8px;font-size:13px}.r-hsearch{width:200px}}
.r-hsearch input{flex:1;min-width:0;font-size:14px;padding:8px 10px;border:1px solid var(--ink3);border-radius:8px;background:var(--bg);height:auto;margin:0}
.r-hsearch input:focus{outline:2px solid var(--brand);background:#fff}
.r-hsearch button{flex:none;background:var(--brand);color:#fff;border:0;border-radius:8px;padding:0 14px;font-size:14px;font-weight:bold;cursor:pointer;margin:0}
.r-hsearch button:hover{background:var(--brand-d)}
.r-head .r-menu{display:none}
/* 分野の帯（大学の掲示板・高校・中学） */
.r-sub{border-top:1px solid var(--ink1);background:#fff}
.r-sub ul{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:8px 0}.r-sub ul::-webkit-scrollbar{display:none}
.r-head .r-sub a{display:inline-block;white-space:nowrap;padding:5px 12px;border:1px solid var(--ink2);border-radius:999px;background:var(--bg);color:var(--ink7);text-decoration:none;font-size:13px;line-height:1.4}
.r-head .r-sub a:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-l)}
/* パンくず */
.r-crumb2{background:transparent;font-size:13px;color:var(--ink5);padding:8px 0 0;margin:0 0 6px}
.r-crumb2 ol{display:flex;flex-wrap:wrap;gap:2px 0}
.r-crumb2 li{display:inline}
.r-crumb2 li+li::before{content:"＞";margin:0 6px;color:var(--ink3)}
.r-crumb2 a{color:var(--ink7);text-decoration:underline}
.r-crumb2 li[aria-current]{color:var(--ink5)}
/* フッター（高校のページの「footer を隠す」指定に負けない） */
.r-foot,body.hs .r-foot{display:block!important;background:#0f172a;color:#cbd5e1;padding:24px 0 30px;font-size:13px;margin:24px 0 0;width:100%;clear:both}
.r-foot ul{display:flex;flex-wrap:wrap;gap:4px 16px;margin:0 0 12px}
.r-foot a{color:#e2e8f0;display:inline-block;padding:6px 0;text-decoration:underline}
.r-foot .r-foot-h{margin:0 0 4px;font-weight:bold;color:#fff;font-size:14px}
.r-foot .r-foot-links{border-top:1px solid #334155;padding-top:10px}
.r-foot .r-copy{margin:0;color:#94a3b8}.r-foot .r-copy a{padding:0}
/* PC：古いページの枠 */
.rc-pc #wrap{margin-top:12px}
/* スマホ */
@media (max-width:640px){
 .r-head .r-wrap,.r-foot .r-wrap,.r-crumb2 .r-wrap{padding:0 12px}
 .r-head-in{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 8px;min-height:0;padding-top:8px}
 .r-head .r-logo{padding:2px 0 4px;min-width:0}.r-head .r-logo img{width:250px!important;height:auto!important;max-width:100%!important}
 .r-head .r-menu{display:block;align-self:center;padding:6px 12px;border:1px solid var(--ink3);border-radius:8px;color:var(--ink7);font-size:13px;font-weight:bold;text-decoration:none;background:#fff;position:static;width:auto;height:auto;margin:0}
 .r-nav{grid-column:1/3}.r-head .r-nav a{padding:10px 10px;font-size:13px}
 .r-hsearch{display:none}
 .r-sub ul{padding:6px 0 8px}
}
