@charset "UTF-8";
/* フォントサイズ基本：15px:強調:18px:注釈：13pxで固定 */
/*---------------------------------------------*/

@media screen and (max-width: 1150px) {
  .spec_lead {
    width: 45%;
    right: -100px;
  }

  .parse1_h2_1_text {
    left: 100px;
    top: 90px;
  }

  section#top .block2 .redBar dl {
    justify-content: space-between;
  }

  section#top .block2 .redBar dl dd p.p1 {
    font-size: 20px;
  }

  section#top .parseBlock .title {
    left: 340px;
  }

  .parse1-img {
    width: 700px;
    top: 105px;
  }

  #info .img1 {
    top: 180px;
  }
}

@media screen and (max-width: 800px) {
  .sp {
    display: block;
  }

  .pc {
    display: none;
  }

  img {
    width: 100%;
  }

  #loader {
    display: none;
    position: fixed;
    top: 47%;
    left: 44%;
    width: 33vw;
    height: 33vw;
  }

  #loader img {
    width: 100%;
  }

  /*---------------------------------------------*/
  /* 背景グラデーション */
  body {
    background: #000;
    min-width: 100%;
    font-size: 3vw;
    line-height: 1.3em;
  }

  /*---------------------------------------------*/
  /* 汎用設定 */
  #contents {
    width: auto !important;
  }

  p.size20 {
    font-size: 3.5vw;
  }

  p.size30 {
    font-size: 4vw;
    margin-bottom: 1em;
  }

  .left180 {
    margin-left: 0px;
  }

  strong {
    font-size: 5vw;
    line-height: 1.2em;
    font-weight: normal;
    color: #d5a400;
  }

  .centerPict {
    text-align: center;
  }

  .centerPict img {
    display: inline-block;
  }

  /*---------------------------------------------*/
  /* TOP */
  section#top .block1 {
    width: 100%;
    height: 620px;
    margin: 0 auto;
    padding-top: 40vw;
    text-align: center;
  }

  section#top .block1 p#ad {
    font-size: 7vw;
    color: #b70000;
    margin-bottom: 30px;
  }

  section#top .block1 .logoW {
    width: 50%;
    margin: 30px auto;
  }

  section#top .block1 .scroll {
    width: 4%;
    margin: 30px auto;
  }

  section#top .block2 {
    width: 100%;
    height: auto;
    margin: 150px auto 0;
    position: relative;
  }

  section#top .block2 .title {
    width: 48%;
    position: absolute;
    top: -50vw;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 2;
  }

  section#top .block2 .redBar {
    width: 100%;
    height: 320px;
    position: relative;
    background: url(_image/top_bar_sp.avif) center top no-repeat;
    background-size: 100% auto;
    position: absolute;
    bottom: -270px;
    left: 0px;
    right: 0;
    margin: 0 auto;
    z-index: 2;
  }

  section#top .block2 .redBar dl {
    width: 94%;
    margin: 50px auto 0;
    align-items: center;
    flex-direction: column;
  }

  section#top .block2 .redBar dl dt {
    width: 40%;
    margin: 0 auto;
  }

  section#top .block2 .redBar dl dd {
    margin-left: auto;
    text-align: left;
    font-size: 3vw;
    line-height: 1.6em;
    width: 100%;
  }

  section#top .block2 .redBar dl dd p.p1 {
    font-size: 3vw;
    margin-top: 20px;
    text-align: center;
  }

  section#top .block2 .redBar dl dd p.p2 {
    font-size: 2.5vw;
    line-height: 1.4;
  }

  section#top .block2 .bgFix {
    width: 100% !important;
    height: auto;
    padding-top: 90%;
    background: url(_image/top_bg.avif) center top no-repeat;
    background-position-y: 30px;
    background-size: 100% auto;
    position: relative;
    z-index: 0;
  }

  section#top .block2 .redBar:before {
    content: none;
  }

  section#top .block2 .redBar:after {
    content: none;
  }

  .title {
    left: 0;
  }

  /* MOVIE */
  section#top .mov {
    width: 90%;
    margin: 100px auto 50px;
  }

  /* parse */
  section#top .parseBlock {
    width: 100%;
    height: auto;
    margin: 0 auto;
    position: relative;
  }

  section#top .parseBlock .title {
    position: static;
    width: 85%;
  }

  section#top .parseBlock .img {
    position: static;
    width: 90%;
  }

  section#parse1 .inner {
    padding-top: 50px;
    width: 100%;
  }

  section#parse1 .inner .title {
    width: 270px;
  }

  .parse1_h2_1_text {
    left: 120px;
    top: 120px;
    width: 100%;
    font-size: 18px;
    line-height: 1.5;
  }

  .parse1-img {
    width: 60%;
    top: 205px;
    right: 20px;
  }

  .parse1_pict2 {
    margin: 0;
  }

  section#parse1 .inner .parse1 {
    width: 100%;
    margin: 150px 0 0 0;
  }

  section#parse1 .inner .parse1_text_area {
    width: 70%;
    left: 75px;
    right: 0px;
    top: 70px;
  }

  section#parse1 .inner .parse1_power .parse1_power_area {
    top: 70px;
    left: 60px;
  }

  section#parse1 .inner .parse1_power {
    height: 500px;
  }

  .img_box {
    flex-direction: column;
  }

  .img_box img {
    width: 100%;
  }

  section#parse1 .inner .parse1_power .img_box {
    width: 90%;
    margin: 0;
  }

  section#parse1 .inner .parse1_power .img_box img {
    margin-top: 30px;
  }

  section#parse1 .inner .detail_text {
    width: 100%;
  }

  .power_img1 {
    position: static;
    width: 90%;
    margin: 50px 0 0 0;
  }

  section#parse2 {
    margin: 0 auto;
  }

  section#parse2 .inner .title {
    width: 300px;
  }

  section#parse2 .inner .lead {
    width: 70%;
    top: 210px;
    left: 75px;
    position: absolute;
    font-size: 3vw;
  }

  .inner .specList {
    width: 100%;
    margin: 20px 0 0;
  }

  section#parse2 .inner {
    width: 100%;
  }
  section#parse2 .sec2_img {
    margin: 0 auto;
  }

  .inner .specList li {
    width: 46%;
    margin: 5px;
  }

  .inner .specList.sl2 {
    width: 100%;
  }
  section#spec .inner1 {
    height: auto;
    padding-top: 40px;
  }

  .spec_info_container {
    flex-direction: column;
    margin-bottom: 30px;
  }

  .spec_info_left,
  .spec_info_right {
    width: 100%;
  }

  section#spec .inner1 .title {
    width: 70%;
    margin: 0 0 30px 0;
  }

  section#spec .inner1 .spec_title {
    font-size: 4.5vw;
    margin: -60% 0 10% 15%;
  }

  .spec_info_right {
    justify-content: center;
  }

  .spec_lead {
    width: 65%;
    right: 0;
    max-width: none;
    font-size: 3.5vw;
    padding: 20px;
    margin: 0 auto;
    border-top: 1px solid #008391;
    border-bottom: 1px solid #008391;
  }
  .spec_lead::before,
  .spec_lead::after {
    display: none;
  }
  section#spec .inner1 .spec_bg1 {
    width: 100%;
    margin: 20px auto 0;
  }

  /* GALLERY */
  #gallery h2 {
    width: 40%;
    margin: 18px auto;
  }

  #gallery {
    width: 90%;
    margin: 0 auto;
  }

  #gallery1 {
    flex-direction: column;
  }

  #gallery1 dt {
    width: 100%;
  }

  .slider {
    width: 100%;
  }

  #gallery1 dd {
    width: 100%;
  }

  .thumbnail-img img {
    padding: 5px;
  }

  dd .slick-list div.slick-track:last-of-type {
    width: 100% !important;
  }

  /* INFO */
  #info {
    width: 100%;
    margin: 0px auto;
    padding-top: 10vw;
    height: auto;
  }

  #info .img1 {
    width: 80%;
    position: static;
    margin: 0 auto;
  }

  #info .inner {
    width: 80%;
    margin: 0 auto;
    position: static;
  }

  #info .inner p.days {
    font-size: 5vw;
    text-align: left;
    line-height: 1.5em;
    margin-top: 20px;
  }

  #info .inner p.price {
    font-size: 2.6vw;
    text-align: left;
  }

  #info .inner p.attention {
    font-size: 1.8vw;
    line-height: 1.2em;
    margin-top: 20px;
  }

  .btn {
    width: 70%;
    margin: 20px auto 40px;
  }

  #contents {
    padding-bottom: 7vw;
  }

  .w-60_sp {
    width: 60%;
  }

  .w-85_sp {
    width: 85%;
  }

  /*-----------------------------------------------end media*/
}

@media screen and (max-width: 500px) {
  section#top .block2 .redBar dl dd p.p1 {
    font-size: 4vw;
  }

  section#top .block2 .redBar dl dd p.p2 {
    font-size: 3vw;
  }

  .parse1_h2_1_text {
    left: 80px;
    top: 70px;
  }
}
