/*IMPORT CSS
-------------------------------------*/

@import url("grid.css");


/*------------------------------------
--------------------------------------
■　google
--------------------------------------
-------------------------------------*/

/*Google AdSense表示
-------------------------------------*/

.add_box {
	width:100%;
	text-align:center;
}

.add_box a {
		display: inline-block;
		background-color:  #fff;
		padding:20px ;   
}



/*------------------------------------
--------------------------------------
■　共通設定
--------------------------------------
-------------------------------------*/

img {
	width:100%;
	height: auto;/*高さ自動*/
	margin-bottom:20px;
}

a {
    /*display:block;*/
    /*color: #333;*/
    text-decoration-line: none;
}

a:hover { 
    color: #999;
}

a img:hover {
	opacity: 0.8;
}

.center {
	text-align:center;
}

/*------------------------------------
--------------------------------------
■　レイアウト・セクション
--------------------------------------
-------------------------------------*/

section {
    margin: 0 auto;
    padding: 10px;
	width:100%;
}



/*メインコンテンツ
-------------------------------------*/
main {
    margin: 0 auto;
    width: 100%;

}





/*------------------------------------
--------------------------------------
■　フッターエリア
--------------------------------------
-------------------------------------*/


footer {
    background-color: #fff;
    padding: 5rem 0;
		color: #666;
}

footer ul li {
	font-size:1.2rem;
}


footer h5 {
    border-bottom: 2px solid #fff;
}



/*コピーライト
-------------------------------------*/
.copyright {
    text-align: center;
    padding: 1rem 0;
    background-color: #fff;
		font-size:1rem;
}
.copyright a {
    color: #000;
    text-decoration: none;
		display: inline-block;
}

/*ページトップへ戻るボタン
-------------------------------------*/
#pagetop {
    position: fixed;
    bottom: 15px;
    right: 15px;
}
#pagetop a {
    display: block;
    background: #20639b;
    color: #fff;
    width: 60px;
    padding: 10px 5px;
    text-align: center;
}

#pagetop a:hover {
    background: #03a9f4;
}





/*------------------------------------
--------------------------------------
■　テキストの装飾
--------------------------------------
-------------------------------------*/

/*見出し
-------------------------------------*/
h1.page_title {
    font-size: 2rem;
    font-weight: 700;
    background-color: #8DCBE6;
    color: #272343;
    padding: 2rem;
    letter-spacing: .2rem;
    margin: 0 auto;
    text-align: center;
    letter-spacing: 6px;
}


h2 {
	font-size: 1.8rem;
	font-weight: 700;
	background-color: #FFEA20;
	color: #272343;
	letter-spacing: .2rem;
	margin: 0 auto 1rem;
	text-align: center;
	padding: 10px;
	border:2px solid #272343;
	border-radius: 30px;
}



h3 {
		font-size:2.2rem;
		font-weight: 700;
		color:#000;
		letter-spacing: .2rem;
		margin: 0 auto .5rem;
		clear: both;
		border-left:6px solid #000;
		padding-left:1rem;
		margin:1.5rem auto;
}




h4 {
		font-size:2rem;
		font-weight: 700;
     position: relative;
     padding-left: 0.7em;
}
 
h4::after {
     position: absolute;
     top: 50%;
     left:0;
     transform:translateY(-50%);
     content: '';
     width: 5px;
     height:1em;
     background-color: #446689;
}


h5 {
	font-size:1.8rem;
	font-weight: 700;
	padding: 0.2em;
	background: linear-gradient(transparent 70%, #fff100 70%);
}



.t-right {
	text-align:right;
}

.t-small {
	font-size:1rem;
	font-weight: 700;

}


p.hyouki {
		font-weight: 700;
		color:#000;
		letter-spacing: .2rem;
		margin: 1rem auto;
		text-align:center;
}


.attention_box{
	padding:6px;
	border:1px solid #f44336;
	color:#f44336;
	font-weight: 700;
}



 @media screen and (max-width: 767px) {






}


/*バナー・ボタンの装飾
-------------------------------------*/






/*選挙特番ライブ配信
-------------------------------------*/



.youtube_box {
	width: 100%;
	margin: 1rem auto;
	background-color:#f2f2f2;
	padding:20px;
	text-align:center;
	border-radius:10px;
 }


.video {
	position:relative;
	width:100%;
	padding-top:56.25%;
	margin:0 auto;
}

.video iframe {
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
}


 @media screen and (max-width: 767px) {

.video {
	position:relative;
	width:100%;
	padding-top:56.25%;
}


}





/*-------------------------------------*/



.about_box {
	max-width: 960px;
	margin: auto;
	background-color:#E3F6FF;
	border:2px solid #272343;
	padding:20px;
	border-radius: 10px;
 }

.about_box p {
	text-align:left;
	margin-top:2rem;
	padding:1rem;
	background-color:#fffffe;
	border-radius: 10px;

}



.latest_box {
	max-width: 960px;
	margin: auto;
	background-color:#fff;
	border:2px solid #272343;
	padding:20px;
	border-radius: 10px;
 }


.latest_box p {
	text-align:left;
	margin-top:2rem;
	padding:1rem;

}




.archives_box {
	max-width: 960px;
	margin: auto;
	background-color:#E3F6FF;
	border:2px solid #272343;
	padding:20px;
	border-radius: 10px;
 }


.program_box {
	max-width: 960px;
	margin: auto;
	background-color:#fff;
	border:2px solid #272343;
	padding:20px;
	border-radius: 10px;
 }


/*-------------------------------------*/


 .p_box1 {
     width: 40%;
     margin: 1rem auto;
		 text-align:center;
 }
 .p_box2 {
     width: 60%;
     margin: auto 1rem;
 }

 @media screen and (max-width: 767px) {
 .p_contents img {
		height: auto;
		width:300px;
 }

 .p_box1 {
     width: 100%;
     margin: 1rem auto;
		 text-align:center;
 }
 .p_box2 {
		width: 90%;
    margin: 1rem auto;
 }




 }


/*======*/



 @media screen and (max-width: 767px) {
  
 
     .flexbox {
         display: block;
     }
     .flexbox .box1 {
         width: 160px;
         margin: 1rem auto;
				text-align:center;
     }
     .flexbox .box2 {
         width: 90%;
         margin: 1rem auto;
     }

		.enq_btn {
				text-align:center;
			}

 }




/*特集ニュース
-------------------------------------*/
.news_box {
	margin: 3rem auto;
	padding: 2rem;
	background: #fff;
}
.news_box_title {
	margin-bottom: 1em;
	font-size: 1.8rem;
	font-weight: 700;
}
.news_list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.news_list li {
	border: 1px solid #ccc;
	border-radius:6px;
}

.news_list li a {
	display: block;
	color: #20639b;
	font-weight: 700;
}

.news_list li p {
	margin: 1em;
	line-height: 1.3;
}




.news_list li:nth-child(2n+1) {
  background: #f6fbff;
}




/*====*/
.app_box {
	background-color:#f2f2f2;
	border-radius:6px;
	padding:1.6rem 1rem 1rem;
	margin:1rem auto;
}





/*===========================================================*/


.live_time {
    margin: 0 auto;
    text-align: center;
    padding: 20px;
    background-image: linear-gradient(90deg, rgba(105, 234, 203, 1), rgba(215, 98, 252, 1) 67%, rgba(102, 84, 241, 1));}





/*------------------------------------
--------------------------------------
■　開票速報
--------------------------------------
-------------------------------------*/



.allcontents{
		width : 100%;
		height : 1080px;
	}



@media screen and (max-width: 769px) {
.allcontents{
		width : 100%;
		height : 1000px;
	}

}


/*ディスプレイの非表示設定
-----------------------------------*/

@media screen and (min-width: 768px){
/* PC時は非表示 */

		.pc-display {
		    display: none;
		}
}


@media screen and (max-width: 768px){
/* スマホ時は非表示 */

		.sp-display {
		    display: none;
		}
}



/*==[改行の設定]===================*/

@media screen and (min-width: 576px){	
  .br-pc { display:block; }
  .br-sp { display:none; }
}

@media screen and (max-width: 769px){	
  .br-pc { display:none; }
  .br-sp { display:block; }
}



/*==[画像横並び]========================*/




*, *:before, *:after {
    box-sizing: border-box;
}
.senkyoku_img_box{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.senkyoku_img_box > *{
    width: calc( 50% - 6px ) ;
    margin-right: 12px;
    margin-bottom: 12px;
}
.senkyoku_img_box > *:nth-child(2n){
    margin-right: auto;
}
@media screen and (max-width: 960px) {
    .senkyoku_img_box > *{
        width: 100%;
        margin-right: auto;
    }
}




/*==[ニュース横並び]========================*/

.news_3_box span {
	font-size:.6rem;

}
.news_3_box p {
	font-weight: 700;
	font-size:1.2rem;
}

.news_3_box img {
	border-radius:6px;
	margin-bottom:0;
}

.news_3_box{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.news_3_box > *{
    width: calc( 33.33333% - 8px ) ;
    margin-right: 12px;
    margin-bottom: 12px;
}
.news_3_box > *:nth-child(3n){
    margin-right: auto;
}
.news_3_box > * > *{
    height: 60px;
    position: relative;
    overflow: hidden
}
@media screen and (max-width: 960px) {
    .news_3_box > *{
        width: calc( 50% - 6px ) ;
    }
    .news_3_box > *:nth-child(3n){
        margin-right: 12px;
    }
    .news_3_box > *:nth-child(2n){
        margin-right: auto;
    }
}
@media screen and (max-width: 580px) {
    .news_3_box > *{
        width: 100%;
        margin-right: auto;
    }
    .news_3_box > *:nth-child(3n){
        margin-right: auto;
    }
}

/*==[ナビ横並び]========================*/

.nav {
	margin:0 auto;

}

.nav ul{
    display: flex;
    justify-content: center;
    margin: 0;
    padding: 0;
}
.nav li{
    list-style: none;
    width:25%;
	font-weight: 700;
	font-size:1.4rem;
	text-align:center;
}
.nav a{
    display: block;
    padding: 10px;
    border: 1px solid #272343;
    border-right: none;
    text-decoration: none;
    color: #333;
    background: #FCFFB2;
}


.nav a:hover {
    background: #FEFF86;
}




.nav li:last-child a{
    border-right: 1px solid #272343;
}


@media(max-width:750px){
    .nav ul{
        flex-wrap: wrap;
        border-bottom: 1px solid #272343;
        border-right: 1px solid #272343;
    }
    .nav li{
        width: 50%;
        margin: 0;
    }
    .nav a{
        border-bottom: none;
    }
    .nav li:last-child a{
        border-right: none;
    }
}




/*==[ボタン]========================*/

a.btn_blue {
    display: block;
    max-width: 350px;
    margin: 0 auto;
    padding: 1.5rem 3.0rem;
    background-color: #B5F1CC;
    border-radius: 8px;
	box-sizing: border-box;
    text-decoration: none;
    transition: 0.3s;
    border:2px solid #272343;
}




a.btn_blue span.bl__text {
    display: block;
    position: relative;
    color: #272343;
    font-size: 16px;
	font-weight: 700;
    text-align: center;
    padding-left: 30px;
}

a.btn_blue span.bl__text:before {
    content: '';
    width: 20px;
    height: 20px;
    background: #ffffff;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
}

a.btn_blue span.bl__text:after {
    content: '';
    width: 8px;
    height: 8px;
    border-top: 3px solid #272343;
    border-right: 3px solid #272343;
	box-sizing: border-box;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    left: 5px;
    bottom: 0;
    margin: auto;
    transition: 0.3s;
}

a.btn_blue:hover {
    background-color: #B9F3E4;
}

a.btn_blue:hover span.bl__text:after {
    border-top: 3px solid #272343;
    border-right: 3px solid #272343;
}

@media (max-width: 736px) {
    a.btn_blue {
        max-width: 280px;
        padding: 1.5rem 2.0rem;
    }
    a.btn_blue span.bl__text {
        font-size: 14px;
    }
}


/*==[ボタン]========================*/

a.btn_area {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  position: relative;
  background: #FDF4F5;
  border: 2px solid #272343;
  box-sizing: border-box;
  padding: 0 25px 0 40px;
  color: #272343;
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-align: left;
  text-decoration: none;
  transition-duration: 0.3s;
  font-weight: 700;

}
a.btn_area:before {
  content: '';
  width: 8px;
  height: 8px;
  border: 0;
  border-top: 2px solid #272343;
  border-right: 2px solid #272343;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 25px;
  margin-top: -6px;
}
a.btn_area:hover {
  background: #FCC8D1;
  color: #272343;
}
a.btn_area:hover:before {
  border-top: 2px solid #272343;
  border-right: 2px solid #272343;
}





/*==[2カラム番組紹介]========================*/


.onair_list{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin:2rem auto;
}
.onair_list > *{
    width: calc( 50% - 6px ) ;
    margin-right: 12px;
    margin-bottom: 12px;
}
.onair_list > *:nth-child(2n){
    margin-right: auto;
}
.onair_list > * > *{
    background: #fffffe;
    position: relative;
    overflow: hidden
}

.onair_list h4 {
	color:#000;
}


@media screen and (min-width: 959px) {
.onair_list img {max-width:380px;}
}


@media screen and (max-width: 960px) {
    .onair_list > *{
        width: 100%;
        margin-right: auto;
    }
}


/*==[2カラム番組紹介]========================*/




.onair_list dl {
	display: flex;
	flex-flow: row wrap;
	width: 100%;
}
.onair_list dt {
	flex-basis: 30%;
	padding: 6px;
}
.onair_list dd {
	flex-basis:70%;
	padding: 6px;
}
@media screen and (max-width: 559px) {
	.onair_list dl {
		flex-flow: column;
	}
}


/*==========ふるさとプロジェクト第3弾用============*/

.highlight_span {
	text-align: center;
	font-size: 2rem;
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	}

/*文字の下線マーカー*/
#underline_p {
	background: linear-gradient(transparent 50%, #B5F1CC 60%);
	}
	
/*タイトル・日付間の水平線*/

.hr_amami-title {
	height: 0px;
	margin: 1rem;
	padding: 0;
	border: 0;
  height: 2px;
  background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(#ccc), to(transparent));
  background-image: linear-gradient(to right, transparent, #B5F1CC, transparent);
	}

/*==========特番 文字のみ============*/
.tokuban{
font-size: 2rem;
font-weight: 700;
background-color: #c60000;
color: #fff;
margin: 0 auto 1rem;
text-align: center;
padding: 20px 10px;
/*border: 2px solid #272343;*/
border-radius: 12px;
}



/*==========特番　画像あり============*/
.tokuban2{
background-color: #ffffc5;
margin: 0 auto 1rem;
padding: 10px 10px 15px 10px;
border: 2px solid #FFEA20;
border-radius: 12px;
}

.tokuban2 h3{
font-size: 2rem;
background-color: #FFEA20;
border-left: 6px solid #ff7300;
padding: 10px;
}

.tokuban2-inn p{
padding: 10px 0;
margin-bottom: 0;
}

.tokuban2-inn img {
margin-bottom: 0;
}


@media screen and (min-width: 959px) {
.tokuban2-inn{display:flex;}
.tokuban2-inn p{
padding: 10px;
width:50%;
}
.tokuban2 img{margin-bottom: 0;max-width:380px;}
}



/*contest*/
.contest {
max-width: 960px;
}

.contest-title {
font-size: 30px;
position: relative;
padding: 1.1rem;
text-align: center;
}

.contest-img {
display: flex;
width: 100%;
}

.contest-img img {
padding: 5px;
width: 50%;
object-fit: cover;
object-position: center;
}
  
.contest-title:before {
position: absolute;
bottom: -5px;
left: calc(50% - 30px);
width: 60px;
height: 5px;
content: '';
border-radius: 3px;
background: #000;
}