@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500&family=Noto+Serif+JP:wght@400;500;600&display=swap');
:root{--green:#06452e;--deep:#033821;--gold:#cbaa58;--ivory:#faf7ef;--ink:#123f30;--line:#ded4b8;--serif:'Noto Serif JP','Yu Mincho',serif;--sans:'Noto Sans JP','Yu Gothic',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--ivory);color:var(--ink);font:14px/2 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,.slides:focus-visible{outline:3px solid var(--gold);outline-offset:4px}a:hover{opacity:.78}.sr,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip:focus{position:fixed;top:0;left:0;background:white;padding:10px;z-index:100}header{display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--green);color:var(--gold);padding:10px 6%;height:100px;border-bottom:1px solid var(--gold)}.brand{display:flex;align-items:center;gap:25px}.brand img{height:82px;width:100px;object-fit:cover;mix-blend-mode:lighten}.brand span{letter-spacing:3px;font-size:10px;border-left:1px solid var(--gold);padding-left:25px}header nav{display:flex;gap:26px;font-size:11px;letter-spacing:.08em}.menu{display:none}#mobile-nav{position:absolute;top:85px;left:0;right:0;background:var(--green);color:var(--ivory);padding:20px 7%;z-index:20;border-bottom:1px solid var(--gold)}#mobile-nav a{display:block;padding:12px;border-bottom:1px solid #ffffff20}.hero{max-width:1800px;margin:auto}.carousel{position:relative;background:var(--deep)}.slides{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain}.slides::-webkit-scrollbar{display:none}.slides figure{flex:0 0 100%;margin:0;scroll-snap-align:start;scroll-snap-stop:always}.slides img{display:block;width:100%;height:min(65vw,720px);min-height:450px;object-fit:cover;object-position:center 60%}.hero-logo{position:absolute;pointer-events:none;width:clamp(200px,35%,520px);height:auto;left:50%;top:50%;transform:translate(-50%,-50%);opacity:.52}.arrow{position:absolute;top:50%;transform:translateY(-50%);color:white;background:#0002;border:1px solid #ffffff60;border-radius:50%;width:48px;height:48px;font:40px/1 Georgia,serif;display:grid;place-content:center;padding-bottom:5px}.prev{left:25px}.next{right:25px}.dots{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;gap:4px}.dots button{padding:15px;border:0;background:transparent}.dots button::after{content:'';display:block;width:9px;height:9px;border:1px solid white;border-radius:50%;background:#0002}.dots button[aria-current=true]::after{background:var(--gold);border-color:var(--gold)}.section{padding:80px max(7%,calc((100% - 1040px)/2));text-align:center}.eyebrow{font:10px/1.5 var(--sans);letter-spacing:4px;margin:0 0 25px;color:#7c7e61}h2{font:500 clamp(23px,2.8vw,36px)/1.9 var(--serif);letter-spacing:.06em;margin:0 0 30px}.section>p:not(.eyebrow){letter-spacing:.04em}.about>p{line-height:2.5}.about-detail{display:flex;justify-content:center;gap:45px;margin-top:35px;font-size:9px;letter-spacing:2px}.about-detail span+span{border-left:1px solid var(--gold);padding-left:45px}.ruled{display:flex;align-items:center;justify-content:center;gap:30px}.ruled::before,.ruled::after{content:'';width:70px;height:1px;background:var(--gold)}.system{background:linear-gradient(120deg,var(--green),var(--deep));color:var(--ivory)}.system h2,.system .eyebrow{color:var(--gold)}.set{font:18px Georgia,var(--serif);letter-spacing:3px!important}.set strong{font-size:30px;font-weight:400}.price-table{max-width:720px;margin:30px auto 15px;border:1px solid var(--gold)}.price-table>div{display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:21px 0}.price-table>div+div{border-top:1px solid var(--gold)}.price-table span{font:24px Georgia,serif;letter-spacing:1px}.price-table strong{border-left:1px solid var(--gold);font:32px Georgia,serif}.price-table small{font:15px var(--serif);margin-left:7px}.tax{font-size:11px}.extras{display:grid;grid-template-columns:1fr 1fr;gap:0 45px;max-width:720px;margin:35px auto 25px}.extras>div{display:flex;justify-content:space-between;border-bottom:1px solid #cbaa5840;padding:15px 0;font-size:12px}.extras dd{margin:0}.note{font-size:11px;opacity:.8;line-height:2.2}.outline{border:1px solid var(--green);display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:400px;margin:30px auto 0;padding:17px 25px;font-size:12px}.outline.gold{border-color:var(--gold)}.social-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:40px auto 0;max-width:920px}.social-grid>a{position:relative;border:1px solid var(--line);padding:35px 25px;text-align:left}.social-label{display:block;font-size:9px;letter-spacing:2px;color:#7c7e61}.social-grid strong{font:27px/1.8 var(--serif);display:block;margin-top:15px}.social-grid p{font-size:11px;margin:10px 0 0}.social-arrow{position:absolute;right:25px;top:45px;font-size:28px}.access{padding-top:20px}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start;text-align:left;margin-top:40px}.map iframe{width:100%;height:340px;border:0;background:#eee9db}.map-link{display:block;text-align:right;font-size:11px;margin-top:12px}.shop-info{margin:0}.shop-info>div{display:grid;grid-template-columns:85px 1fr;gap:10px;padding:17px 0;border-bottom:1px solid var(--line)}.shop-info>div:first-child{padding-top:0}.shop-info dt{font-size:9px;letter-spacing:2px;padding-top:3px;color:#72765e}.shop-info dd{margin:0;font-size:12px}.shop-info small{display:block;font-size:11px}.phone{font:26px Georgia,serif;white-space:nowrap}.recruit{border-top:1px solid var(--line);background:#f1eee2}.salary strong{font:37px Georgia,serif;margin:0 5px}.salary small{font:15px var(--serif)}.salary>span{font-size:11px}.recruit .note{margin-top:20px}footer{background:var(--green);color:var(--gold);padding:35px 7% 110px;display:flex;align-items:center;gap:40px;flex-wrap:wrap}footer img{width:110px;height:95px;object-fit:cover;mix-blend-mode:lighten}footer p{font-size:9px;letter-spacing:2px;line-height:2.5}footer .to-top{margin-left:auto;font-size:10px;letter-spacing:2px}footer small{font-size:9px;width:100%;text-align:center}.fixed-contact{position:fixed;bottom:0;left:0;right:0;background:var(--green);color:var(--ivory);display:flex;justify-content:center;z-index:25;border-top:1px solid var(--gold);padding-bottom:env(safe-area-inset-bottom)}.fixed-contact a{font-size:12px;letter-spacing:.06em;padding:18px 45px;text-align:center}.fixed-contact a+a{border-left:1px solid var(--gold)}.fixed-contact span{margin-right:7px}.mobile-only{display:none}@media(max-width:900px){header nav{display:none}.menu{display:block;background:none;color:var(--gold);border:0;padding:15px 0 15px 15px}.menu span{display:block;width:25px;height:1px;background:var(--gold);margin:7px 0}header{height:85px}.brand img{height:70px;width:85px}.brand span{font-size:8px;letter-spacing:2px}.access-grid{gap:30px}.shop-info>div{grid-template-columns:65px 1fr}.section{padding-left:7%;padding-right:7%}}
@media(max-width:600px){body{font-size:12px}header{padding:5px 6%}.brand{gap:15px}.brand span{padding-left:15px;font-size:8px;letter-spacing:1.5px}.slides img{height:67vh;min-height:390px;max-height:560px;object-position:50% 65%}.hero-logo{width:70%;max-width:340px}.arrow{width:40px;height:40px;font-size:34px}.prev{left:12px}.next{right:12px}.dots{bottom:15px}.section{padding:50px 7%}.eyebrow{font-size:8px;margin-bottom:20px;letter-spacing:3px}h2{font-size:23px;margin-bottom:23px}.about>p{font-size:12px;line-height:2.3}.mobile-only{display:block}.desktop-only{display:none}.about-detail{font-size:7px;gap:18px;letter-spacing:1px}.about-detail span+span{padding-left:18px}.ruled{gap:18px}.ruled::before,.ruled::after{width:35px}.set{font-size:15px}.price-table{margin-top:25px}.price-table>div{padding:17px 0}.price-table span{font-size:20px}.price-table strong{font-size:27px}.price-table small{font-size:12px}.extras{gap:0 20px;margin-top:25px}.extras>div{font-size:10px;gap:5px}.note{font-size:10px}.outline{font-size:11px;padding:15px 18px}.social-grid{grid-template-columns:1fr;gap:15px;margin-top:28px}.social-grid>a{padding:25px}.social-grid strong{font-size:24px;margin-top:8px}.social-grid p{margin-top:5px}.social-arrow{top:35px}.access{padding-top:10px}.access-grid{grid-template-columns:1fr;gap:30px;margin-top:28px}.map iframe{height:270px}.shop-info>div{grid-template-columns:80px 1fr}.shop-info dd{font-size:12px}.salary strong{font-size:30px}.salary>span{display:block;margin-top:5px}.recruit .note{font-size:9px}footer{gap:25px;padding:25px 7% 100px}footer img{width:90px;height:80px}footer p{font-size:7px}.fixed-contact{display:grid;grid-template-columns:1.5fr 1fr}.fixed-contact a{padding:18px 8px;font-size:10px;letter-spacing:0}.fixed-contact span{margin-right:3px}}
@media(prefers-reduced-motion:reduce){html,.slides{scroll-behavior:auto}}

@media(min-width:601px) and (max-width:1000px){.social-grid{grid-template-columns:1fr}}
