/* お問い合わせ共通 */
.inquiry_common_text {
  font-size: clamp(16px, 2.5vw, 24px);
}

/* ラジオボタン非表示 */
input[type=radio] {
  position: absolute;
  opacity: 0;

  appearance: auto;
}

input:focus,
textarea:focus {
  outline: none;
  background-color: #c4e6e4;
  transition: background-color .8s ease-out;
}

::placeholder {
  color: #908379;
}

/* メインビジュアル */
.mv_container {
  position: relative;
}

.mv_img {
  min-height: 150px;
  max-height: 300px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mv_text {
  position: absolute;
  top: 41%;
  left: 5.76%;
  color: #101010;
  font-size: clamp(24px, 3.88vw, 56px);
}

/* リード文 */
.read_container {
  margin: 0 auto;
  padding-top: 100px;
  max-width: 600px;
  width: 95%;
  text-align: center;
  font-size: clamp(16px, 2.34375vw, 18px);
  line-height: 160%;
}

/* お問い合わせ */
.inquiry_container {
  margin: 0 auto;
  padding-top: 100px;
  max-width: 720px;
  width: 91.47%;
}

.inquiry_area:not(:first-child) {
  margin-top: 30px;
}

.inquiry_Required {
  margin-left: 16px;
  padding: 4px clamp(8px, 1.666vw, 16px);
  border-radius: 50px;
  background-color: #72b4bd;
  color: #f4efeb;
  font-weight: 700;
  font-size: clamp(12px, 1.666vw, 16px);
}

.inquiry_mail,
.inquiry_address,
.inquiry_tel,
.inquiry_content {
  padding: clamp(16px, 2.5vw, 24px) 8px;
  width: 100%;
  background-color: #e7d5c8;
  color: #101010;
  line-height: 1em;
}

.inquiry_mail,
.inquiry_age,
.inquiry_sex,
.inquiry_name,
.inquiry_address,
.inquiry_tel,
.inquiry_content {
  margin-top: 15px;
}

.age_inner,
.sex_inner {
  cursor: pointer;
}

.age_inner:not(:first-child) {
  margin-left: min(25px, 3.225vw);
}

.sex_inner:not(:first-child) {
  margin-left: min(30px, 3.225vw);
}

.inquiry_name {
  padding: clamp(16px, 2.5vw, 24px) 8px;
  width: 49.44%;
  background-color: #e7d5c8;
  color: #101010;
}

/* ラジオボタン */
.inquiry_radio_btn {
  position: relative;
  display: flex;
  align-items: center;
}

.inquiry_radio_btn::before {
  content: '';
  display: inline-block;
  margin-right: 10px;
  width: 20px;
  height: 20px;
  border: 1.5px solid #101010;
  border-radius: 50%;
}

.inquiry_radio:checked+.inquiry_radio_btn::after {
  content: '';
  position: absolute;
  left: 5px;
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #72b4bd;
}

.radio_font {
  font-family: 'Kaisei Decol',
    'Yu Mincho Light',
    'YuMincho',
    'Yu Mincho',
    '游明朝体',
    'ヒラギノ明朝 ProN',
    'Hiragino Mincho ProN',
    serif;
}

/* 規約 */
.inquiry_policy {
  align-items: center;
  justify-content: center;
}

.policy_check {
  position: relative;
  display: inline-block;
  margin-right: clamp(8px, 1.5625vw, 15px);
  width: clamp(20px, 3.125vw, 30px);
  height: clamp(20px, 3.125vw, 30px);
  border: 1.5px solid #101010;
}

.policy_check:focus {
  background-color: transparent;
  transition: none;
}

.policy_check:checked:before {
  content: '';
  position: absolute;
  top: 0;
  left: 25%;
  width: 46.77%;
  height: 78.6%;
  border-right: 4px solid #f4efeb;
  border-bottom: 4px solid #f4efeb;
  transform: rotate(50deg);
}

.policy_check:checked {
  background-color: #72b4bd;
}


/* お問い合わせボタン */
.inquiry_link_btn {
  position: relative;
  display: inline-block;
  padding: 17px 80px;
  border-radius: 50px;
  background-color: #9e9e9e;
  color: #f4efeb;
  font-size: clamp(16px, 3.3333vw, 32px);
  cursor: auto;
  transition: .8s;
}

/* フッター */
.footer_container {
  margin-top: 200px;
}

.kakunin {
  background-color: #222;
}

/* レスポンシブ 1000px */

@media (max-width: 1000px) {
  /* 余白 */

  .mv {
    margin-top: 120px;
  }
}

/* レスポンシブ 700px */

@media (max-width: 700px) {
  /* お問い合わせ */

  .policy_check:checked:before {
    border-right: 3px solid #f4efeb;
    border-bottom: 3px solid #f4efeb;
  }
}

/* レスポンシブ 620px */

@media (max-width: 620px) {
  /* 余白 */

  .mv {
    margin-top: 70px;
  }

  .read_container,
  .inquiry_container {
    padding-top: 50px;
  }

  .footer_container {
    margin-top: 100px;
  }

  /* お問い合わせ */

  .inquiry_age,
  .inquiry_sex {
    flex-direction: column;
    width: 81px;
  }

  .age_inner:not(:first-child),
  .sex_inner:not(:first-child) {
    margin: 20px 0 0;
  }

  .inquiry_content {
    height: 300px;
  }

  .inquiry_link_btn {
    padding: 15px 50px;
    font-size: 16px;
  }
}