@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@500;600&family=Plus+Jakarta+Sans:wght@500;600&display=swap');
.sgs-lp{--c-ink:#122428;--c-muted:#516a6e;--c-paper:#f9fdfd;--c-paper2:#ebf5f6;--c-tint:#daecee;--c-acc:#1f7d84;--c-acc-soft:#84c3c9;--c-dark:#102e31;--c-dark2:#0a2022;--c-line:#cbe2e4;
--tommy-header-bg:#102e31;--tommy-header-color:#e8f5f6;--tommy-header-accent:#84c3c9;
--tommy-cta-bg:#daecee;--tommy-cta-color:#122428;--tommy-cta-accent:#1f7d84;--tommy-cta-btn-bg:#1f7d84;--tommy-cta-btn-color:#fff;
--tommy-footer-bg:#0a2022;--tommy-footer-color:#a5c3c5;--tommy-footer-accent:#84c3c9;
--tommy-market-accent:#1f7d84;--tommy-market-line:#cbe2e4;--tommy-market-head-bg:#daecee;
font-family:'Noto Sans JP',sans-serif;color:var(--c-ink);background:var(--c-paper);line-height:1.9}
.sgs-lp h1,.sgs-lp h2,.sgs-lp h3{font-family:'Noto Serif JP',serif;font-weight:600;line-height:1.45}
.sgs-wrap{width:min(1060px,88vw);margin:0 auto}
.sgs-lp .eyebrow{font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;letter-spacing:.18em;color:var(--c-acc);margin:0 0 14px;font-weight:600}
.sgs-sec{padding:96px 0}
.js-reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}
.js-reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js-reveal{opacity:1;transform:none;transition:none}}
.sgs-hero{background:var(--c-paper2);padding:104px 0 90px}
.sgs-hero__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:52px;align-items:start}
.sgs-hero h1{font-size:clamp(24px,3.4vw,37px);letter-spacing:.06em;margin:0 0 22px}
.sgs-hero__copy{font-family:'Noto Serif JP',serif;font-size:clamp(16px,2vw,21px);line-height:1.85;color:var(--c-acc);margin:0 0 20px}
.sgs-hero__text{font-size:14.5px;color:var(--c-muted);margin:0}
.sgs-spec{margin:0;border-top:2px solid var(--c-acc)}
.sgs-spec>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:16px;padding:15px 0;border-bottom:1px solid var(--c-line)}
.sgs-spec dt{font-family:'Plus Jakarta Sans',sans-serif;font-size:10.5px;letter-spacing:.14em;color:var(--c-acc);margin:0;padding-top:3px}
.sgs-spec dd{font-size:14px;margin:0}
.sgs-name{background:var(--c-dark);color:#e2f0f1;padding:92px 0}
.sgs-name .eyebrow{color:var(--c-acc-soft)}
.sgs-name h2{color:#fff;font-size:clamp(20px,2.7vw,29px);margin:0 0 32px}
.sgs-name__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.sgs-name p{font-size:14.5px;color:#8fa9ab;margin:0 0 1.1em}
.sgs-name p:last-child{margin-bottom:0}
.sgs-trees{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 0;padding:0;list-style:none}
.sgs-trees li{font-size:13px;border:1px solid rgba(132,195,201,.5);color:#dff0f1;padding:7px 20px}
.sgs-heading{max-width:40em;margin:0 0 46px}
.sgs-heading h2{font-size:clamp(21px,2.9vw,31px);letter-spacing:.03em}
.sgs-lead{margin-top:20px;font-size:14.5px;color:var(--c-muted)}
.sgs-flat{background:var(--c-tint)}
.sgs-flat__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.sgs-flat__i{background:var(--c-paper);padding:34px 30px;border-top:3px solid var(--c-acc)}
.sgs-flat__i h3{font-size:17px;margin:0 0 12px}
.sgs-flat__i p{font-size:13.8px;color:var(--c-muted);margin:0}
.sgs-life{background:var(--c-paper)}
.sgs-rows{margin:0;padding:0;list-style:none}
.sgs-rows li{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.8fr);gap:36px;padding:28px 0;border-top:1px solid var(--c-line)}
.sgs-rows li:last-child{border-bottom:1px solid var(--c-line)}
.sgs-rows h3{font-size:17px;margin:0;color:var(--c-acc)}
.sgs-rows p{font-size:13.8px;color:var(--c-muted);margin:0}
.sgs-access{background:var(--c-paper2)}
.sgs-split{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:52px;align-items:start}
.sgs-split__head h2{font-size:clamp(20px,2.7vw,29px)}
.sgs-access__list{margin:0}
.sgs-access__list>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px;padding:20px 0;border-bottom:1px solid var(--c-line)}
.sgs-access__list>div:first-child{border-top:1px solid var(--c-line)}
.sgs-access__list dt{font-size:13px;color:var(--c-acc);margin:0}
.sgs-access__list dd{font-size:14px;margin:0}
.sgs-market{background:var(--c-paper)}
.sgs-final{background:var(--c-dark2);color:#e2f0f1;text-align:center}
.sgs-final .eyebrow{color:var(--c-acc-soft)}
.sgs-final h2{color:#fff;font-size:clamp(19px,2.5vw,27px);margin:0 0 20px}
.sgs-final p{font-size:14.5px;color:#8fa9ab;max-width:36em;margin:0 auto 32px}
@media (max-width:860px){
.sgs-sec{padding:64px 0}
.sgs-hero{padding:76px 0 60px}
.sgs-hero__grid{grid-template-columns:1fr;gap:30px}
.sgs-name{padding:60px 0}
.sgs-name__grid{grid-template-columns:1fr;gap:22px}
.sgs-flat__grid{grid-template-columns:1fr}
.sgs-rows li{grid-template-columns:1fr;gap:10px}
.sgs-split{grid-template-columns:1fr;gap:28px}
.sgs-access__list>div{grid-template-columns:96px minmax(0,1fr);gap:14px}
.sgs-spec>div{grid-template-columns:80px minmax(0,1fr);gap:12px}
}
.sgs-lp > .tommy-cta-buttons{padding:44px max(24px,calc((100% - 1030px)/2));background:var(--c-paper2)}
@media(max-width:860px){.sgs-lp > .tommy-cta-buttons{padding:32px 18px}}
