@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@200;300;400;500;600;700&display=swap");
.main {
  position: relative;
  width: 100%;
  height: calc(100vh - 80px);
}
.main .mainTitle {
  height: 100% !important;
}
.main .mv .img {
  opacity: 0;
}
.main .main-copy-area {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  max-width: 1280px;
  height: 100%;
  margin: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: 120px;
}
.main .main-copy-area .main-copy {
  color: #FFF;
  clip-path: polygon(0 0, 26% 0, 26% 100%, 0% 100%);
}
.main .main-copy-area .main-copy.en {
  font-family: 'Oswald', sans-serif;
  line-height: 1.08;
  font-size: 74px;
  font-weight: 600;
  font-feature-settings: "palt";
  letter-spacing: -0.05rem;
}
.main .main-copy-area .main-copy.ja {
  line-height: 2.5;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: -0.02rem;
}
.section {
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1;
  padding: 0 0 120px;
}
.section:nth-of-type(2) {
  padding-bottom: 0;
}
.section .information {
  background: #FFF;
  padding: 28px 40px 64px;
  display: flex;
  gap: 24px;
  margin-top: -95px;
}
.section .information .sholder {
  font-family: 'Oswald', sans-serif;
  color: #1565C0;
  font-weight: 600;
  font-size: 17px;
  width: 92px;
  white-space: nowrap;
  letter-spacing: -0.01rem;
}
.section .information .information-list {
  width: calc(100% - 92px);
}
.section .information .information-list .list {
  display: flex;
}
.section .information .information-list .list .yyyymmdd {
  font-size: 16px;
  font-weight: 300;
  line-height: 2.5;
  width: 100px;
}
.section .information .information-list .list .in-text {
  font-size: 16px;
  font-weight: 300;
  line-height: 2.5;
  letter-spacing: -0.03rem;
  width: calc(100% - 100px);
}
.section .information .information-list .list .in-text a {
  font-size: 16px;
  font-weight: 300;
  line-height: 2.5;
  margin-left: 1rem;
  letter-spacing: -0.03rem;
  text-decoration: underline;
  position: relative;
}
.section .information .information-list .list .in-text a.no-margin {
  margin-left: 0;
}
.section .information .information-list .list .in-text a.link {
  margin-left: 0;
}
.section .information .information-list .list .in-text a.link:after {
  display: none;
}
.section .information .information-list .list .in-text a:after {
  content: "";
  position: absolute;
  display: block;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background: #000;
  transition: all .3s;
}
.section .information .information-list .list .in-text a:hover:after {
  width: 100%;
}
.section.has-contents {
  flex-wrap: wrap;
  padding: 0;
}
.section.has-contents .contents {
  width: 50%;
  display: flex;
  position: relative;
  padding: 80px 0;
  overflow: hidden;
}
.section.has-contents .contents .contents-bg {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  background: rgba(21, 101, 192, 0.75);
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  transition: all .3s;
}
.section.has-contents .contents:before, .section.has-contents .contents:after {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  background: rgba(21, 101, 192, 0.75);
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  transition: all .3s;
}
.section.has-contents .contents:before {
  transform: translate3d(-105%, -105%, 0);
}
.section.has-contents .contents:after {
  transform: translate3d(105%, 105%, 0);
}
.section.has-contents .contents:hover:before {
  transform: translate3d(0, 0, 0);
}
.section.has-contents .contents:hover:after {
  transform: translate3d(0, 0, 0);
}
.section.has-contents .contents .block {
  width: calc(100% - ((100vw - 1280px) / 2));
  height: 100%;
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
}
.section.has-contents .contents .block .contens-title {
  color: #FFF;
}
.section.has-contents .contents .block .contens-title .arrow:before {
  background: #FFF;
}
.section.has-contents .contents .block .contens-title .arrow:after {
  background: #FFF;
}
.section.has-contents .contents .block .text {
  font-size: 14px;
  line-height: 2;
  color: #FFF;
  margin-top: 40px;
  font-feature-settings: "palt";
}
.section.has-contents .contents:nth-of-type(1) {
  background: url(../images/about.jpg) no-repeat center center;
  background-size: cover;
  justify-content: flex-end;
}
.section.has-contents .contents:nth-of-type(2) {
  background: url(../images/business.jpg) no-repeat center center;
  background-size: cover;
  justify-content: flex-start;
}
.section.has-contents .contents:nth-of-type(3) {
  background: url(../images/works.jpg) no-repeat center center;
  background-size: cover;
  justify-content: flex-start;
}
.section.has-contents .contents:nth-of-type(4) {
  /*width: 100%;*/
  background: url(../images/project.jpg) no-repeat center center;
  background-size: cover;
  justify-content: flex-start;
}
.section.has-contents .contents {
  width: 50%;
}
.section.has-contents .contents:nth-of-type(odd) {
  justify-content: flex-end;
  padding-right: 64px;
}
.section.has-contents .contents:nth-of-type(even) {
  padding-left: 64px;
}
.section.has-contents div.contents {
  width: 100%;
  background: url(../images/project.jpg) no-repeat center center !important;
  background-size: cover;
  display: flex;
  justify-content: center !important;
  padding: 80px 0 !important;
}
.section.has-contents div.contents .block {
  width: 100%;
  max-width: 1280px;
}
.section.has-contents div.contents:before, .section.has-contents div.contents:after {
  display: none;
}
.section .contents-wrap {
  display: flex;
  padding: 80px 0;
}
.section .contents-wrap .in-text {
  font-size: 14px;
  line-height: 2;
  font-feature-settings: "palt";
  width: fit-content;
  margin-left: auto;
  letter-spacing: -0.01rem;
}
.section .contens-title {
  transition: all .3s;
}
.section .contens-title.en {
  font-family: 'Oswald', sans-serif;
  line-height: 1.08;
  font-size: 64px;
  font-weight: 400;
  font-feature-settings: "palt";
  letter-spacing: -0.05rem;
  position: relative;
  width: fit-content;
}
.section .contens-title.ja_l {
  font-family: 'Oswald', sans-serif;
  line-height: 1.08;
  font-size: 32px;
  font-weight: 600;
  font-feature-settings: "palt";
  position: relative;
  width: fit-content;
}
.section .contens-title.ja_l .arrow {
  bottom: 0px;
}
.section .contens-title.ja_s {
  font-size: 16px;
  font-weight: 700;
}
.section .contens-title.ja {
  font-size: 18px;
  font-weight: 700;
}
.section .contens-title .arrow-wrap {
  position: absolute;
  width: 160px;
  height: 15px;
  right: 0;
  right: -185px;
  bottom: 8px;
  display: block;
  line-height: 1.08;
  overflow: hidden;
}
.section .contens-title .arrow {
  position: absolute;
  width: 160px;
  height: 15px;
  right: 0;
  bottom: 0;
  display: block;
  line-height: 1.08;
  overflow: hidden;
}
.section .contens-title .arrow:before {
  content: "";
  position: absolute;
  display: block;
  bottom: 0px;
  right: calc((100% + 25px) * -1);
  right: 0;
  width: 100%;
  height: 1px;
  background: #000032;
  transition: all .5s;
}
.section .contens-title .arrow:after {
  content: "";
  position: absolute;
  display: block;
  bottom: -4px;
  right: calc((100% + 18px) * -1);
  right: 5px;
  transform: rotate(-45deg);
  width: 1px;
  height: 20px;
  background: #000032;
  transition: all .5s;
}
.section .slider-wrap {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}
.section .slider-wrap .slick-slider {
  height: 100% !important;
}
.section .slider-wrap .slider .slick-track {
  display: flex;
  align-items: flex-start;
}
.section .slider-wrap .slider .slick-list {
  display: flex;
  height: 100%;
}
.section .slider-wrap .slider .slick-track {
  display: flex;
}
.section .slider-wrap .slider .list {
  padding: 0 2px;
  float: none;
  display: flex;
}
.section .slider-wrap .slider .list .card {
  border: 1px solid #DDD;
  background: #E9E9EC;
  display: block;
}
.section .slider-wrap .slider .list .card .spec-details {
  border-top: 1px solid #1565C0;
  padding: 24px;
  position: relative;
  z-index: 5;
}
.section .slider-wrap .slider .list .card .spec-details .copy {
  font-size: 16px;
  line-height: 1.75;
  font-weight: 500;
  transition: all .3s;
  font-feature-settings: "palt";
}
.section .slider-wrap .slider .list .card .spec-details .in-text {
  font-size: 12px;
  line-height: 1.75;
  font-weight: 400;
  letter-spacing: 0;
  margin-top: 16px;
  transition: all .3s;
}
.section .slider-wrap .slider .list .card .spec-details .in-text.name {
  font-weight: 500;
  margin-top: 8px;
  font-size: 14px;
}
.section .slider-wrap .slick-prev, .section .slider-wrap .slick-next {
  width: 56px;
  height: 100%;
  background: rgba(21, 101, 192, 0.85);
  mix-blend-mode: multiply;
  z-index: 1;
  transition: all .5s;
}
.section .slider-wrap .slick-prev:before, .section .slider-wrap .slick-next:before {
  content: '';
  width: 21px;
  height: 21px;
  border-top: 1px solid #FFF;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  opacity: 1;
}
.section .slider-wrap .slick-prev:hover, .section .slider-wrap .slick-next:hover {
  background: #3565c0;
  mix-blend-mode: normal;
}
.section .slider-wrap .slick-prev {
  left: 0;
}
.section .slider-wrap .slick-prev:before {
  border-left: 1px solid #FFF;
  transform: rotate(-45deg);
}
.section .slider-wrap .slick-next {
  right: 0;
}
.section .slider-wrap .slick-next:before {
  border-right: 1px solid #FFF;
  transform: rotate(45deg);
}
.section.recruit-information {
  background: rgba(0, 0, 0, 0.85);
}
.section.recruit-information .contents-wrap {
  padding-bottom: 0;
}
.section.recruit-information .contens-title.en {
  color: #FFF;
}
.section.recruit-information .contens-title.ja {
  color: #FFF;
}
.section.recruit-information .information-list {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  margin-top: 32px;
  width: 100%;
}
.section.recruit-information .information-list .list {
  width: calc((100% - 80px)/3);
  height: 80px;
}
.section.recruit-information .information-list .list .item {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #1565C0;
  position: relative;
  overflow: hidden;
}
.section.recruit-information .information-list .list .item .in-text {
  color: #FFF;
  font-size: 20px;
  font-weight: 300;
  position: relative;
  z-index: 1;
}
.section:last-of-type .contens-title .arrow-wrap {
  bottom: 0px;
}
.section:last-of-type .contents-wrap {
  align-items: flex-end;
}
.section:last-of-type .contents-wrap .in-text {
  max-width: calc(100% - 487px - 45px);
}
/* MOVIEs バナー */
.section.section-movies-banner {
  padding: 0 0 80px;
}
.movies-banner-wrapper {
  margin: 16px 0 0;
  padding: 0 0 0px;
}
.movies-banner-wrapper a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px;
  border: 1px solid #121658;
  gap: 40px;
}
.movies-banner-wrapper a:hover {
	background: #121658;
	border: 1px solid #121658;
  gap: 40px;
}
.movies-banner-wrapper a .movies-banner-title {
  padding: 0 0 0 16px;
}
.movies-banner-wrapper a .movies-banner-title .moviesTitle {
  display: block;
  font-weight: 600;
  font-family: 'Oswald';
  font-size: 64px;
  line-height: 1;
  color: #121658;
  letter-spacing: 0;
}
.movies-banner-wrapper a .movies-banner-title .moviesTitle span {
  display: block;
  font-size: 28px;
  font-family: 'Oswald', sans-serif;
  font-weight: 600;
  line-height: 1;
}
.movies-banner-wrapper a:hover .movies-banner-title .moviesTitle,
.movies-banner-wrapper a:hover .movies-banner-title .moviesTitle span {
  color: #fff;
}

.movies-banner-wrapper a:hover .contens-title .arrow:before, 
.movies-banner-wrapper a:hover .contens-title .arrow:after {
  background: #fff;
}


.movies-banner-wrapper a .movies-banner-img {
  width: 50%;
}
.movies-banner-wrapper a .movies-banner-img figure {
  width: 100%;
}
.movies-banner-wrapper a .movies-banner-img figure img {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 1328px) {
  .main .main-copy-area {
    padding-left: 24px;
    padding-right: 24px;
    max-width: 1328px;
  }
  .section.has-contents .contents {
    padding: 80px 24px;
  }
  .section.has-contents .contents:nth-of-type(odd) {
    justify-content: flex-start;
    padding-right: 24px;
  }
  .section.has-contents .contents:nth-of-type(even) {
    justify-content: flex-start;
    padding-left: 24px;
  }
  .section.has-contents .contents .block {
    width: 100%;
  }
  .section.has-contents div.contents {
    padding: 80px 24px !important;
  }
}
@media screen and (max-width: 1280px) {
  .section .slider-wrap .slider .list .card .spec-details .copy br {
    display: none;
  }
}
@media screen and (max-width: 1076px) {
  .main .main-copy-area .main-copy.en {
    font-size: calc(74px * 0.8);
  }
  .main .main-copy-area .main-copy.ja {
    font-size: calc(24px * 0.8);
  }
  .section .contens-title.en {
    font-size: calc(64px * 0.8);
  }
  .section .contens-title.en .arrow-wrap {
    width: calc(160px * 0.8);
    height: calc(15px * 0.8);
    right: calc((185px * 0.8) * -1);
    bottom: 8px;
  }
  .section .contens-title.ja {
    font-size: calc(18px * 0.8);
  }
  .section.has-contents .contents {
    padding: 40px 24px;
  }
  .section.has-contents .contents .block .text {
    margin-top: calc(40px * 0.8);
  }
  .section.has-contents .contents .block .text br {
    display: none;
  }
  .section.has-contents div.contents {
    padding: 40px 24px !important;
  }
  /* MOVIEs バナー */
  .movies-banner-wrapper a .movies-banner-title .moviesTitle {
    font-size: calc(64px * 0.8);
  }
  .movies-banner-wrapper a .movies-banner-title .moviesTitle span {
    font-size: calc(28px * 0.8);
  }
}
@media screen and (max-width: 960px) {
  .section .slider-wrap .slider .list .card .spec-details .copy {
    font-size: 14px;
    letter-spacing: -0.05rem;
  }
  .section .slider-wrap .slider .list .card .spec-details .in-text {
    letter-spacing: -0.05rem;
  }
  .section.recruit-information .information-list {
    gap: 24px;
    margin-top: 32px;
  }
  .section.recruit-information .information-list .list {
    width: calc((100% - 48px) / 3);
    height: 64px;
  }
  .section.recruit-information .information-list .list .item .in-text {
    font-size: 18px;
  }
  .section .contents-wrap {
    display: flex;
    padding: 80px 0;
    flex-direction: column;
  }
  .section .contents-wrap .in-text {
    width: 100%;
    margin-left: 0;
    margin-top: 32px;
  }
  .section:last-of-type .contents-wrap {
    align-items: flex-start;
  }
  .section:last-of-type .contents-wrap .in-text {
    max-width: 100%;
  }
  /* MOVIEs バナー */
  .section.section-movies-banner {
    padding: 0 0 40px;
  }
  .movies-banner-wrapper {
    margin: 0 16px;
  }
  .movies-banner-wrapper a {
    display: block;
  }
  .movies-banner-wrapper a .movies-banner-title {
    padding: 0;
  }
  .movies-banner-wrapper a .movies-banner-img {
    width: 100%;
    margin-top: 8px;
  }
}
@media screen and (max-width: 864px) {
  .main .main-copy-area .main-copy.en {
    font-size: calc(74px * 0.6);
  }
  .main .main-copy-area .main-copy.ja {
    font-size: calc(24px * 0.6);
  }
}
@media screen and (max-width: 767px) {
  .main {
    width: 100%;
    height: calc(100vh - 45px);
  }
  .main .mainTitle {
    height: 100%;
  }
  .main .main-copy-area {
    padding-left: 20px;
    padding-bottom: 60px;
  }
  .main .main-copy-area .main-copy.en {
    line-height: 1.16;
    font-size: 48px;
  }
  .main .main-copy-area .main-copy.ja {
    line-height: 1.6;
    font-size: 20px;
    margin-top: 24px;
  }
  .section {
    padding-bottom: 64px;
  }
  .section:nth-of-type(2) {
    padding-bottom: 64px;
  }
  .section .contens-title.en {
    font-size: 48px;
  }
  .section .contens-title .arrow-wrap {
    width: 120px;
    height: 9px;
    right: -145px;
    bottom: 8px;
  }
  .section .contens-title.ja {
    font-size: 14px;
    line-height: 1.75;
    margin-top: 8px;
  }
  .section .contens-title.ja_l {
    font-size: 28px;
    letter-spacing: -0.02rem;
  }
  .section .contens-title.ja_l .arrow-wrap {
    width: 60px;
    right: -75px;
  }
  .section .information {
    margin-top: 0;
  }
  .section .information {
    padding: 40px 20px 0px;
    display: flex;
    gap: 18px;
    flex-direction: column;
  }
  .section .information .sholder {
    width: auto;
    line-height: 1;
  }
  .section .information .information-list {
    width: 100%;
  }
  .section .information .information-list .list {
    flex-direction: column;
  }
  .section .information .information-list .list .yyyymmdd {
    font-size: 14px;
    line-height: 1.75;
    width: 100%;
  }
  .section .information .information-list .list .in-text {
    font-size: 14px;
    line-height: 1.75;
    width: 100%;
  }
  .section .information .information-list .list .in-text a {
    font-size: 14px;
    line-height: 1.75;
    margin-left: 0;
  }
  .section .information .information-list .list + .list {
    margin-top: 12px;
  }
  .section .contents-wrap {
    display: flex;
    padding: 54px 20px 28px;
    flex-direction: column;
  }
  .section .contents-wrap .title-area {
    width: 100%;
  }
  .section .contents-wrap .in-text {
    line-height: 1.75;
    width: 100%;
    margin-left: 0;
    margin-top: 28px;
    font-weight: 300;
  }
  .section.has-contents .contents {
    width: 100%;
    padding: 0;
  }
  .section.has-contents .contents:before, .section.has-contents .contents:after {
    display: none;
  }
  .section.has-contents .contents .block {
    background: #E9E9EC;
    width: 100%;
  }
  .section.has-contents .contents .block .in-block {
    padding: 60px 30px;
    position: relative;
  }
  .section.has-contents .contents .block .in-block .contens-title {
    position: relative;
    z-index: 1;
  }
  .section.has-contents .contents .block .in-block:after {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    background: rgba(21, 101, 192, 0.75);
    width: 100%;
    height: 100%;
    mix-blend-mode: multiply;
  }
  .section.has-contents .contents .block .text {
    margin-top: 0;
    padding: 32px 20px;
    color: #000;
    font-weight: 300;
  }
  .section.has-contents .contents:nth-of-type(1) {
    background: none;
  }
  .section.has-contents .contents:nth-of-type(1) .block .in-block {
    background: url(../images/about.jpg) no-repeat center center;
    background-size: cover;
  }
  .section.has-contents .contents:nth-of-type(2) {
    background: none;
  }
  .section.has-contents .contents:nth-of-type(2) .block .in-block {
    background: url(../images/business.jpg) no-repeat center center;
    background-size: cover;
  }
  .section.has-contents .contents:nth-of-type(3) {
    background: none;
  }
  .section.has-contents .contents:nth-of-type(3) .block .in-block {
    background: url(../images/works.jpg) no-repeat center center;
    background-size: cover;
  }
  .section.has-contents .contents:nth-of-type(4) {
    background: none;
  }
  .section.has-contents .contents:nth-of-type(4) .block .in-block {
    background: url(../images/project.jpg) no-repeat center center;
    background-size: cover;
  }
  .section.has-contents div.contents {
    background: none !important;
    padding: 0 !important;
  }
  .section.has-contents .contents:nth-of-type(odd) {
    padding-right: 0;
  }
  .section.has-contents .contents:nth-of-type(even) {
    padding-left: 0;
  }
  .section.has-contents div.contents .block .in-block {
    background: url(../images/project.jpg) no-repeat center center !important;
    background-size: cover;
  }
  .section .slider-wrap .slider .list .card .spec-details {
    padding: 20px;
  }
  .section .slider-wrap .slider .list .card .spec-details .copy {
    font-size: 14px;
    letter-spacing: -0.05rem;
  }
  .section .slider-wrap .slider .list .card .spec-details .in-text {
    font-size: 12px;
    letter-spacing: -0.05rem;
  }
  .section .slider-wrap .slick-prev, .section .slider-wrap .slick-next {
    width: 40px;
    height: 64px;
  }
  .section .slider-wrap .slick-prev:before, .section .slider-wrap .slick-next:before {
    width: 18px;
    height: 18px;
  }
  .section.recruit-information .information-list {
    gap: 20px;
    margin-top: 32px;
    padding: 0 20px;
  }
  .section.recruit-information .information-list .list {
    width: calc((100% - 20px)/2);
    height: 64px;
  }
  .section.recruit-information .information-list .list .item .in-text {
    font-size: 16px;
    letter-spacing: 0;
  }
  .section .group-recruit {
    padding: 0 20px;
  }
  /* MOVIEs バナー */
  .movies-banner-wrapper a .movies-banner-title .moviesTitle {
    font-size: calc(64px * 0.6);
  }
  .movies-banner-wrapper a .movies-banner-title .moviesTitle span {
    font-size: calc(28px * 0.6);
  }
}
@media screen and (max-width: 400px) {
  .main .main-copy-area .main-copy.en {
    font-size: 44px;
  }
  .main .main-copy-area .main-copy.ja {
    font-size: 18px;
  }
}
.this_anime.start:after {
  animation: fadeIn .5s ease-in-out 0.2s forwards;
}
.main .main-copy-area .main-copy {
  clip-path: polygon(0 0, 0% 0, 0% 100%, 0% 100%);
}
.main .main-copy-area .main-copy.start {
  animation: clipSlide .5s ease-in-out 0.2s forwards;
}
.section .contents-wrap .contens-title, .section .contents .contens-title {
  opacity: 0;
}
.section .contents-wrap .contens-title.start, .section .contents .contens-title.start {
  animation: fadeIn .2s ease-in-out 0.2s forwards;
}
.section .contents-wrap .contens-title .arrow, .section .contents .contens-title .arrow {
  transform: translateX(-185px);
}
.section .contents-wrap .contens-title .arrow.start, .section .contents .contens-title .arrow.start {
  animation: arrowIn .2s ease-in-out 0.2s forwards;
}
.section .contents-wrap .block .text, .section .contents .block .text {
  opacity: 0;
}
.section .contents-wrap .block .text.start, .section .contents .block .text.start {
  animation: fadeIn .2s ease-in-out 0.2s forwards;
}
.section .contents-wrap .in-text, .section .contents .in-text {
  opacity: 0;
}
.section .contents-wrap .in-text.start, .section .contents .in-text.start {
  animation: fadeIn .2s ease-in-out 0.2s forwards;
}
/*# sourceMappingURL=index.css.map */