@layer reset{*,:before,:after{box-sizing:border-box}:where(:root){text-spacing-trim:trim-start;text-autospace:normal;line-break:strict;overflow-wrap:anywhere;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scrollbar-gutter:stable;-webkit-tap-highlight-color:transparent;font-family:sans-serif;line-height:1.5}:where(body){min-block-size:100dvb;margin:unset}:where(:is(h1,h2,h3,h4,h5,h6):lang(en)){text-wrap:pretty}:where(h1){margin-block:.67em;font-size:2em}:where(h2,h3,h4,h5,h6){margin-block:unset}:where(search){display:block}:where(p,blockquote,figure,pre,address,ul,ol,dl,menu){margin-block:unset}:where(blockquote,figure){margin-inline:unset}:where(p:lang(en)){text-wrap:pretty}:where(address:lang(ja)){font-style:unset}:where(ul,ol,menu){padding-inline-start:unset;list-style-type:""}:where(dt){font-weight:bolder}:where(dd){margin-inline-start:unset}:where(pre){text-spacing-trim:space-all;text-autospace:no-autospace}@media print{:where(pre){text-wrap-mode:unset}}:where(em:lang(ja)){font-weight:bolder}:where(:is(i,cite,em,dfn):lang(ja)){font-style:unset}:where(u,s,del,ins){text-decoration-inset:auto}:where(code,kbd,samp){font-feature-settings:initial;font-variation-settings:initial;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:unset;font-variant-ligatures:none}:where(abbr[title]){text-decoration-inset:auto;cursor:help;text-decoration-line:underline;text-decoration-style:dotted}:where(time){text-autospace:no-autospace}@media (forced-colors:active){:where(mark){color:highlighttext;background-color:highlight}}@media print{:where(mark){border-style:dotted;border-width:1px}}:where(a){color:unset}:where(a:any-link){-webkit-text-decoration-line:unset;text-decoration-line:unset;text-decoration-inset:auto;text-decoration-thickness:from-font}:where(img,svg,picture,video,audio,canvas,model,iframe,embed,object){vertical-align:bottom;max-inline-size:100%}:where(img,svg,picture,video,canvas,model,iframe,embed,object){block-size:auto}:where(iframe){border:unset}:where(table){border-collapse:collapse}:where(caption,th){text-align:unset}:where(caption:lang(en)){text-wrap:pretty}:where(button,input,select,textarea){border-style:solid;border-width:1px;border-color:unset;border-radius:unset;color:unset;font:unset;letter-spacing:unset;text-align:unset}::file-selector-button{border-style:solid;border-width:1px;border-color:unset;border-radius:unset;color:unset;font:unset;letter-spacing:unset;text-align:unset}:where(input:is([type=radio i],[type=checkbox i])){margin:unset}:where(input[type=file i]){border:unset}:where(input[type=search i]){-webkit-appearance:textfield}@supports (-webkit-touch-callout:none){:where(input[type=search i]){background-color:canvas}}:where(input:is([type=tel i],[type=url i],[type=email i],[type=number i]):not(:placeholder-shown)){direction:ltr}:where(textarea){margin-block:unset;resize:block}:where(input:not([type=button i],[type=submit i],[type=reset i]),textarea,[contenteditable]){text-autospace:no-autospace}:where(button,input:is([type=button i],[type=submit i],[type=reset i])){background-color:unset}::file-selector-button{background-color:unset}:where(button,input:is([type=button i],[type=submit i],[type=reset i]),[role=tab i],[role=button i],[role=option i]){touch-action:manipulation}::file-selector-button{touch-action:manipulation}:where(button:enabled,label[for],select:enabled,input:is([type=button i],[type=submit i],[type=reset i],[type=radio i],[type=checkbox i]):enabled,[role=tab i],[role=button i],[role=option i]){cursor:pointer}:where(:enabled)::file-selector-button{cursor:pointer}:where(fieldset){min-inline-size:0;margin-inline:unset;padding:unset;border:unset}:where(legend){padding-inline:unset}:where(progress){vertical-align:unset}::placeholder{opacity:unset}:where(summary){cursor:pointer;list-style-type:""}:where(summary)::-webkit-details-marker{display:none}:where(dialog,[popover]){overscroll-behavior-block:contain;padding:unset;border:unset}:where(dialog:not([open],[popover]),[popover]:not(:popover-open)){display:none!important}:where(dialog){max-inline-size:unset;max-block-size:unset}:where(dialog)::backdrop{background-color:oklch(0% 0 0/.3)}:where([popover]){margin:unset}:where(:focus-visible){outline-offset:3px}[tabindex="-1"]:focus{outline:none!important}:where(:disabled,[aria-disabled=true i]){cursor:default}[hidden]:not([hidden=until-found i]){display:none!important}}@layer base{:root{--color-fg:#45494b;--color-bg:#f3f5f6;--color-yellow:#eea81d;--color-blue:#2f9499;font-size:clamp(1rem,4.167vw,2rem)}@media (width>=768px){:root{font-size:clamp(1rem,2.963vw,2rem)}}body{letter-spacing:.16em;color:var(--color-fg);font-family:Lato,Sawarabi Gothic,Noto Sans JP,sans-serif;line-height:1.5}h1,h2,h3,h4,h5,h6{margin:0;font-weight:400}.main{background-color:var(--color-bg);display:grid}turbo-frame{display:contents}}@layer components{.container{inline-size:100%;max-inline-size:1080px;margin-inline:auto;padding-inline:1rem}@media (width>=768px){.container{padding-inline:2rem}}.header{z-index:1000;inline-size:100%;padding-block-start:1rem;padding-inline:1rem;position:fixed;top:0;left:0}.header .nav{max-width:fit-content;display:none}@media (width>=768px){.header .nav{background-color:hsla(from var(--color-bg) h s l / 80%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--color-fg);padding-block:.75rem;padding-inline:2rem;font-size:.5rem;display:block}}.header .nav ul{justify-content:center;display:flex}.header .nav ul li+li:before{content:"/";color:var(--color-fg);margin-inline:.5rem}.hero{display:grid;position:relative}.hero .main-visual{margin-inline:-1rem;position:relative}@media (width>=768px){.hero .main-visual{margin-inline:-2rem}}.hero:before{content:"";background:linear-gradient(to bottom, hsla(from var(--color-bg) h s l / 0%) 0%, hsla(from var(--color-bg) h s l / 0%) 60%, hsla(from var(--color-bg) h s l / 80%) 75%, hsla(from var(--color-bg) h s l / 100%) 98%, hsla(from var(--color-bg) h s l / 100%));z-index:1;pointer-events:none;block-size:calc(100% + 2px);position:absolute;inset-block-start:0;inset-inline:0}.hero-status{letter-spacing:.1em;text-align:center;border-radius:.125rem;max-inline-size:560px;margin-block:1.5rem;margin-inline:auto;padding:.75rem 1rem;font-size:.75rem}.hero-status[data-status-type=sold-out]{color:#c0392b;background-color:#eb47471a;border:.0125rem solid #eb474759}.hero-status[data-status-type=partial-sold-out],.hero-status[data-status-type=notice]{background-color:hsla(from var(--color-fg) h s l / 6%);color:var(--color-fg);border:.0125rem solid hsla(from var(--color-fg) h s l / 20%)}.hero-status[data-status-type=notice] a{margin-block-start:.25rem;text-decoration:underline;display:inline-block}@media (width>=768px){.hero-status{font-size:.5rem}}.section-header{letter-spacing:.5em;text-indent:.5em}.section-header .sub{text-transform:uppercase;color:hsla(from var(--color-fg) h s l / 60%);font-size:.75rem}.section-header .sub:before,.section-header .sub:after{content:"//"}.section-header .sub:before{margin-inline-end:.5rem}.section-header .sub:after{margin-inline-start:.5rem}@media (width>=768px){.section-header .sub{font-size:.55rem}}.section-header .heading{margin-block-start:.25rem;font-size:1.25rem;line-height:1.65;transform:rotate(-1deg)translateY(.25em)}.section-header .heading.reverse{transform:rotate(1deg)translateY(.25em)}@media (width>=768px){.section-header .heading{font-size:.875rem}}.section-header .heading span{background-color:var(--color-fg);color:var(--color-bg);margin-block-start:-.25em;padding-block:0;padding-inline:.25em;display:inline-block;overflow:hidden}.section-header .heading span:first-child{margin-block-start:0}.content-text{font-size:.75rem;line-height:2}@media (width>=768px){.content-text{font-size:.5rem}}.content-text p+p{margin-block-start:.75em}.landscape img{object-fit:cover;aspect-ratio:2;inline-size:100%}.concept{z-index:1;margin-block-start:-6rem;padding-block-end:6rem;position:relative}.concept .teaser iframe{aspect-ratio:16/9;block-size:auto;inline-size:100%}.concept .grid{gap:2rem;margin-block-start:4rem;display:grid}@media (width>=768px){.concept .grid{grid-template-columns:minmax(0,6fr) minmax(0,7fr)}}@media (width>=768px){.concept .content{margin-block-start:2.5rem}}.concept .content .section-header{text-align:center}@media (width>=768px){.concept .content .section-header{text-align:start}}.concept .content .content-text{text-align:center;margin-block-start:1rem}@media (width>=768px){.concept .content .content-text{text-align:start}}.concept .image img{aspect-ratio:3/2;object-fit:cover;inline-size:100%}@media (width>=768px){.concept .image img{aspect-ratio:4/5}}.food{background-color:hsla(from var(--color-yellow) h s l / 40%);padding-block:6rem;overflow:hidden}.food .section-header .heading{color:var(--color-fg)}.food header .content-text{margin-block-start:1rem}.food .grid{gap:2rem;margin-block-start:3rem;display:grid;position:relative}@media (width>=768px){.food .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.food .grid>img{opacity:.15;block-size:auto;inline-size:8rem;position:absolute;inset-block-start:42%;inset-inline-end:-4%;transform:rotate(8deg)}@media (width>=768px){.food .grid>img{opacity:.1;inline-size:5rem;inset-block-start:-6%}}.food .grid.reverse>img{inset-inline:-4% auto;transform:rotate(-8deg)}@media (width>=768px){.food .grid.reverse .content{order:1}}@media (width>=768px){.food .grid.reverse .image{order:2}}.food .grid .image img{object-fit:cover;aspect-ratio:3/2;inline-size:100%}@media (width>=768px){.food .grid .content{margin-block-start:1rem}}.food .grid .content h3{font-size:1rem}@media (width>=768px){.food .grid .content h3{font-size:.75rem}}.food .grid .content p{margin-block-start:.5rem;font-size:.75rem;line-height:2}@media (width>=768px){.food .grid .content p{font-size:.5rem}}.food .notes{background-color:var(--color-bg);border:.0125rem dashed var(--color-fg);color:hsla(from var(--color-fg) h s l / 80%);margin-block-start:3rem;padding:.75rem;font-size:.625rem;line-height:1.8}@media (width>=768px){.food .notes{font-size:.5rem}}.food .notes small{margin-block-start:.75em;display:block}.food .wide-image{margin-block-start:2rem}.food .wide-image img{object-fit:cover;inline-size:100%}.reading{padding-block:6rem}.reading .section-header{text-align:center}.reading .reading-lead{text-align:center;margin-block-start:1.5rem}.reading .reading-readers{gap:2rem;margin-block-start:3rem;display:grid}.reading .reading-reader-card{grid-template-columns:6rem 1fr;align-items:start;gap:1.5rem;display:grid}@media (width>=768px){.reading .reading-reader-card{grid-template-columns:4rem 1fr;gap:1rem}}.reading .reading-reader-portrait img{aspect-ratio:1;object-fit:cover;border-radius:50%;inline-size:100%}.reading .reading-reader-role{color:hsla(from var(--color-fg) h s l / 60%);letter-spacing:.2em;font-size:.625rem}@media (width>=768px){.reading .reading-reader-role{font-size:.45rem}}.reading .reading-reader-name{letter-spacing:.2em;margin-block-start:.25rem;font-size:1rem}@media (width>=768px){.reading .reading-reader-name{font-size:.7rem}}.reading .reading-reader-works{color:hsla(from var(--color-fg) h s l / 80%);margin-block-start:.75rem;padding-inline-start:1em;font-size:.625rem;line-height:1.65;list-style:outside}@media (width>=768px){.reading .reading-reader-works{font-size:.45rem}}.reading .reading-reader-profile{color:hsla(from var(--color-fg) h s l / 80%);margin-block-start:.5rem;font-size:.625rem;line-height:1.65}@media (width>=768px){.reading .reading-reader-profile{font-size:.45rem}}.information{background-color:hsla(from var(--color-blue) h s l / 15%);padding-block:6rem;overflow:hidden}.information .information-inner{position:relative}.information .information-deco{opacity:.1;block-size:auto;inline-size:8rem;position:absolute;inset-block-start:0;inset-inline-end:-2%;transform:rotate(12deg)}@media (width>=768px){.information .information-deco{inline-size:5rem;inset-block-start:-10%}}.information .section-header .heading{color:var(--color-fg)}.information .information-list{border-block-start:.0125rem solid hsla(from var(--color-fg) h s l / 20%);gap:0;margin-block-start:2.5rem;display:grid}.information .information-item{border-block-end:.0125rem solid hsla(from var(--color-fg) h s l / 20%);grid-template-columns:5em 1fr;gap:1rem;padding-block:1rem;font-size:.75rem;line-height:1.8;display:grid}@media (width>=768px){.information .information-item{grid-template-columns:4em 1fr;font-size:.5rem}}.information .information-item dt{color:hsla(from var(--color-fg) h s l / 60%);padding-block-start:.1em;font-size:.625rem}@media (width>=768px){.information .information-item dt{font-size:.45rem}}.information .information-item small{color:hsla(from var(--color-fg) h s l / 70%);font-size:.85em}.information .information-map{aspect-ratio:16/9;border-radius:.25rem;max-block-size:480px;margin-block-start:2.5rem;overflow:hidden}.information .information-map iframe{border:0;block-size:100%;inline-size:100%;display:block}.reservation{padding-block:6rem}.reservation .section-header{text-align:center}.reservation .reservation-lead{text-align:center;margin-block-start:1.5rem}.reservation .reservation-status{text-align:center;border-radius:.25rem;margin-block-start:2rem;padding:1rem;font-size:.75rem;line-height:1.8}.reservation .reservation-status[data-status-type=success]{background-color:hsla(from var(--color-blue) h s l / 20%);color:var(--color-blue)}.reservation .reservation-status[data-status-type=error]{color:#c0392b;background-color:#eb47471a}@media (width>=768px){.reservation .reservation-status{font-size:.5rem}}.reservation .reservation-form{gap:1.5rem;max-inline-size:560px;margin-block-start:2.5rem;margin-inline:auto;display:grid}@media (width>=768px){.reservation .reservation-form{gap:1rem}}.reservation .form-field{gap:.5rem;display:grid}.reservation .form-field label{letter-spacing:.1em;font-size:.75rem}@media (width>=768px){.reservation .form-field label{font-size:.5rem}}.reservation .form-field .required{color:#c0392b;margin-inline-start:.25em;font-size:.625rem}@media (width>=768px){.reservation .form-field .required{font-size:.45rem}}.reservation .form-field .optional{color:hsla(from var(--color-fg) h s l / 60%);margin-inline-start:.25em;font-size:.625rem}@media (width>=768px){.reservation .form-field .optional{font-size:.45rem}}.reservation .form-field input,.reservation .form-field select,.reservation .form-field textarea{border:.0125rem solid hsla(from var(--color-fg) h s l / 30%);inline-size:100%;color:var(--color-fg);letter-spacing:.05em;appearance:none;background-color:#fff;border-radius:.125rem;padding:.625rem .75rem;font-family:inherit;font-size:.75rem}:is(.reservation .form-field input,.reservation .form-field select,.reservation .form-field textarea):focus-visible{outline:.1rem solid var(--color-blue);outline-offset:0}@media (width>=768px){.reservation .form-field input,.reservation .form-field select,.reservation .form-field textarea{padding:.5rem .625rem;font-size:.5rem}}.reservation .form-field textarea{resize:vertical}.reservation .form-field.form-field--radio-group .form-field-label{letter-spacing:.1em;font-size:.75rem}@media (width>=768px){.reservation .form-field.form-field--radio-group .form-field-label{font-size:.5rem}}.reservation .form-field.form-field--radio-group .radio-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.reservation .form-field.form-field--radio-group .radio-card{border:.0125rem solid hsla(from var(--color-fg) h s l / 30%);cursor:pointer;background-color:#fff;border-radius:.125rem;grid-template-columns:auto 1fr;align-items:center;gap:.75rem;padding:.75rem .875rem;transition:border-color .15s,background-color .15s;display:grid;position:relative}.reservation .form-field.form-field--radio-group .radio-card:has(input:checked){border-color:var(--color-blue);background-color:hsla(from var(--color-blue) h s l / 6%)}.reservation .form-field.form-field--radio-group .radio-card.radio-card--disabled{cursor:not-allowed;opacity:.55;background-color:hsla(from var(--color-fg) h s l / 4%)}.reservation .form-field.form-field--radio-group input[type=radio]{border:.0125rem solid hsla(from var(--color-fg) h s l / 50%);aspect-ratio:1;block-size:1rem;inline-size:1rem;cursor:inherit;background-color:#fff;border-radius:50%;flex-shrink:0;padding:0;position:relative}.reservation .form-field.form-field--radio-group input[type=radio]:checked{border-color:var(--color-blue)}.reservation .form-field.form-field--radio-group input[type=radio]:checked:after{content:"";background-color:var(--color-blue);border-radius:50%;position:absolute;inset:.2rem}.reservation .form-field.form-field--radio-group input[type=radio]:disabled{cursor:not-allowed}.reservation .form-field.form-field--radio-group .radio-card-body{gap:.15rem;display:grid}.reservation .form-field.form-field--radio-group .radio-card-title{letter-spacing:.08em;font-size:.75rem}@media (width>=768px){.reservation .form-field.form-field--radio-group .radio-card-title{font-size:.55rem}}.reservation .form-field.form-field--radio-group .radio-card-desc{color:hsla(from var(--color-fg) h s l / 60%);font-size:.6875rem}@media (width>=768px){.reservation .form-field.form-field--radio-group .radio-card-desc{font-size:.45rem}}.reservation .form-field.form-field--radio-group .radio-card-badge{letter-spacing:.08em;color:#fff;white-space:nowrap;background-color:#c0392b;border-radius:.125rem;padding:.1rem .3rem;font-size:.5rem;line-height:1.3;position:absolute;inset-block-start:-.4rem;inset-inline-end:-.4rem}.reservation .form-field.form-field--payment .form-field-label{letter-spacing:.1em;font-size:.75rem}@media (width>=768px){.reservation .form-field.form-field--payment .form-field-label{font-size:.5rem}}.reservation .form-field.form-field--payment .payment-card{border:.0125rem solid hsla(from var(--color-fg) h s l / 30%);cursor:pointer;background-color:#fff;border-radius:.125rem;grid-template-columns:auto 1fr;align-items:start;gap:.75rem;padding:1rem;transition:border-color .15s,background-color .15s;display:grid}.reservation .form-field.form-field--payment .payment-card:has(input:checked){border-color:var(--color-blue);background-color:hsla(from var(--color-blue) h s l / 6%)}.reservation .form-field.form-field--payment .payment-card--primary{border-color:var(--color-blue);box-shadow:0 .0625rem .25rem hsla(from var(--color-blue) h s l / 12%);padding:1.125rem 1rem}.reservation .form-field.form-field--payment .payment-card--secondary{background-color:#0000;padding:.75rem .875rem}.reservation .form-field.form-field--payment input[type=radio]{border:.0125rem solid hsla(from var(--color-fg) h s l / 50%);aspect-ratio:1;block-size:1rem;inline-size:1rem;cursor:inherit;background-color:#fff;border-radius:50%;flex-shrink:0;margin-block-start:.15rem;padding:0;position:relative}.reservation .form-field.form-field--payment input[type=radio]:checked{border-color:var(--color-blue)}.reservation .form-field.form-field--payment input[type=radio]:checked:after{content:"";background-color:var(--color-blue);border-radius:50%;position:absolute;inset:.2rem}.reservation .form-field.form-field--payment .payment-card-body{gap:.25rem;display:grid}.reservation .form-field.form-field--payment .payment-card-title{letter-spacing:.08em;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}@media (width>=768px){.reservation .form-field.form-field--payment .payment-card-title{font-size:.6rem}}.reservation .form-field.form-field--payment .payment-card-badge{letter-spacing:.1em;background-color:var(--color-blue);color:#fff;border-radius:.125rem;padding:.125rem .375rem;font-size:.5625rem}.reservation .form-field.form-field--payment .payment-card-desc{color:hsla(from var(--color-fg) h s l / 70%);font-size:.75rem}@media (width>=768px){.reservation .form-field.form-field--payment .payment-card-desc{font-size:.5rem}}.reservation .form-field.form-field--payment .payment-card-note{color:hsla(from var(--color-fg) h s l / 55%);font-size:.6875rem}@media (width>=768px){.reservation .form-field.form-field--payment .payment-card-note{font-size:.45rem}}.reservation .form-field.form-field--payment .payment-disclosure{margin-block-start:.25rem}.reservation .form-field.form-field--payment .payment-disclosure summary{cursor:pointer;text-align:center;letter-spacing:.1em;color:hsla(from var(--color-fg) h s l / 60%);text-underline-offset:.25em;padding-block:.5rem;font-size:.6875rem;text-decoration:underline;list-style:none}.reservation .form-field.form-field--payment .payment-disclosure summary::-webkit-details-marker{display:none}.reservation .form-field.form-field--payment .payment-disclosure summary:hover{color:var(--color-fg)}@media (width>=768px){.reservation .form-field.form-field--payment .payment-disclosure summary{font-size:.45rem}}.reservation .form-field.form-field--payment .payment-disclosure[open] summary{margin-block-end:.5rem}.reservation .form-field.form-field--checkbox label{cursor:pointer;align-items:center;gap:.5rem;display:flex}.reservation .form-field.form-field--checkbox input[type=checkbox]{border:.0125rem solid hsla(from var(--color-fg) h s l / 50%);aspect-ratio:1;cursor:pointer;background-color:#fff;border-radius:.125rem;flex-shrink:0;block-size:1rem;inline-size:1rem;padding:0;display:inline-block;position:relative}.reservation .form-field.form-field--checkbox input[type=checkbox]:checked{background-color:var(--color-blue);border-color:var(--color-blue)}.reservation .form-field.form-field--checkbox input[type=checkbox]:checked:after{content:"";background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3 8.5l3.5 3.5 6.5-7.5'/></svg>");background-position:50%;background-repeat:no-repeat;background-size:80% 80%;position:absolute;inset:0}.reservation .form-field.form-field--checkbox .text{flex:1 0}.reservation .form-field.form-field--checkbox a{color:var(--color-blue);text-decoration:underline}.reservation .reservation-submit{background-color:var(--color-fg);inline-size:100%;color:var(--color-bg);letter-spacing:.3em;cursor:pointer;text-align:center;border:none;border-radius:.125rem;margin-block-start:.5rem;padding-block:.75rem;font-family:inherit;font-size:.75rem;transition:opacity .2s}.reservation .reservation-submit:hover{opacity:.8}.reservation .reservation-submit:disabled{opacity:.5;cursor:not-allowed}@media (width>=768px){.reservation .reservation-submit{padding-block:.5rem;font-size:.5rem}}.footer{text-align:center;color:hsla(from var(--color-fg) h s l / 60%);padding-block:2rem;font-size:.625rem}@media (width>=768px){.footer{font-size:.45rem}}}@layer utilities{.visually-hidden{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visually-hidden.focusable:focus-visible{clip:auto;white-space:normal;color:#fff;background-color:#000;width:auto;height:auto;margin:0;padding:.5rem 1rem;overflow:visible}}
