@charset "utf-8";
/* CSS Document */
.movie_list {
      display: flex;
      gap: 2em 3%;
      flex-wrap: wrap;
}
.movie_list > li {
      background: #fff;
      width: 31.3%;
      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}
.movie_list > li .text_box {
      padding: 1em;
}
@media screen and (max-width: 960px) {
      .movie_list {
            gap: 2em 2%
      }
      .movie_list > li {
            width: 32%;
      }
}
@media screen and (max-width: 680px) {
      .movie_list {
            width: 90%;
            margin: auto;
            display: block;
      }
      .movie_list > li {
            margin-bottom: 2em;
            width: auto;
      }
}
.movie_title {
      color: #209cff;
      font-size: 1.7rem;
      font-weight: bold;
}
.movie_date {
      font-size: 1.4rem;
      margin-top: 1.5em;
      display: flex;
      justify-content: space-between;
      align-items: center;
}
.movie_time {
      padding: 0.5em;
      background: #efefef;
}
@media screen and (max-width: 680px) {
      .movie_date {
            font-size: 1.4rem;
      }
}
/*movie*/
.movie_box a {
      position: relative;
      display: block;
      width: 100%;
      z-index: 0;
}
.movie_box .img:before, .movie_box .img:after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      z-index: 2;
      transition: all 0.2s ease;
}
.movie_box .img {
      font-size: 1.4rem;
      position: relative;
}
.movie_box .img:before {
      border-radius: 500px;
      aspect-ratio: 1;
      background: rgba(74, 144, 226, 0.9);
      width: 5.5em;
}
.movie_box .img:after {
      width: 1em;
      aspect-ratio: 1.5/1;
      z-index: 2;
      border: 1.1em solid transparent;
      border-left: 1.5em solid #fff;
      box-sizing: border-box;
      left: calc(50% + 0.8em);
}
.movie_box .img.movie_box .img mg {
      aspect-ratio: 16/9;
      height: 30em;
}
.movie_box .img img {
      width: 100%;
      object-fit: cover;
      object-position: center;
}
@media screen and (max-width: 960px) {
      .movie_box .img {
            font-size: 1.0rem;
      }
}
@media screen and (max-width: 680px) {
      .movie_box .img {
            font-size: 1.2rem;
      }
}
.movie_box span {
      display: block;
      position: relative;
}
.movie_box span:before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: #4F4F4F;
      mix-blend-mode: multiply;
      transition: all 0.2s ease;
}
.movie_box .img span {
      width: 100%;
      aspect-ratio: 16/9;
}
@media screen and (min-width: 961px) and (hover: hover), print {
      .movie_list > li:hover .text_box .movie_title {
            text-decoration: underline;
      }
      .movie_list > li:hover .movie_box .img:before {
            box-shadow: 0 4px 20px rgba(255, 255, 255, 0.3);
      }
      .movie_list > li:hover .movie_box .img:before, .movie_list > li:hover .movie_box .img:after {
            transform: translate(-50%, -50%) scale(1.1);
      }
}
/*movie*/
.youtube-player-container {
      display: none;
}
.html5-player-container {
      display: none;
}
#video-popup {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.8);
      z-index: 9999;
}
#video-popup .popup_w {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 95%;
      max-width: 800px;
      background-color: #000;
      border-radius: 5px;
      box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}
#close-popup {
      position: absolute;
      top: -35px;
      right: -35px;
      width: 30px;
      height: 30px;
      background: none;
      border: none;
      color: white;
      font-size: 24px;
      cursor: pointer;
      z-index: 10000;
}
@media screen and (max-width: 680px) {
	#close-popup {
      position: absolute;
      top: -40px;
      right: 0px;
}
	
	
}
#youtube-player-container, #html5-player-container {
      position: relative;
      width: 100%;
      padding-top: 56.25%; /* 16:9 アスペクト比 */
}
#youtube-player {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
}
#html5-player {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: #000;
}