@charset "UTF-8";
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.counsel {
  background-color: #faf7f0;
  overflow: hidden;
}

::placeholder {
  color: #c7c7c7;
}

.counsel_billboard {
  background-image: url(../img/common/default_billboard.png);
}

.form_container {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .form_container {
    margin-top: 25px;
    padding: 0;
  }
}

.counsel_top_inform {
  background-color: white;
  text-align: center;
  padding: 40px;
  position: relative;
  z-index: 2;
  position: relative;
  margin-bottom: 25px;
}

@media screen and (max-width: 1200px) {
  .counsel_top_inform {
    padding: 20px;
  }
}

@media screen and (max-width: 767px) {
  .counsel_top_inform {
    margin: 0 4vw;
  }
}

@media screen and (max-width: 500px) {
  .counsel_top_inform {
    padding: 10px;
  }
}

.counsel_top_inform:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 15px);
  height: calc(100% - 15px);
  display: block;
  border: 1px solid #efe9db;
}

.counsel_top_inform .lead {
  margin-top: 0;
  margin-bottom: 15px;
}

@media screen and (max-width: 400px) {
  .counsel_top_inform .lead {
    margin-bottom: 0;
    padding: 10px 10px 0px 10px;
  }
  .counsel_top_inform .text {
    font-size: 10px;
    padding: 10px;
  }
}

/*フォームのステップエリア*/
.form_step_flow {
  width: 75%;
  height: 70px;
  margin: 50px auto 50px auto;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  /*ドットの箇所*/
}

@media screen and (max-width: 767px) {
  .form_step_flow {
    width: 100%;
    margin: 25px auto 25px auto;
    padding: 0 4vw;
    justify-content: space-between;
    align-items: center;
  }
}

.form_step_flow .form_step {
  font-size: 24px;
  background-color: #efe8d9;
  color: #a29e95;
  border-radius: 37px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 138px;
  width: calc(100%/4 - 10px);
  height: 70px;
  z-index:2;
}

.form_step_flow .form_step .form_step_num.standard_text {
  font-weight: 600;
}

@media screen and (max-width: 767px) {
  .form_step_flow .form_step .form_step_num.standard_text {
    font-size: 12px;
  }
}

.form_step_flow .form_step:last-child {
  margin-right: 0px;
}

@media screen and (max-width: 767px) {
  .form_step_flow .form_step {
    height: 60px;
    border-radius: 50px;
  }
}

@media screen and (max-width: 400px) {
  .form_step_flow .form_step {
    font-size: 12px;
    height: 45px;
    border-radius: 60px;
  }
}

.form_step_flow span {
  color: #a29e95;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .form_step_flow span {
    font-size: 16px;
  }

}



@media screen and (max-width: 400px) {
  .form_step_flow .form_step_num {
    font-size: 10px;
  }
}

.form_step_flow .dot_text {
  width: calc(100%/7);
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  font-weight: 600;
}

@media screen and (max-width: 767px) {
  .form_step_flow .dot_text {
    font-size: 10px;
  }
}

.form_step_flow .selected {
  background-color: black;
}

.form_step_flow .selected span {
  color: white;
  font-weight: 600;
}

@media screen and (max-width: 767px) {
  .form_step_flow .selected span {
    font-size: 16px;
  }
}

/*テーブルエリア*/
.coounsel_form .btn04 {
  margin: auto auto 30px auto;
  border: none;
}

.coounsel_form .btn04:hover {
  opacity: 0.8;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .coounsel_form .btn04 {
    margin-bottom: 10px;
    max-width: 100%;
    padding: 5px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .coounsel_form .btn04 span {
    line-height: 30px;
    font-size: 14px;
  }
}

.coounsel_form .btn06 {
  margin: auto auto 50px auto;
  border: none;
}

.coounsel_form .btn06:hover {
  opacity: 0.8;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .coounsel_form .btn06 {
    margin-bottom: 30px;
    max-width: 100%;
    padding: 5px;
  }
}

.coounsel_form .btn06 span {
  width: 300px;
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .coounsel_form .btn06 span {
    line-height: 30px;
    font-size: 14px;
  }
}

.form_wrap {
  z-index: 2;
  position: relative;
  margin-top: 0px;
}

.form_wrap .counsel_table {
  box-shadow: 0px 0px 3px #00000029;
  table-layout: fixed;
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .form_wrap .counsel_table {
    margin-bottom: 20px;
  }
}

.form_wrap .t_head, .form_wrap .t_data {
  padding: 30px;
  border-bottom: 1px solid　black;
}

@media screen and (max-width: 1200px) {
  .form_wrap .t_head, .form_wrap .t_data {
    padding: 15px;
  }
}

@media screen and (max-width: 767px) {
  .form_wrap .t_head, .form_wrap .t_data {
    display: block;
  }
}

.form_wrap .t_head {
  max-width: 285px;
  width: 24%;
  text-align: left;
  background-color: #efe8d9;
}

@media screen and (max-width: 1200px) {
  .form_wrap .t_head {
    font-size: 14px;
    width: 26%;
  }
}

@media screen and (max-width: 767px) {
  .form_wrap .t_head {
    width: 100%;
    max-width: 100%;
    padding: 10px 15px;
    font-size: 19px;
    display: flex;
    align-items: center;
    border: none;
  }
}

.form_wrap .t_head .required_label {
  margin-left: 5px;
  padding-left: 8px;
}

@media screen and (max-width: 767px) {
  .form_wrap .t_head .required_label {
    padding-left: 5px;
  }
}

.form_wrap .t_data {
  width: 76%;
  background-color: white;
}

@media screen and (max-width: 767px) {
  .form_wrap .t_data {
    width: 100%;
    max-width: 100%;
    padding: 15px;
    border: 0px;
  }
}

.form_wrap .t_data .sub_text {
  font-size: 14px;
  margin-top: 8px;
}

@media screen and (max-width: 1200px) {
  .form_wrap .t_data .sub_text {
    font-size: 12px;
    width: 74%;
  }
}

@media screen and (max-width: 767px) {
  .form_wrap .t_data .sub_text {
    width: 100%;
  }
}

.form_wrap .select_choise_data {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .form_wrap .select_choise_data {
    justify-content: flex-start;
  }
}

.form_wrap .select_label {
  margin-right: 10px;
  margin-bottom: 10px;
  font-family: var(--gothic);
}

@media screen and (max-width: 767px) {
  .form_wrap .select_label {
    margin-right: 0;
  }
}

.form_wrap .select_label label {
  background-color: #e4e4e4;
  color: #9c9c9c;
  font-size: 16px;
  border-radius: 5px;
  padding: 13px;
  width: 100%;
  display: inline-block;
  font-family: var(--gothic);
  text-align: center;
}

@media screen and (max-width: 1200px) {
  .form_wrap .select_label label {
    //font-size: 1.5vw;
  }
  .form_wrap .select_label.select_label3 label:nth-child(2) {
    padding: 13px 3px;
    //font-size: 1.4vw;
  }
}

@media screen and (max-width: 767px) {
  .form_wrap .select_label label {
    padding: 10px;
    font-size: min(16px, 3.5vw);
  }
}

@media screen and (max-width: 500px) {
  .form_wrap .select_label label {
    padding: 8px;
  }
}

.form_wrap .select_label label, .form_wrap .select_label input[type='checkbox'] {
  cursor: pointer;
}

.form_wrap .select_label input:checked + label {
  background: #362515;
  color: white;
}

.form_wrap .select_label1 {
  max-width: 275px;
  width: calc(100% / 3 - 10px);
}

@media screen and (max-width: 767px) {
  .form_wrap .select_label1 {
    max-width: 333px;
    width: calc(100% / 2 - 8px) !important;
    margin-right: 15px;
  }
}

.form_wrap .select_label1:nth-child(3n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .form_wrap .select_label1:nth-child(3n) {
    margin-right: 15px;
  }
}

@media screen and (max-width: 767px) {
  .form_wrap .select_label1:nth-child(2n) {
    margin-right: 0px !important;
  }
}

.form_wrap .select_label2 {
  display: inline-block;
}

@media screen and (max-width: 767px) {
  .form_wrap .select_label2 {
    margin: 0px auto 15px auto;
    max-width: 400px;
    width: 100%;
  }
}

.form_wrap .select_label3 {
  max-width: 275px;
  width: calc(100% / 4 - 10px);
}

@media screen and (max-width: 767px) {
  .form_wrap .select_label3 {
    max-width: 333px;
    width: calc(100% / 2 - 8px) !important;
    margin-right: 15px;
  }
}

@media screen and (max-width: 767px) {
  .form_wrap .select_label3:nth-child(2n) {
    margin-right: 0px !important;
  }
}

.form_wrap .select_label3:last-child {
  margin-right: 0;
}

.form_wrap .select_label4 {
  max-width: 275px;
  width: calc(100% / 3 - 10px);
}

@media screen and (max-width: 767px) {
  .form_wrap .select_label4 {
    max-width: 333px;
    width: calc(100% / 2 - 8px) !important;
    margin-right: 15px;
  }
}

.form_wrap .select_label4:nth-child(3n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .form_wrap .select_label4:nth-child(3n) {
    margin-right: 15px;
  }
}

@media screen and (max-width: 767px) {
  .form_wrap .select_label4:nth-child(2n) {
    margin-right: 0px !important;
  }
}

.form_wrap .with_label_input {
  display: none;
}

.form_wrap .textbox {
  width: 100%;
  height: 100%;
  padding: 20px 10px;
  font-family: var(--gothic);
}

@media screen and (max-width: 767px) {
  .form_wrap .textbox {
    padding: 10px;
    font-size: 12px;
  }
}

.form_wrap .wish_select_group {
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .form_wrap .wish_apo_wrap {
    display: flex;
    flex-wrap: wrap;
  }
}

.form_wrap .wish_info {
  display: flex;
}

@media screen and (max-width: 767px) {
  .form_wrap .wish_info {
    width: 100%;
  }
}

.form_wrap .wish_info .required_label {
  text-align: center;
}

.form_wrap .wish_num {
  font-family: var(--gothic);
  margin-right: 10px;
  margin-top: 5px;
  margin-bottom: 5px;
}

.form_wrap .wish_day {
  border: 1px solid black;
  height: 45px;
  padding: 10px;
  cursor: pointer;
  font-family: var(--gothic);

}

@media screen and (max-width: 767px) {
  .form_wrap .wish_day {
    width: 55%;
    margin-right: 10px;
  }
}

.form_wrap .wish_day::placeholder {
  color: #c7c7c7;
  font-family: var(--gothic);
}

@media screen and (max-width: 767px) {
  .form_wrap .wish_day::placeholder {
    font-size: 12px;
  }
}

.form_wrap .wish_time_decoration {
  position: relative;
  display: inline;
}

@media screen and (max-width: 767px) {
  .form_wrap .wish_time_decoration {
    width: 40%;
  }
}

.form_wrap .wish_time_decoration:before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  content: "\f0d8";
  font-weight: 800;
  bottom: 4px;
  right: 18px;
  font-size: 14px;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .form_wrap .wish_time_decoration:before {
    right: 0;
    left: 110px;
    bottom: 18px;
  }
}

.form_wrap .wish_time_decoration:after {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  content: "\f0d7";
  font-weight: 800;
  top: 4px;
  right: 18px;
  font-size: 14px;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .form_wrap .wish_time_decoration:after {
    right: 0;
    left: 110px;
    top: 18px;
  }
}

.form_wrap .wish_time {
  background-color: #e4e4e4;
  color: #9c9c9c;
  font-size: 16px;
  border-radius: 5px;
  padding: 15px 35px 15px 10px;
  display: inline-block;
  font-family: var(--gothic);
  text-align: center;
  border: none;
  appearance: none;
  cursor: pointer;
}

.form_wrap .wish_time option {
  font-family: var(--gothic);
}

.form_wrap .input_one_liner {
  border: 1px solid black;
  height: 45px;
  padding: 10px;
  /*feedback追加*/
  width: 40%;
  font-family: var(--gothic);
}

@media screen and (max-width: 767px) {
  .form_wrap .input_one_liner {
    width: 100%;
  }
}

.form_wrap .input_one_liner::placeholder {
  font-family: var(--gothic);
}

@media screen and (max-width: 767px) {
  .form_wrap .input_one_liner::placeholder {
    font-size: 12px;
  }
}

.form_wrap .email {
  width: 100%;
}

.form_wrap .age {
  width: 80px;
  margin-right: 10px;
}

.form_wrap .age_parent {
  display: flex;
  align-items: flex-end;
  width: 100%;
  border: 0px;
}

.form_bottom_ainform {
  margin-bottom: 100px;
}

@media screen and (max-width: 1200px) {
  .form_bottom_ainform {
    margin-bottom: 50px;
  }
}

@media screen and (max-width: 767px) {
  .form_bottom_ainform {
    margin-bottom: 25px;
    text-align: left;
    text-indent: -1em;
    padding: 0 4vw 0 calc(4vw + 1em);
  }
}

/* 2021-09-06 ADD */
.form_container label.error {
  color: #f00;
  margin-top: 5px;
  display: block;
}
.form_container .banner {
  text-align: center;
  margin-bottom: 25px;
}
.form_container .banner img {
  margin: auto;
}
@media screen and (max-width: 767px) {
  .form_container .banner img {
    width: 100%;
  }
}
.form_container #GMap {
  margin: 15px 0;
}
.form_container figure {
  padding: 10px;
}
.form_container figure img.thanks {
  max-width: 100%;
  margin: 10px auto;
}
@media screen and (max-width: 767px) {
  .form_container .qr_code {
    display: none;
  }
}
.form_container .coounsel_form .btn04 {
  border-radius: 50px;
  max-width: 300px;
}
.form_container .coounsel_form .btn04 span {
  width: 300px;
  line-height: 50px;
  font-size: 24px;
  padding: 5px 0;
}
.form_container .coounsel_form .btn06 {
  border-radius: 50px;
  max-width: 300px;
}
.form_container .coounsel_form .btn06 span {
  width: 300px;
  line-height: 50px;
  font-size: 24px;
  padding: 5px 0;
}
.form_container .btns {
  display: flex;
  justify-content: space-between;
  margin: 40px;
}
@media screen and (max-width: 767px) {
  .form_container .coounsel_form .btn04 span {
    width: 35vw;
    font-size: 4vw;
    line-height: 6vw;
  }
  .form_container .coounsel_form .btn06 span {
    width: 35vw;
    font-size: 4vw;
    line-height: 6vw;
  }
  .form_container .btns {
    margin: 15px;
  }
}


/*カレンダーのデータピッカー 0915追加*/

.ui-datepicker-year,
.ui-datepicker-title,
.ui-datepicker-month,
.ui-datepicker-calendar th span,
.ui-widget-content .ui-state-default{
  font-family: var(--gothic);
}


@media screen and (min-width: 1100px) {
    .counsel_table .ten_year br{
        display: none;
    }
}