@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap');:root{--pink:#f44eaa;--ink:#282640;--muted:#77758b;--line:#f1e5ef}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans','Noto Sans JP',sans-serif;background:#fff}a{text-decoration:none;color:inherit}header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5%,calc((100% - 1200px)/2));background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #f8edf5}.brand{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:900;letter-spacing:.13em}.brand img{width:49px;height:49px;object-fit:cover;border-radius:12px}.brand small{display:block;font-size:8px;letter-spacing:.25em;color:#999}nav{display:flex;gap:30px;font-size:11px;font-weight:800;letter-spacing:.13em}nav a:hover{color:var(--pink)}.menu{display:none}.hero{background:radial-gradient(circle at 87% 25%,#ffe4f5,transparent 32%),linear-gradient(135deg,#fff 15%,#fff2fa 100%);overflow:hidden}.hero-inner{max-width:1200px;margin:auto;min-height:590px;padding:70px 30px;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:40px}.spark{text-align:center;color:var(--pink);font-size:11px;font-weight:800;letter-spacing:.4em;padding-top:30px}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:800;color:var(--pink)}h1{font-size:clamp(36px,4.4vw,62px);letter-spacing:-.045em;line-height:1.48;margin:24px 0}h1 em,h2 i{color:var(--pink);font-style:normal}.hero p{color:#77748c;line-height:2;font-size:15px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:100px;padding:16px 26px;font-size:12px;font-weight:800;border:0;cursor:pointer}.primary{background:var(--pink);color:white;box-shadow:0 10px 28px #f44eaa30}.secondary{background:white;color:var(--pink);border:1px solid #f9c5e2}.hero-art{position:relative;display:grid;place-items:center;min-height:400px}.logo-frame{width:min(95%,400px);aspect-ratio:1;border:15px solid white;border-radius:40px;overflow:hidden;transform:rotate(5deg);box-shadow:0 25px 70px #f4a6d355}.logo-frame img{width:100%;height:100%;object-fit:cover}.star{position:absolute;color:#ff82c4;font-size:65px}.s1{top:0;right:5%}.s2{bottom:0;left:0}.hero-bottom{max-width:1200px;margin:auto;padding:20px 30px 35px;display:flex;justify-content:space-between;color:#df9fc1;font-weight:900;letter-spacing:.22em;font-size:10px}.section{padding:100px max(5%,calc((100% - 1200px)/2));scroll-margin-top:80px}.section-head{text-align:center;margin-bottom:55px}.section-head h2{font-size:clamp(36px,5vw,58px);letter-spacing:-.05em;margin:10px 0 2px;font-weight:900}.section-head p{font-size:13px;color:#aaa}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about-visual{min-height:350px;background:linear-gradient(135deg,#ffe2f2,#f8c8e4 55%,#e4ecff);border-radius:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-size:50px}.about-visual strong{font-size:45px;line-height:1.25;text-align:center}.about-visual span{font-size:12px;margin-top:20px;font-weight:700}.about-grid h3,.recruit h3{font-size:30px;line-height:1.6}.about-grid p,.recruit p{color:var(--muted);line-height:2;font-size:14px}dl div{display:flex;border-bottom:1px solid var(--line);padding:15px 0;gap:30px;font-size:13px}dt{width:90px;color:#aaa}dd{margin:0;font-weight:700}.talents{background:#fff8fc}.filters{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:34px}.filters button{border:1px solid #f3dbe9;border-radius:30px;background:white;color:#9c8b9b;padding:12px 18px;font-size:11px;font-weight:800;cursor:pointer}.filters button.active{background:var(--pink);color:white;border-color:var(--pink)}.filters span{opacity:.7}.talent-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.talent-card{background:white;border:1px solid #f7e7f0;border-radius:20px;overflow:hidden;transition:transform .2s,box-shadow .2s}.talent-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #ecb8d344}.portrait{height:290px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#fff0f8,#f0f5ff);overflow:hidden;position:relative}.portrait img{width:100%;height:100%;object-fit:contain;object-position:center bottom}.portrait.poster img{object-fit:contain;padding:10px}.portrait.soon{flex-direction:column;color:#ef91c3;gap:12px}.portrait.soon span{font-size:38px}.portrait.soon strong{font-size:12px;letter-spacing:.2em}.talent-info{padding:18px}.talent-info small{font-size:10px;color:var(--pink);font-weight:800;letter-spacing:.1em}.talent-info h3{font-size:17px;margin:8px 0 6px;overflow-wrap:anywhere}.talent-info p{font-size:11px;color:#aaa;margin:0 0 15px}.talent-links{display:flex;gap:8px}.talent-links a{border-radius:30px;padding:9px 12px;background:#fff2f9;color:#dd4c9b;font-size:11px;font-weight:800}.talent-links a:hover{background:#f44eaa;color:white}.recruit-wrap{display:grid;grid-template-columns:1fr 1fr;gap:70px}.pill{display:inline-block;padding:10px 15px;border-radius:40px;background:#fff0f8;color:var(--pink);font-size:10px;font-weight:900;letter-spacing:.13em}.notice{background:#fff8ed;border:1px solid #f7e3c2;border-radius:12px;padding:16px;font-size:12px;line-height:1.8;color:#8c6844;margin-top:25px}.application{background:#fff8fc;padding:32px;border-radius:24px;display:grid;gap:18px}.application label{font-size:12px;font-weight:800;display:grid;gap:9px}.application label b{display:inline;color:var(--pink);font-size:10px}.application input:not([type=checkbox]),.application select,.application textarea{font:inherit;font-weight:400;width:100%;padding:15px;border:1px solid #efdfeb;border-radius:10px;background:white;outline-color:var(--pink)}.application .consent{display:flex;align-items:start;font-weight:400;line-height:1.6}.consent input{margin-top:4px}.submit{width:100%;font:inherit}.submit:disabled{background:#bcb7c0;box-shadow:none;cursor:not-allowed}.form-status{font-size:11px!important;margin:0}.contact{text-align:center;background:linear-gradient(140deg,#fff0f8,#f5f6ff)}.contact>p{color:var(--muted);font-size:13px}.contact .btn{margin-top:20px}.email{font-size:12px!important}footer{padding:40px 5%;background:#282640;color:white;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer-brand{font-size:22px;font-weight:900;letter-spacing:.1em}.footer-brand span{color:#f78ac4}footer div:nth-child(2){display:flex;gap:20px;font-size:10px}footer small{font-size:10px;color:#bdb6ce}@media(max-width:900px){.talent-grid{grid-template-columns:repeat(3,1fr)}.hero-inner{gap:10px}.recruit-wrap{gap:25px}}@media(max-width:650px){header{height:68px;padding:0 18px}.brand img{width:42px;height:42px}.menu{display:block;background:none;border:0;font-size:25px;color:var(--pink)}nav{display:none;position:absolute;top:68px;left:0;right:0;background:white;padding:25px;flex-direction:column;box-shadow:0 15px 20px #0001}nav.open{display:flex}.hero-inner{display:flex;flex-direction:column-reverse;padding:30px 23px 55px;min-height:0;gap:0}.hero-art{min-height:260px;width:100%}.logo-frame{width:220px;border-width:9px;border-radius:25px}h1{font-size:35px}.hero p{font-size:13px}.spark{font-size:9px;letter-spacing:.2em}.hero-bottom{padding:10px 23px 25px}.section{padding:65px 20px}.section-head{margin-bottom:30px}.about-grid,.recruit-wrap{grid-template-columns:1fr;gap:25px}.about-visual{min-height:230px}.about-visual strong{font-size:33px}.talent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.portrait{height:205px}.talent-info{padding:12px}.talent-info h3{font-size:13px}.talent-links{flex-wrap:wrap}.talent-links a{font-size:10px}.application{padding:20px}.recruit h3{font-size:25px}footer{flex-direction:column;align-items:flex-start}}
/* 日本語表記の読みやすさを優先 */
body{font-family:"Noto Sans JP","DM Sans",sans-serif}nav{font-size:13px;letter-spacing:.02em}.section-head h2{font-size:clamp(30px,4.4vw,48px);letter-spacing:-.035em}.eyebrow{letter-spacing:.07em}.filters button{font-size:12px}.brand small{font-size:10px;letter-spacing:.05em}.hero-bottom{letter-spacing:.04em}.about-visual strong{font-size:clamp(30px,4vw,43px)}@media(max-width:650px){.section-head h2{font-size:30px}.spark{letter-spacing:.04em}.hero-bottom{font-size:10px}}

/* 所属ライバー：統一デザイン */
.portrait{height:auto;aspect-ratio:1/1;background-color:#fff2fa;background-image:radial-gradient(circle at 80% 17%,rgba(255,255,255,.9) 0 3px,transparent 4px),linear-gradient(135deg,transparent 44%,rgba(244,78,170,.12) 44% 45%,transparent 45% 55%,rgba(244,78,170,.12) 55% 56%,transparent 56%),repeating-linear-gradient(45deg,transparent 0 26px,rgba(255,255,255,.46) 26px 27px),linear-gradient(145deg,#fff0f8,#f7e8ff 55%,#edf3ff);background-size:100% 100%;isolation:isolate}
.portrait:before{content:'✦';position:absolute;right:12px;top:8px;color:#efb1d5;font-size:23px;z-index:0}.portrait:after{content:'';position:absolute;inset:10px;border:1px solid rgba(234,151,198,.48);border-radius:16px;pointer-events:none;z-index:2}
.portrait img,.portrait.poster img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;object-position:center 17%;padding:0}
.portrait.soon{background-color:#fff2fa}
@media(max-width:650px){.portrait{height:auto;aspect-ratio:1/1}}

/* 2026-09-24: Keep heads and hair ornaments inside the card. */
.portrait img,.portrait.poster img{object-fit:contain!important;object-position:center top!important;max-width:100%;max-height:100%;padding:8px 5px 0!important;}
.portrait img[src$="talent-06.png"],.portrait img[src$="talent-08.png"]{padding:0!important;}

/* Consistent head-safe square bust-up portraits */
.portrait img,.portrait.poster img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;padding:0!important;}
