
.spOnly{display: none !important;}

/*===========================================================
+-----+// header
===========================================================*/
header{
	position:fixed;
	top: 0;
	left: 0;
	z-index: 150;
	width: 100%;
	border-bottom: solid 2px #d2d2d2;
	background: #fff;
}

header #head_wrap{
	max-width: 1140px;
	margin: 0 auto;
	position: relative;
	padding: 15px 20px 0;
	height: 72px;
	box-sizing: border-box;
}

header #head_logo{
	width: 220px;

}
header #head_logo img{
	width: 100%;
}
header #head_logo ul{
	display: flex;
}
header #head_logo_col2 {
	display: flex;
	align-items: center;
	width: 220px;
}
header #head_logo_col2 a:first-child {
	margin-right: 3px;
}
header #head_logo_col2 img {
	height: 43.84px
}


header #head_logo a{
	transform: all 0.3s;
}

header #head_logo a:hover{
	opacity: 0.7;
}

header #menu{
	display: flex;
	justify-content: flex-start;
	flex-wrap: nowrap;
	align-items: center;
	position: absolute;
	top:18px;
	right: 0;
}
header #menu li{
	margin-right: 20px;
}

header #menu li a{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	transition: all 0.3s;
	font-size: 1.2rem;
}

header #menu li a:hover{
	opacity: 0.7;
}

header #menu li.event a{
	font-size: 1.0rem;
	text-align: center;
	line-height: 1.2;
}

header #menu li span{
	margin-left: 5px;
	display: block;
	white-space: nowrap;
}

header #menu .search img{
	height: 28px;
}
header #menu .timetable img{
	height: 28px;
}
header #menu .vod img{
	height: 37px;
}
header #menu .event img{
	height: 38px;
}

header #menu .nav_menu{
	width: 48px;
	height: 40px;
	margin-right: 30px;
	box-sizing: border-box;
}
header #menu .menu-trigger,
header #menu .menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
header #menu .menu-trigger {
	width: 48px;
	height: 40px;
}
header #menu .menu-trigger span {
	position: absolute;
	left: 0;
	width: 48px;
	height: 6px;
	background-color: #666;
	border-radius: 3px;
}
header #menu .menu-trigger span:nth-of-type(1) {
	top: 3px;
}
header #menu .menu-trigger span:nth-of-type(2) {
	top: 17px;
}
header #menu .menu-trigger span:nth-of-type(3) {
	bottom: 3px;
}
header #menu .menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(8px) rotate(-315deg);
	transform: translateY(8px) rotate(-315deg);
}
header #menu .menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
header #menu .menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-9px) rotate(315deg);
	transform: translateY(-9px) rotate(315deg);
}

#head_search {
	position: absolute;
	top: 22px;
	right: 365px;
}

#head_search form {
	display: flex;
	align-items: center;
}

#head_search .searchBox {
	width: 182px;
	height: 30px;
	padding: 0 12px;
	font-size: 11px;
	border: 1px solid #999;
	border-radius: 14px 0 0 14px;
	box-sizing: border-box;
	outline: none;
}

#head_search .searchBox::placeholder {
	color: #999;
}
  
#head_search .searchBox:-ms-input-placeholder {
	color: #999;
}

#head_search .searchBox::-ms-input-placeholder {
	color: #999;
}

#head_search .searchBtn {
	width: 40px;
	height: 30px;
	font-size: 0;
	border-radius: 0 14px 14px 0;
	background: url("/top/common/img/icon_search_white.png") center center no-repeat;
	background-size: 16px;
	background-color: #999;
}


/*===========================================================
+-----+// main
===========================================================*/
main{
	display: block;
	width: 100%;
	position: relative;
	padding-top: 128px;
}
main .h1_ttl{
	text-align: center;
	margin: 35px 0 30px;
}

main .h2_ttl{
	text-align: center;
	background: url("/top/common/img/ttl_bg.png") left center repeat-x;
	margin-bottom: 40px;
}
main .h2_ttl img{
	background: #fff;
	height: 58px;
	padding: 0 50px;
}

/*===========================================================
+-----+// soclial_area
===========================================================*/

#soclial_area{
	margin-bottom: 100px;
}
#soclial_area ul{
	display: flex;
	justify-content:center;
	flex-wrap: wrap;
}
#soclial_area ul img{
	width: 60px;
	margin: 0 35px;
}


/*===========================================================
+-----+// pagetop
===========================================================*/

#pagetop{
	position: fixed;
	bottom:30px;
	right: 30px;
	z-index: 100;
}

#pagetop a{
	display: block;
	width: 64px;
	height: 64px;
	text-indent: -9999px;
	background: url("/top/common/img/pagetop.png") center center no-repeat #fff;
	background-size:18px auto;
	border: solid 1px #333;
	box-sizing: border-box;
}

/*===========================================================
+-----+// search modal
===========================================================*/

#search_modal{
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 500;
	display: none;
}

#search_modal #search_modal_inner{
	width: 100vw;
	height: 100vh;
	display: flex;
	align-items: center;
	background: rgba(0,0,0,0.8);
	overflow: hidden;
	text-align: center;
}

#search_modal #search{
	width: 540px;
	margin: 0 auto ;
	align-items: center;
}

#search_modal #search form{
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
}

#search_modal #search .searchBox{
	width: 430px;
	height: 40px;
	border-radius: 5px;
	padding: 5px 5px 5px 40px;
	box-sizing: border-box;
	position: relative;
	background: url("/top/common/img/icon_search.png") left 5px center no-repeat #fff;
	background-size: 27px 27px;
}

#search_modal #search .searchBtn{
	width: 95px;
	height: 40px;
	background: #999;
	font-size: 1.8rem;
	line-height: 40px;
	color: #fff;
	box-sizing: border-box;
	transition: all 0.3s;
	cursor: pointer;
}
#search_modal #search .searchBtn:hover{
	background: #ccc;
}


#search_modal .close{
	width: 30px;
	height: 30px;
	display: block;
	position: fixed;
	right: 30px;
	top:30px;
}

#search_modal .close a{
	width: 30px;
	height: 30px;
	display: block;
	position: relative;

}
#search_modal .close span{
	height: 1px;
	width: 100%;
	display: block;
	background: #fff;
	position: absolute;
	left: 0;
	top:15px;
}

#search_modal .close span:nth-child(1){
	transform: rotate(45deg);
}
#search_modal .close span:nth-child(2){
	transform: rotate(-45deg);
}


/*===========================================================
+-----+// footer
===========================================================*/

footer{
	padding: 20px;
	background: #eeeeee;
}

footer a{
	transition: all 0.3s;
}
footer a:hover{
	opacity: 0.5;
}

footer .foot_attention {
	margin: -20px -20px 0;
	padding: 55px 20px;
	font-size: 1.8rem;
	text-align: center;
	line-height: 2;
	color: #fff;
	background: #696969;
}

footer .foot_attention p,
footer .foot_attention a {
	font-size: inherit;
	color: inherit;
}

footer .foot_attention a {
	text-decoration: underline;
}

footer #foot_menu{
	max-width: 1030px;
	margin: 0 auto 30px;
}

footer #foot_menu section{
	display: flex;
	justify-content:flex-start;
	flex-wrap: nowrap;
	padding: 30px 0 20px;
	border-bottom: solid 2px #dddddd;
}
footer #foot_menu section h2{
	font-weight: bold;
	min-width: 180px;
	padding-right: 20px;
	box-sizing: border-box;
}
footer #foot_menu section ul{
	display: flex;
	justify-content:flex-start;
	flex-wrap: wrap;
}
footer #foot_menu section li{
	margin-bottom: 10px;
}
footer #foot_menu section li:after{
	content:'|';
	margin-left: 25px;
	margin-right: 25px;
}

footer #foot_menu section li:last-child{
	border-bottom: none;
}


footer #foot_nav{
	display: none;
}

footer small{
	font-size: 1.6rem;
	display: block;
	text-align: center;
}

article {
	margin-bottom: 30px;
}

/*===========================================================
+-----+// live
===========================================================*/
#live {
	display: none;
	margin-bottom: 12px;
	padding-top: 20px;
	background-color: #111;
}

#live.is-active {
	display: block;
}

#live * {
	color: #fff;
}

#live .heading {
	text-align: center;
}

#live h2 {
	display: inline-block;
	margin-bottom: 25px;
}

#live h2 img {
	width: 220px;
}

#live .inner {
	display: flex;
	align-items: flex-start;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 20px 25px;
}

#live .thumb {
	position: relative;
	width: 28%;
	margin: 0 10%;
	transition: opacity 0.3s;
	cursor: pointer;
}

#live .thumb:hover {
	opacity: 0.7;
}

#live .thumb::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 60px;
	height: 60px;
	background: url("/top/common/img/icon_play.png") center center no-repeat;
	background-size: contain;
	transform: translate(-50%,-50%);
}

#live .thumb img {
	position: relative;
	z-index: 1;
	width: 100%;
}

#live .txtArea {
	width: 52%;
}

#live .title {
	margin-bottom: 10px;
	font-size: 2.4rem;
}

#live dl {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	font-size: 1.8rem;
}

#live dl *:nth-child(n + 3) {
	margin-top: 15px;
}

#live dt {
	width: 92px;
}

#live dd {
	width: calc(100% - 92px);
	overflow: hidden;
}

#live dd.ellipsis {
	white-space: nowrap;
	text-overflow: ellipsis;
}

#live .detail_item.is-hidden {
	display: none;
}

#live .url {
	word-break: break-all;
	text-decoration: underline;
}

#live .url a {
	transition: opacity 0.3s;
}

#live .url a:hover{
	opacity: 0.7;
}

#live .btn {
	margin-top: 60px;
	font-size: 1.5rem;
	text-align: right;
	transition: margin 0.3s linear;
}

#live .acd_active .btn {
	display: block;
}

#live .acd_open .btn {
	margin-top: 30px;
}

#live .btn a {
	position: relative;
	transition: opacity 0.3s;
	vertical-align: top;
	text-decoration: underline;
}

#live .btn a:hover{
	opacity: 0.7;
}

#live .more {
	display: inline-block;
}

#live .acd_open .more {
	display: none;
}

#live .close {
	display: none;
}

#live .acd_open .close {
	display: inline-block;
}

#live_modal{
	position: fixed;
	left: 0;
	top: 0;
	z-index: 200;
	width: 100%;
	height: 100vh;
	background: rgba(0,0,0,0.8);
	display: none;
}

#live_modal .live_content {
	max-width: 890px;
	margin: 0 auto;
}

#live_modal .inner {
	position: relative;
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
}

#live_modal #jwplayer {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

#live_modal .close {
	max-width: 890px;
	margin: calc(5% - 45px) auto 20px;
	display: block;
}

#live_modal .close a {
	width: 26px;
	height: 26px;
	display: block;
	margin-left: auto;
	position: relative;
	cursor: pointer;
	transition: opacity 0.3s;
}

#live_modal .close a:hover {
	opacity: 0.7;
}

#live_modal .close span {
	height: 3px;
	width: 34px;
	display: block;
	background: #fff;
	position: absolute;
	left: -4px;
	top: 12px;
}
#live_modal .close span:nth-child(1) {
	transform: rotate(45deg);
}
#live_modal .close span:nth-child(2) {
	transform: rotate(-45deg);
}

@font-face {
	font-family: MeiryoItalic;
	src: local('Meiryo'), local('メイリオ');
}

.top_attention {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Hiragino Sans", MeiryoItalic, Meiryo, Arial, sans-serif;
	font-style: oblique;
	display: none;
	width: calc(100% - 40px);
	max-width: 1195px;
	margin: 28px auto 18px;
	padding: 10px 30px;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.32;
	color: #fd0015;
	word-break: break-all;
	border: 2px solid #fd0015;
	box-sizing: border-box;
}

/* ツイッター シェア */
#live .liveShare {
	padding: 75px 10px 35px;
	font-weight: bold;
	text-align: center;
}

#live .liveShare a {
	transition: opacity 0.3s;
}

#live .liveShare a:hover {
	opacity: 0.7;
}

#live .liveShare_link {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}

#live .liveShare_row {
	display: inline-flex;
	align-items: center;
}

#live .liveShare_row img {
	width: 40px;
	margin-right: 8px;
}

#live .liveShare_title {
	margin-right: 18px;
	font-size: 1.6rem;
	border-bottom: 3px solid #d3002f;
}

#live .liveShare_skew {
	display: inline-block;
	transform: skew(-10deg) translate3d(0,0,0);
}

#live .liveShare_copy {
	position: relative;
	padding-right: 25px;
	font-size: 1.2rem;
}

#live .liveShare_copy::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 11px;
	border-color: transparent transparent transparent #ffffff;
	transform: translateY(-50%);
}

#live .liveShare_account {
	color: #1da1f2;
}

#live .liveShare_terms {
	color: #ffd800;
	text-decoration: underline;
}

#live .liveShare_txt {
	font-size: 1.2rem;
}