
:root{--ink:#11110f;--paper:#f7f2e9;--white:#fff;--cream:#eee6da;--gold:#b38b4d;--gold2:#8d672f;--muted:#56514a;--line:#d8cfc1;--header:86px;--bottom:58px;--shadow:0 22px 60px rgba(20,16,10,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic","YuGothic",Meiryo,sans-serif;line-height:1.75;overflow-x:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit}.skip-link{position:fixed;left:12px;top:-60px;z-index:999;background:#fff;padding:10px 14px}.skip-link:focus{top:12px}:focus-visible{outline:3px solid #2563eb;outline-offset:3px}
.site-header{height:var(--header);display:flex;align-items:center;gap:24px;padding:0 2.5vw;background:rgba(247,242,233,.97);position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(0,0,0,.09);backdrop-filter:blur(12px)}.brand{min-width:180px;display:flex;flex-direction:column;line-height:1}.brand span,.brand small{font:10px Georgia,serif;letter-spacing:.16em}.brand strong{font:34px Georgia,serif;letter-spacing:.08em}.desktop-nav{flex:1;display:flex;justify-content:center;gap:19px;min-width:0}.desktop-nav a{font-size:12px;font-weight:700;white-space:nowrap;padding:9px 0}.desktop-nav a.active{color:var(--gold2);border-bottom:2px solid var(--gold)}.header-actions{display:flex;gap:8px}.header-btn,.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0 21px;border:1px solid transparent;font-size:13px;font-weight:700;letter-spacing:.03em;transition:.2s}.header-btn:hover,.button:hover{transform:translateY(-2px)}.gold{background:var(--gold);color:#fff}.dark{background:#111;color:#fff}.white{background:#fff;color:#111}.outline-dark{border-color:#111;background:transparent;color:#111}.outline-white{border-color:#fff;background:transparent;color:#fff}.menu-toggle{display:none;width:46px;height:46px;border:0;background:transparent;margin-left:auto}.menu-toggle span{width:24px;height:2px;background:#111;display:block;margin:5px auto}.mobile-menu{position:fixed;z-index:120;top:76px;left:12px;right:12px;background:#111;color:#fff;padding:12px;max-height:calc(100dvh - 90px);overflow:auto;box-shadow:var(--shadow)}.mobile-menu a{display:block;padding:11px 14px;border-bottom:1px solid #333}.mobile-menu-action{font-weight:700}.gold-bg{background:var(--gold)}
.eyebrow{margin:0 0 12px;color:var(--gold2);font:700 12px Georgia,serif;letter-spacing:.28em}.light-eyebrow{color:#e6c98f}.display-title{margin:5px 0 22px;font:400 clamp(36px,4vw,62px)/1.18 "Hiragino Mincho ProN","Yu Mincho",YuMincho,serif}.section{padding:95px 7vw}.muted-bg{background:var(--cream)}.section-heading{max-width:780px}.section-heading.center{text-align:center;margin:0 auto 38px}.text-link{text-decoration:underline;text-underline-offset:5px;font-weight:700}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.center-row{justify-content:center}.center-button{text-align:center;margin-top:35px}
.hero-home{height:650px;position:relative;overflow:hidden;color:#fff;background:#777}.hero-home-photo{position:absolute;inset:0;background:url("assets/cut_woman.jpeg") center 42%/cover no-repeat}.hero-home-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,12,10,.72),rgba(12,12,10,.34) 45%,rgba(12,12,10,.06) 75%)}.hero-home-content{position:absolute;left:6.5vw;top:50%;transform:translateY(-50%);z-index:2;max-width:650px;text-shadow:0 2px 12px rgba(0,0,0,.35)}.hero-home h1{font:400 clamp(55px,6.4vw,96px)/.92 Georgia,serif;margin:0 0 20px}.hero-jp{font:600 21px Georgia,"Yu Mincho",serif;margin:0 0 14px}.hero-home-content>p:last-of-type{font-size:15px}.since-badge{position:absolute;right:7vw;bottom:35px;z-index:2;width:145px;height:145px;border:1px solid rgba(255,255,255,.8);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:Georgia,serif;text-align:center}.since-badge strong{font-size:38px;line-height:1}.since-badge span{font-size:10px;letter-spacing:.14em}
.quick-services{display:grid;grid-template-columns:repeat(4,1fr);background:#fff}.quick-services a{border-right:1px solid var(--line)}.quick-services a:last-child{border:0}.quick-services img{width:100%;height:145px;object-fit:cover}.quick-services div{padding:15px 17px}.quick-services b{font:22px Georgia,serif}.quick-services span{display:block;font-size:12px;color:var(--muted)}
.intro-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:7vw}.feature-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.feature-grid article{padding:25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.feature-grid strong{font:28px Georgia,serif;color:var(--gold2)}.feature-grid h3{margin:6px 0}.feature-grid p{font-size:13px;color:var(--muted)}
.beauty-teaser{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;background:var(--cream)}.teaser-photo img{width:100%;aspect-ratio:5/4;object-fit:cover;box-shadow:var(--shadow)}
.home-menu{background:#fff}.menu-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.menu-cards article{border:1px solid var(--line);padding:25px;background:#fff}.menu-cards span{font:11px Georgia,serif;color:var(--gold2);letter-spacing:.15em}.menu-cards h3{font:23px "Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;margin:10px 0}.menu-cards strong{font-size:22px}.menu-cards p{font-size:13px;color:var(--muted)}
.cta-dark{padding:85px 7vw;text-align:center;background:#131311;color:#fff}.cta-dark h2{font:400 clamp(36px,4.4vw,64px)/1.15 "Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;margin:8px 0 14px}.cta-dark>p:not(.eyebrow){color:#ddd}
.subhero{min-height:470px;padding:85px 7vw;display:flex;align-items:center;color:#fff;position:relative;background-size:cover;background-position:center}.subhero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,9,.75),rgba(10,10,9,.22))}.subhero>div{position:relative;z-index:1;max-width:680px}.subhero h1{font:400 clamp(45px,5.4vw,78px)/1.08 "Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;margin:10px 0 22px}.subhero-men{background-image:url("assets/cut_man_bw.jpeg")}.subhero-beauty{background-image:url("assets/ladies_shave.jpeg");background-position:center 40%}
.split{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.round-image{width:100%;aspect-ratio:5/4;object-fit:cover;box-shadow:var(--shadow)}.note-box{padding:18px;border-left:4px solid var(--gold);background:#fff}.service-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-detail-grid article,.two-cards article{border:1px solid var(--line);background:#fff;padding:28px}.service-detail-grid h3,.two-cards h3{font:24px "Hiragino Mincho ProN","Yu Mincho",YuMincho,serif}.service-detail-grid strong,.two-cards strong{font-size:21px}.service-detail-grid p,.two-cards p{color:var(--muted)}
.beauty-list{border-top:1px solid var(--line)}.beauty-list article{display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.beauty-list h3{margin:0;font:22px "Hiragino Mincho ProN","Yu Mincho",YuMincho,serif}.beauty-list p{margin:4px 0 0;color:var(--muted);font-size:13px}.beauty-list strong{white-space:nowrap;font-size:18px}.two-cards{max-width:900px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.page-title{padding:75px 7vw 55px;background:#111;color:#fff}.page-title h1{font:400 clamp(45px,5.4vw,76px)/1.1 "Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;margin:9px 0 15px}.page-title>p:last-child{max-width:720px;color:#ddd}
.price-section{padding-top:75px;padding-bottom:75px}.price-heading h2{font:400 40px Georgia,"Yu Mincho",serif;margin:5px 0 25px}.price-table{max-width:1000px;border-top:1px solid var(--line)}.price-table>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:17px 3px;border-bottom:1px solid var(--line);align-items:center}.price-table span b,.price-table span small{display:block}.price-table span small{font-size:12px;color:var(--muted);margin-top:3px}.price-table strong{white-space:nowrap}.price-note{font-size:12px;color:var(--muted);margin-top:18px}
.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.gallery-grid figure{margin:0;background:#fff}.gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-grid figcaption{padding:18px}.gallery-grid b,.gallery-grid span{display:block}.gallery-grid b{font:21px Georgia,serif}.gallery-grid span{font-size:13px;color:var(--muted)}
.staff-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.staff-grid article{padding:32px;border:1px solid var(--line);background:#fff}.staff-grid span{font:12px Georgia,serif;color:var(--gold2);letter-spacing:.15em}.staff-grid h2{font:29px "Hiragino Mincho ProN","Yu Mincho",YuMincho,serif}.staff-grid p{color:var(--muted)}
.access-layout{display:grid;grid-template-columns:1fr .85fr;gap:7vw;align-items:center}.small-title{font-size:44px}.info-list{margin:25px 0}.info-list div{display:grid;grid-template-columns:110px 1fr;border-bottom:1px solid var(--line);padding:15px 0}.info-list dt{font-weight:700}.info-list dd{margin:0}.access-card{padding:55px;background:var(--cream);text-align:center}.access-card img{max-width:330px;margin:0 auto 25px}.three-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.three-steps article{background:#fff;padding:27px;border:1px solid var(--line)}.three-steps span{font:27px Georgia,serif;color:var(--gold2)}.three-steps h3{font:24px "Hiragino Mincho ProN","Yu Mincho",YuMincho,serif}.legal-copy{max-width:900px}.legal-copy h2{margin-top:38px;font:28px "Hiragino Mincho ProN","Yu Mincho",YuMincho,serif}
.site-footer{padding:40px 6vw;background:#0d0d0c;color:#ddd;display:grid;grid-template-columns:1.2fr 1fr auto;gap:30px;align-items:start}.footer-brand{font:28px Georgia,serif;letter-spacing:.06em}.site-footer p{font-size:12px}.site-footer nav{display:flex;flex-direction:column;gap:8px;font-size:12px}.copyright{white-space:nowrap}.mobile-bottom-nav{display:none}
@media(max-width:1180px){.desktop-nav{gap:11px}.desktop-nav a{font-size:11px}.brand{min-width:160px}.brand strong{font-size:29px}.header-btn{padding:0 14px}.menu-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){
:root{--header:76px}
.site-header{height:76px;min-height:76px;padding:0 14px;gap:8px;justify-content:space-between;overflow:visible}
.desktop-nav,.header-actions{display:none}
.brand{min-width:0;max-width:calc(100vw - 72px);flex:0 1 auto;overflow:hidden}
.brand span,.brand strong,.brand small{display:block;max-width:100%;white-space:nowrap;overflow:hidden}
.brand strong{font-size:24px;line-height:1;letter-spacing:.05em}
.brand span,.brand small{font-size:7.5px;line-height:1.15;letter-spacing:.1em}
.menu-toggle{display:block;flex:0 0 44px;width:44px;height:44px;margin:0;padding:9px}
.mobile-menu{top:76px;left:10px;right:10px}
.hero-home{height:680px}.hero-home-photo{background-position:61% center}.hero-home-shade{background:linear-gradient(90deg,rgba(10,10,9,.78),rgba(10,10,9,.34) 62%,rgba(10,10,9,.12))}.hero-home-content{left:7vw;right:7vw;max-width:560px}.hero-home h1{font-size:clamp(50px,12vw,72px)}.since-badge{display:none}
.quick-services{grid-template-columns:repeat(2,1fr)}
.intro-grid,.beauty-teaser,.split,.access-layout{grid-template-columns:1fr;gap:45px}.reverse-mobile>div:first-child{order:2}.reverse-mobile>div:last-child{order:1}.service-detail-grid{grid-template-columns:1fr}.staff-grid{grid-template-columns:1fr}
.site-footer{grid-template-columns:1fr 1fr}.copyright{grid-column:1/-1}
.page-title{padding-top:56px}
.mobile-bottom-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:130;background:#111;color:#fff;padding-bottom:env(safe-area-inset-bottom)}.mobile-bottom-nav a{height:var(--bottom);display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid #333}.mobile-bottom-nav strong{font-size:11px}.mobile-bottom-nav small{font-size:8px;color:#bbb}body{padding-bottom:calc(var(--bottom) + env(safe-area-inset-bottom))}
}
@media(max-width:600px){
.section{padding:64px 6vw}.hero-home{height:645px}.hero-home-content{left:6vw;right:6vw}.hero-home h1{font-size:clamp(45px,13vw,57px)}.hero-jp{font-size:16px}.hero-home-content>p:last-of-type{font-size:13px}.hero-home-content>p:last-of-type br{display:none}.button-row .button{min-width:0}
.quick-services img{height:105px}.quick-services b{font-size:18px}.quick-services div{padding:12px}.feature-grid{grid-template-columns:1fr}.menu-cards{grid-template-columns:1fr}.subhero{min-height:400px;padding:65px 6vw}.subhero h1{font-size:42px}.beauty-list article{grid-template-columns:1fr;gap:4px}.beauty-list strong{font-size:16px}.two-cards,.gallery-grid,.three-steps{grid-template-columns:1fr}.price-table>div{gap:12px}.price-table span b{font-size:14px}.price-table span small{font-size:11px}.price-table strong{font-size:13px}.info-list div{grid-template-columns:1fr;gap:3px}.info-list dd{font-size:14px}.access-card{padding:35px 25px}.site-footer{grid-template-columns:1fr}.copyright{white-space:normal}.display-title{font-size:36px}.page-title{padding:52px 6vw 44px}.page-title h1{font-size:42px;line-height:1.2;word-break:keep-all;overflow-wrap:normal;writing-mode:horizontal-tb}
}
@media(max-width:414px){.hero-home h1{font-size:48px}.hero-home{height:635px}.quick-services span{font-size:11px}.header-btn,.button{padding-left:16px;padding-right:16px}.price-table>div{grid-template-columns:minmax(0,1fr) auto}.brand strong{font-size:22px}.brand span,.brand small{font-size:7px}}
@media(max-width:390px){.hero-home h1{font-size:46px}.hero-home-content>p:last-of-type{font-size:12.5px}.quick-services b{font-size:16px}.display-title{font-size:34px}.page-title h1{font-size:38px}}
@media(max-width:375px){.hero-home h1{font-size:44px}.hero-home{height:625px}.button{font-size:12px}.price-table strong{font-size:12px}.brand strong{font-size:20.5px}.page-title h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* About page title: prevent clipping on all mobile widths */
.about-main-title{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:.12em;row-gap:.06em;max-width:100%;margin-right:0;overflow:visible;white-space:normal;word-break:keep-all;}
.about-main-title span{display:inline-block;max-width:100%;}
@media(max-width:600px){.about-main-title{font-size:clamp(31px,9.4vw,40px)!important;line-height:1.22!important;letter-spacing:0!important;}}
@media(max-width:414px){.about-main-title{font-size:36px!important;}}
@media(max-width:390px){.about-main-title{font-size:34px!important;}}
@media(max-width:375px){.about-main-title{font-size:32px!important;}}

/* Separate-page navigation: desktop density and mobile reliability */
@media(min-width:901px){
  .site-header{gap:14px}
  .desktop-nav{gap:10px}
  .desktop-nav a{font-size:10.5px}
  .brand{min-width:155px}
  .header-btn{padding-left:12px;padding-right:12px}
}
@media(max-width:1220px) and (min-width:901px){
  .desktop-nav a{font-size:9.8px}
  .desktop-nav{gap:8px}
  .brand strong{font-size:27px}
}
\n.booking-card{max-width:760px;margin:auto;background:#fff;border:1px solid var(--line);padding:28px}.booking-card label{display:block;font-weight:700;margin:0 0 16px}.booking-card input,.booking-card select,.booking-card textarea{width:100%;padding:13px;margin-top:5px;border:1px solid #cfc6b9;background:#fff;font-size:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.notice{padding:13px 15px;background:#fff4d8;border-left:4px solid var(--gold)}@media(max-width:600px){.form-grid{grid-template-columns:1fr}.booking-card{padding:18px}}\n
.public-table{margin-top:28px;overflow:auto}.public-table table{width:100%;border-collapse:collapse;min-width:620px;background:#fff}.public-table th,.public-table td{padding:13px;border-bottom:1px solid var(--line);text-align:left}.booking-card{max-width:760px;margin:0 auto;background:#fff;border:1px solid var(--line);padding:28px}.booking-card label{display:block;font-weight:700;margin-bottom:16px}.booking-card input,.booking-card select,.booking-card textarea{width:100%;padding:13px;margin-top:5px;border:1px solid #cfc6ba;font-size:16px}.notice{padding:12px 14px;background:#fff4d8;border-left:4px solid var(--gold)}

/* Clear customer/member UI */
.clear-card{max-width:760px;margin:0 auto}.field-help{display:block;font-size:12px;color:#666;margin-top:4px;font-weight:400}.important-note,.public-help-box{padding:16px 18px;background:#fff6df;border-left:5px solid #b38b4d;margin:0 0 22px;border-radius:4px}.public-help{font-size:12px;color:#666;line-height:1.7}.success-public{padding:14px 16px;background:#eaf7f0;border-left:5px solid #16784c}.customer-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px}.customer-flow.four{grid-template-columns:repeat(4,1fr)}.customer-flow div{padding:11px 8px;background:#fff;border:1px solid #ddd4c7;text-align:center;font-size:12px}.customer-flow b{display:block;color:#8d672f;font-size:18px}.mypage-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.mypage-summary>div{padding:18px;background:#fff;border:1px solid #ddd4c7}.mypage-summary span,.mypage-summary strong{display:block}.mypage-summary strong{font-size:28px;margin-top:4px}.public-card-list{display:grid;gap:12px;margin-top:24px}.reservation-card{background:#fff;border:1px solid #ddd4c7;padding:18px}.reservation-card h3{margin:12px 0 3px}.reservation-card p{margin:0 0 12px}.reservation-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.reservation-card-head div span{display:block;font-size:11px;color:#777}.public-status{display:inline-block;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700}.public-status.pending{background:#fff5de;color:#7a4d08}.public-status.confirmed{background:#edf5ff;color:#205789}.public-status.visited{background:#eaf7f0;color:#12613d}.public-status.cancelled,.public-status.no_show{background:#fff0ee;color:#8c241a}.readonly-customer{padding:14px;background:#f8f5ef;border:1px solid #ddd4c7;margin-bottom:16px}.readonly-customer b,.readonly-customer span,.readonly-customer small{display:block}.readonly-customer span{font-size:17px;margin-top:3px}.readonly-customer small{color:#666;margin-top:3px}.public-empty{padding:24px;text-align:center;background:#fff;border:1px solid #ddd4c7;color:#666}
@media(max-width:600px){.customer-flow,.customer-flow.four{grid-template-columns:1fr 1fr}.mypage-summary{grid-template-columns:1fr}.reservation-card-head{flex-direction:column}.clear-card .button{width:100%}}
/* Long Japanese page titles must wrap safely on phones */
@media(max-width:600px){
  .page-title h1{
    max-width:100%;
    font-size:clamp(31px,9.6vw,40px);
    line-height:1.25;
    white-space:normal;
    word-break:normal;
    overflow-wrap:anywhere;
  }
}

.people-hero{display:grid;grid-template-columns:1fr 1.35fr 1fr;min-height:520px;background:#f6f3ed;overflow:hidden}
.hero-panel{background-size:cover;background-position:center;min-height:520px}.hero-men{background-position:center 30%}.hero-beauty{background-position:center 35%}
.hero-center{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 28px;background:rgba(250,248,243,.96)}
.hero-center h1{font:400 clamp(42px,4.8vw,74px)/1.05 Georgia,serif;letter-spacing:.04em;margin:10px 0 20px;white-space:nowrap}.hero-center h1 span{font-size:.72em}.hero-center p{max-width:560px}.hero-center .hero-jp{font-size:20px}
.home-service{background:#fff}.home-service-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.service-photo-card{display:block;border:1px solid var(--line);background:#fff;color:inherit;text-decoration:none;overflow:hidden}.service-photo-card img{width:100%;height:190px;object-fit:cover;filter:none}.service-photo-card div{padding:18px}.service-photo-card h3{font:22px Georgia,serif;margin:0 0 4px}.service-photo-card p{margin:0 0 14px;color:#333}.service-photo-card span{font:13px Georgia,serif;color:var(--gold2)}
.home-info{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:14px;padding-top:0}.home-info-card{min-height:260px;border:1px solid var(--line);background:#fff;padding:32px;display:flex;align-items:center}.home-info-card.dark{background:#111;color:#fff}.home-info-card h2{font:28px "Hiragino Mincho ProN","Yu Mincho",serif}.access-photo-card{padding:0;display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden}.access-photo-card .access-copy{padding:28px}.access-photo-card img{width:100%;height:100%;min-height:260px;object-fit:cover}.storefront-photo{width:100%!important;max-width:none!important;height:auto!important}
@media(max-width:1000px){.people-hero{grid-template-columns:1fr 1fr}.hero-center{grid-column:1/-1;grid-row:2;padding:40px 6vw}.hero-panel{min-height:330px}.hero-center h1{white-space:normal}.home-service-grid{grid-template-columns:repeat(2,1fr)}.home-info{grid-template-columns:1fr}.access-photo-card{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.people-hero{grid-template-columns:1fr 1fr;min-height:0}.hero-panel{min-height:210px}.hero-center{padding:34px 6vw 38px}.hero-center h1{font-size:38px;line-height:1.12}.hero-center .hero-jp{font-size:16px}.home-service-grid{grid-template-columns:1fr}.service-photo-card{display:grid;grid-template-columns:42% 58%}.service-photo-card img{height:150px}.service-photo-card div{padding:16px}.home-info{padding-left:5vw;padding-right:5vw}.access-photo-card{grid-template-columns:1fr}.access-photo-card img{min-height:220px}.home-info-card{min-height:0}}


/* ===== 2026-08 Header readability refinement ===== */
@media (min-width: 1001px){
  .site-header{
    padding-left:clamp(24px,3vw,52px);
    padding-right:clamp(24px,3vw,52px);
    gap:24px;
  }
  .desktop-nav{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:1 1 auto;
    gap:clamp(18px,1.65vw,28px);
    min-width:0;
  }
  .desktop-nav a{
    position:relative;
    display:inline-flex;
    align-items:center;
    min-height:64px;
    padding:0;
    font-size:14px !important;
    font-weight:600;
    line-height:1.35;
    letter-spacing:.02em;
    white-space:nowrap;
    color:#1f1c18;
    text-decoration:none;
  }
  .desktop-nav a:hover,
  .desktop-nav a:focus-visible{
    color:#a87422;
  }
  .desktop-nav a.active::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:10px;
    height:2px;
    background:#b7832d;
  }
  .header-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex:0 0 auto;
  }
  .header-reserve-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 18px;
    background:#b88a3b;
    color:#fff !important;
    text-decoration:none;
    font-size:14px;
    font-weight:700;
    letter-spacing:.04em;
    border:1px solid #b88a3b;
  }
  .header-reserve-btn:hover,
  .header-reserve-btn:focus-visible{
    background:#9e732e;
    border-color:#9e732e;
  }
}

@media (min-width:1001px) and (max-width:1280px){
  .desktop-nav{
    gap:14px;
  }
  .desktop-nav a{
    font-size:13px !important;
  }
  .site-header{
    padding-left:20px;
    padding-right:20px;
    gap:16px;
  }
}

@media (max-width:1000px){
  .desktop-nav,
  .header-actions{
    display:none !important;
  }
  .site-header{
    min-height:68px;
    padding:10px 16px;
    display:flex;
    align-items:center;
    justify-content:space-between;
  }
  .menu-toggle{
    display:flex !important;
    width:46px;
    height:46px;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:5px;
    border:0;
    background:transparent;
    cursor:pointer;
  }
  .menu-toggle span{
    display:block;
    width:28px;
    height:2px;
    background:#111;
  }
  .mobile-menu{
    position:fixed;
    top:68px;
    left:0;
    right:0;
    z-index:9999;
    max-height:calc(100vh - 68px);
    overflow-y:auto;
    background:#fff;
    border-top:1px solid #e5ded2;
    box-shadow:0 12px 30px rgba(0,0,0,.12);
    padding:12px 18px 24px;
  }
  .mobile-menu[hidden]{
    display:none !important;
  }
  .mobile-menu a{
    display:flex;
    align-items:center;
    min-height:50px;
    padding:0 4px;
    border-bottom:1px solid #eee8de;
    font-size:16px;
    font-weight:600;
    line-height:1.4;
    color:#171717;
    text-decoration:none;
  }
  .mobile-menu a:last-child{
    margin-top:12px;
    justify-content:center;
    min-height:48px;
    background:#b88a3b;
    color:#fff;
    border-bottom:0;
  }
}

/* Prevent navigation text from appearing like one continuous sentence */
.desktop-nav a + a{
  margin-left:0 !important;
}
\n\n/* 正式版1.8.1：正式店舗ロゴをWebヘッダーへ採用 */
.site-header .brand{
  flex:0 0 auto;
  min-width:0!important;
  width:205px;
  max-width:205px;
  height:64px;
  display:flex!important;
  align-items:center;
  justify-content:flex-start;
  overflow:visible!important;
  line-height:1;
}
.site-header .brand-logo{
  display:block;
  width:100%;
  height:auto;
  max-height:58px;
  object-fit:contain;
  object-position:left center;
}
@media (min-width:1001px) and (max-width:1280px){
  .site-header .brand{width:175px;max-width:175px;height:58px}
  .site-header .brand-logo{max-height:52px}
}
@media (max-width:1000px){
  .site-header .brand{
    width:min(230px,calc(100vw - 82px));
    max-width:min(230px,calc(100vw - 82px))!important;
    height:54px;
  }
  .site-header .brand-logo{max-height:50px}
}
@media (max-width:420px){
  .site-header .brand{width:min(205px,calc(100vw - 78px));max-width:min(205px,calc(100vw - 78px))!important}
  .site-header .brand-logo{max-height:46px}
}
