@charset "utf-8";

/* ---------- TV Animation Free! Novelize ---------- */
/* ---------- reset ---------- */
*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}ol,ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none;}input,select{vertical-align:middle;}img{display:block;vertical-align:baseline;}.clearfix:after{content:"";clear:both;display:block;height:0;visibility:hidden;}a:focus{outline:none;}

html{font-size:6.25%;overflow-y:scroll;height:100%;}
body{
	font-family: '游ゴシック',YuGothic,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Osaka,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	font-size: 12em;
	line-height: 1.5;
	background: #fff;
	color: #00078c;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	overflow: visible;
	word-break: break-all;
}
a {
	margin:0;
	padding:0;
	text-decoration:underline;
	background:transparent;
}
a:hover {text-decoration:none;}

/* ---------- colorbox setting ---------- */
#colorbox, #cboxOverlay, #cboxWrapper { position: absolute; top: 0; left: 0; z-index: 9999; overflow: hidden; outline: 0; }
#cboxOverlay { position: fixed; width: 100%; height: 100%; }
#cboxMiddleLeft, #cboxBottomLeft { clear: left; }
#cboxContent { position: relative; }
#cboxLoadedContent { overflow: auto; }
#cboxTitle { margin: 0; }
#cboxLoadingOverlay, #cboxLoadingGraphic { position: absolute; top: 0; left: 0; width: 100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow { cursor: pointer; }
#cboxOverlay { background: #b3f3ff; }
#cboxContent { overflow:hidden; }
#cboxError { padding: 50px; border: 1px solid #ccc; }
#cboxLoadedContent { margin: 85px 0 0; overflow: hidden; }
#cboxTitle { position: absolute; bottom: 4px; left: 0; text-align: center; width: 100%; color: #949494; }
#cboxCurrent { display: none; }
#cboxSlideshow { position: absolute; right: 30px; bottom: 4px; color: #FFF; }
/*
#cboxPrevious { position: absolute; left: 0; top: 0; border: none; background: url(/img/icon/control.png) no-repeat 0 0; width: 25px; height: 25px; text-indent:-9999px; }
#cboxPrevious:hover{ background-position: 0 -25px; }
#cboxNext { position: absolute; left: 27px; top: 0; border: none; background: url(/img/icon/control.png) no-repeat -25px 0; width: 25px; height: 25px; text-indent:-9999px; }
#cboxNext:hover { background-position: -25px -25px; }
#cboxLoadingGraphic { background: url(/img/icon/loading.gif) no-repeat center center; }
*/
#cboxClose { position: absolute; right: 0; top: 0; border: none; background: url(../img/icon/close.png) no-repeat left top; width: 75px; height: 75px; text-indent:-9999px; }
#cboxClose:hover { background-position: right; }
.cboxIframe { width: 100%; height: 100%; display: block; border: 0; }

/* ---------- clearfix setting ---------- */
.clearfix { *zoom: 1; }
.clearfix:before, .clearfix:after {
	content: "";
	display: table;
	overflow: hidden;
}
.clearfix:after { clear: both; }
/*--  loading  --*/
#overlay {
	position: fixed;
	width: 100%;
	height: 100%;
	text-align: center;
	background: #b3f3ff;
	z-index: 9999;
}

/*--  navigation  --*/
.navigation .navi-list {
	display: block;
	width: 100%;
	height: 100%;
	text-align: center;
	font-size: 0;
}
.navi-list > li {
	display: inline-block;
}
.navi-list > li > a {
	display: block;
	color: #07aaff;
	padding: 45px 25px;
	margin: 0 auto;
	font-size: 23rem;
	text-decoration: none;
}
.navi-list > li > a:hover {
	text-decoration: underline;
}
.hamburger {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	width: 20%;
	height: 8%;
	z-index: 99;
}
.hamburger span {
	width: 50px;
	height: 8px;
	display: block;
	background: #07aaff;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -25px;
}
.hamburger span { -webkit-transition: all 0.3s; transition: all 0.3s; }
.hamburger .top { -webkit-transform: translateY(-17px) scale(1); -ms-transform: translateY(-17px) scale(1); transform: translateY(-17px) scale(1); }
.hamburger .middle {
	background: none;
	position: relative;
}
.hamburger .middle:before, .hamburger .middle:after {
	content: "";
	display: block;
	position: absolute;
	width: 50px;
	height: 8px;
	background: #07aaff;
	-webkit-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg);
	-webkit-transition: all 0.3s;transition: all 0.3s;
}
.hamburger .bottom { -webkit-transform: translateY(17px) scale(1); -ms-transform: translateY(17px) scale(1); transform: translateY(17px) scale(1); }
.hamburger.is-open .top { -webkit-transform: translateY(0px) scale(0); -ms-transform: translateY(0px) scale(0); transform: translateY(0px) scale(0); }
.hamburger.is-open .bottom { -webkit-transform: translateY(0px) scale(0); -ms-transform: translateY(0px) scale(0); transform: translateY(0px) scale(0); }
.hamburger.is-open .middle { box-shadow: none; }
.hamburger.is-open .middle:before { -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }
.hamburger.is-open .middle:after { -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }

/* -----     common     ----- */
.pc { display: block; }
.sp { display: none; }
img.pc { display: inline; }
img.sp { display: none; }
#siteWrap {
	width: 100%;
	min-width: 1100px;
	height: 100%;
	height: auto !important;
	min-height: 100%;
	overflow: hidden;
}
#siteWrap > section {
	padding-bottom: 100px;
}
.contentBox {
}
.titleHd {
	position: relative;
	color: #07aaff;
	font-size: 35rem;
	font-weight: 100;
	width: 100%;
	text-align: center;
}
.titleHd .titleLine {
	position: absolute;
	width: 100%;
	height: 1px;
	background-color: #07aaff;
	left: 0;
	top: 50%;
}
.titleHd .titleTxt {
	display: inline-block;
	background-color: #FFF;
	position: relative;
	padding: 0 0.3em;
}
.mainVisual {
	position: relative;
	width: 100%;
	height: 640px;
}
.mainVisual>div {
	position: absolute;
	width: 100%;
	height: 350px;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 0;
}
ul.bgSlider li {
	float: left;
	margin: 0 !important;
	padding: 0;
}
.mv {
	position: relative;
	width: 980px;
	height: 640px;
	margin: auto;
	z-index: 1;
}
.shopLink {
	position: absolute;
	bottom: 30px;
	right: 30px;
}
.shopLink a {
	display: block;
	width: 360px;
	margin: 15px 0 0;
	padding: 5px 10px;
	font-size: 20rem;
	color: #FFF;
	font-weight: bold;
	text-decoration: none;
	background-color: rgba(0, 160, 233, .3);
	border: 1px #FFF solid;
	-webkit-transition: .3s ease-out; transition: .3s ease-out;
}
.shopLink a:hover {
	background-color: rgba(0, 160, 233, 1);
}
.comiket a {
	display: block;
	padding: 0;
	border: none;
}
.updateWrap {
	padding: 45px 0 0;
}
.secondWrap {
	padding: 115px 0 0;
}

/*     update     */
.update  {
	width: 980px;
	margin: 0 auto;
	padding: 20px 25px;
}
.updateList {
	padding: 0 20px 0 0;
	line-height: 1.5;
	font-size: 19rem;
	overflow: auto;
}
.updateList dt {
	display: block;
	float: left;
	width: 15%;
	color: #07aaff;
	margin-bottom: 5px;
}
.updateList dd {
	color: #00078c;
	text-align: left;
	display: block;
	float: left;
	font-weight: 500;
	width: 85%;
	margin: 0 0 20px 0;
}

/*     introduction     */
.introduction {
	width: 980px;
	margin: 0 auto;
}
.introduction p{
	color: #00078c;
	text-align: center;
	font-size: 19rem;
	font-weight: 800;
	margin: 30px 0;
}

/*     title     */
.title {
	width: 780px;
	margin: 50px auto;
	font-size: 21rem;
	font-weight: 800;
	line-height: 2;
}
.title p {
	margin: 0 20px;
	padding-left: 8.5rem;
}
.title ul {
	float: left;
	width: 350px;
	margin: 0 20px;
}

/*     character     */
.character {
	width: 720px;
	margin: 50px auto;
}
/*     books     */
.books {
	width: 360px;
	margin: 50px auto 0;
}
.booksTitle {
	font-size: 23rem;
	font-weight: 800;
	text-align: center;
}
.booksImg {
	width: 330px;
	margin: 0 auto;
}
.booksDetail {
	font-size: 19rem;
	font-weight: 800;
	line-height: 2;
	margin: 10px 15px;
}
.booksShopLink li {
	margin: 20px 0;
}
.booksShopLink li a {
	width: 350px;
	height: 40px;
	padding: 5px;
	font-size: 22rem;
	font-weight: 500;
	color: #FFF;
	display: block;
	text-decoration: none;
	opacity: .5;
	background-color: #00a0e9;
	-webkit-transition: .5s ease-out; transition: .5s ease-out;
}
.booksShopLink li a:hover {
	opacity: 1;
}

/*     special     */
.special {
	width: 700px;
	margin: 50px auto 0;
}
.specialTitle {
	font-size: 23rem;
	font-weight: 800;
	text-align: center;
	margin: 0 0 10px;
}
.specialNote {
	color: #00078c;
	text-align: center;
	font-size: 16rem;
	font-weight: 800;
	margin: 5px 0 20px;
}
.special > section {
	margin: 0 auto 50px;
}
.movie {
	width: 524px;
	margin: 0 auto 50px;
}
.movie a {
	position: relative;
	width: 524px;
	height: 296px;
	opacity: 1;
	-webkit-box-shadow: 0 0 0 1px #FFF; box-shadow: 0 0 0 1px #FFF;
	-webkit-transition: .5s ease-out; transition: .5s ease-out;
}
.movie a:hover {
	opacity: .75;
}
.movie a::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	/* background: url(../img/special/movie-play.png) no-repeat center; */
}
.movie a img {
	width: 100%;
	height: auto;
}
.releasellust {
	width: 402px;
	margin: 0 auto 50px;
}
.releasellust img {
	border: 1px solid #c8c8c8;
}
.icon li {
	display: inline-block;
	margin: 0 10px 5px;
}
.icon a {
	color: #fff;
	font-weight:bold;
	text-align:center;
	text-decoration: none;
	display:block;
}

/*--  pageTop  --*/
.pageTopCtt {
	padding: 0 0 60px 0;
}
.pagetop {
	position: relative;
	display: block;
	width: 80px;
	height: 35px;
	margin: 0 auto;
	overflow: hidden;
}
.pagetop .arrow1 {
	position: absolute;
	display: block;
	top: -40px;
	width: 0;
	height: 0;
	border: 40px transparent solid;
	border-bottom: 35px #00078c solid;
	-webkit-transition: .5s ease; transition: .5s ease;
}
.pagetop:hover .arrow1 {
	border-bottom-color: #07aaff;
}


/*     footer     */
.footerWrap {
	padding-top: 50px;
	background-color: #07aaff;
}

.socialList {
	margin: 40px 0;
	text-align: center;
}
.socialList li {
	display: inline-block;
	margin: 0 10px;
}
.socialList a {
	display: block;
	width: 60px;
	height: 60px;
}
.socialList img {
	width: 100%;
	height: auto;
}

.bannerList {
	margin: 40px 0;
	text-align: center;
}
.bannerList li {
	display: inline-block;
	margin: 0 10px;
}

.sitesLink {
	margin: 40px 0;
	text-align: center;
}
.sitesLink li {
	margin: 30px 0;
}
.sitesLink a {
	display: block;
	margin: 0 auto;
}
.kaesuma a {
	width: 50px;
	height: 50px;
}
.kyotoanimation a {
	width: 234px;
	height: 28px;
}
.sitesLink img {
	width: 100%;
	height: auto;
}
.copyright {
	font-size: 11rem;
	text-align: center;
	padding: 30px 0 60px;
	color: #FFF;
}





/* ---------- media screen ---------- */
@media screen and (max-width:768px) {
	.pc { display: none; }
	.sp { display: block; }
	img.pc { display: none; }
	img.sp { display: inline; }
	img { width: 100%; height: auto; }
	.brsp { display: none; }
	#siteWrap {
		width: 100%;
		min-width: 100%;
		height: 100%;
		height: auto !important;
		min-height: 100%;
		overflow: hidden;
	}
	#siteWrap > section {
		padding-bottom: 0px;
	}
	.navigation {
		width: 100%;
		height: 9%;
		z-index: 99;
	}
	.navigation .navi-list {
		display: none;
		position: fixed;
		top: 0;
		width: 100%;
		height: 100%;
		background-color: #FFF;
		overflow: scroll;
		z-index: 99;
	}
	.navi-list > li {
		display: block;
	}
	.navi-top {
		margin: 100px 0 0 0;
	}
	.navi-special {
		margin: 0 0 120px 0;
	}
	.hamburger {
	}
	.navi-list > li img {
		width: 100%;
		height: auto;
	}
	.navi-list > li > a {
		width: 100%;
		padding: 10px;
	}
	.topWrap {
		padding: 16% 0 0;
	}
	.mainVisual {
		height: 100%;
	}
	#bgSlider { display: none !important; }
	.mv {
		width: 100%;
		height: 100%;
		max-height: 665px;
	}
	.shopLink {
		position: relative;
		bottom: 0;
		right: 0;
	}
	.shopLink a {
		width: 90%;
		margin: 15px auto;
		padding: 10px;
		background-color: #00a0e9;
		font-size: 18rem;
	}
	.comiket a {
		padding: 0;
	}
	.updateWrap {
		padding: 8% 0 0;
	}
	.contentBox {
		width: 100%;
	}
	.secondWrap {
		padding: 11% 0 0;
	}
	.titleHd {
		font-size: 25rem;
	}
	
	.update {
		position: static;
		width: 100%;
		bottom: 10px;
		padding: 0 5%;
	}
	.updateList {
		padding: 0;
		font-size: 16rem;
	}
	.updateList dt {
		float: none;
		width: 100%;
	}
	.updateList dd {
		float: none;
		width: 100%;
		margin: 0 0 5% 0;
	}
	
	/*     introduction     */
	.introduction {
		width: 90%;
		height: auto;
	}
	.introduction p{
		color: #00078c;
		text-align: left;
		font-size: 16rem;
		font-weight: 400;
		margin: 30px 0;
	}
	
	/*     title     */
	.title {
		width: 90%;
		height: auto;
		margin: 50px auto;
		line-height: 2;
	}
	.title p {
		margin: 0 20px;
		font-size: 16rem;
		padding-left: 6rem;
		font-weight: 400;
	}
	.title ul {
		float: none;
		font-size: 16rem;
		margin: 0 20px;
		height: auto;
		font-weight: 400;
	}
	/*     character     */
	.character {
		width: 95%;
		height: auto;
	}
	
	/*     books     */
	.booksWrap {
		width: 100%;
		height: auto;
	}
	.books {
		width: 90%;
	}
	.booksData {
		width: 100%;
		margin-left: 0;
	}
	.booksTitle {
		font-size: 16rem;
	}
	.booksImg {
		width: 70%;
	}
	.booksImg img {
		width: 100%;
		height: auto;
		margin: 20px auto;
	}
	.booksDetail {
		line-height: 1.5;
		width: 80%;
		margin: 10px auto;
		font-size: 16rem;
	}
	.booksShopLink {
		width: 100%;
	}
	.booksShopLink li {
		margin: 5% 0;
	}
	.booksShopLink li a {
		width: 100%;
		height: 100%;
		padding: 10px;
		opacity: 1;
		background-color: #00a0e9;
		font-size: 18rem;
	}
	
	/*     special     */
	.specialWrap {
		width: 100%;
		height: auto;
	}
	.special {
		width: 90%;
	}
	.movieTitle, .illustTitle {
		font-size: 16rem;
	}
	.movie {
		width: 100%;
	}
	.movie a {
		width: 100%;
		height: 100%;
	}
	.icon {
		width: 100%;
		margin: auto;
	}
	.icon li {
		width: 100%;
		margin: auto;
	}
	.icon a {
		width: 100%;
		height: 100%;
	}
	.releasellust {
		width: 100%;
	}
	.releasellust img {
		max-width: 400px;
		margin: auto;
	}








