/*コンタクト注意*/

.contact-atention {
  padding-top: 50px;
  margin-bottom: 80px;
}

.contact-atention > p {
  text-align: center;
  margin-bottom: 20px;
}

.contact-info {
  max-width: 850px; 
  margin: 0 auto;
  padding: 20px;
  background-color: #FFFFE6;
  border: 1px solid #707070;
}

.contact-info h2 {
  font-size: 1.6rem;
  margin-bottom: 15px;
}

.contact-info ul {
  padding-left: 20px;
}
.contact-info li {
  font-size: 1.6rem;
  list-style:disc;
}

.contact-info li a {
  color: #0008FF;
  text-decoration: underline;
}

/*コンタクトフォーム*/

.contact-form {
  max-width: 1080px;
  border: 1px solid #707070;
  margin: 0 auto 80px;
  box-shadow: 0px 0px 5px 1px rgba(112, 112, 112, 0.5);
  padding: 20px 35px 50px;
}

.contact-form h2 {
  text-align: center;
  font-size: 2.8rem;
  font-weight: bold;
  margin-bottom: 14px;
}

.contact-form > p {
  color: #FF0000;
  max-width: 780px;
  margin: 0 auto 10px;
}

.contact-form > p span {
  background-color: #FF0000;
  color: white;
  border-radius: 6px;
  padding: 2px 4px;
}

.contact-form-table {
  width: 100%;
  max-width: 800px;
  margin: 0 auto 50px;
  border-top: 2px solid #707070;
  
}

.contact-form-table dl {
  padding: 10px;
  display: flex;
  border-bottom: 1px solid #707070;
}

.contact-form-table dt{
  padding: 0 10px;
}

.contact-form-table input[type="text"],
.contact-form-table textarea {
  border: 1px solid #707070;
  border-radius: 3px;
  width: 100%;
}

.contact-form-table input[type="text"] {
  min-height: 35px;
}

.contact-form-table .age input[type="text"] {
  width: 60px;
  margin-right: 5px;
}

.contact-form-table textarea {
  min-height: 200px;
}

.contact-form-table dt,
.contact-form-table dd {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 15px 20px;
}

.contact-form-table dt {
  width: 250px;
  display: flex;
  padding: 15px 45px;
  justify-content: center;
  background-color: #F7F7F7;
  position: relative;
}

.contact-form-table dt::before {
  content: '必須';
  font-weight: normal;
  background-color: #FF0000;
  color: white;
  border-radius: 6px;
  padding: 2px 4px;
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translateY(-50%);
  display: none;
}

.contact-form-table dd {
  flex: 1;
}

.contact-form-table dd p:not(:last-of-type) {
  margin-right: 15px;
}

/*コンタクトチェック*/
.contact-check {
  padding: 30px 10px;
  text-align: center;
  max-width: 780px;
  margin: 0 auto 40px;
  background-color: #FFFFE6;
  border: 1px solid #707070
}

.contact-check p:first-of-type {
  margin-bottom:  15px;
  font-weight: bold;
}

.contact-check p a {
  color: #0008FF;
  text-decoration: underline;
}

.contact-form input[type="submit"] {
  width: 100%;
  max-width: 380px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 70px;
  border-radius: 35px;
  background-color: #FFCC99;
  color:#707070;
  border: 1px solid #707070;
  font-size: 2rem;
}


/*採用問い合わせ*/

.recruit-contact .contact-form-table dl:nth-of-type(1) dt::before,
.recruit-contact .contact-form-table dl:nth-of-type(2) dt::before,
.recruit-contact .contact-form-table dl:nth-of-type(3) dt::before,
.recruit-contact .contact-form-table dl:nth-of-type(6) dt::before {
  display: block;
}


/*お問い合わせ*/
.recruit-contact-link {
  max-width: 350px;
  width: 100%;
  background-color: #FFCC99;
  padding: 20px 10px;
  margin: 0 auto 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #707070;
}

.normal-contact .contact-form-table dl:nth-of-type(1) dt::before,
.normal-contact .contact-form-table dl:nth-of-type(5) dt::before,
.normal-contact .contact-form-table dl:nth-of-type(6) dt::before,
.normal-contact .contact-form-table dl:nth-of-type(7) dt::before{
  display: block;
}

.normal-contact .contact-form-table dl:nth-of-type(3) dt {
  width: 100%;
}

@media (max-width: 768px) {

  .contact-form {
    padding: 20px 10px 50px;
    width: calc(100% - 20px);
    box-shadow: none;
  }

  .contact-form-table dl {
    flex-wrap: wrap;
  }
  .contact-form-table dt,
  .contact-form-table dd {
    width: 100%;
    flex: inherit;
  }

  .contact-form input[type="submit"] {
    height: 60px;
    width: 90%;
  }

}