*{
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}

#header{
	height: auto !important;
}


.modal-overlay{
	z-index:9999999 !important;
	-webkit-transform:translate3d(0,0,0);
	transform:translate3d(0,0,0);
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}
#guide #header {
	z-index: 9999999 !important;
}
.modal-wrap{
	z-index:99999999 !important;
}
.nav li.catv.active{
	background: #F54E2F url("../images/topsvg/icon_guide05w.svg") no-repeat;
	background-position: right 25px center;
	background-size:16px;
}
.nav li.favorite.active{
	background: #F54E2F url("../images/topsvg/icon_guide01w.svg") no-repeat;
	background-position: right 25px center;
	background-size:16px;
}

::-webkit-scrollbar {
	width: 10px;
	height:10px;
}

/*スクロールバーの軌道*/
::-webkit-scrollbar-track {
	border-radius: 10px;
	box-shadow: inset 0 0 6px rgba(0, 0, 0, .1);
}

/*スクロールバーの動く部分*/
::-webkit-scrollbar-thumb {
	background-color: rgba(0, 0, 50, .5);
	/*border-radius: 10px;*/
	box-shadow:0 0 0 1px rgba(255, 255, 255, .3);
}

#epg{

	background-color:#fff;
}
main{
	background-color:#ededed;
}

#right_area{
	position:relative;
	float:left;
}
/*ゴミスタイルを打ち消し*/
#guide.open main{
	height: auto !important;
	overflow-y: auto;
}
#guide main{
	height:100% !important;
}
main{
	padding:0 0 0px !important;
}
#epg:before{
	padding-top:0px !important;
}
html,body{
	height:100%;
}

#main{
	height:100%;
	padding:0 0 0px;
}
#menu.shrink{
	transition: .15s width ease 0s;
	width:80px !important;
}
#epg-header.shrink{
	height:100px;
}
#slide_menu{

	position:relative !important;
	float:left !important;
	transition: .15s width linear 0s;

	/*
	padding-bottom: 15px;
	overflow-y:auto !important;
	overflow-x:hidden;
	height:100vh !important;
	*/
}

#epg_menu_area{
	overflow-y:auto;
	overflow-x:hidden;
}

#guide .menu_close {
	top: 0 !important;
}

body{
	overflow:hidden;
}

ul.nav{
	z-index:20000;
	padding-bottom:20px;
}
.open ul.nav{
	padding-bottom:20px;
}

.pagetop{
	cursor:pointer;
	z-index:9999;
}

.calendar{
	width:200px !important;
	padding:0 20px 0;
	/*height:236px;*/
	text-align:center;
}
.calendar.always{
	display:block !important;
}
.ui-datepicker-calendar td{
	line-height:1.3em;
	margin:10px 0px;
}
.ui-datepicker-calendar a{
	font-weight: bold;
	text-decoration:none !important;
}
.ui-datepicker-today{
	background-color:transparent;
	border-radius:100px;
	border-style:solid;
	border-color:transparent;
	border-width:0px;
}
.ui-datepicker-today a{
	font-weight:bold;
}
.ui-datepicker-week-end:first-child,
.ui-datepicker-week-end:first-child a{
	color:#e60012;
}
.ui-datepicker-week-end:last-child,
.ui-datepicker-week-end:last-child a{
	color:#2a81a2;
}
.ui-datepicker-current-day{
	background-color:#ea4f32;
	border-radius:100px;
	border-style:solid;
	border-color:#ea4f32;
	border-width:0px;
	color:#ffffff !important;
}
.ui-datepicker-current-day a{
	color:#ffffff !important;
	font-weight:bold;
}
.ui-datepicker-inline{
}
.ui-datepicker-calendar{
	width:200px;
}
.ui-datepicker-header{
	text-align:center;
}
.ui-datepicker-prev{
	display:inline-block;
	float:left;
	text-align:left;
}
.ui-datepicker-title{
	display:inline-block;
	clear:both;
}
.ui-datepicker-next{
	display:inline-block;
	float:right;
}

#display_settings_dialog label{
	display: block;
	font-size: 1.2rem;
	padding: 10px 10px 10px 40px;
	position: relative;
	cursor: pointer;
	vertical-align: middle;
}
.header_fixed_contents{
	position:relative;;
	transition: all .35s;
}
.header_fixed_contents.shrink{
	margin-top:-98px;
	transition: all .35s;
}
header#header.sp #g_menu{
	position:relative;
}
.header_shrink_pc{
	transition: all .35s;
}

.header_shrink_pc.shrink{
	margin-top:-96px ;
	transition: all .35s;
}
@media screen and (max-width:1200px ){
	.btnWrap{
		right:30px !important;
	}
	.header_shrink_pc.shrink{
		margin-top:-121px !important;
		transition: all .35s;
	}
}
@media screen and (max-width:950px ){
	.header_shrink_pc.shrink{
		margin-top:-144px !important;
		transition: all .35s;
	}
}
#header.pc.shrink{
	padding-top:0px !important;
	transition: all .35s;
}
#display_settings_dialog{
	display:none;
	width:400px;
	box-shadow : 5px 5px 10px rgba( 0,0,0,0.2 );
	padding:10px;
}

#epg-guide-header .btn_setting{
	z-index: 530000;
}

@media screen and (max-width: 900px){

	#guide main{
		top: -30px;
	}
	.select_box{
		box-shadow : 5px 5px 10px rgba( 0,0,0,0.2 );
		padding-top:0rem !important;
		padding-bottom:1rem;
		width:120%;
		top:40px;
		left:-31px;
		background-color:#fff;
		position:absolute;
		z-index:100000 !important;
		margin:0;
		padding:0;
	}
	.select_box li{
		position:relative;
		width:100%;
		height:40px;
		line-height:40px;
	}
	.select_box li span{
		border-bottom-style:solid;
		border-bottom-color:black;
		border-bottom-width:1px;
	}
	.select_box li.active span{
		border-bottom-color:#F54E2F;
		color:#F54E2F;
	}



	.spmenuhead .child_wrap{
		width:100%;
		max-width:900px;
	}


	#display_settings_dialog p.close {
		position: absolute;
		right: 10px;
		top:10px;
		z-index:999999;
		border:1px solid #dbdbdb;
	}
	#display_settings_dialog {
		width: 90%;
		padding:0px;
		padding-top:40px !important;
		background:#fff;
	}
	#display_settings_dialog .modal-content{
		display:block !important;
		top:auto !important;
		margin-bottom:auto !important;
		width:auto !important;
	}
	#calendar-dialog .modal-content a{
		width:auto !important;
	}
	#calendar-dialog p.close {
		position: absolute;
		right: 10px;
		border:none;
		width:auto;
		height:auto;
	}
	#calendar-dialog .modal-content{
		display:block !important;
		top:auto !important;
		margin-bottom:auto !important;
		width:250px !important;
		padding:10px;

	}

	#calendar-dialog {
		position:absolute;
		width:295px;
	}

}
#display_settings_dialog input[type=checkbox] {
	width: 160px;
	top: 0;
	left: 0;
	z-index: 5;
	cursor: pointer;
	display: none;
}
#display_settings_dialog input[type=checkbox] + label::after {
	top: 12px;
	left: 12px;
	width: 15px;
	height: 15px;
	background: #ffffff;
}

@media screen and (max-width: 900px ){
	#display_settings_dialog input[type=checkbox] + label[ for="selectAccentedGenreAll"]::after {
		border-style:solid;
		border-width:1px;
		border-color:#808080;
	}
}

#display_settings_dialog label::before, #display_settings_dialog label::after {
	position: absolute;
	content: '';
	display: block;
}
#display_settings_dialog input[type=checkbox]:checked + label::after {
	top: 12px;
	left: 12px;
	width: 15px;
	height: 15px;
	background: #ffffff;
}
#display_settings_dialog input[type=checkbox]:checked + label::before {
	left: 16px; /* 左から配置の基準位置を決める */
	margin-top: 2px;  /* チェックマークの位置 */
	width: 5px; /* ボックスの横幅を指定する */
	height: 9px;  /* ボックスの高さを指定する */
	border-right: 2px solid #ffffff;  /* 境界線（右）のスタイルを指定する */
	border-bottom: 2px solid #ffffff; /* 境界線（下）のスタイルを指定する */
	transform: rotate(45deg); /* 要素を回転させる */
	opacity: 0; /* 要素を透過指定する */
	z-index: 1;
}
#display_settings_dialog input[type=checkbox]:checked + label::before {
	opacity: 1; /* 要素を表示する */
}
#display_settings_dialog input[type=checkbox]:checked + label::after {
	background: #F54E2F;
}

#display_settings_dialog{
	z-index:90000;
	font-size:1.4rem;
	line-height:1.6;
}
#epg-guide-header{
	z-index:9999;
	position:relative;
	left:0px;
	top:0px;
	width:100%;
	background-color:#ffffff;
}

.child_list{
	z-index:10000;
}

.g_{
	background: #FFF;
}
.fs18{
	margin-left:20px;
}
.sub_menu{
	display:none;
	box-shadow: 0 0 8px gray;
	background-color:#ededed;
	z-index:150000;
	position:absolute;
	width:200px;
	max-height:600px;
	overflow-y:auto;
	overflow-x:hidden;
	top:150px;
	left:248px;
	padding:0px 0px;
}
.trackmenu .child_list{
	text-align:left;
}
.child_list > li{
	display:block;
	width:180px;
	padding: 0px 10px;
}
.child_list > li a {
	width:180px;
	display:table-cell;
	line-height:1em;
	height:50px;
	vertical-align:middle;
	font-size:1.2rem;
	text-decoration:none;
	padding: 0 5px;

}
.child_list > li:hover {
	background-color:#ffffff;
}
#time_menu{
	z-index:1000;
}
#nav-drawer{
	overflow:hidden;
}

.epg_show_area{
    font-size:14px;
    margin-left:10px;
    font-weight:bold;
}
.epg_show_area_change{
    font-size:12px;
    margin-left:5px;
    display:none;
}
#epg_show_area_wrap{
    padding:9px 20px;
    position:relative;
    background-color: #E5E5E5;
    display:none;
}
#epg_show_area_wrap .epg_show_area{
    font-size:12px;
    line-height:12px;
    margin:0;
}
#epg_show_area_wrap .epg_show_area_change{
    position:absolute;
    line-height:22px;
    right:52px;
    top:0;
    margin:0;
    padding:9px 0;
}
#epg_show_area_wrap .bn_close{
    top:10px;
}

@media screen and (max-width: 900px ){
	#guide #slide_menu{
		display:none;
	}

	.btnWrap{
		right:5px !important;
	}
	#guide_top{
		height:0;
	}
	#guide_top ul.btnWrap li.btn_setting{
		display:block;
		margin:0;
	}

	#display_settings_dialog a.settingOpen.modal-open.spOnly::before{
		display: block;
		content: '';
		position: absolute;
		top: 10%;
		left: 6px;
		width: 22px;
		height: 22px;
		background: url(../images/icon_config.png) no-repeat;
		background-size: 22px 22px;
	}
	.modal-content .calendar{
		margin-top:40px;
	}

}
.spmenuheadlay{
	background-color:#ffffff;
}
.info{
	backface-visibility: visible;
}

#display_settings_dialog a.settingOpen.modal-open.spOnly::before{
	display: none;
}

#time_menu{
	bottom:75px !important;
}

#time_menu li{
	border-radius:0px !important;
	padding: 5px 10px;
    -ms-user-select: none; /* IE 10+ */
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    user-select: none;
}

#time_menu li:first-child {
	padding: 5px;
	width:50px;
}

#time_menu li .time_menu_now{
	font-size:16px;
	line-height:0;
	position:relative;
	top:5px;
}

#time_menu li .time_menu_str{
	font-size:14px;
}

.pagetop{
	border-radius:0px !important;
	width:40px;
	height:35px;
	padding:10px;
	right:25px;
	bottom: 20px;
	box-shadow : 5px 5px 10px rgba( 0,0,0,0.2 );
}
.pagetop p{
	left:28% !important;
}
@media screen and (max-width: 900px ){

	.spmenuheadlay.spOnly{
		width:100%;
	}

	.pagetop {
		border-radius:0px !important;
		width: 45px;
		height: 45px;
		background-color: #fe4c32;
		position: fixed;
		bottom: 20px;
		right: 35px;
		z-index: 9999;
		padding:0px;
	}
	.pagetop p{
		position: absolute;
		top: 40%;
		left: 30% !important;
		margin: 0;
		width: 12px;
		height: 12px;
		border-top: solid 3px #fff;
		border-right: solid 3px #fff;
		-ms-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		transform: rotate(-45deg);
	}

	#spsubmenu{
		position:relative;
		/*line-height:40px;*/
		/*height:40px;*/
		overflow-x:auto;
		width:100%;
		display:none;
		background-color:#FFF;
		margin:0;
		padding-bottom:5px;
		-ms-overflow-style: none;
	}
	#spsubmenu.active{
		display:block;
	}
	#spsubmenu.active::-webkit-scrollbar{
		display:none;
	}
	ul.favorite_child_list,
	ul.catv_child_list {
		white-space:nowrap;
		/*width:auto !important;*/
		margin:0;
		border-bottom:1px solid #000;
	}

	.spmenuheadlay .ico-arrow{
		position:absolute;
		top: 52px;
		text-align:center;
		width: 15px;
		height: 34px;
		background: #ffffffe8;
		display:block;
		z-index:9999;
		cursor: pointer;
	}
	.spmenuheadlay .ico-arrow.left{
		left: 0;
		box-shadow: 8px 0px 8px -1px rgba(0, 0, 0, 0.04);
	}
	.spmenuheadlay .ico-arrow.right{
		right: 0;
		box-shadow: -8px 0px 8px -1px rgba(0, 0, 0, 0.04);
	}
	.spmenuheadlay .ico-arrow.left:before{
		content: "\f104";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		position: absolute;
		top: 50%;
		right: 3px;
		margin-top: -10px;
		color: #777777c7;
		font-size: 18px;
		line-height:1em;
	}
	.spmenuheadlay .ico-arrow.right:before{
		content: "\f105";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		color: #777777c7;
		font-size: 18px;
		position: absolute;
		top: 50%;
		right: 3px;
		margin-top: -10px;
		line-height:1em;
	}
	ul.favorite_child_list.active{
		display:flex !important;
	}
	ul.catv_child_list.active {
		display:flex !important;
	}

	.favorite_child_list li,
	.catv_child_list li {
		display:inline-block;
		white-space:nowrap;
		float:none;
		clear:both;
		padding:0;
		margin:0 0 -1px 4px;
		border:1px solid #000;
		background-color:#E5E5E5;
	}
	.favorite_child_list li a,
	.catv_child_list li a{
		padding:5px 15px;
		display:block;
	}
	.favorite_child_list li.active,
	.catv_child_list li.active{
		text-decoration:none;
		border-bottom:1px solid #FFF;
	}
	.favorite_child_list li.active a,
	.catv_child_list li.active a{
		text-decoration:none !important;
		background-color:#FFF;
	}

	#time_menu {
		bottom:60px !important;
		right:35px;
	}

	#time_menu li{
		border-radius:0px !important;
		padding: 5px;
		width:35px;
		display:none;
	}

	#time_menu li:first-child {
		display:block;
		padding: 5px 0;
		width:45px;
	}

	#time_menu li .time_menu_now{
		font-size:14px;
		line-height:0;
		position:relative;
		top:5px;
	}

	#time_menu li .time_menu_str{
		font-size:14px;
	}
}

#genreSt ul{
	display:flex;
	flex-wrap: wrap;
}
#genreSt ul li{
	width:50%;
}
.g8 span,.g2 span{
	font-size:0.7em !important;
}

.selectAll, .unselectAll{
	display:inline-block;
	float:left;
}


.modal-dialog{
	backface-visibility: visible;
	-webkit-backface-visibility: visible;
	display:none;
}

.settingOpen{
	z-index:999999999 !important;
}

li.g0{
	margin:auto !important;
	text-align:left;
}
.pg_ttl{
	display:inline-block;
	width:108px;
	float:right;
	overflow:hidden;
	line-height:1.4;
	font-size:1.2rem;
	font-weight:bold;
	padding:5px 5px 0 0px;
	margin-top:0px;
}
.pg_text{
	color:#595959;
	width:134px;
	margin:5px auto;
	font-size: 1rem;
}

.cn_table,.cn_detail,.cn_logo,.cn_text{
	-webkit-transform:translate3d(0,0,0);
	transform:translate3d(0,0,0);
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}
main{
	max-width:100% !important;
}
