/* DQA社員: reference-driven official game portal, DQA assets only */
:root{--cream:#fbf6e7;--paper:#fff9ec;--wine:#621d2b;--deep:#260c14;--ink:#3e3030;--gold:#d5ad5b;--rounded:'M PLUS Rounded 1c',sans-serif;--display:'Cinzel',serif;--body:'Zen Kaku Gothic New',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:64px}body{margin:0;background:var(--cream);color:var(--ink);font:500 16px/1.9 var(--body)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{display:block;max-width:100%}figure,h1,h2,h3,p,blockquote{margin:0}button:focus-visible,a:focus-visible{outline:3px solid #dcaf53;outline-offset:5px}button{border:0}section{position:relative}h1,h2,h3{font-family:var(--rounded)}.skip{position:fixed;top:-60px;z-index:200;padding:10px;background:#fff}.skip:focus{top:0}
.header{height:64px;position:fixed;inset:0 0 auto;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 40px;background:linear-gradient(rgba(251,246,231,.95),rgba(251,246,231,.75),rgba(251,246,231,.1));transition:background .3s;backdrop-filter:blur(4px)}.header.is-scrolled{background:rgba(251,246,231,.94);box-shadow:0 1px 12px #46200c15}.brand{display:flex;align-items:center;gap:10px;font:900 18px var(--rounded)}.brand img{width:90px;height:43px;object-fit:contain}.header nav{display:flex;gap:28px;align-items:center}.header nav a{text-align:center;line-height:1.3}.header nav b{font:800 14px var(--display);letter-spacing:.08em}.header nav span{display:block;font:700 10px var(--rounded);margin-top:3px}.header nav a:hover{color:#aa3647}.menu-toggle{display:none}
.hero{height:100svh;min-height:720px;isolation:isolate;overflow:hidden;background:var(--deep)}.hero-visual{position:absolute;inset:0;z-index:-4}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:60% center;animation:hero-drift 24s ease-in-out infinite alternate}.hero-light{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,rgba(38,12,20,.92) 0%,rgba(61,15,26,.76) 34%,rgba(36,13,19,.15) 75%),linear-gradient(0deg,var(--cream),transparent 22%)}.hero-particles{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 18% 28%,#ffda8155 0 2px,transparent 3px),radial-gradient(circle at 48% 64%,#ffe4a477 0 3px,transparent 4px),radial-gradient(circle at 85% 34%,#fff5dc88 0 2px,transparent 3px);background-size:220px 290px,370px 410px,460px 530px;animation:particles 24s linear infinite}.hero-copy{position:absolute;width:570px;left:max(8vw,calc((100vw - 1120px)/2));top:50%;transform:translateY(-49%);z-index:4;color:#fff8e9}.eyebrow{font:800 15px/1.4 var(--display);letter-spacing:.14em}.hero .eyebrow{color:#f1d494}.hero-logo{width:225px;max-height:95px;object-fit:contain;margin:14px 0;filter:drop-shadow(0 2px 8px #fff8)}.hero-name{font:900 clamp(52px,6vw,84px)/1.2 var(--rounded);color:#fff0c7;text-shadow:0 2px 0 #ae763f,0 5px 18px #1c071c;letter-spacing:.05em}.hero h1{font:900 25px/1.8 var(--rounded);margin:19px 0 12px;letter-spacing:.06em}.hero-bottom>p{font-size:14px;line-height:1.9;margin-bottom:26px}.pill{display:flex;align-items:center;justify-content:center;gap:12px;border-radius:80px;padding:13px 28px;min-height:60px;max-width:330px;border:2px solid #e3bd71;font:800 19px/1.5 var(--rounded);box-shadow:0 0 0 4px #ffefc21c,0 5px 20px #150a1429;transition:transform .25s,filter .25s}.pill:hover{transform:translateY(-3px);filter:brightness(1.1)}.pill small{font:600 9px var(--display);letter-spacing:.08em;display:block}.primary{background:linear-gradient(#aa465a,#762439);color:#fff9e9}.hero .primary{position:relative;display:block;text-align:center;padding:10px 25px;margin-top:4px}.hero .primary small{margin-bottom:2px}.ghost{background:#fff4dc21;color:#fff4dc;border:1px solid #f2dec2a0;font-size:14px;min-height:44px;margin-top:16px;max-width:290px}.hero-cast{position:absolute;right:4%;bottom:11%;width:49%;height:72%;z-index:2;pointer-events:none}.hero-cast img{position:absolute;object-fit:contain;filter:drop-shadow(0 15px 20px #260c144f);animation:float 7s ease-in-out infinite}.hero-mio{height:82%;width:58%;left:0;bottom:9%;transform:rotate(-6deg)}.hero-arou{height:95%;width:64%;right:-3%;bottom:0;animation-delay:-3s!important}.hero-aimon{height:30%;width:32%;left:26%;bottom:-6%;animation-delay:-5s!important}.hero-vertical{position:absolute;right:24px;top:26%;writing-mode:vertical-rl;color:#fff8e9;font:800 19px/2 var(--rounded);letter-spacing:.3em;text-shadow:0 2px 12px #361527}.scroll-note{position:absolute;z-index:8;bottom:24px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;text-align:center;font:800 12px var(--display);letter-spacing:.18em;gap:10px;color:var(--wine)}
.section{padding:140px 0}.section-heading{max-width:1120px;margin:0 auto 52px;text-align:center}.section-heading>p{margin-top:22px}.en{display:block;font:800 60px/1.2 var(--display);letter-spacing:.03em;background:linear-gradient(#ffe08a,#e7b94c 45%,#a9761f);color:transparent;background-clip:text;filter:drop-shadow(0 1px 0 #ffecc6)}.ja{display:flex;align-items:center;justify-content:center;gap:16px;font:800 15px/1.5 var(--rounded);margin-top:12px}.ja:before,.ja:after{content:'';width:40px;height:1px;background:currentColor;opacity:.5}.notes{background:linear-gradient(#fbf6e7e0,#fbf6e7f0),url('assets/scenes/daily.png') center/cover fixed}.news-box{max-width:900px;padding:30px 40px;margin:auto;border:1px solid #d6c3a2;border-radius:22px;background:#fff9ecee;box-shadow:0 0 0 6px #fffcf077,0 18px 48px #57291d0c}.note-filters{display:flex;justify-content:center;gap:25px;margin:0 0 25px}.note-filters button{padding:8px 6px;background:none;border-bottom:3px solid transparent;font-weight:700}.note-filters button[aria-pressed=true]{color:var(--wine);border-color:var(--wine)}.note-row{width:100%;display:grid;grid-template-columns:95px 104px 1fr 20px;gap:15px;align-items:center;text-align:left;padding:24px 0;background:none;border-bottom:1px dotted #c4b59b;font-size:14px}.note-row:last-child{border:0}.note-row>span:nth-child(2){background:var(--wine);color:#fff9e9;border-radius:30px;font-size:10px;text-align:center;padding:2px 8px}.note-row:hover strong{color:var(--wine)}.action-band{padding:56px 16px;background:linear-gradient(#f1e4cd,#fbf6e7)}.band-card{max-width:800px;margin:auto;padding:26px;border:1px solid #c9a062;border-radius:18px;background:#fffaf1;text-align:center;box-shadow:0 0 0 6px #ffffff66}.band-card .eyebrow{color:#a1773e;font-size:11px}.band-card h2{font-size:26px;margin:10px 0}.band-card p{font-size:14px}.band-card .pill{min-height:48px;font-size:15px;margin:18px auto 0}
.about{background:radial-gradient(ellipse at 20% 30%,#ecd3ae66,transparent 50%),linear-gradient(#fff9ec,#fbf6e7)}.story-layout{display:grid;grid-template-columns:.9fr 1.08fr;gap:80px;max-width:1120px;margin:auto;align-items:center}.story-art{position:relative;border:1px solid #ddbf86;padding:9px;border-radius:240px 240px 20px 20px;background:#fff8e3;box-shadow:0 0 0 6px #fff9eb,0 30px 70px #61341921}.story-art img{width:100%;height:660px;object-fit:cover;object-position:50% center;border-radius:230px 230px 12px 12px}.story-art figcaption{position:absolute;bottom:30px;left:20px;right:20px;text-align:center;color:white;font-size:10px;text-shadow:0 1px 5px #1b0811}.about-body h2 .ja{justify-content:flex-start}.about-body h2 .ja:before{display:none}.story-lead{font:900 31px/1.7 var(--rounded);margin:28px 0 23px;color:var(--wine)}.about-body>p:not(.story-lead){margin:18px 0;line-height:2.1}.about-body blockquote{border-left:3px solid var(--gold);padding:8px 22px;margin:24px 0;font:800 18px/1.9 var(--rounded)}.story-dialogue{display:flex;align-items:center;gap:12px;margin-top:16px}.story-dialogue img{width:64px;height:68px;object-fit:contain}.story-dialogue p{background:#fffdf6;padding:12px 18px;border-radius:15px;font-size:13px;border:1px solid #e1d3ba;flex:1}.story-dialogue b{display:block;color:var(--wine);font-size:11px;margin-bottom:3px}.volume{padding:96px max(24px,calc((100vw - 1120px)/2));text-align:center;color:#fff7e5;background:linear-gradient(#742d40,#36111f)}.volume>.reveal>.eyebrow{color:#dfbd78}.volume h2{font-size:30px;line-height:1.8;margin:22px 0 40px}.volume-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.volume article{border:1px solid #efcfa948;border-radius:16px;padding:25px 10px;background:#fff6d807}.volume small{font:600 11px var(--display);letter-spacing:.1em;color:#efce92}.volume strong{display:block;font:900 42px/1.3 var(--rounded);margin:14px 0;color:#ffe8b0}.volume strong span{font-size:21px;margin-left:7px}.volume article p{font-size:12px}
.members{background:radial-gradient(ellipse at 35% 40%,#b5784644,transparent 45%),linear-gradient(#36111f,#1b0812);color:#fff8e9;isolation:isolate;overflow:hidden}.members:before{content:'';position:absolute;inset:0;z-index:-1;background:url('assets/scenes/workshop.png') center/cover;opacity:.12}.members .ja{color:#ead8b3}.member-detail{display:grid;grid-template-columns:1fr 1fr;gap:64px;max-width:1120px;margin:auto}.portrait-stage{height:720px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate}.portrait-word{position:absolute;inset:0;z-index:-1;color:transparent;-webkit-text-stroke:1px #f5dbaa38;font:800 130px/1.3 var(--display);writing-mode:vertical-rl;overflow:hidden;opacity:.7;letter-spacing:.06em}.portrait-stage:after{content:'';position:absolute;width:87%;height:75%;z-index:-1;border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--member-color) 30%,transparent),transparent 68%)}#character-touch{height:86%;width:100%;background:none;transition:transform .3s}#character-touch:hover{transform:translateY(-6px)}#portrait{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 20px #09020766);animation:float 8s ease-in-out infinite}.portrait-caption{position:absolute;bottom:15px;left:0;font-size:11px;letter-spacing:.13em;opacity:.6}.touch-hint{position:absolute;right:0;top:7%;padding:8px 16px;border:1px solid #dbb475;background:#fbf6e7;color:var(--wine);border-radius:30px;font:800 12px var(--rounded);box-shadow:0 5px 20px #0002}.member-kind{display:inline-block;color:#f1d59b;background:#f6dbaa14;border:1px solid #e3bc7066;padding:5px 17px;border-radius:30px;font:700 12px var(--rounded)}.member-name{font:900 60px/1.4 var(--rounded);margin:12px 0 0}.member-reading{font-size:13px;color:#dabf90;margin:0 0 24px}.member-verb{background:#fbf6e714;border-left:2px solid #deb875;padding:17px 20px;font:800 23px var(--rounded);margin-bottom:20px}.member-desc{font-size:14px;line-height:2.1}.member-facts{margin:20px 0;display:grid;gap:10px;font-size:13px}.member-facts>div{display:grid;grid-template-columns:85px 1fr;border-bottom:1px dotted #f1dab42c;padding-bottom:9px}.member-facts dt{color:#e7c78c;font-size:11px}.member-facts dd{margin:0}.control-label{font:800 13px var(--display);letter-spacing:.08em;color:#e5be72;margin:22px 0 11px}.control-label span{font:500 11px var(--body);letter-spacing:0;color:#efe0c5;margin-left:10px}.style-switch{display:flex;gap:9px}.style-switch button{background:#f6e7c60e;color:#eedfc7;border:1px solid #e9ce9c50;padding:7px 20px;border-radius:30px;font-size:12px}.style-switch button[aria-pressed=true]{background:#c8a359;color:#321521;border-color:#e7ce95}.style-note{font-size:10px;margin-top:8px;color:#c7b5a7}.member-tabs{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.member-tabs button{min-width:0;background:#fff5d615;border:1px solid #e9d2aa44;border-radius:10px;padding:3px 2px 6px;color:#f1e5cc;transition:background .2s}.member-tabs button[aria-selected=true]{background:#d6b57552;border-color:#f2d396;box-shadow:0 0 0 2px #e5bc6d}.member-tabs img{height:64px;width:100%;object-fit:contain}.member-tabs span{display:block;font-size:9px;white-space:nowrap}.support-members{margin-top:20px;font-size:11px;color:#ddc493}.support-members p{font:700 11px var(--display)}.support-members p span{font:500 10px var(--body);margin-left:8px}.support-members button{background:#ffefcf0a;border:1px solid #dac09840;color:#f4e7cf;border-radius:10px;display:flex;align-items:center;gap:14px;margin-top:8px;padding:4px 16px;font-size:12px}.support-members button img{height:55px;width:40px;object-fit:contain}.support-members button[aria-pressed=true]{border-color:#efd196;background:#ddbf7540}.setting-note{max-width:900px;text-align:center;margin:38px auto 0;font-size:11px;opacity:.7;padding:0 20px}.mascot{margin:60px auto 0;max-width:680px;padding:20px 40px;border-top:1px solid #deb46b44;border-bottom:1px solid #deb46b44;display:flex;align-items:center;gap:32px}.mascot>img{height:155px;width:130px;object-fit:contain}.mascot p{font-size:12px}.mascot p:first-child{color:#eac989;font:800 11px var(--display)}.mascot h3{font-size:25px;margin:8px 0}
.work{background:linear-gradient(#fbf6e7,#fff 40%,#fbf6e7)}.process-panel{max-width:1120px;margin:auto;padding:48px;display:grid;grid-template-columns:1.4fr 1fr;gap:50px;align-items:center;border:1px solid #dfcba4;border-radius:20px;background:#fff9ec;box-shadow:0 0 0 7px #fff8eeaa,0 18px 60px #5a331912}.process-visual{position:relative;overflow:hidden;border-radius:12px;aspect-ratio:1.35}.process-visual>img{width:100%;height:100%;object-fit:cover}.process-people{position:absolute;inset:auto 0 0;display:flex;justify-content:center;padding:10px 5px;background:linear-gradient(transparent,#3b152ae0);color:#fff6db}.process-person{text-align:center;width:25%;font-size:9px}.process-person img{height:65px;width:100%;object-fit:contain}.process-person p{line-height:1.4}.process-count{font:800 52px/1 var(--display);color:#d5ab5b}.process-title .system-en{font:800 12px var(--display);color:#ae793c;letter-spacing:.12em;margin:17px 0 12px}.process-title h3{font-size:25px;line-height:1.8;margin-bottom:17px;color:var(--wine)}.process-copy{font-size:14px;line-height:2}.process-controls{display:flex;justify-content:center;gap:24px;align-items:center;margin-top:36px}.process-controls>button{width:44px;height:44px;border:1px solid #d4ad64;border-radius:50%;background:#fff9e9;color:var(--wine)}.process-tabs{display:flex;gap:10px}.process-tabs button{font-size:11px;padding:6px 12px;background:transparent;border-bottom:3px solid #e1ccb0}.process-tabs button[aria-selected=true]{color:var(--wine);border-color:var(--wine);font-weight:900}.process-panel.is-changing{animation:scene-change .5s ease}
.days{background:linear-gradient(#fbf6e7,#f6ead5)}.scene-feature{display:block;margin:0 auto;width:min(900px,calc(100% - 48px));aspect-ratio:16/9;position:relative;padding:0;border:8px solid #fffaf0;border-radius:20px;overflow:hidden;box-shadow:0 24px 70px #622c2128;outline:1px solid #dcc39a}.scene-feature img{height:100%;width:100%;object-fit:cover;transition:transform .8s}.scene-feature:hover img{transform:scale(1.03)}.feature-open{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:#fff8e9e6;color:var(--wine);width:76px;height:76px;font:500 42px/76px var(--body);box-shadow:0 0 0 12px #fff4d82e}.feature-caption{position:absolute;bottom:0;left:0;right:0;padding:20px 12px 15px;background:linear-gradient(transparent,#260c14b5);color:white;font:800 13px var(--rounded)}.scene-lead{text-align:center;font:900 24px var(--rounded);margin:65px 0 30px;color:var(--wine)}.scene-filters{display:flex;justify-content:center;gap:16px;margin-bottom:24px}.scene-filters button{background:none;padding:5px 15px;border:1px solid #d8bea0;border-radius:30px;font-size:12px}.scene-filters button[aria-pressed=true]{background:var(--wine);color:#fff8e9;border-color:var(--wine)}.scene-grid{max-width:1000px;display:flex;gap:25px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 15px 22px;margin:auto}.scene{flex:0 0 calc(50% - 12px);background:#fffaf0;border:1px solid #dfcaa7;border-radius:15px;overflow:hidden;text-align:left;padding:0;scroll-snap-align:start;transition:transform .3s}.scene:hover{transform:translateY(-4px)}.scene>img{width:100%;aspect-ratio:16/10;object-fit:cover}.scene>span{display:inline-block;padding:3px 12px;margin:18px 22px 8px;background:#eaddc3;color:#753144;border-radius:20px;font-size:10px}.scene h3{font-size:17px;margin:0 22px}.scene>p{font-size:11px;padding:10px 22px 24px;line-height:1.8}.scene h3 span{float:right}
.closing{padding:120px 20px;text-align:center;min-height:650px;color:#fff8e9;background:linear-gradient(#260c14a3,#260c14df),url('assets/scenes/daily.png') center/cover}.closing .eyebrow{color:#e8c484}.closing h2{font-size:40px;line-height:1.9;margin:25px 0 40px}.closing .pill{margin:auto}.closing-link{display:block;margin-top:25px;font-size:13px;text-decoration:underline;text-underline-offset:5px}footer{padding:48px 20px 32px;background:#1b0812;color:#ddceb8;text-align:center}footer .brand{justify-content:center;font-size:20px}footer .brand img{width:115px;height:55px}footer nav{display:flex;justify-content:center;gap:25px;flex-wrap:wrap;margin:26px 0;font-size:11px}footer button{background:none;padding:0;font-size:11px}footer>p{font-size:10px;opacity:.5}.pagetop{position:fixed;bottom:20px;right:20px;z-index:90;width:64px;height:72px;display:flex;align-items:center;flex-direction:column;justify-content:center;background:linear-gradient(#fff4d6,#d5ae60);border:2px solid #f7dda6;border-radius:50%;box-shadow:0 0 0 4px #63263c,0 5px 18px #180b1830;opacity:0;pointer-events:none;transform:translateY(15px);transition:.4s}.pagetop.is-show{opacity:1;pointer-events:auto;transform:none}.pagetop img{width:40px;height:43px;object-fit:contain}.pagetop span{font:800 8px var(--display);color:#421626}dialog{border:1px solid #d2ae70;border-radius:18px;background:var(--paper);color:var(--ink);padding:40px;width:min(960px,calc(100% - 32px));max-height:90svh;box-shadow:0 20px 100px #0006}dialog::backdrop{background:#1a0a14bd;backdrop-filter:blur(5px)}.dialog-close{position:sticky;display:block;float:right;top:0;z-index:2;background:var(--wine);color:#fff8e9;border-radius:50%;width:36px;height:36px;font-size:25px}.dialog-content img{width:100%;border-radius:10px;margin-bottom:24px}.dialog-content h2{font-size:28px;margin-bottom:15px}.dialog-content p{margin:12px 0}.dialog-content .caption{font-size:12px}.reveal{opacity:0;transform:translateY(32px);transition:opacity .9s ease,transform .9s ease}.reveal.is-in{opacity:1;transform:none}@keyframes float{0%,100%{translate:0 0}50%{translate:0 -12px}}@keyframes hero-drift{from{transform:scale(1.04) translateX(-.6%)}to{transform:scale(1.1) translateX(.6%)}}@keyframes particles{to{background-position:0 -290px,0 -410px,0 -530px}}@keyframes scene-change{from{opacity:.3;translate:15px 0}to{opacity:1;translate:0 0}}
@media(max-width:1150px){.header{padding:0 24px}.header nav{gap:18px}.section-heading,.story-layout,.member-detail,.process-panel{max-width:calc(100% - 64px)}.hero-copy{left:7%;width:48%}.hero-cast{right:0;width:54%}.hero-vertical{right:14px}.story-layout{gap:50px}.member-detail{gap:38px}.member-name{font-size:48px}.process-panel{gap:30px;padding:32px}}
@media(max-width:760px){html{scroll-padding-top:56px}.header{height:56px;padding:0 16px;background:#fbf6e7f2}.brand{font-size:14px;gap:5px}.brand img{width:70px;height:35px}.menu-toggle{display:block;background:none;color:var(--wine);font:800 12px var(--rounded);padding:8px;border-top:2px solid currentColor;border-bottom:2px solid currentColor}.header nav{display:none;position:absolute;top:56px;left:0;right:0;background:#fbf6e7fa;padding:24px 28px;border-bottom:1px solid #d4bf98;box-shadow:0 12px 24px #2e0a1e22}.header nav.is-open{display:grid;grid-template-columns:1fr 1fr;gap:25px}.header nav a b{font-size:17px}.header nav a span{font-size:11px}.hero{height:100svh;min-height:760px}.hero-visual img{object-position:69% center}.hero-light{background:linear-gradient(#260c140a,#3611248c 35%,#260c14e6 77%,var(--cream)),linear-gradient(90deg,#260c1455,transparent)}.hero-copy{width:100%;left:0;top:auto;bottom:80px;transform:none;text-align:center;padding:0 20px}.hero .eyebrow{font-size:11px}.hero-logo{width:135px;height:50px;margin:7px auto}.hero-name{font-size:47px;text-shadow:0 2px 0 #a26835,0 5px 15px #260c14}.hero h1{font-size:18px;line-height:1.6;letter-spacing:.01em;margin:13px 0 9px}.hero-bottom>p{font-size:11px;margin-bottom:17px}.hero .pill{margin-left:auto;margin-right:auto;max-width:290px;min-height:55px;font-size:17px}.hero .ghost{min-height:36px;font-size:11px;margin-top:11px;max-width:245px}.hero-cast{right:5%;bottom:auto;top:9%;height:30%;width:88%;opacity:.98}.hero-mio{left:8%;height:100%;width:48%;bottom:0}.hero-arou{right:3%;height:105%;width:51%}.hero-aimon{left:42%;height:40%;bottom:-3%}.hero-vertical{font-size:12px;right:10px;top:13%;letter-spacing:.18em}.scroll-note{bottom:19px;font-size:9px;gap:6px}.section{padding:80px 0}.section-heading{max-width:calc(100% - 32px);margin-bottom:36px}.en{font-size:39px;letter-spacing:0}.ja{font-size:12px;margin-top:10px}.ja:before,.ja:after{width:25px}.section-heading>p{font-size:12px;margin-top:17px}.news-box{width:calc(100% - 44px);padding:20px}.note-filters{gap:12px;margin-bottom:10px}.note-filters button{font-size:11px}.note-row{grid-template-columns:90px 1fr 18px;gap:8px;padding:18px 0;font-size:11px}.note-row time{font-size:11px}.note-row strong{grid-column:1/3;grid-row:2;font-size:12px;line-height:1.7}.note-row>span:last-child{grid-column:3;grid-row:1/3}.note-row>span:nth-child(2){justify-self:start;font-size:9px;padding:1px 10px}.band-card{padding:25px 18px}.band-card h2{font-size:19px}.band-card p{font-size:11px}.action-band{padding:44px 22px}.story-layout{max-width:calc(100% - 40px);display:flex;flex-direction:column;gap:44px}.story-art{width:250px;align-self:center;border-radius:140px 140px 16px 16px;padding:6px}.story-art img{height:365px;border-radius:135px 135px 10px 10px}.story-art figcaption{font-size:8px;bottom:22px}.about-body h2{text-align:center}.about-body h2 .ja{justify-content:center}.about-body h2 .ja:before{display:block}.story-lead{font-size:25px;line-height:1.7;margin:25px 0 20px}.about-body>p:not(.story-lead){font-size:13px;line-height:2}.about-body blockquote{font-size:16px;padding:5px 18px}.story-dialogue img{width:48px;height:56px}.story-dialogue p{font-size:11px;padding:10px 14px}.volume{padding:56px 22px}.volume h2{font-size:20px;line-height:1.9;margin:18px 0 30px}.volume-grid{grid-template-columns:1fr 1fr;gap:12px}.volume article{padding:20px 10px}.volume small{font-size:9px}.volume strong{font-size:32px;margin:10px 0}.volume article p{font-size:10px}.member-detail{max-width:calc(100% - 40px);grid-template-columns:1fr;gap:25px}.portrait-stage{height:430px}.portrait-word{font-size:90px}.portrait-caption{font-size:9px;bottom:0}.touch-hint{font-size:10px;top:10px;right:5px}.member-name{font-size:44px}.member-reading{font-size:11px;margin-bottom:18px}.member-verb{font-size:21px;padding:14px 18px}.member-desc{font-size:12px}.member-facts{font-size:11px}.member-facts>div{grid-template-columns:70px 1fr}.member-facts dt{font-size:10px}.member-tabs{grid-template-columns:repeat(4,1fr);gap:9px}.member-tabs img{height:66px}.member-tabs span{font-size:10px}.style-switch button{font-size:11px}.mascot{margin:44px 20px 0;padding:20px 0;gap:15px}.mascot>img{width:85px;height:120px}.mascot p{font-size:10px}.mascot p:first-child{font-size:9px}.mascot h3{font-size:21px}.setting-note{font-size:9px;margin-top:26px;line-height:1.8}.process-panel{max-width:calc(100% - 40px);padding:24px;grid-template-columns:1fr;gap:27px;border-radius:16px}.process-visual{aspect-ratio:1.4}.process-person img{height:50px}.process-person p{font-size:8px}.process-count{font-size:40px}.process-title .system-en{margin-top:15px;font-size:10px}.process-title h3{font-size:21px;line-height:1.7}.process-copy{font-size:12px}.process-controls{gap:14px;margin-top:26px}.process-controls>button{width:36px;height:36px}.process-tabs{gap:6px}.process-tabs button{padding:5px 9px;font-size:10px}.scene-feature{width:calc(100% - 40px);border-width:5px;border-radius:13px}.feature-open{width:48px;height:48px;font-size:29px;line-height:48px;box-shadow:0 0 0 8px #fff6dc22}.feature-caption{font-size:10px;padding:12px 8px 9px}.scene-lead{font-size:19px;margin:42px 0 23px}.scene-filters{gap:8px}.scene-filters button{font-size:10px;padding:4px 13px}.scene-grid{padding:6px 20px 18px;gap:15px}.scene{flex-basis:85%}.scene h3{font-size:16px}.scene>p{font-size:10px}.closing{padding:80px 24px;min-height:520px}.closing h2{font-size:26px;line-height:1.9;margin:25px 0 35px}.closing .pill{font-size:16px;max-width:300px}.closing .eyebrow{font-size:11px}footer nav{gap:15px;font-size:10px}footer .brand{font-size:18px}.pagetop{right:15px;bottom:15px;width:49px;height:57px}.pagetop img{height:32px;width:33px}.pagetop span{font-size:7px}dialog{padding:25px}.dialog-content h2{font-size:22px}.dialog-content p{font-size:13px}.dialog-content .caption{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Final visual adjustments: baked banner characters recede behind foreground cast. */
.hero-visual img{filter:blur(5px);opacity:.7}.hero-light{background:linear-gradient(90deg,rgba(38,12,20,.94),rgba(61,15,26,.7) 40%,rgba(36,13,19,.45) 75%),linear-gradient(0deg,var(--cream),transparent 22%)}.scene-controls{display:flex;justify-content:center;gap:16px;align-items:center;margin:24px auto 0}.scene-controls>button{background:none;border:1px solid #d5ad5b;border-radius:12px;padding:6px;color:var(--wine);font-size:10px}.scene-controls>button img{height:40px;width:72px;object-fit:cover;border-radius:6px;margin-bottom:4px}.scene-controls>button[aria-pressed=true]{background:#ebd7ad;border-color:#6e273b;box-shadow:0 0 0 2px #dcc28a}.scene-controls #scene-prev,.scene-controls #scene-next{border-radius:50%;height:36px;width:36px}.scene-lead{margin-top:45px}@media(max-width:760px){.hero-visual img{filter:blur(3px);opacity:.65}.hero-light{background:linear-gradient(#260c1422,#361124bb 38%,#260c14f2 77%,var(--cream))}.scene-controls{gap:10px}}

.hero-visual img{filter:none;opacity:.72;object-position:85% center}.hero-light{background:linear-gradient(90deg,rgba(38,12,20,.96) 0%,rgba(61,15,26,.83) 37%,rgba(36,13,19,.58) 75%),linear-gradient(0deg,var(--cream),transparent 23%)}.hero-aimon{height:44%;width:37%;left:28%;bottom:-5%}@media(max-width:760px){.hero-visual img{filter:none;opacity:.72;object-position:82% center}.hero-light{background:linear-gradient(#260c141f,#3611249f 32%,#260c14f0 71%,var(--cream))}.hero-aimon{height:45%;width:35%;left:36%;bottom:-8%}}

/* 2026-10-12: provided video, scanlines, company banner and random cast */
.hero-visual .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.85}
.hero-visual:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(to bottom,transparent 0 3px,rgba(0,0,0,.22) 3px 4px);opacity:.55}
.hero-video.is-unavailable{display:none}
.hero-video-toggle{position:absolute;right:24px;bottom:24px;z-index:9;padding:7px 12px;border:1px solid #e3bd7180;border-radius:4px;background:#260c14b3;color:#fff8e9;font-size:11px}
.hero-video-toggle:focus-visible{outline:2px solid #fff8e9;outline-offset:4px}
.company-banner{padding:48px 24px 0;background:var(--cream)}
.company-banner>img{display:block;width:min(100%,1120px);height:auto;margin:auto}
.hero-cast.is-random{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:0}
.hero-cast.is-random>img{position:relative;inset:auto;width:115%;height:100%;max-height:100%;object-fit:contain;transform:none}
.hero-cast.is-random>img:nth-child(2){margin-left:-15%;animation-delay:-3s}
.hero-cast.is-random.has-three>img:nth-child(3){position:absolute;width:40%;height:44%;left:30%;bottom:-6%;animation-delay:-5s}
.hero-cast.is-random.is-rare{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));align-items:center;gap:0;bottom:14%;height:68%}
.hero-cast.is-random.is-rare>img{width:100%;height:100%;margin:0;max-height:100%;position:relative;inset:auto}
@media(max-width:760px){.company-banner{padding:28px 16px 0}.hero-video-toggle{right:12px;bottom:16px;font-size:9px;padding:5px 8px}.hero-cast.is-random.is-rare{top:8%;bottom:auto;height:32%;width:82%;right:9%}.hero-visual .hero-video{object-position:60% center}}
@media(prefers-reduced-motion:reduce){.hero-visual .hero-video{display:none}.hero-video-toggle{display:none}}

/* Branding: enlarged original logo silhouette in a single beige tone. */
.brand{position:relative;gap:0}
.brand>span{display:none}
.brand:before{content:"";position:absolute;inset:0;background:#ddceb8;mask:url('assets/logo.png') center/contain no-repeat;-webkit-mask:url('assets/logo.png') center/contain no-repeat;pointer-events:none}
.brand img{opacity:0;width:220px;height:52px}
footer .brand{width:260px;margin-inline:auto}
footer .brand img{width:260px;height:70px}
@media(max-width:760px){.header .brand img{width:180px;height:44px}footer .brand{width:230px}footer .brand img{width:230px;height:62px}}

.header,.header.is-scrolled{background:#1b0812f2;color:#ddceb8}.header .menu-toggle{color:#ddceb8}@media(max-width:760px){.header nav{background:#1b0812fa}}

footer .footer-external{gap:14px 28px;margin:30px auto 24px;max-width:760px}footer .footer-external a{font-size:13px;padding:9px 5px;color:#ddceb8;border-bottom:1px solid #ddceb855}footer .footer-external a:hover{color:#fff4dc}footer .footer-external a:focus-visible{outline:2px solid #ddceb8;outline-offset:4px}

/* Footer: contact guidance and restrained project buttons. */
.footer-contact{margin:40px auto 0;padding:0 20px}
.footer-contact-title{font:700 20px/1.7 var(--rounded);color:#f0e2cb}
.footer-contact-lead{font-size:12px;margin-top:9px;color:#c6b7a3}
footer .footer-external{align-items:center;margin-top:22px}
footer .footer-external .footer-site-button{display:flex;flex-direction:column;justify-content:center;gap:3px;min-height:62px;padding:12px 22px;border:1px solid #ddceb880;border-radius:8px;background:#ddceb814;color:#f0e2cb;transition:background .2s,border-color .2s}
footer .footer-site-button small{font-size:9px;letter-spacing:.06em;color:#c6b7a3}
footer .footer-external .footer-site-button:hover{background:#ddceb82a;border-color:#ddceb8}
@media(max-width:760px){.footer-contact-title{font-size:17px}.footer-contact-lead{font-size:11px}footer .footer-external{padding:0 22px;gap:15px}footer .footer-external .footer-site-button{flex-basis:calc(50% - 8px);padding:12px 10px;font-size:11px}}

footer .footer-external .footer-site-primary{background:#ddceb8;border-color:#ddceb8;color:#241018;font-weight:800;min-width:210px;font-size:15px}footer .footer-external .footer-site-primary:hover{background:#f0e2cb;color:#241018}@media(max-width:760px){footer .footer-external .footer-site-primary{flex-basis:100%;min-width:0;font-size:15px}}

.scene-project-links{display:flex;justify-content:center;align-items:stretch;gap:16px;flex-wrap:wrap;margin:24px auto 36px;padding:0 20px}
.scene-project-links a{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:220px;min-height:66px;padding:14px 24px;border:1px solid #ddceb880;border-radius:8px;background:#ddceb814;color:#f0e2cb;font-size:13px;transition:background .2s}
.scene-project-links small{font-size:10px;color:#c6b7a3}
.scene-project-links .footer-site-primary{background:#ddceb8;color:#241018;font-weight:800;font-size:16px;border-color:#ddceb8}
.scene-project-links a:hover{background:#ddceb82a}.scene-project-links .footer-site-primary:hover{background:#f0e2cb}
.scene-project-links a:focus-visible{outline:2px solid #ddceb8;outline-offset:4px}
@media(max-width:760px){.scene-project-links{gap:12px}.scene-project-links a{width:100%;max-width:330px}}

.scene-project-links a:not(.footer-site-primary){color:var(--wine);border-color:#a68a6480;background:#a68a640c}.scene-project-links small{color:#806c53}.scene-project-links a:not(.footer-site-primary):hover{background:#a68a641f}

.days .notes.section{padding:28px 0 48px}.days .notes .en{font-size:32px}.days .notes .section-heading{margin-bottom:24px}

.lab-updates{background:var(--cream);padding:0 0 48px}.lab-updates .scene-project-links{margin-top:0}.lab-updates .notes.section{padding:28px 0 0}.lab-updates .notes .en{font-size:32px}.lab-updates .notes .section-heading{margin-bottom:24px}

.project-stories{max-width:1120px;margin:auto;padding:12px 24px 48px}.project-intro{text-align:center;margin-bottom:36px}.project-intro h2{font:800 28px/1.7 var(--rounded);color:var(--wine)}.project-intro p{font-size:13px;line-height:2;margin-top:14px;color:#806c53}.project-label{font-weight:700;font-size:13px;color:var(--wine);margin-bottom:12px}.project-banner-main,.project-banner-current{display:block;overflow:hidden;border:1px solid #a68a6455;transition:opacity .2s}.project-banner-main img{display:block;width:100%;aspect-ratio:2.753;object-fit:cover;object-position:center}.project-banner-main>span,.project-banner-current>span{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 20px;color:var(--wine);background:#fffcf3;font-size:13px;font-weight:700}.project-banner-main:hover,.project-banner-current:hover{opacity:.88}.project-banner-main:focus-visible,.project-banner-current:focus-visible{outline:3px solid var(--wine);outline-offset:4px}.project-current{max-width:506px;margin:32px 0 0 auto}.project-banner-current img{display:block;width:100%;height:auto}.project-banner-current>span{font-size:11px;padding:12px 16px}
@media(max-width:760px){.project-stories{padding:0 20px 32px}.project-intro h2{font-size:23px}.project-intro p{font-size:11px}.project-banner-main>span{font-size:12px;padding:13px 15px}.project-current{max-width:300px;margin:28px auto 0}.project-label{font-size:12px}}

/* Matched banners inside the personal introduction block. */
.project-current{max-width:none;margin:28px 0 0}
.project-banner-main img,.project-banner-current img{width:100%;height:auto;aspect-ratio:2.753;display:block}
.project-banner-current img{object-fit:contain;background:#111a16}
.project-banner-main>span,.project-banner-current>span{font-size:13px;padding:15px 20px;min-height:52px}
@media(max-width:760px){.project-current{max-width:none;margin:26px 0 0}.project-banner-main>span,.project-banner-current>span{font-size:12px;padding:13px 15px}}

/* CREATIVE follows NEWS heading style; prototype remains a quiet text link. */
.project-intro .section-heading{margin:0 auto 24px;max-width:100%}.project-intro .section-heading h2{font:inherit;line-height:normal}.project-intro .section-heading .en{font-size:32px}.project-intro .section-heading .ja{color:var(--wine)}
.project-current{margin:24px 0 0;text-align:center}.project-prototype-link{display:inline-flex;gap:12px;align-items:center;font-size:13px;color:var(--wine);padding:9px 2px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#a68a6470}.project-prototype-link:hover{text-decoration-color:currentColor}.project-prototype-link:focus-visible{outline:2px solid var(--wine);outline-offset:4px}
@media(max-width:760px){.project-intro .section-heading h2{font:inherit}.project-prototype-link{font-size:12px}}

.project-current .project-prototype-link.pill{display:flex;margin:24px auto 0;max-width:440px;min-height:66px;padding:14px 28px;border:2px solid #e3bd71;border-radius:80px;background:linear-gradient(#aa465a,#762439);color:#fff9e9;font:800 19px/1.5 var(--rounded);text-decoration:none;box-shadow:0 0 0 4px #ffefc21c,0 5px 20px #150a1429}.project-current .project-prototype-link.pill:hover{filter:brightness(1.1)}@media(max-width:760px){.project-current .project-prototype-link.pill{font-size:17px;min-height:60px;padding:13px 20px}}
