@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@500;700;900&display=swap");
.common-bg {
  width: 100%;
  height: calc(100% + 1.56667vw);
  position: absolute;
  top: -1.56667vw;
  left: 0;
  background-image: url(../img/top/noise.gif);
  opacity: 0.6;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; }
  @media only screen and (min-width: 767px) {
    .common-bg {
      height: 100%;
      top: 0; } }

.common-wrapper {
  padding: 12vw 0 24vw;
  width: 89.33333vw;
  border-right: 0.26667vw solid rgba(255, 255, 255, 0.2);
  border-left: 0.26667vw solid rgba(255, 255, 255, 0.2);
  margin: 0 auto;
  position: relative;
  min-height: 50vw; }
  @media only screen and (min-width: 767px) {
    .common-wrapper {
      padding: 2.92826vw 0 5.85652vw;
      width: 62.22548vw;
      border-right: 0.07321vw solid rgba(255, 255, 255, 0.2);
      border-left: 0.07321vw solid rgba(255, 255, 255, 0.2); } }

.common-inner {
  position: relative; }

.common-box {
  position: relative; }

.common-line {
  width: 24.66667vw;
  margin: 8vw auto 0; }
  @media only screen and (min-width: 767px) {
    .common-line {
      width: 10.43192vw;
      margin: 3.29429vw 0 0; } }

.show .common-wrapper {
  -webkit-transform: none;
          transform: none; }

.show .common-inner {
  -webkit-transform: none;
          transform: none;
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

.show .common-box {
  -webkit-transform: none;
          transform: none;
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

.show .common-h2, .show .common-line {
  -webkit-filter: drop-shadow(0 0vw 0 rgba(0, 84, 255, 0.9));
          filter: drop-shadow(0 0vw 0 rgba(0, 84, 255, 0.9)); }

.common-wrapper {
  transition: all 500ms;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  transition-timing-function: cubic-bezier(0, 0, 0.5, 1); }

.common-inner {
  transition: all 500ms;
  transition-timing-function: cubic-bezier(0, 0, 0.5, 1);
  transition-delay: 500ms;
  -webkit-transform: translateY(10px);
          transform: translateY(10px);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.common-box {
  transition: all 500ms;
  transition-timing-function: cubic-bezier(0, 0, 0.5, 1);
  transition-delay: 550ms;
  -webkit-transform: translateY(1%);
          transform: translateY(1%);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }

.common-h2, .common-line {
  transition: all 1000ms;
  transition-delay: 800ms;
  transition-timing-function: cubic-bezier(0, 0, 0.5, 1);
  -webkit-filter: drop-shadow(0 1.33333vw 0 rgba(0, 84, 255, 0.9));
          filter: drop-shadow(0 1.33333vw 0 rgba(0, 84, 255, 0.9)); }
  @media only screen and (min-width: 767px) {
    .common-h2, .common-line {
      -webkit-filter: drop-shadow(0 0.36603vw 0 rgba(0, 84, 255, 0.9));
              filter: drop-shadow(0 0.36603vw 0 rgba(0, 84, 255, 0.9)); } }

.story-bg {
  background-image: url(../img/story/bg.jpg);
  background-size: cover; }
  @media only screen and (min-width: 767px) {
    .story-bg {
      background-image: url(../img/story/bg_pc.jpg); } }

.story-h2 {
  width: 42.93333vw;
  margin: 0 auto; }
  @media only screen and (min-width: 767px) {
    .story-h2 {
      width: 14.34846vw;
      margin: 0; } }

.story-wrapper {
  margin-top: 8vw;
  text-align: center; }
  @media only screen and (min-width: 767px) {
    .story-wrapper {
      margin-top: 3.29429vw;
      text-align: left; } }

.story-inner {
  position: relative;
  margin-top: 8vw; }
  @media only screen and (min-width: 767px) {
    .story-inner {
      margin-top: 3.29429vw; } }

.story-box {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transform: translateY(20px);
          transform: translateY(20px);
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  transition-duration: 500ms, 500ms;
  width: 100%;
  pointer-events: none; }
  .story-box.js-absolute {
    position: absolute;
    top: 0;
    left: 0; }
  .story-box.js-show {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: none;
            transform: none;
    transition-delay: 500ms, 500ms;
    pointer-events: auto; }

.story-list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  @media only screen and (min-width: 767px) {
    .story-list {
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; } }
  .story-list__item {
    margin: 0 1.33333vw 1.33333vw; }
    @media only screen and (min-width: 767px) {
      .story-list__item {
        margin: 0; }
        .story-list__item:not(:first-child) {
          margin-left: 0.54905vw; } }
  .story-list__link {
    display: inline-block;
    font-size: 3.73333vw;
    padding: 0.66667vw 2vw;
    font-weight: bold;
    line-height: 1;
    font-family: "Noto Sans JP", serif;
    background-color: #000;
    color: #fff; }
    @media only screen and (min-width: 767px) {
      .story-list__link {
        font-size: 1.0981vw;
        padding: 0.18302vw 0.54905vw; } }
    .story-list__link.js-current {
      background-color: #fff;
      color: #000;
      pointer-events: none; }

.story-text {
  font-size: 3.46667vw;
  color: #fff;
  text-align: left;
  line-height: 1.6; }
  @media only screen and (min-width: 767px) {
    .story-text {
      font-size: 1.1713vw; } }

@media only screen and (min-width: 767px) {
  .story-thumb {
    width: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; } }

.story-thumb__main {
  position: relative;
  width: 100%;
  height: 50vw;
  background-color: rgba(0, 0, 0, 0.5); }
  @media only screen and (min-width: 767px) {
    .story-thumb__main {
      width: 51.86676vw;
      height: 29.13616vw; } }
  .story-thumb__main--item {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: opacity 500ms;
    transition-timing-function: ease-in-out; }
    .story-thumb__main--item.js-show {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      transition-delay: 400ms; }

.story-thumb__list {
  width: 100%;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 0.53333vw; }
  @media only screen and (min-width: 767px) {
    .story-thumb__list {
      width: 10.13909vw;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      margin-top: 0;
      margin-left: 0.14641vw; } }
  .story-thumb__list--item {
    width: 17.33333vw;
    transition: opacity 500ms;
    cursor: pointer; }
    @media only screen and (min-width: 767px) {
      .story-thumb__list--item {
        width: 100%; } }
    .story-thumb__list--item.js-off {
      pointer-events: none; }
    .story-thumb__list--item.js-show {
      opacity: 0.5;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
      pointer-events: none; }

.story-title {
  margin-top: 8vw;
  text-align: left;
  font-size: 4.8vw;
  color: #00d2ff;
  background: linear-gradient(90deg, #00d2ff 0%, #0054ff 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
  font-weight: bold;
  line-height: calc(48/36); }
  @media only screen and (min-width: 767px) {
    .story-title {
      margin-top: 2.19619vw;
      font-size: 1.61054vw;
      line-height: calc(60/44); } }

.story-content {
  text-align: left;
  margin-top: 6.66667vw; }
  @media only screen and (min-width: 767px) {
    .story-content {
      margin-top: 2.01318vw; } }
  .story-content__head {
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: auto; }
    .story-content__head > span {
      font-size: 3.46667vw;
      color: #fff;
      font-weight: bold;
      text-align: left;
      color: #00d2ff;
      background: linear-gradient(90deg, #00d2ff 0%, #0054ff 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      display: inline-block; }
      @media only screen and (min-width: 767px) {
        .story-content__head > span {
          font-size: 1.1713vw; } }
    .story-content__head:before {
      display: block;
      content: "";
      width: 4vw;
      height: 0.53333vw;
      margin-right: 2.66667vw;
      background-color: #00d2ff; }
      @media only screen and (min-width: 767px) {
        .story-content__head:before {
          width: 1.0981vw;
          height: 0.14641vw;
          margin-right: 0.73206vw; } }
  .story-content__text {
    margin-top: 3.33333vw;
    font-size: 3.46667vw;
    color: #fff;
    line-height: calc(42/26); }
    @media only screen and (min-width: 767px) {
      .story-content__text {
        width: 58.19912vw;
        margin: 1.0981vw auto 0;
        font-size: 1.1713vw;
        line-height: calc(52/32); } }