*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:"Yu Gothic","Meiryo",sans-serif;color:#123b66;background:#f7fbff}a{color:inherit}.wrap{max-width:1180px;margin:0 auto;padding:0 20px}.site-header{background:#fff;border-bottom:3px solid #19aee8}.head{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{width:410px;max-width:58vw;height:auto;display:block}.nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.nav a{display:block;padding:10px 12px;text-decoration:none;font-weight:700;color:#0877c9;border-radius:12px}.hero{background:linear-gradient(135deg,#eaf9ff,#fff);padding:44px 0}.badge{display:inline-block;background:#128de0;color:#fff;border-radius:30px;padding:9px 20px;font-weight:700;font-size:20px}.hero h1{font-size:42px;line-height:1.25;margin:18px 0 10px;color:#ec2872}.hero p{font-size:20px;line-height:1.8;margin:0;max-width:900px}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-bottom:35px;margin-top:15px}.card{background:#fff;border:1px solid #bfe6f8;border-radius:18px;padding:24px;box-shadow:0 5px 16px rgba(0,100,160,.08)}.card h3{margin:0 0 12px;font-size:23px;color:#0874c7}.card p{line-height:1.8;font-size:16px}.point{border-top:6px solid #15ad67}.cost{border-top:6px solid #f43c83}.route{border-top:6px solid #1599e8}.contract{border-top:6px solid #6664d8}.cta{background:#e9f8ff;border-radius:20px;padding:28px;margin:20px 0 50px;text-align:center}.cta h2{margin:0 0 10px;color:#0874c7}.btn{display:inline-block;margin:7px;padding:12px 22px;border-radius:999px;text-decoration:none;color:#fff;font-weight:700;background:#087fd3}.btn.green{background:#10b967}.btn.pink{background:#ef3b80}.site-footer{background:#0877c9;color:#fff;padding:26px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-logo{width:360px;max-width:55vw;background:#fff;padding:7px;border-radius:8px}.back{display:inline-block;margin:28px 0 0;color:#0874c7;font-weight:700;text-decoration:none}@media(max-width:800px){.head{flex-direction:column;align-items:flex-start;padding:14px 0}.logo{max-width:100%;width:420px}.nav{justify-content:flex-start}.hero{padding:30px 0}.hero h1{font-size:31px}.hero p{font-size:17px}.card-grid{grid-template-columns:1fr}.footer-inner{flex-direction:column;align-items:flex-start}.footer-logo{max-width:100%}}