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

/* ------------------------ common ---------------------------------------------------------------------------*/
html{
    font-size: 62.5%;
}

body{
	background: #2b2b2b url("../img/bg.jpg") repeat;
	min-width:320px;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

img.sp{width:100%;}

img{width:100%;}

a{
	color:#fff;
	text-decoration: none;
}
a:hover{
}

.pc { display: inline-block !important; }
.sp { display: none !important; }

@media only screen and (max-width: 768px) {
.pc { display: none !important; }
.sp { display: inline-block !important; }
}

strong{
	font-weight:bold;
}

/* ------------------------ loading ---------------------------------------------------------------------------*/

#loader-bg {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background: #dc4f91;
    z-index: 1000;
 }

#loading img{
	animation: flash 1s linear infinite;
    position: absolute;
    top:0;
	bottom:0;
	left:0;
	right:0;
    margin: auto;
    z-index: 10000;
	width:80%;
	height:auto;
  }

@keyframes flash {
  0%,100% {
    opacity: 1;
  }

  50% {
    opacity: 0;
  }
}
 
#contents p{
	position:absolute;
	line-height:30px;
	width:600px;
	text-align:center;
	top:50%;
	left:50%;
	margin-top:-15px;
	margin-left:-300px;
}
/* ---------------------------- header -----------------------------------------------*/
header{
	position:fixed;
	z-index:500;
	width:100%;
	border-bottom:1px solid rgba(43,29,29,0.50);
	box-sizing: border-box;
	top:0;
}

nav{
	width: 100%;
	height: 42px;
	position: relative;
	background:url("../img/bg_pink.jpg");
}


.drawer{
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	position: relative;
	height: 42px;
	padding: 0 1em;
}

/*----*/

.navbar_toggle{
	z-index:9999;
}
.navbar_toggle_icon {
	position: relative;
	display: block;
	height: 2px;
	width: 30px;
	background: #000;
	-webkit-transition: ease .5s;
	transition: ease .5s;
}
.navbar_toggle_icon:nth-child(1) {
	top: 0;
}
.navbar_toggle_icon:nth-child(2) {
	margin: 8px 0;
}
.navbar_toggle_icon:nth-child(3) {
	top: 0;
}
/*OPEN時の動き*/
.navbar_toggle.open .navbar_toggle_icon:nth-child(1) {
	top: 10px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.navbar_toggle.open .navbar_toggle_icon:nth-child(2) {
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	opacity: 0;
}
.navbar_toggle.open .navbar_toggle_icon:nth-child(3) {
	top: -10px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/*----*/

.menu{
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
	-webkit-transition:ease .5s;
	transition:ease .5s;
	z-index:1000;
}
.menu ul li{
	padding: 2rem;
	background:#000;
	font-size:1.8rem;
	font-family: 'Sigmar One', cursive;
	border-bottom:1px solid #CCC;
	font-weight:normal;
	text-align: center;
}
.menu ul li:first-child{
	border-top: 1px solid #CCC;
}
.menu ul li a{
	display: inline-block;
	width:100%;
	height:100%;
	color:#fff;
	text-decoration: none;
}
/*OPEN時の動き*/
.menu.open {
	-webkit-transform:translateX(0);
	transform:translateX(0);
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

/*----*/

@media screen and (min-width: 1024px) {
	nav{
		display: flex;
		flex-direction: row;
	}
	.navbar_toggle{
		display: none;
	}
	.menu{
		width: 100%;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
	.menu ul{
		height: 42px;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	.menu ul li:first-child{
		border: none;
	}
	.menu ul li{
		padding: 0 1em;
		font-size:1.6rem;
		border: none;
		background:none;
	}
	.menu ul li a{
	display: inline;
		color:#FFF;
		text-decoration: none;
	}
	.menu ul li a:hover{
		color:#000;
		text-decoration: none;
	}
}

/* ------------------------ top -----------------------------*/
#top{
	margin-top:6rem;
}

/* ------------------------ main ---------------------------*/

#title{
	text-align: center;
	margin:2.4rem auto;
	max-width: 640px;
}
#title img{
	width: 96%;
}
@media only screen and (min-width: 768px) {
#title{
	margin:1% auto;
}
#title img{
	width:900px;
}
}

@media only screen and (min-width: 768px) {
#tagline{
	max-width: 100%;
	}
#title{
	max-width: 100%;
}
}

#poster{
	text-align: center;
	width:92%;
	margin: 0 auto;
}

@media only screen and (min-width: 768px) {
	#poster{
	width:90%;
	max-width: 1200px;
}
}

#poster ul{
	display: inline-block;
}
.poster img {
	border:1px solid #ccc;
}
@media only screen and (min-width: 768px) {
	#poster ul{
		width: 45%;
		margin:2%;
	}
	.poster img{
	}
}
.roadshow{
	padding: 2% 2% 2%;
}
.roadshow img{
}
@media only screen and (min-width: 768px) {
	.roadshow{
		padding: 2% 2% 6%;
	}
}
.bnr{
	margin-bottom:40px;
}
.bnr img{
	border:1px solid #000;
	box-shadow: 2px 4px 2px rgba(0,0,0,0.8);
	width:80%;
}
@media only screen and (min-width: 768px) {
	.bnr{
		margin-bottom:30px;
	}
}
.bnr a:hover{
	opacity: 0.6;
}
/* ------------------------ social ---------------------------------------------------------------------------*/
ul.social{
	margin-bottom:2%;
	padding:0;
}
.social{
	text-align: center;
}
.social li{
	display: inline-block;
	margin:0 1%;
}
.btn{
	border-radius: 48px;
	position:relative;
	display:inline-block;
	width:48px;
	height:48px;
	font-size:18px;
	text-decoration:none;
	font-weight:bold;
	transition:.5s;
}
.btn:hover{
	color:#fff;
}
.btn i{
	position:absolute;
	top:50%;
	left:50%;
	-ms-transform:translate(-50%,-50%);
	-webkit-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);
}
/* Twitter */
.btn.fl_tw{
	background:#e84692;
}
.btn.fl_tw:hover{
	background:#55acee;
}
/* Facebook */
.btn.fl_fb{
	background:#e84692;
}
.btn.fl_fb:hover{
	background:#3b5998;
}



/* ----------------------------- movie ----------------------*/
#movie{
	background-image:url("../img/bg_pink.jpg");
	padding:4rem 0;
	margin:4rem 0;
}
#movie .section-ttl{
	
}
#movie-content{
	width:99%;
	margin:0 auto;
	padding:10px;
}
@media screen and (min-width: 768px) {
#movie-content{
	max-width:1240px;
	padding:20px;
}
}
#movie-wrapper {
    position: relative;
    width:100%;
	max-width:1200px;
	margin:0 auto;
}
#movie-wrapper:before {
    content:"";
    display: block;
    padding-top: 56.25%; /* 高さと幅の比を16:9に固定。9/16*100=56.25 */
}
#movie-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#player {
}
#thumbnail {
    text-align: center;
	clear: both;
	width:100%;
	margin:0 auto;
}


#thumbnail li {
	position:relative;
	display: inline-block;
	width:32%;
	max-width:200px;
	margin:4px 2px 0;
	vertical-align: top;
	color:#000;
	font-size:0;
}
#thumbnail li:hover{
	opacity:0.6;
}
#thumbnail li img {
	border:1px solid #ccc;
}
.movie-title{
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	background:rgba(0,0,0,0.3);
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	font-size:1.2rem;
	font-weight:bold;
	text-decoration: none;
}
@media only screen and (min-width: 768px) {
.movie-title {
	font-size:1.6rem;
}	
}

/* ----------------------------- コンテンツ 共通 -------------------------------------------*/
.content-box{
	position: relative;
	width:90%;
	margin:10rem auto 0;
	padding:3rem 0 1rem;
	background:rgba(0,0,0,1);
	color:#fff;
}
@media screen and (min-width: 768px) {
.content-box{
	max-width:938px;
	padding:3rem 0 4rem;
}
}

h1.section-ttl{
	font-size:3rem;
	font-family: 'Sigmar One', cursive;
	font-weight:normal;
	text-align: center;
	color:#fff;
}
.content-box h1{
margin-bottom:3rem;
}


@media screen and (min-width: 768px) {
h1.section-ttl{
	font-size:5rem;
}
.content-box h1{
margin-bottom:5rem;
}
}



.content-box h2{
	text-align:center;
	margin-bottom:2.4rem;
}

.content-box:before{
	position: absolute;
	top:-51px;
	left:10px;
	content: '';
	display: inline-block;
	width: 60px;
	height: 102px;
	background-image: url(../img/skeleton.png);
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
}
.content-box:after{
	position: absolute;
	top:-30px;
	right:10px;
	content: '';
	display: inline-block;
	width: 60px;
	height: 102px;
	background-image: url(../img/ufo.png);
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
}

@media screen and (min-width:768px) and ( max-width:768px) {
.content-box:before{
	top:-50px;
	width: 80px;
	height: 136px;
}
.content-box:after{
	width: 80px;
	height: 136px;
}
}

@media screen and (min-width: 768px) {
.content-box:before{
	top:-60px;
	left:20px;
	width: 122px;
	height: 165px;
}
.content-box:after{
	top:-30px;
	right:20px;
	width: 142px;
	height: 116px;
}
}
img.logo_orgy{
	width:80%;
	max-width:320px;
}

img.logo_plan9{
	width:80%;
	max-width:320px;
}

.first-content{
	margin:0 auto 6rem;
}
.second-content{
	margin:0 auto 2rem;
}

.content-txt{
	width:90%;
	margin:0 auto;
	font-size:1.2rem;
	line-height: 1.8em;
}

@media screen and (min-width: 480px) {
.content-txt{
	width:80%;
	font-size:1.6rem;
}
}

p{
	margin-bottom:1em;
}

/* ------------------------ share ---------------------------------------------------------------------------*/

.share{
	width:100%;
	text-align: center;
}
.share li{
	display:inline-block;
	height:23px; 
	vertical-align: top !important;
}

/* ------------------------ intro ---------------------------------------------------------------------------*/
#intro-txt{
	width:90%;
	font-size:1.4rem;
	line-height: 2.4rem;
	text-align: center;
	margin:0 auto 4rem;
}
#intro-sign{
	font-size:1.6rem;
	text-align: center;
	font-weight: bold;
	padding:1rem 0 2rem;
}
@media screen and (min-width: 480px) {
	#intro-txt{
	font-size:1.6rem;
	line-height: 3.2rem;
}
	#intro-sign{
	font-size:2.1rem;
}
}


.small-txt{
	font-size:0.8em;
}
.intro-photo{
	position: relative;
	width:96%;
	margin:2.4rem auto;
}
.intro-photo:after{
 background: -ms-linear-gradient(top, 
       rgba(255,255,255, 1),
       rgba(255,255,255, 0.9) 30%,
       rgba(255,255,0, 0));
    background: -moz-linear-gradient(top 90deg, 
       rgba(255,255,255, 1),
       rgba(255,255,255, 0.9) 30%,
       rgba(255,255,0, 0));
    background: -webkit-gradient(linear, top,  
       from(rgba(255,255,255, 1)),  
       color-stop(0.3, rgba(255,255,255, 0.9)),  
       to(rgba(255,255,0, 0)));
    background: linear-gradient(top 90deg, 
       rgba(255,255,255, 1),
       rgba(255,255,255, 0.9) 30%,
       rgba(255,255,0, 0));
}

.credit{
	background:#333;
	margin:2rem auto;
	padding:2rem;
	font-size:1.2rem;
	line-height: 1.6em;
	width:90%;
}

@media screen and (min-width: 768px) {
.credit{
	width:80%;
}
}
/* ------------------------ staff ---------------------------------------------------------------------------*/
.name-box{
	margin-bottom:1.8rem;
	font-weight:bold;
	font-size: 1.4rem;
}

.name-box span{
	display: block;
	margin-bottom:0.4rem;
}

@media screen and (min-width: 768px) {
.name-box{
	font-size: 1.8rem;
}
.name-box span{
	margin-bottom:0.8rem;
}
}
.name-box .name_jp{
	font-size:1.4em;
}

.name-box .orgy{
	color:#e84692;
}
.name-box .plan9{
	color:#fff000;
}
.name-box .name_eng{
	font-style: italic;
}
.staff-txt{
	margin-bottom:4rem;
}

/* ------------------------ theater ---------------------------------------------------------------------------*/

.theater-content{
	margin:0 auto;
	width:96%;
	font-size:1.2rem;
}

.theater-content a{
	color:#000;
	text-decoration: underline;
}

.theater-content a:hover{
	color:#333;
	text-decoration: none;
}

@media screen and (min-width: 480px) {
		.theater-content{
		width:90%;
		font-size:1.4rem;
	}
}

@media only screen and (min-width: 768px) {
	.theater-content{
		width:800px;
		font-size:1.6rem;
	}
}

.theater-content.orgy{
	background:#e84692;
	color:#000;
	margin-bottom:2rem;
}

.theater-content.plan9{
	background:#f7ea03;
	color:#000;
}

.theater-content tr{
	margin:4px;
	border-bottom:2px solid #000;
	border-right:2px solid #000;
}

.theater-content caption{
	padding:2rem 0;
	font-weight: bold;
	font-size:1.6rem;
	line-height: 1.4em;
}

@media screen and (min-width: 480px) {
	.theater-content caption{
		font-size:2.4rem;
	}
}


.theater-content.orgy caption{
	color:#e84692;
}

.theater-content.plan9 caption{
	color:#f7ea03;
}

.theater-content th,
.theater-content td{
	padding:2rem 0rem;
}

@media screen and (min-width: 480px) {
	.theater-content th,
	.theater-content td{
		padding:2rem;
	}
}

.theater-content td{
	text-align: center;
}

.theater-content.orgy td{
	background: rgba(255,255,255,0.2);
}

.theater-content.plan9 td{
	background: rgba(255,255,255,0.4);
}
@media screen and (min-width: 480px) {
.theater-content .region{
	font-weight:bold;
	padding:0 0 0 0.5rem;	
}
}

/* ------------------------ footer ---------------------------------------------------------------------------*/
footer{
	padding:2.4rem;
}
#footer-title{
	text-align:center;
	margin-bottom:2.4rem;
}
#footer-title img{
	width:90%;
	max-width:680px;
}
