@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;
}

.MT00 {
  margin-top: 0px !important;
}
.MT10 {
  margin-top: 10px !important;
}
.MT15 {
  margin-top: 15px !important;
}
.MT20 {
  margin-top: 20px !important;
}
.MT25 {
  margin-top: 25px !important;
}
.MT30 {
  margin-top: 30px !important;
}
.MT35 {
  margin-top: 35px !important;
}
.MT40 {
  margin-top: 40px !important;
}
.MT45 {
  margin-top: 45px !important;
}
.MT50 {
  margin-top: 50px !important;
}
.MT55 {
  margin-top: 55px !important;
}
.MT60 {
  margin-top: 60px !important;
}
.MT65 {
  margin-top: 65px !important;
}
.MT70 {
  margin-top: 70px !important;
}
.MT75 {
  margin-top: 75px !important;
}
.MT80 {
  margin-top: 80px !important;
}
.MT85 {
  margin-top: 85px !important;
}
.MT90 {
  margin-top: 90px !important;
}
.MT95 {
  margin-top: 95px !important;
}
.MT100 {
  margin-top: 100px !important;
}
.MT110 {
  margin-top: 110px !important;
}
.MT120 {
  margin-top: 120px !important;
}
.MT130 {
  margin-top: 130px !important;
}
.MT140 {
  margin-top: 140px !important;
}
.MT150 {
  margin-top: 150px !important;
}
.MT160 {
  margin-top: 160px !important;
}
.MT200 {
  margin-top: 200px !important;
}

.w100 {
  display: block;
  width: 100%;
  height: auto;
}

.price_box {
  background: url(../images/price_bg.png);
  background-size: contain;
  border-top: 4px #7fcef4 solid;
  border-bottom: 4px #7fcef4 solid;
  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: 100%;
  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: #e95098;
  border-color: #e95098;
}

.btn_mall.btn_mall02 .btn.btn-light {
  display: block;
  color: #fff;
  background-color: #e95098;
  border-color: #e95098;
}

.btn_mall02 {
  display: flex;
  justify-content: center;
  margin: 5% 0;
}

.btn_mall_box {
  width: 180px;
  margin: 0 auto;
}
.btn_mall_box .btn_mall .btn.btn-light {
  display: block;
  color: #fff;
  background-color: #e95098;
  border-color: #e95098;
}

.battery_info {
display: block;
margin-top: 20px;
}


.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: 57%;
  text-align: left;
  font-size: 10px;
  color: #000;
}

.ct_box .copyright_text span {
display: inline-block;
padding-left: 1em;
text-indent: -1em;
}


.ct_box .bnr_box {
  padding: 20px 8% 10px;
}
.ct_box .bnr_box a {
  display: block;
}

.copyright_box2406{
  gap: 8%;
}


.hidden_ttl {
position: absolute;
width: 0;
height: 0;
z-index: -10;
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);
  background-size: 100%;
}

@media (min-width: 481px) {
  .ct_box > .w480 {
    border-right: 4px #7fcef4 solid;
    border-left: 4px #7fcef4 solid;
    background: url(../images/bg.webp);
    background-size: 100%;
  }
  /* min-width: 481px */
}

.bg_box {
  background: url(../images/bg_pc.png) top center;
}
/*------------------------*/

/* mainここから */
.main{
  width: 100%;
  position: relative;
  overflow: hidden;

  background: url(../images/main_bg.jpg);
}

.main_logo, .main_img_01, .main_img_02, .main_txt_01, .main_txt_02, .main_txt_03, .main_info{
position: absolute;
}

.main_logo{
width: 88.54166667%;
top: 1%;
left: 5%;

opacity: 0;
}
.animate_main_logo{
animation: main_logo 1.4s forwards;
}
@keyframes main_logo {
  0% {
    -webkit-clip-path: circle(0 at 50% 50%);
    clip-path: circle(0 at 50% 50%);
    opacity: 1;
  }

  100% {
    -webkit-clip-path: circle(100% at 50% 50%);
    clip-path: circle(100% at 50% 50%);
    opacity: 1;
  }
}

.main_img_01{
width: 59.375%;
top: 15%;

opacity: 0;
}
.animate_main_img_01{
animation: main_img_01 0.4s forwards ease;
}
@keyframes main_img_01 {
  0% {
    transform: scale(0) rotate(-5deg);
    opacity: 0;
  }
  60%{
    transform: scale(1.2) rotate(5deg);
  }
  100%{
    transform: scale(1);
    opacity: 1;
  }
}

.main_img_02{
width: 71.45833333%;
bottom: 5%;
right: 0;

opacity: 0;
}
.animate_main_img_02{
animation: main_img_02 0.8s forwards ease;
transform-origin: top ;
}
@keyframes main_img_02 {
  0% {
    transform: translateX(-10px) translateY(-20px) rotate(-5deg);
    opacity: 0;
  }
  100%{
    transform: translateX(0) translateY(0) rotate(0);
    opacity: 1;
  }
}

.main_txt_01{
width: 44.79166667%;
top: 21%;
right: 1%;

opacity: 0;
}
.animate_main_txt_01{
animation: main_txt_01 1.2s forwards ease;
transform-origin: bottom;
}
@keyframes main_txt_01 {
  0% {
    transform: rotate(-35deg);
    opacity: 0;
  }
  59.375% {
    transform: rotate(-35deg);
    opacity: 0;
  }
  100%{
    transform: scale(1);
    opacity: 1;
  }
}

.main_txt_02{
width: 22.1875%;
top: 30%;
left: 44%;

opacity: 0;
}
.animate_main_txt_02{
animation: main_txt_02 0.8s forwards ease;
transform-origin: bottom;
}
@keyframes main_txt_02 {
  0% {
    transform: rotate(-35deg);
    opacity: 0;
  }
  100%{
    transform: scale(1);
    opacity: 1;
  }
}

.main_txt_03{
width: 38.95833333%;
bottom: 21%;
left: 3%;

opacity: 0;
}
.animate_main_txt_03 {
  animation: main_txt_03 1.5s forwards ease-out;
  transform-origin: top right;
}
@keyframes main_txt_03 {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(0);
    opacity: 0;
  }
  60% { 
    transform: scale(1.15);
    opacity: 1;
  }
  75% {
    transform: scale(0.92);
  }
  90% {
    transform: scale(1.03);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.main_info{
width: 100%;
top: 0;

opacity: 0;
}
.animate_main_info{
animation: main_info 0.3s forwards ease;
}
@keyframes main_info {
  0% {
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}

.sec_box{
background: url(../images/sec_bg.png);
background-size: contain;
}

.sec04{
padding-bottom: 90px;
}
.sec05{
margin-top: -60px;
position: relative;
}

.sec05 .sec05_btn{
position: relative;
display: block;
width: 87.91666667%;

margin: -10% auto 0;
background: url(../images/sec05_btn_bg.png) no-repeat center center;
background-size: cover;
overflow: hidden;
z-index: 10;
}
#contents .sec05 a.sec05_btn:hover{
opacity: 1;
}
.sec05 .sec05_btn:hover img{
opacity: 0.7;
}