* { margin: 0; padding: 0; box-sizing: border-box; }
body {
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  background: #f4f7fc;
  color: #1c2a3f;
  line-height: 1.8;
}
header {
  background: linear-gradient(135deg, #1e64c4 0%, #0e3a82 100%);
  color: #fff;
  padding: 36px 20px;
  text-align: center;
}
.badge {
  display: inline-flex; align-items: center; justify-content: center;
  width: 64px; height: 64px; border-radius: 50%;
  border: 3px solid #fff; font-size: 30px; font-weight: 700; margin-bottom: 12px;
}
header h1 { font-size: 26px; letter-spacing: 0.02em; }
header p { margin-top: 6px; font-size: 14px; opacity: 0.85; }
.container { max-width: 760px; margin: 0 auto; padding: 36px 20px 80px; }
section { margin-bottom: 40px; }
h2 {
  font-size: 19px; color: #1652a8; margin-bottom: 14px;
  padding-bottom: 6px; border-bottom: 2px solid #d5e2f5;
}
h3 { font-size: 16px; margin: 18px 0 6px; color: #0e3a82; }
p { margin-bottom: 10px; }
ul, ol { margin: 6px 0 12px 1.4em; }
li { margin-bottom: 4px; }
.card {
  background: #fff; border-radius: 12px; padding: 18px 20px;
  box-shadow: 0 1px 4px rgba(14, 58, 130, 0.08); margin-bottom: 14px;
}
.note { background: #fff8e6; border-left: 4px solid #e0a800; padding: 12px 16px; border-radius: 6px; font-size: 14px; }
a { color: #1652a8; }
footer { text-align: center; font-size: 13px; color: #6b7a90; padding: 24px 20px 40px; }
footer a { margin: 0 8px; }
dl.faq dt { font-weight: 700; margin-top: 14px; color: #0e3a82; }
dl.faq dd { margin-left: 0; margin-top: 4px; }
