@charset "shift_jis";
/* CSS Document */

.MB1em {
  margin-bottom: 1em !important;
}
.MB00 {
  margin-bottom: 0px !important;
}
.MB10 {
  margin-bottom: 10px !important;
}
.MB15 {
  margin-bottom: 15px !important;
}
.MB20 {
  margin-bottom: 20px !important;
}
.MB25 {
  margin-bottom: 25px !important;
}
.MB30 {
  margin-bottom: 30px !important;
}
.MB35 {
  margin-bottom: 35px !important;
}
.MB40 {
  margin-bottom: 40px !important;
}
.MB45 {
  margin-bottom: 45px !important;
}
.MB50 {
  margin-bottom: 50px !important;
}
.MB55 {
  margin-bottom: 55px !important;
}
.MB60 {
  margin-bottom: 60px !important;
}
.MB65 {
  margin-bottom: 55px !important;
}
.MB60 {
  margin-bottom: 60px !important;
}
.MB65 {
  margin-bottom: 65px !important;
}
.MB70 {
  margin-bottom: 70px !important;
}
.MB75 {
  margin-bottom: 75px !important;
}
.MB80 {
  margin-bottom: 80px !important;
}
.MB85 {
  margin-bottom: 85px !important;
}
.MB90 {
  margin-bottom: 90px !important;
}
.MB95 {
  margin-bottom: 95px !important;
}
.MB100 {
  margin-bottom: 100px !important;
}
.MB110 {
  margin-bottom: 110px !important;
}
.MB120 {
  margin-bottom: 120px !important;
}
.MB130 {
  margin-bottom: 130px !important;
}
.MB140 {
  margin-bottom: 140px !important;
}
.MB150 {
  margin-bottom: 150px !important;
}
.MB160 {
  margin-bottom: 160px !important;
}
.MB200 {
  margin-bottom: 200px !important;
}

.w100 {
  display: block;
  width: 100%;
  height: auto;
}

.price_box {
  background: #000;
  padding: 20px;
}

.price_box .price_inbox {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  max-width: 980px;
  width: 77.5%;
  margin: 0 auto;
}
.price_box .price_txt {
  max-width: 361px;
  width: 100%;
}

.btn_buy {
  width: 180px;
}

.btn_mall .btn {
  display: inline-block;
  font-weight: bold;
  line-height: 1.5;
  color: #212529;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  background-color: transparent;
  border: 2px solid transparent;
  padding: 0.375rem 2rem;
  font-size: 18px;
  width: 180px;
  border-radius: 6px;
}
.btn_mall .btn.btn-light {
  display: block;
  color: #fff;
  background-color: #e60012;
  border-color: #e60012;
}

.btn_mall.btn_mall02 .btn.btn-light {
  display: block;
  color: #fff;
  background-color: #e60012;
  border-color: #fff;
  box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.5);
}

.btn_mall02 {
  display: flex;
  justify-content: center;
  margin-bottom: 3%;
}

.btn_mall_box {
  width: 180px;
  margin: 0 auto;
}
.btn_mall_box .btn_mall .btn.btn-light {
  display: block;
  color: #fff;
  background-color: #e60012;
  border-color: #e60012;
}

.btn_mall01_ch{
  font-family: "Noto Sans SC", sans-serif;
  font-weight: 500;
}

.movie_area {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

#contents .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#contents .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.movie_area {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.promo_movie_box {
  width: 90%;
  max-width: 480px;
  margin: 0 auto;
}

#contents .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#contents .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
.ct_box .copyright {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;

  align-items: center;

  padding: 20px 10px;
}

.ct_box .copyright_img {
  width: 40%;
  max-width: 320px;
}

.ct_box .copyright_text {
  width: 55%;
  text-align: left;
  font-size: 11px;
  color: #000;
}

.ct_box .bnr_box {
  padding: 20px 8% 10px;
}
.ct_box .bnr_box a {
  display: block;
}

/*------------------------*/

.ct_box {
  width: 100%;
  margin: 0 auto;
}

.ct_box > .w480 {
  width: 100%;
  max-width: 480px;
  box-sizing: border-box;
  margin: 0 auto;
  overflow: hidden;
  background: url(../images/bg.webp);
}

@media (min-width: 481px) {
  .ct_box > .w480 {
    border-right: 4px #e60f1e solid;
    border-left: 4px #e60f1e solid;
  }
  /* min-width: 481px */
}

.bg_box {
  background: url(../images/pc_bg.webp) repeat-x fixed;
  background-position: center;
  background-size: contain;
}
/*------------------------*/

/* navここから */

/*------------------------*/

/* mainここから */
.main {
  position: relative;
  border-bottom: 4px solid #e60012;
  background: #fff;
}
.main_img {
  padding-bottom: 2%;
}
.main_capsule {
  width: 20.44897959%;
  position: absolute;
  bottom: 20%;
  left: 21%;
  opacity: 0;
  animation: main_capsule 5s ease infinite;
  animation-delay: 0.1s;
}
@keyframes main_capsule {
  0% {
    transform: translateX(75px) translateY(-30px) scale(0.8) rotate(180deg);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  30% {
    transform: translateX(0) translateY(0) scale(1);
    opacity: 1;
  }
  60% {
    transform: translateX(0) translateY(0) scale(1);
    opacity: 1;
  }
  100% {
    transform: translateX(-90px) translateY(0) scale(1) rotate(-210deg);
    opacity: 0;
  }
}
.main_shape {
  width: 9.591836735%;
  position: absolute;
  bottom: 34%;
  left: 17%;
  animation: main_shape 5s ease infinite;
  opacity: 0;
}
@keyframes main_shape {
  0% {
    opacity: 0;
  }
  20% {
    transform: scale(0);
    opacity: 0;
  }
  25% {
    transform: scale(1);
    opacity: 1;
  }
  35% {
    opacity: 1;
  }
  40% {
    opacity: 0;
  }
  45% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  55% {
    opacity: 1;
  }
  65% {
    opacity: 1;
  }
  80% {
    opacity: 0;
  }
}
/*------------------------*/

/* area_1ここから */
.area_1 {
  padding-top: 20px;
  position: relative;
}
.area_1_title {
  width: 31.83673469%;
  margin: 6% auto 0;
}
.area_1_img1,
.area_1_img2,
.area_1_img3 {
  width: 70.20408163%;
  margin: 3% auto;
  position: relative;
  overflow: hidden;
}
.area_1_img1_arrow {
  position: absolute;
  width: 8.12244898%;
  top: 5%;
  left: 48%;
  opacity: 0;
}
.animate_area_1_img1_arrow {
  animation-delay: 0.2s;
  animation: area_1_img1_arrow 3s ease infinite;
  opacity: 0;
}
@keyframes area_1_img1_arrow {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  30% {
    transform: translateY(0);
    opacity: 1;
  }
  80% {
    transform: translateY(60px);
    opacity: 1;
  }
  100% {
    transform: translateY(60px);
    opacity: 0;
  }
}
.area_1_img1_2 {
  position: absolute;
  top: 0%;
  left: 5%;
  opacity: 0;
}
.animate_area_1_img1_2 {
  animation-delay: 0.2s;
  animation: area_1_img1_2 3s ease infinite;
  opacity: 0;
}
@keyframes area_1_img1_2 {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  30% {
    transform: translateY(0);
    opacity: 1;
  }
  90% {
    transform: translateY(100px);
    opacity: 1;
  }
  100% {
    transform: translateY(100px);
    opacity: 1;
  }
}
.area_1_img1_3 {
  position: absolute;
  top: 0;
}
.area_1_img2_2 {
  position: absolute;
  width: 51.30612245%;
  top: 17%;
  left: 24%;
}
.animate_area_1_img2_2 {
  animation: area_1_img2_2 3.5s infinite;
  animation-delay: 0.2s;
}
@keyframes area_1_img2_2 {
  0% {
    transform: rotate(0);
  }
  70% {
    transform: rotate(360deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.area_1_img2_arrow {
  width: 40.6122449%;
  position: absolute;
  top: 25%;
  left: 29%;
}
.animate_area_1_img2_arrow {
  animation: area_1_img2_arrow 3.5s infinite;
  animation-delay: 0.2s;
}
@keyframes area_1_img2_arrow {
  0% {
    transform: rotate(0);
  }
  70% {
    transform: rotate(360deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.area_1_img3_2 {
  width: 20.3125%;
  position: absolute;
  top: 15%;
  left: 18%;
}
.animate_area_1_img3_2 {
  animation-delay: 0.2s;
  animation: area_1_img3_2 5s ease infinite;
  opacity: 0;
}
@keyframes area_1_img3_2 {
  0% {
    opacity: 0;
  }
  20% {
    transform: scale(0.8);
    opacity: 0;
  }
  25% {
    transform: scale(1);
    opacity: 1;
  }
  35% {
    opacity: 1;
  }
  40% {
    opacity: 0;
  }
  45% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  55% {
    opacity: 1;
  }
  65% {
    opacity: 1;
  }
  80% {
    opacity: 0;
  }
}
.area_1_img3_3 {
  width: 56.5625%;
  position: absolute;
  bottom: 31%;
  left: 22%;
}
.animate_area_1_img3_3 {
  animation-delay: 0.2s;
  opacity: 0;
  animation: area_1_img3_3 5s ease infinite;
}
@keyframes area_1_img3_3 {
  0% {
    transform: translateX(75px) translateY(-50px) scale(0.8) rotate(180deg);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  30% {
    transform: translateX(0) translateY(0) scale(1);
    opacity: 1;
  }
  60% {
    transform: translateX(0) translateY(0) scale(1);
    opacity: 1;
  }
  100% {
    transform: translateX(-120px) translateY(0) scale(1) rotate(-210deg);
    opacity: 0;
  }
}
.area_1_text1 {
  width: 36.73469388%;
  margin: 0 auto;
}
.area_1_text2 {
  width: 55.6122449%;
  margin: 0 auto;
}
.area_1_text3 {
  width: 61.02040816%;
  margin: 0 auto;
}
/*------------------------*/

/* area_2ここから */
.area_2 {
  position: relative;
}
.area_2_bg {
  width: 91.93877551%;
  margin: 8% auto;
}
.area_2_img1 {
  width: 77.85714286%;
  position: absolute;
  top: 10%;
  left: 11%;
}
.area_2_img2 {
  width: 81.02040816%;
  position: absolute;
  bottom: 5%;
  left: 11%;
}
/*------------------------*/

/* area_3ここから */
.area_3 {
  position: relative;
}
.area_3_bg {
  width: 91.93877551%;
  margin: 8% auto;
}
.area_3_img1 {
  width: 31.93877551%;
  position: absolute;
  top: 10%;
  left: 23%;
}
.area_3_img2 {
  width: 25.93877551%;
  position: absolute;
  top: 10%;
  right: 10%;
}
.area_3_text1 {
  width: 81.42857143%;
  position: absolute;
  top: 6%;
  left: 10%;
}
.area_3_img3 {
  width: 10.20408163%;
  position: absolute;
  bottom: 36%;
  left: 26%;
  opacity: 0;
}
.animate_area_3_img3 {
  animation: area_3_img3 0.5s ease forwards;
}
@keyframes area_3_img3 {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
.area_3_img4 {
  width: 32.75510204%;
  position: absolute;
  bottom: 10%;
  right: 20%;
  opacity: 0;
}
.animate_area_3_img4 {
  animation: area_3_img4 0.5s ease forwards;
}
@keyframes area_3_img4 {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
.area_3_text2 {
  width: 48.3877551%;
  position: absolute;
  bottom: 5%;
  left: 26%;
}
/*------------------------*/

/* area_4ここから */
.area_4 {
  position: relative;
}
.area_4_bg {
  width: 91.93877551%;
  margin: 8% auto;
}
.area_4_img1 {
  width: 61.12244898%;
  position: absolute;
  top: 10%;
  left: 20%;
}
.area_4_text1 {
  width: 77.14285714%;
  position: absolute;
  left: 12%;
  bottom: 30%;
}
.area_4_text2 {
  width: 66.73469388%;
  position: absolute;
  bottom: 5%;
  left: 12%;
}
/*------------------------*/

/* area_5ここから */
.area_5 {
  position: relative;
}
.area_5_bg {
  width: 91.93877551%;
  margin: 8% auto 0;
}
.area_5_img {
  width: 86.42857143%;
  position: absolute;
  top: 15%;
  left: 7%;
}
.area_5_text {
  width: 70.81632653%;
  margin: 5% auto 8%;
}
/*------------------------*/

/* area_6ここから */
.area_6_text {
  width: 77.04081633%;
  margin: 0 auto 2%;
}
.area_6_img {
  width: 86.63265306%;
  margin: 0 auto 5%;
}
.area_6_img:hover {
  opacity: 0.7;
}
/*------------------------*/

/* area_7ここから */
.area_7_img {
  width: 91.93877551%;
  margin: 8% auto 0;
}
/*------------------------*/

.slid_in_left {
  opacity: 0;
}
.animate_slid_in_left {
  animation: slid_in_left 0.3s ease forwards;
}
@keyframes slid_in_left {
  0% {
    transform: translateX(-30px);
    opacity: 0;
  }
  50% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

.slid_in_right {
  opacity: 0;
}
.animate_slid_in_right {
  animation: slid_in_right 0.3s ease forwards;
}
@keyframes slid_in_right {
  0% {
    transform: translateX(30px);
    opacity: 0;
  }
  50% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

.slid_in_down {
  opacity: 0;
}
.animate_slid_in_down {
  animation: slid_in_down 0.5s ease forwards;
}
@keyframes slid_in_down {
  0% {
    transform: translateY(-40px);
    opacity: 0;
  }
  50% {
    transform: translateY(5px);
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

.scale_up {
  opacity: 0;
}
.animate_scale_up {
  animation: scale_up 0.5s ease forwards;
}
@keyframes scale_up {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.scale_up_delay {
  opacity: 0;
}
.animate_scale_up_delay {
  animation: scale_up_delay 0.5s ease forwards;
  animation-delay: 0.6s;
}
@keyframes scale_up_delay {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.fade_in {
  opacity: 0;
}
.animate_fade_in {
  animation: fade_in 0.5s ease forwards;
  animation-delay: 0.2s;
}
@keyframes fade_in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.fade_in_delay {
  opacity: 0;
}
.animate_fade_in_delay {
  animation: fade_in_delay 0.5s ease forwards;
  animation-delay: 1s;
}
@keyframes fade_in_delay {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.fade_in_delay2 {
  opacity: 0;
}
.animate_fade_in_delay2 {
  animation: fade_in_delay2 0.5s ease forwards;
  animation-delay: 0.4s;
}
@keyframes fade_in_delay2 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.area_1_text1_en{
  width: 12.734694%;
  margin: 6% auto;
}

.area_1_text2_en{
  width: 12.734694%;
  margin: 6% auto;
}

.area_1_title_en{
  width: 36.836735%;
  margin: 6% auto 0;
}

.area_3_text1_en{
  width: 81.42857143%;
  position: absolute;
  top: 7%;
  left: 7%;
}

.area_3_text2_en{
  width: 55.387755%;
  position: absolute;
  bottom: 6%;
  left: 23.8%;
}

.area_3_text1_ch{
  width: 81.42857143%;
  position: absolute;
  top: 6%;
  left: 8%;
}

.area_3_text2_ch{
  width: 48.3877551%;
  position: absolute;
  bottom: 5%;
  left: 25%;
}

.language_box{
  background: #000;
  border-bottom: #fff 3px solid;
  display: flex;
  justify-content: right;
  gap: 5%;
  padding: 1% 2% 1% 0;
}

.ja_btn{
  text-decoration: none;
  color: #fff;
  font-size: 1rem;
  display: flex;
  align-items: center;
  gap: 8px;
}

.en_btn{
  text-decoration: none;
  color: #fff;
  font-size: 1rem;
  display: flex;
  align-items: center;
  gap: 8px;
}

.ch_btn{
  text-decoration: none;
  color: #fff;
  font-size: 1rem;
  display: flex;
  align-items: center;
  gap: 8px;
}

.lng_shape_ja{
  width: 8%;
}

.lng_shape_ch{
  width: 11%;
}

.lng_shape_en{
  width: 7.5%;
}

@media (max-width: 375px) {
  .ja_btn{
    font-size: 0.8rem;
  }
  
  .en_btn{
    font-size: 0.8rem;
  }
  
  .ch_btn{
    font-size: 0.8rem;
  }
}