:root{--paper:#f7f5ef;--ink:#292b27;--muted:#6e7068;--line:#d9d8cd;--accent:#a54330;--wash:#eeece3;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.9}a{color:inherit;text-decoration:none}a:hover{text-underline-offset:5px;text-decoration:underline}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.65}h1{letter-spacing:.07em;font-size:clamp(30px,4vw,46px)}h2{letter-spacing:.06em;font-size:25px}h3{letter-spacing:.035em;font-size:22px}p,dd,h1,h2,h3,a{overflow-wrap:anywhere}ul{margin:0;padding:0;list-style:none}dl,dd{margin:0}.wrap{width:calc(100% - 112px);max-width:1176px;margin-inline:auto}.eyebrow{letter-spacing:.12em;color:var(--muted);font-size:11px;font-weight:600;line-height:1.8}.accent{color:var(--accent)}.dot{color:#9a9a90;padding:0 12px}.skip-link{background:var(--paper);z-index:1000;padding:8px 16px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:8px}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:108px;display:flex}.brand{font-family:var(--serif);letter-spacing:.14em;white-space:nowrap;align-items:center;gap:13px;font-size:29px;font-weight:600;display:flex}.brand-seal{font-family:var(--serif);text-align:center;letter-spacing:0;border:1px solid var(--accent);width:32px;height:36px;color:var(--accent);border-radius:2px;font-size:23px;line-height:32px;transform:rotate(-3deg)}.site-header nav{align-items:center;gap:30px;font-size:13px;display:flex}.site-header nav a{padding:8px 0}.site-header nav [aria-current=page]{color:var(--accent);text-underline-offset:9px;text-decoration:underline}.intro{justify-content:space-between;align-items:flex-end;gap:30px;padding:62px 0 55px;display:flex}.intro h1{margin:13px 0 16px;font-size:clamp(32px,4vw,44px)}.intro-copy{color:var(--muted);font-size:14px;line-height:2}.mobile-break{display:none}.counts{gap:42px;padding:0 8px 8px 20px;display:flex}.counts div+div{border-left:1px solid var(--line);padding-left:36px}.counts dt{color:var(--muted);letter-spacing:.1em;font-size:11px}.counts dd{font-family:Georgia,var(--serif);font-size:52px;font-weight:400;line-height:1.5}.counts small{font-family:var(--sans);margin-left:12px;font-size:12px}.section{margin:0 0 64px}.section-heading{border-top:1px solid var(--ink);justify-content:space-between;align-items:baseline;gap:16px;padding:22px 0;display:flex}.section-heading h2{font-size:23px}.recent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 32px;display:grid}.visit-card{min-width:0}.visit-card.featured{grid-column:1/-1;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:center;gap:42px;display:grid}.visit-photo-link{background:var(--wash);display:block;overflow:hidden}.visit-photo-link img{aspect-ratio:3/2;object-fit:cover;width:100%;transition:transform .35s}.visit-photo-link:hover img{transform:scale(1.015)}.visit-card-copy{padding:22px 0 4px}.featured .visit-card-copy{padding:12px 18px 12px 0}.visit-card h3{margin:12px 0}.featured h3{font-size:29px}.personal-comment{font-family:var(--serif);white-space:pre-wrap;letter-spacing:.025em;font-size:21px;line-height:2.1}.featured .personal-comment{margin:24px 0;font-size:23px}.text-link{letter-spacing:.06em;border-bottom:1px solid var(--line);padding:8px 0;font-size:12px;display:inline-block}.text-link span{margin-left:18px}.visit-card .text-link{margin-top:18px}.ordered{color:var(--muted);font-size:13px}.photo-absent{aspect-ratio:3/2;background:var(--wash);color:#75786c;font-family:var(--serif);letter-spacing:.18em;border:1px solid #e4e1d5;flex-direction:column;justify-content:center;align-items:center;gap:9px;display:flex;position:relative}.photo-absent:before,.photo-absent:after{content:"";pointer-events:none;border-top:1px solid #d7d8cb;border-bottom:1px solid #d7d8cb;position:absolute;inset:18px}.photo-absent:after{border-color:#e2e1d8;inset:22px}.photo-absent small{font-family:var(--sans);letter-spacing:.1em;color:#797b70;font-size:10px}.bowl{border:1px solid #8b927f;border-radius:2px 2px 28px 28px;width:56px;height:24px;margin-bottom:20px;display:block;position:relative}.bowl:before{content:"";border-top:1px solid #8b927f;width:58px;position:absolute;top:-7px;left:3px;transform:rotate(-9deg)}.bowl:after{content:"";border-top:2px solid #8b927f;width:21px;position:absolute;bottom:-6px;left:17px}.bowl i{border-top:1px solid #8b927f;width:58px;position:absolute;top:-12px;left:2px;transform:rotate(-9deg)}.explore{grid-template-columns:1fr 1fr;gap:54px;display:grid}.quiet-copy{color:var(--muted);font-size:13px;line-height:2}.explore .quiet-copy{padding:12px 0}.map-invitation{background:#eeeee5;border:1px solid #ddded2;align-self:stretch;align-items:center;gap:28px;padding:28px;display:flex;position:relative;overflow:hidden}.map-invitation h2{margin:5px 0;font-size:23px}.map-invitation h2 span{font-family:var(--sans);color:var(--accent);margin-left:20px}.map-invitation p{color:var(--muted);font-size:12px}.map-art{opacity:.85;flex-shrink:0;width:94px;height:100px;position:relative;overflow:hidden}.map-line{background:#d2d5c8;width:3px;height:150px;position:absolute;top:-30px;left:40px;transform:rotate(35deg)}.map-line.two{left:12px;transform:rotate(-57deg)}.map-line.three{left:84px;transform:rotate(-57deg)}.map-dot{z-index:1;border:4px solid var(--accent);border-radius:50%;width:14px;height:14px;position:absolute;top:42px;left:41px;box-shadow:0 0 0 7px #eeeee5}.area-list li{border-bottom:1px solid var(--line)}.area-list a{font-family:var(--serif);justify-content:space-between;align-items:center;padding:12px 0;font-size:20px;display:flex}.area-list small{font-family:var(--sans);color:var(--muted);font-size:10px;display:block}.area-list a>span+span{font-family:var(--sans);color:var(--muted);font-size:12px}.area-list b{color:var(--accent);margin-left:20px}.return-list li{border-bottom:1px solid var(--line);align-items:center;gap:24px;padding:20px 0;display:flex}.record-number{color:var(--accent);font-family:Georgia,serif;font-size:14px}.return-list a{flex:1}.return-list small{color:var(--muted);font-size:11px}.return-list h3{font-size:20px}.return-mark{color:var(--accent);padding:0 10px;font-size:22px}.closing-note{font-family:var(--serif);color:var(--muted);letter-spacing:.08em;justify-content:center;align-items:center;gap:30px;padding:36px 0 70px;font-size:16px;display:flex}.closing-note span{white-space:nowrap;font-size:13px}.site-footer{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:24px;padding:30px 0 45px;font-size:11px;display:flex}.footer-brand{font-family:var(--serif);letter-spacing:.1em;color:var(--ink);font-size:21px}.site-footer>a:last-child{margin-left:auto}.breadcrumbs{color:var(--muted);flex-wrap:wrap;gap:12px;padding-top:25px;font-size:11px;display:flex}.page-heading{padding:47px 0 42px}.page-heading h1{margin:9px 0 15px}.page-heading>.text-link{margin-top:12px}.inline-count{color:var(--ink);margin-left:8px;font-family:Georgia,serif;font-size:20px}.history-nav{border-block:1px solid var(--line);flex-wrap:wrap;gap:10px 24px;margin-bottom:32px;padding:14px 0;font-size:12px;display:flex}.visit-detail{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:46px;margin-bottom:40px;padding:0 0 50px;display:grid}.visit-detail-copy{min-width:0}.visit-detail-copy h2{font-family:Georgia,var(--serif);margin:8px 0 20px;font-size:27px}.visit-gallery{flex-direction:column;gap:20px;min-width:0;display:flex}.visit-gallery img{width:100%;height:auto}.detail-comment{margin:27px 0;font-size:24px}.order-line{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding-bottom:15px;font-size:14px;display:flex}.return-note{color:var(--accent);margin-bottom:24px;font-size:11px}.observations{margin-top:36px}.observations h3{font-family:var(--sans);letter-spacing:.06em;margin-bottom:15px;font-size:12px}.observations dl>div{border-top:1px solid var(--line);grid-template-columns:65px minmax(0,1fr);gap:15px;padding:14px 0;font-size:12px;display:grid}.observations dt{color:var(--muted)}.visit-notice{background:var(--wash);margin:0 0 50px;padding:23px 28px}.visit-notice p{color:var(--muted);margin-top:7px;font-size:12px;line-height:2}.simple-shop-list li{border-bottom:1px solid var(--line)}.simple-shop-list a{font-family:var(--serif);justify-content:space-between;gap:24px;padding:20px 0;font-size:19px;display:flex}.simple-shop-list small{font-family:var(--sans);color:var(--muted);font-size:11px;display:block}.back-link{margin:0 0 60px;padding:8px 0;font-size:12px;display:inline-block}.area-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 30px;margin-bottom:60px;display:grid}.about-lead{font-family:var(--serif);color:var(--muted);margin-top:24px;font-size:24px}.about-content{max-width:680px;margin-left:14%;padding:0 0 90px}.about-content>p{margin-bottom:26px;font-size:15px;line-height:2.3}.about-sign{border-top:1px solid var(--line);font-family:var(--serif);margin-top:50px;padding-top:30px;font-size:19px}.about-sign span{letter-spacing:.1em;margin-top:12px;font-size:24px;display:block}.empty-note{background:var(--wash);text-align:center;padding:60px 30px}.empty-note p{color:var(--muted);margin-top:12px;font-size:13px}.map-frame{border:1px solid var(--line);background:var(--wash);margin-bottom:18px;overflow:hidden}.empty-map{text-align:center;background:repeating-linear-gradient(0deg,transparent,transparent 39px,#e3e4d933px,#e3e4d9 40px),repeating-linear-gradient(90deg,transparent,transparent 39px,#e3e4d9 39px,#e3e4d9 40px);flex-direction:column;justify-content:center;align-items:center;min-height:420px;padding:30px 22px;display:flex}.empty-map h2{margin:6px 0 18px;font-size:27px}.empty-map p{color:var(--muted);font-size:12px;line-height:2.2}.empty-map .text-link{margin-top:16px}.map-empty-mark{color:var(--accent);margin-bottom:10px;font-size:26px}.map-attribution{font-family:var(--sans);text-align:right;color:var(--muted);background:var(--paper);padding:7px 12px;font-size:10px}.map-attribution a{text-decoration:underline}#shop-map{isolation:isolate;height:520px}#map-status{margin-bottom:40px}.map-shop-list{margin-bottom:70px}.shop-pin{background:var(--accent);border:3px solid var(--paper);border-radius:50%;place-items:center;display:grid;box-shadow:0 2px 8px #292b2740}.shop-pin span{background:var(--paper);border-radius:50%;width:6px;height:6px}.leaflet-container{font-family:var(--sans)!important}.leaflet-popup-content a{font-family:var(--serif);color:var(--accent);font-size:15px}.leaflet-popup-content{max-width:230px}@media (width>=1400px){.intro{padding-top:72px;padding-bottom:62px}}@media (width<=900px){.wrap{width:calc(100% - 64px)}.site-header nav{gap:20px}.featured h3{font-size:24px}.visit-card.featured{gap:28px}.featured .personal-comment{font-size:20px}.counts{gap:22px}.counts div+div{padding-left:24px}.explore{gap:28px}.map-invitation{gap:16px;padding:20px}.map-art{width:65px}.map-invitation h2{font-size:19px}.map-invitation h2 span{margin-left:8px}.visit-detail{gap:28px}.detail-comment{font-size:21px}}@media (width<=640px){body{font-size:14px}.wrap{width:calc(100% - 40px)}.site-header{gap:12px;min-height:85px}.brand{letter-spacing:.1em;gap:8px;font-size:25px}.brand-seal{width:25px;height:29px;font-size:19px;line-height:26px}.site-header nav{gap:14px;font-size:11px}.site-header nav a:last-child{max-width:60px;line-height:1.55}.intro{padding:36px 0 34px;display:block}.intro h1{margin:12px 0 15px;font-size:34px;line-height:1.6}.mobile-break{display:inline}.intro-copy{font-size:12px;line-height:2.05}.counts{gap:29px;margin-top:25px;padding:0}.counts div{align-items:baseline;gap:14px;display:flex}.counts div+div{padding-left:29px}.counts dt{font-size:10px}.counts dd{font-size:32px}.counts small{margin-left:7px;font-size:10px}.section{margin-bottom:40px}.section-heading{align-items:center;gap:8px;padding:18px 0}.section-heading h2{font-size:20px}.section-heading>.eyebrow{letter-spacing:.07em;font-size:8px}.recent-grid{grid-template-columns:minmax(0,1fr);gap:30px}.visit-card.featured{display:block}.featured .visit-card-copy,.visit-card-copy{padding:21px 0 4px}.visit-card h3,.featured h3{margin:9px 0 14px;font-size:24px}.featured .personal-comment,.personal-comment{margin:16px 0;font-size:20px;line-height:2}.visit-card .text-link{margin-top:8px}.photo-absent{aspect-ratio:4/3}.eyebrow{font-size:10px}.explore{grid-template-columns:minmax(0,1fr);gap:30px}.map-invitation{gap:29px;min-height:145px;padding:22px 30px}.map-art{width:80px;height:90px}.map-invitation h2{font-size:21px}.return-list li{gap:18px;padding:18px 0}.return-list h3{font-size:19px}.return-list small{font-size:10px}.closing-note{gap:14px;padding:20px 0 45px;font-size:13px}.closing-note span{font-size:11px}.site-footer{flex-wrap:wrap;gap:4px 18px;padding:25px 0 30px}.site-footer p{font-size:10px}.site-footer>a:last-child{flex-basis:100%;margin:8px 0 0;font-size:10px}.footer-brand{font-size:19px}.page-heading{padding:30px 0 28px}.page-heading h1{margin:8px 0 12px;font-size:30px;line-height:1.7}.breadcrumbs{padding-top:22px;font-size:10px}.visit-detail{grid-template-columns:minmax(0,1fr);gap:27px;margin-bottom:30px;padding-bottom:30px}.visit-detail-copy h2{margin:8px 0 15px;font-size:25px}.detail-comment{margin:23px 0;font-size:22px}.observations{margin-top:27px}.observations dl>div{grid-template-columns:60px minmax(0,1fr);gap:12px}.visit-notice{margin-bottom:34px;padding:20px}.visit-notice p{font-size:11px}.area-grid{grid-template-columns:minmax(0,1fr);gap:32px;margin-bottom:35px}.about-lead{margin-top:23px;font-size:21px}.about-content{margin:0;padding-bottom:55px}.about-content>p{margin-bottom:23px;font-size:14px;line-height:2.2}.about-sign{margin-top:32px;padding-top:22px;font-size:16px}.about-sign span{font-size:21px}.empty-map{min-height:385px}.empty-map h2{font-size:24px}.empty-map p{font-size:11px}.map-attribution{padding:6px 8px;font-size:9px}#shop-map{height:420px}.map-shop-list{margin-bottom:45px}.simple-shop-list a{font-size:18px}.back-link{margin-bottom:40px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
