@charset "UTF-8";
/* CSS Document */

/*____________ common_____________

_______ font

A-OTF Futo Go B101 Pr6N Bold





#gMenuBurger:950
.overlay:900
.header: 800


____________ common_____________*/

 /*全要素へbox-sizing */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	

}



html, body {
     color: hsla(0,0%,0%,0.70); 
    background-color: #fff;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    /*line-height: 0;*/  /*全ての要素にline-height設定*/
    font-family: "tbudgothic-std", "source-han-sans-japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 11pt;
    font-weight: 500;
    
   
    /*height: 100%; 100%だとモーダルに影響 */
	
	/*font表示最適化 ON*/
   /* -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: auto;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;*/
    /*background-image: url(../img/base_gray.png);*/
    background-repeat: repeat-y;
    background-size: 100% auto;
    text-shadow: 0px 0px;
    background-attachment: fixed;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
}

/*画面ロック*/

.none{
display: none;
}

.block{
display: block;
}




body.lock{
pointer-events: none;　
}


a{
	text-decoration: none;
}

p {
margin:0 0 1em 0;
}

.fullImg img{
width:100%;
}

.sp{
display: none ;
}

.btn-off{
pointer-events: none;
opacity: 0.4;
}

@media screen and (max-width: 750px) {
.pc{
display: none !important;
}

.sp{
display: block;
}
}



.loadingicon{
	position: fixed;
	max-width: 150px;
	/*height:180px;*/
	margin-top: -20px;
	margin-left: -75px;
	top: 50%;
	left: 50%;
	z-index: 999;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-ms-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
	/*opacity: 0;*/
	display: none;
}

@media screen and (max-width: 750px) {
   .loadingicon{
       max-width: 150px; 
       margin-left: -75px;
       margin-top:-50px;
    }
    
}


.fadeOut {
      opacity: 0;
      }
	  
.fadeIn {
      opacity: 1; 
      }
	  
	  
.mb-1{ margin-bottom: 1rem !important;}
.mb-2{ margin-bottom: 2rem !important;}
.mb-3{ margin-bottom: 3rem !important;}
.mb-4{ margin-bottom: 4rem !important;}

.mt-1{ margin-top: 1rem !important;}
.mt-2{ margin-top: 2rem !important;}
.mt-3{ margin-top: 3rem !important;}
.mt-4{ margin-top: 4rem !important;}


/*___________________________ header*/


header{
    width: 100%;
    height: 40px;
   /* background-color: hsla(0,0%,100%,0.80);*/
    position: fixed;
    z-index: 20;
    top: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.btn{
    /*	background-color: hsla(0,0%,95%,1.00);*/
    margin: 0 0rem;
    font-family: "abolition";
    font-weight: 400;
    font-size: 200%;
    /* border: 1px solid hsla(52,100%,54%,0.5);*/
    /*    border-bottom: 4px dotted hsla(49,100%,50%,0);*/
    text-align: center;	/*background-color: hsla(0,0%,89%,1.00);*/
    /*letter-spacing: 0.1em;*/
    border-radius: 0px;
    /* padding: 0.2em 1em;*/
    min-width: 240px;
    color: hsla(0,0%,0%,1.00);
      border-bottom: 1px solid hsla(191,89%,63%,0);
   
      -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
}

.pcMenu .btn{
   text-align: left; 
}

.btn a {
    color: #000;
    transition: 0.2s;
 display: block;   
width: 100%;
padding: 0.2em 1.2em; 
}

@media screen and ( min-width: 749px ){
.btn a:hover {
background: -moz-linear-gradient(top, hsla(0,0%,100%,0) 0%, hsla(191,88%,80%,0) 54%, hsla(191,88%,63%,0.15) 100%);
background: -webkit-linear-gradient(top, hsla(0,0%,100%,0) 0%,hsla(191,88%,80%,0) 54%,hsla(191,88%,63%,0.15) 100%);
background: linear-gradient(to bottom, hsla(0,0%,100%,0) 0%,hsla(191,88%,80%,0) 54%,hsla(191,88%,63%,0.15) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#264cd5f4',GradientType=0 );
     transition: all 0.5s; 
}
    }

.btn.current{
   /* background-color:hsla(191,89%,63%,0.3);*/
    border-bottom: 1px solid hsla(191,89%,63%,0.5);
    transition: all 0.5s;  
}

.trailerBtn.t-current{
    
/*background: -moz-linear-gradient(top, hsla(0,0%,100%,0) 0%, hsla(191,88%,80%,0) 54%, hsla(191,88%,63%,0.27) 100%);
background: -webkit-linear-gradient(top, hsla(0,0%,100%,0) 0%,hsla(191,88%,80%,0) 54%,hsla(191,88%,63%,0.27) 100%);
background: linear-gradient(to bottom, hsla(0,0%,100%,0) 0%,hsla(191,88%,80%,0) 54%,hsla(191,88%,63%,0.27) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#454cd5f4',GradientType=0 );*/
    
/*background-color: hsla(191,89%,63%,0.15);*/
   border-bottom: 1px solid hsla(191,89%,63%,0.5);
}




.spMenu .btn{
	font-size: 140%;
  border: 1px solid hsla(199,43%,47%,0.4);
	border-radius: 0px;
width:100%;
margin:0.4rem 0.2rem;
}

.spMenu .btn a{
padding:1rem 0.5rem;

}


.headerSmall-logo{
display: none;  
position: fixed;
z-index: 50;
width:100%;

left:10px;
top:5px;
}



/*_______________burger*/


#gMenuBurger {
    position: fixed!important;
    top:10px;
    right: 10px;
    z-index: 9999;
    display: none;
   
}

@media screen and (max-width: 750px) {
    
    .btn{
       text-align: center;
        
    }
    
#gMenuBurger {
     top:10%;
/*display: block;*/
}
}
.icon-animation {
	width: 50px;
	height: 37px;
	/*float: left;*/
	display: block;/*  background: rgba(255, 255, 255, 0);*/
}
.icon-animation span {
	width: 32px;
	height: 3px;
	display: block;
	/*  background: #fff;*/
	background:#000;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -15px;
}
.line1 span {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
}
.line1 .top {

	transform: translateY(-10px);
}
.line1 .bottom {

	transform: translateY(10px);
}
/*.line1:hover .top {
  -webkit-transform: translateY(-17px);
      -ms-transform: translateY(-17px);
          transform: translateY(-17px); }

.line1:hover .bottom {
  -webkit-transform: translateY(17px);
      -ms-transform: translateY(17px);
          transform: translateY(17px); }*/

.line1.is-open .middle {
	background: rgba(255, 255, 255, 0);
}
.line1.is-open .top {
	-webkit-transform: rotate(-45deg) translateY(0px);
	-ms-transform: rotate(-45deg) translateY(0px);
	transform: rotate(-45deg) translateY(0px);
}
.line1.is-open .bottom {
	-webkit-transform: rotate(45deg) translateY(0px);
	-ms-transform: rotate(45deg) translateY(0px);
	transform: rotate(45deg) translateY(0px);
}



/*________________gMenu-container*/


.pcMenu-bt{
    max-width: 170px;
    min-width: 150px;
    width: 15%;
    position: fixed;
    z-index: 99;
  /*  background-color: hsla(0,0%,100%,0.5);  */ 
}


.gMenu-container{
    background-color: hsla(0,0%,100%,0.8);
    position: absolute;
    top: 0;
    display: flex;
    flex-direction: column;
    z-index: 100;
    height: 100%;
    padding-top: 50px;
    overflow-y: auto;	

}

.pcMenu{
    /* background-color: hsla(0,0%,100%,0.8);*/
    position: absolute;
    top: 0;
    display: flex;
    flex-direction: column;
    z-index: 100;
    height: 100%;
    padding-top: 50px;
    overflow-y: auto;
    left: -240px;
    /*     -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;*/
    transition: all 0.25s;
    background-image: url(../img/pc_menu_base.png);
    background-repeat: repeat-x;
    background-size: auto 100%;
}

.pcMenu.is-active{
   left: 0px; 
}


@media screen and (max-width: 750px) {
    
    .spMenu-logo{
        position: relative;
        margin:auto auto auto auto;
      /*  max-width:300px;*/
    }
    
    
    
    .pcMenu{
    position: absolute;
    width: 100%;
    background-color: hsla(0,0%,100%,1);
    top: 0;
    display: flex;
    flex-direction: column;
    z-index: 100;
    height: 100%;
    padding-top: 0px;
        padding-bottom: 100px;
    overflow-y: auto;
    /* bottom:-100px;*/
    left: 0px;
    /* left: -100%;*/
    z-index: 190;
    opacity: 0;
    pointer-events: none;
    background-attachment: fixed;
        
    position: fixed;
    overflow: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    }
    
    
    
    
  .pcMenu .btn{
      width:100%;
      text-align: center;
      font-size: 230%;
    }
    
    .pcMenu.is-active{
   left: 0px; 
     opacity:1;
     pointer-events: auto;
   /* bottom:0;*/
}
    
}





.spMenu{

margin: auto;
/*background-color: hsla(359,75%,52%,0.2);*/

display: flex;
flex-wrap: wrap;
justify-content: center;
}

.spMenu.spMenu-footer{
display: none;
}

@media screen and (max-width: 750px) {
.spMenu.spMenu-footer{
display: block;
margin: auto;
display: flex;
flex-wrap: wrap;
justify-content: center;
}
}




/*________________sns*/

.sns-header{
    position: fixed;
	top: 10px;
	right: 15px;
	z-index: 21;
    line-height: 1.5em;
}

.sns-header-wrapper{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.headrSns{
    font-size: 240%;
    color: #000;
    margin: 0 0.4rem;
    transition: 0.2s;
}

.headrSns:hover{
   /* color: hsla(0,0%,0%,0);*/
}

.shareTag{
    width: 100%;
    font-weight: 900;
    font-size: 90%;
    text-align: center;
}


/*_____________________fotter SNS*/


.sns-footer-wrapper{
    position: relative;
    margin: 1rem;
    /*	background-color: hsla(359,70%,67%,1.00);*/
    z-index: 30;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    
  
}


.sns-footer-wrapper .headrSns{
    color: #000;
}

.sns-footer-wrapper .headrSns:hover{
    color: hsla(0,0%,0%,0.80);
}

.sns-footer-wrapper .headrSns{
font-size: 300%;
margin:0 1rem;
}


/*______________share BT*/


.snsTopNav {
    position: fixed;
    top: 80px;
    right: -300px;
    z-index: 30;
/*     -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;*/
    transition: all 0.5s;
   
}

.snsTopNav.is-active{
   right: 10px; 
}




.block{
display: block;	
}

.snsTopNav.snsFooter {
	position: relative;
	top: 0;
    right:0;
	left: auto;
	z-index: 30;
	margin: 1rem;
}

.snsTopNav.snsFooter ul {
margin: auto;
}



  .snsTopNav ul {
    display: table;
	margin: 0;
	padding:0;
	
}
    .snsTopNav ul li {
	display: table-cell;
	/*height: 25px;*/
	vertical-align: middle;
	padding-right: 2px;
	padding-left: 2px;
	/*padding-bottom: 10px;*/
	line-height: 0;

}














@media screen and (max-width: 960px) {

.sns-header-wrapper{
	top: 0px;
	}
	.snsTopNav {
	/* right: 0px;*/
}

.headerSmall-logo{
display: none;
}

}

@media screen and (max-width: 750px) {

header{
	width: 100%;
	height: 40px;
	background-color: hsla(0,0%,100%,0.80);
}

.headerSmall-logo{
display: block;
position:fixed;
width:100%;
left:10px;
top:12px;
max-width: 150px;
}

}










/*___________________________ modal*/

.overlay {
    display: none;
    position: fixed;
    top: -10px;
    left: 0;
    right: 0;
    bottom: -10px;
    background-color: hsla(0,0%,100%,1);
   /* background-color: #000;*/
    overflow: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 910;
}

.overlay-container {
	display: table;
	padding: 10px 0;
	width: 100%;
	height: 100%;
}
.overlay-inner {
	display: table-cell;
	padding: 2.7em 2em;
	vertical-align: middle;
	/*line-height: 1.6em;*/
}

.overlay-inner.full{
padding: 0;	
}




/*________________trailer-container*/

.trailer-container{
    margin-top:40px;
/*	background-color: hsla(359,75%,52%,0.2);*/
	display: flex;
	justify-content: center;
	align-items: center;
 height: 100vh;
	/*min-height: 100vh;*/
	z-index:10;
}




/*_____________ youtube _____________f*/

.movieArea{
width:80%;
max-width: 1280px;
}

@media screen and (max-width: 750px) {
 .movieArea{
width:100%;
}
}

.youtube {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 0px;
	height: 0;
	overflow: hidden;
	margin-top: 0px;
	margin-bottom: 0px;
	background-color: #010922;
	z-index: 1;
}
.youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	background-color: #010922;
	z-index: 1;
}


.tralerNav{
margin: 1em auto;
width:100%;
max-width: 800px;
 position: relative;
 z-index: 999;
/*pointer-events: none;*/
/*	background-color: hsla(359,100%,47%,1.00);*/
	
	display: flex;
flex-wrap: wrap;
justify-content: center;
}

.trailerBtn{
    font-family: tbudgothic-std, sans-serif;
font-weight: 700;
font-style: normal;
	font-size: 100%;
	border: 0px solid hsla(0,0%,100%,1.00);
	/*border-radius: 4px;*/
width:15%;
margin:0.2rem 0rem;
padding:0em;
 line-height: 1em;
    min-width: 100px;
}

.trailerBtn.long{
	width:80%;
}

.trailerBtn.long2{
	width:32%;
	line-height: 1.4rem;
}

.trailerBtn a{
padding:0.8rem 0.4rem;

}


@media screen and (max-width: 500px) {
.tralerNav{
width:95%;
}
	
.trailerBtn.long{
	width:100%;
}

}





.playerWrapper{
display: none;
}


/*________________copyright*/

.copyrightL{
    position: absolute;
    width:22%;
    margin:0;
    bottom: 0%;
    left:1%;
    z-index: 300;
}

.pcLbnr{
    max-width:500px;
    margin-bottom: 1rem;
    left:3%;
    position: relative;
}

.pcRbnr{
    max-width:500px;
    margin-bottom: 2rem;
    right:3%;
    position: relative;
}

.copyrightR{

    position: absolute;
   
    margin: 0;
    bottom: 1%;
    right: 1%;
    z-index: 10;
  /*  background-color: hsla(0,0%,81%,1.00);*/
}


.copyrightR2{
	width:20%;
    position: absolute;
    margin: 0;
    bottom: 2%;
    right: 1%;
    z-index: 30;
  /*  background-color: hsla(0,0%,81%,1.00);*/
}


.copyLinkSet{
    margin-bottom: 0.3em;
    display: flex;
     justify-content: center;
}

.copyLink{
    font-size: 70%;
    margin:0 1em 0em;
}

.copyLink a{
    color: hsla(39,66%,31%,1.00);
    border-bottom:1px solid hsla(39,66%,31%,0.3);
    padding-bottom: 0.2em;
}

.copyLink a:hover{
    color: hsla(39,69%,22%,1.00);
}

.copy{
    font-family: usual, sans-serif;
    font-size: 60%;
    font-weight: 300;
    font-style: normal;
    color: hsla(0,0%,30%,1.00);
    text-align: center;    
}


.copyrightSp{
    margin:2em 0 5em 0;
    line-height: 1.2em;
}

.copyImgSp{
    max-width:300px;
    margin:1em auto;
}


@media screen and (max-width: 1000px) {
.copy{
    font-size: 50%;
    }
    
}


@media screen and (max-width: 750px) {
.shareTag{
    font-size: 120%;
    margin:1em auto 2em auto;
}
}




/*_______________footer Menu*/

.footerMenu{
    padding:1em 0 1em 0;
}

.footerMenu .btn{
    font-size: 300%;
}



/*________________footer*/



.footer-wrapper{
    position: relative;
    width: 100%;
   min-height: 60px;
    background-image: url(../img/base.png);
    background-repeat: repeat-x;
}

.footer-inner{
position: relative;
margin: auto;
width:100%;
	max-width: 500px;
	height: 100%;
}

.footterLogo{
    max-width:150px;
    margin:4em auto 2em;
}

.spFootterBnr{
    width:90%;
    /*max-width:150px;*/
    margin:.3em auto 0em;
}




.footer-icn-top{
position: absolute;
width:12%;
top:-53%;
right:0;
}
	
	.footerWhiteBase{
      
  width: 100%;
    position: relative;
    padding: 1px 0 10px 0;
    line-height:0;
 /*   overflow: hidden;
    overflow-x: visible;*/
	}
	
	.footerLogo{
	width:80%;
	margin:2rem auto 0;
	transform: translateX(5%);
	}
	
	
.icon-footer-wrapper{

position: relative;
margin:2rem auto;
z-index:6;

 display: flex;
justify-content: center;
}

.footer-copyright{
	position: relative;
	color: #000;
	text-align: center;
	font-size: 80%;
}

@media screen and (max-width: 750px) {
	.footer-neko{
left:10px;
width:20%;
top:-60%;
/*top:-23%;*/
}

.footer-icn-top{

width:15%;
/*top:-20%;*/
top:-60%;
right:10px;
}

}
	
@media screen and (max-width: 500px) {
.footerLogo{
	width:80%;
	margin:2rem auto;
	transform: translateX(5%);
	}
	
	.footer-neko{
left:10px;
width:25%;
top:-65%;
/*top:-23%;*/
}

.footer-icn-top{

width:20%;
/*top:-23%;*/
top:-70%;
right:10px;
}

}



/*_____________________enter common*/


.fix-inner{
	position: relative;
	margin: auto;
	width: 100%;
	height:100%;
	max-width: 760px;
	/*background-color: hsla(359,71%,69%,1.00);*/
}

.mainContents-wrapper{
	position: relative;
	margin: auto;
	width: 100%;
	overflow: hidden;
/*	max-width: 760px;*/
	/*background-color: hsla(359,62%,49%,1.00);*/	
}




.header-img-wrapper{
width:100%;
position: relative;
martop:40px;
}

/*.header-img-wrapper:before {
    content: "";
    display: block;
   padding-top: 100%; 
}*/

.header-title{
position: absolute;
top:25%;
left:20%;
z-index: 10;
width:100%;
max-width: 250px;
}

.header-img{
position: relative;
overflow: hidden;
width:100%;
}

.header-img img{
width:100%;
}


.subTitle-wrapper{
	position: relative;
	margin:3rem auto 1.5rem auto;
	width: 100%;
	max-width: 760px;
}

.textBox{
	color: hsla(0,0%,0%,1.00);
	position: relative;
	margin: auto;
	width: 100%;
	max-width: 760px;
	line-height: 2.5rem;
font-size: 110%;
/*font-weight: 800;*/
}

.largeBlue{
	font-size: 120%;
	color: hsla(212,99%,40%,1.00);
}



.textImg-wrapper{

margin: auto;
	width: 100%;
	max-width: 760px;
	
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}

.textImg-wrapper .textBox{
width:40%;

}

.textImg{
width:60%;
padding-left: 1rem;
}

.textImg.img-left{
width:60%;
padding-left: 0rem;
padding-right: 1rem;
}




@media screen and (max-width: 750px) {

.header-img-wrapper{
padding-top:50px;
}

.header-img img{
width:160%;
transform: translateX(-20%);
}


.header-title{
width:50%;
left:10px;
top:30%;
}


.subTitle-wrapper{
	width: 95%;

}


.textBox{
	
	width: 95%;
	line-height: 2rem;
font-size: 100%;
}

.textImg-wrapper .textBox{
width:95%;

}

.textImg{
width:100%;
padding-left: 0rem;
}

.textImg.img-left{
width:100%;
padding-left: 0rem;
padding-right: 0rem;
margin-bottom: 2rem;
}








}






/*_____________slick slide*/

.sliderwaku{
	display: block;
	padding: 0px 0 0px 0;
	overflow: hidden;	/*background-color: hsla(32,100%,46%,0.74);*/

	}
	
/*	#introstory_slick_set{
margin:10% 0;
}*/




@media screen and (min-width: 1101px) {
}

@media screen and (min-width: 961px) {

}



/*sp menu*/

.spMenu-close {
    position: absolute;
    width:40px;
    top:10px;
    right:10px;
}

@media screen and (max-width: 750px) {
.spMenu-bt {
    line-height: 0;
    width: 100%;
    position: fixed;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 200;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    background-color: hsla(0,60%,4%,1.00);
}

.spMenu-bt-item {
    position: relative;
    width:100%;
}

.spMenu-bt-item img {
    width:100%;
    
}
    
    }


