@charset "utf-8";
body{
    background-color:#110507;
    color:#fff;
}
body section *{
    font-family: 'Noto Sans JP' , sans-serif;
}
section{
    background-color: #110507;
}
.number,
[data-price-tax]{
    font-family: 'Poppins' , sans-serif;
}
.sec-inner{
    padding:0;
}
.inner-width{
    max-width: calc(1100px + 2rem);
}

.header-box .logo {
    width: 10%;
}

@media (max-width: 1200px){
  .header-box .logo {
      width: 15%;
  }
}
@media (max-width: 768px){
  .header-box .logo {
      width: 25%;
  }
}
@media (max-width: 480px){
    .header-box .logo {
        width: 30%;
    }
  }
.firstView-wrap{
    position:relative;
    text-align:center;
    max-width:1920px;
    margin:0 auto;
    overflow:hidden;
}

.firstView-wrap .firstpcspec-image{
  position:absolute;
  z-index:1;
  left:calc((100% - 1100px) / 2);
  bottom:100px;
  width:calc(1100px + 410px);
}
@media (max-width:1920px){
  .firstView-wrap{
    padding-bottom:calc((-100vw + 1920px) / 2);
/*     padding-bottom:calc((100vw - 1920px) / 2 - ((100vw - 1920px) / 2) * 2); */
  }
  .firstView-wrap .firstpcspec-image{
    position:absolute;
    z-index: 0;
    left:calc((100% - 1100px) / 2);
    bottom:5rem;
    width:calc(1100px + 410px);
  }
}

@media (max-width:1100px){
  .firstView-wrap{
    padding-bottom:36%;
  }
  .firstView-wrap .firstpcspec-image{
    position:absolute;
    z-index:1;
    left:1rem;
    bottom:5rem;
    width:calc(100% - 2rem + 37%);
  }
}
@media (max-width:768px){
    .firstView-wrap{
        padding-bottom:0;
    }
}

.image{
    display: inline-block;
}

.image img{
    width:100%;
}

#second{
    position:relative;
}



.wheel_color{
    background-color: #340007;
    position:relative;
    height: 3.5rem;
    margin-top:20rem;
}
.wheel_color > .wheel_color-inner{
  position:absolute;
  bottom:1rem;
  width: 100%;
}

.wheel_color-box{
    display:flex;
    justify-content: space-around;
    margin:0 -0.5rem;
}
.wheel_color-box > .flex-item{
    width:35%;
    padding:0 0.5rem;
}

@media (max-width:1200px){
    .wheel_color{
      margin-top:35%;
  }
  .wheel_color-box > .flex-item{
      width:40%;
  }
}

@media (max-width:768px){
    .wheel_color{
      margin-top:30%;
  }
  .wheel_color-box > .flex-item{
      width:50%;
  }
}
.gallery{
    display:flex;
    flex-wrap:wrap;
    margin: 0 -0.5rem;
}
.gallery > .flex-item{
    width:calc((100% / 4) * 1 - 0.01px);
    padding:0 0.5rem;
}
.wheel_color > .wheel_color-inner > .inner-width,
.row-block > .inner-width{
    margin:0 auto;
    padding: 0 1rem;
}
.gallery-block{
    background-color: rgba(195,13,35,0.5);
    padding:1rem 0;
}
.gallery .flex-item{
    display:flex;
    align-items:center;
    justify-content:center;
}
.gallery .image01-image img{
    margin:-1.5rem 0 -1.5rem 0;
}
@media (max-width:768px){
    .gallery > .flex-item{
        width:calc((100% / 2) * 1 - 0.01px);
        margin-top:1rem;
    }
    .gallery .image01-image img{
        margin: 0;
        margin-top:-5rem;
    }
    .gallery-block{
        padding-bottom:1.5rem;
    }
}
@media (max-width:480px){
    .gallery-block{
        padding-bottom:1rem;
    }
    .gallery .image01-image img{
        margin: 0;
        margin-top:-3rem;
    }
}



.price-box{
    display:flex;
    flex-wrap:wrap;
    margin:0 -1rem;
    margin-top:5rem;
    font-size: 1.6rem;
    line-height: 1;
}
.price-box > .flex-item{
    padding:0 1rem;
    margin-top:1rem;
}
.price-box > .item_01{
    width:calc((100% / 12) * 6.5 - 0.01px);
}
/* .price-box > .item_02{
    width:calc((100% / 12) * 2 - 0.01px);
} */
.price-box > .item_02 img{
    transform: rotate(-90deg);
    width: 65%;
}
.price-box > .item_03{
    width:calc((100% / 12) * 5.5 - 0.01px);
}
@media (max-width:768px){
    .price-box{
      max-width:400px;
      margin:0 auto;
      margin-top:5rem;
    }
    .option{
      text-align:center;
    }
    .price-box > .flex-item{
        width:calc((100% / 2) * 1 - 0.01px);
        width:100%;
    }
    .price-box > .item_02{
        text-align:center;
        margin:-2rem 0;
    }
    .price-box > .item_02 img{
        transform: rotate(0deg);
    }
}
@media (max-width:480px){
    .price-box > .flex-item{
        width:calc((100% / 1) * 1 - 0.01px);
    }
    .option{
      text-align:left;
    }
}


.taxplus,
.small{
    font-size:0.75em;
}
[data-price-text]{
    font-size:0.7em;
}
.taxplus [data-price-tax]{
    font-size:1.2em;
}
.set{
    display:inline-block;
    text-align:center;
    font-size:0.6em;
    border:1px solid #fff;
    border-radius:1rem;
    width:6rem;
    padding:0.25rem;
    margin-right:0.5rem
}
.set + span{
       font-size: 1.3em;
}

.row-box01 ~ div{
    margin-top:0.5rem;
}

.item_03 .row-box02{
    display:flex;
    align-items:flex-start;
}
.campaign_price{
    color:#c30d23;
}
.campaign_price > .number{
    font-size:2em;
}

.row-box01 ~ .option{
    margin-top:5rem;
    font-size:0.8rem;
    line-height:1.5;
    text-align: left;
}





/* .overfender{
    text-align:center;
    margin-top:5rem;
    padding: 0 1rem;
} */










/*Lightbox*/
.modal-cover{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index: 10;
}
[data-modaltoggle]{
    transition:opacity 0.5s ease;
    opacity:0;
    pointer-events: none;
}
[data-modaltoggle="close"]{
    opacity:0;
    pointer-events: none;
}

[data-modaltoggle="open"] .modal-cover{
    background-color:rgba(0,0,0,0.7);
    pointer-events: auto;
}

[data-modaltoggle="open"]{
    opacity:1;
    pointer-events: auto;
}

.modal-area{
    color:#fff;
    width: 100%;
}
.modal-position{
    position:absolute;
    max-width: 100%;
    z-index: 10;
}
.modal-wrap{

}
.modal-box{
    padding: 5px;
    background-color:#fff;
    border-radius:5px;
    margin-bottom: 5px;
    position:relative;
    min-width: 150px;
    /* min-height: 150px; */
}
.modal-prev,
.modal-next{
    position:absolute;
    top:0;
    bottom:0;
    z-index:1;
    height: 100%;
    width: 50%;
    margin:auto;
    cursor:pointer;
}
.modal-prev{
    left: 0;
}
.modal-next{
    right: 0;
}
.modal-prev:before,
.modal-next:before{
    content:"";
    display:block;
    width: 20px;
    height: 20px;
    border-color:#fff;
    border-width:3px;
    position: absolute;
    top: 50%;
}
.modal-prev:before{
    border-bottom-style:solid;
    border-left-style:solid;
    transform:rotate(45deg);
    box-shadow: -2px 2px rgba(0,0,0,0.8);
    left: 25px;
}
.modal-next:before{
    border-bottom-style:solid;
    border-right-style:solid;
    transform:rotate(-45deg);
    box-shadow: 2px 2px rgba(0,0,0,0.8);
    right: 25px;
}
.modal-status{
    letter-spacing:2px;
    line-height: 1;
    font-size: 12px;
}
.modal-close{
    position:relative;
    width: 30px;
    height: 30px;
    margin-left: auto;
    margin-top: -1em;
    cursor: pointer;
}
.modal-close:before,
.modal-close:after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    margin:auto;
    display:block;
    width:100%;
    height:3px;
    background-color:#fff;
}
.modal-close:before{
    transform:rotate(45deg);
}
.modal-close:after{
    transform:rotate(-45deg);
}

.modal-image{
    width:100%;
    pointer-events: none;
}

[data-showimg="show"]{
    opacity:1;
    transition: opacity 0.6s cubic-bezier(0.33, 0.68, 0.42, 1.01);
}
[data-showimg="hide"]{
    opacity:0;
    transition:opacity 0s cubic-bezier(0.33, 0.68, 0.42, 1.01);
}


.modal-imgwrap{
  position:relative;
  z-index:1;
}

.modal-loaderwrap{
  position:absolute;
  top:50%;
  left:50%;
  /* z-index: -1; */
}

.loader,
.loader:before,
.loader:after {
  border-radius: 50%;
  width: 2em;
  height: 2em;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation: load7 1.8s infinite ease-in-out;
  animation: load7 1.8s infinite ease-in-out;
}
.loader {
  color: #aaa;
  font-size: 10px;
  /* margin: 80px auto; */
  position: relative;
  text-indent: -9999em;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}
.loader:before,
.loader:after {
  content: '';
  position: absolute;
  top: 0;
}
.loader:before {
  left: -3em;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}
.loader:after {
  left: 3em;
}
@-webkit-keyframes load7 {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}
@keyframes load7 {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}



footer.background-show:before{
  background-image:url(../img/footer-background02.jpg) !important;
  background-position: center -100px !important;
}



#gallery .sec-inner{
    padding:0 1.5rem;
  }
  #gallery h2{
      font-size:2rem;
      margin-bottom:1rem;
      text-align: center;
    }
    .gallerySwiper .sw_pagination{
        position:absolute;
        bottom:0;
        z-index:10;
        text-align:center;
    }
    .gallerySwiper .swiper-pagination-bullet{
        background-color:#fff;
        opacity:0.5;
    }
    .gallerySwiper .swiper-pagination-bullet.swiper-pagination-bullet-active{
        opacity:1;
        background-color:rgba(195,13,35,1);
    }
    
    .gallerySwiper .sw_btn_next,
    .gallerySwiper .sw_btn_prev{
        position:absolute;
        top:0;
        bottom:0;
    
        margin:auto;
        z-index:10;
        width:4rem;
        height:4rem;
        cursor:pointer;
    }
    .gallerySwiper .sw_btn_prev{
        left:0;
    }
    .gallerySwiper .sw_btn_next{
        right:0;
    }
    
    
    .gallerySwiper .sw_btn_prev:before{
        left:25%;
        border-left:2px solid transparent;
        border-bottom:2px solid transparent;
        transform:rotate(45deg);
    }
    .gallerySwiper .sw_btn_next:before{
        right:25%;
        border-right:2px solid transparent;
        border-bottom:2px solid transparent;
        transform:rotate(-45deg);
    }
    .gallerySwiper .sw_btn_next:before,
    .gallerySwiper .sw_btn_prev:before{
        content:"";
        position:absolute;
        top:0;
        bottom:0;
        display:block;
        margin:auto;
        width:50%;
        height:50%;
        border-color:#fff
    }
    .movie-box{
        display:flex;
        flex-wrap:wrap;
        margin:0 -0.5rem;
    }
    .movie-box > .flex-item{
        width:calc((100% / 2) * 1 - 0.01px);
        padding:0 0.5rem;
    }
    .movie-wrap{
        padding-top:calc((100% / 16) * 9);
        position:relative;
    }
    .movie-wrap > iframe{
        position:absolute;
        top:0;
        left:0;
        width:100%;
        height:100%;
    }
    @media (max-width:480px){
        .movie-box > .flex-item{
            width:calc((100% / 1) * 1 - 0.01px);
            margin-top:1rem;
        }
    }