:root {
  --pink-0:#fff8fb;
  --pink-1:#fff0f6;
  --pink-2:#ffd8e7;
  --pink:#ff5f9e;
  --pink-deep:#ee367e;
  --ink:#26202a;
  --muted:#716773;
  --white:#fff;
  --mint:#43c9b5;
  --yellow:#ffe36e;
  --orange:#ff8b44;
  --line:rgba(38,32,42,.13);
  --shadow:0 24px 70px rgba(94,47,69,.12);
  --radius:28px;
  --max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{margin:0;background:var(--pink-0);color:var(--ink);font-family:"Noto Sans JP",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.85;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
::selection{background:var(--pink);color:#fff}
.skip-link{position:fixed;left:12px;top:-60px;z-index:9999;background:#fff;padding:10px 16px;border-radius:12px;box-shadow:var(--shadow)}
.skip-link:focus{top:12px}
.site-header{position:fixed;inset:0 0 auto 0;z-index:1000;height:82px;padding:0 max(24px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;background:rgba(255,248,251,.83);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.7)}
.brand{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;line-height:1;gap:2px}
.brand-logo{width:150px;height:auto;display:block}
.brand-official{width:150px;text-align:center;font:800 8px/1.2 Poppins,sans-serif;letter-spacing:.18em;color:var(--pink-deep)}
.global-nav{display:flex;align-items:center;gap:23px;font-family:Poppins,sans-serif;font-size:12px;font-weight:800;letter-spacing:.08em}
.global-nav a{position:relative}
.global-nav a:not(.nav-contact)::after{content:"";position:absolute;height:2px;background:var(--pink);left:0;right:100%;bottom:-7px;transition:.25s}
.global-nav a:hover::after{right:0}
.nav-contact{padding:11px 18px;border-radius:999px;background:var(--ink);color:#fff}
.menu-button{display:none;border:0;background:transparent;width:44px;height:44px;padding:10px;cursor:pointer}
.menu-button span{display:block;height:2px;background:var(--ink);margin:5px 0;transition:.25s}
.hero{position:relative;min-height:880px;padding:150px max(24px,calc((100vw - var(--max))/2)) 100px;background:linear-gradient(135deg,#fff8fb 0%,#ffe9f2 52%,#fff5d8 100%);overflow:hidden}
.hero-copy{position:relative;z-index:4;max-width:670px;padding-top:55px}
.section-en,.disc-type,.office-label,.news-status{font:800 12px/1.4 Poppins,sans-serif;letter-spacing:.16em}
.hero-credentials{margin:0 0 28px}
.hero-ambassadors{display:flex;align-items:center;flex-wrap:wrap;margin:0 0 10px;font-weight:850;font-size:clamp(18px,1.5vw,22px);line-height:1.5;letter-spacing:.03em;color:var(--ink)}
.credential-separator{width:1px;height:1.2em;margin:0 14px;background:linear-gradient(180deg,var(--pink-deep),#f46c67);opacity:.72;flex:0 0 1px}
.hero-local-title{display:inline-block;position:relative;margin:0;color:var(--pink-deep);font-weight:900;font-size:clamp(22px,2vw,29px);line-height:1.42;letter-spacing:.025em}
.hero-local-title::after{content:"";position:absolute;left:0;bottom:-7px;width:58px;height:4px;background:linear-gradient(90deg,var(--pink-deep),#f46c67);transform:skewX(-22deg)}
.hero-kicker{font:900 clamp(18px,1.7vw,25px)/1.35 "Noto Sans JP",sans-serif;letter-spacing:.06em;margin:0 0 8px;color:var(--ink)}
.hero h1{margin:0 0 22px;line-height:1}
.hero-name-logo{display:block;width:min(100%,610px);height:auto;filter:drop-shadow(0 8px 18px rgba(220,41,116,.08))}
.hero h1 small{display:block;margin-top:10px;font:700 16px/1.4 Poppins,"Noto Sans JP",sans-serif;letter-spacing:.08em;color:var(--pink-deep)}
.hero-message{font-size:clamp(20px,2vw,28px);line-height:1.55;font-weight:600;margin:25px 0 30px}.hero-message strong{font-weight:900;text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:10px;text-underline-offset:-5px;text-decoration-skip-ink:none}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border-radius:999px;font:800 13px/1 Poppins,"Noto Sans JP",sans-serif;letter-spacing:.05em;border:2px solid var(--ink);transition:transform .2s,box-shadow .2s,background .2s;cursor:pointer}.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--ink);color:#fff;box-shadow:0 10px 0 var(--pink)}
.button-ghost{background:rgba(255,255,255,.6)}
.hero-visual{position:absolute;right:max(-110px,calc((100vw - 1380px)/2 - 30px));top:96px;bottom:auto;width:min(56vw,720px);z-index:3;filter:drop-shadow(0 26px 30px rgba(49,27,36,.14))}.hero-visual img{width:100%;height:auto}
.scribble{position:absolute;z-index:-1;font:900 clamp(30px,4vw,58px)/1 Poppins,sans-serif;color:var(--pink);letter-spacing:-.05em;opacity:.25}.scribble-one{top:24%;right:0;transform:rotate(8deg)}.scribble-two{bottom:29%;left:-14%;transform:rotate(-8deg);color:var(--mint)}
.hero-shape{position:absolute;border-radius:50%;filter:blur(.1px);opacity:.78}.hero-shape-a{width:280px;height:280px;background:var(--yellow);right:13%;top:14%}.hero-shape-b{width:160px;height:160px;background:var(--mint);right:3%;bottom:16%}
.hero-marquee{position:absolute;z-index:5;bottom:0;left:0;right:0;height:56px;background:var(--ink);color:#fff;overflow:hidden;white-space:nowrap;display:flex;align-items:center}.hero-marquee div{font:800 16px/1 Poppins,sans-serif;letter-spacing:.1em;animation:marquee 22s linear infinite;width:max-content}@keyframes marquee{to{transform:translateX(-50%)}}
.section{padding:115px max(24px,calc((100vw - var(--max))/2))}
.section-heading{display:flex;align-items:flex-start;gap:16px;margin-bottom:60px}.section-no{margin:2px 0 0;font:700 11px/1 Poppins,sans-serif;background:var(--pink);color:#fff;padding:6px 8px;border-radius:999px}.section-en{margin:0 0 5px;color:var(--pink-deep)}.section-heading h2{font-size:clamp(34px,4vw,58px);letter-spacing:-.055em;line-height:1.12;margin:0;font-weight:900}.section-intro{margin:-35px 0 38px;color:var(--muted)}
.about{background:#fff}.about-grid{display:grid;grid-template-columns:minmax(390px,445px) minmax(420px,1fr);gap:clamp(52px,6vw,88px);align-items:start}.about-collage{position:relative;width:100%;max-width:445px;height:455px;justify-self:center}.about-shot{position:absolute;margin:0;overflow:hidden;background:#fff;border:3px solid var(--ink);box-shadow:10px 12px 0 rgba(34,28,37,.08)}.about-shot img{display:block;width:100%;height:100%;object-fit:cover}.about-shot-travel{left:0;top:18px;width:270px;height:164px;border-radius:26px;transform:rotate(-2deg);z-index:2}.about-shot-travel img{object-position:center 46%}.about-shot-live-smile{right:4px;top:0;width:158px;height:210px;border-radius:82px 82px 28px 28px;transform:rotate(3deg);z-index:3}.about-shot-live-smile img{object-position:52% 24%}.about-shot-event{left:24px;top:190px;width:190px;height:242px;border-radius:30px;transform:rotate(2deg);z-index:3}.about-shot-event img{object-position:50% 28%}.about-shot-stage{right:0;bottom:14px;width:225px;height:174px;border-radius:28px;transform:rotate(-3deg);z-index:2}.about-shot-stage img{object-position:48% 36%}.about-collage-label{position:absolute;z-index:6;right:24px;top:205px;background:var(--yellow);padding:9px 14px;border:2px solid var(--ink);border-radius:999px;transform:rotate(-4deg);font:900 12px/1 Poppins,sans-serif;box-shadow:5px 5px 0 var(--ink);white-space:nowrap}.about-collage-dot{position:absolute;z-index:0;border:2px solid var(--ink);border-radius:50%}.about-collage-dot-a{width:90px;height:90px;background:var(--pink-2);left:-22px;bottom:0}.about-collage-dot-b{width:64px;height:64px;background:var(--mint);right:-22px;top:166px}.about-collage::after{content:"✦";position:absolute;z-index:5;left:232px;bottom:12px;color:var(--pink-deep);font-size:42px;line-height:1;transform:rotate(8deg)}
.about-copy{font-size:15.5px;padding-top:8px}.about-copy p{margin:0 0 20px}.lead{font-size:clamp(25px,3vw,40px);line-height:1.55!important;font-weight:900;letter-spacing:-.035em}.lead span{color:var(--pink-deep)}
.history{background:var(--pink-1)}.timeline{position:relative;max-width:960px;margin:0 auto}.timeline::before{content:"";position:absolute;left:143px;top:8px;bottom:8px;width:3px;background:linear-gradient(var(--pink),var(--yellow),var(--mint))}.timeline-item{position:relative;display:grid;grid-template-columns:120px 1fr;gap:50px;padding:0 0 38px}.timeline-item:last-child{padding-bottom:0}.timeline-item::after{content:"";position:absolute;left:134px;top:10px;width:17px;height:17px;border-radius:50%;background:#fff;border:4px solid var(--pink);box-sizing:border-box}.timeline-item time{font:800 18px/1.3 Poppins,sans-serif;color:var(--pink-deep);text-align:right}.timeline-item p{margin:-3px 0 0;font-size:18px;font-weight:700;line-height:1.6}.timeline-featured p{font-size:22px;font-weight:900}.timeline-featured::after{background:var(--yellow);border-color:var(--ink);transform:scale(1.2)}
.discography{background:#fff}.disc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.disc-card{min-width:0}.jacket-placeholder{aspect-ratio:1;border-radius:24px;background:linear-gradient(135deg,#ff7bad,#ffd1e2);display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(0,0,0,.06);position:relative;overflow:hidden}.jacket-placeholder::after{content:"";position:absolute;width:65%;height:65%;border-radius:50%;border:2px dashed rgba(255,255,255,.75)}.jacket-placeholder span{position:relative;z-index:2;font:800 12px/1 Poppins,sans-serif;letter-spacing:.2em}.jacket-placeholder b{position:relative;z-index:2;font:900 64px/1 Poppins,sans-serif;color:#fff}.jacket-placeholder.alt{background:linear-gradient(135deg,#9fc3ff,#ffd6f0)}.jacket-placeholder.mint{background:linear-gradient(135deg,#67d9c4,#dcfff7)}.jacket-placeholder.yellow{background:linear-gradient(135deg,#ffe06c,#ffb873)}.disc-meta{padding:17px 3px}.disc-meta p{margin:0;color:var(--muted)}.disc-meta h3{font-size:20px;margin:5px 0 2px}.disc-type{color:var(--pink-deep)!important;font-size:10px!important}
.news{position:relative;background:var(--ink);color:#fff;overflow:hidden}.news .section-en{color:#ff9dc2}.news-word{position:absolute;right:-2vw;top:20px;font:900 clamp(130px,25vw,350px)/1 Poppins,sans-serif;color:#fff;opacity:.025;letter-spacing:-.08em}.news-box{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;gap:60px;align-items:end;padding:38px;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius);background:rgba(255,255,255,.05)}.news-status{color:#ff9dc2}.news-box h3{font-size:clamp(22px,3vw,36px);line-height:1.45;margin:9px 0 8px;max-width:740px}.news-box p{color:#d5ced7}.news-links{display:flex;flex-direction:column;min-width:220px}.news-links a{padding:16px 0;border-bottom:1px solid rgba(255,255,255,.2);font-weight:800;display:flex;justify-content:space-between}.news-links a:hover{color:#ff9dc2}
.sns{background:linear-gradient(180deg,#fff 0,#fff9de 100%)}.social-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.social-card{min-height:118px;border:2px solid var(--ink);border-radius:24px;padding:22px 24px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;background:#fff;transition:.2s;box-shadow:7px 7px 0 var(--pink)}.social-card:nth-child(2){box-shadow:7px 7px 0 #9fc3ff}.social-card:nth-child(3){box-shadow:7px 7px 0 var(--yellow)}.social-card:nth-child(4){box-shadow:7px 7px 0 var(--mint)}.social-card:nth-child(5){box-shadow:7px 7px 0 var(--orange)}.social-card:hover{transform:translate(-2px,-2px);box-shadow:11px 11px 0 var(--pink)}.social-card b{grid-row:1/3;grid-column:2;font-size:22px}.social-name{font:900 25px/1.2 Poppins,sans-serif;letter-spacing:-.03em}.social-card small{color:var(--muted);font-size:12px}.social-card.wide{grid-column:1/-1}
.office-contact{background:var(--pink-1)}.office{padding-bottom:20px}.office-card{max-width:820px;background:#fff;border-radius:var(--radius);padding:44px 48px;box-shadow:var(--shadow);position:relative;overflow:hidden}.office-card::after{content:"RCS";position:absolute;right:-16px;bottom:-35px;font:900 150px/1 Poppins,sans-serif;color:var(--pink);opacity:.08}.office-label{color:var(--pink-deep)}.office-note{margin:11px 0 0;font-size:13px;font-weight:600;line-height:1.7;color:var(--muted);letter-spacing:.01em}.office-card h3{font-size:34px;margin:10px 0 0}.office-en{font:700 14px/1.5 Poppins,sans-serif;color:var(--muted);margin:5px 0 25px}.office-card address{font-style:normal;font-weight:600}.corp-number{font-size:12px;color:var(--muted);margin-top:18px}
.contact{padding-top:85px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px;align-items:start}.contact-copy p{margin-top:0}.mail-direct{display:inline-block;margin-top:12px;font:700 14px/1.4 Poppins,sans-serif;border-bottom:2px solid var(--pink)}.contact-form{background:#fff;border-radius:var(--radius);padding:36px;box-shadow:var(--shadow)}.form-row.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{display:block;margin-bottom:18px}.contact-form label>span:first-child{display:block;font-size:12px;font-weight:800;margin-bottom:7px}.contact-form label b{color:#fff;background:var(--pink-deep);font-size:9px;padding:3px 6px;border-radius:999px;margin-left:4px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #ded6dd;background:#fffbfd;border-radius:14px;padding:13px 14px;outline:none;transition:.2s}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--pink);box-shadow:0 0 0 4px rgba(255,95,158,.12)}.contact-form textarea{resize:vertical;min-height:160px}.privacy-check{display:flex!important;gap:10px;align-items:flex-start}.privacy-check input{width:18px;height:18px;margin-top:5px;accent-color:var(--pink-deep)}.privacy-check span{font-weight:500!important;font-size:12px!important;margin:0!important}.submit-button{border:0;min-width:220px}.form-status{font-size:13px;margin:17px 0 0}.form-status.ok{color:#0b7a57}.form-status.error{color:#b9254e}.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.site-footer{padding:55px max(24px,calc((100vw - var(--max))/2));background:#fff;display:grid;grid-template-columns:1fr auto;gap:25px;align-items:end}.footer-name{display:flex;flex-direction:column;line-height:1.1}.footer-name span{font:800 10px/1 Poppins,sans-serif;color:var(--pink-deep);letter-spacing:.14em}.footer-name strong{font-size:32px;font-weight:900;letter-spacing:-.04em}.footer-name small{font:700 10px/1.3 Poppins,sans-serif;margin-top:6px;color:var(--muted)}.back-top{font:800 11px/1 Poppins,sans-serif}.site-footer>p{grid-column:1/-1;margin:12px 0 0;padding-top:20px;border-top:1px solid var(--line);font:600 10px/1.5 Poppins,sans-serif;color:var(--muted)}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-marquee div{animation:none}.reveal{opacity:1;transform:none;transition:none}.button,.social-card{transition:none}}
@media (max-width:1050px){.global-nav{gap:15px}.global-nav a{font-size:10px}.hero{min-height:820px}.hero-copy{max-width:590px}.hero-visual{width:58vw;right:-120px;top:auto;bottom:-220px}.disc-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{gap:40px}}
@media (max-width:820px){html{scroll-padding-top:70px}.site-header{height:68px;padding:0 18px}.brand-logo{width:128px}.brand-official{width:128px;font-size:7px}.menu-button{display:block}.global-nav{position:absolute;top:68px;left:0;right:0;background:rgba(255,248,251,.98);backdrop-filter:blur(18px);padding:24px;display:none;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--line);box-shadow:0 20px 40px rgba(60,30,45,.08)}.global-nav.is-open{display:flex}.global-nav a{font-size:13px;padding:12px 4px}.nav-contact{text-align:center;margin-top:8px}.hero{min-height:900px;padding:110px 20px 65px}.hero-copy{padding-top:0;max-width:100%}.hero-credentials{max-width:650px}.hero-kicker{font-size:clamp(17px,3.8vw,22px)}.hero-name-logo{width:min(100%,560px)}.hero-message{max-width:420px}.hero-visual{width:min(86vw,540px);right:-120px;top:auto;bottom:-160px;opacity:.88}.hero-shape-a{right:-30px;top:31%;width:210px;height:210px}.hero-shape-b{right:34%;bottom:10%;width:120px;height:120px}.hero-actions{position:relative;z-index:6}.section{padding:84px 20px}.section-heading{margin-bottom:42px}.about-grid{grid-template-columns:1fr;gap:36px}.about-copy{padding-top:0}.about-collage{max-width:560px;height:auto;display:grid;grid-template-columns:1.18fr .82fr;grid-template-rows:170px 205px;gap:12px}.about-shot{position:relative;inset:auto!important;width:auto!important;height:auto!important;transform:none!important;border-width:2px;border-radius:22px;box-shadow:6px 7px 0 rgba(34,28,37,.07)}.about-shot-travel{grid-column:1;grid-row:1}.about-shot-live-smile{grid-column:2;grid-row:1}.about-shot-event{grid-column:1;grid-row:2}.about-shot-stage{grid-column:2;grid-row:2}.about-shot-travel img{object-position:center 43%}.about-shot-live-smile img{object-position:50% 25%}.about-shot-event img{object-position:50% 27%}.about-shot-stage img{object-position:48% 34%}.about-collage-label{right:18px;top:auto;bottom:-15px;font-size:11px}.about-collage-dot,.about-collage::after{display:none}.timeline::before{left:94px}.timeline-item{grid-template-columns:74px 1fr;gap:40px}.timeline-item::after{left:85px}.timeline-item time{font-size:14px}.timeline-item p,.timeline-featured p{font-size:16px}.news-box{grid-template-columns:1fr;gap:22px}.news-links{min-width:0}.office{padding-bottom:10px}.contact{padding-top:65px}.contact-grid{grid-template-columns:1fr;gap:32px}.site-footer{grid-template-columns:1fr}.back-top{justify-self:start}}
@media (max-width:560px){.hero{min-height:850px}.hero-ambassadors{font-size:14.5px}.credential-separator{margin:0 10px}.hero-local-title{font-size:18px}.hero-kicker{font-size:16px;letter-spacing:.04em}.hero-name-logo{width:94%}.hero-visual{width:96vw;right:-185px;top:auto;bottom:-155px}.hero-message{font-size:19px}.hero-actions .button{font-size:11px;padding:0 17px;min-height:48px}.disc-grid{grid-template-columns:1fr 1fr;gap:16px}.jacket-placeholder{border-radius:18px}.jacket-placeholder b{font-size:46px}.disc-meta h3{font-size:16px}.social-grid{grid-template-columns:1fr}.social-card.wide{grid-column:auto}.office-card{padding:30px 24px}.office-card h3{font-size:27px}.contact-form{padding:26px 20px}.form-row.two{grid-template-columns:1fr}.site-footer{padding:42px 20px}.about-collage{grid-template-rows:130px 158px;gap:9px}.about-shot{border-radius:17px}.about-collage-label{right:8px;bottom:-13px;padding:7px 11px;font-size:10px}.section-heading h2{font-size:38px}}

/* NEWS list (v13) */
.news-list{position:relative;z-index:2;border-top:1px solid rgba(255,255,255,.18)}
.news-item{display:grid;grid-template-columns:210px minmax(0,1fr);gap:38px;align-items:start;padding:30px 4px;border-bottom:1px solid rgba(255,255,255,.16);transition:background .22s ease,padding .22s ease}
.news-item:hover{background:rgba(255,255,255,.035);padding-left:14px;padding-right:14px}
.news-meta{display:flex;align-items:center;gap:14px;padding-top:4px;white-space:nowrap}
.news-meta time{font:700 13px/1.4 Poppins,sans-serif;letter-spacing:.07em;color:#e9e1ea}
.news-category{display:inline-flex;align-items:center;justify-content:center;min-width:68px;padding:6px 10px;border:1px solid rgba(255,157,194,.55);font:800 10px/1 Poppins,sans-serif;letter-spacing:.12em;color:#ff9dc2}
.news-body h3{font-size:clamp(18px,2vw,24px);line-height:1.55;margin:0 0 7px;font-weight:800}
.news-body p{margin:0;color:#cfc6d1;font-size:14px;line-height:1.9}
.news-item-muted{grid-template-columns:210px minmax(0,1fr) auto}
.news-social-mini{display:flex;gap:12px;align-self:center}
.news-social-mini a{font:700 12px/1.3 Poppins,sans-serif;letter-spacing:.04em;color:#ff9dc2;border-bottom:1px solid rgba(255,157,194,.45);padding-bottom:3px}
.news-social-mini a:hover{color:#fff;border-color:#fff}
@media (max-width:820px){
  .news-item,.news-item-muted{grid-template-columns:1fr;gap:12px;padding:24px 2px}
  .news-item:hover{padding-left:8px;padding-right:8px}
  .news-meta{padding-top:0}
  .news-body h3{font-size:18px;line-height:1.55}
  .news-body p{font-size:13px}
  .news-social-mini{align-self:auto;margin-top:3px}
}
