@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@500;700;900&family=Quicksand:wght@600;700&family=Noto+Sans+JP:wght@400;500;700&display=swap');
:root{--navy:#0b3560;--ink:#18293a;--sub:#46596d;--bg:#fff;--blue:#1769c4;--blue2:#2f8fe0;--aqua:#4cc3d6;--sky:#e6f3fc;--soft:#f3f9fe;--line:#d9e8f5;--yel:#1769c4;--org:#1769c4;--sh:0 12px 32px -14px rgba(11,53,96,.28)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Noto Sans JP','Hiragino Sans','Hiragino Kaku Gothic ProN',system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.9;font-size:15.5px;letter-spacing:.02em;-webkit-font-smoothing:antialiased}
a{color:inherit}
img{display:block;max-width:100%}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
h1,h2,h3,.rd{font-family:'Zen Maru Gothic','Hiragino Maru Gothic ProN','Noto Sans JP',sans-serif;font-weight:700;line-height:1.45;letter-spacing:.03em}
/* header */
.hd{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 4px 16px -12px rgba(11,53,96,.35)}
.hd .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;height:62px}
.logo{text-decoration:none;display:flex;flex-direction:column;justify-content:center;line-height:1.2}
.logo.mk{flex-direction:row;align-items:center;gap:10px}
.logo.mk>span{display:flex;flex-direction:column}
.logo i{width:36px;height:36px;border-radius:11px;background:linear-gradient(140deg,#3fa6ee,#1769c4);display:grid;place-items:center;flex:none}
.logo i svg{width:21px;height:21px}
.logo b{font-family:'Zen Maru Gothic','Hiragino Maru Gothic ProN',sans-serif;font-weight:900;font-size:18px;color:var(--navy);letter-spacing:.06em}
.logo b span,.logo b em{font-style:normal;color:var(--blue)}
.logo small{font-size:10px;color:var(--sub);letter-spacing:.03em}
.tel{display:inline-flex;align-items:center;gap:6px;background:var(--blue);color:#fff;text-decoration:none;font-weight:700;font-size:13px;padding:9px 16px;border-radius:999px;white-space:nowrap}
.tel svg{width:15px;height:15px}
.nav{border-top:1px solid var(--line);overflow-x:auto;white-space:nowrap;scrollbar-width:none;background:#fff}
.nav::-webkit-scrollbar{display:none}
.hd .nav .wrap{justify-content:flex-start;gap:22px;height:42px}
.nav a{color:var(--navy);text-decoration:none;font-size:13px;font-weight:700}
/* sections */
section{padding:72px 0;position:relative;scroll-margin-top:104px}
.bg-sky{background:var(--soft)}
.sec-t{text-align:center;margin-bottom:36px}
.sec-t small{display:block;font-family:'Quicksand',sans-serif;color:var(--blue);font-weight:700;letter-spacing:.28em;font-size:12px;margin-bottom:6px}
.sec-t h2{font-size:25px;color:var(--navy)}
.sec-t p{font-size:14px;color:var(--sub);margin-top:8px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:700;border-radius:999px;padding:15px 28px;font-size:15px;border:2px solid transparent;cursor:pointer;font-family:inherit;transition:transform .2s;letter-spacing:.04em}
.btn svg{width:18px;height:18px}
.btn-o{background:var(--blue);color:#fff;box-shadow:0 10px 22px -10px rgba(23,105,196,.8)}
.btn-w{background:#fff;color:var(--blue);border-color:var(--blue)}
.btn:active{transform:translateY(1px)}
.card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:var(--sh)}
.more{text-align:center;margin-top:26px}
/* footer */
.ft{background:#082a4d;color:#dbe7f2;padding:44px 0 32px;font-size:13px}
.ft a{color:#fff}
.ft .wrap{display:grid;gap:8px}
/* article */
.bc{font-size:12px;color:var(--sub);margin-top:22px}
.bc a{color:var(--blue)}
.art{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px 20px;margin:20px 0 28px;box-shadow:var(--sh)}
.art h1{font-size:24px;color:var(--navy);margin:4px 0 8px}
.art .date{font-size:13px;color:var(--sub);margin-bottom:20px}
.art h2{font-size:20px;color:var(--navy);margin:38px 0 12px;position:relative;padding-left:16px}
.art h2:before{content:"";position:absolute;left:0;top:.2em;bottom:.2em;width:5px;border-radius:5px;background:linear-gradient(#4cc3d6,#1769c4)}
.art h3{font-size:17px;color:var(--navy);margin:22px 0 6px}
.art p{margin:0 0 16px}
.art ul,.art ol{margin:0 0 16px 1.4em}
.art li{margin-bottom:6px}
.art table{width:100%;border-collapse:separate;border-spacing:0;margin:0 0 18px;font-size:14px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.art th,.art td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--line)}
.art tr:last-child td{border-bottom:0}
.art th{background:var(--sky);color:var(--navy)}
.lead{background:var(--sky);border-left:4px solid var(--blue2);border-radius:12px;padding:16px 18px;margin-bottom:20px;color:var(--ink)}
.cta{background:linear-gradient(135deg,#1769c4,#0b3f80);color:#fff;border-radius:24px;padding:32px 20px;text-align:center;margin:28px 0}
.cta p{margin-bottom:16px;color:#fff}
.cta .btn-o{background:#fff;color:var(--blue);box-shadow:none}
.clist{display:grid;gap:14px}
.citem{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px 20px;box-shadow:0 8px 20px -14px rgba(11,53,96,.4)}
.citem span{font-family:'Quicksand',sans-serif;font-weight:700;font-size:12px;color:var(--blue);letter-spacing:.08em}
.citem b{display:block;color:var(--navy);font-size:16px;line-height:1.55;margin:2px 0 4px;font-family:'Zen Maru Gothic','Hiragino Maru Gothic ProN',sans-serif}
.citem p{font-size:13px;color:var(--sub);line-height:1.7}
@media(min-width:760px){body{font-size:16px}section{padding:100px 0}.sec-t h2{font-size:32px}.art{padding:48px 56px}.art h1{font-size:30px}.clist{grid-template-columns:repeat(3,1fr)}}
