@charset "UTF-8";

/* フォント読み込み */
@import url('https://fonts.googleapis.com/css2?family=Lexend+Tera&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@100..900&family=Heebo:wght@300..600&display=swap');

:root {
  /* --- カラー設定 --- */
  --color-primary: #231815;   /* メインカラー */
  --color-secondary: #ffffff; /* サブカラー */
  --color-accent: #eb5f39;    /* アクセントカラー */
  --color-bg: #ffffff;        /* 背景色 */
  --color-text: #231815;      /* 文字色 */

  /* --- フォント設定 --- */
  --font-main: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
 /* --font-base: "Noto Serif JP","游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;*/
  --font-base: "Noto Serif JP", "游明朝", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ヒラギノ明朝 ProN W3", "MS P明朝", serif;
  --font-heading: "acumin-variable", sans-serif;
  --text-size-sp: 1.4rem;
  --text-size-pc: 1.6rem;

  /* --- レイアウト・余白設定 --- */
  --container-width: 1300px;  /* コンテンツの最大幅 */
  --spacing-small: 10px;      /* 小さな余白 */
  --spacing-medium: 50px;     /* 標準の余白 */
  --spacing-large: 70px;      /* 大きな余白 */
  --header-height: 90px;      /* ヘッダーの高さ */

  /* --- トランジション（動き）の設定 --- */
  --transition-speed: 0.3s;
}


/* 全体リセット（Modern CSS Resetの簡易版） */
*, *::before, *::after {
    box-sizing: border-box;
}

html {
  font-size: 62.5%; /* ブラウザの16pxを10px(62.5%)に変換する */
}

body {
    margin: 0;
    font-family: var(--font-main);
    color: var(--color-text);
    font-size: var(--text-size-sp);
    line-height: 1.5;
}
/* PC向け設定 */
@media (min-width: 760px) {
    body {
		font-size: var(--text-size-pc);
        line-height: 1.6;
    }
}


/* ==============================
   PC/SP 切り替えヘルパー
============================== */
@media (max-width: 759px) {
    .for_pc {
        display: none;
    }
}

@media (min-width: 760px)  {
    .for_sp {
        display: none;
    }
}
@media (min-width: 760px) and (max-width: 1024px) {
	.for-control {
		display: none;
	}
}

/* PCでは改行しない（隠す） */
.sp-br {
  display: none;
}
/* スマホのときだけ改行させる */
@media (max-width: 767px) {
  .sp-br {
    display: block;
  }
}
@media (min-width: 760px) and (max-width: 1024px) {
}

/*こっち？*/
/* デフォルト（PC）では改行しない */
.br-control {
  display: none;
}

/* ① スマホ（767px以下）のとき改行する */
@media (max-width: 767px) {
  .br-control {
    display: inline;
  }
}

/* ② 【追加】iPadなどのタブレット帯（例: 768px～1024px）のときも改行する */
@media (min-width: 760px) and (max-width: 1024px) {
  .br-control {
    display: inline;
  }
}





/* ==============================
   共通inner
============================== */
.inner {
	width: 90%;            /* SPでは左右に少し余白を作る */
	max-width: 1300px;     /* PCでの最大幅 */
	margin: 0 auto;
}


/* マージンを整理（bodyなどの不要な余白を消す） */
body, h1, h2, h3, p, ul, ol, figure, blockquote, dl, dd {
  margin: 0;
}

ul, ol {
  list-style: none;
  padding: 0;
}

img {
  max-width: 100%;
  display: block;
}



