@charset "UTF-8";
/* @import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700,900&display=swap'); */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');

body {
	font-size: 14px;
	font-family:"Noto Sans JP","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
	line-height: 1.6;
	color:#fff;
	font-weight: normal;
	background:#1e1e1e;
    background-size:contain;
    }

img{
	vertical-align: top;
	max-width:100%;
	height:auto;
}


h1{
    background:url("../images/main_bg@2x.jpg") no-repeat 50% 50%;
    background-size:cover;
}

h1 span{
    display:block;
    max-width:1140px;
    margin:0 auto;
    padding:0 30px;
}


#reserve-button{
}

#reserve-button a{
    background:#ffcc00;
    color:#000;
    font-weight: 900;
    text-align: center;
    font-size:200%;
    display:block;
    /* padding:0.5em; */
    text-decoration:none;
    transition: all 0.3s;
}

#reserve-button a span{
    padding:0 35px;
    display: inline-block;
    line-height: 1;
    position: relative;
}

#reserve-button a span:after{
    content:"";
    background:url("../images/arrow_down@2x.png") no-repeat 100% 0;
    background-size:contain;
    width:30px;
    height:30px;
    position: absolute;
    top:0;
    right:0;
    transition: all 0.3s;
}

#reserve-button a:hover span:after{
    top:3px;
}

.section-inner{
    max-width:1060px;
    margin:0 auto;
    padding:0 30px;
    box-sizing:border-box;
}

.section-inner figure{
    text-align: center;
}
.thumb-delux-sub{
    width:50%;
    display: block;
    margin:0 auto;
    margin-top:3%;
}
@media screen and (max-width: 640px) {
    .thumb-delux-sub{
        width:100%;
    }
}

#trailer #trailer-frame{
    position:relative;
    padding-top:56.25%;
}

#trailer #trailer-frame iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}


section{
    padding:8% 0 0 0;
}

section h2{
    color:#000;
    padding:0.5em;
    font-size:300%;
    font-weight: 900;
    text-align: center;
    font-style: italic;
    letter-spacing: 0.02em;
    line-height: 1;
    margin-bottom:3%;
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    position: relative;
}
section h2 img{
    position: absolute;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}
section h2:before{
    content:"";
    display:block;
    width:100%;
    height:20px;
    margin:2% 0;
    background: rgb(220,12,32);
    background: linear-gradient(90deg, rgba(220,12,32,0.5) 0%, rgba(220,12,32,1) 40%, rgba(220,12,32,1) 60%, rgba(220,12,32,0.5) 100%);
}

section h2 span{
    display: block;
    text-align: center;
    font-size:40%;
    margin-top:0.2em;
}

#reserve h2{
    background:#ffcc00;
    padding:0.3em 0 0.15em;
    max-width: none;
}
#rental h2{
    background:#dc0c20;
    padding:0.3em 0 0.2em;
    max-width: none;
}
#reserve h2:before,
#rental h2:before{
    display: none;
}
#reserve h2 img,
#rental h2 img{
    position: relative;
    top:auto;
    left:auto;
    transform: translate(0,0);
}


.brdvd-column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}

.brdvd-column .brdvd-block {
    width:48%;
    width:38%;
}

.brdvd-column .brdvd-block h3 {
    color:#dc0c20;
    font-weight: 700;
    font-size:240%;
    margin-top:2.5em;
    line-height: 1.4;
    /* text-shadow: 2px 2px 0 #fff, -2px -2px 0 #fff, 2px -2px 0 #fff, -2px 2px 0 #FFF; */
    border:1px solid #fff;
    /* border-color: #dc0c20; */
    padding:0.5em;
}
.brdvd-column .brdvd-block.-block1{
    width:48%;
}

.brdvd-column .brdvd-block .price-number {
    margin-top:0.5em;
}

.brdvd-column .brdvd-block .price-number p {
    display: inline-block;
}

.brdvd-column .brdvd-block .price-number p.price {
    font-weight: 700;
    font-size:240%;
    color:#dc0c20;
}
.brdvd-column .brdvd-block .price-number p.price span{
    font-size:0.6em;
}

.brdvd-column .brdvd-block .price-number p.number {
    margin-left:1em;
}

.brdvd-column .brdvd-block h4 {
    color:#dc0c20;
    font-weight: 700;
    font-size:120%;
    margin-top:1em;
}

.brdvd-column .brdvd-block h4:before {
    content:"■";
    color:#dc0c20;
    margin-right:0.2em;
}

.brdvd-column .brdvd-block dl dt,
.brdvd-column .brdvd-block dl dd{
    display: inline-block;
    vertical-align: top;
}

.brdvd-column .brdvd-block dl dt:after{
    content:"：";
}


#syokai-tokuten{
    margin:5% 0;
}

#syokai-tokuten h3{
    background:#dc0c20;
    color:#fff;
    padding:0.8em;
    font-size:170%;
    font-weight: 700;
    text-align: center;
    letter-spacing: 0.02em;
    line-height: 1.4;
    /* line-height: 1; */
    font-style: italic;
    text-shadow    : 
       2px  2px 1px #000,
      -2px  2px 1px #000,
       2px -2px 1px #000,
      -2px -2px 1px #000,
       2px  0px 1px #000,
       0px  2px 1px #000,
      -2px  0px 1px #000,
       0px -2px 1px #000;
}
#syokai-tokuten h3 span{
    /* display: block; */
    /* font-size:0.8em; */
}

#syokai-tokuten p{
    margin-top:1em;
    color: #fff;
    font-size:1.3em;
    font-weight: bold;
    text-align: center;
}



.bnr-list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.bnr-list li{
    width:22.5%;
    margin-bottom:4%;
}

#delivery .bnr-list:after{
    content:"";
    width:22.5%;
}

footer{
    margin:5% 0 30px 0;
    padding:0 30px;
    text-align: center;
    position: relative;
}


#top-button a{
    /* background:#dc0c20; */
    color:#000;
    font-weight: 900;
    text-align: center;
    font-size:180%;
    display:block;
    padding:0.5em;
    text-decoration:none;
    transition: all 0.3s;
    margin:2em auto;
    max-width:14em;
}

#top-button a span{
    padding:0 35px;
    display: inline-block;
    line-height: 1;
    position: relative;
}

#top-button a span:after{
    content:"";
    background:url("../images/arrow_next@2x.png") no-repeat 100% 0;
    background-size:contain;
    width:24px;
    height:24px;
    position: absolute;
    top:0;
    right:0;
    transition: all 0.3s;
}

#top-button a:hover span:after{
    right:-3px;
}

#page-top{
    position: fixed;
    bottom:30px;
    right:30px;
    opacity:0;
}

#page-top a{
     transition: all 0.3s;
}

#page-top a:hover{
     opacity:0.7;
}

#page-top span{
    display: block;
    margin-top: 10px;
    color:#ffcc00;
    line-height: 1;
}


.pc {
	display: block;
}
.sp {
	display: none;
}



#first-btn{
    padding-top:4em;
}
#first-btn a{
    display: inline-block;
    background:#dc0c20;
    color: #000;
    font-weight: 700;
    text-decoration: none;
    font-size: 1.2em;
    padding:0.8em 3em;
}
#souki-yoyaku{
    text-align: center;
    color:#dc0c20;
    font-weight: bold;
    font-size: 1.4em;
    border:4px solid #dc0c20;
    width:55%;
}
#souki-yoyaku h5{
    line-height: 2;
    font-weight: bold;
}




@media screen and (max-width: 640px) {
body{
    font-size: 2.5vw;
}

section{
    padding-top:15%;
}

h1 span{
    padding:0;
}


section h2{
    font-size:250%;
    margin-bottom:10%;
}

#reserve-button a span {
    padding:0 25px;
}

#reserve-button a span:after {
    width: 18px;
    height: 18px;
}

.brdvd-column .brdvd-block {
    width: 100%;
}

#souki-yoyaku figure,#brdvd-normal figure{
    /* width:80%; */
    margin-left:auto;
    margin-right:auto;
    
}

#brdvd-normal #thumb-normal-dvd{
    margin-top:10%;
    
}

#syokai-tokuten {
    margin: 10% 0 5% 0;
}

#syokai-tokuten h3 {
    line-height: 1.4;
}

#souki-yoyaku{
    margin-top:5%;
}


.bnr-list li {
    width: 45%;
}

#top-button a span {
    padding: 0 25px;
}
#top-button a span:after {
    width: 18px;
    height: 18px;
}

#page-top {
    bottom: 15px;
    right: 15px;
    width:30px;
}

#page-top span{
    display: none;
}

.pc {
	display: none;
}
.sp {
	display: block;
}

#reserve-button a img{
    height:10vw;
}
section h2 img{
    height:8vw;
}
#souki-yoyaku{
    width:100%;
}
#top-button img{
    height:9vw;
}
section h2:before{
    height:3vw;
}

}

@media print{
  body{
  	display:none;
  }
}

#copyright{
    font-size:10px;
}