@charset "UTF-8";
/*---------------------------------------------------------
Utility
----------------------------------------------------------*/
.u-align-l {
  text-align: left;
}

.u-align-c {
  text-align: center;
}

.u-align-r {
  text-align: right;
}

.u-pc {
  display: block;
}

.u-pc-inline {
  display: inline;
}

.u-sp {
  display: none;
}

.u-sp-inline {
  display: none;
}

.u-txt-yellow {
  color: #e9ff00 !important;
}

@media screen and (max-width: 768px) {
  .u-pc {
    display: none;
  }

  .u-pc-inline {
    display: none;
  }

  .u-sp {
    display: block;
  }

  .u-sp-inline {
    display: inline;
  }
}
/*---------------------------------------------------------
Initial Setting
----------------------------------------------------------*/
body * {
  box-sizing: border-box;
}

img {
  vertical-align: middle;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
          appearance: none;
}

::selection {
  background: #1f2932;
  color: #E9FF00;
}

/*---------------------------------------------------------
Contents
----------------------------------------------------------*/
body {
  background-color: #1b2024;
}

#wrapper {
  opacity: 0;
  overflow-x: hidden;
}

/*---------------------------------------------------------
Opening
----------------------------------------------------------*/
.p-opening {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #1b2024;
  z-index: 3000;
}
.p-opening .js-ani-bandInr {
  opacity: 1 !important;
}
.p-opening div {
  width: 100%;
}
.p-opening__inner {
  position: relative;
}
.p-opening__logo {
  position: absolute;
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 35.2vw !important;
  opacity: 0;
  transition: opacity 1s cubic-bezier(0, 0.56, 0.46, 1);
}
.p-opening__logo.-show {
  opacity: 1;
}
.p-opening__logo img {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .p-opening__logo {
    width: 163px !important;
  }
}
@media screen and (max-width: 1024px) and (min-width: 769px) {
  .p-opening__logo {
    width: 15.91796875vw !important;
  }
}
/*---------------------------------------------------------
Kv
----------------------------------------------------------*/
.p-kv {
  position: relative;
  height: 60vw;
  background: #1b2024;
}
.p-kv__inner {
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.p-kv__bizlink{
  margin-right: 4vw;
  width: 24vw;
}
.p-kv__head {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  /*background-color: #1b2024;*/
  padding: 0.6vw 0 0.6vw 1.3333333333vw;
}
.p-kv__lang {
  display: flex;
  align-items: flex-start;
}
.p-kv__lang li a {
  display: block;
}
.p-kv__lang li a img {
  width: 100%;
}
.p-kv__lang li:nth-of-type(1) {
  margin-right: 3.7333333333vw;
}
.p-kv__lang li:nth-of-type(1) a {
  width: 3.0666666667vw;
  margin-top: 0.2666666667vw;
}
.p-kv__lang li:nth-of-type(2) {
  position: relative;
  margin-right: 2.9333333333vw;
}
.p-kv__lang li:nth-of-type(2) a {
  width: 3.7333333333vw;
}
.p-kv__lang li:nth-of-type(2)::before {
  content: "";
  position: absolute;
  top: 35%;
  left: -2.4vw;
  width: 0.9333333333vw;
  height: 2.2666666667vw;
  background-image: url(/jp/assets/imgs/top/header_lang_slash.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.p-kv__btn {
  width: 9.3333333333vw;
  height: 6.2vw;
  position: relative;
  border-left: 0.2666666667vw solid #fff;
  color: transparent;
  text-indent: -9999px;
  transition: opacity 0.15s ease-out;
}
.p-kv__btn:hover {
  opacity: 0.5;
}
.p-kv__btn::before, .p-kv__btn::after {
  content: "";
  position: absolute;
  left: 2.6666666667vw;
  display: block;
  width: 4vw;
  height: 0.2666666667vw;
  background-color: #fff;
}
.p-kv__btn::before {
  top: 1.8666666667vw;
}
.p-kv__btn::after {
  bottom: 1.8666666667vw;
}
.p-kv__logo {
  position: absolute;
  top: calc(340 / 750 * 100vw);
  right: 50%;
  transform: translateX(50%);
  width: 61.3333333333vw;
  margin: 0 auto;
  pointer-events: none;
}
.p-kv__logo img {
  width: 100%;
  filter: drop-shadow(0px 0px 12px rgba(0, 0, 0, .7));
}
.p-kv__dl {
  position: absolute;
  top: 112.8vw;
  right: 50%;
  transform: translateX(50%);
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  width: 86.6666666667vw;
}
.p-kv__dl a {
  display: block;
  width: 40vw;
}
.p-kv__dl a img {
  width: 100%;
}
.p-kv__campaign {
  text-align: center;
  position: absolute;
  right: 2.6666666667vw;
  top: 12vw;
}
.p-kv__campaign a {
  position: relative;
  display: block;
  background-color: #eeff00;
  border-radius: 50%;
  width: 23.7333333333vw;
  height: 23.7333333333vw;
  text-decoration: none;
  padding-top: 7.0666666667vw;
}
.p-kv__campaign a::after {
  position: absolute;
  content: "";
  bottom: 3.7333333333vw;
  left: 50%;
  transform: translateX(-50%);
  width: 1.0666666667vw;
  height: 1.4666666667vw;
  background-image: url(/jp/assets/imgs/top/arrow_white_r.png);
  background-image: url(/jp/assets/imgs/top/arrow_black.png);
  background-repeat: no-repeat;
  background-size: contain;
}
.p-kv__campaign__txt {
  position: relative;
  height: 8.5333333333vw;
  color: transparent;
  text-indent: -9999px;
  overflow: hidden;
  width: 100%;
  background-image: url(/jp/assets/imgs/top/kv_campaign_txt_on.svg);
  background-image: url(/jp/assets/imgs/top/kv_campaign_txt.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
}
.p-kv__slide {
  position: absolute;
  top: 8.5vw;
  left: 0;
  width: 100%;
  background-color: #1b2024;
  /*z-index: -1;*/
  pointer-events: none;
}
.p-kv__slide__inner img {
  width: 100%;
}

@media screen and (min-width: 769px) {
    
  .p-kv__inner {
    height: 100%;
  }
  .p-kv__head {
    /*width: calc(400 / 1366 * 100vw);*/
    padding: 1.4vw 0 1.4vw calc(20 / 1366 * 100vw);
    z-index: 2;
  }
  .p-kv__bizlink{
    width: 18vw;  
    }
    
 .p-kv__slide {
  top: 5.8vw;
}
  .p-kv__lang li a {
    transition: opacity 0.15s ease-out;
  }
  .p-kv__lang li a:hover {
    opacity: 0.5;
  }
  .p-kv__lang li:nth-of-type(1) {
    margin-right: 15px;
  }
  .p-kv__lang li:nth-of-type(1) a {
    width: 16px;
    margin-top: 2px;
  }
  .p-kv__lang li:nth-of-type(2) {
    margin-right: 17px;
  }
  .p-kv__lang li:nth-of-type(2) a {
    width: 19px;
  }
  .p-kv__lang li:nth-of-type(2)::before {
    left: -11px;
    width: 4px;
    height: 11px;
  }
  .p-kv__btn {
    width: 56px;
    height: 30px;
    border-left: 1px solid #fff;
  }
  .p-kv__btn::before, .p-kv__btn::after {
    left: 16px;
    width: 20px;
    height: 1px;
  }
  .p-kv__btn::before {
    top: 10px;
  }
  .p-kv__btn::after {
    bottom: 10px;
  }
  .p-kv__logo {
    transform: translateX(-50%);
    top: calc(222 / 1366 * 100vw);
    right: auto;
    left: 50%;
    width: 25.8418740849vw;
    margin: 0;
  }
  .p-kv__dl {
    transform: translateX(-50%);
    top: calc(510 / 1366 * 100vw);
    right: auto;
    left: 50%;
    margin: 0;
    width: 24.9633967789vw;
  }
  .p-kv__dl a {
    width: 11.5666178624vw;
    transition: opacity 0.15s ease-out;
  }
  .p-kv__dl a:hover {
    opacity: 0.5;
  }
  .p-kv__campaign {
    right: 2.7818448023vw;
    top: auto;
    bottom: 2.9282576867vw;
  }
  .p-kv__campaign a {
    padding-top: 2.5622254758vw;
    border: 1px solid #eeff00;
    transition: 0.15s ease-out;
    transition-property: border, background;
    width: 8.78477306vw;
    height: 8.78477306vw;
  }
  .p-kv__campaign a::after {
    bottom: 1.3909224012vw;
    width: 0.439238653vw;
    height: 0.439238653vw;
    transition: background 0.15s ease-out;
  }
  .p-kv__campaign a:hover {
    background-color: #858c1a;
    border: 1px solid #eeff00;
  }
  .p-kv__campaign a:hover::after {
    background-image: url(/jp/assets/imgs/top/arrow_white_r.png);
  }
  .p-kv__campaign a:hover .p-kv__campaign__ttl {
    background-image: url(/jp/assets/imgs/top/kv_campaign_ttl_on.svg);
  }
  .p-kv__campaign a:hover .p-kv__campaign__txt {
    background-image: url(/jp/assets/imgs/top/kv_campaign_txt_on.svg);
  }
  .p-kv__campaign__txt {
    height: 3.1478770132vw;
    transition: color 0.15s ease-out;
  }
}
@media screen and (max-width: 1024px) and (min-width: 769px) {
  /*.p-kv__head {
    padding-top: 0.8vw;
  }*/
  .p-kv__lang li:nth-of-type(1) {
    margin-right: 1.46484375vw;
  }
  .p-kv__lang li:nth-of-type(1) a {
    width: 1.5625vw;
    margin-top: 0.1953125vw;
  }
  .p-kv__lang li:nth-of-type(2) {
    margin-right: 1.66015625vw;
  }
  .p-kv__lang li:nth-of-type(2) a {
    width: 1.85546875vw;
  }
  .p-kv__lang li:nth-of-type(2)::before {
    left: -1.07421875vw;
    width: 0.390625vw;
    height: 1.07421875vw;
  }
  .p-kv__btn {
    width: 5.46875vw;
    height: 2.9296875vw;
  }
  .p-kv__btn::before, .p-kv__btn::after {
    left: 1.5625vw;
    width: 1.953125vw;
  }
  .p-kv__btn::before {
    top: 0.9765625vw;
  }
  .p-kv__btn::after {
    bottom: 0.9765625vw;
  }
}
/*---------------------------------------------------------
Apps
----------------------------------------------------------*/
.p-apps {
  background-color: #1b2024;
  padding: 20vw 0 0;
}
.p-apps > p{
  color: #fff;
  text-align: center;
  margin-bottom: 0.6em;
}
.p-apps__inner{
    width: 86.6666666667vw;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    }
.p-apps__inner div{
    width: 48%;
}
.p-apps__inner a{
    display: block;
    /*width: 40vw;*/
}
.p-apps__inner a img{
    width: 100%;
}
@media screen and (min-width: 769px) {
.p-apps {
  padding: 85px 0;
}
.p-apps > p{
  font-size: 2rem;      
}
.p-apps__inner{
    width: 100%;
    max-width: 455px;
    }
.p-apps__inner a{
   /* width: 169px;*/
}
}
/*---------------------------------------------------------
Movie
----------------------------------------------------------*/
.p-movie {
  background-color: #1b2024;
  padding: calc(100 / 750 * 100vw) 0 0;
}
.p-movie__inner {
  width: 84vw;
  margin: 0 auto;
}
.p-movie h2 {
  width: calc(125 / 750 * 100vw);
}
.p-movie h2 img {
  width: 100%;
}
.p-movie__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: calc(50 / 750 * 100vw);
}
.p-movie__list li {
  width: 48%;
  /*margin-bottom: 1.4em;*/
}
/*.p-movie__list li:nth-of-type(n+2) {
  margin-top: calc(55 / 750 * 100vw);
}*/
.p-movie__list li img {
  width: 100%;
}
.p-movie__list__img{
  overflow: hidden;
  position: relative;
}
.p-movie__list__img::before{
  content: "";
  position: absolute;
  bottom: calc(14 / 750 * 100vw);
  right: calc(14 / 750 * 100vw);
  width: calc(41 / 750 * 100vw);
  height: calc(41 / 750 * 100vw);
  background-image: url(/jp/assets/imgs/top/movie_icon_play.png);
  background-size: contain;
  background-repeat: no-repeat;
}
/*
.p-movie__list li:nth-of-type(n+2) .p-movie__list__img::before{
  bottom: calc(6 / 750 * 100vw);
  right: calc(11 / 750 * 100vw);
  width: calc(38 / 750 * 100vw);
  height: calc(38 / 750 * 100vw);
}
*/
.p-movie__list li.comingsoon .p-movie__list__img::before{
  display: none;
}
.p-movie__list__img.new::after{
  content: "";
  position: absolute;
  top: calc(24 / 750 * 100vw);
  left: calc(24 / 750 * 100vw);
  width: calc(73 / 750 * 100vw);
  height: calc(18 / 750 * 100vw);
  background-image: url(/jp/assets/imgs/top/movie_icon_new.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
.p-movie__list li p {
  color: #fff;
  font-size: calc(24 / 750 * 100vw);
  letter-spacing: 0.2em;
  line-height: 1.83;
  margin-top: calc(20 / 750 * 100vw);
}
.p-movie__list li:nth-of-type(n+2) p {
  margin-top: calc(25 / 750 * 100vw);
}
.p-movie__list li.comingsoon p {
  color: #828a91;
  font-size: calc(20 / 750 * 100vw);
}
.p-movie__list li p span {
  color: #828a91;
  font-size: calc(20 / 750 * 100vw);
  letter-spacing: 0.05em;
  margin-right: 1.5em;
}
.p-movie__list li:nth-of-type(n+2) p span {
  display: block;
}
.p-movie__list li.comingsoon p span {
  display: inline;
  margin-right: 0.5em;
}
.p-movie__panel__inner {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.p-movie__panel__cont{
  background-color: #000;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.p-movie__panel__cont iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 769px) {
  .p-movie {
    padding: 120px 0 0;
  }
  .p-movie__inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 91.796875vw;
    max-width: 940px;
  }
  .p-movie h2 {
    width: 8.5%;
  }
  .p-movie h2 img {
    vertical-align: top;
  }
  .p-movie__list {
    width: 83.1%;
    display: flex;
    flex-wrap: wrap;
    /*justify-content: flex-start;*/
    margin-top: 0;
  }
  .p-movie__list li {
    /*width: 32%;
    margin: 0 5px 2em;*/
    cursor: pointer;
  }
  .p-movie__list li:nth-of-type(n+2) {
    margin-top: 0;
  }
  .p-movie__list li:hover .p-movie__list__img img{
    transform: scale(1.05);
  }
  .p-movie__list__img img{
    transition: transform 0.15s ease-out;
  }
  .p-movie__list__img::before{
    bottom: 5px;
    right: 9px;
    width: 32px;
    height: 32px;
    z-index: 10;
  }
  .p-movie__list li:nth-of-type(n+2) .p-movie__list__img::before{
    bottom: 5px;
    right: 9px;
    width: 32px;
    height: 32px;
  }
  .p-movie__list__img.new::after{
    top: 9px;
    left: 9px;
    width: 29px;
    height: 7px;
    z-index: 10;
  }
  .p-movie__list li.comingsoon {
    cursor: default;
    pointer-events: none;
  }
  .p-movie__list li p {
    font-size: 13px;
    margin-top: 8px;
    letter-spacing: 0.24em;
  }
  .p-movie__list li:nth-of-type(n+2) p {
    margin-top: 8px;
  }
  .p-movie__list li.comingsoon p {
    font-size: 14px;
  }
  .p-movie__list li p span {
    font-size: 10px;
    margin-right: 1.8em;
  }
  .p-movie__list li:nth-of-type(n+2) p span {
    display: inline;
  }
  .p-movie__list li.comingsoon p span {
    margin-right: 1.5em;
  }
  .p-movie__panel__inner {
    height: 100%;
    width: 70.6%;
    max-width: 965px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
  }
}
/*---------------------------------------------------------
News
----------------------------------------------------------*/
.p-news {
  background-color: #1b2024;
  padding: calc(100 / 750 * 100vw) 0 15.6666666667vw;
}
.p-biz {
  background-color: #1b2024;
  padding: 0 0 15.6666666667vw;
}
.p-news__inner {
  width: 84vw;
  margin: 0 auto;
}
.p-biz__inner{
    width: 84vw;
    margin: 0 auto;
    }
.p-biz__inner a img{
    width: 100%;
}
.p-news h2 {
  width: 14.9333333333vw;
}
.p-news h2 img {
  width: 100%;
}
.p-news__list {
  margin-top: 6vw;
}
.p-news__list dl {
  border-top: 0.2666666667vw solid #828a91;
  border-bottom: 0.2666666667vw solid #828a91;
  letter-spacing: 0.05em;
}
.p-news__list dl div {
  display: flex;
  justify-content: space-between;
  padding: 3.7333333333vw 0;
}
.p-news__list dl div + div {
  border-top: 0.2666666667vw solid #828a91;
}
.p-news__list dl dt {
  width: 16.5333333333vw;
  font-size: 2.6666666667vw;
  color: #828a91;
}
.p-news__list dl dd {
  width: 62.6666666667vw;
  line-height: 1.5;
}
.p-news__list dl dd a {
  text-decoration: none;
  line-height: 2;
  font-size: 2.9333333333vw;
  color: #fff;
}
.p-news__list__link {
  display: block;
  width: 23.3333333333vw;
  background-image: url(/jp/assets/imgs/top/arrow_yellow.png);
  background-repeat: no-repeat;
  background-size: 1.3333333333vw auto;
  background-position: right 0 center;
  margin-top: 5.3333333333vw;
}
.p-news__list__link img {
  width: 19.2vw;
}

@media screen and (min-width: 769px) {
  .p-news {
    padding: 100px 0 85px;
  }
  .p-biz {
    padding: 0 0 85px;
  }
  .p-news__inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    max-width: 940px;
  }
  .p-biz__inner{
    width: 36%;
    }
  .p-news h2 {
    width: 7.6%;
    margin-top: 2px;
  }
  .p-news h2 img {
    vertical-align: top;
  }
  .p-news__list {
    width: 82.7%;
    margin-top: 0;
  }
  .p-news__list dl {
    border-top: 1px solid #828a91;
    border-bottom: 1px solid #828a91;
  }
  .p-news__list dl div {
    padding: 15px 0;
  }
  .p-news__list dl div + div {
    border-top: 1px solid #828a91;
  }
  .p-news__list dl dt {
    width: 8.9%;
    font-size: 10px;
  }
  .p-news__list dl dd {
    width: 89.9%;
  }
  .p-news__list dl dd a {
    line-height: 1.8;
    font-size: 12px;
  }
  .p-news__list dl dd a:hover {
    text-decoration: underline;
  }
  .p-news__list__link {
    width: 85px;
    background-size: 6px auto;
    margin-top: 23px;
    margin-left: 2px;
    background-position: right 0 top 10%;
  }
  .p-news__list__link img {
    width: 72px;
    vertical-align: top;
  }
}
@media screen and (max-width: 1024px) and (min-width: 769px) {
  .p-news {
    padding: 9.765625vw 0 8.30078125vw;
  }
  .p-news__inner {
    width: 91.796875vw;
    max-width: auto;
    max-width: initial;
  }
  .p-news h2 {
    width: 6.93359375vw;
    margin-top: 0.1953125vw;
  }
  .p-news__list {
    width: 76.171875vw;
  }
  .p-news__list dl div {
    padding: 1.46484375vw 0;
  }
  .p-news__list dl dt {
    width: 8.8125vw;
    font-size: 0.9765625vw;
    margin-top: 0.390625vw;
  }
  .p-news__list dl dd {
    width: 67.359375vw;
  }
  .p-news__list dl dd a {
    font-size: 1.171875vw;
  }
  .p-news__list__link {
    width: 8.30078125vw;
    background-size: 0.5859375vw auto;
    margin-top: 2.24609375vw;
    margin-left: 0.1953125vw;
  }
  .p-news__list__link img {
    width: 7.03125vw;
  }
}
/*---------------------------------------------------------
Intro
----------------------------------------------------------*/
.p-intro {
  color: #fff;
  padding-top: 20vw;
}
.p-intro__inner {
  width: 84vw;
  margin: 0 auto;
}
.p-intro__subttl {
  height: 2.4vw;
}
.p-intro__subttl img {
  height: 100%;
  display: block;
}
.p-intro__ttl {
  font-size: 5.8666666667vw;
  letter-spacing: 0.17em;
  font-weight: 700;
  margin-top: 0;
}
.p-intro__ttl img {
  width: 100%;
}
.p-intro__txt {
  font-size: 4vw;
  letter-spacing: 0.2em;
  margin-top: 10.9333333333vw;
}
.p-intro__txt span {
  line-height: 1.6;
}
.p-intro__txt span + span {
  margin-top: 6.2vw;
}
.p-intro__txt .logo {
  width: 15.2vw;
  vertical-align: baseline;
  margin-left: -0.8vw;
}
.p-intro__txt + p {
  margin-top: 13vw;
}

@media screen and (min-width: 769px) {
  .p-intro {
    padding-top: 100px;
  }
  .p-intro__inner {
    width: 100%;
    max-width: 940px;
    display: flex;
    justify-content: space-between;
  }
  .p-intro__inner > div:nth-of-type(2) {
    width: 46%;
  }
  .p-intro__subttl {
    height: 10px;
  }
  .p-intro__ttl {
    font-size: 28px;
    margin-top: 0;
    width: 451px;
  }
  .p-intro__txt {
    font-size: 16px;
    letter-spacing: 0.17em;
    margin-top: 0;
    font-feature-settings: "palt";
  }
  .p-intro__txt span + span {
    margin-top: 18px;
  }
  .p-intro__txt .logo {
    width: 59px;
    margin-left: 0;
  }
  .p-intro__txt + p {
    margin-top: 64px;
  }
}
@media screen and (max-width: 1024px) and (min-width: 769px) {
  .p-intro {
    padding-top: 9.765625vw;
  }
  .p-intro__inner {
    width: 91.796875vw;
    max-width: auto;
    max-width: initial;
  }
  .p-intro__inner > div:nth-of-type(2) {
    width: 43vw;
  }
  .p-intro__subttl {
    height: 0.9765625vw;
  }
  .p-intro__ttl {
    font-size: 2.734375vw;
    margin-top: 0;
    width: 44.04296875vw;
  }
  .p-intro__txt {
    font-size: 1.5625vw;
    margin-top: 0;
  }
  .p-intro__txt span + span {
    margin-top: 2vw;
  }
  .p-intro__txt .logo {
    width: 5.76171875vw;
    margin-left: 0;
  }
  .p-intro__txt + p {
    margin-top: 6vw;
  }
}
/*---------------------------------------------------------
Anchor
----------------------------------------------------------*/
.p-anchor {
  /*margin-top: 32vw;*/
  padding: 28vw 0;
}
.p-anchor__inner {
  width: 84vw;
  margin: 0 auto;
}
.p-anchor__txt {
  font-size: 3.7333333333vw;
  color: #fff;
  letter-spacing: 0.2em;
  line-height: 2.2;
  font-weight: 700;
}
.p-anchor__menu {
  margin-top: 4vw;
  background-image: url(/jp/assets/imgs/top/anc_scroll_sp.svg);
  background-repeat: no-repeat;
  background-size: 2.2666666667vw auto;
  background-position: right 0 bottom 0;
}
.p-anchor__menu li {
  width: 69.3333333333vw;
}
.p-anchor__menu li + li {
  margin-top: 1.3333333333vw;
}
.p-anchor__menu li:nth-of-type(1) a {
  padding: 1.0666666667vw 0 0.5333333333vw;
}
.p-anchor__menu li:nth-of-type(1) a img {
  height: 2.5333333333vw;
}
.p-anchor__menu li:nth-of-type(3) a {
  padding: 1.0666666667vw 0 0.5333333333vw;
}
.p-anchor__menu li:nth-of-type(3) a img {
  height: 2.5333333333vw;
}
.p-anchor__menu li a {
  display: block;
  width: 100%;
  border-bottom: 0.2666666667vw solid #fff;
  padding: 1.0666666667vw 0;
  background-image: url(/jp/assets/imgs/top/arrow_white_b.png);
  background-repeat: no-repeat;
  background-size: 2vw auto;
  background-position: right 2.4vw top 53%;
}
.p-anchor__menu li a img {
  height: 2vw;
  width: auto;
}

@media screen and (min-width: 769px) {
  .p-anchor {
    /*margin-top: 154px;*/
    padding: 126px 0;
  }
  .p-anchor__inner {
    width: 100%;
    max-width: 940px;
    display: flex;
    justify-content: space-between;
  }
  .p-anchor__txt {
    font-size: 16.4px;
    line-height: 2.41;
  }
  .p-anchor__menu {
    width: 57.4%;
    margin-top: 0;
    background-image: url(/jp/assets/imgs/top/anc_scroll_pc.svg);
    background-size: 9px auto;
    padding-bottom: 46px;
    display: flex;
    flex-wrap: wrap;
  }
  .p-anchor__menu li {
    width: 40.7%;
  }
  .p-anchor__menu li + li {
    margin-top: 0;
  }
  .p-anchor__menu li:nth-of-type(1) a {
    padding: 0 0 8px;
  }
  .p-anchor__menu li:nth-of-type(1) a img {
    height: 12px;
  }
  .p-anchor__menu li:nth-of-type(3) a {
    padding: 0 0 9px;
  }
  .p-anchor__menu li:nth-of-type(3) a img {
    height: 12px;
  }
  .p-anchor__menu li:nth-of-type(even) {
    margin-left: 3.7%;
  }
  .p-anchor__menu li:nth-of-type(n+3) {
    margin-top: 11px;
  }
  .p-anchor__menu li a {
    border-bottom: 1px solid #fff;
    padding: 0 0 9px;
    background-image: url(/jp/assets/imgs/top/arrow_white_b.png);
    background-size: 10px auto;
    background-position: right 10px top 43%;
    transition: opacity 0.15s ease-out;
  }
  .p-anchor__menu li a:hover {
    opacity: 0.5;
  }
  .p-anchor__menu li a img {
    height: 9px;
  }
}
@media screen and (max-width: 1024px) and (min-width: 769px) {
  .p-anchor {
    margin-top: 15.0390625vw;
    padding-bottom: 12.3046875vw;
  }
  .p-anchor__inner {
    width: 91.796875vw;
    max-width: auto;
    max-width: initial;
  }
  .p-anchor__txt {
    font-size: 1.6015625vw;
  }
  .p-anchor__menu {
    width: 52.734375vw;
    background-size: 0.87890625vw auto;
    padding-bottom: 4.4921875vw;
  }
  .p-anchor__menu li {
    width: 21.484375vw;
  }
  .p-anchor__menu li:nth-of-type(1) a {
    padding: 0 0 0.78125vw;
  }
  .p-anchor__menu li:nth-of-type(1) a img {
    height: 1.171875vw;
  }
  .p-anchor__menu li:nth-of-type(3) a {
    padding: 0 0 0.87890625vw;
  }
  .p-anchor__menu li:nth-of-type(3) a img {
    height: 1.171875vw;
  }
  .p-anchor__menu li:nth-of-type(even) {
    margin-left: 1.953125vw;
  }
  .p-anchor__menu li:nth-of-type(n+3) {
    margin-top: 1.07421875vw;
  }
  .p-anchor__menu li a {
    padding: 0 0 0.87890625vw;
    background-size: 0.9765625vw auto;
    background-position: right 0.9765625vw top 35%;
  }
  .p-anchor__menu li a img {
    height: 0.87890625vw;
  }
}
/*---------------------------------------------------------
Reason
----------------------------------------------------------*/
.p-reason {
  padding: 18.6666666667vw 0 47.7333333333vw;
  background-color: #1b2024;
}
.p-reason__item + .p-reason__item {
  margin-top: 29.3333333333vw;
}
.p-reason__item__txt {
  width: 84vw;
  margin: 0 auto;
}
.p-reason__item.-reason01 .p-reason__subttl {
  height: 2.9333333333vw;
}
.p-reason__item.-reason01 .p-reason__ttl {
  margin-top: 7.2vw;
}
.p-reason__item.-reason03 {
  display: flex;
  flex-direction: column;
  margin-top: 32vw;
}
.p-reason__item.-reason03 > div:nth-of-type(1) {
  order: 0;
}
.p-reason__item.-reason03 > div:nth-of-type(2) {
  order: 2;
}
.p-reason__item.-reason03 > div:nth-of-type(3) {
  order: 1;
}
.p-reason__item.-reason03 .p-reason__subttl {
  height: 2.9333333333vw;
}
.p-reason__item.-reason03 h2 {
  margin-top: 5.3333333333vw;
}
.p-reason__item.-reason03 h2 span.u-txt-yellow {
  margin-left: -0.5em;
}
.p-reason__item.-reason04 {
  margin-top: 30vw;
}
.p-reason__subttl {
  height: 2.4vw;
}
.p-reason__subttl img {
  height: 100%;
  display: block;
}
.p-reason__ttl {
  font-size: 6.1333333333vw;
  color: #fff;
  letter-spacing: 0.17em;
  font-weight: 700;
  line-height: 1.58;
  margin-top: 6.6666666667vw;
}
.p-reason__ttl span.-small {
  font-size: 4.2666666667vw;
  font-weight: 300;
  letter-spacing: 0.2em;
}
.p-reason__txt {
  font-size: 3.4666666667vw;
  color: #fff;
  letter-spacing: 0.1em;
  line-height: 2.2;
  margin-top: 10.1333333333vw;
}
.p-reason__link {
  display: inline-block;
  font-size: 3.4666666667vw;
  letter-spacing: 0.1em;
  color: #eeff00;
  padding-right: 4.8vw;
  background-image: url(/jp/assets/imgs/top/arrow_yellow.png);
  background-repeat: no-repeat;
  background-size: 1.3333333333vw auto;
  background-position: right 0 top 48%;
  /*margin-top: 5.6vw;*/
  text-decoration: underline;
}
.p-reason__flow__thumb {
  width: 100%;
  cursor: pointer;
  margin-top: 11.7333333333vw;
}
.p-reason__flow__thumb img {
  width: 100%;
}
.p-reason__flow__thumb .js-ani-bandBar {
  width: 100%;
}
.p-reason__flow__panel .js-modalPanel__inner {
  display: flex;
  justify-content: flex-end;
  flex-direction: column;
  height: 100%;
}
.p-reason__flow__panel__btn {
  top: 10vw !important;
  right: 6.6666666667vw !important;
}
.p-reason__flow__panel__ttl {
  position: absolute;
  top: 6.6666666667vw;
  left: 6.6666666667vw;
  box-shadow: 0 1.0666666667vw 1.3333333333vw 0 rgba(0, 0, 0, 0.25);
  width: 32.6666666667vw;
  z-index: 100;
}
.p-reason__flow__panel__ttl img {
  width: 100%;
}
.p-reason__flow__panel__cont {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.p-reason__flow__panel__cont__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 157.8666666667vw;
  overflow: hidden;
  border-radius: 2.6666666667vw 2.6666666667vw 0 0;
  box-shadow: 0 -1.3333333333vw 1.3333333333vw 0 rgba(0, 0, 0, 0.4);
}
.p-reason__flow__panel__movie {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  overflow: hidden;
  border-radius: 2.6666666667vw 2.6666666667vw 0 0;
}
.p-reason__flow__panel__movie::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: #1b2024;
  opacity: 0;
  transition: opacity 1s cubic-bezier(0, 0.56, 0.46, 1);
}
.p-reason__flow__panel__movie video {
  width: 100%;
  vertical-align: bottom;
}
.p-reason__flow__panel__movie.-hide::before {
  opacity: 1;
}
.p-reason__flow__panel__cv {
  opacity: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 0 0 21.6vw;
  transition: opacity 1s cubic-bezier(0, 0.56, 0.46, 1);
}
.p-reason__flow__panel__cv.-show {
  opacity: 1;
}
.p-reason__flow__panel__cv__logo {
  width: 24vw;
  margin: 0 auto;
}
.p-reason__flow__panel__cv__logo img {
  width: 100%;
}
.p-reason__flow__panel__cv p {
  font-size: 4.2666666667vw;
  color: #fff;
  letter-spacing: 0.2em;
  line-height: 2;
  margin-top: 4vw;
  text-align: center;
  font-weight: 700;
}
.p-reason__flow__panel__cv__dl {
  display: flex;
  justify-content: space-between;
  margin: 5.3333333333vw auto 0;
  width: 86.6666666667vw;
}
.p-reason__flow__panel__cv__dl a {
  display: block;
  width: 40vw;
}
.p-reason__flow__panel__cv__dl a img {
  width: 100%;
}
.p-reason__flow__panel__cv__btn {
  margin-top: 16.6666666667vw;
}
.p-reason__flow__panel__cv__btn button {
  display: block;
  width: 62.8vw;
  margin: 0 auto;
  border-radius: 0.5333333333vw;
  padding: 4vw 0;
  text-align: center;
  font-size: 3.7333333333vw;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.p-reason__flow__panel__cv__btn button + button {
  margin-top: 3.7333333333vw;
}
.p-reason__flow__panel__cv__btn button.-replay {
  background-color: #e9ff00;
  color: #1b2024;
  background-image: url(/jp/assets/imgs/top/reason01_icon_reload.png);
  background-repeat: no-repeat;
  background-size: 4.2666666667vw auto;
  background-position: right 13.3333333333vw center;
}
.p-reason__flow__panel__cv__btn button.-close {
  position: static;
  background-color: #1b2024;
  color: #fff;
  border: 0.2666666667vw solid #fff;
}
.p-reason__howtouse {
  width: 84vw;
  margin: 11.4666666667vw auto 0;
}
.p-reason__howtouse li {
  background-color: #222a2e;
  min-height: 25.4666666667vw;
  display: table;
  width: 100%;
  padding: 3.4666666667vw 17.3333333333vw 3.4666666667vw 5.0666666667vw;
  background-image: url(/jp/assets/imgs/top/reason02_icon_modal_sp.png);
  background-repeat: no-repeat;
  background-size: 13.4666666667vw auto;
  background-position: right 4vw center;
}
.p-reason__howtouse li img {
  width: 6.8vw;
  display: block;
  margin-bottom: calc(10 / 750 * 100vw);
}
.p-reason__howtouse li p {
  display: table-cell;
  vertical-align: middle;
  font-size: 3.4666666667vw;
  color: #fff;
  letter-spacing: 0.2em;
  line-height: 1.8;
  transition: color 0.15s ease-out;
}
.p-reason__howtouse li + li {
  margin-top: 4vw;
}
.plink{
    font-size: 80%;
    color: #e9ff00;
}
.p-reason__howtouse li:nth-of-type(n+2) p {
  letter-spacing: 0.3em;
}
.p-reason__howtouse__panel {
  background-color: #202b34 !important;
}
.p-reason__howtouse__panel__inner {
  display: flex;
  justify-content: flex-end;
  flex-direction: column;
  height: 100%;
}
.p-reason__howtouse__panel__img {
  width: 100%;
}
.p-reason__howtouse__panel__img img {
  width: 100%;
}
.p-reason__howtouse__panel__txt {
  width: 100%;
  background-color: #1b2024;
  padding: 5.3333333333vw 0;
}
.p-reason__howtouse__panel__txt__inner {
  width: 84vw;
  margin: 0 auto;
}
.p-reason__howtouse__panel__txt h3 {
  font-size: 3.7333333333vw;
  color: #fff;
  letter-spacing: 0.2em;
  font-weight: bold;
}
.p-reason__howtouse__panel__txt p {
  font-size: 3.2vw;
  color: #fff;
  letter-spacing: 0.1em;
  line-height: 2.2;
  margin-top: 3.4666666667vw;
}
.p-reason__howtouse__panel__txt p.note {
  font-size: calc(22 / 750 * 100vw);
}
.p-reason__howtouse__panel__txt p.note a {
  display: inline-block;
  font-size: calc(22 / 750 * 100vw);
  color: #e9ff00;
  text-decoration: underline;
  letter-spacing: 0.1em;
  padding-right: 4vw;
  background-image: url('/jp/assets/imgs/top/arrow_yellow.png');
  background-repeat: no-repeat;
  background-size: 1.3333333333vw auto;
  background-position: right 0 top 50%;
}
.p-reason__slide {
  width: 100%;
  overflow: hidden;
  margin-top: 10.6666666667vw;
}
.p-reason__slide__inner {
  width: 100%;
}
.p-reason__slide ul {
  width: 100%;
}
.p-reason__slide ul li {
  width: 100% !important;
  transition-timing-function: cubic-bezier(0, 0.56, 0.46, 1);
}
.p-reason__slide ul li img {
  width: 100%;
}
.p-reason__area {
  color: #fff;
  width: 84vw;
  margin: 8.4vw auto 0;
}
.p-reason__area__list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.p-reason__area__list li {
  width: 38.6666666667vw;
  letter-spacing: 0.15em;
}
.p-reason__area__list li:nth-of-type(n+3) {
  margin-top: 6.6666666667vw;
}
.p-reason__area__list li:nth-of-type(1) a {
  background-image: url(/jp/assets/imgs/top/reason04_bg_btn01.png);
}
.p-reason__area__list li:nth-of-type(2) a {
  background-image: url(/jp/assets/imgs/top/reason04_bg_btn02.png);
}
.p-reason__area__list li:nth-of-type(3) a {
  background-image: url(/jp/assets/imgs/top/reason04_bg_btn03.png);
}
.p-reason__area__list li:nth-of-type(4) a {
  background-image: url(/jp/assets/imgs/top/reason04_bg_btn06.png);
}
.p-reason__area__list li:nth-of-type(5) a {
  background-image: url(/jp/assets/imgs/top/reason04_bg_btn07.png);
}
.p-reason__area__list li:nth-of-type(6) a {
  background-image: url(/jp/assets/imgs/top/reason04_bg_btn09.png);
}
.p-reason__area__list li:nth-of-type(7) a {
  background-image: url(/jp/assets/imgs/top/reason04_bg_btn10.png);
}
.p-reason__area__list li:nth-of-type(8) a {
  background-image: url(/jp/assets/imgs/top/reason04_bg_btn04.png);
}
.p-reason__area__list li:nth-of-type(9) a {
  background-image: url(/jp/assets/imgs/top/reason04_bg_btn05.png);
}
.p-reason__area__list li:nth-of-type(10) a {
  background-image: url(/jp/assets/imgs/top/reason04_bg_btn08.png);
}
.p-reason__area__list li a {
  display: block;
  width: 100%;
  line-height: 21.8666666667vw;
  text-align: center;
  color: #eeff00;
  text-decoration: none;
  font-weight: 700;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
  font-size: 3.4666666667vw;
}
.p-reason__area__list li a::after {
  content: "";
  display: inline-block;
  width: 1.4666666667vw;
  height: 2vw;
  margin-left: 1.8666666667vw;
  margin-bottom: 0.35vw;
  background-image: url(/jp/assets/imgs/top/arrow_yellow.png);
  background-repeat: no-repeat;
  background-size: contain;
}
.p-reason__area__btn {
  display: block;
  width: 100%;
  padding: 3.7333333333vw 4.8vw;
  margin-top: 6.4vw;
  font-size: 3.4666666667vw;
  font-weight: bold;
  color: #1b2024;
  letter-spacing: 0.1em;
  background-color: #eeff00;
  border-radius: 0.5333333333vw;
  text-decoration: none;
  background-image: url(/jp/assets/imgs/top/arrow_white_r.png);
  background-image: url(/jp/assets/imgs/top/arrow_black.png);
  background-repeat: no-repeat;
  background-size: 1.3333333333vw auto;
  background-position: right 4vw center;
}
.p-reason__area__note {
  letter-spacing: 0.1em;
  font-size: 2.9333333333vw;
  margin-top: 4.2666666667vw;
}
.p-reason__company {
  width: 84vw;
  margin: 10.1333333333vw auto 0;
  color: #fff;
}
.p-reason__company h3 {
  font-weight: 700;
  font-size: 3.7333333333vw;
  letter-spacing: 0.1em;
}
.p-reason__company__list {
  font-size: 2.9333333333vw;
  margin-top: 6.6666666667vw;
  letter-spacing: 0.1em;
  line-height: 2.2;
}
.p-reason__company__list > div {
  display: flex;
  justify-content: space-between;
}
.p-reason__company__list > div + div {
  margin-top: 3.3333333333vw;
}
.p-reason__company__list dt {
  width: 22vw;
  font-weight: 700;
}
.p-reason__company__list dd {
  width: 61.3333333333vw;
}
.p-reason__company__logo {
  width: 100%;
  margin-top: 9.3333333333vw;
  background-color: #fff;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  padding: 4.6666666667vw 8vw;
}
.p-reason__company__logo img {
  margin: 1.3333333333vw 0;
}
.p-reason__company__logo .-logo01 {
  width: 21.5%;
}
.p-reason__company__logo .-logo02 {
  width: 21.5%;
}
.p-reason__company__logo .-logo03 {
  width: 14.3%;
}
.p-reason__company__logo .-logo04 {
  width: 14.3%;
}
.p-reason__company__logo .-logo05 {
  width: 31.9%;
}
.p-reason__company__logo .-logo06 {
  width: 15.6%;
}
.p-reason__company__logo .-logo07 {
  width: 20%;
}
.p-reason__company__logo .-logo08 {
  width: 14.6%;
}
.p-reason__company__logo .-logo09 {
  width: 30.9%;
}
.p-reason__company__logo .-logo10 {
  width: 35.2%;
}
.p-reason__company__logo .-logo11 {
  width: 22.1%;
}
.p-reason__company__logo .-logo12 {
  width: 17.4%;
}
.p-reason__company__logo .-logo13 {
  width: 22.1%;
}
.p-reason__company__logo .-logo14 {
  width: 27.2%;
}
.p-reason__company__logo .-logo15 {
  width: 20%;
}
.p-reason__company__logo .-logo16 {
  width: 18.4%;
}
.p-reason__company__logo .-logo17 {
  width: 10.2%;
}
.p-reason__company__logo .-logo18 {
  width: 24%;
}
.p-reason__company__logo .-logo19 {
  width: 25%;
}
.p-reason__company__logo .-logo20 {
  width: 8.4%;
}
.p-reason__company__logo .-logo21 {
  width: 22%;
}
.p-reason__company__logo .-logo22 {
  width: 21.4%;
}
.p-reason__company__logo .-logo23 {
  width: 17.2%;
}
.p-reason__company__logo .-logo24 {
  width: 22.6%;
}
.p-reason__company__logo .-logo25 {
  width: 23%;
}
.p-reason__company__logo .-logo26 {
  width: 21%;
}
.p-reason__company__logo .-logo27 {
  width: 21%;
}
.p-reason__company__logo .-logo28 {
  width: 21%;
}
.p-reason__company__logo .-logo29 {
  width: 21%;
}
.p-reason__company__logo .-logo30 {
  width: 23%;
}
.p-reason__company__logo .-logo31 {
  width: 22.4%;
}
.p-reason__company__logo .-logo32 {
  width: 24%;
}
.p-reason__company__logo .-logo33 {
  width: 26%;
}
.p-reason__company__logo .-logo34 {
  width: 18.4%;
}
.p-reason__company__logo .-logo35{
  width: 13.4%;
}
.p-reason__company__logo .-logo35{
  width: 13.4%;
}
.p-reason__company__logo .-logo36 {
  width: 30%;
}
.p-reason__company__logo .-logo38 {
  width: 14%;
}
.p-reason__company__logo .-logo39 {
  width: 24%;
}
.p-reason__company__logo .-logo40 {
  width: 18%;
}
.p-reason__company__logo .-logo41 {
  width: 13.4%;
}
.p-reason__company__logo .-logo42 {
  width: 17.4%;
}
.p-reason__company__logo .-logo43 {
  width: 28.4%;
}
.p-reason__company__logo .-logo44 {
  width: 24.4%;
}
.p-reason__company__logo .-logo45 {
  width: 20%;
}
.p-reason__company__logo .-logo46 {
  width: 22%;
}
.p-reason__company__logo .-logo47 {
  width: 14.8%;
}
.p-reason__company__logo .-logo48 {
  width: 28%;
}
.p-reason__company__logo .-logo49 {
  width: 18%;
}
.p-reason__company__logo .-logo50 {
  width: 8%;
}
.p-reason__company__logo .-logo51 {
  width: 15.8%;
}
.p-reason__company__logo .-logo52 {
  width: 16%;
}
.p-reason__company__logo .-logo53 {
  width: 16%;
}
.p-reason__company__logo .-logo54 {
  width: 22%;
}
.p-reason__company__logo .-logo55 {
  width: 22%;
}
.p-reason__company__logo .-logo56 {
  width: 25%;
}
.p-reason__company__logo .-logo57 {
  width: 15%;
}
.p-reason__company__logo .-logo58 {
  width: 17%;
}
.p-reason__company__logo .-logo59 {
  width: 25%;
}
.p-reason__company__logo .-logo60 {
  width: 21%;
}
.p-reason__company__logo .-logo61 {
  width: 24%;
}
.p-reason__company__logo .-logo62 {
  width: 18%;
}
.p-reason__company__logo .-logoclear {
  width: 24%;
}


@media screen and (max-width: 375px) {
  .p-reason__flow__panel__cont {
    width: 80%;
    margin: 0 auto;
  }
  .p-reason__flow__panel__cont__inner {
    min-height: calc(475 / 375 * 100vw);
  }
  .p-reason__flow__panel__cv {
    padding: 0 0 21%;
  }
  .p-reason__flow__panel__cv__logo {
    width: 24%;
  }
  .p-reason__flow__panel__cv p {
    font-size: 91%;
    margin-top: 4%;
  }
  .p-reason__flow__panel__cv__dl {
    width: 87%;
  }
  .p-reason__flow__panel__cv__dl a {
    width: 46%;
  }
  .p-reason__flow__panel__cv__btn {
    margin-top: 17%;
  }
  .p-reason__flow__panel__cv__btn button {
    width: 63%;
    font-size: 83%;
    padding: 4% 0;
  }
  .p-reason__flow__panel__cv__btn button + button {
    margin-top: 3%;
  }
  .p-reason__flow__panel__cv__btn button.-replay {
    background-size: 6% auto;
    background-position: right 21% center;
  }
}
@media screen and (min-width: 769px) {
  .p-reason {
    padding: 215px 0 145px;
  }
  .p-reason__inner {
    max-width: 940px;
    width: 100%;
    margin: 0 auto;
  }
  .p-reason__item + .p-reason__item {
    margin-top: 140px;
  }
  .p-reason__item__txt {
    width: 48.9%;
    margin-left: 0;
  }
  .p-reason__item.-reason01 {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .p-reason__item.-reason01 .p-reason__subttl {
    height: 12px;
  }
  .p-reason__item.-reason01 .p-reason__item__txt {
    margin-top: -35px;
  }
  .p-reason__item.-reason01 .p-reason__ttl {
    margin-top: 30px;
  }
  .p-reason__item.-reason03 {
    display: block;
    position: relative;
    padding: 23px 0 45px;
    margin-top: 150px;
  }
  .p-reason__item.-reason03 .p-reason__subttl {
    height: 12px;
  }
  .p-reason__item.-reason03 h2 {
    letter-spacing: 0.2em;
    margin-top: 22px;
  }
  .p-reason__item.-reason03 h2 span.u-txt-yellow {
    margin-left: 0;
  }
  .p-reason__item.-reason04 {
    margin-top: 153px;
  }
  .p-reason__item.-reason04 .p-reason__item__txt {
    display: flex;
    justify-content: space-between;
    width: 100%;
  }
  .p-reason__item.-reason04 .p-reason__item__txt > div {
    width: 50%;
  }
  .p-reason__item.-reason04 .p-reason__item__txt .p-reason__ttl {
    margin-top: 30px;
    line-height: 1.8;
  }
  .p-reason__item.-reason04 .p-reason__item__txt .p-reason__txt {
    width: 47.6%;
    margin-top: 39px;
  }
  .p-reason__subttl {
    height: 9px;
  }
  .p-reason__ttl {
    font-size: 28px;
    line-height: 1.58;
    margin-top: 24px;
  }
  .p-reason__ttl span.-small {
    font-size: 18px;
  }
  .p-reason__txt {
    font-size: 14px;
    margin-top: 44px;
  }
  .p-reason__link {
    font-size: 14px;
    letter-spacing: 0.05em;
    padding-right: 18px;
    background-size: 6px auto;
    margin-top: 0;
  }
  .p-reason__flow__thumb {
    width: 40.4%;
    margin-top: 0;
  }
  .p-reason__flow__thumb__inner {
    background-image: url(/jp/assets/imgs/top/reason01_thumb_bg_pc.png);
    background-size: 100% auto;
    background-position: center center;
    background-repeat: no-repeat;
    transition: background 0.15s ease-out;
  }
  .p-reason__flow__thumb:hover .p-reason__flow__thumb__inner {
    background-size: 110% auto;
  }
  .p-reason__flow__panel .js-modalPanel__inner {
    justify-content: center;
  }
  .p-reason__flow__panel__btn {
    top: 30px !important;
    right: 30px !important;
  }
  .p-reason__flow__panel__ttl {
    top: 30px;
    left: 34px;
    box-shadow: 0 8px 10px 0 rgba(0, 0, 0, 0.25);
    width: 124px;
  }
  .p-reason__flow__panel__cont {
    flex-direction: row;
    justify-content: center;
    align-items: center;
  }
  .p-reason__flow__panel__cont__inner {
    justify-content: center;
    min-height: auto;
    min-height: initial;
    height: 593px;
    width: 375px;
    border-radius: 20px;
    box-shadow: 0 -10px 10px 0 rgba(0, 0, 0, 0.4);
  }
  .p-reason__flow__panel__movie {
    border-radius: 20px;
  }
  .p-reason__flow__panel__cv {
    padding: 0;
  }
  .p-reason__flow__panel__cv__logo {
    width: 60px;
  }
  .p-reason__flow__panel__cv p {
    font-size: 16px;
    margin-top: 35px;
  }
  .p-reason__flow__panel__cv__dl {
    margin-top: 26px;
    width: 325px;
  }
  .p-reason__flow__panel__cv__dl a {
    width: 150px;
  }
  .p-reason__flow__panel__cv__btn {
    margin-top: 62px;
  }
  .p-reason__flow__panel__cv__btn button {
    width: 235px;
    border-radius: 4px;
    padding: 15px 0;
    font-size: 14px;
  }
  .p-reason__flow__panel__cv__btn button + button {
    margin-top: 14px;
  }
  .p-reason__flow__panel__cv__btn button.-replay {
    background-size: 16px auto;
    background-position: right 50px center;
  }
  .p-reason__flow__panel__cv__btn button.-close {
    border: 2px solid #fff;
  }
  .p-reason__howtouse {
    width: 100%;
    margin: 50px auto 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .p-reason__howtouse li {
    border-radius: 4px;
    min-height: 97px;
    width: 48.9%;
    padding: 14px 23.4% 11px 2%;
    background-size: 38px auto, 47.8% auto;
    background-position: right 2.1% bottom 17px, right 0 center;
    cursor: pointer;
    transition: background 0.15s ease-out;
  }
  .p-reason__howtouse li.pl-short {
    padding: 11px 24.4% 11px 2.2%;
  }

.plink:hover{
    color: #fff;
    }
  .p-reason__howtouse li:hover {
    background-color: #2c363b;
  }
  .p-reason__howtouse li:hover p {
    color: #eeff00;
  }
  .p-reason__howtouse li img {
    width: 34px;
    margin-bottom: 4px;
  }
  .p-reason__howtouse li p {
    font-size: 14px;
  }
  .p-reason__howtouse li + li {
    margin-top: 0;
  }
  .p-reason__howtouse li:nth-of-type(n+3) {
    margin-top: 20px;
  }
  .p-reason__howtouse li:nth-of-type(n+3) p {
    letter-spacing: 0.2em;
  }
  .p-reason__howtouse li:nth-of-type(1) {
    background-image: url(/jp/assets/imgs/top/reason02_icon_modal_pc.png), url(/jp/assets/imgs/top/reason02_bg_modal05.png);
  }
  .p-reason__howtouse li:nth-of-type(2) {
    background-image: url(/jp/assets/imgs/top/reason02_icon_modal_pc.png), url(/jp/assets/imgs/top/reason02_bg_modal01.png);
  }
  .p-reason__howtouse li:nth-of-type(3) {
    background-image: url(/jp/assets/imgs/top/reason02_icon_modal_pc.png), url(/jp/assets/imgs/top/reason02_bg_modal02.png);
  }
  .p-reason__howtouse li:nth-of-type(4) {
    background-image: url(/jp/assets/imgs/top/reason02_icon_modal_pc.png), url(/jp/assets/imgs/top/reason02_bg_modal03.png);
  }
  .p-reason__howtouse li:nth-of-type(5) {
    background-image: url(/jp/assets/imgs/top/reason02_icon_modal_pc.png), url(/jp/assets/imgs/top/reason02_bg_modal04.png);
  }
  .p-reason__howtouse li:nth-of-type(6) {
    background-image: url(/jp/assets/imgs/top/reason02_icon_modal_pc.png), url(/jp/assets/imgs/top/reason02_bg_modal06.png);
  }
  .p-reason__howtouse__panel__inner {
    justify-content: center;
    flex-direction: row;
    align-items: center;
    height: 100%;
  }
  .p-reason__howtouse__panel__cont {
    background-color: #202b34;
    width: 375px;
    min-height: 587px;
    padding-top: 10px;
    box-shadow: 10px 10px 30px 0 rgba(0, 0, 0, 0.25);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
  }
  .p-reason__howtouse__panel__txt {
    padding: 20px 0;
    min-height: 150px;
  }
  .p-reason__howtouse__panel__txt__inner {
    width: 320px;
  }
  .p-reason__howtouse__panel__txt h3 {
    font-size: 14px;
  }
  .p-reason__howtouse__panel__txt p {
    font-size: 12px;
    margin-top: 10px;
  }
  .p-reason__howtouse__panel__txt p.note {
    font-size: 10px;
    margin-top: 5px;
  }
  .p-reason__howtouse__panel__txt p.note a {
    font-size: 10px;
    padding-right: 1em;
    background-size: 5px auto;
  }
  .p-reason__slide {
    position: absolute;
    right: 0;
    top: 0;
    width: 380px;
    margin-top: 0;
  }
  .p-reason__slide ul {
    width: 380px;
  }
  .p-reason__slide ul li {
    background-color: #1b2024;
  }
  .p-reason__area {
    width: 100%;
    margin: 50px auto 0;
  }
  .p-reason__area__list {
    /*flex-wrap: nowrap;*/
    justify-content: flex-start;
  }
  .p-reason__area__list li {
    width: 18.6%;
    margin-right: 1.4%;
    letter-spacing: 0.2em;
  }
  .p-reason__area__list li:nth-of-type(n+3) {
    margin-top: 0;
  }
  .p-reason__area__list li:nth-of-type(n+6) {
    margin-top: 1em;
  }
  .p-reason__area__list li a {
    line-height: 110px;
    border-radius: 4px;
    font-size: 16px;
    transition: opacity 0.15s ease-out;
  }
  .p-reason__area__list li a:hover {
    opacity: 0.5;
  }
  .p-reason__area__list li a::after {
    width: 6px;
    height: 8px;
    margin-left: 5px;
    margin-bottom: 2px;
  }
  .p-reason__area__btn {
    width: 48.9%;
    padding: 13px 29px 11px;
    margin: 40px auto 0;
    font-size: 14px;
    text-align: center;
    border-radius: 4px;
    background-size: 6px auto;
    background-position: right 20px center;
    border: 1px solid #eeff00;
    transition: 0.15s ease-out;
    transition-property: color, background;
  }
  .p-reason__area__btn:hover {
    color: #fff;
    background-color: rgba(238, 255, 0, 0.1);
    background-image: url(/jp/assets/imgs/top/arrow_white_r.png);
  }
  .p-reason__area__note {
    text-align: center;
    font-size: 12px;
    margin-top: 13px;
  }
  .p-reason__company {
    width: 100%;
    margin: 87px auto 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .p-reason__company h3 {
    width: 100%;
    font-size: 20px;
  }
  .p-reason__company > div:nth-of-type(1) {
    width: 57.4%;
  }
  .p-reason__company__list {
    font-size: 12px;
    margin-top: 40px;
  }
  .p-reason__company__list > div + div {
    margin-top: 18px;
  }
  .p-reason__company__list dt {
    width: 14.8%;
  }
  .p-reason__company__list dd {
    width: 85.2%;
  }
  .p-reason__company__logo {
    width: 40.4%;
    margin-top: 40px;
    margin-bottom: 6px;
    padding: 24px 37px;
  }
  .p-reason__company__logo img {
    margin: 6px 0;
  }
}
@media screen and (max-width: 1024px) and (min-width: 769px) {
  .p-reason {
    padding: 19.53125vw 0 14.16015625vw;
  }
  .p-reason__inner {
    width: 91.796875vw;
    max-width: auto;
    max-width: initial;
  }
  .p-reason__item + .p-reason__item {
    margin-top: 13.671875vw;
  }
  .p-reason__item__txt {
    width: 44.921875vw;
  }
  .p-reason__item.-reason01 .p-reason__item__txt {
    margin-top: -3.41796875vw;
  }
  .p-reason__item.-reason01 .p-reason__subttl {
    height: 1.171875vw;
  }
  .p-reason__item.-reason01 .p-reason__ttl {
    margin-top: 2.9296875vw;
  }
  .p-reason__item.-reason03 {
    margin-top: 14.6484375vw;
    padding: 2.24609375vw 0 4.39453125vw;
  }
  .p-reason__item.-reason03 .p-reason__subttl {
    height: 1.171875vw;
  }
  .p-reason__item.-reason03 h2 {
    margin-top: 2.1484375vw;
  }
  .p-reason__item.-reason04 {
    margin-top: 14.94140625vw;
  }
  .p-reason__item.-reason04 .p-reason__item__txt > div {
    width: 47.8515625vw;
  }
  .p-reason__item.-reason04 .p-reason__item__txt .p-reason__ttl {
    margin-top: 2.9296875vw;
  }
  .p-reason__item.-reason04 .p-reason__item__txt .p-reason__txt {
    width: 52.734375vw;
    margin-top: 3.80859375vw;
  }
  .p-reason__subttl {
    height: 0.87890625vw;
  }
  .p-reason__ttl {
    font-size: 2.734375vw;
    margin-top: 2.34375vw;
  }
  .p-reason__ttl span.-small {
    font-size: 1.7578125vw;
  }
  .p-reason__txt {
    font-size: 1.3671875vw;
    margin-top: 4.296875vw;
  }
  .p-reason__link {
    font-size: 1.3671875vw;
    padding-right: 1.7578125vw;
    background-size: 0.5859375vw auto;
    margin-top: 1.953125vw;
  }
  .p-reason__flow__thumb {
    width: 37.109375vw;
  }
  .p-reason__flow__panel__btn {
    top: 2.9296875vw !important;
    right: 2.9296875vw !important;
  }
  .p-reason__flow__panel__ttl {
    top: 2.9296875vw;
    left: 3.3203125vw;
    box-shadow: 0 0.78125vw 0.9765625vw 0 rgba(0, 0, 0, 0.25);
    width: 12.109375vw;
  }
  .p-reason__flow__panel__cont__inner {
    height: 57.91015625vw;
    width: 36.62109375vw;
    border-radius: 1.953125vw;
    box-shadow: 0 -0.9765625vw 0.9765625vw 0 rgba(0, 0, 0, 0.4);
  }
  .p-reason__flow__panel__movie {
    border-radius: 1.953125vw;
  }
  .p-reason__flow__panel__cv__logo {
    width: 5.859375vw;
  }
  .p-reason__flow__panel__cv p {
    font-size: 1.5625vw;
    margin-top: 3.41796875vw;
  }
  .p-reason__flow__panel__cv__dl {
    margin-top: 2.5390625vw;
    width: 31.73828125vw;
  }
  .p-reason__flow__panel__cv__dl a {
    width: 14.6484375vw;
  }
  .p-reason__flow__panel__cv__btn {
    margin-top: 6.0546875vw;
  }
  .p-reason__flow__panel__cv__btn button {
    width: 22.94921875vw;
    border-radius: 0.390625vw;
    padding: 1.46484375vw 0;
    font-size: 1.3671875vw;
  }
  .p-reason__flow__panel__cv__btn button + button {
    margin-top: 1.3671875vw;
  }
  .p-reason__flow__panel__cv__btn button.-replay {
    background-size: 1.5625vw auto;
    background-position: right 4.8828125vw center;
  }
  .p-reason__flow__panel__cv__btn button.-close {
    border: 0.1953125vw solid #fff;
  }
  .p-reason__howtouse {
    margin: 4.8828125vw auto 0;
  }
  .p-reason__howtouse li {
    border-radius: 0.390625vw;
    height: 9.47265625vw;
    min-height: auto;
    min-height: initial;
    width: 44.921875vw;
    padding: 1.3671875vw 21.81875vw 1.07421875vw 2.034375vw;
    background-size: 3.7109375vw auto, 21.484375vw auto;
    background-position: right 0.9765625vw bottom 1.66015625vw, right 0 center;
  }
  .p-reason__howtouse li img {
    width: 3.3203125vw;
  }
  .p-reason__howtouse li p {
    font-size: 1.3671875vw;
  }
  .p-reason__howtouse li:nth-of-type(n+3) {
    margin-top: 1.953125vw;
  }
  .p-reason__howtouse__panel__cont {
    width: 36.62109375vw;
    height: 57.32421875vw;
    box-shadow: 0.9765625vw 0.9765625vw 2.9296875vw 0 rgba(0, 0, 0, 0.25);
  }
  .p-reason__howtouse__panel__txt {
    padding: 1.953125vw 0;
    min-height: 14.6484375vw;
  }
  .p-reason__howtouse__panel__txt__inner {
    width: 31.25vw;
  }
  .p-reason__howtouse__panel__txt h3 {
    font-size: 1.3671875vw;
  }
  .p-reason__howtouse__panel__txt p {
    font-size: 1.171875vw;
    margin-top: 0.9765625vw;
  }
  .p-reason__howtouse__panel__txt p.note {
    font-size: calc(10 / 1024 * 100vw);
    margin-top: calc(5 / 1024 * 100vw);
  }
  .p-reason__howtouse__panel__txt p.note a {
    font-size: calc(10 / 1024 * 100vw);
    background-size: calc(5 / 1024 * 100vw) auto;
  }
  .p-reason__slide {
    width: 37.109375vw;
  }
  .p-reason__slide ul {
    width: 37.109375vw;
  }
  .p-reason__area {
    margin: 4.8828125vw auto 0;
  }
  /*
  .p-reason__area__list li {
    width: 21.484375vw;
  }
 */
  .p-reason__area__list li a {
    line-height: 12.20703125vw;
    border-radius: 0.390625vw;
    font-size: 1.5625vw;
  }
  .p-reason__area__list li a::after {
    width: 0.5859375vw;
    height: 0.78125vw;
    margin-left: 0.48828125vw;
    margin-bottom: 0.1953125vw;
  }
  .p-reason__area__btn {
    width: 44.921875vw;
    padding: 1.26953125vw 2.83203125vw 1.07421875vw;
    margin: 3.90625vw auto 0;
    font-size: 1.3671875vw;
    border-radius: 0.390625vw;
    background-size: 0.5859375vw auto;
    background-position: right 1.953125vw center;
  }
  .p-reason__area__note {
    font-size: 1.171875vw;
    margin-top: 1.26953125vw;
  }
  .p-reason__company {
    margin: 8.49609375vw auto 0;
  }
  .p-reason__company h3 {
    font-size: 1.953125vw;
  }
  .p-reason__company > div:nth-of-type(1) {
    width: 52.734375vw;
  }
  .p-reason__company__list {
    font-size: 1.171875vw;
    margin-top: 3.90625vw;
  }
  .p-reason__company__list > div + div {
    margin-top: 1.7578125vw;
  }
  .p-reason__company__list dt {
    width: 7.8125vw;
  }
  .p-reason__company__list dd {
    width: 44.921875vw;
  }
  .p-reason__company__logo {
    width: 37.109375vw;
    margin-bottom: 0.5859375vw;
    padding: 2.34375vw 3.61328125vw;
  }
  .p-reason__company__logo img {
    margin: 0.5859375vw 0;
  }
}
/*---------------------------------------------------------
Cv
----------------------------------------------------------*/
.p-cv {
  padding: 51.2vw 0 51.0666666667vw;
}
.p-cv__inner {
  width: 86.6666666667vw;
  margin: 0 auto;
}
.p-cv__logo {
  width: 32vw;
  margin: 0 auto;
}
.p-cv__logo img {
  width: 100%;
}
.p-cv p {
  font-size: 4.8vw;
  color: #fff;
  letter-spacing: 0.1em;
  line-height: 1.6;
  margin-top: 6.9333333333vw;
  text-align: center;
  font-weight: 700;
}
.p-cv__dl {
  display: flex;
  justify-content: space-between;
  margin-top: 9.3333333333vw;
}
.p-cv__dl a {
  display: block;
  width: 40vw;
}
.p-cv__dl a img {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .p-cv {
    padding: 115px 0 88px;
  }
  .p-cv__inner {
    width: 100%;
    max-width: 455px;
  }
  .p-cv__logo {
    width: 168px;
  }
  .p-cv p {
    font-size: 25px;
    margin-top: 40px;
  }
  .p-cv__dl {
    margin-top: 47px;
  }
  .p-cv__dl a {
    width: 211px;
  }
}
@media screen and (max-width: 1024px) and (min-width: 769px) {
  .p-cv {
    padding: 11.23046875vw 0 8.59375vw;
  }
  .p-cv__inner {
    width: 43.45703125vw;
    max-width: auto;
    max-width: initial;
  }
  .p-cv__logo {
    width: 16.40625vw;
  }
  .p-cv p {
    font-size: 2.44140625vw;
    margin-top: 3.90625vw;
  }
  .p-cv__dl {
    margin-top: 4.58984375vw;
  }
  .p-cv__dl a {
    width: 20.60546875vw;
  }
}
/*---------------------------------------------------------
Follow
----------------------------------------------------------*/
.p-follow {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  padding: 2.6666666667vw 0;
}
.p-follow__inner {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  width: 86.6666666667vw;
}
.p-follow a {
  display: block;
  width: 40vw;
}
.p-follow a img {
  width: 100%;
}

.p-follow__inner_CP{
  margin: 0 auto 1em;
  width: 86.6666666667vw;
}
.p-follow .p-follow__inner_CP a{
  padding: 0.2em;
  width: 100%;
}

@media screen and (min-width: 769px) {
  .p-follow {
    left: auto;
    right: 0;
    width: 419px;
    padding: 22px 0 23px;
    border-radius: 4px 0 0 0;
  }
  .p-follow__inner {
    width: 359px;
  }
  .p-follow a {
    width: 169px;
  }
    
.p-follow__inner_CP{
    width: 359px;
  }
}
@media screen and (max-width: 1024px) and (min-width: 769px) {
  .p-follow {
    width: 40.91796875vw;
    padding: 2.1484375vw 0 2.24609375vw;
    border-radius: 0.390625vw 0 0 0;
  }
  .p-follow__inner {
    width: 35.05859375vw;
  }
  .p-follow a {
    width: 16.50390625vw;
  }
}

/*---------------------------------------------------------
Bg
----------------------------------------------------------*/
.p-bg {
  opacity: 0.15;
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -10;
  height: 100vh;
  width: 100%;
}
.p-bg__slide {
  height: 100%;
}
.p-bg__slide ul {
  width: 100%;
}
.p-bg__slide ul li {
  width: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.p-bg__slide__item01 {
  background-image: url(/jp/assets/imgs/top/bg_sp.jpg);
}
/*.p-bg__slide__item02 {
  background-image: url(/jp/assets/imgs/top/kv_slide02_sp.jpg);
}
.p-bg__slide__item03 {
  background-image: url(/jp/assets/imgs/top/kv_slide03_sp.jpg);
}
.p-bg__slide__item04 {
  background-image: url(/jp/assets/imgs/top/kv_slide04_sp.jpg);
}
.p-bg__slide__item05 {
  background-image: url(/jp/assets/imgs/top/kv_slide05_sp.jpg);
}*/

@media screen and (min-width: 769px) {
  .p-bg {
    left: 50%;
    transform: translateX(-50%);
    height: 100vh;
  }
  .p-bg__slide ul li {
    width: auto;
    height: 100%;
  }
  .p-bg__slide__item01 {
    background-image: url(/jp/assets/imgs/top/bg_pc.jpg);
  }
  /*.p-bg__slide__item02 {
    background-image: url(/jp/assets/imgs/top/kv_slide02_pc.jpg);
  }
  .p-bg__slide__item03 {
    background-image: url(/jp/assets/imgs/top/kv_slide03_pc.jpg);
  }
  .p-bg__slide__item04 {
    background-image: url(/jp/assets/imgs/top/kv_slide04_pc.jpg);
  }
  .p-bg__slide__item05 {
    background-image: url(/jp/assets/imgs/top/kv_slide05_pc.jpg);
  }*/
}
/*---------------------------------------------------------
keyframes
----------------------------------------------------------*/
@keyframes passing-bar {
  0% {
    left: 0;
    width: 0;
  }
  50% {
    left: 0;
    width: 100%;
  }
  51% {
    left: 0;
    width: 100%;
  }
  100% {
    left: 100%;
    width: 0;
  }
}
@keyframes passing-kv {
  0% {
    left: 0;
    width: 100%;
  }
  50% {
    left: 0;
    width: 100%;
  }
  51% {
    left: 0;
    width: 100%;
  }
  100% {
    left: 100%;
    width: 0;
  }
}
@keyframes passing-txt {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*---------------------------------------------------------
JS
----------------------------------------------------------*/
body.fixed {
  overflow: hidden;
}

.js-modalPanel {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  overflow-y: auto;
  transition: all 300ms cubic-bezier(0, 0.56, 0.46, 1) 0ms;
  z-index: 2000;
  background-color: #191d21;
}
.js-modalPanel.-show {
  opacity: 1;
  visibility: visible;
}

@media screen and (min-width: 769px) {
  .js-modalPanel__inner {
    height: 100vh;
  }
}
.js-modalClose {
  position: fixed;
  top: 4vw;
  right: 4vw;
  box-shadow: 0 1.0666666667vw 1.3333333333vw 0 rgba(0, 0, 0, 0.25);
  z-index: 100;
  border-radius: 7.0666666667vw;
  background-color: #e9ff00;
}
.js-modalClose span {
  display: block;
  position: relative;
  width: 27.2vw;
  color: #202b34;
  font-size: 3.7333333333vw;
  font-weight: 700;
  text-align: left;
  line-height: 14.1333333333vw;
  padding-left: 4.5333333333vw;
}
.js-modalClose span::before, .js-modalClose span::after {
  content: "";
  position: absolute;
  top: 49%;
  right: 5.3333333333vw;
  width: 4vw;
  height: 0.5333333333vw;
  border-radius: 9999px;
  background-color: #1b2024;
}
.js-modalClose span::before {
  transform: rotate(45deg);
}
.js-modalClose span::after {
  transform: rotate(-45deg);
}

@media screen and (min-width: 769px) {
  .js-modalClose {
    top: 30px;
    right: 30px;
    box-shadow: 0 8px 10px 0 rgba(0, 0, 0, 0.25);
    border-radius: 26.5px;
  }
  .js-modalClose span {
    width: 100px;
    font-size: 14px;
    line-height: 52px;
    padding-left: 18px;
  }
  .js-modalClose span::before, .js-modalClose span::after {
    right: 19px;
    width: 15px;
    height: 2px;
  }
}
@media screen and (max-width: 1024px) and (min-width: 769px) {
  .js-modalClose {
    top: 2.9296875vw;
    right: 2.9296875vw;
    box-shadow: 0 0.78125vw 0.9765625vw 0 rgba(0, 0, 0, 0.25);
  }
  .js-modalClose span {
    width: 9.765625vw;
    border-radius: 2.587890625vw;
    font-size: 1.3671875vw;
    line-height: 5.078125vw;
    padding-left: 1.7578125vw;
  }
  .js-modalClose span::before, .js-modalClose span::after {
    right: 1.85546875vw;
    width: 1.46484375vw;
    height: 0.1953125vw;
  }
}
.js-fadein {
  opacity: 0;
  transition: opacity 1s cubic-bezier(0, 0.56, 0.46, 1);
}
.js-fadein.-show {
  opacity: 1;
}

.js-mask {
  overflow: hidden;
  display: block;
}
.js-mask > * {
  display: block;
  transform: translateY(100%);
  transition: transform 0.4s cubic-bezier(0, 0.56, 0.46, 1);
}
.js-mask.-show > * {
  transform: translateY(0);
}

.js-ani-bandWrap.-show .js-ani-bandBar::before {
  animation: passing-bar 0.7s cubic-bezier(0.85, 0, 0.15, 1) 0s 1 normal forwards;
}
.js-ani-bandWrap.-show .js-ani-bandInr {
  animation: passing-txt 0s ease 0.3s 1 normal forwards;
}

.js-ani-bandWrap-kv.-show {
  animation: passing-kv 0.7s cubic-bezier(0.85, 0, 0.15, 1) 0s 1 normal forwards;
}
.js-ani-bandWrap-kv.-show .js-ani-bandBar::before {
  animation: passing-bar 0.7s cubic-bezier(0.85, 0, 0.15, 1) 0s 1 normal forwards;
}
.js-ani-bandWrap-kv.-show .js-ani-bandInr {
  animation: passing-txt 0s ease 0.3s 1 normal forwards;
}

.js-ani-bandBox {
  display: block;
}

.js-ani-bandBar {
  position: relative;
  display: inline-block;
  transform: translate3d(0, 0, 0);
}
.js-ani-bandBar::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1000;
  background: #eeff00;
}
.js-ani-bandBar.-txt::before {
  height: 100%;
}

.js-ani-bandInr {
  display: inline-block;
  opacity: 0;
  transform: translate3d(0, 0, 0);
}