:root{--pink:#ff0b82;--blue:#0877ff;--yellow:#ffe500;--red:#f52b38;--black:#0b0b10;--white:#fff;--line:3px solid var(--black)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--black);font-family:"M PLUS Rounded 1c",sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.noise{position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E")}.topbar{height:86px;padding:10px clamp(18px,4vw,64px);display:flex;align-items:center;justify-content:space-between;background:var(--black);position:sticky;top:0;z-index:50;border-bottom:4px solid var(--pink)}.brand{width:178px;height:62px;overflow:hidden}.brand img{width:100%;height:100%;object-fit:cover;object-position:center}.topbar nav{display:flex;gap:34px;color:#fff;font-weight:900;font-size:.86rem;letter-spacing:.12em}.topbar nav a:hover{color:var(--yellow)}.menu-button{display:none;border:0;background:none;padding:10px}.menu-button span{display:block;width:28px;height:3px;background:#fff;margin:6px}
.hero{position:relative;min-height:calc(100svh - 86px);display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;padding:clamp(34px,6vw,92px) clamp(18px,5vw,80px) 80px;overflow:hidden;background:linear-gradient(110deg,#fff 0 42%,#ffedf6 42% 100%)}.hero:before{content:"";position:absolute;width:300px;height:300px;border:46px solid var(--yellow);border-radius:50%;left:-170px;top:-110px}.hero-copy{position:relative;z-index:2}.eyebrow,.section-heading>p{font-weight:900;letter-spacing:.2em;font-size:.82rem}.eyebrow:before{content:"";display:inline-block;width:34px;height:7px;background:var(--pink);margin-right:10px}.hero h1{font-family:"Zen Maru Gothic",sans-serif;font-size:clamp(3.1rem,6.4vw,7.4rem);line-height:.9;letter-spacing:-.07em;margin:.25em 0}.hero h1 span,.hero h1 strong{display:block}.hero h1 strong{color:var(--pink);-webkit-text-stroke:2px var(--black);text-shadow:6px 6px 0 var(--yellow)}.lead{font-weight:800;line-height:1.9;font-size:clamp(1rem,1.6vw,1.24rem);margin:2rem 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--pink);color:#fff;border:var(--line);box-shadow:7px 7px 0 var(--black);padding:17px 24px;font-weight:900;transition:.18s transform,.18s box-shadow}.button:hover{transform:translate(4px,4px);box-shadow:3px 3px 0 var(--black)}.hero-visual{position:relative;z-index:1;justify-self:end;width:min(100%,760px);filter:drop-shadow(14px 16px 0 rgba(8,119,255,.85))}.hero-visual img{width:100%;border:4px solid var(--black);position:relative;z-index:2}.burst{position:absolute;inset:-22%;background:repeating-conic-gradient(from 0deg,var(--yellow) 0 7deg,transparent 7deg 14deg);border-radius:50%;animation:spin 26s linear infinite}.sticker{position:absolute;z-index:3;padding:8px 14px;border:3px solid #111;font-weight:900;box-shadow:4px 4px 0 #111}.s1{background:var(--yellow);top:2%;right:-4%;transform:rotate(8deg)}.s2{background:var(--blue);color:#fff;bottom:6%;left:-7%;transform:rotate(-8deg)}@keyframes spin{to{transform:rotate(360deg)}}.ticker{position:absolute;bottom:0;left:0;width:100%;overflow:hidden;background:var(--black);color:#fff;border-block:3px solid var(--black);font-weight:900;letter-spacing:.12em;white-space:nowrap}.ticker div{display:inline-block;padding:12px 0;animation:marquee 18s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}
.opening-movie{position:relative;background:#000;border-bottom:5px solid var(--pink);overflow:hidden}.opening-movie video{display:block;width:100%;max-height:calc(100svh - 86px);aspect-ratio:16/9;object-fit:cover;background:#000}.opening-controls{position:absolute;left:clamp(14px,3vw,42px);right:clamp(14px,3vw,42px);bottom:clamp(14px,3vw,34px);display:flex;align-items:center;justify-content:space-between;gap:18px;pointer-events:none}.opening-controls>span{background:var(--black);color:#fff;border:2px solid #fff;padding:7px 11px;font-size:.7rem;font-weight:900;letter-spacing:.14em}.opening-controls button{pointer-events:auto;background:var(--yellow);color:var(--black);border:3px solid var(--black);box-shadow:5px 5px 0 var(--pink);padding:11px 15px;font:900 .78rem/1 "M PLUS Rounded 1c",sans-serif;letter-spacing:.08em;cursor:pointer}.opening-controls button[aria-pressed="true"]{background:var(--pink);color:#fff;box-shadow:5px 5px 0 var(--yellow)}
.section{position:relative;padding:clamp(80px,11vw,150px) clamp(20px,8vw,120px);border-bottom:4px solid var(--black)}.section-number{position:absolute;top:32px;right:5vw;border:3px solid var(--black);border-radius:50%;width:54px;height:54px;display:grid;place-items:center;font-weight:900}.section-heading p{margin:0;color:var(--blue)}.section-heading h2{font-size:clamp(3.3rem,8.5vw,8.5rem);line-height:.85;letter-spacing:-.07em;margin:.2em 0 .5em;font-weight:900}.section-heading em{font-style:normal;color:var(--pink);-webkit-text-stroke:2px var(--black);text-shadow:7px 7px 0 var(--yellow)}.concept-copy{margin-left:auto;width:min(620px,100%);font-size:clamp(1.05rem,1.7vw,1.35rem);font-weight:700;line-height:2}.concept-copy p:first-child{font-size:1.5em;font-weight:900}.meter{margin-top:70px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;font-weight:900}.meter>div{display:grid;grid-template-columns:repeat(8,1fr);gap:5px;height:34px}.meter i{background:var(--pink);border:2px solid var(--black)}.meter i:nth-child(2n){background:var(--yellow)}.meter i:nth-child(3n){background:var(--blue)}.meter b{font-size:1.5rem;color:var(--pink)}
.members{background:var(--black);color:#fff}.members .section-number{border-color:#fff}.section-heading.light p{color:var(--yellow)}.section-heading.light em{-webkit-text-stroke:2px #fff;text-shadow:7px 7px 0 var(--blue)}.color-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.color-card{min-height:360px;border:3px solid #fff;padding:20px 16px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;transition:.2s transform}.color-card:after{content:"";position:absolute;width:130px;height:130px;border:3px solid currentColor;border-radius:50%;right:-60px;top:70px;opacity:.28}.color-card:hover{transform:translateY(-12px)}.color-card span{margin-bottom:auto;font-weight:900;font-size:.75rem;letter-spacing:.08em}.member-mark{font-size:4.5rem;line-height:1;text-align:right;filter:drop-shadow(4px 4px 0 rgba(0,0,0,.22))}.color-card .jp-name{font-family:"Zen Maru Gothic",sans-serif;font-size:clamp(2.4rem,4vw,4.3rem);letter-spacing:-.08em;line-height:1;margin:10px 0 3px}.color-card h3{font-size:clamp(1.3rem,2.2vw,2.4rem);margin:0}.color-card p:last-child{font-size:.68rem;font-weight:900;letter-spacing:.08em;border-top:2px solid currentColor;padding-top:9px;margin-bottom:0}.pink{background:var(--pink)}.red{background:var(--red)}.blue{background:var(--blue)}.yellow{background:var(--yellow);color:var(--black)}.white{background:#fff;color:var(--black)}.coming{text-align:center;margin:34px 0 0;font-weight:900;letter-spacing:.15em;color:#aaa}
.live{background:var(--blue);color:#fff}.live .section-number{border-color:#fff}.live-board{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:clamp(30px,7vw,90px);align-items:stretch}.live-calendar{min-height:320px;background:var(--yellow);color:var(--black);border:4px solid var(--black);box-shadow:12px 12px 0 var(--pink);padding:28px;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(-2deg)}.live-calendar span{font-size:.8rem;font-weight:900;letter-spacing:.18em}.live-calendar strong{font-size:clamp(3.4rem,7vw,6rem);line-height:.8;letter-spacing:-.08em}.live-calendar div{font-size:2rem;letter-spacing:.25em}.live-info{display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.live-status{display:inline-block;background:var(--pink);color:#fff;border:3px solid var(--black);padding:5px 11px;font-size:.75rem;font-weight:900;letter-spacing:.12em}.live-info h3{font-size:clamp(2rem,4.5vw,4.5rem);margin:.2em 0}.live-info>p:not(.live-status){font-size:1.05rem;font-weight:700;line-height:1.8}.timetree-button{margin-top:20px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:min(100%,480px);padding:17px 18px;background:#fff;color:var(--black);border:4px solid var(--black);box-shadow:8px 8px 0 var(--black);font:900 1rem/1.2 "M PLUS Rounded 1c",sans-serif;text-align:left;opacity:1;cursor:not-allowed}.calendar-icon{font-size:1.7rem;color:var(--blue)}.timetree-button small{background:var(--yellow);border:2px solid var(--black);padding:4px 7px;font-size:.62rem;letter-spacing:.08em}
.videos{background:#fff3fa}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,70px)}.video-card{position:relative}.video-screen{position:relative;border:4px solid var(--black);background:var(--black);box-shadow:12px 12px 0 var(--black);overflow:hidden}.video-screen:before{content:"";display:block;padding-top:56.25%}.video-screen video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}.video-number{position:absolute;top:12px;left:12px;z-index:2;background:var(--yellow);color:var(--black);border:2px solid var(--black);padding:5px 10px;font-size:.75rem;font-weight:900;letter-spacing:.1em;pointer-events:none}.video-title{margin-top:22px;border-left:10px solid var(--pink);padding:5px 0 5px 18px}.video-blue .video-title{border-color:var(--blue)}.video-title p{margin:0;font-size:.75rem;font-weight:900;letter-spacing:.16em}.video-title h3{font-size:clamp(1.5rem,3vw,2.8rem);line-height:1.1;margin:.18em 0 0}.video-pink{transform:rotate(-1deg)}.video-blue{transform:rotate(1deg)}
.social{background:var(--yellow)}.social .section-heading>p{color:var(--pink)}.social-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.social-card{min-height:230px;background:#fff;border:4px solid var(--black);box-shadow:8px 8px 0 var(--black);padding:24px;display:flex;flex-direction:column;justify-content:space-between;transition:.18s transform,.18s box-shadow}.social-card:hover{transform:translate(4px,4px);box-shadow:4px 4px 0 var(--black)}.social-icon{width:64px;height:64px;border:3px solid var(--black);display:grid;place-items:center;font-size:2.2rem;font-weight:900}.social-card p{font-size:.72rem;font-weight:900;letter-spacing:.14em;margin:20px 0 2px}.social-card h3{font-size:clamp(2rem,4vw,3.8rem);line-height:1;margin:0}.social-card span{display:inline-block;margin-top:18px;padding:5px 9px;border:2px solid var(--black);font-size:.72rem;font-weight:900;letter-spacing:.1em}.social-x .social-icon{background:var(--black);color:#fff}.social-youtube .social-icon{background:var(--red);color:#fff}.social-tiktok .social-icon{background:var(--blue);color:#fff}.social-note{text-align:center;font-size:.8rem;font-weight:900;letter-spacing:.16em;margin:42px 0 0}
.news{background:#eaf5ff}.news-card{display:grid;grid-template-columns:150px 1fr;gap:40px;padding:32px;background:#fff;border:var(--line);box-shadow:10px 10px 0 var(--blue);max-width:900px;margin-left:auto}.date{display:flex;flex-direction:column;border-right:3px solid #111}.date b{color:var(--pink)}.date span{font-size:2rem;font-weight:900}.tag{display:inline-block;background:var(--yellow);border:2px solid #111;padding:3px 9px;font-size:.75rem;font-weight:900}.news-card h3{font-size:clamp(1.2rem,2.2vw,1.8rem);margin:.6em 0}.news-card p{font-weight:700}
.contact{text-align:center;padding:clamp(90px,13vw,180px) 20px;background:var(--pink);color:#fff;position:relative;overflow:hidden}.contact:before,.contact:after{content:"♥";position:absolute;color:var(--yellow);font-size:clamp(8rem,22vw,22rem);opacity:.3;transform:rotate(-18deg)}.contact:before{left:-3%;top:-18%}.contact:after{right:-2%;bottom:-25%;transform:rotate(18deg)}.contact>*{position:relative;z-index:2}.mini{font-weight:900;letter-spacing:.2em}.contact h2{font-size:clamp(3rem,8vw,8rem);line-height:.9;margin:.28em 0 .5em}.contact h2 span{color:var(--yellow);-webkit-text-stroke:2px var(--black)}.button.black{background:var(--black);box-shadow:7px 7px 0 var(--yellow)}.heartline{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:55px}.heartline i{width:120px;height:3px;background:#fff}.heartline b{font-size:2rem}footer{background:var(--black);color:#fff;padding:56px 20px 34px;text-align:center;border-top:5px solid var(--yellow)}.production-credits{width:min(620px,100%);margin:0 auto 48px;padding-bottom:40px;border-bottom:1px solid #444}.credits-kicker{color:var(--pink);font-size:.7rem;font-weight:900;letter-spacing:.22em;margin:0 0 24px}.production-credits dl{margin:0}.production-credits dl>div{display:grid;grid-template-columns:minmax(130px,42%) 1fr;gap:24px;text-align:left;padding:6px 0}.production-credits dt{color:#aaa;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-align:right}.production-credits dd{margin:0;font-size:.78rem;font-weight:800;letter-spacing:.04em}.credits-copy{font-size:.68rem;font-weight:700;letter-spacing:.06em;margin:24px 0 0;color:#aaa}footer>img{width:min(420px,78vw);margin:0 auto;filter:invert(1);opacity:.82}
.contact-panel{width:min(920px,100%);margin:0 auto;background:#fff;color:var(--black);border:4px solid var(--black);box-shadow:14px 14px 0 var(--yellow);text-align:left;padding:clamp(24px,5vw,64px)}.form-intro{font-size:1rem;font-weight:700;line-height:1.8;border-bottom:3px solid var(--black);padding-bottom:24px;margin-bottom:12px}.form-intro p{margin:.3em 0}.form-intro strong{color:var(--pink)}.form-row{display:grid;grid-template-columns:minmax(170px,30%) 1fr;gap:24px;padding:24px 0;border-bottom:2px solid #ddd}.form-row>label,.address-row>legend{font-weight:900}.form-row label small,.address-row>small{display:block;margin-top:7px;color:#666;font-size:.72rem;font-weight:700}.required{color:var(--pink);margin-left:4px}.form-row input,.form-row select,.form-row textarea{width:100%;border:3px solid var(--black);border-radius:0;background:#fff;color:var(--black);padding:13px 14px;font:700 1rem/1.5 "M PLUS Rounded 1c",sans-serif}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:4px solid var(--yellow);outline-offset:2px}.address-row{border:0;border-bottom:2px solid #ddd;margin:0}.address-row>legend{float:left;width:30%;padding-right:24px}.address-row>*:not(legend){margin-left:calc(30% + 24px);width:calc(70% - 24px)}.address-row select,.address-row #contact-address{margin-top:12px}.postal-fields{display:flex;align-items:center;gap:8px}.postal-fields input{width:90px}.confirm-button{margin:36px auto 0;display:flex;align-items:center;justify-content:center;gap:30px;background:var(--black);color:#fff;border:3px solid var(--black);box-shadow:7px 7px 0 var(--pink);padding:18px 28px;font:900 1rem/1.2 "M PLUS Rounded 1c",sans-serif;cursor:pointer}.confirm-button:hover{background:var(--blue)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.confirm-dialog{width:min(760px,calc(100% - 32px));max-height:88vh;border:4px solid var(--black);padding:0;background:#fff;color:var(--black);box-shadow:12px 12px 0 var(--pink)}.confirm-dialog::backdrop{background:rgba(11,11,16,.82)}.confirm-inner{padding:clamp(24px,5vw,50px)}.confirm-kicker{font-size:.7rem;font-weight:900;letter-spacing:.16em;color:var(--pink)}.confirm-inner h2{font-size:clamp(2rem,5vw,4rem);margin:.2em 0 .6em}.confirm-inner dl{margin:0}.confirm-inner dl>div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:12px 0;border-bottom:1px solid #ddd}.confirm-inner dt{font-weight:900}.confirm-inner dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.send-pending{background:#fff4b7;border:2px solid var(--black);padding:12px;font-size:.85rem;font-weight:700}.dialog-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.dialog-actions button{border:3px solid var(--black);background:#fff;padding:12px 16px;font:900 .85rem "M PLUS Rounded 1c",sans-serif;cursor:pointer}.dialog-actions button:disabled{background:#ddd;color:#777;cursor:not-allowed}
@media(max-width:820px){.topbar{height:72px}.brand{width:142px;height:50px}.menu-button{display:block}.topbar nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--black);padding:24px;flex-direction:column;text-align:center;border-bottom:4px solid var(--pink)}.topbar nav.open{display:flex}.opening-movie video{max-height:none;object-fit:contain}.opening-controls>span{display:none}.opening-controls{justify-content:flex-end}.hero{min-height:auto;grid-template-columns:1fr;padding-top:44px;background:linear-gradient(180deg,#fff 0 44%,#ffedf6 44%)}.hero-copy{padding-bottom:42px}.hero-visual{width:94%;justify-self:center}.s1{right:-2%}.s2{left:-2%}.section{padding-inline:20px}.section-heading h2{font-size:clamp(3.1rem,16vw,5.8rem)}.concept-copy{margin-top:40px}.meter{grid-template-columns:1fr auto}.meter>span{grid-column:1/-1}.color-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:15px}.color-card{min-width:68vw;scroll-snap-align:center}.live-board{grid-template-columns:1fr}.live-calendar{min-height:220px}.video-grid,.social-grid{grid-template-columns:1fr;gap:28px}.video-pink,.video-blue{transform:none}.video-screen{box-shadow:7px 7px 0 var(--black)}.social-card{min-height:190px}.news-card{grid-template-columns:1fr;gap:18px;padding:24px}.date{border-right:0;border-bottom:3px solid #111;padding-bottom:14px}.contact h2{font-size:clamp(3.2rem,16vw,6rem)}.contact-panel{padding:24px 18px;box-shadow:8px 8px 0 var(--yellow)}.form-row{grid-template-columns:1fr;gap:10px}.address-row>legend{float:none;width:auto;padding:0 0 10px}.address-row>*:not(legend){margin-left:0;width:100%}.postal-fields input{width:100%}.confirm-inner dl>div{grid-template-columns:1fr;gap:3px}.dialog-actions{flex-direction:column}.production-credits dl>div{grid-template-columns:1fr;gap:1px;text-align:center;padding:8px 0}.production-credits dt{text-align:center;font-size:.68rem}.production-credits dd{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.burst,.ticker div{animation:none!important}.color-card{transition:none}}

/* CHERIMO footer identity */
footer>.footer-logo-panel{width:min(300px,64vw);margin:0 auto;padding:clamp(14px,2.5vw,22px);background:#fff;border:4px solid var(--pink);box-shadow:8px 8px 0 var(--yellow);transform:rotate(-1deg)}
.footer-logo-panel img{display:block;width:100%;height:auto}
.social-grid a.social-card{color:inherit;text-decoration:none}
.color-card .jp-name{font-size:clamp(1.65rem,2.55vw,2.75rem);letter-spacing:-.06em}
.color-card h3{line-height:1;overflow-wrap:anywhere}
.live-info a.timetree-button{cursor:pointer;text-decoration:none;color:var(--black);transition:.18s transform,.18s box-shadow}
.live-info a.timetree-button:hover{transform:translate(4px,4px);box-shadow:4px 4px 0 var(--black)}
.swap-card{cursor:pointer}.swap-card>span,.static-art-card>span{margin-bottom:10px}.member-photo-swap{position:relative;flex:0 0 190px;width:calc(100% + 14px);height:190px;margin:0 -7px 10px;border:3px solid #fff;background:#086cff;overflow:hidden;box-shadow:5px 5px 0 rgba(0,0,0,.25)}.member-photo-swap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 24%;transition:opacity .32s ease,transform .45s ease}.member-photo-swap .member-photo{opacity:0;object-position:center 22%;transform:scale(1.04)}.member-photo-swap b{position:absolute;right:7px;bottom:7px;z-index:2;padding:4px 7px;background:var(--yellow);color:var(--black);border:2px solid var(--black);font-size:.54rem;letter-spacing:.06em}.swap-card:hover .member-art,.swap-card:focus-visible .member-art{opacity:0;transform:scale(1.05)}.swap-card:hover .member-photo,.swap-card:focus-visible .member-photo{opacity:1;transform:scale(1)}.swap-card:focus-visible{outline:4px solid var(--yellow);outline-offset:4px}.haru-card .member-photo-swap{background:#f7f2ff;border-color:#cbb8ff}.haru-card .member-photo{object-position:center 20%}.swap-card .jp-name{font-size:clamp(1.35rem,2.1vw,2.2rem)}.swap-card h3{font-size:clamp(1rem,1.7vw,1.65rem)}
.yuzu-card .member-photo-swap{background:#ffd900;border-color:#fff}.yuzu-card .member-photo{object-position:center 20%}
.static-art-card{justify-content:flex-end}.static-art-card .member-photo-swap{background:#e9002d;border-color:#fff;margin:0 -7px 10px;align-self:stretch}.member-info-spacer{flex:0 0 100px;height:100px}
.kayo-card .member-photo-swap{background:#ff3f9b;border-color:#fff}.kayo-card .member-photo{object-position:center 18%}
.color-card{min-height:460px}.static-art-card .member-photo-swap{flex-basis:190px;height:190px}
