/* ===== Contact Form 7 カスタマイズ ===== */

/* テーブル全体 */
table.CF7_table {
  width: 80%;
  margin: 0 auto;
  border: 3px solid #e5e5e5;
}

table.CF7_table tr {
  border-top: 1px solid #e5e5e5;
}

.single .entry-content table.CF7_table,
.page .entry-content table.CF7_table {
  display: table;
}

/* 入力欄（テキスト・テキストエリア・プルダウン） */
.CF7_table input,
.CF7_table textarea,
.CF7_table select {
  border: 1px solid #d8d8d8;
}

.CF7_table select {
  padding: 5px 10px;
  background: #fff;
}

.CF7_table .message-100 textarea {
  width: 100%;
}

.CF7_table ::placeholder {
  color: #797979;
}

/* 「必須」ラベル */
.CF7_req {
  font-size: .9em;
  padding: 5px;
  background: #f79034; /* オレンジ */
  color: #fff;
  border-radius: 3px;
  margin-right: 1em;
}

/* 「任意」ラベル */
.CF7_unreq {
  font-size: .9em;
  padding: 5px;
  background: #bdbdbd; /* グレー */
  color: #fff;
  border-radius: 3px;
  margin-right: 1em;
}

/* タイトル列（PC） */
@media screen and (min-width: 768px) {
  .CF7_table th {
    width: 30%; /* 横幅 */
    background-color: #ebedf5; /* ブルーグレー */
  }
}

/* レスポンシブ（スマホ） */
@media screen and (max-width: 767px) {
  table.CF7_table {
    width: 95%;
  }
  .CF7_table tr,
  .CF7_table td,
  .CF7_table th {
    display: block;
    width: 100%;
    line-height: 2.5em;
  }
  .CF7_table th {
    background-color: #ebedf5;
  }
}

/* プライバシーポリシー同意欄 */
.CF7_privacy {
  text-align: center;
  margin-top: 20px;
}

.CF7_privacy a {
  color: #f79034;
  text-decoration: underline;
}

/* 「送信する」ボタン */
.CF7_btn {
  text-align: center;
  margin-top: 20px;
}

.wpcf7 input.wpcf7-submit {
  background-color: #f79034; /* オレンジ */
  border: 0;
  color: #fff;
  font-size: 1.2em;
  font-weight: bold;
  margin: 0 auto;
}

/* 同意チェック前（ボタン無効時）はグレーアウト */
.wpcf7 input.wpcf7-submit:disabled {
  background-color: #bdbdbd;
  cursor: not-allowed;
}

/* 送信中スピナーの余白調整 */
.wpcf7-spinner {
  width: 0;
  margin: 0;
}