/* FV
========================================== */
.fv-top {
  margin: auto;
  text-align: center;
  padding: 11.5rem 0 18.5rem;
}
.fv-top img {
  width: 132.4rem;
}
@media screen and (max-width: 768px) {
  .fv-top {
    padding-top: min(18vw, 13rem);
    padding-bottom: min(20vw, 15rem);
  }
}

.fvSlider {
  position: relative;
  z-index: 100;
  overflow: hidden;
}
.fvSlider::before {
  content: "";
  position: absolute;
  z-index: 1000;
  inset: 0 0 0 auto;
  display: block;
  width: 0;
  pointer-events: none;
  background: #003e79;
  transition: 0.5s;
}
.fvSlider.is-masking::before {
  width: 100%;
  left: 0;
  right: auto;
}
.fvSlider__prev, .fvSlider__next {
  position: absolute;
  z-index: 300;
  top: auto;
  bottom: min(10%, 2rem);
  margin: auto;
}
.fvSlider__prev {
  left: 2rem;
  transform: rotate(-135deg);
}
.fvSlider__next {
  right: 2rem;
  transform: rotate(45deg);
}
@media screen and (min-width: 1440px) {
  .fvSlider__prev, .fvSlider__next {
    top: 0;
    bottom: 0;
  }
  .fvSlider__prev {
    left: 5rem;
  }
  .fvSlider__next {
    right: 5rem;
  }
}

.fvSlider-nb {
  display: block;
  width: 6rem;
  height: 6rem;
  border: 0.4rem solid;
  border-color: #003e79 #003e79 transparent transparent;
  filter: drop-shadow(0.4rem -0.4rem 0 #ffffff);
}
@media screen and (max-width: 768px) {
  .fvSlider-nb {
    width: 4rem;
    height: 4rem;
  }
}
@media screen and (max-width: 425px) {
  .fvSlider-nb {
    width: 3rem;
    height: 3rem;
    border-width: 0.2rem;
    filter: drop-shadow(0.2rem -0.2rem 0 #ffffff);
  }
}

.fv-slide {
  height: min(92rem, 70vw);
  overflow: hidden;
}
.fv-slide img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 1s;
  -webkit-animation: 4s slideFadeIn forwards;
          animation: 4s slideFadeIn forwards;
}
.swiper-slide-active .fv-slide img {
  -webkit-animation: 6s slideFadeOut forwards;
          animation: 6s slideFadeOut forwards;
}
@media screen and (max-width: 768px) {
  .fv-slide {
    height: min(80rem, 80vw);
  }
}

@-webkit-keyframes slideFadeIn {
  to {
    transform: scale(1.05);
  }
}

@keyframes slideFadeIn {
  to {
    transform: scale(1.05);
  }
}
@-webkit-keyframes slideFadeOut {
  from {
    transform: scale(1.1);
  }
  to {
    transform: scale(1);
  }
}
@keyframes slideFadeOut {
  from {
    transform: scale(1.1);
  }
  to {
    transform: scale(1);
  }
}
/* NEWS
========================================== */
.top-news-area {
  position: relative;
  z-index: 10;
  padding-top: 5rem;
  padding-bottom: 6rem;
  margin-bottom: 10rem;
  filter: drop-shadow(0 1.6rem 1.3rem rgba(0, 0, 0, 0.2));
}
.top-news-area::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -10rem 0;
  background: #ffffff;
  -webkit-mask-image: url(../../images/main/home/news-bg.png), linear-gradient(to top, transparent 9.5rem, #fff 9.5rem);
          mask-image: url(../../images/main/home/news-bg.png), linear-gradient(to top, transparent 9.5rem, #fff 9.5rem);
  -webkit-mask-position: bottom center, bottom center;
          mask-position: bottom center, bottom center;
  -webkit-mask-size: max(192rem, 100%), 100% 100%;
          mask-size: max(192rem, 100%), 100% 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}
.top-news {
  display: grid;
}
@media screen and (min-width: 769px) {
  .top-news {
    grid-template-columns: 1fr min(100% - 25rem, 85rem);
    gap: 6rem 2rem;
  }
  .top-news__head {
    grid-area: 1/1/2/3;
  }
}
@media screen and (max-width: 768px) {
  .top-news {
    grid-template-columns: 1fr auto;
    gap: 4rem 2rem;
    align-items: flex-end;
  }
  .top-news__link .linkButton {
    margin-bottom: 0;
  }
  .top-news__body {
    grid-area: 2/1/3/3;
  }
}

.topNews table, .topNews tbody, .topNews tr, .topNews th, .topNews td {
  display: block;
}
.topNews tr {
  border-bottom: 1px solid #000000;
  padding: 2rem 0;
}
.topNews tr:first-child {
  padding-top: 0;
}

/* WORKS
========================================== */
.top-works-area {
  position: relative;
  z-index: 1;
  padding: 12rem 0;
}
.top-works-area::before {
  content: "";
  position: absolute;
  inset: -10rem 0;
  z-index: -1;
  background: url(../../images/main/home/prd_bg-t.png) top center/max(192rem, 100%) no-repeat, url(../../images/main/home/prd_bg-b.png) bottom center/max(192rem, 100%) no-repeat;
}

.top-works {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 6rem;
  align-items: flex-end;
}
.top-works__link .linkButton {
  margin-bottom: 0;
}
.top-works__body {
  grid-area: 2/1/3/3;
  max-width: 112rem;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .top-works {
    gap: 4rem 2rem;
  }
  .top-works__body {
    margin: 0 -1.4rem;
  }
}

.worksList {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem 2rem;
}
.worksList > li.-wide {
  grid-column-start: 1;
  grid-column-end: -1;
}
@media screen and (max-width: 768px) {
  .worksList {
    gap: 2rem;
  }
}

.workThumb {
  position: relative;
  display: block;
  z-index: 10;
  width: 100%;
  aspect-ratio: 32/45;
  overflow: hidden;
}
.workThumb img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  transition: 0.5s ease;
}
.-wide .workThumb {
  aspect-ratio: 112/56;
}
.-wide .workThumb img {
  -o-object-fit: cover;
     object-fit: cover;
}
.workThumb:hover {
  opacity: 1;
}
.workThumb:hover img {
  transition: 0.5s cubic-bezier(1, -0.4, 0.4, 1);
  transform: scale(1.05) rotate(3deg);
}
.workThumb__bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  filter: blur(0.82rem);
}
.workThumb__bg img {
  -o-object-fit: cover;
     object-fit: cover;
  transform: none !important;
}
@media screen and (max-width: 425px) {
  .workThumb {
    aspect-ratio: 34/32;
  }
  .-wide .workThumb {
    aspect-ratio: 2/1;
  }
}
/*# sourceMappingURL=usa_040.css.map */