@charset "UTF-8";
/*--------------------------
search
先頭アイコン調整
---------------------------*/
#searchbox {
  margin-left: 10px;
}

.search_form {
  margin-bottom: 2px;
}

.bssuggest {
  border: 0;
  margin-left: 0;
  background: transparent;
}

.bssuggest .bssuggest-menu-item td {
  height: auto;
  padding: 5px;
  line-height: 1 !important;
}

.bssuggest .bssuggest-footer {
  padding: 2px 3px;
  background: #f3f3f3 !important;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}

.bssuggest-table {
  position: relative;
  top: -4px;
  border: 2px solid #666;
  border-top: 0;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  background: #fff;
  padding-top: 4px;
}

.bssuggest-menu-item:first-child td {
  border-top: 1px solid #999;
  padding-top: 6px;
}

#suggest_input_border {
  position: static;
}

/*PULL_BUTTON*/
a#search-suggest {
  position: absolute;
  display: inline-block;
  bottom: -18px;
  left: 12px;
  width: 20px;
  height: 12px;
  vertical-align: middle;
  background: transparent url(/common/2017/images/arrow_down.svg) no-repeat top center;
  background-size: 16px auto;
  transition: 0s !important;
}

a#search-suggest.bssuggest-pull-btn-u {
  position: absolute;
  bottom: 10px;
  left: -2px;
  background: transparent url(/common/2017/images/arrow_up.svg) no-repeat top center;
  background-size: 16px auto;
  width: 40px;
  height: 12px;
  display: inline-block;
  vertical-align: middle;
  z-index: 9999;
}

/*SEARCH_SELECT*/
.search_type_select {
  width: 100px;
}

/*HOT WORD*/
.word_list {
  width: 490px;
}

.search_hot_word {
  margin-top: 13px;
  padding-left: 7px;
}

.search_hot_word_icon {
  top: -8px;
}

/*縮小・拡大時のズレ調整20201007*/
.inputBox #sub {
  border-radius: 0 8px 8px 0 !important;
  width: 107px !important;
  height: 40px !important;
  top: 0 !important;
  right: 50px !important;
}

/*--------------------------
スポーツ枠Tab
---------------------------*/
.sports_tab.section {
  margin-top: 0;
  margin-bottom: 5px !important;
}
.sports_tab.section .contents, .sports_tab.section bxslider * {
  transition: initial;
}

.tab {
  display: table;
  margin-top: 0;
}

.tabContainer {
  box-sizing: border-box;
  border-bottom: 2px solid #999;
}

.tab__menu {
  display: table-cell;
  box-sizing: border-box;
  text-align: center;
  vertical-align: middle;
  border: 2px solid #fff;
  border-top: 2px solid #fff;
  background-color: #f3f3f3;
  border-bottom: 0;
  min-width: 80px;
  transition: 0.3s;
}

.tab__menu.active {
  position: relative;
  top: 2px;
  background-color: #fff;
  border-top: 2px solid #999;
  border-left: 2px solid #999;
  border-right: 2px solid #999;
  border-bottom: 2px solid #fff;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
}

.tab__menu a {
  padding: 10px 20px;
  color: #777;
  display: block;
  text-decoration: none;
  font-size: 14px;
  font-weight: bold;
  transition: 0.3s;
}

.tab__menu a:hover {
  color: #333;
}

.tab__menu.active a {
  color: #333 !important;
}

.tab__menu a span {
  font-weight: normal;
  padding-left: .5em;
}

.contents__content {
  box-sizing: border-box;
  padding-top: 15px;
  text-align: left;
  display: none;
  background: #fff;
}

.contents__content div {
  clear: left;
}

.bx-viewport .contents__content {
  display: block !important;
}

/*tab表示なし時のtitle------------*/
.sports_pickup .title {
  padding-bottom: 3px;
}

.sports_pickup .title p {
  font-weight: bold;
  color: #333;
}

.sports_pickup .title .date span {
  padding-left: 0.5em;
  font-weight: normal;
}

/*close_btn------------------------*/
.sports_pickup {
  position: relative;
}

.sports_pickup.on .sports_tab {
  display: block;
}

.sports_pickup.off .sports_tab {
  display: none;
}

.on .sports_tab_close {
  position: absolute;
  top: 0;
  right: 0;
  width: 18px;
  height: 18px;
  line-height: 4;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #aaa;
  z-index: +1;
  text-align: center;
  border-radius: 2px;
  -webkit-transition: all 0.3s ease;
  transition: all  0.3s ease;
}

.on .sports_tab_close:before, .on .sports_tab_close:after {
  content: ' ';
  background-color: #fff;
  height: 2px;
  width: 14px;
  border-radius: 4px;
  line-height: 1;
  display: block;
  position: absolute;
  top: 7px;
  left: 2px;
}

.on .sports_tab_close:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.on .sports_tab_close:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.off .sports_tab_close {
  position: absolute;
  top: 0;
  right: 0;
  width: 185px;
  height: 18px;
  line-height: 1;
  padding: 2px 0 7px 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #aaa;
  text-align: center;
  z-index: +1;
  border-radius: 2px;
 /*-webkit-transition: all 0.1s ease;
transition: all  0.1s ease; */
}

.off .sports_tab_close:before {
  content: "プロ野球・ラグビー情報を表示 ▼";
  font-size: 11px;
  color: #fff;
}

/*--------------------------
野球中継
baseballBox
---------------------------*/
.baseballBox {
  position: relative;
  margin: -5px 0 25px 0;
}
.baseballBox .title {
  padding-bottom: 3px;
}
.baseballBox .title .date {
  font-weight: bold;
  color: #333;
}
.baseballBox .title .date span {
  padding-left: 0.5em;
  font-weight: normal;
}
.baseballBox a:hover {
  text-decoration: none !important;
}
.baseballBox a:hover .onAirLink {
  text-decoration: underline;
}
.baseballBox a .gameList:hover {
  background: #f3f3f3;
}

.baseballBox .onAirLink,
.baseballBox .noGameInfo {
  display: none;
}

.baseballBox .onAirLink,
.baseballBox .noGameLink {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 1.2rem;
}

.baseballBox ul {
  display: flex;
  justify-content: space-around;
  box-sizing: border-box;
  min-height: 53px;
  padding: 7px 0;
}
.baseballBox ul li {
  flex: 1;
  border-left: 1px solid #eee;
  text-align: center;
  font-weight: bold;
  color: #353535;
  white-space: nowrap;
}
.baseballBox ul li img {
  opacity: 0.8;
}
.baseballBox ul li strong {
  font-weight: bold !important;
  color: #353535;
}
.baseballBox ul li span {
  padding: 0 0.5em;
}
.baseballBox ul li:first-child {
  border: none;
}
.baseballBox ul li .gameTime {
  display: block;
  padding: 0 0.3em;
  white-space: nowrap;
  font-weight: normal;
  font-size: 1.2rem;
}

.baseballBox .gameList {
  margin-top: 2px;
  background: #f9f9f9;
}

/*oneMacth*/
.baseballBox .oneMatch li {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  line-height: 1;
}

.baseballBox .oneMatch li strong {
  flex-basis: 7em;
  padding: 4px 0 2px 0;
}

.baseballBox .oneMatch li strong.team1 {
  text-align: right;
  padding-right: 1em;
}

.baseballBox .oneMatch li strong.team2 {
  text-align: left;
  padding-left: 1em;
}

.baseballBox .oneMatch li .gameTime {
  flex-basis: 100%;
  text-align: center !important;
}

/*noGame*/
.baseballBox .noGameTxt {
  padding: 10px 0 5px 0;
  text-align: center;
  background: #f9f9f9;
  color: #555;
  font-weight: bold;
  font-size: 1.3rem;
  letter-spacing: 0.1rem;
}

.baseballBox .moreLink {
  display: block;
  padding-top: 5px;
  font-weight: normal;
  font-size: 11px;
}

.baseballBox a:hover .moreLink {
  text-decoration: underline;
}

/*group*/
.baseballBox .group {
  margin: 0 auto;
  padding: 0 0 5px 0;
  font-size: 12px;
  text-align: center;
  background: #fff;
  letter-spacing: 0.1em;
  font-weight: normal;
  color: #555 !important;
}
.baseballBox .group img {
  vertical-align: middle;
  padding-right: 5px;
}

/*link*/
.baseballBox .otherGame {
  padding-top: 5px;
}
.baseballBox .otherGame a {
  padding: 5px 0 0 0.5em !important;
  font-size: 12px !important;
  color: #333;
}
.baseballBox .otherGame a:hover {
  text-decoration: underline !important;
}
.baseballBox .otherGame a:first-child {
  font-weight: bold;
}

.baseballBox .gameList.game2 ul {
  width: 70%;
  margin: 0 auto;
}

.baseballBox .gameList.game3 ul {
  width: 70%;
  margin: 0 auto;
}

.baseballBox a.npbMainLink {
  display: block;
  background: #f9f9f9;
}

.baseballBox a.npbMainLink:hover {
  background: #f3f3f3 !important;
}

.baseballBox a.link_guide:hover {
  text-decoration: underline !important;
}

.baseballBox .gameList .gameName {
  margin: -5px auto -5px auto;
  padding: 10px 0 0 0;
  font-size: 11px;
  font-weight: normal;
  text-align: center;
  background: #fff;
  letter-spacing: 0.1em;
  background: #f9f9f9;
}

/*--------------------------
プロ野球コラム
baseBallColumnBox
---------------------------*/
.baseBallColumnBox {
  box-sizing: border-box;
  margin: 8px 0 0 0;
  background: #f7f7f7;
  padding: 10px 15px;
}
.baseBallColumnBox:hover {
  background: #f1f1f1;
}
.baseBallColumnBox a {
  display: flex;
  align-items: center;
}
.baseBallColumnBox a:hover {
  text-decoration: underline !important;
}
.baseBallColumnBox a span:nth-child(1) {
  padding-right: 15px;
}
.baseBallColumnBox a span:nth-child(1) img {
  width: 64px;
  height: 48px;
  object-fit: cover;
}
.baseBallColumnBox span.newsSource {
  display: none;
}
.baseBallColumnBox span:nth-child(2) {
  letter-spacing: 0.05em;
  line-height: 1.6;
  font-size: 1.3rem;
}
.baseBallColumnBox .newsDetail {
  /*width: 26em;*/
  /*改行させたい幅 */
  word-wrap: break-word;
}

/*--------------------------
野球放送情報
relation_baseball
---------------------------*/
.relation_baseball {
  position: relative;
}
.relation_baseball .cateIco {
  position: absolute;
  top: 0;
  left: 15px;
  padding: 2px 5px;
  background: #666;
  color: #fff;
  font-size: 11px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.5px;
}
.relation_baseball ul {
  padding: 20px 10px 10px 10px;
  background: #f9f9f9;
}
.relation_baseball ul li a {
  display: flex;
  box-sizing: border-box;
  width: 100%;
  padding: 0 5px;
  font-size: 13px;
}
.relation_baseball ul li a:hover {
  text-decoration: none;
}
.relation_baseball ul li a i {
  font-size: 10px;
  font-style: normal;
}
.relation_baseball ul li a > span {
  padding: 3px 0;
  /*line-height: 1.4!important;*/
  line-height: 18px;
}
.relation_baseball ul li a > span:nth-child(1) {
  flex-basis: 16%;
  font-weight: 700;
}
.relation_baseball ul li a > span:nth-child(2) {
  flex-basis: 16%;
}
.relation_baseball ul li a > span:nth-child(3) {
  flex-basis: 68%;
}
.relation_baseball ul li a > span:nth-child(3):hover {
  text-decoration: underline;
}
.relation_baseball ul li a > span .fs_s {
  font-size: 11px;
  font-weight: normal;
}
.relation_baseball ul li a > span img {
  width: 20px;
}
.relation_baseball .otherlink {
  margin-bottom: 0;
  padding: 5px 0 0 1em !important;
}
.relation_baseball .otherlink a {
  padding-right: 0.5em;
  font-size: 12px !important;
}

/*--------------------------
ラグビー中継
rugbyBox
---------------------------*/
.rugbyBox a:hover {
  text-decoration: none !important;
}
.rugbyBox a .rugbyGameInfo:hover {
  background: #f3f3f3;
}

/*info---------*/
.rugbyGameInfo {
  display: flex;
  align-items: center;
  background: #f9f9f9;
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
}
.rugbyGameInfo .sche {
  display: block;
  text-align: center;
  padding-right: 10px;
}
.rugbyGameInfo .sche .week {
  font-size: 10px;
}
.rugbyGameInfo .cateIco {
  position: absolute;
  top: -23px;
  left: 10px;
  padding: 2px 5px;
  background: #666;
  color: #fff;
  font-size: 11px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.5px;
}
.rugbyGameInfo > li {
  position: relative;
  font-weight: bold;
  white-space: nowrap;
  line-height: 1;
}
.rugbyGameInfo > li:nth-child(1) {
  width: 85px;
  border-right: 1px solid #eee;
  color: #353535;
  white-space: nowrap;
}
.rugbyGameInfo > li:nth-child(2) {
  width: calc(100% - 80px) !important;
  text-align: right;
}

.rugbyGameInfo.rokuga .cateIco {
  position: relative;
  top: 0px;
}

/*inner---------*/
.rugbyGameInfoInner {
  display: flex;
  align-items: center;
  justify-content: center !important;
  padding-right: 15px;
}
.rugbyGameInfoInner li {
  position: relative;
  font-weight: bold;
  white-space: nowrap;
  line-height: 1;
}
.rugbyGameInfoInner li:nth-child(2) {
  flex-basis: 110px;
  text-align: center;
}
.rugbyGameInfoInner .cate {
  display: block;
  text-align: center;
  font-size: 11px;
  padding-bottom: 6px;
  color: #666;
}
.rugbyGameInfoInner .gameTime {
  display: block;
  text-align: center;
  font-weight: normal;
  font-size: 11px;
  padding-top: 8px;
  color: #666;
}
.rugbyGameInfoInner .vs {
  display: inline-block;
  padding: 0 1em;
}
.rugbyGameInfoInner .flag01 img {
  vertical-align: middle;
}
.rugbyGameInfoInner .flag02 img {
  vertical-align: middle;
}

/*link---------*/
.rugbyBox .otherGame {
  margin-bottom: 0;
  padding: 5px 0 0 1em !important;
}
.rugbyBox .otherGame a {
  padding-right: 0.5em;
  font-size: 12px !important;
}

/*rugbyColumnBox---------*/
.rugbyColumnBox {
  margin: 8px 0 0 0;
  background: #f7f7f7;
  padding: 10px 15px;
}
.rugbyColumnBox:hover {
  background: #f1f1f1;
}
.rugbyColumnBox a {
  display: flex;
  align-items: center;
}
.rugbyColumnBox a:hover {
  text-decoration: underline !important;
}
.rugbyColumnBox a span:nth-child(1) {
  padding-right: 15px;
}
.rugbyColumnBox a span:nth-child(1) img {
  width: 64px;
  height: 48px;
  object-fit: cover;
}
.rugbyColumnBox a span:nth-child(2) {
  letter-spacing: 0.05em;
  line-height: 1.6;
  font-size: 1.3rem;
}
.rugbyColumnBox span.newsSource {
  display: none;
}
.rugbyColumnBox .newsDetail {
  width: 26em;
  /*改行させたい幅 */
  word-wrap: break-word;
}

/*--------------------------
ラグビー中継
rugbyBox
---------------------------*/
#rugbyBox {
  margin-bottom: 20px;
}

.rugby {
  margin-top: -10px;
  padding-top: 10px;
  /*.title {
  margin-bottom: 5px;
  }*/
}
.rugby .rugby_inner {
  margin-top: -10px;
  margin-bottom: 10px;
  padding-top: 10px;
}
.rugby .rugby_title {
  padding: 0 0 3px 10px;
  font-weight: bold;
  font-size: 14px;
}

/*放送情報枠*/
.rugby_list {
  display: block;
}
.rugby_list ul {
  box-sizing: border-box;
  margin-top: 0;
  background: #f9f9f9;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}
.rugby_list ul li span {
  display: inline-block;
  padding: 7px 1px 6px 1px;
}
.rugby_list ul li span:nth-child(1) {
  flex-basis: 68px;
  font-weight: bold;
  text-align: right;
}
.rugby_list ul li span:nth-child(2) {
  flex-basis: 42px;
  padding-left: 4px;
  text-align: left;
}
.rugby_list ul li span:nth-child(3) {
  flex-basis: 39px;
}
.rugby_list ul li span:nth-child(4) {
  font-weight: bold;
}
.rugby_list ul li span em {
  position: relative;
  padding: 0 3px;
  border-radius: 2px;
  color: #fff;
  font-size: 10px;
}
.rugby_list ul li span em.rec {
  ppadding: 0 5px 0 6px;
  background: rgba(238, 61, 64, 0.9);
  letter-spacing: 0.2em;
}
.rugby_list ul li span em.live {
  background: #6c0;
  letter-spacing: -0.03em;
}
.rugby_list ul li span i {
  font-size: 12px;
  font-style: normal;
  font-weight: normal;
  background-color: transparent;
  color: #333;
}
.rugby_list ul li a {
  display: flex;
  width: 100%;
  padding: 3px 0;
  font-size: 12.5px;
  color: #353535;
  line-height: 1;
  border-bottom: 1px dotted #ccc;
}
.rugby_list ul li a:last-child a {
  border-bottom: none;
}
.rugby_list ul li a:hover {
  text-decoration: none !important;
  background: #f3f3f3;
}

/*リンク枠*/
.rugbyBox .otherGame {
  margin-bottom: 0;
  padding: 5px 0 0 1em !important;
}
.rugbyBox .otherGame a {
  padding-right: 0.5em;
  font-size: 12px !important;
}
.rugbyBox .otherGame a:hover {
  text-decoration: none;
}

/*--------------------------
高校野球中継
hsbaseballBox
---------------------------*/
#hsbaseballBox {
  margin-bottom: 20px;
}

.hsbaseball {
  margin-top: -10px;
  padding-top: 10px;
  /*.title {
  margin-bottom: 5px;
  }*/
}
.hsbaseball .hsbaseball_inner {
  margin-top: -10px;
  margin-bottom: 10px;
  padding-top: 10px;
}
.hsbaseball .hsbaseball_title {
  padding: 0 0 3px 10px;
  font-weight: bold;
  font-size: 14px;
}

/*放送情報枠*/
.hsbaseball_list {
  display: block;
}
.hsbaseball_list ul {
  box-sizing: border-box;
  margin-top: 0;
  background: #f9f9f9;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}
.hsbaseball_list ul li span {
  display: inline-block;
  padding: 7px 1px 6px 1px;
}
.hsbaseball_list ul li span:nth-child(1) {
  flex-basis: 68px;
  font-weight: bold;
  text-align: right;
}
.hsbaseball_list ul li span:nth-child(2) {
  flex-basis: 42px;
  padding-left: 4px;
  text-align: left;
}
.hsbaseball_list ul li span:nth-child(3) {
  flex-basis: 37px;
}
.hsbaseball_list ul li span:nth-child(4) {
  letter-spacing: 0.05em;
  font-weight: bold;
}
.hsbaseball_list ul li span em {
  position: relative;
  padding: 0 3px;
  border-radius: 2px;
  color: #fff;
  font-size: 10px;
}
.hsbaseball_list ul li span em.rec {
  ppadding: 0 5px 0 6px;
  background: rgba(238, 61, 64, 0.9);
  letter-spacing: 0.2em;
}
.hsbaseball_list ul li span em.live {
  background: #6c0;
  letter-spacing: -0.03em;
}
.hsbaseball_list ul li span i {
  font-size: 12px;
  font-style: normal;
  font-weight: normal;
  background-color: transparent;
  color: #333;
}
.hsbaseball_list ul li a {
  display: flex;
  width: 100%;
  padding: 3px 0;
  font-size: 12.5px;
  color: #353535;
  line-height: 1;
  border-bottom: 1px dotted #ccc;
}
.hsbaseball_list ul li a:last-child a {
  border-bottom: none;
}
.hsbaseball_list ul li a:hover {
  text-decoration: none !important;
  background: #f3f3f3;
}

/*リンク枠*/
.hsbaseballBox .otherGame {
  margin-bottom: 0;
  padding: 5px 0 0 1em !important;
}
.hsbaseballBox .otherGame a {
  padding-right: 0.5em;
  font-size: 12px !important;
}
.hsbaseballBox .otherGame a:hover {
  text-decoration: none;
}

/*--------------------------
季節情報
relation_season
---------------------------*/
.relation_season {
  position: relative;
}
.relation_season .cateIco {
  position: absolute;
  top: 0;
  left: 15px;
  padding: 2px 5px;
  background: #666;
  color: #fff;
  font-size: 11px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.5px;
}
.relation_season ul {
  display: flex;
  flex-wrap: wrap;
  padding: 10px;
  background: #f9f9f9;
}
.relation_season ul li {
  position: relative;
  flex-basis: 50%;
}
.relation_season ul li a {
  box-sizing: border-box;
  display: block;
  line-height: 1;
  width: 100%;
  padding: 7px 10px 7px 15px;
  font-size: 14px;
}
.relation_season ul li a:before {
  content: '・';
  position: absolute;
  display: block;
  font-weight: bold;
  left: -2px;
  top: 7px;
}
.relation_season .otherlink {
  margin-bottom: 0;
  padding: 5px 0 0 1em !important;
}
.relation_season .otherlink a {
  padding-right: 0.5em;
  font-size: 12px !important;
}

/*--------------------------
ジャンルで探す
direct_genre_box
20210501
---------------------------*/
.direct_genre_box {
  margin: 0 0 30px 0;
  background: #fff;
}
.direct_genre_box h2 {
  padding: 0 10px 12px 0;
  line-height: 1;
  font-size: 14px;
  text-align: left;
  font-weight: bold;
  color: #333;
}
.direct_genre_box h2 .fig_image img {
  width: 18px;
  line-height: 1;
  margin-right: 5px;
  vertical-align: middle;
}
.direct_genre_box ul {
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 2px;
  border: 1px solid #e5e5e5;
  background: #f7f7f7;
  border-radius: 6px;
}
.direct_genre_box ul li {
  position: relative;
  box-sizing: border-box;
  flex-basis: 33.3%;
  -ms-flex-preferred-size: 33%;
  border-bottom: 1px solid #e5e5e5;
  text-align: left;
  border-right: 1px solid #e5e5e5;
}
.direct_genre_box ul li a {
  display: block;
  padding: 12px 12px 12px 28px;
  font-size: 13px;
  color: #555;
}
.direct_genre_box ul li a:before {
  position: absolute;
  content: "";
  display: block;
  top: 14px;
  left: 10px;
  width: 12px;
  height: 12px;
  background-size: 120px 24px;
  background: url("/common/2017/images/genre_ico_pc.png") no-repeat 0 0;
}
.direct_genre_box ul li a:after {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  right: 6px;
  top: 50%;
  margin-top: -4px;
}
.direct_genre_box ul li:nth-child(1) a:before {
  background-position: 0 0;
}
.direct_genre_box ul li:nth-child(2) a:before {
  background-position: 0 0;
}
.direct_genre_box ul li:nth-child(3) a:before {
  background-position: -36px 0;
}
.direct_genre_box ul li:nth-child(4) a:before {
  background-position: -12px 0;
}
.direct_genre_box ul li:nth-child(5) a:before {
  background-position: -12px 0;
}
.direct_genre_box ul li:nth-child(6) a:before {
  background-position: -12px 0;
}
.direct_genre_box ul li:nth-child(7) a:before {
  background-position: -24px 0;
}
.direct_genre_box ul li:nth-child(8) a:before {
  background-position: -48px 0;
}
.direct_genre_box ul li:nth-child(9) a:before {
  background-position: -60px 0;
}
.direct_genre_box ul li.direct_genre_box_documentary a:before {
  background: url("/common/2017/images/genre_ico_documentary.svg") no-repeat center center;
  background-size: contain;
}
.direct_genre_box ul li:nth-child(11) a:before {
  background: url("/common/2017/images/genre_ico_community.svg") no-repeat center center;
  background-size: contain;
}
.direct_genre_box ul li:nth-child(12) a:before {
  background: url("/common/2017/images/genre_ico_community.svg") no-repeat center center;
  background-size: contain;
}
.direct_genre_box ul li:nth-child(13) a:before {
  background-position: -12px 0;
}
.direct_genre_box ul li:nth-child(14) a:before {
  background-position: -12px 0;
}
.direct_genre_box ul li:nth-child(15) a:before {
  background-position: -12px 0;
}
.direct_genre_box ul li.direct_genre_box_npb a:before {
  background-position: -84px 0;
}
.direct_genre_box ul li.direct_genre_box_rugby a:before {
  background-position: -108px 0;
}
.direct_genre_box ul li.direct_genre_box_soccer a:before {
  background: url("/common/2017/images/genre_ico_soccer.svg") no-repeat center center;
  background-size: contain;
}
.direct_genre_box ul li.direct_genre_box_more {
  flex-basis: 100%;
  -ms-flex-preferred-size: 100%;
  text-align: center;
  border-right: 0;
}
.direct_genre_box ul li.direct_genre_box_more a {
  padding: 6px 12px 4px 12px;
}
.direct_genre_box ul li.direct_genre_box_more a:before {
  background-image: none;
}
.direct_genre_box ul li.direct_genre_box_more a:after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 0;
  border-right: 0;
}
.direct_genre_box ul li.direct_genre_box_txtIco {
  align-self: center;
}
.direct_genre_box ul li.direct_genre_box_txtIco a {
  padding: 12px 12px 12px 9px;
  letter-spacing: 0.05em;
}
.direct_genre_box ul li.direct_genre_box_txtIco a i {
  position: relative;
  top: -1px;
  display: inline-block;
  margin: 0 3px 0 0;
  padding: 0.1em 0.1em 0 0.1em;
  line-height: 1em;
  border-radius: 4px;
  border: 1px solid #ccc;
  font-size: 11px;
  font-style: normal;
}
.direct_genre_box ul li.direct_genre_box_txtIco a:before {
  background: none !important;
}
.direct_genre_box ul li:nth-child(3n) {
  border-right: 0;
}
.direct_genre_box ul li.last {
  border-bottom: 0;
}
.direct_genre_box ul + ul {
  margin-top: 15px;
}

/*header_logo_zaq_show--defaultにする場合は.logo_ico_showコメントアウト*/
/*.logo_ico_show{ background: url(/common/2017/images/logo_myjcom_userspage_winter.png) no-repeat 0 26px}
.logo_ico_show a{display: inline-block; height: 44px;}
.logo_ico_show h1 img{visibility: hidden;}	
.logo_ico_show .search_block{ position: relative; left: 10px;}*/
body,
.side_menu_section_title {
  color: #333;
}

/*-----------------------
//pr
--------------------------*/
/*.aside_top_ad{border: 1px solid #ddd
}*/
/*-----------------------
//main_osusume
--------------------------*/
.figure_title_main {
  display: block;
  padding-bottom: 6px;
  font-weight: bold;
}

.figure_discliption {
  font-size: 13.5px;
  letter-spacing: 0.2px;
}

/*-----------------------
	/trend_news
----------------------*/
.trend_news_list li a:before {
  content: "";
}

/*-----------------------
//main_news_tabLink
------------------------*/
.news_tabLink {
  display: table;
  width: 100%;
  position: relative;
  top: -5px;
}

/*main_dilect_link*/
.main_sp_bnr {
  margin: -10px auto 20px auto;
}

.main_sp_bnr_btm {
  margin: 0 auto 30px auto;
}

.main_sp_bnr_half {
  margin-bottom: 20px;
}
.main_sp_bnr_half ul {
  display: flex;
  justify-content: space-between;
}
.main_sp_bnr_half ul li {
  flex-basis: 226px;
}

/*ニュースタブ項目下線 色・font-size変更*/
.news_tab_menu li a {
  box-shadow: inset 0 -2px 0px 0 #ddd;
  font-size: 13px;
}

/*main_dilect_link*/
.direct_link_list li a {
  font-size: 1.3rem;
}

/*side_bnr*/
.jcom_service_bnr {
  margin-bottom: 10px;
}

.jcom_service_bnr.mt10 {
  margin-top: -5px;
}

.jcom_service_bnr img {
  border-radius: 2px;
}

/*---------------------------
// side_jcom_service_menu.ico
---------------------------*/
.up:after {
  position: relative;
  top: -0.1em;
  margin-left: 3px;
  padding: 1px 3px 1px 4px;
  content: "UP!";
  background: #fdb013;
  color: #fff;
  line-height: 1;
  border-radius: 8px;
  font-size: 8px;
  font-family: Verdana, Geneva, "sans-serif";
}

/*---------------------------
// side_app_icom
---------------------------*/
.app_media_list img {
  width: 30px;
}

/*---------------------------
// aside_horoscope
---------------------------*/
.horoscope_region_infomation {
  text-align: right;
  margin-top: -12px;
  padding: 0 12px 12px;
}

/*aside_seikyu_kakunin*/
.status_supplement_active {
  color: #e83416 !important;
  letter-spacing: 0;
  font-weight: bold;
}

.figure_title_main {
  display: block;
  padding-bottom: 6px;
  font-weight: bold;
}

/*---------------------------
//  緊急のお知らせ
---------------------------*/
.rn_unity_design {
  box-sizing: border-box;
  /*max-width:960px;*/
  max-width: 800px;
  margin: 20px auto;
  padding: 0;
  border: 2px solid #e83416;
  background-color: #fdeae7;
  text-align: left;
}

.rn_unity_design .column {
  width: auto;
  display: block;
  padding: 15px;
  color: #333;
}

.rn_unity_design .column .column_l {
  background: none;
  padding: 0;
}

.rn_unity_design .column .notice_hl {
  padding: 2px 10px 5px 20px;
  color: #e83416;
  font-size: 14px;
  font-weight: bold;
  background: url("/common/2017/images/icon_info.png") no-repeat left top/14px auto;
  line-height: 1;
}

.rn_unity_design .column .column_r {
  padding: 0;
}

.rn_unity_design .notice_list {
  display: flex;
}

.rn_unity_design .notice_list a {
  color: #225383 !important;
  text-decoration: none;
  flex: 1;
}

.rn_unity_design .notice_list a:hover {
  text-decoration: underline;
}

.rn_unity_design .notice_list .date {
  box-sizing: border-box;
  padding-right: .75em;
  width: 9.5em;
}

/*---------------------------
// sp_kirikaeBtn
---------------------------*/
@media (max-device-width: 480px) {
  #spSwitch {
    margin: 0 auto;
    margin-bottom: 10px;
    padding: 0;
    width: 100%;
    line-height: 1;
    border-bottom: 6px solid #ccc;
    font-size: 4.4rem;
    font-weight: bold;
    background-image: none;
    background-color: #E5E5E5;
  }

  #spSwitch a {
    display: block;
    padding: 50px 0;
  }

  #spSwitch span {
    position: relative;
    display: inline-block;
    padding-right: 36px;
  }

  #spSwitch span:after {
    content: '';
    width: 26px;
    height: 26px;
    border: 0px;
    border-top: solid 2px #111;
    border-right: solid 2px #111;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 12px;
    right: 0;
    margin-top: -4px;
  }
}
/*---------------------------
local_navi/
jcom_common_navi配置調整
-----------------------------*/
.local_navi_inner {
  text-align: right;
}
.local_navi_inner .support_box_button {
  margin-left: 20px;
}

.local_navi_list > li {
  line-height: 1;
}

.local_navi_list > li > a {
  font-size: 14px;
}

.local_navi_inner .support_box_button {
  margin-left: 20px;
  position: relative;
  top: -1px;
}

.jcom_common_navi_list {
  margin: 0 20px;
}

/*a.support_box_button{margin: 7px 45px 0}*/
.jcom_common_navi_list > li > a {
  padding: 18px 10px;
}

/*---------------------------
//aside_user_status_box_START
---------------------------*/
.user_status_box {
  border: 1px solid #ccc;
}
.user_status_box h2 {
  color: #333;
  letter-spacing: 0.05rem;
}

.usb_con {
  padding: 0;
  box-shadow: 5px 5px 5px 200px rgba(100, 100, 100, 0.1) inset;
}
.usb_con ul {
  display: flex;
  margin: 0 4px;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: #fefefe;
}
.usb_con ul li a {
  display: block;
}
.usb_con ul li a:hover {
  background: #f7f7f7;
  text-decoration: none !important;
}
.usb_con ul figcaption.user_service_status_caption {
  float: none;
  display: block;
  text-align: center;
  letter-spacing: 0.05rem;
}

.usb_con ul:nth-child(1) li {
  box-sizing: border-box;
  flex-basis: 100%;
  margin: 0 4px;
  border-bottom: 2px solid #ccc;
  text-align: center;
  align-self: center;
}
.usb_con ul:nth-child(1) li a {
  margin-top: 2px;
  padding: 4px 0 12px 0;
}
.usb_con ul:nth-child(1) li .icons {
  position: relative;
  top: 13px;
}
.usb_con ul:nth-child(1) li span {
  float: none !important;
  display: inline-block;
}

.usb_con ul:nth-child(2) {
  margin-top: 0;
}
.usb_con ul:nth-child(2) li {
  margin-top: 3px;
  flex-basis: 98px;
  border-left: 1px solid #eee;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
  border-radius: 2px;
}
.usb_con ul:nth-child(2) li a {
  padding: 8px 1px 10px 1px;
}
.usb_con ul:nth-child(2) li:first-child {
  flex-basis: 96px;
  border-left: 0;
}
.usb_con ul:nth-child(2) li:last-child {
  flex-basis: 96px;
}

.usb_con #status_supplement {
  line-height: 1;
  display: block;
  text-align: center;
}
.usb_con .status_supplement_tit {
  padding: 10px 0;
  white-space: nowrap;
  font-size: 11px;
  font-weight: bold;
}
.usb_con .status_supplement_txt {
  display: block;
  line-height: 1.2;
  font-size: 11px;
}
.usb_con .user_service_infomation {
  padding: 10px;
  text-align: right;
}
.usb_con .grayscale_svg {
  display: inline-block;
  margin-left: 10px;
  height: 30px;
  vertical-align: middle;
}
.usb_con .grayscale_svg image {
  filter: url(#grayscale);
}
.usb_con .grayscale_svg image:hover {
  filter: none;
}
.usb_con .electricity .grayscale_svg {
  width: 17px;
  padding: 0 2px;
}
.usb_con .electricity .status_supplement_tit {
  color: #f39119;
}
.usb_con .electricity .status_supplement_txt {
  letter-spacing: 0.1em;
}
.usb_con .mobile .grayscale_svg {
  width: 16px;
  padding: 0 2px;
}
.usb_con .mobile .status_supplement_tit {
  color: #04a3a6;
  letter-spacing: -0.05px;
}
.usb_con .mobile .status_supplement_txt {
  letter-spacing: 0.1em;
}
.usb_con .tv .grayscale_svg {
  width: 27px;
  position: relative;
  top: 5px;
}
.usb_con .tv .status_supplement_tit {
  color: #e40e7e;
}

/*---------------------------
// aside_user_status_box END
---------------------------*/
#event_present span.figure img {
  border: 1px solid #e5e5e5;
}

/*---------------------------
// utility_box
---------------------------*/
.utility_box {
  margin-left: 50px;
  display: flex;
  justify-content: center;
}

.utility_list li a {
  width: 55px;
}
.utility_list li a span {
  padding-top: .4em;
}

.utility_list li:nth-child(3) a {
  width: 70px;
}
.utility_list li:nth-child(3) a span {
  padding-top: 0;
  line-height: 1.1;
}

.utility_list li.ico_new {
  position: relative;
}

.utility_list .ico_new:before {
  display: inline-block;
  box-sizing: border-box;
  position: absolute;
  right: 0;
  top: -9px;
  padding: 3px 3px 2px 3px;
  line-height: 1 !important;
  content: 'NEW';
  background: #E83416;
  border-radius: 2px;
  color: #fff;
  font-size: 10px !important;
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
  animation: moveY 2s infinite alternate linear;
}

@keyframes moveY {
  0% {
    top: -13px;
  }
  50% {
    top: -9px;
  }
  100% {
    top: -13px;
  }
}
/*---------------------------
// local_navi 吹き出し
---------------------------*/
.local_navi .sballoon {
  position: relative;
  display: inline-block;
  margin: 0;
  padding: 6px 7px 5px 7px;
  min-width: 100px;
  max-width: 100%;
  color: #111;
  font-size: 11px;
  background: #fff;
  border: solid 1px #999;
  border-radius: 6px;
  box-sizing: border-box;
  text-align: center;
  line-height: 1;
}
.local_navi .sballoon p {
  margin: 0;
  padding: 0;
}
.local_navi .sballoon i {
  font-style: normal;
  color: #cd2202;
}
.local_navi .sballoon a:hover {
  border-bottom: 1px dotted #ccc;
  text-decoration: none;
}
.local_navi .sballoon:before {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  margin-left: -7px;
  border: 8px solid transparent;
  border-top: 8px solid #fff;
  z-index: 2;
}
.local_navi .sballoon:after {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 50%;
  margin-left: -7px;
  border: 8px solid transparent;
  border-top: 8px solid #888;
  z-index: 1;
}

/*--------------------------
bl_media(common)
---------------------------*/
.bl_media_wrapper {
  margin-top: -5px;
  margin-bottom: 10px;
}

.bl_media {
  border-bottom: 1px solid #e5e5e5;
  line-height: 1;
}
.bl_media a {
  display: grid;
  grid-template-rows: 1fr;
  grid-template-columns: 1fr 1fr;
  display: -ms-grid;
  -ms-grid-rows: 1fr;
  -ms-grid-columns: 1fr 15px 1fr;
  grid-template-areas: "areaImg areabody";
  grid-column-gap: 15px;
  padding: 8px 8px;
}
.bl_media_imgWrapper {
  grid-area: areaImg;
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.bl_media_imgWrapper img {
  max-width: 100%;
  max-height: auto;
  pointer-events: none;
}
.bl_media_body {
  grid-area: areabody;
  align-self: center;
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  -ms-grid-row-align: center;
  text-align: left;
  line-height: 1.3;
  justify-content: flex-start;
  -ms-flex-pack: start;
}
.bl_media_ttl {
  padding-bottom: 4px;
}
.bl_media_ttl small {
  font-size: 1.2rem;
}
.bl_media_txt {
  font-size: 1.3rem;
  line-height: 1.4;
  color: #666;
}

/*--------------------------
イベプレ
---------------------------*/
.bl_media__evepre a {
  grid-template-columns: 50px 1fr;
  -ms-grid-columns: 50px 1fr;
  background: #fcfcfc;
}
.bl_media__evepre .bl_media_imgWrapper img {
  box-shadow: 0 0 1px 1px rgba(0, 0, 0, 0.1);
  width: 50px;
  height: 50px;
}
.bl_media__evepre .bl_media_txt {
  width: 389px;
  font-size: 1.2rem;
  line-height: 1;
}

/*--------------------------
キャンペーン
---------------------------*/
.bl_media__campaign a {
  grid-template-columns: 88px 1fr;
  -ms-grid-columns: 88px 1fr;
}
.bl_media__campaign .bl_media_imgWrapper img {
  width: 88px;
  box-shadow: 0 0 1px 1px rgba(0, 0, 0, 0.1);
}
.bl_media__campaign .bl_media_ttl {
  font-weight: bold;
  width: 351px;
}

.pickup_vertical {
  padding: 0 0 8px 0;
}
.pickup_vertical ul {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
}
.pickup_vertical li {
  box-sizing: border-box;
  margin-right: 2%;
  flex-basis: 32%;
}
.pickup_vertical li a {
  line-height: 1.3;
}
.pickup_vertical li:nth-child(3n) {
  margin-right: 0;
}
.pickup_vertical li span.figure img {
  max-width: 100%;
  border: 1px solid #ccc;
}
.pickup_vertical li div.figcaption {
  padding: 6px 0 12px 0;
}
.pickup_vertical li div.figcaption .figure_title_main {
  font-size: 12px !important;
  font-weight: normal;
}

.pickup_infomation span.figure img {
  border: 1px solid #ccc;
}

/*--------------------------
おすすめ番組（新）
---------------------------*/
#recommend.js-fade {
  animation-name: fade-in;
  animation-duration: .7s;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.bl_tv {
  width: 32%;
  flex-basis: 32%;
  margin: 0 .6%;
  display: inline-block;
}
.bl_tv * {
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}
.bl_tv a {
  position: relative;
  display: block;
  padding: 4px 0 8px 0;
  font-size: 12px;
  color: #333;
  text-decoration: none;
}
.bl_tv a:hover .bl_tv_text {
  text-decoration: underline;
}
.bl_tv a:hover .bl_tv_ttl {
  text-decoration: underline;
}
.bl_tv_img {
  border: 1px solid #ccc;
}
.bl_tv_img img.un_flImg {
  max-width: 100%;
  height: auto;
  max-height: 56.25%;
  object-fit: contain;
}
.bl_tv_img img.un_chImg {
  display: block;
  width: 56.25%;
  height: auto;
  margin: 0 auto;
}
.bl_tv_body {
  padding: 6px 2px 0 2px;
  line-height: 1.4;
}
.bl_tv_ttl {
  margin-top: 2px;
  font-weight: normal;
  font-size: 12px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.bl_tv_text {
  color: #333;
  font-size: 12px;
  margin-top: 2px;
}
.bl_tv_date {
  color: #666;
}
.bl_tv_date.is-onair {
  font-size: 0;
}
.bl_tv_date.is-onair:before {
  content: "放送中 ";
  font-size: 12px;
  color: red;
}
.bl_tv_ch {
  display: none;
}
.bl_tv_time {
  color: #666;
}
.bl_tv_caption {
  font-size: 11px;
  color: #666;
}

.__special.w {
  width: 100%;
  flex-basis: 100%;
  margin-right: 0;
}
.__special.w a {
  display: flex;
  align-items: center;
}
.__special.w .bl_tv_img {
  margin: 0;
  flex-basis: 32%;
  width: 32%;
}
.__special.w .bl_tv_body {
  /*margin-top: -11px;*/
  /*caption差分*/
  padding: 0 2px 0 2px;
  flex-basis: calc(100% - 35.5%);
  width: calc(100% - 35.5%);
}
.__special.w .bl_tv_text {
  font-size: 13px;
  line-height: 1.6;
}
.__special.w .bl_tv_caption {
  display: none;
}

.__special.w.bline {
  flex-basis: 98.7%;
}
.__special.w.bline a {
  margin-bottom: 8px;
  padding-top: 0;
  padding-bottom: 6px;
  border-bottom: 1px solid #ddd;
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.section_subLink {
  position: absolute;
  top: 4px;
  right: 0;
  font-size: 1.2rem;
  font-weight: normal;
  padding-left: 18px;
}
.section_subLink strong {
  font-size: 1.3rem;
  font-weight: bold;
  color: #333;
}
.section_subLink a {
  color: #666;
}
.section_subLink:before {
  position: absolute;
  content: "";
  display: block;
  top: 1px;
  left: 0;
  width: 12px;
  height: 12px;
  background-size: 120px 24px;
  background: url(/common/2017/images/genre_ico_pc.png) no-repeat 0 0;
  background-position: -12px 0;
}
