@charset "UTF-8";
/*-----------------------
        電話案内
------------------------*/
.tel_guide {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  padding: 0 20px;
  margin-top: 120px;
  margin-bottom: 60px;
  color: #454545;
  line-height: 1;
}

.tel_title {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  text-align: center;
}

.tel_num {
  font-size: 50px;
  font-weight: bold;
  margin-bottom: 5px;
  text-align: center;
}

.tel_time {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}

/*-----------------------
        form内
------------------------*/
.form_article {
  max-width: 1200px;
  padding: 0 50px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 80px;
}

.form_block {
  width: 100%;
  display: flex;
  justify-content: left;
  align-items: center;
  gap: 20px;
  border-bottom: solid 1px #E2D8BF;
}
.form_block.last {
  align-items: flex-start;
  margin-bottom: 60px;
}

.formtitle {
  width: 220px;
  display: flex;
  justify-content: left;
  align-items: center;
  gap: 20px;
  flex-shrink: 0;
}
.formtitle.last {
  padding-top: 45px;
}

.contentname {
  font-size: 18px;
  font-weight: bold;
  color: #000;
}

.must,
.optional {
  width: 61px;
  height: 21px;
  border-radius: 6px;
  color: #fff;
  background-color: #CB4F54;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  line-height: 21px;
}

.optional {
  background-color: #707070;
}

.input_block {
  width: 100%;
  padding: 34px 0;
}

.input_style {
  display: block;
  padding: 5px 12px;
  width: 100%;
  height: 45px;
  background-color: #F2F2F2;
}

.textarea_block {
  width: 100%;
  padding: 34px 0;
}

.textarea_style {
  display: block;
  padding: 8px 12px;
  width: 100%;
  height: 190px;
  background-color: #F2F2F2;
}

p.input_style,
p.textarea_style {
  font-size: 18px;
  background-color: #fff;
  line-height: 25px;
  padding: 0;
  height: 25px;
}

p.textarea_style {
  height: fit-content;
  margin-top: 15px;
  line-height: 1.7;
}

.confirm {
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: center;
  align-content: center;
  gap: 20px;
}
.confirm .global_btn {
  display: block;
  width: calc((100% - 20px) / 2);
}
.confirm .global_btn button {
  display: block;
  width: 100%;
  height: 100%;
}

.global_btn.check_btn {
  pointer-events: none;
  background-color: #999;
  border: solid 1px #ddd;
}
.global_btn.check_btn.active {
  pointer-events: all;
  background-color: #636462;
  border: solid 1px #636462;
}
.global_btn.check_btn.active:hover {
  background-color: #fff;
}

/*-----------------------
        完了画面
------------------------*/
.back {
  display: block;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.3;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  margin-top: 140px;
  margin-bottom: 160px;
  color: #454545;
  border-bottom: solid 1px #454545;
}
.back:hover {
  border-bottom: none;
}

.privacy_check {
  width: fit-content;
  height: 20px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
  padding: 12px 0;
  margin-left: auto;
  margin-right: auto;
  margin-top: 10px;
  margin-bottom: 60px;
}
.privacy_check input {
  margin-right: 5px;
  height: 16px;
  width: 16px;
}

.privacy_link {
  border-bottom: solid 1px #333;
  height: 20px;
}
.privacy_link:hover {
  border-bottom: none;
}
@media (max-width: 960px){
  .tel_guide {
    margin-top: 80px;
    margin-bottom: 40px;
  }
  .tel_title {
    font-size: 18px;
    margin-bottom: 16px;
  }
  .tel_num {
    font-size: 38px;
  }
  .tel_time {
    font-size: 18px;
  }
  .formtitle.last {
    padding-top: 30px;
  }
  .formtitle {
    width: 190px;
    padding: 24px 0;
  }
  .contentname {
    font-size: 16px;
    letter-spacing: -0.5px;
  }
  .must,
  .optional {
    font-size: 13px;
  }
  .input_block {
    padding: 24px 0;
  }
  .textarea_block {
    padding: 24px 0;
  }
  .back {
    font-size: 20px;
    margin-top: 100px;
    margin-bottom: 140px;
  }
}
@media (max-width: 767px){
  .tel_guide {
    margin-top: 60px;
  }
  .tel_title {
    font-size: 14px;
  }
  .tel_num {
    font-size: 28px;
  }
  .tel_time {
    font-size: 14px;
  }
  .form_article {
    padding: 0 20px;
    margin-bottom: 50px;
  }
  .form_block {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
  }
  .form_block.last {
    margin-bottom: 40px;
  }
  .formtitle.last {
    padding-top: 16px;
  }
  .formtitle {
    padding: 16px 0 0;
  }
  .input_block {
    padding: 8px 0 16px;
  }
  .textarea_block {
    padding: 8px 0 16px;
  }
  p.input_style,
  p.textarea_style {
    font-size: 16px;
  }
  .confirm {
    gap: 12px;
  }
  .back {
    font-size: 14px;
    margin-top: 60px;
    margin-bottom: 80px;
  }
  .privacy_check {
    font-size: 15px;
  }
  .privacy_check input {
    margin-right: 8px;
    width: 16px;
    height: 16px;
  }
}