@charset "UTF-8";
/* CSS Document */
/* ==================================================
Mixin
================================================== */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto&display=swap");
/*
 * Easing function
 * Original：http://easings.net/
 */
/* ==================================================
KeyFrames
================================================== */
@-webkit-keyframes fadeIn {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}

@-webkit-keyframes fadeOut {
  0% {
    display: block;
    opacity: 1;
  }
  99% {
    display: block;
    opacity: 0;
  }
  100% {
    display: none;
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    display: block;
    opacity: 1;
  }
  99% {
    display: block;
    opacity: 0;
  }
  100% {
    display: none;
    opacity: 0;
  }
}

@-webkit-keyframes gradient {
  0% {
    background-position: 0 bottom;
  }
  100% {
    background-position: 100% bottom;
  }
}

@keyframes gradient {
  0% {
    background-position: 0 bottom;
  }
  100% {
    background-position: 100% bottom;
  }
}

/* hero */
@media all and (min-width: 751px) {
  .top-hero {
    position: relative;
    min-height: 50.25em;
    height: 100vh;
  }
}

@media screen and (max-width: 750px) {
  .top-hero {
    position: relative;
    min-height: 100vw;
    height: 100vh;
  }
}

@media all and (min-width: 751px) {
  .top-hero-load {
    position: fixed;
    top: 50%;
    left: 50%;
    width: 3em;
    height: 3em;
    transform: translate3d(-50%, -50%, 0);
    z-index: -1;
  }
  .top-hero-load.js-loaded-obj {
    transition: opacity .5s ease;
  }
  .top-hero-load.js-loaded-obj.is-active {
    opacity: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-load {
    position: fixed;
    top: 50%;
    left: 50%;
    width: 3em;
    height: 3em;
    transform: translate3d(-50%, -50%, 0);
    z-index: -1;
  }
  .top-hero-load.js-loaded-obj {
    transition: opacity .5s ease;
  }
  .top-hero-load.js-loaded-obj.is-active {
    opacity: 0;
  }
}

@media all and (min-width: 751px) {
  .top-hero-load__ico span {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-top: 2px solid rgba(255, 255, 255, 0.2);
    border-bottom: 2px solid rgba(255, 255, 255, 0.2);
    border-left: 2px solid rgba(255, 255, 255, 0.2);
    border-right: 2px solid rgba(255, 255, 255, 0.8);
    border-radius: 50%;
    -webkit-animation: loading 1.2s linear infinite;
            animation: loading 1.2s linear infinite;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-load__ico span {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-top: 0.125em solid rgba(255, 255, 255, 0.2);
    border-bottom: 0.125em solid rgba(255, 255, 255, 0.2);
    border-left: 0.125em solid rgba(255, 255, 255, 0.2);
    border-right: 0.125em solid rgba(255, 255, 255, 0.8);
    border-radius: 50%;
    -webkit-animation: loading 1.2s linear infinite;
            animation: loading 1.2s linear infinite;
  }
}

@media all and (min-width: 751px) {
  .top-hero-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
  }
  .top-hero-bg.js-loaded-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-hero-bg.js-loaded-obj.is-active {
    opacity: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
  }
  .top-hero-bg.js-loaded-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-hero-bg.js-loaded-obj.is-active {
    opacity: 1;
  }
}

@media all and (min-width: 751px) {
  .top-hero-bg__label {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 100%;
  }
  .top-hero-bg__label > * {
    position: absolute;
    top: 50%;
    left: 50%;
    height: 132.1875vh !important;
    transform: translate3d(-50%, -50%, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-hero-bg__label {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 100%;
  }
  .top-hero-bg__label > * {
    position: absolute;
    top: 50%;
    left: 50%;
    height: 132.1875vh !important;
    transform: translate3d(-50%, -50%, 0);
  }
}

@media all and (min-width: 751px) {
  .top-hero__inner {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    padding-bottom: 4.1875em;
  }
}

@media screen and (max-width: 750px) {
  .top-hero__inner {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    padding-bottom: 5.625em;
  }
}

@media all and (min-width: 751px) {
  .top-hero-head {
    text-align: center;
  }
  .top-hero-head.js-loaded-obj {
    opacity: 0;
    transition: opacity 1s ease .5s;
  }
  .top-hero-head.js-loaded-obj.is-active {
    opacity: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-head {
    text-align: center;
  }
  .top-hero-head.js-loaded-obj {
    opacity: 0;
    transition: opacity 1s ease .5s;
  }
  .top-hero-head.js-loaded-obj.is-active {
    opacity: 1;
  }
}

@media all and (min-width: 751px) {
  .top-hero-head__label {
    display: inline-block;
    vertical-align: top;
    width: 34.9375em;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-head__label {
    display: inline-block;
    vertical-align: top;
    width: 19.4375em;
  }
}

@media all and (min-width: 751px) {
  .top-hero-head-logo {
    display: block;
    width: 21.875em;
    margin: 0 auto;
    margin-top: 2.8125em;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-head-logo {
    display: block;
    width: 17.4375em;
    margin: 0 auto;
    margin-top: 2em;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-hero-head-logo__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-head-logo__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-hero-body.js-loaded-obj {
    opacity: 0;
    transition: opacity 1s ease .5s;
  }
  .top-hero-body.js-loaded-obj.is-active {
    opacity: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-body.js-loaded-obj {
    opacity: 0;
    transition: opacity 1s ease .5s;
  }
  .top-hero-body.js-loaded-obj.is-active {
    opacity: 1;
  }
}

@media all and (min-width: 751px) {
  .top-hero-movie {
    position: absolute;
    bottom: 0;
    left: 0;
    margin-bottom: 1.5625em;
    margin-left: 2.5em;
    z-index: 1;
  }
  .top-hero-movie a {
    text-decoration: none;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-movie {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    margin-bottom: 1.25em;
    z-index: 1;
  }
  .top-hero-movie a {
    text-decoration: none;
  }
}

@media all and (min-width: 751px) {
  .top-hero-movie-list {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-movie-list {
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
}

@media all and (min-width: 751px) {
  .top-hero-movie-list__item {
    width: 10.625em;
    margin-left: 1.25em;
  }
  .top-hero-movie-list__item:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-movie-list__item {
    width: 9.375em;
    margin-left: 0.9375em;
  }
  .top-hero-movie-list__item:first-child {
    margin-left: 0;
  }
}

@media all and (min-width: 751px) {
  .top-hero-movie-img {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-movie-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-hero-movie-img__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    background: #000;
  }
  .top-hero-movie-img__label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    z-index: 1;
  }
  .top-hero-movie-img__label::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 27.64706%;
    padding-top: 27.64706%;
    background: url("../../assets/img/common/ico_movie_play01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, -50%, 0);
  }
  .top-hero-movie-img__label img {
    transition: opacity .5s ease;
  }
  .top-hero-movie a:hover .top-hero-movie-img__label img {
    opacity: .6;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-movie-img__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    background: #000;
  }
  .top-hero-movie-img__label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.0625em solid #fff;
    z-index: 1;
  }
  .top-hero-movie-img__label::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2.6875em;
    padding-top: 2.6875em;
    background: url("../../assets/img/common/ico_movie_play01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, -50%, 0);
  }
}

@media all and (min-width: 751px) {
  .top-hero-movie-img__caption {
    display: block;
    margin-top: 0.33333em;
    font-size: 0.75em;
    font-family: "Roboto", sans-serif;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-movie-img__caption {
    display: block;
    margin-top: 0.54545em;
    font-size: 0.6875em;
    font-family: "Roboto", sans-serif;
  }
}

@media all and (min-width: 751px) {
  .top-hero-scroll {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    margin-bottom: 1.6875em;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-hero-scroll__label {
    display: inline-block;
    vertical-align: top;
    width: 3.125em;
    transition: opacity .5s ease;
    background: url("../../assets/img/top/ico_hero_scroll01.svg") no-repeat center center;
    background-size: contain;
  }
  .top-hero-scroll__label::before {
    content: '';
    display: block;
    padding-top: 100%;
  }
  .top-hero-scroll a:hover .top-hero-scroll__label {
    opacity: .6;
  }
}

@-webkit-keyframes loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* about */
@media all and (min-width: 751px) {
  .top-about {
    position: relative;
    padding-top: 6.25em;
    padding-bottom: 10.625em;
    background: #000;
  }
}

@media screen and (max-width: 750px) {
  .top-about {
    position: relative;
    padding-top: 3.125em;
    padding-bottom: 3.125em;
    background: #000;
  }
}

@media all and (min-width: 751px) {
  .top-about__inner {
    position: relative;
    max-width: 960px;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
    z-index: 100;
  }
}

@media all and (min-width: 751px) and (max-width: 1024px) {
  .top-about__inner {
    padding-left: 3.75em;
    padding-right: 3.75em;
  }
}

@media screen and (max-width: 750px) {
  .top-about__inner {
    padding-left: 1.875em;
    padding-right: 1.875em;
  }
}

@media all and (min-width: 751px) {
  .top-about-head {
    margin-left: calc(-50vw + 50%);
  }
}

@media screen and (max-width: 750px) {
  .top-about-head {
    margin-left: -1.875em;
  }
}

@media all and (min-width: 751px) {
  .top-about-head__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    max-width: 52.01389vw;
    width: 46.8125em;
  }
  .js-scroll-obj .top-about-head__label {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .js-scroll-obj.is-active .top-about-head__label {
    opacity: 1;
  }
  .top-about-head__label::before {
    content: '';
    display: block;
    padding-top: 30.97463%;
    background: url("../../assets/img/top/ttl_about01.svg") no-repeat center center;
    background-size: contain;
    transition: opacity .5s ease;
  }
  body.is-about-active .top-about-head__label::before {
    opacity: 0;
  }
  .top-about-head__label::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("../../assets/img/top/ttl_about01_on.svg") no-repeat center center;
    background-size: contain;
    opacity: 0;
    transition: opacity .5s ease;
  }
  body.is-about-active .top-about-head__label::after {
    opacity: 1;
  }
}

@media all and (min-width: 751px) and (max-width: 1024px) {
  .top-about-head__label {
    width: 39.01042vw;
  }
}

@media screen and (max-width: 750px) {
  .top-about-head__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 14.0625em;
    margin-left: -0.3125em;
  }
  .js-scroll-obj .top-about-head__label {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .js-scroll-obj.is-active .top-about-head__label {
    opacity: 1;
  }
  .top-about-head__label::before {
    content: '';
    display: block;
    padding-top: 32%;
    background: url("../../assets/img/top/ttl_about01_sp.svg") no-repeat center center;
    background-size: contain;
  }
}

@media all and (min-width: 751px) {
  .top-about-head__label__layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 0.16021%;
    height: 100vw;
    margin-left: 45.26035%;
    transform-origin: center top;
    transform: skew(-32.9deg) translate3d(50%, 0, 0);
    z-index: 1;
  }
  .top-about-head__label__layer span {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    background: #fff;
    transform: translate3d(50%, 0, 0);
    z-index: 1;
    transition: background .5s ease;
  }
  .js-scroll-obj .top-about-head__label__layer span {
    height: 0;
    transition: background .5s ease, height 1s ease .5s;
  }
  .js-scroll-obj.is-active .top-about-head__label__layer span {
    height: 100%;
  }
  body.is-about-active .top-about-head__label__layer span {
    background: #0e0f10;
  }
}

@media screen and (max-width: 750px) {
  .top-about-head__label__layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 0.0625em;
    height: 100vw;
    margin-left: 45.33333%;
    transform-origin: center top;
    transform: skew(-32.9deg) translate3d(50%, 0, 0);
    z-index: 1;
  }
  .top-about-head__label__layer span {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    background: #fff;
    transform: translate3d(50%, 0, 0);
    z-index: 1;
  }
  .js-scroll-obj .top-about-head__label__layer span {
    height: 0;
    transition: height 1s ease .5s;
  }
  .js-scroll-obj.is-active .top-about-head__label__layer span {
    height: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-about-body {
    position: relative;
    margin-top: 6.52174%;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-about-body {
    position: relative;
    margin-top: 2.5em;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-about-lead.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-about-lead.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-about-lead.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-about-lead.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media all and (min-width: 751px) {
  .top-about-lead-txt {
    text-align: center;
    line-height: 3.875;
    font-size: 1em;
    font-family: "Noto Serif", serif;
    transition: all .5s ease;
  }
  body.is-about-active .top-about-lead-txt {
    color: #0e0f10;
    opacity: .06;
  }
}

@media screen and (max-width: 750px) {
  .top-about-lead-txt {
    text-align: center;
    line-height: 2;
    font-size: 0.9375em;
    font-family: "Noto Serif", serif;
  }
}

@media all and (min-width: 751px) {
  .top-about-member {
    margin-top: 4.34783%;
  }
  .top-about-member.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-about-member.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member {
    margin-top: 2.5em;
  }
  .top-about-member.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-about-member.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-head__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding-top: 0.09091em;
    padding-bottom: 0.04545em;
    font-size: 1.375em;
    font-family: "Roboto", sans-serif;
    transition: all .5s ease;
  }
  .top-about-member-head__label::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(100% + 100 / 22 * 1em);
    margin-left: -2.72727em;
    border-top: 1px solid #fff;
    opacity: .6;
    border: all .5s ease;
  }
  .top-about-member-head__label::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: calc(36 / 22 * 1em + 20 / 22 * 1em);
    margin-bottom: -0.90909em;
    margin-left: -1.81818em;
    border-left: 1px solid #fff;
    transform-origin: left bottom;
    transform: skew(-32.9deg);
    opacity: .6;
    border: all .5s ease;
  }
  body.is-about-active .top-about-member-head__label {
    color: #0e0f10;
    opacity: .06;
  }
  body.is-about-active .top-about-member-head__label::before {
    border-top: 1px solid #0e0f10;
  }
  body.is-about-active .top-about-member-head__label::after {
    border-left: 1px solid #0e0f10;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member-head__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding-top: 0.33333em;
    padding-bottom: 0.3em;
    font-size: 0.9375em;
    font-family: "Roboto", sans-serif;
  }
  .top-about-member-head__label::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(100% + 220 / 30 * 1em);
    margin-left: -4em;
    border-top: 0.0625em solid #fff;
    opacity: .6;
  }
  .top-about-member-head__label::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: calc(64 / 30 * 1em + 20 / 30 * 1em);
    margin-bottom: -0.66667em;
    margin-left: -2em;
    border-left: 0.0625em solid #fff;
    transform-origin: left bottom;
    transform: skew(-32.9deg);
    opacity: .6;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-body {
    margin-top: 2.71739%;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member-body {
    margin-top: 0.78125em;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member-list {
    margin-right: -1.875em;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-list__item {
    margin-top: 3.26087%;
  }
  .top-about-member-list__item:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member-list__item {
    margin-top: 1.875em;
  }
  .top-about-member-list__item:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-container {
    position: relative;
  }
  .top-about-member-container::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    border-bottom: 1px solid #fff;
    opacity: .6;
    transition: border .5s ease;
  }
  .top-about-member-container::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: 100%;
    margin-bottom: -0.625em;
    margin-left: 42.82609%;
    border-left: 1px solid #fff;
    transform-origin: left bottom;
    transform: skew(-32.9deg);
    opacity: .6;
    transition: all .5s ease;
  }
  .top-about-member-container a {
    position: relative;
    display: block;
    text-decoration: none;
    z-index: 2;
    transition: all .5s ease;
  }
  body.is-about-active .top-about-member-container a {
    color: #0e0f10;
    opacity: .06;
  }
  body.is-about-active .top-about-member-container::before {
    border-bottom: 1px solid #0e0f10;
    opacity: .06;
  }
  body.is-about-active .top-about-member-container::after {
    border-left: 1px solid #0e0f10;
    opacity: .06;
  }
  .top-about-member-container.is-active {
    z-index: 3;
  }
  .top-about-member-container.is-active::before {
    opacity: 1 !important;
  }
  .top-about-member-container.is-active::after {
    opacity: 1 !important;
  }
  .top-about-member-container.is-active a {
    opacity: 1 !important;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member-container {
    position: relative;
    padding-bottom: 0.625em;
  }
  .top-about-member-container::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    border-bottom: 0.0625em solid #fff;
    opacity: .6;
  }
  .top-about-member-container a {
    text-decoration: none;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-card {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    height: 5.3125em;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-card__parts:first-child {
    width: 9.78261%;
    margin-bottom: -1.08696%;
  }
  .top-about-member-card__parts:nth-child(2) {
    width: 39.13043%;
    padding-bottom: 1.08696%;
    padding-left: 2.17391%;
  }
  .top-about-member-card__parts:last-child {
    width: 51.08696%;
    padding-bottom: 0.54348%;
    padding-left: 1.08696%;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member-card__parts:first-child {
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }
  .top-about-member-card__parts:nth-child(2) {
    margin-top: 0.625em;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-img {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member-img {
    width: 7.25em;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-img__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member-img__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-post__label {
    display: inline-block;
    vertical-align: top;
    line-height: 1.4545454545;
    font-size: 0.6875em;
    font-family: "Noto Serif", serif;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member-post__label {
    display: inline-block;
    vertical-align: top;
    line-height: 1.4545454545;
    font-size: 0.6875em;
    font-family: "Noto Serif", serif;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-name__label {
    display: inline-block;
    vertical-align: top;
    line-height: 1.3333333333;
    font-size: 2.25em;
    font-family: "Roboto", sans-serif;
  }
  .top-about-member-container.is-active .top-about-member-name__label {
    color: #fff;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member-name__label {
    display: inline-block;
    vertical-align: top;
    line-height: 1.3333333333;
    font-size: 1.75em;
    font-family: "Roboto", sans-serif;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(50vw + 50% - 324 / 920 * 100%);
    margin-top: -1.5625em;
    margin-left: 35.21739%;
    overflow: hidden;
    z-index: 1;
    transform-origin: left bottom;
    transform: skew(-32.9deg);
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-about-member-container.is-active .top-about-member-bg {
    opacity: 1;
  }
  .top-about-member-bg::before {
    content: '';
    display: block;
    padding-top: 14.0625em;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-bg__label {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: cover;
    transform-origin: left bottom;
    transform: skew(32.9deg);
    filter: blur(5px);
    transition: filter .5s ease;
  }
  .top-about-member-container.is-active .top-about-member-bg__label {
    filter: blur(0);
  }
}

@media all and (min-width: 751px) {
  .top-about-member-lead {
    position: absolute;
    top: 0;
    left: 0;
    width: 42.06522%;
    height: 14.0625em;
    margin-top: -1.5625em;
    margin-left: 57.93478%;
    padding-top: 7.1875em;
    padding-left: 9.13043%;
    z-index: 1;
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-about-member-lead::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: calc(100% - 115 / 16 * 1em);
    border-left: 1px solid #fff;
    transform-origin: left bottom;
    transform: skew(-32.9deg);
  }
  .top-about-member-container.is-active .top-about-member-lead {
    opacity: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member-lead {
    width: 13.375em;
    margin-left: 0.9375em;
  }
}

@media all and (min-width: 751px) {
  .top-about-member-lead-txt {
    line-height: 1.75;
    font-size: 1em;
    font-family: "Noto Serif", serif;
  }
}

@media screen and (max-width: 750px) {
  .top-about-member-lead-txt {
    line-height: 1.7142857143;
    font-size: 0.875em;
    font-family: "Noto Serif", serif;
  }
}

@media all and (min-width: 751px) {
  .top-about-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #e8e8e8;
    z-index: 99;
    opacity: 0;
    transition: opacity .5s ease;
  }
  body.is-about-active .top-about-overlay {
    opacity: 1;
  }
}

/* location */
@media all and (min-width: 751px) {
  .top-location {
    position: relative;
    margin-top: 16.75em;
    padding-top: 6.25em;
    background: #000;
  }
}

@media screen and (max-width: 750px) {
  .top-location {
    position: relative;
    margin-top: 23.4375em;
    padding-top: 3.125em;
    background: #000;
  }
}

@media all and (min-width: 751px) {
  .top-location__inner {
    max-width: 960px;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) and (max-width: 1024px) {
  .top-location__inner {
    padding-left: 3.75em;
    padding-right: 3.75em;
  }
}

@media screen and (max-width: 750px) {
  .top-location__inner {
    padding-left: 1.875em;
    padding-right: 1.875em;
  }
}

@media all and (min-width: 751px) {
  .top-location-head {
    margin-left: calc(-50vw + 50%);
  }
}

@media screen and (max-width: 750px) {
  .top-location-head {
    margin-left: -1.875em;
  }
}

@media all and (min-width: 751px) {
  .top-location-head__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    max-width: 75.34722vw;
    width: 67.8125em;
  }
  .js-scroll-obj .top-location-head__label {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .js-scroll-obj.is-active .top-location-head__label {
    opacity: 1;
  }
  .top-location-head__label::before {
    content: '';
    display: block;
    padding-top: 21.38249%;
    background: url("../../assets/img/top/ttl_location01.svg") no-repeat center center;
    background-size: contain;
  }
}

@media all and (min-width: 751px) and (max-width: 1024px) {
  .top-location-head__label {
    width: 56.51042vw;
  }
}

@media screen and (max-width: 750px) {
  .top-location-head__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 20.375em;
    margin-left: -0.3125em;
  }
  .js-scroll-obj .top-location-head__label {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .js-scroll-obj.is-active .top-location-head__label {
    opacity: 1;
  }
  .top-location-head__label::before {
    content: '';
    display: block;
    padding-top: 22.08589%;
    background: url("../../assets/img/top/ttl_location01_sp.svg") no-repeat center center;
    background-size: contain;
  }
}

@media all and (min-width: 751px) {
  .top-location-head__label__layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 0.1106%;
    height: 100vw;
    margin-left: 31.24424%;
    transform-origin: center top;
    transform: skew(-32.9deg) translate3d(50%, 0, 0);
    z-index: 1;
  }
  .top-location-head__label__layer span {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    background: #fff;
    transform: translate3d(50%, 0, 0);
    z-index: 1;
  }
  .js-scroll-obj .top-location-head__label__layer span {
    height: 0;
    transition: height 1s ease .5s;
  }
  .js-scroll-obj.is-active .top-location-head__label__layer span {
    height: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-location-head__label__layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 0.0625em;
    height: 100vw;
    margin-left: 31.28834%;
    transform-origin: center top;
    transform: skew(-32.9deg) translate3d(50%, 0, 0);
    z-index: 1;
  }
  .top-location-head__label__layer span {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    background: #fff;
    transform: translate3d(50%, 0, 0);
    z-index: 1;
  }
  .js-scroll-obj .top-location-head__label__layer span {
    height: 0;
    transition: height 1s ease .5s;
  }
  .js-scroll-obj.is-active .top-location-head__label__layer span {
    height: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-location-body {
    position: relative;
    margin-top: 6.52174%;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-location-body {
    position: relative;
    margin-top: 1.875em;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide {
    position: relative;
  }
  .top-location-slide.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-location-slide.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide {
    position: relative;
  }
  .top-location-slide.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-location-slide.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-main {
    position: relative;
    width: 47.82609%;
    z-index: 2;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-img {
    margin-left: 18.18182%;
    margin-right: 18.18182%;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-img {
    margin-left: 3.875em;
    margin-right: 3.875em;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-img__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-img__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-content {
    margin-top: 3.63636%;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-content {
    margin-top: 1em;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-desc__term {
    margin-right: 15.90909%;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-desc__term__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1.0625em;
    font-family: "Noto Serif", serif;
  }
  .top-location-slide-desc__term__label span {
    font-size: 82.35294%;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-desc__term__label {
    display: inline-block;
    vertical-align: top;
    font-size: 0.9375em;
    font-family: "Noto Serif", serif;
  }
  .top-location-slide-desc__term__label span {
    font-size: 82.35294%;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-desc__defin {
    margin-top: 2.72727%;
    margin-right: 39.77273%;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-desc__defin {
    margin-top: 0.75em;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-txt {
    margin-top: 1.84615em;
    line-height: 1.8461538462;
    font-size: 0.8125em;
    font-family: "Noto Serif", serif;
  }
  .top-location-slide-txt:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-txt {
    margin-top: 1.69231em;
    line-height: 1.6923076923;
    font-size: 0.8125em;
    font-family: "Noto Serif", serif;
  }
  .top-location-slide-txt:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-address {
    margin-top: 1.81818em;
    line-height: 1.5454545455;
    font-size: 0.6875em;
    font-family: "Noto Serif", serif;
  }
  .top-location-slide-address:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-address {
    margin-top: 1.81818em;
    line-height: 1.5454545455;
    font-size: 0.6875em;
    font-family: "Noto Serif", serif;
  }
  .top-location-slide-address:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-link {
    margin-top: 0.625em;
  }
  .top-location-slide-link:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-link {
    margin-top: 0.625em;
  }
  .top-location-slide-link:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-link-txt {
    margin-top: 0.5em;
    line-height: 1.6;
    font-size: 0.625em;
    font-family: "Noto Serif", serif;
  }
  .top-location-slide-link-txt:first-child {
    margin-top: 0;
  }
  .top-location-slide-link-txt a {
    position: relative;
    padding-left: 2.2em;
    text-decoration: none;
  }
  .top-location-slide-link-txt a:hover {
    text-decoration: underline;
  }
  .top-location-slide-link-txt a::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 1.4em;
    padding-top: 1em;
    background: url("../../assets/img/common/ico_link01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(0, -50%, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-link-txt {
    margin-top: 0.5em;
    line-height: 1.6;
    font-size: 0.625em;
    font-family: "Noto Serif", serif;
  }
  .top-location-slide-link-txt:first-child {
    margin-top: 0;
  }
  .top-location-slide-link-txt a {
    position: relative;
    padding-left: 2.2em;
    text-decoration: none;
  }
  .top-location-slide-link-txt a::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 1.4em;
    padding-top: 1em;
    background: url("../../assets/img/common/ico_website01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(0, -50%, 0);
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-btn {
    position: absolute;
    top: 0;
    display: inline-block;
    vertical-align: top;
    width: 15.90909%;
    margin-top: 21.93182%;
    cursor: pointer;
    transform: translate3d(0, -50%, 0);
    z-index: 1;
  }
  .top-location-slide-btn::before {
    content: '';
    display: block;
    padding-top: 55.71429%;
  }
  .top-location-slide-btn--prev {
    left: 0;
  }
  .top-location-slide-btn--next {
    right: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-btn {
    position: absolute;
    top: 0;
    display: inline-block;
    vertical-align: top;
    width: 3.25em;
    margin-top: 21.93182%;
    cursor: pointer;
    transform: translate3d(0, -50%, 0);
    z-index: 1;
  }
  .top-location-slide-btn::before {
    content: '';
    display: block;
    padding-top: 55.71429%;
  }
  .top-location-slide-btn--prev {
    left: 0;
  }
  .top-location-slide-btn--next {
    right: 0;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-btn__ico {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 100%;
    transition: opacity .5s ease;
  }
  .top-location-slide-btn--prev .top-location-slide-btn__ico {
    background: url("../../assets/img/common/ico_slide_btn01_prev.svg") no-repeat center center;
    background-size: contain;
  }
  .top-location-slide-btn--next .top-location-slide-btn__ico {
    background: url("../../assets/img/common/ico_slide_btn01_next.svg") no-repeat center center;
    background-size: contain;
  }
  .top-location-slide-btn:hover .top-location-slide-btn__ico {
    opacity: .6;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-btn__ico {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 100%;
  }
  .top-location-slide-btn--prev .top-location-slide-btn__ico {
    background: url("../../assets/img/common/ico_slide_btn01_prev.svg") no-repeat center center;
    background-size: contain;
  }
  .top-location-slide-btn--next .top-location-slide-btn__ico {
    background: url("../../assets/img/common/ico_slide_btn01_next.svg") no-repeat center center;
    background-size: contain;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-btn__label {
    position: absolute;
    top: 0;
    display: inline-block;
    vertical-align: top;
    width: 3.25em;
    margin-top: -1.75em;
    font-size: 0.75em;
    font-family: "Roboto", sans-serif;
    color: #fff;
    transition: opacity .5s ease;
  }
  .top-location-slide-btn--prev .top-location-slide-btn__label {
    left: 0;
  }
  .top-location-slide-btn--next .top-location-slide-btn__label {
    right: 0;
  }
  .top-location-slide-btn:hover .top-location-slide-btn__label {
    opacity: .6;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-btn__label {
    position: absolute;
    top: 0;
    display: inline-block;
    vertical-align: top;
    width: 2.8em;
    margin-top: -1.75em;
    font-size: 0.625em;
    font-family: "Roboto", sans-serif;
    color: #fff;
  }
  .top-location-slide-btn--prev .top-location-slide-btn__label {
    left: 0;
  }
  .top-location-slide-btn--next .top-location-slide-btn__label {
    right: 0;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-dot {
    position: relative;
    bottom: 0 !important;
    height: 0.625em;
    margin-top: 1.5em;
    z-index: 3;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-dot {
    bottom: 0 !important;
    height: 0.625em;
    margin-top: 1.25em;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-dot__item {
    display: inline-block;
    vertical-align: top;
    width: 0.625em;
    height: 0.625em;
    margin-left: 0.875em !important;
    margin-right: 0 !important;
    border: 1px solid #fff !important;
    background: transparent;
    opacity: 1 !important;
  }
  .top-location-slide-dot__item:first-child {
    margin-left: 0 !important;
  }
  .top-location-slide-dot__item.swiper-pagination-bullet-active {
    background: #fff;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-dot__item {
    display: inline-block;
    vertical-align: top;
    width: 0.625em;
    height: 0.625em;
    margin-left: 0.875em !important;
    border: 0.0625em solid #fff !important;
    background: transparent;
    opacity: 1 !important;
  }
  .top-location-slide-dot__item:first-child {
    margin-left: 0 !important;
  }
  .top-location-slide-dot__item.swiper-pagination-bullet-active {
    background: #fff;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-aside {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(50vw + 50% - 277 / 920 * 100%);
    padding-top: 5.43478%;
    margin-left: 30.1087%;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-aside {
    margin-top: 3.125em;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-thumb-img {
    position: relative;
    overflow: hidden;
    transform-origin: left bottom;
    transform: skew(-32.9deg);
  }
  .top-location-slide-thumb-img::before {
    content: '';
    display: block;
    padding-top: 25.0625em;
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-thumb-img::before {
    content: '';
    display: block;
    padding-top: 44.28571%;
  }
}

@media all and (min-width: 751px) {
  .top-location-slide-thumb-img__label {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: cover;
    transform-origin: left bottom;
    transform: skew(32.9deg);
  }
}

@media screen and (max-width: 750px) {
  .top-location-slide-thumb-img__label {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: cover;
  }
}

/* cast */
@media all and (min-width: 751px) {
  .top-cast {
    position: relative;
    padding-top: 6.25em;
    background: #000;
  }
}

@media screen and (max-width: 750px) {
  .top-cast {
    position: relative;
    padding-top: 3.125em;
    background: #000;
  }
}

@media all and (min-width: 751px) {
  .top-cast__inner {
    max-width: 960px;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) and (max-width: 1024px) {
  .top-cast__inner {
    padding-left: 3.75em;
    padding-right: 3.75em;
  }
}

@media screen and (max-width: 750px) {
  .top-cast__inner {
    padding-left: 1.875em;
    padding-right: 1.875em;
  }
}

@media all and (min-width: 751px) {
  .top-cast-head {
    margin-left: calc(-50vw + 50%);
  }
}

@media screen and (max-width: 750px) {
  .top-cast-head {
    margin-left: -1.875em;
  }
}

@media all and (min-width: 751px) {
  .top-cast-head__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    max-width: 37.98611vw;
    width: 34.1875em;
  }
  .js-scroll-obj .top-cast-head__label {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .js-scroll-obj.is-active .top-cast-head__label {
    opacity: 1;
  }
  .top-cast-head__label::before {
    content: '';
    display: block;
    padding-top: 42.41316%;
    background: url("../../assets/img/top/ttl_cast01.svg") no-repeat center center;
    background-size: contain;
  }
}

@media all and (min-width: 751px) and (max-width: 1024px) {
  .top-cast-head__label {
    width: 28.48958vw;
  }
}

@media screen and (max-width: 750px) {
  .top-cast-head__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 10.0625em;
    margin-left: -0.3125em;
  }
  .js-scroll-obj .top-cast-head__label {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .js-scroll-obj.is-active .top-cast-head__label {
    opacity: 1;
  }
  .top-cast-head__label::before {
    content: '';
    display: block;
    padding-top: 44.7205%;
    background: url("../../assets/img/top/ttl_cast01_sp.svg") no-repeat center center;
    background-size: contain;
  }
}

@media all and (min-width: 751px) {
  .top-cast-head__label__layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 0.21938%;
    height: 100vw;
    margin-left: 61.97441%;
    transform-origin: center top;
    transform: skew(-32.9deg) translate3d(50%, 0, 0);
    z-index: 1;
  }
  .top-cast-head__label__layer span {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    background: #fff;
    transform: translate3d(50%, 0, 0);
    z-index: 1;
  }
  .js-scroll-obj .top-cast-head__label__layer span {
    height: 0;
    transition: height 1s ease .5s;
  }
  .js-scroll-obj.is-active .top-cast-head__label__layer span {
    height: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-cast-head__label__layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 0.0625em;
    height: 100vw;
    margin-left: 63.35404%;
    transform-origin: center top;
    transform: skew(-32.9deg) translate3d(50%, 0, 0);
    z-index: 1;
  }
  .top-cast-head__label__layer span {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    background: #fff;
    transform: translate3d(50%, 0, 0);
    z-index: 1;
  }
  .js-scroll-obj .top-cast-head__label__layer span {
    height: 0;
    transition: height 1s ease .5s;
  }
  .js-scroll-obj.is-active .top-cast-head__label__layer span {
    height: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-cast-body {
    position: relative;
    margin-top: 6.52174%;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-cast-body {
    position: relative;
    margin-top: 2.5em;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-cast-lead.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-cast-lead.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-cast-lead.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-cast-lead.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media all and (min-width: 751px) {
  .top-cast-lead-txt {
    text-align: center;
    line-height: 3.875;
    font-size: 1em;
    font-family: "Noto Serif", serif;
  }
}

@media screen and (max-width: 750px) {
  .top-cast-lead-txt {
    text-align: center;
    line-height: 2;
    font-size: 0.9375em;
    font-family: "Noto Serif", serif;
  }
}

@media all and (min-width: 751px) {
  .top-cast-member {
    margin-top: 6.52174%;
    margin-left: 19.78261%;
    margin-right: 3.47826%;
  }
  .top-cast-member a {
    text-decoration: none;
  }
  .top-cast-member.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-cast-member.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-cast-member {
    margin-top: 3.125em;
    margin-left: 5.8125em;
    margin-right: -0.4375em;
  }
  .top-cast-member a {
    text-decoration: none;
  }
  .top-cast-member.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-cast-member.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media all and (min-width: 751px) {
  .top-cast-member-list {
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
}

@media screen and (max-width: 750px) {
  .top-cast-member-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
  }
}

@media all and (min-width: 751px) {
  .top-cast-member-list__item {
    width: 21.67139%;
    margin-left: 4.43815%;
  }
  .top-cast-member-list__item:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-cast-member-list__item {
    width: 6.75em;
    margin-left: 0.46875em;
  }
  .top-cast-member-list__item:nth-child(n+3) {
    margin-top: 1.25em;
  }
  .top-cast-member-list__item:nth-child(1) {
    margin-left: 0em;
  }
  .top-cast-member-list__item:nth-child(3) {
    margin-left: 0.4375em;
  }
  .top-cast-member-list__item:nth-child(4) {
    margin-right: -0.4375em;
  }
}

@media all and (min-width: 751px) {
  .top-cast-member-img {
    position: relative;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-cast-member-img {
    position: relative;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-cast-member-img__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    overflow: hidden;
    transform-origin: left top;
    transform: skew(-32.9deg);
    transition: opacity .5s ease;
  }
  .top-cast-member-img__label::before {
    content: '';
    display: block;
    padding-top: 154.24837%;
  }
  .top-cast-member a:hover .top-cast-member-img__label {
    opacity: .6;
  }
  .top-cast-member-img__label > span {
    position: absolute;
    top: 0;
    right: 0;
    width: 199.34641%;
    height: 100%;
    margin-left: -99.34641%;
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    transform-origin: left top;
    transform: skew(32.5deg);
  }
}

@media screen and (max-width: 750px) {
  .top-cast-member-img__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    overflow: hidden;
    transform-origin: left top;
    transform: skew(-32.9deg);
  }
  .top-cast-member-img__label::before {
    content: '';
    display: block;
    padding-top: 154.62963%;
  }
  .top-cast-member-img__label > span {
    position: absolute;
    top: 0;
    right: 0;
    width: 199.07407%;
    height: 100%;
    margin-left: -99.07407%;
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    transform-origin: left top;
    transform: skew(32.9deg);
    transition: opacity .5s ease;
  }
}

@media all and (min-width: 751px) {
  .top-cast-member-img__caption {
    display: block;
    margin-top: 0.625em;
    margin-left: -99.34641%;
    margin-right: 99.34641%;
    text-align: left;
    font-size: 1em;
    font-family: "Noto Serif", serif;
  }
}

@media screen and (max-width: 750px) {
  .top-cast-member-img__caption {
    display: block;
    margin-top: 0.66667em;
    margin-left: -99.07407%;
    margin-right: 99.07407%;
    text-align: right;
    font-size: 0.9375em;
    font-family: "Noto Serif", serif;
  }
}

/* staff */
@media all and (min-width: 751px) {
  .top-staff {
    position: relative;
    padding-top: 6.25em;
    padding-bottom: 10.625em;
    background: #000;
  }
}

@media screen and (max-width: 750px) {
  .top-staff {
    position: relative;
    padding-top: 3.125em;
    padding-bottom: 4.375em;
    background: #000;
  }
}

@media all and (min-width: 751px) {
  .top-staff__inner {
    max-width: 960px;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) and (max-width: 1024px) {
  .top-staff__inner {
    padding-left: 3.75em;
    padding-right: 3.75em;
  }
}

@media screen and (max-width: 750px) {
  .top-staff__inner {
    padding-left: 1.875em;
    padding-right: 1.875em;
  }
}

@media all and (min-width: 751px) {
  .top-staff-head {
    margin-left: calc(-50vw + 50%);
  }
}

@media screen and (max-width: 750px) {
  .top-staff-head {
    margin-left: -1.875em;
  }
}

@media all and (min-width: 751px) {
  .top-staff-head__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    max-width: 40.41667vw;
    width: 36.375em;
  }
  .js-scroll-obj .top-staff-head__label {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .js-scroll-obj.is-active .top-staff-head__label {
    opacity: 1;
  }
  .top-staff-head__label::before {
    content: '';
    display: block;
    padding-top: 39.86254%;
    background: url("../../assets/img/top/ttl_staff01.svg") no-repeat center center;
    background-size: contain;
  }
}

@media all and (min-width: 751px) and (max-width: 1024px) {
  .top-staff-head__label {
    width: 30.3125vw;
  }
}

@media screen and (max-width: 750px) {
  .top-staff-head__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 10.9375em;
    margin-left: -0.3125em;
  }
  .js-scroll-obj .top-staff-head__label {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .js-scroll-obj.is-active .top-staff-head__label {
    opacity: 1;
  }
  .top-staff-head__label::before {
    content: '';
    display: block;
    padding-top: 41.14286%;
    background: url("../../assets/img/top/ttl_staff01_sp.svg") no-repeat center center;
    background-size: contain;
  }
}

@media all and (min-width: 751px) {
  .top-staff-head__label__layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 0.20619%;
    height: 100vw;
    margin-left: 58.24742%;
    transform-origin: center top;
    transform: skew(-32.9deg) translate3d(50%, 0, 0);
    z-index: 1;
  }
  .top-staff-head__label__layer span {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    background: #fff;
    transform: translate3d(50%, 0, 0);
    z-index: 1;
  }
  .js-scroll-obj .top-staff-head__label__layer span {
    height: 0;
    transition: height 1s ease .5s;
  }
  .js-scroll-obj.is-active .top-staff-head__label__layer span {
    height: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-staff-head__label__layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 0.0625em;
    height: 100vw;
    margin-left: 58.28571%;
    transform-origin: center top;
    transform: skew(-32.9deg) translate3d(50%, 0, 0);
    z-index: 1;
  }
  .top-staff-head__label__layer span {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    background: #fff;
    transform: translate3d(50%, 0, 0);
    z-index: 1;
  }
  .js-scroll-obj .top-staff-head__label__layer span {
    height: 0;
    transition: height 1s ease .5s;
  }
  .js-scroll-obj.is-active .top-staff-head__label__layer span {
    height: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-staff-body {
    position: relative;
    margin-top: 8.69565%;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-staff-body {
    position: relative;
    margin-top: 2.5em;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-staff-member a {
    text-decoration: none;
  }
  .top-staff-member.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-staff-member.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-staff-member a {
    text-decoration: none;
  }
  .top-staff-member.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-staff-member.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media all and (min-width: 751px) {
  .top-staff-member-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
  }
}

@media screen and (max-width: 750px) {
  .top-staff-member-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    width: 16em;
    margin: 0 auto;
  }
}

@media all and (min-width: 751px) {
  .top-staff-member-list__item {
    width: 17.17391%;
    margin-left: 3.47826%;
  }
  .top-staff-member-list__item:nth-child(5n+1) {
    margin-left: 0;
  }
  .top-staff-member-list__item:nth-child(n+6) {
    margin-top: 5.43478%;
  }
}

@media screen and (max-width: 750px) {
  .top-staff-member-list__item {
    width: 7.375em;
    margin-left: 1.25em;
  }
  .top-staff-member-list__item:nth-child(2n+1) {
    margin-left: 0;
  }
  .top-staff-member-list__item:nth-child(n+3) {
    margin-top: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .top-staff-member-img {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-staff-member-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-staff-member-img__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
    background: #000;
  }
  .top-staff-member-img__label img {
    transition: opacity .5s ease;
  }
  .top-staff-member a:hover .top-staff-member-img__label img {
    opacity: .6;
  }
}

@media screen and (max-width: 750px) {
  .top-staff-member-img__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
    background: #000;
  }
}

@media all and (min-width: 751px) {
  .top-staff-member-img__caption {
    display: block;
    margin-top: 0.625em;
    text-align: left;
    font-size: 1em;
    font-family: "Noto Serif", serif;
  }
}

@media screen and (max-width: 750px) {
  .top-staff-member-img__caption {
    display: block;
    margin-top: 0.66667em;
    text-align: left;
    font-size: 0.9375em;
    font-family: "Noto Serif", serif;
  }
}

@media all and (min-width: 751px) {
  .top-staff-member-other {
    margin-top: 5.43478%;
  }
}

@media screen and (max-width: 750px) {
  .top-staff-member-other {
    margin-top: 2.5em;
  }
}

@media all and (min-width: 751px) {
  .top-staff-member-other-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    margin-left: -1.5em;
    font-size: 0.625em;
  }
}

@media screen and (max-width: 750px) {
  .top-staff-member-other-list {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-staff-member-other-list__item {
    margin-left: 1.5em;
  }
}

@media all and (min-width: 751px) {
  .top-staff-member-other-txt {
    line-height: 2.4;
    font-family: "Noto Serif", serif;
  }
}

@media screen and (max-width: 750px) {
  .top-staff-member-other-txt {
    line-height: 2.1538461538;
    font-size: 0.8125em;
    font-family: "Noto Serif", serif;
  }
}

/* outro */
@media screen and (max-width: 750px) {
  .top-outro {
    padding-top: 5em;
    padding-bottom: 5em;
  }
}

@media all and (min-width: 751px) {
  .top-outro__inner {
    display: flex;
    align-items: center;
    max-width: 960px;
    height: 33.5em;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
  .top-outro-body {
    width: 100%;
  }
}

@media all and (min-width: 751px) and (max-width: 1024px) {
  .top-outro__inner {
    padding-left: 3.75em;
    padding-right: 3.75em;
  }
}

@media screen and (max-width: 750px) {
  .top-outro__inner {
    padding-left: 1.875em;
    padding-right: 1.875em;
  }
}

@media all and (min-width: 751px) {
  .top-outro-movie a {
    text-decoration: none;
  }
  .top-outro-movie.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-outro-movie.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-outro-movie a {
    text-decoration: none;
  }
  .top-outro-movie.js-scroll-obj {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .top-outro-movie.js-scroll-obj.is-active {
    opacity: 1;
  }
}

@media all and (min-width: 751px) {
  .top-outro-movie-list {
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
}

@media screen and (max-width: 750px) {
  .top-outro-movie-list {
    width: 15.5em;
    margin: 0 auto;
  }
}

@media all and (min-width: 751px) {
  .top-outro-movie-list__item {
    width: 38.58696%;
    margin-left: 3.26087%;
  }
  .top-outro-movie-list__item:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-outro-movie-list__item {
    margin-top: 2.25em;
  }
  .top-outro-movie-list__item:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-outro-movie-img {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-outro-movie-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-outro-movie-img__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    background: #000;
  }
  .top-outro-movie-img__label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    z-index: 1;
  }
  .top-outro-movie-img__label::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20%;
    padding-top: 20%;
    background: url("../../assets/img/common/ico_movie_play01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, -50%, 0);
  }
  .top-outro-movie-img__label img {
    transition: opacity .5s ease;
  }
  .top-outro-movie a:hover .top-outro-movie-img__label img {
    opacity: .6;
  }
}

@media screen and (max-width: 750px) {
  .top-outro-movie-img__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    background: #000;
  }
  .top-outro-movie-img__label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.0625em solid #fff;
    z-index: 1;
  }
  .top-outro-movie-img__label::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 3.75em;
    padding-top: 3.75em;
    background: url("../../assets/img/common/ico_movie_play01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, -50%, 0);
  }
}

@media all and (min-width: 751px) {
  .top-outro-movie-img__caption {
    display: block;
    margin-top: 0.75em;
    font-size: 1em;
    font-family: "Roboto", sans-serif;
  }
}

@media screen and (max-width: 750px) {
  .top-outro-movie-img__caption {
    display: block;
    margin-top: 0.4em;
    font-size: 0.9375em;
    font-family: "Roboto", sans-serif;
  }
}

/* modal */
@media all and (min-width: 751px) {
  .is-opened-about-modal .modal-panel {
    color: #0e0f10;
  }
}

@media screen and (max-width: 750px) {
  .is-opened-about-modal .modal-panel {
    color: #0e0f10;
  }
}

@media all and (min-width: 751px) {
  .is-opened-about-modal .modal-bg {
    background: #e8e8e8;
  }
}

@media screen and (max-width: 750px) {
  .is-opened-about-modal .modal-bg {
    background: #e8e8e8;
  }
}

@media screen and (max-width: 750px) {
  .modal-slide {
    margin-left: -1.875em;
    margin-right: -1.875em;
  }
}

@media all and (min-width: 751px) {
  .is-opened-about-modal .modal-slide-control::before {
    border-top: 1px solid #0e0f10;
  }
}

@media screen and (max-width: 750px) {
  .modal-slide-control {
    margin-left: 1.875em;
    margin-right: 1.875em;
  }
  .is-opened-about-modal .modal-slide-control::before {
    border-top: 0.0625em solid #0e0f10;
  }
}

@media all and (min-width: 751px) {
  .is-opened-about-modal .modal-slide-btn--prev .modal-slide-btn__ico {
    background: url("../../assets/img/common/ico_slide_btn01_prev_on.svg") no-repeat center center;
    background-size: contain;
  }
  .is-opened-about-modal .modal-slide-btn--next .modal-slide-btn__ico {
    background: url("../../assets/img/common/ico_slide_btn01_next_on.svg") no-repeat center center;
    background-size: contain;
  }
}

@media screen and (max-width: 750px) {
  .is-opened-about-modal .modal-slide-btn--prev .modal-slide-btn__ico {
    background: url("../../assets/img/common/ico_slide_btn01_prev_on.svg") no-repeat center center;
    background-size: contain;
  }
  .is-opened-about-modal .modal-slide-btn--next .modal-slide-btn__ico {
    background: url("../../assets/img/common/ico_slide_btn01_next_on.svg") no-repeat center center;
    background-size: contain;
  }
}

@media all and (min-width: 751px) {
  .is-opened-about-modal .modal-slide-btn__label {
    color: #0e0f10;
  }
}

@media screen and (max-width: 750px) {
  .is-opened-about-modal .modal-slide-btn__label {
    color: #0e0f10;
  }
}

@media all and (min-width: 751px) {
  .is-opened-about-modal .modal-slide-dot__item {
    border: 1px solid #0e0f10 !important;
  }
  .is-opened-about-modal .modal-slide-dot__item.swiper-pagination-bullet-active {
    background: #0e0f10;
  }
}

@media screen and (max-width: 750px) {
  .is-opened-about-modal .modal-slide-dot__item {
    border: 0.0625em solid #0e0f10 !important;
  }
  .is-opened-about-modal .modal-slide-dot__item.swiper-pagination-bullet-active {
    background: #0e0f10;
  }
}

@media all and (min-width: 751px) {
  .is-opened-about-modal .modal-close-btn-body::before {
    border: 1px solid #0e0f10 !important;
  }
}

@media screen and (max-width: 750px) {
  .is-opened-about-modal .modal-close-btn-body::before {
    border: 0.0625em solid #0e0f10 !important;
  }
}

@media all and (min-width: 751px) {
  .is-opened-about-modal .modal-close-btn__label {
    color: #0e0f10;
  }
}

@media screen and (max-width: 750px) {
  .is-opened-about-modal .modal-close-btn__label {
    color: #0e0f10;
  }
}

/* section */
@media all and (min-width: 751px) {
  .modal-section {
    margin-left: 4.34783%;
    margin-right: 4.34783%;
  }
  .swiper-slide-prev .modal-section,
  .swiper-slide-next .modal-section {
    opacity: 0;
  }
  .swiper-slide-active .modal-section {
    transition: opacity .25s ease .25s;
  }
}

@media screen and (max-width: 750px) {
  .swiper-slide-prev .modal-section,
  .swiper-slide-next .modal-section {
    opacity: 0;
  }
  .swiper-slide-active .modal-section {
    transition: opacity .25s ease .25s;
  }
}

@media all and (min-width: 751px) {
  .modal-section-head {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }
  .modal-section-head::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    border-top: 1px solid #fff;
    opacity: .6;
  }
  .is-opened-about-modal .modal-section-head::before {
    border-top: 1px solid #0e0f10;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-head {
    position: relative;
    margin-left: 1.875em;
  }
}

@media all and (min-width: 751px) {
  .modal-section-head__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding-top: 0.11111em;
    padding-bottom: 0.08333em;
    padding-left: 2.27778em;
    line-height: 1.3214285714;
    font-size: 2.25em;
    font-family: "Roboto", sans-serif;
  }
  .modal-section-head__label::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: calc(54 / 36 * 1em + 12 / 36 * 1em);
    margin-bottom: -0.75em;
    margin-left: 0.55556em;
    border-left: 1px solid #fff;
    transform-origin: left bottom;
    transform: skew(-32.9deg);
    opacity: .6;
  }
  .is-opened-about-modal .modal-section-head__label::after {
    border-left: 1px solid #0e0f10;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-head__label {
    position: relative;
    display: block;
    padding-top: 0.23214em;
    padding-bottom: 0.23214em;
    padding-left: 2.21429em;
    line-height: 1.3214285714;
    font-size: 1.75em;
    font-family: "Roboto", sans-serif;
  }
  .modal-section-head__label::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    border-top: 0.0625em solid #fff;
    opacity: .6;
  }
  .is-opened-about-modal .modal-section-head__label::before {
    border-top: 0.0625em solid #0e0f10;
  }
  .modal-section-head__label::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: calc(100 / 56 * 1em + 32 / 750 * 100vw);
    margin-bottom: -1em;
    margin-left: 0.35714em;
    border-left: 0.0625em solid #fff;
    transform-origin: left bottom;
    transform: skew(-32.9deg);
    opacity: .6;
  }
  .is-opened-about-modal .modal-section-head__label::after {
    border-left: 0.0625em solid #0e0f10;
  }
}

@media all and (min-width: 751px) {
  .modal-section-head__sub {
    display: inline-block;
    vertical-align: top;
    margin-left: 1.6em;
    line-height: 1.6666666667;
    font-size: 0.9375em;
    font-weight: bold;
    font-family: "Noto Serif", serif;
  }
  .modal-section-head--s .modal-section-head__sub {
    margin-left: 2.18182em;
    line-height: 1.4545454545;
    font-size: 0.6875em;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-head__sub {
    display: block;
    margin-top: 0.66667em;
    padding-left: 5.16667em;
    line-height: 1.8;
    font-size: 0.75em;
    font-weight: bold;
    font-family: "Noto Serif", serif;
  }
  .modal-section-head--s .modal-section-head__sub {
    margin-top: 0.8em;
    padding-left: 6.2em;
    font-size: 0.625em;
  }
}

@media all and (min-width: 751px) {
  .modal-section-body {
    margin-top: 4.7619%;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-body {
    margin-top: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .modal-section-card {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-card--s {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .modal-section-card__parts:first-child {
    width: 30.95238%;
  }
  .modal-section-card--s .modal-section-card__parts:first-child {
    width: 17.38095%;
  }
  .modal-section-card__parts + .modal-section-card__parts {
    width: 64.28571%;
    margin-left: 4.7619%;
  }
  .modal-section-card--s .modal-section-card__parts + .modal-section-card__parts {
    width: 79.04762%;
    margin-left: 3.57143%;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-card__parts + .modal-section-card__parts {
    margin-top: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .modal-section-img {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-img {
    margin-left: 1.875em;
    margin-right: 1.875em;
    text-align: center;
  }
  .modal-section-card--s .modal-section-img {
    position: relative;
    width: 4.375em;
    margin-left: 0;
  }
  .modal-section-card--s .modal-section-img::before {
    content: '';
    display: block;
    padding-top: 128.57143%;
  }
}

@media all and (min-width: 751px) {
  .modal-section-img__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-img__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
  .modal-section-card--s .modal-section-img__label {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate3d(0, -50%, 0);
  }
}

@media all and (min-width: 751px) {
  .modal-section-link {
    margin-top: 1.25em;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-link {
    margin-top: 1.25em;
    margin-left: 1.875em;
    margin-right: 1.875em;
  }
}

@media all and (min-width: 751px) {
  .modal-section-link-txt {
    font-size: 0.75em;
    font-family: "Roboto", sans-serif;
  }
  .modal-section-link-txt a {
    position: relative;
    padding-left: 2.58333em;
    text-decoration: none;
  }
  .modal-section-link-txt a:hover {
    text-decoration: underline;
  }
  .modal-section-link-txt a::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 1.58333em;
    padding-top: 1.33333em;
    background: url("../../assets/img/common/ico_website01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(0, -50%, 0);
  }
}

@media screen and (max-width: 750px) {
  .modal-section-link-txt {
    font-size: 0.75em;
    font-family: "Roboto", sans-serif;
  }
  .modal-section-link-txt a {
    position: relative;
    padding-left: 2.58333em;
    text-decoration: none;
  }
  .modal-section-link-txt a::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 1.58333em;
    padding-top: 1.33333em;
    background: url("../../assets/img/common/ico_website01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(0, -50%, 0);
  }
}

@media screen and (max-width: 750px) {
  .modal-section-card--s .modal-section-lead {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 18.125em;
    height: 5.625em;
    margin-left: 5.3125em;
  }
}

@media all and (min-width: 751px) {
  .modal-section-lead-txt {
    line-height: 2;
    font-size: 1.25em;
    font-weight: bold;
    font-family: "Noto Serif", serif;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-lead-txt {
    line-height: 1.8214285714;
    font-size: 0.875em;
    font-weight: bold;
    font-family: "Noto Serif", serif;
  }
}

@media all and (min-width: 751px) {
  .modal-section-comment {
    margin-top: 0.75em;
  }
  .modal-section-comment:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-comment {
    margin-top: 0.75em;
    margin-left: 1.875em;
    margin-right: 1.875em;
  }
  .modal-section-comment:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .modal-section-comment-txt {
    line-height: 2;
    font-size: 0.9375em;
    font-family: "Noto Serif", serif;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-comment-txt {
    line-height: 2;
    font-size: 0.9375em;
    font-family: "Noto Serif", serif;
  }
}

@media all and (min-width: 751px) {
  .modal-section-profile {
    position: relative;
    margin-top: 1.5em;
    padding-top: 1.5em;
  }
  .modal-section-profile::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    border-top: 1px solid #fff;
    opacity: .6;
  }
  .modal-section-profile:first-child {
    margin-top: 0;
    padding-top: 0;
  }
  .modal-section-profile:first-child::before {
    content: none;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-profile {
    position: relative;
    margin-top: 1.5em;
    margin-left: 1.875em;
    margin-right: 1.875em;
    padding-top: 1.5em;
  }
  .modal-section-profile::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    border-top: 0.0625em solid #fff;
    opacity: .6;
  }
  .modal-section-profile:first-child {
    margin-top: 0;
    padding-top: 0;
  }
  .modal-section-profile:first-child::before {
    content: none;
  }
}

@media all and (min-width: 751px) {
  .modal-section-profile-desc__term__label {
    display: inline-block;
    vertical-align: top;
    font-size: 0.875em;
    font-family: "Roboto", sans-serif;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-profile-desc__term__label {
    display: inline-block;
    vertical-align: top;
    font-size: 0.875em;
    font-family: "Roboto", sans-serif;
  }
}

@media all and (min-width: 751px) {
  .modal-section-profile-txt {
    line-height: 1.6666666667;
    font-size: 0.75em;
    font-family: "Noto Serif", serif;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-profile-txt {
    line-height: 1.6666666667;
    font-size: 0.75em;
    font-family: "Noto Serif", serif;
  }
}

@media all and (min-width: 751px) {
  .modal-section-frame {
    position: relative;
    margin-top: 5.95238%;
    margin-left: 11.90476%;
    margin-right: 11.90476%;
    background: #000;
  }
  .modal-section-frame::before {
    content: '';
    display: block;
    padding-top: 56.25%;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-frame {
    position: relative;
    margin-top: 3.125em;
    margin-left: 1.875em;
    margin-right: 1.875em;
    background: #000;
  }
  .modal-section-frame::before {
    content: '';
    display: block;
    padding-top: 56.25%;
  }
}

@media all and (min-width: 751px) {
  .modal-section-frame__label {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
}

@media screen and (max-width: 750px) {
  .modal-section-frame__label {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
}
