/*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 {
	max-width:100%;
	height: auto;/*高さ自動*/
	margin:1rem auto;
    border-radius: 10px;
}

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: 0;
	width:100%;
    border-bottom: 1px dotted #ccc;
}



/*メインコンテンツ
-------------------------------------*/
main {
    margin: 0 auto;
    width: 100%;
	background-color: #fff;
}
/*#E3E2C3*/




/*------------------------------------
--------------------------------------
■　フッターエリア
--------------------------------------
-------------------------------------*/


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: #6BB0A5;
    color: #fff;
    width: 80px;
    padding: 10px 5px;
    text-align: center;
    height: 80px;
    line-height: 3;
    border: 3px solid #000;
    border-radius: 6px;
    font-family: fantasy;
    font-size: 2rem;
}
    

#pagetop a:hover {
    background: #B2CFBD;
}




/*------------------------------------
--------------------------------------
■　テキストの装飾
--------------------------------------*/

p.txt_storys {
    margin:0;
    padding: 20px;
    line-height: 2.4 !important;
    letter-spacing: 1px;
    font-family: serif;
}


/*見出し
-------------------------------------*/
h2.event_date {

    font-weight: 700;
    background-color: #1868a6;
    color: #fff;
    padding: 2rem;
    letter-spacing: .2rem;
    margin: 0 auto;
    text-align: center;
    letter-spacing: 6px;
    font-family: cursive;
}

h2.event_date span {
    font-size: 1.6rem;
}


h3 {
    color:#05556B;
     position: relative;
     padding:0.2rem 0 0.5em 0.7em;
     border-bottom: 1px solid #05556B;
     font-weight: 700;
     margin: 2rem 0;
}
 
h3::after {
     position: absolute;
     top: 0.2em;
     left:0;
     content: '';
     width: 5px;
     height:1em;
     background-color: #05556B;
}



h4 {
	font-weight: 700;
    margin: 1rem 0;
}
 


h5 {
	font-weight: 700;
}


@media screen and (max-width: 480px){


h3 {
     position: relative;
     padding:0 0 0.5em 0.7em;
     border-bottom: 1px solid #05556B;
    font-size: 2rem;
	font-weight: 700;

}
 
h3::after {
     position: absolute;
     top: 0.2em;
     left:0;
     content: '';
     width: 5px;
     height:1em;
     background-color: #05556B;
}


}



.contet_box p {
	margin:0 auto 2rem;
	line-height: 2;
}



.t-right {
	text-align:right;
}

.t-small {
	font-size:1rem;
	font-weight: 700;
}

.t-large {
	font-weight: 700;
    color: red;
}



.attention_box{
	padding:6px;
	border:1px solid #6BB0A5;
	color:#6BB0A5;
	font-weight: 700;
}


/*各コンテンツ
-------------------------------------*/


.contet_box {
	width: 1080px;
	margin:2rem auto;
	padding:4rem;
	background-color:#ffff;
}

@media screen and (min-width: 768px) {

.contet_box {
	width: 1080px;
	margin:2rem auto;
	padding:4rem;
	background-color:#ffff;
}

}



@media screen and (max-width: 480px) {

.contet_box {
	width: 80%;
	margin:2rem auto;
	padding:1rem;
	background-color:#ffff;
	}
}




/*-------------------------------------*/





/*==[ベージュの背景色]==*/
.bg_color_box {
	background-color:#F2ECDA;
	border-radius:6px;
	padding:2rem;
	margin:1rem auto 2rem;
}





/*ライブ配信
-------------------------------------*/



.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: 480px) {

.video {
	position:relative;
	width:100%;
	padding-top:56.25%;
}


}




/*===========================================================*/

/*ディスプレイの非表示設定
-----------------------------------*/

@media screen and (max-width: 480px){
/* PC時は非表示 */

		.pc-display {
		    display: none;
		}
}


@media screen and (max-width: 768px){
/* スマホ時は非表示 */

		.sp-display {
		    display: none;
		}
}



/*==[画像横並び]========================*/


.col_3{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.col_3 > *{
    width: calc( 33.33333% - 8px ) ;
    margin-right: 12px;
    margin-bottom: 12px;
}
.col_3 > *:nth-child(3n){
    margin-right: auto;
}
.col_3 > * > *{
    background: #ff0000;
    height: 120px;
    position: relative;
    overflow: hidden
}

@media screen and (max-width: 480px){
    .col_3 > *{
        width: 100%;
        margin-right: auto;
    }
    .col_3 > *:nth-child(3n){
        margin-right: auto;
    }
}




/*==[ボタン]========================*/

a.btn_blue {
    display: block;
    max-width: 350px;
    margin: 1.6rem auto;
    padding: 1.5rem 3.0rem;
    background-color: #1868a6;
    border-radius: 8px;
	box-sizing: border-box;
    text-decoration: none;
    transition: 0.3s;
    border:1px solid #272343;
}




a.btn_blue span.bl__text {
    display: block;
    position: relative;
    color: #fff;
    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 #1868a6;
    border-right: 3px solid #1868a6;
	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: #6A8394;
}

a.btn_blue:hover span.bl__text:after {
    border-top: 3px solid #272343;
    border-right: 3px solid #272343;
}

@media screen and (max-width: 480px){
    a.btn_blue {
        max-width: 280px;
        padding: 1.5rem 2.0rem;
    }
    a.btn_blue span.bl__text {
        font-size: 14px;
    }
}







/*==[2カラム番組紹介]========================*/


.onair_list{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin:4rem auto;
}
.onair_list > *{
    width: calc( 50% - 6px ) ;
    margin-right: 12px;
    margin-bottom: 12px;
    padding:1rem;
}
.onair_list > *:nth-child(2n){
    margin-right: auto;
}
.onair_list > * > *{
    /*background: #fffffe;*/
    position: relative;
    overflow: hidden
}


.onair_list img {
	width:100%;
	height:auto;
}



@media screen and (max-width: 480px){
    .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: 480px){
	.onair_list dl {
		flex-flow: column;
	}
}







/*==セッション横並び==*/

.flex_box{
display: flex;
padding: 10px;
}

.flex_box div{
width: 50%;
margin: 10px;
padding: 10px;
}

.flex_box img {
    border: 1px solid #acacac;
}


@media screen and (max-width: 480px){

.flex_box{
display: block;
padding: 10px;
}
.flex_box div{
width: 90%;
margin: 10px;
padding: 10px;
}




}



/*======================================================*/

h1 {
 margin:4rem auto;
 color: #5D72A1;
}

#blog-title-inner{
 width:100%;
 margin:0 auto;
 text-align:center;
}

#blog-title {
 background-image:url(../img/header-bg.png);
 background-size:cover;
 background-position:center bottom;
}



@media screen and (max-width: 480px) {

#blog-title-inner{
 width:100%;
 margin:0 auto;
 height:auto;
 text-align:center;
}

#blog-title {
 background-image:url(../img/header_bg.jpg);
 background-size:cover;
 background-position:center bottom;
}

}




/*=====[放送日タグ]======================================*/

.program_onair {
     position: relative;
     color: white;
     padding:0.5em 0.5em 0.5em 1.4em;
     background-color: #FF9800;
	font-weight: 700;
	margin:2rem 0;
    font-size: 2rem;
}


 
.program_onair::after {
     position: absolute;
     top: 50%;
     left:0;
     transform:translateY(-50%);
     content: '';
     width: 18px;
     height:4px;
     background-color:white;
}


/*==========番組タイトル============*/


.program_title {
    font-weight: 700;
}

@media screen and (max-width: 480px){


.program_title {
font-size: 2rem;
    font-weight: 700;
}

}


/*=====[ブルー：下部ボーダー見出し]======================================*/

.heading03 {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.8rem;
	text-align: center;
	font-weight: 700;
}

.heading03::before,
.heading03::after {
	content: '';
	width: 50px;
	height: 3px;
	background-color: #634A80;
}

.heading03::before {
	margin-right: 20px;
}
.heading03::after {
	margin-left: 20px;
}


/*タイムテーブル*/

.timetable {
    border-collapse: collapse;
    table-layout: fixed;
    width: 100%; /* table幅を100%に指定 */
    background: #fff;
    border: none;
    border:2px solid #6A8394;
}
.timetable th,
.timetable td {
    display: block; /* セルをブロック要素に指定 */
    width: 100%; /* セルを親要素いっぱいの幅に指定 */
    border: none;
    font-size: 14px;   
    padding: 10px;
    vertical-align: top;
    text-align: left;
    box-sizing: border-box;
}
.timetable th {
    font-size: 2rem;
    font-weight: 700;
    color: #fff;
    background: #6A8394; /* thの背景色 */
}

@media screen and (min-width: 768px) {
    .timetable th,
    .timetable td {
        display: table-cell; /* デフォルト値に指定 */
        border-bottom: 1px solid #6A8394;
        color: #000;
        background: #fff;
    }
    .timetable th {
        color: #000;
        background: #fff; /* thの背景色 */
    }
    .timetable tr th:first-child {
        width: 100px; /* thの固定幅 */
    }
}



/*==[ナビ横並び]========================*/

.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 screen and (max-width: 480px){
    .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;
    }
}


