:root{--paper:#f5f0e5;--ink:#273b49;--red:#a54b38;--muted:#6f726d;--line:#d7cdbb;--serif:Georgia,'Times New Roman','Yu Mincho','Hiragino Mincho ProN',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 -apple-system,BlinkMacSystemFont,'Helvetica Neue','Hiragino Kaku Gothic ProN',sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:wait;opacity:.7}button:focus-visible,a:focus-visible,input:focus-visible+span{outline:3px solid #a2773d;outline-offset:5px}a{color:inherit;text-decoration:none}p,h1,h2,h3{margin:0}img,svg{max-width:100%;display:block}button{border:0;background:none}fieldset{border:0;padding:0;margin:0}button[hidden],[hidden]{display:none!important}.sr-only,.skip{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{width:auto;height:auto;clip-path:none;z-index:20;padding:12px;background:var(--paper)}header{max-width:1380px;margin:auto;padding:28px 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px}.brand>span{font:28px/1.3 var(--serif);letter-spacing:.1em}.brand small{display:block;font:9px/1.8 sans-serif;letter-spacing:.19em;margin-top:5px}.brand img{flex:none}nav{display:flex;gap:30px;align-items:center;font-size:13px}nav>button{padding:0}.language{display:flex;gap:8px;align-items:center;font-size:12px}.language button{padding:4px;color:var(--muted)}.language button[aria-pressed=true]{color:var(--red);border-bottom:1px solid var(--red)}.hero{max-width:1380px;margin:auto;display:grid;grid-template-columns:1fr 1.15fr;padding:65px 48px 22px;gap:20px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.17em;font-weight:600;color:var(--red)}h1{font:clamp(42px,4.6vw,68px)/1.14 var(--serif);letter-spacing:-.025em;margin:24px 0 27px}html[lang=ja] h1{font-size:clamp(32px,3.6vw,52px);line-height:1.6;letter-spacing:.01em}.intro{font-size:17px;line-height:1.95;color:#565f60}.text-link{display:inline-block;border-bottom:1px solid var(--red);font-size:13px;margin-top:25px;padding-bottom:5px}.side-note{font:italic 13px var(--serif);color:var(--muted);margin-top:35px}.shrine-column{min-width:0}.shrine-wrap{height:480px;position:relative}#shrine-view{width:100%;height:100%}#shrine-view canvas{display:block;width:100%;height:100%}.shrine-fallback{width:100%;height:100%}.vertical-note{position:absolute;right:0;top:35px;writing-mode:vertical-rl;font:14px var(--serif);letter-spacing:.17em;z-index:1}.shrine-caption{display:flex;align-items:center;justify-content:center;gap:16px;font-size:11px;color:var(--muted);letter-spacing:.06em}.caption-seal{font:20px var(--serif);color:var(--red);border:1px solid var(--red);padding:0 4px;transform:rotate(-6deg)}#ritual-overlay{position:absolute;inset:auto 7% 15px;background:#f5f0e5ed;border:1px solid #cbb993;padding:13px;text-align:center;box-shadow:0 5px 15px #00000008;font-size:14px}.ritual-pulse{font-size:23px;color:var(--red);display:inline-block;animation:pulse 1s ease-in-out infinite}.wish-section{max-width:1284px;margin:45px auto 0;padding:29px 0 22px;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}.step{display:flex;gap:20px;align-items:baseline;margin-bottom:23px}.step>span{font-size:12px;color:var(--red)}h2{font:36px/1.3 var(--serif);letter-spacing:-.015em}.step h2{font-size:27px}.wishes{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.wish{cursor:pointer;position:relative}.wish input{position:absolute;opacity:0}.wish>span{display:flex;align-items:center;gap:17px;border:1px solid var(--line);padding:18px 20px;min-height:90px;font-size:15px;background:#faf6ed;transition:.2s}.wish b{font:31px var(--serif);color:#a58b68;font-weight:400}.wish input:checked+span{border-color:var(--red);background:#eee1d2;box-shadow:inset 0 -2px var(--red)}.wish input:checked+span b{color:var(--red)}.ring-row{display:flex;align-items:center;justify-content:space-between;margin-top:25px;gap:30px}.ring-row>p{font-size:14px;color:var(--muted)}.primary{display:flex;align-items:center;justify-content:center;gap:16px;background:var(--red);color:#fff8e8;padding:17px 28px;font-size:16px;line-height:1.6;transition:background .2s}.primary:hover{background:#8c3d2d}.ring-row .primary{min-width:410px}.ritual-foot{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted);margin-top:17px}.ritual-foot button{font-size:12px;padding:0;border-bottom:1px solid var(--line)}.editorial{max-width:1284px;margin:80px auto;display:flex;gap:40px;align-items:center;border-left:2px solid var(--red);padding:25px 40px;background:#eee7d8}.editorial-kanji{font:80px var(--serif);color:#bba27e}.editorial p{font:30px/1.45 var(--serif)}.editorial div>span{display:block;font-size:13px;color:var(--muted);margin-top:15px}.editorial-no{margin-left:auto;align-self:flex-end;font-size:10px;letter-spacing:.15em;white-space:nowrap}.collection,.encounter-section{max-width:1284px;margin:0 auto 80px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:30px}.section-heading h2{margin-top:14px}.section-heading>p,.section-heading>a{font-size:13px;color:var(--muted)}.section-heading>a{border-bottom:1px solid var(--line)}.illustration-note{font-size:11px;color:var(--muted);margin-bottom:18px}.craft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.craft{border-top:1px solid var(--line);padding-top:18px;min-width:0}.craft-art{position:relative;background:#eee9dc;overflow:hidden}.craft-art svg{width:100%;transition:transform .6s}.craft:hover .craft-art svg{transform:scale(1.035)}.craft-glyph{position:absolute;right:20px;top:15px;color:var(--red);font:24px var(--serif);writing-mode:vertical-rl}.craft-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:.07em;margin-top:19px}.craft h3{font:28px/1.3 var(--serif);margin:10px 0}.craft .kind{font-size:12px;color:var(--red);margin-bottom:13px}.craft .description{font-size:14px;line-height:1.85;color:#596263;min-height:79px}.craft details{font-size:12px;line-height:1.8;margin-top:17px;color:var(--muted)}.craft summary{cursor:pointer;color:var(--ink)}.craft details p{margin-top:8px}.shop-link{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:14px;margin-top:18px;font-size:13px}.shop-link span:last-child{font-size:22px}.shipping-link{display:inline-block;font-size:11px;color:var(--muted);border-bottom:1px solid var(--line);margin-top:8px}.incense-region{font-size:11px;margin-top:10px;color:var(--muted)}.incense-region a{border-bottom:1px solid var(--line)}.encounter-section{margin-top:60px;padding:30px;background:#eee7d8}.matches{display:grid;grid-template-columns:1fr 1fr;gap:35px}.matches .craft{display:grid;grid-template-columns:180px 1fr;column-gap:22px}.matches .craft-art{grid-column:1;grid-row:1/6;align-self:start}.matches .craft-meta{margin-top:0}.matches .craft .description{min-height:0}.matches .craft details,.matches .craft .shop-link,.matches .craft .shipping-link,.matches .craft .incense-region{grid-column:1/-1}.journey{max-width:1284px;margin:90px auto;display:grid;grid-template-columns:1fr 1.5fr;gap:90px;border-top:1px solid var(--ink);padding-top:40px}.journey h2{margin-top:18px}.journey ol{list-style:none;margin:0;padding:0}.journey li{display:flex;gap:25px;padding:0 0 25px;margin-bottom:25px;border-bottom:1px solid var(--line)}.journey li>span{font-size:12px;color:var(--red);padding-top:5px}.journey h3{font:23px var(--serif);margin-bottom:10px}.journey li p{font-size:14px;color:var(--muted);line-height:1.85}footer{max-width:1284px;border-top:1px solid var(--line);margin:auto;padding:35px 0;display:flex;justify-content:space-between;gap:50px}footer>div{max-width:630px}footer p{font:19px var(--serif)}footer small{display:block;font-size:11px;color:var(--muted);margin-top:14px}.footer-links{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:25px}.footer-links button{font-size:11px;padding:0}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:45px;max-width:540px;width:calc(100% - 32px);max-height:90dvh;overflow:auto;box-shadow:0 20px 100px #0003}dialog::backdrop{background:#23333cc4;backdrop-filter:blur(4px)}dialog>h2{margin-bottom:25px}dialog>p:not(.eyebrow){font-size:15px;line-height:1.9;margin:18px 0}.close{position:absolute;right:12px;top:6px;padding:3px 10px;font-size:28px}.folded{display:flex;flex-direction:column;align-items:center;margin:28px auto 10px;width:165px;min-height:320px;padding:24px 15px;background:linear-gradient(90deg,#e4d6b5 0%,#fff9e8 10%,#fff9e8 48%,#e5d9bf 50%,#fff9e8 53%,#efe4cc 100%);border:1px solid #c9b584;box-shadow:7px 10px 20px #5c422119;color:var(--red);transform:rotate(-3deg);transition:transform .3s}.folded:hover{transform:rotate(0)}.folded>span{font:13px var(--serif);letter-spacing:.3em}.folded>strong{font:37px/1.3 var(--serif);letter-spacing:.1em;margin-top:18px}.folded i{border:1px solid var(--red);font:18px var(--serif);padding:0 5px;margin-top:15px}.folded small{font-size:12px;margin-top:20px;color:var(--ink)}#fortune-paper{position:relative;padding:25px 15px 10px;border-top:2px solid var(--red);margin-top:25px;animation:unfold .65s ease both}.paper-top{font:13px var(--serif);letter-spacing:.2em}#fortune-kanji{display:block;font:60px var(--serif);color:var(--red);margin:20px 0 10px}#fortune-title{font:27px var(--serif)}#fortune-poem{font:21px/1.65 var(--serif);margin:24px 0}#fortune-note{font-size:13px;line-height:1.9;color:var(--muted);padding-bottom:45px}.stamp{position:absolute;right:17px;bottom:110px;border:1px solid var(--red);padding:6px;color:var(--red);font:14px/1.3 var(--serif);transform:rotate(-7deg)}#see-matches{width:100%;font-size:14px;margin-top:24px}@keyframes unfold{from{opacity:0;transform:perspective(700px) rotateX(-20deg) translateY(10px)}to{opacity:1;transform:none}}@keyframes pulse{50%{opacity:.4;transform:scale(1.15)}}
@media(max-width:1380px){.wish-section,.collection,.editorial,.journey,footer,.encounter-section{margin-left:48px;margin-right:48px}.shrine-wrap{height:420px}.wishes{gap:9px}.wish>span{padding:16px 12px;gap:12px;font-size:13px}}
@media(max-width:950px){header{padding:22px 28px}nav{gap:20px}.hero{padding:40px 28px 15px;grid-template-columns:1fr 1fr;gap:0}h1{font-size:46px}.intro{font-size:15px}.shrine-wrap{height:370px}.vertical-note{font-size:12px}.wish-section,.collection,.editorial,.journey,footer,.encounter-section{margin-left:28px;margin-right:28px}.wishes{grid-template-columns:repeat(2,1fr)}.wish>span{font-size:15px}.craft-grid{grid-template-columns:repeat(2,1fr);gap:35px 25px}.matches .craft{display:block}.matches .craft-art{max-width:none}.journey{gap:45px}.primary{font-size:14px;padding:17px 20px}.ring-row .primary{min-width:330px}.section-heading h2{font-size:31px}footer .brand{align-self:flex-start;flex:none}}
@media(max-width:640px){header{padding:19px 20px}.brand>span{font-size:24px}.brand img{width:40px;height:40px}.brand small{font-size:8px}nav{gap:8px}nav>a,nav>button{display:none}.hero{display:flex;flex-direction:column;padding:37px 22px 0;align-items:stretch}.eyebrow{font-size:10px;letter-spacing:.12em}h1{font-size:47px;margin:20px 0 23px}html[lang=ja] h1{font-size:32px}.intro{font-size:16px}.text-link{font-size:12px;margin-top:22px}.side-note{margin-top:20px;font-size:12px}.shrine-wrap{height:345px;margin-top:28px}.vertical-note{right:0;top:25px;font-size:12px}.shrine-caption{font-size:10px;gap:10px}.shrine-caption .caption-seal{font-size:17px}.wish-section,.collection,.editorial,.journey,footer,.encounter-section{margin-left:22px;margin-right:22px}.wish-section{margin-top:36px;padding-top:22px}.step{gap:14px;margin-bottom:20px}.step h2{font-size:26px}.wishes{gap:9px}.wish>span{font-size:13px;min-height:91px;gap:10px;padding:13px 10px;line-height:1.5}.wish b{font-size:25px}.ring-row{display:block;margin-top:22px}.ring-row>p{font-size:14px}.ring-row .primary{min-width:0;width:100%;font-size:15px;padding:17px 15px;gap:10px;margin-top:20px}.ritual-foot{font-size:10px;gap:10px;align-items:baseline}.ritual-foot button{font-size:11px;white-space:nowrap}.editorial{margin-top:50px;margin-bottom:50px;padding:24px 22px;gap:20px;align-items:flex-start}.editorial-kanji{font-size:50px}.editorial p{font-size:25px}.editorial div>span{font-size:12px}.editorial-no{display:none}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:33px}.section-heading>p,.section-heading>a{display:block;margin-top:18px;font-size:14px}.illustration-note{font-size:11px}.craft-grid{grid-template-columns:1fr;gap:36px}.craft-art{max-height:300px}.craft-art svg{max-height:300px}.craft h3{font-size:29px}.craft .description{font-size:15px;min-height:0}.craft-meta{font-size:11px}.craft .kind{font-size:13px}.craft details{font-size:13px}.shop-link{font-size:14px}.shipping-link,.incense-region{font-size:12px}.collection{margin-bottom:50px}.journey{margin-top:50px;margin-bottom:50px;display:block;padding-top:30px}.journey h2{font-size:33px}.journey ol{margin-top:30px}.journey h3{font-size:24px}.journey li p{font-size:15px}.journey li{gap:16px}footer{display:block;padding:28px 0}footer>div{margin-top:27px}footer p{font-size:19px}footer small{font-size:12px}.footer-links{font-size:10px}.encounter-section{padding:22px 18px;margin-top:35px}.matches{grid-template-columns:1fr;gap:35px}.matches .craft-art{max-height:250px}.matches .craft-art svg{max-height:250px}dialog{padding:38px 23px 26px}#fortune-dialog{max-width:430px}.folded{min-height:310px}#fortune-paper{padding:20px 5px 5px}#fortune-poem{font-size:21px}.stamp{right:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
