h2 { font-size: 2em; padding-bottom: .5em;}
h2 .new { font-size: 75%; color: rgba(255, 60, 30, 1); letter-spacing: 0; font-weight: lighter;}
h3 { font-size: 1em;}

.unit0 { width: 100%; margin: -4rem auto 8rem auto; font-size: 1em; text-align: left;}
.unit_drama { width: 100%; max-width: 1100px; margin: -2rem auto 5rem auto; font-size: 1em; text-align: left;}
#caststaff { margin: -2rem auto 7rem auto;}

#program_header { padding-top: 0;}
#program_time { text-align: center; font-size: 160%;}

#program_nav li { flex-basis: 48%; margin: 0 .5% .5rem .5%;}
#program_nav li span { top: 50%;}
#program_nav li:first-child, #program_nav li:nth-child(4) { margin-left: .5%;}
#program_nav li:last-child, #program_nav li:nth-child(3) { margin-right: .5%;}
#program_nav .new { position: relative;}
#program_nav .new span { top: 38%;}
#program_nav .new::after { content: 'NEW'; width: 100%; text-align: center; font-size: 80% !important; color: rgba(255, 60, 30, 1); position: absolute; bottom: 5px; right: 0;}

#official_sns ul { background-color: rgba(255, 255, 255, 1);}
#official_sns ul { justify-content: center;}
#official_sns li { flex-basis: 18%; margin: .5em 0 1.5rem 1%; font-size: 1.2em; text-align: center;}
#official_sns li a { width: 100%; display: flex; flex-flow: row wrap; align-items: center; justify-content: center;}
#official_sns li a .sns_icon { flex-basis:  60%; margin-bottom: .15em;}
#official_sns li a .sns_name { flex-basis:  100%; text-align: center; font-size: .9em;}

#stream_tver .bgw { background-color: rgba(255, 255, 255, 1);}
#stream_tver li { margin: .5em 0 .15rem 1%; font-size: 1.2em; text-align: center; padding: 1em 0;}
#stream_tver .stream_icon { width: 40%; max-width: 240px; margin: 0 auto; border: 1px solid rgba(210, 210, 210, .5);}
#stream_tver .stream_caution { text-align: center; font-size: 1.25em; padding: 0 0 1.25em 0; font-weight: 400;}


#teaser .movie_all, #interview .movie_all { width: 100%; margin: 0 auto 1em auto;}

.info_txt .cast { margin-left: 1em; letter-spacing: .05em;}
.info_txt .cast td { padding: .25em .5em;}
.info_txt .staff { margin-left: 1.25em; margin-bottom: 1.25em; line-height: 160%;}

/*highlight*/
#highlight { background-color: rgba(249, 249, 252, 0);}
#highlight ul { width: 100%;}
#highlight li a { display: block; filter: drop-shadow(4px 4px 4px rgba(200, 200, 200, .1)); background-color: rgba(255, 255, 255, 1); display: flex; flex-flow: row nowrap; justify-content: space-between; align-items: center; margin-bottom: .5em;}
#highlight li a:hover { opacity: .9;}
#highlight li a::after { content: '→ 詳細・コメント'; width: auto; height: auto; position: absolute; bottom: .5em; right: .85em; transform: translateY(-50%); -webkit-transform: translateY(-50%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; background-image: url(/ro/img/program/cover.png); font-size: 120%; color: rgba(0, 80, 255, 1);}
#highlight li a.no_cmt::after { content: '→ 詳細';}
#highlight li a .imgsp { width: 40%;}
#highlight li a .acv_info { box-sizing: border-box; width: 58%; padding: 1em 1em 2em 1em; font-size: 1.25em;}

#highlight li a .imgsp img { width: 100%; background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain; pointer-events: none;}

#highlight .acv_info { padding: 1rem 1rem 2rem 1rem; font-size: 1.25em;}
#highlight .acv_info dt { color: rgba(0, 80, 255, 1);}
#highlight .acv_info .acv_title { font-size: 1.1em; font-weight: 600; padding: .35em 0;}
#highlight .acv_info .acv_txt { line-height: 1.5em; padding: .5rem 1rem .5rem 0; font-size: .9em;}

#highlight .latest a { flex-flow: row wrap;}
#highlight .latest a .imgsp, #highlight .latest a .acv_info { width: 100%;}
#highlight .latest a .acv_title { font-size: 1em; line-height: 180%; text-align: center; font-size: 1.1em; font-weight: bold;} 

/*movieBox*/
.movieBox { box-sizing: border-box; width: 100%; border: 4px solid rgba(255, 255, 255, 1); background-color: rgba(255, 255, 255, .6); margin: 0 auto;}
.mov-inner { width: 100%; height: 0; padding-top: 56.25%; position: relative; overflow: hidden; z-index: 100;}
.mov-inner iframe { width: 100%; height: 100%; position: absolute; left: 0; top: 0; border: 0; border: none;}
.yt-playlist-btn ul { padding: .35em 0 .5em 0; display: flex; flex-flow: row wrap; justify-content: center;}
.yt-playlist-btn li { box-sizing: border-box; flex-basis: 48%; margin:.5em .9% 0 .9%; font-size: 110%; font-weight: 600; line-height: 120%;}
.yt-playlist-btn li a { box-sizing: border-box; display: block; width: 100%; height: 100%; padding: 1em 0; text-align: center; color: rgba(255, 255, 255, 1); border: 2px solid rgba(255, 255, 255, .75); background-color: rgba(0, 80, 255, .75); position: relative; z-index: 101;}
.yt-playlist-btn li a:hover { opacity: .8;}
.yt-playlist-btn li a:hover { filter: brightness(120%);}
.yt-playlist-btn li a.yt-playing { background-color: rgba(255, 255, 255, .2); border: 2px solid rgba(0, 80, 255, .25); color: rgba(0, 0, 0, 1); position: relative;}
.yt-playlist-btn li a.yt-playing::after { content: "NOW PLAYING"; background-color: rgba(0, 80, 255, 1); color: rgba(255, 255, 255, 1); display: inline-block; line-height: 1; font-size: 72%; padding: .2em .25em; position: absolute; top: -5px; right: -5px;}
/*for_W768-*/
@media all and (min-width: 768px) { 
.unit_drama { font-size: 1.2em;}
#program_nav li { flex-basis: 32%; margin: 0 .5% .5rem .5%;}
#highlight .acv_info { padding: 1em 2em 3em 2em;}
#highlight .acv_info .acv_title { padding: .35em 0 .5em 0;}
#highlight li a { margin-bottom: .75em;}
}
/*for_W992-*/
@media all and (min-width: 992px) { 
#program_nav li { flex-basis: 24%; margin: 0 .5% .5rem .5%;}
#highlight .acv_info { padding: 1em 2em 3em 2em;}
}

/*archive*/
.unit_con #con_all { padding-bottom: 0;}
.unit_con { width: 100%; margin: -4rem auto 0 auto; text-align: left; padding: 0 0 6rem 0; border-radius: 30px 30px 0 0; font-size: 1em; background-color: rgba(0, 80, 255, 0);}
.unit_con h2 { padding-bottom: 0;}
.catch_txt { font-size: 100%; line-height: 180%; padding: 0 0 1em 0;}
.catch_txt p { padding: 1em 0 0 0; letter-spacing: 0;}
.unit_con .info_txt { padding: .25em .25em 1em .25em; line-height: 160%; letter-spacing: .05em;}
.unit_con .sk_h4 { padding: 1em 0 .5em 1.2em; position: relative;}
.unit_con .sk_h4::before { content: '\025b6'; position: absolute; top: 1.1em; left: 0; font-size: 90%;}
.unit_con .cm_h4 { padding: 0;}
.unit_con .cm_h4 span { border-bottom: 2px dotted rgba(0, 80, 255, 1); padding-bottom: .1em; margin-left: 1.1em; }
.unit_con .cmtxt { padding: .5em .5em 1em 1.1em;}
#acv_info { max-width: 900px; padding: 1rem 0 0 0;}
/*for_W768-*/
@media all and (min-width: 768px) { 
.catch_txt { font-size: 120%; padding: 0 0 2em 0;}
}