:root{--ink:#171310;--brown:#392820;--burnt:#9d402b;--red:#b64e35;--sand:#e9dfcf;--paper:#f6f1e8;--cream:#fffaf2;--line:rgba(23,19,16,.18);--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.8;overflow-x:hidden}button,a{font:inherit}a{color:inherit;text-decoration:none}.skip-link{position:fixed;left:16px;top:-60px;z-index:100;color:#fff;background:var(--ink);padding:10px 16px;transition:top .2s}.skip-link:focus{top:16px}.announcement{background:var(--ink);color:#fff;min-height:36px;padding:7px 4vw;display:flex;justify-content:center;gap:18px;align-items:center;font-size:11px;letter-spacing:.06em}.announcement span{color:#e7b467;font-weight:700}.announcement p{margin:0}.announcement a{text-decoration:underline;text-underline-offset:3px}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;background:rgba(255,250,242,.96);position:sticky;top:0;z-index:20;border-bottom:1px solid transparent;transition:border .3s,box-shadow .3s}.site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 4px 20px rgba(23,19,16,.04)}.brand{display:flex;gap:10px;align-items:center;font-family:var(--serif);font-size:23px;letter-spacing:.05em;line-height:1.1}.brand small{display:block;font-family:var(--sans);font-size:8px;letter-spacing:.19em;margin-top:5px}.brand-mark{height:41px;width:41px;border:1px solid var(--ink);display:grid;place-items:center;border-radius:50%;font-size:17px}.primary-nav{display:flex;gap:clamp(15px,1.75vw,33px);align-items:center;font-size:12px;letter-spacing:.04em}.primary-nav a{position:relative}.primary-nav a:not(.nav-contact):after{content:"";position:absolute;height:1px;background:var(--red);left:0;right:0;bottom:-5px;transform:scaleX(0);transform-origin:right;transition:transform .25s}.primary-nav a:hover:after,.primary-nav a:focus-visible:after{transform:scaleX(1);transform-origin:left}.nav-contact{border:1px solid var(--ink);padding:9px 16px;transition:background .2s,color .2s}.nav-contact:hover{background:var(--ink);color:#fff}.menu-toggle{display:none;background:transparent;border:0;padding:8px}.menu-toggle span{display:block;width:25px;height:1px;background:var(--ink);margin:5px}.menu-toggle i{font-style:normal;font-size:7px;letter-spacing:.1em}.hero{position:relative;min-height:min(786px,calc(100svh - 128px));overflow:hidden;color:#fff;display:grid;align-items:center}.hero-image,.hero-shade{inset:0;position:absolute}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 53%;filter:saturate(.8) contrast(1.05)}.hero-shade{background:linear-gradient(90deg,rgba(18,13,10,.74) 0%,rgba(18,13,10,.38) 41%,rgba(18,13,10,.02) 76%),linear-gradient(0deg,rgba(18,13,10,.35),transparent 45%)}.hero-copy{position:relative;z-index:1;margin-left:10.5vw;padding:80px 0;animation:rise .9s ease both}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:700;margin:0 0 17px;color:var(--burnt)}.eyebrow.light{color:#ead9bb}.hero h1{font:700 clamp(54px,8.4vw,118px)/1 var(--serif);letter-spacing:.08em;margin:0 0 28px;text-shadow:0 2px 16px rgba(0,0,0,.25)}.hero-phrase{font:400 clamp(23px,2.8vw,42px)/1.5 var(--serif);letter-spacing:.08em;margin:0}.hero-note{font-size:13px;letter-spacing:.14em;margin:25px 0 32px}.hero-actions{display:flex;gap:13px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:27px;padding:15px 18px;min-width:171px;border:1px solid transparent;font-size:12px;letter-spacing:.08em;transition:transform .2s,background .2s,color .2s,border .2s}.button:hover{transform:translateY(-3px)}.button b{font-size:18px;font-weight:400;line-height:1}.button-warm{background:#c25739;color:white}.button-warm:hover{background:#a8422e}.button-ghost{border-color:rgba(255,255,255,.75);color:#fff}.button-ghost:hover{background:#fff;color:var(--ink)}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:var(--burnt)}.button-line{border-color:#fff;color:#fff}.button-line:hover{background:#fff;color:var(--ink)}.center-button{display:flex;width:max-content;margin:44px auto 0}.scroll-hint{position:absolute;z-index:1;right:4.2vw;bottom:0;display:flex;align-items:center;gap:13px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.17em}.scroll-hint i{height:72px;border-left:1px solid #fff;animation:scrollLine 2.1s infinite}.section{padding:clamp(76px,10vw,156px) 8vw;position:relative}.intro{display:grid;grid-template-columns:110px 1.15fr .85fr 150px;gap:clamp(25px,4vw,75px);align-items:center}.section-number{font-family:var(--serif);font-size:13px;color:var(--burnt);align-self:start;border-top:1px solid var(--burnt);padding-top:8px}.intro h2,.section-heading h2,.research h2,.ranking h2,.history-teaser h2,.shop-copy h2{font:400 clamp(31px,4vw,57px)/1.45 var(--serif);letter-spacing:.03em;margin:0}.intro h2 em,.craft-copy h2 em,.ranking h2 em,.shop-copy h2 em{font-style:normal;color:var(--red)}.intro-text{font-size:14px;color:#574941}.intro-text p:first-child{margin-top:0}.text-link{display:inline-flex;gap:14px;align-items:center;font-size:12px;letter-spacing:.08em;border-bottom:1px solid var(--ink);padding-bottom:6px;margin-top:13px;transition:color .2s,border .2s}.text-link span{font-size:18px}.text-link:hover{color:var(--red);border-color:var(--red)}.intro-seal{border:1px solid var(--burnt);width:145px;height:145px;border-radius:50%;display:flex;justify-content:center;align-items:center;gap:9px;transform:rotate(-11deg)}.intro-seal strong{font:400 52px/1 var(--serif);color:var(--burnt)}.intro-seal span{font-size:8px;line-height:1.45;letter-spacing:.09em}.tint{background:#eee5d7}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:42px}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.product-card{border:0;background:transparent;text-align:left;padding:0;cursor:pointer;display:block;min-width:0}.product-visual{aspect-ratio:1/1.16;position:relative;overflow:hidden;background:#d7c3a5}.product-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(23,19,16,.22))}.product-visual img{height:100%;width:100%;object-fit:cover;transition:transform .6s ease,filter .6s}.product-card:hover img{transform:scale(1.06);filter:saturate(1.1)}.product-tag{position:absolute;z-index:1;top:13px;left:13px;padding:3px 8px;background:var(--cream);font-size:9px;letter-spacing:.1em}.product-name{font:400 21px var(--serif);display:block;margin-top:15px;letter-spacing:.04em}.product-meta{display:flex;justify-content:space-between;font-size:11px;color:#755f52;margin-top:1px}.craft-banner{min-height:660px;background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr}.craft-image{overflow:hidden;min-height:480px}.craft-image img{height:100%;width:100%;object-fit:cover;filter:saturate(.64) brightness(.72);transform:scale(1.03)}.craft-copy{padding:clamp(70px,10vw,145px) clamp(35px,8vw,130px);align-self:center}.craft-copy h2{font:400 clamp(37px,5vw,65px)/1.33 var(--serif);margin:0 0 24px}.craft-copy>p:not(.craft-aside){max-width:430px;font-size:13px;color:#e3d8cb}.craft-aside{border-left:1px solid #bc573d;padding-left:16px;line-height:1.7;color:#dfc0a2;font-size:12px;margin:30px 0}.research{padding-left:4vw;padding-right:4vw}.research .section-heading{padding:0 4vw}.section-caption{font-family:var(--serif);font-size:15px;margin:0;color:#725d4e}.research-track{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--cream);border:1px solid var(--line)}.research-card{background:var(--sand);padding:30px min(2.7vw,43px);min-height:253px;position:relative;transition:background .25s,color .25s}.research-card:hover{background:var(--ink);color:#fff}.research-card .research-no{font-family:var(--serif);font-size:12px;color:var(--red)}.research-card h3{font:400 27px var(--serif);line-height:1.35;margin:37px 0 7px}.research-card p{font-size:11px;line-height:1.7;margin:0;color:#705b4d}.research-card:hover p{color:#e4d2bb}.paper{background:#d7c5a6;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.ranking-copy>p:not(.eyebrow){font-size:13px;color:#5a4a3e;max-width:360px;margin:25px 0 2px}.ranking-list{padding:0;margin:0;list-style:none;border-top:1px solid var(--ink)}.ranking-list li{display:grid;grid-template-columns:44px 1fr auto;align-items:center;border-bottom:1px solid rgba(23,19,16,.4);padding:16px 0;gap:8px;cursor:pointer}.rank-no{font:400 22px var(--serif);color:var(--burnt)}.rank-name{font:400 20px var(--serif);letter-spacing:.05em}.rank-rating{font-size:10px;letter-spacing:.1em;color:var(--burnt)}.ranking-list li:hover .rank-name{text-decoration:underline;text-underline-offset:5px}.history-teaser{background:var(--brown);color:#fff;min-height:430px;display:grid;grid-template-columns:1.1fr 1fr;gap:7vw;align-items:center}.history-teaser h2{margin:0 0 31px}.history-teaser .eyebrow{color:#e9bf75}.history-years{display:flex;flex-wrap:wrap;gap:9px;align-items:center;align-content:center;color:#eedfc9;font:400 23px var(--serif)}.history-years i{height:1px;width:24px;background:#c15d43}.shop-teaser{background:var(--paper);display:grid;grid-template-columns:1.25fr .75fr;min-height:650px}.shop-map{background:#d8cbb5;position:relative;overflow:hidden;margin:7vw 0 7vw 7vw;min-height:410px;border:1px solid rgba(57,40,32,.25);font-size:10px;color:#6c5447;letter-spacing:.04em}.shop-map:before,.shop-map:after{content:"";position:absolute;border:1px solid rgba(117,83,66,.35);border-radius:50%;width:390px;height:390px;left:12%;top:3%;transform:rotate(28deg)}.shop-map:after{width:280px;height:280px;left:42%;top:36%;border-color:rgba(117,83,66,.22)}.shop-map span,.shop-map strong{position:absolute;z-index:1;background:rgba(246,241,232,.88);padding:5px 8px}.shop-map strong{top:47%;left:46%;background:var(--red);color:#fff;border-radius:50%;height:92px;width:92px;display:grid;place-content:center;text-align:center;font:400 14px/1.3 var(--serif)}.shop-map strong small{font:10px var(--sans)}.map-station{left:15%;top:18%}.map-park{right:17%;top:19%}.map-cross{right:17%;bottom:20%}.map-museum{left:18%;bottom:17%}.road{position:absolute;background:rgba(246,241,232,.95);height:12px;width:120%;transform:rotate(-25deg);top:47%;left:-10%}.road-two{height:8px;transform:rotate(49deg);top:49%;left:7%}.shop-copy{align-self:center;padding:7vw}.shop-copy h2{margin:0 0 20px}.shop-copy>p:not(.eyebrow){font-size:13px;color:#665246}.shop-copy address{font-style:normal;font-size:12px;line-height:2;margin:23px 0 29px}.shop-copy address a{text-decoration:underline}.news-strip{display:grid;grid-template-columns:.5fr 1.9fr auto;align-items:center;gap:5vw;padding:70px 8vw;border-top:1px solid var(--line)}.news-strip .eyebrow{margin-bottom:4px}.news-strip h2{font:400 30px var(--serif);margin:0}.news-strip ul{margin:0;padding:0;list-style:none}.news-strip li{display:flex;gap:22px;border-bottom:1px solid var(--line);padding:9px 0;font-size:12px}.news-strip time{font-size:10px;color:#8d7566;min-width:80px}.site-footer{background:var(--ink);color:#f1e5d4;padding:70px 8vw 25px}.brand-footer{color:#fff}.brand-footer .brand-mark{border-color:#e4c699}.footer-brand{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid rgba(255,255,255,.22);padding-bottom:43px}.footer-brand>p{font:400 20px var(--serif);margin:3px 0}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:43px 0}.footer-links div{display:flex;flex-direction:column;gap:7px;font-size:12px}.footer-links p{color:#d99a65;font-size:10px;letter-spacing:.15em;margin:0 0 8px}.footer-links a:hover{text-decoration:underline;text-underline-offset:4px}.social-note{color:#a99586;font-size:11px;margin-top:4px}.footer-bottom{padding-top:22px;border-top:1px solid rgba(255,255,255,.22);display:flex;justify-content:space-between;color:#a99586;font-size:9px;letter-spacing:.05em}.footer-bottom div{display:flex;gap:17px}.footer-bottom a:hover{color:#fff}.page-dialog,.product-dialog{width:min(1100px,96vw);height:min(860px,94vh);border:0;padding:0;background:var(--cream);color:var(--ink);box-shadow:0 20px 70px rgba(0,0,0,.3);overflow:auto}.page-dialog::backdrop,.product-dialog::backdrop{background:rgba(21,17,14,.66);backdrop-filter:blur(2px)}.dialog-close{position:sticky;float:right;top:15px;right:15px;z-index:3;border:1px solid var(--ink);width:38px;height:38px;border-radius:50%;background:var(--cream);font-size:26px;line-height:1;cursor:pointer}.dialog-close:hover{background:var(--ink);color:#fff}.page-inner{padding:clamp(55px,8vw,100px)}.page-hero{border-bottom:1px solid var(--line);padding-bottom:35px;margin-bottom:43px}.page-hero h2{font:400 clamp(34px,5vw,62px)/1.35 var(--serif);margin:0}.page-hero p:not(.eyebrow){max-width:580px;color:#69574b}.page-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px 8vw}.page-grid h3{font:400 24px var(--serif);margin:0 0 11px}.page-grid p{font-size:13px;margin:0 0 18px;color:#604f44}.timeline{margin:0;padding:0;list-style:none;border-left:1px solid var(--burnt)}.timeline li{padding:0 0 35px 32px;position:relative}.timeline li:before{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:var(--burnt);left:-5px;top:7px}.timeline time{font:400 25px var(--serif);display:block}.timeline h3{font-size:20px;margin:0}.timeline p{margin:4px 0 0}.filter-bar{display:flex;gap:8px;overflow:auto;padding-bottom:15px;margin-bottom:21px}.filter-button{border:1px solid var(--line);background:transparent;padding:7px 13px;font-size:11px;white-space:nowrap;cursor:pointer}.filter-button.active,.filter-button:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.product-list{display:grid;grid-template-columns:repeat(3,1fr);gap:25px 14px}.dialog-product .product-visual{aspect-ratio:1/.93}.dialog-product .product-name{font-size:20px}.product-detail{display:grid;grid-template-columns:1fr 1fr;min-height:100%}.product-detail-image{min-height:500px;background:#d9c8a9}.product-detail-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.8)}.product-detail-copy{padding:70px 8%;align-self:center}.product-detail-copy h2{font:400 42px var(--serif);margin:0 0 9px}.product-price{font-size:15px;color:var(--burnt);letter-spacing:.05em}.product-lead{font:17px/1.9 var(--serif);margin:28px 0}.product-spec{border-top:1px solid var(--line);margin:27px 0;padding:0}.product-spec div{padding:10px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:102px 1fr;font-size:12px}.product-spec dt{color:#8b7060}.product-comment{padding:17px;background:#ede1cc;font-size:12px}.product-comment strong{display:block;color:var(--burnt);font-size:10px;letter-spacing:.1em;margin-bottom:3px}.ranking-detail{display:grid;grid-template-columns:1.1fr .9fr;gap:7vw}.large-ranking li{padding:18px 0}.large-ranking .rank-name{font-size:25px}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item button{width:100%;border:0;background:transparent;text-align:left;padding:18px 4px;display:flex;justify-content:space-between;align-items:center;font:400 20px var(--serif);cursor:pointer}.faq-item button span{font:25px var(--sans);transition:transform .2s}.faq-item button[aria-expanded=true] span{transform:rotate(45deg)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s}.faq-answer div{overflow:hidden}.faq-answer p{font-size:13px;padding:0 3px;margin:0;color:#665346}.faq-item.open .faq-answer{grid-template-rows:1fr}.faq-item.open .faq-answer p{padding-bottom:18px}.news-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.news-list li{display:grid;grid-template-columns:105px 1fr auto;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:18px 0;font-size:13px}.news-list time{font-size:11px;color:#7e675a}.news-list a{font-size:20px;font-family:var(--serif)}.news-list a:hover{text-decoration:underline}.contact-shell{max-width:700px}.contact-note{background:#ede1cc;padding:16px;font-size:12px;margin-bottom:30px}.field{margin:0 0 19px}.field label{font-size:12px;font-weight:700;display:block;margin-bottom:5px}.required{background:var(--red);color:#fff;font-size:9px;padding:1px 5px;margin-left:5px;font-weight:400}.field input,.field select,.field textarea{width:100%;border:1px solid #b3a292;background:#fffdf8;padding:12px;font:14px var(--sans);border-radius:0}.field textarea{min-height:150px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--burnt);outline-offset:1px}.field-error{font-size:11px;color:#a3271e;margin-top:4px;min-height:16px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px}.form-actions button{cursor:pointer}.button-plain{padding:12px 15px;border:1px solid var(--ink);background:transparent}.confirm-list{margin:28px 0;border-top:1px solid var(--line)}.confirm-list div{display:grid;grid-template-columns:150px 1fr;gap:15px;border-bottom:1px solid var(--line);padding:12px 0;font-size:13px}.confirm-list dt{color:#7d6658}.complete-message{text-align:center;padding:40px 0}.complete-message h3{font:400 33px var(--serif)}.complete-message p{font-size:13px}.legal h3{font:400 24px var(--serif);border-bottom:1px solid var(--line);padding-bottom:9px;margin-top:30px}.legal p{font-size:13px}.not-found{text-align:center;padding:12vh 8vw}.not-found h2{font:400 72px var(--serif);margin:0}.not-found p{font:400 25px var(--serif)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s}.reveal.in-view{opacity:1;transform:none}@keyframes rise{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes scrollLine{0%{transform:scaleY(0);transform-origin:top}47%{transform:scaleY(1);transform-origin:top}48%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@media(max-width:850px){.site-header{height:73px;padding:0 5vw}.primary-nav{position:absolute;top:72px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:14px 5vw 22px;background:var(--cream);border-bottom:1px solid var(--line)}.primary-nav.open{display:flex}.primary-nav a{padding:11px 0;border-bottom:1px solid var(--line)}.primary-nav a:not(.nav-contact):after{display:none}.nav-contact{text-align:center;margin-top:13px}.menu-toggle{display:block}.hero{min-height:620px}.hero-copy{margin-left:8vw}.intro{grid-template-columns:72px 1fr;gap:24px}.intro-text{grid-column:2}.intro-seal{display:none}.product-grid{grid-template-columns:repeat(2,1fr)}.craft-banner,.paper,.history-teaser,.shop-teaser{grid-template-columns:1fr}.craft-banner{min-height:0}.craft-image{min-height:340px;max-height:430px}.craft-copy{padding:65px 8vw}.research-track{grid-template-columns:repeat(2,1fr)}.ranking-copy{max-width:500px}.history-years{max-width:480px}.shop-map{margin:8vw 8vw 0;min-height:350px}.shop-copy{padding:55px 8vw}.news-strip{grid-template-columns:1fr;gap:22px}.news-strip .text-link{width:max-content}.footer-brand{flex-direction:column;gap:23px}.product-detail{grid-template-columns:1fr}.product-detail-image{min-height:300px;max-height:380px}.product-detail-copy{padding:45px 8%}.page-grid,.ranking-detail{grid-template-columns:1fr}.product-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){body{font-size:14px}.announcement{justify-content:flex-start;gap:9px;padding:7px 5vw}.announcement p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.announcement a{display:none}.brand{font-size:19px}.brand-mark{height:34px;width:34px;font-size:14px}.hero{min-height:calc(100svh - 109px)}.hero-copy{margin-left:7vw;padding-bottom:100px}.hero h1{font-size:56px}.hero-phrase{font-size:24px}.hero-actions{display:grid;max-width:210px}.scroll-hint{right:7vw}.section{padding:72px 7vw}.intro{grid-template-columns:1fr}.section-number{width:55px}.intro-text{grid-column:auto}.section-heading{align-items:start;flex-direction:column;margin-bottom:29px}.section-heading h2{font-size:34px}.product-name{font-size:18px}.product-meta{font-size:10px}.product-visual{aspect-ratio:1/1.1}.research{padding-left:0;padding-right:0}.research .section-heading{padding:0 7vw}.research-track{grid-template-columns:1fr}.research-card{min-height:182px;padding:25px 7vw}.research-card h3{margin:25px 0 5px}.paper{gap:42px}.history-teaser{padding:70px 7vw}.history-teaser h2{font-size:36px}.history-years{font-size:18px;gap:6px}.history-years i{width:10px}.shop-map{margin:7vw 7vw 0;min-height:300px}.shop-copy{padding:50px 7vw}.news-strip{padding:55px 7vw}.news-strip li{gap:11px}.news-strip time{min-width:70px}.site-footer{padding:55px 7vw 22px}.footer-links{grid-template-columns:1fr 1fr;row-gap:32px}.footer-links div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:13px}.footer-bottom div{flex-wrap:wrap;gap:9px 15px}.page-dialog,.product-dialog{width:100vw;height:100dvh;max-height:none}.page-inner{padding:62px 7vw}.page-hero{margin-bottom:31px}.page-hero h2{font-size:34px}.product-list{gap:21px 10px}.product-detail-copy h2{font-size:34px}.product-spec div{grid-template-columns:80px 1fr}.news-list li{grid-template-columns:1fr;gap:4px}.news-list li span{display:none}.confirm-list div{grid-template-columns:1fr;gap:2px}.form-actions{flex-wrap:wrap}.form-actions button{flex:1}.not-found h2{font-size:58px}}

/* Interactive laboratory — deliberately restrained so the existing storefront remains the lead. */
.hero-status{display:flex;align-items:center;gap:12px;margin:29px 0 0;font-size:10px;letter-spacing:.08em;color:#ead9bb}.hero-status span{border:1px solid rgba(234,217,187,.55);padding:2px 7px;font-size:8px}.hero-status strong{font-weight:400}.lab-play{background:#eee5d7}.lab-heading h2 em,.research-vote h2 em{font-style:normal;color:var(--red)}.lab-play-grid{display:grid;grid-template-columns:.9fr 1fr 1.18fr;gap:15px;align-items:stretch}.lab-panel{position:relative;min-height:475px;padding:clamp(26px,3vw,43px);border:1px solid rgba(23,19,16,.17);overflow:hidden}.panel-kicker{font-size:9px;letter-spacing:.14em;color:var(--burnt);font-weight:700;margin:0 0 26px}.fortune-panel{background:var(--ink);color:#fff;display:flex;flex-direction:column;align-items:flex-start}.fortune-panel:after{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(229,190,128,.2);border-radius:50%;right:-122px;bottom:-118px}.fortune-symbol{display:grid;place-items:center;width:68px;height:68px;border:1px solid #e5bd82;border-radius:50%;font:30px var(--serif);color:#e5bd82;margin:0 0 27px;z-index:1}.fortune-panel .panel-kicker{color:#e5bd82}.fortune-label{font-size:10px;letter-spacing:.17em;font-weight:700;color:var(--burnt);margin:0 0 8px}.fortune-panel .fortune-label{color:#dcc097}.fortune-panel h3,.diagnosis-panel h3,.badge-panel h3{font:400 clamp(24px,2.15vw,33px)/1.5 var(--serif);letter-spacing:.03em;margin:0;position:relative;z-index:1}.fortune-panel>p:not(.panel-kicker):not(.fortune-symbol):not(.fortune-label){font-size:12px;line-height:1.85;color:#dccfbe;margin:14px 0 30px;position:relative;z-index:1}.lab-button{margin-top:auto;position:relative;z-index:1}.fortune-panel .button-dark{background:#fff;color:var(--ink)}.fortune-panel .button-dark:hover{background:#e5bd82}.diagnosis-panel{background:var(--paper)}.diagnosis-panel h3{margin-bottom:24px}.diagnosis-choices{display:grid;gap:8px}.diagnosis-choices button{border:1px solid rgba(23,19,16,.34);background:transparent;padding:12px 14px;text-align:left;font:14px var(--serif);cursor:pointer;transition:background .2s,color .2s,transform .2s}.diagnosis-choices button:before{content:"○";color:var(--burnt);margin-right:9px}.diagnosis-choices button:hover,.diagnosis-choices button.active{background:var(--ink);color:#fff;transform:translateX(3px)}.diagnosis-choices button.active:before{content:"●";color:#e8bb76}.diagnosis-result{border-top:1px solid var(--line);margin-top:25px;padding-top:18px}.diagnosis-result span{display:block;font-size:9px;letter-spacing:.13em;color:var(--burnt);font-weight:700}.diagnosis-result strong{display:block;font:21px var(--serif);margin-top:3px}.diagnosis-result p{font-size:11px;line-height:1.75;color:#6e5b4e;margin:5px 0 0}.badge-panel{background:#d8c5a5}.badge-panel:before{content:"鯛";position:absolute;right:-24px;bottom:-90px;font:220px var(--serif);line-height:1;color:rgba(80,52,38,.08);pointer-events:none}.badge-panel>p:not(.panel-kicker):not(.fortune-label){font-size:12px;color:#624d3f;line-height:1.8;margin:10px 0 18px;max-width:400px}.lab-id-form{position:relative;z-index:1}.lab-id-form label{display:block;font-size:10px;font-weight:700;letter-spacing:.08em;margin-bottom:5px}.lab-id-form>div{display:flex;gap:7px}.lab-id-form input{min-width:0;flex:1;border:1px solid rgba(23,19,16,.5);background:#fffaf2;padding:10px 11px;font:13px var(--sans)}.lab-id-form .button{min-width:auto;gap:11px;padding:10px 12px}.lab-error{min-height:16px;font-size:10px;color:#8b251c;margin:4px 0 0}.lab-id-card{position:relative;z-index:1;background:#f8f0e3;border:1px solid #826650;margin-top:20px;padding:15px 16px 13px;box-shadow:5px 5px 0 rgba(99,71,50,.16)}.lab-id-card:after{content:"TAIYAKIYA / 1876";position:absolute;right:12px;bottom:9px;color:#937762;font-size:7px;letter-spacing:.12em}.lab-id-card span{font-size:8px;letter-spacing:.16em;color:var(--burnt);font-weight:700}.lab-id-card strong{display:block;font:21px var(--serif);letter-spacing:.05em;margin-top:2px}.lab-id-card p{font-size:10px;line-height:1.5;color:#6d594d;margin:4px 0 0}.research-vote{background:var(--cream)}.vote-shell{display:grid;grid-template-columns:.68fr 1.32fr;gap:clamp(30px,6vw,100px);align-items:start}.vote-copy{font-size:13px;color:#69564a}.vote-copy p:first-child{margin-top:0}.vote-status{font:12px var(--serif);padding:13px 15px;border-left:2px solid var(--red);background:#f0e7d9;color:#4e392d}.vote-options{border-top:1px solid var(--ink)}.vote-option{width:100%;display:grid;grid-template-columns:1.25fr 1fr 1.25fr auto;align-items:center;gap:16px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:18px 0;text-align:left;cursor:pointer;transition:padding .22s,background .22s}.vote-option:hover,.vote-option.selected{padding-left:13px;padding-right:13px;background:#f2eadf}.vote-option:disabled{cursor:default}.vote-option span{font:21px var(--serif);letter-spacing:.03em}.vote-option b{font-size:10px;font-weight:400;color:#80695a}.vote-option i{display:block;height:5px;background:#ddcdb8;overflow:hidden}.vote-option i em{display:block;height:100%;background:var(--burnt);transition:width .6s cubic-bezier(.22,.61,.36,1)}.vote-option small{white-space:nowrap;font-size:9px;color:#7c6555}.vote-option small strong{font-size:12px;color:var(--burnt)}.favorite-toggle{display:inline-flex;align-items:center;gap:7px;margin-top:18px;border:1px solid var(--burnt);background:transparent;color:var(--burnt);padding:9px 12px;font-size:11px;letter-spacing:.06em;cursor:pointer}.favorite-toggle:hover,.favorite-toggle.is-favorite{background:var(--burnt);color:#fff}.favorite-toggle b{font-size:14px;font-weight:400}.favorite-toggle.is-favorite b{color:#f5d89d}@media(max-width:1150px){.primary-nav{gap:clamp(11px,1.2vw,20px);font-size:11px}.lab-play-grid{grid-template-columns:1fr 1fr}.badge-panel{grid-column:1/-1;min-height:380px}.badge-panel>p:not(.panel-kicker):not(.fortune-label){max-width:500px}.lab-id-card{max-width:500px}}@media(max-width:850px){.lab-play-grid{grid-template-columns:1fr}.lab-panel,.badge-panel{grid-column:auto;min-height:auto}.fortune-panel{min-height:390px}.vote-shell{grid-template-columns:1fr;gap:19px}.vote-option{grid-template-columns:1fr auto;gap:7px 16px}.vote-option b{grid-column:1}.vote-option i{grid-column:1}.vote-option small{grid-column:2;grid-row:1/4;text-align:right}.hero-status{margin-top:22px}}@media(max-width:520px){.lab-play{padding-top:65px;padding-bottom:65px}.lab-panel{padding:27px 23px}.fortune-panel{min-height:365px}.fortune-panel h3,.diagnosis-panel h3,.badge-panel h3{font-size:25px}.lab-id-form>div{align-items:stretch}.lab-id-form .button{font-size:10px}.vote-option span{font-size:18px}.vote-option b{font-size:9px}.vote-option small{font-size:8px}.hero-status{display:block;line-height:1.6}.hero-status span{margin-right:8px}.hero-status strong{font-size:9px}.diagnosis-result strong{font-size:20px}}
