@charset "UTF-8";
/************************************
	Local
************************************/
/*----- 1Byte(SBCS) -----*/
/*----- JA -----*/
[data-lang=ja] .langselect {
  font-family: "source-han-sans-japanese", sans-serif;
}
@media screen and (min-width: 769px) {
  [data-lang=ja].page-top .sec-fv .mv-lead {
    font-size: min(0.5rem, 50px);
  }
}
[data-lang=ja].page-top .sec-fv .mv-7re2re3 .mv-title {
  top: 30.8vw;
}
[data-lang=ja].page-top .sec-fv .mv-villageWE .detail .name {
  font-size: 0.26rem;
}
@media screen and (min-width: 769px) {
  [data-lang=ja].page-top .sec-fv .mv-villageWE .detail .name {
    font-size: min(0.2rem, 20px);
  }
}
[data-lang=ja].page-top .sec-fv .notice {
  background: black;
  border: 1px solid #454545;
  color: #FFF;
  box-shadow: 0px 0px 18px 2px rgba(0, 0, 0, 0.8);
  margin: 0.6rem 0.4rem 0;
  padding: 0.4rem 0.6rem;
}
@media screen and (min-width: 769px) {
  [data-lang=ja].page-top .sec-fv .notice {
    margin-top: min(0.6rem, 60px);
    padding: min(0.4rem, 40px) min(0.6rem, 60px);
    text-align: center;
  }
}
@media screen and (min-width: 1024px) {
  [data-lang=ja].page-top .sec-fv .notice {
    margin-right: auto;
    margin-left: auto;
    max-width: 1280px;
    width: 66.66%;
  }
}
@media screen and (min-width: 769px) {
  [data-lang=ja].page-top .sec-fv .notice .notice-inner {
    display: inline-block;
    text-align: left;
  }
}
[data-lang=ja].page-top .sec-fv .notice .notice-ttl {
  font-size: 0.23rem;
  font-weight: 700;
  margin-bottom: 0.1rem;
  padding-left: calc(10px + 0.4em);
  text-indent: calc(-10px - 0.4em);
}
@media screen and (min-width: 769px) {
  [data-lang=ja].page-top .sec-fv .notice .notice-ttl {
    font-size: min(0.2rem, 20px);
    margin-bottom: min(0.1rem, 10px);
  }
}
[data-lang=ja].page-top .sec-fv .notice .notice-ttl::before {
  background: #EB0000;
  content: "";
  display: inline-block;
  height: 2px;
  margin-right: 0.4em;
  vertical-align: middle;
  width: 10px;
}
[data-lang=ja].page-top .sec-fv .notice .text-ctr:not(:last-child) {
  margin-bottom: 0.4rem;
}
@media screen and (min-width: 769px) {
  [data-lang=ja].page-top .sec-fv .notice .text-ctr:not(:last-child) {
    margin-bottom: min(0.4rem, 40px);
  }
}
[data-lang=ja].page-top .sec-fv .notice .mark-list {
  font-size: 0.2rem;
  line-height: 1.8;
  padding-left: calc(10px + 0.4em);
}
@media screen and (min-width: 769px) {
  [data-lang=ja].page-top .sec-fv .notice .mark-list {
    font-size: min(0.16rem, 16px);
  }
}
[data-lang=ja].page-top .sec-product .border-ctr {
  background: rgba(0, 0, 0, 0.6);
  border: 1px solid #454545;
  box-shadow: 0px 0px 18px 2px rgba(0, 0, 0, 0.8);
  padding: 0.4rem;
}
@media screen and (min-width: 769px) {
  [data-lang=ja].page-top .sec-product .border-ctr {
    padding: min(0.4rem, 40px);
  }
}
[data-lang=ja].page-top .sec-howtoplay .step-item-01 .border-ctr .text {
  padding-left: 4.5em;
  text-align: left;
  text-indent: -4.5em;
}
@media screen and (min-width: 769px) {
  [data-lang=ja].page-top .sec-outbound .outbound-link-list-item {
    width: 30.56%;
  }
}
[data-lang=ja].page-product .sec-productlist .title-ctr .title-name {
  margin-bottom: 0.5em;
}
[data-lang=ja].page-product .sec-productlist .title-ctr .title-info .notes .notes-item::before {
  content: "※";
}

/*----- US -----*/
[data-lang=us] .cusacrm-popup-container {
  position: fixed !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 1000;
}
@media screen and (min-width: 769px) {
  [data-lang=us].page-top .sec-spec .spec-mark {
    width: 246px;
  }
}
@media screen and (min-width: 1440px) {
  [data-lang=us].page-top .sec-spec .spec-mark {
    width: 322px;
  }
}
@media screen and (min-width: 769px) {
  [data-lang=us].page-top .sec-spec .spec-mark-rating img,
  [data-lang=us].page-top .sec-spec .spec-mark-reengine img {
    height: 68px;
  }
}
@media screen and (min-width: 1440px) {
  [data-lang=us].page-top .sec-spec .spec-mark-rating img,
  [data-lang=us].page-top .sec-spec .spec-mark-reengine img {
    height: 91px;
  }
}
[data-lang=us].page-product .sec-productlist .title-ctr .title-info .notes .notes-item {
  padding-left: 2.5em;
  text-indent: -2.5em;
}
[data-lang=us].page-product .sec-productlist .title-ctr .title-info .notes .notes-item::before {
  content: "Note: ";
}

/*----- UK -----*/
[data-lang=uk].page-product .sec-productlist .title-ctr .title-info .notes .notes-item {
  padding-left: 2.5em;
  text-indent: -2.5em;
}
[data-lang=uk].page-product .sec-productlist .title-ctr .title-info .notes .notes-item::before {
  content: "Note: ";
}

/*----- FR -----*/
@media screen and (min-width: 769px) {
  [data-lang=fr].page-top .sec-fv .mv-lead {
    font-size: min(0.44rem, 44px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=fr].page-top .sec-about .sec-ttl-ctr {
    max-width: 36%;
  }
}
@media screen and (min-width: 769px) {
  [data-lang=fr].page-top .sec-about .sec-ttl {
    font-size: min(0.5rem, 50px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=fr].page-top .sec-about .sec-ttl-ruby {
    font-size: min(0.26rem, 26px);
  }
}
[data-lang=fr].page-product .sec-productlist .title-ctr .title-info .notes .notes-item {
  padding-left: 5.2em;
  text-indent: -5.2em;
}
[data-lang=fr].page-product .sec-productlist .title-ctr .title-info .notes .notes-item::before {
  content: "Remarque : ";
}

/*----- IT -----*/
[data-lang=it] .btn-buy-page,
[data-lang=it] [data-js-elem=btnBuyPage] {
  font-size: 0.38rem;
}
@media screen and (min-width: 769px) {
  [data-lang=it] .btn-buy-page,
  [data-lang=it] [data-js-elem=btnBuyPage] {
    font-size: min(0.22rem, 22px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=it].page-top .sec-fv .mv-lead {
    font-size: min(0.5rem, 50px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=it].page-top .sec-about .sec-ttl-ctr {
    max-width: 36%;
  }
}
[data-lang=it].page-top .sec-about .sec-ttl {
  font-size: 0.62rem;
}
@media screen and (min-width: 769px) {
  [data-lang=it].page-top .sec-about .sec-ttl {
    font-size: min(0.42rem, 42px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=it].page-top .sec-about .sec-ttl-ruby {
    font-size: min(0.26rem, 26px);
  }
}
[data-lang=it].page-top .sec-howtoplay .step-ttl-text {
  max-width: 74%;
}
[data-lang=it].page-product .sec-productlist .title-ctr .title-dt {
  min-width: 10.5em;
}
[data-lang=it].page-product .sec-productlist .title-ctr .title-info .notes .notes-item {
  padding-left: 2.5em;
  text-indent: -2.5em;
}
[data-lang=it].page-product .sec-productlist .title-ctr .title-info .notes .notes-item::before {
  content: "Nota: ";
}

/*----- DE -----*/
[data-lang=de] .btn-buy-page,
[data-lang=de] [data-js-elem=btnBuyPage] {
  font-size: 0.38rem;
}
@media screen and (min-width: 769px) {
  [data-lang=de] .btn-buy-page,
  [data-lang=de] [data-js-elem=btnBuyPage] {
    font-size: min(0.22rem, 22px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=de].page-top .sec-fv .mv-lead {
    font-size: min(0.46rem, 46px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=de].page-top .sec-about .sec-ttl-ctr {
    max-width: 36%;
  }
}
[data-lang=de].page-top .sec-about .sec-ttl {
  font-size: 0.58rem;
}
@media screen and (min-width: 769px) {
  [data-lang=de].page-top .sec-about .sec-ttl {
    font-size: min(0.38rem, 38px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=de].page-top .sec-about .sec-ttl-ruby {
    font-size: min(0.24rem, 24px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=de].page-top .sec-cloud .system-arrow-label {
    font-size: min(0.2rem, 20px);
  }
}
[data-lang=de].page-top .sec-howtoplay .step-ttl-text {
  max-width: 74%;
}
[data-lang=de].page-product .sec-productlist .title-ctr .title-dt {
  min-width: 10.5em;
}
[data-lang=de].page-product .sec-productlist .title-ctr .title-info .notes .notes-item {
  padding-left: 4em;
  text-indent: -4em;
}
[data-lang=de].page-product .sec-productlist .title-ctr .title-info .notes .notes-item::before {
  content: "Hinweis: ";
}

/*----- ES -----*/
[data-lang=es] .btn-buy-page,
[data-lang=es] [data-js-elem=btnBuyPage] {
  font-size: 0.38rem;
}
@media screen and (min-width: 769px) {
  [data-lang=es] .btn-buy-page,
  [data-lang=es] [data-js-elem=btnBuyPage] {
    font-size: min(0.22rem, 22px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=es].page-top .sec-fv .mv-lead {
    font-size: min(0.5rem, 50px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=es].page-top .sec-about .sec-ttl-ctr {
    max-width: 36%;
  }
}
[data-lang=es].page-top .sec-about .sec-ttl {
  font-size: 0.58rem;
}
@media screen and (min-width: 769px) {
  [data-lang=es].page-top .sec-about .sec-ttl {
    font-size: min(0.34rem, 34px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=es].page-top .sec-about .sec-ttl-ruby {
    font-size: min(0.22rem, 22px);
  }
}
@media screen and (min-width: 769px) {
  [data-lang=es].page-top .sec-cloud .system-arrow-label {
    font-size: min(0.2rem, 20px);
  }
}
[data-lang=es].page-product .sec-productlist .title-ctr .title-dt {
  min-width: 10.5em;
}
[data-lang=es].page-product .sec-productlist .title-ctr .title-info .notes .notes-item {
  padding-left: 2.5em;
  text-indent: -2.5em;
}
[data-lang=es].page-product .sec-productlist .title-ctr .title-info .notes .notes-item::before {
  content: "Nota: ";
}

/*----- HK -----*/
[data-lang=zhhant] .langselect {
  font-family: "source-han-sans-traditional", sans-serif;
}
[data-lang=zhhant].page-product .sec-productlist .title-ctr .title-info .notes .notes-item::before {
  content: "※";
}

/*----- CN -----*/
[data-lang=zhhans] .langselect {
  font-family: "source-han-sans-simplified-c", sans-serif;
}
[data-lang=zhhans].page-product .sec-productlist .title-ctr .title-info .notes .notes-item::before {
  content: "※";
}

/*----- KR -----*/
[data-lang=ko] .langselect {
  font-family: "source-han-sans-korean", sans-serif;
}
[data-lang=ko].page-product .sec-productlist .title-ctr .title-info .notes .notes-item::before {
  content: "※";
}

/*----- ASIA -----*/
[data-lang=enasia].page-product .sec-productlist .title-ctr .title-info .notes .notes-item {
  padding-left: 2.5em;
  text-indent: -2.5em;
}
[data-lang=enasia].page-product .sec-productlist .title-ctr .title-info .notes .notes-item::before {
  content: "Note: ";
}

/************************************
	Anime
************************************/
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  50% {
    transform: rotate(180deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes fadeInBottom {
  0% {
    transform: translateY(20px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeInTop {
  0% {
    opacity: 0;
    transform: translateY(100%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
/************************************
	State
************************************/
/*----- 認証 -----*/
[data-js-elem=auth].is-hide {
  display: none;
}

/*----- ファーストビュー -----*/
[data-js-anime-fv] {
  backface-visibility: hidden;
  opacity: 0;
  transform: translate3d(0, 0, 0);
  will-change: transform;
}

[data-js-anime-fv="0"].is-anime {
  animation: fadeInBottom 1s ease-in-out forwards;
}

[data-js-anime-fv="1"].is-anime {
  animation: fadeInBottom 1s ease-in-out forwards;
  animation-delay: 0.5s;
}

[data-js-anime-fv="2"].is-anime {
  animation: fadeIn 1s ease-in-out forwards;
  animation-delay: 1s;
}

[data-js-anime-fv=pf].is-anime {
  animation: fadeInBottom 1s ease-in-out forwards;
  animation-delay: 0.5s;
}
@media screen and (min-width: 769px) {
  [data-js-anime-fv=pf].is-anime {
    animation: fadeIn 1s ease-in-out forwards;
    animation-delay: 1s;
  }
}

@media screen and (max-width: 768px) {
  [data-js-anime-fv=btnBuy].is-anime {
    animation: fadeIn 1s ease-in-out forwards;
    animation-delay: 1s;
  }
}

/*----- フェードイン -----*/
[data-js-anime-element=fadeUp] {
  backface-visibility: hidden;
  opacity: 0;
  transform: translate3d(0, 0, 0);
  will-change: transform;
}
[data-js-anime-element=fadeUp].is-anime {
  animation: fadeInBottom 0.8s ease-in-out forwards;
}
[data-js-anime-element=fadeUp][data-js-anime-fadeUp="1"].is-anime {
  animation-delay: 0.4s;
}
[data-js-anime-element=fadeUp][data-js-anime-fadeUp="2"].is-anime {
  animation-delay: 0.8s;
}
[data-js-anime-element=fadeUp][data-js-anime-fadeUp="3"].is-anime {
  animation-delay: 1.2s;
}

/*----- 購入ボタン -----*/
.btn-buy {
  transition: opacity 0.4s ease;
}
.btn-buy.is-disable {
  opacity: 0.4;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  [data-js-elem=btnBuyPage] {
    bottom: calc(-0.6rem - 10.66vw);
    margin: 0;
    position: fixed;
    transition: bottom 0.4s ease-in-out;
    z-index: 9;
  }
}
@media screen and (min-width: 769px) {
  [data-js-elem=btnBuyPage] {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  [data-js-elem=btnBuyPage] .btn-item a {
    padding: 0.2rem 0.25rem;
  }
}
@media screen and (max-width: 768px) {
  [data-js-elem=btnBuyPage].is-show {
    bottom: 0;
  }
}

.sec-productlist .title-ctr .title-storelink-item.is-disable {
  background: #383838;
  pointer-events: none;
}
.sec-productlist .title-ctr .title-storelink-item.is-disable a {
  opacity: 0.4;
}
