
:root {
  --bg: #0b0f17; --ink: #f4f1ec; --mute: rgba(244,241,236,.66); --line: rgba(255,255,255,.18);
  --edge: clamp(16px, 4vw, 64px); --ease: cubic-bezier(.22,.8,.2,1);
  --jp: "Zen Kaku Gothic New", "Hiragino Sans", sans-serif; --en: "Inter", "Zen Kaku Gothic New", sans-serif;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { background: var(--bg); color: var(--ink); font: 500 15px/1.85 var(--jp); letter-spacing: .02em; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; }
main { position: relative; z-index: 2; }


.glass {
  border: 1px solid rgba(255,255,255,.34); border-radius: 22px;
  background: linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.02) 46%), rgba(14,18,28,.42);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 0 24px 60px rgba(0,0,0,.35);
  backdrop-filter: blur(18px) saturate(160%); -webkit-backdrop-filter: blur(18px) saturate(160%);
}


.bg { position: fixed; inset: 0; z-index: 0; overflow: hidden; background: var(--bg); }
.bg__type { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: center; gap: 2vh; transform: translate3d(var(--tx, 0), 0, 0); transition: opacity 700ms ease; }
.bg__type span { white-space: nowrap; font: 900 clamp(120px, 21vw, 360px)/.86 var(--en); letter-spacing: -.04em; color: transparent; -webkit-text-stroke: 1px rgba(255,255,255,.075); }
.bg__type span:nth-child(2) { transform: translateX(-28vw); }
.bg__scene img, .bg__mv img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 900ms ease; }
.bg__scene img.is-on { opacity: 1; }
.bg__mv img { transition: opacity 1400ms ease, transform 9s linear; transform: scale(1.06); }
.bg__mv img.is-on { opacity: 1; transform: scale(1); }
.bg__scene, .bg__mv { position: absolute; inset: 0; opacity: 0; transition: opacity 800ms ease; }
body[data-bg="scene"] .bg__scene, body[data-bg="mv"] .bg__mv { opacity: 1; }
body[data-bg="scene"] .bg__type, body[data-bg="mv"] .bg__type { opacity: 0; }

.bg__hero { position: absolute; inset: 0; opacity: 0; transition: opacity 900ms ease; }
.bg__hero video, .bg__hero img { width: 100%; height: 100%; object-fit: cover; }
html[data-hero="sky"] body[data-bg="hero"] .bg__hero[data-k="sky"],
html[data-hero="tot"] body[data-bg="hero"] .bg__hero[data-k="tot"],
html[data-hero="window"] body[data-bg="hero"] .bg__hero[data-k="window"],
html[data-hero="mvloop"] body[data-bg="hero"] .bg__hero[data-k="mvloop"],
html[data-hero="totvideo"] body[data-bg="hero"] .bg__hero[data-k="totvideo"],
html[data-hero="reelbg"] body[data-bg="hero"] .bg__hero[data-k="reelbg"],
html[data-hero="faces"] body[data-bg="hero"] .bg__hero[data-k="faces"] { opacity: 1; }

.bg__hero--cycle img { position: absolute; inset: 0; opacity: 0; transition: opacity 1600ms ease, transform 8s linear; transform: scale(1.06); }
.bg__hero--cycle img.is-on { opacity: 1; transform: scale(1); }

html[data-hero="reelbg"] .hero { grid-template-columns: minmax(0, 1fr); grid-template-areas: "name" "stats" "sub"; max-width: 1560px; }
html[data-hero="reelbg"] .hero .reel { position: absolute; right: var(--edge); bottom: 40px; padding: 0; border: 0; background: none; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
html[data-hero="reelbg"] .hero .reel video { display: none; }
html[data-hero="reelbg"] .hero .reel__sound { position: static; }
html[data-hero="reelbg"] .hero { position: relative; }

.bg__hero[data-k="reelbg"] video { transform: scale(1.3); }

.pwin { display: none; }
html[data-hero="reelbg"] .hero { grid-template-columns: minmax(0, 1fr) minmax(220px, 360px); grid-template-areas: "name pwin" "stats pwin" "sub pwin"; }
html[data-hero="reelbg"] .pwin { grid-area: pwin; align-self: center; display: flex; flex-direction: column; gap: 10px; padding: 8px; border-radius: 22px; transition: transform 400ms var(--ease), border-color 300ms ease, box-shadow 300ms ease; }
.pwin__img { display: block; aspect-ratio: 1060 / 1484; overflow: hidden; border-radius: 15px; }
.pwin__img img { width: 100%; height: 100%; object-fit: cover; transition: transform 600ms var(--ease); }
.pwin__cap { display: flex; justify-content: space-between; align-items: center; padding: 4px 8px 6px; font: 700 12px/1 var(--en); letter-spacing: .26em; }
.pwin__cap i { font-size: 16px; letter-spacing: 0; transition: transform 300ms var(--ease); }
.pwin:hover { transform: translateY(-4px); border-color: rgba(255,255,255,.8); box-shadow: inset 0 1px 0 rgba(255,255,255,.6), 0 30px 70px rgba(0,0,0,.45); }
.pwin:hover .pwin__img img { transform: scale(1.03); }
.pwin:hover .pwin__cap i { transform: translateX(4px); }
@media (max-width: 1080px) {
  html[data-hero="reelbg"] .hero { grid-template-columns: minmax(0, 1fr) 38%; grid-template-areas: "name pwin" "stats stats" "sub sub"; }
}
@media (max-width: 680px) {
  html[data-hero="reelbg"] .hero { grid-template-columns: 1fr; grid-template-areas: "name" "stats" "sub" "pwin"; min-height: 100svh; }
  html[data-hero="reelbg"] .pwin { width: 56%; justify-self: start; }
}

.bg__hero--faces { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 2px; }
.bg__hero--faces img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
@media (max-width: 680px) { .bg__hero--faces { grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: 1fr 1fr; } }
body[data-bg="hero"] .bg__type { opacity: 0; }
body[data-bg="hero"] .bg__veil { opacity: 1; }

.bg__veil { position: absolute; inset: 0; opacity: 0; transition: opacity 800ms ease; background: linear-gradient(90deg, rgba(8,10,16,.72) 0%, rgba(8,10,16,.25) 46%, rgba(8,10,16,.08) 70%), linear-gradient(0deg, rgba(8,10,16,.55), transparent 40%); }
body[data-bg="scene"] .bg__veil, body[data-bg="mv"] .bg__veil { opacity: 1; }


section { padding: clamp(80px, 11vw, 160px) var(--edge); }
.sec-label { font: 700 11px/1 var(--en); letter-spacing: .3em; color: var(--mute); }
.sec-head { max-width: 1280px; margin: 0 auto clamp(30px, 4vw, 56px); display: grid; grid-template-columns: auto 1fr; column-gap: 40px; align-items: end; }
.sec-head .sec-label { grid-column: 1 / -1; margin-bottom: 14px; }
.sec-head h2 { font: 900 clamp(30px, 4vw, 56px)/1.15 var(--jp); letter-spacing: .02em; }
.sec-head > p:last-child:not(.sec-label) { justify-self: end; max-width: 34em; font-size: 12.5px; line-height: 1.8; color: var(--mute); }
i { font-style: normal; }


.hero { min-height: 100svh; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); grid-template-areas: "name reel" "stats reel" "sub reel"; align-content: center; column-gap: clamp(28px, 4vw, 72px); row-gap: 28px; padding-top: clamp(70px, 9vh, 120px); padding-bottom: 60px; max-width: 1560px; margin: 0 auto; }
.hero__name { grid-area: name; align-self: end; }
.kicker { font: 700 11px/1 var(--en); letter-spacing: .32em; color: var(--mute); }
.hero h1 { margin-top: 18px; font: 900 clamp(48px, 6.4vw, 108px)/1.02 var(--jp); letter-spacing: .1em; }
.hero h1 span { display: block; margin-top: 16px; font: 300 clamp(13px, 1.2vw, 18px)/1 var(--en); letter-spacing: .62em; color: var(--mute); }
.role { margin-top: 22px; font-size: 15px; font-weight: 700; letter-spacing: .16em; }
.stats { grid-area: stats; list-style: none; display: grid; grid-template-columns: repeat(3, auto); justify-content: start; gap: 0 clamp(18px, 2.6vw, 44px); padding-top: 26px; border-top: 1px solid var(--line); }
.stats li { display: flex; flex-direction: column; gap: 10px; }
.stats b { font: 800 clamp(34px, 3.6vw, 60px)/1 var(--en); letter-spacing: -.02em; white-space: nowrap; }
.stats b i { font: 900 .7em/1 var(--jp); margin-left: .04em; letter-spacing: 0; }
.stats span { font-size: 11.5px; font-weight: 700; word-break: keep-all; overflow-wrap: anywhere; letter-spacing: .05em; color: var(--mute); line-height: 1.5; }
.stats-sub { display: none; grid-area: sub; font-size: 12.5px; color: var(--mute); letter-spacing: .06em; }
.reel { grid-area: reel; align-self: center; position: relative; padding: 8px; }
.reel video { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 15px; background: #000; }
.reel__sound { position: absolute; right: 22px; bottom: 22px; padding: 8px 12px; border-radius: 99px; border: 1px solid rgba(255,255,255,.55); background: rgba(10,12,18,.42); font: 700 10px/1 var(--en); letter-spacing: .14em; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }


.clients { padding-top: 0; padding-bottom: clamp(40px, 6vw, 90px); max-width: 1560px; margin: 0 auto; }
.clients .sec-label { margin-bottom: 14px; }
.clients__row { list-style: none; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 26px; padding: 22px 30px; border-radius: 18px; }
.clients__row li { font: 900 clamp(15px, 1.45vw, 21px)/1.4 var(--jp); letter-spacing: .06em; }


.hl { min-height: 100svh; padding-top: clamp(56px, 7vh, 96px); padding-bottom: clamp(40px, 6vh, 80px); }
.hl .sec-head { margin-bottom: 22px; }
@media (max-height: 640px) and (min-width: 1081px) { .hl { padding-top: 24px; } .hl .sec-head { margin-bottom: 12px; } .hl .sec-head h2 { font-size: 26px; } .hl-board { gap: 8px; padding: 20px 24px; } .hl-board__n { font-size: 48px; } }
.hl-stage { max-width: 1560px; margin: 0 auto; display: grid; grid-template-columns: minmax(360px, 30%) minmax(0, 1fr); gap: 14px; height: min(calc(100svh - 140px), 720px); min-height: 380px; }
.hl-board { padding: clamp(24px, 2.6vw, 40px); display: flex; flex-direction: column; justify-content: flex-start; gap: 12px; overflow: auto; }
.hl-board__case { font-size: 12.5px; font-weight: 700; color: var(--mute); line-height: 1.6; }
.hl-board h3 { font: 900 clamp(26px, 2.3vw, 40px)/1.25 var(--jp); }
.badge { width: fit-content; padding: 4px 12px; border-radius: 99px; border: 1px solid rgba(255,255,255,.7); font-size: 12px; font-weight: 700; letter-spacing: .08em; }
.hl-board__n { font: 800 clamp(50px, 4.4vw, 82px)/1 var(--en); letter-spacing: -.03em; white-space: nowrap; }
.hl-board__n i { font: 900 .7em/1 var(--jp); margin-left: .04em; letter-spacing: 0; }
.hl-board__n > i { font-size: .42em; margin-left: .1em; }
.hl-board__sub { font-size: 12px; color: var(--mute); }
.watch { margin-top: 10px; width: fit-content; padding: 12px 18px; border-radius: 99px; border: 1px solid rgba(255,255,255,.7); font-size: 13px; font-weight: 700; transition: background-color 200ms ease; }
.watch:hover { background: rgba(255,255,255,.14); }
.hl-board > * { transition: opacity 240ms ease, transform 300ms var(--ease); }
.hl-board.is-swapping > * { opacity: 0; transform: translateY(8px); }
.hl-rail { display: flex; gap: 8px; min-width: 0; padding: 8px; border-radius: 22px; border: 1px solid rgba(255,255,255,.3); background: rgba(14,18,28,.22); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.hl-panel { position: relative; flex: 1 1 0; min-width: 0; overflow: hidden; border-radius: 14px; border: 1px solid rgba(255,255,255,.28); transition: flex-grow 420ms var(--ease), border-color 300ms ease, box-shadow 300ms ease; }
.hl-panel.is-active { flex-grow: 6.5; border-color: rgba(255,255,255,.85); box-shadow: 0 0 0 1px rgba(255,255,255,.25), 0 18px 44px rgba(0,0,0,.4); }
.hl-panel img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.hl-panel__cap { display: none; }

.scene-break { padding: 0; }
.scene-break figure { position: relative; }
.scene-break img { width: 100%; max-height: 92svh; object-fit: cover; }
.scene-break figcaption { position: absolute; left: var(--edge); bottom: 22px; padding: 8px 14px; border-radius: 99px; border: 1px solid rgba(255,255,255,.5); background: rgba(10,12,18,.4); font: 700 11px/1 var(--en); letter-spacing: .12em; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }


.board { max-width: 1560px; margin: 0 auto 16px; padding: clamp(22px, 2.6vw, 38px); }
.board__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px 40px; flex-wrap: wrap; padding-bottom: 20px; margin-bottom: 20px; border-bottom: 1px solid var(--line); }
.board__head h3 { font: 900 clamp(20px, 2vw, 30px)/1.3 var(--jp); }
.board__head p { margin-top: 6px; font-size: 12px; color: var(--mute); }
.board__total { text-align: right; }
.board__total span { display: block; font-size: 12px; color: var(--mute); margin-bottom: 4px; }
.board__total b { font: 800 clamp(34px, 3.4vw, 56px)/1 var(--en); letter-spacing: -.02em; white-space: nowrap; color: var(--ink); }
.board__total b i { font: 900 .7em/1 var(--jp); margin-left: .04em; letter-spacing: 0; }
.board__total b > i:last-child { font-size: .45em; margin-left: .1em; }
.board--big .board__total b { font-size: clamp(44px, 4.6vw, 76px); }
.covers { display: grid; grid-auto-flow: column; grid-auto-columns: clamp(150px, 15.5vw, 230px); gap: 12px; overflow-x: auto; padding-bottom: 10px; scroll-snap-type: x proximity; scrollbar-width: thin; scrollbar-color: rgba(255,255,255,.3) transparent; }
.cv { scroll-snap-align: start; display: flex; flex-direction: column; gap: 10px; }
.cv__img { display: block; aspect-ratio: 9 / 16; overflow: hidden; border-radius: 12px; border: 1px solid rgba(255,255,255,.25); background: #111; }
.cv__img img { width: 100%; height: 100%; object-fit: cover; transition: transform 500ms var(--ease); }
.cv:hover .cv__img img { transform: scale(1.04); }
.cv__meta { display: flex; flex-direction: column; gap: 4px; }
.cv__meta b { font-size: 13px; font-weight: 700; line-height: 1.45; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.9em; }
.cv__meta strong { font: 800 clamp(22px, 1.9vw, 30px)/1 var(--en); letter-spacing: -.02em; white-space: nowrap; }
.cv__meta strong i { font: 900 .7em/1 var(--jp); margin-left: .03em; }
.cv__meta strong > i:last-child { font-size: .5em; }
.cv__meta em { font-style: normal; font-size: 11px; color: var(--mute); }
.more { margin-top: 14px; }
.more__btn { padding: 10px 18px; border-radius: 99px; border: 1px solid rgba(255,255,255,.55); font-size: 13px; font-weight: 700; }
.more__btn:hover { background: rgba(255,255,255,.12); }
.more__list { list-style: none; margin-top: 14px; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 0 28px; }
.more__list[hidden] { display: none; }
.more__list li { display: flex; justify-content: space-between; gap: 12px; padding: 9px 2px; border-bottom: 1px solid rgba(255,255,255,.12); font-size: 13px; }
.more__list li span { font: 700 13px/1.6 var(--en); white-space: nowrap; color: var(--mute); }
.posters { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.poster { display: flex; flex-direction: column; gap: 14px; }
.poster__img { display: block; aspect-ratio: 9 / 14; overflow: hidden; border-radius: 16px; border: 1px solid rgba(255,255,255,.28); }
.poster__img img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; transition: transform 600ms var(--ease); }
.poster:hover .poster__img img { transform: scale(1.03); }
.poster__meta { display: flex; flex-direction: column; gap: 6px; }
.poster__meta small { font-size: 11.5px; color: var(--mute); }
.poster__meta b { font: 900 clamp(17px, 1.6vw, 22px)/1.35 var(--jp); }
.poster__meta strong { font: 800 clamp(34px, 3.2vw, 52px)/1 var(--en); letter-spacing: -.02em; }
.poster__meta strong i { font: 900 .7em/1 var(--jp); margin-left: .04em; }
.poster__meta strong > i:last-child { font-size: .45em; }
.poster__meta em { font-style: normal; font-size: 12px; font-weight: 700; }
.poster__meta span { font-size: 12px; color: var(--mute); }


.mvs > * { max-width: 1560px; margin-left: auto; margin-right: auto; }
.mv { display: flex; flex-direction: column; gap: 12px; }
.mv__img { display: block; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 14px; border: 1px solid rgba(255,255,255,.3); background: #000; }
.mv__img img { width: 100%; height: 100%; object-fit: cover; transition: transform 600ms var(--ease); }
.mv:hover .mv__img img { transform: scale(1.03); }
.mv__meta b { display: block; font-size: 14px; font-weight: 700; line-height: 1.5; }
.mv__meta span { display: block; margin-top: 4px; font-size: 12px; line-height: 1.75; color: var(--mute); }
.mv-feat .mv { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: 28px; align-items: end; padding: 12px; }
.mv-feat .mv__meta b { font: 900 clamp(22px, 2.2vw, 34px)/1.35 var(--jp); }
.mv-feat .mv__meta span { font-size: 14px; margin-top: 14px; color: var(--ink); }
.mv-grid { margin-top: 30px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 18px; }
.mv-more { margin-top: 34px; font-size: 13px; line-height: 2; color: var(--mute); }
.mv-more b { margin-right: 12px; color: var(--ink); }
.ads { margin-top: 40px; }
.ads ul { list-style: none; margin-top: 12px; display: flex; flex-wrap: wrap; gap: 10px; }
.ads li, .ads a { display: flex; gap: 14px; align-items: baseline; }
.ads li { padding: 14px 20px; border-radius: 16px; border: 1px solid rgba(255,255,255,.4); background: rgba(10,12,18,.4); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.ads span { font-size: 12px; color: var(--mute); }


.profile__grid { max-width: 1280px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); gap: clamp(20px, 3vw, 48px); align-items: center; }
.profile__photo img { width: 100%; max-height: 86svh; object-fit: contain; border-radius: 18px; }
.profile__text { padding: clamp(24px, 3vw, 48px); }
.profile__name { font: 900 clamp(32px, 3.4vw, 54px)/1.1 var(--jp); letter-spacing: .1em; }
.profile__name span { display: block; margin-top: 12px; font: 300 13px/1 var(--en); letter-spacing: .55em; color: var(--mute); }
.profile__role { margin: 18px 0 22px; font-size: 13px; font-weight: 700; letter-spacing: .1em; }
.profile__text > p:not(.profile__name):not(.profile__role) { margin-bottom: 12px; font-size: clamp(13.5px, 1.05vw, 15.5px); line-height: 1.95; }
.profile__text h3 { margin: 26px 0 10px; padding-bottom: 8px; border-bottom: 1px solid var(--line); font: 700 11px/1 var(--en); letter-spacing: .3em; }
.aw { list-style: none; }
.aw li { display: grid; grid-template-columns: 4.2em 1fr; gap: 12px; padding: 6px 0; font-size: 13.5px; }
.aw b { font: 700 13px/1.7 var(--en); }


.career__wrap { position: relative; max-width: 980px; margin: 0 auto; }
.career__line { position: absolute; left: 0; top: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.career__line path { fill: none; stroke: rgba(255,255,255,.9); stroke-width: 1.5; filter: drop-shadow(0 0 6px rgba(255,255,255,.45)); }
.career__list { list-style: none; position: relative; }
.career__list li { position: relative; display: grid; grid-template-columns: 7.5em 1fr; gap: 24px; padding: 18px 0 18px 46px; border-bottom: 1px solid rgba(255,255,255,.1); }
.career__list li::before { content: ""; position: absolute; left: 8px; top: 30px; width: 11px; height: 11px; border-radius: 50%; background: var(--bg); border: 1.5px solid rgba(255,255,255,.9); }
.career__list b { font: 800 clamp(16px, 1.5vw, 21px)/1.5 var(--en); letter-spacing: .02em; }
.career__list p { font-size: clamp(13.5px, 1.05vw, 15.5px); line-height: 1.85; }


.contact { text-align: center; padding-bottom: clamp(70px, 9vw, 130px); }
.contact__name { margin-top: 26px; font: 900 clamp(36px, 5vw, 80px)/1.1 var(--jp); letter-spacing: .12em; }
.contact__name span { display: block; margin-top: 14px; font: 300 14px/1 var(--en); letter-spacing: .6em; color: var(--mute); }
.contact__sns { list-style: none; margin-top: 40px; display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; }
.contact__sns a { display: flex; flex-direction: column; gap: 4px; min-width: 190px; padding: 18px 26px; border-radius: 18px; font: 800 17px/1.2 var(--en); transition: background-color 200ms ease; }
.contact__sns a span { font: 500 12px/1 var(--en); color: var(--mute); }
.contact__sns a:hover { background-color: rgba(255,255,255,.12); }
footer { position: relative; z-index: 2; padding: 26px var(--edge); border-top: 1px solid var(--line); font: 600 10px/1 var(--en); letter-spacing: .18em; color: var(--mute); }


.js .r-in { opacity: 0; transform: translateY(18px); transition: opacity 700ms ease, transform 800ms var(--ease); }
.js .r-in.is-in { opacity: 1; transform: none; }


@media (max-width: 1080px) {
  .hero { grid-template-columns: 1fr; grid-template-areas: "name" "stats" "sub" "reel"; min-height: 0; }
  .hl-stage { grid-template-columns: 1fr; height: auto; }
  .hl-board { order: 2; }
  .hl-rail { height: 64svh; }
  .mv-feat .mv { grid-template-columns: 1fr; }
  .mv-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .profile__grid { grid-template-columns: 1fr; }
  .profile__photo img { max-height: 70svh; margin: 0 auto; }
}
@media (max-width: 680px) {
  body { font-size: 14px; }
  section { padding-top: 72px; padding-bottom: 72px; }
  .sec-head { grid-template-columns: 1fr; }
  .sec-head > p:last-child:not(.sec-label) { justify-self: start; margin-top: 12px; }
  .hero { padding-top: 64px; row-gap: 22px; }
  .hero h1 { font-size: 13vw; letter-spacing: .06em; }
  .hero h1 span { letter-spacing: .42em; }
  .stats { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 10px; }
  .stats b { font-size: 7.6vw; }
  .stats span { font-size: 10px; }
  .clients__row { justify-content: flex-start; gap: 6px 18px; padding: 16px 18px; }
  .clients__row li { font-size: 14px; }
  
  .hl-board { display: none; }
  .hl-rail { height: auto; display: grid; grid-auto-flow: column; grid-auto-columns: 80vw; overflow-x: auto; scroll-snap-type: x mandatory; padding: 0; border: 0; background: none; backdrop-filter: none; -webkit-backdrop-filter: none; gap: 10px; margin: 0 calc(var(--edge) * -1); padding: 0 var(--edge); }
  .hl-panel, .hl-panel.is-active { scroll-snap-align: center; border-radius: 16px; display: flex; flex-direction: column; text-align: left; background: rgba(14,18,28,.5); }
  .hl-panel img { height: 54svh; max-height: 480px; border-radius: 16px 16px 0 0; }
  .hl-panel__cap { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px 18px; }
  .hl-panel__cap small { font-size: 11px; color: var(--mute); line-height: 1.5; }
  .hl-panel__cap b { font: 900 22px/1.3 var(--jp); }
  .hl-panel__cap em { font-style: normal; width: fit-content; padding: 2px 10px; border-radius: 99px; border: 1px solid rgba(255,255,255,.6); font-size: 11px; font-weight: 700; }
  .hl-panel__cap strong { font: 800 40px/1.05 var(--en); letter-spacing: -.02em; }
  .hl-panel__cap strong i { font: 900 .7em/1 var(--jp); }
  .hl-panel__cap strong > i:last-child { font-size: .45em; }
  .board { border-radius: 18px; padding: 20px 16px; }
  .board__total { text-align: left; }
  .covers { grid-auto-columns: 42vw; }
  .posters { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 70vw; overflow-x: auto; scroll-snap-type: x mandatory; }
  .poster { scroll-snap-align: start; }
  .mv-grid { grid-template-columns: 1fr; }
  .career__list li { grid-template-columns: 1fr; gap: 2px; padding-left: 36px; }
  .career__list li::before { left: 3px; top: 26px; }
  .contact__sns a { min-width: 0; width: 100%; }
  .contact__sns li { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .js .r-in { opacity: 1; transform: none; transition: none; }
  .bg__mv img { transition: opacity 300ms ease; transform: none; }
}

.hl .sec-head, .hl .sec-head p { text-shadow: 0 1px 3px rgba(0,0,0,.75), 0 2px 18px rgba(0,0,0,.55); }
.hl .sec-head > p:last-child:not(.sec-label) { color: #fff; }


.jump { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: clamp(28px, 3vw, 44px); }
.jump__card { position: relative; display: flex; flex-direction: column; gap: 8px; padding: 20px 22px 22px; border-radius: 18px; transition: transform 300ms var(--ease), border-color 300ms ease, background-color 300ms ease; }
.jump__card small { font: 700 10.5px/1 var(--en); letter-spacing: .26em; color: var(--mute); }
.jump__card { flex-direction: row; align-items: center; justify-content: space-between; padding: 18px 22px; }
.jump__card b { font: 700 13px/1 var(--en); letter-spacing: .3em; white-space: nowrap; }
.jump__card em { position: static; font-size: 15px; line-height: 1; display: block; margin-top: -2px; }
.jump__card b i { font: 900 .5em/1 var(--jp); margin-left: .08em; letter-spacing: 0; }
.jump__card span { font-size: 12.5px; font-weight: 700; line-height: 1.5; }
.jump__card span i { font: inherit; }
.jump__card em { position: absolute; right: 20px; top: 18px; font-style: normal; font-size: 18px; transition: transform 300ms var(--ease); }
.jump__card:hover { transform: translateY(-3px); border-color: rgba(255,255,255,.75); background-color: rgba(255,255,255,.08); }
.jump__card:hover em { transform: translateX(4px); }
.clients .sec-label span { margin-left: 16px; letter-spacing: .08em; font-family: var(--jp); font-weight: 500; }
.clients__row li a, .clients__row li span { display: inline-block; padding: 4px 2px; border-bottom: 1px solid transparent; transition: border-color 200ms ease, opacity 200ms ease; }
.clients__row li a:hover { border-bottom-color: rgba(255,255,255,.85); }
.board { scroll-margin-top: 24px; }
@media (max-width: 680px) {
  .jump { grid-template-columns: 1fr; gap: 8px; }
  .jump__card { padding: 16px 16px 18px; }
  .jump__card b { font-size: 12px; }
  .jump__card span { font-size: 11px; }
  .clients .sec-label span { display: block; margin: 8px 0 0; }
}


.bg__works { position: absolute; inset: 0; opacity: 0; transition: opacity 800ms ease; }
.bg__works img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 28%; opacity: 0; transition: opacity 900ms ease; }
.bg__works img.is-on { opacity: 1; }
html[data-works="scene"] body[data-bg="works"] .bg__works { opacity: 1; }
html[data-works="sky"] body[data-bg="works"] .bg__hero[data-k="sky"],
html[data-works="reel"] body[data-bg="works"] .bg__hero[data-k="reelbg"] { opacity: 1; }
body[data-bg="works"] .bg__type { opacity: 0; }
body[data-bg="works"] .bg__veil { opacity: 1; }
.bg__wv { position: absolute; inset: 0; opacity: 0; transition: opacity 900ms ease; }
.bg__wv video { width: 100%; height: 100%; object-fit: cover; }
html[data-works="mera"] body[data-bg="works"] .bg__wv[data-w="mera"],
html[data-works="rose"] body[data-bg="works"] .bg__wv[data-w="rose"],
html[data-works="rain"] body[data-bg="works"] .bg__wv[data-w="rain"],
html[data-works="mvrain"] body[data-bg="works"] .bg__wv[data-w="mvrain"],
html[data-works="curtain"] body[data-bg="works"] .bg__wv[data-w="curtain"],
html[data-works="sea"] body[data-bg="works"] .bg__wv[data-w="sea"],
html[data-works="petals"] body[data-bg="works"] .bg__wv[data-w="petals"],
html[data-works="silk"] body[data-bg="works"] .bg__wv[data-w="silk"],
html[data-works="bokeh"] body[data-bg="works"] .bg__wv[data-w="bokeh"] { opacity: 1; }

.works .board { background: linear-gradient(145deg, rgba(255,255,255,.10), rgba(255,255,255,.02) 46%), rgba(10,13,20,.30); backdrop-filter: blur(10px) saturate(150%); -webkit-backdrop-filter: blur(10px) saturate(150%); text-shadow: 0 1px 3px rgba(0,0,0,.6); }
body[data-bg="works"] .bg__veil { opacity: .55; }


.cv__img, .poster__img {
  position: relative;
  border: 1px solid rgba(255,255,255,.55);
  box-shadow: 0 0 0 1px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.7), 0 18px 40px rgba(0,0,0,.55), 0 4px 12px rgba(0,0,0,.4);
  -webkit-box-reflect: below 4px linear-gradient(transparent 84%, rgba(255,255,255,.55));
}

.cv__img::after, .poster__img::after {
  content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none;
  background:
    linear-gradient(155deg, rgba(255,255,255,.34) 0%, rgba(255,255,255,.10) 22%, rgba(255,255,255,0) 38%),
    linear-gradient(0deg, rgba(255,255,255,.08), rgba(255,255,255,0) 18%);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.18), inset 0 -24px 40px -30px rgba(255,255,255,.35);
}
.cv:hover .cv__img, .poster:hover .poster__img { border-color: rgba(255,255,255,.9); box-shadow: 0 0 0 1px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.9), 0 0 26px rgba(255,214,170,.35), 0 24px 52px rgba(0,0,0,.6); }
.cv__meta { margin-top: clamp(40px, 3.6vw, 56px); }  
.posters { padding-bottom: 8px; }
.poster__meta { margin-top: clamp(48px, 5vw, 76px); }

.works .board {
  border-color: rgba(255,255,255,.5);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65), inset 0 0 0 1px rgba(255,255,255,.08), 0 30px 80px rgba(0,0,0,.55), 0 0 0 1px rgba(0,0,0,.25);
}
@media (max-width: 680px) { .cv__meta { margin-top: 52px; } .poster__meta { margin-top: 56px; } }

.poster__img { -webkit-box-reflect: below 4px linear-gradient(transparent 88%, rgba(255,255,255,.55)); }


.covers { --cw: clamp(150px, 15.5vw, 230px); grid-auto-columns: var(--cw); }
.cv--still .cv__meta em { letter-spacing: .12em; }
.cv--wide { grid-column: span 3; }
.cv--wide .cv__img { aspect-ratio: auto; height: calc(var(--cw) * 16 / 9); }
@media (max-width: 680px) { .covers { --cw: 42vw; } }


@media (min-width: 1081px) {
  .hl { height: 100svh; min-height: 560px; display: flex; flex-direction: column; box-sizing: border-box; }
  .hl .sec-head { flex: none; }
  .hl-stage { flex: 1 1 auto; height: auto; min-height: 0; max-height: 760px; width: 100%; grid-template-rows: minmax(0, 1fr); }  
}

@media (min-width: 681px) {
  .hl-rail { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 10px; overflow: visible; }
  .hl-panel, .hl-panel.is-active { flex: none; min-height: 0; transition: transform 420ms var(--ease), border-color 300ms ease, box-shadow 300ms ease; }
  .hl-panel.is-active { transform: scale(1.07); z-index: 2; }
}
@media (min-width: 681px) and (max-width: 1080px) { .hl-rail { height: auto; } .hl-panel { aspect-ratio: 3 / 4; } }
.hl-panel__mini { position: absolute; left: 0; right: 0; bottom: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 44px 12px 11px; background: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,.78) 60%); pointer-events: none; text-align: left; }
.hl-panel__mini b { font: 800 clamp(12px, .95vw, 15px)/1.35 var(--jp); text-shadow: 0 1px 6px rgba(0,0,0,.8); display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.hl-panel__mini strong { font: 800 clamp(18px, 1.7vw, 28px)/1 var(--en); letter-spacing: -.02em; white-space: nowrap; text-shadow: 0 1px 6px rgba(0,0,0,.8); }
.hl-panel__mini strong i { font: 900 .62em/1 var(--jp); font-style: normal; margin-left: .04em; }
@media (max-width: 680px) { .hl-panel__mini { display: none; } }


.board__head > div { flex: 1 1 320px; min-width: 0; }
.board__head h3, .board__head p { overflow-wrap: anywhere; }


html.is-lit .bg__hero { transition: opacity 1200ms cubic-bezier(.33,0,.2,1); }
.hero .hero__name.r-in { transition-delay: 0ms; }
.hero .stats.r-in { transition-delay: 150ms; }
.hero .pwin.r-in { transition: opacity 700ms ease 300ms, transform 800ms var(--ease) 300ms, border-color 300ms ease, box-shadow 300ms ease; }  
.hero .pwin.r-in.is-in:hover { transition-delay: 0ms; }
.hero .reel.r-in { transition-delay: 450ms; }


.works .scene-break--in { position: relative; width: 100vw; margin: clamp(48px, 7vw, 96px) 0 clamp(48px, 7vw, 96px) calc(50% - 50vw); }
.works .scene-break--in img { display: block; width: 100%; height: auto; max-height: 86svh; object-fit: cover; }


.board__badge { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 12px; padding: 6px 14px 6px 6px; border-radius: 99px; border: 1px solid rgba(232,196,120,.75); background: linear-gradient(180deg, rgba(232,196,120,.18), rgba(232,196,120,.06)); box-shadow: 0 0 18px rgba(232,196,120,.18), inset 0 1px 0 rgba(255,240,210,.35); font: 700 14px/1.5 var(--jp); color: #f6e7c8; letter-spacing: .04em; }
.board__badge b { white-space: nowrap; flex: none; padding: 4px 11px; border-radius: 99px; background: #e8c478; color: #1a1408; font: 800 10.5px/1.2 var(--en); letter-spacing: .18em; }
@media (max-width: 680px) { .board__badge { font-size: 11.5px; padding: 5px 12px 5px 5px; align-items: flex-start; } }


body[data-bg="mv"] .bg__veil { background: linear-gradient(0deg, rgba(8,10,16,.58), rgba(8,10,16,.40)); }
.mvs .mv__meta, .mvs .mv-more, .mvs .sec-head, .mvs .sec-label { text-shadow: 0 1px 3px rgba(0,0,0,.75), 0 2px 18px rgba(0,0,0,.55); }


.contact__mail { display: inline-flex; flex-direction: column; gap: 10px; margin-top: 40px; padding: 22px 40px; border-radius: 22px; font: 700 clamp(18px, 2vw, 26px)/1.2 var(--en); letter-spacing: .02em; transition: background-color 200ms ease; }
.contact__mail span { font: 700 12px/1 var(--jp); letter-spacing: .12em; color: var(--mute); }
.contact__mail:hover { background-color: rgba(255,255,255,.12); }
.contact__mail + .contact__sns { margin-top: 16px; }
@media (max-width: 680px) { .contact__mail { display: flex; padding: 20px 16px; font-size: 17px; } }



@media (min-width: 681px) {
  .hl-stage { grid-template-columns: minmax(380px, 34%) minmax(0, 1fr); }
  .hl-board { position: relative; overflow: hidden; justify-content: flex-end; gap: 10px; isolation: isolate; }
  .hl-board__bg { position: absolute; inset: 0; z-index: -1; }
  .hl-board__bg img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 28%; opacity: 0; transform: scale(1.04); transition: opacity 600ms ease, transform 1400ms var(--ease); }
  .hl-board__bg img.is-on { opacity: 1; transform: scale(1); }
  .hl-board__bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(6,8,14,.92) 0%, rgba(6,8,14,.72) 34%, rgba(6,8,14,.12) 62%, rgba(6,8,14,0) 78%), linear-gradient(to bottom, rgba(6,8,14,.45), rgba(6,8,14,0) 22%); }
  .hl-board > :not(.hl-board__bg) { text-shadow: 0 1px 3px rgba(0,0,0,.6), 0 2px 16px rgba(0,0,0,.45); }
  .hl-board__rank { position: absolute; top: clamp(20px, 2.2vw, 32px); left: clamp(24px, 2.6vw, 40px); font: 800 13px/1 var(--en); letter-spacing: .28em; color: #fff; }
  .hl-board h3 { font-size: clamp(30px, 2.8vw, 48px); }
  .hl-board__n { font-size: clamp(56px, 5.2vw, 96px); }
}
.hl-panel__rank { position: absolute; top: 10px; left: 12px; z-index: 1; font: 800 12px/1 var(--en); letter-spacing: .14em; color: #fff; text-shadow: 0 1px 4px rgba(0,0,0,.7); pointer-events: none; }
@media (max-width: 680px) { .hl-panel__rank { top: 14px; left: 16px; font-size: 13px; } }



@media (min-width: 1081px) {
  .hl { --sh: clamp(500px, calc(100svh - 190px), 900px); --fw: calc(var(--sh) * 9 / 16); }
  .hl-panel img, .hl-board__bg img { object-position: 50% 50%; }
  
  html[data-hl="a"] .hl-stage { display: flex; justify-content: center; align-items: stretch; gap: 16px; height: var(--sh); max-height: none; max-width: none; flex: none; }
  html[data-hl="a"] .hl-board { flex: none; width: var(--fw); height: 100%; padding: clamp(22px, 2.2vw, 34px); }
  html[data-hl="a"] .hl-rail { flex: none; height: 100%; box-sizing: border-box; display: grid; grid-template-columns: repeat(4, calc((var(--sh) - 30px) / 2 * 9 / 16)); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 10px; }
  html[data-hl="a"] .hl-panel { width: 100%; height: 100%; }
  
  html[data-hl="b"] .hl { --stw: min(calc(100vw - 2 * var(--edge)), 1560px); --tw: calc((var(--stw) - var(--fw) - 32px - 20px - 70px) / 8); --rh: calc(var(--tw) * 16 / 9 + 20px); }
  html[data-hl="b"] .hl-stage { position: relative; display: block; height: var(--sh); max-height: none; width: var(--stw); max-width: none; margin: 0 auto; flex: none; }
  html[data-hl="b"] .hl-board { position: absolute; inset: 0; justify-content: flex-start; gap: 14px; padding: clamp(28px, 3vw, 48px) clamp(28px, 3vw, 48px) calc(var(--rh) + 28px) calc(var(--fw) + 32px + clamp(28px, 3vw, 48px)); }
  html[data-hl="b"] .hl-board__bg { right: auto; width: var(--fw); border-radius: 22px 0 0 22px; overflow: hidden; }
  html[data-hl="b"] .hl-board__bg::after { background: linear-gradient(to bottom, rgba(6,8,14,.35), rgba(6,8,14,0) 18%); }
  html[data-hl="b"] .hl-board__rank { left: calc(var(--fw) + 32px + clamp(28px, 3vw, 48px)); }
  html[data-hl="b"] .hl-board__case { margin-top: 34px; font-size: 14px; }
  html[data-hl="b"] .hl-board h3 { font-size: clamp(40px, 3.8vw, 72px); }
  html[data-hl="b"] .hl-board__n { font-size: clamp(88px, 8.6vw, 168px); }
  html[data-hl="b"] .hl-rail { position: absolute; right: 0; bottom: 0; left: calc(var(--fw) + 32px); display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 10px; padding: 10px; border-radius: 0 0 22px 0; }
  html[data-hl="b"] .hl-panel { aspect-ratio: 9 / 16; height: auto; }
  html[data-hl="b"] .hl-panel__mini strong { display: none; }
  html[data-hl="b"] .hl-panel__mini { padding: 30px 8px 8px; }
  html[data-hl="b"] .hl-panel__mini b { font-size: 11px; }
}

@media (max-width: 680px) { .hl-panel img { height: auto; max-height: none; aspect-ratio: 9 / 16; object-position: 50% 50%; } }

@media (min-width: 1081px) {
  html[data-hl="b"] .hl-rail { top: auto; height: auto; grid-template-rows: none; grid-auto-rows: auto; align-items: end; }
  
  html[data-hl="c"] .hl { height: calc(100svh + var(--hx, 1600px)); min-height: 0; padding: 0; display: block; }
  html[data-hl="c"] .hl .sec-head { position: absolute; z-index: 3; left: var(--edge); top: clamp(24px, 4vh, 48px); margin: 0; max-width: 420px; }
  html[data-hl="c"] .hl-stage { position: sticky; top: 0; height: 100svh; max-height: none; max-width: none; width: 100%; display: flex; align-items: center; overflow: hidden; }
  html[data-hl="c"] .hl-board { display: none; }
  html[data-hl="c"] .hl-rail { --ch: min(78svh, 860px); display: flex; gap: 22px; height: auto; padding: 0 var(--edge) 0 calc(var(--edge) + 460px); border: 0; border-radius: 0; background: none; backdrop-filter: none; -webkit-backdrop-filter: none; overflow: visible; will-change: transform; margin-top: 4svh; }
  html[data-hl="c"] .hl-panel, html[data-hl="c"] .hl-panel.is-active { flex: none; width: calc(var(--ch) * 9 / 16); height: var(--ch); border-radius: 20px; }
  html[data-hl="c"] .hl-panel.is-active { transform: scale(1.04); }
  html[data-hl="c"] .hl-panel__rank { top: 18px; left: 20px; font-size: 15px; }
  html[data-hl="c"] .hl-panel__mini { padding: 120px 22px 22px; gap: 8px; }
  html[data-hl="c"] .hl-panel__mini b { font-size: clamp(18px, 1.5vw, 26px); }
  html[data-hl="c"] .hl-panel__mini strong { font-size: clamp(40px, 3.6vw, 64px); }
}


.cv--onair .cv__img { aspect-ratio: auto; height: calc(var(--cw) * 16 / 9); }
.cv--onair .cv__img img { object-fit: contain; background: #000; }
.cv--onair .cv__meta em { color: #f6e7c8; letter-spacing: .06em; }



.hero__name, .stats { text-shadow: 0 1px 3px rgba(0,0,0,.75), 0 2px 18px rgba(0,0,0,.55); }
.hero h1 span { font-weight: 400; color: rgba(244,241,236,.88); }
.kicker, .stats span { color: rgba(244,241,236,.85); }
body[data-bg="hero"] .bg__veil { background: linear-gradient(90deg, rgba(8,10,16,.78) 0%, rgba(8,10,16,.45) 50%, rgba(8,10,16,.08) 75%), linear-gradient(0deg, rgba(8,10,16,.55), transparent 40%); }
@media (max-width: 680px) {
  body[data-bg="hero"] .bg__veil { background: linear-gradient(180deg, rgba(8,10,16,.72) 0%, rgba(8,10,16,.38) 55%, rgba(8,10,16,.62) 100%); }
}
@media (max-width: 380px) { .kicker { font-size: 10px; letter-spacing: .2em; white-space: nowrap; } }

.reel__sound { transition: opacity 600ms ease; }
body:not([data-bg="hero"]) .reel__sound { opacity: 0; pointer-events: none; }

@media (min-width: 1081px) and (max-height: 760px) {
  html[data-hero="reelbg"] .pwin__img { height: calc(100svh - 200px); width: auto; margin: 0 auto; }
  html[data-hero="reelbg"] .hero { padding-top: 48px; padding-bottom: 40px; }
  html[data-hero="reelbg"] .hero .reel { bottom: 18px; }
}

@media (min-width: 681px) and (max-width: 1080px) {
  html[data-hero="reelbg"] .hero { min-height: 100svh; align-content: center; }
  html[data-hero="reelbg"] .hero__name { align-self: center; }
}


.jump__card { background: rgba(10,14,22,.62); }
.jump__card:hover { background-color: rgba(30,36,50,.7); }


.nb { display: inline-block; max-width: 100%; }
.board__head h3, .board__head p, .board__badge, .mv__meta b, .mv__meta span, .sec-head p, .career__list p, .profile__text p, .aw li, .ads b, .ads span { word-break: auto-phrase; text-wrap: pretty; }
.board__head h3 { text-wrap: balance; overflow-wrap: normal; }


.works .sec-head { padding: 18px 22px; border-radius: 18px; background: rgba(8,10,16,.55); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.works .sec-head .sec-label { color: rgba(244,241,236,.85); }
.works .sec-head > p:last-child:not(.sec-label) { color: rgba(244,241,236,.88); font-size: 13px; }


.covers-wrap { position: relative; }
.covers.is-drag { cursor: grabbing; scroll-snap-type: none; }
.covers.is-drag a { pointer-events: none; }
.covers-nav { position: absolute; top: calc(var(--cw, 200px) * 16 / 9 / 2 - 22px); z-index: 3; width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(255,255,255,.6); background: rgba(10,12,18,.62); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); font: 700 18px/1 var(--en); color: #fff; opacity: 0; pointer-events: none; transition: opacity 250ms ease, background-color 200ms ease; }
.covers-nav:hover { background: rgba(40,46,60,.8); }
.covers-nav--prev { left: -10px; } .covers-nav--next { right: -10px; }
.covers-wrap.has-more:not(.at-end) .covers-nav--next, .covers-wrap.has-more:not(.at-start) .covers-nav--prev { opacity: 1; pointer-events: auto; }
.covers-wrap.has-more:not(.at-end) .covers { -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 60px), transparent); mask-image: linear-gradient(to right, #000 calc(100% - 60px), transparent); }
@media (hover: none) { .covers-nav { display: none; } }
.covers { --cwpad: 0; }
.covers { -webkit-user-select: none; user-select: none; }


.onair-full { display: none; }
@media (max-width: 1080px) {
  .onair-full { display: block; margin: 0 0 18px; }
  .onair-full img { width: 100%; height: auto; border-radius: 12px; border: 1px solid rgba(255,255,255,.55); background: #000; }
  .onair-full figcaption { margin-top: 8px; font-size: 11.5px; color: #f6e7c8; letter-spacing: .06em; }
  .covers .cv--onair { display: none; }
}

@media (max-width: 680px) {
  .covers { --cw: calc((100vw - 2 * var(--edge) - 32px - 12px) / 2); }
  .cv--wide { grid-column: span 2; }
  .cv--wide .cv__img { height: auto; aspect-ratio: 16 / 9; }
  .works .scene-break--in figcaption, .scene-break figcaption { bottom: 10px; padding: 5px 10px; font-size: 9.5px; }
}


.mv__img img { object-fit: contain; }
@media (min-width: 1081px) { .mv-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.mv-more .nb { display: inline; white-space: nowrap; }
@media (max-width: 680px) {
  .mv-more .nb { white-space: normal; }
  .ads ul { flex-direction: column; }
  .ads li, .ads a { flex-direction: column; gap: 4px; align-items: flex-start; }
  .ads li { width: 100%; }
}


.profile__photo img { width: auto; height: auto; max-width: 100%; max-height: 86svh; object-fit: initial; margin-right: auto; }
@media (max-width: 1080px) { .profile__photo img { max-height: 70svh; margin: 0 auto; } }

.profile__born::before { content: " ｜ "; }
@media (max-width: 680px) { .profile__born { display: block; margin-top: 4px; } .profile__born::before { content: none; } }


.ads li.ads__cm { flex-wrap: wrap; align-items: baseline; }
.ads__shots { flex-basis: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 10px 0 2px; }
.ads__shots img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 10px; display: block; }
@media (min-width: 681px) { .ads li.ads__cm { max-width: 760px; } }
.ads ul { align-items: flex-start; }

.mv__meta .nb { display: inline-block; margin-top: 0; font-size: inherit; color: inherit; line-height: inherit; }

.ads__shots--one { grid-template-columns: minmax(0, 1fr); }
@media (min-width: 681px) { .ads li.ads__cm:has(.ads__shots--one) { max-width: 380px; } }

.ads ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: stretch; }
.ads li.ads__cm { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); grid-template-areas: "shot title" "shot sub"; grid-template-rows: auto 1fr; column-gap: 20px; row-gap: 8px; align-items: start; max-width: none; padding: 16px; }
.ads li.ads__cm > b { grid-area: title; align-self: end; }
.ads li.ads__cm > span { grid-area: sub; }
.ads li.ads__cm > .ads__shots { grid-area: shot; margin: 0; }
@media (max-width: 680px) {
  .ads ul { grid-template-columns: minmax(0, 1fr); }
  .ads li.ads__cm { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); column-gap: 14px; padding: 12px; }
}
.ads ul li.ads__cm, .ads ul li.ads__cm:has(.ads__shots--one) { max-width: none; width: auto; }


.mv-grid { display: flex; flex-direction: column; gap: 40px; }
.mv-row { display: flex; gap: 22px; align-items: flex-start; }
.mv-row .mv { flex: var(--ar, 2.25) 1 0; min-width: 0; }
.mv[style] .mv__img { aspect-ratio: var(--ar); }
.mv[style] .mv__img img { object-fit: cover; }
.mv-row .mv__meta b { font-size: 16px; }
.mv-row .mv__meta span { font-size: 13px; }
@media (max-width: 680px) {
  .mv-grid { gap: 30px; }
  .mv-row { flex-direction: column; gap: 30px; }
  .mv-row .mv { flex: none; width: 100%; }
  .mv-row .mv__meta b { font-size: 15px; }
}
.ads ul li.ads__cm { grid-template-areas: "shot ." "shot title" "shot sub" "shot ."; grid-template-rows: 1fr auto auto 1fr; }
.ads ul li.ads__cm > b { align-self: auto; font-size: clamp(15px, 1.4vw, 20px); }

.mv-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 22px; }
.mv-row { display: contents; }
.mv-row .mv { flex: none; width: auto; min-width: 0; }
.mv[style] .mv__img, .mv-row .mv .mv__img { aspect-ratio: 2.2 / 1; }
.mv-row .mv .mv__img img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 680px) { .mv-grid { grid-template-columns: minmax(0, 1fr); gap: 30px; } }

.profile__text strong.aw-in { font-weight: 800; color: #fff; background: linear-gradient(transparent 62%, rgba(255,214,120,.38) 62%); padding: 0 .1em; }


@media (max-width: 680px) { .bg__hero[data-k="reelbg"] video { transform: none; } }


.mv-feat .mv__meta span.nb, .mv__meta span.nb { margin-top: 0; display: inline-block; }
.cv__meta b { word-break: auto-phrase; }



.hl.hlr { --hlr-d: 720ms; --hlr-e: cubic-bezier(.22, 1, .36, 1); --hlr-sh: 0 1px 2px rgba(0,0,0,.82), 0 2px 18px rgba(0,0,0,.58); height: auto; min-height: 0; max-height: none; display: block; padding-bottom: 0; position: relative; overflow-x: clip; }
.hlr .hlr-head--sp { display: none; }
.hlr-track { position: relative; margin: 0 calc(var(--edge) * -1); height: calc(100svh + var(--hlr-run, 0px)); }

.hlr-pin { position: sticky; top: 0; height: 100svh; display: flex; flex-direction: column; padding: clamp(16px, 2.6vh, 36px) var(--edge) clamp(14px, 2.2vh, 26px); overflow: hidden; isolation: isolate; }

.hlr-pin::before, .hlr-pin::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; -webkit-mask-image: linear-gradient(to bottom, transparent, #000 var(--vf, 0px)); mask-image: linear-gradient(to bottom, transparent, #000 var(--vf, 0px)); }
.hlr-pin::before { background: radial-gradient(60% 56% at 100% 6%, rgba(6,8,14,.8), rgba(6,8,14,0) 76%), radial-gradient(56% 52% at 0% 6%, rgba(6,8,14,.66), rgba(6,8,14,0) 72%), linear-gradient(to bottom, rgba(6,8,14,.55), rgba(6,8,14,0) 14%); }
.hlr-pin::after { opacity: var(--bo, 1); background: linear-gradient(to top, rgba(6,8,14,.74), rgba(6,8,14,.32) 20%, rgba(6,8,14,0) 40%); }

.hlr-head { flex: none; display: flex; flex-wrap: wrap; align-items: baseline; column-gap: 24px; row-gap: 4px; width: 100%; max-width: 1840px; margin: 0 auto 36px; text-shadow: var(--hlr-sh); }
.hlr-head .sec-label { color: #fff; font-size: 12px; }
.hlr-head > p:last-child { font-size: 15px; font-weight: 500; line-height: 1.6; color: #fff; transition: opacity 360ms ease, transform 520ms var(--hlr-e); }
.hlr-pin.is-first .hlr-head > p:last-child { opacity: 0; transform: translateX(-14px); }
.hlr-stage { position: relative; flex: 1 1 auto; min-height: 0; width: 100%; max-width: 1840px; margin: 0 auto; outline: none; }
.hlr-reel { position: absolute; inset: 0; }
.hlr-measure { position: absolute; left: -9999px; top: 0; visibility: hidden; pointer-events: none; white-space: nowrap; }

.hlr-intro { position: absolute; left: 0; top: var(--it, 50%); z-index: 5; width: var(--lw, 320px); color: #fff; text-shadow: var(--hlr-sh); pointer-events: none; transition: opacity 380ms ease, transform 620ms var(--hlr-e); }
.hlr-intro p { max-width: 21em; font: 700 clamp(17px, 1.3vw, 22px)/1.75 var(--jp); letter-spacing: .03em; word-break: auto-phrase; text-wrap: pretty; }
.hlr-cue { position: relative; display: block; width: 2px; height: 72px; margin-top: 28px; border-radius: 2px; background: rgba(255,255,255,.3); overflow: hidden; box-shadow: 0 0 12px rgba(0,0,0,.35); }
.hlr-cue i { position: absolute; left: 0; top: 0; width: 100%; height: 45%; border-radius: 2px; background: #fff; animation: hlrCue 2s cubic-bezier(.6, 0, .25, 1) infinite; }
@keyframes hlrCue { 0% { transform: translateY(-100%); } 70%, 100% { transform: translateY(230%); } }
.hlr-pin:not(.is-first) .hlr-intro { opacity: 0; transform: translateX(-28px); }

.hlr-card { position: absolute; left: 50%; bottom: 0; width: var(--cw, 300px); height: var(--ch, 533px); margin-left: calc(var(--cw, 300px) / -2); padding: 0; overflow: hidden; border-radius: 18px; background: #0b0f17; box-shadow: 0 26px 64px rgba(0,0,0,.5); transform-origin: 50% 100%; will-change: transform, opacity; cursor: pointer; opacity: 0; }
.hlr-card img { width: 100%; height: 100%; object-fit: cover; pointer-events: none; -webkit-user-drag: none; user-select: none; }
.hlr-card::after { content: ""; position: absolute; inset: 0; border-radius: inherit; box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); pointer-events: none; }
.hlr-card__veil { position: absolute; inset: 0; background: #05070c; opacity: 0; pointer-events: none; }
.hlr-card[data-a="1"] .hlr-card__veil { opacity: .12; }
.hlr-card[data-a="2"] .hlr-card__veil, .hlr-card[data-a="3"] .hlr-card__veil { opacity: .22; }
.hlr-card:not(.is-active):hover .hlr-card__veil { opacity: 0; }
.hlr-card:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
.hlr.is-ready .hlr-card { transition: transform var(--hlr-d) var(--hlr-e), opacity 520ms ease; }
.hlr.is-ready .hlr-card__veil { transition: opacity var(--hlr-d) var(--hlr-e); }

.hlr-card__play { position: absolute; left: 50%; top: 50%; width: 76px; height: 76px; margin: -38px 0 0 -38px; border-radius: 50%; display: grid; place-items: center; background: #fff; color: #0b0f17; box-shadow: 0 0 0 1px rgba(0,0,0,.14), 0 12px 32px rgba(0,0,0,.45); opacity: 0; transform: scale(.82); transition: opacity 220ms ease, transform 360ms var(--hlr-e); pointer-events: none; }
.hlr-card__play svg { width: 28px; height: 28px; margin-left: 4px; }
.hlr-card.is-active:hover .hlr-card__play, .hlr-card.is-active:focus-visible .hlr-card__play { opacity: 1; transform: scale(1); }
.hlr-stage:has(.hlr-card.is-active:hover) .hlr-watch { transform: translateY(-2px); box-shadow: 0 0 0 3px rgba(255,255,255,.35), 0 14px 34px rgba(0,0,0,.5); }

.hlr-tag { position: absolute; left: 50%; bottom: 0; width: var(--tw, 160px); display: flex; flex-direction: column; gap: 2px; padding-top: 10px; color: #fff; text-shadow: var(--hlr-sh); opacity: 0; pointer-events: none; cursor: pointer; will-change: transform, opacity; }
.hlr-tag.is-on { pointer-events: auto; }
.hlr-tag b { font: 600 var(--tgf, 16px)/1.35 var(--jp); letter-spacing: .02em; white-space: nowrap; }
.hlr-tag strong { font: 700 calc(var(--tgf, 16px) * 1.3)/1.05 var(--en); letter-spacing: -.01em; white-space: nowrap; }
.hlr-tag strong i { font: 800 .64em/1 var(--jp); font-style: normal; margin-left: .04em; letter-spacing: 0; }
.hlr.is-ready .hlr-tag { transition: transform var(--hlr-d) var(--hlr-e), opacity 180ms ease; }
.hlr.is-ready .hlr-tag.is-on { transition: transform var(--hlr-d) var(--hlr-e), opacity 380ms ease 240ms; }  

.hlr-arrow { position: absolute; z-index: 30; top: calc(100% - var(--ch, 533px) / 2); width: 60px; height: 60px; margin: -30px 0 0 -30px; border-radius: 50%; display: grid; place-items: center; background: #fff; color: #0b0f17; box-shadow: 0 0 0 1px rgba(0,0,0,.18), 0 10px 28px rgba(0,0,0,.45); transition: transform 220ms var(--hlr-e), box-shadow 220ms ease, opacity 280ms ease, visibility 0s; }
.hlr-arrow svg { width: 26px; height: 26px; }
.hlr-arrow--prev { left: calc(50% - var(--cw, 300px) / 2 - var(--g1, 88px) / 2); }
.hlr-arrow--next { left: calc(50% + var(--cw, 300px) / 2 + var(--g1, 88px) / 2); }
.hlr-arrow:not(.is-end):hover { transform: scale(1.08); box-shadow: 0 0 0 1px rgba(0,0,0,.18), 0 14px 34px rgba(0,0,0,.55); }
.hlr-arrow:not(.is-end):active { transform: scale(.94); }
.hlr-arrow.is-end { opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 280ms ease, visibility 0s linear 280ms; }
.hlr-arrow:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }

.hlr-info { position: absolute; bottom: var(--ib, 50%); z-index: 20; width: var(--iw, 420px); display: flex; flex-direction: column; color: #fff; text-shadow: var(--hlr-sh); }
.hlr-info--l { left: 0; }
.hlr-info--r { right: 0; align-items: flex-end; text-align: right; }
.hlr-no { display: flex; align-items: baseline; gap: 8px; font: 600 12px/1 var(--en); letter-spacing: .2em; }
.hlr-no b { font-size: 1.7em; font-weight: 600; letter-spacing: .02em; }
.hlr-no > span { opacity: .8; }
.hlr-case { margin-top: 12px; min-height: var(--chm, 0px); font: 700 var(--cf, 16px)/1.5 var(--jp); letter-spacing: .03em; word-break: keep-all; overflow-wrap: normal; }
.hlr-nb { white-space: nowrap; }
.hlr-title { margin-top: 10px; font: 900 var(--tf, 48px)/1.12 var(--jp); letter-spacing: .02em; white-space: nowrap; margin-bottom: calc(var(--tf, 48px) * -.08); }
.hlr-n { font: 800 var(--nf, 104px)/.8 var(--en); letter-spacing: -.035em; white-space: nowrap; margin-top: 12px; }
.hlr-n span i { font: 900 .6em/1 var(--jp); font-style: normal; margin-left: .03em; letter-spacing: 0; }
.hlr-n > i { font: 900 .6em/1 var(--jp); font-style: normal; margin-left: .03em; letter-spacing: 0; }  

.hlr-sub { display: flex; flex-direction: column; align-items: flex-end; justify-content: flex-end; gap: 8px; min-height: var(--shm, 0px); font-size: 14.5px; line-height: 1.5; }
.hlr-scope { font-weight: 700; letter-spacing: .06em; white-space: nowrap; }
.hlr-scope .sw__i, .hlr-scope:not(.sw) { padding: 3px 12px; border-radius: 99px; border: 1px solid #fff; background: rgba(8,10,16,.28); }
.hlr-src { font-weight: 500; }
.hlr-watch { display: inline-flex; align-items: center; gap: 8px; padding: 14px 24px; border-radius: 99px; background: #fff; color: #0b0f17; font: 800 15px/1 var(--jp); letter-spacing: .06em; text-shadow: none; white-space: nowrap; box-shadow: 0 10px 28px rgba(0,0,0,.4); transition: transform 220ms var(--hlr-e), box-shadow 220ms ease; }
.hlr-info--r .hlr-watch { position: absolute; right: 0; top: calc(100% + 16px); }
.hlr-watch:hover { transform: translateY(-2px); box-shadow: 0 14px 34px rgba(0,0,0,.5); }
.hlr-watch[hidden] { display: none; }

.hlr .sw { display: inline-grid; clip-path: inset(-.08em -60px -.2em -60px); }
.hlr .hlr-scope.sw { clip-path: inset(-.1em -60px -.1em -60px); }
.hlr .hlr-title.sw, .hlr .hlr-case.sw { display: grid; }
.hlr .hlr-info--r .sw { justify-items: end; }
.hlr .sw__i { grid-area: 1 / 1; }
.hlr .hlr-case .sw__i { min-width: 0; align-self: start; }

.hlr-index { position: relative; list-style: none; flex: none; display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); width: 100%; max-width: 1840px; margin: 32px auto 0; border-top: 1px solid rgba(255,255,255,.26); }
.hlr-index::before { content: ""; position: absolute; left: 0; top: -1px; width: 100%; height: 1px; background: rgba(255,255,255,.92); transform: scaleX(var(--pg, 0)); transform-origin: 0 50%; pointer-events: none; }
.hlr-index::after { content: ""; position: absolute; left: 0; top: -2px; width: var(--mw, 0px); height: 3px; border-radius: 2px; background: #fff; box-shadow: 0 0 10px rgba(0,0,0,.3); transform: translate3d(var(--mx, 0px), var(--my, 0px), 0); pointer-events: none; }
.hlr.is-ready .hlr-index::after { transition: transform 640ms var(--hlr-e), width 640ms var(--hlr-e); }
.hlr.is-ready .hlr-index.is-jump::after { transition: none; }
.hlr-idx { position: relative; width: 100%; display: grid; grid-template-columns: minmax(0, 1fr); row-gap: 2px; align-items: baseline; text-align: left; padding: 10px 8px 2px 0; color: rgba(255,255,255,.6); text-shadow: 0 1px 3px rgba(0,0,0,.75), 0 2px 14px rgba(0,0,0,.5); transition: color 300ms ease; }
.hlr-idx__no { font: 500 13px/1 var(--en); letter-spacing: .08em; }
.hlr-idx b { font: 500 clamp(14px, 1vw, 16px)/1.4 var(--jp); letter-spacing: .02em; white-space: nowrap; }
.hlr-idx strong { font: 500 clamp(17px, 1.2vw, 22px)/1.1 var(--en); letter-spacing: -.01em; white-space: nowrap; }
.hlr-idx strong i { font: 600 .64em/1 var(--jp); font-style: normal; margin-left: .03em; letter-spacing: 0; }
.hlr-idx.is-active { color: #fff; }
.hlr-idx.is-active b, .hlr-idx.is-active strong, .hlr-idx.is-active .hlr-idx__no { font-weight: 700; }
.hlr-idx:hover { color: rgba(255,255,255,.92); }
.hlr-idx:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

@media (max-width: 899px) {
  .hlr .hlr-head--sp { display: grid; padding: 16px 18px; border-radius: 18px; background: rgba(8,10,16,.55); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
  .hlr .hlr-head--sp .sec-label { color: #fff; }
  .hlr .hlr-head--sp > p:last-child { font-size: 13.5px; line-height: 1.7; }
  .hlr-head, .hlr-intro { display: none; }
  .hlr-pin { padding: 14px 16px 10px; }
  .hlr-pin::before { background: none; }
  .hlr-pin::after { background: linear-gradient(to bottom, rgba(6,8,14,.2), rgba(6,8,14,.55) 50%, rgba(6,8,14,.8)); }
  .hlr-stage { flex: none; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "reel reel reel" "no case case" "title title watch" "num num scope" "src src src"; column-gap: 10px; align-items: center; }
  .hlr-reel { grid-area: reel; position: relative; inset: auto; height: var(--ch, 440px); margin: 0 -16px; touch-action: pan-y; }
  .hlr-info, .hlr-sub { display: contents; }
  .hlr-info--r .hlr-watch { position: static; }
  .hlr-no { grid-area: no; align-self: start; margin-top: 14px; font-size: 11px; gap: 4px; }
  .hlr-no b { font-size: 1.8em; }
  .hlr-case { grid-area: case; margin-top: 14px; font-size: 13px; line-height: 1.45; min-height: 2.9em; align-self: start; }
  .hlr .hlr-src, .hlr .hlr-src.sw { grid-area: src; display: grid; justify-items: start; font-size: 12px; line-height: 1.4; margin-top: 4px; white-space: nowrap; }
  .hlr-title { grid-area: title; font-size: var(--tfm, 24px); white-space: nowrap; margin: 6px 0 0; }
  .hlr-watch { grid-area: watch; justify-self: end; margin-top: 6px; padding: 10px 15px; font-size: 13px; }
  .hlr-n { grid-area: num; font-size: 40px; line-height: .92; margin-top: 8px; justify-self: start; }
  .hlr .hlr-scope { grid-area: scope; justify-self: end; margin-top: 8px; font-size: 12px; }
  .hlr .hlr-info--r .hlr-src.sw { justify-items: start; }
  .hlr-tag { display: none; }
  .hlr-card__play { left: auto; top: 12px; right: 12px; width: 44px; height: 44px; margin: 0; }
  .hlr-card.is-active .hlr-card__play { opacity: 1; transform: none; }  
  .hlr-card__play svg { width: 18px; height: 18px; margin-left: 3px; }
  .hlr-arrow { width: 56px; height: 56px; margin: -28px 0 0 -28px; top: calc(var(--ch, 440px) - 48px); }
  .hlr-arrow svg { width: 24px; height: 24px; }
  .hlr-arrow--prev { left: calc(50% - var(--cw, 300px) / 2 - 6px); }
  .hlr-arrow--next { left: calc(50% + var(--cw, 300px) / 2 + 6px); }
  .hlr-index { grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 8px; margin-top: 12px; }
  .hlr-index li:nth-child(n+5) .hlr-idx { border-top: 1px solid rgba(255,255,255,.16); }
  .hlr-index::after { top: -1px; height: 2px; }
  .hlr-idx { align-content: start; row-gap: 1px; padding: 7px 0 5px; }
  .hlr-idx__no { display: none; }
  .hlr-idx b { font-size: 14px; white-space: normal; word-break: keep-all; overflow-wrap: normal; line-height: 1.3; letter-spacing: 0; min-height: 2.6em; }
  .hlr-idx strong { font-size: 17px; }
}

@media (max-width: 899px) and (max-height: 760px) {
  .hlr-no, .hlr-case { margin-top: 8px; }
  .hlr .hlr-src, .hlr .hlr-src.sw { display: none; }
  .hlr-n { font-size: 34px; margin-top: 4px; }
  .hlr .hlr-scope { margin-top: 4px; }
  .hlr-idx strong { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .hlr.is-ready .hlr-card, .hlr.is-ready .hlr-tag, .hlr.is-ready .hlr-tag.is-on, .hlr.is-ready .hlr-card__veil, .hlr.is-ready .hlr-index::after, .hlr-arrow, .hlr-intro, .hlr-head > p:last-child, .hlr-card__play { transition: none; }
  .hlr-cue i { animation: none; transform: translateY(60%); }
}


.cv__img { background: linear-gradient(110deg, #141922 30%, #1e2633 45%, #141922 60%) 0 0 / 300% 100%; animation: cvShimmer 1.6s linear infinite; }
.cv__img img { opacity: 0; transition: opacity 500ms ease, transform 500ms var(--ease); }
.cv__img img.is-loaded { opacity: 1; }
.cv__img.is-loaded { animation: none; background: #111; }
@keyframes cvShimmer { from { background-position: 100% 0; } to { background-position: -100% 0; } }
@media (prefers-reduced-motion: reduce) { .cv__img { animation: none; } }

.career .sec-head { max-width: 980px; }

.jump { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 680px) { .jump { grid-template-columns: 1fr; } }

.bg__hero[data-k="reelbg"] video { transform: none; }

a:focus-visible, button:focus-visible { outline: 2px solid rgba(255,255,255,.9); outline-offset: 3px; border-radius: 12px; }

.more__list li a { display: flex; justify-content: space-between; gap: 12px; width: 100%; color: inherit; }
.more__list li a:hover b { text-decoration: underline; text-underline-offset: 3px; }
.more__list li a::after { content: "↗"; font-size: 11px; color: var(--mute); margin-left: 4px; }
.mv-more a.nb { color: inherit; text-decoration: underline; text-decoration-color: rgba(244,241,236,.35); text-underline-offset: 3px; }
.mv-more a.nb:hover { color: var(--ink); text-decoration-color: currentColor; }
.more__list li a b { flex: 1 1 auto; }
.more__list li a span { flex: none; }

@media (min-width: 1281px) {
  .cv__meta em, .sec-label { font-size: clamp(11px, calc(11px + (100vw - 1280px) * .003125), 13px); }
  .board__head p, .board__total span, .hlr-head .sec-label { font-size: clamp(12px, calc(12px + (100vw - 1280px) * .003125), 14px); }
}
.spw { display: none; }  


.mv__meta > span span { display: inline; margin: 0; font-size: inherit; line-height: inherit; color: inherit; }

.mv__meta > span .nbs { white-space: nowrap; }
