/*
Theme Name: ALTER PRODUCTION Refined
Theme URI: https://alterproduction.net/
Description: ALTER PRODUCTION 公式サイト 洗練版（refined）— 親テーマ「テーマ18」の子テーマ。ダーク×赤の世界観をブラッシュアップし、Audition セクションは 旧名称 ティーザー仕様に。
Author: 株式会社ゼロアドバンス + Refined Build
Version: 1.0.0
Template: テーマ18
Text Domain: alter-production-refined
*/

:root{
  --bg:#070708;
  --ink:#f5f5f7;
  --muted:rgba(245,245,247,.55);
  --line:rgba(245,245,247,.08);
  --line-strong:rgba(245,245,247,.18);
  --red:#AF3157;
  --red-deep:#9B0F33;
  --mag:#C71585;
  --gold:#F0C063;
  --grad:linear-gradient(135deg,#AF3157 0%,#C71585 55%,#7A1B6B 100%);
  --grad-soft:linear-gradient(135deg,rgba(175, 49, 87,.18),rgba(199,21,133,.06));
  --f-h:"Barlow Condensed",sans-serif;
  --f-b:"Noto Sans JP","Zen Kaku Gothic New",sans-serif;
  --f-d:"Zen Kaku Gothic New","Noto Sans JP",sans-serif;
  --f-m:"JetBrains Mono",monospace;
  --rad:2px;
  --w:1240px;
  --pad:clamp(20px,4vw,56px);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:96px;color-scheme:dark;-webkit-text-size-adjust:100%}
body{
  font-family:var(--f-b);
  font-size:16px;
  line-height:1.85;
  color:var(--ink);
  background:var(--bg);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
button{border:0;background:none;cursor:pointer;color:inherit;font:inherit}
::selection{background:rgba(175, 49, 87,.45);color:#fff}

/* ===== Atmospheric background (simplified, 元テーマ踏襲) ===== */
.bg-layer{position:fixed;inset:0;pointer-events:none;z-index:-1}
/* ドットパターン — 16px周期、元テーマ同等 */
.bg-dots{
  background-image:radial-gradient(rgba(255,255,255,.06) 1.5px,transparent 1.5px);
  background-size:16px 16px;
}
/* 四隅ヴィネット */
.bg-vignette{
  background:radial-gradient(ellipse 85% 85% at 50% 50%,transparent 45%,rgba(0,0,0,.65) 100%);
}
/* 45度 斜線（赤系のかすかなリズム） */
.bg-slash{
  background:repeating-linear-gradient(45deg,transparent,transparent 150px,rgba(175, 49, 87,.04) 150px,rgba(175, 49, 87,.04) 152px);
}
/* 控えめなフィルムグレイン */
.bg-noise{
  opacity:.3;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='.05'/></svg>");
}

/* ===== Header ===== */
.header{
  position:fixed;top:0;left:0;right:0;z-index:90;
  display:flex;align-items:center;justify-content:space-between;
  padding:18px clamp(20px,4vw,48px);
  transition:background .3s ease,backdrop-filter .3s ease,padding .3s ease;
}
.header.is-stuck{
  background:rgba(7,7,8,.78);
  backdrop-filter:blur(14px) saturate(140%);
  padding-top:12px;padding-bottom:12px;
  border-bottom:1px solid var(--line);
}
.brand{
  font-family:var(--f-h);font-weight:900;letter-spacing:.18em;
  display:inline-flex;align-items:center;gap:0;
  font-size:clamp(18px,2vw,24px);
  color:#fff;
  text-shadow:0 0 24px rgba(175, 49, 87,.25);
  white-space:nowrap;
}
.brand b{color:var(--red);font-weight:900;letter-spacing:.18em}
.brand .slash{display:inline-block;width:14px;height:2px;background:var(--grad);transform:skewX(-20deg);margin:0 12px;flex-shrink:0}
.nav{display:flex;align-items:center;gap:clamp(18px,2vw,32px)}
.nav a{
  font-family:var(--f-h);font-weight:600;font-size:13.5px;
  letter-spacing:.28em;text-transform:uppercase;
  color:var(--muted);
  position:relative;padding:8px 2px;
  transition:color .3s ease;
}
.nav a::after{
  content:"";position:absolute;left:0;right:0;bottom:0;
  height:1px;background:var(--red);
  transform:scaleX(0);transform-origin:left;
  transition:transform .35s cubic-bezier(.7,.1,.2,1);
}
.nav a:hover{color:#fff}
.nav a:hover::after{transform:scaleX(1)}
.nav__sns{display:flex;gap:6px;margin-left:8px}
.nav__sns a{
  width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--line);color:var(--muted);
  transition:all .3s ease;
}
.nav__sns a:hover{border-color:var(--red);color:#fff;background:rgba(175, 49, 87,.08)}
.nav__sns svg{width:14px;height:14px}

/* HAMBURGER (mobile only) */
.ham{display:none;width:40px;height:40px;flex-direction:column;justify-content:center;gap:6px;align-items:center;padding:0;cursor:pointer;position:relative;z-index:201}
.ham span{display:block;width:22px;height:1.5px;background:#fff;transition:transform .3s ease,opacity .2s ease}
.ham.is-open span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.ham.is-open span:nth-child(2){opacity:0}
.ham.is-open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

.mobnav{
  position:fixed;inset:0;z-index:200;
  background:rgba(7,7,8,.97);
  backdrop-filter:blur(10px);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;
  opacity:0;pointer-events:none;transition:opacity .3s ease;
}
.mobnav.is-open{opacity:1;pointer-events:auto}
.mobnav a{
  display:block;text-align:center;
  font-family:var(--f-h);font-size:32px;font-weight:800;
  letter-spacing:.18em;text-transform:uppercase;
  padding:18px 32px;color:#fff;border-bottom:1px solid var(--line);min-width:240px;
  transition:color .2s ease,background .2s ease;
}
.mobnav a:hover,.mobnav a:active{color:var(--red);background:rgba(175, 49, 87,.06)}
.mobnav__sns{display:flex;gap:10px;margin-top:36px}
.mobnav__sns a{
  width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--line-strong);color:var(--muted);padding:0;min-width:0;
}
.mobnav__sns a:hover{border-color:var(--red);color:#fff}
.mobnav__sns svg{width:18px;height:18px}

/* ===== Hero ===== */
.hero{
  min-height:100vh;min-height:100dvh;
  display:grid;place-items:center;
  position:relative;overflow:hidden;
  padding:0 var(--pad);
  background:radial-gradient(ellipse 90% 100% at 50% 100%,rgba(175, 49, 87,.08),transparent 55%);
}

/* ---- Stage spotlights (旧名称 風) ---- */
.hero__stage{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden;mix-blend-mode:screen;opacity:.85}
.hero__spot{
  position:absolute;top:-20%;width:60vw;height:140vh;
  transform-origin:top center;
  filter:blur(20px);
  opacity:.6;
  animation:heroSpot 9s ease-in-out infinite alternate;
}
.hero__spot--1{
  left:5%;transform:rotate(-8deg);
  background:linear-gradient(180deg,rgba(255,255,255,.18) 0%,rgba(175, 49, 87,.12) 40%,transparent 80%);
  animation-delay:0s;
}
.hero__spot--2{
  left:45%;transform:translateX(-50%) rotate(2deg);
  background:linear-gradient(180deg,rgba(255,255,255,.22) 0%,rgba(175, 49, 87,.16) 40%,transparent 80%);
  animation-delay:-3s;
}
.hero__spot--3{
  right:5%;transform:rotate(10deg);
  background:linear-gradient(180deg,rgba(255,255,255,.16) 0%,rgba(199,21,133,.12) 40%,transparent 80%);
  animation-delay:-6s;
}
@keyframes heroSpot{
  0%{opacity:.35;filter:blur(24px) brightness(.9)}
  50%{opacity:.7;filter:blur(18px) brightness(1.1)}
  100%{opacity:.5;filter:blur(22px) brightness(1)}
}

.hero__inner{position:relative;z-index:3;text-align:center;width:100%;max-width:var(--w)}
.hero__eyebrow{
  display:inline-flex;align-items:center;gap:14px;
  font-family:var(--f-h);font-weight:600;font-size:12px;
  letter-spacing:.5em;text-transform:uppercase;
  color:var(--muted);margin-bottom:36px;
  opacity:0;transform:translateY(8px);
  animation:fadeUp .9s .2s cubic-bezier(.2,.7,.2,1) forwards;
}
.hero__eyebrow b{color:var(--red);font-weight:800}
.hero__eyebrow .bar{width:36px;height:1px;background:linear-gradient(to right,transparent,var(--red))}
.hero__eyebrow .bar.r{background:linear-gradient(to left,transparent,var(--red))}
.hero__logo{
  display:flex;flex-direction:column;align-items:center;gap:.05em;
  font-family:var(--f-h);font-weight:900;line-height:.85;letter-spacing:.01em;
  user-select:none;margin:0 auto;
}
.hero__logo .row{display:flex;justify-content:center;align-items:baseline;white-space:nowrap}
.hero__logo .row span{
  display:inline-block;color:#fff;
  text-shadow:0 0 60px rgba(175, 49, 87,.35);
  opacity:0;transform:translateY(-40px) scale(1.4);
  animation:slamIn .55s cubic-bezier(.22,.7,.3,1.18) forwards;
}
.hero__logo .row.top{font-size:clamp(72px,14vw,200px)}
.hero__logo .row.btm{font-size:clamp(34px,6.5vw,90px);margin-top:-.1em}
.hero__logo .row .accent{color:var(--red);text-shadow:0 0 40px rgba(175, 49, 87,.5)}
/* per-letter rotations for collage feel */
.hero__logo .top span:nth-child(1){transform-origin:bottom left;animation-delay:.6s;--rot:-7deg}
.hero__logo .top span:nth-child(2){animation-delay:.7s;--rot:5deg}
.hero__logo .top span:nth-child(3){animation-delay:.8s;--rot:-3deg}
.hero__logo .top span:nth-child(4){animation-delay:.9s;--rot:8deg}
.hero__logo .top span:nth-child(5){animation-delay:1s;--rot:-5deg}
.hero__logo .btm span:nth-child(1){animation-delay:1.15s;--rot:4deg}
.hero__logo .btm span:nth-child(2){animation-delay:1.2s;--rot:-6deg}
.hero__logo .btm span:nth-child(3){animation-delay:1.25s;--rot:3deg}
.hero__logo .btm span:nth-child(4){animation-delay:1.3s;--rot:-4deg}
.hero__logo .btm span:nth-child(5){animation-delay:1.35s;--rot:7deg}
.hero__logo .btm span:nth-child(6){animation-delay:1.4s;--rot:-2deg}
.hero__logo .btm span:nth-child(7){animation-delay:1.45s;--rot:5deg}
.hero__logo .btm span:nth-child(8){animation-delay:1.5s;--rot:-8deg}
.hero__logo .btm span:nth-child(9){animation-delay:1.55s;--rot:4deg}
.hero__logo .btm span:nth-child(10){animation-delay:1.6s;--rot:-3deg}
@keyframes slamIn{
  0%{opacity:0;transform:translateY(-40px) scale(1.4) rotate(0deg);filter:blur(8px) brightness(2.5)}
  60%{opacity:1;transform:translateY(8px) scale(1) rotate(var(--rot,0));filter:blur(0) brightness(1.4)}
  80%{transform:translateY(-3px) scale(1) rotate(var(--rot,0));filter:brightness(1.1)}
  100%{opacity:1;transform:translateY(0) scale(1) rotate(var(--rot,0));filter:none}
}

.hero__tag{
  display:flex;flex-direction:column;align-items:center;gap:14px;
  margin-top:clamp(36px,6vw,72px);
  opacity:0;animation:fadeUp .9s 1.85s ease forwards;
}
.hero__tag-jp{
  font-family:var(--f-d);
  font-size:clamp(20px,3.4vw,38px);font-weight:700;
  letter-spacing:.18em;
  color:#fff;
  background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.65) 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 16px rgba(175, 49, 87,.18));
}
.hero__tag-jp i{font-style:normal;color:var(--red);-webkit-text-fill-color:var(--red);text-shadow:0 0 24px rgba(175, 49, 87,.4)}
.hero__tag-en{
  font-family:var(--f-h);font-weight:600;font-size:clamp(11px,1.4vw,14px);
  letter-spacing:.45em;color:var(--muted);text-transform:uppercase;
  display:inline-flex;align-items:center;gap:14px;
}
.hero__tag-en::before,.hero__tag-en::after{
  content:"";width:32px;height:1px;background:linear-gradient(to right,transparent,var(--red),transparent);
}
.hero__cta{
  display:inline-flex;align-items:center;justify-content:center;gap:32px;margin-top:16px;flex-wrap:wrap;
}
/* Hero audition callout (NOW CASTING +応募CTA) */
.hero__audition{
  margin-top:clamp(36px,5vw,64px);
  display:flex;flex-direction:column;align-items:center;gap:18px;
  opacity:0;animation:fadeUp .9s 2.2s ease forwards;
}
.hero__audition-meta{
  display:inline-flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center;
  padding:10px 20px;border:1px solid var(--line-strong);
  background:rgba(7,7,8,.6);backdrop-filter:blur(6px);
  font-family:var(--f-m);font-size:12px;letter-spacing:.2em;color:var(--muted);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%);
}
.hero__audition-dot{width:8px;height:8px;background:var(--red);border-radius:50%;animation:audDot 1.4s ease-in-out infinite}
.hero__audition-label{font-family:var(--f-h);font-weight:700;font-size:12px;letter-spacing:.35em;color:var(--red);text-transform:uppercase}
.hero__audition-sep{color:var(--line-strong)}
.hero__audition-dl b{color:#fff;font-weight:700;font-variant-numeric:tabular-nums}
.hero__cta-primary{
  padding:20px 40px;font-size:15px;
  background:var(--grad);color:#fff;
  border:0;clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%);
  box-shadow:0 12px 40px rgba(175, 49, 87,.35);
  transition:transform .3s ease,box-shadow .3s ease;
}
.hero__cta-primary::before,.hero__cta-primary::after{display:none}
.hero__cta-primary:hover{transform:translateY(-3px);box-shadow:0 18px 56px rgba(175, 49, 87,.5)}
.hero__cta-primary .arrow{transition:transform .3s ease}
.hero__cta-primary:hover .arrow{transform:translateX(6px)}

.btn{
  position:relative;display:inline-flex;align-items:center;gap:14px;
  font-family:var(--f-h);font-weight:700;font-size:14px;
  letter-spacing:.28em;text-transform:uppercase;
  padding:18px 30px 18px 34px;color:#fff;
  background:transparent;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);
  overflow:hidden;
  transition:color .3s ease,transform .3s ease;
}
.btn::before{
  content:"";position:absolute;inset:0;background:var(--grad);
  transform:translateX(-101%);transition:transform .5s cubic-bezier(.7,.1,.2,1);z-index:-1;
}
.btn::after{
  content:"";position:absolute;inset:0;border:1px solid var(--red);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);
  z-index:-1;
}
.btn:hover{transform:translateY(-2px)}
.btn:hover::before{transform:translateX(0)}
.btn .arrow{display:inline-block;transition:transform .3s ease}
.btn:hover .arrow{transform:translateX(6px)}
.btn--ghost{color:var(--muted);padding:14px 0 10px}
.btn--ghost::before,.btn--ghost::after{display:none}
.btn--ghost{
  border-bottom:1px solid var(--line-strong);
  clip-path:none;
  letter-spacing:.32em;
}
.btn--ghost:hover{color:var(--red);border-bottom-color:var(--red)}

.hero__scroll{
  position:absolute;left:50%;bottom:34px;transform:translateX(-50%);
  display:flex;flex-direction:column;align-items:center;gap:10px;z-index:2;
  opacity:0;animation:fadeUp .9s 2.4s ease forwards;
}
.hero__scroll .line{width:1px;height:60px;background:var(--line-strong);position:relative;overflow:hidden}
.hero__scroll .line::after{
  content:"";position:absolute;left:0;width:100%;height:50%;
  background:linear-gradient(to bottom,transparent,var(--red));
  animation:scrollLine 2.4s ease-in-out infinite;
}
@keyframes scrollLine{0%{top:-100%}100%{top:100%}}
.hero__scroll span{font-family:var(--f-h);font-size:9px;letter-spacing:.45em;color:var(--muted);text-transform:uppercase}

/* hero silhouettes (decorative SVG) */
.hero__sil{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;gap:clamp(20px,5vw,80px);padding:0 clamp(20px,5vw,80px) 0;z-index:2;pointer-events:none;opacity:0;animation:silhouettes 1.4s 1s ease forwards}
@keyframes silhouettes{from{opacity:0;transform:translateY(40px)}to{opacity:.55;transform:translateY(0)}}
.hero__sil svg{height:min(78vh,640px);width:auto;filter:drop-shadow(0 0 30px rgba(175, 49, 87,.35))}
.hero__sil svg path{fill:#0c0c0e;stroke:rgba(175, 49, 87,.55);stroke-width:.6}

@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

/* ===== Section common ===== */
.sec{position:relative;padding:clamp(96px,12vw,180px) var(--pad)}
.sec__inner{max-width:var(--w);margin:0 auto;position:relative;z-index:2}
.sec__head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:clamp(48px,6vw,80px);flex-wrap:wrap}
.sec__head-l{display:flex;flex-direction:column;gap:12px}
.sec__num{font-family:var(--f-h);font-size:13px;font-weight:700;letter-spacing:.4em;color:var(--red);display:flex;align-items:center;gap:14px}
.sec__num::before{content:"";width:28px;height:1px;background:var(--red)}
.sec__lb{font-family:var(--f-h);font-size:14px;font-weight:600;letter-spacing:.45em;color:var(--muted);text-transform:uppercase}
.sec__tt{
  font-family:var(--f-d);
  font-size:clamp(28px,4vw,48px);
  font-weight:900;line-height:1.35;letter-spacing:.03em;
  color:#fff;
  margin-top:6px;
  word-break:keep-all;
  overflow-wrap:break-word;
}
.sec__tt em{font-style:normal;color:var(--red);position:relative}
.sec__tt em::after{content:"";position:absolute;left:-2px;right:-2px;bottom:.06em;height:.18em;background:var(--grad);opacity:.25;z-index:-1}
.sec__head-r{font-size:14.5px;color:var(--muted);max-width:36ch;line-height:2;align-self:flex-end}

.sec__bg-num{
  position:absolute;font-family:var(--f-h);font-weight:900;
  font-size:clamp(160px,22vw,360px);line-height:.8;
  color:rgba(245,245,247,.025);
  user-select:none;pointer-events:none;z-index:1;
  letter-spacing:-.02em;
}

/* ===== News ===== */
.news{display:flex;flex-direction:column}
.news__item{
  display:grid;
  grid-template-columns:140px 96px 1fr auto;
  gap:28px;align-items:center;
  padding:24px 4px;
  border-top:1px solid var(--line);
  transition:padding .35s cubic-bezier(.7,.1,.2,1),background .35s ease;
  position:relative;
}
.news__item:last-child{border-bottom:1px solid var(--line)}
.news__item::before{
  content:"";position:absolute;left:-4px;top:50%;transform:translateY(-50%);
  width:3px;height:0;background:var(--red);transition:height .35s cubic-bezier(.7,.1,.2,1);
}
.news__date{font-family:var(--f-h);font-weight:700;font-size:14px;letter-spacing:.12em;color:var(--muted)}
.news__cat{
  display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--f-h);font-size:11px;font-weight:700;letter-spacing:.2em;
  padding:6px 10px;text-transform:uppercase;
  color:var(--red);border:1px solid var(--red);
}
.news__cat--info{color:var(--muted);border-color:var(--line-strong)}
.news__cat--audition{color:#fff;background:var(--red);border-color:var(--red)}
.news__title{font-size:16px;color:rgba(245,245,247,.92);font-weight:500;line-height:1.6;letter-spacing:.02em}
.news__arrow{
  width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;
  color:var(--muted);transition:transform .35s ease,color .35s ease;
}
.news__arrow svg{width:14px;height:14px}
.news__item:hover{background:linear-gradient(to right,rgba(175, 49, 87,.05),transparent 60%);padding-left:18px}
.news__item:hover::before{height:65%}
.news__item:hover .news__title{color:#fff}
.news__item:hover .news__arrow{color:var(--red);transform:translateX(6px)}
.news__more{margin-top:48px;display:inline-flex}

/* ===== About ===== */
.about{display:grid;grid-template-columns:1fr;gap:clamp(40px,5vw,80px)}
@media(min-width:900px){.about{grid-template-columns:1.2fr 1fr}}
.about__lead{
  font-family:var(--f-d);
  font-size:clamp(22px,2.4vw,30px);
  font-weight:700;line-height:2;letter-spacing:.04em;
  color:#fff;
}
.about__lead em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.about__copy p{font-size:15.5px;line-height:2.2;color:var(--muted);margin-bottom:1.2em}
.about__pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}
.pillar{
  border:1px solid var(--line);padding:24px 18px;
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0));
  position:relative;overflow:hidden;
  transition:border-color .4s ease,transform .4s ease;
}
.pillar::before{
  content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--grad);
  transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.7,.1,.2,1);
}
.pillar:hover{transform:translateY(-4px);border-color:var(--line-strong)}
.pillar:hover::before{transform:scaleX(1)}
.pillar__num{font-family:var(--f-h);font-weight:900;font-size:14px;letter-spacing:.2em;color:var(--red)}
.pillar__t{font-family:var(--f-d);font-size:17px;font-weight:900;letter-spacing:.04em;margin:8px 0 6px;color:#fff}
.pillar__d{font-size:13px;line-height:1.85;color:var(--muted)}

/* ===== About Details ===== */
.about__details{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}
@media(max-width:899px){.about__details{grid-template-columns:1fr}}
.detail-card{
  position:relative;border:1px solid var(--line);padding:28px 22px;
  background:rgba(255,255,255,.02);transition:transform .3s,border-color .3s;
  overflow:hidden;
}
.detail-card::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s;
}
.detail-card:hover{transform:translateY(-4px);border-color:var(--line-strong)}
.detail-card:hover::before{transform:scaleX(1)}
.detail-card__icon{
  width:36px;height:36px;margin-bottom:14px;
  display:flex;align-items:center;justify-content:center;
  border:1px solid var(--red);color:var(--red);flex-shrink:0;
}
.detail-card__icon svg{width:18px;height:18px}
.detail-card__t{font-family:var(--f-d);font-size:15px;font-weight:900;letter-spacing:.04em;margin-bottom:10px;color:#fff}
.detail-card__d{font-size:13px;line-height:2;color:var(--muted)}

/* ===== Talents ===== */
.talents__grid{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:760px){.talents__grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.talents__grid{grid-template-columns:repeat(3,1fr)}}
.tcard{
  position:relative;
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0));
  overflow:hidden;
  transition:border-color .4s ease,transform .4s cubic-bezier(.25,.8,.3,1),box-shadow .4s ease;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);
}
.tcard__media{
  aspect-ratio:3/4;
  background:linear-gradient(135deg,#1a0a14 0%,#3b0a24 60%,#0a0a0e 100%);
  position:relative;overflow:hidden;
}
.tcard__media::after{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 50% 30%,rgba(175, 49, 87,.18),transparent 70%);
}
.tcard__sil{
  position:absolute;left:50%;bottom:0;transform:translateX(-50%);
  height:88%;width:auto;
  filter:drop-shadow(0 0 30px rgba(175, 49, 87,.35));
}
.tcard__sil path{fill:#0a0a0e;stroke:rgba(175, 49, 87,.6);stroke-width:.8}
.tcard__mask{
  position:absolute;top:18px;right:18px;
  font-family:var(--f-h);font-size:9.5px;font-weight:700;letter-spacing:.3em;
  color:var(--red);padding:4px 8px;border:1px solid var(--red);
  background:rgba(7,7,8,.7);backdrop-filter:blur(4px);
}
.tcard__num{
  position:absolute;left:18px;top:18px;
  font-family:var(--f-h);font-weight:900;font-size:42px;line-height:.85;
  color:rgba(255,255,255,.06);
}
.tcard__body{padding:22px 22px 26px;border-top:1px solid var(--line)}
.tcard__gen{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--f-h);font-size:11px;font-weight:700;letter-spacing:.28em;
  color:var(--red);text-transform:uppercase;margin-bottom:10px;
}
.tcard__gen::before{content:"";width:6px;height:6px;background:var(--red);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.tcard__nm{font-family:var(--f-d);font-size:24px;font-weight:900;letter-spacing:.02em;color:#fff}
.tcard__en{font-family:var(--f-h);font-style:italic;font-size:12px;font-weight:500;letter-spacing:.14em;color:var(--muted);margin-top:2px}
.tcard__catch{font-size:13.5px;line-height:1.85;color:var(--muted);margin-top:14px;min-height:3.7em}
.tcard:hover{transform:translateY(-8px);border-color:var(--red);box-shadow:0 22px 50px rgba(0,0,0,.5),0 0 40px rgba(175, 49, 87,.15)}

/* ---- Plain talent card (no media / no background) ---- */
.talents__grid--single{grid-template-columns:1fr!important;max-width:520px;margin:0 auto}
.tcard--plain{
  background:transparent;border:1px solid var(--line-strong);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);
  padding:4px;
}
.tcard--plain .tcard__media{display:none}
.tcard--plain .tcard__body{border-top:0;padding:32px 28px;text-align:center}
.tcard--plain .tcard__gen{justify-content:center;display:inline-flex}
.tcard--plain:hover{transform:translateY(-4px);border-color:var(--red);box-shadow:0 14px 40px rgba(0,0,0,.4)}

/* coming soon variants */
.tcard--soon .tcard__media{background:linear-gradient(135deg,#0d0d10 0%,#1a0a14 60%,#0a0a0e 100%)}
.tcard--soon .tcard__sil path{fill:#101013;stroke:rgba(245,245,247,.18);stroke-dasharray:6 6}

/* ===== HP Audition — Banner CTA (特設ページ誘導) ===== */
.aud-banner{
  position:relative;display:block;
  border:1px solid var(--line-strong);
  background:
    radial-gradient(ellipse 70% 100% at 20% 50%,rgba(175, 49, 87,.22),transparent 65%),
    radial-gradient(ellipse 60% 80% at 90% 30%,rgba(199,21,133,.15),transparent 70%),
    linear-gradient(135deg,rgba(7,7,8,.6),rgba(7,7,8,.9));
  padding:clamp(36px,5vw,64px);
  overflow:hidden;
  clip-path:polygon(0 18px,18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);
  color:inherit;text-decoration:none;
  transition:transform .35s cubic-bezier(.7,.1,.2,1),border-color .35s ease;
}
.aud-banner:hover{transform:translateY(-4px);border-color:var(--red)}
.aud-banner::before,.aud-banner::after{content:"";position:absolute;background:var(--red);pointer-events:none;z-index:1}
.aud-banner::before{top:0;left:0;width:80px;height:1px}
.aud-banner::after{top:0;left:0;width:1px;height:80px}
.aud-banner__bg{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}
.aud-banner__scan{
  position:absolute;left:0;right:0;top:0;bottom:0;
  background:repeating-linear-gradient(90deg,transparent 0 50px,rgba(175, 49, 87,.035) 50px 51px);
  opacity:.9;
}

.aud-banner__inner{
  position:relative;z-index:2;
  display:grid;grid-template-columns:1fr;gap:clamp(24px,3vw,40px);
  align-items:center;
}
@media(min-width:880px){.aud-banner__inner{grid-template-columns:1fr auto}}

/* Left side */
.aud-banner__slate{
  display:inline-flex;align-items:center;gap:14px;
  font-family:var(--f-m);font-size:11px;letter-spacing:.32em;
  color:var(--muted);text-transform:uppercase;margin-bottom:20px;
}
.aud-banner__slate .dot{width:8px;height:8px;background:var(--red);border-radius:50%;animation:audDot 1.4s ease-in-out infinite}
.aud-banner__emblem{
  font-family:var(--f-h);font-weight:900;line-height:.9;letter-spacing:.01em;
  color:#fff;text-shadow:0 0 36px rgba(175, 49, 87,.35);
  user-select:none;margin-bottom:18px;
}
.aud-banner__emblem .pj{display:block;font-size:clamp(11px,1.2vw,13px);font-weight:600;letter-spacing:.45em;color:var(--red);margin-bottom:6px;text-transform:uppercase}
.aud-banner__emblem .ti{display:block;font-size:clamp(36px,5.5vw,72px);text-transform:uppercase}
.aud-banner__emblem .ti i{font-style:normal;color:var(--red);text-shadow:0 0 24px rgba(175, 49, 87,.6)}
.aud-banner__emblem .ti .glx{display:inline-block;animation:audGlitch 4s steps(1) infinite}
.aud-banner__lead{
  font-family:var(--f-d);font-weight:700;
  font-size:clamp(15px,1.4vw,18px);line-height:2;letter-spacing:.06em;
  color:rgba(255,255,255,.92);margin-bottom:14px;
}
.aud-banner__dl{font-family:var(--f-m);font-size:13px;letter-spacing:.12em;color:var(--muted)}
.aud-banner__dl b{color:var(--red);font-weight:700}

/* Right CTA */
.aud-banner__r{display:flex;justify-content:flex-end;align-items:center}
.aud-banner__cta{
  display:inline-flex;flex-direction:column;align-items:flex-end;gap:6px;
  padding:24px 32px;
  border:1px solid var(--red);
  background:linear-gradient(135deg,rgba(175, 49, 87,.12),rgba(199,21,133,.04));
  clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%);
  transition:background .35s ease,box-shadow .35s ease;
  position:relative;
}
.aud-banner:hover .aud-banner__cta{
  background:linear-gradient(135deg,rgba(175, 49, 87,.25),rgba(199,21,133,.08));
  box-shadow:0 12px 40px rgba(175, 49, 87,.25);
}
.aud-banner__cta-l{font-family:var(--f-h);font-size:11px;font-weight:700;letter-spacing:.35em;color:var(--red);text-transform:uppercase}
.aud-banner__cta-t{font-family:var(--f-d);font-size:clamp(16px,1.6vw,20px);font-weight:900;letter-spacing:.08em;color:#fff;display:inline-flex;align-items:center;gap:14px}
.aud-banner__cta-t .arrow{font-family:var(--f-h);font-weight:900;transition:transform .3s ease}
.aud-banner:hover .aud-banner__cta-t .arrow{transform:translateX(8px)}

@media(max-width:560px){
  .aud-banner__cta{width:100%;align-items:flex-start;padding:18px 22px}
  .aud-banner__r{justify-content:stretch}
}

/* ===== Legacy Audition styles (Variant A) — keep for /audition/ hero only ===== */
.aud{position:relative}
.aud__hero{
  display:grid;grid-template-columns:1fr;gap:48px;
  border:1px solid var(--line-strong);
  background:
    radial-gradient(ellipse 60% 80% at 18% 50%,rgba(175, 49, 87,.18),transparent 60%),
    radial-gradient(ellipse 50% 60% at 88% 30%,rgba(199,21,133,.12),transparent 65%),
    linear-gradient(180deg,rgba(7,7,8,.6),rgba(7,7,8,.9));
  padding:clamp(36px,5vw,68px);
  position:relative;overflow:hidden;
  clip-path:polygon(0 18px,18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);
}
@media(min-width:880px){.aud__hero{grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}}
.aud__hero::before,.aud__hero::after{content:"";position:absolute;background:var(--red)}
.aud__hero::before{top:0;left:0;width:80px;height:1px}
.aud__hero::after{top:0;left:0;width:1px;height:80px}
.aud__corner{position:absolute;bottom:0;right:0;width:80px;height:80px;pointer-events:none}
.aud__corner::before,.aud__corner::after{content:"";position:absolute;background:var(--red)}
.aud__corner::before{bottom:0;right:0;width:80px;height:1px}
.aud__corner::after{bottom:0;right:0;width:1px;height:80px}

/* "now in preparation" film slate */
.aud__slate{
  display:inline-flex;align-items:center;gap:14px;
  font-family:var(--f-m);font-size:11px;letter-spacing:.32em;
  color:var(--muted);text-transform:uppercase;margin-bottom:24px;
}
.aud__slate .dot{width:8px;height:8px;background:var(--red);border-radius:50%;animation:audDot 1.4s ease-in-out infinite}
@keyframes audDot{50%{opacity:.25;transform:scale(.7)}}
.aud__slate b{color:var(--red);font-weight:700}

/* 旧名称 emblem with glitch */
.aud__emblem{
  font-family:var(--f-h);font-weight:900;line-height:.9;letter-spacing:.01em;
  color:#fff;text-shadow:0 0 36px rgba(175, 49, 87,.35);
  user-select:none;position:relative;
}
.aud__emblem .pj{display:block;font-size:clamp(13px,1.5vw,16px);font-weight:600;letter-spacing:.45em;color:var(--red);margin-bottom:8px;text-transform:uppercase}
.aud__emblem .ti{display:block;font-size:clamp(46px,7vw,96px);text-transform:uppercase}
.aud__emblem .ti i{font-style:normal;color:var(--red);text-shadow:0 0 24px rgba(175, 49, 87,.6)}
.aud__emblem .ti .glx{display:inline-block;animation:audGlitch 4s steps(1) infinite}
@keyframes audGlitch{
  0%,92%,100%{transform:none;text-shadow:0 0 24px rgba(175, 49, 87,.6)}
  93%{transform:translate(-2px,1px);text-shadow:2px 0 #00b4ff,-2px 0 var(--red)}
  94%{transform:translate(2px,-1px);text-shadow:-2px 0 #00b4ff,2px 0 var(--red)}
  95%{transform:none}
}
.aud__emblem .sub{display:block;font-family:var(--f-m);font-size:clamp(11px,1.1vw,13px);letter-spacing:.45em;color:var(--muted);margin-top:10px;text-transform:uppercase}

.aud__lead{
  font-family:var(--f-d);font-weight:700;
  font-size:clamp(17px,1.6vw,20px);line-height:2;letter-spacing:.05em;
  color:rgba(255,255,255,.92);margin:28px 0 0;max-width:42ch;
}
.aud__lead em{font-style:normal;color:var(--red)}

/* live countdown */
.aud__count{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.aud__count-l{font-family:var(--f-h);font-size:11px;font-weight:700;letter-spacing:.4em;color:var(--muted);text-transform:uppercase;display:flex;align-items:center;gap:10px}
.aud__count-l::before{content:"";width:8px;height:8px;background:var(--red);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.aud__count-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%}
.aud__cell{
  position:relative;border:1px solid var(--line-strong);
  background:linear-gradient(180deg,rgba(7,7,8,.7),rgba(7,7,8,.4));
  padding:18px 8px 14px;text-align:center;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%);
  overflow:hidden;
}
.aud__cell::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(175, 49, 87,.04) 100%);pointer-events:none}
.aud__cell .v{display:block;font-family:var(--f-h);font-weight:900;font-size:clamp(34px,4.5vw,52px);line-height:1;color:#fff;letter-spacing:.02em;font-variant-numeric:tabular-nums;text-shadow:0 0 18px rgba(175, 49, 87,.25)}
.aud__cell .u{display:block;font-family:var(--f-m);font-size:9px;letter-spacing:.32em;color:var(--muted);margin-top:8px;text-transform:uppercase}
.aud__cta{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:8px}
.aud__dl{font-family:var(--f-m);font-size:12px;letter-spacing:.18em;color:var(--muted)}
.aud__dl b{color:var(--red);font-weight:700}

/* requirement / support 2 columns */
.aud__cols{display:grid;grid-template-columns:1fr;gap:18px;margin-top:36px}
@media(min-width:760px){.aud__cols{grid-template-columns:1fr 1fr}}
.aud__box{
  border:1px solid var(--line);background:rgba(7,7,8,.5);padding:26px 24px;
  position:relative;transition:border-color .25s ease;
}
@media(hover:hover){.aud__box:hover{border-color:var(--line-strong)}}
.aud__box-h{display:flex;align-items:center;gap:12px;font-family:var(--f-d);font-size:16px;font-weight:900;letter-spacing:.06em;margin-bottom:14px;color:#fff}
.aud__box-h .ix{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--f-h);font-size:12px;font-weight:900;color:var(--red);border:1px solid var(--red)}
.aud__li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.85;color:rgba(255,255,255,.85);margin-bottom:8px}
.aud__li::before{content:"";display:inline-block;width:5px;height:5px;margin-top:9px;flex-shrink:0;background:var(--red);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}

/* ===== Footer ===== */
.ft{border-top:1px solid var(--line);padding:clamp(64px,8vw,100px) var(--pad) 36px;position:relative;overflow:hidden}
.ft::before{
  content:"ALTER PRODUCTION";
  position:absolute;left:50%;bottom:-30px;transform:translateX(-50%);
  font-family:var(--f-h);font-weight:900;font-size:clamp(80px,18vw,260px);
  line-height:.8;letter-spacing:-.02em;
  color:transparent;
  -webkit-text-stroke:1px rgba(175, 49, 87,.12);
  white-space:nowrap;pointer-events:none;user-select:none;
}
.ft__inner{max-width:var(--w);margin:0 auto;position:relative;z-index:2}
.ft__top{display:grid;gap:48px;grid-template-columns:1fr;margin-bottom:64px}
@media(min-width:760px){.ft__top{grid-template-columns:1.5fr 1fr 1fr}}
.ft__br{font-family:var(--f-h);font-weight:900;font-size:22px;letter-spacing:.06em;color:#fff;margin-bottom:14px}
.ft__co,.ft__ad{font-size:13px;color:var(--muted);line-height:1.85}
.ft__sns{display:flex;gap:8px;margin-top:18px}
.ft__sns a{
  width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--line);color:var(--muted);transition:all .3s ease;
}
.ft__sns a:hover{border-color:var(--red);color:#fff}
.ft__sns svg{width:14px;height:14px}
.ft h4{font-family:var(--f-h);font-size:12px;font-weight:700;letter-spacing:.4em;color:var(--red);text-transform:uppercase;margin-bottom:18px}
.ft__lk{display:flex;flex-direction:column;gap:10px}
.ft__lk a{font-size:13.5px;color:var(--muted);transition:color .3s ease;display:inline-flex;align-items:center;gap:6px}
.ft__lk a:hover{color:#fff}
.ft__lk a::before{content:"›";color:var(--red);opacity:0}
.ft__lk a:hover::before{opacity:1}
.ft__cp{
  display:flex;justify-content:space-between;align-items:center;gap:24px;
  padding-top:28px;border-top:1px solid var(--line);
  font-family:var(--f-h);font-size:11px;letter-spacing:.18em;color:rgba(255,255,255,.3);
  text-transform:uppercase;flex-wrap:wrap;
}

/* ===== Reveal on scroll ===== */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}
.reveal.is-in{opacity:1;transform:translateY(0)}
.reveal[data-d="1"]{transition-delay:.08s}
.reveal[data-d="2"]{transition-delay:.16s}
.reveal[data-d="3"]{transition-delay:.24s}
.reveal[data-d="4"]{transition-delay:.32s}
.reveal[data-d="5"]{transition-delay:.4s}

/* ===== Responsive tweaks ===== */
@media(max-width:760px){
  .nav a:not(.ham){display:none}
  .nav__sns{display:none}
  .ham{display:flex}
  .news__item{grid-template-columns:96px 1fr;grid-template-rows:auto auto;gap:8px 14px}
  .news__date{grid-column:1}
  .news__cat{grid-column:2;justify-self:start;font-size:10px;padding:4px 8px}
  .news__title{grid-column:1/-1}
  .news__arrow{display:none}
  .about__pillars{grid-template-columns:1fr}
  .sec__head-r{display:none}
  .hero__sil{display:none}
  .header{padding:14px 18px}
  .sec{padding:80px 20px}
  .hero__cta{flex-direction:column;gap:14px}
  .hero__cta .btn{width:100%;justify-content:center}
  .ft__top{gap:32px}
  .ft__cp{flex-direction:column;gap:8px;text-align:center}
}
@media(min-width:761px){.mobnav,.ham{display:none!important}}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}
}

/* ==========================================================================
   HP Top — Opera Logo + Curtain Opening
   ========================================================================== */

/* ---- Font imports (Shippori Mincho + JetBrains Mono) ---- */
/* 既に apr-google-fonts で読み込まれる前提。functions.php 側で追加する */

/* ---- Opera Hero ---- */
.hero.hero--opera{
  min-height:100vh;min-height:100dvh;
  display:grid;place-items:center;position:relative;overflow:hidden;
  padding:clamp(80px,10vw,120px) var(--pad) clamp(60px,8vw,100px);
  background:transparent;
}

/* ---- God rays (親テーマ /audition/ と同等) ---- */
.hero--opera.hero-godrays::after{
  content:"";position:absolute;inset:-10%;pointer-events:none;z-index:0;mix-blend-mode:screen;
  background:
    linear-gradient(125deg, transparent 28%, rgba(255,243,208,.15) 31%, transparent 34%),
    linear-gradient(135deg, transparent 43%, rgba(255,255,255,.1) 46%, transparent 49%),
    linear-gradient(140deg, transparent 58%, rgba(255,243,208,.12) 61%, transparent 64%),
    linear-gradient(120deg, transparent 73%, rgba(255,255,255,.08) 76%, transparent 79%);
  animation: godrays-sway 20s ease-in-out infinite;
  transform-origin:right top;
}
@keyframes godrays-sway{
  0%,100%{transform:rotate(0deg) scale(1);opacity:.9}
  25%{transform:rotate(.8deg) scale(1.02);opacity:1}
  50%{transform:rotate(-.5deg) scale(1);opacity:.85}
  75%{transform:rotate(.4deg) scale(1.01);opacity:.95}
}

/* ---- Central glow (親テーマ /audition/ と同等) ---- */
.hero--opera.hero-glow::before{
  content:"";position:absolute;top:40%;left:50%;width:1500px;height:1500px;border-radius:50%;
  pointer-events:none;z-index:0;mix-blend-mode:screen;
  background:
    radial-gradient(circle, rgba(255,204,51,.2) 0%, transparent 30%),
    radial-gradient(circle, rgba(255,243,208,.48) 0%, rgba(232,185,101,.18) 25%, transparent 55%);
  animation: glow-pulse 8s ease-in-out infinite;
}
@keyframes glow-pulse{
  0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.85}
  50%{transform:translate(-50%,-50%) scale(1.08);opacity:1}
}

/* ---- Silhouette image (親テーマ image.png を再利用) ---- */
.hero__silhouette-wrap{
  position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none;
  display:flex;align-items:flex-end;justify-content:center;
}
.hero__silhouette-img{
  width:100%;max-width:1200px;opacity:.55;object-fit:contain;
  filter:brightness(1.15) saturate(1) contrast(1.1);
}
.silhouette-breathe{animation: silhouette-breathe 6s ease-in-out infinite}
@keyframes silhouette-breathe{
  0%,100%{opacity:.22;transform:scale(1)}
  50%{opacity:.32;transform:scale(1.03)}
}
.hero--opera .hero__inner{position:relative;z-index:3;text-align:center;width:100%;max-width:var(--w);display:flex;flex-direction:column;align-items:center;gap:clamp(20px,2.5vw,32px)}

/* Gold sparkles (JS で要素を追加) */
.hero__sparkles{position:absolute;inset:0;pointer-events:none;z-index:2;overflow:hidden}
.hero__sparkles span{
  position:absolute;width:3px;height:3px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,238,200,.9),rgba(240,192,99,.2) 40%,transparent 70%);
  box-shadow:0 0 10px rgba(240,192,99,.35);
  animation:heroSparkle 8s linear infinite;opacity:0;
}
@keyframes heroSparkle{
  0%{opacity:0;transform:translateY(0) scale(.6)}
  20%{opacity:.9;transform:translateY(-20vh) scale(1)}
  80%{opacity:.9;transform:translateY(-80vh) scale(1)}
  100%{opacity:0;transform:translateY(-110vh) scale(.4)}
}

/* Gold separators */
.hero__sep{
  display:inline-flex;align-items:center;gap:14px;
  font-family:var(--f-m),monospace;
  font-size:clamp(10px,1.1vw,13px);font-weight:500;letter-spacing:.45em;
  color:#F0C063;text-transform:uppercase;
}
.hero__sep::before,.hero__sep::after{content:"";width:32px;height:1px;background:#F0C063;opacity:.55}

/* Opera logo (明朝 ALTER + 金色 PRODUCTION) */
.hero__opera{
  font-family:"Shippori Mincho",serif;font-weight:800;line-height:.95;letter-spacing:.08em;
  color:#fff;text-shadow:0 0 48px rgba(240,192,99,.22);
  display:flex;flex-direction:column;align-items:center;gap:0;margin:0;
  user-select:none;
}
.hero__opera .top{display:block;font-size:clamp(56px,10vw,120px)}
.hero__opera .btm{
  display:block;font-size:clamp(28px,5vw,56px);font-weight:600;letter-spacing:.18em;
  color:#F0C063;margin-top:-.1em;
}

/* Mincho catch copy */
.hero__catch{
  font-family:"Shippori Mincho",serif;font-weight:700;line-height:1.8;letter-spacing:.14em;
  font-size:clamp(24px,3.8vw,44px);color:#fff;
  text-shadow:0 0 36px rgba(240,192,99,.18);
}
.hero__catch em{font-style:normal;color:var(--red);text-shadow:0 0 28px rgba(175, 49, 87,.5)}
.hero--opera .hero__tag-en{
  font-family:var(--f-h);font-size:clamp(11px,1.2vw,14px);letter-spacing:.45em;
  color:rgba(246,238,228,.7);text-transform:uppercase;
}

/* Scroll indicator */
.hero__scroll{position:absolute;bottom:36px;left:50%;transform:translateX(-50%);z-index:4;display:flex;flex-direction:column;align-items:center;gap:8px;font-family:var(--f-h);font-size:10px;letter-spacing:.5em;color:#F0C063;text-transform:uppercase}
.hero__scroll .line{width:1px;height:50px;background:linear-gradient(to bottom,transparent,#F0C063);position:relative;overflow:hidden}

/* ---- Stage spotlights (既存から強化) ---- */
.hero--opera .hero__stage{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden;mix-blend-mode:screen;opacity:.85}
.hero--opera .hero__stage .hero__spot{position:absolute;top:-20%;width:48vw;height:140vh;transform-origin:top center;filter:blur(20px);opacity:.5;animation:heroSpotPulse 9s ease-in-out infinite alternate}
.hero--opera .hero__spot--1{left:5%;transform:rotate(-10deg);background:linear-gradient(180deg,rgba(255,238,200,.25) 0%,rgba(240,192,99,.12) 40%,transparent 80%);animation-delay:0s}
.hero--opera .hero__spot--2{left:50%;transform:translateX(-50%) rotate(0deg);background:linear-gradient(180deg,rgba(255,225,180,.32) 0%,rgba(175, 49, 87,.18) 40%,transparent 80%);animation-delay:-3s}
.hero--opera .hero__spot--3{right:5%;transform:rotate(12deg);background:linear-gradient(180deg,rgba(255,210,160,.22) 0%,rgba(199,21,133,.14) 40%,transparent 80%);animation-delay:-6s}
@keyframes heroSpotPulse{0%{opacity:.35;filter:blur(24px)}50%{opacity:.65;filter:blur(18px)}100%{opacity:.5;filter:blur(22px)}}

/* ---- Silhouettes (A 風) ---- */
.hero--opera .hero__sil{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;gap:clamp(20px,5vw,80px);padding:0 clamp(20px,5vw,80px);z-index:2;pointer-events:none;opacity:.55}
.hero--opera .hero__sil svg{height:min(72vh,580px);width:auto;filter:drop-shadow(0 0 30px rgba(175, 49, 87,.35))}
.hero--opera .hero__sil svg path{fill:#080507;stroke:rgba(175, 49, 87,.55);stroke-width:.6}

/* ---- Hero audition callout (カスタム位置) ---- */
.hero--opera .hero__audition{margin-top:clamp(20px,3vw,40px);display:flex;flex-direction:column;align-items:center;gap:18px}
.hero--opera .hero__audition-meta{
  display:inline-flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center;
  padding:10px 22px;border:1px solid rgba(246,238,228,.22);
  background:rgba(10,6,8,.6);backdrop-filter:blur(6px);
  font-family:var(--f-m),monospace;font-size:12px;letter-spacing:.2em;color:rgba(246,238,228,.6);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%);
}
.hero--opera .hero__audition-dot{width:8px;height:8px;background:var(--red);border-radius:50%;animation:heroDot 1.4s ease-in-out infinite}
@keyframes heroDot{50%{opacity:.25;transform:scale(.7)}}
.hero--opera .hero__audition-label{font-family:var(--f-h);font-weight:700;font-size:12px;letter-spacing:.35em;color:var(--red);text-transform:uppercase}
.hero--opera .hero__audition-sep{color:rgba(246,238,228,.2)}
.hero--opera .hero__audition-dl b{color:#fff;font-weight:700;font-variant-numeric:tabular-nums}

/* ================================================================
   Curtain Opening (cinematic intro)
   ================================================================ */
.curtain{
  position:fixed;inset:0;z-index:9999;pointer-events:none;
  background:#050305;opacity:1;
  transition:opacity .6s 3.6s ease;
}
.curtain.is-done{opacity:0}
/* SessionStorage スキップ時は最初から非表示 */
.curtain.is-skip{display:none}

.curtain__panel{
  position:absolute;left:0;right:0;height:51%;
  background-image:
    repeating-linear-gradient(90deg,rgba(0,0,0,.25) 0 12px,transparent 12px 36px),
    linear-gradient(180deg,#4a0717 0%,#9b0f33 45%,#4a0717 100%);
  box-shadow:inset 0 0 80px rgba(0,0,0,.5);
  transition:transform 2.2s 1s cubic-bezier(.7,.1,.2,1);
}
.curtain__panel--top{top:0;transform-origin:top}
.curtain__panel--btm{bottom:0;transform-origin:bottom}
.curtain.is-go .curtain__panel--top{transform:translateY(-100%)}
.curtain.is-go .curtain__panel--btm{transform:translateY(100%)}

.curtain__cue-light{
  position:absolute;left:50%;top:0;transform:translateX(-50%);
  width:40vw;height:100vh;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,238,200,.35) 0%,rgba(240,192,99,.18) 40%,transparent 80%);
  filter:blur(24px);opacity:0;mix-blend-mode:screen;
  transition:opacity .8s 2.6s ease;
}
.curtain.is-go .curtain__cue-light{opacity:.9}

.curtain__cue-title{
  position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);
  text-align:center;pointer-events:none;
  font-family:"Shippori Mincho",serif;font-weight:800;
  font-size:clamp(22px,4vw,46px);letter-spacing:.6em;color:#F0C063;
  text-shadow:0 0 28px rgba(240,192,99,.5);
  opacity:0;transition:opacity .8s 2.8s ease,letter-spacing 1s 2.8s ease;
}
.curtain.is-go .curtain__cue-title{opacity:1;letter-spacing:.4em}

/* Replay button */
.curtain-replay{
  position:fixed;bottom:20px;right:20px;z-index:60;
  display:inline-flex;align-items:center;gap:8px;padding:10px 16px;
  font-family:var(--f-m),monospace;font-size:11px;letter-spacing:.22em;color:rgba(246,238,228,.6);
  border:1px solid rgba(246,238,228,.22);background:rgba(10,6,8,.7);backdrop-filter:blur(8px);
  cursor:pointer;transition:color .3s,border-color .3s;
  user-select:none;text-transform:uppercase;
}
.curtain-replay:hover{color:#F0C063;border-color:#F0C063}

/* Body scroll lock during opening */
body.curtain-lock{overflow:hidden!important;height:100vh}

/* reduced motion 対応 */
@media(prefers-reduced-motion:reduce){
  .curtain,.curtain__panel,.curtain__cue-light,.curtain__cue-title{transition:none!important;animation:none!important}
  .hero__sparkles span,.hero--opera .hero__spot{animation:none!important;opacity:.4}
}

/* ==========================================================================
   /audition/ ページ A + D 装飾レイヤー
   （元の文章・レイアウトには一切触れず、演出のみ追加）
   ========================================================================== */

/* ---- A: Cinematic Hero Enhancement ---- */
.ad-hero{position:relative}

/* REPLAY ボタン（右上） */
.ad-replay{
  position:absolute;top:24px;right:24px;z-index:10;
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 14px;font-family:"JetBrains Mono",monospace;font-size:11px;
  letter-spacing:.22em;color:rgba(255,255,255,.65);
  border:1px solid rgba(255,255,255,.25);
  background:rgba(10,6,8,.5);backdrop-filter:blur(8px);
  cursor:pointer;transition:color .3s,border-color .3s,background .3s;
  user-select:none;
}
.ad-replay:hover{color:#fff;border-color:rgba(240,192,99,.7);background:rgba(240,192,99,.08)}

/* 追加スポットライト（ヒーロー全体に3本の光線をふわっと重ねる） */
.ad-hero__extra-lights{
  position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden;
  mix-blend-mode:screen;opacity:0;
  transition:opacity 1.2s ease;
}
.ad-hero.ad-playing .ad-hero__extra-lights{opacity:1}
.ad-hero__extra-lights span{
  position:absolute;top:-10%;width:36vw;height:140vh;
  transform-origin:top center;filter:blur(24px);
}
.ad-hero__extra-lights span:nth-child(1){
  left:6%;transform:rotate(-9deg);
  background:linear-gradient(180deg,rgba(255,238,200,.2) 0%,rgba(240,192,99,.1) 40%,transparent 80%);
  opacity:0;animation:adLight 1.6s .3s ease forwards;
}
.ad-hero__extra-lights span:nth-child(2){
  left:48%;transform:translateX(-50%) rotate(0deg);
  background:linear-gradient(180deg,rgba(255,225,180,.22) 0%,rgba(175, 49, 87,.12) 40%,transparent 80%);
  opacity:0;animation:adLight 1.6s .6s ease forwards;
}
.ad-hero__extra-lights span:nth-child(3){
  right:6%;transform:rotate(11deg);
  background:linear-gradient(180deg,rgba(255,210,160,.18) 0%,rgba(199,21,133,.1) 40%,transparent 80%);
  opacity:0;animation:adLight 1.6s .9s ease forwards;
}
.ad-hero.ad-playing .ad-hero__extra-lights span{animation:adLight 1.6s ease forwards}
.ad-hero.ad-playing .ad-hero__extra-lights span:nth-child(1){animation-delay:.3s}
.ad-hero.ad-playing .ad-hero__extra-lights span:nth-child(2){animation-delay:.6s}
.ad-hero.ad-playing .ad-hero__extra-lights span:nth-child(3){animation-delay:.9s}
@keyframes adLight{
  0%{opacity:0;filter:blur(36px)}
  50%{opacity:.85;filter:blur(22px)}
  100%{opacity:.55;filter:blur(24px)}
}

/* ヒーロー本体のリビール演出（全体） */
.ad-hero.ad-playing > *:not(.ad-hero__extra-lights):not(.ad-replay){
  opacity:0;animation:adReveal 1s 1.2s cubic-bezier(.2,.7,.2,1) forwards;
}
@keyframes adReveal{to{opacity:1}}

/* ---- D: 3-Act Scroll Narrative (色温度の段階的シフト) ---- */

/* 全画面オーバーレイ（JSで body に append） */
.ad-overlay{
  position:fixed;inset:0;pointer-events:none;z-index:0;
  opacity:0;transition:opacity 1.4s ease,background 1.4s ease;
}

/* Act 1: 初期（金色の明るいステージ）— 変化なし */
body.ad-act-1 .ad-overlay{opacity:0}

/* Act 2: 緊張（暗転・紫がかる） */
body.ad-act-2 .ad-overlay{
  opacity:1;
  background:
    radial-gradient(ellipse 80% 80% at 50% 50%,transparent 40%,rgba(60,20,50,.45) 100%),
    linear-gradient(180deg,rgba(30,10,40,.12),rgba(30,10,40,.08));
}

/* Act 3: 発火（一点の赤いスポット） */
body.ad-act-3 .ad-overlay{
  opacity:1;
  background:
    radial-gradient(ellipse 35% 55% at 50% 5%,rgba(175, 49, 87,.28),transparent 55%),
    radial-gradient(ellipse 80% 80% at 50% 50%,transparent 50%,rgba(40,8,18,.55) 100%);
}

/* Act 切替時に apply ボタンだけを強調（赤のパルス） */
body.ad-act-3 section#apply a[href*="apply"],
body.ad-act-3 section#apply button[type="submit"],
body.ad-act-3 section#apply a.apply-btn,
body.ad-act-3 section#apply a:not([href="#"]){
  box-shadow:0 0 0 0 rgba(175, 49, 87,.5);
  animation:adApplyPulse 2.4s ease-in-out infinite;
}
@keyframes adApplyPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(175, 49, 87,.35)}
  50%{box-shadow:0 0 0 14px rgba(175, 49, 87,0)}
}

/* reduced motion 対応 */
@media(prefers-reduced-motion:reduce){
  .ad-hero__extra-lights span,
  .ad-hero.ad-playing > *{animation:none!important;opacity:1!important}
  .ad-overlay{transition:none!important}
}

/* ==========================================================================
   /audition/ 「✦ 待遇・福利厚生 ✦」ブロックをカード化（浮き対策）
   ========================================================================== */
section#requirements .card-glass > div.mt-12.pt-10{
  margin-top:56px!important;
  padding:36px 32px!important;
  border-top:0!important;
  border:1px solid rgba(240,192,99,.28)!important;
  border-radius:14px;
  background:
    linear-gradient(135deg,rgba(240,192,99,.06) 0%,rgba(175, 49, 87,.03) 50%,rgba(240,192,99,.05) 100%),
    rgba(10,6,8,.55);
  box-shadow:
    inset 0 0 0 1px rgba(240,192,99,.08),
    0 12px 40px rgba(0,0,0,.28),
    0 0 50px rgba(240,192,99,.06);
  position:relative;overflow:hidden;
}
/* 上部に流れる金色のshimmer */
section#requirements .card-glass > div.mt-12.pt-10::before{
  content:"";position:absolute;top:0;left:0;right:0;height:1.5px;
  background:linear-gradient(90deg,transparent 0%,rgba(240,192,99,.75) 50%,transparent 100%);
  animation:audGoldShimmer 4s ease-in-out infinite;
}
@keyframes audGoldShimmer{
  0%,100%{opacity:.5;transform:translateX(-30%)}
  50%{opacity:1;transform:translateX(30%)}
}

/* ✦マーク見出しを金色ラメグラデ化 */
section#requirements .highlight-heading{
  position:relative;
  background:linear-gradient(135deg,#F0C063 0%,#FFE4B5 35%,#F0C063 70%,#E5A040 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 0 18px rgba(240,192,99,.35));
  letter-spacing:.25em!important;
}

/* 左右の罫線を上品な金色に */
section#requirements .card-glass > div.mt-12.pt-10 .flex.items-center.gap-4.mb-8 > div[class*="h-[2px]"]{
  background:linear-gradient(to right,transparent 0%,rgba(240,192,99,.55) 100%)!important;
  height:1px!important;
}
section#requirements .card-glass > div.mt-12.pt-10 .flex.items-center.gap-4.mb-8 > div[class*="h-[2px]"]:last-child{
  background:linear-gradient(to left,transparent 0%,rgba(240,192,99,.55) 100%)!important;
}

/* 待遇項目リストをタイル風に */
section#requirements .card-glass > div.mt-12.pt-10 ul.grid{
  padding-left:0!important;gap:12px!important;
}
section#requirements .card-glass > div.mt-12.pt-10 ul.grid li.benefit-item{
  padding:14px 18px;
  background:rgba(10,6,8,.5);
  border:1px solid rgba(240,192,99,.12);
  border-radius:8px;
  transition:border-color .3s ease,transform .3s ease,background .3s ease;
  align-items:center!important;
}
section#requirements .card-glass > div.mt-12.pt-10 ul.grid li.benefit-item:hover{
  border-color:rgba(240,192,99,.5);
  background:rgba(240,192,99,.04);
  transform:translateX(4px);
}
/* 赤ドットを金色四角アクセントへ */
section#requirements .card-glass > div.mt-12.pt-10 ul.grid li.benefit-item > div[class*="bg-accent-red"]{
  background:linear-gradient(135deg,#F0C063,#E5A040)!important;
  width:8px!important;height:8px!important;
  transform:rotate(45deg);margin-top:2px!important;
  box-shadow:0 0 8px rgba(240,192,99,.6);
}
/* 各項目先頭の重複 ✦ を消す */
section#requirements .card-glass > div.mt-12.pt-10 ul.grid li.benefit-item > span.benefit-item{
  color:rgba(255,245,225,.92)!important;
  font-weight:500;
}

@media(max-width:640px){
  section#requirements .card-glass > div.mt-12.pt-10{padding:24px 18px!important}
  section#requirements .card-glass > div.mt-12.pt-10 ul.grid li.benefit-item{padding:12px 14px}
}

@media(prefers-reduced-motion:reduce){
  section#requirements .card-glass > div.mt-12.pt-10::before{animation:none!important}
}

/* ==========================================================================
   /audition/ PAGE — 旧名称 (A + B + C + E)
   ========================================================================== */
.pa{position:relative;padding-bottom:120px}

/* ---- HERO (A + B) ---- */
.pa-hero{
  min-height:100vh;min-height:100dvh;
  display:grid;place-items:center;
  position:relative;overflow:hidden;
  padding:140px var(--pad) 100px;
}
.pa-hero__inner{
  position:relative;z-index:2;max-width:var(--w);width:100%;
  display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(24px,3vw,42px);
}
.pa-hero__slate{
  display:inline-flex;align-items:center;gap:14px;
  font-family:var(--f-m);font-size:11px;letter-spacing:.32em;
  color:var(--muted);text-transform:uppercase;
  padding:8px 16px;border:1px solid var(--line-strong);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%);
}
.pa-hero__slate .dot{width:8px;height:8px;background:var(--red);border-radius:50%;animation:audDot 1.4s ease-in-out infinite}
.pa-hero__slate b{color:var(--red);font-weight:700}

.pa-hero__emblem{
  font-family:var(--f-h);font-weight:900;line-height:.9;letter-spacing:.01em;
  color:#fff;text-shadow:0 0 40px rgba(175, 49, 87,.35);
  user-select:none;position:relative;
}
.pa-hero__emblem .pj{display:block;font-size:clamp(14px,1.6vw,18px);font-weight:600;letter-spacing:.5em;color:var(--red);margin-bottom:10px;text-transform:uppercase}
.pa-hero__emblem .ti{display:block;font-size:clamp(64px,10vw,140px);text-transform:uppercase;line-height:.85}
.pa-hero__emblem .ti i{font-style:normal;color:var(--red);text-shadow:0 0 32px rgba(175, 49, 87,.6)}
.pa-hero__emblem .ti .glx{display:inline-block;animation:audGlitch 4s steps(1) infinite}
.pa-hero__emblem .sub{display:block;font-family:var(--f-m);font-size:clamp(11px,1.2vw,14px);letter-spacing:.5em;color:var(--muted);margin-top:14px;text-transform:uppercase}

.pa-hero__copy{
  font-family:var(--f-d);font-weight:900;line-height:1.35;letter-spacing:.05em;
  font-size:clamp(32px,5vw,64px);color:#fff;
  margin:0;max-width:26ch;word-break:keep-all;
}
.pa-hero__copy em{font-style:normal;color:var(--red);position:relative}
.pa-hero__copy em::after{
  content:"";position:absolute;left:-2px;right:-2px;bottom:.08em;height:.18em;
  background:var(--grad);opacity:.25;z-index:-1;
}

.pa-hero__sub{
  font-size:clamp(15px,1.6vw,18px);line-height:2;letter-spacing:.08em;
  color:rgba(255,255,255,.82);max-width:42ch;
}
.pa-hero__sub b{color:var(--red);font-weight:700}

/* Hero countdown */
.pa-hero__count{display:flex;flex-direction:column;gap:14px;align-items:center;margin-top:12px}
.pa-hero__count-l{
  font-family:var(--f-h);font-weight:700;font-size:12px;letter-spacing:.45em;
  color:var(--muted);text-transform:uppercase;
  display:inline-flex;align-items:center;gap:12px;
}
.pa-hero__count-l::before,.pa-hero__count-l::after{
  content:"";width:24px;height:1px;background:linear-gradient(to right,transparent,var(--red));
}
.pa-hero__count-l::after{background:linear-gradient(to left,transparent,var(--red))}
.pa-hero__count-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.pa-cell{
  position:relative;border:1px solid var(--line-strong);
  background:linear-gradient(180deg,rgba(7,7,8,.8),rgba(7,7,8,.4));
  padding:22px 14px 16px;text-align:center;min-width:92px;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);
  overflow:hidden;
}
.pa-cell::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(175, 49, 87,.06) 100%);pointer-events:none}
.pa-cell .v{display:block;font-family:var(--f-h);font-weight:900;font-size:clamp(40px,5vw,60px);line-height:1;color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 0 20px rgba(175, 49, 87,.3)}
.pa-cell .u{display:block;font-family:var(--f-m);font-size:10px;letter-spacing:.32em;color:var(--muted);margin-top:10px;text-transform:uppercase}

.pa-hero__cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:24px;margin-top:8px}
.pa-hero__dl{font-family:var(--f-m);font-size:13px;letter-spacing:.18em;color:var(--muted)}
.pa-hero__dl b{color:var(--red);font-weight:700}

/* ---- Section common ---- */
.pa-sec{position:relative;padding:clamp(96px,12vw,160px) var(--pad)}
.pa-sec__inner{max-width:var(--w);margin:0 auto;position:relative;z-index:2}

/* ---- Activities ---- */
.pa-acts{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:760px){.pa-acts{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.pa-acts{grid-template-columns:repeat(4,1fr)}}
.pa-act{
  border:1px solid var(--line);padding:28px 24px;
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0));
  position:relative;overflow:hidden;
  transition:border-color .4s ease,transform .4s ease;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%);
}
.pa-act::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.7,.1,.2,1)}
@media(hover:hover){
  .pa-act:hover{transform:translateY(-4px);border-color:var(--line-strong)}
  .pa-act:hover::before{transform:scaleX(1)}
}
.pa-act__ix{font-family:var(--f-h);font-weight:800;font-size:12px;letter-spacing:.3em;color:var(--red);text-transform:uppercase}
.pa-act__t{font-family:var(--f-d);font-size:18px;font-weight:900;letter-spacing:.04em;color:#fff;margin:10px 0 8px}
.pa-act__d{font-size:13.5px;line-height:1.85;color:var(--muted)}

/* ---- Requirements: Mutual Pact (C) ---- */
.vc{
  position:relative;
  border:1px solid var(--line-strong);
  background:linear-gradient(180deg,rgba(7,7,8,.7),rgba(7,7,8,.4));
  padding:clamp(36px,5vw,64px);
  overflow:hidden;
  clip-path:polygon(0 18px,18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);
}
.vc::before{
  content:"CONTRACT";position:absolute;top:18px;right:24px;
  font-family:var(--f-m);font-size:11px;letter-spacing:.4em;color:var(--muted);
}
.vc__head{
  display:flex;align-items:flex-end;justify-content:space-between;
  border-bottom:1px solid var(--line-strong);padding-bottom:18px;margin-bottom:36px;flex-wrap:wrap;gap:16px;
}
.vc__title{font-family:var(--f-d);font-size:clamp(20px,2.4vw,26px);font-weight:900;letter-spacing:.06em;color:#fff}
.vc__title em{font-style:normal;color:var(--red)}
.vc__sub{font-family:var(--f-m);font-size:11px;letter-spacing:.3em;color:var(--muted);text-transform:uppercase;margin-top:4px}
.vc__no{font-family:var(--f-m);font-size:12px;letter-spacing:.18em;color:var(--muted)}
.vc__no b{color:var(--red);font-weight:700}

.vc__pact{
  display:grid;grid-template-columns:1fr;gap:0;
  position:relative;
  border:1px solid var(--line-strong);
}
@media(min-width:880px){.vc__pact{grid-template-columns:1fr 1fr}}
.vc__col{padding:32px 28px;position:relative}
.vc__col + .vc__col{border-top:1px solid var(--line-strong)}
@media(min-width:880px){.vc__col + .vc__col{border-top:0;border-left:1px solid var(--line-strong)}}
.vc__pact::after{
  content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:54px;height:54px;border-radius:50%;
  background:var(--bg);border:1px solid var(--red);
  display:none;align-items:center;justify-content:center;z-index:2;
  box-shadow:0 0 0 6px var(--bg),0 0 32px rgba(175, 49, 87,.45);
}
@media(min-width:880px){.vc__pact::after{display:flex}}
.vc__exchange{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  z-index:3;font-family:var(--f-h);font-weight:900;font-size:22px;color:var(--red);
  display:none;
}
@media(min-width:880px){.vc__exchange{display:block}}

.vc__col-h{margin-bottom:14px}
.vc__col-h .role{
  font-family:var(--f-h);font-size:11px;font-weight:700;letter-spacing:.4em;color:var(--red);
  text-transform:uppercase;display:inline-flex;align-items:center;gap:8px;
}
.vc__col-h .role::before{content:"";width:18px;height:1px;background:var(--red)}
.vc__col h3{font-family:var(--f-d);font-size:18px;font-weight:900;letter-spacing:.06em;color:#fff;margin-bottom:18px}

.vc__check{display:flex;flex-direction:column;gap:12px}
.vc__row{
  display:grid;grid-template-columns:22px 1fr;gap:14px;align-items:start;
  padding:10px 0;border-bottom:1px dashed var(--line);
}
.vc__row:last-child{border-bottom:0}
.vc__chk{width:18px;height:18px;border:1px solid var(--red);position:relative;flex-shrink:0;margin-top:2px}
.vc__chk::after{content:"";position:absolute;left:3px;top:-1px;width:6px;height:12px;border-right:2px solid var(--red);border-bottom:2px solid var(--red);transform:rotate(40deg)}
.vc__row b{display:block;color:#fff;font-weight:700;font-size:13px;letter-spacing:.04em;margin-bottom:2px}
.vc__row span{font-size:13px;color:var(--muted);line-height:1.7}

.vc__hint{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.vc__hint > span{display:block;font-family:var(--f-h);font-size:11px;font-weight:700;letter-spacing:.35em;color:var(--muted);text-transform:uppercase;margin-bottom:8px}
.vc__hint ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}
.vc__hint li{position:relative;padding-left:14px;font-size:12.5px;color:rgba(255,255,255,.65);line-height:1.8}
.vc__hint li::before{content:"+";position:absolute;left:0;color:var(--red)}

.vc__sign{display:grid;grid-template-columns:1fr;gap:24px;margin-top:32px;padding-top:28px;border-top:1px solid var(--line-strong)}
@media(min-width:760px){.vc__sign{grid-template-columns:1fr 1fr;gap:36px}}
.vc__sig{display:flex;flex-direction:column;gap:6px}
.vc__sig-l{font-family:var(--f-h);font-size:10px;letter-spacing:.4em;color:var(--muted);text-transform:uppercase}
.vc__sig-line{height:1px;background:linear-gradient(to right,var(--line-strong) 0%,var(--line-strong) 80%,transparent);position:relative;margin-top:32px}
.vc__sig-line::after{content:"X";position:absolute;left:0;top:-22px;font-family:var(--f-m);font-size:14px;color:var(--red)}
.vc__sig-name{font-family:var(--f-m);font-size:11px;color:var(--muted);letter-spacing:.16em}

/* ---- Schedule overview pills ---- */
.pa-schedule-overview{
  display:flex;flex-wrap:wrap;gap:14px;margin-bottom:48px;
}
.pa-sched-pill{
  display:inline-flex;align-items:center;gap:14px;
  padding:14px 22px;border:1px solid var(--line-strong);
  font-family:var(--f-m);font-size:12px;letter-spacing:.18em;color:var(--muted);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%);
}
.pa-sched-pill__l{font-family:var(--f-h);font-weight:700;font-size:11px;letter-spacing:.3em;text-transform:uppercase}
.pa-sched-pill--active{border-color:var(--red);color:#fff;background:linear-gradient(90deg,rgba(175, 49, 87,.18),transparent 60%)}
.pa-sched-pill--active .pa-sched-pill__l{color:var(--red)}

/* ---- Flow steps (縦ジグザグ、次フェーズでDで横タイムライン化予定) ---- */
.pa-steps{display:flex;flex-direction:column;gap:16px;position:relative}
.pa-steps::before{
  content:"";position:absolute;left:32px;top:40px;bottom:40px;width:1px;
  background:linear-gradient(to bottom,var(--red) 0%,var(--red) 50%,var(--line-strong) 50%,var(--line-strong) 100%);
}
.pa-step{
  display:grid;grid-template-columns:72px 1fr;gap:20px;align-items:start;
  padding:20px 24px;border:1px solid var(--line);
  background:rgba(7,7,8,.5);position:relative;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);
  transition:border-color .3s ease;
}
.pa-step:hover{border-color:var(--line-strong)}
.pa-step__n{
  width:64px;height:64px;display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--f-h);font-weight:900;font-size:24px;color:#fff;
  background:var(--bg);border:1.5px solid var(--red);border-radius:50%;
  box-shadow:0 0 0 4px var(--bg),0 0 20px rgba(175, 49, 87,.3);
  position:relative;z-index:2;
}
.pa-step--goal .pa-step__n{font-size:13px;letter-spacing:.15em;background:var(--red);color:#fff}
.pa-step__k{font-family:var(--f-h);font-size:11px;font-weight:700;letter-spacing:.35em;color:var(--red);text-transform:uppercase;margin-bottom:4px}
.pa-step__t{font-family:var(--f-d);font-size:18px;font-weight:900;letter-spacing:.04em;color:#fff;margin-bottom:8px}
.pa-step__d{font-size:14px;line-height:1.85;color:var(--muted)}

/* ---- FAQ (次フェーズで刷新予定) ---- */
.pa-faq{display:flex;flex-direction:column;gap:10px}
.pa-qa{border:1px solid var(--line);background:rgba(7,7,8,.5);transition:border-color .3s ease}
.pa-qa[open]{border-color:var(--red)}
.pa-qa summary{
  display:grid;grid-template-columns:60px 1fr 32px;gap:16px;align-items:center;
  padding:18px 22px;cursor:pointer;list-style:none;
  font-family:var(--f-d);color:#fff;
}
.pa-qa summary::-webkit-details-marker{display:none}
.pa-qa__q{font-family:var(--f-h);font-weight:800;font-size:15px;letter-spacing:.18em;color:var(--red)}
.pa-qa__t{font-size:15px;font-weight:700;line-height:1.6}
.pa-qa__plus{font-family:var(--f-h);font-weight:700;font-size:22px;color:var(--muted);transition:transform .3s ease}
.pa-qa[open] .pa-qa__plus{transform:rotate(45deg);color:var(--red)}
.pa-qa__a{padding:0 22px 20px 98px;font-size:14px;line-height:2;color:rgba(255,255,255,.78)}

/* ---- Apply section ---- */
.pa-sec--apply{padding-top:60px;padding-bottom:160px}
.pa-apply{
  text-align:center;padding:clamp(48px,6vw,96px) var(--pad);
  border:1px solid var(--line-strong);
  background:
    radial-gradient(ellipse 60% 80% at 50% 20%,rgba(175, 49, 87,.2),transparent 60%),
    linear-gradient(180deg,rgba(7,7,8,.6),rgba(7,7,8,.9));
  clip-path:polygon(0 22px,22px 0,100% 0,100% calc(100% - 22px),calc(100% - 22px) 100%,0 100%);
  position:relative;overflow:hidden;
}
.pa-apply__eyebrow{font-family:var(--f-h);font-size:14px;font-weight:700;letter-spacing:.5em;color:var(--red);text-transform:uppercase;margin-bottom:18px}
.pa-apply__h{font-family:var(--f-d);font-size:clamp(28px,4.4vw,52px);font-weight:900;line-height:1.4;letter-spacing:.05em;color:#fff;margin-bottom:22px}
.pa-apply__h em{font-style:normal;color:var(--red)}
.pa-apply__d{font-size:14.5px;line-height:2;color:var(--muted);margin-bottom:36px}
.pa-apply__d b{color:#fff;font-weight:700}
.pa-apply__btn{font-size:16px;padding:22px 40px}
.pa-apply__note{font-family:var(--f-m);font-size:11px;letter-spacing:.18em;color:rgba(255,255,255,.35);margin-top:16px}

/* ---- FLOATING CTA BAR (E) ---- */
.pa-fab{
  position:fixed;left:0;right:0;bottom:0;z-index:80;
  transform:translateY(110%);transition:transform .4s cubic-bezier(.7,.1,.2,1);
  pointer-events:none;
}
.pa-fab.is-visible{transform:translateY(0);pointer-events:auto}
.pa-fab__inner{
  max-width:var(--w);margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:14px clamp(16px,3vw,28px);
  background:rgba(7,7,8,.95);backdrop-filter:blur(14px) saturate(140%);
  border:1px solid var(--line-strong);border-bottom:0;
  margin:0 clamp(8px,2vw,20px);
  clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%);
}
.pa-fab__l{display:flex;flex-direction:column;gap:2px;min-width:0}
.pa-fab__title{font-family:var(--f-h);font-weight:800;font-size:13px;letter-spacing:.3em;color:var(--red);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pa-fab__dl{font-size:12.5px;color:rgba(255,255,255,.75);letter-spacing:.04em;font-family:var(--f-m);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pa-fab__dl b{color:#fff;font-weight:700;font-variant-numeric:tabular-nums}
.pa-fab__btn{padding:14px 22px;font-size:13px;flex-shrink:0}

@media(max-width:560px){
  .pa-fab__inner{gap:10px;padding:10px 14px}
  .pa-fab__title{font-size:10px;letter-spacing:.2em}
  .pa-fab__dl{font-size:11px}
  .pa-fab__btn{padding:10px 14px;font-size:11px}
  .pa-hero__count-grid{gap:8px}
  .pa-cell{padding:14px 6px 10px;min-width:0}
}

/* ==========================================================================
   /audition/ ページ — 赤×黄の光演出を全停止（2026-05-03 ユーザー依頼）
   body.apr-audition は functions.php の body_class フィルターで is_page('audition')
   時のみ付与。TOP（front-page）の Opera Logo Hero には影響しない。
   ========================================================================== */
body.apr-audition .hero--opera.hero-godrays::after,
body.apr-audition .hero--opera.hero-glow::before{
  content:none!important;display:none!important;background:none!important;animation:none!important;
}
body.apr-audition .hero__sparkles,
body.apr-audition .hero--opera .hero__stage,
body.apr-audition .ad-hero__extra-lights{
  display:none!important;
}
body.apr-audition .ad-overlay{
  display:none!important;background:none!important;opacity:0!important;
}
body.apr-audition .hero__opera{text-shadow:none!important}
body.apr-audition .hero__catch{text-shadow:none!important}
body.apr-audition .hero__catch em{text-shadow:none!important}
body.apr-audition .pa-hero{background:linear-gradient(180deg,rgba(7,7,8,.6),rgba(7,7,8,.9))!important}

/* /audition/ — 実本番ヒーロー（親テーマ Tailwind 系）の赤×黄ライトを停止 (2026-05-03) */
body.apr-audition .ambient-glow,
body.apr-audition .ambient-glow.bg-accent-crimson,
body.apr-audition .ambient-glow.bg-accent-gold,
body.apr-audition .bokeh,
body.apr-audition .bokeh-1,
body.apr-audition .bokeh-2,
body.apr-audition .bokeh-3,
body.apr-audition .bokeh-4{
  display:none!important;background:none!important;filter:none!important;opacity:0!important;
}

/* ==========================================================================
   /audition/ UX/Design 改善バッチ (2026-05-03 ユーザー依頼17項目対応)
   Items 5,7,8,9,10,11 + Item 14 (TOC) + Item 15 (Sticky CTA) + Item 16 (date pill)
   ========================================================================== */

/* Item 5: ヘッダーボタン(ハンバーガー) コントラスト改善 (45%→78%) */
body.apr-audition #mobile-menu-btn{
  color:rgba(255,247,237,.78)!important;
}
body.apr-audition #mobile-menu-btn:hover{
  color:#F0C063!important;
}

/* Item 7: ヒーロー右の「応募期間」サイドバーラベルの可視性 (25%→65%) */
body.apr-audition .text-orange-50\/25{
  color:rgba(255,247,237,.65)!important;
}

/* Item 8: カウントダウン「秒」を金色から赤に統一 */
body.apr-audition #timer-seconds{
  color:#9B0F33!important;
}

/* Item 9: 待遇・福利厚生 H3 を他セクションの H3 トーンに統一（過度な装飾を抑える）*/
body.apr-audition h3.highlight-heading{
  font-size:clamp(18px,2vw,24px)!important;
  font-weight:700!important;
  letter-spacing:.06em!important;
  color:#fff!important;
 -webkit-text-fill-color:#fff;}

/* Item 10: ヒーロー応募 CTA + サイドカードを縦積みに変更 */
body.apr-audition section.hero-godrays div.flex.flex-col.sm\:flex-row{
  flex-direction:column!important;
  align-items:center!important;
  gap:14px!important;
}

/* Item 11: モバイル ヒーロー文字サイズ調整（テキストオーバーフロー回避）*/
@media(max-width:480px){
  body.apr-audition h1.hero-entrance-d2{
    font-size:clamp(26px,8.5vw,36px)!important;
    line-height:1.4!important;
    letter-spacing:.02em!important;
  }
}

/* === Item 14: Table of Contents (ヒーロー直下のページ目次) === */
body.apr-audition .apr-toc{
  position:relative;z-index:5;
  padding:14px 20px;
  background:rgba(7,7,8,.7);
  border-top:1px solid rgba(175, 49, 87,.3);
  border-bottom:1px solid rgba(175, 49, 87,.3);
  backdrop-filter:blur(8px);
}
body.apr-audition .apr-toc__list{
  display:flex;gap:8px;flex-wrap:wrap;justify-content:center;
  max-width:1200px;margin:0 auto;padding:0;list-style:none;
}
body.apr-audition .apr-toc__list li{list-style:none;margin:0;padding:0}
body.apr-audition .apr-toc__list a{
  display:inline-block;padding:6px 14px;
  font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.18em;
  color:rgba(255,247,237,.7);
  border:1px solid rgba(255,247,237,.18);border-radius:999px;
  text-decoration:none;transition:all .2s ease;
}
body.apr-audition .apr-toc__list a:hover{
  color:#fff;border-color:rgba(175, 49, 87,.7);background:rgba(175, 49, 87,.1);
}
body.apr-audition .apr-toc__list a.apr-toc__cta{
  color:#fff;
  background:linear-gradient(135deg,#AF3157 0%,#C71585 60%,#7A1B6B 100%);
  border-color:transparent;
  font-weight:700;
}
@media(max-width:480px){
  body.apr-audition .apr-toc__list a{font-size:11px;padding:5px 10px;letter-spacing:.12em}
}

/* === Item 15: Floating Sticky CTA (応募ボタン常時表示) === */
body.apr-audition .apr-fab{
  position:fixed;left:0;right:0;bottom:0;z-index:80;
  transform:translateY(110%);
  transition:transform .3s cubic-bezier(.7,.1,.2,1);
  pointer-events:none;
  background:rgba(7,7,8,.95);
  backdrop-filter:blur(14px);
  border-top:1px solid rgba(175, 49, 87,.5);
  box-shadow:0 -10px 40px rgba(0,0,0,.5);
}
body.apr-audition .apr-fab.is-visible{transform:translateY(0);pointer-events:auto}
body.apr-audition .apr-fab__inner{
  max-width:1240px;display:flex;align-items:center;justify-content:space-between;
  gap:14px;padding:12px 20px;margin:0 auto;
}
body.apr-audition .apr-fab__l{display:flex;flex-direction:column;min-width:0}
body.apr-audition .apr-fab__label{
  font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.2em;
  color:#AF3157;text-transform:uppercase;
}
body.apr-audition .apr-fab__count{
  font-family:'JetBrains Mono',monospace;font-size:14px;font-weight:700;color:#fff;
  font-variant-numeric:tabular-nums;
}
body.apr-audition .apr-fab__btn{
  flex-shrink:0;padding:12px 24px;
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:.18em;
  color:#fff;
  background:linear-gradient(135deg,#AF3157 0%,#C71585 60%,#7A1B6B 100%);
  border:none;border-radius:4px;text-decoration:none;text-transform:uppercase;
  transition:transform .2s ease;
}
body.apr-audition .apr-fab__btn:hover{transform:scale(1.03)}
@media(max-width:480px){
  body.apr-audition .apr-fab__inner{padding:10px 12px;gap:8px}
  body.apr-audition .apr-fab__label{font-size:9px;letter-spacing:.1em}
  body.apr-audition .apr-fab__count{font-size:12px}
  body.apr-audition .apr-fab__btn{padding:10px 16px;font-size:12px;letter-spacing:.1em}
}

/* === Item 16: スケジュール各 STEP の日付ピル === */
body.apr-audition .apr-step-date{
  display:inline-block;margin-left:12px;
  padding:3px 10px;
  font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:600;letter-spacing:.08em;
  color:#F0C063;
  background:rgba(240,192,99,.1);
  border:1px solid rgba(240,192,99,.4);
  border-radius:999px;
  vertical-align:middle;
  font-variant-numeric:tabular-nums;
}
@media(max-width:480px){
  body.apr-audition .apr-step-date{display:block;margin:6px 0 0 0;width:fit-content;font-size:10px}
}

/* ==========================================================================
   /audition/ — AI 感の除去：ブランド方向性に再寄せ (2026-05-03)
   AI 生成テンプレに頻出するピンク→マゼンタのグラデーション CTA を排除し、
   ブランド単色赤 (#AF3157) + 角ばり (border-radius:2px) +
   ソリッドシャドウ (offsets) で「尖った事務所」のトーンに統一する。
   ========================================================================== */

/* CTA: グラデーション → 単色赤 + シャープな角 + ソリッド box-shadow */
body.apr-audition .btn-heartbeat,
body.apr-audition .btn-gothic,
body.apr-audition .ripple-magenta,
body.apr-audition .apr-toc__cta,
body.apr-audition .apr-fab__btn{
  background-image:none!important;
  background-color:#AF3157!important;
  border-radius:2px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  letter-spacing:.18em!important;
  text-transform:uppercase;
  box-shadow:3px 3px 0 #9B0F33!important;
  transition:transform .15s ease, box-shadow .15s ease, background-color .15s ease!important;
  animation:none!important; /* heartbeat / pulse 等の AI 営業感アニメを停止 */
}
body.apr-audition .btn-heartbeat:hover,
body.apr-audition .btn-gothic:hover,
body.apr-audition .ripple-magenta:hover,
body.apr-audition .apr-toc__cta:hover,
body.apr-audition .apr-fab__btn:hover{
  background-color:#d3133e!important;
  transform:translate(-1px,-1px);
  box-shadow:5px 5px 0 #9B0F33!important;
}
body.apr-audition .btn-heartbeat:active,
body.apr-audition .btn-gothic:active,
body.apr-audition .ripple-magenta:active,
body.apr-audition .apr-toc__cta:active,
body.apr-audition .apr-fab__btn:active{
  transform:translate(2px,2px);
  box-shadow:1px 1px 0 #9B0F33!important;
}

/* ripple アニメ用の擬似要素を停止 */
body.apr-audition .ripple-magenta::before,
body.apr-audition .ripple-magenta::after{
  display:none!important;
  animation:none!important;
}

/* TOC ピル全般 — 丸みを抑える */
body.apr-audition .apr-toc__list a{
  border-radius:2px!important;
}

/* スケジュール日付ピル — 丸みを抑える */
body.apr-audition .apr-step-date{
  border-radius:2px!important;
}

/* 過剰なグラスモーフィズム（backdrop-filter）を抑える */
body.apr-audition .card-glass-light{
  backdrop-filter:blur(2px)!important;
  background-color:rgba(255,255,255,.04)!important;
  border:1px solid rgba(175, 49, 87,.12)!important;
  border-radius:2px!important;
}

/* CTA 周辺の halo 効果を控えめに */
body.apr-audition .cta-halo{
  backdrop-filter:none!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* FAQ カード等の過度な丸みを抑える */
body.apr-audition .faq-item{
  border-radius:2px!important;
}

/* 全 button/a の rounded-full を 2px に（AI ピル型タグの抑制）*/
body.apr-audition a[class*="rounded-full"],
body.apr-audition button[class*="rounded-full"],
body.apr-audition span[class*="rounded-full"]{
  border-radius:2px!important;
}

/* ==========================================================================
   /audition/ AI 2nd 一括バッチ — A,C,D,E,F,G,I (2026-05-03)
   --------------------------------------------------------------------------
   A: 巨大薄文字「About/Activities/Audition/Flow/Q&A/Entry」削除
   C: ヒーローバッジの傾き解除 + 角ばらせ
   D: Outfit → Barlow Condensed (ブランド) に統一
   E: backdrop-blur をデフォルト OFF（header/FAB/TOC のみ ON 維持）
   F: 進入アニメ (.hero-entrance-*, .reveal-target) を無効化
   G: FAQ デコ用アイコンを非表示
   I: ソフトシャドウ削減 (Tailwind shadow-* 一括無効)
   ========================================================================== */

/* === A. 巨大薄文字背景（About / Activities / Audition / Flow / Q&A / Entry）削除 === */
body.apr-audition p.font-display.font-black.text-6xl,
body.apr-audition p.font-display.font-black[class*="text-8xl"]{
  display:none!important;
}

/* === C. ヒーローバッジ「旧名称 ー...」の傾き解除 + 角ばらせ === */
body.apr-audition .hero-entrance-d1{
  transform:none!important;
  border-radius:2px!important;
  letter-spacing:.18em!important;
}

/* === D. Outfit (font-display) → Barlow Condensed (ブランド) === */
body.apr-audition .font-display,
body.apr-audition .font-display *{
  font-family:'Barlow Condensed','Shippori Mincho',sans-serif!important;
}

/* === E. backdrop-blur デフォルトOFF (header / FAB / TOC のみ ON 維持) === */
body.apr-audition [class*="backdrop-blur"]:not(header):not(#apr-fab):not(.apr-toc),
body.apr-audition .card-glass-light{
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* === F. 進入アニメ (.hero-entrance-*, .reveal-target) を無効化 === */
body.apr-audition [class*="hero-entrance"],
body.apr-audition .reveal-target{
  animation:none!important;
  opacity:1!important;
  transform:none!important;
  transition-duration:0.1s!important;
}

/* === G. FAQ Q. デコ用アイコン非表示（テキスト「Q.」「A.」だけ残す）=== */
body.apr-audition .faq-icon-wrapper{
  display:none!important;
}

/* === I. ソフトシャドウ削減（Tailwind shadow-* 一括無効）=== */
body.apr-audition [class*="shadow"]:not(.btn-heartbeat):not(.btn-gothic):not(.ripple-magenta):not(.apr-toc__cta):not(.apr-fab__btn){
  box-shadow:none!important;
}
/* CTA のソリッドシャドウは specificity 0,2,1 で勝つ（再宣言で確実に維持）*/
body.apr-audition .btn-heartbeat,
body.apr-audition .btn-gothic,
body.apr-audition .ripple-magenta,
body.apr-audition .apr-toc__cta,
body.apr-audition .apr-fab__btn{
  box-shadow:3px 3px 0 #9B0F33!important;
}
body.apr-audition .btn-heartbeat:hover,
body.apr-audition .btn-gothic:hover,
body.apr-audition .ripple-magenta:hover,
body.apr-audition .apr-toc__cta:hover,
body.apr-audition .apr-fab__btn:hover{
  box-shadow:5px 5px 0 #9B0F33!important;
}

/* ==========================================================================
   /audition/ AI 3rd 修正バッチ — 2026-05-03
   --------------------------------------------------------------------------
   X1: 見出し下の赤グラデーション線 (.sec-title-wrap::after) を削除
   X2: Apply セクション クリーム背景にクリーム文字で読めない問題を修正
   X3: CTA ボタンの「真っ赤」をブランドフィットする深い赤 (#9B0F33) + 金色ボーダーへ
   ========================================================================== */

/* X1: セクション見出し下のグラデーション線を完全削除 */
body.apr-audition .sec-title-wrap::after,
body.apr-audition .sec-title-wrap::before{
  content:none!important;
  display:none!important;
  background:none!important;
}

/* X2: Apply セクション .cta-halo を透明からソリッドダークカードに (金色ボーダー付) */
body.apr-audition .cta-halo{
  backdrop-filter:none!important;
  background:rgba(7,7,8,.92)!important; /* 「、以前は transparent、今回 solid ダーク */
  box-shadow:none!important;
  border:1px solid rgba(240,192,99,.35)!important; /* 金色アクセントボーダー */
  border-radius:2px!important;
}

/* X3: CTA ボタンの色を「ブランドフィットする」深い赤に変更 */
body.apr-audition .btn-heartbeat,
body.apr-audition .btn-gothic,
body.apr-audition .ripple-magenta,
body.apr-audition .apr-toc__cta,
body.apr-audition .apr-fab__btn{
  background-color:#9B0F33!important; /* 赤 #AF3157 → 深赤 #9B0F33 (ブランド主要広告色 deep) */
  border:1px solid rgba(240,192,99,.35)!important; /* 金色細ボーダーでプレミアム感 */
  box-shadow:3px 3px 0 #4A0617!important; /* シャドウもさらに深く */
}
body.apr-audition .btn-heartbeat:hover,
body.apr-audition .btn-gothic:hover,
body.apr-audition .ripple-magenta:hover,
body.apr-audition .apr-toc__cta:hover,
body.apr-audition .apr-fab__btn:hover{
  background-color:#AF3157!important; /* hover で明るめの赤に選詳 */
  border-color:rgba(240,192,99,.7)!important;
  transform:translate(-1px,-1px);
  box-shadow:5px 5px 0 #4A0617!important;
}
body.apr-audition .btn-heartbeat:active,
body.apr-audition .btn-gothic:active,
body.apr-audition .ripple-magenta:active,
body.apr-audition .apr-toc__cta:active,
body.apr-audition .apr-fab__btn:active{
  background-color:#7A0B27!important; /* さらに深い */
  transform:translate(2px,2px);
  box-shadow:1px 1px 0 #4A0617!important;
}

/* TOC の CTA 以外のピルも微調整 */
body.apr-audition .apr-toc__list a:not(.apr-toc__cta):hover{
  border-color:rgba(240,192,99,.5)!important;
  background:rgba(155,15,51,.15)!important;
}


/* X4: TOC（About / 活動内容 / 募集要項 / 選考 / FAQ / 応募する）を非表示
   理由: ヘッダーメニューと重複していたため、ナビゲーションをヘッダーに一本化 */
body.apr-audition #apr-toc,
body.apr-audition .apr-toc{
  display:none!important;
}


/* ============================================================
   X5: AI 感除去 第四陣 — 高優先＋中優先 一括対応
   #1 角丸統一 / #2 card-glass 解除 / #3 STEP 削除 / #5 ✦ 削除
   #6 sparkle 停止 / #10 FAQ Q. + 白カード / #11/#12 クリーム背景除去
   ============================================================ */

/* X5-1: 全カード角丸を 12px → 2px (CTA / pill ナビ / TOC ボタンは除外) */
body.apr-audition [class*="rounded-xl"],
body.apr-audition [class*="rounded-2xl"],
body.apr-audition [class*="rounded-3xl"]{
  border-radius:2px!important;
}
body.apr-audition [class*="rounded-lg"]:not(.btn-gothic):not(.btn-heartbeat):not(.ripple-magenta):not(.apr-toc__cta):not(.apr-fab__btn){
  border-radius:2px!important;
}

/* X5-2: card-glass の半透明白を解除し、ソリッドダーク + 赤縁 */
body.apr-audition .card-glass,
body.apr-audition .card-glass-light{
  background:rgba(7,7,8,.92)!important;
  border:1px solid rgba(175, 49, 87,.18)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  box-shadow:none!important;
}
body.apr-audition .card-glass:hover,
body.apr-audition .card-glass-light:hover{
  border-color:rgba(175, 49, 87,.5)!important;
  background:rgba(7,7,8,.96)!important;
}

/* X5-3: golden-sunlight-wrapper のクリーム / ゴールド演出を停止 */
body.apr-audition .golden-sunlight-wrapper::before,
body.apr-audition .golden-sunlight-wrapper::after{
  content:none!important;
  display:none!important;
  background:none!important;
  background-image:none!important;
  opacity:0!important;
}

/* X5-4: body のクリーム背景 gradient を黒に固定 */
body.apr-audition{
  background-color:#1a1a1a!important;
  background-image:none!important;
}

/* X5-5: .sparkle (16個キラキラ) を停止 */
body.apr-audition .sparkle,
body.apr-audition .sparkle-container,
body.apr-audition .sparkle.red{
  display:none!important;
  animation:none!important;
}

/* X5-6: Schedule の STEP ラベル / 浮遊数字を非表示 (拡張版)
   STEP 04 は別クラス (text-accent-red/80) のため共通の text-sm.font-black.tracking-wider.mb-2 でカバー
   中央の浮遊数字 "4" は text-lg.font-bold.text-white/80 */
body.apr-audition #schedule .text-sm.font-black.tracking-wider.mb-2,
body.apr-audition #schedule .text-lg.font-bold.text-white\/80{
  display:none!important;
}

/* X5-7: FAQ の「Q.」プレフィックスを非表示 */
body.apr-audition .faq-btn span.text-accent-red{
  display:none!important;
}
body.apr-audition .faq-btn span[class*="text-[#2a1b0a]"]{
  color:rgba(245,245,247,.85)!important;
}
body.apr-audition .faq-btn{
  color:rgba(245,245,247,.85)!important;
}

/* X5-8: フッターをダーク化 */
body.apr-audition footer{
  background:#070708!important;
}
body.apr-audition footer h3,
body.apr-audition footer h4,
body.apr-audition footer p,
body.apr-audition footer a,
body.apr-audition footer span,
body.apr-audition footer li,
body.apr-audition footer div{
  color:rgba(245,245,247,.72)!important;
}
body.apr-audition footer a:hover{
  color:#F0C063!important;
}
body.apr-audition footer .border-t,
body.apr-audition footer [class*="border-t"]{
  border-top-color:rgba(245,245,247,.12)!important;
}

/* X5-9: 余分な hover アニメ抑制 */
body.apr-audition [class*="hover:scale-"]:hover,
body.apr-audition [class*="hover:-translate-y"]:hover{
  transform:none!important;
}

/* X5-10: 待遇テキストの可読性 */
body.apr-audition .benefit-item{
  color:rgba(245,245,247,.78)!important;
}


/* ============================================================
   X6: ORAL CIGARETTES 風 — 煙 atmospheric 背景 + 白大胆タイポ
   暗一色から脱却し、奥行き＆視認性を高める
   ============================================================ */

/* X6-1: 煙/霧の atmospheric 背景レイヤー (固定配置・低 z-index) */
body.apr-audition::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    radial-gradient(ellipse 70% 50% at 18% 18%, rgba(150,150,160,.10), transparent 60%),
    radial-gradient(ellipse 60% 45% at 82% 32%, rgba(190,190,200,.07), transparent 65%),
    radial-gradient(ellipse 80% 60% at 50% 78%, rgba(120,120,130,.13), transparent 70%),
    radial-gradient(ellipse 55% 35% at 92% 88%, rgba(170,170,180,.08), transparent 65%);
}
body.apr-audition > *{
  position:relative;
  z-index:1;
}

/* X6-2: H1 (hero catch) を巨大化＋白強調 */
body.apr-audition h1{
  font-size:clamp(2.75rem, 7vw, 5rem)!important;
  color:#ffffff!important;
  letter-spacing:.04em!important;
  font-weight:800!important;
  text-shadow:0 4px 36px rgba(0,0,0,.7)!important;
}

/* X6-3: section 見出し H2 を大胆な白大文字に */
body.apr-audition section h2{
  font-size:clamp(2rem, 4.5vw, 3.5rem)!important;
  color:#ffffff!important;
  letter-spacing:.05em!important;
  font-weight:800!important;
  text-shadow:0 2px 24px rgba(0,0,0,.55)!important;
  margin-bottom:.75em!important;
}

/* X6-4: 本文・カード説明を白系に強化 */
body.apr-audition section p,
body.apr-audition section li{
  color:rgba(255,255,255,.88)!important;
}
body.apr-audition [class*="text-orange-50/7"],
body.apr-audition [class*="text-orange-50/8"],
body.apr-audition [class*="text-orange-50/9"]{
  color:rgba(255,255,255,.88)!important;
}

/* X6-5: H3 サブ見出しも明るく */
body.apr-audition section h3{
  color:#ffffff!important;
  font-weight:700!important;
}

/* X6-6: ヒーロー silhouette 画像を強化 */
body.apr-audition .hero__silhouette-img,
body.apr-audition img[src*="silhouette"],
body.apr-audition img[alt*="silhouette"]{
  opacity:.6!important;
  filter:brightness(1.12) contrast(1.05)!important;
}

/* X6-7: FAQ 質問テキストを大きめ・白へ */
body.apr-audition .faq-btn{
  color:#ffffff!important;
  font-size:1.05rem!important;
}
body.apr-audition .faq-btn span[class*="text-[#2a1b0a]"]{
  color:#ffffff!important;
  font-size:1.05rem!important;
}

/* X6-8: カウントダウン数字を巨大化 */
body.apr-audition #aud-count [class*="text-4xl"],
body.apr-audition #aud-count [class*="text-5xl"],
body.apr-audition #aud-count [class*="text-6xl"],
body.apr-audition .pa-count-num,
body.apr-audition [id*="count"] .text-3xl{
  font-size:clamp(2.5rem, 5vw, 4rem)!important;
  color:#ffffff!important;
}
body.apr-audition #aud-count > div > div:last-child{
  color:rgba(255,255,255,.6)!important;
  letter-spacing:.15em!important;
}

/* X6-9: カード境界をニュートラル白うっすらに */
body.apr-audition .card-glass,
body.apr-audition .card-glass-light{
  border:1px solid rgba(255,255,255,.06)!important;
  background:rgba(7,7,8,.78)!important;
}
body.apr-audition .card-glass:hover,
body.apr-audition .card-glass-light:hover{
  border-color:rgba(175, 49, 87,.4)!important;
  background:rgba(7,7,8,.88)!important;
}

/* X6-10: ラベル類を白寄りに */
body.apr-audition .text-orange-50\/45,
body.apr-audition [class*="text-orange-50/4"],
body.apr-audition [class*="text-orange-50/5"]{
  color:rgba(255,255,255,.7)!important;
}


/* ============================================================
   X7: HP トップ風背景レイヤー (案B フル装填版)
   .bg-dots + .bg-slash + .bg-noise + .bg-vignette を audition にも適用
   既存子テーマ CSS をそのまま流用（再定義しない）
   ============================================================ */

body.apr-audition #apr-bg-stack{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
}
body.apr-audition #apr-bg-stack > div{
  position:absolute;
  inset:0;
}


/* ============================================================
   X8: 募集要項のグラデーション ribbon を HP トップ準拠の短い赤バーに置換
   ============================================================ */

body.apr-audition .bg-gradient-to-r.from-accent-red.via-accent-goldBright.to-accent-red,
body.apr-audition section#requirements .absolute.top-0.left-0.w-full.h-1{
  display:none!important;
}

body.apr-audition section#requirements .card-glass::before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:48px;
  height:2px;
  background:#AF3157;
  z-index:1;
}


/* ============================================================
   X9: Schedule 縦線復活 + ステップ番号サークル KUROAD 風 + 章番号ラベル
   ============================================================ */

body.apr-audition #schedule .hidden.md\:block.absolute.left-1\/2.top-0.bottom-0,
body.apr-audition #schedule [class*="bg-accent-gold/8"][class*="absolute"][class*="bottom-0"]{
  background:rgba(255,255,255,.18)!important;
}

body.apr-audition #schedule .absolute.left-1\/2.-translate-x-1\/2.w-12.h-12{
  display:flex!important;
  background:#070708!important;
  border:2px solid #ffffff!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border-radius:2px!important;
  color:#ffffff!important;
}
body.apr-audition #schedule .absolute.left-1\/2.-translate-x-1\/2.w-12.h-12 *{
  color:#ffffff!important;
  font-family:'JetBrains Mono','Barlow Condensed',monospace!important;
  font-size:14px!important;
}

body.apr-audition .apr-section-label{
  display:flex;
  justify-content:center;
  margin:0 auto 24px;
  font-family:'JetBrains Mono','Barlow Condensed',monospace;
  font-size:13px;
  letter-spacing:.12em;
  position:relative;
  z-index:2;
}
body.apr-audition .apr-section-num,
body.apr-audition .apr-section-name{
  display:inline-block;
  background:#070708;
  color:#ffffff;
  border:2px solid #ffffff;
  padding:6px 14px;
  font-weight:700;
  text-transform:uppercase;
  line-height:1.2;
}
body.apr-audition .apr-section-name{
  border-left:none;
  letter-spacing:.18em;
}



/* ============================================================
   X12: D1 Hero 旧名称 + D6 赤アクセント統一
   ============================================================ */

body.apr-audition .apr-hero-lgcy{
  text-align:center;
  margin:8px 0 28px;
  position:relative;
  z-index:2;
}
body.apr-audition .apr-hero-lgcy__eyebrow{
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(13px, 1.4vw, 20px);
  letter-spacing:.45em;
  color:rgba(255,255,255,.55);
  margin-bottom:6px;
  font-weight:500;
  text-transform:uppercase;
  padding-left:.45em;
}
body.apr-audition .apr-hero-lgcy__main{
  font-family:'Barlow Condensed','Impact','Arial Black',sans-serif;
  font-size:clamp(56px, 11vw, 160px);
  font-weight:900;
  letter-spacing:-.015em;
  line-height:.9;
  color:#ffffff;
  text-shadow:0 8px 48px rgba(0,0,0,.7), 0 2px 6px rgba(0,0,0,.4);
}
body.apr-audition .apr-hero-lgcy__main .r{
  color:#AF3157;
  text-shadow:0 0 24px rgba(175, 49, 87,.5), 0 8px 48px rgba(0,0,0,.7);
}

body.apr-audition{
  --accent-darkred:#9B0F33;
  --accent-red:#AF3157;
}
body.apr-audition .bg-accent-darkred,
body.apr-audition [class*="bg-accent-darkred"]{
  background-color:#9B0F33!important;
}
body.apr-audition .text-accent-darkred,
body.apr-audition [class*="text-accent-darkred"]{
  color:#9B0F33!important;
}
body.apr-audition .border-accent-darkred,
body.apr-audition [class*="border-accent-darkred"]{
  border-color:#9B0F33!important;
}


/* 応募締切カウントダウン（＼ 応募締切まで あと ／）をヒーローから非表示（オーナー指示 2026-05-24） */
body.apr-audition .hero-entrance-d4{display:none!important}


/* キャッチコピー H1「漫画を、語り尽くせ。」を非表示（オーナー指示 2026-05-24。空欄だと親テンプレが旧コピーにフォールバックするため要素ごと非表示）*/
body.apr-audition .hero-entrance-d2{display:none!important}


/* === audition hero background photo (イラスト2 / attachment 63) 2026-05-24 === */
body.apr-audition main > section:first-of-type{
  background-image:
    linear-gradient(180deg, rgba(8,6,10,.72) 0%, rgba(8,6,10,.60) 40%, rgba(8,6,10,.88) 100%),
    url("https://alterproduction.net/wp-content/uploads/2026/05/イラスト2-scaled.png");
  background-size: cover, cover;
  background-position: center, center 22%;
  background-repeat: no-repeat, no-repeat;
}
body.apr-audition .silhouette-breathe{ display:none !important; }


/* ==========================================================================
   X16: /audition/ 明るいアイドルポップ版フル再構築（オーナー指示 2026-05-25）
   親テーマ＋既存子テーマJS が生成する「暗いシネマDOM」を、明るいアイドルポップ構成へ
   差し替える方式。functions.php の X16 ブロックが <main> の中身を .apr-bright-root に
   再構築し、body 直下の暗色注入（#apr-bg-stack / #apr-fab / .ad-overlay）を除去する。
   ここでは配色・レイアウトを body.apr-audition .apr-bright-root スコープで定義し、
   固定ナビ非表示・body 背景の明色化を行う。暗色テーマ（X1–X15）は !important 多用の
   テキスト白文字・見出し巨大化があるため、後半「強制上書き」で打ち消す。
   この X16 ブロックと functions.php の X16 add_action を削除すれば暗色版に戻る（reversible）。
   ========================================================================== */
body.apr-audition{background:#fff6fb!important}
body.apr-audition > nav.fixed{display:none!important}
body.apr-audition .apr-bright-root{--bg:#fff6fb;--white:#ffffff;--alt:#fbedf4;--ink:#4a4452;--head:#241d2e;--muted:#8a8395;--body:#5c5667;--pink:#E5277E;--pinkd:#C2185B;--pink-bg:#ffe2ee;--pink-bd:#f3bcd4;--pur:#7E3AC8;--pur-bg:#efe4fb;--pur-bd:#d7c3f1;--gold:#B97A0C;--gold-bg:#fdf0d4;--gold-bd:#eed29a;--neu-bg:#f1edf4;--neu-bd:#e0d9e7;position:relative;z-index:1;background:var(--bg);color:var(--ink);font-family:"Noto Sans JP",sans-serif;line-height:1.85;-webkit-font-smoothing:antialiased;text-align:left}
body.apr-audition .apr-bright-root *{box-sizing:border-box;margin:0;padding:0}
body.apr-audition .apr-bright-root .en{font-family:"Barlow Condensed",sans-serif;letter-spacing:.04em}
body.apr-audition .apr-bright-root .round{font-family:"M PLUS Rounded 1c",sans-serif}
body.apr-audition .apr-bright-root .wrap{max-width:1060px;margin:0 auto;padding:0 26px}
body.apr-audition .apr-bright-root .sec{padding:64px 0}
body.apr-audition .apr-bright-root .sec.alt{background:var(--alt)}
body.apr-audition .apr-bright-root .sec-head{margin-bottom:34px}
body.apr-audition .apr-bright-root .sec-head .kicker{display:block;font:800 13px/1 "Barlow Condensed";letter-spacing:.22em;color:var(--pink);margin-bottom:10px}
body.apr-audition .apr-bright-root .sec-head h2{font:900 clamp(25px,3.5vw,33px)/1.35 "M PLUS Rounded 1c";color:var(--head);padding-left:15px;border-left:6px solid var(--pink)}
body.apr-audition .apr-bright-root .sec-head .sub{font:500 13.5px/1.7 "Noto Sans JP";color:var(--muted);margin-top:12px;padding-left:15px}
body.apr-audition .apr-bright-root .hero{position:relative;min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:#ffe6f3}
body.apr-audition .apr-bright-root .hero__bg{position:absolute;inset:0;z-index:0;background:url("https://alterproduction.net/wp-content/uploads/2026/05/イラスト2-scaled.png") center 20%/cover no-repeat;filter:brightness(1.12) saturate(1.08)}
body.apr-audition .apr-bright-root .hero__fade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(255,246,251,.5) 0%,rgba(255,246,251,.04) 26%,rgba(255,246,251,0) 56%,rgba(255,246,251,.95) 100%)}
body.apr-audition .apr-bright-root .hero__in{position:relative;z-index:2;padding:0 24px}
body.apr-audition .apr-bright-root .hero .eyebrow{display:inline-block;font:800 12px/1 "Barlow Condensed";letter-spacing:.34em;color:#fff;text-transform:uppercase;background:var(--pinkd);padding:7px 14px;border-radius:4px}
body.apr-audition .apr-bright-root .hero .big{font:900 clamp(60px,12vw,138px)/.9 "Barlow Condensed";margin:14px 0 8px;color:#fff;-webkit-text-stroke:3px #fff;text-shadow:0 5px 0 #7E3AC8,0 8px 16px rgba(0,0,0,.22)}
body.apr-audition .apr-bright-root .hero .big .r{color:#FF1F5A;-webkit-text-stroke:3px #fff}
body.apr-audition .apr-bright-root .hero .lead{font:800 18px/1.7 "M PLUS Rounded 1c";color:#3a1f30;text-shadow:0 1px 8px rgba(255,255,255,.85)}
body.apr-audition .apr-bright-root .hero .lead b{color:var(--pinkd)}
body.apr-audition .apr-bright-root .hero .cta-row{margin-top:24px}
body.apr-audition .apr-bright-root .btn{display:inline-flex;flex-direction:column;align-items:center;gap:2px;background:var(--pinkd);color:#fff;border-radius:8px;padding:16px 44px;font:900 19px/1.2 "M PLUS Rounded 1c";text-decoration:none;box-shadow:0 6px 16px rgba(194,24,91,.35)}
body.apr-audition .apr-bright-root .btn .s{font:700 11px/1 "Noto Sans JP";opacity:.92}
body.apr-audition .apr-bright-root .btn:hover{background:#a81250;transform:translateY(-1px)}
body.apr-audition .apr-bright-root .block{background:#fff;border:1.5px solid #f0dee8;border-radius:12px;padding:26px 28px}
body.apr-audition .apr-bright-root .block h4{font:800 17px/1.45 "M PLUS Rounded 1c";color:var(--pinkd);margin:0 0 8px}
body.apr-audition .apr-bright-root .block p{font-size:13.5px;color:var(--body);line-height:1.85}
body.apr-audition .apr-bright-root .about{background:#fff;border:1.5px solid #f0dee8;border-radius:12px;padding:34px 38px}
body.apr-audition .apr-bright-root .about .head{font:800 21px/1.65 "M PLUS Rounded 1c";color:var(--head);margin-bottom:14px}
body.apr-audition .apr-bright-root .about p{font-size:15px;line-height:2;margin-bottom:12px}
body.apr-audition .apr-bright-root .about strong{color:var(--pinkd)}
body.apr-audition .apr-bright-root .cast{background:var(--alt)}
body.apr-audition .apr-bright-root .cast-img{text-align:center;margin-top:6px}
body.apr-audition .apr-bright-root .cast-img img{width:100%;max-width:860px;height:auto;mix-blend-mode:multiply}
body.apr-audition .apr-bright-root .cast-note{margin-top:8px;text-align:center;font:800 14px/1.7 "M PLUS Rounded 1c";color:var(--pinkd)}
body.apr-audition .apr-bright-root .act{display:grid;grid-template-columns:1fr 1fr;gap:16px}
body.apr-audition .apr-bright-root .acard{position:relative;border-radius:12px;padding:26px 28px;border:1.5px solid}
body.apr-audition .apr-bright-root .acard.main{background:#fff;border-color:#f0dee8}
body.apr-audition .apr-bright-root .acard.main h4{color:var(--pinkd);font-size:19px}
body.apr-audition .apr-bright-root .acard.sub{background:#fff;border-color:#ece6ee}
body.apr-audition .apr-bright-root .acard.sub h4{color:#6a6472}
body.apr-audition .apr-bright-root .acard h4{font:800 17px/1.45 "M PLUS Rounded 1c";margin:0 0 8px}
body.apr-audition .apr-bright-root .acard p{font-size:13.5px;color:var(--body);line-height:1.85}
body.apr-audition .apr-bright-root .acard .badge{position:absolute;top:24px;right:26px;font:800 10px/1 "Barlow Condensed";letter-spacing:.1em;padding:4px 8px;border-radius:3px;color:#fff}
body.apr-audition .apr-bright-root .acard.main .badge{background:var(--pink)}
body.apr-audition .apr-bright-root .acard.sub .badge{background:#9a93a6}
body.apr-audition .apr-bright-root .support{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
body.apr-audition .apr-bright-root .req{display:grid;grid-template-columns:1fr 1fr;gap:18px}
body.apr-audition .apr-bright-root .req .block h3{font:800 17px/1.3 "M PLUS Rounded 1c";color:var(--pinkd);margin-bottom:14px}
body.apr-audition .apr-bright-root .req li{list-style:none;font-size:14px;padding:8px 0 8px 24px;position:relative;border-bottom:1px solid rgba(0,0,0,.05)}
body.apr-audition .apr-bright-root .req li:last-child{border-bottom:0}
body.apr-audition .apr-bright-root .req li::before{content:"・";position:absolute;left:0;top:7px;font-weight:800;font-size:17px;color:var(--pink)}
body.apr-audition .apr-bright-root .benefits{margin-top:18px}
body.apr-audition .apr-bright-root .benefits ul{display:grid;grid-template-columns:1fr 1fr;gap:6px 28px;list-style:none}
body.apr-audition .apr-bright-root .benefits li{font-size:14px;padding:8px 0 8px 24px;position:relative}
body.apr-audition .apr-bright-root .benefits li::before{content:"・";position:absolute;left:0;top:7px;font-weight:800;font-size:17px;color:var(--pink)}
body.apr-audition .apr-bright-root .flow{display:flex;align-items:stretch;gap:6px}
body.apr-audition .apr-bright-root .phase{flex:1;background:#fff;border:1.5px solid #f0dee8;border-radius:14px;padding:28px 22px;text-align:center}
body.apr-audition .apr-bright-root .phase__k{display:block;font:800 11px/1 "Barlow Condensed";letter-spacing:.18em;color:var(--pink);margin-bottom:12px}
body.apr-audition .apr-bright-root .phase__t{font:800 21px/1.4 "M PLUS Rounded 1c";color:var(--head)}
body.apr-audition .apr-bright-root .phase__t small{display:block;font:700 11px/1.5 "Noto Sans JP";color:var(--pink);margin-top:5px}
body.apr-audition .apr-bright-root .phase__d{font-size:12.5px;color:var(--body);line-height:1.75;margin-top:12px}
body.apr-audition .apr-bright-root .arrow{display:flex;align-items:center;color:#e3a9c8;font:900 32px/1 "Barlow Condensed"}
body.apr-audition .apr-bright-root .flow-note{margin-top:18px;text-align:center;font:700 12.5px/1.6 "Barlow Condensed";letter-spacing:.06em;color:var(--muted)}
body.apr-audition .apr-bright-root .faq{display:grid;grid-template-columns:1fr 1fr;gap:14px}
body.apr-audition .apr-bright-root .qa{background:var(--white);border:1.5px solid #f0dde8;border-radius:10px;padding:20px 22px}
body.apr-audition .apr-bright-root .qa .q{font:800 14.5px/1.55 "M PLUS Rounded 1c";color:var(--head);margin-bottom:9px;padding-left:30px;position:relative}
body.apr-audition .apr-bright-root .qa .q::before{content:"Q";position:absolute;left:0;top:0;color:#fff;background:var(--pinkd);width:22px;height:22px;border-radius:6px;font:800 13px/22px "Barlow Condensed";text-align:center}
body.apr-audition .apr-bright-root .qa .a{font-size:13px;color:var(--body);line-height:1.8;padding-left:30px;position:relative}
body.apr-audition .apr-bright-root .qa .a::before{content:"A";position:absolute;left:1px;top:0;color:var(--pur);font:800 14px/1.4 "Barlow Condensed"}
body.apr-audition .apr-bright-root .entry{background:var(--pinkd);border-radius:14px;padding:40px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
body.apr-audition .apr-bright-root .entry .lbl{font:800 21px/1.5 "M PLUS Rounded 1c";color:#fff}
body.apr-audition .apr-bright-root .entry .lbl small{display:block;font:500 13px/1.6 "Noto Sans JP";color:rgba(255,255,255,.85);margin-top:6px}
body.apr-audition .apr-bright-root .entry .btn{background:#fff;color:var(--pinkd)}
body.apr-audition .apr-bright-root .entry .btn .s{color:var(--pur)}
body.apr-audition .apr-bright-root .entry .btn:hover{background:#fff;filter:brightness(.97)}
body.apr-audition .sticky-cta{position:fixed;right:18px;bottom:18px;z-index:60;background:#C2185B;color:#fff;font:800 15px/1 "M PLUS Rounded 1c";padding:15px 24px;border-radius:10px;text-decoration:none;box-shadow:0 8px 22px rgba(194,24,91,.42)}
body.apr-audition .sticky-cta:hover{background:#a81250;transform:translateY(-1px)}
@media(max-width:760px){body.apr-audition .apr-bright-root .act{grid-template-columns:1fr}body.apr-audition .apr-bright-root .support{grid-template-columns:1fr}body.apr-audition .apr-bright-root .req{grid-template-columns:1fr}body.apr-audition .apr-bright-root .benefits ul{grid-template-columns:1fr}body.apr-audition .apr-bright-root .flow{flex-direction:column}body.apr-audition .apr-bright-root .arrow{transform:rotate(90deg);justify-content:center;padding:2px 0}body.apr-audition .apr-bright-root .faq{grid-template-columns:1fr}}

/* ---- X16 強制上書き：暗色テーマ（X1–X15）の !important 文字色（白）・見出し巨大化・
   .about の grid 強制 を打ち消す。ライブDOM検証(2026-05-25)で必要箇所のみ !important 指定。 ---- */
body.apr-audition .apr-bright-root .about{display:block!important}
body.apr-audition .apr-bright-root .sec-head h2{font-size:clamp(25px,3.5vw,33px)!important;font-weight:900!important;color:var(--head)!important;line-height:1.35!important}
body.apr-audition .apr-bright-root .sec-head .kicker{color:var(--pink)!important}
body.apr-audition .apr-bright-root .sec-head .sub{color:var(--muted)!important}
body.apr-audition .apr-bright-root .about .head{color:var(--head)!important;font-weight:800!important;font-size:21px!important}
body.apr-audition .apr-bright-root .about p{color:var(--body)!important}
body.apr-audition .apr-bright-root .about strong{color:var(--pinkd)!important}
body.apr-audition .apr-bright-root .block h4{color:var(--pinkd)!important}
body.apr-audition .apr-bright-root .block h3{color:var(--pinkd)!important}
body.apr-audition .apr-bright-root .block p{color:var(--body)!important}
body.apr-audition .apr-bright-root .acard.main h4{color:var(--pinkd)!important}
body.apr-audition .apr-bright-root .acard.sub h4{color:#6a6472!important}
body.apr-audition .apr-bright-root .acard p{color:var(--body)!important}
body.apr-audition .apr-bright-root .req li{color:var(--ink)!important}
body.apr-audition .apr-bright-root .benefits li{color:var(--ink)!important}
body.apr-audition .apr-bright-root .phase__t{color:var(--head)!important}
body.apr-audition .apr-bright-root .phase__d{color:var(--body)!important}
body.apr-audition .apr-bright-root .phase__k{color:var(--pink)!important}
body.apr-audition .apr-bright-root .phase__t small{color:var(--pink)!important}
body.apr-audition .apr-bright-root .flow-note{color:var(--muted)!important}
body.apr-audition .apr-bright-root .qa .q{color:var(--head)!important}
body.apr-audition .apr-bright-root .qa .a{color:var(--body)!important}
body.apr-audition .apr-bright-root .cast-note{color:var(--pinkd)!important}
body.apr-audition .apr-bright-root .hero .lead{color:#3a1f30!important}
body.apr-audition .apr-bright-root .hero .big{color:#fff!important}
body.apr-audition .apr-bright-root .hero .big .r{color:#FF1F5A!important}
body.apr-audition .apr-bright-root .entry .lbl small{color:rgba(255,255,255,.85)!important}

/* ==========================================================================
   X17: /audition/ スクロール連動リビールアニメ（軽量 / IntersectionObserver / 2026-05-25）
   下スクロールで各要素が下からふわっと現れる。ライブラリ不使用（IO + CSS transition）。
   transform/opacity のみで GPU フレンドリー＝レイアウトシフト無し。参考: vtuber-expo.com /
   audition.urarojigame.jp は共にこの方式。
   フェイルセーフ: reduced-motion / IO非対応 / JS未実行時は .apr-anim が付かず通常表示となり、
   コンテンツが opacity:0 で隠れたままになる事故を防ぐ（プログレッシブエンハンスメント）。
   スマホ(<=760px)は移動量・stagger遅延・duration を縮小して軽快に。
   .apr-rv / .apr-rv-group / .apr-anim の付与は functions.php X16 ブロック末尾の観測JS。
   このブロックを削除すればアニメは完全無効化（クラスが付いても参照されず通常表示。reversible）。
   ========================================================================== */
@media (prefers-reduced-motion: no-preference){
  body.apr-audition .apr-bright-root.apr-anim .apr-rv{opacity:0;transform:translateY(30px);transition:opacity .7s cubic-bezier(.16,.84,.44,1),transform .7s cubic-bezier(.16,.84,.44,1)}
  body.apr-audition .apr-bright-root.apr-anim .apr-rv.is-in{opacity:1;transform:none}
  body.apr-audition .apr-bright-root.apr-anim .apr-rv-group{--step:70ms}
  body.apr-audition .apr-bright-root.apr-anim .apr-rv-group>*{opacity:0;transform:translateY(26px);transition:opacity .6s cubic-bezier(.16,.84,.44,1),transform .6s cubic-bezier(.16,.84,.44,1)}
  body.apr-audition .apr-bright-root.apr-anim .apr-rv-group.is-in>*{opacity:1;transform:none}
  body.apr-audition .apr-bright-root.apr-anim .apr-rv-group.is-in>*:nth-child(2){transition-delay:var(--step)}
  body.apr-audition .apr-bright-root.apr-anim .apr-rv-group.is-in>*:nth-child(3){transition-delay:calc(var(--step)*2)}
  body.apr-audition .apr-bright-root.apr-anim .apr-rv-group.is-in>*:nth-child(4){transition-delay:calc(var(--step)*3)}
  body.apr-audition .apr-bright-root.apr-anim .apr-rv-group.is-in>*:nth-child(5){transition-delay:calc(var(--step)*4)}
  body.apr-audition .apr-bright-root.apr-anim .apr-rv-group.is-in>*:nth-child(6){transition-delay:calc(var(--step)*5)}
  body.apr-audition .apr-bright-root.apr-anim .apr-rv-group.is-in>*:nth-child(n+7){transition-delay:calc(var(--step)*6)}
  @media (max-width:760px){
    body.apr-audition .apr-bright-root.apr-anim .apr-rv{transform:translateY(20px);transition-duration:.55s}
    body.apr-audition .apr-bright-root.apr-anim .apr-rv-group{--step:45ms}
    body.apr-audition .apr-bright-root.apr-anim .apr-rv-group>*{transform:translateY(18px);transition-duration:.5s}
  }
}
/* Footer: 運営会社情報ブロック削除に伴う再調整 (2026-05-26) */
@media(min-width:760px){.ft__top{grid-template-columns:max-content max-content;justify-content:space-between}}
.ft__sns{margin-top:0;justify-content:center}
/* ===== 見出しの黒ドロップシャドウ打ち消し (2026-05-27) =====
   X6-3 の暗色テーマ用 text-shadow:0 2px 24px rgba(0,0,0,.55)!important が
   明るいテーマ(bright-root)化後も全セクション見出しに残存し「黒いぼやけ」の原因に。
   明るい背景＋濃色文字では影は不要なので全見出しで打ち消す（CAST以外の全セクションにも反映）。 */
body.apr-audition .apr-bright-root h2{text-shadow:none!important}
/* ===== 待遇・福利厚生 見出しの可読性修正 (2026-05-27) =====
   明るいゴールド(#FFB400)のグラデ文字が白背景で低コントラストだったため、
   「待遇＝ゴールド」の意図は維持しつつ読みやすい濃ゴールドの単色に。 */
body.apr-audition .apr-bright-root .block.benefits h3{
  background-image:none!important;
  -webkit-text-fill-color:#A56A00!important;
  color:#A56A00!important;
}
/* ===== 主な活動内容: MAIN/SUB バッジを非表示 (2026-05-27) =====
   オーナー指示で各活動カードの MAIN/SUB ラベルを削除（カードの主/副の色分けは維持）。 */
body.apr-audition .apr-bright-root .acard .badge{display:none!important}

/* ===== 待遇・福利厚生 見出し: 残存ピンク発光を除去 (2026-05-27) =====
   text-shadow と filter:drop-shadow のピンクのモヤを打ち消し、金単色を維持。 */
body.apr-audition .apr-bright-root .block.benefits h3{text-shadow:none!important;filter:none!important}

/* ===== 主な活動内容: カード見出しの色を赤系に統一 (2026-05-27) =====
   sub カード見出し(灰黒)を main と同じ赤(#C2185B)に揃える。 */
body.apr-audition .apr-bright-root .acard.sub h4{color:var(--pinkd)!important}


/* ===== /audition/ 漫画要素 A網点 + B集中線 + C吹き出し (2026-05-27 / 同日改訂) =====
   タレントの看板コンテンツ(漫画レビュー・考察/おすすめ・布教)に合わせた漫画演出。範囲は /audition/ のみ。
   A: 各コンテンツセクション背景に控えめなスクリーントーン(網点)。
   B: 集中線は「見出し背後」をやめ、応募フォームの大ボタン(.btn ×2)背後のみに付与（視認性のため太く強め）。
   C: 吹き出しは kicker ピルをやめ、説明ボックス全部(活動/サポート/FAQ/選考フェーズ/募集要項/.about/.entry)に上向き(小タイトル側)の尻尾＋cast-note に付与。
   全て .apr-bright-root スコープで reversible。 */
/* A: 網点トーン */
body.apr-audition .apr-bright-root section.sec{background-image:radial-gradient(rgba(229,39,126,.10) 1.2px,transparent 1.5px);background-size:14px 14px}
body.apr-audition .apr-bright-root section.sec.alt,
body.apr-audition .apr-bright-root section.sec.cast{background-image:radial-gradient(rgba(126,58,200,.10) 1.2px,transparent 1.5px);background-size:14px 14px}
/* B: 集中線 — 応募ボタン(.btn)背後のみ。buttonをstacking context化し、不透明な本体が中心を隠す→周囲に太く放射（視認性のため強め）。 */
body.apr-audition .apr-bright-root .btn{overflow:visible;position:relative;z-index:0}
body.apr-audition .apr-bright-root .btn::before{content:"";position:absolute;left:50%;top:50%;width:640px;height:340px;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 0deg at 50% 50%,rgba(194,24,91,.85) 0deg 2.6deg,transparent 2.6deg 6deg);-webkit-mask-image:radial-gradient(ellipse at center,#000 26%,transparent 74%);mask-image:radial-gradient(ellipse at center,#000 26%,transparent 74%);pointer-events:none;z-index:-1}
/* C: フキダシ — 説明カード全部＋.about に尻尾（上向き=小タイトル側 / 白fill＋薄ピンク縁） */
body.apr-audition .apr-bright-root .acard,
body.apr-audition .apr-bright-root .support > .block,
body.apr-audition .apr-bright-root .phase,
body.apr-audition .apr-bright-root .req > .block,
body.apr-audition .apr-bright-root .about{position:relative}
body.apr-audition .apr-bright-root .acard::before,
body.apr-audition .apr-bright-root .support > .block::before,
body.apr-audition .apr-bright-root .phase::before,
body.apr-audition .apr-bright-root .req > .block::before,
body.apr-audition .apr-bright-root .about::before{content:"";position:absolute;left:30px;top:-12px;width:0;height:0;border-left:11px solid transparent;border-right:11px solid transparent;border-bottom:13px solid var(--pink-bd);pointer-events:none}
body.apr-audition .apr-bright-root .acard::after,
body.apr-audition .apr-bright-root .support > .block::after,
body.apr-audition .apr-bright-root .phase::after,
body.apr-audition .apr-bright-root .req > .block::after,
body.apr-audition .apr-bright-root .about::after{content:"";position:absolute;left:32px;top:-9px;width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:10px solid #fff;pointer-events:none}
/* C: フキダシ — 今すぐエントリーの説明ボックス(.entry, ピンク地)に上向き尻尾 */
body.apr-audition .apr-bright-root .entry{position:relative}
body.apr-audition .apr-bright-root .entry::after{content:"";position:absolute;left:36px;top:-11px;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:12px solid var(--pinkd);pointer-events:none}
/* B: 集中線 — ENTRYは「ボタン面スッキリ＋外側に放射」をTOP同様に。白ボタン×ピンク地のため、
   ボタン自身の線は消し、CTAボックス(.entry)に白の集中線をボタン位置(右)を焦点に敷く。内容は上に重ねる。 */
body.apr-audition .apr-bright-root .entry .btn::before{display:none}
body.apr-audition .apr-bright-root .entry::before{content:"";position:absolute;inset:0;background:repeating-conic-gradient(from 0deg at 82% 50%,rgba(255,255,255,.5) 0deg 1.4deg,transparent 1.4deg 3.8deg);-webkit-mask-image:radial-gradient(ellipse 70% 90% at 82% 50%,#000 6%,transparent 62%);mask-image:radial-gradient(ellipse 70% 90% at 82% 50%,#000 6%,transparent 62%);pointer-events:none;border-radius:14px}
body.apr-audition .apr-bright-root .entry .lbl{position:relative;z-index:1}
body.apr-audition .apr-bright-root .entry .btn{z-index:1}
/* C: フキダシ — cast-note */
body.apr-audition .apr-bright-root .cast-note{display:inline-block;background:#fff;border:2px solid var(--pinkd);border-radius:16px;padding:11px 17px;position:relative}
body.apr-audition .apr-bright-root .cast-note::after{content:"";position:absolute;left:26px;top:-10px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:10px solid #fff}
body.apr-audition .apr-bright-root .cast-note::before{content:"";position:absolute;left:24px;top:-13px;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:12px solid var(--pinkd)}

/* C: フキダシ — CAST シルエット画像の白背景バグを multiply で透過化（黒シルエットは残る） */
body.apr-audition .apr-bright-root .cast-img img{mix-blend-mode:multiply}

/* C: フキダシ — FAQ は Q に対して A を吹き出し化（カード尻尾は外し .qa を上の群から除外済み） */
body.apr-audition .apr-bright-root .qa .a{background:#fdeef5;border-radius:12px;padding:14px 16px 14px 34px;margin-top:14px;position:relative}
body.apr-audition .apr-bright-root .qa .a::before{left:12px;top:15px}
body.apr-audition .apr-bright-root .qa .a::after{content:"";position:absolute;left:22px;top:-9px;width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:10px solid #fdeef5;pointer-events:none}

/* ===== #3 ヒーロー見出しのモバイル可読性 (2026-05-27) =====
   .hero__fade は中央が透明で、暗いキャラ上に lead(濃色)が乗ると読みづらい。
   スマホ幅のみ、テキストブロック(.hero__in)裏に淡い光のスクリムを敷き、lead の白縁影を強化。 */
@media (max-width:760px){
  body.apr-audition .apr-bright-root .hero__in{background:radial-gradient(ellipse 132% 76% at 50% 44%,rgba(255,246,251,.72) 0%,rgba(255,246,251,.38) 52%,rgba(255,246,251,0) 78%);border-radius:20px}
  body.apr-audition .apr-bright-root .hero .lead{text-shadow:0 1px 10px rgba(255,255,255,.95),0 0 4px rgba(255,255,255,.9)}
}

/* ===== #2 ヒーロー見出しを h1 化したことに伴う font 復元 (2026-05-27) =====
   親/暗色テーマのグローバル h1 ルールが .hero .big の font-size を上書きし縮小するため、
   h1.big で font を再指定（div時代と同一サイズに戻す）。 */
body.apr-audition .apr-bright-root .hero h1.big{font-size:clamp(60px,12vw,138px)!important;line-height:.9!important;margin:14px 0 8px!important;font-weight:900!important}

/* ===== 応募導線強化: 締切カウントダウン + 補足コピー (2026-05-27) =====
   ヒーロー/ENTRY の応募ボタン付近に「応募締切まで あとN日…」のライブ表示と、
   応募無料・配信経験不問 の安心コピーを追加（締切ISOは functions.php audition_close_iso）。 */
body.apr-audition .apr-bright-root .apr-cd{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font:800 14px/1 "M PLUS Rounded 1c";color:#fff;background:var(--pinkd);padding:10px 18px;border-radius:999px;box-shadow:0 8px 20px rgba(194,24,91,.32)}
body.apr-audition .apr-bright-root .apr-cd::before{content:"\23F3";font-size:15px}
body.apr-audition .apr-bright-root .apr-cd__t{font-weight:900}
body.apr-audition .apr-bright-root .apr-cd.is-ended{background:#8a8395;box-shadow:none}
body.apr-audition .apr-bright-root .cta-note{margin-top:12px;font:700 13px/1.6 "M PLUS Rounded 1c";color:var(--pinkd);text-shadow:0 1px 7px rgba(255,255,255,.95),0 0 3px rgba(255,255,255,.9)}
body.apr-audition .apr-bright-root .entry .apr-cd{background:rgba(255,255,255,.18);box-shadow:none;margin-top:12px;color:#fff}

/* ===== 漫画アニメ追加: 集中線バースト / 吹き出しポップイン / ペン入れ下線 (2026-05-28) =====
   プレビュー(manga-animations-options)で採用の3案。既存 reveal 機構(.apr-anim + .is-in /
   functions.php の IntersectionObserver)にフックする CSS のみの追加で、JS は変更しない。
   reduced-motion 時は observer が .apr-anim/.is-in を付与しないため自動的に静的表示となる。
   範囲は /audition/ のみ・append のみで reversible。 */
/* --- 1. 集中線バースト（応募ボタンの集中線が入場/ホバーで放射） --- */
@keyframes aprLineBurst{0%{transform:translate(-50%,-50%) scale(.45) rotate(-6deg);opacity:0}45%{opacity:.95}65%{transform:translate(-50%,-50%) scale(1.1) rotate(3deg);opacity:.7}100%{transform:translate(-50%,-50%) scale(1) rotate(0);opacity:1}}
@keyframes aprLineBurstE{0%{transform:scale(.5);opacity:0}45%{opacity:1}65%{transform:scale(1.08);opacity:.75}100%{transform:scale(1);opacity:1}}
body.apr-audition .apr-bright-root.apr-anim .btn::before{animation:aprLineBurst .9s cubic-bezier(.2,.9,.25,1) both}
body.apr-audition .apr-bright-root.apr-anim .btn:hover::before{animation:aprLineBurst .7s cubic-bezier(.2,.9,.25,1)}
body.apr-audition .apr-bright-root.apr-anim .entry::before{transform-origin:82% 50%}
body.apr-audition .apr-bright-root.apr-anim .entry.is-in::before{animation:aprLineBurstE .9s cubic-bezier(.2,.9,.25,1) both}
body.apr-audition .apr-bright-root.apr-anim .entry:hover::before{animation:aprLineBurstE .7s cubic-bezier(.2,.9,.25,1)}
/* --- 2. 吹き出しポップイン（説明カードが「ポンッ」と出現。2026-05-28 強調版: 小→大バウンド＋尻尾起点＋stagger） --- */
@keyframes aprBubblePop{0%{opacity:0;transform:scale(.88) translateY(6px)}58%{opacity:1;transform:scale(1.03)}100%{opacity:1;transform:none}}
body.apr-audition .apr-bright-root.apr-anim .act.is-in>.acard,
body.apr-audition .apr-bright-root.apr-anim .support.is-in>.block,
body.apr-audition .apr-bright-root.apr-anim .req.is-in>.block,
body.apr-audition .apr-bright-root.apr-anim .about.is-in{transform-origin:32px 0;animation:aprBubblePop .6s ease-out both}
/* stagger（カードを順番にポップ） */
body.apr-audition .apr-bright-root.apr-anim .act.is-in>.acard:nth-child(2),body.apr-audition .apr-bright-root.apr-anim .support.is-in>.block:nth-child(2),body.apr-audition .apr-bright-root.apr-anim .req.is-in>.block:nth-child(2){animation-delay:.12s}
body.apr-audition .apr-bright-root.apr-anim .act.is-in>.acard:nth-child(3),body.apr-audition .apr-bright-root.apr-anim .support.is-in>.block:nth-child(3),body.apr-audition .apr-bright-root.apr-anim .req.is-in>.block:nth-child(3){animation-delay:.24s}
body.apr-audition .apr-bright-root.apr-anim .act.is-in>.acard:nth-child(4),body.apr-audition .apr-bright-root.apr-anim .support.is-in>.block:nth-child(4),body.apr-audition .apr-bright-root.apr-anim .req.is-in>.block:nth-child(4){animation-delay:.36s}
/* --- 3. ペン入れ・アンダーライン（見出し下線が左→右に描画。非アニメ時は静的表示） --- */
body.apr-audition .apr-bright-root .sec-head h2{position:relative;display:inline-block}
body.apr-audition .apr-bright-root .sec-head h2::after{content:"";position:absolute;left:15px;right:6px;bottom:-9px;height:3px;background:var(--pink);border-radius:3px;transform-origin:left center}
body.apr-audition .apr-bright-root.apr-anim .sec-head h2::after{transform:scaleX(0)}
body.apr-audition .apr-bright-root.apr-anim .sec-head.is-in h2::after{animation:aprInkDraw .7s cubic-bezier(.65,0,.35,1) .15s forwards}
@keyframes aprInkDraw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
/* === TOP絵(ヒーロー)を漫画コマ枠＋約80%サイズに (案A) 2026-06-03 ===
   枠の位置を CAST画像→TOP絵(1st AUDITION ヒーロー)へ変更（オーナー指示）。
   .hero を中央寄せ80%幅＋高さ72vh→58vhに縮小し、太黒枠＋ズレ影でコマ化。overflow:hidden で内側イラストを枠内にクリップ。
   モバイル(<900px)は枠のみ・ほぼ全幅。append のみ・/audition/ のみ・reversible。 */
body.apr-audition .apr-bright-root .hero{
  width:calc(100% - 32px);
  margin:18px auto;
  border:6px solid #141414;
  border-radius:0;
  box-shadow:8px 8px 0 rgba(20,20,20,.12), 0 16px 34px rgba(0,0,0,.10);
}
@media (min-width:900px){
  body.apr-audition .apr-bright-root .hero{
    width:80%;
    max-width:1500px;
    min-height:58vh;
    margin:28px auto;
  }
}
/* === 応募締切カウントダウン(.apr-cd)を非表示に 2026-06-03 ===
   オーナー指示でヒーロー/ENTRY 両方の「応募締切まで あと…日…時間…分」を削除（非表示）。
   .apr-cd は2か所(.hero と .entry の .apr-cd--entry)。JS(functions.php)は不変・CSS非表示のみで reversible。 */
body.apr-audition .apr-bright-root .apr-cd{ display:none; }

/* ===== X21: 案②王道（少年バトル誌）/audition/ 本番CSS（2026-06-06 追記・URL参照フォント） scope: body.apr-audition .apr-shonen-root / font=源暎アンチック subset woff2(theme/fonts設置) ?v=20260605 旧X16(.apr-bright-root)は要素消滅でdead化・本ブロックが末尾で優先 ===== */
/* =====================================================================
   ALTER PRODUCTION /audition/ — 案② 王道（少年バトル誌）本番CSS
   子テーマ functions.php X16 の style.css「X16ブロック」を本CSSで置換する。
   スコープ: body.apr-audition .apr-shonen-root 配下（他ページ非影響）
   見出し英字: Anton / Saira（Google Fonts。Gemini APIではない）
   ===================================================================== */

/* ★メイン書体: 源暎アンチック（漫画写植・SIL OFL・自己ホスト）で全統一。
   ★軽量化: 使用文字のみにサブセット化した woff2（5MB→約91KB）。本番もこの woff2 を設置。
   ★2026-06-05: コピー更新で増えた文字（妹/姉/暴/走/掛/偏/愛/×/“”等33字）を追加し再サブセット。?v でキャッシュ更新。 */
@font-face{ font-family:"GenEiAntique"; src:url("/wp-content/uploads/2026/07/GenEiAntique-subset-v20260713b.woff2?v=20260713b") format("woff2"); font-display:swap; }
body.apr-audition{
  background:#ffe7f0 !important;   /* X22 案A 桜ピンク（オーナー指示 2026-06-11。旧 #fdfbf6） */
  background-image:radial-gradient(circle, rgba(199,29,93,.16) 1.2px, transparent 1.4px) !important;   /* X22 網点も臙脂系に */
  background-size:7px 7px !important;
  /* background-attachment:fixed は撤去（スクロール時の再描画が重いため。点々は body 全幅で十分） */
}

.apr-shonen-root{
  --red:#AF3157; --ink:#141414; --paper:#f6f1e7; --line:rgba(20,20,20,.16);
  max-width:1080px; margin:0 auto;
  font-family:"GenEiAntique","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  color:#1c1c20; line-height:1.7;
  background:transparent;   /* 点々は body 側。ここは透過して全面ドットを見せる */
}
.apr-shonen-root *{ box-sizing:border-box; margin:0; padding:0; }
.apr-shonen-root img{ max-width:100%; display:block; }
.apr-shonen-root a{ color:inherit; text-decoration:none; }
.apr-shonen-root ul{ list-style:none; }

/* ---------- shared headings ---------- */
.apr-shonen-root .sec{ padding:34px 22px; }   /* 余白圧縮 54→34（スクロール短縮） */
.apr-shonen-root .sec.alt{ background:rgba(199,29,93,.05); }   /* X22 交互セクションを一段深いピンクに */
.apr-shonen-root .inner{ max-width:920px; margin:0 auto; }
.apr-shonen-root .sec-head{ margin-bottom:18px; }
.apr-shonen-root .kicker{ display:inline-block; font-size:11px; font-weight:800; letter-spacing:.2em;
  color:#fff; background:var(--ink); padding:4px 11px; font-family:"Anton","Saira",sans-serif; }
.apr-shonen-root .sec-h{ font-size:clamp(24px,4.6vw,36px); font-weight:900; font-style:italic; margin-top:12px;
  color:#16161b; letter-spacing:.01em; line-height:1.25; }
.apr-shonen-root .sec-h .kanji{ font-style:normal; color:var(--red); font-size:.62em; margin-right:.5em;
  -webkit-text-stroke:0; letter-spacing:.05em; }

/* ink panel base (the manga "コマ") */
.apr-shonen-root .panel{ background:#fff; border:5px solid var(--ink); box-shadow:7px 7px 0 var(--ink); position:relative; }
.apr-shonen-root .panel.dbl::after{ content:""; position:absolute; inset:5px; border:2px solid var(--ink); pointer-events:none; }

/* ---------- HERO (見せゴマ) ---------- */
.apr-shonen-root .hero{ position:relative; margin:18px 16px 8px; border:7px solid var(--ink);
  box-shadow:10px 10px 0 var(--ink); overflow:hidden;
  background:
    radial-gradient(circle at 50% 50%, #fff 15%, rgba(255,255,255,.85) 30%, transparent 60%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='xMidYMid slice'%3E%3Cpath stroke='%23141414' stroke-width='1.1' d='M50 50L130 50M50 50L127 71M50 50L119 90M50 50L107 107M50 50L90 119M50 50L71 127M50 50L50 130M50 50L29 127M50 50L11 119M50 50L-7 107M50 50L-19 90M50 50L-27 71M50 50L-30 50M50 50L-27 29M50 50L-19 11M50 50L-7 -7M50 50L11 -19M50 50L29 -27M50 50L50 -30M50 50L71 -27M50 50L90 -19M50 50L107 -7M50 50L119 11M50 50L127 29'/%3E%3C/svg%3E") center/cover no-repeat,
    #fff;
  text-align:center; padding:26px 24px 22px; }
.apr-shonen-root .hero .tag{ display:inline-block; font-size:12px; font-weight:800; letter-spacing:.2em;
  color:#fff; background:var(--ink); padding:5px 12px; font-family:"Anton","Saira",sans-serif; }
.apr-shonen-root .hero h1{ font-family:"Anton","Saira","Yu Gothic",sans-serif; font-size:clamp(56px,13vw,128px);
  line-height:.86; font-weight:400; color:var(--ink); letter-spacing:.012em; margin:8px 0 8px;
  text-shadow:4px 4px 0 var(--red); }
.apr-shonen-root .hero h1 .num{ color:var(--red); text-shadow:4px 4px 0 var(--ink); }
.apr-shonen-root .hero .lead{ font-size:15px; font-weight:800; color:#16161b; margin:8px 0 22px; }
.apr-shonen-root .cta{ display:inline-block; text-decoration:none; background:var(--red); color:#fff;
  font-weight:900; font-style:italic; font-size:16px; letter-spacing:.04em; padding:15px 36px;
  border:3px solid var(--ink); box-shadow:6px 6px 0 var(--ink); transform:rotate(-1.4deg); }
.apr-shonen-root .cta small{ display:block; font-size:10px; font-weight:700; font-style:normal; letter-spacing:.08em; margin-top:3px; opacity:.92; }
.apr-shonen-root .hero .free{ display:block; margin-top:20px; font-size:12px; font-weight:800; color:#16161b; }
.apr-shonen-root .topnote{ text-align:center; font-size:13px; font-weight:800; color:var(--red); margin:10px 16px 0; }

/* ---------- ABOUT ---------- */
.apr-shonen-root .lead-h{ font-size:clamp(20px,3.6vw,28px); font-weight:900; color:var(--red);
  -webkit-text-stroke:0; margin-bottom:16px; font-style:normal; }   /* フチ・合成斜体を除去し他見出しと統一（源暎アンチック） */
.apr-shonen-root .about-body{ font-size:14px; color:#2b2b30; line-height:2; }
.apr-shonen-root .about-body p{ margin-bottom:14px; }
.apr-shonen-root .about-wrap{ padding:20px 26px; }

/* ---------- CAST（新A/B カラー2コマ・各「魂 募集中」バッジ） ---------- */
.apr-shonen-root .cast-grid{ display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:8px; }
.apr-shonen-root .cast-card{ position:relative; overflow:hidden; background:#fff; padding:0; }
.apr-shonen-root .cast-card img{ max-height:450px; width:auto; max-width:100%; height:auto; margin:0 auto; display:block; }   /* 705→450 で短縮（白コマ上に中央配置） */
.apr-shonen-root .cast-badge{ position:absolute; top:-12px; left:50%; transform:translateX(-50%) rotate(-2deg);
  background:var(--red); color:#fff; font-weight:bold; font-size:14px; letter-spacing:.04em; padding:6px 16px;
  border:2px solid var(--ink); box-shadow:3px 3px 0 var(--ink); white-space:nowrap; z-index:2; }
.apr-shonen-root .cast-cap{ text-align:center; margin-top:22px; font-size:14px; font-weight:800; color:#16161b; }

/* ---------- card grids (ACTIVITY / SUPPORT) ---------- */
.apr-shonen-root .cards{ display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:4px; }
.apr-shonen-root .mcard{ padding:18px 20px 20px; }
.apr-shonen-root .mcard h3{ font-size:16px; font-weight:900; color:var(--ink); margin-bottom:9px; font-style:italic; }
.apr-shonen-root .mcard h3 .no{ display:inline-block; background:var(--red); color:#fff; font-style:normal;
  font-size:12px; padding:1px 8px; margin-right:8px; border:2px solid var(--ink); vertical-align:middle; font-family:"Anton","Saira",sans-serif; }
.apr-shonen-root .mcard p{ font-size:12.5px; color:#444; line-height:1.85; }
.apr-shonen-root .mcard .em{ color:var(--red); font-weight:800; }

/* ---------- REQUIREMENTS ---------- */
.apr-shonen-root .req-grid{ display:grid; grid-template-columns:1fr 1fr; gap:18px; align-items:start; }   /* 必須｜歓迎 を横並び */
.apr-shonen-root .req-block.treat{ grid-column:1 / -1; }   /* 待遇は下に全幅 */
.apr-shonen-root .req-block{ padding:22px 24px; }
.apr-shonen-root .req-block h3{ font-size:15px; font-weight:900; color:#fff; background:var(--ink);
  display:inline-block; padding:5px 14px; font-style:italic; margin-bottom:14px; }
.apr-shonen-root .req-block.must h3{ background:var(--red); }
.apr-shonen-root .req-list{ list-style:none; }
.apr-shonen-root .req-list li{ position:relative; padding:7px 0 7px 30px; font-size:13px; border-bottom:1px dashed var(--line); }
.apr-shonen-root .req-list li:last-child{ border-bottom:0; }
.apr-shonen-root .req-list li::before{ content:""; position:absolute; left:4px; top:12px; width:11px; height:11px;
  background:var(--red); transform:rotate(45deg); }
/* 待遇・福利厚生 = A2強調（赤枠＋赤影＋赤見出し＋赤ひし形・白地）（オーナー指示 2026-06-05） */
.apr-shonen-root .req-block.treat{ border-color:var(--red); box-shadow:7px 7px 0 var(--red); }
.apr-shonen-root .req-block.treat h3{ background:var(--red) !important; }
.apr-shonen-root .treat .req-list li::before{ background:var(--red); }
.apr-shonen-root .treat .req-list li{ font-size:14.5px; }   /* 待遇の詳細だけ少し大きめに（2026-06-05 オーナー指示）。必須/歓迎は13pxのまま */
/* ミニマムギャランティの特別ボックス(.hl)は廃止し、待遇は箇条書きに統一（オーナー指示 2026-06-05） */

/* ---------- SELECTION ---------- */
.apr-shonen-root .phases{ display:flex; gap:8px; align-items:stretch; flex-wrap:wrap; margin-top:4px; }
.apr-shonen-root .ph{ flex:1; min-width:200px; padding:18px 18px 20px; }
.apr-shonen-root .ph .pn{ display:inline-block; background:var(--red); color:#fff; font-weight:900; font-size:12px;
  letter-spacing:.08em; padding:3px 10px; border:2px solid var(--ink); font-family:"Anton","Saira",sans-serif; }
.apr-shonen-root .ph .pt{ font-size:16px; font-weight:900; font-style:italic; margin:9px 0 6px; color:#16161b; }
.apr-shonen-root .ph .pt small{ font-size:10px; font-weight:700; color:var(--red); font-style:normal; margin-left:6px; }
.apr-shonen-root .ph .pd{ font-size:12px; color:#444; line-height:1.8; }
.apr-shonen-root .ph .gate{ display:block; margin-top:12px; font-size:11px; font-weight:900; color:var(--red); letter-spacing:.12em; }
.apr-shonen-root .ph-arrow{ align-self:center; font-weight:900; font-size:26px; color:var(--red);
  -webkit-text-stroke:1px var(--ink); font-style:italic; font-family:"Anton","Saira",sans-serif; }
.apr-shonen-root .sel-foot{ margin-top:22px; text-align:center; font-size:13px; font-weight:800; color:#fff;
  background:var(--ink); display:inline-block; padding:9px 18px; }
.apr-shonen-root .sel-foot-wrap{ text-align:center; }

/* ---------- FAQ ---------- */
.apr-shonen-root .faq-list{ display:grid; gap:14px; margin-top:4px; }
.apr-shonen-root .faq{ padding:16px 20px; }
.apr-shonen-root .faq .q{ font-size:14px; font-weight:900; color:#16161b; position:relative; padding-left:34px; font-style:italic; }
.apr-shonen-root .faq .q::before{ content:"Q"; position:absolute; left:0; top:-2px; width:24px; height:24px;
  background:var(--red); color:#fff; border:2px solid var(--ink); border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:13px; font-style:normal; }
.apr-shonen-root .faq .a{ font-size:12.5px; color:#444; line-height:1.85; margin-top:9px; padding-left:34px; position:relative; }
.apr-shonen-root .faq .a::before{ content:"A"; position:absolute; left:0; top:0; width:24px; height:24px;
  background:#fff; color:var(--ink); border:2px solid var(--ink); border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:900; }

/* ---------- ENTRY (見せゴマ #2) ---------- */
.apr-shonen-root .entry{ position:relative; margin:0 16px; border:7px solid var(--ink); box-shadow:10px 10px 0 var(--ink);
  overflow:hidden; text-align:center; padding:40px 24px 44px;
  background:
    radial-gradient(circle at 50% 50%, #fff 16%, rgba(255,255,255,.85) 32%, transparent 60%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='xMidYMid slice'%3E%3Cpath stroke='%23141414' stroke-width='1.1' d='M50 50L130 50M50 50L127 71M50 50L119 90M50 50L107 107M50 50L90 119M50 50L71 127M50 50L50 130M50 50L29 127M50 50L11 119M50 50L-7 107M50 50L-19 90M50 50L-27 71M50 50L-30 50M50 50L-27 29M50 50L-19 11M50 50L-7 -7M50 50L11 -19M50 50L29 -27M50 50L50 -30M50 50L71 -27M50 50L90 -19M50 50L107 -7M50 50L119 11M50 50L127 29'/%3E%3C/svg%3E") center/cover no-repeat,
    #fff; }
.apr-shonen-root .entry .kicker{ margin-bottom:16px; }
.apr-shonen-root .entry h2{ font-size:clamp(28px,5.4vw,46px); font-weight:900; color:var(--ink); margin-bottom:12px; letter-spacing:.02em; line-height:1.2; font-style:italic; }
.apr-shonen-root .entry h2 .en{ font-family:"Anton","Saira",sans-serif; font-weight:400; color:var(--red); font-size:.7em; letter-spacing:.04em; display:block; margin-bottom:2px; font-style:normal; }
.apr-shonen-root .entry .ph2{ font-size:16px; font-weight:800; color:#16161b; margin-bottom:6px; }
.apr-shonen-root .entry .meta{ font-size:12px; color:#555; margin-bottom:24px; }

@media(max-width:680px){
  .apr-shonen-root .cards{ grid-template-columns:1fr; }
  .apr-shonen-root .phases{ flex-direction:column; }   /* X22 項目10: PHASEカード縦積み */
  .apr-shonen-root .ph{ min-width:0; }
  .apr-shonen-root .req-grid{ grid-template-columns:1fr; }
  .apr-shonen-root .cast-grid{ grid-template-columns:1fr; }
  .apr-shonen-root .ph-arrow{ transform:rotate(90deg); }
}

/* =====================================================================
   robustness overrides — 旧X16残留 / enqueue フォント / 親テーマに確実に勝つ。
   旧デザインはカードが濃色背景で白文字だったため、白コマ上で不可視になる文字色を
   !important で固定する。デプロイで旧X16ブロックを置換すれば理論上不要だが、
   drift・取りこぼし対策として恒久的に残す（スコープ限定の上書きCSSとして妥当）。
   ===================================================================== */
.apr-shonen-root .hero, .apr-shonen-root .entry{ display:block !important; }
.apr-shonen-root .sec-h{ border:0 !important; color:#16161b !important; }
.apr-shonen-root .sec-h::after{ display:none !important; }
.apr-shonen-root .sec-h .kanji{ color:#AF3157 !important; }
.apr-shonen-root .hero .lead, .apr-shonen-root .hero .free{ color:#16161b !important; }
.apr-shonen-root .lead-h{ color:#AF3157 !important; }
.apr-shonen-root .about-body, .apr-shonen-root .about-body p{ color:#2b2b30 !important; }
.apr-shonen-root .cast-cap{ color:#16161b !important; }
.apr-shonen-root .mcard h3{ color:#141414 !important; }
.apr-shonen-root .mcard p{ color:#444 !important; }
.apr-shonen-root .mcard .em{ color:#AF3157 !important; }
.apr-shonen-root .mcard .no{ color:#fff !important; background:#AF3157 !important; }
.apr-shonen-root .req-block h3{ color:#fff !important; background:#141414 !important; }
.apr-shonen-root .req-block.must h3{ background:#AF3157 !important; }
.apr-shonen-root .req-list li{ color:#1c1c20 !important; }
.apr-shonen-root .treat .hl .big{ color:#AF3157 !important; }
.apr-shonen-root .treat .hl .ttl{ color:#16161b !important; }
.apr-shonen-root .treat .hl .note{ color:#555 !important; }
.apr-shonen-root .ph .pn{ color:#fff !important; background:#AF3157 !important; }
.apr-shonen-root .ph .pt{ color:#16161b !important; }
.apr-shonen-root .ph .pd{ color:#444 !important; }
.apr-shonen-root .ph .gate{ color:#AF3157 !important; }
.apr-shonen-root .ph-arrow{ color:#AF3157 !important; }
.apr-shonen-root .sel-foot{ color:#fff !important; background:#141414 !important; }
.apr-shonen-root .faq .q{ color:#16161b !important; }
.apr-shonen-root .faq .a{ color:#444 !important; }
.apr-shonen-root .entry h2{ color:#141414 !important; }
.apr-shonen-root .entry h2 .en{ color:#AF3157 !important; }
.apr-shonen-root .entry .ph2{ color:#16161b !important; }
.apr-shonen-root .entry .meta{ color:#555 !important; }
.apr-shonen-root .kicker{ color:#fff !important; background:#141414 !important; }

/* ---------- 書体: 源暎アンチックで全統一（見出し・本文・英字ラベルすべて） ---------- */
.apr-shonen-root,
.apr-shonen-root .sec-h, .apr-shonen-root .entry h2, .apr-shonen-root .entry h2 .en,
.apr-shonen-root .lead-h, .apr-shonen-root .mcard h3, .apr-shonen-root .mcard .no,
.apr-shonen-root .ph .pt, .apr-shonen-root .ph .pn, .apr-shonen-root .ph-arrow,
.apr-shonen-root .faq .q, .apr-shonen-root .hero h1, .apr-shonen-root .hero .tag,
.apr-shonen-root .kicker, .apr-shonen-root .cast-badge, .apr-shonen-root .sel-foot,
.apr-shonen-root .req-block h3{ font-family:"GenEiAntique","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif !important; }
/* 源暎アンチックは斜体を持たないため italic を解除（合成斜体の崩れ回避） */
.apr-shonen-root .sec-h, .apr-shonen-root .entry h2, .apr-shonen-root .lead-h,
.apr-shonen-root .mcard h3, .apr-shonen-root .ph .pt, .apr-shonen-root .faq .q,
.apr-shonen-root .req-block h3, .apr-shonen-root .cta{ font-style:normal !important; }
/* HERO h1「AUDITION」は旧CSSで text-fill:白だったため墨に固定 */
.apr-shonen-root .hero h1{ color:#141414 !important; -webkit-text-fill-color:#141414 !important; -webkit-text-stroke:0 !important; text-shadow:4px 4px 0 #AF3157 !important; }
.apr-shonen-root .hero h1 .num{ color:#AF3157 !important; -webkit-text-fill-color:#AF3157 !important; text-shadow:4px 4px 0 #141414 !important; }
.apr-shonen-root main{ overflow-x:hidden; }
/* X22(2026-06-11) 項目1: 親テーマ規則に負けて56pxに化けるのを防衛（clamp上限36px復帰）。keep-allで「ー」単独行落ち防止 */
.apr-shonen-root .sec-h{ font-size:clamp(24px,4.6vw,36px) !important; word-break:keep-all; }

/* =====================================================================
   漫画アニメーション（採用5種・2026-06-05）
   ② HERO集中線パルス / ④ コマ・スタンプイン(scroll) / 見出し横スライド(scroll)
   ⑨ CTA集中線バースト(hover) / ⑩ »ドドド前進
   scroll系は JS が .apr-shonen-root に .anim-on、対象に .is-in を付与。
   JS無効/prefers-reduced-motion時は通常表示（フォールバック安全）。
   ===================================================================== */

/* ② HERO 集中線パルス（::before=集中線アニメ / ::after=中心の白で潰しを軟化） */
.apr-shonen-root .hero{ background:#fff !important; }
.apr-shonen-root .hero::before{ content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='xMidYMid slice'%3E%3Cpath stroke='%23141414' stroke-width='1.1' d='M50 50L130 50M50 50L127 71M50 50L119 90M50 50L107 107M50 50L90 119M50 50L71 127M50 50L50 130M50 50L29 127M50 50L11 119M50 50L-7 107M50 50L-19 90M50 50L-27 71M50 50L-30 50M50 50L-27 29M50 50L-19 11M50 50L-7 -7M50 50L11 -19M50 50L29 -27M50 50L50 -30M50 50L71 -27M50 50L90 -19M50 50L107 -7M50 50L119 11M50 50L127 29'/%3E%3C/svg%3E") center/cover no-repeat;
  animation:apr-rays 2.8s ease-in-out infinite; will-change:transform,opacity; }
.apr-shonen-root .hero::after{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:radial-gradient(circle at 50% 50%, #fff 15%, rgba(255,255,255,.85) 30%, transparent 60%); }
.apr-shonen-root .hero > *{ position:relative; z-index:2; }
@keyframes apr-rays{ 0%,100%{opacity:.4;transform:scale(1) rotate(0deg)} 50%{opacity:.9;transform:scale(1.06) rotate(2deg)} }

/* ④ コマ・スタンプインは削除（オーナー指示 2026-06-05）。コマは通常表示。
   .is-in 機構は「見出し横スライド」「付箋スラップオン」用に維持。 */

/* 見出し 横スライドイン（スクロール出現） */
.apr-shonen-root.anim-on .sec-head{ opacity:0; }
.apr-shonen-root.anim-on .sec-head.is-in{ animation:apr-slide .5s ease-out forwards; }
@keyframes apr-slide{ 0%{transform:translateX(-40px);opacity:0} 100%{transform:translateX(0);opacity:1} }

/* ⑨ CTA ホバー: コマを“押し込む”プレスイン（赤い集中線バーストは廃止・2026-06-05 オーナー指示でダサさ解消）。
   ホバーで影方向へ3px沈み影を詰め、押下でさらに6px沈め影0＝完全に押し込んだ感触。回転は基底値を維持。 */
.apr-shonen-root .cta{ position:relative; z-index:2; transition:transform .12s ease, box-shadow .12s ease; }
.apr-shonen-root .cta:hover{ transform:rotate(-1.4deg) translate(3px,3px); box-shadow:3px 3px 0 var(--ink); }
.apr-shonen-root .cta:active{ transform:rotate(-1.4deg) translate(6px,6px); box-shadow:0 0 0 var(--ink); }

/* ⑩ »ドドド前進（選考フローの矢印） */
@media(min-width:681px){
  .apr-shonen-root .ph-arrow{ animation:apr-march 1.3s ease-in-out infinite; will-change:transform,opacity; }
}
@keyframes apr-march{ 0%{opacity:.3;transform:translateX(-5px)} 50%{opacity:1;transform:translateX(4px)} 100%{opacity:.3;transform:translateX(-5px)} }

/* 酔い防止: reduced-motion では常時アニメ停止（scroll系はJSが.anim-on未付与で通常表示） */
@media (prefers-reduced-motion: reduce){
  .apr-shonen-root .hero::before{ animation:none; opacity:.6; }
  .apr-shonen-root .ph-arrow{ animation:none; opacity:1; }
}

/* =====================================================================
   付箋アニメ（①ペタッ・スラップオン）— CAST「魂 募集中」バッジ（2026-06-05）
   CASTコマがスクロール出現(.is-in)した直後、募集中バッジがペタッと貼り付く。
   ===================================================================== */
.apr-shonen-root .cast-card{ overflow:visible; }   /* バッジの拡大/はみ出しを見せる */
.apr-shonen-root.anim-on .cast-badge{ opacity:0; }
.apr-shonen-root.anim-on .cast-card.is-in .cast-badge{
  animation:apr-fusen-slap .5s cubic-bezier(.2,.7,.3,1.35) .42s forwards; will-change:transform,opacity; }
@keyframes apr-fusen-slap{
  0%{ transform:translateX(-50%) scale(1.7) rotate(-9deg); opacity:0; }
  55%{ transform:translateX(-50%) scale(.9) rotate(-2deg); opacity:1; }
  75%{ transform:translateX(-50%) scale(1.05) rotate(-2deg); }
  100%{ transform:translateX(-50%) scale(1) rotate(-2deg); opacity:1; }
}
/* reduced-motion: バッジは通常表示（.anim-on未付与で opacity:1 のまま） */
/* hero-illust: TOPコンセプトイラスト（姉妹2人・2026-06-06追加） */
.apr-shonen-root .hero-illust{ display:block; width:auto; max-width:100%; max-height:320px; height:auto; margin:0 auto 14px; border:4px solid var(--ink); box-shadow:5px 5px 0 var(--ink); background:#fff; position:relative; z-index:2; }
/* =====================================================================
   X22(2026-06-11): 案A 桜ピンク化に伴う追加UI（オーナー指示 項目1,4,6,7,10）
   ⑥ 応募期間ピル（HERO） ④ 追従応募バー(#apr-fab21) ⑦ フッター明色化
   ===================================================================== */
/* ⑥ HERO 応募期間ピル（文言は subset 済みグリフのみ使用） */
.apr-shonen-root .hero .period{ display:block; width:fit-content; margin:2px auto 18px; background:#fff;
  border:2px solid var(--ink); box-shadow:3px 3px 0 var(--ink); font-size:13px; font-weight:800;
  color:#16161b; padding:5px 16px; letter-spacing:.08em; }
/* ④ 追従応募バー（X21 DOM差し替え後に functions.php X22 JS が body 直下へ生成） */
body.apr-audition .apr-fab21{ position:fixed; left:0; right:0; bottom:0; z-index:90; display:flex; justify-content:center;
  pointer-events:none; padding:10px 14px calc(14px + env(safe-area-inset-bottom,0px));
  transform:translateY(120%); transition:transform .28s ease; }
body.apr-audition .apr-fab21.is-visible{ transform:translateY(0); }
body.apr-audition .apr-fab21 .fabin{ pointer-events:auto; display:flex; align-items:center; gap:14px;
  background:#fff; border:3px solid #141414; box-shadow:5px 5px 0 #141414; padding:8px 12px 8px 18px; }
body.apr-audition .apr-fab21 .fabtxt{ font-size:12.5px; font-weight:800; color:#16161b; letter-spacing:.04em;
  font-family:"GenEiAntique","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif; }
body.apr-audition .apr-fab21 .fabbtn{ display:inline-block; background:#E5174A; color:#fff; font-weight:900; font-size:14px;
  letter-spacing:.06em; padding:10px 24px; border:3px solid #141414; box-shadow:4px 4px 0 #141414; text-decoration:none;
  font-family:"GenEiAntique","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  transition:transform .12s ease, box-shadow .12s ease; }
body.apr-audition .apr-fab21 .fabbtn:hover{ transform:translate(2px,2px); box-shadow:2px 2px 0 #141414; }
body.apr-audition .apr-fab21 .fabbtn:active{ transform:translate(4px,4px); box-shadow:0 0 0 #141414; }
@media(max-width:680px){
  body.apr-audition .apr-fab21 .fabin{ width:100%; justify-content:space-between; gap:10px; padding:8px 10px 8px 14px; }
  body.apr-audition .apr-fab21 .fabtxt{ font-size:11.5px; }
  body.apr-audition .apr-fab21 .fabbtn{ font-size:13px; padding:9px 18px; white-space:nowrap; }
}
/* ⑦ フッター: 旧ダーク(#070708)→桜ピンク台紙＋漫画罫線。親Tailwindの濃茶文字(#2a1b0a系)は明色地でそのまま可読 */
body.apr-audition footer{ background:#ffd9e6 !important; border-top:3px solid #141414 !important; }
/* X22b: フッター文字色 — body継承の薄クリーム(text-orange-50/90)がピンク地で不可視のため墨系へ上書き */
body.apr-audition footer, body.apr-audition footer p, body.apr-audition footer span, body.apr-audition footer div{ color:#4a2a35 !important; }
body.apr-audition footer h4{ color:#9B1437 !important; }
body.apr-audition footer a{ color:#4a2a35 !important; }
body.apr-audition footer a:hover{ color:#E5174A !important; }
body.apr-audition footer svg{ color:#4a2a35 !important; }
/* ===== /X21 ===== */


/* TOP hero: remove background focus-lines (::before) and collapse min-height (2026-06-06) */
.apr-shonen-root .hero::before{ display:none !important; }
.apr-shonen-root .hero{ min-height:0 !important; }


/* TOP hero v2: illust as background, overlay AUDITION/lead/CTA (2026-06-06) */
.apr-shonen-root .hero{ display:flex !important; flex-direction:column !important; justify-content:center !important; align-items:center !important; min-height:clamp(440px,50vw,560px) !important; padding:48px 24px !important; overflow:hidden !important; }
.apr-shonen-root .hero .hero-illust{ position:absolute !important; inset:0 !important; width:100% !important; height:100% !important; max-height:none !important; object-fit:cover !important; object-position:50% 22% !important; margin:0 !important; border:0 !important; z-index:0 !important; }
.apr-shonen-root .hero > :not(.hero-illust){ position:relative !important; z-index:2 !important; }
.apr-shonen-root .hero::after{ display:block !important; content:'\2009' !important; position:absolute !important; inset:0 !important; z-index:1 !important; background:radial-gradient(ellipse 60% 82% at 50% 47%,rgba(255,255,255,.82) 0%,rgba(255,255,255,.5) 50%,rgba(255,255,255,.06) 100%) !important; }


/* CAST: angel-halo hidden by badge -> push image down to reveal halo (2026-06-06) */
.apr-shonen-root .cast-card{ padding-top:40px !important; }


/* section headings: remove heavy blurry text-shadow for clarity (2026-06-06) */
.apr-shonen-root .sec-h{ text-shadow:none !important; }


/* ===== X22 mobile readability tune (2026-06-06) ===== */
/* (6) CTA: remove focus-line bg to match cleaned hero (all widths) */
body.apr-audition .apr-shonen-root .entry{ background-image:none !important; }

@media (max-width:760px){
  /* (1)(3) body text bigger + comfortable line-height */
  body.apr-audition .apr-shonen-root li,
  body.apr-audition .apr-shonen-root p:not([class]){ font-size:15px !important; line-height:1.8 !important; }
  body.apr-audition .apr-shonen-root .em{ font-size:inherit !important; }
  /* (1) tiny notes & eyebrow labels >=12px */
  body.apr-audition .apr-shonen-root small{ font-size:12px !important; }
  body.apr-audition .apr-shonen-root .kicker,
  body.apr-audition .apr-shonen-root .gate{ font-size:12px !important; }
  /* (2) section headings smaller + break only between marker and title */
  body.apr-audition .apr-shonen-root .sec-h{ font-size:26px !important; word-break:keep-all !important; }
  /* (4) hero title one line */
  body.apr-audition .apr-shonen-root .hero .en,
  body.apr-audition .apr-shonen-root .hero .num{ font-size:34px !important; }
}

/* ===== X25 hero: 文字を下げて顔・目を見せる (2026-06-06) ===== */
body.apr-audition .apr-shonen-root .hero{ justify-content:flex-end !important; padding-bottom:clamp(26px,5vw,44px) !important; }
/* === APR-HOME (Case D) START === */

/* ── 0. LOCAL TOKENS ── */
body.apr-home {
  --bg:        #fafafa;
  --bg-alt:    #f4f4f5;
  --ink:       #0a0a0b;
  --ink-soft:  #3f3f46;
  --ink-muted: #55555d;
  --red:       #E5174A;
  --white:     #ffffff;
  --border:    rgba(10,10,11,.10);
  --r:         2px;
  --f-head: 'Barlow Condensed', sans-serif;
  --f-jp:   'Zen Kaku Gothic New', sans-serif;
  --f-body: 'Noto Sans JP', sans-serif;
  --f-mono: 'JetBrains Mono', monospace;
  --maxw:   1220px;

  background: var(--bg);
  color: var(--ink);
  font-family: var(--f-body);
  font-size: 14px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

/* ── 1. GRAIN OVERLAY ── */
body.apr-home::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 9999;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");
  background-repeat: repeat;
  opacity: 0.4;
}

/* ── 2. HEADER (現状DOMクラス翻訳) ── */
body.apr-home .header {
  background: rgba(250,250,250,.92);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--border);
  height: 64px;
}
body.apr-home .header.is-stuck {
  background: rgba(250,250,250,.97);
  box-shadow: 0 1px 0 var(--border);
}

/* ロゴ (.brand) — 白背景・off-black */
body.apr-home .brand {
  font-family: var(--f-head);
  font-weight: 900;
  font-size: 21px;
  letter-spacing: .10em;
  text-transform: uppercase;
  color: var(--ink);
  display: flex;
  align-items: center;
  gap: 0;
  line-height: 1;
}
body.apr-home .brand b { font-weight: 900; }
/* .slash → 縦線区切り */
body.apr-home .brand .slash {
  display: inline-block;
  width: 1px;
  height: 16px;
  background: var(--ink);
  opacity: .3;
  margin: 0 4px;
  vertical-align: middle;
}

/* ナビリンク */
body.apr-home .nav a {
  font-family: var(--f-mono);
  font-weight: 700;
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ink-soft);
  transition: color .15s;
}
body.apr-home .nav a:hover { color: var(--red); }
body.apr-home .nav .nav__audition {
  color: var(--red);
  border: 1px solid rgba(229,23,74,.35);
  padding: 4px 10px;
  border-radius: var(--r);
  transition: background .15s, color .15s;
}
body.apr-home .nav .nav__audition:hover {
  background: var(--red);
  color: var(--white);
  border-color: var(--red);
}

/* SNS links in header — 枠線スタイル */
body.apr-home .nav__sns a {
  font-family: var(--f-mono);
  font-weight: 700;
  font-size: 11px;
  letter-spacing: .10em;
  text-transform: uppercase;
  color: var(--ink-soft);
  border: 1px solid var(--border);
  padding: 5px 10px;
  border-radius: var(--r);
  transition: background .15s, color .15s;
}
body.apr-home .nav__sns a:hover {
  background: var(--ink);
  color: var(--white);
  border-color: var(--ink);
}
/* SVGアイコンのサイズ調整 */
body.apr-home .nav__sns a svg { width: 14px; height: 14px; }

/* ハンバーガー */
body.apr-home .ham span { background: var(--ink); }

/* モバイルナビ */
body.apr-home .mobnav {
  background: rgba(250,250,250,.98);
  border-bottom: 1px solid var(--border);
}
body.apr-home .mobnav a {
  font-family: var(--f-mono);
  font-weight: 700;
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ink-soft);
}
body.apr-home .mobnav a:hover,
body.apr-home .mobnav a:focus { color: var(--red); }
body.apr-home .mobnav .mobnav__audition { color: var(--red); }
body.apr-home .mobnav__sns a {
  color: var(--ink-soft);
  border: 1px solid var(--border);
  padding: 4px 8px;
  border-radius: var(--r);
}
body.apr-home .mobnav__sns a svg { width: 14px; height: 14px; }

/* ── 3. HERO ── */
body.apr-home .hero {
  min-height: 100dvh;
  padding-top: 64px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
  position: relative;
  overflow: hidden;
}
body.apr-home .hero-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 28px 48px 28px 40px;
  max-width: 600px;
  position: relative;
  z-index: 2;
}
body.apr-home .hero-eyebrow {
  font-family: var(--f-mono);
  font-weight: 700;
  font-size: 11px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--ink-muted);
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 10px;
}
body.apr-home .hero-eyebrow::before {
  content: "";
  display: block;
  width: 28px;
  height: 2px;
  background: var(--red);
  flex-shrink: 0;
}
body.apr-home .hero h1 {
  font-family: var(--f-head);
  font-weight: 900;
  font-size: clamp(58px, 7.4vw, 112px);
  line-height: .9;
  letter-spacing: -.01em;
  text-transform: uppercase;
  color: var(--ink);
  margin-bottom: 14px;
}
body.apr-home .hero h1 span.line2 {
  display: block;
  color: var(--red);
}
body.apr-home .hero-est {
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: .20em;
  color: var(--ink-muted);
  margin-bottom: 12px;
}
body.apr-home .hero-catch {
  font-family: var(--f-jp);
  font-weight: 900;
  font-size: clamp(18px, 2.4vw, 26px);
  line-height: 1.35;
  color: var(--ink);
  margin-bottom: 8px;
}
body.apr-home .hero-catch .accent { color: var(--red); }
body.apr-home .hero-tag {
  font-family: var(--f-head);
  font-weight: 700;
  font-size: 13px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--ink-muted);
  margin-bottom: 22px;
}
body.apr-home .hero-cta-group {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
body.apr-home .btn-primary {
  font-family: var(--f-head);
  font-weight: 800;
  font-size: 14px;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: var(--red);
  color: var(--white);
  padding: 14px 28px;
  border-radius: var(--r);
  transition: background .15s;
  white-space: nowrap;
  box-shadow: 3px 3px 0 rgba(229,23,74,.18);
}
body.apr-home .btn-primary:hover { background: #c4113e; }
body.apr-home .btn-ghost {
  font-family: var(--f-head);
  font-weight: 700;
  font-size: 14px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--ink);
  border: 1.5px solid var(--ink);
  padding: 13px 24px;
  border-radius: var(--r);
  transition: background .15s, color .15s;
  white-space: nowrap;
}
body.apr-home .btn-ghost:hover {
  background: var(--ink);
  color: var(--white);
}
body.apr-home .hero-casting {
  margin-top: 16px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: .14em;
  color: var(--ink-muted);
}
body.apr-home .casting-dot {
  width: 6px;
  height: 6px;
  background: var(--red);
  border-radius: 50%;
  animation: aprh-pulse 2s ease-in-out infinite;
}
/* Hero right column */
body.apr-home .hero-visual {
  position: relative;
  background: var(--ink);
  overflow: hidden;
  min-height: 100%;
}
body.apr-home .hero-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 60% 70% at 50% 30%, rgba(229,23,74,.12) 0%, transparent 70%),
              radial-gradient(ellipse 80% 60% at 50% 80%, rgba(255,255,255,.04) 0%, transparent 60%);
  z-index: 1;
}
body.apr-home .hero-stage-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .65;
  display: block;
}
body.apr-home .hero-stage-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
  gap: 0;
}
body.apr-home .stage-label {
  position: absolute;
  bottom: 32px;
  left: 32px;
  z-index: 3;
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: .20em;
  text-transform: uppercase;
  color: rgba(255,255,255,.4);
}
body.apr-home .stage-lines {
  position: absolute;
  inset: 0;
  z-index: 2;
  overflow: hidden;
}
body.apr-home .stage-lines::before,
body.apr-home .stage-lines::after {
  content: "";
  position: absolute;
  width: 1px;
  background: linear-gradient(to bottom, transparent, rgba(229,23,74,.5) 40%, rgba(229,23,74,.15) 80%, transparent);
}
body.apr-home .stage-lines::before {
  left: 30%;
  top: 0; bottom: 0;
  transform: rotate(12deg) scaleX(1);
}
body.apr-home .stage-lines::after {
  left: 65%;
  top: 0; bottom: 0;
  transform: rotate(-8deg);
}
body.apr-home .silhouette-text {
  font-family: var(--f-head);
  font-weight: 900;
  font-size: clamp(40px, 8vw, 110px);
  letter-spacing: -.02em;
  text-transform: uppercase;
  color: rgba(255,255,255,.04);
  text-align: center;
  line-height: 1;
  user-select: none;
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 1;
}

/* ── 4. NEWS BELT ── */
body.apr-home .news-belt {
  background: var(--ink);
  border-top: 2px solid var(--ink);
  border-bottom: 2px solid var(--ink);
  padding: 0;
  overflow: hidden;
}
body.apr-home .news-belt-inner {
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 0 32px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: stretch;
  gap: 0;
}
body.apr-home .news-belt-label {
  font-family: var(--f-head);
  font-weight: 900;
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--white);
  padding: 18px 24px 18px 0;
  border-right: 1px solid rgba(255,255,255,.12);
  display: flex;
  align-items: center;
  white-space: nowrap;
}
body.apr-home .news-list {
  padding: 0 24px;
  display: flex;
  flex-direction: column;
  gap: 0;
  justify-content: center;
}
body.apr-home .news-item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 11px 0;
  border-bottom: 1px solid rgba(255,255,255,.07);
}
body.apr-home .news-item:last-child { border-bottom: none; }
body.apr-home .news-date {
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: .08em;
  color: rgba(255,255,255,.45);
  white-space: nowrap;
  flex-shrink: 0;
}
body.apr-home .news-tag {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--red);
  background: rgba(229,23,74,.15);
  padding: 2px 7px;
  border-radius: var(--r);
  white-space: nowrap;
  flex-shrink: 0;
}
body.apr-home .news-title {
  font-family: var(--f-jp);
  font-size: 13px;
  color: rgba(255,255,255,.82);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
body.apr-home .news-viewall {
  padding: 18px 0 18px 24px;
  border-left: 1px solid rgba(255,255,255,.12);
  display: flex;
  align-items: center;
}
body.apr-home .news-viewall a {
  font-family: var(--f-mono);
  font-weight: 700;
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255,255,255,.55);
  display: flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
  transition: color .15s;
}
body.apr-home .news-viewall a:hover { color: var(--red); }
body.apr-home .news-viewall a::after { content: "→"; font-family: inherit; }

/* ── 5. ABOUT ── */
body.apr-home .about-section {
  padding: 52px 0 48px;
  border-bottom: 1px solid var(--border);
}
body.apr-home .section-wrap {
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 0 40px;
}
body.apr-home .section-heading {
  font-family: var(--f-head);
  font-weight: 900;
  font-size: clamp(38px, 4.4vw, 58px);
  letter-spacing: -.01em;
  line-height: 1;
  text-transform: uppercase;
  color: var(--ink);
  margin-bottom: 26px;
}
body.apr-home .about-bento {
  display: grid;
  grid-template-columns: 1.55fr 1fr;
  grid-template-rows: auto auto;
  gap: 2px;
  margin-bottom: 20px;
}
body.apr-home .bento-main {
  grid-column: 1;
  grid-row: 1 / 3;
  background: var(--ink);
  color: var(--white);
  padding: 28px 30px;
  border-radius: var(--r);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 200px;
  position: relative;
  overflow: hidden;
}
body.apr-home .bento-main::before {
  content: "";
  position: absolute;
  top: -40px; right: -40px;
  width: 200px; height: 200px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(229,23,74,.18) 0%, transparent 70%);
  pointer-events: none;
}
body.apr-home .bento-main .lead {
  font-family: var(--f-jp);
  font-weight: 700;
  font-size: clamp(16px, 1.8vw, 20px);
  line-height: 1.55;
  color: var(--white);
  margin-bottom: 20px;
}
body.apr-home .bento-main .lead .accent { color: var(--red); }
body.apr-home .bento-main .body-text {
  font-family: var(--f-body);
  font-size: 13px;
  color: rgba(255,255,255,.62);
  line-height: 1.75;
}
body.apr-home .bento-main .body-text + .body-text { margin-top: 10px; }
body.apr-home .bento-sub {
  background: var(--bg-alt);
  padding: 28px 28px;
  border-radius: var(--r);
  display: flex;
  flex-direction: column;
  gap: 8px;
}
body.apr-home .bento-sub-tag {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--red);
}
body.apr-home .bento-sub-title {
  font-family: var(--f-jp);
  font-weight: 900;
  font-size: 15px;
  line-height: 1.3;
  color: var(--ink);
}
body.apr-home .bento-sub-body {
  font-family: var(--f-body);
  font-size: 12.5px;
  color: var(--ink-soft);
  line-height: 1.70;
}
body.apr-home .about-details {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
}
body.apr-home .detail-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--r);
  padding: 18px 20px 18px 18px;
  border-left: 3px solid var(--red);
}
body.apr-home .detail-title {
  font-family: var(--f-jp);
  font-weight: 900;
  font-size: 13px;
  color: var(--ink);
  margin-bottom: 8px;
}
body.apr-home .detail-body {
  font-family: var(--f-body);
  font-size: 12px;
  color: var(--ink-soft);
  line-height: 1.70;
}

/* ── 6. TALENTS ── */
body.apr-home .talents-section {
  padding: 48px 0;
  border-bottom: 1px solid var(--border);
}
body.apr-home .talents-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin-bottom: 26px;
}
body.apr-home .talent-card {
  background: var(--white);
  border: 3px solid var(--ink);
  border-radius: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 7px 7px 0 var(--ink);
  transition: transform .15s ease, box-shadow .15s ease;
}
body.apr-home .talent-card:hover {
  transform: translate(-2px, -2px);
  box-shadow: 9px 9px 0 var(--red);
}
body.apr-home .talent-img-wrap {
  background: #f1efe9;
  position: relative;
  overflow: hidden;
  aspect-ratio: 4 / 5;
  border-bottom: 3px solid var(--ink);
}
body.apr-home .talent-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
  display: block;
}
body.apr-home .talent-coming-soon {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(160deg, #111 0%, var(--ink) 100%);
}
body.apr-home .talent-coming-soon span {
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(255,255,255,.25);
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
body.apr-home .talent-info {
  padding: 18px 20px 20px;
  display: flex;
  flex-direction: column;
  gap: 7px;
}
body.apr-home .talent-badge {
  align-self: flex-start;
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #fff;
  background: var(--red);
  padding: 3px 9px;
}
body.apr-home .talent-name-ja {
  font-family: var(--f-jp);
  font-weight: 900;
  font-size: clamp(20px, 2.4vw, 28px);
  line-height: 1.1;
  /* タレント名を SECTION 04 Audition のブランド赤に（オーナー指示 2026-06-10） */
  color: #E5174A;
}
body.apr-home .talent-name-en {
  font-family: var(--f-head);
  font-weight: 700;
  font-size: 13px;
  letter-spacing: .10em;
  text-transform: uppercase;
  color: var(--ink-muted);
}
body.apr-home .talent-quote {
  font-family: var(--f-jp);
  font-size: 12.5px;
  color: var(--ink-soft);
  line-height: 1.65;
  margin-top: 4px;
  padding-top: 12px;
  border-top: 1px solid var(--border);
}
body.apr-home .talent-coming-label {
  font-family: var(--f-jp);
  font-size: 12.5px;
  color: var(--ink-muted);
  line-height: 1.65;
  margin-top: 4px;
  padding-top: 12px;
  border-top: 1px solid var(--border);
}
body.apr-home .talents-cap {
  text-align: center;
  font-family: var(--f-jp);
  font-size: 13px;
  color: var(--ink-muted);
  margin: 6px 0 18px;
  letter-spacing: .04em;
}
body.apr-home .talents-footer { text-align: center; }

/* ── 7. AUDITION BANNER ── */
body.apr-home .audition-section {
  padding: 44px 0 48px;
}
body.apr-home .audition-banner {
  background: var(--ink);
  border-radius: var(--r);
  padding: 40px 48px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 40px;
  position: relative;
  overflow: hidden;
}
body.apr-home .audition-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(229,23,74,.10) 0%, transparent 50%);
  pointer-events: none;
}
body.apr-home .audition-banner::after {
  content: "";
  position: absolute;
  top: -10%; left: 38%;
  width: 1px; height: 130%;
  background: linear-gradient(to bottom, transparent, rgba(229,23,74,.35) 40%, rgba(229,23,74,.10) 80%, transparent);
  transform: rotate(15deg);
  pointer-events: none;
}
body.apr-home .audition-text-wrap { position: relative; z-index: 2; }
body.apr-home .audition-eyebrow {
  font-family: var(--f-mono);
  font-weight: 700;
  font-size: 11px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--red);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
}
body.apr-home .audition-eyebrow::before {
  content: "";
  display: block;
  width: 20px; height: 1px;
  background: var(--red);
  flex-shrink: 0;
}
body.apr-home .audition-title {
  font-family: var(--f-head);
  font-weight: 900;
  font-size: clamp(40px, 5.5vw, 76px);
  letter-spacing: -.01em;
  line-height: .95;
  text-transform: uppercase;
  color: var(--white);
  margin-bottom: 16px;
}
body.apr-home .audition-title .line2 {
  display: block;
  color: var(--red);
  font-style: italic;
}
body.apr-home .audition-lead {
  font-family: var(--f-jp);
  font-size: 14px;
  color: rgba(255,255,255,.62);
  margin-bottom: 10px;
  line-height: 1.6;
}
body.apr-home .audition-period {
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: .10em;
  color: rgba(255,255,255,.40);
}
body.apr-home .audition-cta-wrap {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: flex-end;
  position: relative;
  z-index: 2;
  flex-shrink: 0;
}
body.apr-home .btn-stage {
  font-family: var(--f-head);
  font-weight: 900;
  font-size: 15px;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: var(--red);
  color: var(--white);
  padding: 16px 36px;
  border-radius: var(--r);
  white-space: nowrap;
  transition: background .15s;
  box-shadow: 4px 4px 0 rgba(229,23,74,.22);
}
body.apr-home .btn-stage:hover { background: #c4113e; }
body.apr-home .btn-secondary-light {
  font-family: var(--f-head);
  font-weight: 700;
  font-size: 13px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(255,255,255,.55);
  border: 1px solid rgba(255,255,255,.18);
  padding: 12px 28px;
  border-radius: var(--r);
  white-space: nowrap;
  transition: border-color .15s, color .15s;
}
body.apr-home .btn-secondary-light:hover {
  border-color: rgba(255,255,255,.50);
  color: var(--white);
}

/* ── 8. SHARED UTIL ── */
body.apr-home .link-underline {
  font-family: var(--f-mono);
  font-weight: 700;
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ink);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-bottom: 1.5px solid var(--ink);
  padding-bottom: 2px;
  transition: color .15s, border-color .15s;
}
body.apr-home .link-underline:hover {
  color: var(--red);
  border-color: var(--red);
}
body.apr-home .link-underline::after { content: "→"; }

/* ── 9. FOOTER (現状DOMクラス翻訳) ── */
body.apr-home .ft {
  background: var(--ink);
  color: rgba(255,255,255,.45);
}
body.apr-home .ft__inner {
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 0 40px;
}
body.apr-home .ft__top {
  display: flex;
  gap: 48px;
  padding: 32px 0 24px;
  border-bottom: 1px solid rgba(255,255,255,.10);
}
body.apr-home .ft__top h4 {
  font-family: var(--f-mono);
  font-weight: 700;
  font-size: 10px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(255,255,255,.35);
  margin-bottom: 14px;
}
body.apr-home .ft__lk {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
body.apr-home .ft__lk a {
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: .10em;
  text-transform: uppercase;
  color: rgba(255,255,255,.55);
  transition: color .15s;
}
body.apr-home .ft__lk a:hover { color: var(--white); }
body.apr-home .ft__cp {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 20px 0;
  flex-wrap: wrap;
}
body.apr-home .ft__cp span {
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: .12em;
  color: rgba(255,255,255,.35);
}
body.apr-home .ft__sns {
  display: flex;
  align-items: center;
  gap: 12px;
}
body.apr-home .ft__sns a {
  color: rgba(255,255,255,.35);
  transition: color .15s;
}
body.apr-home .ft__sns a:hover { color: rgba(255,255,255,.8); }
body.apr-home .ft__sns a svg { width: 16px; height: 16px; }

/* ── 10. KEYFRAMES (aprh- 接頭辞) ── */
@keyframes aprh-pulse {
  0%,100% { opacity: 1; }
  50%      { opacity: 0.3; }
}

/* ── 11. RESPONSIVE ── */
@media (max-width: 960px) {
  body.apr-home .hero {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  body.apr-home .hero-text {
    padding: 100px 28px 48px;
    max-width: 100%;
  }
  body.apr-home .hero-visual { height: 280px; }
  body.apr-home .about-bento {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }
  body.apr-home .bento-main { grid-row: auto; }
  body.apr-home .about-details { grid-template-columns: 1fr; }
  body.apr-home .talents-grid { grid-template-columns: 1fr; }
  body.apr-home .talent-card { grid-template-columns: 140px 1fr; }
  body.apr-home .news-belt-inner {
    grid-template-columns: 1fr;
    padding: 0 20px;
  }
  body.apr-home .news-belt-label {
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,.12);
    padding: 16px 0 12px;
  }
  body.apr-home .news-list { padding: 0; }
  body.apr-home .news-viewall {
    border-left: none;
    border-top: 1px solid rgba(255,255,255,.12);
    padding: 12px 0 16px;
  }
  body.apr-home .audition-banner {
    grid-template-columns: 1fr;
    padding: 40px 28px;
  }
  body.apr-home .audition-cta-wrap {
    align-items: flex-start;
    flex-direction: row;
    flex-wrap: wrap;
  }
  body.apr-home .section-wrap { padding: 0 20px; }
  body.apr-home .ft__top { gap: 32px; flex-wrap: wrap; }
}

@media (max-width: 600px) {
  body.apr-home .nav { gap: 18px; }
  body.apr-home .nav a { font-size: 10px; }
  body.apr-home .nav__sns { display: none; }
  body.apr-home .talent-card { grid-template-columns: 1fr; }
  body.apr-home .talent-img-wrap { min-height: 160px; }
  body.apr-home .ft__inner { padding: 0 20px; }
}

@media (prefers-reduced-motion: reduce) {
  body.apr-home .casting-dot { animation: none; }
}

/* === APR-HOME LIVE-MARKUP CONTRAST FIX START === */
/* 原テーマはダーク前提（:root の --ink/--muted/--line は明色＝暗背景向け）。
   apr-home は明キャンバスなので、継承トークンを暗文字版へ再定義する。
   body.apr-audition とは排他のため /audition には一切波及しない。 */
body.apr-home {
  --muted:       #4a4a52;
  --line:        rgba(10, 10, 11, .14);
  --line-strong: rgba(10, 10, 11, .28);
}

/* HERO (opera) — ハードコードの白／金を暗文字へ */
body.apr-home .hero__sep { color: var(--muted); }
body.apr-home .hero__sep::before,
body.apr-home .hero__sep::after { background: var(--red); opacity: .5; }
body.apr-home .hero__opera .btm { color: var(--ink); }
body.apr-home .hero__catch { color: var(--ink); text-shadow: none; }
body.apr-home .hero--opera .hero__tag-en { color: var(--muted); }
body.apr-home .hero__scroll { color: var(--muted); }
body.apr-home .hero__scroll .line { background: linear-gradient(to bottom, transparent, var(--ink)); }

/* NEWS */
body.apr-home .sec__tt { color: var(--ink); }
body.apr-home .sec__bg-num { color: rgba(10, 10, 11, .05); }
body.apr-home .news__title { color: var(--ink); }
body.apr-home .news__item:hover .news__title { color: var(--red); }

/* ABOUT */
body.apr-home .about__lead { color: var(--ink); }
body.apr-home .pillar__t { color: var(--ink); }
body.apr-home .detail-card__t { color: var(--ink); }

/* HOME AUDITION バナーは自前のダーク地パネル（radial-gradient）。
   この島の中だけ継承トークンを明色へ戻し、白文字基調を維持する。
   （ハードコードの #fff 系はそのまま効くので個別上書きはしない） */
body.apr-home .aud-banner {
  --muted:       rgba(255, 255, 255, .6);
  --line:        rgba(255, 255, 255, .12);
  --line-strong: rgba(255, 255, 255, .22);
}

/* FOOTER ＆ ダーク前提の白ホバー → 明キャンバスでは赤 */
body.apr-home .ft__br { color: var(--ink); }
body.apr-home .nav a:hover,
body.apr-home .nav__sns a:hover,
body.apr-home .ft__lk a:hover,
body.apr-home .ft__sns a:hover { color: var(--red); }

/* HERO 主CTA — 旧塗りは ::before{z-index:-1} で明背景では沈み不可視。塗りを a 本体へ移す */
body.apr-home .hero__cta-primary { background: var(--red); color: #fff; }
body.apr-home .hero__cta-primary::before { display: none; }
body.apr-home .hero__cta-primary:hover { filter: brightness(1.08); }

/* HERO ステータスピル（NOW CASTING）— 半透明だと明背景で沈むため濃地に */
body.apr-home .hero--opera .hero__audition-meta {
  background: var(--ink);
  border-color: rgba(255, 255, 255, .16);
  color: rgba(255, 255, 255, .82);
}
/* About を短くシンプルに（オーナー指示 2026-06-08）: 本文はACFに保持し表示のみ簡素化 */
body.apr-home .about__pillars { display: none; }
/* === APR-HOME LIVE-MARKUP CONTRAST FIX END === */

/* === APR-HOME (Case D) END === */


/* ============================================================
   オープニング演出・四隅暗転の無効化（オーナー指示 2026-06-10）
   「少し画面のはじが暗くなるアニメーション」を削除:
   (1) 緞帳オープニング(#curtain) — 表示停止＋スクロールロック解除
   (2) 3-Actスクロール演出の四隅ヴィネット(.ad-overlay) — トップのみ停止
   (3) リプレイ操作ボタン(.curtain-replay / .ad-replay) — トップのみ非表示
   いずれも display:none ＝可逆（本ブロック削除で復活）。/audition は不変。
   ============================================================ */
#curtain, .curtain { display: none !important; }
html body.curtain-lock { overflow: auto !important; height: auto !important; }
.curtain-replay { display: none !important; }
body.apr-home .ad-overlay { display: none !important; }
body.apr-home .bg-vignette { display: none !important; }
body.apr-home .ad-replay { display: none !important; }

/* ============================================================
   セクション見出しを metatropi 風に統一（オーナー指示 2026-06-10 / 承認: 黒タイトル＋赤アクセント）
   小さく不統一だった見出しを「赤 eyebrow（SECTION 0X＋バー）＋大きな英字タイトル＋和文サブ」で4セクション統一。ブランド赤=#E5174A。サイズ/色/擬似要素のみ＝可逆。
   ============================================================ */
body.apr-home .sec__lb,
body.apr-home #talents .section-heading {
  font-family: var(--f-h);
  font-weight: 900;
  font-style: italic;
  font-size: clamp(40px, 7vw, 68px);
  line-height: .96;
  letter-spacing: .005em;
  text-transform: uppercase;
  color: var(--ink);
  margin: 0;
}
body.apr-home .sec__num { color: #E5174A; letter-spacing: .26em; }
body.apr-home .sec__num::before { background: #E5174A; }
body.apr-home #talents .sec__num { margin-bottom: 12px; }
body.apr-home .sec__lb::after,
body.apr-home #talents .section-heading::after {
  display: block;
  font-family: var(--f-jp);
  font-weight: 700;
  font-style: normal;
  font-size: 13px;
  letter-spacing: .24em;
  color: var(--ink);
  opacity: .58;
  margin-top: 8px;
  text-transform: none;
}
body.apr-home #news .sec__lb::after { content: "お知らせ"; }
body.apr-home #about .sec__lb::after { content: "私たちについて"; }
body.apr-home #audition .sec__lb::after { content: "オーディション"; }
body.apr-home #talents .section-heading::after { content: "所属タレント"; }
body.apr-home .sec__bg-num { color: rgba(229, 23, 74, .06); font-style: italic; }

/* ===================== X27 — APR-HOME OXBLOOD CUT HERO (2026-06-19) =====================
   既存トップヒーロー(.hero.hero--opera)を body.apr-home スコープのCSSのみでOXBLOOD CUT化。
   マークアップ/フォント(Barlow/Shippori Mincho/JetBrains Mono)/シルエット画像は再利用。
   ブロック削除のみで完全復帰(可逆)。/audition(apr-home非該当)には一切影響しない。
   ===================================================================================== */
body.apr-home .hero{background:#e9e4da !important;position:relative !important;min-height:560px !important;overflow:hidden !important;display:block !important;text-align:left !important}
body.apr-home .hero::before,body.apr-home .hero::after{content:none !important;background:none !important;box-shadow:none !important;opacity:0 !important}
body.apr-home .hero__silhouette-wrap{position:absolute !important;top:0 !important;right:0 !important;bottom:0 !important;left:auto !important;width:62% !important;height:100% !important;background:#7a0e26 !important;clip-path:polygon(34% 0,100% 0,100% 100%,12% 100%) !important;z-index:1 !important;opacity:1 !important;display:flex !important;align-items:flex-end !important;justify-content:center !important;overflow:hidden !important}
body.apr-home .hero__silhouette-wrap::before{content:"A" !important;position:absolute;right:13%;top:2%;font-family:"Shippori Mincho",serif;font-weight:800;font-size:clamp(220px,46vh,360px);line-height:.7;color:rgba(255,255,255,.10);z-index:0;pointer-events:none}
body.apr-home .hero__silhouette-img{position:relative !important;z-index:2 !important;width:auto !important;max-width:92% !important;height:84% !important;object-fit:contain !important;object-position:bottom !important;filter:brightness(.18) contrast(1.05) !important;opacity:.95 !important;margin:0 8% 0 0 !important;animation:none !important;transform:none !important}
body.apr-home .hero__inner{position:absolute !important;left:6% !important;top:0 !important;bottom:0 !important;width:48% !important;display:flex !important;flex-direction:column !important;align-items:flex-start !important;justify-content:center !important;text-align:left !important;gap:0 !important;z-index:5 !important}
body.apr-home .hero__inner .hero__sep{font-family:"JetBrains Mono",monospace !important;font-size:11px !important;letter-spacing:.3em !important;color:rgba(26,23,20,.55) !important;margin:0 0 14px 0 !important}
body.apr-home .hero__inner .hero__sep:nth-of-type(2){display:none !important}
body.apr-home .hero__opera{margin:0 0 18px 0 !important;transform:skewX(-9deg);text-align:left !important}
body.apr-home .hero__opera .top{font-size:40px !important;color:#1a1714 !important;letter-spacing:-.01em !important}
body.apr-home .hero__opera .btm{font-size:17px !important;letter-spacing:.26em !important;color:#1a1714 !important;margin-top:2px}
body.apr-home .hero__catch{font-size:clamp(30px,3.4vw,42px) !important;line-height:1.24 !important;letter-spacing:-.01em !important;color:#1a1714 !important;margin:0 0 14px 0 !important;text-align:left !important}
body.apr-home .hero__catch em{color:#9b0f33 !important}
body.apr-home .hero__tag-en{font-size:11px !important;letter-spacing:.24em !important;color:#9b0f33 !important;margin:0 0 24px 0 !important;text-align:left !important}
body.apr-home .hero__audition{display:flex !important;flex-direction:column !important;align-items:flex-start !important;gap:16px !important;margin:0 !important}
body.apr-home .hero__audition-meta{font-family:"JetBrains Mono",monospace !important;font-size:11px !important;letter-spacing:.16em !important;color:rgba(26,23,20,.7) !important}
body.apr-home .hero__cta{display:flex !important;align-items:center !important;gap:22px !important}
body.apr-home .hero__cta-primary{background:#1a1714 !important;color:#fff !important;border-radius:0 !important;clip-path:polygon(0 0,100% 0,100% 100%,15px 100%,0 calc(100% - 15px)) !important;padding:14px 28px !important}
body.apr-home .btn--ghost{color:rgba(26,23,20,.6) !important;border-bottom:2px solid #9b0f33 !important;border-radius:0 !important;padding:4px 0 6px !important}
@media (max-width:760px){
body.apr-home .hero{display:flex !important;flex-direction:column !important;min-height:auto !important;overflow:hidden !important;padding:84px 0 0 !important}
body.apr-home .hero__inner{position:relative !important;left:0 !important;top:0 !important;bottom:auto !important;width:100% !important;padding:0 7% 22px !important;order:1 !important;justify-content:flex-start !important}
body.apr-home .hero__silhouette-wrap{position:relative !important;width:100% !important;height:320px !important;clip-path:polygon(0 12%,100% 0,100% 100%,0 100%) !important;order:2 !important}
body.apr-home .hero__silhouette-wrap::before{font-size:200px !important;right:8% !important}
body.apr-home .hero__opera .top{font-size:34px !important}
body.apr-home .hero__opera .btm{font-size:15px !important}
body.apr-home .hero__catch{font-size:28px !important}
}
/* ===================== /X27 APR-HOME OXBLOOD CUT HERO ===================== */

/* ======================================================================
   X28v2 — APR-HOME TALENTS (showcase art + 魂/中の人 募集) / OXBLOOD
   立ち絵は隠さず額装。応募CTAは置かず軽いsignpostのみ(本線=SECTION 04/audition)
   ====================================================================== */
body.apr-home #talents{background:#e9e4da !important;overflow:hidden !important}
body.apr-home #talents .sec__num{color:#9b0f33 !important}
body.apr-home #talents .section-heading{color:#1a1714 !important;margin-bottom:6px !important}
body.apr-home #talents .section-heading::after{content:"― 魂を待つ、二人。 ―" !important;display:block !important;font-family:"Shippori Mincho",serif !important;font-weight:700 !important;font-style:normal !important;font-size:22px !important;letter-spacing:.06em !important;text-transform:none !important;color:#1a1714 !important;opacity:1 !important;margin:10px 0 30px !important}
body.apr-home #talents .talents-grid{grid-template-columns:1fr 1fr !important;gap:6% !important;align-items:flex-end !important;max-width:860px !important;margin:0 0 22px !important}
body.apr-home #talents .talent-card{background:transparent !important;display:block !important;position:relative !important;box-shadow:none !important;border:0 !important}
body.apr-home #talents .talent-card:nth-child(2){transform:translateY(-30px) !important}
/* keep the real art — frame it in a wine slanted panel */
body.apr-home #talents .talent-img-wrap{position:relative !important;height:390px !important;background:#7a0e26 !important;clip-path:polygon(0 0,100% 0,100% 100%,13% 100%) !important;overflow:hidden !important;border:0 !important}
body.apr-home #talents .talent-card:nth-child(2) .talent-img-wrap{clip-path:polygon(0 0,100% 0,87% 100%,0 100%) !important}
body.apr-home #talents .talent-img-wrap img{width:100% !important;height:100% !important;object-fit:cover !important;object-position:top center !important;display:block !important}
/* SOUL/中の人 status badge (corner, never covers the face) */
body.apr-home #talents .talent-img-wrap::after{content:"魂 UNCAST ／ 中の人 募集中" !important;position:absolute !important;left:0 !important;bottom:0 !important;background:#1a1714 !important;color:#fff !important;font-family:"JetBrains Mono",monospace !important;font-size:10px !important;font-weight:700 !important;letter-spacing:.1em !important;padding:8px 12px !important;z-index:3 !important;clip-path:polygon(0 0,100% 0,100% 100%,10px 100%,0 calc(100% - 0px)) !important}
/* info */
body.apr-home #talents .talent-info{padding:14px 0 0 !important;text-align:left !important}
body.apr-home #talents .talent-badge{font-family:"JetBrains Mono",monospace !important;font-size:10px !important;letter-spacing:.14em !important;color:rgba(26,23,20,.55) !important;background:none !important;padding:0 !important;display:block !important}
body.apr-home #talents .talent-name-ja{font-family:"Shippori Mincho",serif !important;font-weight:700 !important;font-size:26px !important;color:#9b0f33 !important;margin:5px 0 2px !important;letter-spacing:.05em !important}
body.apr-home #talents .talent-name-en{font-family:"JetBrains Mono",monospace !important;font-size:10px !important;letter-spacing:.18em !important;color:rgba(26,23,20,.5) !important;text-transform:uppercase !important;margin:0 !important}
body.apr-home #talents .talent-coming-label{font-family:"JetBrains Mono",monospace !important;font-size:10px !important;letter-spacing:.08em !important;color:#9b0f33 !important;margin:6px 0 0 !important}
/* caption */
body.apr-home #talents .talents-cap{text-align:left !important;font-family:"Shippori Mincho",serif !important;font-weight:700 !important;font-size:16px !important;letter-spacing:.06em !important;color:#1a1714 !important;margin:8px 0 14px !important}
/* footer : subtle signpost only (no heavy apply CTA — that lives in SECTION 04) */
body.apr-home #talents .talents-footer{text-align:left !important}
body.apr-home #talents .talents-footer .link-underline{font-family:"JetBrains Mono",monospace !important;font-size:11px !important;letter-spacing:.14em !important;color:#1a1714 !important;text-decoration:none !important;border-bottom:2px solid #9b0f33 !important;padding-bottom:3px !important}
@media (max-width:760px){
  body.apr-home #talents .talents-grid{grid-template-columns:1fr !important;gap:18px !important;max-width:none !important}
  body.apr-home #talents .talent-card:nth-child(2){transform:none !important}
  body.apr-home #talents .talent-img-wrap{height:340px !important;clip-path:polygon(0 0,100% 0,100% 100%,8% 100%) !important}
  body.apr-home #talents .section-heading::after{font-size:18px !important}
}
/* ====================== /X28v2 ====================== */

/* ======================================================================
   X29 — APR-HOME 色味統一（OXBLOODパレットを全セクションへ）
   明セクションの地を骨白#e9e4daへ、明赤#E5174A系のアクセントを
   クリムゾン#9b0f33へ統一。暗い島(audition-banner/footer)は温存。可逆。
   ====================================================================== */
body.apr-home{background:#e9e4da !important}
body.apr-home #news,body.apr-home #about,body.apr-home #audition{background:#e9e4da !important}
body.apr-home .sec__num{color:#9b0f33 !important}
body.apr-home .sec__num::before{background:#9b0f33 !important}
body.apr-home .sec__bg-num{color:rgba(155,15,51,.07) !important}
body.apr-home .news-tag{background:rgba(155,15,51,.14) !important;color:#9b0f33 !important}
body.apr-home .nav .nav__audition{border-color:rgba(155,15,51,.4) !important}
/* ====================== /X29 ====================== */

/* ======================================================================
   X30 — APR-HOME デザイン統一（他セクションをHERO/TALENTSのOXBLOOD語彙へ）
   ABOUT見出しを明朝化、NEWSタグをクリムゾンのカット角チップ＋モノ、
   日付モノ、行に細罫＋ホバーでワイン、ABOUT3本柱にワイン左罫、
   AUDITION CTAをカット角に。色味X29に続くデザイン面の寄せ。可逆。
   ====================================================================== */
body.apr-home #about .about__lead{font-family:"Shippori Mincho",serif !important;font-weight:700 !important;letter-spacing:.04em !important;line-height:1.55 !important}
body.apr-home .news__cat{background:#9b0f33 !important;color:#fff !important;border-radius:0 !important;font-family:"JetBrains Mono",monospace !important;font-size:10px !important;letter-spacing:.1em !important;padding:5px 11px !important;clip-path:polygon(0 0,100% 0,100% 100%,7px 100%,0 calc(100% - 7px)) !important}
body.apr-home .news__item{border-bottom:1px solid rgba(26,23,20,.14) !important;border-radius:0 !important;transition:background .2s !important}
body.apr-home .news__item:hover{background:rgba(122,14,38,.05) !important}
body.apr-home .news__date{font-family:"JetBrains Mono",monospace !important;color:rgba(26,23,20,.5) !important}
body.apr-home .pillar{border-left:3px solid #7a0e26 !important;border-radius:0 !important;padding-left:14px !important}
body.apr-home .aud-banner__cta{border-radius:0 !important;clip-path:polygon(0 0,100% 0,100% 100%,14px 100%,0 calc(100% - 14px)) !important}
/* ====================== /X30 ====================== */

/* ======================================================================
   X31 — APR-HOME セクション地色リズム（案A 交互）でメリハリ
   ABOUT=墨#1a1714(白文字の宣言)、AUDITION=ワイン#7a0e26(黒いCTA島が映える)。
   明地(HERO/NEWS/TALENTS)と交互に並べ明暗のリズムを作る。可逆。
   ====================================================================== */
/* ABOUT = dark ink island */
body.apr-home #about{background:#1a1714 !important}
body.apr-home #about .sec__lb{color:#f3efe8 !important}
body.apr-home #about .sec__lb::after{color:rgba(243,239,232,.55) !important}
body.apr-home #about .sec__num{color:#c7203f !important}
body.apr-home #about .sec__num::before{background:#c7203f !important}
body.apr-home #about .sec__bg-num{color:rgba(199,32,63,.14) !important}
body.apr-home #about .about__lead{color:#f3efe8 !important}
body.apr-home #about .about__copy,body.apr-home #about .about__copy *{color:rgba(243,239,232,.72) !important}
body.apr-home #about .pillar{border-left-color:#d9aa44 !important}
body.apr-home #about .pillar,body.apr-home #about .pillar *{color:#f3efe8 !important}
/* AUDITION = wine island + near-black CTA banner */
body.apr-home #audition{background:#7a0e26 !important}
body.apr-home #audition .sec__lb{color:#f3efe8 !important}
body.apr-home #audition .sec__lb::after{color:rgba(243,239,232,.6) !important}
body.apr-home #audition .sec__num{color:#e9c46a !important}
body.apr-home #audition .sec__num::before{background:#e9c46a !important}
body.apr-home #audition .sec__bg-num{color:rgba(243,239,232,.08) !important}
body.apr-home #audition .aud-banner__bg{background:#0f0d10 !important}
body.apr-home #audition .aud-banner{box-shadow:0 0 0 1px rgba(243,239,232,.12) !important}
/* ====================== /X31 ====================== */

/* ======================================================================
   X32 — APR-HOME フッターをコンパクト化
   上パディング100px・ft__top下マージン64px等を詰め高さ482→約216px。列・コピー・SNSは維持。可逆。
   ====================================================================== */
body.apr-home footer.ft{padding:40px 56px 22px !important}
body.apr-home footer.ft .ft__top{margin-bottom:22px !important;padding:12px 0 14px !important}
body.apr-home footer.ft .ft__cp{padding:12px 0 0 !important}
/* ====================== /X32 ====================== */

/* ======================================================================
   X33 — 不具合修正（Talents立ち絵のガタガタ＋横スクロール）
   ①X28v2のclip-path斜めカット＋translateYオフセットが、不透明な実立ち絵を
     斜めに切り高さ違いでガタガタにしていた → 斜めカット除去・オフセット解除・
     同一高さ430px・クリーン額装(薄枠＋下4pxワイン)で2枚を揃える。
   ②巨大透かし番号 .sec__bg-num が右に約23pxはみ出し横スクロール発生 →
     対象セクションを overflow-x:clip で内側にクリップ。可逆。
   ====================================================================== */
body.apr-home #talents .talent-card:nth-child(2){transform:none !important}
body.apr-home #talents .talents-grid{align-items:start !important}
body.apr-home #talents .talent-img-wrap,body.apr-home #talents .talent-card:nth-child(2) .talent-img-wrap{clip-path:none !important;height:430px !important;background:#efe9dd !important;border:1px solid rgba(26,23,20,.16) !important;border-bottom:4px solid #7a0e26 !important;border-radius:0 !important}
body.apr-home #talents .talent-img-wrap img{object-fit:cover !important;object-position:top center !important}
body.apr-home #news,body.apr-home #about,body.apr-home #audition,body.apr-home .talents-section{overflow-x:clip !important}
/* ====================== /X33 ====================== */

/* ===== ALTER AUDITION PALETTE-A PAPER v1 [X34] ===== */
body.apr-audition{background:#ECE4D1 !important}
body.apr-audition .apr-shonen-root{--pa:#ECE4D1;--pa2:#E4DAC2;--card:#F3EDDF;--ink:#1B1712;--sub:#6B6154;--acc:#C4332A;--ln:#CDBFA0;--pink:#EFE7D5;--dk:#1B1712;--dkln:#3A3128;--dkmut:#B8AD97;background:#ECE4D1 !important;color:#1B1712 !important}
body.apr-audition .apr-shonen-root .sec{background:var(--pa) !important;color:var(--ink) !important;padding:58px 24px !important}
body.apr-audition .apr-shonen-root .sec.alt{background:var(--pa2) !important}
body.apr-audition .apr-shonen-root .inner{max-width:940px !important;margin:0 auto !important}
body.apr-audition .apr-shonen-root .hero{background:var(--pa) !important;color:var(--ink) !important}
body.apr-audition .apr-shonen-root .hero .en{color:var(--ink) !important}
body.apr-audition .apr-shonen-root .hero .lead{color:var(--sub) !important}
body.apr-audition .apr-shonen-root .hero .tag{background:var(--ink) !important;color:var(--pink) !important}
body.apr-audition .apr-shonen-root .hero .meta{color:var(--ink) !important}
body.apr-audition .apr-shonen-root .topnote{color:var(--sub) !important;background:var(--pa) !important}
body.apr-audition .apr-shonen-root .sec-h{font-family:'Noto Serif JP',serif !important;color:var(--ink) !important;font-weight:700 !important}
body.apr-audition .apr-shonen-root .kicker{color:var(--sub) !important}
body.apr-audition .apr-shonen-root .kanji{color:var(--acc) !important}
body.apr-audition .apr-shonen-root .about-body{color:var(--sub) !important}
body.apr-audition .apr-shonen-root .lead-h,body.apr-audition .apr-shonen-root .highlight-heading{color:var(--acc) !important;-webkit-text-fill-color:var(--acc) !important}
body.apr-audition .apr-shonen-root .panel{background:var(--card) !important;border:1px solid var(--ln) !important}
body.apr-audition .apr-shonen-root .mcard{background:var(--card) !important;border:1px solid var(--ln) !important;color:var(--ink) !important}
body.apr-audition .apr-shonen-root .mcard h3{color:var(--ink) !important;font-family:'Noto Serif JP',serif !important}
body.apr-audition .apr-shonen-root .mcard .no{color:var(--acc) !important}
body.apr-audition .apr-shonen-root .mcard p{color:var(--sub) !important}
body.apr-audition .apr-shonen-root .cast-card{background:var(--card) !important;border:1px solid var(--ln) !important}
body.apr-audition .apr-shonen-root .cast-badge{background:var(--acc) !important;color:#fff !important}
body.apr-audition .apr-shonen-root .cast-cap{color:var(--sub) !important}
body.apr-audition .apr-shonen-root .req-block{background:var(--card) !important;border:1px solid var(--ln) !important}
body.apr-audition .apr-shonen-root .req-list li{color:var(--sub) !important}
body.apr-audition .apr-shonen-root .treat{background:var(--card) !important;border-top:3px solid var(--acc) !important}
body.apr-audition .apr-shonen-root .sec.alt:has(.phases){background:var(--dk) !important;color:var(--pink) !important}
body.apr-audition .apr-shonen-root .sec:has(.phases) .sec-h,body.apr-audition .apr-shonen-root .sec:has(.phases) .kanji{color:var(--pink) !important}
body.apr-audition .apr-shonen-root .sec:has(.phases) .kicker{color:var(--dkmut) !important}
body.apr-audition .apr-shonen-root .ph{border-color:var(--dkln) !important}
body.apr-audition .apr-shonen-root .ph .pt{color:var(--pink) !important}
body.apr-audition .apr-shonen-root .ph .pd{color:var(--dkmut) !important}
body.apr-audition .apr-shonen-root .ph .pn{color:var(--acc) !important}
body.apr-audition .apr-shonen-root .sel-foot,body.apr-audition .apr-shonen-root .sel-foot-wrap,body.apr-audition .apr-shonen-root .period{color:var(--dkmut) !important}
body.apr-audition .apr-shonen-root .faq{border-top:1px solid var(--ln) !important}
body.apr-audition .apr-shonen-root .faq .q{color:var(--ink) !important;font-family:'Noto Serif JP',serif !important}
body.apr-audition .apr-shonen-root .faq .a{color:var(--sub) !important}
body.apr-audition .apr-shonen-root .cta{background:var(--ink) !important;color:var(--pink) !important}
body.apr-audition .apr-shonen-root .sec .entry{background:var(--dk) !important;color:var(--pink) !important}
body.apr-audition .apr-shonen-root .entry .en{color:var(--pink) !important}
body.apr-audition .apr-shonen-root .entry .kicker{color:var(--dkmut) !important}
body.apr-audition .apr-shonen-root .entry .meta{color:var(--dkmut) !important}
body.apr-audition .apr-shonen-root .entry .cta{background:var(--acc) !important;color:#fff !important}
@media(max-width:760px){body.apr-audition .apr-shonen-root .sec{padding:38px 18px !important}}
/* ===== END PALETTE-A PAPER v1 ===== */

/* ===== PALETTE-A PAPER v1 patch [X34b] ===== */
body.apr-audition .apr-shonen-root .hero .en,body.apr-audition .apr-shonen-root .hero .en *{color:#1B1712 !important;-webkit-text-fill-color:#1B1712 !important;background-image:none !important}
/* ===== END X34b ===== */

/* ===== PALETTE-A PAPER v1 patch [X34c] ===== */
body.apr-audition .apr-shonen-root .hero .en{text-shadow:#C4332A 3px 3px 0 !important}
/* ===== END X34c ===== */

/* ===== ALTER AUDITION PALETTE-A PAPER v1 patch [X34d] contrast fixes ===== */
body.apr-audition .apr-shonen-root .mcard .no{background-color:transparent !important;color:#C4332A !important;-webkit-text-fill-color:#C4332A !important}
body.apr-audition .apr-shonen-root .ph .pn,body.apr-audition .apr-shonen-root .highlight-heading{background-color:#C4332A !important;color:#fff !important;-webkit-text-fill-color:#fff !important}
body.apr-audition .apr-shonen-root .entry h2,body.apr-audition .apr-shonen-root .entry h2 *{color:#EFE7D5 !important;-webkit-text-fill-color:#EFE7D5 !important}
/* ===== END X34d ===== */


/* ===== [X35] footer palette-A  (footer is OUTSIDE .apr-shonen-root, body-direct) 2026-07-01 ===== */
body.apr-audition footer{background:#1B1712 !important;border-top:1px solid #C4332A !important}
body.apr-audition footer, body.apr-audition footer *{color:#C9BCA3 !important;-webkit-text-fill-color:#C9BCA3 !important}
body.apr-audition footer a{color:#E7DDC6 !important;-webkit-text-fill-color:#E7DDC6 !important;transition:color .2s ease}
body.apr-audition footer a:hover{color:#C4332A !important;-webkit-text-fill-color:#C4332A !important}
body.apr-audition footer h1,body.apr-audition footer h2,body.apr-audition footer h3,body.apr-audition footer h4,body.apr-audition footer strong,body.apr-audition footer b{color:#EFE7D5 !important;-webkit-text-fill-color:#EFE7D5 !important}

/* ===== [X36] section kicker eyebrow readable (was dark chip #141414 + grey #6B6154) ===== */
body.apr-audition .apr-shonen-root .kicker{background:transparent !important;color:#C4332A !important;-webkit-text-fill-color:#C4332A !important;font-size:12px !important;font-weight:700 !important;letter-spacing:.14em !important;padding:0 !important;opacity:1 !important}
body.apr-audition .apr-shonen-root .sec:has(.phases) .kicker,body.apr-audition .apr-shonen-root .entry .kicker{color:#DCCFB4 !important;-webkit-text-fill-color:#DCCFB4 !important}

/* ===== [X37] hero top entrance + ambient motion ===== */
@keyframes apr-riseUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes apr-riseBig{from{opacity:0;transform:translateY(28px) scale(.986)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes apr-illustIn{from{opacity:0;transform:scale(1.09)}to{opacity:1;transform:scale(1)}}
@keyframes apr-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes apr-ctaGlow{0%,100%{filter:drop-shadow(0 0 0 rgba(196,51,42,0))}50%{filter:drop-shadow(0 5px 13px rgba(196,51,42,.42))}}
body.apr-audition .apr-shonen-root .hero .tag{animation:apr-riseUp .7s cubic-bezier(.2,.7,.2,1) .15s both}
body.apr-audition .apr-shonen-root .hero .en{animation:apr-riseBig .95s cubic-bezier(.2,.7,.2,1) .3s both}
body.apr-audition .apr-shonen-root .hero .lead{animation:apr-riseUp .8s cubic-bezier(.2,.7,.2,1) .55s both}
body.apr-audition .apr-shonen-root .hero .period{animation:apr-riseUp .8s cubic-bezier(.2,.7,.2,1) .72s both}
body.apr-audition .apr-shonen-root .hero .cta{animation:apr-riseUp .8s cubic-bezier(.2,.7,.2,1) .9s both, apr-ctaGlow 3.4s ease-in-out 2.2s infinite}
body.apr-audition .apr-shonen-root .hero .hero-illust{animation:apr-illustIn 1.4s ease-out .1s both, apr-float 6.5s ease-in-out 1.7s infinite}
@media (prefers-reduced-motion: reduce){body.apr-audition .apr-shonen-root .hero .tag,body.apr-audition .apr-shonen-root .hero .en,body.apr-audition .apr-shonen-root .hero .lead,body.apr-audition .apr-shonen-root .hero .period,body.apr-audition .apr-shonen-root .hero .cta,body.apr-audition .apr-shonen-root .hero .hero-illust{animation:none !important;opacity:1 !important;transform:none !important;filter:none !important}}
/* ===== [/X35 X36 X37] ===== */


/* ===== [X38] SELECTION phase cards were light (#F3EDDF via X34 .panel) but hold light text -> invisible. Re-dark just inside the SELECTION band. 2026-07-01 ===== */
body.apr-audition .apr-shonen-root .sec:has(.phases) .ph,
body.apr-audition .apr-shonen-root .sec:has(.phases) .panel{background:#221C15 !important;border:1px solid #3A3128 !important}
/* ===== [/X38] ===== */


/* ===== [X39] footer SNS pill had translucent-white bg (bg-white/35) -> pale pill on dark footer w/ light text. Dark-pill it. 2026-07-01 ===== */
body.apr-audition footer a[class*="bg-white"]{background:#221C15 !important;border-color:#3A3128 !important}
body.apr-audition footer a[class*="bg-white"]:hover{border-color:#C4332A !important}
/* ===== [/X39] ===== */


/* ============================================================
   [X40] 2026-07-03 phase1: washi grain + screentone (reversible)
   ============================================================ */
body.apr-audition .apr-shonen-root::after{content:"" !important;position:fixed !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;pointer-events:none !important;z-index:1 !important;mix-blend-mode:multiply !important;opacity:.5 !important;background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='apg40'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0.10 0 0 0 0 0.08 0 0 0 0 0.06 0 0 0 0.10 0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23apg40)'/%3E%3C/svg%3E") !important;}
body.apr-audition .apr-shonen-root .sec.alt:not(:has(.phases)){background-image:radial-gradient(rgba(27,23,18,.05) 1px,transparent 1.35px) !important;background-size:7px 7px !important;}

/* [X41] giant chapter numeral watermark */
body.apr-audition .apr-shonen-root .sec::after{position:absolute !important;right:10px !important;bottom:2px !important;font-family:"Noto Serif JP",serif !important;font-weight:700 !important;font-size:clamp(90px,14vw,168px) !important;line-height:.82 !important;color:rgba(27,23,18,.06) !important;pointer-events:none !important;z-index:0 !important;}
body.apr-audition .apr-shonen-root section:nth-of-type(2)::after{content:"壱" !important;}
body.apr-audition .apr-shonen-root section:nth-of-type(3)::after{content:"弐" !important;}
body.apr-audition .apr-shonen-root section:nth-of-type(4)::after{content:"参" !important;}
body.apr-audition .apr-shonen-root section:nth-of-type(5)::after{content:"肆" !important;}
body.apr-audition .apr-shonen-root section:nth-of-type(6)::after{content:"伍" !important;}
body.apr-audition .apr-shonen-root section:nth-of-type(7)::after{content:"陸" !important;}
body.apr-audition .apr-shonen-root section:nth-of-type(8)::after{content:"漆" !important;}
body.apr-audition .apr-shonen-root section:nth-of-type(9)::after{content:"捌" !important;}
body.apr-audition .apr-shonen-root .sec:has(.phases)::after{color:rgba(239,231,213,.05) !important;}
body.apr-audition .apr-shonen-root .sec>.inner{position:relative !important;z-index:1 !important;}

/* [X42] framed cards + graded selection phases */
body.apr-audition .apr-shonen-root .cast-card{border:1px solid #1B1712 !important;outline:1px solid #CDBFA0 !important;outline-offset:4px !important;}
body.apr-audition .apr-shonen-root .cast-card::before{content:"" !important;position:absolute !important;top:7px !important;left:7px !important;width:15px !important;height:15px !important;border-top:2px solid #C4332A !important;border-left:2px solid #C4332A !important;z-index:2 !important;pointer-events:none !important;}
body.apr-audition .apr-shonen-root .treat{outline:1px solid #C4332A !important;outline-offset:5px !important;border:1px solid #1B1712 !important;}
body.apr-audition .apr-shonen-root .phases .ph:nth-child(1){border-color:#6E584C !important;}
body.apr-audition .apr-shonen-root .phases .ph:nth-child(3){border-color:#A6453A !important;}
body.apr-audition .apr-shonen-root .phases .ph:nth-child(5){border-color:#C4332A !important;box-shadow:0 0 0 1px rgba(196,51,42,.3) !important;}

/* [X43] ambient micro motion */
@keyframes apr-pulse43{0%{box-shadow:0 0 0 0 rgba(196,51,42,.5)}70%{box-shadow:0 0 0 10px rgba(196,51,42,0)}100%{box-shadow:0 0 0 0 rgba(196,51,42,0)}}
@keyframes apr-pulse43w{0%{box-shadow:0 0 0 0 rgba(255,255,255,.6)}70%{box-shadow:0 0 0 9px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
@keyframes apr-press43{0%,30%,100%{transform:none;box-shadow:6px 6px 0 #1B1712,inset 0 0 0 1.5px rgba(255,255,255,.4)}7%,21%{transform:translate(2px,3px);box-shadow:3px 3px 0 #1B1712,inset 0 0 0 1.5px rgba(255,255,255,.4)}14%{transform:none;box-shadow:6px 6px 0 #1B1712,inset 0 0 0 1.5px rgba(255,255,255,.4)}}
@keyframes apr-breathe43{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
body.apr-audition .apr-shonen-root .cast-badge::before{content:"" !important;display:inline-block !important;width:7px !important;height:7px !important;border-radius:50% !important;background:#fff !important;margin-right:7px !important;animation:apr-pulse43w 2.2s ease-out infinite !important;}
body.apr-audition .apr-fab21 .fabtxt::before{content:"" !important;display:inline-block !important;width:8px !important;height:8px !important;border-radius:50% !important;background:#C4332A !important;margin-right:8px !important;vertical-align:.5px !important;animation:apr-pulse43 2.2s ease-out infinite !important;}
body.apr-audition .apr-shonen-root .entry a.cta{animation:apr-press43 1.9s ease-in-out infinite !important;}
body.apr-audition .apr-shonen-root .cast-card{animation:apr-breathe43 4.2s ease-in-out infinite !important;}
body.apr-audition .apr-shonen-root .cast-grid .cast-card:nth-child(2){animation-delay:.8s !important;}
@media (prefers-reduced-motion:reduce){body.apr-audition .apr-shonen-root .cast-badge::before,body.apr-audition .apr-fab21 .fabtxt::before,body.apr-audition .apr-shonen-root .entry a.cta,body.apr-audition .apr-shonen-root .cast-card{animation:none !important;}}

/* [X44] mass and scale */
body.apr-audition .apr-shonen-root .hero a.cta,body.apr-audition .apr-shonen-root .entry a.cta{box-shadow:6px 6px 0 #1B1712,inset 0 0 0 1.5px rgba(255,255,255,.4) !important;text-shadow:0 2px 0 rgba(0,0,0,.3) !important;}
body.apr-audition .apr-fab21 .fabbtn{background:#C4332A !important;}
@media (min-width:761px){
body.apr-audition .apr-shonen-root .sec-h{font-size:48px !important;}
body.apr-audition .apr-shonen-root .sec-h .kanji{font-size:26px !important;}
body.apr-audition .apr-shonen-root .sec .inner p:not([class]),body.apr-audition .apr-shonen-root .sec .inner li{font-size:16px !important;line-height:1.9 !important;}
body.apr-audition .apr-shonen-root .hero .lead{font-size:17.5px !important;}
body.apr-audition .apr-shonen-root .faq .q{font-size:16.5px !important;}
body.apr-audition .apr-shonen-root .faq .a{font-size:15.5px !important;}
body.apr-audition .apr-shonen-root .hero a.cta,body.apr-audition .apr-shonen-root .entry a.cta{padding:20px 46px !important;font-size:18px !important;}
body.apr-audition .apr-fab21 .fabtxt{font-size:14px !important;}
body.apr-audition .apr-fab21 .fabbtn{padding:12px 30px !important;font-size:15px !important;}
body.apr-audition .apr-shonen-root .treat .highlight-heading{font-size:19px !important;}
}
/* ===== end X40-X44 ===== */


/* ============================================================
   [X46] 2026-07-03 FOUC fix: prep-guard bg was legacy pink #ffe7f0
   -> paper #ECE4D1 (matches final design). reversible.
   ============================================================ */
html.apr-prep{background:#ECE4D1 !important;}
html.apr-prep body{background:#ECE4D1 !important;}
/* ===== end X46 ===== */


/* ============================================================
   [X47] 2026-07-07 /audition 背景リデザイン「エアリーキラ×漫画」(案2採用)
   白×淡水色ウォッシュ+十字キラ+浮遊漫画コマ+トーン粒+スピード線。
   fixed全面レイヤー(.k47l/functions.php X48が注入)+明帯セクション透過化。
   可逆: 本ブロック削除 + functions.php [X48] 削除で完全復元。
   水色 rgba(120,180,220,α) はオーナー承認済みのauditionページ限定サブカラー。
   ============================================================ */
/* --- 土台: 白キャンバス化・旧装飾停止 --- */
body.apr-audition{background:#FFFFFF !important;}
html.apr-prep{background:#FFFFFF !important;}
html.apr-prep body{background:#FFFFFF !important;}
body.apr-audition .apr-shonen-root{background:transparent !important;position:relative;z-index:1;}
body.apr-audition .apr-shonen-root::after{content:none !important;}
body.apr-audition footer{position:relative;z-index:1;}
body.apr-audition .apr-shonen-root .sec:not(:has(.phases)){background:transparent !important;background-image:none !important;}
body.apr-audition .apr-shonen-root .sec.alt:not(:has(.phases)){background:rgba(255,255,255,.55) !important;background-image:none !important;}
body.apr-audition .apr-shonen-root .sec:not(:has(.phases)) .panel{background:#FFFFFF !important;border:1px solid rgba(27,23,18,.14) !important;box-shadow:0 6px 22px rgba(27,23,18,.06);}
body.apr-audition .apr-shonen-root .hero{background:transparent !important;}
body.apr-audition .apr-shonen-root .topnote{background:rgba(255,255,255,.5) !important;}
body.apr-audition .apr-shonen-root .sec:not(:has(.phases)) .mcard,
body.apr-audition .apr-shonen-root .sec:not(:has(.phases)) .faq,
body.apr-audition .apr-shonen-root .sec:not(:has(.phases)) .req-block{background:#FFFFFF !important;}

body.apr-audition .k47l{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;
  background-color:#FFFFFF;
  background-image:
    radial-gradient(circle at 21% 16%,rgba(120,180,220,.55) 0 2px,rgba(120,180,220,0) 4px),
    radial-gradient(circle at 66% 7%,rgba(120,180,220,.45) 0 2px,rgba(120,180,220,0) 4px),
    radial-gradient(circle at 84% 38%,rgba(255,255,255,.95) 0 2.5px,rgba(255,255,255,0) 5px),
    radial-gradient(circle at 38% 55%,rgba(120,180,220,.40) 0 2px,rgba(120,180,220,0) 4px),
    radial-gradient(circle at 12% 72%,rgba(255,255,255,.90) 0 2.5px,rgba(255,255,255,0) 5px),
    radial-gradient(circle at 58% 88%,rgba(120,180,220,.45) 0 2px,rgba(120,180,220,0) 4px),
    radial-gradient(circle 300px at 86% 10%,rgba(120,180,220,.22),rgba(120,180,220,0) 70%),
    radial-gradient(circle 230px at 6% 26%,rgba(120,180,220,.16),rgba(120,180,220,0) 70%),
    radial-gradient(circle 170px at 74% 46%,rgba(255,255,255,.85),rgba(255,255,255,0) 72%),
    radial-gradient(circle 260px at 14% 88%,rgba(120,180,220,.15),rgba(120,180,220,0) 70%),
    radial-gradient(circle 200px at 92% 74%,rgba(120,180,220,.18),rgba(120,180,220,0) 70%),
    radial-gradient(circle 140px at 44% 12%,rgba(255,255,255,.80),rgba(255,255,255,0) 72%),
    linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(120,180,220,.12) 34%,rgba(120,180,220,.17) 52%,rgba(120,180,220,.08) 72%,rgba(255,255,255,0) 100%);}
body.apr-audition .k47d{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;}

body.apr-audition .k47.bok{position:absolute;border-radius:50%;background:radial-gradient(circle,rgba(120,180,220,.20),rgba(120,180,220,0) 68%)}
body.apr-audition .k47.bo1{width:440px;height:440px;top:-90px;right:-60px}
body.apr-audition .k47.bo2{width:320px;height:320px;bottom:6vh;left:-70px}
body.apr-audition .k47.koma{position:absolute;background:#FFFFFF;border:2px solid #1B1712;box-shadow:0 14px 30px rgba(120,180,220,.35),0 4px 10px rgba(27,23,18,.08)}
body.apr-audition .k47.koma.thin{border-width:1.5px}
body.apr-audition .k47.koma.dots::before{content:"";position:absolute;left:6px;right:6px;bottom:6px;height:36%;background-image:radial-gradient(circle,rgba(27,23,18,.20) 1.1px,transparent 1.5px);background-size:7px 7px}
body.apr-audition .k47.koma.aqw::before{content:"";position:absolute;inset:6px;background:linear-gradient(135deg,rgba(120,180,220,.30),rgba(120,180,220,0) 62%)}
body.apr-audition .k47.koma.rl{background-image:linear-gradient(#C4332A,#C4332A),linear-gradient(#C4332A,#C4332A);background-size:26px 5px,5px 26px;background-position:0 0,0 0;background-repeat:no-repeat}
body.apr-audition .k47.kira{position:absolute;aspect-ratio:1/1;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120'%3E%3CradialGradient id='h'%3E%3Cstop offset='0' stop-color='%2378B4DC' stop-opacity='.55'/%3E%3Cstop offset='1' stop-color='%2378B4DC' stop-opacity='0'/%3E%3C/radialGradient%3E%3Ccircle cx='60' cy='60' r='58' fill='url(%23h)'/%3E%3Cpath d='M60 6 L67 53 L114 60 L67 67 L60 114 L53 67 L6 60 L53 53 Z' fill='%23FFFFFF'/%3E%3C/svg%3E") center/contain no-repeat}
body.apr-audition .k47.kira.aq{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120'%3E%3Cpath d='M60 8 L66 54 L112 60 L66 66 L60 112 L54 66 L8 60 L54 54 Z' fill='%2378B4DC'/%3E%3C/svg%3E")}
body.apr-audition .k47.kira.pw{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120'%3E%3Cpath d='M60 8 L66 54 L112 60 L66 66 L60 112 L54 66 L8 60 L54 54 Z' fill='%23FFFFFF'/%3E%3C/svg%3E")}
body.apr-audition .k47.spd{position:absolute;background-image:repeating-linear-gradient(0deg,rgba(27,23,18,.30) 0 2px,transparent 2px 9px);-webkit-mask-image:linear-gradient(90deg,transparent 0,#fff 30%,#fff 72%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#fff 30%,#fff 72%,transparent 100%)}
body.apr-audition .k47.spd.aq{background-image:repeating-linear-gradient(0deg,rgba(120,180,220,.55) 0 2px,transparent 2px 9px)}
body.apr-audition .k47.spd.wt{background-image:repeating-linear-gradient(0deg,rgba(255,255,255,1) 0 2px,transparent 2px 9px)}
body.apr-audition .k47.ton{position:absolute;border-radius:50%;background-image:radial-gradient(circle,rgba(120,180,220,.55) 1.3px,transparent 1.7px);background-size:9px 9px;-webkit-mask-image:radial-gradient(circle,#fff 34%,transparent 70%);mask-image:radial-gradient(circle,#fff 34%,transparent 70%)}
body.apr-audition .k47.ton.sm{background-image:radial-gradient(circle,rgba(27,23,18,.22) 1.2px,transparent 1.6px);background-size:8px 8px}

body.apr-audition .k47.k1{width:200px;height:140px;top:6vh;right:7vw;transform:rotate(6deg)}
body.apr-audition .k47.k2{width:150px;height:110px;top:34vh;left:4vw;transform:rotate(-7deg)}
body.apr-audition .k47.k3{width:92px;height:68px;top:12vh;left:16vw;transform:rotate(4deg);opacity:.92}
body.apr-audition .k47.k4{width:100px;height:74px;top:55vh;right:13vw;transform:rotate(-5deg);opacity:.88}
body.apr-audition .k47.k5{width:170px;height:120px;bottom:8vh;left:9vw;transform:rotate(5deg)}
body.apr-audition .k47.k6{width:120px;height:88px;bottom:16vh;right:5vw;transform:rotate(-8deg);opacity:.92}
body.apr-audition .k47.k7{width:64px;height:48px;top:8vh;left:55vw;transform:rotate(8deg);opacity:.85}
body.apr-audition .k47.g1{width:84px;top:18vh;right:24vw;opacity:.5}
body.apr-audition .k47.g2{width:40px;top:26vh;left:28vw;opacity:.38;transform:rotate(14deg)}
body.apr-audition .k47.g3{width:56px;top:64vh;left:18vw;opacity:.45;transform:rotate(-12deg)}
body.apr-audition .k47.g4{width:30px;top:44vh;right:31vw;opacity:.35}
body.apr-audition .k47.g5{width:64px;bottom:22vh;right:8vw;opacity:.45}
body.apr-audition .k47.g6{width:26px;top:10vh;left:42vw;opacity:.32;transform:rotate(18deg)}
body.apr-audition .k47.g7{width:48px;bottom:9vh;left:34vw;opacity:.4}
body.apr-audition .k47.g8{width:22px;top:70vh;right:44vw;opacity:.3}
body.apr-audition .k47.s1{width:300px;height:54px;top:6vh;left:3vw;transform:rotate(-18deg)}
body.apr-audition .k47.s2{width:240px;height:44px;top:46vh;right:22vw;transform:rotate(-14deg)}
body.apr-audition .k47.s3{width:200px;height:40px;bottom:7vh;left:30vw;transform:rotate(-16deg);opacity:.8}
body.apr-audition .k47.t1{width:240px;height:240px;top:-40px;left:30vw}
body.apr-audition .k47.t2{width:190px;height:190px;top:58vh;right:4vw}
body.apr-audition .k47.t3{width:160px;height:160px;bottom:2vh;left:44vw}

body.apr-audition .k47.hk1{width:150px;height:106px;top:84px;right:16vw;transform:rotate(-6deg)}
body.apr-audition .k47.hg1{width:88px;top:48px;right:13vw;opacity:.5}
body.apr-audition .k47.hg2{width:44px;top:210px;left:33vw;opacity:.4;transform:rotate(12deg)}
body.apr-audition .k47.hg3{width:30px;bottom:290px;right:37vw;opacity:.36}
body.apr-audition .k47.hs1{width:260px;height:46px;top:140px;left:5vw;transform:rotate(-16deg)}
body.apr-audition .k47.ht1{width:190px;height:190px;top:20px;left:46vw}
body.apr-audition .k47.ak1{width:110px;height:80px;bottom:24px;right:3vw;transform:rotate(5deg)}
body.apr-audition .k47.ag1{width:58px;top:36px;right:8vw;opacity:.45}
body.apr-audition .k47.ag2{width:30px;bottom:80px;left:3vw;opacity:.38;transform:rotate(-10deg)}
body.apr-audition .k47.at1{width:150px;height:150px;top:50px;left:0}
body.apr-audition .k47.ck1{width:96px;height:70px;top:70px;left:3vw;transform:rotate(-6deg)}
body.apr-audition .k47.cg1{width:66px;top:130px;right:7vw;opacity:.48}
body.apr-audition .k47.cg2{width:30px;bottom:150px;left:9vw;opacity:.35;transform:rotate(-14deg)}
body.apr-audition .k47.cg3{width:44px;bottom:50px;right:21vw;opacity:.4}
body.apr-audition .k47.cs1{width:220px;height:40px;top:44%;right:1vw;transform:rotate(-12deg)}
body.apr-audition .k47.ct1{width:180px;height:180px;bottom:10px;left:27vw}
body.apr-audition .k47.sg1{width:110px;top:40px;right:7vw;opacity:.07}
body.apr-audition .k47.ss1{width:240px;height:46px;bottom:50px;left:5vw;transform:rotate(-14deg);opacity:.05}
body.apr-audition .k47.ek1{width:86px;height:62px;top:42%;right:2vw;transform:rotate(7deg)}
body.apr-audition .k47.eg1{width:60px;top:26px;left:7vw;opacity:.45}
body.apr-audition .k47.eg2{width:34px;bottom:44px;right:5vw;opacity:.4}
body.apr-audition .k47.et1{width:140px;height:140px;bottom:20px;left:2vw}

@media (max-width:760px){
  body.apr-audition .k47.k3,body.apr-audition .k47.k4,body.apr-audition .k47.k7,
  body.apr-audition .k47.g2,body.apr-audition .k47.g4,body.apr-audition .k47.g8,
  body.apr-audition .k47.s2,body.apr-audition .k47.s3,body.apr-audition .k47.t3,
  body.apr-audition .k47.bo2,body.apr-audition .k47.hg2,body.apr-audition .k47.ht1,
  body.apr-audition .k47.cs1,body.apr-audition .k47.ct1,body.apr-audition .k47.ck1,
  body.apr-audition .k47.ak1,body.apr-audition .k47.at1,
  body.apr-audition .k47.ek1,body.apr-audition .k47.et1{display:none}
  body.apr-audition .k47.k1{width:140px;height:100px;right:4vw}
  body.apr-audition .k47.k2{width:118px;height:86px}
  body.apr-audition .k47.k5{width:122px;height:88px}
  body.apr-audition .k47.hk1{width:112px;height:80px;right:8vw}
  body.apr-audition .k47.g1{width:56px}
  body.apr-audition .k47.g5{width:46px}
  body.apr-audition .k47.hg1{width:60px}
  body.apr-audition .k47.eg1{width:44px}
}
/* ===== end X47 ===== */

/* ============================================================
   [X49] 2026-07-07 heroイラストの無限ふわふわ(apr-float)停止(オーナー指示)
   登場ズーム(apr-illustIn 1回)は温存。削除で復元。
   ============================================================ */
body.apr-audition .apr-shonen-root .hero .hero-illust{animation:1.4s ease-out .1s 1 normal both running apr-illustIn !important;}
/* ===== end X49 ===== */

/* ============================================================
   [X50] 2026-07-07 SELECTION帯の明色統一(オーナー指示:黒くて浮く・小タイトル統一)
   全セクションの見出しブロック=朱キッカー+墨見出し+朱其ノX+白カードへ。
   ENTRYの黒CTA島は意図的に維持。削除で復元。
   ============================================================ */
body.apr-audition .apr-shonen-root .sec:has(.phases){background:rgba(255,255,255,.55) !important;background-image:none !important;}
body.apr-audition .apr-shonen-root .sec:has(.phases)::after{color:rgba(27,23,18,.06) !important;}
body.apr-audition .apr-shonen-root .sec:has(.phases) .kicker{color:#C4332A !important;}
body.apr-audition .apr-shonen-root .sec:has(.phases) .sec-h{color:#1B1712 !important;}
body.apr-audition .apr-shonen-root .sec:has(.phases) .sec-h .kanji{color:#C4332A !important;}
body.apr-audition .apr-shonen-root .sec:has(.phases) .ph,
body.apr-audition .apr-shonen-root .sec:has(.phases) .panel{background:#FFFFFF !important;border:1px solid rgba(27,23,18,.14) !important;box-shadow:0 6px 22px rgba(27,23,18,.06) !important;}
body.apr-audition .apr-shonen-root .sec:has(.phases) .pt{color:#1B1712 !important;}
body.apr-audition .apr-shonen-root .sec:has(.phases) .pd{color:rgba(27,23,18,.72) !important;}
body.apr-audition .apr-shonen-root .sec:has(.phases) .sel-foot{color:rgba(27,23,18,.6) !important;}
body.apr-audition .apr-shonen-root .sec:has(.phases) small{color:#C4332A !important;}
/* 旧dark-kitデコ(白拜き)を水色に再着色 */
body.apr-audition .k47.sg1{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120'%3E%3Cpath d='M60 8 L66 54 L112 60 L66 66 L60 112 L54 66 L8 60 L54 54 Z' fill='%2378B4DC'/%3E%3C/svg%3E");opacity:.4;}
body.apr-audition .k47.ss1{background-image:repeating-linear-gradient(0deg,rgba(120,180,220,.55) 0 2px,transparent 2px 9px);opacity:.75;}
/* ===== end X50 ===== */

/* [X50b] 2026-07-07 X50の背景が .sec.alt:has(.phases) の var(--dk)!important に負けていた修正(同一セレクタで後置勝ち) */
body.apr-audition .apr-shonen-root .sec.alt:has(.phases){background:rgba(255,255,255,.55) !important;background-image:none !important;}
/* ===== end X50b ===== */

/* [X50c] 2026-07-07 SELECTION統一の残修正: kickerの-webkit-text-fill-color(生成り)上書き + sel-footの暗チップ地#141414を透明化 */
body.apr-audition .apr-shonen-root .sec.alt:has(.phases) .kicker,
body.apr-audition .apr-shonen-root .sec:has(.phases) .kicker{color:#C4332A !important;-webkit-text-fill-color:#C4332A !important;}
body.apr-audition .apr-shonen-root .sec.alt:has(.phases) .sel-foot,
body.apr-audition .apr-shonen-root .sec:has(.phases) .sel-foot{background:transparent !important;color:rgba(27,23,18,.66) !important;-webkit-text-fill-color:rgba(27,23,18,.66) !important;border-color:rgba(27,23,18,.2) !important;}
/* ===== end X50c ===== */

/* ============================================================
   [X51] 2026-07-07 スマホ用セクションメニュー(タブ)のスタイル
   ボタン+フルスクリーンオーバーレイ。DOMはfunctions.php [X52]が注入。
   761px以上では非表示(スマホ専用)。削除で復元。
   ============================================================ */
body.apr-audition .k52-btn{position:fixed;top:14px;right:14px;z-index:95;width:48px;height:48px;background:#FFFFFF;border:2px solid #1B1712;box-shadow:0 6px 18px rgba(120,180,220,.4),0 2px 6px rgba(27,23,18,.14);display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;padding:0}
body.apr-audition .k52-btn::before{content:"";position:absolute;top:-2px;left:-2px;width:15px;height:15px;border-top:4px solid #C4332A;border-left:4px solid #C4332A}
body.apr-audition .k52-btn i{display:block;width:20px;height:2px;background:#1B1712}
body.admin-bar .k52-btn{top:62px}
body.apr-audition .k52-btn.show{display:flex}
body.apr-audition .k52-ov{position:fixed;inset:0;z-index:96;background:linear-gradient(180deg,#FFFFFF 0%,rgba(228,240,248,.97) 45%,#FFFFFF 100%);display:none;overflow:auto;-webkit-overflow-scrolling:touch;padding:74px 18px 44px}
body.apr-audition .k52-ov.open{display:block}
body.apr-audition .k52-close{position:absolute;top:14px;right:14px;width:48px;height:48px;background:#C4332A;color:#FFFFFF;border:0;font-size:22px;font-weight:700;line-height:1;cursor:pointer;box-shadow:3px 3px 0 #1B1712}
body.admin-bar .k52-close{top:62px}
body.apr-audition .k52-ttl{font-weight:700;font-size:12px;letter-spacing:.24em;color:#C4332A;margin:0 auto 18px;max-width:420px;padding-left:2px}
body.apr-audition .k52-list{list-style:none;margin:0 auto;padding:0;display:flex;flex-direction:column;gap:12px;max-width:420px}
body.apr-audition .k52-it{background:#FFFFFF;border:1.5px solid #1B1712;box-shadow:0 8px 20px rgba(120,180,220,.28),0 3px 8px rgba(27,23,18,.08);padding:15px 16px;display:flex;align-items:center;gap:12px;cursor:pointer}
body.apr-audition .k52-it:nth-child(odd){transform:rotate(.5deg)}
body.apr-audition .k52-it:nth-child(even){transform:rotate(-.5deg)}
body.apr-audition .k52-it:active{background:rgba(228,240,248,.9)}
body.apr-audition .k52-num{color:#C4332A;font-weight:700;font-size:11px;letter-spacing:.12em;flex:0 0 auto;min-width:2em}
body.apr-audition .k52-name{color:#1B1712;font-size:14.5px;font-weight:600;line-height:1.45;flex:1}
body.apr-audition .k52-kanji{font-family:"GenEiAntique","GenEiAntiquePv5-M","Noto Serif JP",serif;font-weight:700;color:#C4332A;font-size:14px;flex:0 0 auto}
@media (min-width:761px){body.apr-audition .k52-btn,body.apr-audition .k52-ov{display:none !important}}
/* ===== end X51 ===== */

/* ============================================================
   [X53] 2026-07-07 フッター減量(オーナー指示: リンク列と運営情報列を非表示)
   ブランド+説明文+©のみ残す。DOMは残存=削除で完全復元。
   ============================================================ */
body.apr-audition footer div.grid>div:nth-child(2),
body.apr-audition footer div.grid>div:nth-child(3){display:none !important;}
body.apr-audition footer div.grid{grid-template-columns:1fr !important;gap:0 !important;}
/* ===== end X53 ===== */

/* ============================================================
   [X54] 2026-07-07 hero文字の顔被り修正(オーナー指示)
   PC=左テキスト/右イラストの分割構図(承認済モック同構成)、
   中間幅はh1自動縮小。SP=イラスト透かし+白フチ文字。削除で復元。
   ============================================================ */
@media (min-width:761px){
  body.apr-audition .apr-shonen-root .hero{align-items:flex-start !important;text-align:left !important;padding-left:6vw !important;}
  body.apr-audition .apr-shonen-root .hero .hero-illust{left:auto !important;right:1vw !important;width:min(52vw,920px) !important;object-position:50% 20% !important;}
  body.apr-audition .apr-shonen-root .hero .lead{max-width:44vw !important;margin-left:0 !important;}
}
@media (min-width:761px) and (max-width:1400px){
  body.apr-audition .apr-shonen-root .hero h1.en{font-size:clamp(46px,5.5vw,72px) !important;}
}
body.apr-audition .apr-shonen-root .hero h1.en,
body.apr-audition .apr-shonen-root .hero .lead{text-shadow:0 1px 0 #FFFFFF,0 -1px 0 #FFFFFF,1px 0 0 #FFFFFF,-1px 0 0 #FFFFFF,0 4px 18px rgba(255,255,255,.85) !important;}
@media (max-width:760px){
  body.apr-audition .apr-shonen-root .hero .hero-illust{opacity:.5 !important;}
}
/* ===== end X54 ===== */

/* [X54b] 2026-07-07 hero分割構図の確定版: 元テーマのauto marginセンタリングを排除し、
   img=右端固定+transform縦センタ、テキスト=margin-right:autoで左寄せ(align-itemsより強い) */
@media (min-width:761px){
  body.apr-audition .apr-shonen-root .hero img.hero-illust{position:absolute !important;left:auto !important;right:0 !important;top:50% !important;bottom:auto !important;transform:translateY(-50%) !important;margin:0 !important;width:min(50vw,880px) !important;height:auto !important;max-height:100% !important;}
  body.apr-audition .apr-shonen-root .hero > span.tag,
  body.apr-audition .apr-shonen-root .hero > h1.en,
  body.apr-audition .apr-shonen-root .hero > p.lead,
  body.apr-audition .apr-shonen-root .hero > span.period,
  body.apr-audition .apr-shonen-root .hero > a.cta{margin-left:0 !important;margin-right:auto !important;text-align:left !important;}
}
/* ===== end X54b ===== */

/* [X54c] 2026-07-07 heroは約1026px中央寄せブロックだったためPCで全幅化(分割構図のステージをビューポート幅へ) */
@media (min-width:761px){
  body.apr-audition .apr-shonen-root .hero{max-width:none !important;width:100% !important;margin-left:0 !important;margin-right:0 !important;}
}
/* ===== end X54c ===== */

/* [X54d] 2026-07-07 heroの親が約1080px制約のため full-bleed ブレイクアウトでビューポート全幅化(祖先非接触) */
@media (min-width:761px){
  body.apr-audition .apr-shonen-root .hero{width:100vw !important;max-width:none !important;margin-left:calc(50% - 50vw) !important;margin-right:0 !important;}
  body.apr-audition .apr-shonen-root .hero img.hero-illust{right:max(14px,1vw) !important;}
}
/* ===== end X54d ===== */

/* [X54e] 2026-07-07 中間幅(761-1100px)でleadがイラスト箱の端に触れるのを回避 */
@media (min-width:761px) and (max-width:1100px){
  body.apr-audition .apr-shonen-root .hero > p.lead{max-width:38vw !important;}
}
/* ===== end X54e ===== */

/* [X54f] 2026-07-07 hero調整(オーナー指示): テキストとイラストの空白を詰める(1200px以上はイラストをテキスト直隣に接岸・contain表示で顔は常に全見え)+イラスト明度を抑える */
@media (min-width:1200px){
  body.apr-audition .apr-shonen-root .hero img.hero-illust{left:calc(6vw + 600px) !important;right:auto !important;width:calc(93vw - 600px) !important;height:100% !important;max-height:100% !important;top:0 !important;bottom:auto !important;transform:none !important;object-fit:contain !important;object-position:left 35% !important;}
  body.apr-audition .apr-shonen-root .hero > p.lead{max-width:min(44vw,560px) !important;}
}
@media (min-width:761px){
  body.apr-audition .apr-shonen-root .hero img.hero-illust{filter:brightness(.85);}
}
/* ===== end X54f ===== */

/* ============================================================
   [X55] 2026-07-07 hero最終形(オーナー指示: 暗さ/境目/外枠の3点解消)
   大ゴマ黒枠=中央カラム復帰(full-bleed撤回)・コマ内部=白ベタ・
   左テキスト/右イラスト(50%)・フィルタ全撤去(白地×白コマ=境目なし)。
   X54d/X54fの同一プロパティを後置上書きで無効化。削除で復元。
   ============================================================ */
@media (min-width:761px){
  body.apr-audition .apr-shonen-root .hero{width:min(94vw,1320px) !important;max-width:none !important;margin-left:auto !important;margin-right:auto !important;background:#FFFFFF !important;padding-left:48px !important;}
  body.apr-audition .apr-shonen-root .hero img.hero-illust{left:auto !important;right:20px !important;width:50% !important;height:auto !important;max-height:94% !important;top:50% !important;bottom:auto !important;transform:translateY(-50%) !important;object-fit:contain !important;object-position:right center !important;filter:none !important;-webkit-mask-image:none !important;mask-image:none !important;mix-blend-mode:normal !important;}
  body.apr-audition .apr-shonen-root .hero .k47d{display:none !important;}
}
/* ===== end X55 ===== */

/* ============================================================
   [X56] 2026-07-07 hero「TOP絵の中に文字」形式(オーナー指示・案出しの推奨案=左下ブロック)
   イラスト(1920x1080・白マージン焼込)を134%ズームで大ゴマ全面に敷き、
   テキストは左下に重ねる(白フチ文字済)。上下空白解消。X55のimg配置を後置上書き。削除で復元。
   ============================================================ */
@media (min-width:761px){
  body.apr-audition .apr-shonen-root .hero{overflow:hidden !important;justify-content:flex-end !important;padding-bottom:34px !important;}
  body.apr-audition .apr-shonen-root .hero img.hero-illust{left:50% !important;right:auto !important;top:50% !important;bottom:auto !important;transform:translate(-50%,-50%) !important;height:134% !important;width:auto !important;max-width:none !important;max-height:none !important;object-fit:contain !important;object-position:center center !important;filter:none !important;box-shadow:none !important;}
  body.apr-audition .apr-shonen-root .hero > span.tag,
  body.apr-audition .apr-shonen-root .hero > h1.en,
  body.apr-audition .apr-shonen-root .hero > p.lead,
  body.apr-audition .apr-shonen-root .hero > span.period,
  body.apr-audition .apr-shonen-root .hero > a.cta{position:relative !important;z-index:2 !important;}
}
/* ===== end X56 ===== */
/* ============================================================
   [X58] hero大ゴマ黒枠のビューポート中央化 2026-07-07
   オーナー指示「黒枠全体を真ん中に」。真因: rootは1080pxの中央
   カラムで、X55がheroを width:min(94vw,1320px) に拡幅+margin:auto
   としたが、幅が親を超えるとCSSのauto marginは中央化されず
   margin-left:0 / margin-right:-240px に解決=黒枠が右へ240px
   片伸びしていた。左右marginを対称のcalcで明示し枠ごと画面中央へ
   （rootが中央カラムのため (100%-幅)/2 が全画面幅で成立）。
   X57(立ち絵7%右シフト)は枠内に白空白を生むため本編集でブロック
   ごと撤去済み=立ち絵はX56の中央(-50%)へ復帰。削除で復元。
   ============================================================ */
@media (min-width:761px){
  body.apr-audition .apr-shonen-root .hero{
    margin-left:calc((100% - min(94vw,1320px))/2) !important;
    margin-right:calc((100% - min(94vw,1320px))/2) !important;
  }
}
/* end X58 */


/* ===== [X59] hero 1st AUDITION 号外明朝化(案4: 明朝+上下二重罫+朱角版1st) 2026-07-07 ===== */
body.apr-audition .apr-shonen-root .hero h1.en{
 font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif !important;
 font-weight:900 !important;
 letter-spacing:4px !important;
 line-height:1.12 !important;
 padding:12px 8px !important;
 border-top:4px double #1B1712 !important;
 border-bottom:4px double #1B1712 !important;
 text-shadow:0 1px 0 #FFF,0 -1px 0 #FFF,1px 0 0 #FFF,-1px 0 0 #FFF,0 3px 14px rgba(255,255,255,.9) !important;
}
@media(min-width:761px){
 body.apr-audition .apr-shonen-root .hero h1.en{font-size:70px !important}
}
@media(max-width:760px){
 body.apr-audition .apr-shonen-root .hero h1.en{border-top-width:3px !important;border-bottom-width:3px !important;padding:7px 5px !important;letter-spacing:2px !important}
}
body.apr-audition .apr-shonen-root .hero h1.en .num{
 display:inline-block !important;
 background:#C4332A !important;
 color:#fff !important;
 -webkit-text-fill-color:#fff !important;
 padding:.04em .18em !important;
 transform:rotate(-4deg) translateY(-.08em) !important;
 font-size:.62em !important;
 margin-right:.14em !important;
 text-shadow:none !important;
}
/* ===== end X59 ===== */


/* ===== [X60] hero中央グロー減光(眩しさ対策 白82%→20%) 2026-07-07 ===== */
body.apr-audition .apr-shonen-root .hero::after{
 background:radial-gradient(60% 82% at 50% 47%, rgba(255,255,255,0.20) 0%, rgba(255,255,255,0.10) 50%, rgba(255,255,255,0) 100%) !important;
}
/* ===== end X60 ===== */


/* ===== [X61] SP hero立ち絵の薄敷き廃止=不透明で大ゴマ上部に全幅配置・文字は下へ(スマホ透過見づらい対策) 2026-07-07 ===== */
@media(max-width:760px){
 body.apr-audition .apr-shonen-root .hero{height:auto !important;min-height:0 !important;padding-top:14px !important;justify-content:flex-start !important}
 body.apr-audition .apr-shonen-root .hero .hero-illust{position:static !important;opacity:1 !important;width:100% !important;height:auto !important;max-width:100% !important;transform:none !important;margin:0 auto 10px !important;object-fit:contain !important}
}
/* ===== end X61 ===== */


/* ============================================================
   [X64] 2026-07-08 /audition 浮遊□→漫画コマ割りパーツ化(案1+案4複合)
   オーナー選択: 案1=ミニ原稿ページ型(縦長4コマ)+案4=見開きミニ型(5コマ)。
   旧・浮遊□(k47 koma)は非表示(X47定義残置)。位置/回転/水色影は旧を継承。
   SVG本体は functions.php [X65] が .k47l と各 .k47d へ注入。
   可逆: 本ブロック削除 + functions.php [X65] 削除で完全復元。
   ============================================================ */
body.apr-audition .k47.koma{display:none !important;}
body.apr-audition svg.k64{position:absolute;overflow:visible;filter:drop-shadow(0 14px 30px rgba(120,180,220,.35)) drop-shadow(0 4px 10px rgba(27,23,18,.08));}
body.apr-audition svg.k64 polygon{fill:#FFFFFF;stroke:#1B1712;stroke-width:2;vector-effect:non-scaling-stroke;stroke-linejoin:miter;}
body.apr-audition svg.k64.p1{width:210px;height:137px;top:6vh;right:7vw;transform:rotate(6deg);}
body.apr-audition svg.k64.p2{width:124px;height:165px;top:34vh;left:4vw;transform:rotate(-7deg);}
body.apr-audition svg.k64.p3{width:82px;height:109px;top:12vh;left:16vw;transform:rotate(4deg);opacity:.92;}
body.apr-audition svg.k64.p4{width:106px;height:69px;top:55vh;right:13vw;transform:rotate(-5deg);opacity:.88;}
body.apr-audition svg.k64.p5{width:172px;height:112px;bottom:8vh;left:9vw;transform:rotate(5deg);}
body.apr-audition svg.k64.p6{width:102px;height:136px;bottom:16vh;right:5vw;transform:rotate(-8deg);opacity:.92;}
body.apr-audition svg.k64.p7{width:64px;height:85px;top:8vh;left:55vw;transform:rotate(8deg);opacity:.85;}
body.apr-audition svg.k64.pa{width:108px;height:70px;bottom:24px;right:3vw;transform:rotate(5deg);}
body.apr-audition svg.k64.pc{width:84px;height:112px;top:70px;left:3vw;transform:rotate(-6deg);}
body.apr-audition svg.k64.pe{width:92px;height:60px;top:42%;right:2vw;transform:rotate(7deg);}
@media (max-width:760px){
  body.apr-audition svg.k64.p3,body.apr-audition svg.k64.p4,body.apr-audition svg.k64.p7,
  body.apr-audition svg.k64.pa,body.apr-audition svg.k64.pc,body.apr-audition svg.k64.pe{display:none;}
  body.apr-audition svg.k64.p1{width:146px;height:95px;right:4vw;}
  body.apr-audition svg.k64.p2{width:100px;height:133px;}
  body.apr-audition svg.k64.p5{width:124px;height:81px;}
}
/* ===== end X64 ===== */


/* ============================================================
   [X68] 2026-07-08 /audition 見出し周りクリーン化(X66/X67フキダシ&集中線は撤去)
   オーナー指示: 吹き出し・集中線は削除、小タイトル(見出し)部分に装飾を入れない。
   ①セクション内 kira/spd/ton の停止はX66から引き継ぎ維持(交互装飾は復活させない)
   ②コマ割りパーツpc(ミニページ・旧top:70px left:3vw=見出しに被る)を左下へ移動
   可逆: 本ブロック削除で X64直後(kit-a/c交互装飾+pc見出し位置)に復元。
   ============================================================ */
body.apr-audition .k47d .k47.kira,
body.apr-audition .k47d .k47.spd,
body.apr-audition .k47d .k47.ton{display:none !important;}
body.apr-audition svg.k64.pc{top:auto;bottom:70px;left:4vw;}
/* ===== end X68 ===== */


/* ===== [X70] タブレット帯干渉回避・旧hero背景の読込停止・注記/其ノ捌スタイル ===== */
@media (min-width:761px) and (max-width:1099px){
  body.apr-audition svg.k64.p2, body.apr-audition svg.k64.p3, body.apr-audition svg.k64.p5{ display:none; }
  body.apr-audition svg.k64.p7{ left:auto; right:3vw; top:5vh; }
  body.apr-audition svg.k64.pe{ right:1vw; }
}
body.apr-audition .apr-bright-root .hero__bg{ background-image:none !important; }
body.apr-audition main > section:first-of-type{ background-image:linear-gradient(180deg, rgba(8,6,10,0), rgba(8,6,10,0)); }
body.apr-audition .cast-cap.k70note{ font-size:12px; opacity:.78; margin-top:4px; }
body.apr-audition .entry h2 .kanji{ color:rgba(236,228,209,.85); font-size:.42em; letter-spacing:.18em; margin-right:14px; display:inline-block; transform:translateY(-6px); }
/* ===== end X70 ===== */


/* ===== [X71] 応募期間バッジ（.period / .sel-foot）の視認性向上 ===== */
body.apr-audition .apr-shonen-root .period,
body.apr-audition .period{
  color:#C4332A!important;
  font-size:15px!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}
body.apr-audition .apr-shonen-root .sel-foot,
body.apr-audition .sel-foot{
  display:inline-block!important;
  background:#C4332A!important;
  color:#EFE7D5!important;
  font-size:16px!important;
  font-weight:800!important;
  opacity:1!important;
  letter-spacing:.03em!important;
  padding:10px 22px!important;
  border-radius:999px!important;
  box-shadow:2px 2px 0 0 rgba(27,23,18,.25)!important;
}

body.apr-audition .apr-shonen-root .sec.alt:has(.phases) .sel-foot,
body.apr-audition .apr-shonen-root .sec:has(.phases) .sel-foot{
  display:inline-block!important;
  background:#C4332A!important;
  color:#EFE7D5!important;
  opacity:1!important;
  font-size:16px!important;
  font-weight:800!important;
  letter-spacing:.03em!important;
  padding:10px 22px!important;
  border-radius:999px!important;
  box-shadow:2px 2px 0 0 rgba(27,23,18,.25)!important;
}

body.apr-audition .apr-shonen-root .sec.alt:has(.phases) .sel-foot,
body.apr-audition .apr-shonen-root .sec:has(.phases) .sel-foot,
body.apr-audition .apr-shonen-root .sel-foot,
body.apr-audition .sel-foot{
  color:#FFFFFF!important;
}
body.apr-audition .apr-shonen-root .period,
body.apr-audition .period{
  background:#C4332A!important;
  border-color:#C4332A!important;
  color:#FFFFFF!important;
}

body.apr-audition .apr-shonen-root .sec.alt:has(.phases) .sel-foot,
body.apr-audition .apr-shonen-root .sec:has(.phases) .sel-foot,
body.apr-audition .apr-shonen-root .sel-foot,
body.apr-audition .sel-foot,
body.apr-audition .apr-shonen-root .period,
body.apr-audition .period{
  -webkit-text-fill-color:#FFFFFF!important;
}
/* ===== end X71 ===== */

/* ===== [X77] TOPヒーロー募集バッジ「応募締切」ラベルが黒地に墨色で不可視だった修正 (2026-07-09) ===== */
body.apr-home .hero__audition-dl{
  color:rgba(255,255,255,.72)!important;
  -webkit-text-fill-color:rgba(255,255,255,.72)!important;
}
body.apr-home .hero__audition-dl b{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}
/* ===== end X77 ===== */


/* ===== [X78] 完成ロゴ(横長A透明・1933x498)をヘッダー .brand とTOPヒーロー .hero__opera に反映 (2026-07-09) ===== */
body.apr-home .header .brand{
  display:inline-block!important;
  width:min(210px,56vw)!important;
  aspect-ratio:1933/498;
  height:auto!important;
  background:url('/wp-content/uploads/2026/07/alter-logo-yoko-a.png') no-repeat left center/contain!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
}
body.apr-home .header .brand b{color:transparent!important}
body.apr-home .header .brand .slash{display:none!important}
body.apr-home .hero__opera{
  display:block!important;
  width:min(380px,72vw)!important;
  aspect-ratio:1933/498;
  height:auto!important;
  background:url('/wp-content/uploads/2026/07/alter-logo-yoko-a.png') no-repeat left center/contain!important;
  transform:none!important;
}
body.apr-home .hero__opera .top,
body.apr-home .hero__opera .btm{display:none!important}
/* ===== end X78 ===== */


/* ===== [X81] SP見出しの見切れ修正（2026-07-09）: .sec-h の word-break:keep-all は iOS Safari(WebKit)で読点「、」でも改行されず、長い見出し（其ノ弐）が1行のまま右端で見切れる（オーナーiPhone実機報告。Chrome/Blinkは読点で折返すため再現しない）。通常折返し＋緊急折返しへ変更（行が収まる場合の見た目は不変）。削除で復元可 ===== */
body.apr-audition .apr-shonen-root .sec-h{ word-break:normal !important; overflow-wrap:anywhere !important; }
/* ===== end X81 ===== */

/* ===== [X82] Organizer(運営事務所)ブロック新設（2026-07-09）: ENTRYセクション直下・フッター直前に事務所ロゴ＋公式サイトリンク（reject.jp/vtuberAudition のOrganizer枠と同型）。HTML側は functions.php の apr-orgz セクション。両方削除で復元可 ===== */
body.apr-audition .apr-shonen-root .apr-orgz{ padding:64px 20px 88px; }
body.apr-audition .apr-shonen-root .orgz{ max-width:720px; margin:0 auto; text-align:center; }
body.apr-audition .apr-shonen-root .orgz-label{ display:block; font-size:12px; letter-spacing:.32em; text-transform:uppercase; color:#5C5344; margin-bottom:26px; }
body.apr-audition .apr-shonen-root .orgz-logo{ display:block; max-width:420px; width:72%; margin:0 auto; }
body.apr-audition .apr-shonen-root .orgz-logo img{ width:100%; height:auto; display:block; }
body.apr-audition .apr-shonen-root .orgz-btn{ display:inline-flex; align-items:center; gap:10px; margin-top:30px; padding:14px 38px; background:#1B1712; color:#ECE4D1; font-size:13px; letter-spacing:.18em; text-decoration:none; transition:background .25s ease; }
body.apr-audition .apr-shonen-root .orgz-btn:hover{ background:#C4332A; color:#fff; }
/* ===== end X82 ===== */


/* ===== [X88] プライバシーポリシーの配色・ロゴをTOP(apr-home)へ統一 (2026-07-11) ===== */
body.privacy-policy{ background:#E9E4DA!important; color:#0A0A0B!important; }
body.privacy-policy .header{
  background:rgba(250,250,250,.97)!important;
  border-bottom:1px solid rgba(10,10,11,.1)!important;
  box-shadow:rgba(10,10,11,.1) 0 1px 0 0!important;
  -webkit-backdrop-filter:blur(14px)!important; backdrop-filter:blur(14px)!important;
}
body.privacy-policy .header .brand{
  display:inline-block!important; width:min(210px,56vw)!important;
  aspect-ratio:1933/498; height:auto!important;
  background:url('/wp-content/uploads/2026/07/alter-logo-yoko-a.png') no-repeat left center/contain!important;
  color:transparent!important; -webkit-text-fill-color:transparent!important;
  font-size:0!important; line-height:0!important;
}
body.privacy-policy .header .brand b{ color:transparent!important; -webkit-text-fill-color:transparent!important; }
body.privacy-policy .header .brand .slash{ display:none!important; }
body.privacy-policy .header .nav a{ color:#3F3F46!important; -webkit-text-fill-color:#3F3F46!important; }
body.privacy-policy .header .nav a.nav__audition{ color:#E5174A!important; -webkit-text-fill-color:#E5174A!important; border:1px solid rgba(155,15,51,.4)!important; }
body.privacy-policy main h1, body.privacy-policy main h2, body.privacy-policy main h3, body.privacy-policy main .sec__tt{ color:#0A0A0B!important; -webkit-text-fill-color:#0A0A0B!important; }
body.privacy-policy main p, body.privacy-policy main li, body.privacy-policy main td, body.privacy-policy main dd, body.privacy-policy main dt, body.privacy-policy main strong, body.privacy-policy main em{ color:#1A1714!important; -webkit-text-fill-color:#1A1714!important; }
body.privacy-policy main a{ color:#9B0F33!important; -webkit-text-fill-color:#9B0F33!important; }
/* ===== end X88 ===== */


/* ===== [X89] news個別ページ(single-post)の配色・ロゴをTOPへ統一（X88と同トークン） (2026-07-11) ===== */
body.single-post{ background:#E9E4DA!important; color:#0A0A0B!important; }
body.single-post .header{
  background:rgba(250,250,250,.97)!important;
  border-bottom:1px solid rgba(10,10,11,.1)!important;
  box-shadow:rgba(10,10,11,.1) 0 1px 0 0!important;
  -webkit-backdrop-filter:blur(14px)!important; backdrop-filter:blur(14px)!important;
}
body.single-post .header .brand{
  display:inline-block!important; width:min(210px,56vw)!important;
  aspect-ratio:1933/498; height:auto!important;
  background:url('/wp-content/uploads/2026/07/alter-logo-yoko-a.png') no-repeat left center/contain!important;
  color:transparent!important; -webkit-text-fill-color:transparent!important;
  font-size:0!important; line-height:0!important;
}
body.single-post .header .brand b{ color:transparent!important; -webkit-text-fill-color:transparent!important; }
body.single-post .header .brand .slash{ display:none!important; }
body.single-post .header .nav a{ color:#3F3F46!important; -webkit-text-fill-color:#3F3F46!important; }
body.single-post .header .nav a.nav__audition{ color:#E5174A!important; -webkit-text-fill-color:#E5174A!important; border:1px solid rgba(155,15,51,.4)!important; }
body.single-post main .sec__lb{ color:#9B0F33!important; -webkit-text-fill-color:#9B0F33!important; }
body.single-post main h1, body.single-post main h2, body.single-post main h3, body.single-post main .sec__tt{ color:#0A0A0B!important; -webkit-text-fill-color:#0A0A0B!important; }
body.single-post main p, body.single-post main li, body.single-post main time, body.single-post main strong, body.single-post main em, body.single-post main td{ color:#1A1714!important; -webkit-text-fill-color:#1A1714!important; }
body.single-post main .sec__lb, body.single-post main .sec__lb *{ color:#9B0F33!important; -webkit-text-fill-color:#9B0F33!important; }
body.single-post main a{ color:#9B0F33!important; -webkit-text-fill-color:#9B0F33!important; }
/* ===== end X89 ===== */

/* ============================================================
   [X94] 2026-07-11 /audition footer: remove brand block
   ("ALTER PRODUCTION" + Zero Advance description, 1st grid col).
   Owner request. Grid cols 2-3 were already hidden, so hide the
   whole grid (also removes its mb-12 gap). Copyright line stays.
   Reversible: delete this block.
   ============================================================ */
body.apr-audition footer .grid{display:none!important}
/* ===== end X94 ===== */

/* ===== [X95] 2026-07-11 hero .cta: 内側1.5px 40%白insetを除去（透過感対策・オーナー指示） ===== */
body.apr-audition .apr-shonen-root .hero a.cta{
  box-shadow:6px 6px 0 #1B1712 !important;
}
/* ===== end X95 ===== */


/* ===== [X96] CAST maker credits v4 band (2026-07-13) ===== */
body.apr-audition .apr-shonen-root .cc96-band{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:3px double #1B1712;border-bottom:3px double #1B1712;margin:18px 0 4px;padding:13px 6px;font-family:"Noto Serif JP","Yu Mincho",serif}
body.apr-audition .apr-shonen-root .cc96-band, body.apr-audition .apr-shonen-root .cc96-band *{-webkit-text-fill-color:currentColor}
body.apr-audition .apr-shonen-root .cc96-ent{display:flex;align-items:center;gap:9px;flex:1;justify-content:center;min-width:0}
body.apr-audition .apr-shonen-root img.cc96-av{width:36px !important;height:36px !important;border-radius:50% !important;flex:0 0 auto;border:1.5px solid #1B1712 !important;background:#FFFFFF;object-fit:cover;box-shadow:none !important;margin:0 !important}
body.apr-audition .apr-shonen-root .cc96-t{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}
body.apr-audition .apr-shonen-root .cc96-role{font-size:9.5px;color:#C4332A;letter-spacing:.16em;line-height:1.3}
body.apr-audition .apr-shonen-root .cc96-name{font-size:14px;color:#1B1712;line-height:1.5}
body.apr-audition .apr-shonen-root .cc96-name a{color:#C4332A;font-size:11.5px;text-decoration:none;border-bottom:1px solid rgba(196,51,42,.35);word-break:break-all}
body.apr-audition .apr-shonen-root .cc96-name a:hover{border-bottom-color:#C4332A}
body.apr-audition .apr-shonen-root .cc96-sep{color:#C4332A;font-size:9px;flex:0 0 auto}
@media (max-width:760px){body.apr-audition .apr-shonen-root .cc96-band{flex-direction:column;align-items:stretch;gap:13px;padding:14px 8px}body.apr-audition .apr-shonen-root .cc96-ent{justify-content:flex-start;padding-left:16%}body.apr-audition .apr-shonen-root .cc96-sep{display:none}}
/* ===== end X96 ===== */


/* ===== [X101] Organizerセクション（主催クレジット/OFFICIAL SITEリンク）を非表示（2026-07-14 オーナー指示・可逆＝ブロック削除で復活） start ===== */
body.apr-audition .apr-orgz{ display:none !important; }
/* ===== end X101 ===== */