@charset "utf-8";

/**
 * Modern Reset for 2026
 * すべての要素のサイズ計算を直感的にし、ブラウザの余計な装飾を消去します。
 */

/* 1. 全要素のリセット：余白をゼロにし、サイズ計算を「枠線込み」にする */
*,
::before,
::after {
  box-sizing: border-box; /* widthにpaddingやborderを含める（超重要） */
  margin: 0;
  padding: 0;
}

/* 2. HTML要素：スマホでのテキスト自動拡大を防止 */
html {
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent; /* タップ時の青い影を消す */
}

body {
  font-feature-settings: "palt";/* 文字幅を詰める設定（メトリクス有効化） */
}

/* 3. ブロック要素の設定：古いブラウザや特定の環境でも正しく表示させる */
article, aside, details, figcaption, figure, 
footer, header, hgroup, main, menu, nav, section { 
  display: block;
}

/* 4. リスト：ポッチ（・）や数字の装飾を一旦消す */
ul, ol {
  list-style: none;
}

/* 5. 画像・メディア：隙間を消し、親要素からはみ出さないレスポンシブ仕様 */
img, picture, svg, video, canvas, audio, iframe, embed, object {
  display: block;
  max-width: 100%;
  height: auto;
}

/* 6. フォーム要素：ブラウザ特有の「お節介なデザイン」を解除 */
button, input, select, textarea {
  /* button, select, textarea { */
  /* button, textarea { */
  font-family: inherit;
  font-size: 100%;
  color: inherit;
  border: none;
  background: transparent;
  border-radius: 0;
  appearance: none;
  -webkit-appearance: none;
}

button, label {
  cursor: pointer !important; /* クリックできることを明示 */
}

/* 7. リンク：下線を消し、文字色を親要素に合わせる */
a {
  text-decoration: none;
  color: inherit;
}

/* 8. テーブル：枠線の隙間をなくす */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* 9. 非表示設定：[hidden]属性やtemplate要素を確実に隠す */
[hidden], template {
  display: none !important;
}