.contacts-banner {
  position: relative;
  height: 60rem;
  background-size: auto 100%;
  background-position: right;
  background-repeat: no-repeat;
  background-color: #242529;
}

.contacts-banner .outer-envelope {
  display: block;
  width: 8rem;
  position: absolute;
  right: 20%;
  top: 30%;
}

.contacts-banner .main-content {
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.contacts-banner .main-content > img {
  width: 8rem;
  display: block;
  position: relative;
  right: 30%;
  display: none;
}

.contacts-banner .main-content > div {
  color: #fff;
  text-align: left;
}

.contacts-banner .main-content > div .email-list {
  font-size: 2rem;
}

.contacts-banner .main-content > div .email-list li {
  margin-bottom: 1rem;
}

.contacts-banner .main-content > div .email-list li a {
  color: #fff;
}

@media (max-width: 1400px) {
  .contacts-banner {
    height: 50rem;
  }
}

@media (max-width: 1000px) {
  .contacts-banner {
    height: 40rem;
  }
  .contacts-banner .outer-envelope {
    width: 5rem;
    right: 10%;
  }
}

@media (max-width: 768px) {
  .contacts-banner {
    height: 35rem;
  }
  .contacts-banner .main-content > div .email-list li {
    margin-bottom: 0.5rem;
  }
  .contacts-banner .outer-envelope {
    width: 4rem;
    right: 10%;
  }
  .contacts-banner .main-content {
    position: relative;
  }
  .contacts-banner .main-content > div {
    margin: 0 auto;
  }
  .contacts-banner .main-content > img {
    position: absolute;
    width: 4rem;
    right: 10%;
    top: 30%;
  }
}

.about {
  margin-top: 11rem;
}

.about .main-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.about .main-content .summary {
  position: relative;
  text-align: justify;
}

@media (max-width: 768px) {
  .about {
    margin-top: 10rem;
  }
}

.recruiting {
  margin-top: 11rem;
  margin-bottom: 11rem;
}

.recruiting .main-content .email {
  padding: 0 2rem;
}

.recruiting .main-content .email a {
  color: #000;
}

.recruiting .main-content .tabs {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.recruiting .main-content .tabs .types {
  display: flex;
  margin-top: 6rem;
  justify-content: space-between;
  width: 66rem;
}

.recruiting .main-content .tabs .types > div {
  color: #0093ff;
  border: 0.1rem solid #0093ff;
  border-radius: 0.6rem;
  width: 14rem;
  height: 4.8rem;
  line-height: 4.8rem;
  box-sizing: border-box;
  cursor: pointer;
}

.recruiting .main-content .tabs .types > div.current {
  cursor: default;
  color: #fff;
  font-weight: 600;
  background-color: #0093ff;
  border: 0.1rem solid #0093ff;
}

.recruiting .main-content .tabs .contents {
  margin-top: 6rem;
  width: 100%;
  box-sizing: border-box;
}
.recruiting .main-content .tabs .contents .position-list {
  display: none;
}
.recruiting .main-content .tabs .contents .position-list.current {
  display: block;
}

.recruiting .main-content .tabs .contents .position-list > li {
  position: relative;
  text-align: left;
  margin-top: 6rem;
}

.recruiting .main-content .tabs .contents .position-list > li:first-child {
  margin-top: 0;
}

.recruiting .main-content .tabs .contents .title {
  top: 0;
  left: 0;
}

.recruiting .main-content .tabs .contents .location {
  position: absolute;
  top: 0;
  right: 0;
}

.recruiting .main-content .tabs .contents .location h4 {
  display: inline-block;
}

.recruiting .main-content .tabs .contents .responsibilities,
.recruiting .main-content .tabs .contents .qualifications {
  line-height: 1.6em;
}

.recruiting .main-content .tabs .contents .responsibilities li,
.recruiting .main-content .tabs .contents .qualifications li {
  text-align: justify;
}

@media (max-width: 1000px) {
  .recruiting .main-content .tabs .types > div {
    width: 12rem;
    height: 4rem;
    line-height: 4rem;
  }
}

@media (max-width: 768px) {
  .recruiting {
    margin-top: 10rem;
  }
  .recruiting .main-content .tabs .types {
    flex-wrap: wrap;
    width: 26rem;
  }
  .recruiting .main-content .tabs .types > div {
    margin-bottom: 2rem;
  }
  .recruiting .main-content .tabs .contents .position-list > li {
    display: flex;
    flex-direction: column;
    position: static;
  }
  .recruiting .main-content .tabs .contents .position-list > li .title {
    position: static;
  }
  .recruiting .main-content .tabs .contents .position-list > li .location {
    position: static;
  }
  .recruiting .main-content .tabs .contents .position-list > li .location {
    position: static;
  }
  .recruiting .main-content .tabs .contents .position-list > li .responsibilities,
  .recruiting .main-content .tabs .contents .position-list > li .qualifications {
    position: static;
  }
}
