@charset "UTF-8";
/* ==========================================================
  フォント
========================================================== */
@media screen and (max-width: 750px) {
  body {
    overflow-x: hidden;
  }
}

.mainvisual {
  background: url("../img/top/bg_mv_left.jpg") repeat-x center top;
  position: relative;
}
@media screen and (min-width: 751px) {
  .mainvisual {
    min-width: 1260px;
    overflow-x: hidden;
  }
  .mainvisual::after {
    display: block;
    content: "";
    background: url("../img/top/bg_mv_right.jpg") repeat-x center right;
    width: 50%;
    height: 927px;
    position: absolute;
    top: 0;
    right: 0;
  }
}
@media screen and (max-width: 750px) {
  .mainvisual {
    background: #e94628;
    text-align: center;
  }
}
.mainvisual .mv_inner {
  background: url("../img/top/mainvisual.jpg") no-repeat center top;
  height: 877px;
  position: relative;
}
@media screen and (min-width: 751px) {
  .mainvisual .mv_inner {
    z-index: 2;
    height: 927px;
    background-size: auto 100%;
  }
}
@media screen and (max-width: 750px) {
  .mainvisual .mv_inner {
    background: url("../img/top/mainvisual_sp.jpg") no-repeat center top;
    height: auto;
    padding: 0 0 4vw;
  }
}
.mainvisual .mv_content h1 img,
.mainvisual .mv_content .mv_text img {
  max-width: 100%;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 751px) {
  .mainvisual .mv_content h1 {
    width: 492px;
    position: absolute;
    left: 50%;
    top: 10px;
    margin-left: -520px;
    z-index: 1;
  }
}
@media screen and (max-width: 750px) {
  .mainvisual .mv_content h1 {
    width: 80%;
    margin: 0 auto;
    padding: 38% 0 0;
  }
}
.mainvisual .mv_content .mv_text {
  position: absolute;
}
@media screen and (min-width: 751px) {
  .mainvisual .mv_content .mv_text {
    width: 232px;
    top: 0;
    left: 50%;
    margin-left: -590px;
  }
}
@media screen and (max-width: 750px) {
  .mainvisual .mv_content .mv_text {
    width: 40%;
    top: 3px;
    left: 3px;
  }
}
.mainvisual .mv_content .img_date {
  position: absolute;
}
@media screen and (min-width: 751px) {
  .mainvisual .mv_content .img_date {
    width: 232px;
    top: 10px;
    left: 50%;
    margin-left: -32px;
  }
}
@media screen and (max-width: 750px) {
  .mainvisual .mv_content .img_date {
    width: 36%;
    top: 124vw;
    right: 1vw;
  }
  .mainvisual .mv_content .img_date img {
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 750px) {
  .mainvisual .mv_content .mv_banner_area {
    padding: 15vw 0 0;
  }
  .mainvisual .mv_content .mv_banner_area div {
    margin: 3vw 0 0;
  }
  .mainvisual .mv_content .mv_banner_area div img {
    max-width: 100%;
    width: 100%;
    height: auto;
  }
}
@media screen and (min-width: 751px) {
  .mainvisual .mv_content .mv_banner_area {
    width: 513px;
    position: absolute;
    top: 0;
    right: 0;
  }
  .mainvisual .mv_content .mv_banner_area > div {
    width: 100%;
    position: relative;
  }
  .mainvisual .mv_content .mv_banner_area > div p {
    width: auto;
    height: 100%;
    position: absolute;
    top: 0;
    right: -255px;
    z-index: 2;
  }
  .mainvisual .mv_content .mv_banner_area .bnr_dlc {
    margin: 60px 0 0 -210px;
    height: 299px;
  }
  .mainvisual .mv_content .mv_banner_area .bnr_plus {
    margin: 8px 0 0;
    height: 154px;
  }
  .mainvisual .mv_content .mv_banner_area .bnr_ymedal {
    margin: 46px 0 0 46px;
    height: 161px;
  }
  .mainvisual .mv_content .mv_banner_area .bnr_ymedal p {
    right: -72px;
  }
}
@media screen and (min-width: 1281px) {
  .mainvisual .mv_content .mv_banner_area {
    width: 39.8%;
  }
  .mainvisual .mv_content .mv_banner_area .bnr_dlc {
    margin: 60px 0 0 20px;
  }
  .mainvisual .mv_content .mv_banner_area > div::after {
    content: "";
    display: block;
    background-repeat: repeat-x;
    background-position: 0 0;
    width: calc(100% - 520px);
    position: absolute;
    top: 0;
    right: 0;
  }
  .mainvisual .mv_content .mv_banner_area > div p {
    width: auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
  }
  .mainvisual .mv_content .mv_banner_area > div.bnr_dlc::after {
    background-image: url("../img/top/bnr_dlc_rep.png");
    height: 299px;
  }
  .mainvisual .mv_content .mv_banner_area > div.bnr_plus::after {
    background-image: url("../img/top/banner_plus_rep.png");
    height: 154px;
  }
  .mainvisual .mv_content .mv_banner_area > div.bnr_ymedal::after {
    background-image: url("../img/top/bnr_pkg_tokuten_rep.png");
    width: calc(100% - 580px);
    height: 161px;
  }
}
@media screen and (min-width: 751px) {
  .mainvisual .mv_content .mv_bnr {
    top: 560px;
    position: absolute;
    left: 50%;
    z-index: 9999;
    margin-left: 13vw;
  }
  .mainvisual .mv_content .mv_bnr img {
    max-width: 100%;
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 750px) {
  .mainvisual .mv_content .mv_bnr {
    width: 90%;
    margin: 0 auto 2vw;
  }
  .mainvisual .mv_content .mv_bnr img {
    width: 100%;
    height: auto;
  }
}
@media screen and (min-width: 751px) {
  .mainvisual .mv_content .update_bnr {
    top: 590px;
    position: absolute;
    left: 50%;
    z-index: 1;
    margin-left: 10vw;
  }
  .mainvisual .mv_content .update_bnr img {
    max-width: 100%;
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 750px) {
  .mainvisual .mv_content .update_bnr {
    width: 90%;
    margin: 0 auto 2vw;
  }
  .mainvisual .mv_content .update_bnr img {
    width: 100%;
    height: auto;
  }
}
.mainvisual .mv_content .update_bnr.new::before {
  top: -15px;
}
@media screen and (min-width: 751px) {
  .mainvisual .mv_content .famitsu_bnr {
    top: 660px;
    position: absolute;
    left: 50%;
    z-index: 1;
    margin-left: 13vw;
  }
  .mainvisual .mv_content .famitsu_bnr img {
    max-width: 100%;
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 750px) {
  .mainvisual .mv_content .famitsu_bnr {
    width: 90%;
    margin: 0 auto;
  }
  .mainvisual .mv_content .famitsu_bnr img {
    width: 100%;
    height: auto;
  }
}

#logo_device {
  z-index: 3;
}
@media screen and (min-width: 751px) {
  #logo_device {
    top: 0;
    left: 50%;
    margin-left: 304px;
  }
}
@media screen and (max-width: 750px) {
  #logo_device {
    width: 260px;
    top: 120px;
    right: 10px;
  }
}

@media screen and (min-width: 751px) {
  .gnav {
    background: none;
    position: absolute;
    bottom: 0;
    margin: 0;
  }
}

.slick-arrow {
  display: block;
  width: 44px;
  height: 44px;
  position: absolute;
  top: 50%;
  border: none;
  font-size: 0;
  cursor: pointer;
  outline: none;
  z-index: 3;
}
@media screen and (max-width: 750px) {
  .slick-arrow {
    width: 62px;
    height: 62px;
  }
}
.slick-arrow.slick-prev {
  background: url("/yw4/img/top/prev.png") no-repeat center/contain;
}
@media screen and (max-width: 750px) {
  .slick-arrow.slick-prev {
    background-size: 62px;
  }
}
.slick-arrow.slick-next {
  background: url("/yw4/img/top/next.png") no-repeat center/contain;
}
@media screen and (max-width: 750px) {
  .slick-arrow.slick-next {
    background-size: 62px;
  }
}

/* ==========================================================
    BEST
  ========================================================== */
#bestArea {
  -webkit-box-shadow: 0px 6px 6px 2px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 6px 6px 2px rgba(0, 0, 0, 0.2);
  position: relative;
  z-index: 2;
  background-image: url(/yw-switch/img/top/bg_best_rep_top.jpg), url(/yw-switch/img/top/bg_best_rep_bottom.jpg), url(/yw-switch/img/top/bg_best_rep.jpg);
  background-repeat: repeat-x, repeat-x, repeat;
  background-position: top left, bottom left, 0 0;
}
@media screen and (min-width: 751px) {
  #bestArea {
    padding: 12px 0 44px;
  }
}
@media screen and (max-width: 750px) {
  #bestArea {
    padding: 1.2vw 0 5.4vw;
  }
}
#bestArea .main {
  margin: 0 auto 30px;
}
@media screen and (min-width: 751px) {
  #bestArea .main {
    width: 1130px;
    position: relative;
    left: -32px;
  }
}
@media screen and (min-width: 751px) {
  #bestArea .box {
    width: 1120px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 751px) {
  #bestArea .box .bnr {
    float: left;
    width: 510px;
  }
}
@media screen and (max-width: 750px) {
  #bestArea .box .bnr {
    width: 87%;
    margin: 0 auto 3vw;
  }
}
@media screen and (min-width: 751px) {
  #bestArea .box .bnr li {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 750px) {
  #bestArea .box .bnr li {
    margin-bottom: 2vw;
  }
}
@media screen and (min-width: 751px) {
  #bestArea .box .txt {
    float: right;
  }
}
@media screen and (max-width: 750px) {
  #bestArea .box .txt {
    width: 90%;
    margin: 0 auto;
  }
}

.news {
  background: url("../img/top/bg_news.gif") repeat;
  padding: 42px 0 40px;
}
@media screen and (max-width: 750px) {
  .news {
    padding: 4vw 0 4vw;
  }
  .news .slick-slide > div {
    margin: 0 3.5%;
  }
}
.news .inner {
  position: relative;
}
@media screen and (max-width: 750px) {
  .news .inner {
    padding: 0;
  }
}
.news .inner h2 {
  width: 350px;
  margin: 0 auto 15px;
}
@media screen and (max-width: 750px) {
  .news .inner h2 {
    width: auto;
    margin: 0 0 10px;
  }
}
.news .inner .topics_slider {
  margin: 0 auto;
  overflow: hidden;
}
@media screen and (min-width: 751px) {
  .news .inner .topics_slider {
    width: 1180px;
    padding: 0 60px;
  }
}
@media screen and (max-width: 750px) {
  .news .inner .topics_slider {
    width: 100%;
    margin: 3vw 0;
  }
}
.news .inner .topics_slider .topics_slider_item {
  background: #fff;
  border-radius: 10px;
  list-style-type: none;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 751px) {
  .news .inner .topics_slider .topics_slider_item {
    -webkit-box-shadow: 0px 7px 0px 0px rgba(0, 0, 0, 0.3);
            box-shadow: 0px 7px 0px 0px rgba(0, 0, 0, 0.3);
    width: 328px !important;
    margin: 0 11px;
  }
}
@media screen and (max-width: 750px) {
  .news .inner .topics_slider .topics_slider_item {
    -webkit-box-shadow: 0px 4px 0px 0px rgba(0, 0, 0, 0.3);
            box-shadow: 0px 4px 0px 0px rgba(0, 0, 0, 0.3);
  }
}
.news .inner .topics_slider .topics_slider_item a {
  color: #0012c2;
}
.news .inner .topics_slider .topics_slider_item p {
  padding: 3px 3px 0;
}
.news .inner .topics_slider .topics_slider_item p img {
  border-radius: 10px 10px 0 0;
}
.news .inner .topics_slider .topics_slider_item dl {
  font-weight: bolder;
  padding: 10px 15px 10px;
  height: 140px;
}
.news .inner .topics_slider .topics_slider_item dl dt {
  font-size: 13px;
}
.news .inner .topics_slider .topics_slider_item dl dd {
  color: #000;
  font-size: 16px;
  line-height: 1.6;
}
@media screen and (max-width: 750px) {
  .news .inner .topics_slider .topics_slider_item dl {
    height: 240px;
    padding: 2.5vw 4vw 3vw;
  }
  .news .inner .topics_slider .topics_slider_item dl dt {
    font-size: 3.2vw;
  }
  .news .inner .topics_slider .topics_slider_item dl dd {
    font-size: 3.2vw;
    line-height: 1.6;
  }
}
@media screen and (min-width: 751px) {
  .news .inner .btn_news {
    width: 140px;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: 372px;
  }
}
@media screen and (max-width: 750px) {
  .news .inner .btn_news {
    text-align: center;
  }
}
.news .topicsNews {
  text-align: center;
}
@media screen and (min-width: 751px) {
  .news .topicsNews {
    width: 814px;
    margin: 0 auto 30px;
  }
}
@media screen and (max-width: 750px) {
  .news .topicsNews {
    width: 90%;
    margin: 0 auto 4vw;
  }
  .news .topicsNews img {
    width: 100%;
  }
}
.news .slick-arrow {
  margin: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.news .slick-arrow.slick-prev {
  left: 5px;
}
@media screen and (max-width: 750px) {
  .news .slick-arrow.slick-prev {
    left: 4.5%;
  }
}
.news .slick-arrow.slick-next {
  right: 5px;
}
@media screen and (max-width: 750px) {
  .news .slick-arrow.slick-next {
    right: 4.5%;
  }
}

#main {
  background: #fff;
}
@media screen and (min-width: 751px) {
  #main {
    min-width: 1260px;
  }
}

section {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 751px) {
  section {
    min-width: 1290px;
    overflow: hidden;
  }
}

@media screen and (min-width: 751px) {
  .main_contents01 {
    background: url("../img/top/bg_main_contents01_2.jpg") no-repeat center/cover;
    height: 1100px;
    position: relative;
    overflow: visible;
  }
}
@media screen and (max-width: 750px) {
  .main_contents01 {
    background: url("../img/top/bg_main_contents01_2_sp.jpg") no-repeat center 26vw/contain;
    margin: 0 0 -10%;
  }
}
.main_contents01 .inner_contents {
  background: url("../img/top/bg_contents01_2.png") no-repeat center 0;
}
@media screen and (min-width: 751px) {
  .main_contents01 .inner_contents {
    height: 990px;
  }
  .main_contents01 .inner_contents h2 {
    position: absolute;
    top: -124px;
    left: -12%;
  }
  .main_contents01 .inner_contents .tit {
    position: absolute;
    left: 50%;
    top: 87px;
    margin-left: -564px;
  }
  .main_contents01 .inner_contents .tit.new::before {
    right: 130px;
    top: 0px;
  }
}
@media screen and (min-width: 1600px) {
  .main_contents01 .inner_contents h2 {
    left: 0;
  }
}
@media screen and (max-width: 750px) {
  .main_contents01 .inner_contents {
    background: none;
    height: auto;
    padding: 0 0 18vw;
  }
  .main_contents01 .inner_contents h2 {
    margin: 0 0 3vw;
  }
  .main_contents01 .inner_contents .tit.new::before {
    right: 32vw;
    top: 3vw;
  }
}
.main_contents01 .inner_contents .frame {
  text-align: center;
}
@media screen and (min-width: 751px) {
  .main_contents01 .inner_contents .frame {
    background: url("../img/top/frame_01.png") no-repeat center 0/100%;
    width: 650px;
    height: 380px;
    padding: 35px 0 38px 130px;
    position: absolute;
    top: 598px;
    left: 50%;
    margin-left: -94px;
  }
}
.main_contents01 .inner_contents .frame .text {
  font-size: 18px;
  font-weight: bolder;
  text-align: left;
  line-height: 1.4;
  margin: 12px 0 15px 80px;
}
.main_contents01 .inner_contents .frame .text small {
  font-size: 12px;
  display: block;
  margin: 3px 0 0;
}
.main_contents01 .inner_contents .frame .btn {
  width: 220px;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .main_contents01 .inner_contents .frame {
    background: url("../img/top/frame_01_sp.png") no-repeat center 0/100%;
    width: 95%;
    height: auto;
    padding: 6vw 0 7vw;
    margin: 135vw auto 0;
  }
  .main_contents01 .inner_contents .frame .text {
    font-size: 3vw;
    font-weight: bolder;
    text-align: center;
    line-height: 1.5;
    margin: 12px 0 15px;
  }
  .main_contents01 .inner_contents .frame .text small {
    font-size: 2.6vw;
    margin: 3px 0 0;
  }
  .main_contents01 .inner_contents .frame .btn {
    width: 46%;
    margin: 3vw auto 0;
  }
}

.main_contents02 {
  z-index: 2;
}
@media screen and (min-width: 751px) {
  .main_contents02 {
    padding: 8% 0 10%;
    margin: -15.5% 0 0;
  }
  .main_contents02::after {
    content: "";
    display: block;
    background: url("../img/top/bg_contents02_01.png") no-repeat 0 0;
    width: 810px;
    height: 736px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -125px;
    z-index: 3;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
@media (min-width: 1281px) and (max-width: 1400px) {
  .main_contents02 {
    margin: -15% 0 0;
  }
}
@media (min-width: 1401px) and (max-width: 1600px) {
  .main_contents02 {
    margin: -14.5% 0 0;
  }
}
@media (min-width: 1601px) and (max-width: 1800px) {
  .main_contents02 {
    margin: -14% 0 0;
  }
}
@media (min-width: 1801px) and (max-width: 2000px) {
  .main_contents02 {
    margin: -13% 0 0;
  }
}
@media (min-width: 2001px) and (max-width: 3000px) {
  .main_contents02 {
    margin: -12% 0 0;
  }
}
@media screen and (min-width: 3001px) {
  .main_contents02 {
    margin: -11% 0 0;
  }
}
@media screen and (max-width: 750px) {
  .main_contents02 {
    margin: -15% 0 0;
    overflow: hidden;
  }
}
.main_contents02 .inner_contents {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 751px) {
  .main_contents02 .inner_contents {
    width: 150%;
    height: 680px;
    padding: 0 20%;
    margin: -30px 0 0 -25%;
    transform: rotate(-2.6deg) translate3d(0, 0, 0);
    -webkit-transform: rotate(-2.6deg) translate3d(0, 0, 0);
  }
}
.main_contents02 .inner_contents .contents_block {
  background: url("../img/top/bg_main_contents02.jpg") no-repeat center 0/cover;
  max-width: 100%;
  height: 900px;
}
@media screen and (min-width: 751px) {
  .main_contents02 .inner_contents .contents_block {
    transform: rotate(2.6deg) translate3d(0, 0, 0);
    -webkit-transform: rotate(2.6deg) translate3d(0, 0, 0);
    margin: -100px auto 0;
    position: relative;
  }
  .main_contents02 .inner_contents .contents_block::after {
    content: "";
    display: block;
    background: url("../img/top/bg_contents02_02.png") no-repeat 0 0;
    width: 1950px;
    height: 736px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -770px;
    z-index: 3;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
@media screen and (max-width: 750px) {
  .main_contents02 .inner_contents .contents_block {
    background: url("../img/top/bg_main_contents02_sp.png") no-repeat center 0/100%;
    height: auto;
    padding: 206vw 0 0;
  }
}
.main_contents02 .frame {
  background: url("../img/top/frame_02.png") no-repeat center 0/100%;
  width: 500px;
  height: 450px;
  padding: 10px 0 38px;
  text-align: center;
}
@media screen and (min-width: 751px) {
  .main_contents02 .frame {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -620px;
    -webkit-transform: translateY(-300px);
            transform: translateY(-300px);
  }
  .main_contents02 .frame .tit {
    width: 500px;
  }
  .main_contents02 .frame .tit.new::before {
    right: 10px;
    top: 20px;
  }
  .main_contents02 .frame .text {
    font-size: 18px;
    font-weight: bolder;
    line-height: 1.4;
    margin: 12px 0 15px;
  }
  .main_contents02 .frame .btn {
    width: 220px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 750px) {
  .main_contents02 .frame {
    width: 80%;
    height: auto;
    padding: 0 0 8vw;
    margin: 0 auto;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .main_contents02 .frame .tit {
    width: 100%;
  }
  .main_contents02 .frame .tit.new::before {
    right: 4vw;
    top: 6vw;
  }
  .main_contents02 .frame .text {
    font-size: 3vw;
    font-weight: bolder;
    line-height: 1.5;
    margin: 12px 0 15px;
  }
  .main_contents02 .frame .text small {
    font-size: 2.6vw;
    margin: 3px 0 0;
  }
  .main_contents02 .frame .btn {
    width: 46%;
    margin: 0 auto;
  }
}

.main_contents03 {
  background: #231815;
  height: 930px;
  padding: 15.5% 0 75px;
}
@media screen and (min-width: 751px) {
  .main_contents03 {
    margin: -20% 0 0;
  }
}
@media screen and (max-width: 750px) {
  .main_contents03 {
    height: auto;
    padding: 12vw 0 10vw;
    margin: -1.5vw 0 0;
  }
  .main_contents03 .inner_contents {
    padding: 55vw 0;
  }
}
.main_contents03 .bg_anime_left,
.main_contents03 .bg_anime_right {
  background-repeat: repeat-x;
  background-size: auto 100%;
  width: 100%;
  height: 252px;
  position: absolute;
}
.main_contents03 .bg_anime_left {
  background-image: url("../img/top/bg_slide01.jpg");
  -webkit-animation: bg-slider01 19s linear infinite;
          animation: bg-slider01 19s linear infinite;
}
.main_contents03 .bg_anime_right {
  background-image: url("../img/top/bg_slide02.jpg");
  -webkit-animation: bg-slider02 19s linear infinite;
          animation: bg-slider02 19s linear infinite;
  bottom: 75px;
}
.main_contents03 .frame {
  background: url("../img/top/frame_03.png") no-repeat center 0/100%;
  width: 680px;
  height: 220px;
  text-align: center;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media screen and (min-width: 751px) {
  .main_contents03 .frame {
    top: 57.5%;
  }
  .main_contents03 .frame.new::before {
    right: 87px;
    top: -15px;
  }
  .main_contents03 .frame .tit {
    width: 680px;
  }
  .main_contents03 .frame .tit.new::before {
    right: 110px;
    top: -10px;
  }
  .main_contents03 .frame .text {
    font-size: 18px;
    font-weight: bolder;
    line-height: 1;
    margin: -15px 0 12px;
  }
  .main_contents03 .frame .btn {
    width: 220px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 750px) {
  .main_contents03 .frame {
    background: url("../img/top/frame_03_sp.png") no-repeat center 0/100%;
    width: 100%;
    height: auto;
    top: 50%;
    padding: 0 0 7vw;
  }
  .main_contents03 .frame.new::before {
    right: 50px;
    top: 0;
  }
  .main_contents03 .frame .tit {
    width: 100%;
  }
  .main_contents03 .frame .tit.new::before {
    right: 6vw;
    top: 2vw;
  }
  .main_contents03 .frame .text {
    font-size: 3vw;
    font-weight: bolder;
    line-height: 1.5;
    margin: 12px 0 15px;
  }
  .main_contents03 .frame .text small {
    font-size: 2.6vw;
    margin: 3px 0 0;
  }
  .main_contents03 .frame .btn {
    width: 46%;
    margin: 0 auto;
  }
}

@-webkit-keyframes bg-slider01 {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -1330px 0;
  }
}
@keyframes bg-slider01 {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -1330px 0;
  }
}
@-webkit-keyframes bg-slider02 {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 1330px 0;
  }
}
@keyframes bg-slider02 {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 1330px 0;
  }
}
#movie_rendou {
  background: url("../img/purapura/bg_movie.png") #0f67e2 no-repeat center 0;
  text-align: center;
  position: relative;
}
@media screen and (min-width: 751px) {
  #movie_rendou {
    height: 348px;
    margin: 0;
  }
  #movie_rendou .img {
    position: absolute;
    top: -72px;
    left: 50%;
    margin-left: -506px;
  }
  #movie_rendou .img::before {
    left: 420px;
    top: 115px;
  }
}
@media screen and (max-width: 750px) {
  #movie_rendou {
    background: url("../img/purapura/bg_contents05_sp.png") no-repeat center 0/contain;
    margin: -10vw 0 0;
  }
  #movie_rendou .img::before {
    left: 52vw;
    top: 22vw;
  }
}
#movie_rendou .btn {
  position: absolute;
}
@media screen and (min-width: 751px) {
  #movie_rendou .btn {
    width: 220px;
    top: 242px;
    left: 50%;
    margin-left: -290px;
  }
}
@media screen and (max-width: 750px) {
  #movie_rendou .btn {
    bottom: 12vw;
    left: 14vw;
  }
}

.device_area {
  background: url("../img/top/bg_device.jpg") repeat-x;
  width: 100%;
  height: 535px;
  text-align: center;
  position: relative;
}
@media screen and (min-width: 751px) {
  .device_area {
    min-width: 1290px;
    overflow-x: hidden;
  }
  .device_area::after {
    display: block;
    content: "";
    background: #0976d2;
    width: 50%;
    height: 535px;
    position: absolute;
    top: 0;
    right: 0;
  }
}
@media screen and (max-width: 750px) {
  .device_area {
    height: auto;
  }
}
@media screen and (min-width: 751px) {
  .device_area p {
    width: 1600px;
    height: 535px;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: 2;
  }
}

.sns {
  width: 100%;
}
@media screen and (min-width: 751px) {
  .sns {
    background: url("../img/top/bg_sns.png") repeat-x center top;
    height: 740px;
    padding: 60px 0 50px;
  }
  .sns .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    padding-right: 56px;
  }
  .sns .inner .bnr_list {
    padding: 0 60px;
  }
  .sns .inner .bnr_list .bnr_list_item {
    margin: 0 0 10px;
  }
  .sns .inner .bnr_list .bnr_list_item img {
    width: 100%;
  }
  .sns .inner .bnr_list .bnr_slider {
    width: 510px;
  }
}
@media screen and (max-width: 750px) {
  .sns {
    background: #fbdc3b;
    height: auto;
    padding: 8vw 5vw 4vw;
  }
  .sns .inner {
    padding: 0 0 4vw 0;
  }
  .sns .inner .bnr_list {
    width: 81%;
    margin: 0 auto;
  }
  .sns .inner .bnr_list img {
    width: 100%;
    height: auto;
  }
  .sns .inner .bnr_list .bnr_list_item {
    margin: 0 0 20px;
  }
  .sns .inner .bnr_list .bnr_slider {
    margin: 0 0 8vw;
  }
}
.sns .twitter {
  text-align: right;
}
@media screen and (min-width: 751px) {
  .sns .twitter {
    width: 470px;
  }
}
@media screen and (max-width: 750px) {
  .sns .twitter {
    width: 90%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 750px) {
  .sns .twitter .twitter-timeline {
    width: 100% !important;
  }
}
@media screen and (min-width: 751px) {
  .sns .twitter .follow {
    width: 200px;
    float: right;
    margin: 10px 0 20px;
  }
}
@media screen and (max-width: 750px) {
  .sns .twitter .follow {
    margin-top: 2vw;
  }
}
@media screen and (max-width: 750px) {
  .sns .twitter .zh_sns {
    padding-top: 4vw;
  }
}
.sns .twitter .zh_sns img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 750px) {
  .sns .slick-dots {
    padding: 0;
  }
}
.sns .slick-arrow {
  margin: -46px 0 0;
}
@media screen and (max-width: 750px) {
  .sns .slick-arrow {
    margin: -13% 0 0;
  }
}
.sns .slick-arrow.slick-prev {
  left: -55px;
}
@media screen and (max-width: 750px) {
  .sns .slick-arrow.slick-prev {
    left: -16%;
  }
}
.sns .slick-arrow.slick-next {
  right: -55px;
}
@media screen and (max-width: 750px) {
  .sns .slick-arrow.slick-next {
    right: -16%;
  }
}
.sns .slick-dots {
  text-align: center;
  width: 100%;
  padding: 10px 0 0;
}
.sns .slick-dots li {
  display: inline-block;
  margin: 0 6px;
  position: relative;
}
.sns .slick-dots li button {
  background: none;
  border: 1px solid #320004;
  cursor: pointer;
  outline: none;
  font-size: 0;
  width: 14px;
  padding: 12px 0 0;
  border-radius: 50%;
  background: #fff;
}
@media screen and (max-width: 750px) {
  .sns .slick-dots li button {
    width: 20px;
    padding: 18px 0 0;
  }
}
.sns .slick-dots li.slick-active button {
  background: #0c96e5;
}

#movieArea {
  text-align: center;
}
@media screen and (min-width: 751px) {
  #movieArea {
    background: #fdad00 url(/yw4/img/top/bg_chara2.jpg) no-repeat bottom center;
    padding: 40px 0 140px;
  }
}
@media screen and (max-width: 750px) {
  #movieArea {
    background-color: #fdad00;
    padding: 4vw 2vw 4.5vw;
  }
}
@media screen and (min-width: 751px) {
  #movieArea .box {
    width: 1160px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 750px) {
  #movieArea .box {
    margin-bottom: 4vw;
  }
  #movieArea .box img {
    width: 100%;
  }
}
@media screen and (min-width: 751px) {
  #movieArea .box .lBox {
    float: left;
  }
}
@media screen and (max-width: 750px) {
  #movieArea .box .lBox {
    margin-bottom: 3vw;
  }
}
@media screen and (min-width: 751px) {
  #movieArea .box .lBox p {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 750px) {
  #movieArea .box .lBox p {
    margin-bottom: 3vw;
  }
}
#movieArea .box .lBox p img {
  height: auto;
}
@media screen and (min-width: 751px) {
  #movieArea .box .rBox {
    float: right;
  }
}
@media screen and (min-width: 751px) {
  #movieArea .box .rBox p {
    margin-bottom: 10px;
  }
}
#movieArea .box .rBox p:nth-child(1) {
  margin-bottom: 2vw;
}
@media screen and (max-width: 750px) {
  #movieArea .box p {
    width: 90%;
    margin: 0 auto;
  }
}
#movieArea .box p.new:before {
  top: -12px;
  right: 4px;
}
#movieArea .why {
  position: relative;
}
@media screen and (min-width: 751px) {
  #movieArea .why {
    width: 1160px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 750px) {
  #movieArea .why {
    width: 90%;
    margin: 0 auto;
  }
  #movieArea .why img {
    height: auto;
  }
}
#movieArea .why.new::before {
  right: 15px;
  top: 5px;
}