/* Flexslider スライダー高さ調整 - レスポンシブ対応 */
.flexslider,
.flexslider .slides,
.flexslider .slides > li {
  height: 30vh !important;  /* 画面高さの20% */
  max-height: 600px !important;  /* 最大値を設定（大画面対策） */
  min-height: 200px !important;  /* 最小値を設定（小画面対策） */
  overflow: hidden !important;
}

/* Flexslider 画像調整 */
.flexslider .slides > li img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* キャプション位置調整 */
.flexslider .slider-caption {
  position: absolute !important;
  bottom: 20px !important;
}

/* スライダーのタイトル・説明文の背景を改善 */
.flexslider .slider-caption {
  background: rgba(0, 0, 0, 0.6) !important; /* 黒背景、60%の不透明度 */
  padding: 20px 30px !important;
  border-radius: 5px !important; /* 角を少し丸く */
}

/* タイトルのスタイル改善 */
.flexslider .slider-caption .slider-title {
  color: #ffffff !important;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8) !important; /* テキストに影を追加 */
}

/* 説明文のスタイル改善 */
.flexslider .slider-caption .slider-description {
  color: #ffffff !important;
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6) !important;
}

/* ロゴ下のサイト名「成城自治会」を非表示 */
.site-branding__name,
.site-name {
  display: none !important;
}

/* ロゴ下のサイト名「成城自治会」を非表示 */
.site-branding__text,
.site-branding__name,
.site-name {
  display: none !important;
}

/* item-listクラス内の赤字リンクを黒字ボールドで左寄せに */
.item-list ul li a {
  color: #000000 !important;
  font-weight: bold !important;
}

.item-list ul li {
  text-align: left !important;
}

.item-list ul {
  text-align: left !important;
  list-style-position: inside !important;
}

.item-list {
  text-align: left !important;
}

/* Viewsのコンテンツも左寄せで黒字ボールド */
.view-frontpage .item-list ul li a {
  color: #000000 !important;
  font-weight: bold !important;
}

.view-frontpage .views-row {
  text-align: left !important;
}


/* メニューの背景色を薄い緑に変更 */
#main-menu,
.region-primary-menu,
nav#block-sales-zymphonies-theme-main-menu {
  background-color: #ffffff !important;
}

/* メニューの最初の項目の左にも区切り線を追加 */
#main-menu ul li:first-child,
.region-primary-menu ul li:first-child,
nav#block-sales-zymphonies-theme-main-menu ul li:first-child {
  border-left: 1px solid #ddd !important;
}

/* メニューの最後の項目の右にも区切り線を追加 */
#main-menu ul li:last-child,
.region-primary-menu ul li:last-child,
nav#block-sales-zymphonies-theme-main-menu ul li:last-child {
  border-right: 1px solid #ddd !important;
}


/* スライダーの「Read more」リンクを非表示 */
.flexslider .more-link,
.slider-caption .more-link,
#slider .more-link,
.slide-content .more-link {
  display: none !important;
}

/* スライダー内の全てのReadmoreリンクを非表示 */
.flexslider a[href*="Read more"],
.flexslider a:contains("Read more") {
  display: none !important;
}


/* ===== アクセントカラーを緑に変更（完全版） ===== */

/* リンク色 */
a {
  color: #7dc97d !important;
}
a:hover,
a:focus {
  color: #1e7e34 !important;
}

/* タブ */
.tabs a.is-active {
  background-color: #7dc97d !important;
}
.tabs a:focus,
.tabs a:hover {
  background-color: #1e7e34 !important;
}

/* ボタン・送信ボタン */
.btn,
input[type="submit"] {
  background: #7dc97d !important;
}
.btn:hover,
input[type="submit"]:hover {
  background: #1e7e34 !important;
}

/* 検索ボタン */
#search-block-form input.form-submit,
#edit-submit {
  background-color: #7dc97d !important;
}

/* 検索ボタン - 虫眼鏡アイコンを保持しつつ背景色を緑に */
#search-block-form input.form-submit,
#edit-submit {
  background: url('/themes/contrib/sales_zymphonies_theme/images/search.png') no-repeat center #5cb85c !important;
}

#search-block-form input.form-submit:hover,
#edit-submit:hover {
  background: url('/themes/contrib/sales_zymphonies_theme/images/search.png') no-repeat center #4cae4c !important;
}

/* ボタン・送信ボタン - 背景緑、文字白 */
.btn,
input[type="submit"] {
  background: #5cb85c !important;
  color: #fff !important;
}

.btn:hover,
input[type="submit"]:hover {
  background: #4cae4c !important;
  color: #fff !important;
}
/* タブボタン - 背景緑、文字白 */
.tabs a.is-active {
  background-color: #5cb85c !important;
  color: #fff !important;
}

.tabs a:focus,
.tabs a:hover {
  background-color: #4cae4c !important;
  color: #fff !important;
}

/* 通常状態のタブも文字色を指定 */
.tabs a {
  color: #444 !important;
}


/* メニューホバー */
.menu-base-theme li a:hover,
.menu-base-theme li a:focus,
.menu-base-theme li a:active,
.menu-base-theme li a.highlighted {
  color: #7dc97d !important;
}

/* ナビゲーションのアクティブメニュー */
#main-menu a.is-active,
.region-primary-menu a.is-active,
nav#block-sales-zymphonies-theme-main-menu a.is-active {
  color: #7dc97d !important;
}

/* メニュー - 黒文字ボールド */
#main-menu a,
#main-menu li a,
.region-primary-menu a,
.region-primary-menu li a,
nav#block-sales-zymphonies-theme-main-menu a,
nav#block-sales-zymphonies-theme-main-menu li a,
.menu-base-theme li a {
  color: #000 !important;
  font-weight: bold !important;
}

/* メニューホバー時も黒文字ボールドを維持（少し薄くするなど） */
#main-menu a:hover,
#main-menu li a:hover,
.region-primary-menu a:hover,
.region-primary-menu li a:hover,
nav#block-sales-zymphonies-theme-main-menu a:hover,
nav#block-sales-zymphonies-theme-main-menu li a:hover,
.menu-base-theme li a:hover,
.menu-base-theme li a:focus,
.menu-base-theme li a:active,
.menu-base-theme li a.highlighted {
  color: #333 !important;
  font-weight: bold !important;
}

/* アクティブメニュー（現在のページ）も黒文字ボールド */
#main-menu a.is-active,
.region-primary-menu a.is-active,
nav#block-sales-zymphonies-theme-main-menu a.is-active {
  color: #000 !important;
  font-weight: bold !important;
}


/* ソーシャルメディア（Google+の赤） */
.social-media a.google-plus {
  background: #7dc97d !important;
}


/* 記事タイトル（リンク）- 黒文字ボールド */
.view-frontpage a,
.view-content a,
.views-row a,
.node__title a,
.field--name-title a,
article h2 a,
.content h2 a,
.teaser h2 a,
h2.node__title a,
.block h2 a {
  color: #000 !important;
  font-weight: bold !important;
}

/* 記事タイトルホバー時 */
.view-frontpage a:hover,
.view-content a:hover,
.views-row a:hover,
.node__title a:hover,
.field--name-title a:hover,
article h2 a:hover,
.content h2 a:hover,
.teaser h2 a:hover,
h2.node__title a:hover,
.block h2 a:hover {
  color: #333 !important;
  font-weight: bold !important;
}

/* 記事タイトル（Views の field-content 内のリンク）- 黒文字ボールド */
.views-field-title .field-content a,
.views-field.views-field-title .field-content a,
.view-frontpage .views-field-title a,
.view-content .views-field-title a {
  color: #000 !important;
  font-weight: bold !important;
}

/* ホバー時 */
.views-field-title .field-content a:hover,
.views-field.views-field-title .field-content a:hover,
.view-frontpage .views-field-title a:hover,
.view-content .views-field-title a:hover {
  color: #333 !important;
  font-weight: bold !important;
}




/* 文字サイズ変更ボタン */
.text-resize-buttons {
  display: inline-flex;
  gap: 5px;
  margin-left: 10px;
}

.text-resize-btn {
  display: inline-block;
  padding: 5px 10px;
  background-color: #5cb85c;
  color: white;
  border-radius: 3px;
  cursor: pointer;
  font-weight: bold;
  user-select: none;
}

.text-resize-btn:hover {
  background-color: #4cae4c;
}
.text-resize-label {
  margin-right: 0px;
  font-size: 12px;
  color: #333;
}

/* スライダーのレスポンシブ対応 - モバイルでテキスト表示 */
@media (max-width: 768px) {
  /* スライダーの高さを自動調整 */
  #main-slider,
  .flexslider,
  .flexslider .slides > li {
    height: auto !important;
    min-height: 250px;
  }
  
  /* スライダーのキャプション（テキスト）を表示 */
  .flexslider .flex-caption,
  .slider-caption,
  #main-slider .slide-text,
  .slides .caption,
  .flexslider .slides h2,
  .flexslider .slides p {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    padding: 10px 15px;
    font-size: 14px !important;
    line-height: 1.5;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.8);
  }
  
  /* タイトルのサイズ調整 */
  .flexslider .slides h2,
  #main-slider h2 {
    font-size: 18px !important;
    margin-bottom: 5px;
  }
  
  /* 説明文のサイズ調整 */
  .flexslider .slides p,
  #main-slider p {
    font-size: 12px !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
  }
}

@media (max-width: 480px) {
  .flexslider .slides h2,
  #main-slider h2 {
    font-size: 16px !important;
  }
  
  .flexslider .slides p,
  #main-slider p {
    font-size: 11px !important;
  }
}
