@charset "utf-8";
/* 氏名：佐々木 */

.contact_form_setting {
  max-width: 106rem;
  width: 100%;
  color: #000000;
  font-size: 1.6rem;
  padding-top: 14rem;
  margin-left: 22rem;
  padding-bottom: 10rem;
  background-color: #CEBD89;
  font-family: var(--ZenMincho);
}

.contact_form_wrapper {
  width: 100%;
  max-width: 84rem;
  margin-left: 9rem;
}

.contact_page_title {
  font-size: 3.5rem;
  margin-bottom: 2.4rem;
  line-height: calc(51 / 35);
  letter-spacing: calc(5.6em / 35);
  text-shadow: 0 0.3rem 0.6rem #00000029;
}

.contact_top_text {
  margin-bottom: 7.6rem;
}
.contact_text {
  line-height: calc(24 / 16);
  letter-spacing: calc(1.6em / 16);
}
/* .contact_text:first-child {
  margin-bottom: 2.4rem;
}
.contact_text:nth-child(3) {
  margin-bottom: 2.4rem;
} */
.contact_text {
  margin-bottom: 2.4rem;
}
.contact_text:nth-child(2) {
  margin-bottom: 0;
}
.contact_text:nth-child(4) {
  margin-bottom: 0;
}

/*===================================
CONTACT-FORM
===================================*/
.contact_form_container {
  width: 100%;
  margin-left: 1.3rem;
  margin-bottom: 3.5rem;
  display: flex;
  gap: 3.1rem;
  flex-direction: column;
}
.form_box_bg {
  height: 4rem;
  background-color: #ffffff;
}

.contact_form_items {
  display: flex;
  flex-direction: column;
}
.contact_form_name {
  margin-bottom: 1.2rem;
  position: relative;
  line-height: calc(24 / 16);
  letter-spacing: calc(2.56em / 16);
}
.contact_required_label::after {
  content: "必須";
  display: inline-flex;
  font-weight: 300;
  color: #ffffff;
  font-size: 1.3rem;
  font-weight: 300;
  padding: 0 0.75rem;
  margin-left: 1.7rem;
  border-radius: 5rem;
  line-height: calc(16 / 13);
  letter-spacing: calc(2.08em / 13);
  background-color: #BC0000;
}
.label_mg_set.contact_required_label::after {
  margin-left: 1.2rem;
}
.contact_form_box {
  width: 100%;
  padding: 0 1rem;
  max-width: 64rem;
}

.contact_form_content {
  display: flex;
  align-items: center;
  margin-bottom: 2.4rem;
}
.contact_form_content:last-child {
  margin-bottom: 0;
} 

.optional { 
  display: block;
  height: 4rem;
}
.store_form_item {
  display: flex;
  align-items: center;
}
.checkbox_name {
  margin-left: 1.5rem;
  margin-right: 4rem;
  margin-bottom: 0;
}
.checkbox-out {
  margin-right: 0;
}
.checkbox_text {
  margin: 0;
}
.wpcf7-list-item {
  margin-left: 0;
}
.contact_form_checkbox {
  width: 4rem;
  position: relative;
}
/* チェックが入ったときの見た目 */
.contact_form_checkbox:checked::after {
  content: '';
  position: absolute;
  top: 0.8rem;
  left: 1.6rem;
  width: 1rem;
  height: 2rem;
  border: solid #333;
  border-width: 0 0.4rem 0.4rem 0;
  transform: rotate(45deg);
}

.store_select_box {
  width: 51rem;
  padding-left: 2rem;
  position: relative;
}
.select_custom_arrow {
  position: relative;
}
.select_custom_arrow::before {
  position: absolute;
  top: 1.3rem;
  right: 2.6rem;
  content: "";
  width: 1rem;
  height: 1rem;
  border-top: 0.1rem solid #000000;
  border-left: 0.1rem solid #000000;
  transform: rotate(-135deg);
  pointer-events: none;
  z-index: 1;
}
.contact_form_datebox {
  position: relative;
  width: 30rem;
  padding-left: 1.3rem;
}
.contact_form_datebox::-webkit-calendar-picker-indicator {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.contact_form_datebox::-webkit-inner-spin-button{
  -webkit-appearance: none;
}
.contact_form_datebox::-webkit-clear-button{
  -webkit-appearance: none;
}

.form_time_content {
  display: flex;
  gap: 1rem;
  align-items: center;
}
.form_time_name {
  margin-bottom: 0;
}
.contact_form_timebox {
  width: 10rem;
  padding-left: 1.5rem;
}
.wpcf7-response-output {
  display: none;
}

.contact_form_detail {
  width: 64rem;
  height: 18rem;
  padding: 1rem;
}

/* 送信ボタン */
.contact_form_submit {
  width: 35rem;
  padding: 0.3rem 0;
  color: #ffffff;
  font-size: 1.6rem;
  margin-top: 1.3rem;
  line-height: calc(24 / 16);
  letter-spacing: calc(1.6em / 16);
  background-color: #BC0000;
}


.contact_bottom_text {
  margin-left: 1.3rem;
}
.contact_last_text {
  margin-bottom: 0 !important;
}


@media screen and (max-width: 699.98px) {
  .contact_form_setting {
    width: 100%;
    margin: 0;
    padding-bottom: 17rem;
  }
  .contact_form_wrapper {
    max-width: 35.5rem;
    width: 100%;
    margin: 0 auto;
  }
  .contact_page_title {
    margin-left: 0.5rem;
  }
  
  .contact_top_text {
    margin-bottom: 5rem;
  }
  .contact_text {
    margin-bottom: 2.4rem;
  }
  .contact_text:nth-child(4) {
    margin-bottom: 0;
  }
  .contact_text:nth-child(6) {
    margin-bottom: 0;
  }
  

/*===================================
CONTACT-FORM
===================================*/
  .contact_form_container {
    margin-left: 0;
    gap: 3rem;
    margin-bottom: 3.5rem;
  }
  .contact_form_name {
    margin-bottom: 1.3rem;
  }

  .contact_form_content{
    display: flex;
    flex-direction: column;
    align-items: start;
  }
  .store_form_item {
    /* display: flex; */
    align-items: center;
    margin-bottom: 2.4rem;
  }
  .store_form {
    margin-bottom: 0.5rem;
  }
  .checkbox_name {
    line-height: calc(30 / 16);
    letter-spacing: calc(1.6em / 16);
    margin: 0 0 0 1.5rem;
  }
  .checkbox_text {
    margin: 0;
  }
  .store_select_box {
    width: 35.5rem;
  }
  .form_time_name {
    margin-bottom: 0;
  }

  .contact_form_detail {
    width: 35.5rem;
  }

  .contact_form_submit {
    margin-top: 1.5rem;
  }
  .contact_bottom_text {
    margin-left: 0;
    margin-bottom: 0;
  }
}