div{
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}
html{
    height:100%;
    overflow:hidden;
}
body{
    margin: 0;
    padding: 0;
    height:100%;
}

.sp #header_msg.shrink{
    margin-top:-30px;
}

#epg-header{
    -webkit-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    height:200px;
}

#epg{
    position:relative;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    overflow:hidden;
}
#__epg-container{
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
    position:relative;
    margin-left:31px;
    bottom:0px;
    overflow:scroll;
    border-top-width: 1px;
    border-top-color: #909090;
    border-top-style: solid;
    /*
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    */
}
#__epg-container.loading{
    background:url("../images/ajax-loader-epg.gif") center no-repeat;
}
#__epg-container.shrink{
    border-top-width:1px;
    border-top-color:#909090;
    border-top-style:solid;
}
#__epg-inner{
    -webkit-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    overflow:hidden;
    position:absolute;
    transform:scale3d(1,1);
    transition: .30s opacity linear 0s;
    display:flex;
    flex-wrap:nowrap;
}
#__epg-timeline{
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    width:30px;
    position:absolute;
    border-right:1px solid #808080;
    /* z-index:998; */
}
#__epg-timeline>div{
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    background-color:#919191;
    width:30px;
    height:285px;
    position:absolute;
    border-bottom-style:solid;
    border-bottom-color:#ffffff;
    border-bottom-width:5px;
    color:#ffffff;
    text-align:center;
    padding-top:10px;
    font-weight:bold;
    font-size:1.4rem;
    line-height:1.6;
}
#border-tim-now{
    background-color:#ff0000;
    position:absolute;
    top:0px;
    height:1px;
    width:3000px;
    z-index:998;
    overflow:visible;
    display: flex;
    align-items: center;
}
#border-tim-now span{
    display:inline-block;
    background-color:#ff0000;
    color:#fff;
    font-size:11px;
    line-height:11px;
    height:11px;
    padding:2px 0 2px 6px;
}
#border-tim-now::after {
    content:  '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 0 7px 10px;
    border-color: transparent transparent transparent #ff0000;
}

#__epg-stations-wrap{
    -webkit-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    background-color:white;
    z-index:999;
    width:100%;
    height:62px;
    position:relative;
    display:block;
}
#__epg-stations{
    -webkit-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    z-index:999;
    position:absolute;
    background-color:white;
    left:30px;
    border-right-color:#808080;
    margin-left:0;
    display:flex;
    flex-wrap:nowrap;
}
#__epg-stations>div{
    -webkit-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
    width:150px;
    flex:0 0 150px;
    top:0px;
    border-width:1px;
    border-color:black;
    border-style:none;
}

#__epg-stations-wrap,
#__epg-stations-wrap #__epg-stations-wrap,
#__epg-stations-wrap div,
#__epg-container
{
    -webkit-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
    transition: .15s height linear 0s;
}
#epg-header{
    -webkit-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
    transition: .15s height linear 0s;
}


#__epg-stations-wrap.shrink,
#__epg-stations-wrap.shrink #__epg-stations-wrap,
#__epg-stations-wrap.shrink div
{
    /*height:53px ;*/
    height:75px;
    overflow:hidden;
}
#__epg-stations-wrap.shrink .__epg-ch_logo{
    display:none;
}

.event{
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
}

#__epg-stations-corner{
    -webkit-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
    position:absolute;
    background-color:#e5e5e5;
    width:30px;
    height:57px;
    left:0px;
    top:0px;
    z-index:9999;
    border-color:#808080;
    border-width:0px;
    border-right-style:solid;
    border-bottom-style:solid;
    overflow: hidden;
    border-top:5px solid #B2B2B2;
    border-right:1px solid #808080;
    /* cursor:pointer; */
}
/*
#__epg-stations-corner::before{
    text-align:center;
    content: "\f106";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #4D4D4D;
    font-size: 18px;
    line-height:1em;
    display:block;
    margin-top:9px;
}
#__epg-stations-corner::after{
    text-align:center;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #4D4D4D;
    font-size: 18px;
    line-height:1em;
    display:block;
}
#__epg-stations-corner.opened::before{
    content: "\f107";
}
#__epg-stations-corner.opened::after{
    content: "\f106";
}*/

/*
    53 is station header short style height
    136 is station header large style height
    131-158-178 is global header height
    78 is epg guide height
*/
#__epg-container.shrink{
    height: calc( 100vh - 131px - 53px - 78px - 24px ) ;
}
#__epg-container{
    height: calc( 100vh - 94px - 48px - 62px );
}
#__epg-container.headermsgon{
    height: calc( 100vh - 94px - 48px - 62px - 26px );
}

.__epg-station{
    border-top: 5px solid #B2B2B2;
    border-left: 1px solid #808080;
    border-right: 1px solid #808080;
    margin-right: -1px;
    background: #E5E5E5;
    padding: 0;
    font-size: 1.2rem;
    overflow: hidden;
    display: flex;
    flex-wrap:wrap;
    align-items:flex-start;
    cursor: pointer;
    height:57px;
}/*
.__epg-station.hover{
    height:auto;
    position:absolute;
    min-height:57px;
}*/

.__epg-ch_logo{
    text-align: center;
    background: #fff;
    margin:8px 0 8px 5px;
}

.__epg-ch_logo img{
    width: 40px !important;
    height: auto;
    max-height:40px;
    margin:0;
    display:block;
}

.__epg-ch_text{
    padding: 0;
    overflow: hidden;
    position:relative;
    width:102px;
    margin-left:2px;
}
.__epg-dt_text{
    width:100%;
    display:flex;
    flex-wrap:nowrap;
    justify-content: center;
    align-items:center;
    margin-top:13px;
}
.__epg-dt_text.sat{
    color:#2a81a2;
}
.__epg-dt_text.sun{
    color:#e60012;
}
.__epg-dt_text .__epg-month_jp{
    font-size:18px;
    line-height:1em;
    margin-top:-10px;
    margin-right:3px;
}
.__epg-dt_text .__epg-day_jp{
    font-size:32px;
    line-height:1em;
    margin-right:3px;
}
.__epg-dt_text .__epg-week_jp{
    font-size:18px;
    line-height:1em;
}

.__epg-ch_no{
    font-weight: bold;
    font-size: 1.4rem;
    line-height:1em;
    display:block;
    margin-top: 8px;
    padding-left:10px;
    background:url("/images/arrow/aro_next.svg") left top no-repeat;
    background-size: 8px 11px;
    margin-left:3px;
}

.__epg-ch_jp{
    display: block;
    clear: both;
    font-size: 1.0rem;
    line-height: 1.1em;
    font-weight:bold;
    margin-top:3px;
    margin-left:3px;
}

.__epg-ch_icon{
    position:absolute;
    top:5px;
    right:5px;
}

.__epg-ch_icon img{
    width: 20px !important;
    height: 19px;
}

.__epg-lane{
    width:149px;
    flex:0 0 149px;
    top:0px;
    border-style:solid;
    border-right-width:1px;
    background:#ddd;
    transition: .10s opacity linear 0s;
    position:relative;
}
.__epg-lane.beforeload{
    background:#fff;
    opacity:0;
}

.lane-end{
    width:75px;
    background: #FFF;
    border:none;
}

.__epg-event{
    position:absolute;
    width:149px;
    left:0px;
    font-size: 1.2rem;
    border-style:solid;
    border-color:#808080;
    border-bottom-width:1px;
    overflow: hidden;
    cursor: pointer;
    -webkit-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}
/*.__epg-event.change_height{
    transition: .15s height linear 0s;
}*/
.__epg-event>img{
    width:auto;
}

.__epg-event.show{
    overflow:visible !important;
    z-index:9999;
    box-shadow: 5px 5px 10px rgba(0,0,0,0.2);
}

.__epg-time_block{
    display: inline-block;
    width: 25px;
    margin: 0 2px 0 0;
    color: #ffffff;
    text-align: center;
    vertical-align: top;
    font-size: 100%;
    line-height:1em;
    padding:1px 0;
}

.__epg-time_block.g_{
    color: #fff;
    background: gray;
}

.__epg-title{
    overflow: hidden;
    font-size: 1.2rem;
    line-height: 1.4em;
    font-weight: bold;
    margin: 2px;
}

.__epg-title .osusume{
    width:14px;
    height:14px;
    vertical-align: top;
    font-size: 100%;
    line-height: 1em;
    display:inline-block;
    background:url("/images/ico_osusume_epg.svg") 50% 50% no-repeat;
}

.__epg-text{
    color: #595959;
    width: 134px;
    margin: 5px auto;
    font-size: 1rem;
    line-height: 1.2rem;
    padding: 3px;
    display:none;
}
.__epg-img{
    display:none;
    width:95%;
    margin:0 auto;
}
.__event-end .__epg-img{
    display:none;
}

.__epg-recpop{
    /*opacity: 0;*/
    display:none;
}
.__epg-recpop.show{
    transition: .15s all linear 0s;
    /*opacity:1;*/
    display:block;
}

.__event-end{
    cursor:default;
    background: #ccc !important;
}

@media screen and (max-width:1200px) {
    #__epg-container{
        height:calc( 100vh - 131px - 48px - 62px );
    }
    #__epg-container.headermsgon{
        height:calc( 100vh - 131px - 48px - 62px - 26px );
    }
}

@media screen and (max-width:950px) {
    #__epg-container{
        height:calc( 100vh - 152px - 48px - 62px );
    }
    #__epg-container.headermsgon{
        height:calc( 100vh - 152px - 48px - 62px - 26px );
    }
}

.epg_w100 #__epg-stations>div{
    width:100px;
    flex:0 0 100px;
}
.epg_w100 .__epg-lane{
    width:99px;
    flex:0 0 99px;
}
.epg_w100 .__epg-event{
    width:99px;
}
.epg_w100 .__epg-ch_text{
    margin-left:1px;
    width:98px;
}
.epg_w100 .__epg-title {
    line-height:1.2;
    font-size:1.1rem;
}
.epg_w100 .__epg-ch_jp{
    white-space:nowrap;
}
.epg_w100 #__epg-stations-corner{
    height:47px;
}
.epg_w100 #__epg-stations-wrap{
    height:52px;
}
.epg_w100 .__epg-station{
    height:47px;
}
.epg_w100 .__epg-ch_logo{
    display:none;
}
.epg_w100 .__epg-ch_icon{
    top:3px;
    right:3px;
}
/*
.epg_w100 .__epg-station.hover{
    min-height:47px;
}*/
.epg_w100 .__epg-dt_text .__epg-month_jp{
    font-size:16px;
    line-height:1em;
}
.epg_w100 .__epg-dt_text .__epg-day_jp{
    font-size:25px;
    line-height:1em;
}
.epg_w100 .__epg-dt_text .__epg-week_jp{
    font-size:16px;
    line-height:1em;
}
.epg_w100 #__epg-stations-corner::before{
    margin-top:5px;
}
.epg_w100 .__epg-event.show{
    width:150px;
    border-top-width:1px;
    border-right-width:1px;
    margin-top:-1px;
}
.epg_w100 #__epg-container{
    height:calc( 100vh - 94px - 48px - 52px );
}
.epg_w100 #__epg-container.headermsgon{
    height:calc( 100vh - 94px - 48px - 52px - 26px );
}
.epg_showdesc .__epg-recpop, .epg_showimg .__epg-recpop{
    display:block;
}
.epg_showdesc .__epg-recpop a, .epg_showimg .__epg-recpop a{
    display:none;
}
.__epg-recpop.show a, .__epg-recpop.show a{
    display:block;
}
.epg_showimg .__epg-recpop .__epg-img{
    display:block;
}
.epg_showdesc .__epg-recpop .__epg-text{
    display:block;
}
.__epg-recpop.show .__epg-img, .__epg-recpop.show .__epg-text{
    display:block;
}
.epg_w100.epg_showdesc .__epg-recpop .__epg-text{
    width:90px;
    padding:3px;
}
.__epg-recpop.show .__epg-text{
    width:134px !important;
}

@media screen and (max-width:900px) {
    #__epg-container{
        height:calc( 100vh - 47px - 52px - 62px );
    }
    #__epg-container.subopen{
        height:calc( 100vh - 47px - 52px - 62px - 39px );
    }
    #__epg-container.subopen2{
        height:calc( 100vh - 47px - 52px - 62px - 30px );
    }
    #__epg-container.headermsgon{
        height:calc( 100vh - 47px - 52px - 52px - 26px );
    }
    #__epg-container.subopen.headermsgon{
        height:calc( 100vh - 47px - 52px - 52px - 39px - 26px );
    }
    #__epg-container.subopen2.headermsgon{
        height:calc( 100vh - 47px - 52px - 52px - 30px - 26px );
    }
    .epg_w100 #__epg-container{
        height:calc( 100vh - 47px - 52px - 52px );
    }
    .epg_w100 #__epg-container.subopen{
        height:calc( 100vh - 47px - 52px - 52px - 39px );
    }
    .epg_w100 #__epg-container.subopen2{
        height:calc( 100vh - 47px - 52px - 52px - 30px );
    }
    .epg_w100 #__epg-container.headermsgon{
        height:calc( 100vh - 47px - 52px - 52px - 26px );
    }
    .epg_w100 #__epg-container.subopen.headermsgon{
        height:calc( 100vh - 47px - 52px - 52px - 39px - 26px );
    }
    .epg_w100 #__epg-container.subopen2.headermsgon{
        height:calc( 100vh - 47px - 52px - 52px - 30px - 26px );
    }

    #guide.open main{
        height:auto !important;
    }
}
		

