/* =========================================
   base.css
   全ページ共通の基本リセット + ベーススタイル
   -----------------------------------------
   特徴：
   ✔ 行政サイト向け（フォーマル・視認性重視）
   ✔ 文字サイズと行間を調整
   ✔ 日本語フォントに最適化
   ✔ リンクカラーとホバーを標準化
========================================= */


/* ---- ブラウザの余計なスタイルを薄くする ---- */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* ---- HTMLとBODY ---- */
html {
  font-size: 16px;
  scroll-behavior: smooth;
}

body {
  font-family:
    "Helvetica Neue",
    "Segoe UI",
    "Hiragino Kaku Gothic ProN",
    "Yu Gothic",
    "Meiryo",
    sans-serif;
  line-height: 1.7;
  color: #222;
  background-color: #fafafa;
}

/* ---- 画像 ---- */
img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* ---- リンク ---- */
a {
  color: #005bac;         /* 行政サイト向け落ち着いた青 */
  text-decoration: none;
}

a:hover,
a:focus {
  color: #003f7a;
  text-decoration: underline;
}

/* ---- 見出し ---- */
h1, h2, h3, h4, h5, h6 {
  font-weight: 600;
  line-height: 1.4;
  color: #111;
  margin-bottom: .6em;
}

/* ---- 段落 ---- */
p {
  margin-bottom: 1em;
}

/* ---- リスト ---- */
ul, ol {
  margin-left: 1.5em;
  margin-bottom: 1em;
}

/* ---- 表（後々想定） ---- */
table {
  border-collapse: collapse;
  width: 100%;
}
th,
td {
  border: 1px solid #ccc;
  padding: 8px 12px;
}

/* ---- ボタン基礎（後で拡張可能） ---- */
button,
input[type="button"],
input[type="submit"] {
  cursor: pointer;
  font-size: 1rem;
}

/* ---- 画面幅制御：中心寄せの主要レイアウト ---- */
.container {
  width: min(100%, 1000px);
  margin-inline: auto;
  padding-inline: 16px;
}

/* ---- 線（区切り） ---- */
hr {
  border: none;
  border-top: 1px solid #ddd;
  margin: 2em 0;
}
