@charset "UTF-8";
/* ===== variables ===== */
:root {
  /* color */
  --c-navy: #333369;
  --c-green: #34bb6d;
  --c-lime: #48eb00;
  --c-blue: #0092ff;
  --c-yellow: #ffff00;
  --c-yellow-faq: #fad33b;
  --c-pink: #ff2666;
  --c-sky: #d9f0fa;
  --c-grey: #f2f2f2;
  --c-grey-head: #e8e8e8;
  --c-point-green: #37be70;
  --c-point-blue: #2684cb;
  --c-point-red: #f6615b;
  --c-white: #fff;
  /* gradient */
  --grad: linear-gradient(90deg, #48eb00 0%, #0092ff 100%);
  /* layout */
  --w-base: 1200px;
  --w-wide: 1320px;
  --w-min: 1000px; /* PCの可変下限 */
  /* font */
  --f-gothic: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", sans-serif;
  --f-round: "M PLUS Rounded 1c", "Hiragino Maru Gothic ProN", var(--f-gothic);
}

/* ===== base ===== */
body {
  /* PCは1000pxまで可変。それ以下は横スクロールでレイアウトを保つ */
  min-width: var(--w-min);
  background: var(--c-white);
  color: var(--c-navy);
  font-family: var(--f-gothic);
  font-size: 18px;
  line-height: 1.8;
  font-feature-settings: "palt";
  -webkit-font-smoothing: antialiased;
  text-size-adjust: 100%;
}

/* ===== utility ===== */
.grad-text {
  background: var(--grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

/* 装飾の四角（PC/SPそれぞれ1枚の画像にまとめ、左右中央に配置する） */
.deco {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  /* 画面幅より画像が広いときに横スクロールを出さない */
  overflow-x: clip;
  pointer-events: none;
}
.deco__pc, .deco__sp {
  position: relative;
  left: 50%;
  max-width: none;
  transform: translateX(-50%);
}
.deco {
  /* デザイン基準幅のまま拡縮しない */
}
.deco__pc {
  width: 1920px;
}
.deco__sp {
  display: none;
  width: 390px;
}

/* SPのみ改行する */
.br-sp {
  display: none;
}

/* 中黒を半角相当の字送りにする（デザイン準拠） */
.nk {
  position: relative;
  left: -0.24em;
  letter-spacing: -0.5em;
}

/* ===== リンクのホバー（0.2秒） ===== */
a {
  transition: opacity 0.2s, text-decoration-color 0.2s;
}

/* テキストリンクは下線を透明で用意しておき、ホバーでフェードインさせる */
a:not(:has(img)) {
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 3px;
}
a:not(:has(img)):hover {
  text-decoration-color: currentColor;
}

/* 画像リンクは薄くする */
a:has(img):hover {
  opacity: 0.7;
}

/* ボタン状のリンクは下線を出さず、薄くする */
.prog__btn a {
  text-decoration: none;
}
.prog__btn a:hover {
  opacity: 0.7;
}

/* もとから下線があるテキストリンクは、下線を保ったまま薄くする */
.plan__link a,
.footer__nav a {
  text-decoration-color: currentColor;
}
.plan__link a:hover,
.footer__nav a:hover {
  opacity: 0.7;
}/*# sourceMappingURL=base.css.map */