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

@style.css

©︎ULM Co.,Ltd. - https://www.ulm-design.com
************************************************/
@media all and (min-width:813px) {
	
#top{
  position: relative;
  display: flex;
  flex-wrap: wrap;
}

#dvd-bnr {
  width: 60%;
  margin: 0 auto;
}

#dvd-bnr a {
  display: block;
  transition: opacity .4s ease;
}

#dvd-bnr a:hover {
  opacity: .8;
}

.block {
  display: block;
}

.top-left {
  position: relative;
  width: 55%;
  height: 100%;
  min-width: 563px;
  min-height: 579px;
}

.main-white {
  position: absolute;
  width: 100%;
  background: #fff;
  opacity: 1;
}

#main0 {
  top: 0;
  left: 0;
  height: 24.8%;
}

#main1 {
  top: 24.8%;
  left: 0;
  height: 29.2%;
}

#main2 {
  top: 53.9%;
  left: 0;
  height: 21.1%;
}

#main3 {
  top: 74.7%;
  left: 0;
  height: 26%;
}

#copy0 {
  opacity: 0;
  position: absolute;
  top: 20px;
  width: 40%;
  /* padding: 0 5%; */
  max-width: 60px;
  left: 20px;
}

#copy1 {
  opacity: 0;
  position: absolute;
  top: 77%;
  left: 36%;
  width: 50%;
  z-index: 2;
}
	
#copy2 {
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 0;
	right: 0;
	margin: auto;
  width: 80%;
	max-width: 1000px;
  z-index: 2;
}
	
.top-bnr {
    width: 80%;
    max-width: 650px;
    margin: 0 auto;
    padding: 60px 0 0 0;
    display: flex;
    justify-content: center;
	}
	
.top-bnr a {
    width: 300px;
    margin: 0 auto;
	  display: block;
}

@media screen and (max-width:1024px) {
  /*最小画面時調整*/
  .top-left {
    width: 563px;
    height: 579px;
  }
	
#copy0 {
	  top: 10px;
    max-width: 52px;
}
	
#copy2 {
  width: 65%;
	max-width: 950px;
}
}
	
@media screen and (max-width:1390px) {
	
	#logo {
  max-width: 350px!important;
}
	}

.top-right {
  position: relative;
  width: 45%;
  padding-top: 6%;
	background: #00d2ff;
  background: -webkit-linear-gradient(to top, #ffdee6, #dee2ff,#b5eaff);
  background: linear-gradient(to top, #ffdee6, #dee2ff,#b5eaff);
}
	
@media screen and (min-width:1600px) {
	
.top-right {
  padding-top: 8%;
}
	}

.top-right-inner {
  opacity: 0;
}

#logo {
  width: 80%;
  max-width: 420px;
  margin: 0 auto 15px;
}

#billing {
  width: 60%;
  max-width: 390px;
  margin: 0 auto;
}

#roadshow {
    width: 35%;
    max-width: 250px;
    margin: 40px auto;
}

.contents-ttl {
  padding: 50px 0 20px;
  color: #00b0ec;
  font-family: 'Sorts Mill Goudy', serif;
  font-size: 30px;
  font-weight: normal;
  text-align: center;
  letter-spacing: .2em;
}

.sns-nav-container {
  padding: 50px 0;
}

.sns-nav-container .contents-ttl {
  font-size: 20px;
  padding: 10px 0;
}

.sns-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0;
}


.sns-nav li{
  width: 130px;
  box-shadow: 0 5px 15px rgba(119,152,189,.1);
  margin: 0 5px;
  border: 1px solid transparent;
  transition: all .3s ease;
}

.sns-nav li img {
  vertical-align: bottom;
}

.sns-nav li:hover{
	border: 1px solid #f5c3d0;
}

.about-btn {
    width: 350px;
    margin: 10px auto;

}

.about-btn img {
  vertical-align: bottom;
    box-shadow: 0 5px 15px rgba(119,152,189,.1);
    border: 1px solid #fff;
    transition: all .3s ease;
}

.about-btn img:hover{
	border: 1px solid #f5c3d0;
}

.blurtxt {
	-moz-animation: blur 1.5s ease-in-out 0s 1 normal;
	-webkit-animation: blur 1.5s ease-in-out 0s 1 normal;
	animation: blur 1.5s ease-in-out 0s 1 normal;
	-ms-animation: blur 1.5s ease-in-out 0s 1 normal;
    }

@keyframes blur {
	0% {filter:blur(30px);}
	100% {filter:blur(0);}
}

.contents-nav-container {
  padding: 20px 5% 0;
}

.contents-nav {
  display: -webkit-flex;
  display: flex;
}

.contents-nav li {
  padding: 10px;
}

	/*-----------------------
	#top
	-----------------------*/
	
	#top {
		width: 100%;
		min-width: 1024px;
		background: #d3eef8;
    overflow: hidden;
	}
	
	#top-bg {
    background: #d3eef8 url(../img/top/main.jpg) bottom center no-repeat fixed;
    background-size: cover;
    min-height: 100vh;
		width: 100%;
    transform: scale(1.08);
    opacity: 0;
    transition: all 2.8s linear;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
}
	
#top-bg.show {
    opacity: 1;
    transform: scale(1);
    /* filter: blur(0px); */
}	
	
.delayItem {
    opacity: 0;
    z-index: 2;
}	

	#sp-bg {
		display: none;
	}

	#top-main {
		width: 100%;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
	}

	.top-inner {
		text-align: center;
		position: absolute;
		bottom: 2vw;
		right: 0;
		left: 0;
		margin: auto;
	}

	#top-main-logo {
		z-index: 1;
    width: 500px;
    margin: auto;
		opacity: 0;
		padding: 0 0 2.5% 0;
		transition: all 2s linear;
	}
	
	#top-main-logo.show {
		opacity: 1;
		
	}

	#top-main-billing {
		width: 300px;
    position: absolute;
    right: 2vw;
    bottom: 2vw;
	}

	#top-koukai {
		z-index: 2;
		width: 200px;
		 position: absolute;
		right: 3.6vw;
    bottom: 6vw;
		padding: 2% 0%;
	}
	
	.pc-lead2 {
    width: 610px;
    margin: 0 auto;
}

	#top-lead {
    position: absolute;
    top: 30px;
    left: 30px;
		width: 30%;
    max-width: 500px;
		opacity: 0;
		transition: all 2s linear;
	}
	
	#top-lead.show {
    opacity: 1;
}	

	.top-sns-btn {
		width: 540px;
		margin: 0 auto;
		display: flex;
		padding: 2% 0;
	}
	
  /*
  #sns
  -------------------------------*/
	
	.sns {
    background: #fff;
	  padding: 5vw 0!important;
}
	
.sns-inner {
    width: 650px;
	  margin: 0 auto;
}
	
.sns {
	color: #ffffff;
	margin: 0 auto;
	padding: 0 0 40px;
	position: relative;
	z-index: 3;
}

.sns h2 {
	width: 190px;
	padding-top: 12px;
	margin: 0 auto;
}
	
.tw-txt {
    color: #0089d4;
    margin: 0 auto;
    text-align: center;
    font-weight: bold;
    margin-bottom: 10px;
    font-size: 13px;
    line-height: 2;
    width: 90%;
    margin: 0 auto;
}	

#sns-icon {
	padding: 30px;
	display: flex;
	justify-content: center;
  　/*width: 250px;
    margin: 0 auto;*/
}

#sns-icon a {
	transition: color .6s;
	display: block;
	overflow: hidden;
	width: 300px;
	/*height: 60px;*/
	margin: auto;
	transition: all 250ms ease-out;
	text-align: center;
	padding-left: 0px;
	margin: 0 10px; 
}

#sns-icon a:hover {
	opacity: .8;
}
	
.btn-container {
    display: flex;
    justify-content: center;
    text-align: center;
}

	.news-btn {
    width: 300px;
    margin: 0 auto;
		transition: all 250ms ease-out;
}
	
	.news-btn:hover {
    opacity: .8;
}	
	
	.theater-btn {
    width: 300px;
    margin: 0 auto;
		transition: all 250ms ease-out;
}
	
	.theater-btn:hover {
    opacity: .8;
}
	
  /*
  #movie
  -------------------------------*/
#top-movie-container {
	width: 250px;
	position: relative;
	top: 20px;
	z-index: 11;
	left: 0;
	right: 0;
	margin: auto;
}
	
#top-movie-container-inner {
		width: 250px;
		cursor: pointer;
		position: relative;
	}	

	#top-movie-container-inner {
		height: 134px;
		overflow: hidden;
		background: #000;
	}

.movie-cap,.top-movie-caption {
	font-weight: 700;
	text-align: center;
}

.top-movie-more-btn .arrow-icon {
	display: block;
	margin: 5px auto 0;
}

.top-movie-caption {
	position: absolute;
	z-index: 2;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0,0,0,.3);
	padding: 8px 0;
	color: #00b8ff;
	font-size: 16px;
}

#top-movie-thumb-box {
	position: relative;
	height: 103px;
	-webkit-clip-path: polygon(9% 1%, 100% 0, 91% 100%, 0% 100%);
	clip-path: polygon(9% 1%, 100% 0, 91% 100%, 0% 100%);
	cursor: pointer;
}

#top-movie-thumb-box:after {
	content: "";
	display: block;
	padding-top: 56.25%;
}

.player-overlay {
	width: 100%;
	height: 100%;
	color: red;
	background: url(../common/img/overlay.png) rgba(0,0,0,.6);
	background-size: 2px 2px;
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	opacity: .5;
}

.play-icon,.pv-box .play-icon {
	width: 54px;
	height: 54px;
	margin: auto;
	display: block;
	line-height: 1em;
	top: 0;
	right: 0;
	bottom: 0;
	position: absolute;
	left: 0;
}

.pv-box .play-icon {
	z-index: 1;
}

#player {
	position: absolute;
	z-index: 0;
	top: -100px;
	left: 0;
	width: 100%;
	height: calc(100% + 200px);
}

#movie-list,.pv-box {
	z-index: 1;
	position: relative;
}

#movie-box {
	margin: 0 0 50px;
}

#movie-list {
	width: 100%;
	margin: 0 auto;
}

#movie-ttl-pc {
	width: 90px;
	margin: 0 auto;
	padding: 5% 0 0;
}

.movie-inner {
	padding: 4% 0;
	width: 90%;
	margin: 0 auto;
}

.slick-dotted.slick-slider {
	margin-bottom: 0;
}

.slick-next {
	right: -20px;
}

.slick-prev, .slick-next {
	top: 45%;
}

.slick-prev:after {
	content: url(../img/common/left.png);
	width: 35px;
	height: 16px;
	display: block;
	position: absolute;
	top: 0;
}

.slick-prev:before {
	content: "" !important;
}

.slick-next:before {
	content: "" !important;
}

.slick-next:after {
	content: url(../img/common/right.png);
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
}
	
		/* Dots */
.movie-inner .slick-dotted.slick-slider {
	margin-bottom: 30px;
}

.movie-inner .slick-dots {
	position: absolute;
	bottom: 0;
	width: 100%;
	/*/*height: 100%;*/*/
	list-style: none;
	text-align: center;
	display: none;
}

.movie-inner .slick-dots li {
	position: relative;
	width: 12px;
	height: 12px;
	margin: 0 10px;
	cursor: pointer;
	display: inline-block;
}

.movie-inner.slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: block;
	width: 20px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
}

.movie-inner .slick-dots li button:hover,
.movie-inner .slick-dots li button:focus {
	outline: none;
}

.movie-inner .slick-dots li button:hover:before,
.movie-inner .slick-dots li button:focus:before {
	opacity: 1;
}

.movie-inner .slick-dots li button:before {
	font-family: 'slick';
	font-size: 6px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	width: 12px;
	height: 12px;
	background: none;
	border: 2px solid #41c9e6;
	border-radius: 30px;
	content: '';
	text-align: center;
	opacity: .6;
	color: black;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.movie-inner .slick-dots li.slick-active button:before {
	opacity: 1;
	background: #41c9e6;
}

.slick-prev:before, .slick-next:before {
	opacity: 1;
}
	
.pv-box {
		width: 350px;
		margin: 10px;
	}

.pv-box-inner {
	display: block;
	position: relative;
	width: 100%;
	box-shadow: 0 0 8px rgba(84, 84, 84, 0.33);
}

.pv-box-inner::after {
	content: "";
	display: block;
	padding-top: 56.25%;
}

.pv-thumb,.youtube {
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.movie-cap {
	line-height: 1.9;
	color: #222;
	padding: 15px 0;
}	
	
  /*
  #intro
  -------------------------------*/
	
	#intro {
		
		background: #d3eef8 url("../img/intro/bg_pc.jpg") bottom center no-repeat fixed;
		background-size: cover;
		
	}
	
	#intro .heading {
    width: 300px;
    margin: 0 auto;
}

	.intro-lead-inner{
		padding: 0 0 5vw 0;
		min-height: 830px;
		width: 100%;
	}
	
	#lines-area {
    position: relative;
		left: 0;
		right:0;
		margin: auto;
    width: 970px;
		justify-content: center;
}
	
	.lines0 {
    position: absolute;
    left: 0;
}
	
	.lines1 {
    position: absolute;
    right: 0;
}
	
.intro-inner-txt {
	  padding: 5vw 0;
    background: rgba(152, 210, 255, 0.69);
}	
	
	#intro-lead2 {
    width: 470px;
    margin: 30px auto;
}
	
	#intro-lead {
		width: 55%;
		max-width: 750px;
		margin: 0 auto;
		padding: 3vw 0 0 0;
	}
	
.intro-item {
    color: #222;
    font-size: 15px;
    line-height: 25px;
    font-weight: 600;
    margin: 0 0 50px;
    width: 750px;
    margin: 0 auto;
}

	#intro-txt {
		width: 750px;
		margin: 0 auto;
		text-align: center;
		font-size: 15px;
		font-weight: bold;
		line-height: 2.2em;
		padding: 15px 0;
    margin-bottom: 10px;
    font-size: 15px;
    line-height: 2;
    letter-spacing: .05em;
	}
	
	.intro-photo {
    width: 500px;
    margin: 100px auto 0;
}

	.dash {
		letter-spacing: -0.2em;
	}
	
/* Dots */
#intro .slick-dotted.slick-slider {
	margin-bottom: 30px;
}

#intro .slick-dots {
	position: absolute;
	bottom: -50px;
	width: 100%;
	height: 15px;
	list-style: none;
	text-align: center;
}

#intro .slick-dots li {
	position: relative;
	width: 12px;
	height: 12px;
	margin: 0 5px;
	cursor: pointer;
	display: inline-block;
	margin-bottom: 15px;
}

#intro.slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: block;
	width: 20px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
}

#intro .slick-dots li button:hover,
#intro .slick-dots li button:focus {
	outline: none;
}

#intro .slick-dots li button:hover:before,
#intro .slick-dots li button:focus:before {
	opacity: 1;
}

#intro .slick-dots li button:before {
	font-family: 'slick';
	font-size: 6px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	width: 10px;
	height: 10px;
	background: none;
	border: 2px solid #fbd6dc;
	border-radius: 30px;
	content: '';
	text-align: center;
	opacity: .6;
	color: black;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#intro .slick-dots li.slick-active button:before {
	opacity: 1;
	background: #ffffff;
}
	
#intro .slick-prev:before {
	content: url(../img/common/left2.png)!important;
}

#intro .slick-next:before {
	content: url(../img/common/right2.png)!important;
}
	
#intro .slick-next {
    right: -35px;
}	
	
#intro .slick-prev {
    left: -45px;
}	
	
	  /*
  #story
  -------------------------------*/
	#story {
		background: #d9a7c7;
    background: -webkit-linear-gradient(to bottom, #fff, #fff2f4);
    background: linear-gradient(to bottom, #fff, #fff2f4);
	}
	
	.story-inner {
    padding: 10vw 0;
}
	
	#story .heading {
    width: 150px;
    margin: 50px auto;
}
	
.story-item {
    color: #222;
    font-size: 15px;
    line-height: 25px;
    font-weight: 600;
    margin: 0 0 50px;
    width: 750px;
    margin: 0 auto;
}	
	
.story-txt {
    width: 800px;
    margin: 0 auto;
	  text-align: justify;
	  font-weight: bold;
    margin-bottom: 10px;
    font-size: 15px;
    line-height: 2;
    letter-spacing: .05em;
	  text-decoration: underline #ddd;
}	
	
.story-photos {
    position: relative;
    min-height: 800px;
    height: 70vh;
    justify-content: center;
    width: 1280px;
    margin: 70px auto;
    left: 0;
    right: 0;
}
	
.story-photo0,
.story-photo1 {
    background: #fff;
    padding: 80px;
}
	
.story-photo2 {
    background: url(../img/photo/2.jpg) no-repeat center center fixed;
    background-size: cover;
	  height: 70vh;
}	
	
.story-photo3 {
    background: url(../img/photo/3.jpg) no-repeat center center fixed;
    background-size: cover;
	  height: 70vh;
}	
	
/* Dots */
#story .slick-dotted.slick-slider {
	margin-bottom: 30px;
}

#story .slick-dots {
	position: absolute;
	bottom: -50px;
	width: 100%;
	height: 15px;
	list-style: none;
	text-align: center;
}

#story .slick-dots li {
	position: relative;
	width: 12px;
	height: 12px;
	margin: 0 5px;
	cursor: pointer;
	display: inline-block;
	margin-bottom: 15px;
}

#story.slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: block;
	width: 20px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
}

#story .slick-dots li button:hover,
#story .slick-dots li button:focus {
	outline: none;
}

#story .slick-dots li button:hover:before,
#story .slick-dots li button:focus:before {
	opacity: 1;
}

#story .slick-dots li button:before {
	font-family: 'slick';
	font-size: 6px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	width: 10px;
	height: 10px;
	background: none;
	border: 2px solid #41c9e6;
	border-radius: 30px;
	content: '';
	text-align: center;
	opacity: .6;
	color: black;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#story .slick-dots li.slick-active button:before {
	opacity: 1;
	background: #41c9e6;
}	
	
#story .slick-prev:before {
	content: url(../img/common/left.png);
}

#story .slick-next:before {
	content: url(../img/common/right.png);
}	

	#story .slick-next	{
		right: -45px;
	}
	
	#story .slick-prev {
    left: -55px;
}
/*-------------------------------

#cast

-------------------------------*/
#cast {
  height: 100%;
  padding: 5vw 0;
	background: url(../img/cast/bg.jpg) no-repeat center center fixed;
  background-size: cover;
}

#cast .heading {
    width: 130px;
    margin: 0 auto;
	  padding: 30px 0;
}

.cast-photo img {
	/*vertical-align: bottom;*/
}

#cast-box {
	width: 1000px;
	margin: 0 auto;
}

.main-cast1 {
	display: flex;
	text-align: center;
	width: 880px;
	margin: 0 auto;
	justify-content: center;
}

.main-cast2 {
	display: flex;
	text-align: center;
	width: 1020px;
	margin: 0 auto;
	justify-content: center;
}

.other-cast1 {
	width: 880px;
	margin: 0 auto;
}

.other-cast1 {
	display: flex;
	text-align: center;
	flex-wrap: wrap;
	justify-content: center;
}

.other-cast1 .box {
	width: 200px;
}

.cast-txt {
	float: right;
	width: 54%;
}

.box {
	margin: 10px 10px 60px;
	transition: opacity 0.7s;
	-moz-transition: opacity 0.7s;
	-webkit-transition: opacity 0.7s;
	-o-transition: opacity 0.7s;
	transition: transform 0.7s;
	-moz-transition: transform 0.7s;
	-webkit-transition: transform 0.7s;
	-o-transition: transform 0.7s;
}

.scale {
  /*overflow: hidden;
	background: #1f0a32;*/;
}

.scale img {
	-moz-transition: -moz-transform 0.5s linear;
	-webkit-transition: -webkit-transform 0.5s linear;
	-o-transition: -o-transform 0.5s linear;
	-ms-transition: -ms-transform 0.5s linear;
	transition: transform 0.5s linear;
}

.scale img:hover {
	opacity: 0.9;
	-moz-transition: -moz-transform 0.5s linear;
	-webkit-transition: -webkit-transform 0.5s linear;
	-o-transition: -o-transform 0.5s linear;
	-ms-transition: -ms-transform 0.5s linear;
	transition: transform 0.5s linear;
}

.cast-photo {
	width: 350px;
	float: left;
}

.modal-overlay {
	z-index: 2;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: rgba(0,0,0,.5);
	-webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  overflow:hidden
}

.modal-open:hover {
	cursor: pointer;
} 

.modal-content {
	position: fixed;
	display: none;
	z-index: 3;
	margin: 10px;
	padding: 45px;
	border-radius: 2px;
	background: #fff3f5;
	width: 900px;
	height: 400px;
	overflow: auto;
	margin-top: 100px;
}

.modal-content img {
/*width:auto;max-height:75vh*/;
}

.cast-name {
	font-size: 23px;
	line-height: 1.2;
	font-weight: bold;
}

.modal-content p {
	max-width: 565px;
	text-align: left;
	color: #333;
	text-align: justify;
	margin-bottom: 10px;
	font-size: 15px;
	line-height: 2;
	letter-spacing: .05em;
}

.cast-name span {
	font-size: 15px;
	display: block;
	padding: 8px 0 0 0;
	color: #c00f18;
}

.new {
	display: inline-block!important;
	color: #222!important;
}

.modal-close {
	position: absolute;
	top: 5px;
	right: 10px;
	color: #868686;
	font-size: 35px;
	line-height: 1;
	font-weight: bold;
	text-decoration: none;
}

.modal-close:hover {
	cursor: pointer;
}

.modal-content h2 {
	text-align: left !important;
	padding: 10px 0 !important;
	border-bottom: 1px solid #c00f18;
	margin: 0 0 10px 0;
}
	
/*-------------------------------

#staff

-------------------------------*/
	
#staff {
		background: #d9a7c7;
		background: -webkit-linear-gradient(to bottom, #fff, #fff2f4);
		background: linear-gradient(to bottom, #fff, #fff2f4);
	  padding: 5vw 0;
	}	

#staff .heading {
    width: 140px;
    margin: 30px auto;
}

.staff-profile {
    padding: 30px 0;
}
	
.staff-name {
    color: #ef5f76;
    text-align: center;
    font-size: 23px;
    font-weight: bold;
}
	
.staff-name span {
    font-size: 15px;
    display: inline-block;
    margin: 0 10px 0 0;
}
	
.staff-txt {
    color: #222;
    font-size: 14px;
    line-height: 24px;
    font-weight: 600;
    margin: 0 auto;
    width: 650px;
	  padding: 30px 0;
	  text-align: justify;
}
	
/*-------------------------------

#original

-------------------------------*/
	
#original {
    background: #a5f7ff;
    background: -webkit-linear-gradient(to bottom, #fff, #a5f7ff);
    background: linear-gradient(to bottom, #fff, #a5f7ff);
	  padding: 5vw 0;
	}	

#original .heading {
    width: 200px;
    margin: 30px auto;
}

.inner-item {
    display: flex;
    width: 1000px;
    margin: 0 auto;
	  padding: 50px 0;
}
	
.original-name {
    color: #1ea0dd;
    text-align: left;
    font-size: 23px;
    font-weight: bold;
}
	
.original-name span {
    font-size: 15px;
    display: inline-block;
    margin: 0 10px 0 0;
}
	
.txt-item {
    margin: 0 0 0 30px;
}	
	
.original-txt {
    color: #222;
    font-size: 14px;
    line-height: 24px;
    font-weight: 600;
    margin: 0 auto;
    width: 360px;
	  padding: 20px 0 50px;
	  text-align: justify;
}
	
.txt-item .original-txt {
    padding: 10px 0 50px;
}
	
.original-book {
    display: flex;
    margin: 0 0 0 30px;
}
	
.original-photo {
    width: 220px;
    margin: 0 auto 10px;
}
	
.original-ttl {
    text-align: left;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.5;
}

.original-ttl span {
    font-size: 12px;
    display: inline-block;
    margin: 0 10px 0 0;

}

	
	
 /*
  #song
  -------------------------------*/
#song {
    position: relative;
    min-height: 500px;
    background: #fff3f5;
    padding: 5vw 0 8vw;
}
	
#song  .heading {
    width: 250px;
    margin: 0 auto;
	  padding: 50px 0;
}

#song-inner {
    /*width: 720px;
    margin: 0 auto;*/
    /* padding: 50px 0 0; */
    /*position: absolute;
    top: 20%;
    left: 0;
    right: 0;*/
}
	
.song-link {
    width: 600px;
    margin: 0 auto;
    display: block;
}

#song .con-ttl {
    /*border-bottom: solid 1px #fff;*/
	margin: 0 0 48px;
}

.song-jacket {
    width: 320px;
    margin: 0 auto;
}
	
.song-txt-box {
    padding: 30px 0;
    border-radius: 3px;
}
	
.song-title {
    padding: 30px;
    background: #fff;
    width: 600px;
    margin: 0 auto;
    border-radius: 5px;
	   -webkit-transition: all .3s;
    transition: all .3s;
}	
	
.song-title:hover{
    -webkit-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    transform: translateY(-5px);
}	
	
.song-txt {
    color: #00afe4;
    font-size: 25px;
	  line-height: 1.7;
    font-weight: 900;
    letter-spacing: 4px;
    text-align: center;
    position: relative;
    z-index: 0;
	  -webkit-transition: all .3s;
    transition: all .3s;
}
	
.song-txt:hover {
    color: #ef5f76;
}
	
.song-txt span {
	  display: block;
	  font-size: 18px;
	  color: #6d6d6d;
}	

.fa-w-18 {
    font-size: 17px;
}

	
  /*
  #footer
  -------------------------------*/
	#footer-billing {
    text-align: center;
    padding: 30px 0 50px;
    width: 600px;
    margin: 0 auto;
}

#share-container {
    margin: 3vw auto 0;
}	
}
@media screen and (min-width:768px) and ( max-width:1380px) {
	#top-main-logo {
    width: 350px;
	}
	
	#top-koukai {
    width: 150px;
	}
	
	#top-main-billing {
    width: 280px;
	}
	
	.pc-lead2{
		    width: 530px;
	}
}

@media screen and (min-width:768px) and ( max-width:1160px) {
	#top-main-billing {
    width: 240px;
}
	
	.pc-lead2{
		width: 400px;
	}
}

/* IE10〜11 */

_:-ms-input-placeholder, :root .top-inner {
	padding: 5vw 0 0 0;
}

_:-ms-input-placeholder, :root #logo {
	max-width: 360px;
}

_:-ms-input-placeholder, :root .cp-btn {
	font-family: YuGothic, ‘游ゴシック’, “ヒラギノ角ゴ Pro W3”, “Hiragino Kaku Gothic Pro”, “メイリオ“, Meiryo, Osaka, “ＭＳ Ｐゴシック“, “MS PGothic”, sans-serif;
	font-size: 15px;
	padding: 1.8vw 0;
}

_:-ms-input-placeholder, :root .cast-txt {
	width: 74%;
}

	.blur img {
		opacity: 0;
    -moz-transition: -moz-transform 0.5s linear;
    -webkit-transition: -webkit-transform 0.5s linear;
    -o-transition: -o-transform 0.5s linear;
    -ms-transition: -ms-transform 0.5s linear;
    transition: transform 0.5s linear;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
	}	

.img-blur {
	-webkit-animation-name: imageBlur;
	animation-name: imageBlur;
	opacity: 1;
	transition: 1.8s;
}

@-webkit-keyframes imageBlur {
	from {
		opacity: 0;
		-webkit-filter: blur(15px);
		-moz-filter: blur(15px);
		-ms-filter: blur(15px);
		-o-filter: blur(15px);
		filter: blur(15px);
	}

	to {
		opacity: 1;
		-webkit-filter: blur(0px);
		-moz-filter: blur(0px);
		-ms-filter: blur(0px);
		-o-filter: blur(0px);
		filter: blur(0px);
	}
}

@keyframes imageBlur {
	from {
		opacity: 0;
		-webkit-filter: blur(15px);
		-moz-filter: blur(15px);
		-ms-filter: blur(15px);
		-o-filter: blur(15px);
		filter: blur(15px);
	}

	to {
		opacity: 1;
		-webkit-filter: blur(0px);
		-moz-filter: blur(0px);
		-ms-filter: blur(0px);
		-o-filter: blur(0px);
		filter: blur(0px);
	}
}

/************************************************

スマホ

************************************************/
@media all and (max-width:812px) {
	
	#top {
		overflow: hidden;
		position: relative;
    width: 100%;
    height: 100%;
	}
	
	#top-bg {
	transform: scale(1);
	animation-name: blur;
	animation-duration: 3s;
	animation-iteration-count: 1;
}

#top-bg.show {
	opacity: 1;
}
	
	@keyframes blur {
	0% {
		filter: blur(10px);
	}

	100% {
		filter: blur(0);
	}
}

	.sp-lead {
    position: absolute;
    top: 6px;
    right: 5px;
    width: 15%;
    max-width: 16px;
		animation-name: blur;
	animation-duration: 4.5s;
	animation-iteration-count: 1;
	}

	.sp-lead {
		
		opacity: 0;
		transition: all 0.5s cubic-bezier(.03,.88,.35,1.26);
	}

	.sp-lead.show {
		opacity: 1;
	}
	
	.sp-top-container {
    position: absolute;
    bottom: 15vw;
		text-align: center;
    justify-content: center;
    left: 0;
    right: 0;
    margin: auto;
}
	
	.sp-top-lead {
    width: 75%;
    max-width: 300px;
    margin: 0 0 0 120px;
}
	
	.sp-lead2 {
    justify-content: center;
    width: 92%;
    margin: 13px auto;
}

	.sp-logo {
		justify-content: center;
		width: 73%;
		max-width: 450px;
		margin: 0 auto;
		opacity: 0;
	}

	.sp-logo.show {
		opacity: 1;
	}
	
.sp-top-koukai {
    justify-content: center;
    width: 40%;
    max-width: 170px;
	  margin: 20px auto;
}	

.billing-sp {
    width: 80%;
	  max-width: 400px;
    margin: 10vw auto;
}

#top-main {
	width: 100%;
}

#top-sp-main-img {
	position: relative;
}

#top-billing-container {
	opacity: 0;
	transition: all 0.5s cubic-bezier(.03,.88,.35,1.26);
}

#top-billing-container.show {
	opacity: 1;
}

#top-billing {
	padding: 5%;
	width: 80%;
	margin: 0 auto;
}

#top-copy {
	position: absolute;
	z-index: 2;
	top: 12.6vw;
	left: 6.8vw;
	width: 81.2vw;
}

.sns-inner {
    width: 90%;
    margin: 5vw auto;
}
	
.sns-inner h2 {
    width: 190px;
    margin: 0 auto;
}	

	#top-koukai,
  #mini-ttl {
		display: none;
	}

	.top-sns-btn {
		width: 100%;
		margin: 0 auto;
		padding: 2% 0 1%;
	}

	#top-banner {
		width: 75%;
		margin: 15vw auto;
	}

	#top-banner a:hover {
		opacity: .8;
	}

	#top-banner a:hover img {
		opacity: 0.8;
	}

	#top-banner a img {
		transition: opacity 0.3s ease-out;
	}

#sns-icon {
    text-align: center;
    margin: 10px 0 30px;
	display: block;
	width: 90%;
	margin: 10px auto 50px;
}	
	
.tw-txt {
    color: #0089d4;
    margin: 0 auto;
    text-align: center;
    font-weight: bold;
    margin-bottom: 10px;
    font-size: 12px;
    line-height: 2;
    margin: 0 auto;
}	
	
.fab-twitter {
    /*width: 80px;*/
	max-width: 400px;
    margin: 10px 0;
}
	
.fab-instagram {
    /*width: 80px;*/
}	

.top-bnr {
    width: 80%;
    margin: 0 auto 60px;
    max-width: 400px;
}
	
.top-bnr a {
    display: block;
    margin: 10px 0;
}	
	
.news-btn {
    padding: 0 0 15px;
}		
	
  /*
  #movie
  -------------------------------*/
#movie-ttl {
    width: 90px;
    margin: 30px auto;
}
	
#top-movie-container {
	width: 90%;
	margin: 0 auto;
	padding: 0 0 30px;
	z-index: 1;
}

#top-movie-container-inner {
	width: 100%;
	height: auto;
	overflow: hidden;
	cursor: default;
	position: relative;
	background: 0 0;
	border: none;
	margin: 0 auto;
}

.top-movie-more-btn {
	width: 70px;
	height: 70px;
	border-radius: 35px;
	bottom: -45px;
	right: -15px;
	font-size: 16px;
	padding: 26px 0 0;
}

.top-movie-more-btn .arrow-icon {
	display: block;
	margin: 5px auto 0;
}

#top-movie-thumb-box {
	width: 100%;
	height: 100%;
}

.top-movie-caption {
	background: #fcc023;
	color: #fff;
	font-size: 16px;
	margin: 0 0 5px;
}

.player-overlay {
	display: none;
}

#player {
	width: 100%;
	top: 0;
	height: calc(90vw*.5625);
}

#movie-box {
	margin: 70px 0 30px;
}

#movie-list,.movie-inner,.pv-box,.pv-box-inner {
	position: relative;
}

#movie-list {
	overflow-x: scroll;
	-webkit-overflow-scrolling: touch;
	overflow-y: hidden;
	width: 100%;
	padding: 0;
	z-index: 1;
	padding-bottom: 2vw;
}

#movie-list::-webkit-scrollbar {
	display: none;
	height: 0!important;
}

.movie-inner {
	z-index: 1;
	width: 90%;
	margin: 0 auto;
}

.movie-inner>* {
	-webkit-transform: translateZ(0);
}

.slick-prev:after {
	content: url(../img/common/left.png);
	width: 35px;
	height: 16px;
	display: block;
	position: absolute;
	top: 0;
}

.slick-prev, .slick-next {
	top: 35%;
}

.slick-prev:before {
	content: "" !important;
}

.slick-next:before {
	content: "" !important;
}

.slick-next:after {
	content: url(../img/common/right.png);
	width: 35px;
	height: 16px;
	display: block;
	position: absolute;
	top: 0;
}

.slick-prev {
	left: -23px;
}

.slick-next {
	right: -5px;
}	
	
	/* Dots */
.movie-inner .slick-dotted.slick-slider {
	margin-bottom: 30px;
}

.movie-inner .slick-dots {
	position: absolute;
	bottom: -20px;
	width: 100%;
	height: 15px;
	list-style: none;
	text-align: center;
}

.movie-inner .slick-dots li {
	position: relative;
	width: 12px;
	height: 12px;
	margin: 0 5px;
	cursor: pointer;
	display: inline-block;
	margin-bottom: 15px;
}

.movie-inner.slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: block;
	width: 20px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
}

.movie-inner .slick-dots li button:hover,
.movie-inner .slick-dots li button:focus {
	outline: none;
}

.movie-inner .slick-dots li button:hover:before,
.movie-inner .slick-dots li button:focus:before {
	opacity: 1;
}

.movie-inner .slick-dots li button:before {
	font-family: 'slick';
	font-size: 6px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	width: 10px;
	height: 10px;
	background: none;
	border: 2px solid #41c9e6;
	border-radius: 30px;
	content: '';
	text-align: center;
	opacity: .6;
	color: black;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.movie-inner .slick-dots li.slick-active button:before {
	opacity: 1;
	background: #41c9e6;
}

.slick-prev:before, .slick-next:before {
	opacity: 1;
}

.pv-box {
	z-index: 1;
	width: 280px;
	margin: 10px;
}

.pv-box-inner {
	display: block;
	width: 100%;
}

.pv-box-inner::after {
	content: "";
	display: block;
	padding-top: 56.25%;
}

.pv-thumb,.youtube {
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.play-icon {
	position: absolute;
	z-index: 1;
	width: 70px;
	height: 70px;
	top: calc(50% - 35px);
	left: calc(50% - 35px);
}

.movie-cap {
	color: #222;
	padding: 15px 0;
	font-weight: 700;
	line-height: 1.6;
	text-align: center;
}
	
  /*
  #intro
  -------------------------------*/	
	
#intro {
    background: #a5f7ff;
    background: -webkit-linear-gradient(to bottom, #fff, #a5f7ff);
    background: linear-gradient(to bottom, #fff, #a5f7ff);
}	
	
#intro .heading {
    width: 250px;
    margin: 30px auto;
}	

.intro-lead-inner {
    padding-bottom: 60px;
    background: url(../img/intro/bg_sp.jpg) repeat-y center center;
    background-size: cover;
	  position: relative;
	  height: 73vh;
}	
	
.intro-inner {

}

#intro-lead {
    padding: 5vw 0;
    width: 95%;
    margin: 0 auto;
}
	
#intro-lead2 {
    width: 90%;
    margin: 0 auto 30px;
}	

#lines-area {
    width: 100%;
    margin: 0 auto;
	  position: relative;
}
	
.lines0 {
    position: absolute;
    left: 0;
    width: 130px;
}
	
.lines1 {
    position: absolute;
    right: 0;
    width: 130px;
}	
	
.intro-item {
    width: 85%;
    margin: 0 auto;
}
	
.intro-txt {
    color: #222;
    font-size: 14px;
    line-height: 24px;
    font-weight: 600;
    margin: 0 auto;
    width: 92%;
}
	
.txt {
    padding: 5px 0;
}

.kerning {
    display: inline!important;
    letter-spacing: -1px!important;
    font-size: 15px!important;
}
	
.intro-photo {
    margin: 100px 0 0 0;
}	
	
		/* Dots */
#intro .slick-dotted.slick-slider {
	margin-bottom: 30px;
}

#intro .slick-dots {
	position: absolute;
	bottom: -50px;
	width: 100%;
	/*height: 100%;*/
	list-style: none;
	text-align: center;
	display: none;
}

#intro .slick-dots li {
	position: relative;
	width: 12px;
	height: 12px;
	margin: 0 10px;
	cursor: pointer;
	display: inline-block;
}

#intro.slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: block;
	width: 20px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
}

#intro .slick-dots li button:hover,
#intro .slick-dots li button:focus {
	outline: none;
}

#intro .slick-dots li button:hover:before,
#intro .slick-dots li button:focus:before {
	opacity: 1;
}

#intro .slick-dots li button:before {
	font-family: 'slick';
	font-size: 6px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	width: 12px;
	height: 12px;
	background: none;
	border: 2px solid #41c9e6;
	border-radius: 30px;
	content: '';
	text-align: center;
	opacity: .6;
	color: black;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#intro .slick-dots li.slick-active button:before {
	opacity: 1;
	background: #41c9e6;
}

.slick-prev:before, .slick-next:before {
	opacity: 1;
}
	
#intro .slick-next {
    right: -18px;
}
	
#intro .slick-prev {
    left: -33px;
}

  /*
  #story
  -------------------------------*/
#story {
		/*background: #d9a7c7;
		background: -webkit-linear-gradient(to bottom, #fff, #fff2f4);
		background: linear-gradient(to bottom, #fff, #fff2f4);*/
		height: 100%;
	  padding: 0 0 15vw 0;
	  background: #710101 url(../img/story/sp_bg.jpg) repeat-y bottom center;
	  background-size: cover;
	  padding: 30px 0 60px 0;
	}
	
	#story .heading {
    width: 110px;
    margin: 0 auto;
		padding: 30px 0;
}
	
.story-item {
    width: 85%;
    margin: 0 auto;
}
	
.story-txt {
    width: 90%;
    margin: 0 auto;
    text-align: justify;
    margin-bottom: 10px;
    font-size: 15px;
    line-height: 2;
    letter-spacing: .05em;
	  text-decoration: underline #ddd;
}
	
.story-txt {
    color: #222;
    font-size: 14px;
    line-height: 24px;
    font-weight: 600;
    margin: 0 auto;
    width: 92%;
}
	
.story-photos {
    position: relative;
    margin: 70px 0 0;
    min-height: 920px;
    height: 80vh;
}
	
		/* Dots */
#story .slick-dotted.slick-slider {
	margin-bottom: 30px;
}

#story .slick-dots {
	position: absolute;
	bottom: -50px;
	width: 100%;
	/*height: 100%;*/
	list-style: none;
	text-align: center;
	display: none;
}

#story .slick-dots li {
	position: relative;
	width: 12px;
	height: 12px;
	margin: 0 10px;
	cursor: pointer;
	display: inline-block;
}

#story.slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: block;
	width: 20px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
}

#story .slick-dots li button:hover,
#story .slick-dots li button:focus {
	outline: none;
}

#story .slick-dots li button:hover:before,
#story .slick-dots li button:focus:before {
	opacity: 1;
}

#story .slick-dots li button:before {
	font-family: 'slick';
	font-size: 6px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	width: 12px;
	height: 12px;
	background: none;
	border: 2px solid #41c9e6;
	border-radius: 30px;
	content: '';
	text-align: center;
	opacity: .6;
	color: black;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#story .slick-dots li.slick-active button:before {
	opacity: 1;
	background: #41c9e6;
}

.slick-prev:before, .slick-next:before {
	opacity: 1;
}

#story .slick-next {
    right: -18px;
}
	
#story .slick-prev {
    left: -33px;
}
	
.story-photo0 {
    background: #a5f7ff;
    background: -webkit-linear-gradient(to bottom, #fff, #a5f7ff);
    background: linear-gradient(to bottom, #fff, #a5f7ff);
}	
	
.story-photo1 {
    background: #d9a7c7;
    background: -webkit-linear-gradient(to bottom, #fff, #fff2f4);
    background: linear-gradient(to bottom, #fff, #fff2f4);
}

.story-photo2 {
    background: #d9a7c7;
    background: -webkit-linear-gradient(to bottom, #fff, #fff2f4);
    background: linear-gradient(to bottom, #fff, #fff2f4);
}	
	
/*-------------------------------

#cast

-------------------------------*/
#cast {
	padding-bottom: 60px;
	/*background: #a5f7ff;
  background: -webkit-linear-gradient(to bottom, #fff, #a5f7ff);
  background: linear-gradient(to bottom, #fff, #a5f7ff);*/
  height: 100%;
  padding: 0 0 15vw 0;
  background: #710101 url(../img/cast/sp_bg.jpg) repeat-y bottom center;
  background-size: cover;
	padding: 30px 0 60px 0;
}

#cast .heading {
    width: 100px;
    margin: 0 auto;
	  padding: 30px 0;
}

.cast-photo img {
	/*vertical-align: bottom;*/
}

#cast-box {
    max-width: 1020px;
    margin: 0 auto;
    width: 90%;
}

.main-cast1 {
	text-align: center;
	margin: 0 auto;
	justify-content: center;
}

.main-cast2 {
	text-align: center;
	margin: 0 auto;
	justify-content: center;
}

.other-cast1 {
	width: 100%;
	margin: 0 auto;
}

.other-cast1 {
	display: flex;
	text-align: center;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.other-cast1 .box {
	width: 44%;
}

.cast-txt {
	width: 100%;
}

.box {
	margin: 10px 10px 40px;
	transition: opacity 0.7s;
	-moz-transition: opacity 0.7s;
	-webkit-transition: opacity 0.7s;
	-o-transition: opacity 0.7s;
	transition: transform 0.7s;
	-moz-transition: transform 0.7s;
	-webkit-transition: transform 0.7s;
	-o-transition: transform 0.7s;
}

.scale {
  /*overflow: hidden;
	background: #1f0a32;*/;
}

.scale img {
	-moz-transition: -moz-transform 0.5s linear;
	-webkit-transition: -webkit-transform 0.5s linear;
	-o-transition: -o-transform 0.5s linear;
	-ms-transition: -ms-transform 0.5s linear;
	transition: transform 0.5s linear;
}

.scale img:hover {
	opacity: 0.8;
	-moz-transition: -moz-transform 0.5s linear;
	-webkit-transition: -webkit-transform 0.5s linear;
	-o-transition: -o-transform 0.5s linear;
	-ms-transition: -ms-transform 0.5s linear;
	transition: transform 0.5s linear;
}

.cast-photo {
	width: 100%;
	margin: 0 auto 30px;
}

.modal-overlay {
	z-index: 2;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: rgba(0,0,0,.5);
}

.modal-open:hover {
	cursor: pointer;
} 

.modal-content {
	position: fixed;
	display: none;
	z-index: 300;
	margin: 10px;
	padding: 35px;
	border-radius: 2px;
	background: #fff3f5;
	height: auto;
	margin-top: 100px!important;
}

.modal-content img {
/*width:auto;max-height:75vh*/;
}

.cast-name {
	font-size: 23px;
	line-height: 1.2;
	font-weight: bold;
}

.modal-content p {
	  /*max-width:565px;*/
	text-align: left;
	color: #333;
	text-align: justify;
	margin-bottom: 10px;
	font-size: 15px;
	line-height: 2;
	letter-spacing: .05em;
}

.cast-name span {
	font-size: 15px;
	display: block;
	padding: 8px 0 0 0;
	color: #c00f18;
}

.new {
	display: inline-block!important;
	color: #222!important;
}

.modal-close {
	position: absolute;
	top: 4px;
	right: 10px;
	color: #868686;
	font-size: 35px;
	line-height: 1;
	font-weight: bold;
	text-decoration: none;
}

.modal-close:hover {
	cursor: pointer;
}

.modal-content h2 {
	text-align: left !important;
	padding: 10px 0 !important;
	border-bottom: 1px solid #c00f18;
	margin: 0 0 10px 0;
}

#modal0,#modal1, #modal2, #modal3, #modal4, #modal5, #modal6, #modal7, #modal8,
#modal9, #modal10, #modal11, #modal12, #modal13 {
	width: 95%!important;
	height: 90vh;
	margin-top: 0px;
	overflow-y: auto;
}
	
/*-------------------------------

#staff

-------------------------------*/
	
#staff {
		background: #d9a7c7;
		background: -webkit-linear-gradient(to bottom, #fff, #fff2f4);
		background: linear-gradient(to bottom, #fff, #fff2f4);
	  padding: 30px 0;
	}	

#staff .heading {
    width: 120px;
    margin: 30px auto;
}

	
.staff-name {
    color: #ef5f76;
    text-align: center;
    font-size: 23px;
    font-weight: bold;
}
	
.staff-name span {
    font-size: 15px;
    display: inline-block;
    margin: 0 10px 0 0;
}
	
.staff-txt {
    color: #222;
    font-size: 14px;
    line-height: 24px;
    font-weight: 600;
    margin: 0 auto;
    width: 92%;
	  padding: 30px 0;
	  text-align: justify;
}
	
/*-------------------------------

#original

-------------------------------*/
	
#original {
    background: #a5f7ff;
    background: -webkit-linear-gradient(to bottom, #fff, #a5f7ff);
    background: linear-gradient(to bottom, #fff, #a5f7ff);
	  padding: 30px 0;
	}	

#original .heading {
    width: 180px;
    margin: 30px auto;
}

	
.original-name {
    color: #1ea0dd;
    text-align: center;
    font-size: 23px;
    font-weight: bold;
}
	
.original-name span {
    font-size: 15px;
    display: inline-block;
    margin: 0 10px 0 0;
}
	
.original-txt {
    color: #222;
    font-size: 14px;
    line-height: 24px;
    font-weight: 600;
    margin: 0 auto;
    width: 92%;
	  padding: 30px 0 50px;
	  text-align: justify;
}
	
.original-photo {
    width: 220px;
    margin: 0 auto 10px;
}
	
.original-ttl {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.5;
}

.original-ttl span {
    font-size: 15px;
    display: inline-block;
    margin: 0 10px 0 0;

}

  /*
  #song
  -------------------------------*/
#song {
	background: #fff3f5;
	padding: 30px 0;
}

#song-inner {

}

#song .heading {
    width: 210px;
    margin: 0 auto;
	  padding: 30px 0;
}
		
.song-title {
    padding: 0 0 30px 0;
}	
	
.song-jacket {
    width: 80%;
	  max-width: 400px;
    margin: 0 auto;
}
	
.song-link {
    width: 90%;
    margin: 0 auto;
    display: block;
}

.song-txt-box {
    width: 100%;
    margin: 20px auto;
}
	
.song-txt {
    color: #00afe4;
    font-size: 20px;
    letter-spacing: 4px;
    text-align: center;
    position: relative;
		line-height: 1.4;
	  font-weight: 600;
    z-index: 0;
	  margin: 0 auto;
	  width: 95%;
	  background: #fff;
    padding: 20px;
}

.song-txt span {
	  font-size: 11px;
	  color: #333;
}

.fa-w-18 {
    font-size: 16px;
}	
	
  /*
  #footer
  -------------------------------*/
#footer {
    padding: 10vw 0;
    width: 90%;
    margin: 0 auto;
}	
	

@media print {

	* {
		background: #fff;
		display: none;
		opacity: 0;
	}

	img {
		background: #fff;
		display: none;
		opacity: 0;
	}
}
@media screen and ( max-width:380px) {
.intro-lead-inner {
	  height: 80vh;
}
	
/*	#top-bg {
		 background: url(../img/top/main_sp2.jpg) no-repeat top center;
		 background-size: contain;
		 min-height: 80vh;
	}	
	
	.sp-top-container{
		bottom: 85vw;
	}
	
	.sp-lead{
		right: 0;
	}*/
}

@media screen and (min-width:768px) and ( max-width:1023px) {
	
	.sp-top-container{
		bottom: 22vw;
	}
	
	.sp-top-lead {
    width: 82%;
    max-width: 400px;
    margin: 0 auto;
    padding: 40px 0;
}
	.sp-lead {
    max-width: 37px;
}
	
	.story-photos {
    min-height: 1400px;
	}
	
/*	.story-photo0 {
    width: 50%;
    position: absolute;
    right: 0;
    z-index: 2;
}
	
.story-photo1 {
    width: 60%;
    position: absolute;
    left: 15px;
    top: 210px;
    z-index: 2;
}
	
.story-photo2 {
    width: 70%;
    position: absolute;
    left: 0;
    top: 500px;
    right: 0;
    margin: auto;
    z-index: 3;
}
	
.story-photo3 {
    width: 60%;
    position: absolute;
    right: 15px;
    top: 840px;
    z-index: 3;
}

.story-photo4 {
    position: absolute;
    width: 90px;
    left: 100px;
    top: 800px;
    z-index: 3;
}*/	
	
.news-btn {
    max-width: 400px;
    margin: 0 auto 15px;
}	
	
.theater-btn {
    max-width: 400px;
    margin: 0 auto;
}		

}