/* NAZ LP1 — sample/lp1/index.html の inline <style> から切り出し */

/* ========== LP 専用スタイル ========== */
.lp-body{background:var(--clr-bg-soft)}

/* LP ヘッダー（シンプル化・ナビなし） */
.lp-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);height:72px;border-bottom:1px solid rgba(227,223,212,.6)}
.lp-header-inner{max-width:var(--inner-lg-max);margin:0 auto;height:100%;padding:0 40px;display:flex;align-items:center;justify-content:space-between}
.lp-header .logo{display:flex;align-items:center;gap:12px;line-height:1;text-decoration:none}
.lp-header .logo-en{font-family:var(--font-en);font-size:28px;font-weight:900;letter-spacing:.12em;color:var(--clr-primary)}
.lp-header .logo-divider{width:1px;height:20px;background:linear-gradient(180deg,transparent,var(--clr-accent),transparent)}
.lp-header .logo-jp{font-family:var(--font-en);font-size:13px;font-weight:800;letter-spacing:.22em;color:var(--clr-text-primary);font-style:italic;text-transform:uppercase}
.lp-header .logo-jp::before{content:"—";color:var(--clr-accent);margin-right:6px;font-style:normal;font-weight:400}
.lp-header .header-cta{padding:10px 22px;background:linear-gradient(135deg,var(--clr-accent),var(--clr-accent-light));color:var(--clr-text-primary);border-radius:6px;font-size:12px;font-weight:800;letter-spacing:.08em;box-shadow:0 8px 18px -8px rgba(201,164,76,.45);transition:transform .25s}
.lp-header .header-cta:hover{transform:translateY(-2px)}
@media(max-width:767px){
  .lp-header{height:60px}
  .lp-header-inner{padding:0 16px}
  .lp-header .logo-en{font-size:22px}
  .lp-header .logo-jp{font-size:11px}
  .lp-header .header-cta{padding:8px 14px;font-size:11px}
}

/* ヒーロー */
.lp-hero{padding:calc(72px + 80px) 0 80px;background:linear-gradient(135deg,#FBF6E8 0%,#F7F5EF 50%,#FBF6E8 100%);position:relative;overflow:hidden}
.lp-hero::before{content:"";position:absolute;top:80px;right:-4vw;font-family:var(--font-en);font-size:clamp(140px,16vw,240px);font-weight:900;color:rgba(13,47,92,.04);line-height:.85;letter-spacing:-.02em;pointer-events:none;user-select:none}
.lp-hero-inner{max-width:1280px;margin:0 auto;padding:0 48px;display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;position:relative;z-index:1}
.lp-hero-text .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:var(--clr-primary);color:#fff;border-radius:999px;font-family:var(--font-en);font-size:11px;font-weight:800;letter-spacing:.3em;text-transform:uppercase;margin-bottom:20px;box-shadow:0 8px 20px -8px rgba(13,47,92,.35)}
.lp-hero-text .eyebrow::before{content:"●";color:var(--clr-accent);font-size:8px;line-height:1}
.lp-hero-text h1{font-family:var(--font-jp);font-size:clamp(32px,4.2vw,60px);font-weight:900;color:var(--clr-primary);line-height:1.5;letter-spacing:.02em;margin-bottom:28px}
.lp-hero-text h1 em{font-style:normal;background:linear-gradient(180deg,transparent 65%,rgba(201,164,76,.4) 65%,rgba(201,164,76,.4) 90%,transparent 90%);padding:0 4px}
.lp-hero-text h1 .big{font-size:1.15em;color:var(--clr-primary)}
.lp-hero-text .sub{font-size:19px;color:var(--clr-text-primary);line-height:2.1;letter-spacing:.05em;margin-bottom:40px}
.lp-hero-text .sub strong{color:var(--clr-primary);font-weight:700}
.lp-hero-meta{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:32px}
.lp-hero-meta span{display:inline-flex;align-items:center;gap:6px;font-size:15px;color:var(--clr-text-primary);font-weight:600;letter-spacing:.04em}
.lp-hero-meta span::before{content:"✓";color:var(--clr-accent);font-weight:900;font-size:16px}
.lp-hero-cta{display:flex;gap:12px;flex-wrap:wrap}

.lp-hero-chart{position:relative;aspect-ratio:3/4;max-width:420px;justify-self:center;background:#fff;border-radius:12px;box-shadow:0 40px 80px -30px rgba(13,47,92,.28),0 2px 6px rgba(13,47,92,.06);border:1px solid rgba(201,164,76,.28);padding:32px 24px;overflow:hidden;transform:rotate(-1.5deg);transition:transform .4s}
.lp-hero-chart:hover{transform:rotate(0)}
.lp-hero-chart::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--clr-primary),var(--clr-accent),var(--clr-primary))}
.lp-hero-chart .chart-head{text-align:center;padding:8px 0 20px;border-bottom:1px dashed var(--clr-border);margin-bottom:24px}
.lp-hero-chart .chart-head h4{font-size:12px;font-weight:800;color:var(--clr-primary);letter-spacing:.1em;margin-bottom:4px}
.lp-hero-chart .chart-head p{font-size:9px;color:var(--clr-text-sub);letter-spacing:.2em;text-transform:uppercase;font-weight:700}
.lp-hero-chart .flow{display:flex;flex-direction:column;align-items:center;gap:0}
.lp-hero-chart .n{padding:8px 18px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.05em}
.lp-hero-chart .n.start{background:linear-gradient(135deg,var(--clr-primary),var(--clr-primary-dark));color:#fff;font-family:var(--font-en);font-weight:900;letter-spacing:.2em}
.lp-hero-chart .n.q{background:#fff;border:2px solid var(--clr-primary);padding:10px 14px 10px 40px;position:relative;font-size:11px;min-width:180px;text-align:center;border-radius:10px;box-shadow:0 6px 14px -8px rgba(13,47,92,.2)}
.lp-hero-chart .n.q::before{content:"Q";position:absolute;left:8px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--clr-accent),var(--clr-accent-light));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-en);font-size:9px;font-weight:900}
.lp-hero-chart .l{width:2px;height:22px;background:linear-gradient(180deg,var(--clr-primary),var(--clr-accent));margin:8px 0;position:relative}
.lp-hero-chart .l::after{content:"";position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--clr-accent)}
.lp-hero-chart .br{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;width:100%}
.lp-hero-chart .br > div{padding:8px;border-radius:8px;font-size:10px;font-weight:800;text-align:center;border:1.5px solid;line-height:1.3}
.lp-hero-chart .br .a{background:rgba(13,47,92,.06);color:var(--clr-primary);border-color:var(--clr-primary)}
.lp-hero-chart .br .b{background:rgba(201,164,76,.1);color:#8a6e2e;border-color:var(--clr-accent)}
.lp-hero-chart::after{content:"";position:absolute;left:0;right:0;bottom:0;height:110px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 60%);pointer-events:none}
.lp-hero-chart .peek{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);z-index:2;padding:8px 16px;background:var(--clr-primary);color:#fff;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.08em;white-space:nowrap;box-shadow:0 10px 20px -6px rgba(13,47,92,.45)}
.lp-hero-chart .peek::before{content:"●";color:var(--clr-accent);margin-right:6px;font-size:6px;vertical-align:middle}

@media(max-width:900px){
  .lp-hero{padding:calc(60px + 48px) 0 48px}
  .lp-hero-inner{grid-template-columns:1fr;gap:32px}
  .lp-hero-chart{max-width:320px;transform:rotate(0)}
}

/* Problem */
.lp-problem{padding:120px 0;background:var(--clr-wht);position:relative}
.lp-problem::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--clr-border) 20%,var(--clr-border) 80%,transparent)}
.lp-problem-inner{max-width:1280px;margin:0 auto;padding:0 48px}
.lp-sec-head{text-align:center;margin-bottom:64px}
.lp-sec-head .en{font-family:var(--font-en);font-size:13px;font-weight:800;letter-spacing:.4em;color:var(--clr-accent);text-transform:uppercase;margin-bottom:18px}
.lp-sec-head h2{font-family:var(--font-jp);font-size:clamp(26px,2.8vw,38px);font-weight:900;color:var(--clr-primary);letter-spacing:.04em;line-height:1.6}
.lp-problem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.lp-problem-card{background:var(--clr-wht);border-radius:14px;padding:52px 28px;text-align:center;border:1px solid var(--clr-border);transition:transform .3s,border-color .3s,box-shadow .3s;box-shadow:0 14px 40px -18px rgba(13,47,92,.1)}
.lp-problem-card:hover{transform:translateY(-6px);border-color:var(--clr-accent);box-shadow:0 20px 40px -16px rgba(13,47,92,.16)}
.lp-problem-card .ico{display:inline-flex;align-items:center;justify-content:center;width:84px;height:84px;border-radius:50%;background:linear-gradient(135deg,var(--clr-bg-soft),#fff);border:2.5px solid var(--clr-accent);margin-bottom:28px;font-family:var(--font-en);font-size:30px;font-weight:900;color:var(--clr-primary);font-style:italic;box-shadow:0 10px 24px -8px rgba(201,164,76,.4)}
.lp-problem-card h3{font-size:19px;font-weight:900;color:var(--clr-primary);margin-bottom:16px;line-height:1.55;letter-spacing:.04em;word-break:normal;overflow-wrap:anywhere}
.lp-problem-card p{font-size:15px;color:var(--clr-text-primary);line-height:1.95;letter-spacing:.03em;word-break:normal;overflow-wrap:anywhere}
@media(max-width:767px){.lp-problem-grid{grid-template-columns:1fr 1fr;gap:12px}.lp-problem-card{padding:24px 16px}}

/* Insight 4 pillars */
.lp-insight{padding:120px 0;background:linear-gradient(180deg,var(--clr-bg-soft) 0%,#F0E9D8 100%);position:relative;overflow:hidden}
.lp-insight-inner{max-width:1080px;margin:0 auto;padding:0 48px;position:relative;z-index:1}
.lp-insight-lead{max-width:780px;margin:0 auto 48px;text-align:center;font-size:16px;line-height:2.1;color:var(--clr-text-primary);letter-spacing:.04em}
.lp-insight-lead strong{color:var(--clr-primary);font-weight:800;background:linear-gradient(180deg,transparent 70%,rgba(201,164,76,.35) 70%);padding:0 2px}
.lp-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.lp-pillar{background:var(--clr-wht);border-radius:12px;padding:40px 24px;text-align:center;border-top:4px solid var(--clr-accent);box-shadow:0 20px 40px -18px rgba(13,47,92,.14);position:relative;transition:transform .3s,box-shadow .3s}
.lp-pillar:hover{transform:translateY(-8px);box-shadow:0 28px 56px -18px rgba(13,47,92,.2)}
.lp-pillar .num{display:block;font-family:var(--font-en);font-size:13px;font-weight:900;letter-spacing:.3em;color:var(--clr-accent);margin-bottom:12px}
.lp-pillar .ttl{display:block;font-size:20px;font-weight:900;color:var(--clr-primary);margin-bottom:10px;letter-spacing:.06em}
.lp-pillar .desc{display:block;font-size:13px;color:var(--clr-text-primary);line-height:1.85;letter-spacing:.04em}
@media(max-width:767px){.lp-pillars{grid-template-columns:1fr 1fr;gap:12px}.lp-pillar{padding:24px 16px}.lp-pillar .ttl{font-size:15px}}

/* Chart detail */
.lp-chart-sec{padding:120px 0;background:linear-gradient(180deg,var(--clr-wht) 0%,#F7F5EF 100%);position:relative;overflow:hidden}
.lp-chart-sec::before{content:"";position:absolute;right:-80px;top:-80px;width:300px;height:300px;background:radial-gradient(circle,rgba(201,164,76,.08),transparent 70%);pointer-events:none;border-radius:50%}
.lp-chart-sec::after{content:"";position:absolute;left:-100px;bottom:-100px;width:360px;height:360px;background:radial-gradient(circle,rgba(13,47,92,.06),transparent 70%);pointer-events:none;border-radius:50%}
.lp-chart-sec > *{position:relative;z-index:1}
.lp-chart-sec-inner{max-width:1100px;margin:0 auto;padding:0 48px;text-align:center}
.lp-chart-stage{background:linear-gradient(180deg,#fff 0%,#FEFBF3 100%);border-radius:20px;padding:80px 56px 64px;box-shadow:0 60px 120px -36px rgba(13,47,92,.28),0 4px 12px rgba(13,47,92,.06);border:1px solid rgba(201,164,76,.32);position:relative;overflow:hidden;margin-bottom:32px}
.lp-chart-stage::before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,var(--clr-primary),var(--clr-accent),var(--clr-primary))}
.lp-chart-stage h3{font-size:28px;font-weight:900;color:var(--clr-primary);margin-bottom:10px;letter-spacing:.08em}
.lp-chart-stage .sub{font-size:12px;color:var(--clr-accent);letter-spacing:.35em;text-transform:uppercase;font-weight:800;margin-bottom:56px}
.lp-chart-fullflow{display:flex;flex-direction:column;align-items:center;gap:0}
.lp-cf-node{padding:12px 24px;border-radius:999px;font-size:13px;font-weight:700;letter-spacing:.05em;text-align:center}
.lp-cf-node.start{background:linear-gradient(135deg,var(--clr-primary),var(--clr-primary-dark));color:#fff;font-family:var(--font-en);font-weight:900;letter-spacing:.25em;padding:18px 40px;font-size:16px;box-shadow:0 20px 40px -12px rgba(13,47,92,.5)}
.lp-cf-node.q{background:#fff;border:2px solid var(--clr-primary);padding:18px 28px 18px 64px;position:relative;font-size:16px;max-width:480px;border-radius:14px;box-shadow:0 14px 30px -10px rgba(13,47,92,.2);font-weight:700}
.lp-cf-node.q .ql{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--clr-accent),var(--clr-accent-light));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-en);font-size:13px;font-weight:900;letter-spacing:0;box-shadow:0 6px 14px -4px rgba(201,164,76,.5)}
.lp-cf-line{width:3px;height:40px;background:linear-gradient(180deg,var(--clr-primary),var(--clr-accent));margin:0;position:relative;border-radius:2px}
.lp-cf-line::after{content:"";position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);border-left:7px solid transparent;border-right:7px solid transparent;border-top:9px solid var(--clr-accent)}
.lp-cf-branches{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:32px;width:100%;max-width:640px}
.lp-cf-branch{padding:18px 22px;border-radius:12px;font-size:15px;font-weight:800;text-align:center;border:2px solid;position:relative;line-height:1.4}
.lp-cf-branch::before{content:attr(data-label);position:absolute;top:-11px;left:50%;transform:translateX(-50%);width:24px;height:24px;border-radius:50%;font-family:var(--font-en);font-size:11px;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 8px -2px rgba(0,0,0,.2)}
.lp-cf-branch.a{background:rgba(13,47,92,.05);color:var(--clr-primary);border-color:var(--clr-primary)}
.lp-cf-branch.a::before{background:var(--clr-primary);color:#fff;content:"A"}
.lp-cf-branch.b{background:rgba(201,164,76,.1);color:#8a6e2e;border-color:var(--clr-accent)}
.lp-cf-branch.b::before{background:var(--clr-accent);color:#fff;content:"B"}
.lp-cf-landings{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:40px;padding-top:40px;border-top:1px dashed var(--clr-border);width:100%}
.lp-cf-landing{padding:16px 10px;background:var(--clr-bg-soft);border:1px solid var(--clr-accent);border-radius:8px;font-size:11px;line-height:1.55;color:var(--clr-text-primary);text-align:left;position:relative}
.lp-cf-landing::before{content:"着地 "attr(data-n);position:absolute;top:-10px;left:10px;padding:2px 8px;background:var(--clr-primary);color:#fff;font-family:var(--font-en);font-size:9px;font-weight:800;letter-spacing:.1em;border-radius:3px}
.lp-cf-landing strong{display:block;font-size:12px;color:var(--clr-primary);margin-top:8px;margin-bottom:4px;font-weight:800}
@media(max-width:900px){
  .lp-chart-stage{padding:40px 20px 32px}
  .lp-cf-branches{grid-template-columns:1fr;gap:16px}
  .lp-cf-landings{grid-template-columns:1fr 1fr;gap:12px}
}
@media(max-width:767px){
  .lp-cf-landings{grid-template-columns:1fr}
}

/* Benefits */
.lp-benefits{padding:120px 0;background:linear-gradient(135deg,#061733 0%,#0D2F5C 50%,#102b54 100%);color:#fff;position:relative;overflow:hidden}
.lp-benefits::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 25%,rgba(201,164,76,.22),transparent 45%),radial-gradient(circle at 15% 85%,rgba(201,164,76,.08),transparent 55%);pointer-events:none}
.lp-benefits-inner{max-width:1240px;margin:0 auto;padding:0 48px;position:relative;z-index:1}
.lp-benefits .lp-sec-head .en{color:var(--clr-accent)}
.lp-benefits .lp-sec-head h2{color:#fff}
.lp-b-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:48px}
.lp-b-card{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03));border:1px solid rgba(201,164,76,.35);border-radius:18px;padding:44px 32px 40px;text-align:center;backdrop-filter:blur(6px);transition:transform .3s,border-color .3s,box-shadow .3s;position:relative;overflow:hidden;display:flex;flex-direction:column;word-break:keep-all;overflow-wrap:break-word}
.lp-b-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--clr-accent),transparent);opacity:.6}
.lp-b-card:hover{transform:translateY(-6px);border-color:rgba(201,164,76,.6);box-shadow:0 30px 60px -20px rgba(0,0,0,.4)}
.lp-b-card:hover{transform:translateY(-8px);border-color:var(--clr-accent);box-shadow:0 30px 60px -20px rgba(201,164,76,.3)}
.lp-b-card .icon{display:inline-flex;align-items:center;justify-content:center;width:84px;height:84px;border-radius:50%;background:linear-gradient(135deg,var(--clr-accent),var(--clr-accent-light));color:#0D2F5C;font-family:var(--font-en);font-size:30px;font-weight:900;margin-bottom:22px;box-shadow:0 14px 28px -8px rgba(201,164,76,.55),inset 0 2px 4px rgba(255,255,255,.3)}
.lp-b-card h3{font-size:24px;font-weight:900;color:#fff;margin-bottom:18px;letter-spacing:.06em;line-height:1.55;word-break:keep-all;overflow-wrap:normal}
.lp-b-card p{font-size:17px;color:rgba(255,255,255,.85);line-height:2;letter-spacing:.04em;word-break:keep-all;overflow-wrap:break-word}
.lp-b-card .b-desc{text-align:left}
.lp-b-card .b-desc small{display:block;margin-top:10px;font-size:12px;color:rgba(255,255,255,.65)}
@media(max-width:767px){.lp-b-grid{grid-template-columns:1fr;gap:16px}}

/* Form / CTA section */
.lp-form-sec{padding:120px 0;background:linear-gradient(180deg,var(--clr-bg-soft) 0%,#F0E9D8 100%)}
.lp-form-sec-inner{max-width:920px;margin:0 auto;padding:0 48px}
.lp-form-box{background:#fff;border-radius:14px;padding:48px 44px;box-shadow:0 30px 60px -24px rgba(13,47,92,.18);border-left:5px solid var(--clr-accent);position:relative}
.lp-form-box .badge{position:absolute;top:-16px;left:40px;padding:6px 16px;background:var(--clr-primary);color:#fff;border-radius:999px;font-family:var(--font-en);font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;box-shadow:0 8px 16px -6px rgba(13,47,92,.4)}
.lp-form-box h3{font-size:25px;font-weight:800;color:var(--clr-primary);margin-bottom:8px;letter-spacing:.06em;margin-top:8px}
.lp-form-box .note{font-size:15px;color:var(--clr-text-primary);line-height:1.9;margin-bottom:28px;letter-spacing:.04em}
.lp-form-row{margin-bottom:16px}
.lp-form-row label{display:block;margin-bottom:6px;font-size:14px;font-weight:700;letter-spacing:.06em;color:var(--clr-primary)}
.lp-form-row input{width:100%;padding:14px 16px;background:var(--clr-bg-soft);border:1.5px solid var(--clr-border);border-radius:6px;font-size:16px;font-family:var(--font-jp);color:var(--clr-text-primary);transition:border-color .25s,background .25s}
.lp-form-row input:focus{outline:none;border-color:var(--clr-accent);background:#fff;box-shadow:0 0 0 3px rgba(201,164,76,.15)}
.lp-form-check{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--clr-text-primary);line-height:1.75;margin:16px 0 20px}
.lp-form-check input{margin-top:2px;flex-shrink:0}
.lp-form-check a{color:var(--clr-primary);text-decoration:underline}
.lp-form-submit{width:100%;padding:18px 20px;background:linear-gradient(135deg,var(--clr-accent),var(--clr-accent-light));color:var(--clr-text-primary);border:none;border-radius:8px;font-size:16px;font-weight:900;letter-spacing:.08em;cursor:pointer;box-shadow:0 14px 28px -10px rgba(201,164,76,.5);transition:transform .25s,box-shadow .25s;font-family:var(--font-jp)}
.lp-form-submit:hover{transform:translateY(-2px);box-shadow:0 20px 36px -10px rgba(201,164,76,.6)}
.lp-form-submit::after{content:" →";font-weight:700;margin-left:6px}

.lp-or{display:flex;align-items:center;gap:16px;margin:28px 0;color:var(--clr-text-sub);font-family:var(--font-en);font-size:11px;letter-spacing:.35em;font-weight:800;text-transform:uppercase;justify-content:center}
.lp-or::before,.lp-or::after{content:"";flex:1;height:1px;background:var(--clr-border)}

.lp-line-cta{display:flex;align-items:center;gap:16px;padding:20px 24px;background:linear-gradient(135deg,#06C755,#05A145);color:#fff;border-radius:12px;box-shadow:0 14px 28px -10px rgba(6,199,85,.5);transition:transform .25s;position:relative;overflow:hidden}
.lp-line-cta::before{content:"";position:absolute;top:-40px;right:-40px;width:180px;height:180px;background:radial-gradient(circle,rgba(255,255,255,.2),transparent 70%)}
.lp-line-cta:hover{transform:translateY(-2px);color:#fff}
.lp-line-num{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.22);border:1.5px solid rgba(255,255,255,.45);display:flex;align-items:center;justify-content:center;font-family:var(--font-en);font-size:13px;font-weight:900}
.lp-line-body{flex:1}
.lp-line-body .t{display:block;font-size:16px;font-weight:900;letter-spacing:.06em;line-height:1.3;margin-bottom:2px}
.lp-line-body .s{display:block;font-size:11px;opacity:.9;letter-spacing:.04em}
.lp-line-arrow{font-size:22px;font-weight:700;flex-shrink:0;transition:transform .25s}
.lp-line-cta:hover .lp-line-arrow{transform:translateX(4px)}

@media(max-width:767px){
  .lp-form-box{padding:36px 24px}
}

/* About mini */
.lp-about{padding:120px 0;background:var(--clr-wht)}
.lp-about-inner{max-width:1000px;margin:0 auto;padding:0 48px;display:grid;grid-template-columns:320px 1fr;gap:64px;align-items:center}
.lp-about-photo{aspect-ratio:3/4;background:url('../img/hero.jpg') center/cover no-repeat;border-radius:8px;box-shadow:0 24px 50px -20px rgba(13,47,92,.3)}
.lp-about-text .name{font-family:var(--font-en);font-size:12px;letter-spacing:.35em;color:var(--clr-accent);text-transform:uppercase;font-weight:800;margin-bottom:10px}
.lp-about-text h3{font-size:26px;font-weight:900;color:var(--clr-primary);line-height:1.6;margin-bottom:24px;letter-spacing:.06em}
.lp-about-text p{font-size:17px;color:var(--clr-text-primary);line-height:2.1;letter-spacing:.04em;margin-bottom:14px}
.lp-about-text p strong{color:var(--clr-primary);font-weight:700}
@media(max-width:767px){
  .lp-about-inner{grid-template-columns:1fr;gap:24px;text-align:center}
  .lp-about-photo{max-width:220px;margin:0 auto}
}

/* FAQ */
.lp-faq{padding:96px 0;background:var(--clr-bg-soft)}
.lp-faq-inner{max-width:860px;margin:0 auto;padding:0 48px}
.lp-faq details{background:#fff;border:1px solid var(--clr-border);border-radius:8px;margin-bottom:10px;overflow:hidden}
.lp-faq details[open]{border-color:var(--clr-accent)}
.lp-faq summary{list-style:none;padding:24px 56px 24px 68px;font-size:17px;font-weight:700;color:var(--clr-primary);cursor:pointer;position:relative;line-height:1.7}
.lp-faq summary::-webkit-details-marker{display:none}
.lp-faq summary::before{content:"Q";position:absolute;left:22px;top:22px;font-family:var(--font-en);font-size:18px;font-weight:900;color:var(--clr-accent)}
.lp-faq summary::after{content:"";position:absolute;right:22px;top:50%;width:10px;height:10px;border-right:1.5px solid var(--clr-primary);border-bottom:1.5px solid var(--clr-primary);transform:translateY(-70%) rotate(45deg);transition:transform .3s}
.lp-faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.lp-faq details p{padding:20px 28px 24px 68px;font-size:16px;color:var(--clr-text-primary);line-height:2;letter-spacing:.04em;border-top:1px dashed var(--clr-border)}

/* Final CTA */
.lp-final{padding:140px 0;background:linear-gradient(135deg,rgba(6,23,51,.96) 0%,rgba(13,47,92,.93) 50%,rgba(16,43,84,.96) 100%),url('../img/case-lifestyle.jpg') center/cover no-repeat;color:#fff;text-align:center;position:relative;overflow:hidden}
.lp-final::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(201,164,76,.3),transparent 55%);pointer-events:none}
.lp-final-inner{max-width:920px;margin:0 auto;padding:0 48px;position:relative;z-index:1}
.lp-final h2{font-size:clamp(26px,3.2vw,40px);font-weight:900;line-height:1.6;margin-bottom:24px;letter-spacing:.06em}
.lp-final h2 em{font-style:normal;color:var(--clr-accent)}
.lp-final p{font-size:18px;line-height:2.05;color:rgba(255,255,255,.92);margin-bottom:48px;letter-spacing:.04em}
.lp-final .btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.lp-final a{padding:20px 40px;border-radius:10px;font-weight:900;letter-spacing:.08em;font-size:16px;display:inline-flex;align-items:center;gap:12px;transition:transform .25s,box-shadow .25s}
.lp-final a:hover{transform:translateY(-2px)}
.lp-final .b1{background:linear-gradient(135deg,var(--clr-accent),var(--clr-accent-light));color:#0D2F5C;box-shadow:0 14px 28px -10px rgba(201,164,76,.5)}
.lp-final .b2{background:#06C755;color:#fff;box-shadow:0 14px 28px -10px rgba(6,199,85,.5)}

/* LP Footer */
.lp-footer{background:#0A0F1A;color:rgba(255,255,255,.55);padding:40px 0 28px;font-size:11px;letter-spacing:.04em;text-align:center}
.lp-footer .lp-f-logo{font-family:var(--font-en);font-size:22px;font-weight:900;letter-spacing:.15em;color:var(--clr-accent);margin-bottom:8px;display:inline-block}
.lp-footer .lp-f-links{margin:20px 0;display:flex;gap:18px;justify-content:center;flex-wrap:wrap}
.lp-footer .lp-f-links a{color:rgba(255,255,255,.65);font-size:11px}
.lp-footer .lp-f-links a:hover{color:var(--clr-accent)}
.lp-footer .cr{margin-top:16px;font-family:var(--font-en);letter-spacing:.1em;color:rgba(255,255,255,.4)}

/* Shared CTA buttons (hero) */
.lp-btn-primary,.lp-btn-line{display:inline-flex;align-items:center;gap:10px;padding:16px 28px;border-radius:8px;font-size:14px;font-weight:800;letter-spacing:.06em;transition:transform .25s,box-shadow .25s}
.lp-btn-primary{background:linear-gradient(135deg,var(--clr-accent),var(--clr-accent-light));color:var(--clr-text-primary);box-shadow:0 14px 28px -10px rgba(201,164,76,.5)}
.lp-btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 36px -10px rgba(201,164,76,.6)}
.lp-btn-line{background:linear-gradient(135deg,#06C755,#05A145);color:#fff;box-shadow:0 14px 28px -10px rgba(6,199,85,.5)}
.lp-btn-line:hover{transform:translateY(-2px);color:#fff;box-shadow:0 20px 36px -10px rgba(6,199,85,.6)}
.lp-btn-primary::after,.lp-btn-line::after{content:"→";font-weight:700;transition:transform .25s}
.lp-btn-primary:hover::after,.lp-btn-line:hover::after{transform:translateX(3px)}

/* Section padding mobile */
@media(max-width:767px){
  .lp-problem,.lp-insight,.lp-chart-sec,.lp-benefits,.lp-form-sec,.lp-about,.lp-faq,.lp-final,.lp-trust{padding:64px 0}
  .lp-sec-head{margin-bottom:40px}
}

/* ========== 監査対応 追加スタイル ========== */

/* A-1: Hero 対象バッジ */
.lp-target{display:inline-block;padding:8px 18px;background:rgba(13,47,92,.08);border:1.5px solid var(--clr-primary);color:var(--clr-primary);font-size:13px;font-weight:800;letter-spacing:.06em;border-radius:4px;margin-bottom:16px;line-height:1.4}
.lp-target strong{color:var(--clr-primary);background:linear-gradient(180deg,transparent 70%,rgba(201,164,76,.4) 70%);padding:0 2px}
@media(max-width:767px){.lp-target{font-size:12px;padding:6px 14px}}

/* A-2: CTA 主/補助の 2 行ボタン */
.lp-btn-v2{flex-direction:column;align-items:flex-start;gap:2px;padding:14px 28px!important;text-align:left}
.lp-btn-v2 .v2-main{font-size:15px;font-weight:900;letter-spacing:.06em;line-height:1.3}
.lp-btn-v2 .v2-sub{font-size:11px;font-weight:600;opacity:.85;letter-spacing:.02em;line-height:1.4}
.lp-btn-v2::after{display:none}
.lp-cta-note{font-size:12px;color:var(--clr-text-primary);margin-top:12px;letter-spacing:.04em;line-height:1.7}
.lp-cta-note strong{color:var(--clr-primary);font-weight:800}
@media(max-width:767px){
  .lp-hero-cta{flex-direction:column;gap:10px}
  .lp-btn-v2{width:100%;padding:14px 20px!important}
}

/* A-3: Trust Badges */
.lp-trust{padding:64px 0;background:#fff;border-top:1px solid var(--clr-border);border-bottom:1px solid var(--clr-border)}
.lp-trust-inner{max-width:1200px;margin:0 auto;padding:0 48px}
.lp-trust-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.lp-trust-list li{display:flex;align-items:flex-start;gap:14px;padding:26px 22px;background:var(--clr-bg-soft);border-radius:10px;border:1px solid var(--clr-border);transition:border-color .25s,transform .25s,box-shadow .25s}
.lp-trust-list li:hover{border-color:var(--clr-accent);transform:translateY(-2px);box-shadow:0 14px 28px -14px rgba(13,47,92,.15)}
.lp-trust-list .t-ico{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--clr-accent),var(--clr-accent-light));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:18px;margin-top:2px;box-shadow:0 6px 14px -4px rgba(201,164,76,.5)}
.lp-trust-list .t-txt{font-size:16px;line-height:1.75;color:var(--clr-text-primary);letter-spacing:.04em;word-break:keep-all;overflow-wrap:break-word;display:flex;flex-direction:column}
.lp-trust-list .t-txt strong{display:flex;align-items:center;font-size:19px;color:var(--clr-primary);font-weight:900;margin-bottom:8px;letter-spacing:.05em;word-break:keep-all;min-height:2.4em;line-height:1.25}
@media(max-width:900px){
  .lp-trust-list{grid-template-columns:repeat(2,1fr);gap:16px}
  .lp-trust-list li{padding:22px 18px}
}
@media(max-width:600px){
  .lp-trust{padding:48px 0}
  .lp-trust-list{grid-template-columns:1fr;gap:10px}
  .lp-trust-list li{padding:18px 18px;gap:14px}
  .lp-trust-list .t-ico{width:32px;height:32px;font-size:14px}
  .lp-trust-list .t-txt{font-size:13px;line-height:1.7}
  .lp-trust-list .t-txt strong{font-size:15px;margin-bottom:3px}
}

/* A-4: Benefits に特典番号ラベル */
.lp-b-card .b-label{font-family:var(--font-en);font-size:11px;font-weight:900;letter-spacing:.3em;color:var(--clr-accent);margin-bottom:8px;text-transform:uppercase}

/* B-2: Chart 要約文 */
.lp-chart-intro{text-align:center;margin:0 auto 32px;max-width:720px;font-size:17px;color:var(--clr-text-primary);line-height:2;letter-spacing:.04em;padding:18px 28px;background:rgba(201,164,76,.08);border:1.5px dashed var(--clr-accent);border-radius:8px}
.lp-chart-intro strong{color:var(--clr-primary);font-weight:900;background:linear-gradient(180deg,transparent 70%,rgba(201,164,76,.4) 70%);padding:0 2px}

/* B-5: Form 安心リスト */
.lp-form-reassure{list-style:none;padding:0;margin:0 0 20px;display:flex;gap:16px;flex-wrap:wrap}
.lp-form-reassure li{flex:1;min-width:120px;padding:8px 12px;background:rgba(13,47,92,.05);border:1px solid var(--clr-border);border-radius:6px;font-size:12px;font-weight:700;color:var(--clr-primary);letter-spacing:.04em;text-align:center;line-height:1.3;position:relative;padding-left:32px}
.lp-form-reassure li::before{content:"✓";position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--clr-accent);font-weight:900;font-size:13px}

/* 5パターン着地点の accordion 化 */
.lp-cf-landings{display:block;margin-top:28px;padding-top:36px;border-top:1px dashed var(--clr-border)}
.lp-cf-landings-lead{font-size:16px;color:var(--clr-text-primary);margin-bottom:20px;text-align:center;font-weight:600;letter-spacing:.04em}
.lp-cf-landing{padding:0;background:var(--clr-bg-soft);border:1.5px solid var(--clr-accent);border-radius:10px;position:relative;overflow:hidden;margin-bottom:10px;transition:border-color .25s}
.lp-cf-landing::before{content:"着地 "attr(data-n);position:absolute;top:20px;left:18px;padding:4px 12px;background:var(--clr-primary);color:#fff;font-family:var(--font-en);font-size:13px;font-weight:800;letter-spacing:.12em;border-radius:4px;z-index:1}
.lp-cf-landing summary{list-style:none;padding:20px 48px 20px 120px;font-size:19px;color:var(--clr-primary);cursor:pointer;position:relative;line-height:1.55;font-weight:800;letter-spacing:.04em;word-break:keep-all;overflow-wrap:break-word}
.lp-cf-landing summary::-webkit-details-marker{display:none}
.lp-cf-landing summary::after{content:"";position:absolute;right:20px;top:50%;width:12px;height:12px;border-right:2px solid var(--clr-primary);border-bottom:2px solid var(--clr-primary);transform:translateY(-70%) rotate(45deg);transition:transform .3s}
.lp-cf-landing[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.lp-cf-landing[open]{border-width:2px}
.lp-cf-landing summary strong{font-size:19px;color:var(--clr-primary);font-weight:900;letter-spacing:.06em}
.lp-cf-landing p{padding:6px 24px 20px 120px;margin:0;font-size:16px;color:var(--clr-text-primary);line-height:2;letter-spacing:.04em;border-top:1px dashed var(--clr-border);padding-top:16px}
@media(max-width:600px){
  .lp-cf-landing summary{padding:18px 40px 18px 100px;font-size:16px}
  .lp-cf-landing p{padding:14px 18px 18px 100px;font-size:14px}
  .lp-cf-landing::before{top:18px;left:14px;font-size:11px;padding:3px 10px}
}

/* ========== Benefits カードのサムネ画像 ========== */
.lp-b-card .b-thumb{width:100%;max-width:180px;height:225px;aspect-ratio:auto;background:center/cover no-repeat;border-radius:8px;margin:0 auto 22px;box-shadow:0 12px 24px -8px rgba(0,0,0,.4);border:1px solid rgba(201,164,76,.3)}
.lp-b-card .b-thumb-pdf{width:100%;max-width:180px;height:225px;aspect-ratio:auto;background-size:cover;background-position:top center;margin:0 auto 22px;box-shadow:0 20px 40px -12px rgba(0,0,0,.5),0 2px 6px rgba(0,0,0,.25);border:1px solid rgba(201,164,76,.4);border-radius:8px}
.lp-b-card .b-label{flex-shrink:0}
.lp-b-card h3{flex-shrink:0}
.lp-b-card .b-desc{flex-grow:1}
.lp-b-card .b-label{font-family:var(--font-en);font-size:12px;font-weight:900;letter-spacing:.38em;color:var(--clr-accent);margin-bottom:12px;text-transform:uppercase}

/* ========== Form セクション左右レイアウト ========== */
.lp-form-layout{display:grid;grid-template-columns:340px 1fr;gap:40px;align-items:start;max-width:880px;margin:0 auto}
.lp-form-side{position:sticky;top:100px}
.lp-form-side-stack{position:relative;aspect-ratio:1/1.2;margin-bottom:20px}
.lp-form-side-photo{position:absolute;inset:0;aspect-ratio:1/1.414;background-size:cover;background-position:center;background-repeat:no-repeat;border-radius:6px;box-shadow:0 24px 48px -16px rgba(13,47,92,.35),0 2px 8px rgba(13,47,92,.1);border:1px solid rgba(201,164,76,.4);width:82%;transform:rotate(-4deg);transition:transform .5s}
.lp-form-side-photo-front{transform:rotate(3deg) translate(18%,8%);z-index:2;box-shadow:0 30px 60px -18px rgba(13,47,92,.4),0 2px 10px rgba(13,47,92,.12)}
.lp-form-side:hover .lp-form-side-photo{transform:rotate(-6deg) translate(-6px,-4px)}
.lp-form-side:hover .lp-form-side-photo-front{transform:rotate(5deg) translate(24%,4%)}
.lp-form-side-photo::after{display:none}
.lp-form-side-caption{text-align:center;padding:14px 16px;background:#fff;border-radius:8px;border:1px solid var(--clr-border);box-shadow:0 10px 24px -10px rgba(13,47,92,.18)}
.lp-form-side-caption .cap-en{display:block;font-family:var(--font-en);font-size:12px;font-weight:900;letter-spacing:.35em;color:var(--clr-accent);margin-bottom:6px}
.lp-form-side-caption .cap-jp{display:block;font-size:12px;color:var(--clr-text-primary);letter-spacing:.04em;line-height:1.65;font-weight:600}
@media(max-width:900px){
  .lp-form-layout{grid-template-columns:1fr;gap:24px;max-width:560px}
  .lp-form-side{position:static;max-width:300px;margin:0 auto}
}

/* ========== About 肩書きタグリスト ========== */
.lp-about-tags{list-style:none;padding:0;margin:0 0 24px;display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;border-top:1px solid var(--clr-border);border-bottom:1px solid var(--clr-border);padding:20px 0;margin-top:4px}
.lp-about-tags li{display:flex;align-items:baseline;gap:10px;font-size:15px;line-height:1.7;letter-spacing:.03em}
.lp-about-tags .tag-label{flex-shrink:0;padding:3px 10px;background:rgba(13,47,92,.08);color:var(--clr-primary);font-family:var(--font-en);font-size:10px;font-weight:800;letter-spacing:.15em;border-radius:3px;text-transform:uppercase;white-space:nowrap}
.lp-about-tags .tag-val{color:var(--clr-text-primary);font-weight:600}
.lp-about-lede{font-size:17px!important;color:var(--clr-text-primary);line-height:2.1!important;letter-spacing:.04em;margin-top:20px!important}
@media(max-width:767px){
  .lp-about-tags{grid-template-columns:1fr;gap:10px;padding:16px 0}
  .lp-about-tags li{font-size:12px}
  .lp-about-tags .tag-label{font-size:9px;padding:2px 8px}
}

/* ========== Benefits 特典カードのサムネ画像トーン統一（セピア寄せ） ========== */
.lp-b-card .b-thumb{filter:contrast(1.03) saturate(.8) brightness(1.02);position:relative}
.lp-b-card .b-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,47,92,.05),rgba(201,164,76,.08));border-radius:8px;pointer-events:none}

/* ========== 日本語の単語途中改行を全画面で抑制 ========== */
.lp-hero-text h1,
.lp-sec-head h2,
.lp-final h2,
.lp-hero-text .sub,
.lp-insight-lead,
.lp-chart-intro,
.lp-problem-card h3,
.lp-b-card h3,
.lp-pillar .ttl,
.lp-final p,
.lp-about-text h3,
.lp-faq summary{
  word-break:keep-all;
  overflow-wrap:break-word;
  line-break:strict;
}

/* ========== スマホ 改行・読みやすさ修正 ========== */
@media(max-width:767px){
  /* 強制改行タグの解除（スマホで不自然な空行を作るのを防ぐ） */
  .lp-sec-head h2 br,
  .lp-final h2 br{display:none}
  /* Hero の H1 は改行を維持するが、改行幅を整える */
  .lp-hero-text h1{font-size:clamp(26px,6.5vw,34px);line-height:1.4;letter-spacing:.02em}
  .lp-hero-text h1 em{background-position:0 82%}
  .lp-hero-text .sub{font-size:14px;line-height:2}
  .lp-hero-text .sub br{display:none}
  /* セクション見出し：強すぎず・読みやすく */
  .lp-sec-head h2{font-size:clamp(20px,5.5vw,26px);line-height:1.6;letter-spacing:.04em}
  .lp-sec-head h2 em{background-position:0 84%;padding:0}
  /* Final CTA 見出し */
  .lp-final h2{font-size:clamp(20px,5.8vw,26px);line-height:1.6}
  .lp-final p{font-size:13px;line-height:1.95}
  .lp-final p br{display:none}
  /* Insight lead */
  .lp-insight-lead{font-size:14px;line-height:2}
  .lp-insight-lead br{display:none}
  /* Chart 要約 */
  .lp-chart-intro{font-size:14px;line-height:2;padding:14px 18px}
  /* カード見出し */
  .lp-problem-card h3{font-size:15px}
  .lp-b-card h3{font-size:16px}
  .lp-b-card h3 br{display:none}
  .lp-pillar .ttl{font-size:17px}
  /* Hero メタのチェックバッジ */
  .lp-hero-meta{gap:16px}
  .lp-hero-meta span{font-size:12px}
  /* Trust リスト（br 削除） */
  .lp-trust-list .t-txt br{display:none}
  /* 余白の圧縮 */
  .lp-hero{padding:calc(60px + 32px) 0 40px}
  .lp-problem,.lp-insight,.lp-chart-sec,.lp-benefits,.lp-form-sec,.lp-about,.lp-faq,.lp-final,.lp-trust{padding:56px 0}
  .lp-sec-head{margin-bottom:32px}
  /* Hero Visual：モバイルでは写真のみシンプルに */
  .lp-hero-visual{margin-top:24px;aspect-ratio:4/3;min-height:unset;max-width:520px}
  .lp-hero-photo{transform:rotate(0)}
  .lp-hero-chart{bottom:-12px;right:-8px;width:56%;padding:16px 12px 70px;transform:rotate(-2deg)}
  .lp-hero-chart .chart-head h4{font-size:10px}
  .lp-hero-chart .chart-head p{font-size:7px}
  .lp-hero-chart .n.start{font-size:9px;padding:5px 12px}
  .lp-hero-chart .n.q{font-size:9px;min-width:130px;padding:6px 6px 6px 26px}
  .lp-hero-chart .n.q::before{width:14px;height:14px;font-size:7px;left:5px}
  .lp-hero-chart .l{height:14px;margin:4px 0}
  .lp-hero-chart .br > div{font-size:8px;padding:4px}
  .lp-hero-chart .peek{font-size:8px;padding:5px 10px;bottom:10px}
}
/* さらに狭い画面 */
@media(max-width:480px){
  .lp-hero-chart{width:62%;right:-4px}
}

/* ========== Hero Visual 強化（写真 + チャート） ========== */
.lp-hero-visual{position:relative;aspect-ratio:4/5;max-width:520px;justify-self:center;width:100%}
.lp-hero-photo{position:absolute;inset:0;background:url('../img/service-first.jpg') center/cover no-repeat;border-radius:16px;box-shadow:0 50px 90px -32px rgba(13,47,92,.4),0 0 0 1px rgba(201,164,76,.15);z-index:1;overflow:hidden}
.lp-hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,47,92,.05) 0%,transparent 30%,transparent 60%,rgba(13,47,92,.4));border-radius:16px}
.lp-hero-photo::before{content:"CONSULTING SESSION";position:absolute;left:24px;bottom:20px;font-family:var(--font-en);font-size:10px;font-weight:800;letter-spacing:.3em;color:rgba(255,255,255,.85);z-index:2;text-transform:uppercase}
.lp-hero-chart{position:absolute;bottom:-24px;right:-40px;width:48%;aspect-ratio:3/4;padding:20px 16px 90px;transform:rotate(-3deg);z-index:2;background:#fff;border-radius:12px;box-shadow:0 30px 60px -20px rgba(13,47,92,.45),0 2px 6px rgba(13,47,92,.12);border:1px solid rgba(201,164,76,.35);overflow:hidden;transition:transform .5s}
.lp-hero-visual:hover .lp-hero-chart{transform:rotate(0) translate(12px,-4px)}
.lp-hero-chart::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--clr-primary),var(--clr-accent),var(--clr-primary))}
.lp-hero-chart .chart-head{text-align:center;padding:8px 0 16px;border-bottom:1px dashed var(--clr-border);margin-bottom:20px}
.lp-hero-chart .chart-head h4{font-size:11px;font-weight:800;color:var(--clr-primary);letter-spacing:.1em;margin-bottom:4px}
.lp-hero-chart .chart-head p{font-size:8px;color:var(--clr-text-sub);letter-spacing:.2em;text-transform:uppercase;font-weight:700}
.lp-hero-chart .flow{display:flex;flex-direction:column;align-items:center;gap:0}
.lp-hero-chart .n{padding:6px 14px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.05em}
.lp-hero-chart .n.start{background:linear-gradient(135deg,var(--clr-primary),var(--clr-primary-dark));color:#fff;font-family:var(--font-en);font-weight:900;letter-spacing:.2em}
.lp-hero-chart .n.q{background:#fff;border:2px solid var(--clr-primary);padding:8px 10px 8px 32px;position:relative;font-size:10px;min-width:150px;text-align:center;border-radius:8px;box-shadow:0 4px 10px -6px rgba(13,47,92,.2)}
.lp-hero-chart .n.q::before{content:"Q";position:absolute;left:6px;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--clr-accent),var(--clr-accent-light));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-en);font-size:8px;font-weight:900}
.lp-hero-chart .l{width:2px;height:18px;background:linear-gradient(180deg,var(--clr-primary),var(--clr-accent));margin:6px 0;position:relative}
.lp-hero-chart .l::after{content:"";position:absolute;bottom:-5px;left:50%;transform:translateX(-50%);border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--clr-accent)}
.lp-hero-chart .br{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;width:100%}
.lp-hero-chart .br > div{padding:6px 4px;border-radius:6px;font-size:9px;font-weight:800;text-align:center;border:1.5px solid;line-height:1.3}
.lp-hero-chart .br .a{background:rgba(13,47,92,.06);color:var(--clr-primary);border-color:var(--clr-primary)}
.lp-hero-chart .br .b{background:rgba(201,164,76,.1);color:#8a6e2e;border-color:var(--clr-accent)}
.lp-hero-chart::after{content:"";position:absolute;left:0;right:0;bottom:0;height:100px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 60%);pointer-events:none}
.lp-hero-chart .peek{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);z-index:2;padding:6px 12px;background:var(--clr-primary);color:#fff;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.08em;white-space:nowrap;box-shadow:0 8px 18px -4px rgba(13,47,92,.45)}
.lp-hero-chart .peek::before{content:"●";color:var(--clr-accent);margin-right:4px;font-size:5px;vertical-align:middle}
@media(max-width:900px){
  .lp-hero-visual{max-width:400px;aspect-ratio:4/3}
  .lp-hero-photo{transform:rotate(0)}
  .lp-hero-chart{bottom:-24px;right:-16px;width:65%;padding:20px 16px 90px;transform:rotate(-2deg)}
}
@media(max-width:600px){
  .lp-hero-visual{max-width:100%;aspect-ratio:auto;min-height:360px}
  .lp-hero-chart{width:72%;right:0}
}

/* ========== LP 幅最適化（監査対応） ========== */
/* タブレット */
@media(max-width:900px){
  .lp-hero-inner,.lp-trust-inner,.lp-problem-inner,.lp-insight-inner,
  .lp-chart-sec-inner,.lp-benefits-inner,.lp-form-sec-inner,
  .lp-about-inner,.lp-faq-inner,.lp-final-inner{padding-left:24px;padding-right:24px}
}
/* スマホ */
@media(max-width:600px){
  .lp-hero-inner,.lp-trust-inner,.lp-problem-inner,.lp-insight-inner,
  .lp-chart-sec-inner,.lp-benefits-inner,.lp-form-sec-inner,
  .lp-about-inner,.lp-faq-inner,.lp-final-inner{padding-left:20px;padding-right:20px}
}
/* 4 カラム→2 カラム切替をタブレットで */
@media(max-width:900px){
  .lp-problem-grid,.lp-pillars{grid-template-columns:repeat(2,1fr);gap:16px}
}