﻿*,
*:before,
*:after {
-webkit-box-sizing: inherit;
box-sizing: inherit;
}


html {
overflow: auto;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}


body{
font-family: 'Kosugi Maru', sans-serif;
background-color:"#fffffe";
}

/*====囲みの枠=====================================================================*/

.wrapper {
min-height: 100vh;
position: relative;/*←相対位置*/
padding-bottom: 120px;/*←footerの高さ*/
box-sizing: border-box;/*←全て含めてmin-height:100vhに*/
background-color:#fffffe;
}

#container {
display: block;
max-width: 1080px;
margin:0 auto 30px;
padding:20px;
}


.news_box {
	border:2px solid #999;
	border-top:30px solid #999;
	background-color:#ffff;
	padding:20px;
	margin-bottom:3rem;
}

.contact_box {
	border:2px solid #999;
	padding:20px;
	margin-bottom:3rem;
	background-color:#f2f2f2;
	border-radius:10px;
}




.about_box {
	padding:2rem;
	background-color:#ffff;
	border-radius:10px;
}


@media screen and (max-width: 480px) {

	.about_box {
		padding:1rem;
		background-color:#ffff;
		border-radius:10px;
		font-size:0.8rem;
	}

}

/*====囲みの枠=====================================================================*/



.sun_box {
border:6px solid #ffe6ef;
background-color:#ffe6ef;
padding:20px;
margin-bottom:3rem;
border-radius:10px;
}


.sut_box {
border:6px solid #c1f9f6;
background-color:#c1f9f6;
padding:20px;
margin-bottom:3rem;
border-radius:10px;
}

.day_box {
border:6px solid #feed95;
background-color:#feed95;
padding:20px;
margin-bottom:3rem;
border-radius:10px;
}



@media screen and (max-width: 480px) {

.news_box {
flex-wrap:wrap;
}

}





/*====画像の設置=====================================================================*/


.bana_img {
border:1px solid #666;

}



.full {
position: relative;
width: 100%;
min-height: auto;
background: url("img/bg1.jpg")
center / cover;
}

@media screen and (max-width: 480px) {

.full {
position: relative;
width: 100%;
min-height: auto;
background: url("img/bg1.jpg")
center / cover;
}


}


.main_img {
margin: 0 auto;
text-align: center;
}

img {
max-width:100%;
height:auto;
}


/*--ゲスト写真--*/

.photo_circle img {
margin-top:20px;
width: 320px !important;
}

.photo_circle {
text-align: center;
}


/*====テキスト装飾=====================================================================*/


.txt_red {
font-size: 1.6em;
color: crimson;
font-weight: 700;		
}



#container ul{
margin-left: 0px;
padding: 0px;
}

#container li{
list-style: none;

}


.text_small {
font-size:.8rem;
}

.text_right {
text-align: right;
}

.text_left {
text-align: left;
}

.text_center {
text-align: center;
}

/*==見出しの設定====================*/

h1.title {
padding: 20px;
font-size: 2.2rem;
color: #000;
margin: 0 auto;
text-align: center;
letter-spacing: .2rem;
}


h2 {
font-size : 1.6rem;
margin:1rem auto;
line-height: 1.4;
color:#000;
font-weight: 700;
}


h3 {
font-size: 1.6rem;
margin: 1.4rem auto;
color: #3f4040;
border-left: 6px solid #3f4040;
padding-left: 1rem;
}


h4 {
font-size: 1.4rem;
    margin: 1rem auto;
    padding: 0.6rem;
    color: #000;
    text-align: center;
    background-color: #ffeb3b;
    border-radius: 100px;
    width: 280px;
    line-height: 1.6;
}



h5 {
	font-size : 1.2rem;
	margin:0 auto;
	padding:.6rem;
	color:#000;
	line-height: 1.5;

}


h6 {
	font-size : 1rem;
	margin:0 auto;
	padding:.6rem;
	color:#000;
	line-height: 1.5;
}

/*===放送時間=====*/

.program_date {
	display: flex;
	align-items: center;
}


/*.p-ti {
	font-size: 2rem;
	line-height: 1.4;
	color: #000;
	 font-weight: 700;
	text-align: left;
	display: flex;
	width: 60%;
	padding-top: 10px;
}

.p-ti_02 {
	font-size: 2rem;
	line-height: 1.4;
	color: #000;
	font-weight: 700;
	text-align: left;
	display: flex;
	width: 100%;
	padding-top: 10px;
	margin: 1rem auto;
}*/

.p-ti {
    font-size: 2rem;
    line-height: 1.4;
    color: #3f51b5;
    font-weight: 700;
    padding: 10px;
    margin: 2rem auto;
    text-align: center;
    border-radius: 6px;
    border: 6px solid #3f51b5;
background-color: #feffed;
}


.ti_sm {
    font-size: 1.6rem;
    line-height: 1.6;



}

/*.eventdate_box {
	font-size: 1.4rem;
	padding: 0.6rem;
	color: #000;
	text-align: center;
	background-color: #ffeb3b;
	border-radius: 100px;
	width: 30%;
	display: flex;
	line-height: 1.6;
	font-weight: 700;
}*/

.eventdate_box {
	font-size: 1.4rem;
	padding: 0.6rem;
	color: #000;
	text-align: center;
	background-color: #ffeb3b;
	border-radius: 100px;
	width: 60%;
	display: flex;
	line-height: 1.6;
	font-weight: 700;
}


.eventdate {
	position: relative;
	padding: 0.5em 1.2em;
	border-radius:1.5em;
	background: #ff5722;
	color:#fff;
	text-align: center;
	font-size:2rem;
}

/*==ON AIR時間==*/
.reservation {
	background-color:#f43636;
	font-size: 1.2rem;
	margin:0 1rem 0 0 ;
	padding:.2rem .6rem;
	border-radius:100px;
	color:#fff;
}




@media screen and (max-width: 480px) {

.program_date {
    display: block;
}

.p-ti {
    font-size: 1.2rem;
    line-height: 1.4;
    color: #000;
    font-weight: 700;
    text-align: center;
    display: block;
    width: 100%;
    padding-top: 10px;
}

.p-ti_02 {
	font-size: 1.2rem;
	line-height: 1.4;
	color: #000;
	font-weight: 700;
	text-align: left;
	display: block;
	width: 90%;
	padding-top: 10px;
	margin: 0 auto;
}


.eventdate_box,
.eventdate_box_02 {
	font-size: 1rem;
	padding: 0.4rem;
	color: #000;
	text-align: center;
	background-color: #ffeb3b;
	border-radius: 100px;
	width: 96%;
	display: block;
	line-height: 1.6;
	font-weight: 700;
	margin: 0 auto;}


.eventdate {
	position: relative;
	padding: 0.5em 1em;
	border-radius: 3rem;
	background: #ff5722;
	color: #fff;
	font-size: 1.2rem;
}



}


/*======================*/

p {
font-size : 1rem;
line-height : 1.6;
margin:1rem;
}

ul,ol {
margin:0 auto 20px;

}

ul li,
ol li {
font-size : 1.2rem;
line-height : 1.8;
}


/*==仕切り線==*/

.day_box hr {
height: 6px;
background-color: #ffc107;
width: 90%;
border: none;
margin:2rem auto;
}

.sut_box hr {
height: 6px;
background-color: #c1f9f6;
width: 90%;
border: none;
margin:2rem auto;
}



.sun_box hr {
height: 6px;
background-color: #ff99c9;
width: 90%;
border: none;
margin:2rem auto;
}




/*==テキスト色変更==*/

/*==オレンジ==*/

.txt_c_o {
color:#eb6100;
}

/*==水色==*/

.txt_c_b {
color:#00BCD4;
}


/*==ピンク==*/

.txt_c_p {
color:#e91e63;
}


/*==赤==*/

.txt_c_r {
color:#f43636;
}

/*==背景黄色線==*/
.bg_y {
background-color:yellow;
padding:0 0.6rem;
}




p.days {
font-size: 1.6rem;
font-weight: 700;
    line-height: 1.4;
}


.andmore {
	font-size: 1.8rem;
	margin: 0 auto;
	padding: 1rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
	background: linear-gradient(90deg, #e91e63 0%, #e91e63 33%, #00bcd4 62%, #03a9f4 83%, #e91e63 100%);
	background: -webkit-linear-gradient(0deg, #e91e63 0%, #e91e63 33%, #00bcd4 62%, #03a9f4 83%, #e91e63 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}






.program_logo {
text-align: center;
margin:0 auto;
margin-bottom: 1rem;
}



/*====二重ボーダー=====================================================================*/



.border2 {
	margin: 1.4rem auto;
	color: #3f4040;
	position: relative;
	padding: 1em;
	background-color: #ffffff;
	border-radius: 10px;
}




@media screen and (max-width: 480px) {

.border2 {
	font-size: 1.4rem;
	margin: 1.4rem auto;
	color: #3f4040;
	position: relative;
	padding: 1em 0;
	text-align:center;
}


p.days {
    font-size: 1.2rem;
    font-weight: 700;
}



}




/*====囲み=====================================================================*/

.add_box_top {
	font-size:1.2rem;
	padding: 0.5em 0.75em;
	margin:1rem auto;
	line-height:1.6;
}

.add_box {
	padding: 0.5em 0.75em;
	/*border: 3px solid #2196f3;*/
	border-radius: 4px;
	background-color: #ecf6ff;
	margin:1rem auto;
}

/*グレーの囲み線有り*/
.add_box_02 {
	padding: .5em .75em;
	border: 1px solid #ccc;
	border-radius: 4px;
	text-align:center;
	background-color:#f2f2f2;
	margin:1rem auto 2rem;
}


.tag_box {
	padding: 0.5em 0.75em;
	/*border: 3px solid #2196f3;*/
	border-radius: 20px;
	background-color: #edd6f1;
	margin:1rem auto;
}


@media screen and (max-width: 480px) {

.add_box {
	padding: .5em .75em;
	border: 1px solid #ccc;
	border-radius: 4px;
	text-align:left;
	width: 96%;
}


}

.add_box p {
	font-size: 1rem;
	line-height: 1.4;
}




/*====かっこ=====================================================================*/

.brackets {
 	text-align: center;
}
 
.brackets{
position: relative;
display: inline-block;
padding: 0 0.8em;
}

.brackets::before{
position: absolute;
content: '';
top:0;
right:0.2em;
width: 0.2em;
height:100%;
border: solid 1px black;
border-left: none;
}
 
.brackets::after{
position: absolute;
content: '';
top:0;
left:0;
width: 0.2em;
height:100%;
border: solid 1px black;
border-right: none;
}



/*====ボタンの設定=====================================================================*/


.mail_box {
width:100%;
margin:1rem auto;
text-align:center;
background-color:#fff;
padding:1rem;
}

.btn,
a.btn,
button.btn {
font-size: 1.2rem;
font-weight: 700;
line-height: 1.5;
position: relative;
display: inline-block;
padding: 1rem 2rem;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-transition: all 0.3s;
transition: all 0.3s;
text-align: center;
vertical-align: middle;
text-decoration: none;
letter-spacing: 0.1em;
color: #212529;
border-radius: 0.5rem;
}

.btn_mail {
margin:1rem auto;
max-width:100%;
}

.btn_mail,
a.btn_mail {
color: #fff;
background-color: #eb6100;
}

.btn_mail:hover,
a.btn_mail:hover {
color: #fff;
background: #f56500;
}


/*==プロフィール==*/

.profile_box {
width:100%;
text-align:center;
background-color:#fff;
margin-bottom:.5rem;
}


.btn_profile {
margin:.5rem auto;
max-width:100%;
}

.btn_profile, a.btn_profile {
color: #fff;
background-color: #00BCD4;
font-size: 1.2rem;
}

.btn_profile:hover, a.btn_profile:hover {
color: #fff;
background: #00BCD4;
}


@media screen and (max-width: 480px) {

.news_box {
flex-wrap:wrap;
}


.btn_profile, a.btn_profile {
color: #fff;
background-color: #00BCD4;
font-size: 1.2rem;
}



}




/*====テーブルの設定=====================================================================*/




.tbl_onair {
border-collapse: collapse;
width: 100%;
margin: 1em auto;
}

.tbl_onair th,
.tbl_onair td {
padding: 1em 5%;
border: 1px solid #aaa;
vertical-align: top;
text-align: left;
}

.tbl_onair th {
background: #eee;
width: 30%;
text-align: center;
}

.tbl_onair td {
background: #fff;
}


@media screen and (max-width: 480px) {
.tbl_onair th,.tbl_onair td {
display: block;
width: auto;
border-bottom: none;
}

.tbl_onair tr:last-child {
border-bottom: 1px solid #aaa;
}

}




/*====ヘッダーの設定=====================================================================*/


#topicpath {
padding : 10px 0;
font-size : 10px;
line-height : 12px;
clear: both;
width :100%;
text-align : left;
background:#294C7A;
color:#fff;
}

#topicpath .pan {
max-width:960px;
margin:0 auto;
padding:6px;
}


#topicpath .pan a {
color:#fff;
}

/*====出演者の設定=====================================================================*/


.performer_box {
	background-color: #fff;
	padding: 10px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.performer_2 {
	color:#000;
	margin:10px;
	border-radius:5px;
	align-self: stretch;
	width: 46%
}



.performer_3 {
	color:#000;
	margin:10px;
	border-radius:5px;
	align-self: stretch;
	width: 30%
}



.performer_4 {
	color:#000;
	margin:10px;
	border-radius:5px;
	align-self: stretch;
	width: 20%
}



@media screen and (max-width: 480px) {


.performer_box {
background-color: #fff;
padding:10px;
margin:0 auto;
justify-content: center;
}



.performer img {
width: 100%;
}


.performer_2,
.performer_3,
.performer_4 {
	color: #000;
	margin: 10px auto;
	border-radius: 5px;
	align-self: stretch;
	width: 100%;
}


}


/*==セッション横並び==*/

.flex_box{
display: flex;
padding: 10px;
}
.flex_box div{
width: 50%;
margin: 10px;
padding: 10px;
}


@media screen and (max-width: 480px) {

.flex_box{
display: block;
padding: 10px;
}
.flex_box div{
width: 90%;
margin: 10px;
padding: 10px;
}




}






/*==SNSまとめ==*/

.sns_box {
background-color: #fff;
padding:10px;
display: flex;
justify-content: space-between;
}


.sns_contetn {
color:#000;
margin:10px;
border-radius:5px;
align-self: stretch;
border:solid 1px #f5f5f5;
width: 40%;
}



@media screen and (max-width: 480px) {
.sns_box {
background-color: #fff;
padding:10px;
display: flex;
flex-direction: column;
width: 100%;
}


.sns_contetn {
color:#000;
margin:10px;
border-radius:5px;
align-self: stretch;
border:solid 1px #f5f5f5;
width: 100%;
}
}


/*====フッターの設定=====================================================================*/



/* コピーライト */

#cr{
padding : 10px 0;
font-size : 10px;
line-height : 12px;
clear: both;
width :100%;
text-align : center;
background:#294C7A;
color:#fff;
}


footer {
width: 100%;
text-align: center;
position: absolute;/*←絶対位置*/
bottom: 0; /*下に固定*/
}



/*====YouTube設置の設定=====================================================================*/

.youtube {
position:relative;
width:100%;
padding-top:56.25%;
}

.youtube iframe {
position:absolute;
top:0;
right:0;
width:100%;
height:100%;
}




/*===スマホ設定======================================================================*/


@media screen and (max-width: 480px) {

p {
font-size : 1rem;
line-height : 1.6;
margin:0.6rem;
text-align:left;
}


h1.title {
padding: 10px;
font-size:1.8rem;
color: #fff;
margin: 0 auto;
/*background-color: #00bcd4;*/
text-align: center;
}

h1.title span {
font-size: 1rem;
}

ul li,
ol li {
font-size : 1rem;
line-height : 1.6;
}


}


/*========================================*/

#nav_box {
display: flex;
    flex-wrap: nowrap;
    gap: 2px;
    padding: 2px;
    width: 100%;
    margin: 1rem auto;
    justify-content: center;
    flex-direction: row;
}

#nav_box img {
	width: calc(100% - 1px);
}

@media screen and (max-width: 480px) {

#nav_box {
    display: block;
    flex-wrap: wrap;
    gap: 4px;
    padding: 2px;
    width: 100%;
    margin: 1rem auto;
    justify-content: space-between;
}


#nav_box img {
    width: calc(48% - 2px);
}


}