:root{--lemon:#fce651;--lemon-deep:#f4d920;--cream:#fffbe6;--paper:#fffef6;--black:#1a1916;--ink:#2c2a24;--muted:#5f5d54}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-noto-sans-jp), var(--font-inter), sans-serif;background:var(--lemon);color:var(--black);-webkit-font-smoothing:antialiased;line-height:1.85;overflow-x:hidden}::selection{background:var(--black);color:var(--lemon)}img{max-width:100%;display:block}.wrap{max-width:1180px;margin:0 auto;padding:0 28px}.site-nav{z-index:60;background:var(--lemon);border-bottom:3px solid var(--black);position:fixed;inset:0 0 auto}.site-nav .wrap{justify-content:space-between;align-items:center;gap:16px;min-height:78px;display:flex}.brand.lockup{color:var(--black);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand.logo-image{align-items:center;text-decoration:none;display:inline-flex}.brand-mark{border-radius:6px;width:28px;height:28px}.brand-logo{width:auto;height:26px;display:block}.brand-logo.brand-icon{width:auto;height:32px}.brand-logo.footer-logo{height:20px}.wordmark-text{font-family:var(--font-archivo-black), var(--font-noto-sans-jp), sans-serif;letter-spacing:-.01em;font-size:24px;line-height:1}.navlinks{flex-wrap:wrap;gap:4px;display:flex}.nav-end{flex-shrink:0;align-items:center;gap:10px;display:flex}.nav-toggle{border:3px solid var(--black);background:var(--paper);cursor:pointer;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:none}.nav-toggle-bar{background:var(--black);border-radius:2px;width:20px;height:2px;transition:transform .2s,opacity .2s;display:block}.nav-toggle-bar+.nav-toggle-bar{margin-top:5px}.site-nav--open .nav-toggle-bar:first-child{transform:translateY(7px)rotate(45deg)}.site-nav--open .nav-toggle-bar:nth-child(2){opacity:0}.site-nav--open .nav-toggle-bar:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.navlinks a{color:var(--black);white-space:nowrap;border-radius:30px;padding:8px 13px;font-size:14px;font-weight:700;text-decoration:none;transition:all .16s}.navlinks a:hover,.navlinks a.active{background:var(--black);color:var(--lemon)}.navcta{background:var(--black);color:var(--lemon);white-space:nowrap;border-radius:40px;padding:11px 20px;font-size:14px;font-weight:800;text-decoration:none;transition:all .2s}.navcta:hover{transform:rotate(-3deg)scale(1.05)}@media (max-width:920px){.site-nav .wrap{flex-wrap:nowrap;min-height:64px}.nav-toggle{flex-direction:column;display:flex}.navlinks{z-index:59;background:var(--lemon);border-bottom:3px solid var(--black);flex-direction:column;gap:0;max-height:calc(100vh - 67px);padding:12px 28px 20px;display:none;position:fixed;top:67px;left:0;right:0;overflow-y:auto}.site-nav--open .navlinks{display:flex}.navlinks a{border-bottom:1px solid #1a13101f;border-radius:0;padding:14px 4px;font-size:16px}.navlinks a:last-child{border-bottom:none}.navlinks a:hover,.navlinks a.active{color:var(--black);text-underline-offset:4px;background:0 0;text-decoration:underline}.navcta{padding:9px 16px;font-size:13px}}section{padding:92px 0}.eyebrow{font-family:var(--font-archivo-black), sans-serif;letter-spacing:.08em;background:var(--black);color:var(--lemon);border-radius:20px;margin-bottom:20px;padding:6px 15px;font-size:13px;display:inline-block}h2.sec{font-family:var(--font-archivo-black), var(--font-noto-sans-jp), sans-serif;letter-spacing:-.01em;font-size:clamp(28px,5vw,56px);line-height:1.08}.lead{max-width:760px;font-size:clamp(16px,1.9vw,19px);font-weight:500;line-height:1.95}.hero{padding:122px 0 56px;position:relative}.hero-grid{grid-template-columns:minmax(0,1fr) 300px;gap:24px;display:grid}.hero .badge{background:var(--black);color:var(--lemon);letter-spacing:.04em;border-radius:30px;margin-bottom:30px;padding:8px 18px;font-size:14px;font-weight:800;display:inline-block}.big{font-family:var(--font-archivo-black), var(--font-noto-sans-jp), sans-serif;letter-spacing:-.02em;font-size:clamp(56px,11.5vw,176px);font-weight:900;line-height:.86}.big .wob{cursor:default;transition:transform .3s cubic-bezier(.34,1.56,.64,1);display:inline-block}.big .wob:hover{transform:translateY(-14px)rotate(-7deg)}.heroflow{flex-wrap:wrap;align-items:center;gap:clamp(16px,3vw,40px);margin-top:6px;display:flex}.heroflow .arrow{font-family:var(--font-archivo-black), sans-serif;color:var(--cream);-webkit-text-stroke:3px var(--black);font-size:clamp(44px,8vw,120px);line-height:1}.rot{font-family:var(--font-archivo-black), var(--font-noto-sans-jp), sans-serif;font-size:clamp(48px,11vw,150px);line-height:.9;position:relative}.rot span{transition:opacity .42s,transform .42s;display:inline-block}.rot:after{content:"✦";color:var(--black);font-size:.26em;animation:6s linear infinite spin;position:absolute;top:-.1em;right:-.55em}@keyframes spin{to{transform:rotate(360deg)}}.hero .sub{max-width:740px;margin-top:24px;font-size:clamp(16px,1.8vw,22px);font-weight:700;line-height:1.7}.hero .sub mark{background:var(--black);color:var(--lemon);border-radius:6px;padding:0 8px}.hero-side{background:var(--paper);border:3px solid var(--black);box-shadow:6px 6px 0 var(--black);border-radius:20px;align-self:center;padding:24px 22px}.hero-side h2{font-family:var(--font-archivo-black), var(--font-noto-sans-jp), sans-serif;font-size:24px;line-height:1.2}.hero-side p{color:var(--ink);margin-top:12px;font-size:14px;line-height:1.8}.hero-pills{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.hero-pills span{border:2px solid var(--black);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}.hero-actions{margin-top:18px}.hero-actions .navcta{display:inline-block}@media (max-width:980px){.hero-grid{grid-template-columns:1fr}.hero-side{max-width:520px}}.phero{border-bottom:3px solid var(--black);padding:140px 0 70px}.phero .badge{background:var(--black);color:var(--lemon);border-radius:30px;margin-bottom:22px;padding:7px 17px;font-size:13px;font-weight:800;display:inline-block}.phero h1{font-family:var(--font-archivo-black), var(--font-noto-sans-jp), sans-serif;letter-spacing:-.02em;font-size:clamp(30px,6vw,72px);line-height:1.05}.phero p{max-width:720px;margin-top:22px;font-size:clamp(16px,2vw,20px);font-weight:600}.phero-news{padding:120px 0 48px}.phero-news h1{letter-spacing:0;max-width:900px;font-size:clamp(22px,3.2vw,32px);font-weight:900;line-height:1.45}.phero-news .news-detail-date{margin-top:0;margin-bottom:12px}.panel{background:var(--black);color:var(--cream);border-radius:26px;padding:clamp(34px,5vw,72px)}.panel h2.sec{color:var(--lemon)}.panel .lead{color:#ede9d4}.card{background:var(--paper);border:3px solid var(--black);box-shadow:7px 7px 0 var(--black);border-radius:22px;padding:clamp(28px,3vw,42px)}.card.hl{box-shadow:7px 7px 0 var(--lemon-deep)}.mark{background:var(--lemon);border-radius:6px;padding:0 7px;font-weight:700}.panel .mark{color:var(--black)}.appgrid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:46px;display:grid}.appcard{background:var(--paper);border:3px solid var(--black);box-shadow:6px 6px 0 var(--black);border-radius:22px;padding:36px 32px;transition:all .2s}.appcard:hover{box-shadow:10px 10px 0 var(--black);transform:translate(-3px,-3px)}.appcard .n{font-family:var(--font-archivo-black), sans-serif;font-size:46px;line-height:1}.appcard h3{margin:12px 0;font-size:21px;font-weight:900}.appcard p{color:var(--ink);font-size:15px;font-weight:500;line-height:1.85}@media (max-width:820px){.appgrid{grid-template-columns:1fr}}.svc3{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:46px;display:grid}.svc3 .s{background:var(--black);color:var(--cream);border-radius:22px;flex-direction:column;padding:34px;transition:all .25s;display:flex}.svc3 .s:hover{background:var(--cream);color:var(--black);transform:rotate(2deg)}.svc3 .s .tag{font-family:var(--font-archivo-black), sans-serif;color:var(--lemon);font-size:13px}.svc3 .s h3{margin:14px 0 12px;font-size:22px;font-weight:900}.svc3 .s p{opacity:.9;font-size:14px;line-height:1.85}.svc3 .s .more{margin-top:auto;padding-top:22px}.svc3 .s .more a{color:var(--lemon);align-items:center;gap:6px;font-size:14px;font-weight:800;text-decoration:none;transition:all .18s;display:inline-flex}.svc3 .s:hover .more a{color:var(--black)}.svc3 .s .more a:hover{transform:translate(4px)}@media (max-width:820px){.svc3{grid-template-columns:1fr}}.prog-grid{gap:20px;max-width:640px;margin-top:32px;display:grid}.prog-card{background:var(--paper);border:3px solid var(--black);border-radius:22px;grid-template-columns:180px minmax(0,1fr);transition:all .25s;display:grid;overflow:hidden}.prog-card-image{border-right:3px solid var(--black);background:var(--cream);justify-content:center;align-self:center;align-items:center;width:180px;padding:10px;display:flex;overflow:hidden}.prog-card-image img{object-fit:contain;width:100%;height:auto;display:block}.prog-card-body{flex-direction:column;flex:1;padding:24px 28px;display:flex}.prog-card:hover{box-shadow:8px 8px 0 var(--black);transform:rotate(-1deg)}.prog-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.prog-card .tag{font-family:var(--font-archivo-black), sans-serif;color:var(--black);opacity:.7;font-size:13px}.prog-badge{background:var(--lemon);color:var(--black);border:2px solid var(--black);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:800;display:inline-block}.prog-card h3{margin:10px 0 8px;font-size:20px;font-weight:900}.prog-card p{font-size:14px;line-height:1.85}.prog-card .more{margin-top:auto;padding-top:22px}.prog-card .more a{color:var(--black);align-items:center;gap:6px;font-size:14px;font-weight:800;text-decoration:none;transition:all .18s;display:inline-flex}.prog-card .more a:hover{transform:translate(4px)}@media (max-width:620px){.prog-card{grid-template-columns:1fr}.prog-card-image{border-right:none;border-bottom:3px solid var(--black);width:100%;padding:12px 16px}}.feats{gap:22px;margin-top:42px;display:grid}.feats.c2{grid-template-columns:1fr 1fr}.feats.c3{grid-template-columns:repeat(3,1fr)}.feat h3{align-items:center;gap:10px;margin-bottom:12px;font-size:20px;font-weight:900;display:flex}.feat h3 .ic{background:var(--lemon);border:3px solid var(--black);width:40px;height:40px;font-family:var(--font-archivo-black), sans-serif;letter-spacing:.02em;border-radius:12px;flex:none;justify-content:center;align-items:center;font-size:14px;line-height:1;display:flex}.feat p{color:var(--ink);font-size:15px;line-height:1.9}.feat ul{margin-top:6px;padding-left:2px;list-style:none}.feat li{margin:10px 0;padding-left:24px;font-size:15px;position:relative}.feat li:before{content:"✦";color:var(--lemon-deep);-webkit-text-stroke:.6px var(--black);font-weight:900;position:absolute;left:0}@media (max-width:820px){.feats.c2,.feats.c3{grid-template-columns:1fr}}.prose p{max-width:820px;margin-bottom:18px;font-weight:500;line-height:1.95}.inline-link{color:var(--black);text-underline-offset:3px;font-weight:800;text-decoration:underline}.inline-link:hover{color:var(--ink)}.cred-list{list-style:none}.cred-list li{margin:10px 0;padding-left:24px;font-size:15px;font-weight:500;line-height:1.85;position:relative}.cred-list li:before{content:"—";color:var(--lemon-deep);-webkit-text-stroke:.5px var(--black);position:absolute;left:0}.marquee{border-top:3px solid var(--black);border-bottom:3px solid var(--black);white-space:nowrap;background:var(--lemon);padding:13px 0;overflow:hidden}.marquee div{font-family:var(--font-archivo-black), sans-serif;font-size:22px;animation:22s linear infinite scroll;display:inline-block}.marquee span{margin:0 24px}.marquee .o{color:var(--cream);-webkit-text-stroke:2px var(--black)}@keyframes scroll{to{transform:translate(-50%)}}.tags{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.tags span{border:2px solid var(--black);border-radius:30px;padding:7px 15px;font-size:13px;font-weight:700;transition:all .15s}.tags span:hover{background:var(--black);color:var(--lemon)}.info{grid-template-columns:1.1fr 1fr;gap:30px;margin-top:46px;display:grid}.profile .name{font-family:var(--font-archivo-black), var(--font-noto-sans-jp), sans-serif;font-size:clamp(22px,3vw,32px)}.profile-photo{border:3px solid var(--black);width:min(220px,100%);height:auto;box-shadow:6px 6px 0 var(--black);border-radius:12px;margin-bottom:20px}.profile .role{color:var(--muted);margin:4px 0 18px;font-weight:700}.profile p{font-size:15px;font-weight:500;line-height:1.95}.profile ul{margin-top:18px;list-style:none}.profile li{color:var(--ink);margin:8px 0;padding-left:22px;font-size:14px;position:relative}.profile li:before{content:"—";color:var(--lemon-deep);-webkit-text-stroke:.5px var(--black);position:absolute;left:0}.tbl{align-self:start}.tbl dl{grid-template-columns:auto 1fr;gap:0;display:grid}.tbl dt{border-bottom:2px solid var(--black);white-space:nowrap;padding:14px 24px 14px 0;font-weight:800}.tbl dd{border-bottom:2px solid #1a191626;padding:14px 0;font-size:15px;font-weight:500}.tbl dd a{color:var(--black);text-underline-offset:3px;font-weight:700;text-decoration:underline}.tbl dd a:hover{color:var(--ink)}@media (max-width:820px){.info{grid-template-columns:1fr}}.contact-cta{background:var(--black);color:var(--cream);text-align:center;border-radius:28px;padding:clamp(46px,7vw,96px)}.contact-cta .eyebrow{margin-bottom:8px}.contact-cta h2{font-family:var(--font-archivo-black), var(--font-noto-sans-jp), sans-serif;color:var(--lemon);letter-spacing:-.03em;font-size:clamp(34px,6vw,80px);line-height:1.02}.contact-cta p{max-width:480px;margin:24px auto 0;font-size:17px;font-weight:600}.contact-cta .btn{background:var(--lemon);color:var(--black);font-weight:900;font-family:var(--font-archivo-black), sans-serif;border-radius:40px;margin-top:36px;padding:18px 46px;text-decoration:none;transition:all .2s;display:inline-block}.contact-cta .btn:hover{transform:scale(1.06)rotate(-2deg)}.contact-shell{background:var(--paper);border:3px solid var(--black);max-width:900px;box-shadow:8px 8px 0 var(--black);border-radius:16px;margin:0 auto;padding:clamp(32px,4vw,52px)}.contact-title{text-align:center;font-family:var(--font-archivo-black), var(--font-noto-sans-jp), sans-serif;font-size:clamp(36px,5vw,60px);line-height:1.1}.contact-lead{text-align:center;margin-top:28px;font-size:clamp(17px,2vw,30px);font-weight:500;line-height:1.9}.studio-form{margin-top:46px}.studio-form .field{margin-bottom:36px}.studio-form label{align-items:center;gap:10px;margin-bottom:14px;font-size:clamp(20px,2.6vw,44px);font-weight:800;display:flex}.studio-form .req{background:var(--black);color:var(--lemon);border-radius:4px;justify-content:center;align-items:center;padding:8px 12px;font-size:16px;font-weight:900;line-height:1;display:inline-flex}.studio-form input,.studio-form textarea{border:2px solid var(--black);background:var(--cream);border-radius:8px;width:100%;padding:16px 18px;font-family:inherit;font-size:18px}.studio-form textarea{resize:vertical;min-height:320px}.studio-form input:focus,.studio-form textarea:focus{outline:2px solid var(--lemon-deep);outline-offset:2px}.privacy-box{margin-top:12px}.privacy-link{color:var(--black);font-size:clamp(24px,2.2vw,36px);font-weight:700;text-decoration:underline;display:inline-block}.privacy-check{align-items:center;gap:14px;margin-top:22px;font-size:clamp(22px,2.4vw,40px);font-weight:700;display:flex}.privacy-check input[type=checkbox]{width:24px;height:24px;margin:0}.studio-form .submit{border:3px solid var(--black);background:var(--lemon);color:var(--black);cursor:pointer;border-radius:999px;margin-top:30px;padding:14px 26px;font-size:18px;font-weight:900}.studio-form .submit:hover{transform:translateY(-1px)}.studio-form .submit:disabled{opacity:.65;cursor:not-allowed}.form-message{margin-top:20px;font-size:16px;font-weight:700}.form-message.success{color:#0f6a2f}.form-message.error{color:#b1261a}@media (max-width:760px){.studio-form label{font-size:clamp(20px,7vw,28px)}.studio-form .req{padding:7px 10px;font-size:13px}.privacy-link,.privacy-check{font-size:clamp(18px,6vw,24px)}}footer{border-top:3px solid var(--black);padding:46px 0;font-weight:700}footer .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;display:flex}footer .fnav{flex-wrap:wrap;gap:20px;font-size:14px;display:flex}footer .fnav a{color:var(--black);opacity:.8;text-decoration:none}footer .fnav a:hover{opacity:1;text-decoration:underline}.reveal{opacity:0;transition:all .8s cubic-bezier(.2,.8,.2,1);transform:translateY(24px)}.reveal.in{opacity:1;transform:none}@media (max-width:560px){.brand-logo{height:22px}.brand-logo.footer-logo{height:18px}}.news-list{gap:20px;margin-top:32px;display:grid}.news-card{background:var(--paper);border:3px solid var(--black);box-shadow:6px 6px 0 var(--black);border-radius:16px;grid-template-columns:minmax(0,1fr) 180px;gap:14px;padding:20px 22px;display:grid}.news-card h3 a{color:var(--black);font-size:clamp(20px,2.2vw,34px);font-weight:900;line-height:1.25;text-decoration:none}.news-card h3 a:hover{text-decoration:underline}.news-body{color:var(--ink);margin-top:8px;font-size:16px;font-weight:500;line-height:1.85}.news-card p{color:var(--ink);margin-top:10px;font-size:14px;line-height:1.8}.news-meta{color:var(--muted);font-size:14px;font-weight:800}.news-thumb{object-fit:cover;border-radius:8px;width:100%;height:120px}.news-fallback{background:var(--paper);border:3px solid var(--black);border-radius:16px;padding:20px}.news-fallback p{margin-bottom:16px}.news-card.no-image{grid-template-columns:1fr}.news-card h3{margin-top:8px;font-size:clamp(18px,2vw,26px);font-weight:900;line-height:1.4}.news-all-link{margin-top:24px}.news-all-link a{color:var(--black);font-weight:800;text-decoration:none}.news-all-link a:hover{text-decoration:underline}.news-back-link{flex-wrap:wrap;gap:16px 24px;margin-top:32px;display:flex}.news-back-link a{color:var(--black);font-weight:800;text-decoration:none}.news-back-link a:hover{text-decoration:underline}.news-detail-date{color:var(--muted);font-weight:700}.news-detail-body{margin-top:8px}.news-detail-nav{gap:16px;margin-top:40px;display:grid}@media (min-width:760px){.news-detail-nav{grid-template-columns:1fr 1fr;gap:24px}}.news-detail-nav-link{color:var(--black);font-weight:700;line-height:1.6;text-decoration:none}.news-detail-nav-link.next{text-align:right}.news-detail-nav-link:hover{text-decoration:underline}.voice-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;margin-top:32px;display:grid}.voice-card{background:var(--paper);border:3px solid var(--black);box-shadow:6px 6px 0 var(--black);color:inherit;border-radius:16px;padding:0;text-decoration:none;transition:transform .2s,box-shadow .2s;display:block;overflow:hidden}.voice-card:hover{box-shadow:8px 8px 0 var(--black);transform:translate(-2px,-2px)}.voice-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.voice-card-image{aspect-ratio:16/9;object-fit:cover;border-bottom:2px solid var(--black);width:100%;height:auto}.voice-card-body{padding:18px 20px 22px}.voice-source,.voice-category{background:var(--black);color:var(--lemon);border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:900;display:inline-flex}#voices{padding:64px 0}.voices-lead{max-width:720px;margin-top:16px}#voices .voice-grid{margin-top:28px}#voices .voice-card{box-shadow:4px 4px 0 var(--black);border-width:2px}#voices .voice-card:hover{box-shadow:6px 6px 0 var(--black)}.voice-date{color:var(--muted);font-size:13px;font-weight:700}.voice-card h3{margin-top:12px;font-size:clamp(16px,1.8vw,20px);font-weight:900;line-height:1.5}.voice-profile-link{margin-top:24px}.voice-profile-link a{color:var(--black);font-weight:800;text-decoration:none}.voice-profile-link a:hover{text-decoration:underline}@media (max-width:920px){.news-card{grid-template-columns:1fr}.news-thumb{height:180px}}.faq-intro{margin-top:8px}.faq-intro .lead{max-width:860px;margin-top:18px}.faq-list{gap:16px;margin-top:26px;display:grid}.faq-item{padding:0;overflow:hidden}.faq-item summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:14px;padding:22px 24px;list-style:none;display:grid}.faq-item summary::-webkit-details-marker{display:none}.faq-q{border:2px solid var(--black);min-width:52px;height:34px;font-size:12px;font-family:var(--font-archivo-black), sans-serif;background:var(--lemon);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.faq-question{font-size:clamp(17px,2vw,22px);font-weight:900;line-height:1.6}.faq-toggle{font-size:22px;font-weight:900;line-height:1;transition:transform .2s}.faq-item[open] .faq-toggle{transform:rotate(45deg)}.faq-answer-wrap{border-top:2px solid #1a191629;padding:18px 24px 22px}.faq-answer-wrap p{color:var(--ink);font-size:15px;font-weight:500;line-height:1.95}.faq-a{font-family:var(--font-archivo-black), sans-serif;color:var(--black);margin-right:8px;display:inline-block}@media (max-width:760px){.faq-item summary{grid-template-columns:1fr auto;gap:8px 12px}.faq-q{grid-column:1/-1;justify-self:start}}
