/* ===============================
   共通
================================ */
section h1{
  font-weight:700;
  margin-bottom:40px;
  position:relative;
}

section h1::after{
  content:"";
  display:block;
  width:60px;
  height:3px;
  background:#2c7be5;
  margin:15px auto 0;
  border-radius:2px;
}

section p{
  line-height:1.9;
  color:#555;
}
/* ===============================
   JFS強化ブロック
================================ */
.jfs-card{
  background:#fff;
  padding:25px;
  border-radius:16px;
  box-shadow:0 10px 30px rgba(0,0,0,0.08);
  position:relative;
}

/* バッジ */
.jfs-badge{
  position:absolute;
  top:-15px;
  left:20px;
  padding:10px 18px;
  font-size:14px;
  font-weight:bold;
  border-radius:30px;
  letter-spacing:0.5px;
  border:1px solid rgba(0,0,0,0.1);
  /* ゴールド */
  background:linear-gradient(
    135deg,
    #d4af37 0%,
    #f9e27d 50%,
    #c9a227 100%
  );

  color:#333;
  box-shadow:0 4px 10px rgba(0,0,0,0.15);
}
/* 画像 */
.jfs-card img{
  border-radius:10px;
  margin-bottom:15px;
}

/* 説明 */
.jfs-card p{
  margin-bottom:15px;
}

/* ポイント */
.jfs-point{
  padding-left:0;
  list-style:none;
}

.jfs-point li{
  margin-bottom:8px;
  font-size:14px;
}
/* ===============================
   安全・衛生管理
================================ */
section .row{
  align-items:center;
}

/* 画像 */
.bg-image img,
.col-lg-6 img{
  border-radius:12px;
  box-shadow:0 10px 25px rgba(0,0,0,0.08);
  transition:0.3s;
}

.bg-image img:hover{
  transform:scale(1.03);
}

/* ===============================
   製造工程（グリッド型）
================================ */
.flow-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:25px;
  max-width:1100px;
  margin:0 auto;
  padding:0;
}

/* 各カード */
.flow-grid li{
  list-style:none;
}

/* カード */
.flow-grid dl{
  background:#f4f9fc;
  padding:18px;
  border-radius:15px;
  box-shadow:0 10px 25px rgba(0,0,0,0.08);
  height:100%;
  display:flex;
  flex-direction:column;
  transition:0.3s;
  border:1px solid #b3c5e2;
}

/* ホバー */
.flow-grid dl:hover{
  transform:translateY(-5px);
}

/* タイトル */
.flow-grid dt{
  display:flex;
  align-items:center;
  font-weight:700;
  font-size:16px;
  margin-bottom:10px;
}

/* 番号 */
.flow-grid .icon04{
  width:40px;
  height:40px;
  font-size:16px;
}

/* 画像 */
.flow-grid img{
  border-radius:10px;
  margin-bottom:10px;
}

/* 説明 */
.flow-grid dd{
  font-size:14px;
  line-height:1.7;
  color:#555;
}

/* ===============================
   レスポンシブ
================================ */
@media (max-width:992px){
  .flow-grid{
    grid-template-columns:repeat(2, 1fr);
  }
}

@media (max-width:576px){
  .flow-grid{
    grid-template-columns:1fr;
  }
}/* ===============================
   スマホ対応
================================ */
@media (max-width:768px){

  .flow_design04{
    padding:30px 15px;
  }

  .flow04 li{
    padding-left:0;
  }

  .flow04 li::before{
    display:none;
  }

  .icon04{
    width:40px;
    height:40px;
    font-size:16px;
  }
}