@charset "utf-8";

img {width: 100%}

.red {
  color: #f84448;
 }
 
 
/*-- recruit / scroll icon / sns --*/

.recruit {
  position: relative;
  margin: 0 auto;
  display: block;
  font-size: 0;
}

.recruit__img {
  margin: 0 auto;
  width: calc(100% - 140px);
}

.recruit__img > img {
  width: 100%;
  line-height: 1;
} 

.recruit__img > div {
  display: flex;
}

.recruit__img > div img {
  width: 33.3333%;
}

.recruit__copy {
  position: absolute;
  top: 50%;
  right: 7%;
  color: #fff;
  transform: translateY(-50%);
  line-height: 1.7;
}

.recruit__copy--sp {display: none}

.recruit__copy > h1 {
  font-size: 34px;
  font-size: 3.4rem;
  line-height: 1;
}

.recruit__copy > div p {
  margin-top: 30px;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
}

.recruit > h2 {
  position: absolute;
  top: 12px;
  left: 84px;
  color: #fff;
  font-size: 22px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
}

.scroll-icon {
  position: absolute;
  bottom: 0;
  left: 29px;
}

.recruit__sub-img {
  margin: 0 auto;
  width: calc(100% - 140px);
  display: flex;
  align-items: flex-start;
}

.recruit__sub-img > img {
  width: 33.3333%;
  flex-shrink: 0;
}

.sns {
  margin: 20px auto 0;
  width: calc(100% - 140px);
}

.sns li {
  display: inline;
}

.sns li a {
  margin: 0 5px;
  padding: 0 6px;
}

.sns li a img {
  width: 24px;
  height: 24px;
}

.sns li:last-of-type a img {
  width: 57px;
}


@media screen and (max-width: 960px) {

  .recruit__copy {
   right: 10%;
   line-height: 1.6;
  }

  .recruit__copy > h1 {
    font-size: 27px;
    font-size: 2.7rem;
  }

  .recruit__copy > div p {
    margin-top: 14px;
    font-size: 15px;
    font-size: 1.5rem;
  }
  
  .recruit > h2 {
    top: 12px;
    left: auto;
    right: 82px;
  }

}

@media screen and (max-width: 768px) {
  .scroll-icon {display: none}
  .sns {display: none}

  .recruit {
    padding-top: 60px;
  }
  
  .recruit__copy {
    top: 56%;
    right: 17%;
  }
  
  .recruit > h2 {
    top: 72px;
    right: 12px;
    font-size: 18px;
    font-weight: 600;
  }
    
  .recruit__img {width: 100%}
  .recruit__sub-img {
    width: 100%;
  }
}

@media screen and (max-width: 750px) {

  .recruit__copy {
    margin: 0 auto;
    width: 86%;
    top: 22%;
    right: 50%;
    transform: translate(50%, 0%);
    text-shadow: none;
  }

  .recruit__copy > div p {
    display: none;
  }

  .recruit__copy--sp {
    display: block;
    margin: 18px auto;
    width: 82%;
    font-weight: 700;
    text-align: justify;
  }
  
  .recruit__copy--sp > p {
    font-size: 15px;
  }
    

}

/*-- /sns --*/


/*-- app-require --*/

.app-require {
  margin: 80px auto 0;
  max-width: 740px;
}

.app-require > h2 {
  font-size: 26px;
  font-size: 2.6rem;
  text-align: center;
}

.app-require > h2 span {
  margin-left: 10px;
  font-size: 16px;
  font-size: 1.6rem;
}

/*-- /app-require --*/


/*-- recruitment table --*/

.recruitment-table {
  margin: 30px auto 0;
  max-width: 740px;
  border-collapse: collapse;
  border-spacing: 0;
  border: none;
  line-height: 1.8;
}

.recruitment-table tr {
}

.recruitment-table th,
.recruitment-table td {
  font-size: 16px;
  vertical-align: top;
  border-top: 1px solid #999;
  border-bottom: 1px solid #999;
  letter-spacing: 1px;
}

.recruitment-table th {
  padding: 1rem;
  width: 14rem;
  text-align: left;
}

.item-head {text-align: center!important;font-size: 18px!important;}

.recruitment-table td {
  padding: 1rem;
  width: 81.0810%;
  text-align: justify;
}

.recruitment-table td > ul li {
  font-size: 16px;
  vertical-align: middle;
}

@media screen and (max-width: 700px) {

  .app-require {
    margin: 60px auto 0;
    width: 90%;
  }

  .app-require > h2 {
    font-size: 22px;
 }

  .recruitment-table {
    width: 100%;
  }

  .recruitment-table th,
  .recruitment-table td {
    font-size: 14px;
  }
  
  .recruitment-table th {width: 24%;}
  .recruitment-table td {width: 75%;}
  

.item-head {font-size: 16px!important;}


  .recruitment-table td {
    text-align: justify;
  }

  .recruitment-table td > ul li {
    font-size: 14px;
  }

}


/*-- /recruitment table --*/


/*-- form --*/
#form-wrap {
  margin: 100px auto 80px;
  width: 740px;
}

.form-wrap__head {
  margin: 0 auto 50px;
 }

.form-wrap__head > h1 {
  margin-bottom: 10px;
  font-size: 26px;
  line-height: 1.7;
  display: block;
  text-align: center;
}

.form-wrap__head--btn {
  margin: 5px 0px 0px 16px;
  width: 164px;
  font-size: 14px;
  font-weight: 400;
  display: inline-block;
  vertical-align: text-top;
}

.form-wrap__head--btn a {
  margin-top: -5px;
  padding: 3px 0px 1px;
  color: #023230;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  text-decoration: none;
  background: rgba(64,64,62,0.0);
  border: 1px solid rgba(44,44,42,1.0);
  border-radius: 4px;
  display: block;
  transition: background 0.6s,color 0.6s;
}

.form-wrap__head--btn a:hover {
  color: #fff;
  background: rgba(64,64,62,1.0);
}

.form-wrap__head--btn a:active {
  background: rgba(44,44,42,1.0);
}

.form-wrap__head > p,
.form-wrap__head > p span {
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
}

table.form-table{
  margin: 0 auto;
  width: 100%;
  line-height: 2;
}

table.form-table td,table.form-table th{
  padding: 12px 0 0;
  font-size: 14px;
  font-size: 1.4rem;
}

table.form-table th {
  padding: 12px 10px 12px 0;
  width: 30%;/* 222px / 740px */
  max-width: 222px;
  font-weight: 700;
  vertical-align: top;
  text-align: left
}

.required-Icon {
  margin: -1px 0px 0px 8px;
  padding: 3px 7px;
  height: 17px;
  color: #fff;
  font-size: 10px;
  line-height: 1;
  background: rgba(44,44,42,1.0);
  vertical-align: text-top;
  display: inline-block;
}

input[type="text"],
.zip input[type="text"],
.contact-address input[type="text"]{
  padding: 10px 5px;
  width: 200px;
  height: 20px;
  border: 1px solid #999;
  border-radius: 3px;
}

.zip input[type="text"]{
  width: 150px;
}
 
.contact-address input[type="text"]{
  width: 300px;
}

.radio-wrap {
  padding: 10px 0 6px !important;
  line-height: 2;
}
 
.radio-wrap__btn {
  display: inline-block;
  margin-right: 5px;
  font-size: 14px;
}

.radio-wrap__btn > input[type="radio"]{
  margin: 0 5px 0 0;
  vertical-align: text-top;
}

textarea {
  margin-top: 4px;
  padding: 2px 5px;
  width: 100%;
  height: 7em;
  border: 1px solid #999;
  border-radius: 3px;
  resize: vertical;
}


/* alert message */

#form-wrap > h3,
#form-wrap > div > h3 {
  margin-bottom: 18px;
  font-size: 18px;
  line-height: 1.7;
  text-align: center;
}

.form-wrap__confirm,
.error_messe {
  margin-bottom: 8px;
  font-size: 14px;
  text-align: center;
}

/* /alert message */


.form-wrap__footer,
.form-wrap__footer--em {
  margin: 0 auto;
  width: 337px;
  -js-display: flex;
  display: flex;
  justify-content: space-between;
}

.form-wrap__footer--em {
  display: block;
}

.form-wrap__footer input[type="submit"],
.form-wrap__footer input[type="reset"],
.form-wrap__footer input[type="button"],
.form-wrap__footer--em input[type="button"]{
  margin: 30px 0 0;
  padding: 5px 0;
  width: 49%;
  max-width: 166px;
  font-size: 12px;
  background: rgba(64,64,62,0.0);
  border: 1px solid rgba(64,64,62,0.8);
  border-radius: 3px;
  cursor: pointer;
  transition: background 0.6s,color 0.6s;
}

.form-wrap__footer input[type="submit"]:hover,
.form-wrap__footer input[type="reset"]:hover,
.form-wrap__footer input[type="button"]:hover,
.form-wrap__footer--em input[type="button"]:hover{
  color: #fff;
  background: rgba(64,64,62,0.7);
}

.form-wrap__footer input[type="submit"]:active,
.form-wrap__footer input[type="reset"]:active,
.form-wrap__footer input[type="button"]:active,
.form-wrap__footer--em input[type="button"]:active{
  padding: 5px 25px 3px;
  color: #fff;
  border: none;
  border-top: 2px solid rgba(64,64,62,1.0);
  background: rgba(64,64,62,0.80);
}

@media screen and (max-width: 740px) {

  #form-wrap {
    width: 90%;
    margin: 70px auto 60px;
  }
  
  .form-wrap__head {
    margin-bottom: 0;
  }
  
  .form-wrap__head > p {
    text-align: justify;
  }

  .form-wrap__head > p br {
    display: none;
  }
  
  .thanx > h1 {
    font-size: 20px;
  }
  
  .thanx > h1 span br {
    display: inline;
  }
    
  table.form-table th,
  table.form-table td {
    display: block;
    width: 100%;
    max-width: 100%;
  }
  
  table.form-table th {
    padding: 18px 0 3px;
  }
  
  table.form-table th br {
    display: none;
  }
  
  table.form-table td,
  .radio-wrap {
    padding: 0 !important;
  }
  
  table.form-table td input[type="text"] {
    display: block;
    width: 100%;
    height: 30px;
  }

}

footer {
  border-top: 1px solid #dcdcdc;
}


