@charset "utf-8";@charset "UTF-8";

html.-wait {
  cursor: wait !important;
}

html.-wait * {
  pointer-events: none !important;
  user-select: none !important;
}

.layer {
  position: relative;
  z-index: 1;
}

.loader {
  display: grid;
  place-items: center;
  position: fixed;
  inset: 0;
  z-index: 9999;
  background-color: #AD8049;
}

@media screen and (max-width: 746px) {
  .loader_logo {
    width: 200px;
  }
}

.loader_progress {
  display: grid;
  position: absolute;
}

@media screen and (max-width: 746px) {
  .loader_progress {
    right: 30px;
    bottom: 30px;
  }
}

@media screen and (min-width: 746px) {
  .loader_progress {
    right: 60px;
    bottom: 60px;
  }
}

.loader_number {
  grid-area: 1 / 1;
  place-self: center;
  color: #fff;
}

.loader_circle {
  grid-area: 1 / 1;
}

#header {
  position: fixed;
}

@media screen and (max-width: 745px) {
  #header {
    padding-block: 20px;
  }

  #header #logo-im {
    position: static;
  }

  #header .header-flexwp {
    padding-inline: 18px;
  }

  #header .hd-nav-wrap {
    padding-right: 0;
  }

  #header .hamburger-menu-wrap {
    position: static;
  }
}

@media screen and (min-width: 746px) {
  .mainvisual {
    height: 150vh;
  }
}

.top-copy {
  pointer-events: none;
}

#top-webgl-container {
  position: fixed;
  inset: 0;
  height: 131.76vw;
}

#top-webgl {
  position: absolute;
  inset: 0;
}

.top-copy-text {
  position: absolute;
  width: 100%;
}

@media screen and (max-width: 745px) {
  .top-copy-text  {
    bottom: 25.6vw;
  }
}

@media screen and (min-width: 746px) {
  .top-copy-text  {
    bottom: 112px;
  }
}

.copy-lines {
  display: grid;
}

@media screen and (max-width: 745px) {
  .copy-lines {
    gap: 2.66666667vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-lines {
    gap: 2.22222222vw;
  }
}

.copy-line {
  display: flex;
  align-items: center;
  overflow: clip;
}

@media screen and (max-width: 745px) {
  .copy-line:first-of-type {
    width: 74.6vw;
  }

  .copy-line:last-of-type {
    width: 85.3333333vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:first-of-type {
    margin-right: 25.1388889vw;
  }

  .copy-line:last-of-type {
    margin-left: 16.1805556vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-letter {
    height: 6.088vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-letter {
    height: 5.13888889vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(4),
  .copy-line:first-of-type .copy-letter:nth-of-type(10),
  .copy-line:first-of-type .copy-letter:nth-of-type(11),
  .copy-line:last-of-type .copy-letter:nth-of-type(1),
  .copy-line:last-of-type .copy-letter:nth-of-type(3),
  .copy-line:last-of-type .copy-letter:nth-of-type(8),
  .copy-line:last-of-type .copy-letter:nth-of-type(12),
  .copy-line:last-of-type .copy-letter:nth-of-type(13) {
    height: 6.368vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(4),
  .copy-line:first-of-type .copy-letter:nth-of-type(10),
  .copy-line:first-of-type .copy-letter:nth-of-type(11),
  .copy-line:last-of-type .copy-letter:nth-of-type(1),
  .copy-line:last-of-type .copy-letter:nth-of-type(3),
  .copy-line:last-of-type .copy-letter:nth-of-type(8),
  .copy-line:last-of-type .copy-letter:nth-of-type(12),
  .copy-line:last-of-type .copy-letter:nth-of-type(13) {
    height: 5.27777778vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(7) {
    height: 6.36266667vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(7) {
    height: 5.27777778vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(3) {
    margin-left: 0.53333333vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(3) {
    margin-left: 0.3125vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(4) {
    margin-left: 0.53333333vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(4) {
    margin-left: 0.48611111vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(5) {
    margin-left: 0.53333333vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(5) {
    margin-left: 0.55555556vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(6) {
    margin-left: 2.13333333vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(6) {
    margin-left: 1.59722222vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(7) {
    margin-left: 1.86666667vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(7) {
    margin-left: 1.66666667vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(8) {
    margin-left: 0.8vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(8) {
    margin-left: 0.55555556vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(9) {
    margin-left: 0.8vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(9) {
    margin-left: 0.625vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(10) {
    margin-left: 0.26666667vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(10) {
    margin-left: 0.27777778vw;
  }
}

@media screen and (max-width: 746px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(11) {
    margin-left: 0.26666667vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(11) {
    margin-left: 0.27777778vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(12) {
    margin-left: 0.8vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:first-of-type .copy-letter:nth-of-type(12) {
    margin-left: 0.55555556vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(1) {
    margin-left: 5.86666667vw;
    margin-left: 0;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(2) {
    margin-left: 0.53333333vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(2) {
    margin-left: 0.48611111vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(3) {
    margin-left: 0.4vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(3) {
    margin-left: 0.34722222vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(4) {
    margin-left: -0.26666667vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(4) {
    margin-left: -0.20833333vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(5) {
    margin-left: 1.2vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(5) {
    margin-left: 0.97222222vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(6) {
    margin-left: 2.13333333vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(6) {
    margin-left: 1.80555556vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(7) {
    margin-left: 0.8vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(7) {
    margin-left: 0.55555556vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(8) {
    margin-left: 0.26666667vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(8) {
    margin-left: 0.48611111vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(9) {
    margin-left: 0.8vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(9) {
    margin-left: 0.69444444vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(10) {
    margin-left: 1.06666667vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(10) {
    margin-left: 1.11111111vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(11) {
    margin-left: 1.06666667vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(11) {
    margin-left: 0.97222222vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(12) {
    margin-left: 0.53333333vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(12) {
    margin-left: 0.34722222vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(13) {
    margin-left: 0.26666667vw;
  }
}

@media screen and (min-width: 746px) {
  .copy-line:last-of-type .copy-letter:nth-of-type(13) {
    margin-left: 0.34722222vw;
  }
}

@media screen and (max-width: 745px) {
  .copy-ja {
    display: none;
  }
}

@media screen and (min-width: 746px) {
  .copy-ja {
    width: 14.7916667vw;
    margin-top: -4.09722222vw;
  }
}

.about-wrap,
.recruit-wrap {
  background-color: #fff;
}