:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f9f9f9;--surface:#fff;--glass:#ffffffb8;--glass-border:#ffffff73;--border:#0000000f;--border-ui:#e2e6ea;--text:#2f363d;--text-sub:#6b7280;--grad-primary:linear-gradient(135deg, #ff9a8b, #ff6a88, #ff99ac);--grad-support:linear-gradient(135deg, #a1c4fd, #c2e9fb);--grad-aurora:linear-gradient(135deg, #a78bfa, #60a5fa, #f472b6);--blue:#60a5fa;--purple:#a78bfa;--pink:#f472b6;--cyan:#22d3ee;--green:#34d399;--dark-bg:#0f172a;--dark-card:#ffffff0f;--dark-border:#ffffff1f;--dark-text:#fffffff2;--dark-muted:#ffffffa6;--sh-subtle:0 8px 30px #0000000a;--sh-card:0 8px 24px #0000000f;--sh-float:0 12px 32px #00000014;--sh-glow:0 0 20px #a78bfa4d;--r-sm:12px;--r-md:16px;--r-card:24px;--r-xl:32px;--r-pill:9999px;--t-fast:.2s ease-out;--t-base:.4s ease-out;--t-spring:.42s cubic-bezier(.34, 1.56, .64, 1);--px:20px;--section-gap:64px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-noto-sans-jp), var(--font-inter), system-ui, sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;line-height:1.6;overflow-x:hidden}img{max-width:100%;height:auto;display:block}h1{letter-spacing:-.03em;margin:0 0 16px;font-size:clamp(34px,9vw,88px);font-weight:700;line-height:1.08}h2{letter-spacing:-.025em;margin:0 0 20px;font-size:clamp(24px,6vw,44px);font-weight:700;line-height:1.2}h3{margin:0 0 10px;font-size:clamp(17px,4vw,22px);font-weight:600;line-height:1.4}p{margin:0 0 16px;line-height:1.75}p:last-child{margin-bottom:0}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--text-sub);margin:0 0 10px;font-size:11px;font-weight:600;display:block}.heroLine{display:block}.lead{color:var(--text);font-size:clamp(14px,3.8vw,18px);line-height:1.8}.pageRoot{width:100%;overflow-x:hidden}.section{padding:var(--section-gap) var(--px)}.cardSection{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--r-xl);padding:36px var(--px);box-shadow:var(--sh-card);-webkit-backdrop-filter:blur(20px);margin:0 var(--px)}.section.cardSection{padding:36px var(--px);margin-left:var(--px);margin-right:var(--px)}.stack{flex-direction:column;gap:12px;display:flex}@keyframes auroraFlow{0%,to{background-position:0%}50%{background-position:100%}}@keyframes auroraShift{0%{background-position:0%}33%{background-position:60% 20%}66%{background-position:100% 80%}to{background-position:0%}}@keyframes floatUp{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-18px)scale(1.02)}}@keyframes floatDown{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(12px)scale(.98)}}@keyframes heroIn{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes pulseGlow{0%,to{box-shadow:0 0 24px #a78bfa4d, var(--sh-float)}50%{box-shadow:0 0 48px #a78bfa8c,0 16px 40px #0000001f}}@keyframes scrollBounce{0%,to{opacity:.55;transform:translateY(0)}50%{opacity:1;transform:translateY(9px)}}@keyframes perspectiveFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}[data-anim]{opacity:0;transition:opacity .55s ease-out,transform .55s ease-out;transform:translateY(28px)}[data-anim=slide-left]{transform:translate(-28px)}[data-anim=slide-right]{transform:translate(28px)}[data-anim=scale-in]{transform:scale(.93)}[data-anim=fade]{transform:none}[data-anim].is-visible{opacity:1;transform:none}[data-anim][data-delay="1"]{transition-delay:80ms}[data-anim][data-delay="2"]{transition-delay:.16s}[data-anim][data-delay="3"]{transition-delay:.24s}[data-anim][data-delay="4"]{transition-delay:.32s}[data-anim][data-delay="5"]{transition-delay:.4s}[data-anim][data-delay="6"]{transition-delay:.48s}.primaryButton,.ghostButton{border-radius:var(--r-pill);min-height:48px;transition:all var(--t-base);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.primaryButton{color:#fff;background:linear-gradient(135deg,#ff9a8b,#ff6a88,#ff99ac) 0 0/200% 200%;animation:4s ease-in-out infinite auroraFlow;box-shadow:0 8px 24px #ff6a8847}.primaryButton:active{animation-play-state:paused;transform:scale(.95)}@media (hover:hover){.primaryButton:hover{transform:translateY(-2px);box-shadow:0 14px 32px #ff6a8866}}.ghostButton{border:1.5px solid var(--border-ui);color:var(--text);background:#ffffffe6}.ghostButton:active{transform:scale(.96)}@media (hover:hover){.ghostButton:hover{box-shadow:var(--sh-card);background:#fff;transform:translateY(-2px)}}.ctaRow{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.heroSection{background:var(--dark-bg);flex-direction:column;width:100vw;min-height:100vh;margin-left:calc(50% - 50vw);display:flex;position:relative;overflow:hidden}.heroAuroraLayer{pointer-events:none;z-index:0;background:linear-gradient(135deg,#a78bfa47 0%,#60a5fa2e 35%,#f472b62e 65%,#ff9a8c38 100%) 0 0/400% 400%;animation:12s ease-in-out infinite auroraFlow;position:absolute;inset:0}.heroBokeh{pointer-events:none;z-index:0;border-radius:50%;position:absolute}.heroBokeh--1{filter:blur(48px);will-change:transform;background:radial-gradient(circle,#a78bfa73,#0000 70%);width:min(340px,80vw);height:min(340px,80vw);animation:7s ease-in-out infinite floatUp;top:-100px;right:-100px}.heroBokeh--2{filter:blur(56px);will-change:transform;background:radial-gradient(circle,#60a5fa61,#0000 70%);width:min(260px,65vw);height:min(260px,65vw);animation:9s ease-in-out infinite floatDown;bottom:25%;left:-70px}.heroBokeh--3{filter:blur(40px);will-change:transform;background:radial-gradient(circle,#f472b64d,#0000 70%);width:min(200px,50vw);height:min(200px,50vw);animation:11s ease-in-out 1.5s infinite floatUp;top:42%;right:8%}.heroImageWrap{aspect-ratio:4/3;z-index:1;flex-shrink:0;width:100%;position:relative;overflow:hidden}.heroImageWrap:after{content:"";background:linear-gradient(to bottom, transparent 30%, #0f172a99 70%, var(--dark-bg) 100%);pointer-events:none;position:absolute;inset:0}.heroContent{z-index:2;padding:32px var(--px) 72px;color:#fff;flex-direction:column;flex:1;justify-content:flex-end;display:flex;position:relative}.heroContent .eyebrow{color:#ffffff80;animation:.6s ease-out .1s both heroIn}.heroContent h1{color:var(--dark-text);margin-bottom:14px;animation:.65s ease-out .22s both heroIn}.heroContent .lead{color:#ffffffc7;margin-bottom:28px;font-size:clamp(14px,3.5vw,17px);animation:.65s ease-out .38s both heroIn}.heroContent .ctaRow{animation:.65s ease-out .52s both heroIn}.heroContent .primaryButton{background:linear-gradient(135deg,#ff9a8b,#ff6a88,#ff99ac) 0 0/200% 200%}.heroContent .ghostButton{color:#ffffffe0;-webkit-backdrop-filter:blur(12px);background:#ffffff1a;border-color:#ffffff47}.scrollIndicator{z-index:3;flex-direction:column;align-items:center;gap:5px;animation:.6s ease-out .9s both heroIn;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.scrollIndicatorLine{background:linear-gradient(#ffffff8c,#0000);width:1.5px;height:38px;animation:2.2s ease-in-out infinite scrollBounce}.scrollIndicatorDot{background:#ffffff73;border-radius:50%;width:4px;height:4px}@media (min-width:768px){.heroSection{flex-direction:row;align-items:stretch}.heroImageWrap{width:100%;height:100%;aspect-ratio:unset;flex-shrink:unset;position:absolute;inset:0}.heroImageWrap:after{background:linear-gradient(to right, var(--dark-bg) 0%, #0f172ae0 28%, #0f172a66 58%, transparent 100%)}.heroContent{justify-content:center;max-width:620px;min-height:100dvh;padding:100px max(40px,5vw)}.heroContent h1{font-size:clamp(44px,5.5vw,88px)}.heroContent .lead{font-size:clamp(16px,1.6vw,20px)}}.perspectiveSwitcherSection{padding:60px var(--px) 40px;flex-direction:column;align-items:center;gap:16px;display:flex}.switcherPrompt{letter-spacing:.16em;text-transform:uppercase;color:var(--text-sub);margin:0;font-size:11px;font-weight:600}.switcherPill{border:1px solid var(--glass-border);border-radius:var(--r-pill);-webkit-backdrop-filter:blur(16px);box-shadow:var(--sh-card);background:#ffffffad;padding:4px;display:flex;position:relative}.switcherIndicator{border-radius:var(--r-pill);transition:left var(--t-spring), width var(--t-spring);pointer-events:none;background:#fff;position:absolute;box-shadow:0 2px 14px #0000001a}.switcherOption{z-index:1;border-radius:var(--r-pill);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;min-width:110px;min-height:48px;padding:12px 24px;transition:opacity .25s;display:flex;position:relative}.switcherLabel{color:var(--text-sub);font-size:14px;font-weight:700;transition:color .3s}.switcherSub{color:var(--text-sub);opacity:.5;font-size:10px;transition:opacity .3s}.switcherOption--active .switcherLabel{color:var(--text)}.switcherOption--active .switcherSub{opacity:1}.perspectiveContent{animation:.45s ease-out perspectiveFadeIn}.perspectiveSection{background:#ffffffb8!important}.empathyHeading{letter-spacing:-.025em;margin-bottom:24px;font-size:clamp(22px,5.5vw,40px);line-height:1.28}.voiceGrid{flex-direction:column;gap:10px;display:flex}.voiceCard{border:1px solid var(--border);border-radius:var(--r-card);transition:all var(--t-base);background:#fffffff2;padding:20px 18px 20px 22px;position:relative;overflow:hidden}.voiceCard:before{content:"“";color:#a78bfa24;pointer-events:none;font-family:Georgia,serif;font-size:42px;font-weight:700;line-height:1;position:absolute;top:8px;left:14px}.voiceCard:active{transform:scale(.98)}@media (hover:hover){.voiceCard:hover{box-shadow:var(--sh-card);transform:translateY(-3px)}}.voiceQuote{color:var(--text);margin:0;padding-left:4px;font-size:clamp(14px,3.5vw,17px);font-weight:500;line-height:1.75}.kamishibaiBand{width:100vw;margin-left:calc(50% - 50vw);padding:72px 0 100px;position:relative;overflow:hidden}.kamishibaiBand:before{content:"";pointer-events:none;background:linear-gradient(#0000 0%,#edf2ff80 25%,#fff5f26b 72%,#0000 100%),radial-gradient(at 85% 15%,#a1c4fd24 0%,#0000 55%),radial-gradient(at 15% 85%,#ff9a8c1a 0%,#0000 55%);position:absolute;inset:0}.kamishibaiBandInner{width:100%;max-width:800px;padding:0 var(--px);z-index:1;margin:0 auto;position:relative}.kamishibaiIntro{text-align:center;margin:0 auto 56px}.kamishibaiLead{color:var(--text-sub);margin:0;font-size:clamp(14px,3.5vw,19px);line-height:1.75}.storyArc{margin-top:72px}.storyArc:first-of-type{margin-top:0}.storyArcHeader{text-align:center;margin-bottom:36px}.storyArcLabel{letter-spacing:-.03em;margin:0 0 8px;font-size:clamp(20px,5.5vw,42px);font-weight:700;line-height:1.15}.storyArcHint{color:var(--text-sub);margin:0;font-size:clamp(13px,3vw,15px)}.kamishibaiScene{border-radius:var(--r-xl);box-shadow:var(--sh-float);background:#fff;flex-direction:column;margin-bottom:48px;display:flex;overflow:hidden}.kamishibaiScene:last-child{margin-bottom:0}.kamishibaiVisual{aspect-ratio:4/3;background:linear-gradient(135deg,#a78bfa26,#60a5fa26);flex-shrink:0;position:relative;overflow:hidden}.kamishibaiVisualPlaceholder{width:100%;height:100%;color:var(--text-sub);letter-spacing:.1em;justify-content:center;align-items:center;font-size:12px;display:flex}.kamishibaiCopy{padding:26px 22px 32px}.kamishibaiSceneStep{letter-spacing:.22em;text-transform:uppercase;color:var(--text-sub);margin:0 0 10px;font-size:10px;font-weight:600}.kamishibaiHeadline{letter-spacing:-.03em;margin:0 0 14px;font-size:clamp(24px,6.5vw,56px);font-weight:700;line-height:1.1}.kamishibaiLine{color:var(--text);margin:0;font-size:clamp(14px,3.5vw,18px);line-height:1.85}@media (min-width:768px){.kamishibaiBandInner{max-width:1200px}.kamishibaiScene{flex-direction:row;align-items:stretch;min-height:460px;margin-bottom:64px}.kamishibaiScene--flip{flex-direction:row-reverse}.kamishibaiVisual{aspect-ratio:unset;flex:1.1;min-height:420px}.kamishibaiCopy{flex-direction:column;flex:.9;justify-content:center;padding:44px 36px;display:flex}}.transformSection{background:linear-gradient(135deg,#fff5f2f2,#edf2ffe6)!important}.transformLabel{letter-spacing:.22em;text-transform:uppercase;color:var(--text-sub);margin:0 0 20px;font-size:11px;font-weight:600;display:block}.transformScene{border-left:3px solid #a78bfa66;margin:0 0 22px;padding-left:20px}.transformScene p{color:var(--text);margin:0 0 12px;font-size:clamp(15px,3.8vw,22px);line-height:1.9}.transformScene p:last-child{margin-bottom:0}.transformAfter{color:var(--text);border-radius:var(--r-md);border:1px solid var(--border);background:#ffffffd9;margin:0;padding:16px 18px;font-size:clamp(13px,3.5vw,16px);font-weight:600}.whyIntro{color:var(--text);margin:0 0 28px;font-size:clamp(14px,3.8vw,18px);line-height:1.9}.whyPillarGrid{flex-direction:column;gap:12px;display:flex}.whyPillar{border:1px solid var(--border);border-radius:var(--r-card);transition:all var(--t-base);background:#ffffffeb;padding:24px 20px;position:relative;overflow:hidden}.whyPillar:before{content:"";background:linear-gradient(135deg,#a78bfa,#60a5fa,#f472b6) 0 0/200% 200%;height:3px;animation:5s ease-in-out infinite auroraFlow;position:absolute;top:0;left:0;right:0}.whyPillar:active{transform:scale(.98)}@media (hover:hover){.whyPillar:hover{box-shadow:var(--sh-float);transform:translateY(-4px)}}.whyPillarNum{letter-spacing:.2em;color:var(--text-sub);margin:0 0 8px;font-size:11px;font-weight:600;display:block}@media (min-width:768px){.whyPillarGrid{flex-direction:row;gap:16px}.whyPillar{flex:1}}.mediaSectionHeader{margin-bottom:20px}.mediaSectionLead{color:var(--text-sub);margin:4px 0 0;font-size:clamp(13px,3.2vw,15px)}.categoryFilter{scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-bottom:18px;margin-left:calc(var(--px) * -1);margin-right:calc(var(--px) * -1);padding-bottom:4px;padding-left:var(--px);padding-right:var(--px);gap:8px;display:flex;overflow-x:auto}.categoryFilter::-webkit-scrollbar{display:none}.categoryPill{border-radius:var(--r-pill);border:1.5px solid var(--border-ui);color:var(--text-sub);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;background:#ffffffe0;flex-shrink:0;min-height:36px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s}.categoryPill:active{transform:scale(.96)}.categoryPill--active{background:var(--text);color:#fff;border-color:var(--text)}.shortsScrollWrap{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-left:calc(var(--px) * -1);margin-right:calc(var(--px) * -1);padding-bottom:12px;padding-left:var(--px);padding-right:var(--px);gap:12px;display:flex;overflow-x:auto}.shortsScrollWrap::-webkit-scrollbar{display:none}.shortCard{width:min(158px,40vw);color:var(--text);scroll-snap-align:start;-webkit-tap-highlight-color:transparent;transition:transform var(--t-fast);flex-shrink:0;text-decoration:none}.shortCard:active{transform:scale(.95)}.shortThumbnail{aspect-ratio:9/16;border:1px solid var(--border);background:linear-gradient(155deg,#ede9fe 0%,#dbeafe 100%);border-radius:16px;margin-bottom:10px;position:relative;overflow:hidden}.shortThumbnail img{object-fit:cover;width:100%;height:100%}.shortThumbnailPlaceholder{background:linear-gradient(155deg,#ede9fe 0%,#dbeafe 100%);width:100%;height:100%}.shortBadge{color:#fff;letter-spacing:.05em;background:#00000094;border-radius:6px;padding:3px 7px;font-size:9px;font-weight:700;position:absolute;bottom:8px;left:8px}.shortMeta{flex-direction:column;gap:3px;display:flex}.shortCategory{color:var(--text-sub);letter-spacing:.04em;font-size:10px}.shortTitle{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12px;font-weight:600;line-height:1.45;display:-webkit-box;overflow:hidden}.mediaCtaRow{justify-content:center;margin-top:24px;display:flex}@media (min-width:768px){.shortsScrollWrap{scroll-snap-type:none;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px;margin-left:0;margin-right:0;padding-bottom:0;padding-left:0;padding-right:0;display:grid;overflow-x:visible}.shortCard{flex-shrink:1;width:auto}@media (hover:hover){.shortCard:hover{transform:translateY(-4px)}.shortCard:active{transform:none}}}@media (min-width:1024px){.shortsScrollWrap{grid-template-columns:repeat(auto-fill,minmax(148px,1fr))}}.noteGrid{flex-direction:column;gap:14px;display:flex}.noteCard{color:var(--text);border:1px solid var(--border);border-radius:var(--r-card);transition:all var(--t-base);-webkit-tap-highlight-color:transparent;background:#ffffffeb;flex-direction:row;text-decoration:none;display:flex;overflow:hidden}.noteCard:active{transform:scale(.98)}@media (hover:hover){.noteCard:hover{box-shadow:var(--sh-float);border-color:var(--glass-border);transform:translateY(-4px)}}.noteCover{background:linear-gradient(135deg,#c4b5fd,#f9a8d4);flex-shrink:0;width:100px;overflow:hidden}.noteCover img{object-fit:cover;width:100%;height:100%}.noteCoverPlaceholder{width:100%;height:100%}.noteCard:first-child .noteCoverPlaceholder{background:linear-gradient(135deg,#c4b5fd,#f9a8d4)}.noteCard:nth-child(2) .noteCoverPlaceholder{background:linear-gradient(135deg,#93c5fd,#6ee7b7)}.noteCard:nth-child(3) .noteCoverPlaceholder{background:linear-gradient(135deg,#fca5a5,#fcd34d)}.noteCard:nth-child(4) .noteCoverPlaceholder{background:linear-gradient(135deg,#a78bfa,#60a5fa)}.noteCard:nth-child(5) .noteCoverPlaceholder{background:linear-gradient(135deg,#f9a8d4,#fb923c)}.noteCard:nth-child(6) .noteCoverPlaceholder{background:linear-gradient(135deg,#6ee7b7,#a78bfa)}.noteMeta{flex-direction:column;flex:1;min-width:0;padding:14px 16px;display:flex}.noteDate{color:var(--text-sub);letter-spacing:.03em;margin:0 0 5px;font-size:10px;display:block}.noteTitle{color:var(--text);margin:0 0 7px;font-size:13px;font-weight:700;line-height:1.45}.noteExcerpt{color:var(--text-sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;margin:0;font-size:11px;line-height:1.65;display:-webkit-box;overflow:hidden}@media (min-width:600px){.noteGrid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.noteCard{flex-direction:column}.noteCover{aspect-ratio:16/9;width:100%}.noteMeta{padding:16px 18px 20px}.noteTitle{font-size:14px}.noteExcerpt{-webkit-line-clamp:3;font-size:12px}}@media (min-width:1024px){.noteGrid{grid-template-columns:repeat(3,1fr)}.noteTitle{font-size:15px}}.faqCard{border:1px solid var(--border);border-radius:var(--r-card);transition:all var(--t-base);background:#ffffffe0;padding:20px 18px}.faqCard:active{transform:scale(.98)}@media (hover:hover){.faqCard:hover{box-shadow:var(--sh-card);transform:translateY(-2px)}}.faqQ{color:var(--text);margin:0 0 8px;font-size:clamp(14px,3.5vw,16px);font-weight:700;line-height:1.5}.faqQ:before{content:"Q. ";color:var(--purple);font-weight:700}.faqA{color:var(--text-sub);margin:0;font-size:clamp(13px,3.2vw,14px);line-height:1.8}.ctaSection{border-radius:var(--r-xl);padding:56px var(--px);margin:0 var(--px) 0;color:#fff;background:linear-gradient(135deg,#a78bfa,#60a5fa,#f472b6,#ff9a8b) 0 0/300% 300%;animation:9s ease-in-out infinite auroraShift,5s ease-in-out infinite pulseGlow;position:relative;overflow:hidden}.ctaSection:before{content:"";pointer-events:none;background:linear-gradient(135deg,#0f172a2e,#0000 60%);position:absolute;inset:0}.ctaSection:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff1f,#0000 70%);border-radius:50%;width:280px;height:280px;position:absolute;top:-120px;right:-80px}.ctaSection h2{color:#fffffff7;z-index:1;position:relative}.ctaSection p{color:#ffffffe0;z-index:1;position:relative}.ctaSection .primaryButton{z-index:1;color:var(--dark-bg);background:#fffffff5;font-weight:700;animation:none;position:relative;box-shadow:0 8px 28px #0000002e}.ctaSection .primaryButton:active{transform:scale(.96)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-anim]{opacity:1;transform:none}}
