@charset "UTF-8";
/* ===========================================================
   reset — 参考サイトと同じ「古典的リセット」の世代に合わせている
   ★ここを今どきの normalize に差し替えると見た目が全部ずれる
   =========================================================== */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-weight: normal;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

*, *:before, *:after { box-sizing: border-box; }

html {
  overflow-y: scroll;
  font-size: 62.5%;   /* ★1rem = 10px の固定rem。vw連動でもclampでもない */
  width: 100%;
}

body {
  font-family: var(--font-ja);
  color: var(--c-text);
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1;      /* ★1。見出し・ボタンは各自で行間を持つ */
  margin: 0;
  padding: 0;
  width: 100%;
  background: #fff;
  -webkit-text-size-adjust: 100%;
}

ol, ul { list-style: none; }
table { border-collapse: collapse; border-spacing: 0; }
caption, th { text-align: left; }
input, select { vertical-align: middle; }
img { border: none; vertical-align: bottom; max-width: 100%; height: auto; }
input, textarea { margin: 0; padding: 0; }
del { text-decoration: line-through; }

/* ★本文の行間はここ（body ではなく p 側） */
p { line-height: 2.2; }

.small { font-size: 13px !important; font-size: 1.3rem !important; }
.bold  { font-weight: bold !important; }

a { color: var(--c-main); text-decoration: none; }
a:hover { text-decoration: underline; }
a:focus { outline: none; }

.clearfix:after { content: "."; display: block; clear: both; height: 0; visibility: hidden; }
.clear { clear: both; }
.alignC { text-align: center !important; }
