:root{--washi: #f4efe4;--washi-2: #ebe3d2;--washi-3: #ddd1b9;--sumi: #1d1a17;--sumi-soft: #4d463e;--rule: #c9bca3;--ruri: #1f6fca;--ruri-deep: #1757a6;--ruri-ink: #1a5cab;--kon: #0d1630;--kon-2: #17254a;--hi: #c8262e;--hi-deep: #a11d24;--yamabuki: #f3b33d;--gofun: #fffdf7;--mincho: "Shippori Mincho B1", "BIZ UDPMincho", "Hiragino Mincho ProN", "Yu Mincho", serif;--gothic: "BIZ UDPGothic", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-io: cubic-bezier(.65, 0, .35, 1);--wrap: min(1160px, calc(100% - 32px) );--header-h: 64px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:106.25%;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 12px)}html.font-large{font-size:125%}body{font-family:var(--gothic);color:var(--sumi);background-color:var(--washi);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .3 0 0 0 0 .22 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");line-height:1.95;letter-spacing:.04em;font-feature-settings:"palt" 0;-webkit-font-smoothing:antialiased;overflow-x:clip}[hidden]{display:none!important}img,svg,video{display:block;max-width:100%}a{color:inherit}ul,ol{list-style:none}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--sumi);outline-offset:3px}.sec--night :focus-visible,.sec--hi :focus-visible,.hero :focus-visible,.ph :focus-visible,.menu :focus-visible,.site-footer :focus-visible,.nf :focus-visible,.lb :focus-visible,.place :focus-visible,.map :focus-visible,.site-header:not(.is-solid) :focus-visible,.way:focus-visible{outline-color:var(--yamabuki)}.wrap{width:var(--wrap);margin-inline:auto}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.mincho{font-family:var(--mincho)}.tate{writing-mode:vertical-rl;text-orientation:mixed}.tcy{text-combine-upright:all}.upr{text-orientation:upright}.note{font-size:.86rem;color:var(--sumi-soft)}.ink-link{font-weight:700;color:var(--ruri-ink);text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100% / 100% 1.5px no-repeat;padding-bottom:2px;transition:background-size .5s var(--ease-out)}.ink-link:hover{background-size:0% 1.5px;background-position:100% 100%}.btn{position:relative;display:inline-flex;align-items:center;gap:.8em;min-height:52px;padding:.75em 1.5em .75em 1.6em;font-weight:700;font-size:1rem;text-decoration:none;color:var(--gofun);background:var(--ruri);border:0;cursor:pointer;overflow:hidden;isolation:isolate;transition:color .4s var(--ease-out)}.btn:before{content:"";position:absolute;inset:0;z-index:-1;background:var(--hi);transform:translateY(101%);transition:transform .45s var(--ease-out)}.btn:hover:before,.btn:focus-visible:before{transform:none}.btn .arrow{transition:transform .45s var(--ease-out)}.btn:hover .arrow,.btn:focus-visible .arrow{transform:translate(5px)}.btn--ghost{color:var(--sumi);background:transparent;box-shadow:inset 0 0 0 1.5px var(--sumi)}.btn--ghost:before{background:var(--sumi)}.btn--ghost:hover,.btn--ghost:focus-visible{color:var(--gofun)}.btn--light{color:var(--kon);background:var(--gofun)}.btn--light:before{background:var(--yamabuki)}.sec{position:relative;padding-block:clamp(4.5rem,10vw,8.5rem)}.sec--paper2{background-color:var(--washi-2)}.sec--night{color:var(--gofun);background:radial-gradient(120% 70% at 50% 110%,#24407e 0%,var(--kon-2) 38%,var(--kon) 75%)}.sec--hi{color:var(--gofun);background:var(--hi)}.sec-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2.2rem}@media(min-width:900px){.sec-grid{grid-template-columns:11rem minmax(0,1fr);gap:3.5rem}}html.js .ink-reveal{clip-path:inset(0 0 100% 0);transition:clip-path 1.3s var(--ease-io)}html.js .ink-reveal.is-in{clip-path:inset(0 0 0 0)}html.js .ink-reveal img{transform:scale(1.12);transition:transform 2.2s var(--ease-out)}html.js .ink-reveal.is-in img{transform:none}html.js .rise{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease-out),transform 1.1s var(--ease-out);transition-delay:var(--d, 0s)}html.js .rise.is-in{opacity:1;transform:none}.frame{position:relative;background:var(--washi-3);overflow:hidden}.frame img{width:100%;height:100%;object-fit:cover}.caption{margin-top:.6rem;font-size:.8rem;color:var(--sumi-soft);display:flex;gap:.6em;align-items:baseline}.caption:before{content:"";width:1.6em;height:1px;background:currentColor;transform:translateY(-.3em)}.pending{border:1.5px dashed var(--rule);padding:1.6rem 1.8rem;color:var(--sumi-soft);background:#fffdf780}.pending strong{color:var(--sumi);font-family:var(--mincho);font-size:1.1rem;display:block;margin-bottom:.3rem}html.no-motion *,html.no-motion *:before,html.no-motion *:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;transition-delay:0s!important}html.no-motion .ink-reveal,html.no-motion .rise{clip-path:none!important;opacity:1!important;transform:none!important}html.no-motion .ink-reveal img{transform:none}@media(prefers-reduced-motion:reduce){html:not(.motion-on) *,html:not(.motion-on) *:before,html:not(.motion-on) *:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}html:not(.motion-on) .ink-reveal,html:not(.motion-on) .rise{clip-path:none!important;opacity:1!important;transform:none!important}}@view-transition{navigation:auto}::view-transition-old(root){animation:vt-out .45s var(--ease-io) both}::view-transition-new(root){animation:vt-in .75s var(--ease-out) both}@keyframes vt-out{to{opacity:0;transform:translateY(-2%)}}@keyframes vt-in{0%{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}html.no-motion::view-transition-old(root),html.no-motion::view-transition-new(root){animation:none}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}.skip{position:fixed;left:8px;top:-60px;z-index:1000;background:var(--gofun);color:var(--sumi);padding:.6em 1em;font-weight:700}.skip:focus{top:8px}.draft-ribbon{position:fixed;z-index:400;right:10px;bottom:10px;font-size:.72rem;font-weight:700;letter-spacing:.08em;background:var(--hi);color:var(--gofun);padding:.35em .9em;pointer-events:none}.curtain{position:fixed;inset:0;z-index:500;cursor:pointer;animation:curtain-failsafe 0s 4s forwards}html:not(.has-curtain) .curtain{display:none}@keyframes curtain-failsafe{to{visibility:hidden;pointer-events:none}}html.menu-open{overflow:hidden}.curtain-half{position:absolute;top:0;bottom:0;width:50.5%;background:repeating-linear-gradient(90deg,rgba(0,0,0,.09) 0 2px,transparent 2px 46px),linear-gradient(180deg,var(--ruri),var(--ruri-deep));transition:transform 1.2s var(--ease-io);display:flex;align-items:flex-end}.curtain-l{left:0;transform-origin:left}.curtain-r{right:0;transform-origin:right}.curtain-hem{width:100%}.curtain-mark{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:1.2rem;color:var(--gofun);transition:opacity .4s}.curtain-mark .crest{animation:crest-in 1s var(--ease-out) both}.curtain-name{writing-mode:vertical-rl;font-family:var(--mincho);font-weight:800;font-size:clamp(1.6rem,4.5vw,2.4rem);letter-spacing:.3em;animation:name-in 1s var(--ease-out) .15s both}@keyframes crest-in{0%{opacity:0;transform:rotate(-90deg) scale(.6)}}@keyframes name-in{0%{opacity:0;clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}.curtain.is-open .curtain-l{transform:translate(-100%) skewY(-2deg)}.curtain.is-open .curtain-r{transform:translate(100%) skewY(2deg)}.curtain.is-open .curtain-mark{opacity:0}.crest{color:currentColor;flex:none}.site-header{position:fixed;top:0;left:0;right:0;z-index:300;color:var(--gofun);transition:background-color .5s,color .5s,box-shadow .5s}.site-header.is-solid{color:var(--sumi);background-color:#f4efe4f0;box-shadow:0 1px 0 var(--rule)}@supports (backdrop-filter: blur(8px)){.site-header.is-solid{background-color:#f4efe4d1;backdrop-filter:blur(8px)}}html.menu-open .site-header{color:var(--gofun);background-color:transparent;box-shadow:none;backdrop-filter:none}.hd-inner{width:min(1400px,calc(100% - 28px));margin-inline:auto;height:var(--header-h);display:flex;align-items:center;gap:1.2rem}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;margin-right:auto;min-width:0}.brand .crest{transition:transform 1.2s var(--ease-out)}.brand:hover .crest{transform:rotate(180deg)}.brand-text{display:flex;flex-direction:column;line-height:1.25}.brand-sub{font-size:.66rem;letter-spacing:.3em;opacity:.8}.brand-main{font-family:var(--mincho);font-weight:800;font-size:1.12rem;letter-spacing:.08em;white-space:nowrap}.brand-sub{white-space:nowrap}.hd-quick{display:flex;gap:.2rem}.hd-quick a{position:relative;padding:.4em .75em;text-decoration:none;font-weight:700;font-size:.9rem}.hd-quick a:after{content:"";position:absolute;left:.75em;right:.75em;bottom:.15em;height:2px;background:var(--hi);transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease-out)}.hd-quick a:hover:after,.hd-quick a.is-here:after{transform:scaleX(1);transform-origin:left}.hd-prefs{display:flex;gap:.9rem}.pref{display:flex;align-items:center;gap:.25rem}.pref-label{font-size:.7rem;font-weight:700;opacity:.85;margin-right:.15rem}.pref button{min-height:34px;padding:.15em .65em;font-size:.78rem;font-weight:700;background:transparent;border:1.5px solid currentColor;cursor:pointer;opacity:.75;transition:background-color .3s,color .3s,opacity .3s}.pref button.pref-lg{font-size:.95rem}.pref button[aria-pressed=true]{opacity:1;background:currentColor}.pref button[aria-pressed=true]{color:inherit}.site-header:not(.is-solid) .pref button[aria-pressed=true],.menu .pref button[aria-pressed=true]{background:var(--gofun);color:var(--kon);border-color:var(--gofun)}.site-header.is-solid .pref button[aria-pressed=true]{background:var(--sumi);color:var(--washi);border-color:var(--sumi)}.menu-btn{display:flex;align-items:center;gap:.6rem;min-height:44px;padding:0 .2rem 0 .6rem;background:none;border:0;cursor:pointer;color:inherit;flex-shrink:0;line-height:1}.menu-word{font-family:var(--mincho);font-weight:800;font-size:1.05rem;letter-spacing:.2em;white-space:nowrap}.menu-lines{position:relative;width:30px;height:14px}.menu-lines i{position:absolute;left:0;right:0;height:2px;background:currentColor;transition:transform .5s var(--ease-out),top .5s var(--ease-out),width .5s var(--ease-out)}.menu-lines i:nth-child(1){top:2px}.menu-lines i:nth-child(2){top:10px;width:70%;left:auto}.menu-btn:hover .menu-lines i:nth-child(2){width:100%}.menu-btn[aria-expanded=true] .menu-lines i:nth-child(1){top:6px;transform:rotate(20deg)}.menu-btn[aria-expanded=true] .menu-lines i:nth-child(2){top:6px;width:100%;transform:rotate(-20deg)}@media(max-width:1080px){.hd-prefs{display:none}}@media(max-width:720px){.hd-quick{display:none}.brand-main{font-size:1rem}}@media(max-width:420px){.hd-inner{gap:.6rem}.brand{gap:.45rem}.brand-main{font-size:.95rem;letter-spacing:.02em}.menu-word{letter-spacing:.05em}html.font-large .brand-main{font-size:.8rem}html.font-large .brand-sub{display:none}html.font-large .menu-word{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}@media(max-width:340px){.brand .crest{width:32px;height:32px}.brand-sub{display:none}}.menu{position:fixed;inset:0;z-index:250;color:var(--gofun);overflow-y:auto}.menu[hidden]{display:none}.noren{position:fixed;inset:0;display:flex}.noren span{flex:1;background:linear-gradient(180deg,var(--kon) 0%,#13224a 100%);border-right:1px solid rgba(255,255,255,.05);transform:translateY(-101%);transition:transform .75s var(--ease-io);transition-delay:calc(var(--i) * .05s)}.menu.is-open .noren span{transform:none}.menu:not(.is-open) .noren span{transition-delay:calc((5 - var(--i)) * .04s + .15s)}.menu-body{position:relative;min-height:100%;width:min(1200px,calc(100% - 32px));margin-inline:auto;padding:calc(var(--header-h) + 3vh) 0 2.5rem;display:grid;gap:2.5rem;align-content:space-between}.menu-list{writing-mode:vertical-rl;display:flex;flex-wrap:wrap;gap:.2rem 0;justify-content:flex-start;max-height:70vh}.menu-list li{opacity:0;transform:translateY(-24px);transition:opacity .5s,transform .7s var(--ease-out)}.menu.is-open .menu-list li{opacity:1;transform:none;transition-delay:calc(.35s + var(--i) * 45ms)}.menu-list a{display:flex;align-items:center;gap:.9rem;padding:.8rem .9rem;text-decoration:none;font-family:var(--mincho);font-weight:700;font-size:clamp(1.25rem,2.6vw,2rem);letter-spacing:.18em;position:relative}.menu-list .mn{display:grid;place-items:center;min-width:1.8em;min-height:1.8em;padding:.15em;font-size:.55em;border:1.5px solid currentColor;letter-spacing:0;transition:background-color .3s,color .3s,border-color .3s}.menu-list a:after{content:"";position:absolute;top:3.2rem;bottom:.8rem;right:.35rem;width:2px;background:var(--hi);transform:scaleY(0);transform-origin:top;transition:transform .5s var(--ease-out)}.menu-list a:hover:after,.menu-list a.is-here:after{transform:scaleY(1)}.menu-list a:hover .mn,.menu-list a.is-here .mn{background:var(--hi);border-color:var(--hi)}.menu-foot{display:flex;flex-wrap:wrap;gap:1.2rem 2rem;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.2);padding-top:1.4rem;opacity:0;transition:opacity .5s}.menu.is-open .menu-foot{opacity:1;transition-delay:.7s}.menu-prefs{display:flex;gap:1.2rem;flex-wrap:wrap}.menu-tel{font-family:var(--mincho);font-weight:800;font-size:1.5rem;text-decoration:none;display:flex;flex-direction:column;line-height:1.3}.menu-tel span{font-family:var(--gothic);font-size:.75rem;font-weight:700;opacity:.8}@media(max-width:720px){.menu-list{writing-mode:horizontal-tb;max-height:none;display:grid;grid-template-columns:1fr 1fr;gap:0}.menu-list li{transform:translate(-16px)}.menu-list a{padding:.75rem .3rem;font-size:1.15rem;letter-spacing:.08em;gap:.6rem}.menu-list a:after{top:auto;bottom:.35rem;left:.3rem;right:.3rem;width:auto;height:2px;transform:scaleX(0);transform-origin:left}.menu-list a:hover:after,.menu-list a.is-here:after{transform:scaleX(1)}}.site-footer{color:var(--gofun)}.ft-sky{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--kon) 0%,#111d3e 100%);padding:8.5rem 0 1.5rem}.ft-sky .garland{--gh: 92px;top:6px}.ft-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.16)}@media(min-width:860px){.ft-grid{grid-template-columns:1fr 1.4fr}}.ft-name{font-family:var(--mincho);font-weight:800;font-size:1.6rem;letter-spacing:.1em;margin-top:1rem}.ft-area,.ft-place{font-size:.88rem;opacity:.82}.ft-tel{display:inline-flex;flex-direction:column;margin-top:1.2rem;text-decoration:none;font-family:var(--mincho);font-weight:800;font-size:1.7rem;line-height:1.3;border-left:3px solid var(--hi);padding-left:.8rem}.ft-tel small{font-family:var(--gothic);font-size:.72rem;font-weight:700;opacity:.8}.ft-nav ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.1rem 1.5rem}.ft-nav a{display:flex;gap:.8em;align-items:baseline;padding:.45em 0;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.1);transition:color .3s,padding-left .4s var(--ease-out)}.ft-nav a span{font-family:var(--mincho);font-size:.8rem;opacity:.6;min-width:1.4em}.ft-nav a:hover{padding-left:.4em;color:var(--yamabuki)}.ft-copy{position:relative;text-align:center;font-size:.75rem;opacity:.6;padding-top:1.4rem}
