@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;
}

/* ========================================
■ スマートフォン
============================================ */
@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;
  }
}
