@charset "utf-8";
/* CSS INFORMATION -====================================================
File name : top.css
Description : TOPページCSS
===================================================================== */

/* =====================================================================
*    #header
* =================================================================== */
#header {
}
.pc{
	display: none;
}
#header .header_inner {
	width: 100%;
	height: 100%;
	position: relative;
}

#header .main_visual {
	width: 110.9375%;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -53.46875%;
	z-index: 10;
}

#header .site_ttl {
	width: 14.5%;
	position: relative;
	padding-right: 6.875%;
	margin-left: auto;
	z-index: 11;
}

#header .onair {
	width: 80%;
	position: relative;
	margin-left: auto;
	margin-right: auto;
	z-index: 11;
}

#header .official_link {
	width: 31%;
	position: relative;
	margin: 3.89% 0;
	margin-left: auto;
	margin-right: 6.8%;
	z-index: 11;
}
.onair {
	background: #fff;
}
.onair p {
	padding: 3% 0;
}
.onair p img {
	width: 85.5%;
	display: block;
	margin: 0 auto;
}


@media screen and (min-width:700px){
	.sp {
		display: none;
	}
	.pc{
		display: block;
	}
	#header {
		width: 100%;
		max-width: 1040px;
		box-sizing: border-box;
		padding-right: 300px;
		margin-left: auto;
		margin-right: auto;
	}

	#header .header_inner {
	}

	#header .main_visual {
		width: 100%;
	}

	#header .site_ttl {
		width: 13%;
		padding-right: 5.4055%;
	}

	#header .onair {
		width: 100%;
		padding-top: 95.946%;
	}

	#header .onair::before {
		content: "";
		width: 100%;
		height: 0;
		padding-top: 14.8649%;
		display: block;
		background: url(../images/img_onair_pc.png) no-repeat center top;
		background-size: 100% auto;
	}
	#header .onair img {
		display: none;
	}

	#header .official_link {
		width: 28.4%;
		margin: 3.45% 0;
		margin-left: auto;
	    margin-right: 5.4055%;
	}

	#header .official_link a {
		width: 100%;
		display: block;
	}

	#header .official_link a::before,
	#header .official_link a::after {
		content: "";
		width: 100%;
		height: 0;
		padding-top: 100%;
		display: block;
	}

	#header .official_link a::before {
		background: url(../images/btn_official_off.jpg) no-repeat center top;
		background-size: 100% auto;
	}

	#header .official_link a::after {
		background: url(../images/btn_official_on.jpg) no-repeat center top;
		background-size: 100% auto;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
	}

	#header .official_link a:hover::before {
		opacity: 0;
	}

	#header .official_link a:hover::after {
		opacity: 1;
	}

	#header .official_link a img {
		display: none;
	}
	.onair {
		margin-bottom: 0;
	}
	.onair p {
		width: 100%;
		max-width: 1040px;
		box-sizing: border-box;
		padding: 1% 300px 1% 3%;
		margin-left: auto;
		margin-right: auto;
	}
	.onair p img {
		width: 87.4%;
		margin: 0;
	}
}


/* =====================================================================
*    #main
* =================================================================== */
#main #introduction .category_inner {
	position: relative;
}

#main #introduction .category_ttl {
	position: absolute;
	top: 7%;
}
#main #introduction .category_ttl img {
	width: 86%!important;
}
#main .category_ttl img{
	margin: 0 auto;
	width: 94%;
}


@media screen and (min-width:700px){
	#main .category{
		width: 100%;
		max-width: 1040px;
		box-sizing: border-box;
		padding-right: 300px;
		margin-left: auto;
		margin-right: auto;
	}
	
	#main .category_ttl {
		padding: 40px 0;
	}
	#main .clearfix.category {
		padding-right: 0;
		max-width: 1093px;

	}

	#main #introduction .category_ttl {
		width: 93.7%;
		position: static;
		top: 0;
		left: 0;
	}
	#main #introduction .category_img::before {
		content: "";
		height: 456px;
		display: block;
	}

	#main #introduction .category_img img {
		display: none;
	}
}

/* #main #introduction */
#main #introduction .category_inner {

}

#main #cast .category_inner::before {
	content: 
}

@media screen and (min-width:700px){
	#main #introduction .category_inner::before {
		width: 113.7838%;
		padding-top: 32.1622%;
		margin-left: -56.8919%;
		margin-bottom: -6.2163%;
	}

	#main #introduction .category_inner {

	}

	#main #introduction .category_img::before {
		background: url(../images/img_intro_pc.png) no-repeat center top;
	}
}

/* #main #cast */
.bg_stripe {
	background: url(../images/bg_stripe.jpg) repeat center top;
	background-size: 9px auto;
}

#main #cast .category_inner {
	position: relative;
}

#main #cast .category_ttl {
	top: 4%;
	position: absolute;
}
#main #cast .category_ttl img{
	width: 86%!important;
}
#main #staff .category_img {
	width: 100%;
}

@media screen and (min-width:700px){
	.bg_anime {
		background: url(../images/bg_anime.jpg) no-repeat left top ;
		max-width: 1093px;
		margin: 0 auto;
	}

	#main #cast {
		float: left;
		width: 38.4%;
	}
	#main #staff{
		float: left;
		width: 34.62%
	}
	#main #cast .category_inner {

	}

	#main #cast .category_ttl {
		top: 0;
		left: 17%;
	}

	#main #cast .category_ttl img {
	width: 95% !important;
	}

	#main #cast .category img{
		width: 100%;
	}
	/*#main #cast .category_img::before {
		padding-top: 136.8495%%;
		background: url(../images/img_cast_pc.png) no-repeat center top;
		background-size: 100% auto;
	}*/
}

@media screen and (min-width:700px){
	#main #cast {
	}
}

/* #main #staff */
#main #staff .category_inner {
	position: relative;
}
#main #staff .category_ttl {
	top: 4%;
	left: 4%;
	position: absolute;
}
#main #staff .category_ttl img {
	width: 86%!important;
}
#main #staff .category_img {
	width: 100%;
}
@media screen and (min-width:700px){
	#main #staff .category_inner {
		width: 97.75%;
	}
	#main #staff .category_ttl {
		top:0;
		left: 6%;
	}

	#main #staff .category_ttl img {
	width: 95% !important;
	}

	#main #staff .category_img::before {
		padding-top: 100.1345%;
		background: url(../images/img_staff_pc.png) no-repeat center top;
		background-size: 100% auto;
	}
}
/* =====================================================================
*    .box
* =================================================================== */
.box {
	width: 100%;
	max-width: 1040px;
	box-sizing: border-box;
}


/* =====================================================================
*    .pagetop
* =================================================================== */
.pagetop {
	width: 100%;
}

.pagetop .pagetop_inner {
	width: 100%;
	position: relative;
}

.pagetop .pagetop_inner a {
	width: 28.4375%;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
}

@media screen and (min-width:700px){
	.pagetop {
		max-width: 1040px;
		box-sizing: border-box;
		padding-right: 300px;
		margin-left: auto;
		margin-right: auto;
	}

	.pagetop .pagetop_inner a {
		width: 14.7838%;
		left: auto;
		right: 39.5%;
		margin-bottom: 0;
	}

	.pagetop .pagetop_inner a::before,
	.pagetop .pagetop_inner a::after {
		content: "";
		width: 100%;
		height: 0;
		padding-top: 43.9608%;
		display: block;
		transition: opacity 0.2s ease;
	}


	.pagetop .pagetop_inner a::before {
		background: url(../images/btn_pagetop_off.png) no-repeat center top;
		background-size: 100% auto;
	}

	.pagetop .pagetop_inner a::after {
		position: absolute;
		top: 0;
		left: 0;
		background: url(../images/btn_pagetop_on.png) no-repeat center top;
		background-size: 100% auto;
		opacity: 0;
	}

	.pagetop .pagetop_inner a:hover::after {
		opacity: 1;
	}
	.pagetop .pagetop_inner a:hover::before {
		opacity: 0;
	}
	.pagetop .pagetop_inner a img {
		display: none;
	}
}

/* =====================================================================
*    #banner_area
* =================================================================== */
#banner_area {
	background: url(../images/bg_bnr.jpg) repeat center top;
	background-size: 20px auto;
}

#banner_area ul {
	letter-spacing: -.40em;
	text-align: center;
	padding-top: 7.8125%;
	padding-bottom: 12.5%;
}

#banner_area ul li {
	width: 57.8125%;
	display: inline-block;
	vertical-align: top;
	margin-top: 1.5625%;
}

@media screen and (min-width:700px){
	#banner_area {
		background: url(../images/bg_bnr.jpg) repeat center top;
		background-size: 40px auto;
	}

	#banner_area .banner_inner {
		width: 100%;
		max-width: 1040px;
		box-sizing: border-box;
		padding-right: 300px;
		margin-left: auto;
		margin-right: auto;
	}

	#banner_area ul {
		width: 67.5676%;
		padding-top: 4.0541%;
		padding-bottom: 5.4055%;
		margin-left: auto;
		margin-right: auto;
	}

	#banner_area ul li {
		width: 40%;
		margin-top: 2%;
		margin-left: 2%;
		margin-right: 2%;
	}

	#banner_area ul li a {
		width: 100%;
		height: auto;
		display:block;
		transition: opacity 0.2s ease;
	}

	#banner_area ul li a:hover {
		opacity: 0.7;
	}
}

/* =====================================================================
*    #footer
* =================================================================== */
#footer {
	background-color: #333333;
	padding-top: 8px;
	padding-bottom: 8px;
}

#footer .footer_inner {
	font-size: 1.2rem;
	line-height: 1.25em;
	color: #FFF;
	text-align: center;
}

@media screen and (min-width:700px){
	#footer .footer_inner {
		width: 100%;
		max-width: 1040px;
		font-size: 1.6rem;
		line-height: 1.25em;
		box-sizing: border-box;
		padding-right: 300px;
		margin-left: auto;
		margin-right: auto;
	}
}


.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}