@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: 100%;
	position: absolute;
	top: 0;
	left: 0%;
	margin-left:0;
	/* margin-left: -53.46875%; */
	z-index: 10;
}

#header .site_ttl {
	width: calc(122/750 * 100%);
	position: relative;
	padding-right: calc(50/750 * 100%);
	margin-left: auto;
	z-index: 11;
}

.onair {
	width: 100%;
	position: relative;
	margin-left: auto;
	margin-right: auto;
	z-index: 11;
	background: #FFF;
}

#header .official_link {
	width: 31%;
	position: relative;
	margin: 3.89% 0;
	margin-left: calc(22/750 * 100%);
	margin-right: auto;
	z-index: 11;
}



@media screen and (min-width:768px){
	.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 {
		padding: 0 0 0;
	}

	#header .main_visual {
		width: 100%;
		top: 0;
		left: 0;
	}

	#header .site_ttl {
		width: calc(103/740 * 100%);
		padding-right: calc(40/740 * 100%);
	}

	.onair {
	background: -moz-linear-gradient(right,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%); 
	background: -webkit-linear-gradient(right,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 50%,rgba(255,255,255,1) 100%); 
	background: linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 50%,rgba(255,255,255,1) 100%);

}

	#header .official_link {
		width:  calc(210/740 * 100%);
		margin:  0 auto calc(20/740 * 100%) calc(20/740 * 100%);
	}

	#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:0 320px 0 0;
		margin:0 auto 0 auto;
	}
	.onair p img {
		width: 100%;
		margin-left: 0;
	}
}
@media screen and (min-width:1040px){
	.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 {
		padding: 0 calc(20 / 760 * 100%) 0 0;
	}

	#header .main_visual {
		width: calc(790 / 760 * 100%);
		top: 0;
		left: 50%;
		margin-left: -58.86075949367089%;
	}

	#header .site_ttl {
		width: calc(103/740 * 100%);
		padding-right: calc(40/740 * 100%);
	}

	.onair {
	background: -moz-linear-gradient(right,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%); 
	background: -webkit-linear-gradient(right,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 50%,rgba(255,255,255,1) 100%); 
	background: linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 50%,rgba(255,255,255,1) 100%);

}

	#header .official_link {
		width:  calc(210/740 * 100%);
		margin:  calc(44/740 * 100%) auto calc(23/740 * 100%) -6.351351351351351%;
	}

	#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: 1110px;
		box-sizing: border-box;
		padding:0 320px 0 0;
		margin:0 auto 0 auto;
	}
	.onair p img {
		width: 100%;
		margin-left: -33px;
	}

}
/* =====================================================================
*    #main
* =================================================================== */
.inner {
	width:100%;
	max-width: 1100px;
	margin:0 auto;
}

.section_ttl .category_ttl {
	width:calc(630/750 * 100%);
	margin:0 auto;
	padding:calc(61/750 * 100%) 0;
}


@media screen and (min-width:768px){
	#main .inner{
		width: 100%;
		max-width: 1040px;
		box-sizing: border-box;
		padding-right: 300px;
		margin-left: auto;
		margin-right: auto;
	}
	
	.section_ttl .category_ttl {
		width:calc(640/790 * 100%);
		padding:calc(35/790 * 100%) 0;
		margin:0 auto;
	}
	
}
@media screen and (min-width:1040px) {
	#main .inner{
		width: 100%;
		max-width: 1160px;
		box-sizing: border-box;
		padding-right: 370px;
		margin-left: auto;
		margin-right: auto;
	}
	
	.section_ttl .category_ttl {
		width:calc(640/790 * 100%);
		padding:calc(35/790 * 100%) 0;
		margin:0 auto;
	}

}

/* =====================================================================
*    #introduction
* =================================================================== */
#introduction {
	background-color:#ffe9f0;
 }

#introduction .section_ttl {
	 width:100%;
	 background:url(../images/bg_intro_sp.jpg) no-repeat center;
 }


@media screen and (min-width:768px) {
	#introduction .section_ttl {
		width: 100%;
		background:url(../images/bg_intro.jpg) no-repeat right center #fff6f9;
	}
}


/* =====================================================================
*    #cast
* =================================================================== */
#cast {
}
#cast .cast_box {
	width:100%;
	margin-left:0;
	background-color:#f687aa;
	padding-bottom:calc(90/750 * 100%);
}
#cast .cast_text {
	width:calc(630/750 * 100%);
	margin:0 auto;
}

@media screen and (min-width:768px){
	#cast .cast_box {
	padding-bottom:calc(52/790 * 100%);
}
	#cast .cast_text {
		width:calc(300/790 * 100%);
		margin:0 auto;
	}
}
/* =====================================================================
*    #staff
* =================================================================== */
#staff {
	background:url(../images/bg_stripe2.jpg);
}

#staff .staff_box {
	width:100%;
	margin-left:0;
	background-color:#fff;
	padding-bottom:calc(256/750 * 100%);
}
#staff .staff_text {
	width:calc(630/750 * 100%);
	margin:0 auto;
}
@media screen and (min-width:768px){ 
	#staff .staff_box {
	padding-bottom:calc(180/790 * 100%);
}
	#staff .staff_text {
		width:calc(640/790 * 100%);
		margin:0 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:768px){
	.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:768px){
	#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: 22px;
	padding-bottom: 22px;
}

#footer .footer_inner {
	font-size: 1.2rem;
	line-height: 1.25em;
	color: #FFF;
	text-align: center;
}

@media screen and (min-width:768px){
	#footer {
		padding:35px 0;
	}
	#footer .footer_inner {
		width: 100%;
		font-size: 1.6rem;
		line-height: 1.25em;
		box-sizing: border-box;
		margin-left: auto;
		margin-right: auto;
	}
}

@media screen and (min-width:1040px) {
	#footer {
		padding:35px 0;
	}
	#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;
  /**/
}