@charset "utf-8";
:root {
  --color-text: #232323;
  --color-link: #052275;
  --color-primary: #052275;
  --color-secondary: #2637b3;
  --color-accent: #ffd800;
  --color-gray: #b5b5b6;
  --color-bg: #f3f4f7;
  --color-border: #efefef;
  --font: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  --font-en: "Jost", sans-serif;
  --font-mincho: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
.top-heading {
  font-family: "Jost", sans-serif;
  font-size: 4rem;
  font-weight: 500;
  line-height: 1;
}
.mv {
  position: relative;
  z-index: 0;
  height: calc(100vh - 90px);
}
.mv__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  background: #eee;
}
.mv__content .movie {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 45%;
    flex: 0 1 45%;
  }
.mv__content .movie video,
    .mv__content .movie img {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
      object-fit: cover;
      -o-object-position: 75% center;
      object-position: 75% center;
    }
.mv__content .lead {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 55%;
    flex: 0 0 55%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: url("../../images/mv_bg@sp.png") no-repeat center center / cover;
  }
.mv__content .lead picture {
      display: block;
      width: 60%;
      max-width: 360px;
      margin-bottom: 20%;
      -webkit-filter: drop-shadow(1px 1px 0 rgba(0, 0, 0, 0.1));
      filter: drop-shadow(1px 1px 0 rgba(0, 0, 0, 0.1));
    }
.mv__footer {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 1;
  height: min(100px, 30vw);
}
.mv__footer::after {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    -webkit-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: skewY(-5deg);
    transform: skewY(-5deg);
    background: #052275 -webkit-gradient(linear, left top, right top, from(#2637b3), color-stop(40%, #052275));
    background: #052275 linear-gradient(90deg, #2637b3 0%, #052275 40%);
    content: "";
  }
.mv__ticker {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateY(70%) rotate(-5deg);
  transform: translateY(70%) rotate(-5deg);
  width: 100%;
  white-space: nowrap;
  pointer-events: none;
}
.mv__ticker .ticker {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-animation: ticker 10s linear infinite;
    animation: ticker 10s linear infinite;
  }
.mv__ticker img {
    width: 110vw;
    max-width: none;
    margin-right: 20px;
  }
.mv__btn {
  display: block;
  position: absolute;
  right: min(40px, 5%);
  bottom: 20px;
  width: min(198px, 30%);
  border-radius: 50%;
  background: #ffd800;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.mv__btn svg {
    width: 100%;
    height: auto;
  }
.mv__btn:hover {
    background: #2637b3;
    color: #ffd800;
  }
@-webkit-keyframes ticker {
  0% { -webkit-transform: translateX(0); transform: translateX(0); }
  100% { -webkit-transform: translateX(-100%); transform: translateX(-100%); }
}
@keyframes ticker {
  0% { -webkit-transform: translateX(0); transform: translateX(0); }
  100% { -webkit-transform: translateX(-100%); transform: translateX(-100%); }
}
.top01 {
  overflow: hidden;
  position: relative;
  z-index: 0;
  padding-top: 30px;
}
.top01::before {
    position: absolute;
    top: -10%;
    left: 0;
    bottom: min(130px, 15vw);
    z-index: -1;
    width: 100%;
    -webkit-transform: skewY(5deg);
    transform: skewY(5deg);
    background: #052275 -webkit-gradient(linear, left top, right top, from(#2637b3), color-stop(40%, #052275));
    background: #052275 linear-gradient(90deg, #2637b3 0%, #052275 40%);
    content: "";
  }
.top01-grid__header {
  color: #fff;
}
.top01-grid__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.top01-grid__list > li {
    margin-bottom: 30px;
  }
.top01-grid__list .article-card__thumb {
    border-radius: 6px 6px 0 0;
  }
.top01-grid__list .article-card__body {
    margin-top: 0;
    padding: 20px;
    border-radius: 0 0 6px 6px;
    background: #fff;
  }
.top-category-list {
  list-style: none;
  margin: 25px 0;
  padding: 0;
}
.top-category-list li {
    display: inline-block;
    margin: 0 10px 10px 0;
  }
.top-category-list a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 138px;
    height: 34px;
    margin: 0;
    border-radius: 17px;
    border: 1px solid;
    background: transparent;
    color: #fff;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0;
    text-align: center;
    -webkit-text-decoration: none;
    text-decoration: none;
  }
.top-category-list a::before {
      right: 10px;
      font-size: 1em;
    }
.top02 {
  position: relative;
  margin-bottom: min(170px, 20vw);
  padding-top: min(170px, 15vw);
}
.top02::before {
    position: absolute;
    top: max(-230px,-20vw);
    bottom: 40%;
    left: 0;
    z-index: -1;
    width: 100%;
    background: url("../../images/about_bg.jpg") no-repeat center center / cover;
    content: "";
  }
.top02::after {
    position: absolute;
    top: 60%;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 30%;
    -webkit-transform: skewY(-5deg);
    transform: skewY(-5deg);
    -webkit-transform-origin: left top;
    transform-origin: left top;
    background: #fff;
    content: "";
  }
.top02__heading {
  margin-bottom: 50px;
  color: #868fd5;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
}
.top02__heading .top-heading {
    color: #052275;
  }
.top02__movie {
  width: 90%;
  max-width: 810px;
  margin: 40px auto;
}
.top02__movie a {
    display: block;
    overflow: hidden;
    border-radius: 6px;
  }
.top02__movie a::before {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      z-index: 1;
      width: 104px;
      height: 104px;
      background: url("../../images/icon_movie.svg") no-repeat center center / contain;
      -webkit-transition: all 0.4s;
      transition: all 0.4s;
      content: "";
    }
@media (hover:hover) {
      .top02__movie a:hover::before {
        -webkit-transform: translate(-50%, -50%) scale(0.8);
        transform: translate(-50%, -50%) scale(0.8);
      }
    }
.top02__content {
  text-align: center;
}
.top02__content p {
    margin-top: 30px;
    margin-bottom: 50px;
  }
.top02__content .btn {
    width: 282px;
  }
.top04 {
  margin-top: min(160px, 20vw);
  padding: min(140px, 15vw) 0 min(150px, 25vw);
  background: url("../../images/works_bg.jpg") no-repeat center center / cover;
  color: #fff;
}
.top04 .h2 {
    color: #fff;
  }
.top04 .h2::before {
      border-color: #fff;
    }
.top04 .btn {
    width: 226px;
  }
.top04 .works-card .works-card__thumb::after {
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 40%;
      background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.3)), to(rgba(0, 0, 0, 0)));
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 100%);
      content: "";
    }
.top04 .works-card .works-content {
      position: absolute;
      left: 20px;
      bottom: 20px;
      z-index: 1;
    }
.top04 .works-card .works-category {
      display: inline-block;
      padding: 0 1em;
      border-radius: 1em;
      background: #052275;
      color: #fff;
      font-size: 1.2rem;
      font-weight: 700;
    }
.top04 .works-card .works-title {
      font-size: 1.5rem;
      font-weight: 500;
    }
.top04__inner {
  position: relative;
  margin-bottom: 30px;
  margin-left: 20px;
}
.top04__inner .splide__arrows {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: -50px;
    right: 20px;
  }
.top04__inner .splide__arrow {
    position: static;
    width: 42px;
    height: 42px;
    border-radius: 42px;
    margin-left: 10px;
    background: #fff;
    color: #052275;
    opacity: 1;
  }
.top04__inner .splide__arrow[disabled] {
      opacity: 0.3;
    }
.top04-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.top05,
.top06 {
  margin-bottom: 50px;
}
.top05 .btn, .top06 .btn {
    width: 226px;
  }
.top05 {
  margin-top: -55px;
}
.top05__image,
.top06__image {
  overflow: hidden;
  width: calc(100% - 20px);
  margin-bottom: 30px;
}
.top05__image {
  border-radius: 0 6px 6px 0;
}
.top06__image {
  border-radius: 6px 0 0 6px;
  margin-left: auto;
}
.top05__content,
.top06__content {
  padding: 0 20px;
}
@media (min-width: 35.001em) {}
@media (max-width: 45em) {}
@media (min-width: 45.001em) {
  .top-heading {
    font-size: 5.4rem;
  }
      .mv__content .lead picture {
        max-width: 400px;
        margin-bottom: 10%;
      }
  .top01-grid {
    position: relative;
  }
  .top01-grid__list {
    overflow: hidden;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(0, 1fr))[2];
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 30px;
  }
    .top01-grid__list > li {
      margin-bottom: 0;
    }
    .top02::before {
      /* transform: translateY(-20vw); */
    }
  .top04__inner {
    margin-left: 30px;
  }}
@media (max-width: 60em) {}
@media (min-width: 60.001em) {
  .top05,
  .top06 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 90px;
  }
  .top05__image {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 56.5454%;
    flex: 0 0 56.5454%;
    width: 100%;
  }
  .top05__content {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 43.4546%;
    flex: 0 0 43.4546%;
    padding: 0 8.2192%;
  }
  .top06 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .top06__image {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 54.9315%;
    flex: 0 0 54.9315%;
    width: 100%;
    margin-left: 0;
  }
  .top06__content {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 32.7397%;
    flex: 0 0 32.7397%;
  }}
@media (max-width: 64em) {
    .mv__content .movie {
      position: relative;
    }
      .mv__content .movie video,
      .mv__content .movie img {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
      }}
@media (min-width: 64.001em) {
  .top-heading {
    font-size: 7rem;
  }
  .mv__content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
    .mv__content .movie,
    .mv__content .lead {
      -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
    }
    .mv__content .lead {
      background-image: url("../../images/mv_bg.png");
    }
      .mv__content .lead picture {
        width: 50%;
        max-width: 255px;
        margin-bottom: 15%;
      }
    .mv__ticker .ticker {
      -webkit-animation-duration: 20s;
      animation-duration: 20s;
    }
  .mv__footer {
    height: 12vw;
  }
  .mv__btn {
    bottom:  5vw;
  }
  .top01-grid__header {
    position: absolute;
    top: 50px;
    left: 0;
    width: calc(33.3333% - 20px);
  }
  .top01-grid__list {
    -ms-grid-columns: (minmax(0, 1fr))[3];
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 40px;
  }
  .top01-grid__list::before {
    content: "";
  }
  .top01-grid__list > li:first-child {
    -ms-grid-column: 2;
    -ms-grid-column-span: 2;
    grid-column: 2 / 4;
    -ms-grid-row: 1;
    grid-row: 1;
  }
    .top01-grid__list .article-card__thumb .article-date {
      padding: 14px 12px;
    }
      .top01-grid__list .article-card__thumb .article-date .ym {
        font-size: 1.4rem;
      }
      .top01-grid__list .article-card__thumb .article-date .day {
        font-size: 2.4rem;
      }
      .top01-grid__list .article-card__thumb .article-date .wd {
        font-size: 1.5rem;
      }
  .top04__inner {
    max-width: calc(1300px + 50vw - 650px);
    margin-bottom: 45px;
    margin-left: auto;
    padding-left: min(7.69%, 100px);
  }
    .top04__inner .splide__arrows {
      display: block;
      top: auto;
      right: auto;
      bottom: 0;
      left: -65px;
    }
    .top04__inner .splide__arrow {
      margin: 10px 0 0 0;
    }}
@media (min-width: 75.001em) {}
/*# sourceMappingURL=maps/index.css.map */
