/* サイト全体のベース設定 */
body {
    font-family: 'Quicksand', 'Zen Maru Gothic', sans-serif !important;
    letter-spacing: 0.05em;
    color: #4a4a4a; /* 真っ黒より少しグレーにすると柔らかさが増します */
    line-height: 1.8;
    -webkit-font-smoothing: antialiased;
}

/* 見出し：少し太めの丸ゴシックで可愛く強調 */
h1, h2, h3, .custom-heading {
    font-family: 'Zen Maru Gothic', sans-serif !important;
    font-weight: 700 !important;
}

/* ヘッダーの電話番号：英字専用フォントで「ペライチ」風のモダンさを出す */
.header-contact-box {
    font-family: 'Quicksand', sans-serif !important;
}

.contact-tel {
    font-size: 11px !important; /* 丸文字は小さすぎると潰れるので11px推奨 */
    font-weight: 700;
}

/* 10pxのミニマルテーブルも丸ゴシックへ */
.minimal-store-table {
    font-family: 'Zen Maru Gothic', sans-serif !important;
    font-size: 10px !important;
}


/* 外側のコンテナ：上下にたっぷり余白を持たせる */

.p-heading-put-on-bdr {
  width: 100%;
  margin: 80px 0 50px;
  /* 前後のセクションとの距離を大きく取る */
  text-align: center;
}

/* 中央線を引くための基準となるインナー */

.p-heading-put-on-bdr__inner {
  display: inline-block;
  position: relative;
  width: 100%;
  /* 親要素いっぱいに線を引く */
  max-width: 1000px;
  /* 線の最大幅を制限（お好みで調整） */
}

/* 中央線（横棒）の本体 */

.p-heading-put-on-bdr__inner::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 2px;
  background-color: #f69833;
  /* 理想図に近い上品なゴールド/ベージュ系の色 */
  z-index: 0;
}

/* 見出しテキストの装飾 */

.custom-heading {
  display: inline-block;
  font-family: "Sawarabi Mincho", serif;
  /* 明朝体を指定 */
  font-size: 26px;
  /* 理想図に近いサイズ */
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #333;
  margin: 0;
  line-height: 1.2;
  position: relative;
  z-index: 1;
  background: #fff;
  /* 線を文字の背景で隠す */
  padding: 0 40px;
  /* 文字の左右の空白を大きく確保（重要！） */
}

/* スマホ対応：線を短く、文字を小さく */

@media screen and (max-width: 767px) {
  .custom-heading {
    font-size: 20px;
    padding: 0 20px;
  }

  .p-heading-put-on-bdr {
    margin: 50px 0 30px;
  }
}

/* テーブル全体のリセットとフォントサイズ指定 */

.minimal-store-table {
  width: 100%;
  border-collapse: collapse;
  margin: 30px 0;
  /* 全体を10pxに統一 */
  font-size: 12px !important;
  line-height: 1.8 !important;
  /* 小さい文字は行間を広めにとると可読性が上がります */
  letter-spacing: 0.05em;
  /* 文字間隔をわずかに広げてプロ感を演出 */
  border: none !important;
}

/* 全てのセルから背景色と縦線を消去 */

.minimal-store-table th,
.minimal-store-table td {
  background-color: transparent !important;
  border: none !important;
  border-bottom: 1px solid #eee !important;
  /* 繊細な印象を与えるため、より薄い線へ */
  padding: 15px 5px;
  /* 文字サイズに合わせて上下余白を微調整 */
  vertical-align: top;
}

/* 見出し列（左側） */

.minimal-store-table th {
  width: 30%;
  font-weight: bold;
  text-align: left;
  white-space: nowrap;
}

/* 情報列（右側） */

.minimal-store-table td {
  width: 70%;
}

/* 最後の行の下線を消去 */

.minimal-store-table tr:last-child th,
.minimal-store-table tr:last-child td {
  border-bottom: none !important;
}

/* スマホ表示 */

@media screen and (max-width: 600px) {
  .minimal-store-table th,
  .minimal-store-table td {
    display: block;
    width: 100%;
    padding: 8px 0;
  }

  .minimal-store-table th {
    padding-bottom: 0;
  }
}

.c-copyright {
  padding-top: 40px;
  padding-bottom: 40px;
  font-weight: bold;
}

/* ヘッダー下部に1pxの線を追加 */
.l-header {
    border-bottom: 1px solid #eee !important;
    box-shadow: none !important; /* 標準の影が不要な場合はリセット */
    background-color: #fff !important;
}

/* ヘッダー情報エリアのレイアウト */
.header-contact-box {
    display: flex;
    flex-direction: column;
    text-align: right;
    justify-content: center;
    height: 100%;
}

/* 電話番号と時間 */
.contact-tel {
		font-size: 18px !important;
    line-height: 1.4 !important;
    font-family: "Sawarabi Mincho", serif !important;
    color: #333;
}
.contact-time {
		font-size: 14px !important;
    line-height: 1.4 !important;
    font-family: "Sawarabi Mincho", serif !important;
    color: #333;
}

.contact-tel {
    font-weight: bold;
    margin-bottom: 2px;
}

/* ヘッダー全体の高さ調整（ロゴとのバランス） */
.l-header__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 14px;
    padding-bottom: 10px;
}