@charset "UTF-8";
/*------------------------------------------- 全体*/
.page_mv_contact {
  background-image: url(../img/page/img_bg_contact_sp.jpg);
}
.page_mv_for_office {
  background-image: url(../img/page/img_bg_for_office_sp.jpg);
}

@media screen and (min-width: 768px) {
  .page_mv_contact {
    background-image: url(../img/page/img_bg_contact_pc.jpg);
  }
  .page_mv_for_office {
    background-image: url(../img/page/img_bg_for_office_pc.jpg);
  }
}

/*------------------------------------------- 内容*/
.form_table {
  margin-bottom: 40px;
}

.form_table th {
  background-color: #f3f3f3;
  color: #1c1c1c;
}

.form_table th,
.form_table td {
  padding: 15px;
}

.input_double > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -10px -10px 0;
}

.input_double > ul > li {
  width: 100%;
  padding: 10px 10px 0;
}

.input_area > ul > li  {
  margin-bottom: 15px;
}

.input_area > ul > li:last-child  {
  margin-bottom: 0;
}

.must,
.any {
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1;
  background-color: #ff6825;
  color: #fff;
  padding: 6px 9px;
  margin-left: 20px;
  display: inline-block;
}

.any {
  color: #ff6825;
  border: 1px solid #ff6825;
  background-color: transparent;
}

.textarea,
.input {
  width: 100%;
  display: block;
  border: 1px solid #d9d9d9;
  padding: 8px 15px;
  -webkit-transition: background-color 0.6s, border-color 0.6s;
  -o-transition: background-color 0.6s, border-color 0.6s;
  transition: background-color 0.6s, border-color 0.6s;
  letter-spacing: 0.12em;
  font-size: 1.6rem;
}

.textarea:focus,
.input:focus {
  border-color: #ff6825;
}

.selectbox {
  position: relative;
}

.selectbox select {
  width: 100%;
  height: 45px;
  border: 1px solid #d9d9d9;
  padding: 0 15px;
  -webkit-transition: border-color 0.6s;
  -o-transition: border-color 0.6s;
  transition: border-color 0.6s;
  font-size: 1.6rem;
}

.selectbox select:focus {
  border-color: #ff6825;
}

.selectbox .selectbox_icon {
  position: absolute;
  top: 0;
  right: 0;
  width: 45px;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #ff6825;
  pointer-events: none;
}

.selectbox .selectbox_icon .icon_arrow2 {
  color: #fff;
  font-size: 1rem;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.form_privacy input {
  display: none;
}

.form_privacy input:checked + .check_item::before {
  background-color: #ff6825;
}

.form_privacy .check_item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.form_privacy .check_item::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 15px;
  background-color: #fff;
  border: 1px solid #ff6825;
  -webkit-transition: background-color 0.6s;
  -o-transition: background-color 0.6s;
  transition: background-color 0.6s;
}

.form_privacy .check_item::after {
  display: block;
  content: "";
  position: absolute;
  top: 10px;
  left: 8px;
  width: 14px;
  height: 8px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.error_txt {
  font-size: 1.2rem;
  line-height: 1.4;
  color: #ff6825;
  margin-top: 5px;
  padding-left: 2em;
  position: relative;
}

.error_txt::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 12px;
  background-image: url(../img/common/arert.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  top: 2px;
  left: 0;
}

.form_button_confirm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -15px -10px 0;
}

.form_button_confirm > form {
  width: 100%;
  padding: 15px 10px 0;
}

.contact_warning .textarea,
.contact_warning .input {
  background-color: #f3f3f3;
  border-color: transparent;
}

.contact_warning .textarea::-webkit-input-placeholder,
.contact_warning .input::-webkit-input-placeholder {
  color: #ff6825;
}

.contact_warning .textarea::-moz-placeholder,
.contact_warning .input::-moz-placeholder {
  color: #ff6825;
}

.contact_warning .textarea:-ms-input-placeholder,
.contact_warning .input:-ms-input-placeholder {
  color: #ff6825;
}

.contact_warning .textarea::-ms-input-placeholder,
.contact_warning .input::-ms-input-placeholder {
  color: #ff6825;
}

.contact_warning .textarea::placeholder,
.contact_warning .input::placeholder {
  color: #ff6825;
}

@media screen and (max-width: 767px) {
  .form_table th,
  .form_table td {
    border-left: 1px solid #d9d9d9;
    border-right: 1px solid #d9d9d9;
  }
}

@media screen and (min-width: 768px) {
  .form_table th {
    text-align: right;
  }
  .input_double > ul > li {
    width: 50%;
  }
  .form_button_confirm > form {
    width: 50%;
  }
}

@media screen and (min-width: 992px) {
  .title + p {
    margin-bottom: 50px;
  }
  .form_table {
    margin-bottom: 60px;
  }
  .form_table th {
    width: 300px;
  }
  .form_table th,
  .form_table td {
    padding: 30px;
  }
  .form_table td.form_privacy {
    padding-right: 15px;
  }
  .textarea,
  .input {
    padding: 8px 20px;
  }
  .textarea {
    height: 200px;
  }
  .selectbox select {
    height: 50px;
  }
  .selectbox .selectbox_icon {
    width: 50px;
  }
  .selectbox .selectbox_icon .icon_arrow2 {
    font-size: 1.5rem;
  }
}

@media screen and (min-width: 1200px) {
  .form_table th {
    width: 350px;
    padding-left: 0;
  }
}
