/* Approved structure retained; readable scale and restrained motion. */
:root{--accent:#706b45;--reading-size:15px;--ease-out:cubic-bezier(.22,1,.36,1)}
.intro p:not(.eyebrow),.service-card p:not(.eyebrow),.reasons p,.answer,.split p,.visit p:not(.en){font-size:var(--reading-size);line-height:2.05}
.hero-note{font-size:12px;text-shadow:0 1px 8px #0009}.button,.solid-link,.text-link,.floating-reserve{font-size:14px}.floating-reserve{background:#6d6745;min-height:52px;transition:opacity .3s,transform .3s}.floating-reserve.is-hidden{opacity:0;pointer-events:none;visibility:hidden;transform:translateY(100%)}
.menu-toggle{width:48px;height:48px}.menu-close{min-width:80px;min-height:48px}.fitting-facts{list-style:none;padding:0;margin:30px auto 0;display:flex;justify-content:center;gap:0;font-size:13px}.fitting-facts li{padding:0 20px;border-right:1px solid var(--line)}.fitting-facts li:last-child{border:0}.category-jumps{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 27px;margin-top:35px}.category-jumps a{font-size:14px;min-height:44px;padding:10px 0;border-bottom:1px solid var(--line)}.service-card{scroll-margin-top:40px}.service-card .card-arrow{font-size:0}.service-card .card-arrow:before{content:'詳しく見る';font:13px var(--body);float:left}.service-card .card-arrow:after{content:'↗';font-size:19px;display:inline-block;transition:transform .4s var(--ease-out)}.service-card:hover .card-arrow:after{transform:translate(4px,-4px)}.service-card:hover{opacity:1}.service-card:focus-visible{outline-offset:8px}.button,.solid-link{position:relative;transition:background .3s,color .3s}.button:hover{background:#394637;color:#fff}.solid-link{background:#706b45}.solid-link:hover{background:#535038;opacity:1}.hero-veil{background:linear-gradient(90deg,#08231535,transparent 68%),linear-gradient(180deg,#0d261b40,transparent 40%,#0d261b25)}
@media(prefers-reduced-motion:no-preference){
 .home .hero-copy h1{animation:quiet-title 1.1s var(--ease-out) both}
 .home .hero-note{animation:quiet-note .8s .35s both}
 #site-menu[open]{animation:menu-enter .4s var(--ease-out) both}
 #site-menu[open] nav a{animation:quiet-note .45s .1s both}
 [data-photo-reveal].photo-pending{clip-path:inset(0 0 8% 0);opacity:.8;transition:clip-path 1.1s var(--ease-out),opacity .8s}
 [data-photo-reveal].photo-entered{clip-path:inset(0);opacity:1}
 @keyframes quiet-title{from{clip-path:inset(0 0 100% 0);opacity:.5}to{clip-path:inset(0);opacity:1}}
 @keyframes quiet-note{from{opacity:0}to{opacity:1}}
 @keyframes menu-enter{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}
}
@media(max-width:600px){
 .intro{padding:72px 0 80px}.intro p:not(.eyebrow){font-size:15px;line-height:2.05}.intro p br{display:none}.intro h2{font-size:28px}.hero-note{font-size:11px;width:250px;top:calc(100% + 30px)}.hero-veil{background:linear-gradient(90deg,#102b194d,transparent 58%),linear-gradient(180deg,#0a241b40,transparent 35%,#0a241b33)}
 .fitting-facts{font-size:12px;margin-top:25px}.fitting-facts li{padding:0 12px}.category-jumps{gap:6px 20px;margin-top:25px}.category-jumps a{font-size:13px}.service-card p:not(.eyebrow),.reasons p,.answer,.split p,.visit p:not(.en){font-size:15px}.service-card .eyebrow{font-size:17px}.faq-list summary{font-size:15px}.capabilities a{font-size:14px;min-height:56px}.section-head h2{font-size:25px;letter-spacing:.025em}.service-grid{gap:55px}.service-card>div{padding-top:26px}.floating-reserve{font-size:13px;min-height:52px;padding:15px 22px calc(15px + env(safe-area-inset-bottom))}.site-footer{padding-bottom:110px}.button,.solid-link,.text-link{font-size:14px}.footer-bottom{font-size:11px;line-height:1.9}.site-footer nav a{min-height:38px;display:flex;align-items:center}.inner-page .lead-copy,.inner-page .text-detail p{font-size:15px}.inner-page .phone{font-size:clamp(25px,7.5vw,36px)}
}
@media(prefers-reduced-motion:reduce){[data-photo-reveal]{clip-path:none!important;opacity:1!important}}
