*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:#454953;background:#fff;font-family:"Noto Sans JP",sans-serif;line-height:1.8}
img{max-width:100%;height:auto;display:block}
a{color:#175286}
.wrap{max-width:960px;margin:0 auto;padding:0 20px}
.row{display:flex;align-items:center;justify-content:space-between}
.bar{position:sticky;top:0;z-index:2;background:#fff;border-bottom:1px solid #bdd9ea}
.bar .wrap{height:64px}
.logo{color:#175286;font-weight:700;text-decoration:none;font-size:18px}
.logo span{margin-left:10px;font-weight:500;font-size:13px;color:#454953}
.btn{display:inline-block;background:#175286;color:#fff;text-decoration:none;padding:10px 18px;font-weight:700;font-size:14px}
.btn.green{background:#3cb153}
.hero{position:relative;min-height:420px;background:#175286;color:#fff}
.hero img{width:100%;height:520px;object-fit:cover;opacity:.45}
.hero-copy{position:absolute;left:0;right:0;top:0;bottom:0;display:flex;flex-direction:column;justify-content:center;max-width:960px;margin:0 auto;padding:40px 20px}
.hero h1{margin:8px 0 12px;font-size:36px;line-height:1.4;font-weight:700}
.hero p{max-width:640px}
.kicker,.en{letter-spacing:.12em;font-size:12px;font-weight:700;color:#2a77a9;margin:0}
.hero .kicker{color:#bdd9ea}
section{padding:64px 0}
.band{background:#eef3f9}
h2{margin:4px 0 16px;font-size:28px;color:#175286;font-weight:700}
