@charset "utf-8";
/* CSS INFORMATION -====================================================
File name : top.css
Description : TOPページCSS
===================================================================== */

/* =====================================================================
*    #header
* =================================================================== */
#header {
}

#header .header_inner {
	width: 100%;
	position: relative;
}

#header .main_visual {
	width: 110.9375%;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -55.46875%;
	z-index: 10;
}

#header .site_ttl {
	width: 51.5625%;
	position: relative;
	padding-top: 8.59375%;
	padding-right: 6.875%;
	margin-left: auto;
	z-index: 11;
}

#header .onair {
	width: 89.0625%;
	position: relative;
	padding-top: 95.3125%;
	margin-left: auto;
	margin-right: auto;
	z-index: 11;
}

#header .official_link {
	width: 88.125%;
	position: relative;
	margin-top: 3.125%;
	margin-left: auto;
	margin-right: auto;
	z-index: 11;
}

@media screen and (min-width:700px){
	#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: 113.5136%;
		margin-left: -56.7568%;
	}

	#header .site_ttl {
		width: 53.1082%;
		padding-top: 8.6487%;
		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: 67.5676%;
		margin-top: 2.7028%;
	}

	#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: 21.4%;
		display: block;
	}

	#header .official_link a::before {
		background: url(../images/btn_official_off.png) no-repeat center top;
		background-size: 100% auto;
	}

	#header .official_link a::after {
		background: url(../images/btn_official_on.png) 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;
	}
}


/* =====================================================================
*    #main
* =================================================================== */
#main .category_inner {
	position: relative;
	padding-top: 7.8125%;
}

#main .category_ttl {
	width: 55.3125%;
	position: absolute;
	top: 0;
	left: 2.8125%;
	z-index: 11;
}

#main .category_img {
	width: 94.375%;
	position: relative;
	margin-left: auto;
	margin-right: auto;
}

@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_inner {
		padding-top: 6.7568%;
	}

	#main .category_ttl {
		width: 47.8379%;
		left: -0.2703%;
	}

	#main .category_img {
		width: 100.5406%;
		margin-left: -0.2703%;
	}

	#main .category_img::before {
		content: "";
		width: 100%;
		height: 0;
		display: block;
	}

	#main .category_img img {
		display: none;
	}
}

/* #main #introduction */
#main #introduction .category_inner {
	position: relative;
	margin-top: 9.375%;
}

#main #introduction .category_inner::before {
	content: "";
	width: 112.5%;
	height: 0;
	padding-top: 31.875%;
	background: url(../images/bg_intro.png) no-repeat center top;
	background-size: 100% auto;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -56.25%;
	margin-bottom: -8.59375%;
}

@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 {
		margin-top: 4.7298%;
	}

	#main #introduction .category_img::before {
		padding-top: 137.6345%;
		background: url(../images/img_intro_pc.png) no-repeat center top;
		background-size: 100% auto;
	}
}

/* #main #cast */
.bg_stripe {
	background: url(../images/bg_stripe.jpg) repeat center top;
	background-size: 9px auto;
}

#main #cast {
	margin-top: 12.5%;
}

#main #cast .category_inner {
	padding-top: 4.375%;
}

#main #cast .category_ttl {
	top: 0;
	margin-top: -3.4375%;
}

@media screen and (min-width:700px){
	.bg_stripe {
		background: url(../images/bg_stripe.jpg) repeat center top;
		background-size: 18px auto;
	}

	#main #cast {
		margin-top: 7.1154%;
	}

	#main #cast .category_inner {
		padding-top: 4.1892%;
	}

	#main #cast .category_ttl {
		margin-top: -2.5676%;
	}

	#main #cast .category_img::before {
		padding-top: 47.8495%;
		background: url(../images/img_cast_pc.png) no-repeat center top;
		background-size: 100% auto;
	}
}

@media screen and (min-width:700px){
	#main #cast {
		margin-top: 74px;
	}
}

/* #main #staff */
#main #staff .category_inner {
	margin-top: 2.34375%;
	padding-bottom: 32.8125%;
}

@media screen and (min-width:700px){
	#main #staff .category_inner {
		margin-top: 0.6757%;
		padding-bottom: 14.8649%;
	}

	#main #staff .category_img::before {
		padding-top: 100.1345%;
		background: url(../images/img_staff_pc.png) no-repeat center top;
		background-size: 100% auto;
	}
}

/* =====================================================================
*    .pagetop
* =================================================================== */
.pagetop {
	width: 100%;
}

.pagetop .pagetop_inner {
	width: 100%;
	position: relative;
}

.pagetop .pagetop_inner a {
	width: 18.4375%;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 2.1875%;
}

@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: 13.7838%;
		left: auto;
		right: 5.1352%;
		margin-bottom: -5.946%;
	}

	.pagetop .pagetop_inner a::before,
	.pagetop .pagetop_inner a::after {
		content: "";
		width: 100%;
		height: 0;
		padding-top: 101.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 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: #666666;
	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;
	}
}