
.fnc-lp{--c-main:#155e6b;--c-deep:#0d3740;--c-accent:#8fc3c6;--c-paper:#f4f7f6;--c-ink:#1d2b2c;--c-sub:#657173;--c-line:#d5e0de;
 color:var(--c-ink);background:var(--c-paper);font-family:"Noto Sans JP",sans-serif;line-height:1.95;font-size:15.5px;letter-spacing:.03em;
 --tommy-header-bg:#0d3740;--tommy-header-color:#f4f7f6;--tommy-header-border:rgba(244,247,246,.22);--tommy-header-hover:#8fc3c6;
 --tommy-cta-bg:#0d3740;--tommy-cta-color:#f4f7f6;--tommy-cta-accent:#8fc3c6;--tommy-cta-btn-bg:#8fc3c6;--tommy-cta-btn-color:#0d3740;
 --tommy-cta-buttons-primary-bg:#155e6b;--tommy-cta-buttons-primary-color:#fff;--tommy-cta-buttons-secondary-bg:#fff;--tommy-cta-buttons-secondary-color:#155e6b;--tommy-cta-buttons-secondary-border:#155e6b;
 --tommy-footer-bg:#0d3740;--tommy-footer-color:#e0eae9;--tommy-footer-border:rgba(224,234,233,.2);--tommy-footer-link:#9fd0d3;
 --tommy-market-accent:#155e6b;--tommy-market-head-bg:#0d3740;--tommy-market-head-color:#fff;--tommy-market-border:#d5e0de;--tommy-market-link:#155e6b}
.fnc-lp *{box-sizing:border-box}
.fnc-lp p{margin:0 0 1.35em}
.fnc-lp h1,.fnc-lp h2,.fnc-lp h3{font-family:"Noto Serif JP",serif;font-weight:300;letter-spacing:.05em;margin:0}
.fnc-eb{font-family:"Plus Jakarta Sans",sans-serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--c-main);margin:0 0 18px;font-weight:600}
.fnc-sec{padding:clamp(60px,8vw,116px) max(24px,calc((100% - 1030px)/2))}
.fnc-lp > .tommy-cta-buttons{padding:44px max(24px,calc((100% - 1030px)/2));background:var(--c-paper)}
@media(max-width:860px){.fnc-lp > .tommy-cta-buttons{padding:32px 18px}}

/* hero : 左右2カラム */
.fnc-hero{background:#fff;display:grid;grid-template-columns:1.3fr .9fr;gap:clamp(28px,5vw,72px);align-items:center;border-bottom:1px solid var(--c-line)}
.fnc-hero h1{font-size:clamp(21px,3.5vw,37px);line-height:1.36;letter-spacing:.03em}
.fnc-old{font-size:13px;color:var(--c-sub);margin:12px 0 0}
.fnc-hero .fnc-kana{font-family:"Plus Jakarta Sans",sans-serif;font-size:11.5px;letter-spacing:.24em;color:var(--c-sub);margin:8px 0 0}
.fnc-hero p.fnc-lead{margin:24px 0 0;max-width:34em;font-size:15.5px;color:#2c3a3b}
.fnc-hspec{border-left:1px solid var(--c-line);padding-left:clamp(18px,3vw,34px)}
.fnc-hspec dl{margin:0;display:grid;gap:15px}
.fnc-hspec dt{font-family:"Plus Jakarta Sans",sans-serif;font-size:10px;letter-spacing:.22em;color:var(--c-main);text-transform:uppercase}
.fnc-hspec dd{margin:3px 0 0;font-family:"Noto Serif JP",serif;font-weight:300;font-size:19px;line-height:1.5}
@media(max-width:860px){.fnc-hero{grid-template-columns:1fr;gap:30px}.fnc-hspec{border-left:0;border-top:1px solid var(--c-line);padding-left:0;padding-top:26px}.fnc-hspec dl{grid-template-columns:1fr 1fr;gap:14px 20px}}

.fnc-h2{font-size:clamp(21px,2.9vw,31px);line-height:1.5}
.fnc-lead2{font-size:clamp(16px,1.9vw,20px);line-height:2;margin:26px 0 0;max-width:44em;font-family:"Noto Serif JP",serif;font-weight:300}

/* sec1 : 2×2 カード */
.fnc-grid4{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2.4vw,26px);margin:clamp(36px,5vw,56px) 0 0}
.fnc-grid4 > div{background:#fff;border:1px solid var(--c-line);padding:clamp(22px,3vw,32px)}
.fnc-grid4 .fnc-t{font-family:"Plus Jakarta Sans",sans-serif;font-size:11.5px;letter-spacing:.22em;color:var(--c-main);margin-bottom:8px}
.fnc-grid4 h3{font-size:19px;margin-bottom:10px}
.fnc-grid4 p{font-size:14.5px;margin:0}
@media(max-width:620px){.fnc-grid4{grid-template-columns:1fr}}
.fnc-figs{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:clamp(34px,4.6vw,50px) 0 0;border-top:1px solid var(--c-line);padding-top:26px}
.fnc-figs dt{font-family:"Plus Jakarta Sans",sans-serif;font-size:10px;letter-spacing:.2em;color:var(--c-sub);text-transform:uppercase}
.fnc-figs dd{margin:6px 0 0;font-family:"Noto Serif JP",serif;font-weight:300;font-size:clamp(19px,2.4vw,26px);color:var(--c-main);line-height:1.4}
@media(max-width:620px){.fnc-figs{grid-template-columns:1fr 1fr;gap:16px}}

/* sec2 : 年表 */
.fnc-tlwrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(24px,4vw,60px);align-items:start}
.fnc-tl{margin:0;position:relative;padding-left:26px}
.fnc-tl:before{content:"";position:absolute;left:4px;top:8px;bottom:8px;width:1px;background:var(--c-line)}
.fnc-tl > li{list-style:none;position:relative;padding:0 0 28px}
.fnc-tl > li:last-child{padding-bottom:0}
.fnc-tl > li:before{content:"";position:absolute;left:-26px;top:10px;width:9px;height:9px;border-radius:50%;background:var(--c-main)}
.fnc-tl .fnc-ty{font-family:"Plus Jakarta Sans",sans-serif;font-size:12.5px;letter-spacing:.16em;color:var(--c-main);font-weight:600}
.fnc-tl .fnc-tt{font-family:"Noto Serif JP",serif;font-weight:300;font-size:18px;margin:4px 0 6px}
.fnc-tl p{margin:0;font-size:14.5px}
@media(max-width:860px){.fnc-tlwrap{grid-template-columns:1fr;gap:12px}}

/* sec3 : 濃色 dl左 + 本文右 */
.fnc-dark{background:var(--c-deep);color:#fff}
.fnc-dark .fnc-h2{color:#fff}
.fnc-dark .fnc-eb{color:var(--c-accent)}
.fnc-dwrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(26px,4vw,58px);margin:clamp(34px,4.6vw,52px) 0 0;align-items:start}
.fnc-dwrap dl{margin:0;border-top:1px solid rgba(255,255,255,.22)}
.fnc-dwrap dt{font-family:"Plus Jakarta Sans",sans-serif;font-size:10px;letter-spacing:.2em;color:var(--c-accent);text-transform:uppercase;padding-top:16px}
.fnc-dwrap dd{margin:4px 0 16px;font-size:14.5px;color:#fff;border-bottom:1px solid rgba(255,255,255,.14);padding-bottom:16px}
.fnc-dwrap dd:last-child{border-bottom:0}
.fnc-dwrap p{color:rgba(255,255,255,.85);font-size:15px}
@media(max-width:860px){.fnc-dwrap{grid-template-columns:1fr}}

/* sec4 : 3カラム罫線 */
.fnc-c3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,44px);margin:clamp(34px,4.6vw,52px) 0 0}
.fnc-c3 > div{border-top:2px solid var(--c-main);padding-top:20px}
.fnc-c3 h3{font-size:17.5px;color:var(--c-main);margin-bottom:10px}
.fnc-c3 p{font-size:14.5px;margin:0}
.fnc-c3 ul{margin:0;padding-left:1.1em;font-size:14.5px}
.fnc-c3 li{margin-bottom:6px}
@media(max-width:760px){.fnc-c3{grid-template-columns:1fr;gap:26px}}

.fnc-mk{background:#fff;border-top:1px solid var(--c-line)}
.fnc-mk .fnc-lead2{font-family:"Noto Sans JP",sans-serif;font-size:15px;line-height:1.95}
.fnc-mk table{width:100%}
