@charset "UTF-8";
/* CSS INFORMATION =====================================================
File name : movie.css
Description : 動画
===================================================================== */
/* ========================================================
    movie
======================================================== */
.movie {
  position: relative;
  width: 100%;
  padding: 12rem 0 16rem 0;
}
@media screen and (min-width: 768px) {
  .movie {
    padding: 9rem 0 12rem 0;
  }
}
.movie_ttl {
  position: relative;
  width: 100%;
  padding: 0;
  text-align: center;
}
.movie_ttl > h2 {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  flex-wrap: nowrap;
  width: auto;
  margin: 4rem 0;
}
@media screen and (min-width: 768px) {
  .movie_ttl > h2 {
    margin: 2.5rem 0;
  }
}
.movie_ttl > h2::before {
  content: "";
  position: absolute;
  left: calc(50% - 27.5rem);
  top: calc(50% - 10.3rem);
  display: block;
  width: 55rem;
  aspect-ratio: 550/206;
  background-image: url(../images/movie/movie_bg01.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% 100%;
}
@media screen and (min-width: 768px) {
  .movie_ttl > h2::before {
    left: calc(50% - 20.5rem);
    top: calc(50% - 7.7rem);
    width: 41rem;
  }
}
.movie_ttl > h2 > em {
  position: relative;
  color: #000000;
  font-family: "Goudy Bookletter 1911", serif;
  font-size: 7rem;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .movie_ttl > h2 > em {
    font-size: 6rem;
  }
}
.movie_ttl > h2 > span {
  position: relative;
  color: #060203;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .movie_ttl > h2 > span {
    font-size: 2rem;
  }
}
.movie_ttl > h2 > span > span {
  font-family: "Shippori Mincho", serif;
}
.movie_column {
  position: relative;
  width: 90.7692307692%;
  margin: 8rem auto 0 auto;
}
@media screen and (min-width: 768px) {
  .movie_column {
    width: 100%;
    margin: 6rem auto 0 auto;
  }
}
.movie_column + .movie_column {
  margin-top: 12rem;
}
.movie_subttl {
  position: relative;
  width: 93.2203389831%;
  margin: 0 auto;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .movie_subttl {
    width: 60%;
  }
}
.movie_subttl::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 1.6rem;
  aspect-ratio: 18/66;
  background-image: url(../images/common/common_bg04.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% 100%;
  transform: translateY(-50%) scale(-1, 1);
}
@media screen and (min-width: 768px) {
  .movie_subttl::before {
    width: 1.4rem;
  }
}
.movie_subttl::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  display: block;
  width: 1.6rem;
  aspect-ratio: 18/66;
  background-image: url(../images/common/common_bg04.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% 100%;
  transform: translateY(-50%) scale(1, 1);
}
@media screen and (min-width: 768px) {
  .movie_subttl::after {
    width: 1.4rem;
  }
}
.movie_subttl > span {
  color: #cb002e;
  font-size: 3.2rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .movie_subttl > span {
    font-size: 3rem;
  }
}
.movie_list {
  position: relative;
  width: 100%;
  margin: 6rem auto 0 auto;
  padding: 0;
  opacity: 0;
}
.movie_list.movie_list_top {
  padding: 0 0 6rem 0;
  border-bottom: 1px solid #000000;
  opacity: 1;
}
@media screen and (min-width: 768px) {
  .movie_list.movie_list_top {
    padding: 0 10% 6rem 10%;
  }
}
.movie_list.slick-initialized.slick-slider {
  width: 127.1186440678%;
  margin-left: -13.5593220339%;
  margin-right: -13.5593220339%;
  opacity: 1;
}
@media screen and (min-width: 768px) {
  .movie_list.slick-initialized.slick-slider {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}
.movie_list.slick-initialized.slick-slider .slick-slide {
  width: 41rem;
  margin: 0 2.5rem;
}
@media screen and (min-width: 768px) {
  .movie_list.slick-initialized.slick-slider .slick-slide {
    width: 30.4rem;
    margin: 0 2.2rem;
  }
}
.movie_list.slick-initialized.slick-slider .prev {
  position: absolute;
  left: 2.5rem;
  top: 9rem;
  display: block;
  width: 5rem;
  aspect-ratio: 1/1;
  background-image: url(../images/common/arrow_bg02.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% 100%;
  transform: scale(-1, 1);
  transition: 0.3s ease;
  z-index: 1;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .movie_list.slick-initialized.slick-slider .prev {
    left: -3rem;
    top: 6.75rem;
    width: 3.6rem;
  }
}
@media screen and (min-width: 768px) {
  .movie_list.slick-initialized.slick-slider .prev:hover {
    left: -4rem;
  }
}
.movie_list.slick-initialized.slick-slider .prev.slick-disabled {
  display: none !important;
}
.movie_list.slick-initialized.slick-slider .next {
  position: absolute;
  right: 2.5rem;
  top: 9rem;
  display: block;
  width: 5rem;
  aspect-ratio: 1/1;
  background-image: url(../images/common/arrow_bg02.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% 100%;
  transform: scale(1, 1);
  transition: 0.3s ease;
  z-index: 1;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .movie_list.slick-initialized.slick-slider .next {
    right: -3rem;
    top: 6.75rem;
    width: 3.6rem;
  }
}
@media screen and (min-width: 768px) {
  .movie_list.slick-initialized.slick-slider .next:hover {
    right: -4rem;
  }
}
.movie_list.slick-initialized.slick-slider .next.slick-disabled {
  display: none !important;
}
.movie_list li > a {
  display: block;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .movie_list li > a:hover {
    opacity: 1;
  }
}
@media screen and (min-width: 768px) {
  .movie_list li > a:hover .movie_item > figure {
    filter: drop-shadow(0 0.5em 0.5em rgba(203, 0, 46, 0.3));
  }
}
@media screen and (min-width: 768px) {
  .movie_list li > a:hover .movie_item > figure::before {
    background-image: url(../images/common/icon_play_h.png);
  }
}
.movie_item {
  position: relative;
  width: 100%;
}
.movie_item > figure {
  position: relative;
  width: 100%;
  filter: drop-shadow(0 0.5em 0.5em rgba(92, 118, 133, 0.3));
}
.movie_item > figure::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  display: block;
  width: 15%;
  aspect-ratio: 96/95;
  background-image: url(../images/common/icon_play.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% 100%;
  transform: translate(-50%, -50%);
  transition: 0.3s ease;
}
.movie_item > dl {
  position: relative;
  width: 100%;
  margin-top: 3rem;
}
@media screen and (min-width: 768px) {
  .movie_item > dl {
    margin-top: 2rem;
  }
}
.movie_item > dl > dt {
  width: 100%;
  color: #cb002e;
  font-family: "Goudy Bookletter 1911", serif;
  font-size: 3rem;
}
@media screen and (min-width: 768px) {
  .movie_item > dl > dt {
    font-size: 2rem;
  }
}
.movie_item > dl > dd {
  width: 100%;
  font-weight: 500;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  overflow: hidden;
  -webkit-box-orient: vertical;
}

main:has(+ .footer .pagetop:first-child) section.movie {
  padding-bottom: 34rem;
}
@media screen and (min-width: 768px) {
  main:has(+ .footer .pagetop:first-child) section.movie {
    padding-bottom: 18rem;
  }
}/*# sourceMappingURL=movie.css.map */