
:root{--ink:#10253F;--blue:#254BA0;--blue2:#3A5488;--blue-pale:#C3D2EC;--blue-bg:#E9EEF6;
--up:#3C7268;--down:#A34A44;--warn:#A17A35;--warn-bg:#FBF2E4;
--line:#cccccc;--line2:#e6e6e6;--grey:#666666;--grey2:#999999;--band:#f5f5f5}
*{box-sizing:border-box}
body{margin:0;background:#fff;color:#000;font-family:"Yu Gothic Medium","游ゴシック Medium",YuGothic,"游ゴシック体","Yu Gothic",sans-serif;
font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
a{color:var(--blue)}
.material-symbols-outlined{font-variation-settings:'opsz' 24;vertical-align:middle}
/* 既存の /ph/device/（DEVPG v1）の実CSSを写す（2026-09-07 実測） */
.subhead{background:linear-gradient(90deg,#0D2A74,#163A96);color:#fff;padding:8px 0}
.subhead .in{max-width:1240px;margin:0 auto;padding:0 20px;display:flex;
  align-items:baseline;gap:12px;flex-wrap:wrap}
.subhead h1{font-size:14px;font-weight:700;margin:0;color:#fff}
.subhead .meta{margin-left:auto;font-size:12px;opacity:.92}
.crumb{font-size:11.5px;color:var(--grey);margin-bottom:12px;padding-top:12px}
.crumb a{color:var(--grey);text-decoration:none}.crumb a:hover{color:var(--blue)}
.hero{padding-top:0}
.hero+.wrap .fxbar{margin-top:14px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.kpi{border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:10px;
  padding:10px 14px;background:#fff}
/* 併記の1行ぶんをあらかじめ確保して、ON/OFFで高さが動かないようにする */

.kpi .lbl{font-size:11.5px;color:var(--grey);margin-bottom:2px;display:flex;align-items:center;gap:5px}
.kpi .lbl .material-symbols-outlined{font-size:15px;color:var(--blue)}
.kpi .val{font-size:21px;font-weight:700;color:var(--ink);line-height:1.2;letter-spacing:-.02em}
.kpi .val .u{font-size:12px;font-weight:500;margin-left:2px}
.kpi .dlt{font-size:11px;color:var(--grey);margin-top:2px;height:36px;overflow:hidden}
section{padding:30px 0;border-bottom:1px solid var(--line2)}
h2{font-size:16px;margin:0 0 4px;color:var(--ink);font-weight:700;display:flex;align-items:center;gap:7px}
h2 .material-symbols-outlined{font-size:21px;color:var(--blue)}
h3{font-size:14px;margin:20px 0 6px;color:var(--ink)}
.note{font-size:12px;color:var(--grey);margin:0 0 14px;max-width:78ch}
table{width:100%;border-collapse:collapse;font-size:13px}
th,td{padding:9px 10px;border-bottom:1px solid var(--line2);text-align:right;white-space:nowrap}
th{font-size:11px;color:var(--blue2);font-weight:500;border-bottom:2px solid var(--blue-pale);background:#fff}
td.l,th.l{text-align:left;white-space:normal}
/* 併記の1行ぶんを行の高さにあらかじめ含める（ON/OFFで表が動かないように） */
tbody tr{height:61px}
tbody td{padding-top:6px;padding-bottom:6px}
td[data-fx]{vertical-align:middle}
.sub2{line-height:15px;height:15px}
tbody tr:hover{background:var(--blue-bg)}
.num{font-variant-numeric:tabular-nums}
.up{color:var(--up);font-weight:700}.down{color:var(--down);font-weight:700}.flat{color:var(--grey)}
.chip{display:inline-block;font-size:11px;color:var(--blue2);background:var(--blue-bg);
border:1px solid var(--blue-pale);padding:1px 7px;margin-left:6px}
.chip.k{color:var(--grey);background:#fff;border-color:var(--line2)}
.scroll{max-height:460px;overflow:auto;border:1px solid var(--line2)}
.facts{display:flex;gap:1px;background:var(--blue-pale);margin-bottom:14px;flex-wrap:wrap;border:1px solid var(--blue-pale)}
.f1{background:#fff;padding:10px 15px;flex:1 1 140px}
.f1 .k{font-size:11px;color:var(--grey)}
.f1 .v{font-size:18px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.f1 .s{font-size:11px;color:var(--grey);font-weight:500}
.cta{border:1px solid var(--blue-pale);background:var(--blue-bg);padding:16px 18px;margin-top:22px}
.cta h3{margin:0 0 4px;font-size:14px;color:var(--ink);display:flex;align-items:center;gap:6px}
.cta p{margin:0 0 10px;font-size:12px;color:var(--grey);line-height:1.75}
.ctagrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ctacard{background:#fff;border:1px solid var(--blue-pale);padding:14px 16px;display:flex;flex-direction:column}
.ctacard .kw{font-size:12px;color:var(--ink);margin:6px 0 10px;line-height:1.9;flex:1}
.ctacard .kw b{background:var(--blue-bg);border:1px solid var(--blue-pale);padding:1px 7px;
font-weight:500;display:inline-block;margin:0 4px 4px 0;font-size:11px}
.ctacard a{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:700;color:#fff;
background:var(--blue);border:1px solid var(--blue);padding:7px 14px;text-decoration:none;align-self:flex-start}
.ctacard a:hover{background:var(--ink);border-color:var(--ink)}
.xls{display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:5px 12px;
border:1px solid var(--line);background:#fff;color:var(--grey2);cursor:not-allowed;white-space:nowrap}
.xls .soon{font-size:10px;border:1px solid var(--line2);background:var(--band);padding:0 5px;color:var(--grey)}
.h2row{display:flex;align-items:center;gap:12px;margin-bottom:4px}
.h2row h2{margin:0}.h2row .xls{margin-left:auto}
.lgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1px;background:var(--line2);border:1px solid var(--line2)}
.lcard{background:#fff;padding:11px 14px;text-decoration:none;display:block}
.lcard:hover{background:var(--blue-bg)}
.lcard .t{font-size:13px;color:var(--ink);font-weight:700}
.lcard .m{font-size:11px;color:var(--grey);font-variant-numeric:tabular-nums}
.foot{padding:22px 0 44px;font-size:11px;color:var(--grey);line-height:1.9}
.foot b{color:var(--ink)}
.pill{display:inline-block;border:1px solid var(--blue-pale);background:var(--blue-bg);
color:var(--blue2);padding:2px 8px;font-size:11px;margin-right:6px}
.legend{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;color:var(--grey);
border:1px solid var(--line2);background:var(--band);padding:8px 12px;margin-bottom:14px}
.legend b{color:var(--ink)}
.fxbar{border:1px solid var(--blue-pale);background:#fff;padding:11px 14px;margin:14px 0 0;
  display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;border-radius:10px;
  height:96px;overflow:hidden}
.fxsw{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--ink);cursor:pointer;
  font-weight:700;white-space:nowrap}
.fxsw input{width:16px;height:16px;accent-color:var(--blue);cursor:pointer;margin:0}
.fxnote{font-size:11px;color:var(--grey);line-height:1.75;flex:1;min-width:280px}
@media(max-width:900px){.fxbar{height:auto;overflow:visible}}
.fxnote b{color:var(--ink)}
.fxon{background:var(--warn-bg);border-color:var(--warn)}
.sub2{display:block;font-size:11px;color:var(--warn);font-weight:700;margin-top:1px}
/* 併記が何の値かを列見出しで示す。ONのときだけ出す */
.fxh{display:none;font-size:10px;color:var(--warn);font-weight:700}
.fxon-page .fxh{display:block}
.sub2.up{color:var(--up)}.sub2.down{color:var(--down)}.sub2.flat{color:var(--warn)}
@media(max-width:1100px){.kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:860px){.kpis{grid-template-columns:repeat(2,1fr)}.ctagrid{grid-template-columns:1fr}}
