@font-face{font-family:Anton;src:url('/assets/57520c8afe926d7643c80358edbb7b14.woff2')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#f8f2eb;color:#231f20;font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #e4ab59;outline-offset:5px}header{height:86px;padding:12px 4vw;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#231f20;color:white;position:sticky;top:0;z-index:20;border-bottom:1px solid #ffffff2b}.brand{font-weight:900;line-height:1.2;font-size:22px;display:flex;gap:12px;align-items:center}.brand img{width:54px;height:54px;border-radius:50%}.brand small{display:block;font:10px Anton;letter-spacing:3px;margin-top:5px}nav{display:flex;align-items:center;gap:25px;font-size:12px;font-weight:700}.btn{display:inline-flex;justify-content:center;align-items:center;gap:20px;border:1px solid #d72638;padding:15px 24px;background:linear-gradient(135deg,#e53d47,#ad1526);color:white;font-weight:800;box-shadow:0 5px 0 #79141d,0 9px 25px #0002;border-radius:3px;transition:transform .2s,box-shadow .2s,filter .2s}.btn:hover{transform:translateY(-4px);filter:brightness(1.1);box-shadow:0 8px 0 #79141d,0 12px 25px #0003}.btn:active,.hit{transform:translateY(4px) scale(.97)!important;box-shadow:0 1px 0 #79141d!important}.btn.light{background:linear-gradient(135deg,#fff,#f0e8df);color:#231f20;border-color:#eee;box-shadow:0 5px 0 #b5a79d}.sound{background:none;color:white;border:1px solid #ffffff50;padding:8px;font-size:10px;min-width:70px}.hero{position:relative;min-height:760px;height:calc(100svh - 86px);max-height:1100px;color:#fff;overflow:hidden;background:#231f20}.hero-images{position:absolute;inset:0;display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:1fr 1fr;gap:5px;transform:scale(1.04);animation:zoom 2s ease-out both}.hero-images figure{margin:0;overflow:hidden;position:relative}.hero-images img{width:100%;height:100%;object-fit:cover}.hero-images figure:nth-child(1) img{object-position:center 65%}.hero-images figcaption{position:absolute;right:16px;bottom:12px;font:12px Anton;letter-spacing:2px}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#130d0be8,transparent 100%),linear-gradient(0deg,#17120fe8,transparent 50%);pointer-events:none}.hero-copy{position:relative;z-index:2;padding:65px 6vw 40px;max-width:1200px}.eyebrow{font:13px Anton;letter-spacing:3px;color:#d72638;display:block;margin-bottom:20px}.hero .eyebrow{color:#fff}h1{font-size:clamp(55px,7.2vw,112px);line-height:1.13;letter-spacing:-.055em;font-weight:950;margin:28px 0;text-shadow:0 3px 30px #0005}h1 em{font-style:normal;color:#fff;background:#d72638;display:inline-block;padding:0 .15em .08em;transform:rotate(-3deg)}.hero-copy>p{max-width:580px;font-weight:700;font-size:16px;margin:24px 0}.hero-copy .actions{margin-top:32px}.actions{display:flex;gap:18px;flex-wrap:wrap}.hero-stamp{position:absolute;right:5vw;bottom:45px;z-index:3;background:#d72638;width:130px;height:130px;display:grid;align-content:center;text-align:center;border-radius:50%;transform:rotate(10deg);border:1px solid #fff8;box-shadow:0 0 0 8px #d72638}.hero-stamp strong{font-size:27px;line-height:1.3}.hero-stamp small{font-size:11px}.ticker{overflow:hidden;background:#d72638;color:white;padding:14px 0;font:clamp(23px,3vw,44px) Anton;letter-spacing:3px;white-space:nowrap}.ticker div{width:max-content;animation:marquee 35s linear infinite}.wrap{max-width:1240px;margin:auto;padding:95px 5vw}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}h2{font-size:clamp(30px,4.2vw,58px);line-height:1.35;letter-spacing:-.04em;margin:0;font-weight:900}h3{font-size:24px;line-height:1.5;margin:16px 0}p{max-width:700px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.photo{position:relative}.photo img{display:block;width:100%;height:500px;object-fit:cover}.photo:after{content:'';position:absolute;inset:15px -15px -15px 15px;border:2px solid #d72638;z-index:-1}.photo-tag{position:absolute;bottom:30px;left:-20px;background:#d72638;color:white;padding:15px 24px;font-weight:900;transform:rotate(-4deg)}.big-number{font:100px Anton;line-height:1;color:#d72638}.dark{background:#231f20;color:#f8f2eb}.dark .eyebrow{color:#f18b92}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.menu-card{position:relative}.menu-card img{width:100%;height:320px;object-fit:cover}.menu-card .num{font:80px Anton;color:white;position:absolute;top:220px;left:12px;text-shadow:0 2px 25px #000a}.menu-card p{color:#d2c7c0;font-size:14px}.menu-card h3{font-size:24px}.menu-link{border-top:1px solid #ffffff35;padding:35px 0 0;margin-top:45px;display:flex;justify-content:space-between;gap:25px;align-items:center}.check-section{background:radial-gradient(ellipse at top right,#a6192a55,transparent 65%),#231f20;color:white;border-top:1px solid #ffffff20}.check-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.checklist{display:grid;gap:12px}.check{display:flex;text-align:left;align-items:center;gap:20px;border:1px solid #ffffff50;background:linear-gradient(120deg,#ffffff0d,#ffffff03);color:#fff;padding:19px 23px;font-weight:700;transition:.25s;border-radius:3px;position:relative}.check:hover{border-color:#f18b92;transform:translateX(5px)}.check b{display:grid;place-items:center;border:1px solid #ffffff70;width:30px;height:30px;flex-shrink:0;color:#fff}.check[aria-pressed=true]{background:linear-gradient(120deg,#d72638,#8d1520);border-color:#ef8b91;transform:translateX(5px)}.check[aria-pressed=true] b{background:white;color:#d72638}.meter{height:8px;background:#ffffff25;margin:24px 0 15px;overflow:hidden}.meter i{height:100%;display:block;width:0;background:linear-gradient(90deg,#d72638,#ffce86);transition:width .5s}.result{min-height:75px;font-size:16px;font-weight:700}.count{font:52px Anton;color:#ffb6bc}.check-note{font-size:12px;color:#c2b7b3}.story-band{position:relative;min-height:450px;display:flex;align-items:center;color:white;background:#231f20;overflow:hidden}.story-band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45}.story-band .wrap{position:relative;width:100%;padding-top:70px;padding-bottom:70px}.story-band h2{max-width:900px;font-size:clamp(36px,5vw,70px)}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.review{border-top:4px solid #d72638;padding-top:20px}.review span{font:52px Anton;color:#d72638}.review blockquote{margin:10px 0;font-size:18px;font-weight:700;line-height:2}.note{font-size:12px;color:#746b65}.faq{max-width:900px;margin:auto}.faq details{border-bottom:1px solid #b8aaa0;padding:24px 0}.faq summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px;font-weight:800;font-size:18px;list-style:none}.faq summary:after{content:'＋';font-size:26px;color:#d72638}.faq details[open] summary:after{content:'−'}.faq details p{font-size:15px;margin-top:20px}.access{display:grid;grid-template-columns:1fr 1fr;gap:60px}.access img{width:100%;height:410px;object-fit:cover}.info{margin:30px 0}.info div{display:grid;grid-template-columns:90px 1fr;border-top:1px solid #b8aaa0;padding:16px 0;font-size:14px}.info dt{font-weight:800}.info dd{margin:0}.closing{text-align:center;background:radial-gradient(ellipse at 50% 120%,#ef5b4e55,transparent 70%),#a91829;color:white}.closing .eyebrow{color:#fff}.closing .actions{justify-content:center;margin-top:30px}.phone{font:clamp(32px,5vw,65px) Anton;letter-spacing:1px;display:inline-block;margin:15px 0}.closing p{margin:25px auto}.footer{background:#181515;color:#d4c5bf;padding:40px 5vw 100px;display:flex;gap:30px;justify-content:space-between;font-size:12px}.footer a{text-decoration:underline}.mobile-bar{display:none}.subhero{position:relative;min-height:380px;padding:65px 6vw;color:white;background:#231f20;overflow:hidden}.subhero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.3}.subhero>div{position:relative}.subhero h1{font-size:clamp(40px,5vw,70px)}.price-sheet{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.price-sheet img{width:100%;max-width:470px;display:block;margin:auto;box-shadow:0 10px 40px #231f2020}.price-row{padding:20px 0;border-bottom:1px solid #ac9f93;display:flex;justify-content:space-between;gap:20px;font-weight:800}.price-row strong{font:35px Anton}.price-row small{font:16px sans-serif}.reveal{animation:rise .85s both}.js .reveal{opacity:0;animation:none;transform:translateY(25px)}.js .reveal.in{opacity:1;transform:none;transition:opacity .8s,transform .8s}.spark{position:fixed;pointer-events:none;z-index:99;width:7px;height:7px;background:#ffca7e;border-radius:1px;animation:burst .7s ease-out forwards}.confetti{animation:confetti 1.6s ease-out forwards}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#f8f2eb;color:#231f20;border:2px solid #d72638;padding:18px 26px;z-index:80;font-weight:800;width:max-content;max-width:90vw;box-shadow:0 10px 50px #0004}.toast[hidden]{display:none}@keyframes burst{to{transform:translate(var(--x),var(--y)) rotate(180deg);opacity:0}}@keyframes confetti{to{transform:translate(var(--x),var(--y)) rotate(600deg);opacity:0}}@keyframes zoom{from{transform:scale(1.15);filter:brightness(.3)}to{transform:scale(1.04);filter:brightness(1)}}@keyframes rise{from{opacity:0;transform:translateY(50px)}to{opacity:1;transform:none}}@keyframes marquee{to{transform:translateX(-50%)}}@media(max-width:800px){header{height:72px;padding:10px 4vw}.brand{font-size:17px}.brand img{width:42px;height:42px}.brand small{font-size:8px}nav{gap:12px}nav>a:not(.btn){display:none}nav .btn{padding:9px 12px;font-size:11px}.sound{font-size:9px;min-width:55px}.hero{min-height:710px;max-height:880px;height:calc(100svh - 72px)}.hero-images{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.hero-copy{padding:47px 6vw 25px}.hero-copy h1{font-size:clamp(51px,10.4vw,80px);margin-top:32px}.hero-copy>p{font-size:14px;max-width:340px}.hero:after{background:linear-gradient(90deg,#130d0bd9,#130d0b35),linear-gradient(0deg,#17120fe0,transparent)}.hero-stamp{width:85px;height:85px;bottom:28px;right:25px}.hero-stamp strong{font-size:20px}.hero-stamp small{font-size:8px}.hero .actions{display:grid;max-width:240px;gap:15px}.hero .btn{font-size:13px;padding:12px 15px}.hero-images figcaption{font-size:9px;bottom:8px}.wrap{padding:65px 6vw}.intro,.check-layout,.access,.price-sheet{grid-template-columns:1fr;gap:35px}.photo img{height:360px}.photo-tag{left:-8px}.section-head{display:block}.section-head .btn{margin-top:22px}.menu-grid{grid-template-columns:1fr;gap:38px}.menu-card{display:grid;grid-template-columns:42% 1fr;gap:20px;align-items:center}.menu-card img{height:210px}.menu-card .num{font-size:52px;top:145px;left:8px}.menu-card h3{font-size:20px}.menu-card p{font-size:13px}.menu-link{display:block}.menu-link .btn{margin-top:20px}.reviews{grid-template-columns:1fr;gap:22px}.review blockquote{font-size:16px}.review span{font-size:37px}.check{padding:16px;font-size:14px;gap:15px}.result{font-size:14px}.story-band{min-height:360px}.access img{height:300px}.footer{display:block;padding-bottom:110px}.footer>div{margin-bottom:20px}.mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;padding:11px 15px calc(11px + env(safe-area-inset-bottom));gap:10px;background:#231f20f5;z-index:30;border-top:1px solid #ffffff40}.mobile-bar .btn{flex:1;padding:11px 8px;font-size:12px}.toast{bottom:90px;font-size:13px}.subhero{min-height:320px;padding:45px 6vw}.price-sheet img{max-width:380px}.faq summary{font-size:16px}.hero .eyebrow{font-size:10px;letter-spacing:2px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.spark{display:none}}@media(max-width:480px){.subhero h1{font-size:33px;line-height:1.4}.brand{font-size:15px}.brand small{font-size:7px;letter-spacing:1.4px}.brand img{width:38px;height:38px}.brand{gap:8px}nav{gap:8px}nav .btn{font-size:10px;padding:9px}.sound{min-width:48px}}

/* Second pass: tactile controls and original-image exploration. */
.enter-control.entered{animation:control-arrive .65s cubic-bezier(.2,.8,.2,1) var(--entry-delay,0ms) backwards}
@keyframes control-arrive{from{opacity:0;translate:0 18px;filter:brightness(1.35)}to{opacity:1;translate:0 0;filter:brightness(1)}}
.hero-copy h1{animation:title-arrive 1.1s cubic-bezier(.2,.75,.15,1) both}.hero-copy>p{animation:rise 1s .2s backwards}
@keyframes title-arrive{from{opacity:0;translate:-45px 15px;filter:blur(7px)}to{opacity:1;translate:0 0;filter:blur(0)}}
.photo-action{appearance:none;border:0;padding:0;background:none;display:block;width:100%;height:100%;overflow:hidden;position:relative;color:inherit;line-height:0;cursor:zoom-in;border-radius:0}
.photo-action:after{content:'＋';position:absolute;right:14px;bottom:14px;width:34px;height:34px;display:grid;place-items:center;border:1px solid #ffffffa0;border-radius:50%;background:#231f2099;color:white;font:22px sans-serif;transition:scale .25s,background .25s}
.photo-action:hover:after{scale:1.15;background:#d72638}.photo-action:hover img{scale:1.045}.photo-action img{transition:scale .7s cubic-bezier(.2,.7,.2,1)}
.hero-images .photo-action{position:absolute;inset:0}.hero-images figcaption{pointer-events:none}.hero:after{pointer-events:none}.hero-copy{pointer-events:none}.hero-copy a{pointer-events:auto}.hero-stamp{pointer-events:none}.hero-images .photo-action:after{bottom:40px;z-index:4}.hero-images .photo-action:focus-visible{outline-offset:-5px}
.menu-card .photo-action{height:320px}.menu-card .num{pointer-events:none}.photo>.photo-action{height:500px}.photo-tag{pointer-events:none}.story-band>.photo-action{position:absolute;inset:0}.story-band>.photo-action img{position:static;opacity:.45}.story-band .wrap{pointer-events:none}.access .photo-action{height:410px}
.photo-entry.photo-entered{animation:photo-arrive .9s cubic-bezier(.2,.7,.2,1) both}@keyframes photo-arrive{from{opacity:.2;filter:contrast(1.2);translate:0 14px}to{opacity:1;filter:contrast(1);translate:0 0}}@keyframes photo-pulse{50%{scale:.97;filter:brightness(1.12)}}.photo-pulse{animation:photo-pulse .4s!important}
.viewing-photo{overflow:hidden}.image-viewer{border:1px solid #ffffff55;border-radius:5px;background:#181515;color:#f8f2eb;padding:70px 25px 25px;width:min(960px,94vw);max-height:92svh;box-shadow:0 30px 100px #0008;overflow:auto}.image-viewer[open]{animation:viewer-arrive .35s both}.image-viewer::backdrop{background:#090606e8;backdrop-filter:blur(8px)}.image-viewer figure{margin:0}.image-viewer img{display:block;width:100%;height:auto;max-height:67svh;object-fit:contain}.image-viewer figcaption{font-size:clamp(16px,2.5vw,25px);font-weight:800;margin:18px 0 0}.viewer-close{position:absolute;top:14px;right:18px;padding:8px 18px;font-size:13px}.check-next{margin-bottom:22px}.check-next[hidden]{display:none}@keyframes viewer-arrive{from{opacity:0;scale:.94;translate:0 20px}to{opacity:1;scale:1;translate:0 0}}
@media(max-width:800px){.menu-card .photo-action{height:210px}.photo>.photo-action{height:360px}.access .photo-action{height:300px}.hero-copy{pointer-events:none}.hero-images .photo-action:after{width:26px;height:26px;font-size:17px;right:8px}.image-viewer{padding:65px 15px 20px}.image-viewer img{max-height:65svh}}
@media(prefers-reduced-motion:reduce){.photo-action:hover img{scale:1}.hero-copy h1,.photo-entry.photo-entered,.enter-control.entered,.image-viewer[open]{animation:none!important}}

.mobile-menu-toggle{display:none}.mobile-navigation[hidden]{display:none}.mobile-navigation{position:fixed;top:72px;left:0;right:0;z-index:40;background:#231f20;color:#fff;border-bottom:3px solid #d72638;padding:12px 6vw 25px;box-shadow:0 20px 50px #0005}.mobile-navigation a{display:block;padding:15px;border-bottom:1px solid #ffffff25;font-weight:700}.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:60;pointer-events:none}.reading-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#d72638,#ffc27d)}.viewer-navigation{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px}.viewer-navigation button{background:linear-gradient(135deg,#413637,#231f20);border:1px solid #ffffff60;color:white;padding:12px 18px;font-weight:700;border-radius:3px;transition:background .2s,transform .2s}.viewer-navigation button:hover{background:#d72638}.viewer-position{font:20px Anton;letter-spacing:2px}.plan-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.plan-choice{color:white;background:linear-gradient(125deg,#ffffff0d,#ffffff03);border:1px solid #ffffff40;padding:25px 23px;text-align:left;transition:transform .25s,border-color .25s,background .25s}.plan-choice span{display:block;font:12px Anton;letter-spacing:2px;color:#efb0ae}.plan-choice strong{display:block;font-size:21px;margin:15px 0 8px}.plan-choice small{font-size:12px;color:#d7c8c4}.plan-choice:hover{transform:translateY(-4px);border-color:#e89092}.plan-choice[aria-pressed=true]{background:linear-gradient(130deg,#d72638,#8c1522);border-color:#efb0ae;box-shadow:0 5px 0 #63151e}.plan-choice[aria-pressed=true] span{color:#fff}.plan-detail{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;padding:45px 0;border-bottom:1px solid #ffffff40}.plan-detail h3{font-size:30px}.plan-detail>div:last-child{text-align:right}.plan-price{font:70px Anton;line-height:1.2}.plan-price span{font:20px sans-serif;margin-left:8px}.plan-note{font-size:12px;color:#d0c1ba;max-width:400px;margin-left:auto}.before-call{padding-top:28px}.before-call>span{font-weight:800}.before-call ol{list-style:none;padding:0;display:flex;gap:40px}.before-call b{font:25px Anton;color:#ee989e;margin-right:12px}.before-call p{font-size:12px;color:#cdbfba}.image-viewer img{max-height:57svh}.hero .hero-images .photo-entry{animation-duration:1.25s}
@media(max-width:800px){.mobile-menu-toggle{display:block;border:1px solid #ffffff50;background:transparent;color:white;font-size:10px;padding:8px;white-space:nowrap;margin-left:auto}header{gap:8px}header nav>.btn{display:none}.brand small{max-width:180px}.plan-choices{grid-template-columns:1fr;gap:12px}.plan-choice{padding:18px 20px}.plan-choice strong{font-size:19px;margin:8px 0 3px}.plan-detail{grid-template-columns:1fr;gap:22px;padding:35px 0}.plan-detail>div:last-child{text-align:left}.plan-note{margin-left:0}.plan-detail h3{font-size:25px}.plan-price{font-size:60px}.before-call ol{display:grid;gap:12px}.viewer-navigation{gap:10px}.viewer-navigation button{padding:10px;font-size:12px}.viewer-position{font-size:16px}.hero{min-height:690px}.hero-copy h1{font-size:clamp(49px,10.2vw,78px)}}
@media(max-width:800px){.mobile-navigation>a:not(.btn){display:block}}

.skip-link{position:fixed;left:15px;top:-100px;z-index:100;background:white;color:#231f20;padding:12px 20px;font-weight:800}.skip-link:focus{top:12px}.check-reset{background:transparent;border:1px solid #ffffff70;border-radius:3px;color:white;font-size:12px;padding:10px 16px;box-shadow:0 3px 0 #0005;transition:transform .2s,background .2s}.check-reset:hover{background:#ffffff16;transform:translateY(-2px)}.viewer-hint{font-size:11px;color:#d8c5bf;margin:14px 0 0}.image-viewer img{touch-action:pan-y;user-select:none}.zoomable-photo:focus-visible{outline:3px solid #ffc27d;outline-offset:-5px}.photo-action img{vertical-align:middle}.plan-choice:focus-visible{outline:3px solid #ffc27d;outline-offset:4px}.hero-copy>p{max-width:620px}.reading-progress{background:#231f2010}@media(max-width:480px){.hero-copy{padding-top:32px}.hero-copy h1{margin-top:24px;margin-bottom:22px}.hero-copy>p{max-width:310px;font-size:13px;line-height:1.85}.hero-copy .actions{margin-top:24px}.hero-stamp{bottom:22px}.viewer-hint{font-size:10px}.image-viewer{max-height:90svh}.mobile-navigation{max-height:calc(100svh - 72px);overflow-y:auto}}@media(prefers-reduced-motion:reduce){.check-reset:hover{transform:none}}
/* Keep hit targets stationary during fast taps and anchor navigation. */
html{scroll-behavior:auto}.check:hover,.check[aria-pressed=true]{transform:none}.check.hit{transform:none!important;filter:brightness(1.18);box-shadow:inset 0 3px 10px #0005!important}.check b{transition:background .2s,color .2s}.check.hit b{scale:.9}

/* Japanese display typography: preserve the original gothic family. */
h1,h2,h3{font-kerning:normal;font-feature-settings:"palt";text-wrap:balance}h1{font-weight:900;letter-spacing:-.045em}.hero-copy h1 em{box-shadow:7px 7px 0 #701722;isolation:isolate}.hero-copy h1 em:after{content:'';position:absolute;left:8%;right:8%;bottom:8%;height:2px;background:#ffffff55}.section-head h2{letter-spacing:-.035em}.eyebrow{display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';display:inline-block;width:25px;height:2px;background:currentColor;flex:none}.closing .eyebrow{justify-content:center}.plan-call-label{font-size:14px}.scene-pop{position:absolute;left:50%;top:45%;translate:-50% -50%;padding:12px 24px;color:white;background:#d72638;font-weight:900;font-size:clamp(25px,5vw,50px);white-space:nowrap;transform:rotate(-6deg);box-shadow:5px 5px 0 #181515;pointer-events:none;animation:scene-pop .95s both;z-index:2}.image-viewer{isolation:isolate}@keyframes scene-pop{0%{opacity:0;scale:.5}25%{opacity:1;scale:1.08}65%{opacity:1;scale:1}100%{opacity:0;translate:-50% -80%;scale:1.05}}@media(max-width:480px){h2{line-height:1.45}.hero-copy h1{letter-spacing:-.05em}.hero-copy h1 em{box-shadow:4px 4px 0 #701722}.plan-call-label{font-size:12px}.scene-pop{padding:10px 18px}}@media(prefers-reduced-motion:reduce){.scene-pop{display:none}}

.night-scenes{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:0;margin:35px 0;list-style:none}.night-scenes li{border-top:2px solid #f18b92;padding-top:18px}.night-scenes span{display:block;font:12px Anton;letter-spacing:2px;color:#ffc4c7}.night-scenes strong{display:block;font-size:clamp(20px,2.8vw,34px);margin:10px 0}.night-scenes small{font-size:13px}.story-band .wrap a{pointer-events:auto}.story-band img{opacity:.32}@media(max-width:800px){.night-scenes{grid-template-columns:1fr;gap:20px}.night-scenes li{display:grid;grid-template-columns:1fr 2fr;column-gap:15px;align-items:center}.night-scenes strong{margin:0;font-size:23px}.night-scenes small{grid-column:2}.story-band .btn{font-size:12px;padding:13px 18px}}
.story-band>.photo-action{z-index:0}.story-band:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#15100fe8,#15100f9e)}.story-band .wrap{z-index:2}.story-band .eyebrow{color:#ffb2b8}.night-scenes small{color:#fff}.story-band .wrap a{position:relative;z-index:3}

/* Round 3: visible results, photo-led plan selection, readable subpage heroes. */
.check-layout{grid-template-areas:"intro choices" "summary choices";grid-template-rows:auto 1fr;column-gap:70px;row-gap:24px;align-items:start}
.check-intro{grid-area:intro}.check-intro>p{margin-bottom:0}.checklist{grid-area:choices}.check-summary{grid-area:summary;position:relative;padding:26px;border:1px solid #ffffff35;background:radial-gradient(ellipse at 100% 0,#d7263835,transparent 75%),linear-gradient(135deg,#342528,#201b1c);box-shadow:0 15px 40px #0002;min-width:0;transition:border-color .3s,box-shadow .3s}
.mood-label{display:block;font-size:11px;font-weight:800;letter-spacing:1.6px;color:#e8c6c4}.check-summary .count{display:block;margin-top:8px;line-height:1.2}.check-summary .meter{margin-top:18px}.check-summary .result{min-height:0;margin-bottom:20px}.check-summary .check-next{font-size:13px;padding:13px 17px;width:100%;gap:8px}.check-summary .check-note{margin-bottom:0}.mood-complete{display:block;color:#ffce86;font-size:17px;font-weight:900;margin-top:12px}.mood-complete[hidden]{display:none}.check-summary.is-complete{border-color:#ffce86;box-shadow:0 0 0 3px #ffce8614,0 15px 55px #d7263828}
.plan-choice{padding:0;overflow:hidden;position:relative;min-width:0}.plan-choice .choice-photo{display:block;width:100%;height:190px;object-fit:cover;filter:brightness(.75);transition:filter .3s,scale .5s}.plan-choice:hover .choice-photo,.plan-choice[aria-pressed=true] .choice-photo{filter:brightness(1)}.plan-choice .choice-copy{padding:22px;font:inherit;color:inherit;letter-spacing:normal}.plan-choice .choice-copy>span{font:11px Anton;letter-spacing:2px;color:#f1b9b5}.plan-choice .choice-price{display:block;font-size:24px;line-height:1.4;margin-top:14px;color:white}.plan-choice[aria-pressed=true]:after{content:'✓ 選択中';position:absolute;top:14px;left:14px;padding:5px 12px;background:#d72638;color:#fff;font-size:12px;font-weight:800;box-shadow:0 3px 15px #0005}.plan-line{display:block;font-size:13px;margin-top:20px;text-decoration:underline;text-underline-offset:5px;padding:6px 0}
.faq-shortcuts{display:flex;flex-wrap:wrap;gap:12px;padding-bottom:32px;border-bottom:1px solid #b8aaa0}.faq-shortcuts a{padding:11px 18px;border:1px solid #bba69b;border-radius:3px;background:linear-gradient(135deg,#fff,#eee1d4);box-shadow:0 3px 0 #c8b7ab;font-size:13px;font-weight:800;transition:transform .2s}.faq-shortcuts a:hover{transform:translateY(-2px)}.faq details p a{text-decoration:underline;text-underline-offset:5px;color:#a8192a;font-weight:800}.faq details[open] p{animation:answer-arrive .3s ease-out}@keyframes answer-arrive{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}[aria-current=page]{text-decoration:underline;text-decoration-color:#ef8b91;text-underline-offset:6px}
.subhero>.photo-action{position:absolute;inset:0;z-index:0}.subhero>.photo-action img{position:static;width:100%;height:100%;opacity:1}.subhero:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#15100fe8,#15100f75)}.subhero>div{z-index:2;pointer-events:none}.subhero>div a{pointer-events:auto}.subhero .eyebrow{color:#ffb2b8}.subhero .photo-action:after{z-index:3}
@media(max-width:800px){.check-layout{grid-template-areas:"intro" "choices" "summary";grid-template-rows:auto;gap:26px}.check-summary{padding:23px}.check-summary .count{font-size:42px}.check-summary .check-next{max-width:100%}.plan-choice{display:grid;grid-template-columns:110px 1fr;text-align:left}.plan-choice .choice-photo{height:100%;min-height:178px}.plan-choice .choice-copy{padding:18px 16px}.plan-choice .choice-copy>span{font-size:10px}.plan-choice strong{font-size:17px}.plan-choice small{font-size:11px}.plan-choice .choice-price{font-size:23px;margin-top:10px}.plan-choice[aria-pressed=true]:after{font-size:10px;left:7px;top:8px;padding:4px 7px}.faq-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.faq-shortcuts a{padding:11px;font-size:12px}.plan-line{margin-top:14px}.image-viewer .viewer-close{position:sticky;top:0;float:right;margin-top:-52px;z-index:4}.subhero h1{font-size:clamp(32px,6vw,48px)}}
@media(prefers-reduced-motion:reduce){.faq details[open] p{animation:none}.faq-shortcuts a:hover{transform:none}}

.plan-choice strong{text-wrap:balance}
