:root{--ocean:#0e8d8a;--ocean-deep:#0a6b69;--coral:#ff7a59;--coral-soft:#ff9d7d;--sand:#fff8f2;--ink:#1f2d2c;--ink-soft:#5a6c6a;--line:#e7e0d8;--card-radius:26px;--shadow:0 20px 50px -20px #0e8d8a73}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--sand);-webkit-font-smoothing:antialiased;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;line-height:1.75;overflow-x:hidden}a{color:inherit;text-decoration:none}.wrap{max-width:1120px;margin:0 auto;padding:0 24px}nav{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#fff8f2d1;position:sticky;top:0}nav .wrap{justify-content:space-between;align-items:center;height:66px;display:flex}.logo{letter-spacing:.02em;align-items:center;gap:9px;font-size:20px;font-weight:800;display:flex}.logo .mark{background:linear-gradient(135deg,var(--ocean),var(--coral));color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;font-size:15px;display:grid;transform:rotate(-8deg)}.nav-links{align-items:center;gap:28px;display:flex}.nav-links a{color:var(--ink-soft);font-size:14.5px;font-weight:600;text-decoration:none}.nav-links a:hover{color:var(--ocean)}.btn{cursor:pointer;background:linear-gradient(135deg,var(--coral),var(--coral-soft));color:#fff;border:none;border-radius:999px;padding:12px 24px;font-family:inherit;font-size:15px;font-weight:700;text-decoration:none;transition:transform .18s,box-shadow .18s;display:inline-block;box-shadow:0 10px 24px -10px #ff7a59cc}.btn:hover{transform:translateY(-2px);box-shadow:0 16px 30px -12px #ff7a59e6}.btn.ghost{color:var(--ocean);background:#fff;box-shadow:0 8px 20px -12px #0e8d8a80}@media (max-width:760px){.nav-links a:not(.btn){display:none}}.hero{padding:70px 0 90px;position:relative;overflow:hidden}.hero:before{content:"";z-index:0;background:radial-gradient(circle at 30% 30%,#ff7a5938,#0000 65%);border-radius:50%;width:520px;height:520px;position:absolute;top:-180px;right:-160px}.hero:after{content:"";z-index:0;background:radial-gradient(circle at 40% 40%,#0e8d8a2e,#0000 65%);border-radius:50%;width:560px;height:560px;position:absolute;bottom:-220px;left:-180px}.hero .wrap{z-index:1;grid-template-columns:1.05fr .95fr;align-items:center;gap:48px;display:grid;position:relative}@media (max-width:900px){.hero .wrap{grid-template-columns:1fr;gap:56px}}.eyebrow{color:var(--ocean-deep);background:#0e8d8a1a;border-radius:999px;align-items:center;gap:8px;margin-bottom:22px;padding:7px 14px;font-size:13px;font-weight:700;display:inline-flex}.eyebrow .dot{background:var(--coral);border-radius:50%;width:7px;height:7px;animation:1.8s infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.5)}}h1{letter-spacing:.01em;font-size:clamp(34px,5vw,52px);font-weight:900;line-height:1.22}h1 .accent{background:linear-gradient(120deg,var(--ocean),var(--coral));color:#0000;-webkit-background-clip:text;background-clip:text}.hero p.lead{color:var(--ink-soft);max-width:30em;margin:22px 0 30px;font-size:17.5px}.hero-cta{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.hero-note{color:var(--ink-soft);align-items:center;gap:7px;margin-top:18px;font-size:13.5px;display:flex}.hero-note b{color:var(--coral)}.stack-stage{perspective:1400px;place-items:center;height:440px;display:grid;position:relative}.stack{width:300px;height:400px;position:relative}.card{border-radius:var(--card-radius);box-shadow:var(--shadow);transform-origin:bottom;will-change:transform,opacity;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-y;background:#fff;border:1px solid #ffffffb3;flex-direction:column;padding:28px 26px;transition:transform .6s cubic-bezier(.22,1,.36,1),opacity .6s;display:flex;position:absolute;inset:0;overflow:hidden}.card .glow{opacity:.85;filter:blur(6px);border-radius:50%;width:170px;height:170px;position:absolute;top:-60px;right:-60px}.card .tag{color:#fff;z-index:1;border-radius:999px;align-self:flex-start;padding:6px 13px;font-size:12px;font-weight:700;position:relative}.card .emoji{z-index:1;margin:24px 0 10px;font-size:54px;position:relative}.card .role{z-index:1;font-size:24px;font-weight:900;position:relative}.card .desc{color:var(--ink-soft);z-index:1;flex:1;margin-top:10px;font-size:14.5px;position:relative}.card .meta{color:var(--ink-soft);z-index:1;border-top:1px solid var(--line);align-items:center;gap:8px;padding-top:14px;font-size:13px;display:flex;position:relative}.card .meta .av{background:linear-gradient(135deg,var(--ocean),var(--coral));color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;font-size:12px;font-weight:700;display:grid}.stack-hint{text-align:center;color:var(--ink-soft);opacity:.8;font-size:12.5px;position:absolute;bottom:-2px;left:0;right:0}.dots{justify-content:center;gap:7px;margin-top:26px;display:flex}.dots span{background:var(--line);cursor:pointer;border-radius:50%;width:8px;height:8px;transition:all .3s}.dots span.on{background:var(--coral);border-radius:999px;width:22px}section{padding:84px 0}.sec-head{text-align:center;max-width:36em;margin:0 auto 52px}.sec-head .kicker{color:var(--coral);letter-spacing:.08em;font-size:14px;font-weight:800}.sec-head h2{margin:10px 0 14px;font-size:clamp(26px,3.6vw,36px);font-weight:900;line-height:1.3}.sec-head p{color:var(--ink-soft);font-size:16px}.features{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}@media (max-width:840px){.features{grid-template-columns:1fr}}.feat{border:1px solid var(--line);background:#fff;border-radius:22px;padding:32px 26px;transition:transform .25s,box-shadow .25s}.feat:hover{box-shadow:var(--shadow);transform:translateY(-6px)}.feat .ic{background:linear-gradient(135deg,#0e8d8a1f,#ff7a5926);border-radius:15px;place-items:center;width:54px;height:54px;margin-bottom:18px;font-size:26px;display:grid}.feat h3{margin-bottom:10px;font-size:20px;font-weight:800}.feat p{color:var(--ink-soft);font-size:14.5px}.how{background:linear-gradient(180deg,#fff,var(--sand))}.steps{counter-reset:step;grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (max-width:840px){.steps{grid-template-columns:1fr}}.step{border:1px solid var(--line);background:#fff;border-radius:20px;padding:30px 24px;position:relative}.step .num{counter-increment:step;color:#fff;background:linear-gradient(135deg,var(--ocean),var(--coral));border-radius:12px;place-items:center;width:40px;height:40px;margin-bottom:16px;font-size:17px;font-weight:900;display:grid}.step .num:before{content:counter(step)}.step h4{margin-bottom:8px;font-size:17px;font-weight:800}.step p{color:var(--ink-soft);font-size:14px}.plans{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:22px;display:grid}@media (max-width:840px){.plans{grid-template-columns:1fr}}.plan{border:1px solid var(--line);background:#fff;border-radius:24px;flex-direction:column;padding:34px 28px;display:flex}.plan.featured{border:2px solid var(--coral);box-shadow:var(--shadow);position:relative}.plan.featured .ribbon{background:var(--coral);color:#fff;white-space:nowrap;border-radius:999px;padding:5px 16px;font-size:12px;font-weight:800;position:absolute;top:-13px;left:50%;transform:translate(-50%)}.plan h3{font-size:19px;font-weight:800}.plan .price{margin:14px 0 2px;font-size:38px;font-weight:900}.plan .price small{color:var(--ink-soft);font-size:15px;font-weight:600}.plan .sub{color:var(--ink-soft);margin-bottom:22px;font-size:13.5px}.plan ul{flex-direction:column;flex:1;gap:11px;margin-bottom:24px;list-style:none;display:flex}.plan li{align-items:flex-start;gap:9px;font-size:14px;display:flex}.plan li:before{content:"✓";color:var(--ocean);flex:none;font-weight:900}.campaign{max-width:1120px;margin:0 auto;padding:0 24px}.campaign-inner{background:linear-gradient(120deg,var(--ocean),var(--ocean-deep));color:#fff;text-align:center;border-radius:28px;padding:48px 40px;position:relative;overflow:hidden}.campaign-inner:before{content:"";filter:blur(20px);background:#ff7a5966;border-radius:50%;width:240px;height:240px;position:absolute;top:-80px;right:-40px}.campaign-inner h2{margin-bottom:12px;font-size:clamp(24px,3.4vw,34px);font-weight:900;position:relative}.campaign-inner p{opacity:.92;margin-bottom:26px;font-size:16px;position:relative}.campaign-inner .btn{color:var(--ocean-deep);background:#fff;position:relative}.brand-band{text-align:center;background:linear-gradient(180deg,#e9f6f5 0%,#f4faf6 50%,var(--sand) 100%);padding:96px 0 100px;position:relative;overflow:hidden}.brand-band:before{content:"";background:radial-gradient(#0e8d8a1f,#0000 70%);border-radius:50% 50% 0 0;width:120%;height:160px;position:absolute;bottom:-40px;left:50%;transform:translate(-50%)}.brand-lead{color:var(--ink-soft);margin-bottom:26px;font-size:clamp(15px,2vw,18px);line-height:2;position:relative}.brand-quote{color:var(--ocean-deep);font-weight:700;display:inline-block;position:relative}.brand-big{letter-spacing:.04em;background:linear-gradient(120deg,var(--ocean) 20%,var(--coral) 90%);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(42px,8vw,86px);font-weight:900;line-height:1.15;position:relative}.brand-sub{color:var(--ink-soft);margin-top:22px;font-size:15px;position:relative}.final{text-align:center}.final h2{margin-bottom:16px;font-size:clamp(28px,4vw,42px);font-weight:900}.final p{color:var(--ink-soft);max-width:30em;margin:0 auto 30px;font-size:17px}footer{border-top:1px solid var(--line);background:#fff;padding:40px 0}footer .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}footer .muted{color:var(--ink-soft);font-size:13px}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(26px)}.reveal.in{opacity:1;transform:none}
