
@charset "UTF-8";



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

.modaal-inner-wrapper {
    display: table-cell;
    width: 100%;
    height: 100%;
    position: relative;
    vertical-align: middle;
    text-align: center;
    padding: 80px 0px !important;
}
	
}



/*news*/



.news-set{
	position: relative;
	background-color: hsla(0,0%,100%,1);
	padding: 2rem 2rem;
	border: 1px solid hsla(0,0%,0%,0.10);
	color: #7A7979;
}


.news-text-item{
	position: relative;
	width: 100%;
	line-height: 1.8rem;

}

.news-text-item.about{
	position: relative;
	width: 100%;
	line-height: 1.8rem;
/*font-size: clamp(1rem, 0.818rem + 0.91vw, 1.5rem);*/
}



.news-name{
	
	margin-bottom: 1rem;
	position: relative;
	color:#525252;
    
	
	font-family: "source-han-sans-japanese", sans-serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
font-weight: 700;
font-style: normal;
	
	
	font-size:clamp(1.4rem, 1.327rem + 0.36vw, 1.6rem);
	line-height: 2rem;
}

.news-name.about{
	text-align: center;
}


.name2{
	font-size:70%;
	margin-left: 0rem;
}



.news__title{
	font-weight: 700;
	color: hsla(0,0%,50%,1.00);
	margin-bottom: 1rem;
	font-size:clamp(1rem, 0.855rem + 0.73vw, 1.4rem);
	text-align: center;
	line-height: 2rem;
}

.news__bold{
	font-weight: 700;
	color: hsla(0,0%,50%,1.00);
}

.news-text-item p{
	margin-bottom: 1rem;
}


p.news__margin {
	margin-bottom: 1.25rem;
}



.news__img{
	position: relative;
	width:100%;
	margin:2rem auto;
	
	
	 display: flex;
  justify-content: center;
  align-items: center;
	
	
}

.news__img_v{
	width:70%;
	max-width:450px;
}


.news-footer__set{
	display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
 /* justify-content: space-between;*/
	justify-content: center;
	margin:2rem 0;
}

.news-footer_bt1{
	width:48px;
}

.news-footer_bt2{
	width:200px;
	margin:0 1rem;
}


.news__youtube{
	width:80%;
	margin:2rem auto;
}

.news__date {
	/*font-size: clamp(0.7rem, 0.664rem + 0.18vw, 0.8rem); */
	/*margin: 0px 0px 3px;*/
	color: #ABABAB;
}


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

	.news-set{
	padding:1.5rem 1rem;
}

	.news__title{
	font-weight: 700;
	margin-bottom: 1rem;
	line-height: 1.6rem;
}
	
	.news-text-item{
	line-height: 1.6rem;

}
	
	.news__img{
	position: relative;
	width:100%;
	margin:1.5rem auto;	
}
	
	.news__img_v{
	width:85%;
}
	
	
	.news-footer__set{
	display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
	/*justify-content: center;*/
	margin:2rem 0;
}
	
	.news-footer_bt1{
	width:46px;
}

.news-footer_bt2{
	width:160px;
	margin:0 0.5rem;
	height: 100%;
}
	
	.news__youtube{
	width:100%;
	margin:1rem auto;
}
	
}



/*about the movie*/

.wrapper-topBlack{
	position: relative;
	background-color: hsla(0,0%,0%,0);
	z-index: 100;
	padding: 4rem 0;
	/*background-image: url(../img/common/base_black.png);*/
	background-repeat: repeat-x;
	background-position: center top;
}

@media screen and (max-width: 767px) {
	.wrapper-topBlack{
	padding: 0 0 4rem 0;
	}
	
}

.wrapper-topBlack.narrow{
	padding: 1rem 0 0;
}


.wrapper-white{
	position: relative;
	/*background-color: hsla(0,0%,0%,1.00);*/

	padding: 4rem 0;
	
}


.contents{
	position: relative;
	z-index: 0;
	background-repeat: no-repeat;
	background-position: top center;
  background-image: url(../img/top/base.webp);
	background-size: cover;
	background-attachment: fixed;
	
	min-height: 70vh;
}

.bg-wrapper{
    position: fixed;
    width: 100%;
    top:0;
    background-image: url(../img/top/base.webp);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
   /* background-color: hsla(0,0%,0%,1.00);*/
    background-attachment: fixed;
    height: 100vh;
    z-index: 0;
}


.scroll-contents {
    position:relative;
    margin: auto;
    left: 0;
    right: 0;
    overflow: hidden;
	/*max-width: 1000px;*/
	width:100%;
    z-index: 10;
	height:auto;
}






.about_01{
	position: relative;
}

.about_01_text,
.about_02_text{
	width:100%;
	position: absolute;
	top:0;
	left:0;
}



@media screen and (max-width: 767px) {
	
	
	.about_01_sp_text{
		position: relative;
		width:95%;
		margin: auto;
		line-height: 2rem;
		font-size: clamp(1rem, 0.818rem + 0.91vw, 1.5rem);
		letter-spacing: 0.05rem;
	}
	

	
}





.introduction-02{
	  display: flex;
	
}

.intro-img-item{
	width:40%;
    display: flex;
    background-image: url(../img/about/about_img_02.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}



.intro-text-item{
	width: 60%;
	display: flex;
	/*background-color: hsla(0,0%,100%,1.00);	*/
	
	padding:8% 15% 8% 5%; 
}


.intro-text{
	
	line-height: 1.7rem;
	letter-spacing: 0;
	font-size: clamp(0.95rem, 0.932rem + 0.09vw, 1rem); 
}








.about-text-wrapper{
		display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
 /* justify-content: center;*/
 
  align-items: center;
}



.title{
	text-align: left;
	font-size: clamp(1.5rem, 1.136rem + 1.82vw, 2.5rem);
	line-height: 	1;
	color: #000;
	font-weight: 700;
text-align: center;
	margin-bottom: 0.5rem;
	/*letter-spacing: 0.2rem;*/
}

.title2{
	text-align: left;
	font-size: clamp(0.8rem, 0.764rem + 0.18vw, 0.9rem);
	line-height: 1;
	/*color: #000;*/
	font-weight: 400;
text-align: center;
	margin-bottom: 4rem;
	/*letter-spacing: 0.2rem;*/
}



@media screen and (max-width: 767px) {
	
	
	.introduction-02{
	  display: flex;
		
	flex-direction:column;
  
	
}
	
.intro-img-item{
	width:100%;
	height:30vh;
    display: flex;
    background-image: url(../img/about/about_img_02.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}



.intro-text-item{
	width: 100%;
	display: flex;
	/*background-color: hsla(0,0%,100%,1.00);	*/
	
	padding:4rem 1rem; 
}
	
	
	.title{
	margin-bottom: 0.5rem;
	
}

.title2{

	margin-bottom: 2rem;
	/*letter-spacing: 0.2rem;*/
}
	
}

	.title_story{
	position: absolute;
	top:0;
	left:0;
	right: 0;
	bottom:auto;
	margin:2rem auto 0 auto;
	
}
	








.title_story .title,
	.title_story .title2{
	color: #fff;
}


.story-copy{
	position: absolute;
	bottom:8%;
	left:0;
	right: 0;
	width:90%;
	max-width: 1200px;
	margin: auto;
}




.about-text{
	position: relative;
	width: 100%;
	font-size: clamp(1rem, 0.927rem + 0.36vw, 1.2rem);
	line-height: 2.5rem;
	
}


p{
	margin-bottom: 1rem;
}





.base-img{
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
	background-attachment: fixed;
	background-size: cover;
	

}


.base-img.padding{
		padding:10rem 0;
}


#introduction{
	/*padding-top:30%;*/
	/*background-image: url(../img/about/about_intro_base.webp);*/
}

#director{
		background-image: url(../img/about/about_staff_base.webp);
}



#cast{
	/*background-image: url(../img/about/about_cast_base.webp);*/
	
}



#review{
	background-image: url(../img/about/about_review_base.webp);
	
}


.question{

/*	font-size:clamp(0.9rem, 0.755rem + 0.73vw, 1.3rem);
	line-height: 1.8;*/
	color: hsla(0,0%,100%,1.00);
	font-style:italic;
	margin-bottom: 1rem;
}




.cast-flex{
			display: flex;
  flex-direction: row;
  flex-wrap: wrap;
/*  justify-content: space-between;*/
  justify-content: center;
 
  align-items: top;
}

.cast-item{
	width:50%;
	margin-bottom: 5rem;	
	padding-right: 2rem;
	padding-left: 2rem;
	
/*	position: relative;
	display: flex;
  flex-direction:column;
	 justify-content: center;*/
}

.cast-item.left{
	width:50%;
	padding-right:4rem;
	padding-left: 0rem;
}

.cast-item.right{
	width:50%;	
	padding-left: 4rem;
		padding-right: 0rem;
}

.cast-item.wide{
	position: relative;
	width:100%;
	margin-bottom: 5rem;	
	padding-right: 0rem;
	padding-left: 0rem;
}

.staff-img{
position: relative;
	max-width: 600px;
	margin: auto;
	
	
}


@media screen and (max-width: 767px) {
	
.cast-item,
	.cast-item.left,
	.cast-item.right{
	width:100%;
	margin-bottom: 4rem;	
	padding-right: 1rem;
	padding-left: 1rem;
	
}	
	
	
	.cast-name{


	font-size: clamp(1.2rem, 0.909rem + 1.45vw, 2rem);
	line-height: 	1.5rem;
	color: #000;
	font-weight: 700;
text-align: center;
	margin-bottom: 0.2rem;
}
	

	


.cast-name2{

	text-align: left;
	font-size: clamp(1rem, 0.927rem + 0.36vw, 1.2rem);
	line-height: 1;
	color: #000;
	font-weight: 400;
text-align: center;
	margin-bottom: 2rem;
	
}
	

	
	
}






.cast-name{

text-align: left;
	font-size: clamp(1.2rem, 0.909rem + 1.45vw, 2rem);
	line-height: 	2rem;
	color: #000;
	font-weight: 700;
text-align: center;
	margin-bottom: 0.5rem;
}

.cast-name2{

	text-align: left;
	font-size: clamp(1rem, 0.927rem + 0.36vw, 1.2rem);
	line-height: 1;
	color: #000;
	font-weight: 400;
text-align: center;
	margin-bottom: 2rem;
	
}


	.cast-name.comment{
text-align: left;
	}

.cast-name2.comment{
text-align: left;
	margin-bottom: 1rem;
	}



.staff-area{
	position: relative;
}





.staff-img2{
	width:15%;
	
}

.mb-8{
	margin-bottom: 8rem;
}





.text-red{
	color: hsla(6,98%,49%,1.00);
}

.text-center{
	text-align: center;
}


.review{
		font-size:clamp(1.1rem, 0.991rem + 0.55vw, 1.4rem);
	line-height: 2rem;
color: hsla(0,0%,100%,1.00);
}

.review-name{
		text-align: right;
	margin-top: 1rem;
	font-size:clamp(1rem, 0.891rem + 0.55vw, 1.3rem);
	line-height: 1.8rem;
	
	
}


@media screen and (max-width: 767px) {
	
	
	.review{
		
	line-height: 1.6rem;

}

	
	.mb-8{
	margin-bottom: 4rem;
}

	

	
	
	.base-img{
	position: relative;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% auto;

}
	
	.base-img.padding{
		padding:5rem 0;
}
	
	#introduction{
/*	padding-top:30%;*/
/*	background-image: url(../img/about/about_intro_base_sp.webp);*/
}



#director{
	
	background-image: url(../img/about/about_staff_base_sp.webp);
}
	


#cast{
	/*background-image: url(../img/about/about_cast_base_sp.webp);*/
	
}



#review{
	background-image: url(../img/about/about_review_base_sp.webp);
	
}
	
	
	
	.cast-area{
		
	}
	
	
	
	
	
	

	
		.staff-img2{
	width: 50%;
	}

	
	.bg-wrapper{
    position: fixed;
    width: 100%;
    top: 0;
    background-image : none;
}
    
    
      .bg-wrapper::before {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100vh;
	background-repeat: no-repeat;
	background-position: center top;
	background-image: url(../img/top/base_sp.webp);
	background-size: 100% 100%;
    }
    
    
    .scroll-contents {
    position:relative;
    margin: auto;
    left: 0;
    right: 0;
    overflow: hidden;
	max-width: 100%;
	width:100%;
    z-index: 10;
	height:auto;
}
	
	
	.about-text{
	position: relative;
	width:100%;

	
	font-size:clamp(1rem, 0.927rem + 0.36vw, 1.2rem);
	line-height: 2rem;
		margin-bottom: 2rem;
}

	
	.about-name{

	line-height: 1.5;

}
	
}

/*character*/



.character-container {
	display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
 /* justify-content: center;*/
 
  align-items: top;
}

.character-img{
	width: 30%;
}

.character-img img{

	border: 1px solid hsla(0,0%,96%,0.3);
}


.character-item {
	position: relative;
	width:67%;
	
}





@media screen and (max-width: 767px) {
	
	
	.character-img{
	width:80%;
	margin:0 auto 2rem;
}
	
	
	.character-item {
	
	width:100%;

	
}
	

	
}





/*ムビチケ*/



.mvtk__area{
	position: relative;
	max-width: 840px;
	width: 100%;
		margin:auto;
	/*background-color: hsla(0,0%,14%,1.00);*/
	/*border: 1px solid hsla(0,0%,20%,1.00);*/
}

.mvtk__bnr{
	/*border-radius: 6px;*/
	    border: 1px solid #ccc;
/*max-width: 400px;*/
}

#mvtk-widgets-container{
	width: 342px;
		margin:auto;
	left:0;
	right:0;

}



@media screen and (max-width: 767px) {
	.mvtk__area{
	position: relative;
	max-width: 840px;
	width: 100%;
	/*background-color: hsla(0,0%,14%,1.00);*/
	border: 0px solid hsla(0,0%,20%,1.00);
}
	
}



/*campaign*/


.campaign{
	 position:relative;
	margin:auto;
	left:0;
	right:0;
	width:95%;
	max-width: 1000px;
}

.max800{
	max-width: 800px;
	margin:auto;
}


.cp_tweet_area{
    display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
    padding-bottom: 5rem;

  align-items: center;
}

.cp_tweet_item{
    position: relative;
    width:24%;
/*	 width:32%;*/
    margin-bottom: 1rem;
}

.cp_tweet_item.last{
   
    width:49%;
	/*margin:auto;*/
 
}




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


    
   .cp_tweet_area{
    display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
    padding-bottom: 5rem;
}

.cp_tweet_item{
    position: relative;
    width:49%;
    margin-bottom: 0.5rem;
} 
	
	.cp_tweet_item.last{
   
    width:100%;
 
}
    
    
}




/*gallery*/


/*slick*/


#gellery{
	margin-top:5rem;
}

.slideWrapper{
	
		/*max-width: 600px;*/ /* ×1 */
	max-width: 1200px !important; /* ×2 jsの数も修正 */

/*	overflow-x: hidden;
	overflow-y: hidden;*/
	opacity: 0;
	
	margin:auto;
	margin-bottom: 4rem !important;
}

.sliderwaku{
	position: relative;
	display: block;
	padding: 0px 5px 0;
	overflow: hidden;
	
	}



.sliderwaku2{
	position: relative;
	display: block;
	padding: 0;
	overflow: hidden;	/*background-color: hsla(32,100%,46%,0.74);*/
	/*background-color: hsla(0,0%,0%,1.00);*/
	}


.slick-arrow {
  position: absolute;
width:4%;
	max-width: 50px;
  top: 0;
  bottom: 0;
  margin: auto;
	cursor:pointer;
	transition: 0.2s ease-in-out;
	opacity: 0.5;
}

.slick-arrow.slick-disabled {
	opacity: 0;
}

.prev-arrow {
  left: 1%;
  z-index: 10;
}
.next-arrow {
  right: 1%;
}





.slick-dots {
    position: absolute;
    bottom: -40px;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    z-index: 100;
}

.slick-dots li.slick-active button:before {
    opacity: 1.0;
    color: #fff;
}

.slick-dots li button:before {
	font-family: 'slick';
	font-size: 13px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	content: '•';
	text-align: center;
	opacity: .3;
	color: #FFFFFF;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}




@media screen and (max-width: 767px) {
	
	
	#gellery{
	margin-top:10rem;
}
	
	.slick-arrow {
  position: absolute;
width:3%;
	max-width: 50px;
  top: 0;
  bottom: 0;
  margin: auto;
	cursor:pointer;
}
	
	
	.button-container{
	width:100%;
		
	}
	
	.button-item{
	position: relative;
	width:48%;
}
	
	
	.section__bnr{
		/*max-width:342px;*/
		margin: auto;
		/*padding:0 1rem;*/
	}
	
	.section__trailer__item{
	width: 95%;
	/*	margin: 10px 0px;*/
	
}
	
	.section__trailer__item a {
		width: 100%;
	}
	
.trailer-overlay {
		
	}
	
	.section__bnr__item{

	/*	margin:0 10px;*/
}
	
	
	.slick-dots {
    position: absolute;
    bottom: -40px;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    z-index: 100;
}


	
	

.slick-dots li {
    position: relative;
    display: inline-block;
    width: 10px;
    height: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
}
	
	

.slick-dots li button:before {
	font-family: 'slick';
	font-size: 10px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	content: '•';
	text-align: center;
	opacity: .3;
	/*color: #FFFFFF;*/
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
	
	/*.slick-dots li.slick-active button:before {
    opacity: 1.0;
    color: #fff;
}*/
	

	
}




/*wallpaper*/



.wallpaper-container {
	display: flex;
  flex-direction: row;
  flex-wrap: wrap;
/*  justify-content: space-between;*/
 /* justify-content: center;*/
	justify-content: space-around;
 
  align-items: center;
}


.wallpaper-item{
	width:45%;
	margin-bottom: 5rem;
}

.wallpaper-img{
	width:70%;
	max-width: 250px;
	margin: 0 auto 2rem;
}



@media screen and (max-width: 767px) {
	
	.wallpaper-item{
	width:80%;
	margin-bottom: 5rem;
}
	
	
}


/*tween24*/

#box{
	
	/*top:20%;
	left:10%;*/
}

.box{
	opacity: 0;
	position: relative;
	width:50px;
	height:50px;
	margin-bottom: 1rem;
	background-color: aqua;
}





