@charset "UTF-8";

:root{--f3-text:#263238;--f3-muted:#66737a;--f3-line:#dfe7e9;--f3-accent:#087f8c;}
html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic","YuGothic",Meiryo,sans-serif;color:var(--f3-text);font-size:17px;line-height:1.9;letter-spacing:.035em;font-feature-settings:"palt" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.45;letter-spacing:.025em;word-break:auto-phrase;}
p,.card-text,.media-body,address{line-height:1.9;}
.container{max-width:1180px;}
.navbar-brand{font-weight:700;letter-spacing:.12em;}
.nav-link{font-weight:500;}
.card{height:100%;border:1px solid var(--f3-line);border-radius:16px;box-shadow:none;}
.card-body{padding:1.75rem;}
.card-text{color:var(--f3-muted);}
.btn{border-radius:999px;font-weight:600;letter-spacing:.03em;}
.carousel-caption{background:rgba(0,0,0,.28);border-radius:12px;padding:1rem 1.5rem;}
.text-center h2{margin-top:1rem;margin-bottom:2rem;}
footer{padding:2rem 0;}
@media(max-width:767.98px){body{font-size:16px;line-height:1.85;letter-spacing:.025em}.container{padding-left:1rem;padding-right:1rem}.card-body{padding:1.4rem}}
