:root{color-scheme:dark;background:#0a0a0a;color:#f4f1ed;font-family:Georgia,"Hiragino Mincho ProN","Yu Mincho",serif;font-size:16px;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;min-width:280px}a{color:inherit;text-decoration:none}a:hover{opacity:.78}a:focus-visible,button:focus-visible{outline:2px solid #fff;outline-offset:4px}p,h1,h2{margin:0}.site-header{height:78px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:0 clamp(20px,5vw,65px);border-bottom:1px solid #494846}.wordmark{font-size:1rem;white-space:nowrap}.wordmark span{font-size:1.45rem;margin-left:.2em}.site-header nav{display:flex;gap:clamp(14px,3vw,38px);font:.82rem Arial,sans-serif;letter-spacing:.12em}.eyebrow,.place{font:.8rem Arial,sans-serif;letter-spacing:.2em;color:#c8c4be}.home{max-width:1100px;margin:auto;padding:clamp(56px,9vw,120px) 25px 90px}.home-title{text-align:center}.home-title h1{font-size:clamp(2.5rem,7vw,5.6rem);font-weight:400;margin:17px 0 21px}.home-title p:not(.eyebrow){font-size:1rem;line-height:1.7;color:#d6d2ce}.home-title [lang=en]{font-family:Georgia,serif;margin-top:5px}.home-stores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:clamp(48px,7vw,85px)}.home-card{min-height:320px;border:1px solid #77716c;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:30px 25px 25px;transition:border-color .2s}.home-card:hover{border-color:#eee}.home-logo{object-fit:cover}.zushi-logo{width:min(310px,90%);height:145px;object-position:center;filter:invert(1)}.number3-logo{width:min(310px,90%);height:145px;object-position:center}.view{font:.9rem Arial,sans-serif;border-bottom:1px solid #aaa;padding-bottom:5px}footer{text-align:center;color:#9a9895;font:.75rem Arial,sans-serif;letter-spacing:.12em;padding:35px 20px}.page-intro{text-align:center;padding:55px 20px 36px}.page-intro .place{margin-bottom:20px}.page-intro h1{font-weight:400;font-size:clamp(1.9rem,5vw,3.2rem)}.page-intro .logo{display:block;margin:0 auto;width:min(390px,90vw);height:120px;object-fit:cover}.page-intro .logo-zushi{filter:invert(1)}.slide-show{max-width:1240px;margin:0 auto;position:relative;background:#171513}.slide{display:none}.slide.active{display:block}.slide img{display:block;width:100%;height:clamp(330px,55vw,680px);object-fit:cover;object-position:center 57%}.slide:nth-child(2) img{object-position:center 60%}.slide-controls{position:absolute;bottom:20px;left:24px;right:24px;display:flex;align-items:center;justify-content:space-between;gap:15px}.slide-count{font:.85rem Arial,sans-serif;letter-spacing:.12em;text-shadow:0 1px 8px #000}.slide-buttons{display:flex;gap:8px}.slide-buttons button{width:45px;height:45px;border:1px solid #e7e4df;background:rgba(0,0,0,.55);color:white;font-size:1.2rem;cursor:pointer}.slide-buttons button:hover{background:#282522}.content{max-width:930px;margin:0 auto;padding:clamp(54px,8vw,95px) 25px 80px}.content h2{font-weight:400;font-size:1.65rem;margin-bottom:30px}.copy-columns{display:grid;grid-template-columns:1fr 1fr;gap:55px}.copy-columns p{line-height:2;font-size:1rem;color:#ddd9d4}.copy-columns p+p{margin-top:1em}.copy-columns [lang=en]{font-family:Georgia,serif}.copy-columns [lang=en] p{line-height:1.8;color:#c9c5c0}.language{font:.8rem Arial,sans-serif;letter-spacing:.18em;color:#aaa69f;margin-bottom:16px}.info{border-top:1px solid #625e59;margin-top:55px;padding-top:32px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.info dt{font:.78rem Arial,sans-serif;letter-spacing:.14em;color:#a9a49d;margin:0 0 8px}.info dd{font-size:1rem;line-height:1.75;margin:0 0 23px}.info address{font-style:normal}.action-links{display:flex;gap:20px;flex-wrap:wrap}.action-links a{font:.85rem Arial,sans-serif;letter-spacing:.08em;border-bottom:1px solid #a9a49d;padding-bottom:5px}.notice{font-size:.82rem;line-height:1.7;color:#a9a49d;margin-top:24px}.other{display:block;border-top:1px solid #625e59;margin-top:48px;padding-top:24px;text-align:center;font:.92rem Arial,sans-serif}.other span{border-bottom:1px solid #aaa;padding-bottom:5px}@media(max-width:700px){.site-header{height:66px;padding:0 16px}.wordmark{font-size:.75rem}.wordmark span{font-size:1.13rem}.site-header nav{font-size:.68rem;gap:14px}.home{padding:55px 18px 70px}.home-stores{grid-template-columns:1fr;gap:14px;margin-top:48px}.home-card{min-height:270px}.slide img{height:clamp(340px,83vw,540px)}.slide-controls{left:16px;right:16px;bottom:16px}.copy-columns,.info{grid-template-columns:1fr;gap:27px}.content{padding:58px 23px 65px}.page-intro{padding:42px 16px 30px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.home-hero{max-width:1040px;margin:clamp(32px,5vw,60px) auto 0;overflow:hidden}.home-hero img{display:block;width:100%;height:clamp(310px,44vw,560px);object-fit:cover;object-position:center 56%}.home-stores{margin-top:clamp(48px,7vw,78px)}.home-logo,.page-intro .logo{mix-blend-mode:screen}.mobile-actions{display:none}.access-note{line-height:1.7;margin:-10px 0 28px;color:#ddd9d4}.access-note [lang=en]{display:block;color:#bdb9b4;font-family:Georgia,serif;margin-top:5px}
@media(max-width:700px){.home-hero{margin-top:34px}.home-hero img{height:360px;object-position:center 52%}.mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:930px;margin:0 auto;padding:16px 20px 0}.mobile-actions a{display:flex;align-items:center;justify-content:center;min-height:54px;border:1px solid #aaa39c;font:1rem Arial,sans-serif;letter-spacing:.06em}.mobile-actions a:active{background:#26221e}}

/* 店舗写真と説明文 */
.home-stores{align-items:stretch;margin-top:clamp(40px,6vw,72px)}
.home-card{display:block;min-height:0;padding:0;overflow:hidden;text-align:center}
.home-store-photo{display:block;width:100%;aspect-ratio:4/3;height:auto;object-fit:cover}
.home-card-details{display:flex;min-height:250px;flex-direction:column;align-items:center;justify-content:space-between;gap:16px;padding:25px 20px 28px}
.home-card .home-logo{height:110px;object-fit:contain}
.home-card .zushi-logo{width:min(250px,75%);height:110px;object-fit:cover;object-position:center 45%}
.copy-columns>div+div{border-left:1px solid #49443f;padding-left:35px}
@media(max-width:700px){.home-card-details{min-height:220px}.copy-columns{gap:0}.copy-columns>div+div{border-left:0;border-top:1px solid #49443f;padding:30px 0 0;margin-top:32px}}

.home-card .number3-logo{width:430px;max-width:none;height:120px;object-fit:cover;object-position:center}

.page-intro .logo-zushi{width:min(310px,80vw);height:140px;object-fit:cover;object-position:center 45%}

footer .footer-company{display:block;width:max-content;margin:0 auto 18px;color:#c7c2bc;border-bottom:1px solid #77716c;padding-bottom:5px;font-size:.82rem;letter-spacing:.03em}
footer span{display:block}
.company-page{max-width:780px;margin:0 auto;padding:clamp(70px,11vw,130px) 25px clamp(85px,12vw,150px)}
.company-page h1{font-size:clamp(2rem,5vw,3.4rem);font-weight:400;margin:14px 0 50px}
.company-details{margin:0;border-top:1px solid #625e59}
.company-details>div{display:grid;grid-template-columns:180px 1fr;gap:30px;border-bottom:1px solid #48443f;padding:27px 0}
.company-details dt{font:.85rem Arial,sans-serif;color:#b8b2aa}
.company-details dd{margin:0;line-height:1.9;overflow-wrap:anywhere}
.company-details address{font-style:normal}
.company-details a,.company-back{border-bottom:1px solid #8e8982;padding-bottom:3px}
.company-back{display:inline-block;margin-top:55px;font-size:.9rem}
@media(max-width:700px){.company-details>div{grid-template-columns:1fr;gap:8px;padding:22px 0}.company-page h1{margin-bottom:36px}}

.topics{margin-top:clamp(85px,11vw,145px);border-top:1px solid #625e59;padding-top:42px}
.topics-heading{display:flex;align-items:baseline;gap:18px;margin-bottom:30px}
.topics-heading h2{font-size:clamp(1.8rem,4vw,2.5rem);font-weight:400}
.topics .eyebrow{font-size:.72rem}
.topics-list{border-top:1px solid #48443f}
.topic{display:grid;grid-template-columns:105px minmax(0,1fr) 20px;gap:28px;align-items:center;padding:23px 8px;border-bottom:1px solid #48443f}
.topic time{font:.82rem Arial,sans-serif;color:#aaa49d}
.topic-copy{display:flex;flex-direction:column;gap:8px}
.topic-copy strong{font-size:1rem;font-weight:400}
.topic-copy [lang=en]{font-size:.87rem;color:#bcb7b0}
.topic-arrow{font-size:1.2rem;color:#c7c2bc}
@media(max-width:700px){.topics{margin-top:80px;padding-top:35px}.topic{grid-template-columns:minmax(0,1fr) 20px;gap:12px;padding:20px 0}.topic time{grid-column:1/-1}.topic-copy{grid-column:1}.topic-arrow{grid-column:2;grid-row:2}}
