@charset "utf-8";
/* ========================================
■ お問合せ 「.contact-form」 「contact.html」用
=========================================== */
.contact-form {
  margin-bottom: 80px;
}

.contact-form dt {
  font-weight: 500;
  margin-bottom: 10px;
}
.contact-form dt .require {
  color: #e52e27;
  margin-left: 5px; /** span はインラインだけど左右のmargin は効く */
}
.contact-form dd {
  margin-bottom: 40px;
}
/* 親要素の幅100%に設定 */
.contact-form dd input[type="text"],
.contact-form dd input[type="email"] {
  width: 100%;
  border: solid 1px #ccc;
  padding: 15px 10px; /** 入力欄内に余白 */
}
/* 親要素の幅100%に設定 */
.contact-form dd textarea {
  width: 100%;
  height: 200px;
  border: solid 1px #ccc;
  padding: 15px 10px; /** 入力欄内に余白 */
}
/* ラジオボタン全体を囲む「dd」タグに対して、Flexboxを設定して、横並びにする */
.contact-form .radio-group {
  display: flex; /** 横並びにする */
  align-items: center; /** 上下の中央に配置 */
}
.contact-form .radio-group .item-group {
  margin-right: 40px;
}
.contact-form .btn {
  text-align: center;
}
.contact-form .btn input {
  background-color: #000;
  color: #fff;
  font-size: 14px;
  padding: 15px 50px; /** ボタンのサイズを調整 */
}

/* ========================================
■ thanks-box
-========================================== */
.thanks-box {
  max-width: 70%;
  width: 700px;
  text-align: left;
  margin: auto;
  line-height: 1.7;
}
.text-thanks {
  margin-bottom: 1rem;
}

/* ========================================
■ ■ ■ ■ ■  .box-with-arrow  ■ ■ ■ ■ ■
=========================================== */

.box-with-arrow {
  margin-top: 20px;
  position: relative; /* 擬似要素の基準位置とする */
  padding: 15px 30px 15px 15px; /* 矢印分のスペースを確保 */
  background-color: #f0f0f0;
  /* border: 1px solid #ccc; */
  width: 200px;
  display: inline-block; /* 中央揃えを適用するために必要 */
}
.arrow {
  font-size: 1rem;
  text-decoration: none;
  color: #333;
  /* ↓テキスト左右中央（なぜか「text-align:center;」が効かない）*/
  display: flex;
  justify-content: center;
}

.box-with-arrow::after {
  content: ""; /* 擬似要素には content が必須 */
  position: absolute;
  right: 30px; /* ボックス内での位置調整 */
  top: 50%;
  transform: translateY(-50%) rotate(45deg); /* 中央揃えにして45度回転 */
  width: 10px;
  height: 10px;
  border-top: 2px solid #333; /* 上と右のボーダーだけ表示 */
  border-right: 2px solid #333;
}

/* ========================================
■ 【PC】送信確認画面のレイアウト CSS PHP工房用にカスタム
============================================ */

/* タイトル */
#formWrap > h3 {
  font-size: 22px;
  font-weight: 600;
  margin: 40px 0 20px;
  text-align: center;
}

/* 説明文 */
#formWrap > p.center {
  margin-bottom: 26px;
  line-height: 1.8;
  font-size: 15px;
}
#formWrap > p.center .emphasis {
  font-weight: bolder; /** 説明文の一部を太字に設定 */
}

/* テーブルの上下余白 */
#formWrap table.formTable {
  margin-bottom: 40px;
}

#formWrap {
  width: 700px;
  margin: 0 auto;
  color: #555;
  line-height: 120%;
  font-size: 100%; /** 90% */
}
table.formTable {
  width: 100%;
  margin: 0 auto;
  border-collapse: collapse;
}
#formWrap table.formTable td,
#formWrap table.formTable th {
  border: 1px solid #ccc;
  padding: 16px !important; /** 10px 12px  */
}
table.formTable th {
  width: 30%;
  font-weight: normal;
  background: #efefef;
  text-align: left;
}
p.error_messe {
  margin: 5px 0;
  color: red;
}

/* ボタン全体の余白 */
#formWrap .btn-center {
  margin: 30px auto;
}

#formWrap input[type="submit"],
#formWrap input[type="button"] {
  margin-top: 20px;
}

/* 送信ボタン（主ボタン） */
#formWrap input[type="submit"] {
  background-color: #0078d4; /* ブランドカラーに変更可 */
  color: #fff;
  padding: 14px 28px;
  font-size: 18px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  width: 100%;
  max-width: 320px;
  margin: 0 auto 15px;
  display: block;
}
#formWrap input[type="submit"]:hover {
  background-color: #005a9e;
}

/* 戻るボタン（副ボタン） */
#formWrap input[type="button"] {
  background-color: #e0e0e0;
  color: #333;
  padding: 12px 24px;
  font-size: 16px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  width: 100%;
  max-width: 320px;
  margin: 20px auto 40px;
  display: block;
}
#formWrap input[type="button"]:hover {
  background-color: #c8c8c8;
}

/* ========================================
■ スマートフォン
============================================ */
@media screen and (max-width: 767px) {
  /*----------------------------------------
  お問い合わせ （スマホ）
  ------------------------------------------ */
  .contact-form {
    margin-bottom: 40px; /** PC は、80px */
  }
  .contact-form dd {
    margin-bottom: 25px; /** PC は、40px */
  }
  /* ↓ラジオボタンを縦に並べる */
  .contact-form .radio-group {
    flex-direction: column; /** 縦に並べる。 PCでは、「display:flex;」で横並び */
    align-items: flex-start; /** 上揃え（初期値、アイテムの高さは揃わない） */
    margin: 0 0 10px;
  }
  .contact-form .radio-group .item-group {
    margin: 0 0 15px;
  }

  /* =================================================
■ 【スマホ用】送信確認画面のレイアウト CSS PHP工房用にカスタム
==================================================== */

  /* 簡易版レスポンシブ用CSS（必要最低限のみとしています。ブレークポイントも含め自由に設定下さい） */

  #formWrap {
    padding-top: 70px; /* ヘッダー高さ60px + 余白10px スマホ画面で、見出しが非表示になるための処理 */
    width: 95%;
    margin: 0 auto;
  }

  /* タイトル */
  #formWrap > h3 {
    font-size: 20px;
    margin: 25px 0 15px;
  }

  /* 説明文 */
  #formWrap > p.center {
    margin-bottom: 20px;
    font-size: 14px;
    line-height: 1.7;
  }

  table.formTable th,
  table.formTable td {
    width: auto;
    display: block;
    padding: 12px !important; /** 追加 */
  }
  table.formTable th {
    margin-top: 5px;
    border-bottom: 0;
  }

  #formWrap input[type="submit"],
  #formWrap input[type="reset"],
  #formWrap input[type="button"] {
    display: inline-block; /** 中央表示のため、元はblock */
    width: 100%;
    max-width: 320px;
    height: auto; /** 40px */
    margin: 12px auto; /* 上下の余白 + 中央寄せ */
    padding: 14px 0 !important; /** 追加 */
    font-size: 16px; /** 追加 */
  }
  /* ブラウザの幅に関係なく、ボタンを縦並びにする */
  #formWrap .btn-center {
    display: flex;
    flex-direction: column; /* ← 縦並びを強制 */
    align-items: center; /* ← 中央寄せ */
  }
  /* ★ ボタン同士の間隔を 調整 */
  #formWrap .btn-center input[type="submit"] {
    margin-bottom: 20px;
  }
  #formWrap .btn-center input[type="button"] {
    margin-bottom: 10px; /** footer との調整 */
  }
  #formWrap table.formTable {
    margin-bottom: 30px; /* table と 「送信する」ボタンの調整  */
  }
}
