/**********************************
  AIチューニング横並び版
**********************************/

.ai-tuning {
  background: #f7f9fc;
  padding: 4em 5%;
  margin-top: 3em;
  border-top: 3px solid #00a5b6;
}

/* 📌 1段目（テキストと画像）を横並びにする */
.ai-tuning-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 1em;                /* テキストと画像の間隔 */
  margin-top: 2em;
}


.ai-tuning-text {
  margin-right: 1em;  /* ← 余裕を取りたい方向で調整（右に少し余白） */
}


.ai-tuning-text ul {
  list-style: none;
  padding: 0;
}
.ai-tuning-text li {
  margin-bottom: 0.4em;
  padding-left: 1.5em;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%2300a5b6' viewBox='0 0 24 24'%3E%3Ccircle cx='8' cy='12' r='4'/%3E%3C/svg%3E") no-repeat left 0.35em;
  background-size: 0.5em;
}
.ai-tuning-text .caption {
  font-size: 0.9em;
  color: #555;
  margin-top: 0.8em;
}

/* 📌 2枚の画像を横並び、中央寄せ */
.ai-tuning-image {
  margin-left: 0;     /* ← 不要な左マージンを削除 */
}

.ai-tuning-images {
  display: flex;
  justify-content: center;   /* 横方向中央寄せ */
  align-items: flex-start;
  gap: 1.5em;
  flex-wrap: wrap;
  text-align: center;
}

.ai-tuning-images figure {
  flex: 0 1 43%;             /* 横2枚を並べる */
  max-width: 380px;          /* 最大幅制御 */
  margin: 0;
}

.ai-tuning-images img {
  width: 100%;
  height: auto;
  border-radius: 6px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  transition: 0.2s ease;
}
.ai-tuning-images img:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 12px rgba(0,0,0,0.15);
}

.ai-tuning-images figcaption {
  font-size: 0.85em;
  color: #666;
  margin-top: 0.4em;
}

/* 📱 モバイル表示（縦並び） */
@media screen and (max-width: 768px) {
  .ai-tuning-grid {
    flex-direction: column;
  }

  .ai-tuning-images {
    flex-direction: column;
    align-items: center;
  }

  .ai-tuning-images figure {
    max-width: 90%;
  }
}

/* ==========================
   STT Engine Section
========================== */
.ai-stt {
  background: #fff;
  padding: 4em 5%;
  border-top: 3px solid #00a5b6;
  margin-top: 3em;
  text-align: center;
}

.ai-stt p {
  max-width: 800px;
  margin: 0 auto 2em;
}

.stt-grid {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.5em;
  margin-top: 2em;
}

.stt-card {
  flex: 0 1 300px;
  background: #f7f9fa;
  border: 1px solid #e2e5e8;
  border-radius: 8px;
  padding: 1.5em;
  text-align: left;
  transition: 0.3s;
}
.stt-card:hover {
  background: #ffffff;
  box-shadow: 0 4px 10px rgba(0,0,0,0.08);
  border-color: #00a5b6;
}

.stt-card h3 {
  color: #005f73;
  font-size: 1.1em;
  margin-bottom: 0.5em;
}

.stt-card p {
  font-size: 0.95em;
  color: #333;
}

.stt-caption {
  font-size: 0.85em;
  color: #666;
  margin-top: 1.5em;
}
