:root{--bg:#140b10;--wine:#761d36;--rose:#d59b9e;--gold:#cdbca0;--text:#f2e9e0;--muted:#b9a6a8;--line:#cdbca02b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--text);font-family:'Yu Mincho','Hiragino Mincho ProN',serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{max-width:100%;height:auto;display:block}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.skip{position:absolute;top:-60px}.skip:focus{top:10px;z-index:100;background:#000;padding:15px}.topbar{position:absolute;z-index:10;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:22px 5%;border-bottom:1px solid #ffffff20;background:linear-gradient(#100810a8,transparent)}.brand{display:flex;align-items:center;gap:15px}.brand img{width:65px;height:65px;object-fit:contain}.brand span{font-size:22px;letter-spacing:.18em}.brand small{font-size:10px;letter-spacing:.1em;display:block;margin-top:7px}.topbar nav{display:flex;gap:30px;align-items:center;font-size:13px;letter-spacing:.1em}.text-link:hover,.topbar nav a:hover{color:var(--rose)}.nav-recruit{border:1px solid #fff5;padding:12px 20px}.menu-toggle{display:none}.mobile-menu{position:fixed;z-index:30;inset:90px 0 auto;background:#1a0b16fa;padding:25px}.mobile-menu a{display:block;padding:18px;border-bottom:1px solid var(--line)}.shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:linear-gradient(90deg,#100810b8,transparent 85%),linear-gradient(0deg,#140b10 0,transparent 40%,#10081033)}.eyebrow{font-family:Georgia,serif;font-size:10px;letter-spacing:.24em;color:var(--gold);margin:0 0 26px}.hero-links{display:flex;align-items:center;gap:34px}.btn{display:inline-flex;align-items:center;gap:35px;justify-content:space-between;padding:19px 25px;border:1px solid #cdbca077;font-size:12px;letter-spacing:.1em;transition:background .2s}.btn:hover{background:#76203b}.filled{background:#761d36;border-color:#a35f6b}.text-link{display:inline-flex;align-items:center;gap:30px;font-size:12px;letter-spacing:.08em;border-bottom:1px solid #cdbca04a;padding:10px 0}.ribbon{display:flex;justify-content:space-around;padding:24px 5%;font-size:11px;letter-spacing:.1em;border-bottom:1px solid var(--line);color:var(--gold)}.section{padding:110px 8%;max-width:1500px;margin:auto}h2{font-size:clamp(27px,3vw,42px);line-height:1.7;font-weight:400;letter-spacing:.1em;margin:0}h3{font-weight:400;font-size:21px}.story{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;align-items:center;background:radial-gradient(ellipse at right,#46142760,transparent 65%)}.photo-caption{display:block;font:9px Georgia;letter-spacing:.24em;margin-top:20px;color:var(--gold)}.ornament{font-size:24px;color:var(--rose);margin:20px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:40px}.cast-image{display:block;position:relative;border:1px solid var(--line);overflow:hidden;background:#100a0d}.cast-image img{width:100%;transition:transform .8s}.cast-image:hover img{transform:scale(1.025)}.image-link{position:absolute;bottom:0;right:0;background:#340d23e8;padding:20px 25px;letter-spacing:.2em;font-size:10px}.muted{font-size:12px;line-height:2;color:var(--muted)}.plans{display:grid;grid-template-columns:1fr 1fr;gap:25px}.accent{background:linear-gradient(135deg,#471326,#25101c);border-color:#b56a7d66}.plan-index{font-size:10px;letter-spacing:.2em;color:var(--gold)}.price{font-size:46px;margin:20px 0;letter-spacing:.03em}.price span{font-size:12px;margin-left:10px;color:var(--muted)}.fine{font:11px/1.9 sans-serif;color:var(--muted);margin-top:20px}.access-lead{font-size:14px;color:var(--rose);margin:25px 0}dl{font-size:12px;margin:30px 0}dl>div{display:grid;grid-template-columns:80px 1fr;padding:18px 0;border-bottom:1px solid var(--line);line-height:2}dt{color:var(--muted)}dd{margin:0}.access-photo{position:relative}.access-photo img{aspect-ratio:4/5;object-fit:cover;filter:brightness(.65)}.access-photo>div{position:absolute;bottom:40px;left:35px;font-size:25px;letter-spacing:.2em}.access-photo small{display:block;font-size:10px;margin-top:15px;letter-spacing:.1em}footer{padding:65px 8% 35px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:40px}.socials{display:flex;gap:25px;font-size:12px}.footer-bottom{border-top:1px solid var(--line);padding-top:25px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}.mobile-dock{display:none}dialog{background:#140b10;color:var(--text);border:1px solid var(--line);max-width:90vw;max-height:90svh;padding:45px 15px 15px}dialog::backdrop{background:#000d}dialog img{max-height:75svh;object-fit:contain;margin:auto}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s,transform .8s}.js .reveal.visible{opacity:1;transform:none}@media(max-width:700px){html{scroll-padding-top:25px}.topbar{padding:15px 6%}.brand img{width:48px;height:48px}.brand span{font-size:16px}.brand small{font-size:8px}.topbar nav{display:none}.menu-toggle{display:block;background:none;border:1px solid #fff5;padding:11px;font-size:9px;letter-spacing:.12em}.menu-toggle span{margin-left:8px}.shade{background:linear-gradient(90deg,#100810a0,transparent),linear-gradient(0deg,#140b10,transparent 85%)}.eyebrow{font-size:8px;letter-spacing:.16em}.hero-links{gap:20px;align-items:start;flex-direction:column}.btn{padding:17px 20px;font-size:11px}.ribbon{padding:20px 5%;font-size:9px;gap:20px}.ribbon>span:nth-child(2){display:none}.section{padding:70px 7%}.story{grid-template-columns:1fr;gap:25px}.section-head{display:block;margin-bottom:25px}.section-head .text-link{margin-top:15px}h2{font-size:28px}.cast-image .image-link{font-size:8px;padding:14px}.plans{grid-template-columns:1fr;gap:16px}.price{font-size:42px}.access-photo img{aspect-ratio:4/3}.footer-top{display:block}.socials{margin-top:30px}.footer-bottom{flex-direction:column;line-height:1.8}footer{padding-bottom:100px}.mobile-dock{position:fixed;z-index:20;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(3,1fr);background:#230e1bf5;backdrop-filter:blur(15px);border-top:1px solid #b98b9555;padding-bottom:env(safe-area-inset-bottom)}.mobile-dock a{padding:19px 5px;text-align:center;font-size:11px;border-right:1px solid var(--line)}.mobile-dock a:last-child{background:#761d36}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}*{transition:none!important}}:root{--bg:#110d10;--wine:#d51f39;--rose:#ed344e;--gold:#ee6776;--text:#fff0ed;--muted:#c5a5aa;--line:#c52d4655}body{font-family:'Hiragino Maru Gothic ProN','Yu Gothic',sans-serif;background:#110d10;background-image:radial-gradient(#b7253e22 .8px,transparent .8px);background-size:16px 16px}h1,h2,h3{font-family:'Hiragino Maru Gothic ProN','Yu Gothic',sans-serif;font-weight:700;letter-spacing:.05em}h2{font-size:clamp(25px,2.7vw,36px)}.eyebrow{font-family:Georgia,serif;color:#bd6285;letter-spacing:.18em}.topbar{background:linear-gradient(#4a1a39bd,transparent);border-color:#ffd1e850;color:#fff0ec}.brand span{font-family:Georgia,serif}.topbar nav{gap:18px}.topbar nav>a{padding:11px 17px;border-radius:30px;background:#fff1f718;border:1px solid #ffd0e433;transition:background .2s,transform .2s}.topbar nav>a:hover{background:#c42b3b;color:#fff5ef;transform:translateY(-2px)}.nav-recruit{background:#c91f35!important;border:1px solid #f15a69!important}.shade{background:linear-gradient(90deg,#300710c4,transparent 90%),linear-gradient(0deg,#1c070ed9,transparent 65%)}.btn{position:relative;border-radius:50px;border:1px solid #ed5264;background:#21141c;color:#fff0e9;padding:18px 28px;box-shadow:0 5px 0 #740d22,0 8px 20px #e32b4233;font-weight:700;transition:transform .2s,box-shadow .2s,background .2s}.btn::before{content:'';font-size:18px;line-height:1}.btn:hover{background:#401321;color:#fff5ef;transform:translateY(-3px);box-shadow:0 8px 0 #740d22,0 12px 24px #e32b4233}.filled{background:linear-gradient(120deg,#eb3446,#b8112b);color:#fff;border:2px solid #f8737d;box-shadow:0 5px 0 #650b1c,0 9px 22px #08030688}.filled:hover{background:#f33d51;color:#fff;box-shadow:0 8px 0 #650b1c}.text-link{border:1px solid #8d3042;border-radius:30px;background:#24131d;padding:12px 20px;color:#ffbcc1;font-weight:600;font-size:11px;box-shadow:0 3px 0 #500e20}.ribbon{background:#290e1b;border-bottom:2px dashed #791a32;color:#ffc0c0}.story{background:radial-gradient(ellipse at right,#6f102b44,transparent 65%)}.photo-caption{text-align:center;font-size:9px}.ornament{color:#df2945}.cast-image{border:8px solid #fff;border-radius:25px;box-shadow:0 8px 24px #0005;outline:#93273e solid 1px}.image-link{background:#b71530;color:#fff;border-radius:24px 0 0;font-weight:700}.plans{gap:25px}.price{color:#ff5367;font-weight:700}.price span{color:#ceb1ba}.plan-index{color:#e57380}.access-lead{color:#f36a7b}.access-photo{padding:10px;background:#fff;border:1px solid #85273e;border-radius:28px;box-shadow:0 10px 25px #0008}.access-photo img{border-radius:20px;filter:brightness(.85)}.access-photo>div{color:#fff;font-family:Georgia,serif;text-shadow:0 2px 6px #301326}.access-photo small{font-family:sans-serif}footer{background:#190c17;border-top:1px dashed #80243e}.socials a{border:1px solid #843047;background:#291320;border-radius:25px;padding:12px 18px;font-size:11px}.footer-bottom{border-color:#6e233a}.mobile-menu{background:#1c101bfa;color:#ffd7dd;border-bottom:2px solid #80314b}.mobile-menu a{border-color:#80314b}.menu-toggle{border-radius:25px;background:#2d1222;color:#ffc6ce;border-color:#a63a50}dialog{background:#20101b;border:4px solid #a02e48;border-radius:25px;color:#ffbbc4}dialog img{border-radius:12px}.mobile-dock{background:#170c16f5;border-color:#a3374f;padding:8px 8px calc(8px + env(safe-area-inset-bottom));gap:7px}.mobile-dock a{background:#fff;border:1px solid #8d2f48;border-radius:25px;color:#ffe5e9;padding:14px 3px;box-shadow:0 3px 0 #520d22;font-weight:700}.mobile-dock a:last-child{background:linear-gradient(120deg,#ed344d,#b51733);color:#fff;border-color:#d84961}.mobile-dock a::before{content:'';margin-right:4px}.fine{color:#c5a5aa}@media(max-width:700px){.hero-links{gap:20px}.btn{padding:16px 22px;font-size:11px}.section{padding-top:65px;padding-bottom:65px}.price{font-size:38px}.socials{gap:9px}.socials a{padding:11px 12px}.mobile-menu{inset:85px 0 auto}.image-link{font-size:8px}}.topbar nav>a{border-width:1px;box-shadow:0 3px 0 #350b19}.btn,.socials a,.text-link{border-width:2px}.btn{box-shadow:0 5px 0 #650c24,0 0 0 3px #160a13}.filled{background:linear-gradient(135deg,#ec3448,#ad0b2b);border-color:#ff8b96;box-shadow:0 6px 0 #5d0a21,0 0 22px #e6274033}.filled:hover{background:#ef344d}.btn::before,.mobile-dock a::before{content:'';display:inline-block;flex:none;width:25px;height:25px;background:url('../img/rose-mark.svg') center/contain no-repeat;vertical-align:middle}.photo-caption{color:#ff9ea9}.ribbon{background:repeating-linear-gradient(135deg,#290e1a,#290e1a 14px,#310f1d 14px,#310f1d 28px)}.section-head h2::after{content:' ✦';color:#db2d4b}.access-photo{background:#260e1d}.access-photo img{filter:brightness(.82)}.image-link{border-top:2px solid #f17385;border-left:2px solid #f17385}.mobile-dock a{background:#29101f;color:#ffe6ec}.mobile-dock a:last-child{background:linear-gradient(135deg,#e83049,#ad0c2c)}.mobile-dock a::before{width:18px;height:18px;margin-right:3px}.ornament{color:#e33451}.socials a{color:#ffd1da}.footer-top .brand{color:#fff0ed}@media(max-width:700px){.btn::before{width:23px;height:23px}.mobile-dock a{display:flex;align-items:center;justify-content:center;font-size:10px}}@media(max-width:700px){.ribbon{padding-block:17px}}.cast-list-action{text-align:center;margin-top:30px}.cast-list-action .btn{min-width:220px;justify-content:space-between}.cast-list-action .btn span{margin-left:20px}@media(max-width:700px){.cast-list-action{margin-top:25px}.cast-list-action .btn{min-width:210px}}.topbar{position:relative;background:#1c0d17;border-bottom:1px solid #8e2942}.page-banner{position:relative;text-align:center;padding:65px 20px 50px;background:radial-gradient(ellipse at center,#5b102b88,transparent 70%);border-bottom:2px dashed #80223b}.page-banner>p{letter-spacing:.3em;color:#f47b8a;font:12px Georgia}.page-banner>img{width:55px;height:55px;margin:18px auto}.page-banner h1{font-size:clamp(26px,4vw,42px);margin:20px 0 25px}.page-banner>a,.page-banner>span{font-size:10px;color:#d5a9b5}.page-content{max-width:1200px;margin:auto;padding:65px 7% 90px}.page-content img{height:auto}.page-content a:focus-visible{outline:#ff8d9e solid 2px}.page-content ul{padding:0;list-style:none}.cast-list>ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.cast-list li{position:relative;background:linear-gradient(150deg,#3a1426,#1f111b);border:2px solid #8f2944;border-radius:24px;padding:18px;box-shadow:0 7px 0 #480d21;overflow:hidden;transition:transform .2s}.cast-list li:hover{transform:translateY(-4px)}.cast-list li>span{display:flex;gap:9px;align-items:center;font-weight:700;font-size:16px;margin-bottom:16px}.cast-list li>span:before{content:'';width:25px;height:25px;background:url('../img/rose-mark.svg') center/contain no-repeat;flex:none}.cast-list li>img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:15px}.sns-icons{display:flex;justify-content:center;gap:13px;margin-top:18px}.sns-icons a{display:flex;align-items:center;justify-content:center;background:#500e26;border:1px solid #ae354f;border-radius:50%;width:37px;height:37px;color:#ffced7}.sns-icons svg{width:16px;height:16px}table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;background:#25131f;border:1px solid #8c2c44;border-radius:18px;font-size:13px}caption{font-size:19px;text-align:left;font-weight:700;margin-bottom:16px;color:#ffb8c6}td,th{text-align:left;padding:17px 18px;line-height:1.8;border-bottom:1px solid #672238;font-weight:400}td{color:#ffb7c4}tr:last-child td,tr:last-child th{border-bottom:0}.title-h2{text-align:center;margin-bottom:25px}.page-content svg{max-width:100%}@media(max-width:700px){.page-banner{padding:35px 15px}.page-banner>img{width:42px;height:42px}.page-content{padding:38px 5% 65px}.cast-list>ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 12px}.cast-list li{padding:10px;border-radius:18px}.cast-list li>span{font-size:12px;gap:5px}.cast-list li>span:before{width:20px;height:20px}.sns-icons{gap:7px}.sns-icons a{height:29px;width:29px}.sns-icons svg{width:13px;height:13px}td,th{padding:12px 10px;font-size:12px}.mobile-menu{top:85px}}body{padding-bottom:calc(98px + env(safe-area-inset-bottom))}.bottom-nav{position:fixed;z-index:40;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:10px max(18px,calc((100vw - 850px)/ 2)) calc(10px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#220e1bf5,#120a11fa);border-top:2px solid #a62b45;box-shadow:0 -7px 25px #07020666;backdrop-filter:blur(18px)}.bottom-nav:before{content:'';position:absolute;left:0;right:0;top:3px;border-top:1px dashed #ad314944;pointer-events:none}.bottom-nav a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:70px;border-radius:18px;color:#e6bbc5;border:1px solid transparent;transition:background .2s,transform .2s}.bottom-nav svg{height:24px;width:24px;flex:none}.nav-en{font:11px Georgia,serif;letter-spacing:.08em}.nav-ja{font-size:9px;line-height:1.2;white-space:nowrap}.bottom-nav a:hover{background:#59152e;color:#fff1ef;transform:translateY(-2px)}.bottom-nav a[aria-current="page"]{background:linear-gradient(145deg,#a71c37,#540c25);border-color:#e65d75;color:#fff0ed;box-shadow:0 3px 0 #3a0717,inset 0 1px 0 #ff9da744}.bottom-nav a[aria-current="page"]:after{content:'';position:absolute;right:5px;top:3px;width:16px;height:16px;background:url('../img/rose-mark.svg') center/contain no-repeat}.bottom-nav a:focus-visible{outline:#ff98a7 solid 2px;outline-offset:2px}footer{padding-bottom:35px}@media(max-width:700px){body{padding-bottom:calc(89px + env(safe-area-inset-bottom))}.bottom-nav{padding:8px 5px calc(8px + env(safe-area-inset-bottom));gap:3px}.bottom-nav a{min-height:69px;gap:5px;border-radius:14px}.bottom-nav svg{width:23px;height:23px}.nav-en{font-size:9px;letter-spacing:.04em}.nav-ja{font-size:9px}.bottom-nav a[aria-current="page"]:after{width:13px;height:13px;right:2px;top:3px}.bottom-nav a:hover{transform:none}footer{padding-bottom:30px}}@media(prefers-reduced-motion:reduce){.bottom-nav a{transition:none}}#mobile-menu,.menu-toggle{display:none!important}.topbar{justify-content:center;flex-direction:column;gap:18px;text-align:center}.topbar>.brand,.topbar>nav{justify-content:center}@media(max-width:700px){.topbar{gap:0}.topbar>.brand{margin-inline:auto}}.topbar>.brand{position:relative;display:block;width:max-content;margin-inline:auto;min-height:65px;align-content:center}.topbar>.brand>span{display:block;text-align:center}.topbar>.brand>img{position:absolute;right:calc(100% + 15px);top:50%;transform:translateY(-50%);margin:0}@media(max-width:700px){.topbar>.brand{min-height:48px}.topbar>.brand>img{right:calc(100% + 12px)}}footer .socials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:min(100%,590px)}footer .socials>a{position:relative;isolation:isolate;display:flex;align-items:center;gap:13px;min-width:0;padding:18px 15px;background:linear-gradient(145deg,#28151f,#100d11);border:1px solid #732339;border-radius:9px;box-shadow:none;color:#f8e5e8;text-decoration:none;transition:border-color .2s,background .2s,transform .2s;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:#c8284544}footer .socials>a:before{content:'';position:absolute;left:14px;right:14px;bottom:0;height:2px;background:linear-gradient(90deg,#db2446,transparent);pointer-events:none}footer .socials>a:hover{background:linear-gradient(145deg,#421426,#1e0c17);border-color:#df4963;transform:translateY(-2px)}footer .socials svg{width:23px;height:23px;flex:none;color:#ed5972;pointer-events:none}.social-label{font:13px/1.3 sans-serif;font-weight:600;min-width:0;pointer-events:none}.social-label small{display:block;font:8px/1.5 sans-serif;font-weight:400;color:#b98c99;margin-top:6px;white-space:nowrap}.social-arrow{margin-left:auto;color:#a57585;font-size:14px;pointer-events:none}@media(max-width:900px){footer .footer-top{flex-direction:column;align-items:flex-start;gap:28px}footer .socials{width:100%;margin-top:0}}@media(max-width:700px){footer .socials{gap:8px}footer .socials>a{padding:16px 8px;min-height:90px;flex-direction:column;justify-content:center;gap:8px;border-radius:8px}footer .socials svg{width:23px;height:23px}.social-label{text-align:center;font-size:11px}.social-label small{font-size:7px;letter-spacing:-.15px;margin-top:4px}.social-arrow{position:absolute;right:7px;top:7px;font-size:11px}footer .socials>a:before{left:8px;right:8px}}caption,h1,h2,h3{font-family:'Yu Mincho','Hiragino Mincho ProN','Hiragino Mincho Pro','Noto Serif JP',serif;font-weight:500;letter-spacing:.08em;color:#fff0ed;text-shadow:1px 2px 0 #65102d}.page-banner h1,.section-head h2,.title-h2{position:relative;width:fit-content;max-width:100%;padding-bottom:29px;line-height:1.6}.page-banner h1::after,.section-head h2::after,.title-h2::after{content:'';position:absolute;left:-10px;right:-10px;bottom:-11px;height:58px;background:url('../img/thorn-title.svg') center bottom/100% 100% no-repeat;pointer-events:none}.page-banner h1,.title-h2{margin-inline:auto}.section-head{margin-bottom:48px}.page-content caption{padding:8px 0 13px 34px;background:url('../img/rose-mark.svg') left 8px/25px 25px no-repeat;line-height:1.6}.page-banner{padding-bottom:56px}@media(max-width:700px){.page-banner h1,.section-head h2,.title-h2{padding-bottom:25px;letter-spacing:.06em}.page-banner h1::after,.section-head h2::after,.title-h2::after{height:49px;left:-6px;right:-6px;bottom:-10px}.section-head{margin-bottom:38px}.page-banner{padding-bottom:40px}.page-content caption{font-size:18px}}caption,h1,h2,h3{text-align:center}.page-banner h1,.section-head h2,.title-h2{margin-left:auto;margin-right:auto}.section-head{display:block;text-align:center}.section-head>.muted,.section-head>.text-link{margin-top:20px}.page-content caption{padding:12px 10px 15px;background:none;text-align:center}@media(max-width:700px){.section-head{display:block;text-align:center}}.section .eyebrow{font-family:Georgia,serif;font-size:12px;font-weight:400;line-height:1.6;letter-spacing:.2em;margin-bottom:22px;text-align:center}@media(max-width:700px){.section .eyebrow{font-size:12px;line-height:1.6;letter-spacing:.2em;margin-bottom:22px}}.title-art .thorn-lettering{width:100%;height:auto;display:block;overflow:visible}.title-art{width:fit-content;max-width:100%;margin-inline:auto}.page-banner h1.title-art:after,.section-head h2.title-art:after,.title-h2.title-art:after{display:none}.section-head h2.title-art{width:min(100%,530px);padding:0}.page-banner h1.title-art{width:min(100%,520px);padding:0}.title-h2.title-art{width:170px;padding:0}.rose-atmosphere{position:fixed;inset:0;z-index:2;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 98% 25%,#c6243c0c,transparent 42%),radial-gradient(ellipse at 5% 80%,#e0273609,transparent 40%)}.rose-atmosphere i{position:absolute;top:-35px;left:9%;width:10px;height:17px;border-radius:2px 90% 8px;background:linear-gradient(135deg,#e43d55,#670b24);opacity:0;animation:22s linear infinite petal-fall;filter:drop-shadow(0 0 4px #a20e3240)}.rose-atmosphere i:nth-child(2){left:27%;animation-delay:-7s;animation-duration:28s;width:7px;height:12px}.rose-atmosphere i:nth-child(3){left:48%;animation-delay:-16s;animation-duration:26s}.rose-atmosphere i:nth-child(4){left:68%;animation-delay:-3s;animation-duration:31s;width:8px;height:13px}.rose-atmosphere i:nth-child(5){left:83%;animation-delay:-14s;animation-duration:24s}.rose-atmosphere i:nth-child(6){left:95%;animation-delay:-20s;animation-duration:30s;width:6px;height:10px}@keyframes petal-fall{0%{transform:translate3d(0,-30px,0) rotate(0);opacity:0}12%{opacity:.4}85%{opacity:.28}100%{transform:translate3d(-55px,110vh,0) rotate(390deg);opacity:0}}.page-banner,.ribbon,footer{position:relative;border-block-color:transparent}.page-banner:after,.ribbon:after,footer:before{content:'';position:absolute;top:0;left:0;right:0;height:35px;background:url('../img/thorn-lace.svg') center top/240px 40px repeat-x;pointer-events:none;opacity:.75}.page-banner:after,.ribbon:after{top:auto;bottom:-29px;z-index:1}.cast-list>ul{gap:35px 28px}.cast-list li{padding:17px 17px 21px;border:1px solid #9e3048;border-radius:110px 110px 18px 18px;background:linear-gradient(120deg,#481729,#130c13 45%,#3c1126);box-shadow:0 7px 0 #390c1d,0 13px 35px #0007;overflow:visible}.portrait-open{position:relative;display:block;width:100%;padding:6px;background:#0e090e;border:2px solid #b65064;border-radius:100px 100px 10px 10px;box-shadow:0 0 0 3px #270c19,0 0 0 4px #7d2339,inset 0 0 18px #000;overflow:hidden;cursor:pointer}.portrait-open:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 25px #17050d66;border-radius:inherit;pointer-events:none}.portrait-open img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:95px 95px 5px 5px;transition:transform .6s}.portrait-open:hover img{transform:scale(1.045)}.cast-list li:after,.cast-list li:before{content:none;display:none}.cast-list li:before{left:-9px;transform:rotate(-18deg)}.cast-list li:after{right:-9px;transform:rotate(18deg)}.cast-list li>.portrait-name{justify-content:center;text-align:center;margin:20px 0 13px;padding:11px 5px;font-family:'Yu Mincho','Hiragino Mincho ProN',serif;letter-spacing:.05em;border-block:1px solid #a5445c;background:linear-gradient(90deg,transparent,#72213a77,transparent)}.cast-list li>.portrait-name:before{display:none}.cast-list .sns-icons{margin-top:13px}.bottom-nav a,.btn,.portrait-open,.socials>a,.text-link{transition:transform .18s,box-shadow .18s,border-color .18s,background .18s}.bottom-nav a:active,.btn:active,.portrait-open:active,.socials>a:active,.text-link:active{transform:translateY(3px) scale(.98);border-color:#ff8799;box-shadow:0 0 19px #f12a4b55}.portrait-dialog{width:min(90vw,720px);padding:50px 25px 25px;border:1px solid #df5b74;border-radius:20px;background:linear-gradient(145deg,#391224,#100b12);box-shadow:0 0 70px #8f123766}.portrait-dialog::backdrop{background:#070309e8;backdrop-filter:blur(7px)}.portrait-dialog .portrait-close{position:absolute;right:17px;top:15px;border:1px solid #954057;background:#29101f;border-radius:20px;padding:8px 15px;font-size:11px}.portrait-dialog .profile-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:25px;align-items:center}.portrait-dialog .profile-grid>img{width:100%;max-height:70svh;object-fit:contain;border-radius:80px 80px 12px 12px;border:1px solid #a74b62}.portrait-dialog h2{text-align:center;font-size:26px;margin:20px 0}.portrait-dialog .profile-label{font:9px Georgia;letter-spacing:.2em;color:#ea8b9c;text-align:center}.portrait-dialog .sns-icons{display:flex;flex-wrap:wrap}.portrait-dialog .sns-icons a{width:auto;height:auto;padding:12px 16px;border-radius:8px;font-size:12px;background:#51122a;border:1px solid #bb405b}.portrait-dialog .sns-icons svg{display:none}.profile-note{text-align:center;font-size:11px;color:#c99da9;line-height:2;margin-top:18px}@media(max-width:700px){.page-banner h1.title-art,.section-head h2.title-art{width:min(100%,370px)}.cast-list>ul{gap:29px 16px}.cast-list li{padding:11px 10px 17px;border-radius:85px 85px 15px 15px}.portrait-open{padding:4px}.cast-list li:after,.cast-list li:before{width:25px;height:25px;top:43px}.cast-list li>.portrait-name{margin-top:16px;padding:9px 2px;font-size:12px}.portrait-dialog{padding:45px 18px 22px}.portrait-dialog .profile-grid{grid-template-columns:1fr;gap:5px}.portrait-dialog .profile-grid>img{max-height:48svh}.portrait-dialog h2{font-size:23px;margin:13px 0}.portrait-dialog .profile-label{margin-top:15px}.rose-atmosphere i{animation-duration:30s}}@media(prefers-reduced-motion:reduce){.rose-atmosphere{display:none}.bottom-nav a,.btn,.portrait-open img,.socials>a,.text-link{transition:none}.bottom-nav a:active,.btn:active,.portrait-open:active,.socials>a:active,.text-link:active{transform:none}}.rose-atmosphere{z-index:8;display:block;background:radial-gradient(ellipse at 97% 20%,#e51b3e30,transparent 48%),radial-gradient(ellipse at 2% 77%,#c9183a24,transparent 45%)}.rose-atmosphere:after,.rose-atmosphere:before{content:'';position:absolute;width:220px;height:280px;border-radius:50%;background:radial-gradient(ellipse,#ec224b22,transparent 70%);pointer-events:none;animation:9s ease-in-out infinite alternate rose-glow}.rose-atmosphere:before{left:-110px;top:18%}.rose-atmosphere:after{right:-110px;bottom:15%;animation-delay:-4s}.rose-atmosphere i{width:16px;height:25px;top:-32px;background:linear-gradient(135deg,#ff6379 0,#d72749 45%,#7d102b 100%);box-shadow:inset 1px 1px 2px #ff8d9655;filter:drop-shadow(0 2px 3px #4b081a80);animation:17s linear infinite visible-petal;animation-delay:-3s}.rose-atmosphere i:nth-child(2){width:12px;height:19px;animation-duration:21s;animation-delay:-12s}.rose-atmosphere i:nth-child(3){width:15px;height:23px;animation-duration:19s;animation-delay:-7s}.rose-atmosphere i:nth-child(4){width:13px;height:20px;animation-duration:23s;animation-delay:-17s}.rose-atmosphere i:nth-child(5){width:17px;height:25px;animation-duration:18s;animation-delay:-11s}.rose-atmosphere i:nth-child(6){width:11px;height:18px;animation-duration:22s;animation-delay:-5s}@keyframes visible-petal{0%{transform:translate3d(18px,-35px,0) rotate(-25deg);opacity:0}8%{opacity:.8}45%{transform:translate3d(-14px,47vh,0) rotate(160deg);opacity:.7}90%{opacity:.75}100%{transform:translate3d(35px,110vh,0) rotate(340deg);opacity:0}}@keyframes rose-glow{from{opacity:.55;transform:scale(.9)}to{opacity:1;transform:scale(1.2)}}@media(prefers-reduced-motion:reduce){.rose-atmosphere{display:block}.rose-atmosphere:after,.rose-atmosphere:before{animation:none}.rose-atmosphere i{animation:none;opacity:.65;top:20%;transform:rotate(35deg)}.rose-atmosphere i:nth-child(2){top:65%;transform:rotate(110deg)}.rose-atmosphere i:nth-child(3){top:38%;transform:rotate(60deg)}.rose-atmosphere i:nth-child(4){top:82%;transform:rotate(-35deg)}.rose-atmosphere i:nth-child(5){top:55%;transform:rotate(120deg)}.rose-atmosphere i:nth-child(6){top:13%;transform:rotate(20deg)}}.rose-atmosphere i{animation-duration:15s;animation-delay:-2s}.rose-atmosphere i:nth-child(2){animation-duration:18s;animation-delay:-9s}.rose-atmosphere i:nth-child(3){animation-duration:17s;animation-delay:-5s}.rose-atmosphere i:nth-child(4){animation-duration:20s;animation-delay:-13s}.rose-atmosphere i:nth-child(5){animation-duration:16s;animation-delay:-7s}.rose-atmosphere i:nth-child(6){animation-duration:19s;animation-delay:-15s}.rose-atmosphere i:nth-child(7){left:17%;width:12px;height:19px;animation-duration:17s;animation-delay:-11s}.rose-atmosphere i:nth-child(8){left:37%;width:14px;height:22px;animation-duration:21s;animation-delay:-3s}.rose-atmosphere i:nth-child(9){left:58%;width:11px;height:18px;animation-duration:16s;animation-delay:-13s}.rose-atmosphere i:nth-child(10){left:75%;width:13px;height:20px;animation-duration:18s;animation-delay:-5s}.rose-atmosphere i:nth-child(11){left:5%;width:10px;height:17px;animation-duration:20s;animation-delay:-16s}.rose-atmosphere i:nth-child(12){left:91%;width:14px;height:22px;animation-duration:17s;animation-delay:-8s}@media(prefers-reduced-motion:reduce){.rose-atmosphere i{animation:none}.rose-atmosphere i:nth-child(n+7){display:none}}.btn,.portrait-dialog .sns-icons a,.text-link,.topbar nav>a,footer .socials>a{font-family:'Yu Mincho','Hiragino Mincho ProN','Hiragino Mincho Pro','Noto Serif JP',serif!important;font-weight:500!important;letter-spacing:.1em;position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:58px;padding:16px 26px;background:linear-gradient(120deg,#21151c,#32131f);border:2px solid #ed536c;border-radius:60px;color:#fff0eb;box-shadow:0 5px 0 #760f2b,0 8px 18px #0004;text-shadow:1px 1px 0 #5e152a;text-decoration:none;isolation:isolate;transition:transform .18s,box-shadow .18s,background .18s}.btn:before,.portrait-dialog .sns-icons a:before,.text-link:before,.topbar nav>a:before,footer .socials>a:before{content:'';position:static;display:block;flex:none;width:27px;height:29px;background:url('../img/rose-mark.svg') center/contain no-repeat;pointer-events:none}.btn:hover,.portrait-dialog .sns-icons a:hover,.text-link:hover,.topbar nav>a:hover,footer .socials>a:hover{color:#fff5ef;background:linear-gradient(120deg,#3b1728,#4c1229)!important;border-color:#ff8396;box-shadow:0 6px 0 #760f2b,0 0 20px #d8244933;transform:translateY(-1px)}.btn:active,.portrait-dialog .sns-icons a:active,.text-link:active,.topbar nav>a:active,footer .socials>a:active{transform:translateY(4px);box-shadow:0 1px 0 #760f2b,0 0 17px #e42f4e44}.topbar nav>a{min-height:40px;padding:9px 15px;gap:10px;font-size:12px;background:#20101de8}.topbar nav>a:before{width:17px;height:19px}.topbar nav>a.nav-recruit{background:#32131f!important;border-color:#ed536c!important}footer .socials>a{display:flex;gap:12px;border-radius:50px;padding:16px;min-height:65px;min-width:0}footer .socials>a:before{width:24px;height:26px}footer .socials>a>svg{display:none}footer .social-label{font-family:inherit;font-size:13px;font-weight:500;letter-spacing:.05em}.social-label small{letter-spacing:0}.social-arrow{position:static;margin-left:auto;color:#f5cbd0}.portrait-dialog .sns-icons{gap:12px}.portrait-dialog .sns-icons a{padding:12px 18px;min-height:45px;gap:11px;font-size:12px}.portrait-dialog .sns-icons a:before{width:19px;height:21px}.bottom-nav .nav-en,.bottom-nav .nav-ja,.mobile-menu a{font-family:'Yu Mincho','Hiragino Mincho ProN',serif}.bottom-nav a{border-radius:30px}.bottom-nav a[aria-current="page"]{border-color:#ed536c;box-shadow:0 3px 0 #760f2b}.cast-list-action .btn{min-width:245px}.btn>span,.text-link>span{color:#f9cbd2}@media(max-width:700px){.btn,.text-link{min-height:56px;padding:15px 22px;gap:22px;font-size:13px}.btn:before,.text-link:before{width:25px;height:27px}.cast-list-action .btn{min-width:230px}footer .socials>a{display:flex;flex-direction:column;justify-content:center;gap:8px;border-radius:24px;padding:15px 8px;min-height:105px}footer .socials>a:before{width:25px;height:27px}.social-arrow{position:absolute;top:10px;right:10px;font-size:12px}footer .social-label{font-size:12px}.portrait-dialog .sns-icons a{border-radius:35px}}@media(prefers-reduced-motion:reduce){.btn,.portrait-dialog .sns-icons a,.text-link,.topbar nav>a,footer .socials>a{transition:none}}.thorn-divider{width:100%;height:42px;flex:none;position:relative;background:url('../img/ibara-divider.svg') center/320px 42px repeat-x;pointer-events:none;opacity:.9;margin:0;clear:both}.page-banner:after,.ribbon:after,footer:before{display:none!important}.page-banner,.ribbon,footer{border-top:0;border-bottom:0}.page-content>.thorn-divider{margin:40px 0 25px}.thorn-divider+footer{border-top:0}.thorn-divider+.section{padding-top:65px}@media(max-width:700px){.thorn-divider{height:34px;background-size:260px 34px}.thorn-divider+.section{padding-top:45px}.page-content>.thorn-divider{margin:30px 0 20px}}.section:not(.hero),.thorn-divider+.section{padding-top:72px;padding-bottom:72px}.section:not(.hero)>:first-child{margin-top:0}.section:not(.hero)>:last-child{margin-bottom:0}@media(max-width:700px){.section:not(.hero),.thorn-divider+.section{padding-top:45px;padding-bottom:45px}}.section:not(.hero),.thorn-divider+.section{padding-top:90px;padding-bottom:90px}.inner-page .page-content{padding-top:75px;padding-bottom:75px}@media(max-width:700px){.section:not(.hero),.thorn-divider+.section{padding-top:60px;padding-bottom:60px}.inner-page .page-content{padding-top:55px;padding-bottom:55px}}#access>div.reveal{width:100%;max-width:860px;margin-inline:auto}#access .access-map-action{display:flex;justify-content:center;margin-top:28px}footer .footer-top{display:flex;flex-direction:column;align-items:center;gap:0}footer .footer-top>.brand{position:relative;display:block;width:max-content;margin:0 auto 36px;min-height:65px;align-content:center}footer .footer-top>.brand>span{display:block;text-align:center}footer .footer-top>.brand>img{position:absolute;right:calc(100% + 15px);top:50%;transform:translateY(-50%);margin:0}footer .footer-top>.socials{width:100%}@media(max-width:700px){footer .footer-top>.brand{min-height:48px;margin-bottom:32px}footer .footer-top>.brand>img{right:calc(100% + 12px)}}:root{--ibara-type:"Yu Mincho","Hiragino Mincho ProN","Hiragino Mincho Pro","Noto Serif JP",serif}body,body *{font-family:var(--ibara-type)!important}.footer-sns-title{text-align:center;font-size:12px;letter-spacing:.18em;margin:0 0 36px}body .numbered-title{font-size:12px!important;font-weight:500!important;line-height:1.8!important;letter-spacing:.18em!important;text-align:center}body{background-color:#0e0b0e;background-image:radial-gradient(#8f25351a .65px,transparent .65px)}footer{background:#120b11}.btn,.portrait-dialog .sns-icons a,.text-link,.topbar nav>a,footer .socials>a{background:linear-gradient(120deg,#1b1119,#30101e);border-color:#d74460;box-shadow:0 4px 0 #650e27,0 10px 24px #0003}.btn:hover,.text-link:hover,footer .socials>a:hover{border-color:#ec647a;box-shadow:0 4px 0 #650e27,0 0 20px #ad213126}.cast-list li{background:linear-gradient(145deg,#29131f,#100c11 65%);border-color:#713044;box-shadow:0 5px 0 #2a0b17,0 12px 26px #0004;padding:14px 14px 22px}.portrait-open{border:1px solid #b64a60;padding:5px;box-shadow:0 0 0 3px #180b13,0 0 0 4px #652437}.portrait-open img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:50% 25%;filter:brightness(1.025) contrast(1.025)}.portrait-open:after{box-shadow:inset 0 -16px 22px #18081022}.cast-list li>.portrait-name{display:flex;align-items:center;justify-content:center;min-height:48px;margin:20px 0 14px;padding:10px 2px;line-height:1.7;border-block-color:#6f2a40;background:0 0}.cast-list .sns-icons{gap:10px;margin-top:14px}.cast-list .sns-icons a{background:#25101c;border-color:#713047;color:#e9c6ce}.rose-atmosphere{background:radial-gradient(ellipse at 98% 25%,#bd18351a,transparent 42%),radial-gradient(ellipse at 2% 80%,#a5133012,transparent 40%)}.rose-atmosphere:after,.rose-atmosphere:before{background:radial-gradient(ellipse,#d623401b,transparent 70%)}.rose-atmosphere i{--sway:18px;--petal-opacity:.58;animation-name:refined-petal;animation-duration:22s;background:linear-gradient(135deg,#df4860,#a31533 55%,#530d25);filter:none;box-shadow:inset 1px 1px 1px #ee738033}.rose-atmosphere i:nth-child(1){left:3%;width:12px;height:19px;animation-duration:20s}.rose-atmosphere i:nth-child(2){left:96%;width:9px;height:15px;animation-duration:26s}.rose-atmosphere i:nth-child(3){left:36%;width:10px;height:16px;animation-duration:23s;--sway:-26px;--petal-opacity:.45}.rose-atmosphere i:nth-child(4){left:91%;width:13px;height:20px;animation-duration:29s}.rose-atmosphere i:nth-child(5){left:97%;width:15px;height:23px;animation-duration:21s;--sway:-20px}.rose-atmosphere i:nth-child(6){left:2%;width:8px;height:13px;animation-duration:27s}.rose-atmosphere i:nth-child(7){left:24%;width:11px;height:17px;animation-duration:25s;--petal-opacity:.46}.rose-atmosphere i:nth-child(8){left:65%;width:12px;height:18px;animation-duration:28s;--petal-opacity:.46}.rose-atmosphere i:nth-child(9){left:51%;width:10px;height:16px;animation-duration:24s;--petal-opacity:.42}.rose-atmosphere i:nth-child(10){left:77%;width:11px;height:18px;animation-duration:22s;--petal-opacity:.46}.rose-atmosphere i:nth-child(11){left:5%;width:10px;height:16px;animation-duration:26s}.rose-atmosphere i:nth-child(12){left:94%;width:12px;height:19px;animation-duration:23s;--sway:-18px}@keyframes refined-petal{0%{transform:translate3d(0,-35px,0) rotate(-25deg);opacity:0}10%{opacity:var(--petal-opacity)}50%{transform:translate3d(var(--sway),50vh,0) rotate(130deg)}88%{opacity:var(--petal-opacity)}100%{transform:translate3d(0,110vh,0) rotate(310deg);opacity:0}}@media(max-width:700px){.cast-list li{padding:10px 9px 18px}.portrait-open{padding:4px}.cast-list li>.portrait-name{min-height:40px;margin:16px 0 12px;padding:8px 1px}}@media(prefers-reduced-motion:reduce){.rose-atmosphere i{display:none}.rose-atmosphere:after,.rose-atmosphere:before{animation:none}}.thorn-await::after{clip-path:inset(0 100% 0 0)}.thorn-await.thorn-arrived{animation:1.35s ease-out .1s both title-arrive}.thorn-await.thorn-arrived::after{animation:2s ease-out 1s both thorn-unfurl}@keyframes title-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes thorn-unfurl{to{clip-path:inset(0 0 0 0)}}.button-glint{position:absolute!important;inset:-2px;width:calc(100% + 2px)!important;height:calc(100% + 2px)!important;overflow:visible;pointer-events:none;display:block!important;border-radius:inherit;opacity:0}.button-glint rect{width:calc(100% - 2px);height:calc(100% - 2px);fill:none;stroke:#ffacb6;stroke-width:2;stroke-dasharray:12 88;stroke-linecap:round;filter:drop-shadow(0 0 3px #ff254d)}.glint-running>.button-glint{animation:.75s ease-out glint-visibility}.glint-running>.button-glint rect{animation:.75s linear glint-orbit}@keyframes glint-orbit{from{stroke-dashoffset:0}to{stroke-dashoffset:-100}}@keyframes glint-visibility{0%,100%{opacity:0}15%,80%{opacity:1}}.bottom-nav a.is-current{background:linear-gradient(145deg,#74132c,#290d1c);border-color:#d04b65;color:#fff0ed;box-shadow:inset 0 0 18px #b8203a33,0 0 16px #b8203a30}.bottom-nav a.is-current:after{content:'';position:absolute;top:auto;bottom:3px;left:15%;right:15%;width:70%;height:9px;background:url('../img/ibara-divider.svg') center/100% auto no-repeat;opacity:.9}.bottom-nav a.is-current:before{content:'';position:absolute;left:28%;right:28%;top:-1px;height:2px;background:#f0657f;box-shadow:0 0 8px #ef365e}.bottom-nav a.is-current .nav-ja{margin-bottom:5px}@media(max-width:700px){.bottom-nav a.is-current:after{height:7px;bottom:2px}}@media(prefers-reduced-motion:reduce){.thorn-await::after{clip-path:none}.glint-running>.button-glint,.glint-running>.button-glint rect,.thorn-await.thorn-arrived,.thorn-await.thorn-arrived::after{animation:none}.button-glint{display:none!important}}body{background-color:#0e0b0f;background-image:repeating-linear-gradient(98deg,#f6cfdf03 0,#f6cfdf03 1px,transparent 1px,transparent 4px),radial-gradient(ellipse at 48% 30%,#09090d90 0,transparent 58%),linear-gradient(108deg,#100c1100 4%,#4b192422 15%,#09090c55 26%,#33131e25 42%,#0c0b1080 56%,#3d14232b 76%,#08090b55 91%);background-size:4px 6px,100% 100%,100% 1100px}footer{background-color:#100b11;background-image:repeating-linear-gradient(98deg,#f6cfdf03 0,#f6cfdf03 1px,transparent 1px,transparent 4px),radial-gradient(ellipse at 50% 5%,#4b13252b,transparent 65%),linear-gradient(108deg,#0a090d55,#2c101c25 38%,#09090d55 75%);background-size:4px 6px,100% 100%,100% 100%}.topbar>.brand>img,footer .footer-top>.brand>img{filter:drop-shadow(0 0 7px #ba173753) drop-shadow(0 0 18px #7b0d293b)}.brand .brand-wordmark{display:inline-block;font-size:inherit;letter-spacing:inherit;font-weight:500;font-style:normal;color:#f1edef;text-shadow:0 1px 1px #050509,0 0 15px #d7ced320}@supports(background-clip:text){.brand .brand-wordmark{background:linear-gradient(180deg,#fffdfc 9%,#e4dce2 40%,#bcb2bc 52%,#f5edef 65%,#d5c6d1 100%);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:none}}.portrait-open{transition:border-color .3s,box-shadow .35s,transform .18s}.portrait-open:before{content:'';position:absolute;inset:0;z-index:2;border-radius:inherit;padding:3px;background:radial-gradient(ellipse at 50% 0,#ffe0e6 0,#ec5473 16%,#d3244955 36%,transparent 68%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:0;pointer-events:none;transition:opacity .35s}.portrait-open.is-spotlit,.portrait-open:focus-visible{border-color:#dd6b80;box-shadow:0 -6px 24px #c6254b40,0 0 0 3px #180b13,0 0 0 4px #a24057}.portrait-open.is-spotlit:before,.portrait-open:focus-visible:before{opacity:1}@media(hover:hover){.portrait-open:hover{border-color:#dd6b80;box-shadow:0 -6px 24px #c6254b40,0 0 0 3px #180b13,0 0 0 4px #a24057}.portrait-open:hover:before{opacity:1}}.portrait-dialog[open] .profile-grid>img{border-color:#cb6178;box-shadow:0 -7px 26px #c6254b2b;animation:.7s ease-out portrait-welcome}@keyframes portrait-welcome{from{box-shadow:0 -8px 34px #e3396966}to{box-shadow:0 -7px 26px #c6254b2b}}.story-epilogue{position:relative;text-align:center;margin:0 auto 48px;padding:28px 15px 36px;max-width:640px}.story-epilogue p{font-size:clamp(14px,1.5vw,19px);font-weight:500;letter-spacing:.16em;line-height:2.2;color:#e7cbd4;text-shadow:0 2px 0 #491226;margin:0;text-wrap:balance}.story-epilogue:after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:min(210px,65%);height:24px;background:url('../img/thorn-title.svg') center/100% 100% no-repeat;opacity:.7}@media(max-width:700px){.story-epilogue{padding:22px 0 33px;margin-bottom:36px}.story-epilogue p{font-size:14px;letter-spacing:.1em}.topbar>.brand>img,footer .footer-top>.brand>img{filter:drop-shadow(0 0 6px #ba173753) drop-shadow(0 0 13px #7b0d293b)}}@media(prefers-reduced-motion:reduce){.portrait-dialog[open] .profile-grid>img{animation:none}.portrait-open,.portrait-open:before{transition:none}}@media(forced-colors:active){.brand .brand-wordmark{background:none;color:CanvasText}}.js .reveal{transition-duration:1.2s}.portrait-dialog{padding:18px 25px 25px;overflow-y:auto}.portrait-dialog .portrait-close{position:static;display:block;width:fit-content;max-width:100%;min-height:44px;margin:0 0 22px auto;padding:10px 18px;line-height:1.4;box-shadow:none}.portrait-dialog .portrait-close:focus-visible{outline:#ed8b9e solid 2px;outline-offset:3px}@media(max-width:700px){.portrait-dialog{padding:16px 18px 22px}.portrait-dialog .portrait-close{margin-bottom:20px}}@media(prefers-reduced-motion:reduce){.js .reveal{transition:none}}.portrait-dialog .profile-grid>img,.portrait-open img{filter:contrast(1.045) saturate(1.035) brightness(.995)}.portrait-open:after{box-shadow:inset 0 -22px 30px #0e060e30,inset 0 0 16px #10070d12}body .numbered-title{display:flex;align-items:center;justify-content:center;gap:16px}body .numbered-title:after,body .numbered-title:before{content:'';display:block;position:static;flex:0 1 62px;width:62px;height:1px;background:linear-gradient(90deg,transparent,#a9415b);pointer-events:none}body .numbered-title:after{transform:rotate(180deg)}.plan-ornaments{position:absolute;inset:12px;pointer-events:none;z-index:0}.plan-ornaments:after,.plan-ornaments:before{content:'';position:absolute;width:27px;height:27px;background:url('../img/thorn-corner.svg') center/contain no-repeat;opacity:.75}.plan-ornaments:before{left:0;top:0}.plan-ornaments:after{right:0;bottom:0;transform:rotate(180deg)}@media(max-width:700px){body .numbered-title{gap:12px}body .numbered-title:after,body .numbered-title:before{flex-basis:42px;width:42px}}html::after{content:'';position:fixed;inset:0;z-index:10000;background:#09070b;opacity:0;pointer-events:none;transition:opacity .18s ease-in}html.page-arriving::after,html.page-leaving::after{opacity:1}html.page-revealing::after{opacity:0;transition:opacity .48s ease-out}@media(prefers-reduced-motion:reduce){html::after{display:none;transition:none}}@keyframes hero-image-emerge{from{opacity:0}to{opacity:1}}@keyframes hero-copy-emerge{from{opacity:0}to{opacity:1}}@keyframes hero-thorn-emerge{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}.portrait-dialog .profile-grid>img{width:auto;max-width:100%;justify-self:center}.profile-details dl{margin:25px 0 30px}.profile-details dl>div{display:block;text-align:center;padding:18px 0}.profile-details dt{letter-spacing:.18em;color:#df879d;font-weight:bold;margin-bottom:12px}.profile-details dd{line-height:2;overflow-wrap:anywhere}.portrait-dialog .sns-icons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:100%;margin-top:24px}.portrait-dialog .sns-icons a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:100%;min-width:0;height:auto;min-height:118px;padding:20px 5px 16px;border-radius:24px;text-align:center;letter-spacing:.02em}.portrait-dialog .sns-icons a:before{width:27px;height:29px}.portrait-dialog .cast-social-label{display:block;width:100%;font-size:13px;line-height:1.5}.portrait-dialog .cast-social-label small{display:block;margin-top:5px;font-size:9px;color:#c99da9;letter-spacing:0;overflow-wrap:anywhere}.portrait-dialog .cast-social-arrow{position:absolute;top:9px;right:10px;font-size:13px;color:#e6bac3}@media(max-width:380px){.portrait-dialog .sns-icons{gap:7px}.portrait-dialog .sns-icons a{border-radius:19px;padding-inline:3px}.portrait-dialog .cast-social-label{font-size:11px}.portrait-dialog .cast-social-label small{font-size:8px}}html.page-inactive .rose-atmosphere i,html.page-inactive .rose-atmosphere::after,html.page-inactive .rose-atmosphere::before{animation-play-state:paused}