:root{--ink:#30312c;--muted:#6e7066;--yellow:#ffe366;--pale:#faf8f0;--line:#dedfd5;--white:#fff;--wrap:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.9 "Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8a6d00;outline-offset:5px}img{display:block;width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;letter-spacing:.025em}h1{line-height:1.45}h2{font-size:clamp(25px,2.8vw,36px);line-height:1.6}h3{font-size:20px;line-height:1.6}p+p{margin-top:16px}button{cursor:pointer}button:disabled{cursor:not-allowed}section[id]{scroll-margin-top:110px}[hidden]{display:none!important}.wrap{width:min(var(--wrap),calc(100% - 80px));margin-inline:auto}.eyebrow{font-size:12px;letter-spacing:.13em;font-weight:700;margin-bottom:18px}.small{font-size:13px;color:var(--muted);line-height:1.8}.skip-link{position:fixed;left:20px;top:-70px;z-index:20;padding:12px 20px;background:var(--yellow)}.skip-link:focus{top:15px}.preview-bar{background:#33382e;color:#fff;text-align:center;font-size:11px;letter-spacing:.05em;padding:6px 20px}.preview-bar span{margin-left:15px;color:#e5e9dd}.site-header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.98);border-bottom:1px solid #efefe8}.header-inner{width:min(1360px,calc(100% - 80px));min-height:96px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{width:220px;flex-shrink:0}.brand img{width:100%;height:auto}.site-header nav{display:flex;align-items:center;gap:29px;font-size:13px;font-weight:600}.site-header nav>a{padding-block:8px;white-space:nowrap}.site-header a[aria-current]{text-decoration:underline;text-decoration-color:#d2ad23;text-underline-offset:8px}.site-header nav .nav-contact{background:var(--yellow);padding:13px 22px;border-radius:3px}.nav-contact span{margin-left:18px}.menu-button{display:none;border:0;background:transparent}.hero{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:46px;padding-top:54px;padding-bottom:55px}.hero-copy{padding-block:22px}.hero h1{font-size:clamp(38px,4.4vw,62px);letter-spacing:.045em;margin-bottom:25px}.hero-description{font-size:14px;line-height:2.1}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;gap:20px;align-items:center;justify-content:center;min-height:52px;padding:12px 21px;border:1px solid transparent;border-radius:3px;font-size:13px;font-weight:700;line-height:1.7;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button.yellow{background:var(--yellow);color:var(--ink)}.button.yellow:hover{background:#f4d756}.button.outline{border-color:#aaa99e;background:white}.button.dark{background:#30352c;color:white}.hero-caption{margin-top:34px!important;font-size:11px;color:var(--muted);letter-spacing:.05em}.hero-media{position:relative;padding-bottom:20px;padding-right:18px;isolation:isolate}.hero-media:after{content:"";position:absolute;z-index:-1;background:var(--yellow);inset:32px 0 0 32px}.hero-media>img{width:100%;height:440px;object-fit:cover;object-position:40% center}.hero-stamp{position:absolute;bottom:47px;right:-7px;background:white;padding:16px 22px;border-left:4px solid var(--yellow);font-size:14px;line-height:1.8;font-weight:700}.business-index{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}.business-index a{display:flex;align-items:center;gap:14px;min-height:83px;font-size:13px;font-weight:700;padding:15px 20px;border-right:1px solid var(--line)}.business-index a:first-child{padding-left:0}.business-index a:last-child{border-right:0}.business-index span{font-size:11px;color:#8f916e;font-weight:400}.business-index b{font-size:17px;margin-left:auto;font-weight:400}.concept{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-block:112px}.concept-photo{padding-top:25px}.concept-photo img{height:460px;object-fit:cover}.concept-copy h2{margin-bottom:25px}.concept-copy>p:not(.eyebrow){font-size:14px;line-height:2.1}.text-link{display:inline-flex;align-items:center;gap:30px;font-size:13px;font-weight:700;border-bottom:1px solid #a1a393;padding:9px 0}.concept-copy .text-link{margin-top:22px}.section-heading{margin-bottom:35px}.section-heading>p:not(.eyebrow){margin-top:15px;font-size:14px;color:var(--muted)}.section-heading.horizontal{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.services-overview{padding-bottom:105px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 58px}.service-teaser{position:relative;padding:31px 0 32px 50px;border-top:1px solid var(--line)}.service-number{position:absolute;left:0;top:35px;color:#8a8e75;font-size:12px}.service-teaser h3{margin-bottom:16px}.service-teaser p{font-size:14px;max-width:410px}.service-teaser .text-link{margin-top:13px}.shops-section{padding:80px 0 90px;background:var(--pale)}.shop-list{border-top:1px solid #d6d6c5}.shop-list>a{display:flex;align-items:center;gap:34px;padding:26px 10px;border-bottom:1px solid #d6d6c5}.shop-list>a:hover{background:#f2efdf}.shop-type{border:1px solid #b9baa8;font-size:11px;min-width:55px;text-align:center;line-height:2}.shop-list h3{font-size:20px}.shop-list p{font-size:12px;color:var(--muted);margin-top:4px}.shop-arrow{margin-left:auto;font-size:25px}.contact-band{padding:64px 0;background:var(--yellow)}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.contact-inner .eyebrow{margin-bottom:9px}.contact-inner h2{font-size:27px}.contact-inner p:not(.eyebrow){font-size:13px;margin-top:14px}.contact-inner .button{min-width:200px}.site-footer{padding-top:62px}.footer-top{display:flex;gap:50px;justify-content:space-between;padding-bottom:45px}.footer-brand{font-family:Arial,sans-serif;font-size:32px;letter-spacing:.04em}.footer-top p{font-size:12px;letter-spacing:.05em;margin-top:3px}.footer-top .footer-note{font-size:11px;color:var(--muted);margin-top:14px}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px 35px;font-size:12px;align-content:start}.footer-nav a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-block:22px;color:var(--muted);font-size:11px}.page-heading{padding-block:62px 50px}.page-heading h1{font-size:43px;margin-bottom:17px}.page-heading>p:last-child{color:var(--muted);font-size:14px}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-block:65px;border-bottom:1px solid var(--line)}.service-detail:last-of-type{border-bottom:none}.service-photo img{height:390px;object-fit:cover}.service-copy h2{font-size:29px;margin-bottom:18px}.service-copy h3{font-size:15px;margin-top:26px;margin-bottom:8px}.service-copy p{font-size:14px}.service-copy .button{margin-top:27px}.service-copy>.text-link{margin-top:10px}.inline-links{display:flex;flex-wrap:wrap;gap:25px;margin-top:15px}.service-intro{font-size:16px!important}.company-intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;padding-bottom:70px}.company-intro h2{margin-bottom:24px}.company-intro p{font-size:14px}.company-intro img{height:330px;object-fit:cover}.company-profile{max-width:940px;padding-bottom:100px}.company-profile h2{margin-bottom:25px}.profile-list{margin:0}.profile-list>div{display:grid;grid-template-columns:170px minmax(0,1fr);gap:20px;padding:21px 10px;border-top:1px solid var(--line)}.profile-list>div:last-child{border-bottom:1px solid var(--line)}.profile-list dt{font-size:13px;font-weight:700}.profile-list dd{margin:0;font-size:14px;overflow-wrap:anywhere;white-space:pre-wrap}.inquiry-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:8%;padding-bottom:100px}.inquiry-guide h2{font-size:25px}.inquiry-guide dl{font-size:13px;margin:30px 0}.inquiry-guide dt{font-weight:700;margin-top:20px}.inquiry-guide dd{margin:5px 0 0;color:var(--muted)}.form-notice{border-left:3px solid #b3a756;background:#faf7e9;padding:16px 20px;font-size:13px;margin-bottom:30px}.form-notice p{margin-top:5px}.required-guide{font-size:12px;margin-bottom:25px}.required-guide span,.field label>span{font-size:10px;color:#77601c;background:#faf0bd;padding:3px 7px;margin-left:8px;font-weight:400}.field{margin-bottom:27px}.field label{display:block;font-size:14px;font-weight:700;margin-bottom:9px}.field label small{font-size:11px;color:var(--muted);margin-left:8px;font-weight:400}.field input,.field select,.field textarea{width:100%;border:1px solid #bbbeb1;background:#fff;border-radius:3px;padding:13px 14px;color:var(--ink);min-height:50px;font-size:16px;max-width:100%}.field textarea{resize:vertical;line-height:1.8}.field-error{color:#a33b26;font-size:13px;margin-top:8px}.preview-verification{border:1px dashed #b8bdad;padding:17px;font-size:12px;margin:30px 0 20px;line-height:1.9}.preview-verification>span:first-child{color:#68784e;margin-right:10px}.preview-verification .small{display:block;font-size:11px}.inquiry-main .small a{text-decoration:underline;text-underline-offset:3px}.submit-button{margin-top:25px;min-width:270px}.confirmation h2{margin-bottom:20px}.confirmation .button{margin-top:25px}.confirmation .profile-list>div{grid-template-columns:150px minmax(0,1fr)}.privacy-body{max-width:850px;padding-bottom:90px}.privacy-body h2{font-size:23px;margin:40px 0 16px}.privacy-body p{font-size:15px}
@media(max-width:1100px){.header-inner{width:calc(100% - 48px)}.brand{width:180px}.site-header nav{gap:19px;font-size:12px}.wrap{width:calc(100% - 56px)}.hero{gap:30px}.hero h1{font-size:46px}.hero-media>img{height:420px}.hero-actions{flex-direction:column;align-items:flex-start}.business-index a{padding-inline:13px;font-size:12px;gap:8px}.inquiry-layout{gap:6%;grid-template-columns:230px minmax(0,1fr)}}
@media(max-width:800px){.preview-bar{font-size:10px;line-height:1.7}.preview-bar span{display:block;margin:0;font-size:9px}.header-inner{min-height:78px;width:calc(100% - 36px)}.brand{width:179px}.menu-button{display:flex;align-items:center;gap:9px;min-height:44px;padding:8px 0;font-size:11px}.menu-lines{width:21px;height:13px;display:block;border-block:1px solid currentColor;position:relative}.menu-lines:after{content:"";position:absolute;left:0;right:0;top:5px;border-top:1px solid currentColor}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:18px 25px 25px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #0000000b;align-items:stretch}.site-header nav.is-open{display:flex;flex-direction:column;gap:7px}.site-header nav>a{padding:12px;font-size:14px}.site-header nav .nav-contact{margin-top:8px}.site-header a[aria-current]{text-decoration:none;border-left:3px solid #e0be36}.wrap{width:calc(100% - 40px)}.hero{grid-template-columns:1fr;gap:25px;padding-top:32px;padding-bottom:34px}.hero-copy{padding:0}.hero h1{font-size:44px;line-height:1.45;margin-bottom:18px}.hero .eyebrow{font-size:11px;margin-bottom:16px}.hero-description{font-size:13px;line-height:2}.desktop-break{display:none}.hero-actions{margin-top:24px;display:grid;grid-template-columns:1fr;gap:11px}.hero-actions .button{width:100%;min-height:49px;justify-content:space-between;padding-inline:20px}.hero-caption{margin-top:22px!important;font-size:10px}.hero-media{padding-bottom:14px;padding-right:14px}.hero-media>img{height:255px}.hero-media:after{inset:20px 0 0 20px}.hero-stamp{right:0;bottom:28px;padding:12px 16px;font-size:12px}.business-index{grid-template-columns:repeat(2,1fr)}.business-index a{min-height:67px;font-size:11px;padding:12px 10px;gap:7px}.business-index a:first-child{padding-left:10px}.business-index a:nth-child(2){border-right:0}.business-index a:nth-child(n+3){border-top:1px solid var(--line)}.business-index span{font-size:10px}.concept{grid-template-columns:1fr;gap:30px;padding-block:64px}.concept-photo{padding:0}.concept-photo img{height:255px;object-position:55% center}.concept-copy h2{font-size:27px;margin-bottom:20px}.concept-copy>p:not(.eyebrow){font-size:13px;line-height:2}.eyebrow{font-size:11px;margin-bottom:12px}.section-heading.horizontal{display:block}.section-heading.horizontal .text-link{margin-top:18px}.service-grid{grid-template-columns:1fr;gap:0}.service-teaser{padding:25px 0 25px 35px}.service-number{top:29px}.service-teaser h3{font-size:20px;margin-bottom:11px}.service-teaser p{font-size:13px}.services-overview{padding-bottom:56px}.shops-section{padding-block:55px}.section-heading h2{font-size:27px}.section-heading>p:not(.eyebrow){font-size:13px}.shop-list>a{gap:17px;padding:23px 0}.shop-type{min-width:41px;font-size:10px}.shop-list h3{font-size:17px}.shop-list p{font-size:11px}.contact-band{padding-block:42px}.contact-inner{display:block}.contact-inner h2{font-size:25px}.contact-inner .button{width:100%;margin-top:25px;justify-content:space-between}.site-footer{padding-top:40px}.footer-top{display:block;padding-bottom:30px}.footer-nav{margin-top:26px;gap:14px 24px}.footer-brand{font-size:29px}.footer-bottom{font-size:10px}.page-heading{padding-block:35px}.page-heading h1{font-size:34px;margin-bottom:12px}.page-heading>p:last-child{font-size:13px}.service-detail{grid-template-columns:1fr;gap:27px;padding-block:38px}.service-photo img{height:245px}.service-copy h2{font-size:26px}.service-copy p{font-size:13px}.service-intro{font-size:15px!important}.service-copy .button{width:100%;justify-content:space-between}.company-intro{grid-template-columns:1fr;gap:27px;padding-bottom:45px}.company-intro h2{font-size:27px}.company-intro p{font-size:13px}.company-intro img{height:235px}.company-profile{padding-bottom:60px}.profile-list>div{grid-template-columns:1fr;gap:6px;padding:18px 0}.profile-list dt{font-size:12px}.profile-list dd{font-size:13px}.inquiry-layout{grid-template-columns:1fr;gap:30px;padding-bottom:60px}.inquiry-guide h2{font-size:23px}.inquiry-guide h2 br{display:none}.inquiry-guide dl{display:grid;grid-template-columns:105px minmax(0,1fr);gap:10px 7px;margin:20px 0;font-size:12px}.inquiry-guide dt,.inquiry-guide dd{margin:0}.field label{font-size:13px}.form-notice{padding:13px 15px;font-size:12px;margin-bottom:24px}.submit-button{min-width:0;width:100%;justify-content:space-between}.confirmation .profile-list>div{grid-template-columns:1fr}.privacy-body{padding-bottom:55px}.privacy-body p{font-size:13px}.privacy-body h2{font-size:20px}.preview-verification{padding:13px;font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}
@media(max-width:800px){.hero h1{font-size:clamp(34px,10.9vw,44px)}}

#contact-turnstile{margin:25px 0 15px;min-height:70px}#form-status{margin:10px 0 20px}#mfp_phase_confirm_inner{font-family:inherit}#mfp_phase_confirm button{min-height:44px}#mfp_phase_confirm .mfp_buttons{display:flex;flex-wrap:wrap;gap:12px}#mailformpro .mfp_err{color:#9d3029}
