@charset "UTF-8";
/* CSS Document */
/* ==================================================
Mixin
================================================== */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&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 scrollIco {
  0% {
    left: 0;
    width: 0;
  }
  25% {
    left: 0;
    width: 100%;
  }
  50% {
    left: auto;
    right: 0;
    width: 100%;
  }
  75% {
    left: auto;
    right: 0;
    width: 0;
  }
  100% {
    left: auto;
    right: 0;
    width: 0;
  }
}

@keyframes scrollIco {
  0% {
    left: 0;
    width: 0;
  }
  25% {
    left: 0;
    width: 100%;
  }
  50% {
    left: auto;
    right: 0;
    width: 100%;
  }
  75% {
    left: auto;
    right: 0;
    width: 0;
  }
  100% {
    left: auto;
    right: 0;
    width: 0;
  }
}

/* hero */
@media all and (min-width: 751px) {
  .top-hero {
    background: url("../img/common/bg_hero01_l.png") repeat-y left top, url("../img/common/bg_hero01_r.png") repeat-y right top, url("../img/top/bg_hero01.png") no-repeat center center;
    background-size: 3.875em, 3.875em, cover;
  }
}

@media screen and (max-width: 750px) {
  .top-hero {
    background: url("../img/common/bg_hero01_sp_t.png") repeat-x center top, url("../img/common/bg_hero01_sp_b.png") repeat-x center bottom, url("../img/top/bg_hero01_sp.png") no-repeat center center;
    background-size: 1.21875em, 1.21875em, cover;
  }
}

@media all and (min-width: 751px) {
  .top-hero__inner {
    max-width: 90em;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .top-hero-container {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    height: 55.375em;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-container {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    height: 38.75em;
  }
}

@media all and (min-width: 751px) {
  .top-hero-content {
    width: 100%;
    padding-top: 5em;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-content {
    width: 100%;
    padding-top: 2.875em;
  }
}

@media all and (min-width: 751px) {
  .top-hero-heading {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-heading {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-hero-heading-logo {
    display: block;
    margin-bottom: -2.1875em;
  }
  .top-hero-heading-logo:last-child {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-heading-logo {
    display: block;
    margin-bottom: -0.75em;
    margin-left: 1em;
    margin-right: 1em;
    text-align: left;
  }
  .top-hero-heading-logo:last-child {
    margin-bottom: 0;
  }
}

@media all and (min-width: 751px) {
  .top-hero-heading-logo__label {
    display: inline-block;
    vertical-align: top;
    max-width: 13.75em;
    width: 18.96552%;
  }
  .top-hero-heading-logo__label img {
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-heading-logo__label {
    display: inline-block;
    vertical-align: top;
    width: 6.875em;
  }
  .top-hero-heading-logo__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-hero-heading__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    max-width: 72.5em;
    width: 100%;
    z-index: 1;
  }
  .top-hero-heading__label img {
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-heading__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 19.75em;
    z-index: 1;
  }
  .top-hero-heading__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-hero-body {
    margin-top: 2.4375em;
  }
  .top-hero-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-body {
    margin-top: 1.1875em;
  }
  .top-hero-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-hero-lead-img {
    text-align: center;
  }
  .top-hero-lead-img + .top-hero-lead-img {
    margin-top: 2em;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-lead-img {
    text-align: center;
  }
  .top-hero-lead-img + .top-hero-lead-img {
    margin-top: 1.1875em;
  }
}

@media all and (min-width: 751px) {
  .top-hero-lead-img__label {
    display: inline-block;
    vertical-align: top;
    max-width: 64.625em;
    width: 89.13793%;
  }
  .top-hero-lead-img + .top-hero-lead-img .top-hero-lead-img__label {
    max-width: 38.25em;
    width: 52.75862%;
  }
  .top-hero-lead-img__label img {
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-lead-img__label {
    display: inline-block;
    vertical-align: top;
    width: 19.875em;
  }
  .top-hero-lead-img + .top-hero-lead-img .top-hero-lead-img__label {
    width: 15em;
  }
  .top-hero-lead-img__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-hero-pict-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-hero-pict-img__label {
    position: absolute;
    bottom: 0;
    left: 50%;
    display: inline-block;
    vertical-align: top;
    max-width: 41.6875em;
    width: 57.5%;
    background: url("../img/top/img_pict_hero01.png") no-repeat center bottom;
    background-size: contain;
    transform: translate3d(-50%, 0, 0);
  }
  .top-hero-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 27.88606%;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-pict-img__label {
    position: absolute;
    bottom: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 11.125em;
    margin-bottom: 1.625em;
    background: url("../img/top/img_pict_hero01_sp.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-hero-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 64.04494%;
  }
}

@media all and (min-width: 751px) {
  .top-hero-btn {
    position: absolute;
    z-index: 1;
  }
  .top-hero-btn--1 {
    bottom: 0;
    right: 0;
    max-width: 12.5em;
    width: 14.28571%;
    margin-bottom: 1.5em;
    margin-right: 3.57143%;
    text-align: right;
  }
  .top-hero-btn--2 {
    top: 0;
    right: 0;
    max-width: 18.75em;
    width: 21.42857%;
    margin-top: 5.875em;
    margin-right: 3.57143%;
    text-align: right;
  }
  .top-hero-btn--3 {
    bottom: 0;
    right: 0;
    max-width: 16.5em;
    width: 18.85714%;
    margin-bottom: 1.5em;
    margin-right: 3.57143%;
    text-align: right;
  }
  .top-hero-btn > a {
    display: inline-block;
    vertical-align: top;
  }
  .top-hero-btn > a .top-hero-btn__ico {
    transition: transform 0.2s ease-in-out;
  }
  .top-hero-btn > a:hover .top-hero-btn__ico {
    transform: translate3d(-50%, 0.3125em, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-hero-btn {
    position: absolute;
    z-index: 1;
  }
  .top-hero-btn--1 {
    bottom: 0;
    right: 0;
    width: 8.8125em;
    margin-bottom: -4.25em;
    margin-right: 1em;
    text-align: center;
  }
  .top-hero-btn--3 {
    bottom: 0;
    right: 0;
    width: 9.375em;
    margin-bottom: 0.375em;
    margin-right: 1em;
    text-align: center;
  }
  .top-hero-btn > a {
    display: inline-block;
    vertical-align: top;
  }
}

@media all and (min-width: 751px) {
  .top-hero-btn-ex {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    margin-top: -39.5%;
    transform: translate3d(-50%, 0, 0);
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-btn-ex {
    position: absolute;
    top: 0;
    left: 50%;
    width: 110.6383%;
    margin-top: -52.48227%;
    transform: translate3d(-50%, 0, 0);
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-hero-btn-ex__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
  .top-hero-btn-ex__label img {
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-btn-ex__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
  .top-hero-btn-ex__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-hero-btn__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
  .top-hero-btn__label img {
    width: 100%;
    transform: translate3d(0, 0, 0);
    filter: drop-shadow(0.375em 0.375em 0.75em rgba(0, 0, 0, 0.2));
  }
}

@media screen and (max-width: 750px) {
  .top-hero-btn__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
  .top-hero-btn__label img {
    width: 100%;
    transform: translate3d(0, 0, 0);
    filter: drop-shadow(0.375em 0.375em 0.75em rgba(0, 0, 0, 0.2));
  }
}

@media all and (min-width: 751px) {
  .top-hero-btn__ico {
    position: absolute;
    bottom: 0;
    left: 50%;
    display: inline-block;
    vertical-align: top;
    transform: translate3d(-50%, 0, 0);
  }
  .top-hero-btn__ico::before {
    content: '';
    display: block;
  }
  .top-hero-btn--1 .top-hero-btn__ico {
    width: 4.5%;
    margin-bottom: 17%;
    background: url("../img/top/ico_arw_btn_hero01.svg") no-repeat center center;
    background-size: contain;
  }
  .top-hero-btn--1 .top-hero-btn__ico::before {
    padding-top: 66.66667%;
  }
  .top-hero-btn--2 .top-hero-btn__ico {
    width: 3%;
    margin-bottom: 8%;
    background: url("../img/top/ico_arw_btn_hero02.svg") no-repeat center center;
    background-size: contain;
  }
  .top-hero-btn--2 .top-hero-btn__ico::before {
    padding-top: 66.66667%;
  }
  .top-hero-btn--3 .top-hero-btn__ico {
    width: 3.40909%;
    margin-bottom: 15.5303%;
    background: url("../img/top/ico_arw_btn_hero03.svg") no-repeat center center;
    background-size: contain;
  }
  .top-hero-btn--3 .top-hero-btn__ico::before {
    padding-top: 66.66667%;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-btn__ico {
    position: absolute;
    bottom: 0;
    left: 50%;
    display: inline-block;
    vertical-align: top;
    transform: translate3d(-50%, 0, 0);
  }
  .top-hero-btn__ico::before {
    content: '';
    display: block;
  }
  .top-hero-btn--1 .top-hero-btn__ico {
    width: 4.5%;
    margin-bottom: 17%;
    background: url("../img/top/ico_arw_btn_hero01.svg") no-repeat center center;
    background-size: contain;
  }
  .top-hero-btn--1 .top-hero-btn__ico::before {
    padding-top: 66.66667%;
  }
  .top-hero-btn--3 .top-hero-btn__ico {
    width: 3.40909%;
    margin-bottom: 15.5303%;
    background: url("../img/top/ico_arw_btn_hero01.svg") no-repeat center center;
    background-size: contain;
  }
  .top-hero-btn--3 .top-hero-btn__ico::before {
    padding-top: 66.66667%;
  }
}

@media all and (min-width: 751px) {
  .top-hero-scroll {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate3d(-50%, 0, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-hero-scroll {
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-bottom: 1.625em;
    transform: translate3d(-50%, 0, 0);
  }
}

@media all and (min-width: 751px) {
  .top-hero-scroll-btn {
    position: relative;
    transform-origin: center bottom;
    transform: rotate(90deg);
    z-index: 1;
  }
  .top-hero-scroll-btn > a {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    color: #fff;
    text-decoration: none;
    transform: translate3d(-50%, 0, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-hero-scroll-btn {
    position: relative;
    transform-origin: center bottom;
    transform: rotate(90deg);
    z-index: 1;
  }
  .top-hero-scroll-btn > a {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    color: #fff;
    text-decoration: none;
    transform: translate3d(-50%, 0, 0);
  }
}

@media all and (min-width: 751px) {
  .top-hero-scroll-btn__label {
    display: inline-block;
    vertical-align: top;
    font-family: "Roboto", sans-serif;
    font-size: 0.75em;
    font-weight: 500;
    letter-spacing: 0.0625em;
    transform: translate3d(0, 0, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-hero-scroll-btn__label {
    display: inline-block;
    vertical-align: top;
    font-family: "Roboto", sans-serif;
    font-size: 0.625em;
    font-weight: 500;
    letter-spacing: 0.0625em;
    transform: translate3d(0, 0, 0);
  }
}

@media all and (min-width: 751px) {
  .top-hero-scroll-btn__ico {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 4.0625em;
    margin-left: 0.625em;
    transform: translate3d(0, 0, 0);
  }
  .top-hero-scroll-btn__ico:first-child {
    margin-left: 0;
  }
  .top-hero-scroll-btn__ico::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 0;
    padding-top: 0.0625em;
    background: #fff;
    transform: translate3d(0, 0, 0);
    -webkit-animation: scrollIco 2.5s ease-in-out infinite;
            animation: scrollIco 2.5s ease-in-out infinite;
  }
}

@media screen and (max-width: 750px) {
  .top-hero-scroll-btn__ico {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 3.125em;
    margin-left: 0.3125em;
    transform: translate3d(0, 0, 0);
  }
  .top-hero-scroll-btn__ico:first-child {
    margin-left: 0;
  }
  .top-hero-scroll-btn__ico::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 0;
    padding-top: 0.0625em;
    background: #fff;
    transform: translate3d(0, 0, 0);
    -webkit-animation: scrollIco 2.5s ease-in-out infinite;
            animation: scrollIco 2.5s ease-in-out infinite;
  }
}

/* content */
/* section */
@media all and (min-width: 751px) {
  .top-section--online {
    position: relative;
    padding-top: 1.25em;
    padding-bottom: 1.25em;
    overflow: hidden;
  }
  .top-section--online::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fbe120;
  }
  .top-section--online > * {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-section--online {
    position: relative;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    overflow: hidden;
  }
  .top-section--online::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fbe120;
  }
  .top-section--online > * {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .top-section--online__inner {
    max-width: 72.5em;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--online__inner {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .top-section--online-body {
    margin-top: 3.125em;
  }
  .top-section--online-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--online-body {
    margin-top: 1.5625em;
  }
  .top-section--online-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--intro {
    position: relative;
    padding-top: 2.8125em;
    padding-bottom: 0;
    overflow: hidden;
  }
  .top-section--intro::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
  }
  .top-section--intro > * {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-section--intro {
    position: relative;
    padding-top: 2.25em;
    padding-bottom: 0;
    overflow: hidden;
  }
  .top-section--intro::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
  }
  .top-section--intro > * {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .top-section--intro__inner {
    max-width: 72.5em;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--intro__inner {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .top-section--intro-body {
    margin-top: 3.125em;
  }
  .top-section--intro-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--intro-body {
    margin-top: 1.5625em;
  }
  .top-section--intro-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--about {
    position: relative;
    margin-top: 16.25em;
    padding-top: 6.25em;
    padding-bottom: 6.25em;
    overflow: hidden;
  }
  .top-section--about::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
  }
  .top-section--about > * {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-section--about {
    position: relative;
    margin-top: 21.875em;
    padding-top: 3.125em;
    padding-bottom: 3.125em;
    overflow: hidden;
  }
  .top-section--about::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
  }
  .top-section--about > * {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .top-section--about__inner {
    max-width: 72.5em;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--about__inner {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .top-section--about-heading {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-section--about-heading__label {
    flex-shrink: 0;
    display: inline-block;
    vertical-align: bottom;
    width: 11.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--about-heading__label {
    display: inline-block;
    vertical-align: bottom;
    width: 8.1875em;
  }
  .top-section--about-heading__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-section--about-heading-sub {
    position: relative;
    flex-shrink: 0;
    display: block;
    margin-left: 1.125em;
    padding-left: 2.5em;
  }
  .top-section--about-heading-sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0.125em;
    padding-top: 2.5em;
    border-radius: 0.125em;
    background: #09f;
    transform-origin: left bottom;
    transform: rotate(45deg);
  }
  .top-section--about-heading-sub:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--about-heading-sub {
    position: relative;
    display: block;
    margin-top: 0.75em;
    padding-left: 1.875em;
  }
  .top-section--about-heading-sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0.125em;
    padding-top: 2.5em;
    border-radius: 0.125em;
    background: #09f;
    transform-origin: left bottom;
    transform: rotate(45deg);
  }
  .top-section--about-heading-sub:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--about-heading-sub__label {
    display: inline-block;
    vertical-align: bottom;
    font-size: 0.9375em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-section--about-heading-sub__label {
    display: inline-block;
    vertical-align: bottom;
    font-size: 0.8125em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-section--about-body {
    margin-top: 3.125em;
  }
  .top-section--about-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--about-body {
    margin-top: 1.5625em;
  }
  .top-section--about-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--movie {
    position: relative;
    padding-top: 6.25em;
    padding-bottom: 6.25em;
    overflow: hidden;
  }
  .top-section--movie::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
  }
  .top-section--movie > * {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-section--movie {
    position: relative;
    padding-top: 3.125em;
    padding-bottom: 3.125em;
    overflow: hidden;
  }
  .top-section--movie::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
  }
  .top-section--movie > * {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .top-section--movie__inner {
    max-width: 72.5em;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--movie__inner {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .top-section--movie-heading {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-section--movie-heading__label {
    flex-shrink: 0;
    display: inline-block;
    vertical-align: bottom;
    width: 10.3125em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--movie-heading__label {
    display: inline-block;
    vertical-align: bottom;
    width: 7.5em;
  }
  .top-section--movie-heading__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-section--movie-heading-sub {
    position: relative;
    flex-shrink: 0;
    display: block;
    margin-left: 1.125em;
    padding-left: 2.5em;
  }
  .top-section--movie-heading-sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0.125em;
    padding-top: 2.5em;
    border-radius: 0.125em;
    background: #09f;
    transform-origin: left bottom;
    transform: rotate(45deg);
  }
  .top-section--movie-heading-sub:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--movie-heading-sub {
    position: relative;
    display: block;
    margin-top: 0.75em;
    padding-left: 1.875em;
  }
  .top-section--movie-heading-sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0.125em;
    padding-top: 2.5em;
    border-radius: 0.125em;
    background: #09f;
    transform-origin: left bottom;
    transform: rotate(45deg);
  }
  .top-section--movie-heading-sub:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--movie-heading-sub__label {
    display: inline-block;
    vertical-align: bottom;
    font-size: 0.9375em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-section--movie-heading-sub__label {
    display: inline-block;
    vertical-align: bottom;
    font-size: 0.8125em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-section--movie-body {
    margin-top: 3.125em;
  }
  .top-section--movie-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--movie-body {
    margin-top: 1.5625em;
  }
  .top-section--movie-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--award {
    position: relative;
    padding-top: 5em;
    padding-bottom: 11.25em;
    overflow: hidden;
  }
  .top-section--award::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #f5f5f5;
  }
  .top-section--award > * {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-section--award {
    position: relative;
    padding-top: 2.5em;
    padding-bottom: 18.75em;
    overflow: hidden;
  }
  .top-section--award::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #f5f5f5;
  }
  .top-section--award > * {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .top-section--award__inner {
    max-width: 72.5em;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--award__inner {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .top-section--award-heading {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-section--award-heading__label {
    flex-shrink: 0;
    display: inline-block;
    vertical-align: bottom;
    width: 19.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--award-heading__label {
    display: inline-block;
    vertical-align: bottom;
    width: 13.9375em;
  }
  .top-section--award-heading__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-section--award-heading-sub {
    position: relative;
    flex-shrink: 0;
    display: block;
    margin-left: 1.125em;
    padding-left: 2.5em;
  }
  .top-section--award-heading-sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0.125em;
    padding-top: 2.5em;
    border-radius: 0.125em;
    background: #09f;
    transform-origin: left bottom;
    transform: rotate(45deg);
  }
  .top-section--award-heading-sub:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--award-heading-sub {
    position: relative;
    display: block;
    margin-top: 0.75em;
    padding-left: 1.875em;
  }
  .top-section--award-heading-sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0.125em;
    padding-top: 2.5em;
    border-radius: 0.125em;
    background: #09f;
    transform-origin: left bottom;
    transform: rotate(45deg);
  }
  .top-section--award-heading-sub:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--award-heading-sub__label {
    display: inline-block;
    vertical-align: bottom;
    font-size: 0.9375em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-section--award-heading-sub__label {
    display: inline-block;
    vertical-align: bottom;
    font-size: 0.8125em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-section--award-body {
    margin-top: 3.125em;
  }
  .top-section--award-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--award-body {
    margin-top: 1.5625em;
  }
  .top-section--award-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--review-top {
    position: relative;
    padding-top: 4.375em;
    overflow: hidden;
  }
  .top-section--review-top::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
  }
  .top-section--review-top:first-child {
    padding-top: 6.25em;
  }
  .top-section--review-top:last-child {
    padding-bottom: 6.25em;
  }
  .top-section--review-top > * {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-section--review-top {
    position: relative;
    padding-top: 2.1875em;
    overflow: hidden;
  }
  .top-section--review-top::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
  }
  .top-section--review-top:first-child {
    padding-top: 3.125em;
  }
  .top-section--review-top:last-child {
    padding-bottom: 3.125em;
  }
  .top-section--review-top > * {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .top-section--review-top__inner {
    max-width: 72.5em;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--review-top__inner {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .top-section--review-main {
    position: relative;
    padding-top: 4.375em;
    overflow: hidden;
  }
  .top-section--review-main::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 6.25em;
    background: #fff;
  }
  .top-section--review-main::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 70 / 16 * 1em - 578 / 16 * 1em + 30 / 16 * 1em);
    background: #fff;
  }
  .top-section--review-main:first-child {
    padding-top: 6.25em;
  }
  .top-section--review-main:first-child::before {
    padding-top: 8.125em;
  }
  .top-section--review-main:first-child::after {
    height: calc(100% - 100 / 16 * 1em - 578 / 16 * 1em + 30 / 16 * 1em);
  }
  .top-section--review-main:last-child {
    padding-bottom: 6.25em;
  }
  .top-section--review-main > * {
    position: relative;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-section--review-main {
    position: relative;
    padding-top: 2.1875em;
    overflow: hidden;
  }
  .top-section--review-main::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 5.9375em;
    background: #fff;
  }
  .top-section--review-main::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 35 / 16 * 1em - 626 / 16 * 1em + 60 / 16 * 1em);
    background: #fff;
  }
  .top-section--review-main:first-child {
    padding-top: 3.125em;
  }
  .top-section--review-main:first-child::before {
    padding-top: 5em;
  }
  .top-section--review-main:first-child::after {
    height: calc(100% - 50 / 16 * 1em - 626 / 16 * 1em + 60 / 16 * 1em);
  }
  .top-section--review-main:last-child {
    padding-bottom: 3.125em;
  }
  .top-section--review-main > * {
    position: relative;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-section--review-main__inner {
    position: relative;
    max-width: 72.5em;
    min-height: 36.125em;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
  .top-section--review-main__inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 50vw;
    height: 100%;
    margin-left: 8.75em;
    background: #fff;
    transform: translate3d(-100%, 0, 0);
  }
  .top-section--review-main__inner::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 50vw;
    height: 100%;
    margin-right: 8.75em;
    background: #fff;
    transform: translate3d(100%, 0, 0);
  }
  .top-section--review-main__inner > * {
    position: relative;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-section--review-main__inner {
    position: relative;
    min-height: 39.125em;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
  .top-section--review-main__inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 2.25em;
    height: 100%;
    background: #fff;
  }
  .top-section--review-main__inner::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 2.25em;
    height: 100%;
    background: #fff;
  }
  .top-section--review-main__inner > * {
    position: relative;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-section--review-heading {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-section--review-heading__label {
    flex-shrink: 0;
    display: inline-block;
    vertical-align: bottom;
    width: 12.625em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--review-heading__label {
    display: inline-block;
    vertical-align: bottom;
    width: 8.9375em;
  }
  .top-section--review-heading__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-section--review-heading-sub {
    position: relative;
    flex-shrink: 0;
    display: block;
    margin-left: 1.125em;
    padding-left: 2.5em;
  }
  .top-section--review-heading-sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0.125em;
    padding-top: 2.5em;
    border-radius: 0.125em;
    background: #09f;
    transform-origin: left bottom;
    transform: rotate(45deg);
  }
  .top-section--review-heading-sub:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--review-heading-sub {
    position: relative;
    display: block;
    margin-top: 0.75em;
    padding-left: 1.875em;
  }
  .top-section--review-heading-sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0.125em;
    padding-top: 2.5em;
    border-radius: 0.125em;
    background: #09f;
    transform-origin: left bottom;
    transform: rotate(45deg);
  }
  .top-section--review-heading-sub:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--review-heading-sub__label {
    display: inline-block;
    vertical-align: bottom;
    font-size: 0.9375em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-section--review-heading-sub__label {
    display: inline-block;
    vertical-align: bottom;
    font-size: 0.8125em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-section--review-body {
    margin-top: 3.125em;
  }
  .top-section--review-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--review-body {
    margin-top: 1.5625em;
  }
  .top-section--review-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--schedule {
    position: relative;
    padding-top: 5em;
    padding-bottom: 5em;
    overflow: hidden;
  }
  .top-section--schedule::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #f5f5f5;
  }
  .top-section--schedule > * {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-section--schedule {
    position: relative;
    padding-top: 2.5em;
    padding-bottom: 2.5em;
    overflow: hidden;
  }
  .top-section--schedule::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #f5f5f5;
  }
  .top-section--schedule > * {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .top-section--schedule__inner {
    max-width: 72.5em;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--schedule__inner {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .top-section--schedule-heading {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-section--schedule-heading__label {
    flex-shrink: 0;
    display: inline-block;
    vertical-align: bottom;
    width: 16.9375em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--schedule-heading__label {
    display: inline-block;
    vertical-align: bottom;
    width: 12.25em;
  }
  .top-section--schedule-heading__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-section--schedule-heading-sub {
    position: relative;
    flex-shrink: 0;
    display: block;
    margin-left: 1.125em;
    padding-left: 2.5em;
  }
  .top-section--schedule-heading-sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0.125em;
    padding-top: 2.5em;
    border-radius: 0.125em;
    background: #09f;
    transform-origin: left bottom;
    transform: rotate(45deg);
  }
  .top-section--schedule-heading-sub:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--schedule-heading-sub {
    position: relative;
    display: block;
    margin-top: 0.75em;
    padding-left: 1.875em;
  }
  .top-section--schedule-heading-sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0.125em;
    padding-top: 2.5em;
    border-radius: 0.125em;
    background: #09f;
    transform-origin: left bottom;
    transform: rotate(45deg);
  }
  .top-section--schedule-heading-sub:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--schedule-heading-sub__label {
    display: inline-block;
    vertical-align: bottom;
    font-size: 0.9375em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-section--schedule-heading-sub__label {
    display: inline-block;
    vertical-align: bottom;
    font-size: 0.8125em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-section--schedule-body {
    margin-top: 3.125em;
  }
  .top-section--schedule-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--schedule-body {
    margin-top: 1.5625em;
  }
  .top-section--schedule-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--requirements {
    position: relative;
    padding-top: 6.25em;
    padding-bottom: 6.25em;
    overflow: hidden;
  }
  .top-section--requirements::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
  }
  .top-section--requirements > * {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-section--requirements {
    position: relative;
    padding-top: 3.125em;
    padding-bottom: 3.125em;
    overflow: hidden;
  }
  .top-section--requirements::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
  }
  .top-section--requirements > * {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .top-section--requirements__inner {
    max-width: 72.5em;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--requirements__inner {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .top-section--requirements-heading {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-section--requirements-heading__label {
    flex-shrink: 0;
    display: inline-block;
    vertical-align: bottom;
    width: 25.9375em;
    margin-bottom: -0.4375em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--requirements-heading__label {
    display: inline-block;
    vertical-align: bottom;
    width: 18.8125em;
  }
  .top-section--requirements-heading__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-section--requirements-heading-sub {
    position: relative;
    flex-shrink: 0;
    display: block;
    margin-left: 1.125em;
    padding-left: 2.5em;
  }
  .top-section--requirements-heading-sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0.125em;
    padding-top: 2.5em;
    border-radius: 0.125em;
    background: #09f;
    transform-origin: left bottom;
    transform: rotate(45deg);
  }
  .top-section--requirements-heading-sub:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--requirements-heading-sub {
    position: relative;
    display: block;
    margin-top: 0.75em;
    padding-left: 1.875em;
  }
  .top-section--requirements-heading-sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0.125em;
    padding-top: 2.5em;
    border-radius: 0.125em;
    background: #09f;
    transform-origin: left bottom;
    transform: rotate(45deg);
  }
  .top-section--requirements-heading-sub:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--requirements-heading-sub__label {
    display: inline-block;
    vertical-align: bottom;
    font-size: 0.9375em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-section--requirements-heading-sub__label {
    display: inline-block;
    vertical-align: bottom;
    font-size: 0.8125em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-section--requirements-body {
    margin-top: 3.125em;
  }
  .top-section--requirements-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--requirements-body {
    margin-top: 1.5625em;
  }
  .top-section--requirements-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-section--event {
    position: relative;
    padding-top: 5em;
    padding-bottom: 6.25em;
    color: #fff;
    overflow: hidden;
  }
  .top-section--event::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
  }
  .top-section--event > * {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-section--event {
    position: relative;
    padding-top: 2.5em;
    padding-bottom: 3.125em;
    color: #fff;
    overflow: hidden;
  }
  .top-section--event::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
  }
  .top-section--event > * {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .top-section--event__inner {
    max-width: 72.5em;
    margin: 0 auto;
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--event__inner {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}

@media all and (min-width: 751px) {
  .top-section--event-logo {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-section--event-logo {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-section--event-logo__label {
    display: inline-block;
    vertical-align: bottom;
    width: 19.375em;
  }
}

@media screen and (max-width: 750px) {
  .top-section--event-logo__label {
    display: inline-block;
    vertical-align: bottom;
    width: 16.375em;
  }
  .top-section--event-logo__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-section--event-body {
    margin-top: 1.5625em;
  }
  .top-section--event-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-section--event-body {
    margin-top: 1.5625em;
  }
  .top-section--event-body:first-child {
    margin-top: 0;
  }
}

/* online */
@media all and (min-width: 751px) {
  .top-online-feature-card {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-card__parts + .top-online-feature-card__parts {
    flex-shrink: 0;
    margin-left: 1.5em;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-card__parts {
    margin-top: 1em;
  }
  .top-online-feature-card__parts:first-child {
    margin-left: 0;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-desc {
    display: flex;
    justify-content: flex-start;
    align-items: baseline;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-desc__term {
    flex-shrink: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-desc__term {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-desc__term__label {
    display: block;
    font-size: 1.75em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-desc__term__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1.375em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-desc__defin {
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: baseline;
    margin-left: 1.3125em;
  }
  .top-online-feature-desc__defin:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-desc__defin {
    display: flex;
    justify-content: center;
    align-items: baseline;
    margin-top: 0.5em;
  }
  .top-online-feature-desc__defin:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-txt {
    margin-left: 0.5em;
    font-size: 1.125em;
    font-weight: 700;
  }
  .top-online-feature-txt:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-txt {
    margin-left: 0.5em;
    font-size: 0.9375em;
    font-weight: 700;
  }
  .top-online-feature-txt:first-child {
    margin-left: 0;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-comment {
    margin-top: 0.5em;
  }
  .top-online-feature-comment:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-comment {
    margin-top: 0.5em;
  }
  .top-online-feature-comment:first-child {
    margin-left: 0;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-comment-txt {
    line-height: 1.5;
    font-size: 1em;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-comment-txt {
    line-height: 1.71429;
    font-size: 0.875em;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-note {
    margin-top: 0.1875em;
  }
  .top-online-feature-note:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-note {
    margin-top: 0.3125em;
  }
  .top-online-feature-note:first-child {
    margin-left: 0;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-note-txt {
    padding-left: 1em;
    line-height: 2;
    font-size: 0.75em;
    font-weight: 700;
    color: #f00;
    text-indent: -1em;
  }
  .top-online-feature-note-txt > * {
    text-indent: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-note-txt {
    padding-left: 1em;
    line-height: 1.8;
    font-size: 0.625em;
    font-weight: 700;
    color: #f00;
    text-indent: -1em;
  }
  .top-online-feature-note-txt > * {
    text-indent: 0;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-note__label {
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-note__label {
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-btn {
    text-align: center;
  }
  .top-online-feature-btn > a {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
  }
  .top-online-feature-btn > a .top-online-feature-btn-body {
    transition: background 0.2s ease-in-out;
  }
  .top-online-feature-btn > a:hover .top-online-feature-btn-body {
    background: #fbe120;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-btn {
    text-align: center;
  }
  .top-online-feature-btn > a {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-btn-body {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 15em;
    height: 5em;
    border-radius: 5em;
    background: #fff;
  }
  .top-online-feature-btn-body::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.1875em solid #000;
    border-radius: 5em;
  }
  .top-online-feature-btn-body > * {
    position: relative;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-btn-body {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 100%;
    width: 12.375em;
    height: 3.5em;
    border-radius: 3.5em;
    background: #fff;
  }
  .top-online-feature-btn-body::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.1875em solid #000;
    border-radius: 3.5em;
  }
  .top-online-feature-btn-body > * {
    position: relative;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-online-feature-btn__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1.375em;
    font-weight: 700;
    color: #000;
  }
}

@media screen and (max-width: 750px) {
  .top-online-feature-btn__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1.0625em;
    font-weight: 700;
    color: #000;
  }
}

/* intro */
@media all and (min-width: 751px) {
  .top-intro-feature-list {
    display: flex;
    justify-content: center;
    align-items: flex-end;
  }
}

@media screen and (max-width: 750px) {
  .top-intro-feature-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-end;
  }
}

@media all and (min-width: 751px) {
  .top-intro-feature-list__item {
    width: 16.5em;
    margin-left: 1.3125em;
  }
  .top-intro-feature-list__item:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-intro-feature-list__item {
    width: 10.0625em;
    margin-left: 0.8125em;
  }
  .top-intro-feature-list__item:nth-child(2n+1) {
    margin-left: 0;
  }
  .top-intro-feature-list__item:nth-child(n+3) {
    margin-top: 0.625em;
  }
}

@media all and (min-width: 751px) {
  .top-intro-feature-img {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-intro-feature-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-intro-feature-img__label {
    display: inline-block;
    vertical-align: top;
    max-width: 16.5em;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-intro-feature-img__label {
    display: inline-block;
    vertical-align: top;
    max-width: 10.0625em;
    width: 100%;
  }
  .top-intro-feature-img__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-intro-menu-btn {
    margin-top: 1.875em;
    text-align: center;
  }
  .top-intro-menu-btn:first-child {
    margin-top: 0;
  }
  .top-intro-menu-btn a {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
  }
  .top-intro-menu-btn a .top-intro-menu-btn__ico {
    transition: transform 0.2s ease-in-out;
  }
  .top-intro-menu-btn a:hover .top-intro-menu-btn__ico {
    transform: translate3d(-50%, 0.3125em, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-intro-menu-btn {
    margin-top: 1.875em;
    text-align: center;
  }
  .top-intro-menu-btn:first-child {
    margin-top: 0;
  }
  .top-intro-menu-btn a {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
  }
}

@media all and (min-width: 751px) {
  .top-intro-menu-btn-list {
    display: flex;
    justify-content: center;
    align-items: flex-end;
  }
}

@media screen and (max-width: 750px) {
  .top-intro-menu-btn-list {
    display: flex;
    justify-content: center;
    align-items: flex-end;
  }
}

@media all and (min-width: 751px) {
  .top-intro-menu-btn-list__item {
    margin-left: 1.5em;
  }
  .top-intro-menu-btn-list__item:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-intro-menu-btn-list__item {
    margin-left: 0.8125em;
  }
  .top-intro-menu-btn-list__item:first-child {
    margin-left: 0;
  }
}

@media all and (min-width: 751px) {
  .top-intro-menu-btn-body {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-intro-menu-btn-body {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .top-intro-menu-btn-desc__term {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-intro-menu-btn-desc__term {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-intro-menu-btn-desc__term__label {
    display: inline-block;
    vertical-align: top;
    width: 10em;
  }
}

@media screen and (max-width: 750px) {
  .top-intro-menu-btn-desc__term__label {
    display: inline-block;
    vertical-align: top;
    width: 6.0625em;
  }
}

@media all and (min-width: 751px) {
  .top-intro-menu-btn-desc__defin {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 34.25em;
    height: 10.125em;
    margin-top: -3em;
    padding-top: 3.3125em;
    padding-bottom: 3em;
    background: url("../img/top/bg_intro_menu_btn01.svg") no-repeat center bottom;
    background-size: contain;
    color: #000;
  }
  .top-intro-menu-btn-desc__defin:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-intro-menu-btn-desc__defin {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 10em;
    height: 9.4375em;
    margin-top: -2em;
    padding-top: 2.3125em;
    padding-bottom: 2em;
    background: url("../img/top/bg_intro_menu_btn01_sp.svg") no-repeat center bottom;
    background-size: contain;
    color: #000;
  }
  .top-intro-menu-btn-desc__defin:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-intro-menu-btn-txt {
    text-align: center;
    line-height: 1.78571;
    font-size: 1.75em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-intro-menu-btn-txt {
    text-align: center;
    line-height: 1.44444;
    font-size: 1.125em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-intro-menu-btn__ico {
    position: absolute;
    bottom: 0;
    left: 50%;
    display: inline-block;
    vertical-align: top;
    width: 0.6875em;
    margin-bottom: 1.375em;
    background: url("../img/common/ico_arw_btn05.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, 0, 0);
  }
  .top-intro-menu-btn__ico::before {
    content: '';
    display: block;
    padding-top: 63.63636%;
  }
}

@media screen and (max-width: 750px) {
  .top-intro-menu-btn__ico {
    position: absolute;
    bottom: 0;
    left: 50%;
    display: inline-block;
    vertical-align: top;
    width: 0.375em;
    margin-bottom: 0.90625em;
    background: url("../img/common/ico_arw_btn05.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, 0, 0);
  }
  .top-intro-menu-btn__ico::before {
    content: '';
    display: block;
    padding-top: 63.63636%;
  }
}

/* about */
@media all and (min-width: 751px) {
  .top-about-section--01 {
    position: relative;
    margin-top: 3em;
  }
  .top-about-section--01:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-about-section--01 {
    margin-top: 2em;
  }
  .top-about-section--01:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-section--01-heading {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-about-section--01-heading {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-about-section--01-heading__label {
    display: inline-block;
    vertical-align: top;
    font-size: 2em;
    font-weight: 700;
  }
  .top-about-section--01-heading__label em {
    font-size: 162.5%;
    color: #09f;
  }
}

@media screen and (max-width: 750px) {
  .top-about-section--01-heading__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1.25em;
    font-weight: 700;
  }
  .top-about-section--01-heading__label em {
    font-size: 120%;
    color: #09f;
  }
}

@media all and (min-width: 751px) {
  .top-about-section--01-body {
    margin-top: 1em;
  }
  .top-about-section--01-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-about-section--01-body {
    margin-top: 1em;
  }
  .top-about-section--01-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-section--01-lead-txt {
    margin-top: 2em;
    text-align: center;
    line-height: 2;
    font-size: 1.125em;
    font-weight: 700;
  }
  .top-about-section--01-lead-txt:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-about-section--01-lead-txt {
    margin-top: 2em;
    line-height: 2;
    font-size: 1.125em;
    font-weight: 700;
  }
  .top-about-section--01-lead-txt:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-section--02 {
    position: relative;
    margin-top: 2.5em;
  }
  .top-about-section--02:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-about-section--02 {
    margin-top: 2.5em;
  }
  .top-about-section--02:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-section--02-heading__label {
    display: inline-block;
    vertical-align: top;
    font-size: 2em;
    font-weight: 700;
    color: #09f;
    letter-spacing: 0.0625em;
  }
}

@media screen and (max-width: 750px) {
  .top-about-section--02-heading__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1.375em;
    font-weight: 700;
    color: #09f;
    letter-spacing: 0.0625em;
  }
}

@media all and (min-width: 751px) {
  .top-about-section--02-body {
    margin-top: 1.5em;
  }
  .top-about-section--02-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-about-section--02-body {
    margin-top: 0.75em;
  }
  .top-about-section--02-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-section--02-container {
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }
}

@media all and (min-width: 751px) {
  .top-about-section--02-content {
    flex-grow: 1;
    margin-left: 3em;
  }
}

@media screen and (max-width: 750px) {
  .top-about-section--02-content {
    margin-top: 1.5em;
  }
  .top-about-section--02-content:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-section--02-img {
    flex-shrink: 0;
    width: 43.5em;
    margin-left: -10em;
    text-align: left;
  }
}

@media screen and (max-width: 750px) {
  .top-about-section--02-img {
    margin-top: 1.25em;
    text-align: center;
  }
  .top-about-section--02-img:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-section--02-img__label {
    display: inline-block;
    vertical-align: top;
    max-width: 43.5em;
    width: 100%;
    border-radius: 1.25em;
    overflow: hidden;
  }
}

@media screen and (max-width: 750px) {
  .top-about-section--02-img__label {
    display: inline-block;
    vertical-align: top;
    width: 23.4375em;
    margin-left: -1.25em;
    margin-right: -1.25em;
    overflow: hidden;
  }
  .top-about-section--02-img__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-about-section--02-lead-txt {
    margin-top: 2em;
    line-height: 2;
    font-size: 1em;
  }
  .top-about-section--02-lead-txt:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-about-section--02-lead-txt {
    margin-top: 2em;
    line-height: 2;
    font-size: 1em;
  }
  .top-about-section--02-lead-txt:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-theme {
    margin-top: 5.625em;
  }
  .top-about-theme:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-about-theme {
    margin-top: 0.9375em;
  }
  .top-about-theme:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-theme-card {
    display: flex;
    justify-content: center;
  }
}

@media all and (min-width: 751px) {
  .top-about-theme-card__parts {
    width: 20em;
    margin-left: 5em;
  }
  .top-about-theme-card__parts:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-about-theme-card__parts {
    margin-top: 1.75em;
  }
  .top-about-theme-card__parts:first-child {
    margin-left: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-theme-container {
    height: 100%;
    padding-top: 11.375em;
  }
}

@media screen and (max-width: 750px) {
  .top-about-theme-container {
    padding-top: 7.5625em;
  }
}

@media all and (min-width: 751px) {
  .top-about-theme-container__inner {
    height: 100%;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    padding-left: 1.875em;
    padding-right: 1.875em;
    border-radius: 1.25em;
    background: #f2f2f2;
  }
}

@media screen and (max-width: 750px) {
  .top-about-theme-container__inner {
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    padding-left: 1.875em;
    padding-right: 1.875em;
    border-radius: 1.25em;
    background: #f2f2f2;
  }
}

@media all and (min-width: 751px) {
  .top-about-theme-img {
    position: relative;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-about-theme-img {
    position: relative;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-about-theme-img__label {
    display: inline-block;
    vertical-align: top;
    width: 23em;
    margin-top: -12.875em;
    margin-left: -3.375em;
    margin-right: -3.375em;
  }
}

@media screen and (max-width: 750px) {
  .top-about-theme-img__label {
    display: inline-block;
    vertical-align: top;
    width: 12.6875em;
    margin-top: -9.0625em;
    margin-bottom: -1em;
  }
  .top-about-theme-img__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-about-theme-img__ico {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 12.625em;
    margin-top: -15.25em;
    margin-left: -1.875em;
  }
}

@media screen and (max-width: 750px) {
  .top-about-theme-img__ico {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 10.3125em;
    margin-top: -7.9375em;
    margin-left: -0.875em;
  }
}

@media all and (min-width: 751px) {
  .top-about-theme-content {
    margin-top: 1em;
  }
  .top-about-theme-content:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-theme-txt {
    line-height: 2.13333;
    font-size: 0.9375em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-about-theme-txt {
    line-height: 2.13333;
    font-size: 0.9375em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-about-theme-list__item {
    padding-left: 1.25em;
    line-height: 2.13333;
    font-size: 0.9375em;
    font-weight: 700;
    text-indent: -1.25em;
  }
  .top-about-theme-list__item > * {
    text-indent: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-about-theme-list__item {
    padding-left: 1.25em;
    line-height: 2.13333;
    font-size: 0.9375em;
    font-weight: 700;
    text-indent: -1.25em;
  }
  .top-about-theme-list__item > * {
    text-indent: 0;
  }
}

@media all and (min-width: 751px) {
  .top-about-theme-list__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 1.25em;
    height: 2.13333em;
  }
  .top-about-theme-list__label::before {
    content: '';
    position: absolute;
    top: 1.06667em;
    left: 0;
    width: 1em;
    height: 1em;
    border-radius: 1em;
    background: #09f;
    transform: translate3d(0, -50%, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-about-theme-list__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 1.25em;
    height: 2.13333em;
  }
  .top-about-theme-list__label::before {
    content: '';
    position: absolute;
    top: 1.06667em;
    left: 0;
    width: 1em;
    height: 1em;
    border-radius: 1em;
    background: #09f;
    transform: translate3d(0, -50%, 0);
  }
}

/* movie */
@media all and (min-width: 751px) {
  .top-movie-section {
    margin-top: 3em;
  }
  .top-movie-section:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-section {
    margin-top: 2em;
  }
  .top-movie-section:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-section-heading {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-section-heading {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-movie-section-heading__label {
    display: inline-block;
    vertical-align: top;
    font-size: 2em;
    font-weight: 700;
  }
  .top-movie-section-heading__label em {
    font-size: 162.5%;
    color: #09f;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-section-heading__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1.25em;
    font-weight: 700;
  }
  .top-movie-section-heading__label em {
    font-size: 120%;
    color: #09f;
  }
}

@media all and (min-width: 751px) {
  .top-movie-section-body {
    margin-top: 1em;
  }
  .top-movie-section-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-section-body {
    margin-top: 1em;
  }
  .top-movie-section-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-section-lead-txt {
    margin-top: 2em;
    text-align: center;
    line-height: 2;
    font-size: 1.125em;
    font-weight: 700;
  }
  .top-movie-section-lead-txt:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-section-lead-txt {
    margin-top: 2em;
    line-height: 2;
    font-size: 1.125em;
    font-weight: 700;
  }
  .top-movie-section-lead-txt:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-section-note {
    margin-top: 0.75em;
  }
  .top-movie-section-note:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-section-note {
    margin-top: 0.375em;
  }
  .top-movie-section-note:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-section-note-txt {
    text-align: center;
    padding-left: 1em;
    font-size: 0.8125em;
    font-weight: 700;
    text-indent: -1em;
  }
  .top-movie-section-note-txt > * {
    text-indent: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-section-note-txt {
    text-align: center;
    padding-left: 1em;
    font-size: 0.75em;
    font-weight: 700;
    text-indent: -1em;
  }
  .top-movie-section-note-txt > * {
    text-indent: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-section-note__label {
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-section-note__label {
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-btn {
    position: relative;
    margin-top: 2.75em;
    text-align: center;
    z-index: 1;
  }
  .top-movie-btn:first-child {
    margin-top: 0;
  }
  .top-movie-btn > a {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
  }
  .top-movie-btn > a[disabled] {
    pointer-events: none;
  }
  .top-movie-btn > a .top-movie-btn__ico {
    transition: transform 0.2s ease-in-out;
  }
  .top-movie-btn > a:hover .top-movie-btn__ico {
    transform: translate3d(0.3125em, -50%, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-movie-btn {
    position: relative;
    margin-top: 1.625em;
    text-align: center;
    z-index: 1;
  }
  .top-movie-btn:first-child {
    margin-top: 0;
  }
  .top-movie-btn > a {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
  }
  .top-movie-btn > a[disabled] {
    pointer-events: none;
  }
}

@media all and (min-width: 751px) {
  .top-movie-btn-body {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 22.5em;
    height: 5em;
    border-radius: 5em;
    background: #09f;
  }
  .top-movie-btn a[disabled] .top-movie-btn-body {
    background: #bbbcbf;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-btn-body {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 16.875em;
    height: 4.375em;
    border-radius: 4.375em;
    background: #09f;
  }
  .top-movie-btn a[disabled] .top-movie-btn-body {
    background: #bbbcbf;
  }
}

@media all and (min-width: 751px) {
  .top-movie-btn__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1em;
    font-weight: 700;
    color: #fff;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-btn__label {
    display: inline-block;
    vertical-align: top;
    font-size: 0.9375em;
    font-weight: 700;
    color: #fff;
  }
}

@media all and (min-width: 751px) {
  .top-movie-btn__ico {
    position: absolute;
    top: 50%;
    right: 0;
    display: inline-block;
    vertical-align: top;
    width: 0.4375em;
    margin-right: 2.25em;
    background: url("../img/common/ico_arw_btn01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(0, -50%, 0);
  }
  .top-movie-btn__ico::before {
    content: '';
    display: block;
    padding-top: 157.14286%;
  }
  .top-requirements-condition-btn a[disabled] .top-movie-btn__ico::before {
    content: none;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-btn__ico {
    position: absolute;
    top: 50%;
    right: 0;
    display: inline-block;
    vertical-align: top;
    width: 0.4375em;
    margin-right: 2em;
    background: url("../img/common/ico_arw_btn01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(0, -50%, 0);
  }
  .top-movie-btn__ico::before {
    content: '';
    display: block;
    padding-top: 157.14286%;
  }
  .top-requirements-condition-btn a[disabled] .top-movie-btn__ico::before {
    content: none;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme {
    margin-top: 6.5625em;
  }
  .top-movie-theme:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme {
    margin-top: 4.6875em;
  }
  .top-movie-theme:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-section {
    margin-top: 6.5625em;
  }
  .top-movie-theme-section:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-section {
    margin-top: 4.6875em;
  }
  .top-movie-theme-section:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-section-heading {
    position: relative;
    padding-left: 7.1875em;
    padding-right: 7.1875em;
  }
  .top-movie-theme-section-heading::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-top: 1.75em;
    background: url("../img/top/bg_movie_theme01.png") repeat-x center bottom;
    background-size: contain;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-section-heading {
    position: relative;
  }
  .top-movie-theme-section-heading::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin-left: -1.25em;
    margin-right: -1.25em;
    padding-top: 1em;
    background: url("../img/top/bg_movie_theme01_sp.png") repeat-x center bottom;
    background-size: contain;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-section-heading__ico {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-top: -3.1875em;
    width: 18.625em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-section-heading__ico {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-top: -3.1875em;
    width: 13.9375em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-section-body {
    margin-top: 1.25em;
  }
  .top-movie-theme-section-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-section-body {
    margin-top: 0.625em;
  }
  .top-movie-theme-section-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature {
    margin-top: 3em;
  }
  .top-movie-theme-feature:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature {
    margin-top: 2.25em;
  }
  .top-movie-theme-feature:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-section--01 {
    position: relative;
    max-width: 53.75em;
    margin: 0 auto;
    border-radius: 1.25em;
  }
  .top-movie-theme-feature-section--01::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.5em solid #09f;
    border-radius: 1.25em;
    background: #fff;
  }
  .top-movie-theme-feature-section--01 > * {
    position: relative;
    z-index: 1;
  }
  .top-movie-special .top-movie-theme-feature-section--01::before {
    border: 0.5em solid #e4b34d;
    background: #f2f2f2;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-section--01 {
    position: relative;
    margin-top: 4em;
    border-radius: 1.25em;
  }
  .top-movie-theme-feature-section--01::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.375em solid #09f;
    border-radius: 1.25em;
    background: #fff;
  }
  .top-movie-theme-feature-section--01 > * {
    position: relative;
    z-index: 1;
  }
  .top-movie-special .top-movie-theme-feature-section--01 {
    margin-top: 0;
  }
  .top-movie-special .top-movie-theme-feature-section--01::before {
    border: 0.375em solid #e4b34d;
    background: #f2f2f2;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-section--01-heading {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-section--01-heading {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-section--01-heading__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-top: -0.9375em;
    line-height: 1.875;
    font-size: 2.5em;
    font-weight: 700;
    color: #09f;
  }
  .top-movie-theme-feature-section--01-heading__label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: calc(100% + 64 / 40 * 1em);
    height: 100%;
    background: #fff;
    transform: translate3d(-50%, 0, 0);
    z-index: -1;
  }
  .top-movie-special .top-movie-theme-feature-section--01-heading__label {
    color: #e4b34d;
  }
  .top-movie-special .top-movie-theme-feature-section--01-heading__label::before {
    background: #f2f2f2;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-section--01-heading__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-top: -2em;
    line-height: 1.33333;
    font-size: 1.5em;
    font-weight: 700;
    color: #09f;
  }
  .top-movie-theme-feature-section--01-heading__label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 7.66667em;
    height: 100%;
    background: #fff;
    transform: translate3d(-50%, 0, 0);
    z-index: -1;
  }
  .top-movie-special .top-movie-theme-feature-section--01-heading__label {
    margin-top: -0.66667em;
    color: #e4b34d;
  }
  .top-movie-special .top-movie-theme-feature-section--01-heading__label::before {
    width: calc(100% + 64 / 24 * 1em);
    background: #f2f2f2;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-section--01-body {
    padding-top: 1.5em;
    padding-bottom: 3em;
    padding-left: 1.5em;
    padding-right: 1.5em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-section--01-body {
    padding-top: 2em;
    padding-bottom: 2em;
    padding-left: 1em;
    padding-right: 1em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-section--02 {
    margin-top: 2.5em;
  }
  .top-movie-theme-feature-section--02:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-section--02 {
    margin-top: 1.875em;
  }
  .top-movie-theme-feature-section--02:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-section--02-heading__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding-left: 3.46154em;
    line-height: 1.46154;
    font-size: 1.625em;
    font-weight: 700;
  }
  .top-movie-theme-feature-section--02-heading__label::before {
    content: '';
    position: absolute;
    top: 0.73077em;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 2.46154em;
    padding-top: 0.03846em;
    background: #09f;
    transform: translate3d(0, -50%, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-section--02-heading__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding-left: 2.8em;
    line-height: 1.5;
    font-size: 1.25em;
    font-weight: 700;
  }
  .top-movie-theme-feature-section--02-heading__label::before {
    content: '';
    position: absolute;
    top: 0.75em;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 2em;
    padding-top: 0.1em;
    background: #09f;
    transform: translate3d(0, -50%, 0);
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-section--02-body {
    margin-top: 1.5em;
  }
  .top-movie-theme-feature-section--02-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-section--02-body {
    margin-top: 1.125em;
  }
  .top-movie-theme-feature-section--02-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-img {
    position: relative;
    width: 37.125em;
    margin: 0 auto;
    border-radius: 1.25em;
    background: #fff;
    text-align: center;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
    z-index: 1;
  }
  .top-movie-special .top-movie-theme-feature-img {
    background: #f2f2f2;
  }
  .top-movie-theme-feature-img a .top-movie-theme-feature-img__label {
    transition: opacity 0.2s ease-in-out;
  }
  .top-movie-theme-feature-img a:hover .top-movie-theme-feature-img__label {
    opacity: .75;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-img {
    position: relative;
    width: 18.5em;
    margin: 0 auto;
    border-radius: 1.25em;
    background: #fff;
    text-align: center;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
    z-index: 1;
  }
  .top-movie-special .top-movie-theme-feature-img {
    background: #f2f2f2;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-img__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 37.125em;
    border-radius: 1.25em;
    background: #fff;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
  }
  .top-movie-theme-feature-img__label::before {
    content: '';
    display: block;
    padding-top: 56.25%;
  }
  .top-movie-theme-feature-img a .top-movie-theme-feature-img__label {
    position: relative;
  }
  .top-movie-theme-feature-img a .top-movie-theme-feature-img__label::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 4em;
    padding-top: 4em;
    background: url("../img/common/ico_play01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, -50%, 0);
  }
  .top-movie-special .top-movie-theme-feature-img a .top-movie-theme-feature-img__label::after {
    background: url("../img/common/ico_play02.svg") no-repeat center center;
    background-size: contain;
  }
  .top-movie-theme-feature-img__label img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-img__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 18.5em;
    border-radius: 1.25em;
    background: #fff;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
  }
  .top-movie-theme-feature-img__label::before {
    content: '';
    display: block;
    padding-top: 56.25%;
  }
  .top-movie-theme-feature-img a .top-movie-theme-feature-img__label {
    position: relative;
  }
  .top-movie-theme-feature-img a .top-movie-theme-feature-img__label::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2.5em;
    padding-top: 2.5em;
    background: url("../img/common/ico_play01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, -50%, 0);
  }
  .top-movie-theme-feature-img__label img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-content {
    margin-top: 2em;
  }
  .top-movie-theme-feature-content:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-content {
    margin-top: 1em;
  }
  .top-movie-theme-feature-content:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-desc__term {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-desc__term {
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-desc__term-sub {
    flex-shrink: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 2.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-desc__term-sub {
    flex-shrink: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 1.5em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-desc__term-sub__label {
    flex-shrink: 0;
    display: block;
    width: 2.4375em;
    height: 0.8125em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-desc__term-sub__label {
    flex-shrink: 0;
    display: block;
    width: 1.625em;
    height: 0.5625em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-desc__term__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-left: 0.83333em;
    padding-left: 0.66667em;
    line-height: 1.58333;
    font-size: 1.5em;
    font-weight: 700;
  }
  .top-movie-theme-feature-desc__term__label::before {
    content: '';
    position: absolute;
    top: 0.79167em;
    left: 0;
    height: 1.25em;
    padding-left: 0.04167em;
    background: #09f;
    transform: translate3d(0, -50%, 0);
  }
  .top-movie-theme-feature-desc__term__label:first-child {
    margin-left: 0;
    padding-left: 0;
  }
  .top-movie-theme-feature-desc__term__label:first-child::before {
    content: none;
  }
  .top-movie-special .top-movie-theme-feature-desc__term__label::before {
    background: #e4b34d;
  }
  .top-movie-theme-feature-desc__term__label br {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-desc__term__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-left: 0.83333em;
    padding-left: 0.66667em;
    line-height: 1.6;
    font-size: 0.9375em;
    font-weight: 700;
  }
  .top-movie-theme-feature-desc__term__label::before {
    content: '';
    position: absolute;
    top: 0.8em;
    left: 0;
    height: 1.25em;
    padding-left: 0.06667em;
    background: #09f;
    transform: translate3d(0, -50%, 0);
  }
  .top-movie-theme-feature-desc__term__label:first-child {
    margin-left: 0;
    padding-left: 0;
  }
  .top-movie-theme-feature-desc__term__label:first-child::before {
    content: none;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-comment {
    margin-top: 0.9375em;
  }
  .top-movie-theme-feature-comment:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-comment {
    margin-top: 0.75em;
  }
  .top-movie-theme-feature-comment:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-comment-txt {
    text-align: center;
    font-size: 0.9375em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-comment-txt {
    text-align: center;
    font-size: 0.75em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-lead-img {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-lead-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-lead-img__label {
    display: inline-block;
    vertical-align: top;
    width: 27.125em;
    margin-top: -2.25em;
    margin-bottom: -1.625em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-lead-img__label {
    display: inline-block;
    vertical-align: top;
    width: 14.8125em;
    margin-top: -2.25em;
    margin-bottom: -1.6875em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-note {
    margin-top: 1em;
  }
  .top-movie-theme-feature-note:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-note {
    margin-top: 0.5em;
  }
  .top-movie-theme-feature-note:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-note-txt {
    text-align: center;
    padding-left: 1em;
    font-size: 0.8125em;
    font-weight: 700;
    text-indent: -1em;
  }
  .top-movie-theme-feature-note-txt > * {
    text-indent: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-note-txt {
    padding-left: 1em;
    font-size: 0.625em;
    font-weight: 700;
    text-indent: -1em;
  }
  .top-movie-theme-feature-note-txt > * {
    text-indent: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-feature-note__label {
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-feature-note__label {
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-top: 3em;
  }
  .top-movie-theme-list:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-list {
    margin-top: 2.25em;
  }
  .top-movie-theme-list:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-list__item {
    width: calc(1 / 2 * 100% - 56 * 1 / 2 / 16 * 1em);
    margin-left: 3.5em;
  }
  .top-movie-theme-list__item:nth-child(2n+1) {
    margin-left: 0em;
  }
  .top-movie-theme-list__item:nth-child(n+3) {
    margin-top: 3.5em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-list__item {
    margin-top: 1.5em;
  }
  .top-movie-theme-list__item:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-container {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    height: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-img {
    position: relative;
    flex-shrink: 0;
    width: 28.25em;
    margin: 0 auto;
    border-radius: 1.25em;
    background: #fff;
    text-align: center;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
    z-index: 1;
  }
  .top-movie-theme-img a .top-movie-theme-img__label {
    transition: opacity 0.2s ease-in-out;
  }
  .top-movie-theme-img a:hover .top-movie-theme-img__label {
    opacity: .75;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-img {
    position: relative;
    width: 18.5em;
    margin: 0 auto;
    border-radius: 1.25em;
    background: #fff;
    text-align: center;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-img__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 28.25em;
    border-radius: 1.25em;
    background: #fff;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
  }
  .top-movie-theme-img__label::before {
    content: '';
    display: block;
    padding-top: 56.25%;
  }
  .top-movie-theme-img a .top-movie-theme-img__label {
    position: relative;
  }
  .top-movie-theme-img a .top-movie-theme-img__label::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 4em;
    padding-top: 4em;
    background: url("../img/common/ico_play01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, -50%, 0);
  }
  .top-movie-theme-img__label img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-img__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 18.5em;
    border-radius: 1.25em;
    background: #fff;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
  }
  .top-movie-theme-img__label::before {
    content: '';
    display: block;
    padding-top: 56.25%;
  }
  .top-movie-theme-img a .top-movie-theme-img__label {
    position: relative;
  }
  .top-movie-theme-img a .top-movie-theme-img__label::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2.5em;
    padding-top: 2.5em;
    background: url("../img/common/ico_play01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, -50%, 0);
  }
  .top-movie-theme-img__label img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-content {
    flex-grow: 1;
    width: 100%;
    margin-top: -4em;
  }
  .top-movie-theme-content:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-content {
    margin-top: -3.125em;
  }
  .top-movie-theme-content:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-content__inner {
    position: relative;
    height: 100%;
    padding-top: 5.5em;
    padding-bottom: 2em;
    padding-left: 2.75em;
    padding-right: 2.75em;
    border-radius: 1.25em;
    overflow: hidden;
  }
  .top-movie-theme-content__inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.25em solid #09f;
    border-radius: 1.25em;
    background: #fff;
  }
  .top-movie-theme-content:first-child .top-movie-theme-content__inner {
    padding-top: 1.5em;
  }
  .top-movie-theme-content__inner > * {
    position: relative;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-content__inner {
    position: relative;
    padding-top: 4.625em;
    padding-bottom: 1.5em;
    padding-left: 1.5em;
    padding-right: 1.5em;
    border-radius: 1.25em;
    overflow: hidden;
  }
  .top-movie-theme-content__inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.25em solid #09f;
    border-radius: 1.25em;
    background: #fff;
  }
  .top-movie-theme-content:first-child .top-movie-theme-content__inner {
    padding-top: 1.5em;
  }
  .top-movie-theme-content__inner > * {
    position: relative;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-desc {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    height: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-desc__term {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-shrink: 0;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-desc__term {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-desc__term-sub {
    flex-shrink: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 2.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-desc__term-sub {
    flex-shrink: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 1.5em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-desc__term-sub__label {
    flex-shrink: 0;
    display: block;
    width: 2.4375em;
    height: 0.8125em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-desc__term-sub__label {
    flex-shrink: 0;
    display: block;
    width: 1.625em;
    height: 0.5625em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-desc__term__label {
    position: relative;
    flex-grow: 1;
    display: inline-block;
    vertical-align: top;
    margin-left: 0.90909em;
    padding-left: 0.72727em;
    line-height: 1.63636;
    font-size: 1.375em;
    font-weight: 700;
  }
  .top-movie-theme-desc__term__label::before {
    content: '';
    position: absolute;
    top: 0.81818em;
    left: 0;
    height: 1.36364em;
    padding-left: 0.04545em;
    background: #09f;
    transform: translate3d(0, -50%, 0);
  }
  .top-movie-theme-desc__term__label:first-child {
    margin-left: 0;
    padding-left: 0;
  }
  .top-movie-theme-desc__term__label:first-child::before {
    content: none;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-desc__term__label {
    position: relative;
    flex-grow: 1;
    display: inline-block;
    vertical-align: top;
    margin-left: 0.83333em;
    padding-left: 0.66667em;
    line-height: 1.6;
    font-size: 0.9375em;
    font-weight: 700;
  }
  .top-movie-theme-desc__term__label::before {
    content: '';
    position: absolute;
    top: 0.8em;
    left: 0;
    height: 1.25em;
    padding-left: 0.06667em;
    background: #09f;
    transform: translate3d(0, -50%, 0);
  }
  .top-movie-theme-desc__term__label:first-child {
    margin-left: 0;
    padding-left: 0;
  }
  .top-movie-theme-desc__term__label:first-child::before {
    content: none;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-desc__defin {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    flex-grow: 1;
    width: 100%;
    margin-top: 1em;
  }
  .top-movie-theme-desc__defin:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-desc__defin {
    margin-top: 0.875em;
  }
  .top-movie-theme-desc__defin:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-txt {
    flex-grow: 1;
    width: 100%;
    line-height: 2;
    font-size: 0.9375em;
    word-break: break-word;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-txt {
    line-height: 2;
    font-size: 0.875em;
    word-break: break-word;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-comment {
    width: 100%;
    margin-top: 0.875em;
  }
  .top-movie-theme-comment:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-comment {
    margin-top: 0.75em;
  }
  .top-movie-theme-comment:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-theme-comment-txt {
    text-align: right;
    font-size: 0.875em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-theme-comment-txt {
    text-align: right;
    font-size: 0.75em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best {
    margin-top: 2.8125em;
  }
  .top-movie-best:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best {
    margin-top: 1.875em;
  }
  .top-movie-best:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-section {
    position: relative;
    height: 66.875em;
    margin-top: 2.8125em;
    padding-top: 3.875em;
    padding-bottom: 3.75em;
  }
  .top-movie-best-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 77.5em;
    height: 100%;
    background: url("../img/top/bg_movie_best_section01.png") no-repeat center top;
    background-size: contain;
    transform: translate3d(-50%, 0, 0);
  }
  .top-movie-best-section:first-child {
    margin-top: 0;
  }
  .top-movie-best-section > * {
    position: relative;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-section {
    position: relative;
    height: 35.875em;
    margin-top: 1.875em;
    padding-top: 1.75em;
    padding-bottom: 0.9375em;
  }
  .top-movie-best-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 23.4375em;
    height: 100%;
    background: url("../img/top/bg_movie_best_section01_sp.png") no-repeat center top;
    background-size: contain;
    transform: translate3d(-50%, 0, 0);
  }
  .top-movie-best-section:first-child {
    margin-top: 0;
  }
  .top-movie-best-section > * {
    position: relative;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-section-heading {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-section-heading {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-section-heading__ico {
    display: block;
    width: 3.75em;
    margin: 0 auto;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-section-heading__ico {
    display: block;
    width: 2em;
    margin: 0 auto;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-section-heading__label {
    display: inline-block;
    vertical-align: top;
    margin-top: 0.11538em;
    font-size: 3.25em;
    font-weight: 700;
    color: #fff;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-section-heading__label {
    display: inline-block;
    vertical-align: top;
    margin-top: 0.10714em;
    font-size: 1.75em;
    font-weight: 700;
    color: #fff;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-section-body {
    margin-top: 2em;
  }
  .top-movie-best-section-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-section-body {
    margin-top: 1em;
  }
  .top-movie-best-section-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-img {
    position: relative;
    width: 49.375em;
    margin: 0 auto;
    border-radius: 1.25em;
    background: #fff;
    text-align: center;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
    z-index: 1;
  }
  .top-movie-special .top-movie-best-img {
    background: #f2f2f2;
  }
  .top-movie-best-img a .top-movie-best-img__label {
    transition: opacity 0.2s ease-in-out;
  }
  .top-movie-best-img a:hover .top-movie-best-img__label {
    opacity: .75;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-img {
    position: relative;
    width: 19.25em;
    margin: 0 auto;
    border-radius: 1.25em;
    background: #fff;
    text-align: center;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-img__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 49.375em;
    border-radius: 1.25em;
    background: #fff;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
  }
  .top-movie-best-img__label::before {
    content: '';
    display: block;
    padding-top: 56.25%;
    border: 0.5em solid #09f;
    border-radius: 1.25em;
  }
  .top-movie-best-img a .top-movie-best-img__label {
    position: relative;
  }
  .top-movie-best-img a .top-movie-best-img__label::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 4em;
    padding-top: 4em;
    background: url("../img/common/ico_play01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, -50%, 0);
  }
  .top-movie-best-img__label img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    z-index: -1;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-img__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 19.25em;
    border-radius: 1.25em;
    background: #fff;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
  }
  .top-movie-best-img__label::before {
    content: '';
    display: block;
    padding-top: 56.25%;
    border: 0.375em solid #09f;
    border-radius: 1.25em;
  }
  .top-movie-best-img a .top-movie-best-img__label {
    position: relative;
  }
  .top-movie-best-img a .top-movie-best-img__label::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2.5em;
    padding-top: 2.5em;
    background: url("../img/common/ico_play01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, -50%, 0);
  }
  .top-movie-best-img__label img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    z-index: -1;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-content {
    margin-top: 2em;
  }
  .top-movie-best-content:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-content {
    margin-top: 1em;
  }
  .top-movie-best-content:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-desc__term {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-desc__term {
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-desc__term-sub {
    flex-shrink: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 2.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-desc__term-sub {
    flex-shrink: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 1.5em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-desc__term-sub__label {
    flex-shrink: 0;
    display: block;
    width: 2.4375em;
    height: 0.8125em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-desc__term-sub__label {
    flex-shrink: 0;
    display: block;
    width: 1.625em;
    height: 0.5625em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-desc__term__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-left: 0.83333em;
    padding-left: 0.66667em;
    line-height: 1.58333;
    font-size: 1.5em;
    font-weight: 700;
    color: #fff;
  }
  .top-movie-best-desc__term__label::before {
    content: '';
    position: absolute;
    top: 0.79167em;
    left: 0;
    height: 1.25em;
    padding-left: 0.04167em;
    background: #09f;
    transform: translate3d(0, -50%, 0);
  }
  .top-movie-best-desc__term__label:first-child {
    margin-left: 0;
    padding-left: 0;
  }
  .top-movie-best-desc__term__label:first-child::before {
    content: none;
  }
  .top-movie-special .top-movie-best-desc__term__label::before {
    background: #e4b34d;
  }
  .top-movie-best-desc__term__label br {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-desc__term__label {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-left: 0.83333em;
    padding-left: 0.66667em;
    line-height: 1.6;
    font-size: 0.9375em;
    font-weight: 700;
    color: #fff;
  }
  .top-movie-best-desc__term__label::before {
    content: '';
    position: absolute;
    top: 0.8em;
    left: 0;
    height: 1.25em;
    padding-left: 0.06667em;
    background: #09f;
    transform: translate3d(0, -50%, 0);
  }
  .top-movie-best-desc__term__label:first-child {
    margin-left: 0;
    padding-left: 0;
  }
  .top-movie-best-desc__term__label:first-child::before {
    content: none;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-comment {
    margin-top: 0.9375em;
  }
  .top-movie-best-comment:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-comment {
    margin-top: 0.75em;
  }
  .top-movie-best-comment:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-comment-txt {
    text-align: center;
    font-size: 0.9375em;
    font-weight: 700;
    color: #fff;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-comment-txt {
    text-align: center;
    font-size: 0.75em;
    font-weight: 700;
    color: #fff;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-lead-img {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-lead-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-lead-img__label {
    display: inline-block;
    vertical-align: top;
    width: 43.75em;
    margin-top: -4.8125em;
    margin-bottom: -1em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-lead-img__label {
    display: inline-block;
    vertical-align: top;
    width: 18.6875em;
    margin-top: -2.25em;
    margin-bottom: -1.5625em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-note {
    margin-top: 1em;
  }
  .top-movie-best-note:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-note {
    margin-top: 0.5em;
  }
  .top-movie-best-note:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-note-txt {
    text-align: center;
    padding-left: 1em;
    font-size: 0.8125em;
    font-weight: 700;
    color: #fff;
    text-indent: -1em;
  }
  .top-movie-best-note-txt > * {
    text-indent: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-note-txt {
    padding-left: 1em;
    font-size: 0.625em;
    font-weight: 700;
    color: #fff;
    text-indent: -1em;
  }
  .top-movie-best-note-txt > * {
    text-indent: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-best-note__label {
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-best-note__label {
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-special {
    position: relative;
    margin-top: 5.625em;
    padding-top: 5.625em;
    padding-bottom: 5.625em;
  }
  .top-movie-special::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background: #f2f2f2;
  }
  .top-movie-special:first-child {
    margin-top: 0;
  }
  .top-movie-special > * {
    position: relative;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-special {
    position: relative;
    margin-top: 2.8125em;
    padding-top: 2.8125em;
    padding-bottom: 2.8125em;
  }
  .top-movie-special::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background: #f2f2f2;
  }
  .top-movie-special:first-child {
    margin-top: 0;
  }
  .top-movie-special > * {
    position: relative;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature {
    margin-top: 7.5em;
  }
  .top-movie-feature:first-child {
    margin-top: 0;
  }
  .top-movie-feature[id] {
    margin-top: 0;
    padding-top: 7.5em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature {
    margin-top: 7.1875em;
  }
  .top-movie-feature:first-child {
    margin-top: 0;
  }
  .top-movie-feature[id] {
    margin-top: 0;
    padding-top: 7.1875em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-section {
    margin-top: 3em;
  }
  .top-movie-feature-section:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-section {
    margin-top: 2em;
  }
  .top-movie-feature-section:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-section__inner {
    padding-top: 3.125em;
    padding-bottom: 4.375em;
    padding-left: 3.75em;
    padding-right: 3.75em;
    border-radius: 1.25em;
    background: #f5f5f5;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-section__inner {
    padding-top: 3.125em;
    padding-bottom: 1.875em;
    padding-left: 1.25em;
    padding-right: 1.25em;
    border-radius: 1.25em;
    background: #f5f5f5;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-section-heading {
    position: relative;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-section-heading {
    position: relative;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-section-heading__ico {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 13.8125em;
    margin-top: -6.5625em;
    margin-left: 1.25em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-section-heading__ico {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 12.25em;
    margin-top: -8.75em;
    margin-left: 0.3125em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-section-heading__label {
    display: inline-block;
    vertical-align: top;
    font-size: 2em;
    font-weight: 700;
  }
  .top-movie-feature-section-heading__label em {
    font-size: 162.5%;
    color: #09f;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-section-heading__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1.25em;
    font-weight: 700;
  }
  .top-movie-feature-section-heading__label em {
    font-size: 120%;
    color: #09f;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-section-body {
    margin-top: 1em;
  }
  .top-movie-feature-section-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-section-body {
    margin-top: 1em;
  }
  .top-movie-feature-section-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-lead-txt {
    margin-top: 2em;
    text-align: center;
    line-height: 2;
    font-size: 1.125em;
    font-weight: 700;
  }
  .top-movie-feature-lead-txt:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-lead-txt {
    margin-top: 2em;
    line-height: 2;
    font-size: 1.125em;
    font-weight: 700;
  }
  .top-movie-feature-lead-txt:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-btn {
    margin-top: 1.875em;
    text-align: center;
  }
  .top-movie-feature-btn:first-child {
    margin-top: 0;
  }
  .top-movie-feature-btn a {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
  }
  .top-movie-feature-btn a .top-movie-feature-btn__ico {
    transition: transform 0.2s ease-in-out;
  }
  .top-movie-feature-btn a:hover .top-movie-feature-btn__ico {
    transform: translate3d(0.3125em, 0, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-btn {
    margin-top: 1.875em;
    text-align: center;
  }
  .top-movie-feature-btn:first-child {
    margin-top: 0;
  }
  .top-movie-feature-btn a {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-btn-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-btn-list__item {
    margin-left: 1.5625em;
  }
  .top-movie-feature-btn-list__item:nth-child(3n+1) {
    margin-left: 0;
  }
  .top-movie-feature-btn-list__item:nth-child(n+4) {
    margin-top: 1.5625em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-btn-list__item {
    margin-top: 1em;
  }
  .top-movie-feature-btn-list__item:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-btn-body {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 19.625em;
    height: 8.75em;
    border-radius: 1.25em;
    background: #09f;
    color: #fff;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-btn-body {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 17.9375em;
    height: 6.25em;
    border-radius: 1.25em;
    background: #09f;
    color: #fff;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-btn-desc {
    flex-shrink: 0;
    width: 15em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-btn-desc {
    flex-shrink: 0;
    width: 12em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-btn-desc__term__label {
    display: inline-block;
    vertical-align: top;
    font-size: 0.875em;
    font-weight: 700;
  }
  .top-movie-feature-btn-desc__term__label em {
    display: inline-block;
    vertical-align: middle;
    margin-left: .25em;
    margin-right: .25em;
    font-size: 214.28571%;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-btn-desc__term__label {
    display: inline-block;
    vertical-align: top;
    font-size: 0.625em;
    font-weight: 700;
  }
  .top-movie-feature-btn-desc__term__label em {
    display: inline-block;
    vertical-align: middle;
    margin-left: .25em;
    margin-right: .25em;
    font-size: 240%;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-btn-desc__defin {
    position: relative;
    margin-top: 0.375em;
    padding-top: 0.75em;
    padding-bottom: 0.75em;
  }
  .top-movie-feature-btn-desc__defin::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 0.1875em;
    border-radius: 0.1875em;
    background: #fff;
  }
  .top-movie-feature-btn-desc__defin:first-child {
    margin-top: 0;
  }
  .top-movie-feature-btn-desc__defin:first-child::before {
    content: none;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-btn-desc__defin {
    position: relative;
    margin-top: 0.28125em;
    padding-top: 0.5625em;
    padding-bottom: 0.5625em;
  }
  .top-movie-feature-btn-desc__defin::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 0.125em;
    border-radius: 0.125em;
    background: #fff;
  }
  .top-movie-feature-btn-desc__defin:first-child {
    margin-top: 0;
  }
  .top-movie-feature-btn-desc__defin:first-child::before {
    content: none;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-btn-txt {
    font-size: 1em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-btn-txt {
    font-size: 0.75em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-btn__ico {
    position: absolute;
    bottom: 0;
    right: 0;
    display: inline-block;
    vertical-align: top;
    width: 1.125em;
    margin-bottom: 1em;
    margin-right: 1em;
    background: url("../img/common/ico_arw_btn04.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(0, 0, 0);
  }
  .top-movie-feature-btn__ico::before {
    content: '';
    display: block;
    padding-top: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-btn__ico {
    position: absolute;
    bottom: 0;
    right: 0;
    display: inline-block;
    vertical-align: top;
    width: 0.875em;
    margin-bottom: 1em;
    margin-right: 1em;
    background: url("../img/common/ico_arw_btn04.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(0, 0, 0);
  }
  .top-movie-feature-btn__ico::before {
    content: '';
    display: block;
    padding-top: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-comment {
    margin-top: 5em;
    text-align: center;
  }
  .top-movie-feature-comment:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-comment {
    margin-top: 2.5em;
    text-align: center;
  }
  .top-movie-feature-comment:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-comment__inner {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding-top: 1.875em;
    padding-bottom: 1.875em;
    padding-left: 3.75em;
    padding-right: 3.75em;
    border-radius: 2.5em;
    overflow: hidden;
  }
  .top-movie-feature-comment__inner:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.25em solid #09f;
    border-radius: 2.5em;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-comment__inner {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding-top: 1.25em;
    padding-bottom: 1.25em;
    padding-left: 1.25em;
    padding-right: 1.25em;
    border-radius: 1.875em;
    overflow: hidden;
  }
  .top-movie-feature-comment__inner:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.25em solid #09f;
    border-radius: 1.875em;
  }
}

@media all and (min-width: 751px) {
  .top-movie-feature-comment-txt {
    line-height: 1.66667;
    font-size: 1.5em;
    font-weight: 700;
    color: #009aff;
  }
}

@media screen and (max-width: 750px) {
  .top-movie-feature-comment-txt {
    line-height: 1.66667;
    font-size: 1.125em;
    font-weight: 700;
    color: #009aff;
  }
}

/* award */
@media all and (min-width: 751px) {
  .top-award-feature-container {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-award-feature-container {
    position: relative;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-award-feature-img {
    flex-shrink: 0;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-award-feature-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-award-feature-img__label {
    display: inline-block;
    vertical-align: top;
    width: 21.375em;
  }
}

@media screen and (max-width: 750px) {
  .top-award-feature-img__label {
    display: inline-block;
    vertical-align: top;
    width: 15.375em;
  }
  .top-award-feature-img__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-award-feature-content {
    flex-grow: 1;
    margin-left: 2em;
  }
  .top-award-feature-content:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-award-feature-content {
    margin-top: 0.75em;
  }
  .top-award-feature-content:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-award-feature-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 1em;
    margin-left: -2em;
    overflow: hidden;
  }
}

@media all and (min-width: 751px) {
  .top-award-feature-list__item {
    margin-top: -1em;
    margin-left: 2em;
  }
}

@media all and (min-width: 751px) {
  .top-award-feature-note-txt {
    padding-left: 1em;
    line-height: 2;
    font-size: 0.9375em;
    text-indent: -1em;
  }
  .top-award-feature-note-txt > * {
    text-indent: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-award-feature-note-txt {
    padding-left: 1em;
    line-height: 2;
    font-size: 0.875em;
    text-indent: -1em;
  }
  .top-award-feature-note-txt > * {
    text-indent: 0;
  }
}

@media all and (min-width: 751px) {
  .top-award-feature-note__label {
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
}

@media screen and (max-width: 750px) {
  .top-award-feature-note__label {
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
}

@media all and (min-width: 751px) {
  .top-award-feature-txt {
    line-height: 1.45455;
    font-size: 1.375em;
    font-weight: 700;
  }
  .top-award-feature-txt em {
    display: inline-block;
    min-width: 4.38281em;
    margin-right: .125em;
    text-align: right;
    font-size: 145.45455%;
    color: #09f;
  }
  .top-award-feature-txt em > span {
    font-family: "Roboto", sans-serif;
    font-size: 190.625%;
  }
  .top-award-feature-txt > span {
    display: inline-block;
    min-width: 6em;
  }
}

@media screen and (max-width: 750px) {
  .top-award-feature-txt {
    line-height: 1.44444;
    font-size: 1.125em;
    font-weight: 700;
  }
  .top-award-feature-txt em {
    display: inline-block;
    min-width: 4.40385em;
    margin-right: .125em;
    text-align: right;
    font-size: 144.44444%;
    color: #09f;
  }
  .top-award-feature-txt em > span {
    font-family: "Roboto", sans-serif;
    font-size: 192.30769%;
  }
  .top-award-feature-txt > span {
    display: inline-block;
    min-width: 6em;
  }
}

@media all and (min-width: 751px) {
  .top-award-feature-pict-img {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-award-feature-pict-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-award-feature-pict-img__label {
    position: absolute;
    display: inline-block;
    vertical-align: top;
    z-index: 1;
  }
  .top-award-feature-pict-img:nth-child(1) .top-award-feature-pict-img__label {
    bottom: 0;
    left: 0;
    width: 18.75em;
    margin-bottom: -11.25em;
    margin-left: 15.625em;
    background: url("../img/top/img_pict_award_feature01.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-award-feature-pict-img:nth-child(1) .top-award-feature-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 66.66667%;
  }
  .top-award-feature-pict-img:nth-child(2) .top-award-feature-pict-img__label {
    bottom: 0;
    right: 0;
    width: 46.875em;
    margin-bottom: -11.25em;
    margin-right: -6.25em;
    background: url("../img/top/img_pict_award_feature02.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-award-feature-pict-img:nth-child(2) .top-award-feature-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 48%;
  }
}

@media screen and (max-width: 750px) {
  .top-award-feature-pict-img__label {
    position: absolute;
    display: inline-block;
    vertical-align: top;
  }
  .top-award-feature-pict-img:nth-child(1) .top-award-feature-pict-img__label {
    top: 0;
    right: 0;
    width: 10.625em;
    margin-top: 1.4375em;
    background: url("../img/top/img_pict_award_feature01_sp.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-award-feature-pict-img:nth-child(1) .top-award-feature-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 176.47059%;
  }
  .top-award-feature-pict-img:nth-child(2) .top-award-feature-pict-img__label {
    bottom: 0;
    left: 0;
    width: 23.4375em;
    margin-bottom: -18.75em;
    margin-left: -1.25em;
    background: url("../img/top/img_pict_award_feature02_sp.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-award-feature-pict-img:nth-child(2) .top-award-feature-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 60%;
  }
}

@media all and (min-width: 751px) {
  .top-award-feature-pict-img__ico {
    position: absolute;
    display: inline-block;
    vertical-align: top;
    z-index: 1;
  }
  .top-award-feature-pict-img:nth-child(1) .top-award-feature-pict-img__ico {
    bottom: 0;
    left: 0;
    width: 14.625em;
    margin-bottom: -4.4375em;
    margin-left: 22em;
  }
}

@media screen and (max-width: 750px) {
  .top-award-feature-pict-img__ico {
    position: absolute;
    display: inline-block;
    vertical-align: top;
  }
  .top-award-feature-pict-img:nth-child(1) .top-award-feature-pict-img__ico {
    bottom: 0;
    left: 0;
    width: 15.4375em;
    margin-bottom: -8.6875em;
    margin-left: -0.125em;
  }
  .top-award-feature-pict-img__ico img {
    width: 100%;
  }
}

/* review */
@media all and (min-width: 751px) {
  .top-review-profile-container__inner {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    padding-top: 2.375em;
    padding-bottom: 2.375em;
    padding-left: 4.375em;
    padding-right: 4.375em;
  }
  .top-review-profile-container__inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 0.375em;
    border-radius: 0.375em;
    background: #09f;
  }
  .top-review-profile-container__inner::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-top: 0.375em;
    border-radius: 0.375em;
    background: #09f;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-container__inner {
    position: relative;
    padding-top: 1.25em;
    padding-bottom: 1.25em;
  }
  .top-review-profile-container__inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 0.25em;
    border-radius: 0.25em;
    background: #09f;
  }
  .top-review-profile-container__inner::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-top: 0.25em;
    border-radius: 0.25em;
    background: #09f;
  }
}

@media all and (min-width: 751px) {
  .top-review-profile-img {
    position: relative;
    flex-shrink: 0;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-img {
    position: relative;
    float: left;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-review-profile-img__ico {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 4em;
    margin-top: -0.625em;
    margin-left: -0.625em;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-img__ico {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 3.25em;
    margin-top: -0.5em;
    margin-left: -0.5em;
  }
}

@media all and (min-width: 751px) {
  .top-review-profile-img__label {
    display: inline-block;
    vertical-align: top;
    width: 11.25em;
    border-radius: 1.25em;
    overflow: hidden;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-img__label {
    display: inline-block;
    vertical-align: top;
    width: 8.25em;
    border-radius: 0.625em;
    overflow: hidden;
  }
}

@media all and (min-width: 751px) {
  .top-review-profile-content {
    flex-grow: 1;
    margin-left: 1.6875em;
  }
  .top-review-profile-content:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-img + .top-review-profile-content .top-review-profile-desc {
    margin-left: 9.25em;
  }
}

@media all and (min-width: 751px) {
  .top-review-profile-desc__term {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-desc__term {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-end;
  }
}

@media all and (min-width: 751px) {
  .top-review-profile-desc__term__label {
    flex-shrink: 0;
    display: inline-block;
    vertical-align: top;
    font-size: 1.25em;
    font-weight: 700;
  }
  .top-review-profile-desc__term__label em {
    font-size: 1.4em;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-desc__term__label {
    flex-shrink: 0;
    display: inline-block;
    vertical-align: top;
    font-size: 1em;
    font-weight: 700;
  }
  .top-review-profile-desc__term__label em {
    font-size: 1.4em;
  }
}

@media all and (min-width: 751px) {
  .top-review-profile-desc__term-sub {
    flex-shrink: 0;
    margin-left: 0.8125em;
  }
  .top-review-profile-desc__term-sub:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-desc__term-sub {
    width: 100%;
    margin-top: 0.125em;
  }
  .top-review-profile-desc__term-sub:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-review-profile-desc__term-sub__label {
    display: inline-block;
    vertical-align: top;
    font-size: 0.8125em;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-desc__term-sub__label {
    display: inline-block;
    vertical-align: top;
    font-size: 0.75em;
  }
}

@media all and (min-width: 751px) {
  .top-review-profile-desc__defin {
    margin-top: 0.5625em;
  }
  .top-review-profile-desc__defin:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-desc__defin {
    margin-top: 0.5625em;
  }
  .top-review-profile-desc__defin:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-review-profile-txt {
    margin-top: 1.5em;
    font-size: 1.125em;
    font-weight: 500;
  }
  .top-review-profile-txt:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-txt {
    margin-top: 1.5em;
    font-size: 1em;
    font-weight: 500;
  }
  .top-review-profile-txt:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-review-profile-lead {
    position: relative;
    margin-top: 1em;
    padding-top: 1em;
  }
  .top-review-profile-lead::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 0.0625em;
    background: #d9d9d9;
  }
  .top-review-profile-lead:first-child {
    margin-top: 0;
    padding-top: 0;
  }
  .top-review-profile-lead:first-child::before {
    content: none;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-lead {
    clear: both;
    position: relative;
    margin-top: 1em;
    padding-top: 1em;
  }
  .top-review-profile-lead::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 0.0625em;
    background: #d9d9d9;
  }
  .top-review-profile-lead:first-child {
    margin-top: 0;
    padding-top: 0;
  }
  .top-review-profile-lead:first-child::before {
    content: none;
  }
}

@media all and (min-width: 751px) {
  .top-review-profile-lead-txt {
    margin-top: 2em;
    line-height: 2;
    font-size: 1em;
  }
  .top-review-profile-lead-txt:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-review-profile-lead-txt {
    margin-top: 2em;
    line-height: 2;
    font-size: 0.9375em;
  }
  .top-review-profile-lead-txt:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-container {
    position: relative;
    height: 36.125em;
    margin-left: 1.25em;
    margin-right: 1.25em;
    padding-left: 6em;
    padding-right: 6em;
    border: 0.25em solid #f0f0f0;
    border-radius: 3.75em;
    overflow: hidden;
  }
  .top-review-feature-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 6em;
    height: 100%;
    background: #f5f5f5;
  }
  .top-review-feature-container::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 6em;
    height: 100%;
    background: #f5f5f5;
  }
  .top-review-feature-container > * {
    position: relative;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-container {
    position: relative;
    height: 39.125em;
    padding-left: 0.75em;
    padding-right: 0.75em;
    border: 0.25em solid #f0f0f0;
    border-radius: 1.875em;
    overflow: hidden;
  }
  .top-review-feature-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0.75em;
    height: calc(100% - 60 / 16 * 1em);
    margin-top: 1.875em;
    background: #f5f5f5;
  }
  .top-review-feature-container::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 0.75em;
    height: calc(100% - 60 / 16 * 1em);
    margin-top: 1.875em;
    background: #f5f5f5;
  }
  .top-review-feature-container > * {
    position: relative;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-container__inner {
    position: relative;
    height: 100%;
    padding-top: 1.625em;
    padding-bottom: 1.625em;
  }
  .top-review-feature-container__inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% + 40 / 16 * 1em);
    margin-left: -1.25em;
    padding-top: 1.625em;
    background: #f5f5f5;
  }
  .top-review-feature-container__inner::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(100% + 40 / 16 * 1em);
    margin-left: -1.25em;
    padding-top: 1.625em;
    background: #f5f5f5;
  }
  .top-review-feature-container__inner > * {
    position: relative;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-container__inner {
    position: relative;
    height: 100%;
    padding-top: 3.5em;
    padding-bottom: 3.5em;
  }
  .top-review-feature-container__inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% + 32 / 16 * 1em);
    margin-left: -1em;
    padding-top: 3.5em;
    background: #f5f5f5;
  }
  .top-review-feature-container__inner::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(100% + 32 / 16 * 1em);
    margin-left: -1em;
    padding-top: 3.5em;
    background: #f5f5f5;
  }
  .top-review-feature-container__inner > * {
    position: relative;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-content {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-content {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-list__item {
    width: 11.875em;
    margin-left: 1.5em;
  }
  .top-review-feature-list__item:nth-child(4n+1) {
    margin-left: 0;
  }
  .top-review-feature-list__item:nth-child(n+5) {
    margin-top: 1.5em;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-list__item {
    width: 5.25em;
    margin-left: 0.75em;
  }
  .top-review-feature-list__item:nth-child(n+3) {
    margin-top: 1em;
  }
  .top-review-feature-list__item:nth-child(1), .top-review-feature-list__item:nth-child(6) {
    margin-left: 2.625em;
  }
  .top-review-feature-list__item:nth-child(2), .top-review-feature-list__item:nth-child(7) {
    margin-right: 2.625em;
  }
  .top-review-feature-list__item:nth-child(3) {
    margin-left: 0;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-desc__term {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-desc__term {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-desc__term__label {
    display: inline-block;
    vertical-align: top;
    line-height: 1;
    font-family: "Roboto", sans-serif;
    font-size: 2.5em;
    font-weight: 700;
    color: #fbe120;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-desc__term__label {
    display: inline-block;
    vertical-align: top;
    line-height: 1;
    font-family: "Roboto", sans-serif;
    font-size: 2.0625em;
    font-weight: 700;
    color: #fbe120;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-desc__term-sub {
    display: block;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-desc__term-sub {
    display: block;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-desc__term-sub__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1.25em;
    font-weight: 700;
    color: #fff;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-desc__term-sub__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1em;
    font-weight: 700;
    color: #fff;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-desc__defin {
    margin-top: 0.625em;
  }
  .top-review-feature-desc__defin:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-desc__defin {
    margin-top: 0.3125em;
  }
  .top-review-feature-desc__defin:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-desc-img {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-desc-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-desc-img__label {
    display: inline-block;
    vertical-align: top;
    width: 6.5625em;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-desc-img__label {
    display: inline-block;
    vertical-align: top;
    width: 3.75em;
  }
  .top-review-feature-desc-img__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-lead {
    margin-top: 1.875em;
  }
  .top-review-feature-lead:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-lead {
    margin-top: 10.9375em;
  }
  .top-review-feature-lead:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-lead-txt {
    margin-top: 1.38462em;
    text-align: center;
    line-height: 1.38462;
    font-size: 1.625em;
    font-weight: 700;
    color: #09f;
  }
  .top-review-feature-lead-txt:first-child {
    margin-top: 0;
  }
  .top-review-feature-lead-txt span {
    font-size: 69.23077%;
    font-weight: 500;
  }
  .top-review-feature-lead-txt em {
    font-size: 138.46154%;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-lead-txt {
    margin-top: 1.38462em;
    text-align: center;
    line-height: 1.38462;
    font-size: 1.5em;
    font-weight: 700;
    color: #09f;
  }
  .top-review-feature-lead-txt:first-child {
    margin-top: 0;
  }
  .top-review-feature-lead-txt span {
    font-size: 69.23077%;
    font-weight: 500;
  }
  .top-review-feature-lead-txt em {
    font-size: 138.46154%;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-pict-img {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-pict-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-pict-img__label {
    position: absolute;
    display: inline-block;
    vertical-align: top;
    z-index: 1;
  }
  .top-review-feature-pict-img:nth-child(1) .top-review-feature-pict-img__label {
    bottom: 0;
    left: 0;
    width: 28.125em;
    margin-bottom: -6.25em;
    margin-left: -6.25em;
    background: url("../img/top/img_pict_review_feature01.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-review-feature-pict-img:nth-child(1) .top-review-feature-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 100%;
  }
  .top-review-feature-pict-img:nth-child(2) .top-review-feature-pict-img__label {
    bottom: 0;
    right: 0;
    width: 28.125em;
    margin-bottom: -6.25em;
    margin-right: -6.25em;
    background: url("../img/top/img_pict_review_feature02.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-review-feature-pict-img:nth-child(2) .top-review-feature-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-pict-img__label {
    position: absolute;
    display: inline-block;
    vertical-align: top;
    z-index: 1;
  }
  .top-review-feature-pict-img:nth-child(1) .top-review-feature-pict-img__label {
    bottom: 0;
    left: 0;
    width: 23.4375em;
    margin-bottom: 7.3125em;
    margin-left: -1.25em;
    background: url("../img/top/img_pict_review_feature01_sp.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-review-feature-pict-img:nth-child(1) .top-review-feature-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 46.66667%;
  }
  .top-review-feature-pict-img:nth-child(2) .top-review-feature-pict-img__label {
    bottom: 0;
    left: 0;
    width: 23.4375em;
    margin-bottom: 7.3125em;
    margin-left: -1.25em;
    background: url("../img/top/img_pict_review_feature02_sp.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-review-feature-pict-img:nth-child(2) .top-review-feature-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 73.33333%;
  }
}

@media all and (min-width: 751px) {
  .top-review-feature-pict-img__ico {
    position: absolute;
    display: inline-block;
    vertical-align: top;
    z-index: 1;
  }
  .top-review-feature-pict-img:nth-child(1) .top-review-feature-pict-img__ico {
    bottom: 0;
    left: 0;
    width: 19.125em;
    margin-bottom: 9.75em;
    margin-left: -2.625em;
  }
}

@media screen and (max-width: 750px) {
  .top-review-feature-pict-img__ico {
    position: absolute;
    display: inline-block;
    vertical-align: top;
    z-index: 1;
  }
  .top-review-feature-pict-img:nth-child(1) .top-review-feature-pict-img__ico {
    bottom: 0;
    left: 0;
    width: 15.1875em;
    margin-bottom: 15.9375em;
    margin-left: -3em;
  }
  .top-review-feature-pict-img__ico img {
    width: 100%;
  }
}

/* schedule */
@media all and (min-width: 751px) {
  .top-schedule-feature-list {
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
}

@media all and (min-width: 751px) {
  .top-schedule-feature-list__item {
    position: relative;
    width: 15.5em;
    margin-left: 2.625em;
  }
  .top-schedule-feature-list__item::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 0.875em;
    margin-left: -1.3125em;
    padding-top: 1.75em;
    background: url("../img/top/ico_arw_schedule_feature01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, -50%, 0);
  }
  .top-schedule-feature-list__item:first-child {
    margin-left: 0;
  }
  .top-schedule-feature-list__item:first-child::before {
    content: none;
  }
  .top-schedule-feature-list__item:nth-child(2) {
    margin-bottom: 3.75em;
  }
}

@media screen and (max-width: 750px) {
  .top-schedule-feature-list__item {
    position: relative;
    margin-top: 2.625em;
  }
  .top-schedule-feature-list__item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 1.75em;
    margin-top: -1.3125em;
    padding-top: 0.875em;
    background: url("../img/top/ico_arw_schedule_feature01_sp.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(-50%, -50%, 0);
  }
  .top-schedule-feature-list__item:first-child {
    margin-top: 0;
  }
  .top-schedule-feature-list__item:first-child::before {
    content: none;
  }
  .top-schedule-feature-list__item:nth-child(2) {
    padding-top: 5em;
  }
  .top-schedule-feature-list__item:nth-child(3) {
    margin-top: 8.3125em;
  }
}

@media all and (min-width: 751px) {
  .top-schedule-feature-img {
    position: relative;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-schedule-feature-img {
    position: relative;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-schedule-feature-img-ex {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 80.64516%;
    margin-bottom: -24.19355%;
    transform: translate3d(-50%, 0, 0);
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-schedule-feature-img-ex {
    position: absolute;
    top: 0;
    left: 50%;
    width: 73.73134%;
    margin-top: -23.8806%;
    margin-left: 8.0597%;
    transform: translate3d(-50%, 0, 0);
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-schedule-feature-img-ex__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
  .top-schedule-feature-img-ex__label img {
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-schedule-feature-img-ex__label {
    display: inline-block;
    vertical-align: top;
    width: 100%;
  }
  .top-schedule-feature-img-ex__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-schedule-feature-img__label {
    display: inline-block;
    vertical-align: top;
    max-width: 15.5em;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-schedule-feature-img__label {
    display: inline-block;
    vertical-align: top;
    max-width: 20.9375em;
    width: 100%;
  }
  .top-schedule-feature-img__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-schedule-feature-img__ico {
    display: inline-block;
    vertical-align: top;
  }
  .top-schedule-feature-list__item:nth-child(2) .top-schedule-feature-img__ico {
    position: absolute;
    top: 0;
    right: 0;
    width: 16.375em;
    margin-top: -8.1875em;
    margin-right: -15.625em;
  }
  .top-schedule-feature-list__item:nth-child(3) .top-schedule-feature-img__ico {
    position: absolute;
    top: 0;
    right: 0;
    width: 12.375em;
    margin-top: -7.8125em;
    margin-right: -4.9375em;
  }
}

@media screen and (max-width: 750px) {
  .top-schedule-feature-img__ico {
    display: inline-block;
    vertical-align: top;
  }
  .top-schedule-feature-list__item:nth-child(2) .top-schedule-feature-img__ico {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 13.8125em;
    margin-bottom: -7.125em;
    margin-left: -1.9375em;
  }
  .top-schedule-feature-list__item:nth-child(3) .top-schedule-feature-img__ico {
    position: absolute;
    top: 0;
    left: 0;
    width: 11em;
    margin-top: -7.875em;
    margin-left: -0.125em;
  }
  .top-schedule-feature-img__ico img {
    width: 100%;
  }
}

/* requirements */
@media all and (min-width: 751px) {
  .top-requirements__inner {
    padding-top: 2.8125em;
    padding-bottom: 4.375em;
    padding-left: 4.375em;
    padding-right: 4.375em;
    border-radius: 1.25em;
    background: #f5f5f5;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements__inner {
    padding-top: 1.25em;
    padding-bottom: 2.5em;
    padding-left: 1.25em;
    padding-right: 1.25em;
    border-radius: 1.25em;
    background: #f5f5f5;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-section--lv1 {
    margin-top: 2.25em;
  }
  .top-requirements-section--lv1:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-section--lv1 {
    margin-top: 1.5em;
  }
  .top-requirements-section--lv1:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-section--lv1-heading {
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }
  .top-requirements-section--lv1-heading::after {
    content: '';
    flex-grow: 1;
    margin-left: 1em;
    padding-top: 0.125em;
    background: #09f;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-section--lv1-heading {
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }
  .top-requirements-section--lv1-heading::after {
    content: '';
    flex-grow: 1;
    margin-left: 0.75em;
    padding-top: 0.125em;
    background: #09f;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-section--lv1-heading__label {
    flex-shrink: 0;
    display: inline-block;
    vertical-align: top;
    font-size: 1.5em;
    font-weight: 700;
    color: #09f;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-section--lv1-heading__label {
    flex-shrink: 0;
    display: inline-block;
    vertical-align: top;
    font-size: 1em;
    font-weight: 700;
    color: #09f;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-section--lv1-body {
    margin-top: 1.875em;
  }
  .top-requirements-section--lv1-body:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-section--lv1-body {
    margin-top: 1.875em;
  }
  .top-requirements-section--lv1-body:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-work-container {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-work-img {
    flex-shrink: 0;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-work-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-work-img__label {
    display: inline-block;
    vertical-align: top;
    width: 20.0625em;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-work-img__label {
    display: inline-block;
    vertical-align: top;
    width: 12.0625em;
  }
  .top-requirements-work-img__label img {
    width: 100%;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-work-content {
    flex-grow: 1;
    max-width: 22.5em;
    margin-left: 3em;
  }
  .top-requirements-work-content:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-work-content {
    max-width: 22.5em;
    margin: 0 auto;
    margin-top: 0.75em;
  }
  .top-requirements-work-content:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-work-desc__term {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-work-desc__term__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1.25em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-work-desc__term__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1.125em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-work-desc__defin {
    margin-top: 0.25em;
  }
  .top-requirements-work-desc__defin:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-work-desc__defin {
    margin-top: 0.5em;
  }
  .top-requirements-work-desc__defin:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-work-txt {
    margin-top: 2em;
    line-height: 2;
    font-size: 1em;
  }
  .top-requirements-work-txt:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-work-txt {
    margin-top: 2em;
    line-height: 2;
    font-size: 0.9375em;
  }
  .top-requirements-work-txt:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-work-tag {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 2.125em;
    margin-top: 1em;
    text-align: center;
  }
  .top-requirements-work-tag::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.0625em solid #e6222e;
    border-radius: 2.125em;
  }
  .top-requirements-work-tag:first-child {
    margin-top: 0;
  }
  .top-requirements-work-tag > * {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-work-tag {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 1.75em;
    margin-top: 0.5625em;
    text-align: center;
  }
  .top-requirements-work-tag::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.0625em solid #e6222e;
    border-radius: 1.75em;
  }
  .top-requirements-work-tag:first-child {
    margin-top: 0;
  }
  .top-requirements-work-tag > * {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-work-tag__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1em;
    font-weight: 500;
    color: #e6222e;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-work-tag__label {
    display: inline-block;
    vertical-align: top;
    font-size: 0.875em;
    font-weight: 500;
    color: #e6222e;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition {
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition {
    position: relative;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-list {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-list {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-end;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-list__item {
    width: 9.125em;
    margin-left: 1.25em;
  }
  .top-requirements-condition-list__item:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-list__item {
    width: 6.5em;
    margin-left: 1.0625em;
  }
  .top-requirements-condition-list__item:nth-child(1) {
    margin-left: 3.25em;
    margin-right: 3.25em;
  }
  .top-requirements-condition-list__item:nth-child(2n) {
    margin-left: 0;
  }
  .top-requirements-condition-list__item:nth-child(n+2) {
    margin-top: -0.375em;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-note {
    max-width: 29.875em;
    margin: 0 auto;
    margin-top: 1em;
    text-align: center;
  }
  .top-requirements-condition-note:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-note {
    margin-top: 0.5625em;
    text-align: center;
  }
  .top-requirements-condition-note:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-note__inner {
    display: inline-block;
    vertical-align: top;
    text-align: left;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-note__inner {
    display: inline-block;
    vertical-align: top;
    text-align: left;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-note-txt {
    padding-left: 1em;
    line-height: 2;
    font-size: 0.9375em;
    text-indent: -1em;
  }
  .top-requirements-condition-note-txt > * {
    text-indent: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-note-txt {
    padding-left: 1em;
    line-height: 2;
    font-size: 0.875em;
    text-indent: -1em;
  }
  .top-requirements-condition-note-txt > * {
    text-indent: 0;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-note__label {
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-note__label {
    display: inline-block;
    vertical-align: top;
    width: 1em;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-btn {
    position: relative;
    margin-top: 2.75em;
    text-align: center;
    z-index: 1;
  }
  .top-requirements-condition-btn:first-child {
    margin-top: 0;
  }
  .top-requirements-condition-btn > a {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
  }
  .top-requirements-condition-btn > a[disabled] {
    pointer-events: none;
  }
  .top-requirements-condition-btn > a .top-requirements-condition-btn__ico {
    transition: transform 0.2s ease-in-out;
  }
  .top-requirements-condition-btn > a:hover .top-requirements-condition-btn__ico {
    transform: translate3d(0.3125em, -50%, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-btn {
    position: relative;
    margin-top: 1.625em;
    text-align: center;
    z-index: 1;
  }
  .top-requirements-condition-btn:first-child {
    margin-top: 0;
  }
  .top-requirements-condition-btn > a {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
  }
  .top-requirements-condition-btn > a[disabled] {
    pointer-events: none;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-btn-body {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 22.5em;
    height: 5em;
    border-radius: 5em;
    background: #09f;
  }
  .top-requirements-condition-btn a[disabled] .top-requirements-condition-btn-body {
    background: #bbbcbf;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-btn-body {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 16.875em;
    height: 4.375em;
    border-radius: 4.375em;
    background: #09f;
  }
  .top-requirements-condition-btn a[disabled] .top-requirements-condition-btn-body {
    background: #bbbcbf;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-btn__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1em;
    font-weight: 700;
    color: #fff;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-btn__label {
    display: inline-block;
    vertical-align: top;
    font-size: 0.9375em;
    font-weight: 700;
    color: #fff;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-btn__ico {
    position: absolute;
    top: 50%;
    right: 0;
    display: inline-block;
    vertical-align: top;
    width: 0.4375em;
    margin-right: 2.25em;
    background: url("../img/common/ico_arw_btn01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(0, -50%, 0);
  }
  .top-requirements-condition-btn__ico::before {
    content: '';
    display: block;
    padding-top: 157.14286%;
  }
  .top-requirements-condition-btn a[disabled] .top-requirements-condition-btn__ico::before {
    content: none;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-btn__ico {
    position: absolute;
    top: 50%;
    right: 0;
    display: inline-block;
    vertical-align: top;
    width: 0.4375em;
    margin-right: 2em;
    background: url("../img/common/ico_arw_btn01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(0, -50%, 0);
  }
  .top-requirements-condition-btn__ico::before {
    content: '';
    display: block;
    padding-top: 157.14286%;
  }
  .top-requirements-condition-btn a[disabled] .top-requirements-condition-btn__ico::before {
    content: none;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-pict-img {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-pict-img {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-pict-img__label {
    position: absolute;
    display: inline-block;
    vertical-align: top;
    z-index: 1;
  }
  .top-requirements-condition-pict-img:nth-child(1) .top-requirements-condition-pict-img__label {
    top: 0;
    left: 0;
    width: 17.0625em;
    margin-top: -2em;
    margin-left: 1.6875em;
    background: url("../img/top/img_pict_requirements_condition01.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-requirements-condition-pict-img:nth-child(1) .top-requirements-condition-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 112.08791%;
  }
  .top-requirements-condition-pict-img:nth-child(2) .top-requirements-condition-pict-img__label {
    top: 0;
    right: 0;
    width: 18.125em;
    margin-top: -0.625em;
    margin-right: 2.375em;
    background: url("../img/top/img_pict_requirements_condition02.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-requirements-condition-pict-img:nth-child(2) .top-requirements-condition-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 90.34483%;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-pict-img__label {
    position: absolute;
    display: inline-block;
    vertical-align: top;
  }
  .top-requirements-condition-pict-img:nth-child(1) .top-requirements-condition-pict-img__label {
    top: 0;
    left: 0;
    width: 11.25em;
    margin-top: -1.5em;
    margin-left: -2.5em;
    background: url("../img/top/img_pict_requirements_condition01_sp.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-requirements-condition-pict-img:nth-child(1) .top-requirements-condition-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 122.22222%;
  }
  .top-requirements-condition-pict-img:nth-child(2) .top-requirements-condition-pict-img__label {
    top: 0;
    right: 0;
    width: 11.25em;
    margin-top: -0.125em;
    margin-right: -2.5em;
    background: url("../img/top/img_pict_requirements_condition02_sp.png") no-repeat center bottom;
    background-size: contain;
  }
  .top-requirements-condition-pict-img:nth-child(2) .top-requirements-condition-pict-img__label::before {
    content: '';
    display: block;
    padding-top: 122.22222%;
  }
}

@media all and (min-width: 751px) {
  .top-requirements-condition-pict-img__ico {
    position: absolute;
    display: inline-block;
    vertical-align: top;
    z-index: 1;
  }
  .top-requirements-condition-pict-img:nth-child(2) .top-requirements-condition-pict-img__ico {
    top: 0;
    right: 0;
    width: 11.0625em;
    margin-top: -4.5em;
    margin-right: 4.875em;
  }
}

@media screen and (max-width: 750px) {
  .top-requirements-condition-pict-img__ico {
    position: absolute;
    display: inline-block;
    vertical-align: top;
    z-index: 1;
  }
  .top-requirements-condition-pict-img:nth-child(2) .top-requirements-condition-pict-img__ico {
    top: 0;
    right: 0;
    width: 9.5em;
    margin-top: -3.8125em;
    margin-right: -1.9375em;
  }
  .top-requirements-condition-pict-img__ico img {
    width: 100%;
  }
}

/* event */
@media all and (min-width: 751px) {
  .top-event-date {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-event-date {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-event-date-body {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding-top: 0.75em;
    padding-bottom: 0.75em;
    padding-left: 3.75em;
    padding-right: 3.75em;
  }
  .top-event-date-body::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.125em solid #fff;
    border-radius: 3.5em;
  }
  .top-event-date-body > * {
    position: relative;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .top-event-date-body {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    padding-top: 0.875em;
    padding-bottom: 0.875em;
    padding-left: 0.875em;
    padding-right: 0.875em;
  }
  .top-event-date-body::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0.125em solid #fff;
    border-radius: 5em;
  }
  .top-event-date-body > * {
    position: relative;
    z-index: 1;
  }
}

@media all and (min-width: 751px) {
  .top-event-date-txt {
    line-height: 1.45455;
    font-size: 1.375em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-event-date-txt {
    line-height: 1.3;
    font-size: 1.25em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-event-lead {
    margin-top: 2em;
  }
  .top-event-lead:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-event-lead {
    margin-top: 1.5em;
  }
  .top-event-lead:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-event-lead-txt {
    margin-top: 2em;
    text-align: center;
    line-height: 2;
    font-size: 1em;
    font-weight: 700;
  }
  .top-event-lead-txt:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-event-lead-txt {
    margin-top: 2em;
    line-height: 2;
    font-size: 0.9375em;
    font-weight: 700;
  }
  .top-event-lead-txt:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-event-feature {
    margin-top: 2.8125em;
  }
  .top-event-feature:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-event-feature {
    margin-top: 6.25em;
  }
  .top-event-feature:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-event-feature-container__inner {
    position: relative;
    padding-top: 3.8125em;
    padding-bottom: 3.8125em;
  }
  .top-event-feature-container__inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-top: 1.75em;
    background: url("../img/top/bg_event_feature01_t.png") repeat-x center bottom;
    background-size: auto 100%;
  }
  .top-event-feature-container__inner::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-top: 1.75em;
    background: url("../img/top/bg_event_feature01_b.png") repeat-x center bottom;
    background-size: auto 100%;
  }
}

@media screen and (max-width: 750px) {
  .top-event-feature-container__inner {
    position: relative;
    padding-top: 3.1875em;
    padding-bottom: 3.1875em;
  }
  .top-event-feature-container__inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin-left: -1.25em;
    margin-right: -1.25em;
    padding-top: 1em;
    background: url("../img/top/bg_event_feature01_sp_t.png") repeat-x center bottom;
    background-size: contain;
  }
  .top-event-feature-container__inner::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin-left: -1.25em;
    margin-right: -1.25em;
    padding-top: 1em;
    background: url("../img/top/bg_event_feature01_sp_b.png") repeat-x center bottom;
    background-size: contain;
  }
}

@media all and (min-width: 751px) {
  .top-event-feature-content {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-event-feature-content {
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-event-feature-desc {
    display: inline-block;
    vertical-align: top;
  }
}

@media screen and (max-width: 750px) {
  .top-event-feature-desc {
    display: inline-block;
    vertical-align: top;
  }
}

@media all and (min-width: 751px) {
  .top-event-feature-desc__term {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: baseline;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .top-event-feature-desc__term {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: baseline;
    text-align: center;
  }
}

@media all and (min-width: 751px) {
  .top-event-feature-desc__term__ico {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 12.375em;
    margin-top: -5.625em;
    margin-left: -10.75em;
  }
}

@media screen and (max-width: 750px) {
  .top-event-feature-desc__term__ico {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    width: 11em;
    margin-top: -8.4375em;
    margin-left: 0.125em;
  }
}

@media all and (min-width: 751px) {
  .top-event-feature-desc__term__label {
    display: inline-block;
    vertical-align: top;
    line-height: 1.57143;
    font-size: 1.75em;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .top-event-feature-desc__term__label {
    display: inline-block;
    vertical-align: top;
    line-height: 1.57143;
    font-size: 1.75em;
    font-weight: 700;
  }
}

@media all and (min-width: 751px) {
  .top-event-feature-txt {
    margin-top: 1.5em;
    text-align: center;
    line-height: 1.5;
    font-size: 1.5em;
    font-weight: 700;
  }
  .top-event-feature-txt:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .top-event-feature-txt {
    margin-top: 1.5em;
    text-align: center;
    line-height: 1.5;
    font-size: 1.25em;
    font-weight: 700;
  }
  .top-event-feature-txt:first-child {
    margin-top: 0;
  }
}

@media all and (min-width: 751px) {
  .top-event-btn {
    margin-top: 3.125em;
    text-align: center;
  }
  .top-event-btn:first-child {
    margin-top: 0;
  }
  .top-event-btn > a {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
  }
  .top-event-btn > a[disabled] {
    pointer-events: none;
  }
  .top-event-btn > a .top-event-btn__ico {
    transition: transform 0.2s ease-in-out;
  }
  .top-event-btn > a:hover .top-event-btn__ico {
    transform: translate3d(0.3125em, -50%, 0);
  }
}

@media screen and (max-width: 750px) {
  .top-event-btn {
    margin-top: 2em;
    text-align: center;
  }
  .top-event-btn:first-child {
    margin-top: 0;
  }
  .top-event-btn > a {
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
  }
  .top-event-btn > a[disabled] {
    pointer-events: none;
  }
}

@media all and (min-width: 751px) {
  .top-event-btn-body {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 22.5em;
    height: 5em;
    border-radius: 5em;
    background: #09f;
  }
  .top-event-btn a[disabled] .top-event-btn-body {
    background: #bbbcbf;
  }
}

@media screen and (max-width: 750px) {
  .top-event-btn-body {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 16.875em;
    height: 4.375em;
    border-radius: 4.375em;
    background: #09f;
  }
  .top-event-btn a[disabled] .top-event-btn-body {
    background: #bbbcbf;
  }
}

@media all and (min-width: 751px) {
  .top-event-btn__label {
    display: inline-block;
    vertical-align: top;
    font-size: 1em;
    font-weight: 700;
    color: #fff;
  }
}

@media screen and (max-width: 750px) {
  .top-event-btn__label {
    display: inline-block;
    vertical-align: top;
    font-size: 0.9375em;
    font-weight: 700;
    color: #fff;
  }
}

@media all and (min-width: 751px) {
  .top-event-btn__ico {
    position: absolute;
    top: 50%;
    right: 0;
    display: inline-block;
    vertical-align: top;
    width: 0.4375em;
    margin-right: 2.25em;
    background: url("../img/common/ico_arw_btn01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(0, -50%, 0);
  }
  .top-event-btn__ico::before {
    content: '';
    display: block;
    padding-top: 157.14286%;
  }
  .top-event-btn a[disabled] .top-event-btn__ico::before {
    content: none;
  }
}

@media screen and (max-width: 750px) {
  .top-event-btn__ico {
    position: absolute;
    top: 50%;
    right: 0;
    display: inline-block;
    vertical-align: top;
    width: 0.4375em;
    margin-right: 2em;
    background: url("../img/common/ico_arw_btn01.svg") no-repeat center center;
    background-size: contain;
    transform: translate3d(0, -50%, 0);
  }
  .top-event-btn__ico::before {
    content: '';
    display: block;
    padding-top: 157.14286%;
  }
  .top-event-btn a[disabled] .top-event-btn__ico::before {
    content: none;
  }
}
