/* 
リセットと基本設定 */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
h2 {
  font-size: 2rem;
}
h3 {
  font-size: 1.5rem;
}
h4 {
  font-size: 1.2rem;
}


body {
  font-family: 'Noto Sans JP', 'Yu Gothic', sans-serif;
  background-color: #fdfaf7;
  color: #333;
  line-height: 1.6;
  padding: 0;
}

/* ヘッダー */
.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 5vw;
  background-color: #fff;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.logo {
  height: 80px; /* PCデフォルト */
  margin-right: 20px;
}

.logo75 {
  height: 80px;
  width: auto;
  margin-left: 10px;
}

.logo75-container {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: #333;
  font-weight: bold;
  font-size: 0.95rem;
  line-height: 1.4;
  flex-shrink: 1;
}

.logo75-text {
  font-family: 'Noto Serif JP', serif;
  color: #b8860b;
}

/* PCナビ */
.pc-nav {
  display: flex;
  gap: 0.5rem;
}
.pc-nav a {
  text-decoration: none;
  color: #333;
  font-weight: bold;
  padding: 0.3rem 0.8rem;
  transition: background 0.2s;
  font-size: 0.95rem;
  margin: 0 0.3rem;
}
.pc-nav a:hover {
  background-color: #b8860b;
  border-radius: 4px;
}

/* ハンバーガー（スマホ専用。PCでは非表示） */
/* ハンバーガーメニューアイコン */
.hamburger-btn {
  display: none;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  z-index: 1000;
}

.hamburger-btn .bar {
  display: block;
  width: 25px;
  height: 3px;
  background-color: #333;
  margin: 5px 0;
  transition: all 0.3s ease;
}
/* ===== レスポンシブ設定 ===== */

/* 1280px以下：文字や余白を少し調整 */
@media screen and (max-width: 1280px) {
  .logo75-container {
    font-size: 0.9rem;
    gap: 6px;
  }
  .logo75 {
    height: 65px;
  }
  .pc-nav a {
    padding: 0.3rem 0.6rem;
    font-size: 0.9rem;
    margin: 0 0.3rem;
  }
  .header-inner {
    gap: 0.5rem;
  }
}

/* 768px以下：スマホモードに切替 */
@media screen and (max-width: 768px) {
  .pc-nav {
    display: none;
  }
  .hamburger-btn {
    display: block;
  }
  .logo {
    height: 60px; /* ロゴを少し小さく */
  }
  .logo75 {
    height: 60px;
  }
  .logo75-container {
    font-size: 0.85rem;
    gap: 4px;
  }
}

/* モバイルナビゲーション（全画面メニュー） */
.mobile-nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #fff;
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateX(100%);
  transition: transform 0.5s ease;
  overflow-y: auto;
}

.mobile-nav.active {
  transform: translateX(0);
}

.mobile-nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: center;
}

.mobile-nav li {
  margin: 2rem 0;
}

.mobile-nav a {
  text-decoration: none;
  color: #333;
  font-size: 1.8rem;
}

/* ハンバーガーアイコンのアニメーション（✕アイコンに変化） */
.hamburger-btn[aria-expanded="true"] .bar:nth-child(1) {
  transform: translateY(8px) rotate(45deg);
}

.hamburger-btn[aria-expanded="true"] .bar:nth-child(2) {
  opacity: 0;
}

.hamburger-btn[aria-expanded="true"] .bar:nth-child(3) {
  transform: translateY(-8px) rotate(-45deg);
}

/* 600px以下：75周年ロゴを縦並び */
@media screen and (max-width: 600px) {
  .logo75-container {
    flex-direction: column;
    align-items: flex-start;
    font-size: 0.9rem;
    margin-left: 10px;
  }
  .logo75 {
    height: 50px;
  }
}
 /* 商品一覧用スタイル */ 
    .gallery {
      display: flex;
      flex-wrap: wrap;
      gap: 1rem;
      justify-content: center;
      padding: 1rem 2rem;
    }
    .gallery-item{
      width: 129px;
      text-align: center;
    }
    .gallery-item img {
      width: 100%;
      height: auto;
      border-radius: 8px;
      box-shadow: 0 2px 6px rgba(0,0,0,0.1);
      transition: transform 0.3s ease;
      cursor: pointer;
    }
    .gallery-item img:hover {
      transform: scale(1.05);
    }
    .gallery-item p {
      margin-top: 0.5rem;
      font-weight: 600;
      color: #444;
    }
.product-title {
  font-size: 1.8em;
  text-align: center;
  margin-top: 2rem;
  color: #333;
}

/* ナビゲーション全体 */
nav {
  background-color: #fdfaf7;  /* 和風の明るいベージュ系 */
  border-bottom: 2px solid #b8860b; /* 黄金色のアクセント */
  padding: 0.8rem 0;
  text-align: center;
  font-family: 'Yu Mincho', 'Hiragino Mincho ProN', 'Noto Serif JP', serif;
  box-shadow: 0 2px 6px rgba(184, 134, 11, 0.1);
  position: sticky;
  top: 0;
  z-index: 100;
}

/* ナビリンク共通 */
nav a {
  display: inline-block;
  color: #b8860b;
  text-decoration: none;
  font-weight: 700;
  font-size: 1.1rem;
  margin: 0 1.5rem;
  padding: 0.3rem 0.6rem;
  border-radius: 4px;
  transition: background-color 0.3s ease, color 0.3s ease;
}

/* ホバー・フォーカス時 */
nav a:hover,
nav a:focus {
  background-color: #b8860b;
  color: #fff;
  outline: none;
  box-shadow: 0 0 6px rgba(184, 134, 11, 0.6);
}

/* 現在のページ（activeクラス） */
nav a.active {
  background-color: #996d00;
  color: #fff;
  box-shadow: 0 0 8px rgba(153, 109, 0, 0.8);
}

/* スライドショー */
.carousel-wrapper {
  width: 100%;
  overflow: hidden;
  position: relative;
  max-height: 485px; /* 画像の高さ */
}

.carousel-track {
  display: flex;
  transition: transform 0.6s ease;
  will-change: transform;
  height: 100%;
}

.carousel-track img {
  height: 100%;
  width: auto;
  flex: 0 0 auto;
  margin: 15px 20px;
  box-sizing: border-box;
  transition: transform 0.6s ease, opacity 0.6s ease;
  opacity: 0.3;
  transform: scale(0.9);
}
/* 中央の画像のみ強調 */
.carousel-track img.active-slide {
  opacity: 1;
  transform: scale(1);
  z-index: 2;
}

.carousel-dots {
  text-align: center;
  margin-top: 1rem;
  position: relative; /* これで z-index 調整が可能 */
  z-index: 10;
}
.carousel-dot {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: 0 5px;
  border-radius: 50%;
  background-color: #ccc;
  cursor: pointer;
  transition: background-color 0.3s;
}

.carousel-dot.active {
  background-color: #b8860b;
}

@media screen and (max-width: 768px) {
  .fade-slideshow {
    height: 400px; /* または適切な値に調整 */
  }
}
/* 中央テキスト */
.slide-caption {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 2rem;
  text-align: center;
  z-index: 2;
  white-space: nowrap;
  text-shadow: 3px 3px 8px rgba(0, 0, 0, 0.7);
}
.fade-in {
  font-family: 'Noto Serif JP', serif;
  opacity: 0;
  transform: translateY(20px);
  animation: fadeInUp 1s ease-out forwards;
}


/* スライドキャプション全体の基本スタイル */
.slide-caption h2 {
  font-size: 3rem; /* デフォルトは大きめにしておく */
  text-align: center;
  color: white;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
  margin: 0;
  padding: 1em 0;
}

/* スマートフォン用にフォントサイズを調整 */
@media screen and (max-width: 768px) {
  .slide-caption h2 {
    font-size: 1.5rem; /* スマホ表示では小さめに */
    padding: 0.5em 1em;
  }
}

/* ヒーローメッセージ */
.hero-message {
  position: relative;
  background-image: url('images/syouhin.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: white;
  text-align: center;
  padding: 12rem 2rem;
　font-size: 2.8rem;
  font-weight: bold;
  border-radius: 8px;
  margin: 2rem auto 3rem auto;
  min-height: 900px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  z-index: 0;
  text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.85);
  
  /* フェードインアニメーション */
  opacity: 0;
  animation: fadeInUp 1s ease-out 1.5s forwards;
}

/* モバイル対応 */
@media screen and (max-width: 768px) {
  .hero-message {
    font-size: 1.8rem;
    padding: 8rem 1rem;
  }
}

/* アニメーション定義 */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* ごあいさつ */
.greeting {
  background-color: #f9f9f9;
  padding: 2em 1em;
  text-align: left;
}

.greeting-inner {
  max-width: 800px;
  margin: 0 auto;
  font-size: 1rem;
  line-height: 1.8;
  color: #333;
}



/* 商品ギャラリー */
.product-header-box {
  max-width: 600px;
  margin: 2rem auto;
  padding: 2rem 1.5rem;
  background-color: #fdfaf7;
  border: 2px solid #b8860b;
  border-radius: 12px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.product-header-box h2 {
  font-size: 2rem;
  color: #b8860b;
  margin-bottom: 1.5rem;
  font-weight: 700;
  text-align: left; /* ← これがポイント */
  font-family: 'Yu Mincho', 'Hiragino Mincho ProN', 'Noto Serif JP', serif;
}

.product-header-box img {
  width: 100%;
  max-width: 300px;
  height: auto;
  display: block;
  margin: 0 auto;
  border-radius: 8px;
  border: 1px solid #ccc;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}
.info-box {
  background-color: #f8f8f8;
  border-radius: 8px;
  padding: 1.5rem;
  margin: 2rem auto;
  max-width: 800px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  text-align: left;
}
    .gallery {
      display: flex;
      flex-wrap: wrap;
      gap: 1rem;
      justify-content: center;
      padding: 1rem 2rem;
    }
    .gallery-item{
      width: 160px;
      text-align: center;
    }
    .gallery-item img {
      width: 100%;
      height: auto;
      border-radius: 8px;
      box-shadow: 0 2px 6px rgba(0,0,0,0.1);
      transition: transform 0.3s ease;
      cursor: pointer; 
    }
    .gallery-item p {
      margin-top: 0.5rem;
      font-weight: 600;
      color: #444;
    }

    .galleryh {
      display: flex;
      flex-wrap: wrap;
      gap: 1rem;
      justify-content: center;
      padding: 1rem 2rem;
    }
    .galleryh-item{
      width: 160px;
      text-align: center;
    }
    .galleryh-item img {
      width: 100%;
      height: auto;
      border-radius: 8px;
      box-shadow: 0 2px 6px rgba(0,0,0,0.1);
      transition: transform 0.3s ease;
      cursor: default; 
    }
    .galleryh-item p {
      margin-top: 0.5rem;
      font-weight: 600;
      color: #444;
    }


.recipe-section {
  padding: 2rem 1rem;
  background-color: #f9f9f9;
  border-radius: 8px;
  margin-top: 2rem;
}

.recipe-section h3 {
  font-size: 1.5rem;
  margin-bottom: 1.5rem;
  text-align: center;
}

.recipe {
  display: flex;
  flex-direction: column; /* スマホでは縦並び */
  align-items: center;
  margin-bottom: 2rem;
  gap: 1rem;
}

.recipe-img {
  width: 100%;
  max-width: 300px;
  border-radius: 8px;
}

.recipe-text {
  text-align: center;
  max-width: 500px;
}

.recipe-text h4 {
  font-size: 1.2rem;
  margin-bottom: 0.5rem;
}

@media screen and (min-width: 768px) {
  .recipe {
    flex-direction: row; /* PCでは横並び */
    align-items: flex-start;
    justify-content: center;
    text-align: left;
  }

  .recipe-img {
    margin-right: 2rem;
  }

  .recipe-text {
    text-align: left;
  }
}
/* 見出し（左寄せ） */
.info-box h3 {
  margin-top: 0;
  color: #333;
  font-size: 1.2rem;
  margin-bottom: 1rem;
  text-align: left;
}
/* 段落・リスト・表などを中央寄せに */
.info-box p{
  text-align: center;
}
.info-box ul,
.info-box table {
  text-align: left;
  margin-left: auto;
  margin-right: auto;
}

.info-box ul {
  list-style: none;
  padding-left: 0;
}

.info-box li {
  padding: 0.3em 0;
}

.info-box table {
  border-collapse: collapse;
  width: 90%;
  margin-top: 0.5rem;
}

.info-box th,
.info-box td {
  border: 1px solid #ccc;
  padding: 0.5rem;
  text-align: center;
  font-size: 0.95rem;
}
/* 会社概要セクション */
#company {
  font-size: 1rem;
  color: #444;
  line-height: 1.6;
}

#company p {
  margin-bottom: 1rem;
}
/* お問い合わせページ用 QRコード表示スタイル */
/* メールアドレス画像の調整 */
.photo-center img.email-image {
  max-width: 300px;
  display: block;
  margin: 1rem auto;
}
.qr-section {
  text-align: center;
  margin: 2rem auto;
}

.qr-section img {
  display: block;            /* margin: auto; を効かせるためにブロックに */
  margin: 0 auto;            /* 左右中央寄せ */
  width: 120px;
  height: auto;
  max-width: 90%;
  background: none;
  border: none;
  box-shadow: none;
}
/* Ｑ＆Ａ */
.faq h2 {
  font-size: 1.8em;
  margin-bottom: 20px;
  border-bottom: 2px solid #8B0000;
  padding-bottom: 10px;
  color: #8B0000;
}

.faq-item {
  margin-bottom: 15px;
}

.question {
  width: 100%;
  background-color: #f8f8f8;
  border: 1px solid #ccc;
  text-align: left;
  padding: 12px;
  font-size: 1em;
  cursor: pointer;
  transition: background-color 0.3s;
}

.question:hover {
  background-color: #eee;
}

.answer {
  display: none;
  padding: 10px 15px;
  background-color: #fff8f5;
  border: 1px solid #ccc;
  border-top: none;
  font-size: 0.95em;
}
.an1 {
  padding-left: 2rem;
}

/* 商品紹介レイアウト */
.product-intro {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  align-items: center;
  justify-content: center;
  margin: 2rem auto;
  max-width: 800px;
  padding: 0 1rem;
}

.product-image-box {
  flex: 1 1 250px;
  text-align: center;
}
.product-image {
  max-width: 200px;
  width: 100%;
  height: auto;
  margin: 0.5rem auto;
  border-radius: 10px;
  box-shadow: 0 0 8px rgba(0,0,0,0.1);
}

.product-description {
  flex: 1 1 400px;
}
.product-description h2 {
  font-size: 1.8rem;
  margin-bottom: 1rem;
}
.product-description p {
  line-height: 1.8;
  font-size: 1rem;
}
.label-compare {
  display: flex;
  gap: 2rem;              /* 画像間の余白 */
  justify-content: center;/* 中央揃え */
  flex-wrap: wrap;        /* スマホでは縦並びに自動で折り返し */
  margin-top: 1rem;
}

.label-compare div {
  text-align: center;
}

.label-compare img {
  max-width: 250px;
  border: 1px solid #ccc;
  border-radius: 6px;
  display: block;
  margin: 0 auto;
}

.label-caption {
  font-weight: bold;
  margin-bottom: 0.5rem;
}


/* 栄養成分表 */
.info-box table {
  width: 100%;
  border-collapse: collapse;
}
.info-box th, .info-box td {
  border: 1px solid #ccc;
  padding: 0.5rem;
}
/* レシピ写真 */
.recipe-section {
  max-width: 800px;
  margin: 2rem auto;
  padding: 1rem;
}
.recipe-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1rem;
}
.recipe-grid img {
  width: 100%;
  height: 180px;
  border-radius: 8px;
  object-fit: cover;
  box-shadow: 0 0 5px rgba(0,0,0,0.1);
}

/* 戻るリンク */
.back-link {
  text-align: center;
  margin: 3rem 0;
}
.back-link a {
  text-decoration: none;
  color: #333;
  font-weight: bold;
}

/* セクション共通設定 */
section {
  max-width: 960px;
  margin: 3rem auto;
  padding: 1.5rem 1rem;
  background-color: #fffdfa;
  border-radius: 8px;
  box-shadow: 0 0 8px rgba(184, 134, 11, 0.2);
}

section h2 {
  font-size: 2rem;
  font-weight: 700;
  color: #b8860b;
  border-bottom: 3px solid #b8860b;
  padding-bottom: 0.3rem;
  margin-bottom: 1rem;
  font-family: 'Yu Mincho', 'Hiragino Mincho ProN', 'Noto Serif JP', serif;
}
/* ホームセクション */
#home {
  text-align: center;
  font-size: 1.3rem;
  line-height: 1.8;
  color: #555;
}
/* top下商品紹介 */
  .product-list,
  #products {
    flex-direction: column;
    align-items: center;
    padding: 2rem;
  }

  .product-item {
    width: 90%;
  }

  .product-row {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    flex-wrap: wrap;
  }

  .product-row a {
    display: inline-block;
    text-align: center;
  }

  .product-img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
    border-radius: 10px;
    box-shadow: 0 0 6px rgba(0,0,0,0.2);
    transition: transform 0.3s ease;
  }
.photo-center {
  text-align: center;  /* コンテナ内で中央寄せ */
  margin: 20px auto;
}

.photo-center img {
  width: 90%;          /* 横幅を90%に縮小 */
  max-width: 400px;    /* 最大幅400pxまで */
  height: auto;        /* 高さは自動調整 */
  display: inline-block; /* インラインブロックにして中央寄せしやすく */
  border-radius: 8px;  /* お好みで角丸 */
  box-shadow: 0 2px 6px rgba(0,0,0,0.2); /* 軽い影で見た目アップ */
}

/* 新商品　紹介 */
.new-list {
  display: flex;              /* 子要素（img）を横並びに */
  justify-content: center;    /* 中央揃え */
  gap: 10rem;                  /* 画像の間に余白を追加 */
  flex-wrap: wrap;           /* スマホなど狭い画面では折り返す */
  text-align: center;
}
.new-list img {
  width: 100%;
  max-width: 400px;
  display: block;
  border-radius: 8px;
  border: 2px solid #b8860b;
  box-shadow: 0 2px 6px rgba(0,0,0,0.15);
}
.new-title {
  font-size: 2.2rem;
  color: #b8860b;
  position: relative;
  text-align: center;
  margin-bottom: 2rem;
  font-family: 'Yu Mincho', 'Hiragino Mincho ProN', 'Noto Serif JP', serif;
}
.new-badge {
  display: inline-block;
  background: #a52727;
  color: #fff;
  font-size: 0.8rem;
  padding: 0.2em 0.6em;
  border-radius: 12px;
  margin-left: 1rem;
  vertical-align: middle;
}

.new-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2rem;
}

.new-card {
  text-align: center;
  background-color: #fffdfa;
  border: 2px solid #b8860b;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  padding: 1rem;
  width: 420px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  text-decoration: none;
  color: inherit;
}
.new-card:hover {
  transform: scale(1.03);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.15);
}
.new-card img {
  width: 100%;
  border-radius: 8px;
  border: 1px solid #ccc;
  margin-bottom: 0.5rem;
}
.new-card-text {
  margin-top: 0.5rem;
}
.product-name {
  font-weight: bold;
  color: #444;
  font-size: 1.1rem;
  line-height: 1.4;
}

/* 会社概要テーブルスタイル */
.company-info h2 {
  text-align: center;
  font-size: 1.8em;
  color: #333;
  margin-bottom: 1.5em;
}

.company-info table {
  width: 100%;
  border-collapse: collapse;
  background-color: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.company-info th {
  background-color: #f8f8f8;
  text-align: left;
  text-indent: 2em;
  padding: 12px;
  border-bottom: 1px solid #ddd;
  width: 30%;
  font-weight: bold;
  color: #555;
}

.company-info td {
  text-align: left;
  padding: 12px;
  border-bottom: 1px solid #ddd;
  color: #333;
}

/* 最後の行の下線を消す */
.company-info table tr:last-child td,
.company-info table tr:last-child th {
  border-bottom: none;
}


/* レスポンシブ対応 */
@media screen and (max-width: 768px) {
  .company-info table,
  .company-info th,
  .company-info td {
    font-size: 0.95em;
  }

  .photo-center img {
    border-radius: 8px;
  }
}
.photo-center {
  text-align: center;
  margin-top: 2rem;
}

.photo-center img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}


/* フッター装飾 */
footer {
  padding: 0.5rem 1rem;
  background-color: #f0f0f0;
  border-top: 1px solid #ccc;
}

.footer-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1000px;
  margin: 0 auto;
  flex-wrap: wrap;
}

.company-info {
  text-align: center; /* 左寄せでも可。中央にしたいなら center */
  font-size: 0.95rem;
  color: #555;
  flex: 1;
}

.company-info {
  text-align: center;
  font-size: 0.95rem;
  color: #555;
  flex: 1;
}

.footer-icon img {
  width: 130px;
  height: auto;
  object-fit: contain;
}

/* ===============================
   業務用商品ページ専用スタイル
   =============================== */

/* セクション全体 */
.business-section {
  max-width: 960px;
  margin: 2.5rem auto;
  padding: 2rem 1.5rem;
  background-color: #fffdfa;
  border: 2px solid #b8860b;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(184, 134, 11, 0.15);
}

/* 見出し */
.business-section h2 {
  font-size: 1.8rem;
  color: #b8860b;
  border-bottom: 3px solid #b8860b;
  padding-bottom: 0.5rem;
  margin-bottom: 1.5rem;
  text-align: center;
  font-family: 'Yu Mincho', 'Hiragino Mincho ProN', 'Noto Serif JP', serif;
}

.business-section h3 {
  font-size: 1.3rem;
  color: #444;
  margin-top: 1.5rem;
  margin-bottom: 0.8rem;
  border-left: 5px solid #b8860b;
  padding-left: 0.5rem;
}

/* 段落 */
.business-section p {
  margin-bottom: 1rem;
  line-height: 1.8;
  color: #333;
}

/* リスト */
.business-section ul {
  list-style: none;
  margin: 0 0 1.5rem 0;
  padding: 0;
}

.business-section li {
  padding-left: 1.2em;
  position: relative;
  margin-bottom: 0.5rem;
}

.business-section li::before {
  content: "・";
  color: #b8860b;
  font-weight: bold;
  position: absolute;
  left: 0;
}

/* テーブル */
.business-section table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5rem 0;
  font-size: 0.95rem;
  background: #fff;
}

.business-section th,
.business-section td {
  border: 1px solid #ccc;
  padding: 0.8rem;
  text-align: center;
  vertical-align: middle;
}

.business-section th {
  background-color: #f8f5ef;
  font-weight: bold;
  color: #333;
}

.business-section td {
  color: #444;
}
