:root {
  --primary:       #2A6840;
  --primary-dark:  #1e4b2e;
  --primary-light: #5d8c6e;
  --accent:        #7A9028;
  --accent-light:  #afbc7e;
  --bg-white:      #F4F9F4;
  --bg-light:      #ecf3ed;
  --bg-blue:       #dee9e0;
  --shadow:        0 2px 8px rgba(42,104,64,0.11);
  --shadow-hover:  0 8px 28px rgba(42,104,64,0.22);
}

/* カルーセルスライド背景（テーマに連動） */
.slide-1 { background: linear-gradient(135deg, #1b442a 0%, #225534 50%, #3b744f 100%); }
.slide-2 { background: linear-gradient(135deg, #153420 0%, #1c452a 40%, #235736 100%); }
.slide-3 { background: linear-gradient(135deg, #1c452a 0%, #507b34 60%, #7A9028 100%); }

/* ヒーローエリア高さ（標準280px基準） */
@media (min-width: 769px) {
  .hero-main { height: 350px !important; min-height: 0 !important; }
  .hero-carousel-wrapper { height: 350px !important; min-height: 350px !important; }
  .hero-info-wrapper { height: 350px !important; overflow-y: auto; }
}
@media (max-width: 768px) {
  .hero-main { height: auto !important; min-height: 0 !important; }
  .hero-carousel-wrapper { height: 350px !important; min-height: 350px !important; }
  .carousel-content { height: 350px !important; }
}

/* カルーセル矢印を非表示（手動切替オフ） */
.carousel-arrow { display: none !important; }

/* カルーセル横幅: 全幅（クイックリンク非表示） */
@media (min-width: 769px) {
  .hero-carousel-wrapper { flex: 1 1 100% !important; max-width: 100% !important; }
  .hero-info-wrapper { display: none !important; }
  .carousel-content { right: 0 !important; }
}
