@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400;500&family=Noto+Serif+JP:wght@300;400;500&family=Noto+Sans+JP:wght@300;400;500&family=EB+Garamond:wght@400;500&display=swap";
:root{--ink:#1a1816;--ink-soft:#4a4744;--ink-faint:#8a857f;--rule:#c9c2b8;--rule-soft:#d9d3c8;--paper:#f1ede5;--paper-warm:#ece7dd;--serif-en:"EB Garamond", "Cormorant Garamond", "Noto Serif JP", serif;--serif-jp:"Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;--sans-jp:"Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif}html,body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--sans-jp);margin:0;padding:0}*{box-sizing:border-box}.ih-page{background:var(--paper);min-height:100%;padding:0 28px 56px;position:relative;overflow:hidden}.ih-grain{pointer-events:none;opacity:.32;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.55  0 0 0 0 0.5  0 0 0 0 0.42  0 0 0 0.07 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:absolute;inset:0}.ih-page:before{content:"";pointer-events:none;background:radial-gradient(120% 60% at 50% 0,#fffaf080,#0000 60%),radial-gradient(140% 80% at 50% 100%,#281e140f,#0000 60%);position:absolute;inset:0}.ih-lang{z-index:5;border:1px solid var(--rule);color:var(--ink-soft);font-family:var(--sans-jp);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;padding:7px 11px 6px;font-size:10.5px;font-weight:400;transition:color .18s,border-color .18s,background .18s;position:absolute;top:56px;right:22px}.ih-lang:hover{color:var(--ink);border-color:var(--ink-soft)}.ih-lang:active{background:#00000008}.ih-stack{z-index:2;text-align:center;max-width:420px;margin:0 auto;padding-top:116px;position:relative}.ih-hero{padding:8px 0 56px}.ih-rule-top,.ih-rule-bot{background:var(--rule);width:1px;height:36px;margin:0 auto}.ih-rule-top{margin-bottom:28px}.ih-rule-bot{height:28px;margin-top:44px}.ih-eyebrow{font-family:var(--sans-jp);letter-spacing:.32em;color:var(--ink-faint);margin-bottom:22px;font-size:11px;font-weight:400}:lang(en) .ih-eyebrow{letter-spacing:.28em;text-transform:uppercase}.ih-wordmark{font-family:var(--serif-en);color:var(--ink);white-space:nowrap;justify-content:center;align-items:baseline;gap:.18em;margin:0;font-style:italic;font-weight:400;line-height:1;display:flex}.ih-wm-1{letter-spacing:.005em;font-size:32px;font-style:italic;font-weight:400}.ih-wm-2{letter-spacing:.14em;padding-left:.14em;font-size:32px;font-style:normal;font-weight:400}.ih-kind{font-family:var(--sans-jp);letter-spacing:.28em;color:var(--ink-soft);margin-top:22px;font-size:12px}:lang(en) .ih-kind{text-transform:uppercase}.ih-intro{max-width:30em;font-family:var(--serif-jp);letter-spacing:.06em;color:var(--ink-soft);text-align:justify;text-justify:inter-character;text-align-last:center;text-spacing-trim:trim-start;margin:40px auto 0;font-size:13.5px;font-weight:300;line-height:2.1}:lang(en) .ih-intro{font-family:var(--serif-en);letter-spacing:.012em;text-align:center;text-justify:auto;text-wrap:pretty;font-size:14.5px;line-height:1.75}.ih-section-eyebrow{font-family:var(--sans-jp);letter-spacing:.34em;color:var(--ink-faint);margin-bottom:16px;font-size:10.5px;font-weight:400}:lang(en) .ih-section-eyebrow{text-transform:uppercase}.ih-primary-wrap{padding:8px 0 0}.ih-primary{background:var(--ink);color:var(--paper);text-align:center;border:1px solid var(--ink);margin:0 auto;padding:22px 22px 20px;text-decoration:none;transition:background .2s,transform .2s;display:block;position:relative}.ih-primary:hover{background:#2a2622}.ih-primary:active{transform:translateY(1px)}.ih-primary-label{font-family:var(--serif-en);letter-spacing:.28em;padding-left:.28em;font-size:26px;font-style:italic;font-weight:500;display:block}.ih-primary-sub{font-family:var(--sans-jp);letter-spacing:.3em;color:#f1ede59e;margin-top:8px;font-size:11px;display:block}:lang(en) .ih-primary-sub{text-transform:uppercase}.ih-primary-arrow{color:#f1ede599;font-size:14px;font-family:var(--serif-en);position:absolute;top:14px;right:16px}.ih-links{text-align:left;border-top:1px solid var(--rule-soft);margin-top:56px}.ih-link{border-bottom:1px solid var(--rule-soft);color:var(--ink);grid-template-columns:32px 1fr 16px;align-items:center;gap:14px;padding:22px 4px;text-decoration:none;transition:padding .22s,color .22s;display:grid}.ih-link:hover{padding-left:8px}.ih-link:hover .ih-link-arrow{color:var(--ink);transform:translate(2px,-2px)}.ih-link-num{font-family:var(--serif-en);color:var(--ink-faint);letter-spacing:.04em;font-size:12px;font-style:italic}.ih-link-body{flex-direction:column;gap:4px;display:flex}.ih-link-label{font-family:var(--serif-en);letter-spacing:.02em;color:var(--ink);font-size:19px;font-weight:400}:lang(ja) .ih-link[href*=tabelog] .ih-link-label,:lang(ja) .ih-link[href*=maps] .ih-link-label{font-family:var(--serif-jp);letter-spacing:.06em;font-size:17px}.ih-link-sub{font-family:var(--sans-jp);letter-spacing:.22em;color:var(--ink-faint);font-size:10.5px}:lang(en) .ih-link-sub{text-transform:uppercase;letter-spacing:.2em}.ih-link-arrow{font-family:var(--serif-en);color:var(--ink-faint);text-align:right;font-size:14px;transition:transform .22s,color .22s}.ih-map{margin-top:28px;position:relative}.ih-map iframe{border:1px solid var(--rule);background:var(--paper-warm);filter:grayscale(.85)contrast(.96)brightness(1.02);width:100%;height:240px;transition:filter .36s;display:block}.ih-map:hover iframe{filter:grayscale(.4)contrast(.98)brightness()}.ih-map-link{font-family:var(--sans-jp);letter-spacing:.28em;color:var(--ink-soft);border-bottom:1px solid var(--rule);margin-top:14px;padding-bottom:2px;font-size:10.5px;text-decoration:none;transition:color .2s,border-color .2s;display:inline-block}.ih-map-link:hover{color:var(--ink);border-color:var(--ink)}:lang(en) .ih-map-link{text-transform:uppercase}.ih-contact{border-top:1px solid var(--rule-soft);margin-top:64px;padding-top:40px}.ih-address{font-style:normal;font-family:var(--serif-jp);letter-spacing:.08em;color:var(--ink);font-size:14.5px;line-height:1.9}:lang(en) .ih-address{font-family:var(--serif-en);letter-spacing:.02em;font-size:15.5px;line-height:1.7}.ih-meta{text-align:center;flex-direction:column;gap:18px;margin:30px 0 0;padding:0;display:flex}.ih-meta-row{flex-direction:column;gap:6px;display:flex}.ih-meta dt{font-family:var(--sans-jp);letter-spacing:.34em;color:var(--ink-faint);font-size:10px}:lang(en) .ih-meta dt{text-transform:uppercase}.ih-meta dd{font-family:var(--serif-en);letter-spacing:.06em;color:var(--ink);margin:0;font-size:16px}.ih-meta dd a{color:inherit;border-bottom:1px solid var(--rule);padding-bottom:1px;text-decoration:none;transition:border-color .2s}.ih-meta dd a:hover{border-color:var(--ink)}.ih-footer{text-align:center;margin-top:72px;padding-top:28px}.ih-foot-rule{background:var(--rule);width:1px;height:28px;margin:0 auto 28px}.ih-foot-mark{font-family:var(--serif-en);letter-spacing:.18em;color:var(--ink-soft);font-size:16px;font-style:italic}.ih-foot-copy{font-family:var(--sans-jp);letter-spacing:.28em;color:var(--ink-faint);margin-top:14px;font-size:10px}:lang(en) .ih-foot-copy{text-transform:uppercase}::selection{background:var(--ink);color:var(--paper)}.ih-recruit-wrap{margin-top:40px;padding:0}.ih-recruit-link{border:1px solid var(--rule);color:var(--ink);text-align:center;padding:20px;text-decoration:none;transition:background .2s,border-color .2s;display:block}.ih-recruit-link:hover{border-color:var(--ink-soft);background:#00000005}.ih-recruit-label{font-family:var(--serif-jp);letter-spacing:.12em;margin-bottom:6px;font-size:20px;display:block}:lang(en) .ih-recruit-label{font-family:var(--serif-en);letter-spacing:.08em;font-size:22px}.ih-recruit-sub{font-family:var(--sans-jp);letter-spacing:.28em;color:var(--ink-soft);font-size:11px;display:block}:lang(en) .ih-recruit-sub{text-transform:uppercase;letter-spacing:.24em}.ih-recruit-arrow{font-family:var(--serif-en);color:var(--ink-soft);margin-left:8px;display:inline-block}.ih-recruit .ih-stack,.ih-job-detail .ih-stack{padding-top:80px}.ih-title-large{font-family:var(--serif-jp);letter-spacing:.12em;margin:28px 0 16px;font-size:32px;font-weight:400}:lang(en) .ih-title-large{font-family:var(--serif-en);letter-spacing:.04em;font-size:36px}.ih-recruit-nav{justify-content:center;gap:20px;margin:32px 0;display:flex}.ih-nav-link{font-family:var(--sans-jp);letter-spacing:.2em;color:var(--ink-soft);border-bottom:1px solid #0000;padding:8px 0;font-size:12px;text-decoration:none;transition:color .2s,border-color .2s}:lang(en) .ih-nav-link{text-transform:uppercase;letter-spacing:.18em}.ih-nav-link:hover{color:var(--ink);border-color:var(--rule)}.ih-recruit-section,.ih-job-section{margin:56px 0;padding:0}.ih-section-title{font-family:var(--serif-jp);letter-spacing:.1em;text-align:center;margin:0 0 24px;font-size:22px;font-weight:400}:lang(en) .ih-section-title{font-family:var(--serif-en);letter-spacing:.04em;font-size:24px}.ih-section-subtitle{font-family:var(--sans-jp);letter-spacing:.24em;color:var(--ink-soft);text-align:center;margin:-16px 0 24px;font-size:12px}:lang(en) .ih-section-subtitle{text-transform:uppercase}.ih-recruit-text,.ih-job-text{font-family:var(--serif-jp);letter-spacing:.06em;color:var(--ink);white-space:pre-wrap;max-width:32em;margin:0 auto;font-size:14px;line-height:2}:lang(en) .ih-recruit-text,:lang(en) .ih-job-text{font-family:var(--serif-en);letter-spacing:.02em;font-size:15px;line-height:1.8}.ih-feature-grid{gap:32px;margin-top:32px;display:grid}.ih-feature-card{text-align:center;border:1px solid var(--rule-soft);padding:24px}.ih-feature-title{font-family:var(--serif-jp);letter-spacing:.08em;margin:0 0 12px;font-size:18px;font-weight:400}:lang(en) .ih-feature-title{font-family:var(--serif-en);letter-spacing:.04em;font-size:19px}.ih-feature-text{font-family:var(--sans-jp);letter-spacing:.18em;color:var(--ink-soft);margin:0;font-size:12px}:lang(en) .ih-feature-text{letter-spacing:.12em;font-size:13px}.ih-jobs-list{gap:24px;margin-top:32px;display:grid}.ih-job-card{border:1px solid var(--rule);color:var(--ink);padding:24px;text-decoration:none;transition:background .2s,border-color .2s;display:block}.ih-job-card:hover{border-color:var(--ink-soft);background:#00000005}.ih-job-header{justify-content:space-between;align-items:baseline;margin-bottom:12px;display:flex}.ih-job-title{font-family:var(--serif-jp);letter-spacing:.08em;margin:0;font-size:20px;font-weight:400}:lang(en) .ih-job-title{font-family:var(--serif-en);letter-spacing:.04em;font-size:22px}.ih-job-type{font-family:var(--sans-jp);letter-spacing:.2em;color:var(--ink-soft);font-size:11px}:lang(en) .ih-job-type{text-transform:uppercase}.ih-job-salary{font-family:var(--serif-en);letter-spacing:.02em;color:var(--ink);margin:0 0 16px;font-size:15px;line-height:1.5}.ih-job-link{font-family:var(--sans-jp);letter-spacing:.2em;color:var(--ink-soft);font-size:12px}:lang(en) .ih-job-link{text-transform:uppercase}.ih-job-subtitle{font-family:var(--sans-jp);letter-spacing:.24em;color:var(--ink-soft);text-align:center;margin:8px 0 0;font-size:13px}:lang(en) .ih-job-subtitle{text-transform:uppercase;font-size:14px}.ih-job-specs{margin:32px 0;padding:0}.ih-spec-row{border-bottom:1px solid var(--rule-soft);grid-template-columns:140px 1fr;gap:24px;padding:16px 0;display:grid}.ih-spec-row dt{font-family:var(--sans-jp);letter-spacing:.24em;color:var(--ink-soft);font-size:11px;font-weight:400}:lang(en) .ih-spec-row dt{text-transform:uppercase}.ih-spec-row dd{font-family:var(--serif-jp);letter-spacing:.06em;color:var(--ink);margin:0;font-size:14px}:lang(en) .ih-spec-row dd{font-family:var(--serif-en);letter-spacing:.02em;font-size:15px}.ih-apply-list{margin:24px 0 32px;padding:0;list-style:none}.ih-apply-list li{font-family:var(--serif-jp);letter-spacing:.06em;padding:12px 0 12px 24px;font-size:14px;position:relative}:lang(en) .ih-apply-list li{font-family:var(--serif-en);letter-spacing:.02em;font-size:15px}.ih-apply-list li:before{content:"•";color:var(--ink-soft);position:absolute;left:0}.ih-contact-methods{gap:16px;margin-top:32px;display:grid}.ih-contact-method{border:1px solid var(--rule);color:var(--ink);text-align:center;flex-direction:column;gap:8px;padding:20px;text-decoration:none;transition:background .2s,border-color .2s;display:flex}.ih-contact-method:hover{border-color:var(--ink-soft);background:#00000005}.ih-contact-label{font-family:var(--sans-jp);letter-spacing:.24em;color:var(--ink-soft);font-size:11px}:lang(en) .ih-contact-label{text-transform:uppercase}.ih-contact-value{font-family:var(--serif-en);letter-spacing:.04em;font-size:16px}.ih-apply-buttons{gap:16px;margin-top:32px;display:grid}.ih-apply-button{text-align:center;font-family:var(--serif-jp);letter-spacing:.12em;flex-direction:column;gap:8px;padding:24px;font-size:16px;text-decoration:none;transition:background .2s,transform .2s;display:flex}:lang(en) .ih-apply-button{font-family:var(--serif-en);letter-spacing:.08em;font-size:18px}.ih-apply-email{background:var(--ink);color:var(--paper);border:1px solid var(--ink)}.ih-apply-email:hover{background:#2a2622}.ih-apply-phone{background:var(--paper);color:var(--ink);border:1px solid var(--ink)}.ih-apply-phone:hover{background:#00000005}.ih-apply-button:active{transform:translateY(1px)}.ih-apply-detail{font-family:var(--sans-jp);letter-spacing:.2em;opacity:.7;font-size:12px}:lang(en) .ih-apply-detail{font-size:13px}.ih-faq-list{margin-top:32px}.ih-faq-item{border-bottom:1px solid var(--rule-soft);padding:20px 0}.ih-faq-question{font-family:var(--serif-jp);letter-spacing:.08em;cursor:pointer;padding-right:32px;font-size:16px;list-style:none;position:relative}:lang(en) .ih-faq-question{font-family:var(--serif-en);letter-spacing:.04em;font-size:17px}.ih-faq-question:after{content:"+";font-family:var(--serif-en);color:var(--ink-soft);font-size:20px;transition:transform .2s;position:absolute;top:0;right:0}details[open] .ih-faq-question:after{transform:rotate(45deg)}.ih-faq-answer{font-family:var(--sans-jp);letter-spacing:.08em;color:var(--ink-soft);margin:16px 0 0;font-size:13px;line-height:1.8}:lang(en) .ih-faq-answer{letter-spacing:.04em;font-size:14px}.ih-other-jobs{gap:16px;margin-top:32px;display:grid}.ih-other-job-card{border:1px solid var(--rule-soft);color:var(--ink);grid-template-columns:1fr auto auto;align-items:center;gap:16px;padding:20px;text-decoration:none;transition:background .2s,border-color .2s,padding-left .2s;display:grid}.ih-other-job-card:hover{border-color:var(--ink-soft);background:#00000005;padding-left:24px}.ih-other-job-title{font-family:var(--serif-jp);letter-spacing:.08em;margin:0;font-size:17px;font-weight:400}:lang(en) .ih-other-job-title{font-family:var(--serif-en);letter-spacing:.04em;font-size:18px}.ih-other-job-type{font-family:var(--sans-jp);letter-spacing:.2em;color:var(--ink-soft);font-size:10px}:lang(en) .ih-other-job-type{text-transform:uppercase}.ih-other-job-arrow{font-family:var(--serif-en);color:var(--ink-soft);font-size:16px}
