.recruit {
  max-width: 1200px;
  margin: 0 auto 50px;
}

.recruit.banner{
  margin-bottom: 0;
}

.oubo{
  display: flex;
  justify-content: center;
}

.oubo_text{
  text-align: left;
  margin: 0 2em 0 0;
  line-height: 2;
}

@media screen and (max-width: 768px) {
  .oubo{
    display: block;
    justify-content: center;
  }

  .oubo_text{
    margin: 0 1em 0;
  }
  .oubo_qr{
    width: 200px;
    margin: auto;
  }
  .oubo a{
    border-bottom: 2px dotted #b73359;
    display: inline-block;
    padding: 0 0 2px;
    line-height: 1;
  }
  .oubo_line_btn a{
    display: block;
    border-radius: 1em;
    width: 200px;
    margin: 0.5em auto 0;
    background: #0ed110;
    border: none;
    line-height: 2;
    padding: 0;
    color: #fff;
  }
}

.recruit h4{
  font-size: 1.6em;
  line-height: 1.4;
  margin: 1em 0;
  color: #b73359;
}

.recruit table{
  width: 800px;
  margin: auto;
}

.recruit table th,
.recruit table td{
  border: 1px solid #c8e5ff;
  background: rgba(255, 255, 255, 0.5);
  padding: 1em;
  text-align: left;
}
.recruit table.youkou th{
  width: 200px;
  text-align: center;
}
.recruit form table th{
  width: 250px;
  text-align: center;
}

.recruit .form_desc{
  padding: 0 0 1em;
}

.recruit span.must{
  color: #ff0000;
  margin: 0 0.2em;
}

.recruit form input[type="text"]{
  width: 100%;
}
.recruit form input.short{
  width: 100px;
}

.recruit form textarea{
  width: 100%;
  height: 100px;
}

.btn{
  padding: 1em 0 0;
}
.btn button{
  border-radius: 0.5em;
  padding: 1em 2em;
  color: #fff;
  background: #b73359;
  border:1px solid #b73359;
}

#thanks p{
  margin: 1em 0;
}

@media screen and (max-width: 768px) {
  .recruit table,
  .recruit table tr,
  .recruit table tbody,
  .recruit table th,
  .recruit table td{
    display: block;
    width: 100%;
    border-top: none;
  }
  .recruit table.youkou th,
  .recruit form table th{
    width: 100%;
  }
  .recruit table{
    width: auto;
    margin: 0 10px;
    border-top: 1px solid #c8e5ff;
  }
}

.faq{
}

.faq .faq_head{
  background: #ff7673;
  padding: 1em 0;
  color: #fff;
  font-size: 2em;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .faq .faq_head{
    font-size: 1em;
    flex-direction: column;
  }
}

.faq .faq_head > div{
  position: relative;
  z-index: 2;
}

.faq .faq_head:after,
.faq .faq_head:before{
  content: '';
  display: block;
  position: absolute;
  z-index: 1;
  background: #ffbdba;
  width: 5em;
  height: 5em;
  border-radius: 2.5em;
  top: 50%;
  margin-top: -2.5em;
}
.faq .faq_head:after{
  right: -4.5em;
}
.faq .faq_head:before{
  left: -4.5em;
}

.faq .faq_head .logo{
  width: 300px;
  margin-right: 50px;
}
@media screen and (max-width: 768px) {
  .faq .faq_head .logo{
    width: 50%;
    margin-right: 0;
    margin-bottom: 10px;
  }
}

.faq .faq_head h4{
  margin: 0.5em 0 0;
  color: #fff;
}

.faq .faq_body{
  background: #ffbdba;
  padding: 3em 5em;
}
@media screen and (max-width: 768px) {
  .faq .faq_body{
    background: #ffafab;
    padding: 1em 1em;
  }
}

.faq .faq_box{
  background: #fff;
  border-radius: 0.6em;
  border: 0.2em solid #ff7673;
  padding: 2em;
}
@media screen and (max-width: 768px) {
  .faq .faq_box{
    padding: 1em;
  }
}

.faq_qa .ques{
  background: #444;
  color: #fff;
  font-weight: bold;
  padding: 1em 2em;
  border-radius: 2em;
  text-align: left;
  position: relative;
  line-height: 1.5;
  margin: 1.5em 0;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .faq_qa .ques{
    padding: 0.5em 1.5em 0.5em 0.7em;
    border-radius: 1em;
  }
}

.faq_qa .ques:after{
  position: absolute;
  right: 0.6em;
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  content: '';
  background: url('../img/all/expand_more-24px.svg') no-repeat center center;
  background-size: 1em auto;
  font-size: 2em;
  z-index: 1;
  width: 1em;
}
@media screen and (max-width: 768px) {
  .faq_qa .ques:after{
    right: 0.1em;
    font-size: 1.5em;
  }
}

.faq_qa.active .ques:after{
  background: url('../img/all/expand_less-24px.svg') no-repeat center center;
  background-size: 1em auto;
}

.faq_qa .ans{
  background: #eee;
  color: #444;
  font-weight: bold;
  padding: 1em 2em;
  border-radius: 2em;
  text-align: left;
  position: relative;
  line-height: 1.5;
  margin: 1.5em 0;
  display: none;
}
.faq_qa.active .ans{
  display: block;
}
@media screen and (max-width: 768px) {
  .faq_qa .ans{
    padding: 0.5em 0.7em 0.5em 0.7em;
    border-radius: 1em;
  }
}
