.ezf-container {
  max-width: 1000px;
  margin: 20px auto;
  font-family: sans-serif;
  padding: 0 15px;
  line-height: 1.6;
}

.ezf-latest-link {
  font-weight: bold;
  margin-bottom: 10px;
}

.ezf-note {
  font-size: 0.9rem;
  color: #333;
  margin-bottom: 5px;
}

/* テーブル全体の枠 */
.ezf-table {
  border-top: 1px solid #ccc;
  display: flex;
  flex-direction: column;
}

/* ヘッダー（濃いグレー） */
.ezf-table-header {
  display: flex;
  background-color: #777;
  color: #fff;
  font-weight: bold;
  text-align: center;
  
  /* ★ここを追加：垂直方向の中央揃え */
  align-items: center; 
  
  /* 必要に応じて高さを指定（例） */
  min-height: 60px; 
}

/* 行の基本設定 */
.ezf-table-row {
  display: flex;
  border-bottom: 1px solid #eee;
}

/* 交互の背景色（薄いグレー） */
.ezf-row-alt {
  background-color: #f5f5f5;
}

/* 各カラムの調整 */
.ezf-col-pn {
  font-size:10px;
  flex: 0 0 30%;
  padding: 10px 15px;
  border-right: 1px solid #eee;
}

.ezf-col-spec {
  font-size:10px;
  flex: 1;
  padding: 10px 15px;
}

/* 水色のリンク */
.ezf-text-link {
  color: #007bff;
  text-decoration: underline;
}

/* --- スマホ対応 --- */
@media (max-width: 600px) {
#main-contents .contents {
    padding-right: 5px;
    padding-left: 5px;
}

  .ezf-table-header {
    display: none; /* スマホでは見出し行を隠す */
  }

  .ezf-table-row {
    flex-direction: column; /* 縦並びにする */
    border-bottom: 2px solid #ccc;
    padding: 10px 0;
  }

  .ezf-col-pn, .ezf-col-spec {
    flex: 1 0 100%;
    border-right: none;
    padding: 10px 15px;
  }

  /* スマホ時に項目ラベルを自動表示 */
  .ezf-col-pn::before {
    content: "【品番】";
    display: block;
    font-size: 0.75rem;
    color: #888;
    margin-bottom: 5px;
  }
  .ezf-col-spec::before {
    content: "【仕様】";
    display: block;
    font-size: 0.75rem;
    color: #888;
    margin-bottom: 5px;
  }
}