@media screen and (min-width: 769px) {
  .movie_header .only-sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .movie_header .only-pc {
    display: none !important;
  }
}
.movie_header .hover-opacity a,
.movie_header .hover-opacity button,
.movie_header .hover-opacity label {
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .movie_header .hover-opacity a:hover,
  .movie_header .hover-opacity button:hover,
  .movie_header .hover-opacity label:hover {
    opacity: 0.6;
  }
}
@media (hover: none) {
  .movie_header .hover-opacity a:active,
  .movie_header .hover-opacity button:active,
  .movie_header .hover-opacity label:active {
    opacity: 0.6;
  }
}
@media (hover: hover) {
  .movie_header .hover-write a:hover span,
  .movie_header .hover-write button:hover span,
  .movie_header .hover-write label:hover span {
    background-size: 100% 1px;
  }
}
@media (hover: none) {
  .movie_header .hover-write a:active span,
  .movie_header .hover-write button:active span,
  .movie_header .hover-write label:active span {
    background-size: 100% 1px;
  }
}
.movie_header .hover-write a span,
.movie_header .hover-write button span,
.movie_header .hover-write label span {
  position: relative;
  background: linear-gradient(#231815) no-repeat left bottom/0% 1px;
  transition: background-size 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .movie_header .hover-rewrite a:hover span::before,
  .movie_header .hover-rewrite button:hover span::before,
  .movie_header .hover-rewrite label:hover span::before {
    animation: rewrite-after 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) forwards;
  }
}
@media (hover: none) {
  .movie_header .hover-rewrite a:active span::before,
  .movie_header .hover-rewrite button:active span::before,
  .movie_header .hover-rewrite label:active span::before {
    animation: rewrite-after 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) forwards;
  }
}
.movie_header .hover-rewrite a span,
.movie_header .hover-rewrite button span,
.movie_header .hover-rewrite label span {
  position: relative;
}
.movie_header .hover-rewrite a span::before,
.movie_header .hover-rewrite button span::before,
.movie_header .hover-rewrite label span::before {
  display: block;
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background-color: #231815;
}
@keyframes rewrite-after {
  0% {
    scale: 1;
    transform-origin: right center;
  }
  50% {
    scale: 0 1;
    transform-origin: right center;
  }
  50.000001% {
    scale: 0 1;
    transform-origin: left center;
  }
  100% {
    scale: 1;
    transform-origin: left center;
  }
}
@media (hover: hover) {
  .movie_header a:has(.hover-arrow):hover .hover-arrow::before {
    animation: translate-back 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) forwards;
  }
}
@media (hover: none) {
  .movie_header a:has(.hover-arrow):active .hover-arrow::before {
    animation: translate-back 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) forwards;
  }
}
.movie_header a:has(.hover-arrow) .hover-arrow {
  display: block;
  overflow: hidden;
}
.movie_header a:has(.hover-arrow) .hover-arrow::before {
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  -webkit-mask: url("/assets/img/common/arw.svg") no-repeat center/contain;
          mask: url("/assets/img/common/arw.svg") no-repeat center/contain;
  will-change: translate;
}
@media (hover: hover) {
  .movie_header .hover-image a:hover figure img,
  .movie_header .hover-image button:hover figure img,
  .movie_header .hover-image label:hover figure img {
    scale: 1.08;
  }
}
@media (hover: none) {
  .movie_header .hover-image a:active figure img,
  .movie_header .hover-image button:active figure img,
  .movie_header .hover-image label:active figure img {
    scale: 1.08;
  }
}
.movie_header .hover-image a figure,
.movie_header .hover-image button figure,
.movie_header .hover-image label figure {
  overflow: hidden;
}
.movie_header .hover-image a figure img,
.movie_header .hover-image button figure img,
.movie_header .hover-image label figure img {
  transition: scale 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: scale;
}
.movie_header .hover-black-button a,
.movie_header .hover-black-button button,
.movie_header .hover-black-button label {
  transition: border-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .movie_header .hover-black-button a:hover,
  .movie_header .hover-black-button button:hover,
  .movie_header .hover-black-button label:hover {
    background-color: #fff !important;
    color: #231815 !important;
  }
  .movie_header .hover-black-button a:hover::before, .movie_header .hover-black-button a:hover::after,
  .movie_header .hover-black-button button:hover::before,
  .movie_header .hover-black-button button:hover::after,
  .movie_header .hover-black-button label:hover::before,
  .movie_header .hover-black-button label:hover::after {
    background-color: #231815 !important;
  }
}
@media (hover: none) {
  .movie_header .hover-black-button a:active,
  .movie_header .hover-black-button button:active,
  .movie_header .hover-black-button label:active {
    background-color: #fff !important;
    color: #231815 !important;
  }
  .movie_header .hover-black-button a:active::before, .movie_header .hover-black-button a:active::after,
  .movie_header .hover-black-button button:active::before,
  .movie_header .hover-black-button button:active::after,
  .movie_header .hover-black-button label:active::before,
  .movie_header .hover-black-button label:active::after {
    background-color: #231815 !important;
  }
}
.movie_header .hover-black-button a::before, .movie_header .hover-black-button a::after,
.movie_header .hover-black-button button::before,
.movie_header .hover-black-button button::after,
.movie_header .hover-black-button label::before,
.movie_header .hover-black-button label::after {
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.movie_header .hover-white-button a,
.movie_header .hover-white-button button,
.movie_header .hover-white-button label {
  transition: border-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .movie_header .hover-white-button a:hover,
  .movie_header .hover-white-button button:hover,
  .movie_header .hover-white-button label:hover {
    border-color: #231815 !important;
    background-color: #231815 !important;
    color: #fff !important;
  }
  .movie_header .hover-white-button a:hover::before, .movie_header .hover-white-button a:hover::after,
  .movie_header .hover-white-button button:hover::before,
  .movie_header .hover-white-button button:hover::after,
  .movie_header .hover-white-button label:hover::before,
  .movie_header .hover-white-button label:hover::after {
    background-color: #fff !important;
  }
}
@media (hover: none) {
  .movie_header .hover-white-button a:active,
  .movie_header .hover-white-button button:active,
  .movie_header .hover-white-button label:active {
    border-color: #231815 !important;
    background-color: #231815 !important;
    color: #fff !important;
  }
  .movie_header .hover-white-button a:active::before, .movie_header .hover-white-button a:active::after,
  .movie_header .hover-white-button button:active::before,
  .movie_header .hover-white-button button:active::after,
  .movie_header .hover-white-button label:active::before,
  .movie_header .hover-white-button label:active::after {
    background-color: #fff !important;
  }
}
.movie_header .hover-white-button a::before, .movie_header .hover-white-button a::after,
.movie_header .hover-white-button button::before,
.movie_header .hover-white-button button::after,
.movie_header .hover-white-button label::before,
.movie_header .hover-white-button label::after {
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@keyframes translate-back {
  0% {
    translate: 0;
  }
  50% {
    translate: 100% 0;
  }
  50.000001% {
    translate: -100% 0;
  }
  100% {
    translate: 0;
  }
}
.movie_header .tips__nav__list.-fixed {
  top: 80px;
}
@media screen and (max-width: 768px) {
  .movie_header .tips__nav__list.-fixed {
    top: 62px;
  }
}
.movie_header .component-breadcrumb {
  /*
    Josh's Custom CSS Reset
    https://www.joshwcomeau.com/css/custom-css-reset/
  */
  width: 100%;
  max-width: calc(120 * var(--rem));
  margin-left: auto;
  margin-right: auto;
  line-height: 1;
  margin-top: calc(3.8 * var(--rem));
}
@media screen and (min-width: 769px) {
  .movie_header .component-breadcrumb .only-sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .movie_header .component-breadcrumb .only-pc {
    display: none !important;
  }
}
.movie_header .component-breadcrumb .hover-opacity a,
.movie_header .component-breadcrumb .hover-opacity button,
.movie_header .component-breadcrumb .hover-opacity label {
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .movie_header .component-breadcrumb .hover-opacity a:hover,
  .movie_header .component-breadcrumb .hover-opacity button:hover,
  .movie_header .component-breadcrumb .hover-opacity label:hover {
    opacity: 0.6;
  }
}
@media (hover: none) {
  .movie_header .component-breadcrumb .hover-opacity a:active,
  .movie_header .component-breadcrumb .hover-opacity button:active,
  .movie_header .component-breadcrumb .hover-opacity label:active {
    opacity: 0.6;
  }
}
@media (hover: hover) {
  .movie_header .component-breadcrumb .hover-write a:hover span,
  .movie_header .component-breadcrumb .hover-write button:hover span,
  .movie_header .component-breadcrumb .hover-write label:hover span {
    background-size: 100% 1px;
  }
}
@media (hover: none) {
  .movie_header .component-breadcrumb .hover-write a:active span,
  .movie_header .component-breadcrumb .hover-write button:active span,
  .movie_header .component-breadcrumb .hover-write label:active span {
    background-size: 100% 1px;
  }
}
.movie_header .component-breadcrumb .hover-write a span,
.movie_header .component-breadcrumb .hover-write button span,
.movie_header .component-breadcrumb .hover-write label span {
  position: relative;
  background: linear-gradient(#231815) no-repeat left bottom/0% 1px;
  transition: background-size 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .movie_header .component-breadcrumb .hover-rewrite a:hover span::before,
  .movie_header .component-breadcrumb .hover-rewrite button:hover span::before,
  .movie_header .component-breadcrumb .hover-rewrite label:hover span::before {
    animation: rewrite-after 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) forwards;
  }
}
@media (hover: none) {
  .movie_header .component-breadcrumb .hover-rewrite a:active span::before,
  .movie_header .component-breadcrumb .hover-rewrite button:active span::before,
  .movie_header .component-breadcrumb .hover-rewrite label:active span::before {
    animation: rewrite-after 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) forwards;
  }
}
.movie_header .component-breadcrumb .hover-rewrite a span,
.movie_header .component-breadcrumb .hover-rewrite button span,
.movie_header .component-breadcrumb .hover-rewrite label span {
  position: relative;
}
.movie_header .component-breadcrumb .hover-rewrite a span::before,
.movie_header .component-breadcrumb .hover-rewrite button span::before,
.movie_header .component-breadcrumb .hover-rewrite label span::before {
  display: block;
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background-color: #231815;
}
@keyframes rewrite-after {
  0% {
    scale: 1;
    transform-origin: right center;
  }
  50% {
    scale: 0 1;
    transform-origin: right center;
  }
  50.000001% {
    scale: 0 1;
    transform-origin: left center;
  }
  100% {
    scale: 1;
    transform-origin: left center;
  }
}
@media (hover: hover) {
  .movie_header .component-breadcrumb a:has(.hover-arrow):hover .hover-arrow::before {
    animation: translate-back 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) forwards;
  }
}
@media (hover: none) {
  .movie_header .component-breadcrumb a:has(.hover-arrow):active .hover-arrow::before {
    animation: translate-back 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) forwards;
  }
}
.movie_header .component-breadcrumb a:has(.hover-arrow) .hover-arrow {
  display: block;
  overflow: hidden;
}
.movie_header .component-breadcrumb a:has(.hover-arrow) .hover-arrow::before {
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  -webkit-mask: url("/assets/img/common/arw.svg") no-repeat center/contain;
          mask: url("/assets/img/common/arw.svg") no-repeat center/contain;
  will-change: translate;
}
@media (hover: hover) {
  .movie_header .component-breadcrumb .hover-image a:hover figure img,
  .movie_header .component-breadcrumb .hover-image button:hover figure img,
  .movie_header .component-breadcrumb .hover-image label:hover figure img {
    scale: 1.08;
  }
}
@media (hover: none) {
  .movie_header .component-breadcrumb .hover-image a:active figure img,
  .movie_header .component-breadcrumb .hover-image button:active figure img,
  .movie_header .component-breadcrumb .hover-image label:active figure img {
    scale: 1.08;
  }
}
.movie_header .component-breadcrumb .hover-image a figure,
.movie_header .component-breadcrumb .hover-image button figure,
.movie_header .component-breadcrumb .hover-image label figure {
  overflow: hidden;
}
.movie_header .component-breadcrumb .hover-image a figure img,
.movie_header .component-breadcrumb .hover-image button figure img,
.movie_header .component-breadcrumb .hover-image label figure img {
  transition: scale 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: scale;
}
.movie_header .component-breadcrumb .hover-black-button a,
.movie_header .component-breadcrumb .hover-black-button button,
.movie_header .component-breadcrumb .hover-black-button label {
  transition: border-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .movie_header .component-breadcrumb .hover-black-button a:hover,
  .movie_header .component-breadcrumb .hover-black-button button:hover,
  .movie_header .component-breadcrumb .hover-black-button label:hover {
    background-color: #fff !important;
    color: #231815 !important;
  }
  .movie_header .component-breadcrumb .hover-black-button a:hover::before, .movie_header .component-breadcrumb .hover-black-button a:hover::after,
  .movie_header .component-breadcrumb .hover-black-button button:hover::before,
  .movie_header .component-breadcrumb .hover-black-button button:hover::after,
  .movie_header .component-breadcrumb .hover-black-button label:hover::before,
  .movie_header .component-breadcrumb .hover-black-button label:hover::after {
    background-color: #231815 !important;
  }
}
@media (hover: none) {
  .movie_header .component-breadcrumb .hover-black-button a:active,
  .movie_header .component-breadcrumb .hover-black-button button:active,
  .movie_header .component-breadcrumb .hover-black-button label:active {
    background-color: #fff !important;
    color: #231815 !important;
  }
  .movie_header .component-breadcrumb .hover-black-button a:active::before, .movie_header .component-breadcrumb .hover-black-button a:active::after,
  .movie_header .component-breadcrumb .hover-black-button button:active::before,
  .movie_header .component-breadcrumb .hover-black-button button:active::after,
  .movie_header .component-breadcrumb .hover-black-button label:active::before,
  .movie_header .component-breadcrumb .hover-black-button label:active::after {
    background-color: #231815 !important;
  }
}
.movie_header .component-breadcrumb .hover-black-button a::before, .movie_header .component-breadcrumb .hover-black-button a::after,
.movie_header .component-breadcrumb .hover-black-button button::before,
.movie_header .component-breadcrumb .hover-black-button button::after,
.movie_header .component-breadcrumb .hover-black-button label::before,
.movie_header .component-breadcrumb .hover-black-button label::after {
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.movie_header .component-breadcrumb .hover-white-button a,
.movie_header .component-breadcrumb .hover-white-button button,
.movie_header .component-breadcrumb .hover-white-button label {
  transition: border-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .movie_header .component-breadcrumb .hover-white-button a:hover,
  .movie_header .component-breadcrumb .hover-white-button button:hover,
  .movie_header .component-breadcrumb .hover-white-button label:hover {
    border-color: #231815 !important;
    background-color: #231815 !important;
    color: #fff !important;
  }
  .movie_header .component-breadcrumb .hover-white-button a:hover::before, .movie_header .component-breadcrumb .hover-white-button a:hover::after,
  .movie_header .component-breadcrumb .hover-white-button button:hover::before,
  .movie_header .component-breadcrumb .hover-white-button button:hover::after,
  .movie_header .component-breadcrumb .hover-white-button label:hover::before,
  .movie_header .component-breadcrumb .hover-white-button label:hover::after {
    background-color: #fff !important;
  }
}
@media (hover: none) {
  .movie_header .component-breadcrumb .hover-white-button a:active,
  .movie_header .component-breadcrumb .hover-white-button button:active,
  .movie_header .component-breadcrumb .hover-white-button label:active {
    border-color: #231815 !important;
    background-color: #231815 !important;
    color: #fff !important;
  }
  .movie_header .component-breadcrumb .hover-white-button a:active::before, .movie_header .component-breadcrumb .hover-white-button a:active::after,
  .movie_header .component-breadcrumb .hover-white-button button:active::before,
  .movie_header .component-breadcrumb .hover-white-button button:active::after,
  .movie_header .component-breadcrumb .hover-white-button label:active::before,
  .movie_header .component-breadcrumb .hover-white-button label:active::after {
    background-color: #fff !important;
  }
}
.movie_header .component-breadcrumb .hover-white-button a::before, .movie_header .component-breadcrumb .hover-white-button a::after,
.movie_header .component-breadcrumb .hover-white-button button::before,
.movie_header .component-breadcrumb .hover-white-button button::after,
.movie_header .component-breadcrumb .hover-white-button label::before,
.movie_header .component-breadcrumb .hover-white-button label::after {
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@keyframes translate-back {
  0% {
    translate: 0;
  }
  50% {
    translate: 100% 0;
  }
  50.000001% {
    translate: -100% 0;
  }
  100% {
    translate: 0;
  }
}
.movie_header .component-breadcrumb .tips__nav__list.-fixed {
  top: 80px;
}
@media screen and (max-width: 768px) {
  .movie_header .component-breadcrumb .tips__nav__list.-fixed {
    top: 62px;
  }
}
.movie_header .component-breadcrumb *,
.movie_header .component-breadcrumb *::before,
.movie_header .component-breadcrumb *::after {
  box-sizing: border-box;
}
.movie_header .component-breadcrumb * {
  margin: 0;
}
.movie_header .component-breadcrumb body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
.movie_header .component-breadcrumb img,
.movie_header .component-breadcrumb picture,
.movie_header .component-breadcrumb video,
.movie_header .component-breadcrumb canvas,
.movie_header .component-breadcrumb svg {
  display: block;
  max-width: 100%;
}
.movie_header .component-breadcrumb input,
.movie_header .component-breadcrumb button,
.movie_header .component-breadcrumb textarea,
.movie_header .component-breadcrumb select {
  font: inherit;
}
.movie_header .component-breadcrumb p,
.movie_header .component-breadcrumb h1,
.movie_header .component-breadcrumb h2,
.movie_header .component-breadcrumb h3,
.movie_header .component-breadcrumb h4,
.movie_header .component-breadcrumb h5,
.movie_header .component-breadcrumb h6 {
  overflow-wrap: break-word;
}
.movie_header .component-breadcrumb #root,
.movie_header .component-breadcrumb #__next {
  isolation: isolate;
}
.movie_header .component-breadcrumb * {
  letter-spacing: 0.1em;
}
.movie_header .component-breadcrumb *:not(:has(a)) {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  cursor: default;
}
.movie_header .component-breadcrumb a,
.movie_header .component-breadcrumb button {
  -webkit-user-select: auto !important;
  -moz-user-select: auto !important;
  user-select: auto !important;
  cursor: pointer !important;
}
.movie_header .component-breadcrumb a *,
.movie_header .component-breadcrumb button * {
  -webkit-user-select: auto !important;
  -moz-user-select: auto !important;
  user-select: auto !important;
  cursor: pointer !important;
}
.movie_header .component-breadcrumb h1,
.movie_header .component-breadcrumb h2,
.movie_header .component-breadcrumb h3,
.movie_header .component-breadcrumb h4,
.movie_header .component-breadcrumb h5,
.movie_header .component-breadcrumb h6 {
  font-size: inherit;
  font-weight: inherit;
}
.movie_header .component-breadcrumb ul,
.movie_header .component-breadcrumb ol {
  list-style: none;
  padding: 0;
  margin: 0;
}
.movie_header .component-breadcrumb a {
  color: #231815;
  text-decoration: none;
}
.movie_header .component-breadcrumb em {
  font-style: normal;
}
.movie_header .component-breadcrumb sup {
  font-size: 0.5em;
}
.movie_header .component-breadcrumb img,
.movie_header .component-breadcrumb picture,
.movie_header .component-breadcrumb video,
.movie_header .component-breadcrumb canvas,
.movie_header .component-breadcrumb svg {
  height: auto;
}
.movie_header .component-breadcrumb svg {
  overflow: visible;
}
.movie_header .component-breadcrumb img,
.movie_header .component-breadcrumb iframe,
.movie_header .component-breadcrumb video {
  display: block;
  width: 100%;
  height: auto;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  pointer-events: auto;
}
.movie_header .component-breadcrumb picture {
  display: contents;
}
.movie_header .component-breadcrumb button {
  padding: 0;
  border: none;
  background-color: transparent;
  color: inherit;
  touch-action: manipulation;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .movie_header .component-breadcrumb {
    width: auto;
    margin-top: calc(1.6 * var(--rem));
    padding-right: calc(2 * var(--rem));
    padding-left: calc(2 * var(--rem));
  }
}
.movie_header .component-breadcrumb .component-breadcrumb-links {
  display: flex;
}
.movie_header .component-breadcrumb .component-breadcrumb-links__item:not(:has(a)), .movie_header .component-breadcrumb .component-breadcrumb-links__item a span {
  display: flex;
  align-items: center;
  font-size: calc(1.2 * var(--rem));
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .movie_header .component-breadcrumb .component-breadcrumb-links__item:not(:has(a)), .movie_header .component-breadcrumb .component-breadcrumb-links__item a span {
    font-size: calc(1 * var(--rem));
  }
}
.movie_header .component-breadcrumb .component-breadcrumb-links__item {
  display: flex;
  align-items: center;
}
.movie_header .component-breadcrumb .component-breadcrumb-links__item a span {
  padding: calc(0.2 * var(--rem)) 0;
  color: #898989;
  transition: background-size 0.3s cubic-bezier(0.39, 0.575, 0.565, 1), color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (hover: hover) {
  .movie_header .component-breadcrumb .component-breadcrumb-links__item a span:hover {
    color: #231815;
  }
}
@media (hover: none) {
  .movie_header .component-breadcrumb .component-breadcrumb-links__item a span:active {
    color: #231815;
  }
}
.movie_header .component-breadcrumb .component-breadcrumb-links__item:nth-of-type(n + 2)::before {
  margin: 0 calc(1.2 * var(--rem));
  content: "/";
}
@media screen and (max-width: 768px) {
  .movie_header .component-breadcrumb .component-breadcrumb-links__item:nth-of-type(n + 2)::before {
    margin: 0 calc(1 * var(--rem));
  }
}
.movie_header .component-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1), visibility 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
}
.movie_header .component-modal:has(.component-modal__content.is-modal-active) {
  opacity: 1;
  visibility: visible;
}
.movie_header .component-modal__overlay {
  position: absolute;
  inset: 0;
  z-index: -1;
  background-color: #231815;
  opacity: 0.3;
}
.movie_header .component-modal__wrapper {
  position: absolute;
  inset: 0;
  overflow: auto;
  pointer-events: none;
}
.movie_header .component-modal__inner {
  display: flex;
  align-items: center;
  position: relative;
  min-height: 100%;
  padding: calc(11 * var(--rem)) 0;
}
@media screen and (max-width: 768px) {
  .movie_header .component-modal__inner {
    padding: calc(8 * var(--rem)) calc(2 * var(--rem));
  }
}
.movie_header .component-modal__inner > * {
  pointer-events: auto;
}
.movie_header .component-modal__close {
  position: absolute;
  top: calc(-4 * var(--rem));
  right: 0;
}
.movie_header .component-modal__close button {
  width: calc(2 * var(--rem));
  height: calc(2 * var(--rem));
  display: block;
  position: relative;
}
.movie_header .component-modal__close button::before, .movie_header .component-modal__close button::after {
  display: block;
  width: calc(2.5 * var(--rem));
  height: calc(0.2 * var(--rem));
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  border-radius: calc(0.2 * var(--rem));
  background-color: #fff;
  transition: translate 0.3s cubic-bezier(0.39, 0.575, 0.565, 1), rotate 0.3s cubic-bezier(0.39, 0.575, 0.565, 1), background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: translate, scale;
}
.movie_header .component-modal__close button::before {
  rotate: -45deg;
}
.movie_header .component-modal__close button::after {
  rotate: 45deg;
}
.movie_header .component-modal__content {
  width: 100%;
  max-width: calc(96 * var(--rem));
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.movie_header .component-modal__movie iframe {
  aspect-ratio: 16/9;
}
@media screen and (max-width: 768px) {
  .movie_header .component-modal__movie--responsive iframe {
    aspect-ratio: 9/16;
  }
}
.movie_header .component-partial {
  /*
    Josh's Custom CSS Reset
    https://www.joshwcomeau.com/css/custom-css-reset/
  */
  font-weight: 400;
  font-size: calc(1.4 * var(--rem));
  line-height: 1.8571428571;
  letter-spacing: 0.1em;
  font-family: Yakuhanjp, "Noto Sans JP", sans-serif;
  text-align: justify;
  word-break: break-all;
  font-feature-settings: "palt" 1;
  font-optical-sizing: auto;
}
.movie_header .component-partial *,
.movie_header .component-partial *::before,
.movie_header .component-partial *::after {
  box-sizing: border-box;
}
.movie_header .component-partial * {
  margin: 0;
}
.movie_header .component-partial body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
.movie_header .component-partial img,
.movie_header .component-partial picture,
.movie_header .component-partial video,
.movie_header .component-partial canvas,
.movie_header .component-partial svg {
  display: block;
  max-width: 100%;
}
.movie_header .component-partial input,
.movie_header .component-partial button,
.movie_header .component-partial textarea,
.movie_header .component-partial select {
  font: inherit;
}
.movie_header .component-partial p,
.movie_header .component-partial h1,
.movie_header .component-partial h2,
.movie_header .component-partial h3,
.movie_header .component-partial h4,
.movie_header .component-partial h5,
.movie_header .component-partial h6 {
  overflow-wrap: break-word;
}
.movie_header .component-partial #root,
.movie_header .component-partial #__next {
  isolation: isolate;
}
.movie_header .component-partial * {
  letter-spacing: 0.1em;
}
.movie_header .component-partial *:not(:has(a)) {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  cursor: default;
}
.movie_header .component-partial a,
.movie_header .component-partial button {
  -webkit-user-select: auto !important;
  -moz-user-select: auto !important;
  user-select: auto !important;
  cursor: pointer !important;
}
.movie_header .component-partial a *,
.movie_header .component-partial button * {
  -webkit-user-select: auto !important;
  -moz-user-select: auto !important;
  user-select: auto !important;
  cursor: pointer !important;
}
.movie_header .component-partial h1,
.movie_header .component-partial h2,
.movie_header .component-partial h3,
.movie_header .component-partial h4,
.movie_header .component-partial h5,
.movie_header .component-partial h6 {
  font-size: inherit;
  font-weight: inherit;
}
.movie_header .component-partial ul,
.movie_header .component-partial ol {
  list-style: none;
  padding: 0;
  margin: 0;
}
.movie_header .component-partial a {
  color: #231815;
  text-decoration: none;
}
.movie_header .component-partial em {
  font-style: normal;
}
.movie_header .component-partial sup {
  font-size: 0.5em;
}
.movie_header .component-partial img,
.movie_header .component-partial picture,
.movie_header .component-partial video,
.movie_header .component-partial canvas,
.movie_header .component-partial svg {
  height: auto;
}
.movie_header .component-partial svg {
  overflow: visible;
}
.movie_header .component-partial img,
.movie_header .component-partial iframe,
.movie_header .component-partial video {
  display: block;
  width: 100%;
  height: auto;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  pointer-events: auto;
}
.movie_header .component-partial picture {
  display: contents;
}
.movie_header .component-partial button {
  padding: 0;
  border: none;
  background-color: transparent;
  color: inherit;
  touch-action: manipulation;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .movie_header .component-partial {
    padding-right: 0;
    padding-left: 0;
    font-size: calc(1.2 * var(--rem));
    line-height: 2;
  }
}
.movie_header .section__inner {
  width: 100%;
  max-width: calc(120 * var(--rem));
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .movie_header .section__inner {
    padding-right: calc(2 * var(--rem));
    padding-left: calc(2 * var(--rem));
  }
}
.movie_header .section__link a {
  padding: calc(0.8 * var(--rem)) 0;
  font-size: calc(1.2 * var(--rem));
  letter-spacing: 0.2em;
}
.movie_header .movie_lead h1 {
  font-size: calc(3.8 * var(--rem));
  font-family: "Proxima Nova", sans-serif;
  line-height: 1.2;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 768px) {
  .movie_header .movie_lead h1 {
    font-size: calc(3 * var(--rem));
  }
}