:root{--navy:#1b2a41;--slate:#4a5568;--slate-light:#e6e9ee;--forest:#2f5d50;--forest-bg:#eef4f1;--terracotta:#b5553c;--terracotta-bg:#faf0ec;--paper:#fbfaf7;--ink:#22272e;--line:#d8dce3;--marker:#f3e3a3}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);margin:0;font-family:Hiragino Sans,Noto Sans JP,Yu Gothic,sans-serif;font-size:16px;line-height:1.9}a{color:var(--forest)}img,svg{max-width:100%;height:auto}.container{max-width:760px;margin:0 auto;padding:0 16px}.site-header{background:var(--navy)}.site-header .container{flex-wrap:wrap;align-items:center;gap:4px 20px;padding-top:12px;padding-bottom:12px;display:flex}.site-logo{color:#fff;letter-spacing:.04em;font-size:1.15rem;font-weight:700;text-decoration:none}.site-nav{flex-wrap:wrap;gap:4px 16px;font-size:.85rem;display:flex}.site-nav a{color:#d5dbe6;text-decoration:none}.site-nav a:hover{color:#fff}.site-footer{background:var(--navy);color:#c3cad6;margin-top:64px;padding:28px 0;font-size:.8rem}.site-footer nav{flex-wrap:wrap;gap:4px 16px;margin-bottom:12px;display:flex}.site-footer a{color:#e3e7ee}.site-footer p{margin:4px 0}.hero{padding:40px 0 8px}.hero h1{color:var(--navy);letter-spacing:.06em;margin:0;font-size:2rem}.hero-sub{color:var(--slate);margin:4px 0 24px}.hero-message{border-left:4px solid var(--terracotta);color:var(--navy);background:#fff;padding:16px 20px;font-weight:700}.section-title{border-bottom:2px solid var(--navy);color:var(--navy);margin:48px 0 16px;padding-bottom:8px;font-size:1.2rem}.pillar-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.pillar-card{border:1px solid var(--line);color:var(--navy);background:#fff;border-radius:6px;padding:16px;font-weight:700;text-decoration:none;display:block}.pillar-card:hover,.article-card:hover{border-color:var(--forest)}.article-card{border:1px solid var(--line);color:inherit;background:#fff;border-radius:6px;margin-bottom:12px;padding:16px;text-decoration:none;display:block}.article-card h3{color:var(--navy);margin:0 0 4px;font-size:1rem;line-height:1.6}.article-card p{color:var(--slate);margin:0;font-size:.85rem;line-height:1.7}.article-header{padding:28px 0 8px}.article-header h1{color:var(--navy);margin:8px 0;font-size:1.6rem;line-height:1.5}.breadcrumb,.article-meta{color:var(--slate);font-size:.8rem}.breadcrumb a,.article-meta a{color:var(--slate)}.article-body h2{border-left:5px solid var(--navy);background:var(--slate-light);color:var(--navy);margin:56px 0 20px;padding:10px 14px;font-size:1.3rem;line-height:1.5}.article-body h3{border-bottom:1px solid var(--line);color:var(--navy);margin:36px 0 12px;padding-bottom:6px;font-size:1.1rem}.article-body mark{background:linear-gradient(transparent 55%, var(--marker) 55%);color:inherit;font-weight:700}.article-body table{border-collapse:collapse;width:100%;margin:24px 0;font-size:.9rem;display:block;overflow-x:auto}.article-body th{background:var(--navy);color:#fff;font-weight:600}.article-body th,.article-body td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px;line-height:1.7}.article-body td{background:#fff}.article-body th,.article-body td{min-width:6.5em}.article-body blockquote{border-left:3px solid var(--slate);color:var(--slate);background:#fff;margin:24px 0;padding:4px 18px}.point-box,.warn-box,.steps-box{border:1px solid var(--line);background:#fff;border-radius:6px;margin:28px 0;padding:16px 20px}.point-box{border-top:4px solid var(--forest);background:var(--forest-bg)}.warn-box{border-top:4px solid var(--terracotta);background:var(--terracotta-bg)}.steps-box{border-top:4px solid var(--navy)}.box-title{color:var(--navy);margin:0 0 8px;font-weight:700}.point-box p:last-child,.warn-box p:last-child,.steps-box p:last-child{margin-bottom:0}.steps-box ol{margin:0;padding-left:1.4em}.scene{border:1px dashed var(--slate);color:var(--slate);background:#fff;border-radius:6px;margin:24px 0;padding:16px 20px;font-size:.95rem}figure.diagram{border:1px solid var(--line);text-align:center;background:#fff;border-radius:6px;margin:32px 0;padding:20px 16px}figure.diagram.figure-narrow svg{max-width:420px}figure.diagram figcaption{color:var(--slate);margin-top:10px;font-size:.8rem}.flow{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:8px;display:flex}.flow>div{border:1px solid var(--navy);background:var(--slate-light);color:var(--navy);border-radius:6px;flex:140px;padding:12px;font-size:.85rem;font-weight:600;line-height:1.6;position:relative}.flow>div:not(:last-child):after{content:"▶";color:var(--terracotta);z-index:1;font-size:.7rem;position:absolute;top:50%;right:-11px;transform:translateY(-50%)}.flow>div.is-goal{background:var(--forest);border-color:var(--forest);color:#fff}.cta-box{background:var(--navy);color:#fff;text-align:center;border-radius:8px;margin:48px 0 24px;padding:24px 20px}.cta-lead{text-wrap:balance;margin:0 0 16px;font-size:.95rem}.cta-button{background:var(--terracotta);color:#fff;border-radius:999px;padding:14px 28px;font-weight:700;text-decoration:none;display:inline-block}.cta-button:hover{filter:brightness(1.08)}.pillar-link{border:1px solid var(--forest);background:var(--forest-bg);border-radius:6px;padding:12px 16px;font-size:.95rem}.operator-note{color:var(--slate);margin-top:40px;font-size:.78rem;line-height:1.7}@media (max-width:520px){.hero h1{font-size:1.6rem}.article-header h1{font-size:1.35rem}.article-body h2{font-size:1.15rem}.flow>div:not(:last-child):after{content:"▼";top:auto;bottom:-13px;right:50%;transform:translate(50%)}.flow>div{flex-basis:100%}}.step-card{border:1px solid var(--navy);background:var(--slate-light);border-radius:6px;align-items:center;gap:14px;padding:14px 18px;display:flex}.step-card+.step-card{margin-top:22px;position:relative}.step-card+.step-card:before{content:"▼";color:var(--terracotta);font-size:.7rem;position:absolute;top:-19px;left:50%;transform:translate(-50%)}.step-card.is-goal{background:var(--forest);border-color:var(--forest)}.step-card .icon{flex:0 0 44px}.step-card p{margin:0}.step-card b{color:var(--navy);font-size:.98rem;line-height:1.6;display:block}.step-card span{color:var(--slate);font-size:.85rem;line-height:1.7;display:block}.step-card.is-goal b{color:#fff}.step-card.is-goal span{color:#cfe0d9}.scope-card{border-radius:6px;margin:16px 0;padding:16px 20px}.scope-card .scope-head{color:var(--navy);align-items:center;gap:10px;margin:0 0 8px;font-weight:700;display:flex}.scope-card ul{margin:0;padding-left:1.3em}.scope-card li{margin:4px 0}.scope-in{border:1px solid var(--forest);background:var(--forest-bg)}.scope-out{background:#f2f3f6;border:1px dashed #b8bfcb}.scope-out .scope-head,.scope-out li{color:#6e7684}.lp-visual{background:var(--slate-light);aspect-ratio:24/10;object-fit:cover;object-position:50% 42%;border-radius:8px;width:100%;height:auto;margin:24px 0 0;display:block}@media (max-width:720px){.lp-visual{aspect-ratio:16/9;border-radius:6px;margin-top:16px}}.lp-hero{padding:36px 0 8px}.lp-hero h1{color:var(--navy);letter-spacing:.02em;margin:0 0 12px;font-size:1.7rem;line-height:1.55}.lp-lead{color:var(--slate);margin:0 0 24px;font-size:1rem;line-height:1.9}.lp-cta{background:var(--forest-bg);border:1px solid var(--forest);text-align:center;border-radius:8px;margin:40px 0;padding:24px 20px}.lp-cta .cta-lead{color:var(--navy);text-wrap:balance;margin:0 0 16px;font-size:.95rem;font-weight:700}.line-button{color:#fff;background:#06c755;border-radius:999px;max-width:100%;padding:16px 32px;font-size:1.05rem;font-weight:700;text-decoration:none;display:inline-block;box-shadow:0 2px #04a344}.line-button:hover{filter:brightness(1.06)}.lp-note{color:var(--slate);margin:12px 0 0;font-size:.78rem;line-height:1.7}.lp-check{border:1px solid var(--line);background:#fff;border-radius:6px;margin:24px 0;padding:16px 20px;list-style:none}.lp-check li{margin:8px 0;padding-left:26px;position:relative}.lp-check li:before{content:"✓";color:var(--forest);font-weight:700;position:absolute;left:0}.qa{border:1px solid var(--line);background:#fff;border-radius:6px;margin:16px 0;padding:16px 20px}.qa .q{color:var(--navy);margin:0 0 6px;font-weight:700}.qa .a{color:var(--ink);margin:0;font-size:.95rem}.lp-sticky{z-index:20;padding:10px 16px calc(10px + env(safe-area-inset-bottom));text-align:center;background:#1b2a41f5;display:none;position:fixed;bottom:0;left:0;right:0}.lp-sticky .line-button{padding:13px 20px;font-size:1rem;display:block}@media (max-width:720px){.lp-hero h1{font-size:1.4rem}.lp-sticky{display:block}.lp-tail{padding-bottom:76px}}
