@charset "UTF-8";
/*メインカラー*/
/*サブカラー*/
/*タブレット*/
/*スマホ*/
* { /*全部*/
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  letter-spacing: 0.15em;
}

html {
  width: 100%;
  height: auto;
  scroll-behavior: smooth;
  font-size: 0.5208333333vw;
  letter-spacing: 0.15em;
  line-height: 2;
}
@media screen and (max-width: 1000px) {
  html {
    font-size: 0.5208333333vw;
  }
}
@media screen and (max-width: 599px) {
  html {
    font-size: 2.6666666667vw;
  }
}

body {
  width: 100%;
  height: auto;
  font-family: "Zen Kaku Gothic New", sans-serif;
  letter-spacing: 0.15em;
}

a, button {
  text-decoration: none;
  cursor: pointer;
}

img {
  width: 100%;
}

.font-area {
  font-family: "area-normal", sans-serif;
}

.js-scroll-animation {
  opacity: 0;
  transition: 1s translate ease-in-out, opacity 1s ease-in-out;
  translate: 0 10rem;
  visibility: hidden;
}
.js-scroll-animation.is-active {
  opacity: 1;
  visibility: visible;
  translate: 0 0;
}

.js-scroll-h2-animation small {
  position: relative;
  overflow: hidden;
  width: -moz-fit-content;
  width: fit-content;
  opacity: 0;
  display: block;
}
.js-scroll-h2-animation big {
  position: relative;
  overflow: hidden;
  width: -moz-fit-content;
  width: fit-content;
  opacity: 0;
  display: block;
}
.js-scroll-h2-animation small::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background-color: #080808;
  transition: left 1s ease;
}
.js-scroll-h2-animation big::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background-color: #080808;
  transition: left 1s ease;
}
.js-scroll-h2-animation.is-active small {
  opacity: 1;
}
.js-scroll-h2-animation.is-active small::before {
  left: 100%;
}
.js-scroll-h2-animation.is-active big {
  opacity: 1;
}
.js-scroll-h2-animation.is-active big::before {
  left: 100%;
}

@keyframes kv-animation {
  0% {
    opacity: 0;
    translate: 0 10rem;
  }
  100% {
    opacity: 1;
    translate: 0 0;
  }
}
.kv-animation {
  animation: kv-animation forwards 1s ease-in-out;
}

.main .kv {
  width: 100%;
  height: auto;
  position: relative;
  overflow: hidden;
}
.main .kv h1 {
  font-size: 6rem;
  font-style: italic;
  text-align: center;
  padding: 26rem 0 4.5rem 0;
  font-weight: 900;
  color: #080808;
  z-index: 10;
}
@media screen and (max-width: 599px) {
  .main .kv h1 {
    font-size: 5.4rem;
    padding: 0;
    color: #fff;
    opacity: 0.6;
    position: absolute;
    bottom: 12.7rem;
    left: 50%;
    transform: translateX(-50%);
  }
}
.main .kv strong {
  font-size: 5rem;
  text-align: center;
  display: block;
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #080808;
  z-index: 10;
}
@media screen and (max-width: 599px) {
  .main .kv strong {
    font-size: 2.5rem;
    color: #fff;
    letter-spacing: 0.08em;
    line-height: 1.6;
    position: absolute;
    bottom: 5.3rem;
  }
}
.main .kv__slick {
  max-width: 153.6rem;
  width: 100%;
  height: 64.6rem;
  border-radius: 10rem;
  overflow: hidden;
  margin: 5.5rem auto 0;
}
@media screen and (max-width: 599px) {
  .main .kv__slick {
    max-width: 100%;
    height: 44.9rem;
    border-radius: 0;
    margin: 0;
  }
}
.main .kv__slick img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.main .kv .dots-wrap {
  display: flex;
  margin: 0;
  position: absolute;
  left: 50%;
  transform: translate(-50%);
  bottom: 1.5rem;
}
.main .kv .dots-wrap li {
  width: 1rem;
  height: 1rem;
  background-color: transparent;
  border: 0.3rem solid #fff;
  border-radius: 50%;
  cursor: pointer;
  margin: 0 0.3rem;
}
.main .kv .dots-wrap li.slick-active, .main .kv .dots-wrap li:hover {
  opacity: 1;
  border: solid 0.3rem #13AE68;
}
.main .kv .dots-wrap li:last-child {
  margin-bottom: 0;
}
.main .kv .dots-wrap li button {
  display: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
  border: none;
  background-color: transparent;
}
@keyframes shaking1 {
  0%, 100% {
    top: 24.9rem;
    left: calc(50% + 66rem);
    transform: rotateZ(5deg);
  }
  50% {
    top: 23.9rem;
    left: calc(50% + 65rem);
    transform: rotateZ(0deg);
  }
}
@keyframes shaking1-sp {
  0%, 100% {
    top: -6.2rem;
    left: calc(50% + 11.4rem);
    transform: rotateZ(5deg);
  }
  50% {
    top: -5.2rem;
    left: calc(50% + 11.6rem);
    transform: rotateZ(0deg);
  }
}
.main .kv__object1 {
  width: 25.84rem;
  position: absolute;
  top: 24.9rem;
  left: calc(50% + 65rem);
  animation: shaking1 4s ease-in-out infinite alternate;
}
@media screen and (max-width: 599px) {
  .main .kv__object1 {
    width: 12.92rem;
    top: -6.2rem;
    left: calc(50% + 11.4rem);
    animation: shaking1-sp 4s ease-in-out infinite alternate;
  }
}
@keyframes shaking2 {
  0%, 100% {
    top: 34.35rem;
    right: calc(50% + 66.5rem);
  }
  50% {
    top: 37.35rem;
    right: calc(50% + 66.5rem);
    transform: rotateZ(-5deg);
  }
}
@keyframes shaking2-sp {
  0%, 100% {
    top: -1.7rem;
    right: calc(50% + 14.3rem);
  }
  50% {
    top: -0.7rem;
    right: calc(50% + 14.3rem);
    transform: rotateZ(-5deg);
  }
}
.main .kv__object2 {
  width: 26.061rem;
  position: absolute;
  top: 37.35rem;
  right: calc(50% + 66.5rem);
  animation: shaking2 7s ease-in-out infinite alternate;
}
@media screen and (max-width: 599px) {
  .main .kv__object2 {
    width: 10.655rem;
    top: -1.7rem;
    right: calc(50% + 14.3rem);
    animation: shaking2-sp 7s ease-in-out infinite alternate;
  }
}
@keyframes shaking3 {
  0%, 100% {
    bottom: 4.27rem;
    right: calc(50% + 72.44rem);
  }
  50% {
    bottom: 2.27rem;
    right: calc(50% + 72.44rem);
  }
}
@keyframes shaking3-sp {
  0%, 100% {
    bottom: 1.25rem;
    right: calc(50% + 14.3rem);
  }
  50% {
    bottom: 2.25rem;
    right: calc(50% + 14.3rem);
  }
}
.main .kv__object3 {
  width: 8.726rem;
  position: absolute;
  bottom: 4.27rem;
  right: calc(50% + 72.44rem);
  animation: shaking3 8s ease-in-out infinite alternate;
}
@media screen and (max-width: 599px) {
  .main .kv__object3 {
    width: 3.179rem;
    bottom: 1.25rem;
    right: calc(50% + 14.3rem);
    animation: shaking3-sp 8s ease-in-out infinite alternate;
  }
}
@keyframes shaking4 {
  0%, 100% {
    right: calc(50% + 84.14rem);
    bottom: 0.72rem;
  }
  50% {
    right: calc(50% + 84.14rem);
    bottom: 2.72rem;
  }
}
@keyframes shaking4-sp {
  0%, 100% {
    right: calc(50% + 18.1rem);
    bottom: 1rem;
  }
  50% {
    right: calc(50% + 18.1rem);
    bottom: 0.36rem;
  }
}
.main .kv__object4 {
  width: 6.726rem;
  position: absolute;
  right: calc(50% + 84.14rem);
  bottom: 2.72rem;
  animation: shaking4 4s ease-in-out infinite alternate;
}
@media screen and (max-width: 599px) {
  .main .kv__object4 {
    width: 2.479rem;
    right: calc(50% + 18.1rem);
    bottom: 0.36rem;
    animation: shaking4-sp 4s ease-in-out infinite alternate;
  }
}
@keyframes shaking5 {
  0%, 100% {
    left: calc(50% + 69.6rem);
    bottom: 0;
  }
  50% {
    left: calc(50% + 69.6rem);
    bottom: -2rem;
    transform: rotateZ(-5deg);
  }
}
@keyframes shaking5-sp {
  0%, 100% {
    left: calc(50% + 12.5rem);
    bottom: 1rem;
  }
  50% {
    left: calc(50% + 12.5rem);
    bottom: 0rem;
    transform: rotateZ(-5deg);
  }
}
.main .kv__object5 {
  width: 25.57rem;
  position: absolute;
  left: calc(50% + 69.6rem);
  bottom: 0;
  animation: shaking5 4s ease infinite alternate;
}
@media screen and (max-width: 599px) {
  .main .kv__object5 {
    width: 5.548rem;
    left: calc(50% + 12.5rem);
    animation: shaking5-sp 4s ease infinite alternate;
  }
}
@keyframes shaking6 {
  0%, 100% {
    left: calc(50% + 82.38rem);
    bottom: 10.66rem;
  }
  50% {
    left: calc(50% + 82.38rem);
    bottom: 12.66rem;
    transform: rotateZ(-5deg);
  }
}
.main .kv__object6 {
  width: 10.681rem;
  position: absolute;
  left: calc(50% + 82.38rem);
  bottom: 10.66rem;
  animation: shaking6 4s ease infinite alternate;
}
@media screen and (max-width: 599px) {
  .main .kv__object6 {
    display: none;
  }
}
.main .message {
  width: 100%;
  margin: 10.5rem 0 13.4rem 0;
}
@media screen and (max-width: 599px) {
  .main .message {
    width: 33rem;
    margin: 2.3rem auto 0;
  }
}
.main .message__container {
  width: 100%;
  max-width: 170rem;
  margin: auto;
  display: flex;
}
.main .message__container .messageIcon {
  width: 4rem;
  margin: 0 10rem 0 7rem;
}
@media screen and (max-width: 599px) {
  .main .message__container .messageIcon {
    margin: 0;
  }
}
.main .message__container--content h2 {
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #080808;
}
@media screen and (max-width: 599px) {
  .main .message__container--content h2 {
    font-size: 1.2rem;
    margin: 0 0 0 0.9rem;
  }
}
.main .message__container--content p {
  max-width: 110rem;
  font-size: 2.5rem;
  font-weight: 500;
  color: #383635;
  line-height: 2.4;
  padding: 4rem 0 0 0;
}
@media screen and (max-width: 599px) {
  .main .message__container--content p {
    padding: 1.89rem 0 3.4rem 0.9rem;
    font-size: 1rem;
    line-height: 2;
  }
}
.main .cultureBook {
  width: 100%;
  height: 80.6rem;
  position: relative;
}
@media screen and (max-width: 599px) {
  .main .cultureBook {
    height: 30.1rem;
  }
}
.main .cultureBook img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  filter: brightness(41%);
}
.main .cultureBook__container {
  width: 60%;
  height: auto;
  /*width: 95.7rem;
  height: 63.6rem;*/
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}
@media screen and (max-width: 599px) {
  .main .cultureBook__container {
    width: 100%;
    height: 30.1rem;
  }
}
.main .cultureBook__container--content {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 599px) {
  .main .cultureBook__container--content {
    width: 33rem;
    height: 17.8rem;
    margin: auto;
  }
}
.main .employmentInformation {
  width: 100%;
  max-width: 159.1rem;
  margin: auto;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation {
    max-width: 33rem;
  }
}
.main .employmentInformation h2 {
  color: #080808;
  line-height: 1.76;
  margin: 9.5rem 0 0 0;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation h2 {
    margin: 2.7rem 0 0 0;
  }
}
.main .employmentInformation h2 small {
  font-weight: 400;
  font-size: 1.6rem;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation h2 small {
    font-size: 1rem;
  }
}
.main .employmentInformation h2 big {
  font-size: 5rem;
  font-weight: 900;
  font-style: italic;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation h2 big {
    font-size: 2rem;
  }
}
.main .employmentInformation__container--buttons {
  width: 100%;
  height: 15rem;
  display: flex;
  border-bottom: #D5D5D5 solid 0.1rem;
  padding: 7.8rem 0 2.4rem 0;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container--buttons {
    height: -moz-fit-content;
    height: fit-content;
    padding: 2rem 0 0 0;
  }
}
.main .employmentInformation__container--buttons button {
  height: 100%;
  display: flex;
  align-items: center;
  font-size: 2.5rem;
  margin-left: 5.3rem;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container--buttons button {
    height: -moz-fit-content;
    height: fit-content;
    font-size: 1rem;
    margin: 0 2.5rem 0 0;
    padding: 0 0 1.06rem 0;
  }
}
.main .employmentInformation__container--buttons button .icon {
  width: 3rem;
  height: 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  margin: 0 1.7rem 0 0;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container--buttons button .icon {
    width: 1.6rem;
    height: 1.6rem;
    margin: 0 1rem 0 0;
  }
}
.main .employmentInformation__container--buttons button .icon__img {
  width: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  transform: rotateZ(90deg);
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container--buttons button .icon__img {
    width: 0.92rem;
  }
}
.main .employmentInformation__container--buttons .onClickButton {
  color: #13AE68;
}
.main .employmentInformation__container--buttons .onClickButton .icon {
  background-color: #13AE68;
  border: #fff solid 0.1rem;
}
.main .employmentInformation__container--buttons .onClickButton .icon img {
  filter: brightness(0) saturate(100%) invert(100%) sepia(97%) saturate(0%) hue-rotate(56deg) brightness(103%) contrast(105%);
}
.main .employmentInformation__container--buttons .offClickButton {
  color: #707070;
}
.main .employmentInformation__container--buttons .offClickButton .icon {
  background-color: #fff;
  border: #707070 solid 0.1rem;
}
.main .employmentInformation__container--buttons .offClickButton .icon img {
  filter: brightness(0) saturate(100%) invert(44%) sepia(0%) saturate(1790%) hue-rotate(224deg) brightness(96%) contrast(74%);
}
.main .employmentInformation__container h3 {
  font-weight: 700;
  font-size: 3.5rem;
  letter-spacing: 0.2em;
  padding: 7rem 0 1rem 5.3rem;
  color: #13AE68;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container h3 {
    font-size: 1.2rem;
    padding: 2.7rem 0 2rem;
  }
}
.main .employmentInformation__container--content {
  width: 100%;
}
.main .employmentInformation__container--content.newCareerBody {
  display: none;
}
.main .employmentInformation__container--content.newCareerBody.active {
  display: inline-block;
}
.main .employmentInformation__container--content.midCareerBody {
  display: none;
}
.main .employmentInformation__container--content.midCareerBody.active {
  display: inline-block;
}
.main .employmentInformation__container--content--accordion {
  display: flex;
  justify-content: space-between;
  flex-flow: column;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.16);
  border-radius: 3rem;
  margin: 4.2rem 0 0;
  cursor: pointer;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container--content--accordion {
    margin: 0 0 1.44rem 0;
    border-radius: 0.5rem;
  }
}
.main .employmentInformation__container--content--accordion .accordionHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.main .employmentInformation__container--content--accordion .accordionBody {
  width: 100%;
  display: flex;
  flex-flow: column;
  align-items: center;
  margin: 3.4rem auto 0;
  transition: all 0.3s ease;
}
.main .employmentInformation__container--content--accordion .accordionBody__inner {
  width: 143.8rem;
  background-color: #F8FAF9;
  border-radius: 2.7rem;
  display: inline-block;
  padding: 0 5.2rem 0 4.4rem;
  margin: 1.7rem 0 0 0;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container--content--accordion .accordionBody__inner {
    width: 30rem;
    border-radius: 0.5rem;
    margin: 0 auto;
    padding: 0 1.15rem;
  }
}
.main .employmentInformation__container--content--accordion .accordionBody__inner--item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 2.7rem;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container--content--accordion .accordionBody__inner--item {
    flex-flow: column;
    align-items: flex-start;
    margin-top: 2.1rem;
  }
}
.main .employmentInformation__container--content--accordion .accordionBody__inner--item:last-child {
  padding-bottom: 7.1rem;
}
.main .employmentInformation__container--content--accordion .accordionBody__inner--item h5 {
  font-size: 2.5rem;
  color: #383635;
  margin: 0 0 0 0;
  padding: 1.9rem 0;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container--content--accordion .accordionBody__inner--item h5 {
    font-size: 1rem;
    padding: 0 0 0.6rem 0;
  }
}
.main .employmentInformation__container--content--accordion .accordionBody__inner--item h5 .h5Icon {
  font-size: 1.5rem;
}
.main .employmentInformation__container--content--accordion .accordionBody__inner--item p {
  width: 90rem;
  font-size: 2rem;
  color: #383635;
  padding: 1.9rem 0;
  border-bottom: #D5D5D5 0.1rem solid;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container--content--accordion .accordionBody__inner--item p {
    width: 100%;
    font-size: 0.8rem;
    padding: 0.6rem 0 0 0;
    border-top: #D5D5D5 0.1rem solid;
    border-bottom: none;
    line-height: 1.875;
  }
}
.main .employmentInformation__container--content--accordion .accordionBody a {
  width: 33.7rem;
  font-size: 2.2rem;
  font-weight: bold;
  margin: 5.2rem auto 0;
  padding: 3.2rem;
  color: #fff;
  background-color: #080808;
  display: flex;
  align-items: center;
  justify-content: center;
  border: #080808 0.2rem solid;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container--content--accordion .accordionBody a {
    width: 27.7rem;
    font-size: 1rem;
    padding: 1.8rem 1.8rem;
    margin: 0;
  }
}
.main .employmentInformation__container--content--accordion .accordionBody a::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  right: 100%;
  top: 0;
  transition: right 0.3s ease;
}
.main .employmentInformation__container--content--accordion .accordionBody a .text {
  position: absolute;
}
.main .employmentInformation__container--content--accordion .accordionBody a:hover {
  color: #080808;
}
.main .employmentInformation__container--content--accordion .accordionBody a:hover::before {
  right: 0;
}
.main .employmentInformation__container--content--accordion h4 {
  display: inline-block;
  font-size: 3rem;
  color: #080808;
  font-weight: bold;
  padding: 4.55rem 0 4.55rem 6.7rem;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container--content--accordion h4 {
    font-size: 1.2rem;
    padding: 1.7rem 0 1.7rem 0.68rem;
  }
}
.main .employmentInformation__container--content--accordion .icon {
  width: 2.925rem;
  height: 2.925rem;
  display: flex;
  align-items: center;
  margin: 0 5.8rem 0 0;
  transition: all 0.3s ease;
}
@media screen and (max-width: 599px) {
  .main .employmentInformation__container--content--accordion .icon {
    width: 1.032rem;
    height: 1.032rem;
    margin: 0 1.57rem 0 0;
  }
}
.main .employmentInformation__container--content--accordion .icon img {
  height: 100%;
}
.main .memberInterviews {
  margin: auto;
  padding: 10.8rem 0 19.5rem 0;
}
@media screen and (max-width: 599px) {
  .main .memberInterviews {
    padding: 4.2rem 0 5.5rem 0;
  }
}
.main .memberInterviews h2 {
  width: 100%;
  max-width: 159.1rem;
  color: #080808;
  line-height: 1.76;
  padding: 9.5rem auto 0;
  margin: auto;
}
@media screen and (max-width: 599px) {
  .main .memberInterviews h2 {
    max-width: 33rem;
    padding: 0 0 2.5rem 0;
  }
}
.main .memberInterviews h2 small {
  font-weight: 400;
  font-size: 1.6rem;
  display: block;
}
@media screen and (max-width: 599px) {
  .main .memberInterviews h2 small {
    font-size: 1rem;
  }
}
.main .memberInterviews h2 big {
  font-size: 5rem;
  font-weight: 900;
  font-style: italic;
  display: block;
}
@media screen and (max-width: 599px) {
  .main .memberInterviews h2 big {
    font-size: 2rem;
  }
}
.main .memberInterviews__container {
  width: 100%;
  display: flex;
  justify-content: center;
  overflow: hidden;
  padding: 8.8rem 0 0;
}
@media screen and (max-width: 599px) {
  .main .memberInterviews__container {
    display: none;
  }
}
.main .memberInterviews__container--slick {
  width: 102.29166667%;
  height: 100%;
}
.main .memberInterviews__container--slick--inner {
  width: 100%;
  height: auto;
}
.main .memberInterviews__container--slick--inner--flex {
  width: 100%;
  height: 49.8rem;
  display: flex;
  align-items: center;
  padding: 0 3.35rem;
}
.main .memberInterviews__container--slick--inner--flex--img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 3rem;
}
.main .memberInterviews__container--sp {
  width: 100%;
  display: none;
  justify-content: center;
  overflow: hidden;
  padding: 8.8rem 0 0;
}
@media screen and (max-width: 599px) {
  .main .memberInterviews__container--sp {
    padding: 0;
    display: flex;
  }
}
.main .memberInterviews__container--sp--slick {
  width: 100%;
  height: 100%;
}
.main .memberInterviews__container--sp--slick--inner {
  width: 100%;
  height: auto;
}
.main .memberInterviews__container--sp--slick--inner--flex {
  width: 100%;
  height: 49.8rem;
  display: flex;
  align-items: center;
  padding: 0 3.35rem;
}
@media screen and (max-width: 599px) {
  .main .memberInterviews__container--sp--slick--inner--flex {
    height: 30rem;
    padding: 0 0.6rem;
  }
}
.main .memberInterviews__container--sp--slick--inner--flex--img {
  width: 100%;
  height: 1000%;
}
.main .memberInterviews__container--sp--slick--inner--flex--img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 3rem;
}
@media screen and (max-width: 599px) {
  .main .memberInterviews__container--sp--slick--inner--flex--img img {
    border-radius: 1rem;
  }
}
.main .faq {
  margin: 19.5rem auto 0;
}
@media screen and (max-width: 599px) {
  .main .faq {
    margin: 2.7rem auto 0;
  }
}
.main .faq h2 {
  width: 100%;
  max-width: 157.4rem;
  color: #080808;
  line-height: 1.76;
  margin: auto;
}
@media screen and (max-width: 599px) {
  .main .faq h2 {
    max-width: 33rem;
  }
}
.main .faq h2 small {
  font-weight: 400;
  font-size: 1.6rem;
}
@media screen and (max-width: 599px) {
  .main .faq h2 small {
    font-size: 1rem;
  }
}
.main .faq h2 big {
  font-size: 5rem;
  font-weight: 900;
  font-style: italic;
}
@media screen and (max-width: 599px) {
  .main .faq h2 big {
    font-size: 2rem;
  }
}
.main .faq__container {
  width: 100%;
}
.main .faq__container h3 {
  max-width: 153.6rem;
  width: 100%;
  font-size: 4rem;
  font-weight: bold;
  color: #080808;
  margin: 9rem auto 8rem;
}
@media screen and (max-width: 599px) {
  .main .faq__container h3 {
    max-width: 33rem;
    font-size: 1.2rem;
    margin: 2.52rem auto 2rem;
  }
}
.main .faq__container--accordion {
  max-width: 159.1rem;
  width: 100%;
  border-top: 0.1rem #D5D5D5 solid;
  padding: 0 0 0 2.5rem;
  margin: auto;
  font-size: 3rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 599px) {
  .main .faq__container--accordion {
    max-width: 33rem;
    font-size: 1rem;
    padding: 0;
  }
}
.main .faq__container--accordion .accordionHeader {
  padding: 4rem 0;
  position: relative;
  color: #383635;
  cursor: pointer;
}
@media screen and (max-width: 599px) {
  .main .faq__container--accordion .accordionHeader {
    padding: 1.1rem 0 2rem 0;
  }
}
.main .faq__container--accordion .accordionHeader .q {
  padding: 0 11rem 0 2.5rem;
  display: inline-block;
  color: #383635;
}
@media screen and (max-width: 599px) {
  .main .faq__container--accordion .accordionHeader .q {
    padding: 0 0 0 0;
  }
}
.main .faq__container--accordion .accordionHeader .icon {
  width: 2.925rem;
  height: 2.925rem;
  display: flex;
  align-items: center;
  position: absolute;
  top: 5.2rem;
  right: 6.9rem;
  transition: transform 0.3s ease;
}
@media screen and (max-width: 599px) {
  .main .faq__container--accordion .accordionHeader .icon {
    width: 1.032rem;
    height: 1.032rem;
    top: 1.6rem;
    right: 0.6rem;
  }
}
.main .faq__container--accordion .accordionBody {
  width: 128.3rem;
  padding: 0 0 0 4.7rem;
  font-size: 2rem;
  color: #383635;
  line-height: 2.5;
  margin: auto;
  transition: height 0.3s ease;
}
@media screen and (max-width: 599px) {
  .main .faq__container--accordion .accordionBody {
    width: 29.682rem;
    font-size: 0.8rem;
    line-height: 1.875;
    margin: auto;
    padding: 0;
  }
}
.main .join {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 11rem 0 15.4rem 0;
}
@media screen and (max-width: 599px) {
  .main .join {
    padding: 2.7rem 0 2.7rem 0;
  }
}
.main .join__content {
  width: 100%;
  max-width: 170rem;
  height: 30rem;
  background-color: #FF8238;
  color: #fff;
  border-radius: 2.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
}
@media screen and (max-width: 599px) {
  .main .join__content {
    max-width: 33rem;
    height: 14.9rem;
    border-radius: 1rem;
  }
}
.main .join__content h2 {
  font-size: 10.6rem;
  font-weight: 900;
  font-style: italic;
  padding: 0 0 2.7rem 0;
  line-height: 1;
}
@media screen and (max-width: 599px) {
  .main .join__content h2 {
    font-size: 4rem;
  }
}
.main .join__content a {
  width: 69.8rem;
  height: 7.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  background-color: #080808;
  border: solid #080808 0.2rem;
  transition: all 0.3s ease;
  overflow: hidden;
}
@media screen and (max-width: 599px) {
  .main .join__content a {
    width: 30rem;
    height: 3.4rem;
    border: solid #080808 0.1rem;
  }
}
.main .join__content a::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #FF8238;
  position: absolute;
  right: 100%;
  transition: all 0.3s ease;
}
.main .join__content a:hover {
  border: solid #fff 0.2rem;
}
@media screen and (max-width: 599px) {
  .main .join__content a:hover {
    border: solid #fff 0.1rem;
  }
}
.main .join__content a:hover::before {
  right: 0;
}
.main .join__content a .text {
  font-size: 2.5rem;
  position: absolute;
}
@media screen and (max-width: 599px) {
  .main .join__content a .text {
    font-size: 1.2rem;
  }
}
.main .join__content a .icon {
  width: 2.8rem;
  display: flex;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 3.3rem;
  transform: translateY(-50%);
}
@media screen and (max-width: 599px) {
  .main .join__content a .icon {
    width: 2.311rem;
    right: 1.08rem;
  }
}/*# sourceMappingURL=style.css.map */