@media (min-width: 1320px) {
  .list-title-container {
    width: 1550px !important;
    max-width: 1550px !important;
    margin: 0 auto !important;
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    box-sizing: border-box !important;
    text-align: center; /* タイトルを中央揃え */
    margin-bottom: 20px;
  }
}

/* 1320px未満 (モバイル、タブレットを含む) */
@media (max-width: 1319px) {
  .list-title-container {
    width: 100% !important; /* モバイルで100%の幅を使用 */
    max-width: unset !important; /* 最大幅の制限を解除 */
    margin: 0 auto !important;
    box-sizing: border-box !important;
    position: static !important;
    left: auto !important;
    transform: none !important;
    text-align: center; /* タイトルを中央揃え */
    margin-bottom: 20px;
  }
}

.list-title-container h2 {
  font-size: 32px;
  font-weight: bold;
  color: #333;
}

/* --- 既存のスタイル --- */
/* 1320px以上 (PC) */
@media (min-width: 1320px) {
  .postid-258 #stock-table-header-258,
  .postid-258 #treasury-stock-table-container-258,
  .postid-258 .entry-content {
    width: 1550px !important;
    max-width: 1550px !important;
    margin: 0 auto !important;
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    box-sizing: border-box !important;
  }
}

/* 1320px未満 (モバイル、タブレットを含む) */
@media (max-width: 1319px) {
  .postid-258 #stock-table-header-258,
  .postid-258 #treasury-stock-table-container-258,
  .postid-258 .entry-content {
    width: 100% !important; /* モバイルで100%の幅を使用 */
    max-width: unset !important; /* 最大幅の制限を解除 */
    margin: 0 auto !important;
    box-sizing: border-box !important;
    position: static !important;
    left: auto !important;
    transform: none !important;
  }
}

/* フィルターコントロールのスタイル */
#stock-table-header-258 .filter-controls select {
  appearance: none;
  padding: 10px 16px;
  border: none;
  border-radius: 30px;
  background: linear-gradient(135deg, #6fb1fc 0%, #4364f7 100%);
  color: #fff;
  font-weight: bold;
  font-size: 14px;
  box-shadow: 0 4px 10px rgba(67, 100, 247, 0.4);
  transition: all 0.3s ease;
  cursor: pointer;
  min-width: 120px;
  text-align: center;
}
#stock-table-header-258 .filter-controls select:hover {
  background: linear-gradient(135deg, #4364f7 0%, #6fb1fc 100%);
}

/* アクティブなフィルタースタイル */
#stock-table-header-258 .filter-controls select.filter-active {
  background: linear-gradient(135deg, #ffc371 0%, #ff5f6d 100%);
  box-shadow: 0 4px 12px rgba(255, 95, 109, 0.6);
  color: #fff;
}
#stock-table-header-258 .filter-controls select.filter-active:hover {
  background: linear-gradient(135deg, #ff5f6d 0%, #ffc371 100%);
}

/* 検索窓のスタイル */
#etf-search-input-258 {
  padding: 10px 16px;
  border: 1px solid #ccc;
  border-radius: 30px;
  background-color: white;
  color: #333;
  font-weight: bold;
  font-size: 14px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  min-width: 150px;
  box-sizing: border-box;
}
#etf-search-input-258::placeholder {
  color: #888;
}
#etf-search-input-258:focus {
  border-color: #4a69bd;
  outline: none;
  box-shadow: 0 2px 8px rgba(74, 105, 189, 0.3);
}

/* テーブルコンテナ */
#treasury-stock-table-container-258 {
  overflow-x: auto;
  border: 1px solid #dee2e6;
  border-radius: 10px;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.05);
  background-color: #fff;
  padding: 10px;
  width: 100%;
  box-sizing: border-box;
}

/* テーブルスタイル */
.stock-table {
  width: 100%;
  min-width: 1520px;
  border-collapse: collapse;
  font-size: 14px;
  color: #333;
}
.stock-table thead th {
  background: #4a69bd;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 12px;
  border-bottom: 2px solid #ccc;
  white-space: nowrap;
}
.stock-table tbody td {
  padding: 12px;
  text-align: center;
  border-bottom: 1px solid #e9ecef;
  white-space: nowrap;
  font-size: 15px; /* **[変更]** 全体の文字サイズを少し大きく設定 */
}
.stock-table tbody tr:nth-child(even) {
  background-color: #f8f9fa;
}
.stock-table tbody tr:hover {
  background-color: #e8f0ff;
}

/* **[変更]** 順位番号のスタイル */
.stock-table td:nth-child(1) {
  font-weight: bold;
  color: #4a69bd; /* **[変更]** 濃い青色に変更 */
}

/* ティッカーを太字に適用 */
.stock-table td:nth-child(2) {
  font-weight: bold;
}

/* **[変更]** 配当増加期間を太字および中央揃え */
.stock-table td:nth-child(12) {
  font-weight: bold;
  text-align: center !important; /* **[変更]** !importantで強制適用 */
}

/* セクターを中央揃え */
.stock-table td:nth-child(3) {
  text-align: center;
  font-weight: 500;
}

/* 配当利回り、配当性向、配当成長率を青色に適用 */
.stock-table td:nth-child(8),
.stock-table td:nth-child(9),
.stock-table td:nth-child(10) {
  color: #3498db;
}

/* 数字を右揃え */
.stock-table td.align-right {
  text-align: right !important;
}

/* フィルター上部のボックスUI */
#stock-table-header-258 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #f8f9fa;
  padding: 16px 20px;
  border-radius: 10px;
  margin-bottom: 16px;
  flex-wrap: wrap;
  gap: 10px;
  width: 100%;
  box-sizing: border-box;
}
#stock-table-header-258 .header-left-controls {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  flex-grow: 1;
}
#stock-table-header-258 .info-text {
  font-weight: bold;
  color: #333;
  font-size: 15px;
  white-space: nowrap;
}
#stock-table-header-258 .filter-controls {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  flex-grow: 1;
  justify-content: flex-end;
}

/* モバイルレスポンシブ調整 */
@media (max-width: 768px) {
  #stock-table-header-258 {
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  #stock-table-header-258 .header-left-controls,
  #stock-table-header-258 .filter-controls {
    width: auto;
    flex-grow: unset;
    justify-content: flex-start;
  }
  #stock-table-header-258 .filter-controls select,
  #stock-table-header-258 .header-left-controls input[type="text"] {
    width: auto;
    min-width: unset;
    flex-grow: 1;
  }
}
@media (max-width: 480px) {
  #stock-table-header-258 .filter-controls select,
  #stock-table-header-258 .header-left-controls input[type="text"] {
    width: 100%;
    max-width: none;
  }
  #stock-table-header-258 .filter-controls {
    flex-direction: column;
    align-items: stretch;
  }
  #stock-table-header-258 .header-left-controls {
    flex-direction: column;
    align-items: stretch;
  }
}