@charset "UTF-8";
/******************************************
*******************************************/
/***********
  サイズ変換
************/
/*********
ブレイクポイント
**********/
/*********
ホバー
**********/
#contents.top .FFRS_content {
  background-color: #ebecef;
  padding: 0vw 0 0;
}
#contents.top .FFRS_content .anchorPoint.aboutAnchor {
  top: 113.281vw;
}
#contents.top .FFRS_content .anchorPoint.productsAnchor {
  top: -37.109vw;
}
#contents.top .FFRS_content .anchorPoint.specAnchor {
  top: -97.656vw;
}
#contents.top .FFRS_content .kvSection {
  position: relative;
  height: 269.141vw;
  overflow: hidden;
}
#contents.top .FFRS_content .kvSection::after {
  content: "";
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 10;
  pointer-events: none;
  background: url(/FFRS/assets/img/top/kv/bg.webp) no-repeat center bottom/100vw auto;
}
#contents.top .FFRS_content .kvBg {
  position: absolute;
  top: 0;
  width: 100%;
  height: 153.711vw;
  z-index: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#contents.top .FFRS_content .kvBg video {
  height: 158.203vw;
  width: 281.25vw;
  -o-object-fit: cover;
     object-fit: cover;
}
#contents.top .FFRS_content .kvBg::before {
  content: "";
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(21%, #082774), color-stop(92%, #75aee9));
  background-image: linear-gradient(0deg, #082774 21%, #75aee9 92%);
  position: absolute;
  top: 0;
  width: 100%;
  height: 158.203vw;
  z-index: 0;
  opacity: 0.5;
}
@media (max-width: 1023px) {
  #contents.top .FFRS_content .kvPCNav_wrap {
    display: none;
  }
  #contents.top .FFRS_content .kvPcBtn a {
    display: none;
  }
}
#contents.top .FFRS_content .kvLogo {
  pointer-events: none;
  position: relative;
  z-index: 100;
  margin: 4.883vw 0 10.156vw;
}
#contents.top .FFRS_content .kvMovie {
  pointer-events: none;
  position: relative;
  z-index: 100;
  width: 18.945vw;
  margin: 0 auto;
}
#contents.top .FFRS_content .kvMovie a {
  pointer-events: all;
}
@media (hover: hover) and (pointer: fine) {
  #contents.top .FFRS_content .kvMovie a {
    -webkit-transition: 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  #contents.top .FFRS_content .kvMovie a:hover {
    -webkit-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-filter: drop-shadow(0 0 0.977vw rgba(72, 140, 203, 0.5)) brightness(1.25);
            filter: drop-shadow(0 0 0.977vw rgba(72, 140, 203, 0.5)) brightness(1.25);
    -webkit-transform: scale(1.12);
            transform: scale(1.12);
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 1024px) {
  #contents.top .FFRS_content .kvMovie a:hover {
    -webkit-filter: drop-shadow(0 0 clamp(10px, 0.521vw, 150vw) rgba(72, 140, 203, 0.5)) brightness(1.25);
            filter: drop-shadow(0 0 clamp(10px, 0.521vw, 150vw) rgba(72, 140, 203, 0.5)) brightness(1.25);
  }
}
#contents.top .FFRS_content .kvCopy {
  pointer-events: none;
  position: relative;
  z-index: 100;
  margin: 5.371vw 0 4.883vw;
}
#contents.top .FFRS_content .kvYoyaku {
  pointer-events: none;
  position: relative;
  z-index: 100;
  width: 69.434vw;
  margin: 0 auto;
}
#contents.top .FFRS_content .kvYoyaku a {
  pointer-events: all;
}
@media (hover: hover) and (pointer: fine) {
  #contents.top .FFRS_content .kvYoyaku a {
    -webkit-transition: 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  #contents.top .FFRS_content .kvYoyaku a:hover {
    -webkit-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-filter: drop-shadow(0 0 0.977vw rgba(72, 140, 203, 0.5)) brightness(1.25);
            filter: drop-shadow(0 0 0.977vw rgba(72, 140, 203, 0.5)) brightness(1.25);
    -webkit-transform: scale(1.06);
            transform: scale(1.06);
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 1024px) {
  #contents.top .FFRS_content .kvYoyaku a:hover {
    -webkit-filter: drop-shadow(0 0 clamp(10px, 0.521vw, 150vw) rgba(72, 140, 203, 0.5)) brightness(1.25);
            filter: drop-shadow(0 0 clamp(10px, 0.521vw, 150vw) rgba(72, 140, 203, 0.5)) brightness(1.25);
  }
}
#contents.top .FFRS_content .kvPrathome {
  pointer-events: none;
  position: relative;
  z-index: 100;
  margin: 2.4vw auto 6.5vw;
}
#contents.top .FFRS_content .kvDate {
  pointer-events: none;
  position: relative;
  z-index: 100;
}
#contents.top .FFRS_content .kvX {
  pointer-events: none;
  position: relative;
  z-index: 100;
  width: 24.512vw;
  position: absolute;
  right: 0;
  top: 67.188vw;
}
#contents.top .FFRS_content .kvX i {
  width: 9.18vw;
  position: absolute;
  left: 50%;
  top: -7.813vw;
  z-index: 100;
  pointer-events: none;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}
#contents.top .FFRS_content .kvX i img {
  width: 100%;
  height: auto;
}
#contents.top .FFRS_content .kvX a {
  display: block;
  pointer-events: all;
}
@media (hover: hover) and (pointer: fine) {
  #contents.top .FFRS_content .kvX a {
    -webkit-transition: 0.6s cubic-bezier(0.23, 1, 0.32, 1);
    transition: 0.6s cubic-bezier(0.23, 1, 0.32, 1);
  }
  #contents.top .FFRS_content .kvX a ~ i img {
    -webkit-transition: 0.6s cubic-bezier(0.23, 1, 0.32, 1);
    transition: 0.6s cubic-bezier(0.23, 1, 0.32, 1);
  }
  #contents.top .FFRS_content .kvX a:hover {
    -webkit-filter: brightness(1.15) drop-shadow(0 0 0.977vw rgba(72, 140, 203, 0.5));
            filter: brightness(1.15) drop-shadow(0 0 0.977vw rgba(72, 140, 203, 0.5));
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 1024px) {
  #contents.top .FFRS_content .kvX a:hover {
    -webkit-filter: brightness(1.15) drop-shadow(0 0 clamp(6.67px, 0.521vw, 150vw) rgba(72, 140, 203, 0.5));
            filter: brightness(1.15) drop-shadow(0 0 clamp(6.67px, 0.521vw, 150vw) rgba(72, 140, 203, 0.5));
  }
}
@media (hover: hover) and (pointer: fine) {
  #contents.top .FFRS_content .kvX a:hover ~ i img {
    -webkit-transform: translate(0, -10%);
            transform: translate(0, -10%);
    -webkit-transition: 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  }
}
#contents.top .FFRS_content .featureSection {
  position: relative;
  z-index: 5;
}
#contents.top .FFRS_content .featureSection::before {
  content: "";
  background: url(/FFRS/assets/img/top/feature/bg2.webp) no-repeat center top/100% auto;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 244.141vw;
}
#contents.top .FFRS_content .featureSection {
  padding: 16.8vw 0 0vw;
  margin: -15.234vw 0 0;
}
#contents.top .FFRS_content .featureSection header {
  position: relative;
  z-index: 10;
  padding: 0 0 4.883vw;
}
#contents.top .FFRS_content .featureSection header h2 {
  margin: 0 0 -0.977vw;
}
#contents.top .FFRS_content .featureSection header nav {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  padding: 12.793vw 0 0 4.883vw;
}
#contents.top .FFRS_content .featureSection header nav a:nth-child(1) {
  position: absolute;
  top: 0;
  left: 4.883vw;
}
#contents.top .FFRS_content .featureSection header nav a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 1.953vw 1.953vw 0;
  position: relative;
  width: 43.945vw;
  height: 10.84vw;
  font-family: "Noto Serif JP", serif;
}
#contents.top .FFRS_content .featureSection header nav a::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  border: 0.293vw solid #0a3357;
  background-color: rgba(255, 255, 255, 0.5);
}
#contents.top .FFRS_content .featureSection header nav a::after {
  content: "";
  width: calc(100% - 1.563vw);
  height: calc(100% - 1.66vw);
  background-color: #0a3357;
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  opacity: 1;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
#contents.top .FFRS_content .featureSection header nav a span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 900;
  font-size: 3.125vw;
  color: #fff;
  position: relative;
  z-index: 100;
}
#contents.top .FFRS_content .featureSection header nav a span b {
  position: relative;
  z-index: 10;
  font-weight: 900;
}
#contents.top .FFRS_content .featureSection header nav a span::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  border-width: 0.293vw;
  border-style: solid;
  border-image-source: linear-gradient(90deg, #0e6bb8 0%, #a15d9b 55%, #d64067 100%);
  border-image-slice: 1;
  background-color: rgba(255, 255, 255, 0.5);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  opacity: 0;
}
#contents.top .FFRS_content .featureSection header nav a span::after {
  content: "";
  width: calc(100% - 1.563vw);
  height: calc(100% - 1.66vw);
  background: -webkit-gradient(linear, left top, right top, from(rgb(14, 107, 184)), color-stop(55%, rgb(161, 93, 155)), to(rgb(214, 64, 103)));
  background: linear-gradient(90deg, rgb(14, 107, 184) 0%, rgb(161, 93, 155) 55%, rgb(214, 64, 103) 100%);
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  opacity: 0;
}
@media (hover: hover) and (pointer: fine) {
  #contents.top .FFRS_content .featureSection header nav a:hover span::before,
  #contents.top .FFRS_content .featureSection header nav a:hover span::after {
    opacity: 1;
  }
}
#contents.top .FFRS_content .featureSection header nav a.-active span::after, #contents.top .FFRS_content .featureSection header nav a.-active span::before {
  opacity: 1;
}
#contents.top .FFRS_content .featureSlider {
  position: relative;
  z-index: 10;
  padding-bottom: 32.227vw;
}
#contents.top .FFRS_content .featureSlider::after {
  content: "";
  width: 100%;
  height: 67.383vw;
  background: url(/FFRS/assets/img/top/feature/bg.webp) no-repeat center top/100% auto;
  position: absolute;
  left: 0;
  bottom: 0;
}
#contents.top .FFRS_content .featureSlider .swiper-container {
  position: relative;
  background-color: #000;
  overflow: hidden;
}
#contents.top .FFRS_content .featureSlider .swiper-container::before {
  content: "";
  width: 100%;
  height: 100%;
  border: 0.977vw solid #fff;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 100;
}
#contents.top .FFRS_content .featureSlider .swiper-container::after {
  content: "";
  width: 100%;
  height: 100%;
  border: 0.195vw solid #0a1e30;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 110;
}
#contents.top .FFRS_content .featureSlider .swiper-pagination {
  opacity: 0;
  position: fixed;
}
#contents.top .FFRS_content .featureSlider .swiper-button-next,
#contents.top .FFRS_content .featureSlider .swiper-button-prev {
  position: absolute;
  left: auto;
  right: auto;
  margin: auto;
  width: 11.426vw;
  height: 11.23vw;
  top: auto;
  bottom: 15.625vw;
}
#contents.top .FFRS_content .featureSlider .swiper-button-next::before, #contents.top .FFRS_content .featureSlider .swiper-button-next::after,
#contents.top .FFRS_content .featureSlider .swiper-button-prev::before,
#contents.top .FFRS_content .featureSlider .swiper-button-prev::after {
  display: none;
}
#contents.top .FFRS_content .featureSlider .swiper-button-next,
#contents.top .FFRS_content .featureSlider .swiper-button-prev {
  opacity: 1;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
#contents.top .FFRS_content .featureSlider .swiper-button-next.swiper-button-disabled,
#contents.top .FFRS_content .featureSlider .swiper-button-prev.swiper-button-disabled {
  opacity: 0;
}
@media (hover: hover) and (pointer: fine) {
  #contents.top .FFRS_content .featureSlider .swiper-button-next,
  #contents.top .FFRS_content .featureSlider .swiper-button-prev {
    -webkit-transition: 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  #contents.top .FFRS_content .featureSlider .swiper-button-next:hover,
  #contents.top .FFRS_content .featureSlider .swiper-button-prev:hover {
    -webkit-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-filter: drop-shadow(0 0 0.977vw rgba(72, 140, 203, 0.5)) brightness(1.25);
            filter: drop-shadow(0 0 0.977vw rgba(72, 140, 203, 0.5)) brightness(1.25);
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 1024px) {
  #contents.top .FFRS_content .featureSlider .swiper-button-next:hover,
  #contents.top .FFRS_content .featureSlider .swiper-button-prev:hover {
    -webkit-filter: drop-shadow(0 0 clamp(10px, 0.521vw, 150vw) rgba(72, 140, 203, 0.5)) brightness(1.25);
            filter: drop-shadow(0 0 clamp(10px, 0.521vw, 150vw) rgba(72, 140, 203, 0.5)) brightness(1.25);
  }
}
#contents.top .FFRS_content .featureSlider .swiper-button-next {
  background: url(/FFRS/assets/img/next.webp) no-repeat center center/100% 100%;
  right: 50%;
  margin-right: -17.383vw;
  margin-top: 0;
}
#contents.top .FFRS_content .featureSlider .swiper-button-prev {
  background: url(/FFRS/assets/img/prev.webp) no-repeat center center/100% 100%;
  left: 50%;
  margin-left: -17.383vw;
  margin-top: 0;
}
#contents.top .FFRS_content .featureItem {
  position: relative;
  height: 57.227vw;
  z-index: 0;
}
#contents.top .FFRS_content .featureItem::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  border-right: 0.195vw solid #0a1e30;
  border-left: 0.195vw solid #0a1e30;
  pointer-events: none;
}
#contents.top .FFRS_content .featureItem::before {
  content: "";
  width: 100%;
  height: 100%;
  border: 0.977vw solid #fff;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 200;
  pointer-events: none;
}
#contents.top .FFRS_content .featureItem {
  background-color: #000;
  overflow: hidden;
}
#contents.top .FFRS_content .featureItem p {
  position: absolute;
  left: 0vw;
  bottom: 0vw;
  width: auto;
  z-index: 100;
  pointer-events: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#contents.top .FFRS_content .featureItem p span {
  font-weight: 900;
  background: #fff;
  margin-top: 0.488vw;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 6.445vw;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2.93vw;
  padding: 0 1.465vw 0 1.953vw;
  position: relative;
}
#contents.top .FFRS_content .featureItem p span::after {
  content: "";
  position: absolute;
  width: 6.445vw;
  height: 6.445vw;
  background-color: #fff;
  -webkit-clip-path: polygon(0% 0%, 100% 100%, 0% 100%);
          clip-path: polygon(0% 0%, 100% 100%, 0% 100%);
  bottom: 0;
  right: -6.348vw;
}
#contents.top .FFRS_content .featureItem.swiper-slide-active {
  z-index: 100;
}
#contents.top .FFRS_content .featureImg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  z-index: 10;
}
#contents.top .FFRS_content .featureImg img, #contents.top .FFRS_content .featureImg video {
  width: 100%;
  height: 100%;
  pointer-events: none;
  position: relative;
  z-index: 1;
}
#contents.top .FFRS_content .featureImg img {
  height: 57.129vw;
  width: auto;
}
#contents.top .FFRS_content .featureImg video {
  height: 57.129vw;
  width: 101.563vw;
  position: relative;
  z-index: -1;
}
#contents.top .FFRS_content .featureImg_poster {
  position: absolute;
  top: 0;
  display: block;
  z-index: 1000;
  -webkit-transition: 0.6s 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: 0.6s 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
#contents .FFRS_content .featureItem.swiper-slide-active .autoMovie.video-container.mp4play .featureImg_poster {
  opacity: 0;
  -webkit-transition: 0.6s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: 0.6s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.safari #contents .FFRS_content .featureItem.swiper-slide-active .autoMovie.video-container.mp4play .featureImg_poster {
  opacity: 0;
  -webkit-transition: 0.6s 1.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: 0.6s 1.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.safari #contents .FFRS_content .featureItem {
  border: 0.977vw solid #fff;
}
.safari #contents .FFRS_content .featureItem p {
  left: -0.098vw;
  bottom: -0.098vw;
  opacity: 0;
  -webkit-transform: translate(0%, 0);
          transform: translate(0%, 0);
  -webkit-transition: 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.safari #contents .FFRS_content .featureItem::before, .safari #contents .FFRS_content .featureItem::after {
  display: none;
}

.safari #contents .FFRS_content .featureItem.swiper-slide-active p {
  opacity: 1;
  -webkit-transition: 0.6s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: 0.6s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -webkit-transform: translate(0);
          transform: translate(0);
}

#contents.top .FFRS_content .aboutSection {
  position: relative;
  z-index: 5;
  height: 307.227vw;
  background: url(/FFRS/assets/img/top/about/bg.webp) no-repeat center top/100% auto;
  padding: 15.234vw 0 0;
  margin: 30.859vw 0 0;
}
#contents.top .FFRS_content .aboutSection header {
  position: relative;
  z-index: 10;
}
#contents.top .FFRS_content .aboutCross {
  width: 26.367vw;
  height: 26.367vw;
  position: absolute;
  left: 50%;
  top: -26vw;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}
#contents.top .FFRS_content .aboutCross span {
  width: 100%;
  height: 100%;
  background: url(/FFRS/assets/img/cross.webp) no-repeat center top/100% auto;
  display: block;
}
#contents.top .FFRS_content .aboutSquare {
  text-align: center;
  height: 117.48vw;
  position: relative;
  z-index: 0;
  padding: 18vw 0 0;
  margin: 9.4vw 0 0;
}
#contents.top .FFRS_content .aboutSquare::before {
  content: "";
  width: 83.203vw;
  height: 83.203vw;
  background-color: rgba(246, 251, 255, 0.3);
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
}
#contents.top .FFRS_content .aboutSquare::after {
  content: "";
  width: 117.48vw;
  height: 117.48vw;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  background: url(/FFRS/assets/img/top/about/mark.webp) no-repeat center center/100% 100%;
}
#contents.top .FFRS_content .aboutSquare h3, #contents.top .FFRS_content .aboutSquare p {
  position: relative;
  z-index: 10;
}
#contents.top .FFRS_content .aboutSquare h3 {
  margin-bottom: -5.1vw;
}
#contents.top .FFRS_content .aboutSquare p {
  font-size: 2.734vw;
  line-height: 1.857;
  font-weight: 500;
}
#contents.top .FFRS_content .aboutSquare p b {
  font-size: 3.125vw;
  line-height: 1.529;
  font-weight: 900;
}
#contents.top .FFRS_content .aboutSquare p em {
  font-size: 3.125vw;
  line-height: 1.529;
  font-weight: 900;
  margin-top: 1.367vw;
}
#contents.top .FFRS_content .aboutSquare p ~ p {
  margin-top: 2.246vw;
}
#contents.top .FFRS_content .aboutSquare i {
  width: 24.902vw;
  display: block;
  margin: 1.66vw auto 0;
}
#contents.top .FFRS_content .aboutSquare i img {
  width: 100%;
  height: auto;
}
#contents.top .FFRS_content .aboutSs {
  position: absolute;
  width: 100%;
  pointer-events: none;
  top: 154.5vw;
  left: 0;
}
#contents.top .FFRS_content .aboutSs img {
  width: 100%;
  height: auto;
  pointer-events: none;
}
#contents.top .FFRS_content .aboutSs_1 {
  position: relative;
  top: 0;
  z-index: 10;
}
#contents.top .FFRS_content .aboutSs_2 {
  position: absolute;
  top: 0;
  z-index: 0;
}
#contents.top .FFRS_content .characterSection {
  height: 275.879vw;
  z-index: 13;
  margin: -12.8vw 0 0;
  background: url(/FFRS/assets/img/top/character/bg.webp) no-repeat center top/100% auto;
  padding: 13.7vw 0 0;
}
#contents.top .FFRS_content .characterIllust {
  position: relative;
  top: -8.4vw;
}
#contents.top .FFRS_content .characterIllust_1 {
  position: relative;
  top: 0;
  z-index: 0;
}
#contents.top .FFRS_content .characterIllust_2 {
  position: absolute;
  top: 0;
  z-index: 10;
  display: block;
}
#contents.top .FFRS_content .characterIllust_3 {
  position: absolute;
  top: 0;
  z-index: 20;
  display: none;
}
#contents.top .FFRS_content .characterMore a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: -5.3vw auto 0;
  position: relative;
  width: 50.781vw;
  height: 11.816vw;
}
#contents.top .FFRS_content .characterMore a::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  border-width: 0.293vw;
  border-style: solid;
  border-image-source: linear-gradient(90deg, #0e6bb8 0%, #a15d9b 55%, #d64067 100%);
  border-image-slice: 1;
  background-color: rgba(255, 255, 255, 0.5);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  opacity: 1;
}
#contents.top .FFRS_content .characterMore a::after {
  content: "";
  width: calc(100% - 1.563vw);
  height: calc(100% - 1.66vw);
  background: -webkit-gradient(linear, left top, right top, from(rgb(14, 107, 184)), color-stop(55%, rgb(161, 93, 155)), to(rgb(214, 64, 103)));
  background: linear-gradient(90deg, rgb(14, 107, 184) 0%, rgb(161, 93, 155) 55%, rgb(214, 64, 103) 100%);
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  opacity: 1;
}
#contents.top .FFRS_content .characterMore a span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 900;
  font-size: 3.418vw;
  color: #fff;
  position: relative;
  z-index: 100;
}
#contents.top .FFRS_content .characterMore a span b {
  position: relative;
  z-index: 10;
  font-weight: 900;
}
#contents.top .FFRS_content .characterMore a span::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  border-width: 0.293vw;
  border-style: solid;
  border-image-source: linear-gradient(270deg, #0e6bb8 0%, #a15d9b 55%, #d64067 100%);
  border-image-slice: 1;
  background-color: rgba(255, 255, 255, 0.5);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  opacity: 0;
}
#contents.top .FFRS_content .characterMore a span::after {
  content: "";
  width: calc(100% - 1.563vw);
  height: calc(100% - 1.66vw);
  background: -webkit-gradient(linear, right top, left top, from(rgb(14, 107, 184)), color-stop(55%, rgb(161, 93, 155)), to(rgb(214, 64, 103)));
  background: linear-gradient(270deg, rgb(14, 107, 184) 0%, rgb(161, 93, 155) 55%, rgb(214, 64, 103) 100%);
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  opacity: 0;
}
@media (hover: hover) and (pointer: fine) {
  #contents.top .FFRS_content .characterMore a:hover span::before,
  #contents.top .FFRS_content .characterMore a:hover span::after {
    opacity: 1;
  }
}
#contents.top .FFRS_content .characterMore a.-active span::after, #contents.top .FFRS_content .characterMore a.-active span::before {
  opacity: 1;
}
#contents.top .FFRS_content .productsSection .effectWrap {
  padding-bottom: 16.7vw;
}
#contents.top .FFRS_content .staffSection {
  z-index: 230;
  height: 109.473vw;
  position: relative;
  margin-bottom: 26vw;
}
#contents.top .FFRS_content .staffSection::after, #contents.top .FFRS_content .staffSection::before {
  content: "";
  width: 100%;
  height: 0.684vw;
  background-color: #f6fbff;
  position: absolute;
  left: 0;
  pointer-events: none;
  min-height: inherit;
  z-index: 200;
}
#contents.top .FFRS_content .staffSection::before {
  top: 0;
}
#contents.top .FFRS_content .staffSection::after {
  bottom: 0;
}
#contents.top .FFRS_content .staffSection_wrap {
  height: 109.473vw;
  position: relative;
  padding: 8.6vw 0 0;
  overflow: hidden;
}
#contents.top .FFRS_content .staffSection_wrap::before {
  content: "";
  width: 89.258vw;
  height: 89.258vw;
  border: 0.195vw solid rgba(255, 255, 255, 0.2);
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
  pointer-events: none;
}
#contents.top .FFRS_content .staffSection_wrap::after {
  content: "";
  width: 87.109vw;
  height: 87.109vw;
  border: 0.195vw solid rgba(255, 255, 255, 0.2);
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
  pointer-events: none;
}
#contents.top .FFRS_content .staffSection_wrap {
  background: url(/FFRS/assets/img/top/staff/bg.webp) no-repeat center top/100% auto;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#contents.top .FFRS_content .staffSection_wrap dl {
  height: 46.387vw;
  width: 100%;
  background: url(/FFRS/assets/img/top/staff/staffName.webp) no-repeat center top/cover;
  font-size: 0;
}
#contents.top .FFRS_content .specSection {
  position: relative;
  z-index: 230;
  margin: 0 0 0;
  margin: -93.8vw 0 0;
  padding: 0 0 120.117vw;
  pointer-events: none;
  background: url(/FFRS/assets/img/top/spec/bg.webp) no-repeat center bottom/100% auto;
}
#contents.top .FFRS_content .specTitle {
  position: relative;
  z-index: 20;
}
#contents.top .FFRS_content .specTitle img {
  width: 100%;
  height: auto;
}
#contents.top .FFRS_content .specBox {
  position: relative;
  z-index: 10;
}
#contents.top .FFRS_content .specBox_in {
  padding: 16.6vw 0 0 0vw;
  background-color: rgba(255, 255, 255, 0.4);
  margin: -24.7vw auto 0;
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  height: 147.656vw;
  -webkit-mask-image: url(/FFRS/assets/img/top/spec/mask.webp);
  -webkit-mask-mode: match-source;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  -webkit-mask-position: center center;
}
#contents.top .FFRS_content .specBox_in::after, #contents.top .FFRS_content .specBox_in::before {
  width: 9.18vw;
  height: 8.984vw;
  content: "";
  position: absolute;
}
#contents.top .FFRS_content .specBox_in::after {
  background: url(/FFRS/assets/img/mark1.webp) no-repeat left bottom/100% 100%;
  left: 1.563vw;
  bottom: 1.563vw;
}
#contents.top .FFRS_content .specBox_in::before {
  right: 1.563vw;
  top: 1.563vw;
  background: url(/FFRS/assets/img/mark2.webp) no-repeat center top/100% 100%;
}
#contents.top .FFRS_content .specBox_in dl dt {
  clear: left;
  float: left;
  width: 27.344vw;
  padding: 0 4.883vw 0 0;
  text-align: right;
  font-weight: 900;
  font-size: 2.734vw;
  color: #de2f40;
  letter-spacing: 0.05em;
  line-height: 1.786;
}
#contents.top .FFRS_content .specBox_in dl dd {
  zoom: 1;
  overflow: hidden;
  font-size: 2.734vw;
  letter-spacing: 0.05em;
  font-weight: 600;
  line-height: 1.786;
}
#contents.top .FFRS_content .specBox_in dl dd small {
  font-size: 2.441vw;
  line-height: 1.68;
  display: block;
}
#contents.top .FFRS_content .specBox_in dl dd b {
  display: block;
}
#contents.top .FFRS_content .specBox_in dl dt ~ dt,
#contents.top .FFRS_content .specBox_in dl dd ~ dd {
  margin-top: 2.7vw;
}
#contents.top .FFRS_content .specBox i {
  height: 138.574vw;
  width: 100vw;
  background: url(/FFRS/assets/img/top/spec/chara.webp) no-repeat center top/100% 100%;
  position: absolute;
  left: 50%;
  bottom: -120.117vw;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  display: block;
}
@media (min-width: 1024px) {
  #contents.top .FFRS_content .anchorPoint.aboutAnchor {
    top: clamp(570px, 29.688vw, 150vw);
  }
  #contents.top .FFRS_content .anchorPoint.productsAnchor {
    top: min(-270px, -14.063vw);
  }
  #contents.top .FFRS_content .anchorPoint.specAnchor {
    top: clamp(200px, 10.417vw, 150vw);
  }
  #contents.top .FFRS_content .kvSection {
    height: clamp(1640px, 85.417vw, 150vw);
  }
  #contents.top .FFRS_content .kvSection::after {
    height: clamp(741px, 38.594vw, 150vw);
    width: clamp(1920px, 100vw, 150vw);
    left: 50%;
    bottom: 0;
    z-index: 10;
    background: url(/FFRS/assets/img/top/kv/bg@pc.webp) no-repeat center bottom/clamp(1920px, 100vw, 150vw) auto;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
  #contents.top .FFRS_content .kvBg {
    position: absolute;
    top: 0;
    width: clamp(1920px, 100vw, 150vw);
    height: clamp(1200px, 62.5vw, 150vw);
  }
  #contents.top .FFRS_content .kvBg video {
    height: clamp(1200px, 62.5vw, 150vw);
    width: clamp(2133.33px, 111.111vw, 150vw);
    -o-object-fit: cover;
       object-fit: cover;
    overflow: hidden;
  }
  #contents.top .FFRS_content .kvBg::before {
    height: 100%;
  }
  #contents.top .FFRS_content .kvPCNav_wrap {
    width: clamp(696px, 54.375vw, 150vw);
    height: clamp(34.67px, 2.708vw, 150vw);
    position: absolute;
    top: clamp(20.67px, 1.615vw, 150vw);
    z-index: 100;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
  #contents.top .FFRS_content .kvPCNav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #contents.top .FFRS_content .kvPCNav li {
    margin: 0 clamp(8.67px, 0.677vw, 150vw);
  }
  #contents.top .FFRS_content .kvPCNav li a {
    display: block;
    height: clamp(34.67px, 2.708vw, 150vw);
    width: clamp(80px, 6.25vw, 150vw);
    font-size: 0;
    background: url(/FFRS/assets/img/top/pcNav.webp) no-repeat left center/clamp(696px, 54.375vw, 150vw) 100%;
  }
}
@media (min-width: 1024px) and (hover: hover) and (pointer: fine) {
  #contents.top .FFRS_content .kvPCNav li a {
    -webkit-transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
  #contents.top .FFRS_content .kvPCNav li a:hover {
    opacity: 0.6;
  }
}
@media (min-width: 1024px) {
  #contents.top .FFRS_content .kvPCNav li:nth-child(1) a {
    width: clamp(56.67px, 4.427vw, 150vw);
  }
  #contents.top .FFRS_content .kvPCNav li:nth-child(2) a {
    width: clamp(86.67px, 6.771vw, 150vw);
    background-position: min(-606.67px, -47.396vw) center;
  }
  #contents.top .FFRS_content .kvPCNav li:nth-child(3) a {
    width: clamp(110.67px, 8.646vw, 150vw);
    background-position: min(-73.33px, -5.729vw) center;
  }
  #contents.top .FFRS_content .kvPCNav li:nth-child(4) a {
    width: clamp(88px, 6.875vw, 150vw);
    background-position: min(-202px, -15.781vw) center;
  }
  #contents.top .FFRS_content .kvPCNav li:nth-child(5) a {
    width: clamp(140px, 10.938vw, 150vw);
    background-position: min(-306.67px, -23.958vw) center;
  }
  #contents.top .FFRS_content .kvPCNav li:nth-child(6) a {
    width: clamp(126.67px, 9.896vw, 150vw);
    background-position: min(-463.33px, -36.198vw) center;
  }
  #contents.top .FFRS_content .kvPCNav li:nth-child(7) {
    display: none;
  }
  #contents.top .FFRS_content .kvPcBtn {
    position: absolute;
    right: clamp(30px, 2.344vw, 150vw);
    top: clamp(21.33px, 1.667vw, 150vw);
    z-index: 100;
  }
  #contents.top .FFRS_content .kvPcBtn a {
    display: block;
    width: clamp(186.67px, 14.583vw, 150vw);
    height: clamp(53.33px, 4.167vw, 150vw);
  }
  #contents.top .FFRS_content .kvPcBtn a img {
    width: 100%;
    height: auto;
  }
}
@media (min-width: 1024px) and (hover: hover) and (pointer: fine) {
  #contents.top .FFRS_content .kvPcBtn a {
    -webkit-transition: 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  #contents.top .FFRS_content .kvPcBtn a:hover {
    -webkit-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-filter: drop-shadow(0 0 0.977vw rgba(72, 140, 203, 0.5)) brightness(1.25);
            filter: drop-shadow(0 0 0.977vw rgba(72, 140, 203, 0.5)) brightness(1.25);
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@media (min-width: 1024px) and (hover: hover) and (pointer: fine) and (min-width: 1024px) {
  #contents.top .FFRS_content .kvPcBtn a:hover {
    -webkit-filter: drop-shadow(0 0 clamp(10px, 0.521vw, 150vw) rgba(72, 140, 203, 0.5)) brightness(1.25);
            filter: drop-shadow(0 0 clamp(10px, 0.521vw, 150vw) rgba(72, 140, 203, 0.5)) brightness(1.25);
  }
}
@media (min-width: 1024px) {
  #contents.top .FFRS_content .kvLogo {
    margin: 0;
    position: absolute;
    left: clamp(26.67px, 2.083vw, 150vw);
    top: clamp(26.67px, 2.083vw, 150vw);
    width: clamp(420px, 32.813vw, 150vw);
  }
  #contents.top .FFRS_content .kvLogo img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .kvMovie {
    width: clamp(151px, 7.865vw, 150vw);
    margin: clamp(350px, 18.229vw, 150vw) auto min(-31px, -1.615vw);
  }
  #contents.top .FFRS_content .kvMovie img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .kvCopy {
    width: clamp(1280px, 66.667vw, 150vw);
    margin: clamp(55px, 2.865vw, 150vw) auto clamp(42px, 2.188vw, 150vw);
  }
  #contents.top .FFRS_content .kvCopy img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .kvYoyaku {
    width: clamp(541px, 28.177vw, 150vw);
    margin: 0 auto;
  }
  #contents.top .FFRS_content .kvYoyaku a {
    pointer-events: all;
    display: block;
    width: clamp(541px, 28.177vw, 150vw);
  }
  #contents.top .FFRS_content .kvYoyaku a img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .kvPrathome {
    width: clamp(1280px, 66.667vw, 150vw);
    margin: clamp(16px, 0.833vw, 150vw) auto clamp(62px, 3.229vw, 150vw);
  }
  #contents.top .FFRS_content .kvPrathome img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .kvDate {
    width: clamp(1280px, 100vw, 150vw);
    height: clamp(279px, 14.531vw, 150vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #contents.top .FFRS_content .kvDate img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .kvX {
    width: clamp(155.33px, 12.135vw, 150vw);
    right: clamp(39px, 2.031vw, 150vw);
    top: clamp(338.67px, 26.458vw, 150vw);
  }
  #contents.top .FFRS_content .kvX i {
    width: clamp(58px, 4.531vw, 150vw);
    position: absolute;
    left: 50%;
    top: min(-53.33px, -4.167vw);
    z-index: 100;
  }
  #contents.top .FFRS_content .kvX i img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .kvX img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .featureSection {
    position: relative;
    z-index: 5;
    height: clamp(1004.67px, 78.49vw, 150vw);
  }
  #contents.top .FFRS_content .featureSection::before {
    content: "";
    background: url(/FFRS/assets/img/top/feature/bg2@pc.webp) no-repeat center top/100% auto;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: clamp(1658.67px, 129.583vw, 150vw);
  }
  #contents.top .FFRS_content .featureSection::after {
    width: clamp(1280px, 100vw, 150vw);
    height: 100%;
    background: url(/FFRS/assets/img/top/feature/bg@pc.webp) no-repeat center bottom/100% auto;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  #contents.top .FFRS_content .featureSection {
    padding: clamp(133.33px, 10.417vw, 150vw) 0 clamp(133.33px, 10.417vw, 150vw);
    margin: min(-116px, -9.063vw) 0 0;
  }
  #contents.top .FFRS_content .featureSection header {
    position: relative;
    z-index: 10;
    padding: clamp(21.33px, 1.667vw, 150vw) 0 clamp(30px, 2.344vw, 150vw);
  }
  #contents.top .FFRS_content .featureSection header h2 {
    margin: 0 0;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
  }
  #contents.top .FFRS_content .featureSection header h2 img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .featureSection header nav {
    padding: 0 clamp(11.33px, 0.885vw, 150vw);
    margin: 0 0 0 auto;
    width: clamp(654.67px, 51.146vw, 150vw);
  }
  #contents.top .FFRS_content .featureSection header nav a:nth-child(1) {
    position: relative;
    top: 0;
    left: 0;
  }
  #contents.top .FFRS_content .featureSection header nav a {
    margin: 0 clamp(2px, 0.156vw, 150vw) clamp(10px, 0.781vw, 150vw);
    width: clamp(206.67px, 16.146vw, 150vw);
    height: clamp(46px, 3.594vw, 150vw);
  }
  #contents.top .FFRS_content .featureSection header nav a::before {
    border: clamp(1.33px, 0.104vw, 150vw) solid #0a3357;
  }
  #contents.top .FFRS_content .featureSection header nav a::after {
    width: calc(100% - clamp(8px, 0.625vw, 150vw));
    height: calc(100% - clamp(7.33px, 0.573vw, 150vw));
  }
  #contents.top .FFRS_content .featureSection header nav a span {
    font-size: clamp(15.33px, 1.198vw, 150vw);
  }
  #contents.top .FFRS_content .featureSection header nav a span::before {
    border-width: clamp(1.33px, 0.104vw, 150vw);
    border-style: solid;
  }
  #contents.top .FFRS_content .featureSection header nav a span::after {
    width: calc(100% - clamp(8px, 0.625vw, 150vw));
    height: calc(100% - clamp(7.33px, 0.573vw, 150vw));
  }
  #contents.top .FFRS_content .featureSlider {
    padding-bottom: clamp(0px, 0vw, 150vw);
  }
  #contents.top .FFRS_content .featureSlider .swiper-container {
    width: clamp(1006.67px, 78.646vw, 150vw);
    margin: 0 auto;
    overflow: hidden;
  }
  #contents.top .FFRS_content .featureSlider .swiper-container::before {
    border: clamp(7.33px, 0.573vw, 150vw) solid #fff;
  }
  #contents.top .FFRS_content .featureSlider .swiper-container::after {
    border: clamp(1.33px, 0.104vw, 150vw) solid #0a1e30;
  }
  #contents.top .FFRS_content .featureSlider::after {
    display: none;
  }
  #contents.top .FFRS_content .featureSlider .swiper-pagination {
    opacity: 0;
    position: fixed;
  }
  #contents.top .FFRS_content .featureSlider .swiper-button-next,
  #contents.top .FFRS_content .featureSlider .swiper-button-prev {
    width: clamp(78px, 6.094vw, 150vw);
    height: clamp(76.67px, 5.99vw, 150vw);
    top: clamp(253.33px, 19.792vw, 150vw);
    bottom: auto;
  }
  #contents.top .FFRS_content .featureSlider .swiper-button-next {
    background: url(/FFRS/assets/img/next2.webp) no-repeat center center/100% 100%;
    right: 50%;
    margin-right: min(-593.33px, -46.354vw);
    margin-top: 0;
  }
  #contents.top .FFRS_content .featureSlider .swiper-button-prev {
    margin-left: min(-593.33px, -46.354vw);
    margin-top: 0;
  }
  #contents.top .FFRS_content .featureItem::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    border-right: clamp(1.33px, 0.104vw, 150vw) solid #0a1e30;
    border-left: clamp(1.33px, 0.104vw, 150vw) solid #0a1e30;
  }
  #contents.top .FFRS_content .featureItem::before {
    content: "";
    width: 100%;
    height: 100%;
    border: clamp(6.67px, 0.521vw, 150vw) solid #fff;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 100;
  }
  #contents.top .FFRS_content .featureItem {
    height: clamp(576px, 45vw, 150vw);
    overflow: hidden;
  }
  #contents.top .FFRS_content .featureItem p {
    position: absolute;
    left: clamp(5.33px, 0.417vw, 150vw);
    bottom: clamp(5.33px, 0.417vw, 150vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #contents.top .FFRS_content .featureItem p span {
    margin-top: clamp(3.33px, 0.26vw, 150vw);
    height: clamp(44px, 3.438vw, 150vw);
    font-size: clamp(20px, 1.563vw, 150vw);
    padding: 0 clamp(10px, 0.781vw, 150vw) 0 clamp(13.33px, 1.042vw, 150vw);
    position: relative;
  }
  #contents.top .FFRS_content .featureItem p span::after {
    width: clamp(44px, 3.438vw, 150vw);
    height: clamp(44px, 3.438vw, 150vw);
    bottom: 0;
    right: min(-43.6px, -3.406vw);
  }
  #contents.top .FFRS_content .featureImg {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #contents.top .FFRS_content .featureImg img, #contents.top .FFRS_content .featureImg video {
    width: 100%;
    height: 100%;
    pointer-events: none;
  }
  #contents.top .FFRS_content .featureImg img {
    height: clamp(575.33px, 44.948vw, 150vw);
    width: auto;
  }
  #contents.top .FFRS_content .featureImg video {
    height: clamp(575.33px, 44.948vw, 150vw);
    width: clamp(1022.81px, 79.907vw, 150vw);
  }
  .safari #contents .FFRS_content .featureItem {
    border: clamp(7.33px, 0.573vw, 150vw) solid #fff;
  }
  .safari #contents .FFRS_content .featureItem p {
    left: min(-0.67px, -0.052vw);
    bottom: min(-0.67px, -0.052vw);
    opacity: 0;
    -webkit-transform: translate(0%, 0);
            transform: translate(0%, 0);
    -webkit-transition: 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
  .safari #contents .FFRS_content .featureItem::before, .safari #contents .FFRS_content .featureItem::after {
    display: none;
  }
  .safari #contents .FFRS_content .featureItem.swiper-slide-active p {
    opacity: 1;
    -webkit-transition: 0.6s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: 0.6s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    -webkit-transform: translate(0);
            transform: translate(0);
  }
  #contents.top .FFRS_content .aboutSection {
    height: clamp(1852px, 96.458vw, 150vw);
    background: url(/FFRS/assets/img/top/about/bg@pc.webp) no-repeat center top/clamp(1920px, 100vw, 150vw) clamp(1852px, 96.458vw, 150vw);
    padding: clamp(286px, 14.896vw, 150vw) 0 0;
    margin: min(-44px, -2.292vw) 0 0;
  }
  #contents.top .FFRS_content .aboutSection header {
    position: relative;
    z-index: 10;
  }
  #contents.top .FFRS_content .aboutSection header h2 {
    display: block;
  }
  #contents.top .FFRS_content .aboutSection header h2 span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: clamp(243px, 12.656vw, 150vw);
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #contents.top .FFRS_content .aboutSection header h2 span img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .aboutCross {
    width: clamp(200px, 10.417vw, 150vw);
    height: clamp(200px, 10.417vw, 150vw);
    top: 0;
  }
  #contents.top .FFRS_content .aboutSquare {
    height: clamp(980px, 51.042vw, 150vw);
    padding: clamp(149px, 7.76vw, 150vw) 0 0;
    margin: clamp(77px, 4.01vw, 150vw) 0 0;
  }
  #contents.top .FFRS_content .aboutSquare::before {
    width: clamp(694px, 36.146vw, 150vw);
    height: clamp(694px, 36.146vw, 150vw);
  }
  #contents.top .FFRS_content .aboutSquare::after {
    content: "";
    width: clamp(980px, 51.042vw, 150vw);
    height: clamp(980px, 51.042vw, 150vw);
  }
  #contents.top .FFRS_content .aboutSquare h3 {
    margin-bottom: 0;
    width: clamp(980px, 51.042vw, 150vw);
    margin: 0 auto -2.3vw;
  }
  #contents.top .FFRS_content .aboutSquare h3 img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .aboutSquare p {
    font-size: clamp(20px, 1.042vw, 150vw);
    line-height: 1.9;
  }
  #contents.top .FFRS_content .aboutSquare p b {
    font-size: clamp(26px, 1.354vw, 150vw);
    line-height: 1.615;
  }
  #contents.top .FFRS_content .aboutSquare p em {
    font-size: clamp(26px, 1.354vw, 150vw);
    line-height: 1;
    margin-top: clamp(13px, 0.677vw, 150vw);
    display: block;
  }
  #contents.top .FFRS_content .aboutSquare p ~ p {
    margin-top: clamp(13px, 0.677vw, 150vw);
  }
  #contents.top .FFRS_content .aboutSquare i {
    width: clamp(208px, 10.833vw, 150vw);
    margin: clamp(30px, 1.563vw, 150vw) auto 0;
  }
  #contents.top .FFRS_content .aboutSquare i img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .aboutSs {
    position: absolute;
    width: clamp(1920px, 100vw, 150vw);
    top: clamp(632px, 32.917vw, 150vw);
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
  #contents.top .FFRS_content .aboutSs img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .aboutSs_2 {
    position: absolute;
    top: 0;
    z-index: 0;
    display: none;
  }
  #contents.top .FFRS_content .characterSection {
    height: clamp(1764px, 91.875vw, 150vw);
    margin: clamp(-297px, -15.469vw, 150vw) 0 0;
    background: url(/FFRS/assets/img/top/character/bg@pc.webp) no-repeat center top/clamp(1920px, 100vw, 150vw) clamp(1764px, 91.875vw, 150vw);
    padding: clamp(225px, 11.719vw, 150vw) 0 0;
  }
  #contents.top .FFRS_content .characterSection h2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: clamp(237px, 12.344vw, 150vw);
  }
  #contents.top .FFRS_content .characterSection h2 img {
    width: clamp(1280px, 66.667vw, 150vw);
    height: auto;
  }
  #contents.top .FFRS_content .characterIllust {
    position: relative;
    top: min(-108px, -5.625vw);
    height: clamp(967px, 50.365vw, 150vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #contents.top .FFRS_content .characterIllust img {
    width: clamp(1280px, 100vw, 150vw);
    height: auto;
  }
  #contents.top .FFRS_content .characterIllust_1 {
    position: relative;
    top: 0;
    z-index: 0;
    width: clamp(1920px, 100vw, 150vw);
    height: clamp(967px, 50.365vw, 150vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #contents.top .FFRS_content .characterIllust_2 {
    position: absolute;
    top: 0;
    z-index: 10;
    width: clamp(1920px, 100vw, 150vw);
    height: clamp(967px, 50.365vw, 150vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #contents.top .FFRS_content .characterIllust_3 {
    position: absolute;
    top: 0;
    z-index: 20;
    width: clamp(1920px, 100vw, 150vw);
    height: clamp(967px, 50.365vw, 150vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (min-width: 1024px) and (min-width: 1024px) and (max-width: 1400px) {
  #contents.top .FFRS_content .characterIllust {
    margin-bottom: min(-240px, -12.5vw);
  }
}
@media (min-width: 1024px) and (min-width: 1401px) and (max-width: 1700px) {
  #contents.top .FFRS_content .characterIllust {
    margin-bottom: min(-210px, -10.938vw);
  }
}
@media (min-width: 1024px) and (min-width: 1701px) and (max-width: 1920px) {
  #contents.top .FFRS_content .characterIllust {
    margin-bottom: min(-180px, -9.375vw);
  }
}
@media (min-width: 1024px) {
  #contents.top .FFRS_content .characterMore {
    margin: min(-148px, -7.708vw) 0 0;
  }
  #contents.top .FFRS_content .characterMore a {
    margin: 0vw auto 0;
    width: clamp(324px, 16.875vw, 150vw);
    height: clamp(75px, 3.906vw, 150vw);
  }
  #contents.top .FFRS_content .characterMore a::before {
    border-width: clamp(2px, 0.104vw, 150vw);
  }
  #contents.top .FFRS_content .characterMore a::after {
    width: calc(100% - clamp(12px, 0.625vw, 150vw));
    height: calc(100% - clamp(12px, 0.625vw, 150vw));
  }
  #contents.top .FFRS_content .characterMore a span {
    font-size: clamp(20px, 1.042vw, 150vw);
  }
  #contents.top .FFRS_content .characterMore a span::before {
    border-width: clamp(2px, 0.104vw, 150vw);
  }
  #contents.top .FFRS_content .characterMore a span::after {
    width: calc(100% - clamp(12px, 0.625vw, 150vw));
    height: calc(100% - clamp(12px, 0.625vw, 150vw));
  }
  #contents.top .FFRS_content .productsSection .effectWrap {
    padding-bottom: clamp(53px, 2.76vw, 150vw);
  }
  #contents.top .FFRS_content .staffSection {
    height: clamp(567px, 29.531vw, 150vw);
    margin-bottom: 0;
  }
  #contents.top .FFRS_content .staffSection::after, #contents.top .FFRS_content .staffSection::before {
    content: "";
    width: 100%;
    height: clamp(4px, 0.208vw, 150vw);
    background-color: #f6fbff;
    position: absolute;
    left: 0;
    pointer-events: none;
    min-height: inherit;
    z-index: 200;
  }
  #contents.top .FFRS_content .staffSection_wrap {
    height: clamp(567px, 29.531vw, 150vw);
    padding: clamp(73px, 3.802vw, 150vw) 0 0;
  }
  #contents.top .FFRS_content .staffSection_wrap::before {
    width: clamp(570px, 29.688vw, 150vw);
    height: clamp(570px, 29.688vw, 150vw);
    border: clamp(2px, 0.104vw, 150vw) solid rgba(226, 240, 252, 0.2);
  }
  #contents.top .FFRS_content .staffSection_wrap::after {
    width: clamp(546px, 28.438vw, 150vw);
    height: clamp(546px, 28.438vw, 150vw);
    border: clamp(2px, 0.104vw, 150vw) solid rgba(226, 240, 252, 0.2);
  }
  #contents.top .FFRS_content .staffSection_wrap h2 {
    height: clamp(236px, 12.292vw, 150vw);
    margin: 0 auto min(-17px, -0.885vw);
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #contents.top .FFRS_content .staffSection_wrap h2 img {
    width: auto;
    height: 100%;
  }
  #contents.top .FFRS_content .staffSection_wrap {
    background: url(/FFRS/assets/img/top/staff/bg@pc.webp) no-repeat center top/cover;
  }
  #contents.top .FFRS_content .staffSection_wrap dl {
    height: clamp(179px, 9.323vw, 150vw);
    width: 100%;
    background: url(/FFRS/assets/img/top/staff/staffName@pc.webp) no-repeat center top/auto 100%;
  }
  #contents.top .FFRS_content .specSection {
    margin: clamp(24px, 1.25vw, 150vw) 0 0;
    padding: clamp(300px, 15.625vw, 150vw) 0 clamp(130px, 6.771vw, 150vw);
    background: url(/FFRS/assets/img/top/spec/bg@pc.webp) no-repeat center bottom/clamp(1920px, 100vw, 150vw) auto;
  }
  #contents.top .FFRS_content .specTitle {
    width: clamp(198px, 10.313vw, 150vw);
    position: absolute;
    top: clamp(396px, 20.625vw, 150vw);
    right: 50%;
    margin-right: clamp(404px, 21.042vw, 150vw);
  }
  #contents.top .FFRS_content .specTitle img {
    width: 100%;
    height: auto;
  }
  #contents.top .FFRS_content .specBox {
    width: clamp(1200px, 62.5vw, 150vw);
    margin: 0 auto;
    position: relative;
  }
  #contents.top .FFRS_content .specBox::before {
    content: "";
    background: url(/FFRS/assets/img/top/spec/logo.webp) no-repeat center top/100% 100%;
    width: clamp(630px, 32.813vw, 150vw);
    height: clamp(111px, 5.781vw, 150vw);
    position: absolute;
    right: 50%;
    top: min(-62px, -3.229vw);
    z-index: 10;
    pointer-events: none;
    margin-right: min(-152px, -7.917vw);
  }
  #contents.top .FFRS_content .specBox_in {
    width: clamp(854px, 44.479vw, 150vw);
    height: clamp(847px, 44.115vw, 150vw);
    padding: clamp(97px, 5.052vw, 150vw) 0 0 0vw;
    margin: min(0px, 0vw) auto 0 0;
    -webkit-mask-image: url(/FFRS/assets/img/top/spec/mask@pc.webp);
    -webkit-mask-mode: match-source;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    -webkit-mask-position: center center;
  }
  #contents.top .FFRS_content .specBox_in::after, #contents.top .FFRS_content .specBox_in::before {
    width: clamp(57px, 2.969vw, 150vw);
    height: clamp(58px, 3.021vw, 150vw);
  }
  #contents.top .FFRS_content .specBox_in::after {
    left: clamp(10px, 0.521vw, 150vw);
    bottom: clamp(10px, 0.521vw, 150vw);
  }
  #contents.top .FFRS_content .specBox_in::before {
    right: clamp(10px, 0.521vw, 150vw);
    top: clamp(10px, 0.521vw, 150vw);
  }
  #contents.top .FFRS_content .specBox_in dl dt {
    width: clamp(286px, 14.896vw, 150vw);
    padding: 0 clamp(24px, 1.25vw, 150vw) 0 0;
    font-size: clamp(17px, 0.885vw, 150vw);
    line-height: 1.882;
  }
  #contents.top .FFRS_content .specBox_in dl dd {
    font-size: clamp(17px, 0.885vw, 150vw);
    line-height: 1.882;
  }
  #contents.top .FFRS_content .specBox_in dl dd small {
    font-size: clamp(14px, 0.729vw, 150vw);
    line-height: 2.071;
  }
  #contents.top .FFRS_content .specBox_in dl dt ~ dt,
  #contents.top .FFRS_content .specBox_in dl dd ~ dd {
    margin-top: clamp(13px, 0.677vw, 150vw);
  }
  #contents.top .FFRS_content .specBox i {
    height: clamp(1408px, 73.333vw, 150vw);
    width: clamp(800px, 41.667vw, 150vw);
    background: url(/FFRS/assets/img/top/spec/chara@pc.webp) no-repeat center top/100% 100%;
    position: absolute;
    left: 50%;
    bottom: min(-130px, -6.771vw);
    -webkit-transform: translate(clamp(160px, 8.333vw, 150vw), 0);
            transform: translate(clamp(160px, 8.333vw, 150vw), 0);
    display: block;
  }
}

#contents .FFRS_content .kvLogo {
  -webkit-transform: scale(0.88);
          transform: scale(0.88);
  -webkit-filter: drop-shadow(0 0 1.465vw #75aee9);
          filter: drop-shadow(0 0 1.465vw #75aee9);
}
@media (min-width: 1024px) {
  #contents .FFRS_content .kvLogo {
    -webkit-filter: drop-shadow(0 0 clamp(12px, 0.625vw, 150vw) #75aee9);
            filter: drop-shadow(0 0 clamp(12px, 0.625vw, 150vw) #75aee9);
  }
}
#contents .FFRS_content .kvLogo span {
  -webkit-mask-image: radial-gradient(#000 40%, rgba(255, 255, 255, 0) 70%);
          mask-image: radial-gradient(#000 40%, rgba(255, 255, 255, 0) 70%);
  display: block;
  width: 100%;
  height: 100%;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: 0% 0%;
  -webkit-mask-position: center center;
}
#contents .FFRS_content .kvLogo span img {
  -webkit-filter: brightness(3) blur(4px);
          filter: brightness(3) blur(4px);
  opacity: 0.8;
}
#contents .FFRS_content .kvLogo span {
  z-index: 1;
}
#contents .FFRS_content .kvLogo em {
  position: absolute;
  top: 0;
  z-index: 10;
  -webkit-mask-image: radial-gradient(#000 40%, rgba(255, 255, 255, 0) 70%);
          mask-image: radial-gradient(#000 40%, rgba(255, 255, 255, 0) 70%);
  display: block;
  width: 100%;
  height: 100%;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: 0% 0%;
  -webkit-mask-position: center center;
}
#contents .FFRS_content .kvLogo em img {
  -webkit-filter: brightness(1.25);
          filter: brightness(1.25);
}
#contents .FFRS_content .kvPcBtn,
#contents .FFRS_content .kvPCNav,
#contents .FFRS_content .kvMovie,
#contents .FFRS_content .kvYoyaku,
#contents .FFRS_content .kvPrathome,
#contents .FFRS_content .kvCopy,
#contents .FFRS_content .kvDate,
#contents .FFRS_content .kvX {
  opacity: 0;
  -webkit-filter: drop-shadow(0 0 1.465vw #75aee9);
          filter: drop-shadow(0 0 1.465vw #75aee9);
}
@media (min-width: 1024px) {
  #contents .FFRS_content .kvPcBtn,
  #contents .FFRS_content .kvPCNav,
  #contents .FFRS_content .kvMovie,
  #contents .FFRS_content .kvYoyaku,
  #contents .FFRS_content .kvPrathome,
  #contents .FFRS_content .kvCopy,
  #contents .FFRS_content .kvDate,
  #contents .FFRS_content .kvX {
    -webkit-filter: drop-shadow(0 0 clamp(12px, 0.625vw, 150vw) #75aee9);
            filter: drop-shadow(0 0 clamp(12px, 0.625vw, 150vw) #75aee9);
  }
}
#contents .FFRS_content .topicsSection,
#contents .FFRS_content .featureSection {
  opacity: 0;
  -webkit-transform: translate(0, 3.906vw);
          transform: translate(0, 3.906vw);
}
@media (min-width: 1024px) {
  #contents .FFRS_content .topicsSection,
  #contents .FFRS_content .featureSection {
    -webkit-transform: translate(0, clamp(40px, 2.083vw, 150vw));
            transform: translate(0, clamp(40px, 2.083vw, 150vw));
  }
}
#contents .FFRS_content .aboutCross span {
  opacity: 0;
  -webkit-transform: translate(0, 5.859vw) rotateY(135deg);
          transform: translate(0, 5.859vw) rotateY(135deg);
  -webkit-filter: brightness(1.5);
          filter: brightness(1.5);
}
@media (min-width: 1024px) {
  #contents .FFRS_content .aboutCross span {
    -webkit-transform: translate(0, clamp(60px, 3.125vw, 150vw)) rotateY(135deg);
            transform: translate(0, clamp(60px, 3.125vw, 150vw)) rotateY(135deg);
  }
}
#contents .FFRS_content .aboutSquare h3,
#contents .FFRS_content .aboutSquare p {
  opacity: 0;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-filter: blur(3px);
          filter: blur(3px);
}
#contents .FFRS_content .aboutTitle {
  opacity: 0;
  -webkit-transform: scale(0.92);
          transform: scale(0.92);
  -webkit-filter: brightness(1.5);
          filter: brightness(1.5);
}
#contents .FFRS_content .aboutSs_1,
#contents .FFRS_content .aboutSs_2,
#contents .FFRS_content .productsTitle img,
#contents .FFRS_content .productsSection .productWrap,
#contents .FFRS_content .parentCategory,
#contents .FFRS_content .childWrap {
  opacity: 0;
  -webkit-transform: translate(0, 3.906vw);
          transform: translate(0, 3.906vw);
}
@media (min-width: 1024px) {
  #contents .FFRS_content .aboutSs_1,
  #contents .FFRS_content .aboutSs_2,
  #contents .FFRS_content .productsTitle img,
  #contents .FFRS_content .productsSection .productWrap,
  #contents .FFRS_content .parentCategory,
  #contents .FFRS_content .childWrap {
    -webkit-transform: translate(0, clamp(60px, 3.125vw, 150vw));
            transform: translate(0, clamp(60px, 3.125vw, 150vw));
  }
}
#contents .FFRS_content .staffSection,
#contents .FFRS_content .characterTitle,
#contents .FFRS_content .characterIllust_1 img,
#contents .FFRS_content .characterIllust_2 img,
#contents .FFRS_content .characterIllust_3 img,
#contents .FFRS_content .characterMore,
#contents .FFRS_content .specSection {
  opacity: 0;
  -webkit-transform: translate(0, 3.906vw);
          transform: translate(0, 3.906vw);
}
@media (min-width: 1024px) {
  #contents .FFRS_content .staffSection,
  #contents .FFRS_content .characterTitle,
  #contents .FFRS_content .characterIllust_1 img,
  #contents .FFRS_content .characterIllust_2 img,
  #contents .FFRS_content .characterIllust_3 img,
  #contents .FFRS_content .characterMore,
  #contents .FFRS_content .specSection {
    -webkit-transform: translate(0, clamp(60px, 3.125vw, 150vw));
            transform: translate(0, clamp(60px, 3.125vw, 150vw));
  }
}
@media (min-width: 1024px) {
  #contents .FFRS_content .characterIllust_1 img,
  #contents .FFRS_content .characterIllust_2 img,
  #contents .FFRS_content .characterIllust_3 img {
    -webkit-transform: scale(1.06) translate(0);
            transform: scale(1.06) translate(0);
  }
}
#contents .FFRS_content .topicsPoint {
  top: 11.719vw;
}
#contents .FFRS_content .featurePoint {
  top: 11.719vw;
}
#contents .FFRS_content .about01Point {
  top: 23.438vw;
}
#contents .FFRS_content .about02Point {
  top: 58.594vw;
}
#contents .FFRS_content .about03Point {
  top: 126.953vw;
}
#contents .FFRS_content .about04Point {
  top: 214.844vw;
}
#contents .FFRS_content .character01Point {
  top: 19.531vw;
}
#contents .FFRS_content .character02Point {
  top: 58.594vw;
}
#contents .FFRS_content .character03Point {
  top: 97.656vw;
}
#contents .FFRS_content .productsPoint {
  top: -19.531vw;
}
#contents .FFRS_content .spec01Point {
  top: -68.359vw;
}
@media (min-width: 1024px) {
  #contents .FFRS_content .topicsPoint {
    top: clamp(120px, 6.25vw, 150vw);
  }
  #contents .FFRS_content .featurePoint {
    top: clamp(160px, 8.333vw, 150vw);
  }
  #contents .FFRS_content .about01Point {
    top: clamp(160px, 8.333vw, 150vw);
  }
  #contents .FFRS_content .about02Point {
    top: clamp(500px, 26.042vw, 150vw);
  }
  #contents .FFRS_content .about03Point {
    top: clamp(700px, 36.458vw, 150vw);
  }
  #contents .FFRS_content .about04Point {
    top: clamp(850px, 44.271vw, 150vw);
  }
  #contents .FFRS_content .character01Point {
    top: clamp(100px, 5.208vw, 150vw);
  }
  #contents .FFRS_content .character02Point {
    top: clamp(300px, 15.625vw, 150vw);
  }
  #contents .FFRS_content .character03Point {
    top: clamp(700px, 36.458vw, 150vw);
  }
  #contents .FFRS_content .productsPoint {
    top: min(-200px, -10.417vw);
  }
  #contents .FFRS_content .spec01Point {
    top: clamp(100px, 5.208vw, 150vw);
  }
}

.loadingend #contents .FFRS_content .kvLogo {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 5s cubic-bezier(0.23, 1, 0.32, 1);
  transition: 5s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-filter: drop-shadow(0 0 1.465vw rgba(255, 255, 255, 0));
          filter: drop-shadow(0 0 1.465vw rgba(255, 255, 255, 0));
}
@media (min-width: 1024px) {
  .loadingend #contents .FFRS_content .kvLogo {
    -webkit-filter: drop-shadow(0 0 clamp(12px, 0.625vw, 150vw) rgba(255, 255, 255, 0));
            filter: drop-shadow(0 0 clamp(12px, 0.625vw, 150vw) rgba(255, 255, 255, 0));
  }
}
.loadingend #contents .FFRS_content .kvLogo span {
  -webkit-mask-size: 220% 343.048576214%;
  -webkit-transition: 3s 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: 3s 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -webkit-transform: scale(1);
          transform: scale(1);
}
.loadingend #contents .FFRS_content .kvLogo span img {
  opacity: 0;
  -webkit-transition: 3s 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: 3s 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.loadingend #contents .FFRS_content .kvLogo em {
  -webkit-mask-size: 220% 343.048576214%;
  -webkit-transition: 3s 0.15s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: 3s 0.15s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -webkit-transform: scale(1);
          transform: scale(1);
}
.loadingend #contents .FFRS_content .kvLogo em img {
  -webkit-filter: brightness(1);
          filter: brightness(1);
  -webkit-transition: 3s 0.15s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: 3s 0.15s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.loadingend #contents .FFRS_content .kvPcBtn,
.loadingend #contents .FFRS_content .kvPCNav,
.loadingend #contents .FFRS_content .kvMovie,
.loadingend #contents .FFRS_content .kvYoyaku,
.loadingend #contents .FFRS_content .kvPrathome,
.loadingend #contents .FFRS_content .kvCopy,
.loadingend #contents .FFRS_content .kvDate,
.loadingend #contents .FFRS_content .kvX {
  opacity: 1;
  -webkit-transition: 1.5s 1.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: 1.5s 1.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -webkit-filter: drop-shadow(0 0 0 rgba(117, 174, 233, 0));
          filter: drop-shadow(0 0 0 rgba(117, 174, 233, 0));
}
.loadingend #contents .FFRS_content .featurePoint.animated ~ .featureSection,
.loadingend #contents .FFRS_content .topicsPoint.animated ~ .topicsSection {
  -webkit-transform: translate(0);
          transform: translate(0);
  opacity: 1;
  -webkit-transition: 1.25s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: 1.25s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.loadingend #contents .FFRS_content .about01Point.animated ~ .aboutSection .aboutCross span {
  opacity: 1;
  -webkit-transform: translate(0) rotateY(0deg);
          transform: translate(0) rotateY(0deg);
  -webkit-filter: brightness(1);
          filter: brightness(1);
  -webkit-transition: 2.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: 2.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.loadingend #contents .FFRS_content .about02Point.animated ~ .aboutSection .aboutTitle {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-filter: brightness(1);
          filter: brightness(1);
  -webkit-transition: 1.25s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: 1.25s cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media (max-width: 1023px) {
  .loadingend #contents .FFRS_content .about03Point.animated ~ .aboutSection .aboutSquare h3,
  .loadingend #contents .FFRS_content .about03Point.animated ~ .aboutSection .aboutSquare p {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
    -webkit-filter: blur(0);
            filter: blur(0);
    -webkit-transition: 1.5s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 1.5s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
}
@media (min-width: 1024px) {
  .loadingend #contents .FFRS_content .about04Point.animated ~ .aboutSection .aboutSquare h3,
  .loadingend #contents .FFRS_content .about04Point.animated ~ .aboutSection .aboutSquare p {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
    -webkit-filter: blur(0);
            filter: blur(0);
    -webkit-transition: 1.5s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 1.5s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
}
.loadingend #contents .FFRS_content .about04Point.animated ~ .aboutSection .aboutSs_1 {
  opacity: 1;
  -webkit-transform: translate(0);
          transform: translate(0);
  -webkit-transition: 1.25s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: 1.25s cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media (max-width: 1023px) {
  .loadingend #contents .FFRS_content .about04Point.animated ~ .aboutSection .aboutSs_2 {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
    -webkit-transition: 1.25s 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 1.25s 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
}
@media (max-width: 1023px) {
  .loadingend #contents .FFRS_content .staffSection.animated,
  .loadingend #contents .FFRS_content .character01Point.animated ~ .characterSection .characterTitle,
  .loadingend #contents .FFRS_content .character02Point.animated ~ .characterSection .characterIllust_1 img,
  .loadingend #contents .FFRS_content .character03Point.animated ~ .characterSection .characterIllust_2 img {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
    -webkit-transition: 1.25s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 1.25s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .loadingend #contents .FFRS_content .character03Point.animated ~ .characterSection .characterMore {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
    -webkit-transition: 1.25s 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 1.25s 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
}
@media (min-width: 1024px) {
  .loadingend #contents .FFRS_content .staffSection.animated,
  .loadingend #contents .FFRS_content .character01Point.animated ~ .characterSection .characterTitle,
  .loadingend #contents .FFRS_content .character02Point.animated ~ .characterSection .characterIllust_1 img,
  .loadingend #contents .FFRS_content .character02Point.animated ~ .characterSection .characterIllust_2 img,
  .loadingend #contents .FFRS_content .character02Point.animated ~ .characterSection .characterIllust_3 img {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
    -webkit-transition: 1.25s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 1.25s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .loadingend #contents .FFRS_content .character02Point.animated ~ .characterSection .characterIllust_3 img {
    -webkit-transition: 1.25s 0s cubic-bezier(0.165, 0.84, 0.44, 1), opacity 0.75s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 1.25s 0s cubic-bezier(0.165, 0.84, 0.44, 1), opacity 0.75s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .loadingend #contents .FFRS_content .character02Point.animated ~ .characterSection .characterIllust_2 img {
    -webkit-transition: 1.25s 0.2s cubic-bezier(0.165, 0.84, 0.44, 1), opacity 0.75s 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 1.25s 0.2s cubic-bezier(0.165, 0.84, 0.44, 1), opacity 0.75s 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .loadingend #contents .FFRS_content .character02Point.animated ~ .characterSection .characterIllust_1 img {
    -webkit-transition: 1.25s 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), opacity 0.75s 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 1.25s 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), opacity 0.75s 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .loadingend #contents .FFRS_content .character03Point.animated ~ .characterSection .characterMore {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
    -webkit-transition: 1.5s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: 1.5s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
}
.loadingend #contents .FFRS_content .productsPoint.animated ~ .productsSection .productsTitle img,
.loadingend #contents .FFRS_content .productsPoint.animated ~ .productsSection .productWrap,
.loadingend #contents .FFRS_content .productsPoint.animated ~ .productsSection .parentCategory,
.loadingend #contents .FFRS_content .productsPoint.animated ~ .productsSection .childWrap {
  opacity: 1;
  -webkit-transform: translate(0);
          transform: translate(0);
  -webkit-transition: 1.25s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: 1.25s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.loadingend #contents .FFRS_content .spec01Point.animated ~ .specSection {
  opacity: 1;
  -webkit-transform: translate(0);
          transform: translate(0);
  -webkit-transition: 1.25s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: 1.25s 0s cubic-bezier(0.165, 0.84, 0.44, 1);
}

@media (min-width: 1024px) {
  .menuControl {
    -webkit-transform: translate(0, -101%);
            transform: translate(0, -101%);
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: -webkit-transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
  .kvNavShow .menuControl {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
}