/* ----------------------------------
 * CSS Reset - RCP2026 Minimal & Modern Base
 * ---------------------------------- */

/* ========== 基本リセット ========== */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* ========== HTML & BODY ========== */
html {
  font-size: 90%; 
  scroll-behavior: smooth;
}

body {
  height: 100%;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: #f9fafb;
  color: #333;
}

/* ========== テキスト要素 ========== */
h1, h2, h3, h4, h5, h6,
p, blockquote, figure,
ol, ul, dl, dd {
  margin: 0;
  padding: 0;
}

ul, ol {
  list-style: none;
}

/* ========== リンク ========== */
a {
  text-decoration: none;
  color: inherit;
}

a:focus-visible {
  outline: 2px solid #0077b6;
  outline-offset: 2px;
}

/* ========== 画像・メディア要素 ========== */
img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
  height: auto;
}

/* ========== フォーム要素 ========== */
input,
button,
textarea,
select {
  font: inherit;
  color: inherit;
}

button {
  background: none;
  border: none;
  cursor: pointer;
}

/* ========== テーブル ========== */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* ========== WordPress用初期化 ========== */
.aligncenter {
  display: block;
  margin: 0 auto;
}
.alignleft {
  float: left;
  margin-right: 1.5em;
}
.alignright {
  float: right;
  margin-left: 1.5em;
}
.wp-caption {
  max-width: 100%;
  text-align: center;
}
.wp-caption-text {
  font-size: 1.4rem;
  color: #666;
}

/* ========== フォーカス可視性 ========== */
:focus:not(:focus-visible) {
  outline: none;
}
