/* 中塚建設 カスタムCSS */

/* セクション共通 */
.section-title {
  font-size: 1.75rem;
  font-weight: 700;
  color: #1e3a5f;
  position: relative;
  padding-bottom: 0.75rem;
  margin-bottom: 2rem;
}
.section-title::after {
  content: '';
  display: block;
  width: 3rem;
  height: 3px;
  background: #c8960c;
  position: absolute;
  bottom: 0;
  left: 0;
}
.section-title.center::after { left: 50%; transform: translateX(-50%); }

/* カード */
.card { transition: transform .2s, box-shadow .2s; }
.card:hover { transform: translateY(-4px); box-shadow: 0 8px 24px rgba(0,0,0,.12); }

/* ヒーロー */
.hero-overlay { background: linear-gradient(135deg, rgba(30,58,95,.85) 0%, rgba(30,58,95,.5) 100%); }

/* ページタイトル帯 */
.page-hero {
  background: linear-gradient(135deg, #1e3a5f 0%, #2a4f7f 100%);
  padding: 4rem 1rem 3rem;
  color: white;
}

/* フォーム */
.form-input {
  width: 100%;
  border: 1px solid #d1d5db;
  padding: .6rem .75rem;
  border-radius: .375rem;
  font-size: .95rem;
  transition: border-color .15s;
}
.form-input:focus { outline: none; border-color: #1e3a5f; box-shadow: 0 0 0 2px rgba(30,58,95,.15); }

/* ニュース行 */
.news-row { transition: background .15s; }
.news-row:hover { background: #f8f9fa; }

/* 施工事例グリッド画像 */
.works-img { aspect-ratio: 4/3; object-fit: cover; }

/* スクロールアニメーション */
.fade-in { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.fade-in.visible { opacity: 1; transform: translateY(0); }
