
:root{
  --max-width:1100px;
  --accent:#0b4a73;
  --muted:#6b7280;
  --bg-card:#ffffff;
  --border:#e6edf3;
  --radius:12px;
  --gap:24px;
  --text:#1f2937;
  --mobile-break:720px;
  --bg-goal:#eef6ff;
  --bg-result:#f9fbff;
  --circle-size:72px;
  font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
}
.fbs-section{background:#f7fbff;padding:48px 20px;color:var(--text);}
.fbs-inner{max-width:var(--max-width);margin:0 auto;display:grid;gap:var(--gap);}
.fbs-row{display:grid;grid-template-columns:var(--circle-size) 1fr;gap:var(--gap);margin-bottom:32px;align-items:start;}
.fbs-number{
  width:var(--circle-size);
  height:var(--circle-size);
  border-radius:50%;
  background:var(--accent);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  font-size:1rem;
  text-align:center;
  padding:8px;
  box-sizing:border-box;
}
.fbs-content{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:18px;}
.fbs-content p, .fbs-content ul{margin:0 0 12px 0;line-height:1.6;}
.fbs-content ul{padding-left:1.2em;}
.fbs-goal-box{margin-top:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-goal);}
.fbs-goal-box h4{margin:0 0 8px 0;font-weight:700;font-size:1rem;color:#0b4a73;}
.fbs-goal-box h5{
	margin: 0 0 8px 0;
	font-weight: 700;
	font-size: 1rem;
	color: #447A9C;
}
.fbs-result-box{margin-top:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-result);}
.fbs-result-box h4{margin:0 0 8px 0;font-weight:700;font-size:1rem;color:#0b4a73;}
.fbs-result-box table{width:100%;border-collapse:collapse;font-size:0.95rem;}
.fbs-result-box td{padding:6px 8px;border:1px solid var(--border);}
.fbs-cta{display:inline-block;margin-top:12px;padding:10px 14px;border-radius:8px;background:var(--accent);color:#fff;text-decoration:none;font-weight:600;font-size:0.95rem;}

@media (max-width: 768px) {
  .fbs-row {
    grid-template-columns: 1fr;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
  }

  .fbs-number {
    margin: 0 auto 12px auto;
  }

  .fbs-content {
    width: 100%;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
    justify-self: stretch; /* ← これが重要 */
  }
}