@charset "utf-8";

/* ------------------------------
   全体
------------------------------ */
.slick_slider {
  opacity: 0;
  transition: opacity .3s linear;
}
.slick_slider.slick-initialized {
  opacity: 1;
}
.mod_section+.mod_section {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .mod_section+.mod_section {
    margin-top: 60px;
  }
}

/* ------------------------------
   災害
------------------------------ */
/* 避難情報 */
#disaster_banner .inner {
  max-width: 990px;
  margin: 0 auto;
}

/* ------------------------------
   動画用　※使われていないなら削除予定(コメ日：20191017)
------------------------------ */
.video-wrapper {
  max-width: 100%;
  width: 640px;
  margin: 0;
  padding: 0;
  position: relative;
  overflow: hidden;
}
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
video {
  max-width: 100%;
  height: auto;
}
.video-container iframe, .video-container object, .video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/* ------------------------------
   メインスライド
------------------------------ */
#main_slide {
  position: relative;
  counter-reset: ranking-mark topranking-access;
  background: #3d424d;
  overflow: hidden;
}
#main_slide .slick-prev,
#main_slide .slick-next {
  top: 45%;
}
#main_slide .slick_slider {
  margin-bottom: 0;
}
#main_slide .slick-track {
  display: flex;
}
#main_slide .slick-dots {
  display: none !important;
}
#main_slide .move li {
  position: relative;
}
#main_slide .move li a {
  display: block;
}
#main_slide .trim {
  width: 100%;
  height: 100%;
  position: relative;
}
#main_slide .trim::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
#main_slide .trim .trim_img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
#main_slide .trim img {
  width: 100%;
  height: auto;
  line-height: 0;
  position: absolute;
  top: 0;
}
#main_slide .news-cover {
  background-image: linear-gradient(bottom, rgba(0, 0, 0, 0.7) 80%, rgba(0, 0, 0, 0) 99%);
  background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.7) 80%, rgba(0, 0, 0, 0) 99%);
  background-image: -ms-linear-gradient(bottom, rgba(0, 0, 0, 0.7) 80%, rgba(0, 0, 0, 0) 99%);
  padding: 10px 0 4px 0;
  box-sizing: border-box;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.main_slide_title {
  padding: 0 6px;
  color: #fff;
  font-weight: normal;
}
.main_slide_sub {
  padding: 0 6px;
  color: #fff;
  font-size: 1.2rem;
}
#main_slide .news-cover .social-ranking {
  position: relative;
  margin: 2px 6px 0 0;
  display: inline-block;
  background-color: #000;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 1.2rem;
}
#main_slide .news-cover .social-ranking:before {
  content: "※";
  font-size: .9rem;
}
#main_slide .slick-slide:not(.slick-cloned) .news-cover .social-ranking:after {
  content: counter(ranking-mark, decimal);
  counter-increment: ranking-mark;
  margin-left: 2px;
}
#main_slide .news-cover .access-ranking {
  margin: 2px 6px 0 0;
  display: inline-block;
  background-color: #000;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 1.2rem;
}
#main_slide .slick-slide:not(.slick-cloned) .news-cover .access-ranking:after {
  content: counter(topranking-access, decimal);
  counter-increment: topranking-access;
  margin-left: 2px;
}
#social_detail {
  margin-top: 3px;
  margin-left: 3px;
  font-size: 1.2rem;
  color: #FFF;
}
@media screen and (min-width: 768px) {
  #main_slide .news-cover .social-ranking {
    margin-bottom: 2px;
  }
  #main_slide .news-cover .access-ranking {
    display: block;
  }
  #social_detail {
    padding: 3px 0;
  }
}
@media screen and (min-width: 960px) {
  #main_slide .main_slide_inner {
    padding-top: 30px;
    padding-bottom: 5px;
  }
  #main_slide .slick-prev,
  #main_slide .slick-next {
    top: 50%;
  }
  .main_slide_title {
    font-size: 2.2rem;
  }
  #main_slide .news-cover .access-ranking {
    display: inline-block;
  }
  #social_detail {
    padding: 0;
  }
}


/* ----------------------------------------------------
   リアルタイムNEWS
---------------------------------------------------- */
/* LIVEストリーミング */
#realtime {
  border-top: 2px solid #ce4949;
  border-bottom: 2px solid #ce4949;
}
.realtime_inner {
  background: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  border-left: 2px solid #ce4949;
  border-right: 2px solid #ce4949;
}
@media screen and (min-width: 960px) {
  #realtime {
    background: #ce4949;
  }
  .realtime_inner {
    max-width: 990px;
    margin: 0 auto;
  }
}
#tvnews+#realtime {
  border-top: 0;
}

/* TV放送配信中 */
#tvnews {
  border-top: 2px solid #ce4949;
  border-bottom: 2px solid #ce4949;
}
.tvnews_inner {
  background: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  border-left: 2px solid #ce4949;
  border-right: 2px solid #ce4949;
}
@media screen and (min-width: 960px) {
  #tvnews {
    background: #ce4949;
  }
  .tvnews_inner {
    max-width: 990px;
    margin: 0 auto;
  }
}

/* 共通 */
.mod_news_item {
  width: 100%;
}
.mod_news_item .is-default {
  display: table;
  width: 100%;
  padding: 5px;
}
.mod_news_icon {
  display: table-cell;
  width: 100px;
  vertical-align: middle;
  background-color: #ce4949;
  text-align: center;
  padding: 6px 0;
  letter-spacing: .12em;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
}
.mod_news_txt {
  display: table-cell;
  vertical-align: middle;
  padding-left: 10px;
  color: #ce4949;
  font-size: 1.6rem;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .mod_news_item:only-child {
    width: 100%;
  }
  .mod_news_item {
    width: calc(50% - 1%);
  }
  .mod_news_icon {
    width: 120px;
  }
}


/* ------------------------------
   以降、コンテンツ
------------------------------ */
#contents {
  position: relative;
  height: auto;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  #contents {
    background: #f7f7f7;
  }
}


/* ------------------------------
   バナー一覧
------------------------------ */
.bannerArea-bottom {
  background: #fff;
  margin: 30px auto;
}
.bannerArea-bottom_wrap {
  display: flex;
  flex-wrap: wrap;
}
.bannerArea-bottom_item {
  /*width: 100%;*/
	/*edit0907*/
	width:94%;
	margin: 0 auto;
	/*edit0907_end*/
}
.bannerArea-bottom_item+.bannerArea-bottom_item {
  border-top: 1px solid #f0f0f0;
}
.bannerArea-bottom_item a {
  display: flex;
  align-items: center;
}
.bannerArea-bottom_img {
  width: 30%;
  text-align: center;
}
.bannerArea-bottom_txt {
  width: 70%;
  padding-left: 10px;
  padding-right: 10px;
  vertical-align: middle;
  font-size: 1.4rem;
}
@media screen and (min-width: 768px) {
  .bannerArea-bottom_item {
    width: 33%;
	margin:0;/*edit0907*/
  }
  .bannerArea-bottom_item+.bannerArea-bottom_item {
    border-top: 0;
  }
  .bannerArea-bottom_item:nth-child(n+4) {
    margin-top: 10px;
  }
  .bannerArea-bottom_item a {
    align-items: baseline;
  }
}
@media screen and (min-width: 960px) {
  .bannerArea-bottom {
    max-width: 1600px;
    margin: 30px auto 0;
  }
  .bannerArea-bottom_item {
    width: 25%;
  }
  .bannerArea-bottom_item:nth-child(n+4) {
    margin-top: 0;
  }
  .bannerArea-bottom_item:nth-child(n+5) {
    margin-top: 10px;
  }
  .bannerArea-bottom_item a {
    align-items: center;
  }
  .bannerArea-bottom_item a:hover p {
    color: #005baa;
  }
}


/* ------------------------------
   ページ上部のコンテンツ
------------------------------ */
.headContents {
  padding: 0 15px 15px;
}
@media screen and (min-width: 768px) {
  .headContents {
    padding: 40px 15px 0;
  }
}
@media screen and (min-width: 960px) {
  .headContents {
    max-width: 1000px;
    margin: 0 auto;
    padding: 35px 0 30px;
  }
}

@media screen and (min-width: 768px) {
  .coronavirus_banner img {
    width: 100%;
  }
	.osakatk_banner img {
		width: 100%;
	}
}
.osakatk_banner {
	margin-bottom: 25px;
}

/*202012追加*/
.bnr_nesshisen {

    background: #f19600;
    border-radius: 6px;
    padding: 15px;
    margin-top: 15px;
}
.bnr_nesshisen a {
	display: block;
}
.bnr_nesshisen_txt {
    margin-top: 10px;
    font-size: 2rem;
    font-weight: bold;
}
.bnr_nesshisen_txt .ctn {
	color: #CC0000;
}
@media screen and (min-width: 768px) {
    .bnr_nesshisen {
        display:-webkit-box;
        display:-ms-flexbox;
        display:inline-block;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-top: 60px;
		clear: both;
		width: 100%;
		margin:30px auto 0;
    }
    .bnr_nesshisen .bnr-wrapper {
        width: 45%;
        margin-right: 15px;
		float: left;
    }
    .bnr_nesshisen .embed-container {
        position: relative;
        padding-bottom: 56.25%;
        height: 0;
        overflow: hidden;
        margin: 0;
    }
    .bnr_nesshisen_txt {
        margin-top: 0;
        font-size: 2.2rem;
        line-height: 1.75;
		float: left;
    }
}


 
/* 202002xx 追加 */
.closed {
  background: #fff;
  border: 2px solid #d00;
  padding: 10px;
  margin-top: 10px;
  font-weight: bold;
}
.closed_ttl {
  color:#d00;
  font-size: 1.8rem;
}
.closed_txt {
  margin-top: 3px;
  color:#d00;
}
@media screen and (min-width: 960px) {
  .closed {
    margin-top: 20px;
    text-align: center;
  }
  .closed_ttl {
    font-size: 2rem;
  }
  .closed_txt {
    font-size: 1.8rem;
  }
}

/* 20200220 追加 */
.osakaInfo {
  background: #fff;
  border: 2px solid #d00;
  margin-top: 10px;
  text-align: center;
  font-weight: bold;
}
.osakaInfo a {
  display: block;
  padding: 5px 0;
  text-decoration: underline;
  color: #d00;
}
@media screen and (min-width: 960px) {
  .osakaInfo {
    margin-top: 20px;
    font-size: 2.4rem;
  }
}

/* 20200602 追加 */
.importantNews {
  background: #fff;
  border: 2px solid #d00;
  margin-top: 15px;
  padding: 10px;
}
.importantNews_ttl {
  color: #d00;
  font-weight: bold;
  margin-bottom: 5px;
}
.importantNews_item {
  display: flex;
  align-items: baseline;
}
.importantNews_item::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin-right: 4px;
  border-style: solid;
  border-width: 6px 0 6px 8px;
  border-color: transparent transparent transparent #d00;
  transition: all 0.5s ease-in 0s;
}
.importantNews_item+.importantNews_item {
  margin-top: 10px;
}
.importantNews_item a {
  text-decoration: underline;
}
@media screen and (min-width: 960px) {
  .importantNews {
    margin-top: 30px;
    padding: 15px;
  }
  .importantNews_ttl {
      font-size: 2.4rem;
      margin-bottom: 10px;
  }
  .importantNews_item {
      font-size: 2rem;
  }
}


/* 20200520 追加 */
.nessisenInfo {
  background: #fff;
  border: 2px solid #d00;
  margin-top: 10px;
  text-align: center;
  font-weight: bold;
}
.nessisenInfo a {
  display: block;
  padding: 5px 0;
  text-decoration: underline;
  color: #d00;
}
@media screen and (min-width: 960px) {
  .nessisenInfo {
    width: 480px;
    margin-top: 20px;
    font-size: 2.4rem;
  }
}

.bannerArea-top_item {
  margin-top: 5px;
}
@media screen and (min-width: 768px) {
  .bannerArea-top_item {
    margin-top: 0;
    width: calc(50% - 15px);
    text-align: center;
  }
}
@media screen and (min-width: 960px) {
  .bannerArea-top_item {
    width: calc(30% - 15px);
  }
  .bannerArea-top_item+.bannerArea-top_item {
    margin-left: 15px;
  }
}

/* ロードレース */
.roadrace_banner {
  margin-top: 15px;
}
@media screen and (min-width: 768px) {
  .roadrace_banner img {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .roadrace_banner {
    margin: 30px auto 0;
    width: 70%;
  }
}


/* あなたの天気 */
.weather_banner {
  margin-top: 15px;
}
@media screen and (min-width: 768px) {
  .weather_banner img {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .weather_banner {
    margin: 30px auto 0;
    width: 50%;
  }
}

/* 2020甲子園 */
@media screen and (min-width: 768px) {
  .koshienBnr {
    display: flex;
  }
  .koshienBnr .weather_banner {
    margin: 30px auto 0;
    width: calc(50% - 20px);
  }
}

/* ------------------------------
   コンテンツ部分
------------------------------ */
/*タイトル*/
.ttl-osaka {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 5px;
  padding-top: 15px;
  padding-bottom: 15px;
  position: relative;
  text-align: center;
}
.ttl-osaka::before {
  content: '';
  position: absolute;
  bottom: 6px;
  left: 0;
  right: 0;
  width: 20%;
  height: 1px;
  margin: 0 auto;
  text-align: center;
  background-position: center;
  transition-duration: .2s;
  transition-timing-function: ease-out;
  background-image: -webkit-linear-gradient(left, transparent, #005baa 25%, #005baa 75%, transparent);
  background-image: linear-gradient(to right, transparent, #005baa 25%, #005baa 75%, transparent);
}
.ttl-osaka a {
  display: block;
}
@media screen and (min-width: 768px) {
  .ttl-osaka {
    font-size: 2.2rem;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media screen and (min-width: 960px) {
  #contents {
    padding-bottom: 80px;
  }
}


/* ------------------------------
   snsシェアボタン
------------------------------ */
.sns {
  padding-top: 5px;
  text-align: right;
}
.sns .nhk-snsbtn {
  margin-bottom: 5px;
}
.nhksns-guide {
  margin: 0 12px 0 0!important;
  font-size: 1.2rem;
}
@media screen and (min-width: 768px) {
  .sns {
    position: absolute;
    right: 0;
  }
}
@media screen and (min-width: 960px) {
  .nhksns-guide {
    font-size: 1.4rem;
  }
  .sns .nhksns li img {
    width: 32px;
  }
}


/* ------------------------------
   NEWS WEB
------------------------------ */

#news_web {
  background-color: #fff;
}
#news_web .inner {
  padding-bottom: 10px;
}
#mod-news-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
}
#mod-news-list .menu_item {
  width: 25%;
  background-color: #F4F4F4;
  margin-bottom: 1px;
}
#mod-news-list .menu_item.active {
  background-color: #005baa;
  color: #fff;
}
#mod-news-list .menu_item .ttl-news {
  margin: 5px 0;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
}
#mod-news-contents .content {
  display: none;
}
#mod-news-contents .content.active {
  display: block;
}
#mod-news-contents .content .item {
  margin: 15px 10px;
}
#mod-news-contents .content .item+.item {
  border-top: 1px dotted #eaeaea;
  padding-top: 15px;
}
#mod-news-contents .content .item a {
  display: block;
  overflow: hidden;
}
#mod-news-contents .content .item img {
  display: block;
  float: left;
  width: 22%;
  margin-right: 5px;
}
#mod-news-contents .content .item .info {
  overflow: hidden;
}
#mod-news-contents .content .item p {
  display: block;
  margin-bottom: 5px;
  font-size: 1.6rem;
  line-height: 1.4;
}
#mod-news-contents .content .item .m_d_h_mn {
  display: inline-block;
  vertical-align: middle;
  font-size: 1.2rem;
  color: #6e6e6f;
}
#mod-news-contents .content .item .new {
  display: inline-block;
  margin-left: 5px;
  background: #ce4949;
  text-align: center;
  vertical-align: middle;
  font-size: 11px;
  padding: 1px 3px;
  color: #fff;
}
#mod-news-contents .content .item .video {
  display: inline-block;
  margin-left: 5px;
  background: #6e6e6f;
  text-align: center;
  vertical-align: middle;
  font-size: 11px;
  padding: 1px 3px;
  color: #fff;
}
#mod-news-contents .content .item span.new+span.video {
  margin-left: 4px;
}
#mod-news-contents .content .list_more {
  background: #005baa;
  padding: 10px;
  margin: 20px 10px 0;
  text-align: center;
}
#mod-news-contents .content .list_more a {
  color: #fff;
  font-size: 1.4rem;
}
@media screen and (min-width: 640px) {
  #news_web .inner {
    max-width: 1620px;
    margin: 0 auto;
  }
  #mod-news-list {
    flex-wrap: nowrap;
    border-bottom: 3px solid #005BAA;
  }
  #mod-news-list .menu_item {
    width: 100%;
    background-color: #F4F4F4;
    cursor: pointer;
    margin-bottom: 0;
  }
  #mod-news-list .menu_item+.menu_item {
    border-left: 1px solid #fff;
  }
  #mod-news-list .menu_item.active {
    cursor: inherit;
  }
  #mod-news-list .menu_item .ttl-news {
    margin: 10px 0;
  }
  #mod-news-contents {
    padding-top: 10px;
  }
  #mod-news-contents .content .item {
    width: 14.28%;
    padding: 0 5px;
    margin: 0;
    box-sizing: border-box;
    float: left;
    transition: box-shadow .15s cubic-bezier(.4, 0, .2, 1);
  }
  #mod-news-contents .content .item a:hover .info {
    color: #005baa;
  }
  #mod-news-contents .content .item+.item {
    padding-top: 0;
    border-top: 0;
  }
  #mod-news-contents .content .item img {
    float: none;
    width: 100%;
    margin-right: 0;
  }
  #mod-news-contents .content .item p {
    margin-top: 8px;
  }
  #mod-news-contents .content span.new+span.video {
    margin-left: 4px;
  }
  #mod-news-contents .content .list_more {
    text-align: center;
    background: #fff;
    clear: both;
    margin: 0;
    padding: 20px 0 0;
  }
  #mod-news-contents .content .list_more a {
    font-size: 1.6rem;
    color: #232324;
  }
  #mod-news-contents .content .list_more a:before {
    content: "";
    display: inline-block;
    border-style: solid;
    margin-right: 5px;
    border-width: 6px 0 6px 10px;
    border-color: transparent transparent transparent #666;
  }
}


/* ----------------------------------
   関西 NEWS WEB アクセスランキング
---------------------------------- */
#kansainews_access {
  margin-top: 30px;
}
#kansainews_ranking .mod_kansainews_rank {
  display: inline-block;
  border: 1px solid #6e6e6f;
  padding: 2px 6px;
  margin-top: 5px;
  color: #6e6e6f;
  font-size: 1.2rem;
/*edit0907*/
  width: 100%;
  text-align: center;
/*edit0907end*/
}
#kansainews_ranking .mod_kansainews_rank span {
  display: none;
}
#kansainews_ranking .slick-track {
  counter-reset: ranking-access;
}
#kansainews_ranking .slick-slide:not(.slick-cloned) .mod_kansainews_rank:after {
  content: counter(ranking-access, decimal);
  counter-increment: ranking-access;
  display: inline-block;
  margin-left: 2px;
}
#kansainews_ranking .post .name {
  min-height: auto;
}
#mod_kansainews_read {
  padding: 10px;
  font-size: 1.2rem;
}
@media screen and (min-width: 960px) {
  #mod_kansainews_read {
/*	position: absolute;
    left: 80px;
    top: 60px;*/
    padding: 0 5px 5px;
  }
  #kansainews_ranking .mod_kansainews_rank span {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    margin-right: 2px;
    width: auto;
  }
}


/* ----------------------------------
   2020.03.04 追加
---------------------------------- */
.topicWord {
  background: #fff;
  border-top: 3px solid #dadedf;
  border-bottom: 3px solid #dadedf;
  margin: 30px 15px;
  padding: 15px;
}
.topicWord_item {
  display: inline;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.75;
}
.topicWord_item+.topicWord_item {
  border-left: 1px solid #dadedf;
  margin-left: 5px;
  padding-left: 5px;
}
.topicWord_item a {
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .topicWord_item+.topicWord_item {
    margin-left: 10px;
    padding-left: 10px;
  }
}
@media screen and (min-width: 960px) {
  .topicWord {
    max-width: 1000px;
    margin: 60px auto 30px;
    padding: 30px;
  }
  .topicWord_item {
    font-size: 2.4rem;
  }
  .topicWord_item a:hover {
    color: #005baa;
    text-decoration: none;
  }
}


/* ----------------------------------
   2020.04.01 追加
---------------------------------- */
.nhkplus {
  background: #fff;
  margin-bottom: 30px;
  padding: 15px;
}
.nhkplus a {
  display: block;
  text-align: center;
}
.nhkplus a img {
  margin: auto;
}
@media screen and (min-width: 768px) {
  .nhkplus {
    padding: 0 15px;
  }
}
@media screen and (min-width: 960px) {
  .nhkplus {
    padding: 0;
    width: 750px;
    /*margin: 0 auto 60px; 朝ドラバナー外したらこっち*/
    margin: 0 auto 30px;
  }
}

/* ----------------------------------
   2020.11.19 おちょやん用
---------------------------------- */
#drama_ochoyan {
  background: #fff;
  margin-bottom: 30px;
  padding: 15px 10px;
}

/*スマホ*/
@media screen and (max-width: 768px) { 
  #drama_ochoyan {
    margin-bottom: 20px;
  }
  #drama_ochoyan .inner {
    padding: 0;
  }
	#drama_ochoyan .inner .logo {
		width:48%;
		float: left;
	}
	#drama_ochoyan .inner .logo img {
		width:100%;
	}
	#drama_ochoyan .inner .target {
		width: 48%;
		float: right;
	}
	#drama_ochoyan .inner .mod-blog-btn {
    margin-left: 0;
}
}

/*PC*/
@media screen and (min-width: 960px) {  
  #drama_ochoyan .inner {
    padding: 0;
    width: 815px;
    margin: 0 auto 30px;
  }
	#drama_ochoyan .inner .logo {
		width:400px;
		float: left;
	}
	#drama_ochoyan .inner .logo img {
		width:400px;
	}
	#drama_ochoyan .inner .target {
		width: 400px;
		float: right;
	}
	#drama_ochoyan .inner .target a {
		display: block;
	}
}


/* -------------------------------------------
   鉄道運行情報(近畿 在来線・私鉄・地下鉄)
------------------------------------------- */
#train_info-wrap .mod-blog-crsl-wrap-inner {
  padding: 0 10px 10px;
}
#train_info .ttl-osaka span {
  font-size: 1.4rem;
  font-weight: normal;
}
#mod_train_info_build {
  margin-bottom: 10px;
  padding-left: 5px;
  font-size: 1.2rem;
}
#train_info .mod_train_trainLine {
  text-align: center;
  font-size: 1.6rem;
  font-weight: 600;
}
#train_info .mod_train_status {
  margin: 8px 0 6px 0;
  padding: 3px;
  border-radius: 3px;
  text-align: center;
  font-size: 1.4rem;
}
#train_info .mod_train_normal {
  color: #27ae60;
  border: 1px solid #27ae60;
}
#train_info .mod_train_error {
  color: #FFF;
  background-color: #ce4949;
}
#train_info .mod_train_textShort {
  font-size: 1.4rem;
  margin-bottom: 5px;
}
#train_info .mod_train_time {
  font-size: 1.2rem;
  color: #6e6e6f;
}
#train_info .mod_train_time span {
  margin-left: 5px;
  padding: 0px 3px;
  background: #ce4949;
  border-radius: 3px;
  color: #FFF;
  font-size: 10px;
}
#train_info .slick-prev,
#train_info .slick-next {
  top: 52px;
}
.train_info .mod_btn {
  margin-top: 10px;
}
.mod_btn {
  margin-top: 12px;
  text-align: center;
}
.mod_btn a {
  display: block;
  padding: 10px;
  background: #005baa;
  font-size: 1.4rem;
  color: #fff;
}
.mod_btn a:before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin-right: 4px;
  border-style: solid;
  border-width: 6px 0 6px 8px;
  border-color: transparent transparent transparent #fff;
  transition: all 0.5s ease-in 0s;
}
@media screen and (min-width: 640px) {
  #train_info-wrap .mod-blog-crsl-wrap-inner {
    padding: 0;
  }
  #train_info .ttl-osaka span {
    font-size: 1.6rem;
    font-weight: 500;
  }
  #mod_train_info_build {
    margin-bottom: 20px;
    font-size: 1.4rem;
  }
  #train_info .mod_train_info {
    margin: 0;
  }
  #train_info .mod_train_trainLine {
    font-size: 18px;
  }
  #train_info .mod_train_status {
    margin: 10px 0;
    padding: 6px;
    border-radius: 6px;
    font-size: 1.6rem;
  }
  #train_info .mod_train_textShort {
    margin-bottom: 10px;
    font-size: 1.6rem;
  }
  #train_info .post a:hover .mod_train_textShort {
    color: #005baa;
  }
  #train_info .mod_train_time span {
    display: inline-block;
    vertical-align: bottom;
    padding: 2px 6px;
  }
  .mod_btn {
    margin-top: 15px;
  }
  .mod_btn a {
    display: inline;
    background: none;
    font-size: 1.6rem;
    color: #232324;
  }
  .mod_btn a:before {
    border-color: transparent transparent transparent #333;
  }
}
@media screen and (min-width: 960px) {
  #train_info .slick-prev,
  #train_info .slick-next {
    top: 50%;
  }
}


/* -------------------------------------------
   ツイッター
------------------------------------------- */
#twitter {
  margin: 20px auto;
  background: #fff;
}
.twitter_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0 15px 15px;
}
.twitter_item {
  width: calc(33% - 15px);
  text-align: center;
}
.twitter_item+.twitter_item {
  margin-left: 15px;
}
.twitter_item:nth-child(3n+1) {
  margin-left: 0;
}
.twitter_item:nth-child(n+4) {
  margin-top: 10px;
}
.twitter_name {
  font-size: 1.4rem;
  margin-top: 5px;
}
@media screen and (min-width: 768px) {
  #twitter {
    margin: 20px auto 40px;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
  }
  .twitter_wrap {
    flex-wrap: inherit;
    padding: 0;
  }
  .twitter_wrap::after {
    display: none;
  }
  .twitter_item+.twitter_item {
    margin-left: 20px;
  }
  .twitter_item:nth-child(n+4) {
    margin-top: 0;
  }
}
@media screen and (min-width: 960px) {
  .twitter_wrap {
    max-width: 1000px;
    margin: 0 auto;
    justify-content: space-between;
  }
  .twitter_item {
    width: 120px;
  }
  .twitter_name {
    font-size: 1.6rem;
  }
}


/* -------------------------------------------
   イベント・公開番組情報
------------------------------------------- */
.event_inner {
  padding: 0 10px 15px;
  overflow: hidden;
}
#event_item_wrap {
  margin-top: 15px;
}
#event_item_wrap .slick-list {
  overflow: hidden;
}
.event_item {
  padding: 0 5px;
}
.event_item_img {
  height: 50px;
  text-align: center;
}
.event_item_img img {
  height: 100%;
  width: auto!important;
}
.event_item_icon {
  margin-top: 10px;
}
.event_item_ttl {
  margin-top: 10px;
  font-size: 1.4rem;
}
.event_item_icon span {
  display: inline-block;
  box-sizing: border-box;
  font-size: 1.2rem;
  color: #fff;
}
.event_item_icon .o_bosyu {
  display:none;
  border: 1px solid #e65280;
  background-color: #e65280;
  padding: 3px 6px;
}
.event_item_icon .o_bosyu_end {
  display:none;
  background: #999;
  border: 1px solid #999;
  padding: 3px 6px;
}
.event_item_icon .o_kaisai {
  display:none;
  border: 1px solid #11b27e;
  background-color: #11b27e;
  padding: 3px 6px;
}
.event_item_icon .o_kaisai_end {
  display:none;
  background: #999;
  border: 1px solid #999;
  padding: 3px 6px;
}
.event_item_icon .o_cat {
  padding: 3px 6px;
  margin-right: 3px;
  border: 1px solid #6e6e6f;
  color: #6e6e6f;
  width: 100%;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .event_inner {
    padding: 0;
  }
  #event_item_wrap {
    margin-top: 0;
  }
  .event_item_ttl {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 960px) {
  .event_inner {
    padding: 30px 0;
  }
  .event_item {
    padding: 0 10px;
  }
  .event_item_img {
    height: 90px;
  }
  .event_item:hover .event_item_ttl {
    color: #005baa;
  }
}


/* -------------------------------------------
   大阪局制作番組一覧
------------------------------------------- */
#program {
  background: #fff;
  margin: 15px 0;
}
#program .slick_slider {
  position: relative;
}
#program .slick-list {
  overflow: hidden;
}
#program .slick-track {
  display: flex;
}
#program .slick-slide {
  padding: 0 10px;
}
#program .slick-prev,
#program .slick-next {
  top: -30px;
}
#program .info {
  margin-top: 10px;
}
#program .media {
  margin-right: 6px;
}
#program .time {
  font-size: 1.2rem;
}
#program .time+.time {
  margin-top: 5px;
}
#program .time_add {
  font-size: 1.2rem;
  display: inline-block;
  margin: 0 0 0 6px;
}
#program .slick-slide a {
  display: block;
}
#program h3 {
  margin-top: 5px;
  font-weight: normal;
}
#program .mod_bangumi_att {
  padding: 0 10px 10px;
  font-size: 1.2rem;
}
#program .mod_btn {
  margin: 10px;
}
@media screen and (min-width: 768px) {
  #program .time {
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 960px) {
  #program .slick_slider {
    max-width: 1760px;
    margin: 0 auto;
  }
  #program .slick-list {
    max-width: 1600px;
    margin: 0 auto;
    overflow: hidden;
  }
  #program .slick-prev,
  #program .slick-next {
    top: 90px;
  }
  #program .time_add {
    display: block;
    margin: 2px 0;
  }
  #program h3 {
    font-size: 1.6rem;
  }
  #program a:hover .info h3 {
    color: #005baa;
  }
  #program .mod_btn {
    max-width: 1600px;
    margin: 10px auto 0;
  }
  #program .mod_bangumi_att {
    max-width: 1600px;
    margin: 15px auto 0;
  }
}

/* -------------------------------------------
  NOW ON AIR
------------------------------------------- */
.onair_inner {
  padding-bottom: 15px;
}
#onair_item_wrap {
  padding-top: 10px;
}
.onair_item {
  display: flex;
  flex-direction: column;
  margin: 0 10px;
}
.onair_item_link {
  display: block;
}
.onair_item_img {
  width: 100%;
  background-size: cover;
  background-position: center center;
  padding-top: 56.25%;
  border: 1px solid #ccc;
  box-sizing: border-box;
}
.onair_item_info {
  margin-top: 5px;
}
.onair_item_time {
  display: inline-block;
  vertical-align: middle;
  font-size: 1.4rem;
}
.onair_item_ttl {
  margin-top: 5px;
}
#onair .mod_btn {
  margin: 15px 10px 0;
}
@media screen and (min-width: 768px) {
  .onair_inner {
    border-top: 1px solid rgba(0, 0, 0, 0.06);
  }
  .onair_item {
    margin: 0 5px;
  }
}
@media screen and (min-width: 960px) {
  #onair {
    margin-bottom: 30px;
  }
  .onair_inner {
    margin-bottom: 30px;
  }
  #onair_item_wrap {
    margin: 20px auto 30px;
  }
  .onair_item {
    margin: 0 10px;
  }
  .onair_item_ttl {
    margin-top: 5px;
  }
  .onair_item_link:hover .onair_item_ttl {
    color: #005baa;
  }
}


/* -------------------------------------------
   ブログ・ニュース
------------------------------------------- */
.mod-blog {
  position: relative;
  background: #fff;
  margin-bottom: 30px;
}
.mod-blog:nth-of-type(5n) {
  margin-right: 0;
}
.mod-blog .post {
  margin: 0 15px;
}
.mod-blog .post a {
  display: block;
}
.mod-blog .post a:hover .name {
  color: #005baa;
}
.mod-blog .post .trim {
  position: relative;
  overflow: hidden;
  padding-top: 56.25%;
  margin-bottom: 5px;
}
.mod-blog .post .trim img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  /* width: 100%; */
}
.mod-blog .post .name {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin-top: 5px;
}
.mod-blog .post .date {
  margin-top: 5px;
  color: #6e6e6f;
  font-size: 1.2rem;
}
.mod-blog .post .new {
  display: none;
}
.mod-blog .post .content {
  display: none;
}
.mod-blog .post .new {
  display: inline-block;
  width: 36px;
  background: #ce4949;
  text-align: center;
  vertical-align: baseline;
  margin: 4px 0 0 0 !important;
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
}
.mod-blog-btn {
  display: flex;
  margin: 10px 15px 0;
  padding-bottom: 10px;
}
.mod-blog-btn_hp {
  margin-right: 10px;
}
.mod-blog-btn_hp a {
  background: #005baa;
  color: #fff;
  display: block;
  font-size: 1.2rem;
  padding: 5px 15px;
}
.mod-blog-btn_more a {
  background: #ccc;
  display: block;
  font-size: 1.2rem;
  padding: 5px 15px;
}
/*edit0907*/
#kansainews_access .mod-blog-crsl .target {
	padding:0 5px;
}
@media screen and (min-width: 768px) {
  #kansainews_access .mod-blog-crsl .target {
    padding: 0;
  }
}
/*edit0907_end*/

@media screen and (min-width: 768px) {
  .mod-blog-btn {
    margin: 10px 0;
    padding-bottom: 0;
  }
  .mod-blog-btn_hp a {
    font-size: 1.4rem;
  }
  .mod-blog-btn_more a
  {
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 768px) {
  .mod-blog-wrap {
    display: flex;
    flex-wrap: wrap;
  }
  .mod-blog {
    display: flex;
    flex-direction: column;
    /*width: 19%;*/
    width: 18.5%;/*edit0907*/
    margin: 0 1.25% 30px 0;
    position: relative;
  }
/*edit0907*/
  .mod-blog:first-child {
		margin-left:1.25%;
  }
/*edit0907_end*/

  .mod-blog .post {
    margin: 0;
  }
}
@media screen and (min-width: 960px) {
  .mod-blog-wrap {
    max-width: 1600px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
	width: 98%;
  }
  .mod-blog .post a:hover h3 {
    color: #005baa;
  }
/*edit0907*/
  .mod-blog {
    width: 19%;
    margin: 0 1.25% 30px 0;
    position: relative;
  }
  .mod-blog:first-child {
		margin-left:0;
  }
/*edit0907_end*/
}

/* カルーセル */
.mod-blog-crsl-wrap {
  margin-bottom: 30px;
}
.mod-blog-crsl-wrap-inner {
  position: relative;
  background: #fff;
}
.mod-blog-crsl .target {
  overflow: hidden;
}
.mod-blog-crsl .slick-prev,
.mod-blog-crsl .slick-next {
  top: 40px;
}
.mod-blog-crsl .slick-track {
  display: flex;
}
.mod-blog-crsl .post {
  margin: 0 5px;
}
.mod-blog-crsl .post a {
  display: block;
}
.mod-blog-crsl .post .trim {
  position: relative;
  overflow: hidden;
  padding-top: 56.25%;
}
.mod-blog-crsl .post .trim img {
  position: absolute;
  top: 0%;
  left: 0;
  width: 100%;
}
.mod-blog-crsl .name {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin-top: 5px;
  min-height: 44px;
  overflow: hidden;
}
.mod-blog-crsl .post .date {
  margin-top: 5px;
  color: #6e6e6f;
  font-size: 1.2rem;
}
.mod-blog-crsl .post .new {
  display: inline-block;
  background: #ce4949;
  padding: 1px 5px;
  margin-top: 5px;
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
}
.mod-blog-crsl .mod_hp-crsl {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100px;
  height: 44px;
  line-height: 44px;
}
.mod-blog-crsl .mod_hp-crsl a {
  display: block;
  background-color: #005baa;
  text-align: center;
  color: #FFF;
}
@media screen and (min-width: 768px) {
  .mod-blog-crsl .mod_hp-crsl {
    top: 15px;
    right: 80px;
    left: inherit;
    width: auto;
    height: auto;
    line-height: inherit;
  }
  .mod-blog-crsl .mod_hp-crsl a {
    background: #fff;
    color: #232324;
  }
  .mod-blog-crsl .mod_hp-crsl a:before {
    display: inline-block;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 10px;
    border-color: transparent transparent transparent #000;
    margin-right: 6px;
  }
}
@media screen and (min-width: 960px) {
  .mod-blog-crsl-wrap-inner {
    max-width: 1760px;
    margin: 0 auto 20px;
  }
  .mod-blog-crsl {
    max-width: 1640px;
    margin: 0 auto;
  }
  .mod-blog-crsl .slick-prev, .mod-blog-crsl .slick-next {
    top: 50%;
  }
  .mod-blog-crsl .post a:hover h3 {
    color: #005baa;
  }
  .mod-blog-crsl .post a:hover .name {
    color: #005baa;
  }
}

/* ニュースほっと関西 */
#hotreport .post:not(:first-child){
  display: none;
}


/* -------------------------------------------
   modal contents(念のため)
------------------------------------------- */
/* modal_event */
#modal_event {
  padding: 20px 0;
  width: 424px;
  background: #6e6380;
}
#modal_event .title2 {
  width: 354px;
}
#modal_event .frame {
  margin: 0 auto;
  padding-bottom: 12px;
  width: 354px;
}
#modal_event .link_list li a {
  color: #6e6380;
}

/* modal_disaster */
#modal_disaster {
  padding: 20px 0;
  width: 424px;
  background: #71818c;
}
#modal_disaster .title2 {
  width: 354px;
}
#modal_disaster .frame {
  margin: 0 auto;
  padding-bottom: 12px;
  width: 354px;
}
#modal_disaster .link_list li a {
  color: #71818c;
}


/* -------------------------------------------
   災害（特設）情報
------------------------------------------- */
#disaster h2 {
  background: #f00;
}
#disaster .article {
  margin-bottom: 0;
}
#disaster li {
  padding-bottom: 10px;
}


/* ------------------------------------------------------------
   モーダルウィンドウ(念のため)
------------------------------------------------------------ */
@media screen and (max-width: 640px) {
  /* #mdWindow {
    margin-top: auto;
    margin-left: 0;
    top: 38%;
    left: 4%;
    width: 92%;
    height: auto;
  } */
  #mdWindow>.mdClose {
    top: -40px;
    right: 4px;
    width: 44px;
    height: 44px;
    line-height: 40px;
    font-size: 22px;
    text-align: center;
  }
  /* #themaWrap {
    margin: 0;
    padding: 0 0 0 0;
  } */
}


/* ------------------------------------------------------------
   modal contents(念のため)
------------------------------------------------------------ */
@media screen and (max-width: 640px) {
  #modal_event .title2 {
    width: 94%;
  }
  #modal_event .frame {
    width: 94%;
  }
  /* modal_disaster */
  #modal_disaster .title2 {
    width: 94%;
  }
  #modal_disaster .frame {
    width: 94%;
  }
  /* box_disaster */
  #box_disaster {
    padding: 0;
    box-sizing: border-box;
    width: 100% !important;
    height: auto;
    margin-bottom: 20px !important;
    background-color: #fff;
    border-left: 4px solid #71818c;
  }
  #box_list #box_disaster h2 a {
    background: url(../img/sp/icon/modal-list-disaster.jpg) 96% 4px no-repeat;
    background-size: 1.6rem auto;
  }
  #box_disaster .title2 {
    text-align: center;
    margin-bottom: 5px;
  }
  #box_disaster .title2 .ja:before {
    /*width: 38px; height: 35px; */
    background-image: none;
  }
}


/* --------------------------------------
　不明
-------------------------------------- */
#box_monitor {
  display: none;
}
@media screen and (max-width: 640px) {
  #box_monitor {
    display: block;
  }
}


/* --------------------------------------
	#footer
-------------------------------------- */
/*--- go_to_top ---*/
#go_to_top {
  background: url(/osaka/images/top/footer_dash.gif) repeat-x;
  text-align: right;
}
#go_to_top a {
  display: inline-block;
  width: 35%;
  margin-top: 5px;
  padding: 5px;
  background: #fff;
  text-align: center;
  font-size: 1.2rem;
}
@media screen and (min-width: 768px) {
  #go_to_top a {
    width: 15%;
  }
}
@media screen and (min-width: 960px) {
  .go_to_top_inner {
    max-width: 1600px;
    margin: 0 auto;
  }
  #go_to_top a {
    width: 150px;
  }
}

/*--- pagetop ---*/
#pagetop {
  display: none!important;
}
@media screen and (min-width: 768px) {
  #pagetop a {
    display: block;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    box-sizing: border-box;
    padding-top: 20px;
    background-color: #fff;
    box-shadow: 0 3px 0 #ccc;
    color: #6e6e6f;
    position: fixed;
    text-align: center;
    bottom: 20px;
    left: 20px;
    z-index: 11;
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 960px) {
  #pagetop {
    display: block!important;
  }
}

/*--- footer ---*/
#footer {
  padding: 10px 0 0;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1) inset;
  font-size: 1.2rem;
}
.text_bold {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  #footer {
    background: #f7f7f7;
  }
  .footer_pc {
    background: #FFF;
    padding: 8px;
    text-align: right;
    font-size: 1.1rem;
  }
}
@media screen and (min-width:768px) and (max-width:959px) {
  .footer_col_toggle {
    color: #fff;
    font-weight: bold;
    font-size: 1.4rem;
    padding: 8px;
    outline: 1px solid #1c5387;
    border: 1px solid #267bcc;
    background: #1366b3 url(/osaka/top/img/icon/btn_toggle.png) no-repeat 98% 5px;
    background: url(/osaka/top/img/icon/btn_toggle.png) no-repeat 98% 5px, -moz-linear-gradient(top, #1366b3 0%, #0d59a1 100%);
    background: url(/osaka/top/img/icon/btn_toggle.png) no-repeat 98% 5px, -webkit-gradient(linear, left top, left bottom, color-stop(0%, #1366b3), color-stop(100%, #0d59a1));
    background: url(/osaka/top/img/icon/btn_toggle.png) no-repeat 98% 5px, -webkit-linear-gradient(top, #1366b3 0%, #0d59a1 100%);
    background: url(/osaka/top/img/icon/btn_toggle.png) no-repeat 98% 5px, -o-linear-gradient(top, #1366b3 0%, #0d59a1 100%);
    background: url(/osaka/top/img/icon/btn_toggle.png) no-repeat 98% 5px, -ms-linear-gradient(top, #1366b3 0%, #0d59a1 100%);
    background: url(/osaka/top/img/icon/btn_toggle.png) no-repeat 98% 5px, linear-gradient(to bottom, #1366b3 0%, #0d59a1 100%);
  }
}
@media screen and (min-width: 960px) {
  .footer_inner {
    display: flex;
    justify-content: space-between;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 15px 15px;
    box-sizing: content-box;
  }
  .footer_pc {
    display: none;
  }
  .footer_col_ttl {
    margin-bottom: 10px;
    font-weight: bold;
  }
  .footer_col_wrap {
    margin-left: 8px;
  }
  .footer_col_item a {
    text-indent: -8px;
  }
  .footer_col_item a::before {
    display: inline-block;
    vertical-align: middle;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3px 0 3px 3px;
    border-color: transparent transparent transparent #323232;
    margin-right: 5px;
  }
}

/*--- footer_col1 ---*/
.footer_col1 {
  display: none;
}
@media screen and (min-width: 768px) {
  .footer_col1 {
    display: block;
    float: left;
    width: 50%;
  }
  #footer_effect {
    display: none;
  }
  .footer_col1_item a {
    display: block;
    padding: 8px 25px 8px 10px;
    background: #f7f4f2 url(/osaka/top/img/icon/icon_pc_link.png) no-repeat 97% center;
    border-top: 1px solid #FFF;
    border-bottom: 1px solid #dadcdd;
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 960px) {
  .footer_col1 {
    width: 25%;
    float: none;
    padding-right: 10px;
  }
  #footer_effect {
    display: block;
  }
  .footer_col1_item+.footer_col1_item {
    margin-top: 3px;
  }
  .footer_col1_item a {
    padding: 0;
    background: none;
    border: none;
    font-size: 1.2rem;
  }
}

/*--- footer_col2 ---*/
.footer_col2 {
  display: none;
}
@media screen and (min-width: 768px) {
  .footer_col2 .footer_col_wrap {
    display: none;
  }
  .footer_col2_item a {
    display: block;
    padding: 8px 25px 8px 8px;
    border-bottom: 1px solid #dadcdd;
    font-size: 1.4rem;
  }
  .footer_col2 .go_to_pc {
    display: block;
    background-color: #FFF;
    color: #6c6c6c;
    padding: 8px;
    text-align: right;
    font-size: 11px;
  }
}
@media screen and (min-width: 960px) {
  .footer_col2 {
    display: block;
    width: 38%;
    padding-left: 15px;
    margin-left: 8px;
    border-left: 1px dotted #6e6e6f;
  }
  .footer_col2 .footer_col_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .footer_col2_item {
    width: 49%;
    font-size: inherit;
  }
  .footer_col2_item:nth-child(n+4) {
    margin-top: 3px;
  }
  .footer_col2_item a {
    padding: 0;
    font-size: 1.2rem;
    border: none;
  }
  .footer_col2 .go_to_pc {
    display: none;
  }
}

/*--- footer_col3 ---*/
.footer_col3_item a {
  display: block;
  padding: 8px 25px 8px 10px;
  background: #fff url(/osaka/top/img/icon/icon_sp_link.png) no-repeat 97% center;
  border-bottom: 1px solid #dadcdd;
  font-size: 1.4rem;
}
@media screen and (min-width: 768px) {
  .footer_col3 {
    width: 48%;
    float: right;
  }
}
@media screen and (min-width: 960px) {
  .footer_col3 {
    width: 12%;
    float: none;
    padding-top: 25px;
    padding-right: 15px;
  }
  .footer_col3_item+.footer_col3_item {
    margin-top: 3px;
  }
  .footer_col3_item a {
    padding: 0;
    border-bottom: 0;
    background: no-repeat;
    font-size: 1.2rem;
    border: none;
  }
}

/*--- footer_col4 ---*/
.footer_col4_ttl {
  width: 50%;
  margin: 8px;
}
.footer_col4 address,
.footer_col4_qr {
  display: none;
}
@media screen and (min-width: 768px) {
  .footer_col4 {
    clear: right;
    width: 48%;
    float: right;
  }
  .footer_col4_ttl {
    margin-left: auto;
  }
  .footer_col4 address {
    display: block;
    text-align: right;
    padding: 0 8px 10px;
    font-style: inherit;
  }
}
@media screen and (min-width: 960px) {
  .footer_col4 {
    width: 25%;
    border-left: 1px dotted #6e6e6f;
    padding-left: 15px;
    float: none;
    font-size: 1.2rem;
  }
  .footer_col4_ttl {
    width: 160px;
  }
  .footer_col4_qr {
    display: block;
    text-align: right;
  }
}


/* --------------------------------------
	#modalwindow
-------------------------------------- */
#overlay {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  height: 100%;
  width: 100%;
  background: #fff;
  z-index: 500;
}
#modalWindow {
  position: absolute;
  top: 0;
  left: 50%;
  display: none;
  margin-left: -295px;
  width: 590px;
  z-index: 600;
}
#modalWindow iframe {
  width: 100%;
  height: 100%;
}
#modalLoading {
  position: fixed;
  top: 50%;
  left: 50%;
  display: none;
  margin: -50px 0 0 -50px;
  padding: 20px;
  width: 100px;
  height: 100px;
  background: url(../img/share/ajax-loader.gif) no-repeat center center;
  z-index: 500;
}
#modalClose {
  position: absolute;
  top: -34px;
  right: 0;
}
#modalCloseSp {
  display: none;
}
#modalTarget {
  position: relative;
  width: 100%;
}
#modalTarget .modalGet {
  position: relative;
  margin: 0 auto;
}

/* title */
#modalWindow h2 {
  border-bottom: none;
}
#modalWindow h2 span {
  top: auto;
  left: auto;
}
#modalWindow .title1 {
  margin: 0 auto 20px;
  border-bottom: none;
  text-align: center;
  font-size: 10px;
  font-weight: normal;
  line-height: 1.2;
}
#modalWindow .title1:after {
  content: " ";
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -1px;
  width: 100%;
  height: 1px;
  background: #fff;
  z-index: 1;
}
#modalWindow .title1 span {
  position: relative;
  display: inline-block;
  padding: 0 18px;
  vertical-align: middle;
  z-index: 2;
}
#modalWindow .title2 {
  margin: 0 auto 10px;
  padding-bottom: 1.6rem;
  border-bottom: solid #fff 1px;
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
}


/* more */
#modalWindow .more1 {
  margin: 0 auto;
  width: 155px;
}
#modalWindow .more1 a {
  display: block;
  width: 100%;
  height: 30px;
  background: #626262;
  text-align: center;
  font-size: 13px;
  font-weight: bold;
  line-height: 30px;
  color: #fff;
}
#modalWindow .more1 a:before {
  content: " ";
  display: inline-block;
  margin-right: 10px;
  width: 6px;
  height: 100%;
  background: url(../img/icon/arrow1.png) no-repeat left center;
  vertical-align: top;
}
#modalWindow .more1 span {
  font-size: 13px;
}


/* link_list */
#modalWindow .link_list {
  margin-left: -20px;
}
#modalWindow .link_list li {
  float: left;
  margin: 20px 0 0 20px;
  padding-bottom: 2px;
  width: 167px;
  min-height: 108px;
  background: #fff;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.2;
}
#modalWindow .link_list li a {
  display: block;
  padding-top: 72px;
  height: 38px;
  background-position: center top;
  background-repeat: no-repeat;
}
#modalWindow .link_list .link_weather a {
  background-image: url(../img/icon/weather1.png);
}
#modalWindow .link_list .link_pm25 a {
  background-image: url(../img/icon/pm1.png);
}
#modalWindow .link_list .link_memo a {
  background-image: url(../img/icon/memo1.png);
}
#modalWindow .link_list .link_water a {
  background-image: url(../img/icon/water1.png);
}
#modalWindow .link_list .link_can a {
  background-image: url(../img/icon/can1.png);
}
#modalWindow .link_list .link_speaker a {
  background-image: url(../img/icon/speaker1.png);
}
#modalWindow .link_list .link_public a {
  background-image: url(../img/icon/calendar2.png);
}
#modalWindow .link_list .link_plaza a {
  background-image: url(../img/icon/plaza1.png);
}
#modalWindow .link_list .link_atrium a {
  background-image: url(../img/icon/calendar3.png);
}
#modalWindow .link_list .link_experience a {
  background-image: url(../img/icon/experience1.png);
}
#modalWindow .link_list .link_hall a {
  background-image: url(../img/icon/hall1.png);
}
#modalWindow .link_list li a span {
  display: block;
  padding-top: 6px;
}
#modalWindow .link_list li a .external_nhk {
  padding-top: 0;
}
#modalWindow .link_list .line2 a span {
  padding-top: 0;
}


/* page_video
------------------------------------------------ */
#page_video {
  width: 100%;
  background: #000;
}
#page_video .target {
  margin: 0 auto;
  width: 100%;
  text-align: center;
}
#page_video img {
  width: 100%;
  height: auto;
}
#page_video video {
  display: block;
  margin: 0 auto;
}
#page_video embed {
  display: block;
  margin: 0 auto;
}