
.g-top{background:#fff;border-bottom:1px solid #e6e6e6;position:sticky;top:0;z-index:50}
.g-top-in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.g-logo{display:flex;flex-direction:column;text-decoration:none;color:#1d1d1d;line-height:1.15}
.g-logo-word{font-weight:700;font-size:1.2rem;letter-spacing:.01em}
.g-logo-tag{font-size:.8rem;color:#666}
.g-nav{display:flex;gap:18px}
.g-nav a{text-decoration:none;color:#1d1d1d;font-weight:500}
.g-nav a:hover{text-decoration:underline}
.g-foot{background:#1f2a22;color:#e9ece9;padding:40px 0 32px;margin-top:0}
.g-foot a{color:#fff}
.g-foot-brand{font-weight:700;font-size:1.15rem;margin:0 0 12px}
.g-foot-nav{display:flex;flex-wrap:wrap;gap:10px 20px;margin-bottom:16px}
.g-foot-note{font-size:.85rem;opacity:.85;margin:6px 0;max-width:760px}
.g-foot-copy{font-size:.8rem;opacity:.7;margin-top:16px}
.g-home-hero{padding:48px 0 24px}
.g-home-hero h1{margin:0 0 12px}
.g-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;padding-bottom:48px}
.g-card{border:1px solid #e3e3e3;border-radius:14px;overflow:hidden;background:#fff;text-decoration:none;color:inherit;display:flex;flex-direction:column}
.g-card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}
.g-card-body{padding:18px 20px 22px}
.g-card-body h2{font-size:1.25rem;margin:0 0 8px}
.g-card-body p{margin:0 0 10px;color:#444}
.g-card-more{font-weight:600;text-decoration:underline}
.g-page{padding:40px 0 56px}
@media (max-width:480px){.g-logo-word{font-size:1.05rem}.g-nav{gap:14px}}
