@charset "UTF-8";
@media screen and (min-width: 1081px) {
  .view--pc {
    display: block !important;
  }
  .view--sp {
    display: none !important;
  }
}
@media screen and (max-width: 1080px) {
  .view--pc {
    display: none !important;
  }
  .view--sp {
    display: block !important;
  }
}
/* ケーブルテレビ特殊サブサイト ヘッダー用ここから */
#header2{
  max-width: 1070px;
}
#he_hp{
  max-width: 120px;
  margin-left: 16px;
}
#he_left{
  width: unset !important;
}
#he_hp img{
  width: 100%;
}
#logo{
  max-width: 200px;
}
#logo img{
  width: 100%;
}
#footstep_wrap{
  display: none;
}
#header2{
  align-items: center;
}
.tpl_site #header_navi .h_lang a{
  border: 2px solid #006CA6;
  color: #fff;
  background-color: #006CA6;
  background-image: url(/img/site/catv/icon-common-world.png)
}
.tpl_site #header_navi #moji_size dd a:hover,
.tpl_site #header_navi #moji_size dd a#moji_large:hover,
.tpl_site #header_navi #moji_size dd a.active,
.tpl_site #header_navi #moji_size dd a#moji_large.active {
    border: 2px solid #006CA6;
    color: #fff;
    background: #006CA6;
}
.tpl_site #header_navi #haikei_color dd a:hover,
.tpl_site #header_navi #haikei_color dd a#haikei_white:hover,
.tpl_site #header_navi #haikei_color dd a#haikei_black:hover,
.tpl_site #header_navi #haikei_color dd a#haikei_blue:hover,
.tpl_site #header_navi #haikei_color dd a.active,
.tpl_site #header_navi #haikei_color dd a#haikei_white.active,
.tpl_site #header_navi #haikei_color dd a#haikei_black.active,
.tpl_site #header_navi #haikei_color dd a#haikei_blue.active {
    border: 2px solid #006CA6 !important;
    color: #fff !important;
    background: #006CA6 !important;
}

.tpl_site #header_search #cse-search-box-header #submit_header{
    background-color: #006CA6;
    border: 4px solid #006CA6;
    color: #fff;
    background-image: url(/img/site/catv/icon-common-search.png);
}
.tpl_site #header_search #cse-search-box-header #tmp_query_header{
    border: 4px solid #006CA6;
}

.tpl_site #global_navi .gnav>ul>li:first-of-type>a::before{
    background: #006CA6;
}
.tpl_site #global_navi .gnav>ul>li>a::after{
    background: #006CA6;
}

#global_navi .gnav>ul>li:nth-of-type(1)>a{
    background-image: url(/img/site/catv/icon-gnav01.png);
}
#global_navi .gnav>ul>li:nth-of-type(2)>a{
    background-image: url(/img/site/catv/icon-gnav02.png);
}
#global_navi .gnav>ul>li:nth-of-type(3)>a{
    background-image: url(/img/site/catv/icon-gnav03.png);
}
#global_navi .gnav>ul>li:nth-of-type(4)>a{
    background-image: url(/img/site/catv/icon-gnav04.png);
}
#global_navi .gnav>ul>li:nth-of-type(5)>a{
    background-image: url(/img/site/catv/icon-gnav05.png);
}

#global_navi .gnav>ul>li>a:hover {
    background-color: #006ca6d6;
    color: #fff;
}
@media screen and (max-width: 1080px) {
  #he_hp{
    max-width: 80px;
  }   
  #logo{
    max-width: 120px;
  }
  #global_navi{
    display: block;
  }
  .gnav ul{
    width: 96%;
    display: table;
  }
  .gnav ul li, .gnav ul li:first-child{
    display: table-cell;
  }
  #global_navi .gnav>ul>li>a{
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 670px) {
  #global_navi{
    display: none;
  }  
  #header2{
    align-items: flex-start;
  }
  #he_hp{
    margin-left: auto;
    margin-right: 24px;
  }  
  #he_left{
    padding-top: 8px;
  }  
  #spm01{
    background-image: url(/img/site/catv/spm01-01.png);
    background-color: #006CA6;
    border: 2px solid #006CA6;
    color: #fff;
    padding: 50px 0 5px;
  }
  #spm03{
    background: #DCEFF9;
  }
  #spm03 #moji_size dd a,
  #spm03 #moji_size dd a#moji_large {
    border: 2px solid #fff;
    background: #fff;
  }  

  #spm03 #moji_size dd a:hover,
  #spm03 #moji_size dd a#moji_large:hover,
  #spm03 #moji_size dd a.active,
  #spm03 #moji_size dd a#moji_large.active {
    border: 2px solid #006CA6 !important;
    color: #fff !important;
    background: #006CA6 !important;
  }

  #spm03 #haikei_color dd a,
  #spm03 #haikei_color dd a#haikei_white,
  #spm03 #haikei_color dd a#haikei_black,
  #spm03 #haikei_color dd a#haikei_blue {
    border: 2px solid #fff;
    background: #fff !important;
  }

  #spm03 #haikei_color dd a:hover,
  #spm03 #haikei_color dd a#haikei_white:hover,
  #spm03 #haikei_color dd a#haikei_black:hover,
  #spm03 #haikei_color dd a#haikei_blue:hover,
  #spm03 #haikei_color dd a.active,
  #spm03 #haikei_color dd a#haikei_white.active,
  #spm03 #haikei_color dd a#haikei_black.active,
  #spm03 #haikei_color dd a#haikei_blue.active {
    border: 2px solid #006CA6 !important;
    color: #fff !important;
    background: #006CA6 !important;
  }    
  #spm03>a{
    background-image: url(/img/site/catv/icon-common-world.png);
    color: #fff;
    background-color: #006CA6;
    border: 2px solid #006CA6;
  }
  #header_search_corner{
    background: #DCEFF9;
  }
  #header_search_corner .header_search_corner_wrap .header_search_corner_box #top_search_keyword_corner #cse_filetype_corner fieldset{
    text-align: left;
  }
  .cse_filetypeselect input{
    accent-color: #D01B3D;
  }
  #header_search_corner .header_search_corner_wrap .header_search_corner_box #top_search_keyword_corner #cse-search-box-corner{
    border: 2px solid #fff;
  }
  #header_search_corner .header_search_corner_wrap .header_search_corner_box #top_search_keyword_corner #cse-search-box-corner #submit_corner{
    border-left: 2px solid #fff;
    background-color: #006CA6;
    background-image: url(/img/site/catv/icon-common-search.png);
  }
}
/* ケーブルテレビ特殊サブサイト ヘッダー用ここまで */

/* ケーブルテレビ特殊サブサイト フッター用ここから */
.footer{
  background: #DCEDF5;
}
.footer-inner{
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1000px;
  margin: 0 auto;
  padding: 30px 0 20px;
}
.footer_logo_wrap{
  max-width: 260px;
  text-align: center;
}
.footer_logo_wrap img{
  max-width: 200px;
  display: block;
  margin: 0 auto 16px;
}
.footer_logo_wrap p{
  font-size: 2.0rem;
  margin-top: 0;
}
.footer_adress{
  font-size: 2.4rem;
}
#footer_hp{
  max-width: 120px;
  margin-left: 16px;
}
#footer_hp img{
  width: 100%;
}
#copyright{
  background: #9EDBF7;
  text-align: center;
  padding: 8px 0;
}
#copyright p{
  font-size: 2.0rem;
  letter-spacing: 0;
  font-weight: 500;
}
@media screen and (max-width: 1080px) {
  .footer_logo_wrap{
    max-width: 200px;
  }
  .footer_logo_wrap img{
    width: 100%;
  }  
  .footer_adress{
    font-size: 1.6rem;
  }
  #footer_hp{
    max-width: 120px;
    margin-left: 0;
  }  
}
@media screen and (max-width: 670px) {
  .footer_logo_wrap{
    max-width: 260px;
  }  
  .footer-inner{
    flex-direction: column;
    padding: 26px 0 35px;
  }
  .footer_adress{
    margin-bottom: 40px;
  }  
  #copyright{
    background: #9EDBF7;
    text-align: center;
    padding: 8px 0;
    margin-bottom: 72px;
  }
  #copyright p{
    font-size: 1.5rem;
    letter-spacing: 0;
    font-weight: 500;
  }  

  #spm02 ul li span, #spm02 ul li a{
    color: #fff;
    background-color: #00A0E9;
    border-right: 1px solid #fff;
  }  
  #spm02 ul li.icon-spm-search span::after, #spm02 ul li.icon-spm-search a::after{
    background-image: url(/img/site/catv/spm02-02.png)
  }
  #spm02 ul li.icon-spm-menu span::after, #spm02 ul li.icon-spm-menu a::after{
    background-image: url(/img/site/catv/spm02-03.png);
  }
  #spm02 ul li.icon-spm-home span::after, #spm02 ul li.icon-spm-home a::after{
    background-image: url(/img/site/catv/spm02-04.png);
    width: 72px;
    height: 50px;
    top: 0;
  }
  #spm04 ul li a{
    background-color: #DCEFF9;
    background-image: url(/img/site/catv/icon-common-anchor.png);
  }
  #spm04 ul li a::after{
    background-color: #006CA6;
  }
}
/* ケーブルテレビ特殊サブサイト フッター用ここまで */


/* ケーブルテレビ特殊サブサイト TOPここから */
#mymainback{
  max-width: 1080px;
}
.tpl_site_index #main_a{
  padding: 0;
}
.tpl_site_index #main{
  width: 100%;
}
.tpl_site_index #section_footer{
  display: none;
}
#footer_banner ul.banner_list{
  justify-content: center;
  align-items: center;
  gap: 54px;
}
#footer_banner ul.banner_list li{
  max-width: 323px;
  width: 100%;
}
.section_information{
  background: #DCEDF5;
  border-radius: 20px 20px 0 0;
  padding: 40px 0 60px;
}
.section_information h2{
  text-align: center;
  font-size: 4.0rem;
  line-height: 0.8;
}
.section_information_ttl .news_sub{
  color: #026a38;
  font-size: 1.4rem;
}
.section_information_list ul li{
  max-width: 860px;
  margin: 0 auto;
  padding: 20px 0 20px 24px;
  border-bottom: 1px solid #C2C2C2;
  position: relative;
}
.section_information_list ul li::before{
  content: "";
  width: 16px;
  height: 16px;
  border-radius: 100%;
  background: #fff;
  position: absolute;
  left: 0;
  top: 40%;
}
.section_information_list img.icon_new{
  margin-left: 0;
}
.section_information_list ul li > span.article_date{
  width: 10em;
}
.section_information_list div.link_box span{
  width: 250px;
}
.section_information_list div.link_box span a{
  background: #fff;
  padding: 12px 0;
  border: 2px solid #0091DB;
  border-radius: 30px;
  font-weight: 500;
}
.section_information_list div.link_box{
  margin: 40px auto 0;
  gap: 30px;
}
#footer_banner{
  max-width: 1080px;
  width: 96%;
}
@media screen and (max-width: 1080px) {
  #mymainback{
    margin-top: 40px;
    margin-bottom: 30px;
  }
  .free_box{
    max-width: 492px;
    display: block;
    margin: 0 auto;
  }
  .tpl_site_index #main{
    max-width: 650px;
    margin: 0 auto;
  }
  .section_information{
    padding-bottom: 30px;
  }
  .section_information_list div.link_box{
    padding-bottom: 0;
  }
  .section_information_list ul li:has(img.icon_new) img.icon_new{
    position: relative;
    top: 3px;
  }
  .section_information_list ul li:has(img.icon_new) > span.article_date{
    display: inline-block;
    padding-left: 0;
  }
  .section_information_list ul li::before{
    top: 28%;
  }
  .section_information_list ul li a{
    background: none;
    display: inline-block;
  }
  .section_information h2{
    text-align: center;
    font-size: 3.0rem;
    line-height: 0.8;
  }  
  .section_information h2 label[for*="acc_ttl_label"], .section_information h2.acc_title.accordion .accordion_icon{
    padding: 10px 20px;
  }
  #footer_banner ul.banner_list{
    flex-direction: column;
    gap: 20px;
    align-items: center;
    justify-content: center;
  }
}

/* ケーブルテレビ特殊サブサイト TOPここまで */


/* ケーブルテレビ特殊サブサイト 大メニューここから*/
.tpl_site_list_2 #main_a{
  padding: 0;
}
.tpl_site_list_2 #main{
  width: 100%;
}
.tpl_site_list_2 #main_header{
  margin-bottom: 40px;
}
.tpl_site_list_2 #main_header h1{
  background: #DCEDF5;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
}
.tpl_site_list_2 .info_list ul{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 40px;
}
.tpl_site_list_2 .info_list ul li{
  width: 47.9%;
  max-width: 520px;
  border: 2px solid #00A0E9;
  border-radius: 8px;
  box-shadow: 0px 3px 5px #0000006c;
  padding: 10px 12px;
  font-size: 2.4rem;
  font-weight: bold;
  position: relative;
  text-decoration: none;
  box-sizing: border-box;
}
.tpl_site_list_2 .info_list ul li::after{
  content: "";
  position: absolute;
  background-image: url(/img/site/catv/menu-arrow.png);
  background-size: contain;
  background-repeat: no-repeat;  
  width: 24px;
  height: 38px;
  right: 20px;
  top: 34%;
  pointer-events: none;
}
.tpl_site_list_2 .info_list ul li a{
  display: block;
  background: none !important;
}
@media screen and (max-width: 1080px) {
  .tpl_site_list_2 .info_list ul{
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 40px;
  }
  .tpl_site_list_2 .info_list ul li{
    width: 100%;
    max-width: 800px;
  }
  .tpl_site_list_2 #mymainback{
    margin-bottom: 80px;
  }
}
/* ケーブルテレビ特殊サブサイト 大メニューここまで*/




/* ケーブルテレビ特殊サブサイト 小メニューここから*/
.tpl_site_list1 #main_a{
  padding: 0;
}
.tpl_site_list1 #main{
  width: 100%;
}
.tpl_site_list1 #main_header{
  margin-bottom: 40px;
}
.tpl_site_list1 #main_header h1{
  background: #DCEDF5;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
}
.tpl_site_list1 .info_list.info_list_date ul li{
  width: 72%;
  margin: 0 auto 15px;
}
.tpl_site_list_1 .info_list ul li a{
  display: block;
  background: none !important;
}
@media screen and (max-width: 1080px) {
  .tpl_site_list1 #mymainback{
    margin-bottom: 80px;
  }
  .tpl_site_list1 .info_list.info_list_date ul li{
    width: 100%;
    margin: 0 auto 15px;
  } 
}
/* ケーブルテレビ特殊サブサイト 小メニューここまで*/


/* ケーブルテレビ特殊サブサイト 詳細ページここから*/
.tpl_site_detail #main_a{
  padding: 0;
}
.tpl_site_detail #main{
  width: 100%;
}
.tpl_site_detail #main_header{
  margin-bottom: 40px;
}
.tpl_site_detail #main_header h1{
  background: #DCEDF5;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
}
.tpl_site_detail #main_body h2{
  background: #fff;
  border-bottom: 1px solid #333;
  position: relative;
}
.tpl_site_detail #main_body h2::before{
  content: "";
  position: absolute;
  width: 10px;
  height: 100%;
  background: #00A0E9;
  left: 0;
  bottom: 0;
}
.tpl_site_detail #main_body h3{
  background: #fff;
  position: relative;
}
.tpl_site_detail #main_body h3::before{
  content: "";
  position: absolute;
  width: 5px;
  height: 100%;
  background: #00A0E9;
  left: 0;
  bottom: 0;
}
.tpl_site_detail #main_body h4{
  background: #DCEDF5;
}
.tpl_site_detail #main_body h5{
  background: #DCEDF5;
}
.tpl_site_detail #main_body h6{
  background: #fff;
}
.tpl_site_detail #main_body th{
  background: #DCEDF5;
}
.tpl_site_detail #section_footer{
  background: #DCEDF5;
}
div[class*="detail_"] pre {
    white-space: pre-wrap;
    word-break: break-word;
    font-family: monospace, sans-serif;
}
@media screen and (max-width: 1080px) {
  .tpl_site_detail #main_body img{
    width: 100%;
  }
}
.tpl_site_detail #hyouka_area_box{
  max-width: 523px;
  margin: 40px auto; 
  background: #fff;
  border: 1px solid #000;
  border-radius: 20px;
  text-align: center;
}
.pdf_download, .wmplayer_download{
  margin-bottom: 40px;
}
#hyouka_area_box h2, #main_body #hyouka_area_box h2{
  border-bottom: 1px solid #676767;
  padding-bottom: 12px;
  margin-bottom: 20px;
}
#hyouka_area_box .hyouka_box_detail{
  border-bottom: none;
}
#hyouka_area_box .hyouka_box_detail fieldset{
  display: flex;
  justify-content: space-around;
  gap: 24px;
}
@media screen and (max-width: 1080px) {
  #hyouka_area_box .hyouka_box_detail fieldset{
    gap: 0;
  }  
}
#hyouka_area_box .hyouka_box_detail fieldset span{
  margin-right: 0;
}
#hyouka_area_box .hyouka_box_detail fieldset span:first-of-type{
  min-width: none;
}
#hyouka_area_submit input{
  background: #E6E6E6;
  max-width: 160px;
  padding: 6px 0;
  border-radius: 40px;
  margin: 0 auto;
}
.recommend-area{
  display: flex;
  gap: 34px;
  justify-content: center;
  align-items: flex-start;
}
@media screen and (max-width: 1080px) {
  .recommend-area{
    flex-direction: column;
  }  
}
#recommend_tag, #ai_recommend_tag{
  width: 100%;
}
#sidebar_recommend, #sidebar_ai_recommend{
  background: #fff;
}
#recommend_title, #ai_recommend_title{
  background: #DCEDF5;
  border-radius: 20px 20px 0 0;
}
#recommend_title h2{
  background: url(/img/site/catv/icon_recommend.png) no-repeat left center transparent;
}
#ai_recommend_title h2{
  background: url(/img/site/catv/icon_ai_recommend.png) no-repeat left center transparent;
}
#sidebar_recommend ul li, #sidebar_ai_recommend ul li{
  padding: 0 24px 0 36px;
  margin: 14px 0;  
  position: relative;
}
#sidebar_recommend ul li::before, #sidebar_ai_recommend ul li::before{
  content: "";
  position: absolute;
  left: 11px;
  top: 11px;
  border-radius: 100%;
  width: 11px;
  height: 11px;
  background: #DCEDF5;
}
.toc_wrapper{
  display: none !important;
}
/* ケーブルテレビ特殊サブサイト 詳細ページここまで*/