/*===========================================================================================================================================
=============================================================================================================================================

	PC

=============================================================================================================================================
===========================================================================================================================================*/
@media screen and (max-width: 3000px), print{
/*　バナー　*/
.bnr-left{
	padding: 15px 3px 0 0px;
}

.bnr-right{
	padding: 15px 0px 0 3px;
}
	

	
/* 最近のお知らせ */
.saishin_news_box{
	margin: 0px;
	padding: 5px 0px 0px;
	clear: both;
	width: 850px;
}
.saishin_news_box1{
	margin: 5px 5px 0 5px;
	padding: 0px;
	border-width: 1px;
	border-color: #ACBED6;
	border-style: solid;
	width: 840px;
}

.saishin_news_tit{
	font-size: 1em;
	color: #000000;
	font-weight: bold;
	text-align: center;
	margin: 0px;
	padding: 3px 0px;
	width: 840px;
	background-color: #DEEAF6;
}

.saishin_news{
	margin: 10px;
	padding: 0px;
	width: 820px;
}

.news{
	font-size: 0.9em;
	overflow: auto;
	height: 200px;
}
	
/* 1. dl（1行全体）をFlexboxにして横並び・上下中央揃えにする */
.saishin_news .news dl {
    display: flex;
    align-items: center; /* 2行になっても日付やタイトルが中央に揃う */
    margin: 0px; /* 各記事の間の余白（調整可） */
	padding: 10px 0 5px 0;
    border-bottom: 1px dashed #333333;
}

/* 2. dt（カテゴリ＋日付）も横並びにする */
.saishin_news .news dt {
    display: flex;
    align-items: center;
    flex-shrink: 0; /* 幅が勝手に縮まないようにする */
    margin-right: 10px; /* タイトルとの間の余白 */
}

/* 3. .cat_icon の指定（折り返し許可と崩れ防止） */
.cat_icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.7rem;
    min-height: 18px;       /* 最低限の高さを確保 */
    line-height: 1.2;       /* 行間を詰める */
    width: 86px;
    border-width: 1px;
    border-style: solid;
    margin-right: 15px;
    word-break: break-all;  /* 90pxで折り返す */
    padding: 2px 4px;
    box-sizing: border-box; /* パディングを含めて90pxに固定 */
    flex-shrink: 0;         /* アイコン自体が変形しないようにする */
}

/* 4. dd（記事タイトル）の設定 */
.saishin_news .news dd {
    margin: 0;
    flex-grow: 1; /* 残りの横幅をいっぱいに使う */
}
	
/* スラッグごとの文字色・背景色指定 */
/* 「general」というスラッグの場合 */
.saishin_news .news dt span.general {
    color: #e60012; /* 文字色：赤 */
    /* background-color: #ffe6e6; 背景色も変える場合は追加 */
}

/* 「event」というスラッグの場合 */
.saishin_news .news dt span.event {
    color: #008000; /* 文字色：緑 */
}

/* 「volunteer」というスラッグの場合 */
.saishin_news .news dt span.volunteer {
    color: #0000ff; /* 文字色：青 */
}
	
.news_ichiran{
	font-size: 0.9rem;
	text-align: right;
	margin: 2px 5px 10px 0;
}

.line_box{
	margin: 0px;
    padding: 15px 10px 0px 70px;
    float: left;
    width: 250px;
}

.line_box_l{
	text-align: right;
	margin: 0px;
	padding: 0px 10px 0px 0px;
	float: left;
	width: 120px;
}

.line_box_r{
	text-align: left;
	margin: 0px;
	padding: 0px 0px 0px 0px;
	float: left;
	width: 120px;
}

.ado_box{
	margin: 15px 0px 0px;
	padding: 0px;
	float: left;
	width: 98%;
}

.ado_box_r{
	text-align: center;
	margin: 5px 0px 0px;
	padding: 0px;
	float: left;
	width: 20%;
}

.ado_box_r2{
	margin: 5px 0px 0px;
	padding: 0px;
	float: left;
	width: 78%;
}

.ado_box_r_m{
	font-size: 0.8em;
	line-height: 130%;
	margin: 0px;
	padding: 0px;
}

/*===========================================================================================================================================
=============================================================================================================================================

	タブレット

=============================================================================================================================================
===========================================================================================================================================*/
@media screen and (min-width: 700px) and (max-width: 1023px) {
		.sp_img{
		display: none;
	}

.saishin_news_box{
	margin: 0px auto;
	padding: 5px 0px 0px;
	width: 98%;
}
.saishin_news_box1{
	margin: 5px;
	padding: 0px;
	border-width: 1px;
	border-color: #ACBED6;
	border-style: solid;
	width: 98%;
}

.saishin_news_tit{
	font-size: 1em;
	color: #000000;
	font-weight: bold;
	text-align: center;
	margin: 0px;
	padding: 3px 0px;
	background-color: #DEEAF6;
	width: 100%;
}

.saishin_news{
	margin: 10px;
	padding: 0px;
	width: 98%;
}
	
	
.news{
	
}

.news dl{
	padding: 0;
	margin: 0 15px;
}

.news dt{
	float: none;
	padding-left: 0;
}

.news dd{
	margin: 0 0 5px 0;
	padding: 0.3em 0 0.3em 0;
}

}

/*===========================================================================================================================================
=============================================================================================================================================

	スマホ

=============================================================================================================================================
===========================================================================================================================================*/
@media screen and (max-width: 699px) {
.bnr-left{
	padding: 0;
}

.bnr-right{
	padding: 0;
}
	
	.pc_img{
		display: none;
	}

.saishin_news_box{
	margin: 0px auto;
	padding: 5px 0px 0px;
	width: 95%;
}
.saishin_news_box1{
	margin: 5px;
	padding: 0px;
	border-width: 1px;
	border-color: #ACBED6;
	border-style: solid;
	width: 95%;
}

.saishin_news_tit{
	font-size: 1em;
	color: #000000;
	font-weight: bold;
	text-align: center;
	margin: 0;
	padding: 3px 0px;
	background-color: #DEEAF6;
	width: 100%;
}

.saishin_news{
	margin: 10px;
	padding: 0px;
	width: 95%;
}
	
.news{
	
}
	
.saishin_news .news dl {
	display: block;
    flex-wrap: nowrap;
}


.news dl{
	padding: 0;
	margin: 0 3px 5px 0;
}

.news dt{
	float: none;
	padding-left: 0;
}

.news dd{
	margin: 0;
	padding: 0.2em 0 0.2em 0;
}
	
.line_sp_box{
	padding: 10px 20px 0 0;
}
	
.line_sp_box img{
	width: 100%;
}
	
.ado_box_r{
	display: none;
}
	
.ado_box_r2{
	display: none;
}
}



@media print, screen and (min-width: 768px) {
			.sp_img{
		display: none;
	}

/* イラスト部分 */.gazo_box{
margin: 0px;
padding: 0px;
float: left;
clear: both;
width: 850px;
}

.gazo_g{
margin: 0px;
padding: 0px;
}
.sumaho_gazo_box{
display: none;
}

.gazo_g_2{
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	margin: 30px 0px 0px;
	padding: 10px;
	border-width: 1px;
	border-color: #3F3F3F;
	border-style: solid;
}
	
.sp_tbl{
	max-width: 850px;
	margin: 0 auto;
}
	
.sp_tbl td{
	margin: 0;
	padding: 0;
}

.main_l{
margin: 0px;
padding: 0px;
float: left;
width: 608px;
}

.btn_box{
margin: 13px 0px 0px 4px;
padding: 0px;
width: 850px;
}

.btn_box1{
margin: 0px;
padding: 0px;
float: left;
width: 850px;
}

.btn_box2{
margin: 0px;
padding: 10px 0 10px 0;
float: left;
width: 850px;
	background: #c7eafe;
}

.btn_box2_1{
margin: 0px;
padding: 0px;
width: 850px;
}

.btn_box_1box{
margin: 0px 20px 0px 20px;
padding: 0px;
}

.btn_box_1g{
margin: 0px;
padding: 0px;
}
	
	.btn_box_1g a{
		padding: 0 5px 0 5px;
	}

.btn_box3{
margin: 0px;
padding: 0px;
float: left;
width: 850px;
}
.main_r{
margin: 0px;
padding: 0px;
float: left;
width: 242px;
}

.main_r_m{
margin: 0px 0px 0px 1px;
padding: 0px;
width: 238px;
}

.topics{
font-size: 0.8em;
line-height: 130%;
}

.td topics2{
margin: 0px;
padding: 0px;
height: 390px;
overflow: auto;
}/* サブメイン部分 */
.sub_main_box{
	margin: 0px;
	padding: 0px;
	float: left;
	clear: both;
	width: 850px;
}
	.jyohou_box{
margin: 10px 0px 0px 2px;
padding: 0px;
width: 600px;
}
	.jyohou_box1{
margin: 0px;
padding: 0px;
float: left;
width: 600px;
}

.jyohou_box2{
margin: 0px;
padding: 0px;
float: left;
width: 600px;
background-image: url('../img/jyouhou_waku02.jpg');
background-repeat: repeat-y;
}

.jyohou_btn_box{
margin: 0px 0px 0px 8px;
padding: 0px;
}

.jyohou_btn{
margin: 0px;
padding: 0px;
float: left;
}

.jyohou_btn1{
margin: 0px 0px 0px 7px;
padding: 0px;
float: left;
}

.jyohou_box3{
margin: 0px;
padding: 0px;
float: left;
width: 600px;
}

.sub_main_l{
margin: 15px 0px 0px;
padding: 0px;
float: left;
width: 290px;
}

.sub_main_l_g{
margin: 0px;
padding: 0px;
}

.sub_main_n{
margin: 15px 0px 0px;
padding: 0px;
float: left;
width: 225px;
}

.sub_main_n_g{
margin: 0px 0px 0px 3px;
padding: 0px;
}

.sub_main_r{
margin: 0px;
padding: 0px;
float: left;
width: 335px;
}

.sub_main_r1{
margin: 15px 0px 0px;
padding: 0px;
float: left;
width: 335px;
}

.sub_main_r2{
margin: 5px 0px 0px;
padding: 0px;
float: left;
width: 335px;
}

.sub_main_r2_m{
font-size: 0.8em;
line-height: 130%;
margin: 0px;
padding: 0px;
width: 335px;
}/* 地図 */
.kakudai{
font-size: 0.8em;
line-height: 130%;
text-align: center;
margin: 3px 0px 0px;
padding: 0px;
}
.sumaho_owabi_box{
	display: none;
}

.owabi_box{
	margin: 15px 0px 0px 0px;
	padding: 0px;
}

.owabi_waku{
	padding: 0px;
	border-width: 1px;
	border-color: #09C;
	border-style: solid;
	width: 238px;
}

.owabi_title{
	padding:5px;
	letter-spacing:5px;
	font-size:0.85em;
	font-weight:bold;
	text-align:center;
	background-color:#E2EBFE;
}

.owabi_text{
	font-size:0.85em;
	line-height:170%;
	padding:5px 0px 5px 00px;
	text-align: center;
}

.raberu2_box{
	margin: 0px;
	padding: 0px;
}

.raberu2_box1{
	margin: 20px 0px 10px 0px;
	padding: 0px;
}

.raberu2_box_btn{
	margin: 0px;
	padding: 0px;
	width: 238px;
}

.raberu2_m{
	font-size: 1.2em;
	font-weight: bolder;
	text-align: center;
}

.raberu2_m A {
	color: #000000;
	text-decoration: none;
	margin-bottom: -1px;
	padding: 5px;
	border-width: 1px;
	border-color: #000000;
	border-style: solid;
	background-color: #FFFFFF;
	display: block;
}

.raberu2_m A:VISITED{
	color: #000000;
	text-decoration: none;
}

.raberu2_m A:HOVER{
	color: #000000;
	text-decoration: none;
	border-width: 1px;
	border-color: #000000;
	border-style: solid;
	background-color: #FFFF66;
}}
@media print, screen and (max-width: 767px) {
/* イラスト部分 */.gazo_box{
display: none;
}

.sumaho_gazo_box{
width: 100%
}

.sumaho_gazo_g{
margin: 0px;
padding: 0px;
}

.gazo_g_2{
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	margin: 30px 0px 0px;
	padding: 10px;
	border-width: 1px;
	border-color: #3F3F3F;
	border-style: solid;
}

.main_news{
}
	
	.sp_tbl{
		width: 100%;
	}
	
.sp_tbl td{
		display: block;
		width: 100%;
}
	
.sp_tbl img{
		width: 100%;
		height: auto;
	margin: 5px auto 5px auto;
}
	
.main_l{
display: none;
}
	
.btn_box{
display: none;
}

.main_r{
margin: 0px;
padding: 0px;
width: 100%;
}

.main_r_m{
margin: 0px auto;
padding: 0px;
width: 238px;
}

.topics{
font-size: 0.8em;
line-height: 130%;
}

.td topics2{
margin: 0px;
padding: 0px;
height: 390px;
overflow: auto;
}/* サブメイン部分 */
.sub_main_box{
	display: none;
}

.jyohou_box{
margin: 10px 0px 0px 2px;
padding: 0px;
width: 600px;
}

.jyohou_box1{
margin: 0px;
padding: 0px;
float: left;
width: 600px;
}

.jyohou_box2{
margin: 0px;
padding: 0px;
float: left;
width: 600px;
background-image: url('../img/jyouhou_waku02.jpg');
background-repeat: repeat-y;
}

.jyohou_btn_box{
margin: 0px 0px 0px 8px;
padding: 0px;
}

.jyohou_btn{
margin: 0px;
padding: 0px;
float: left;
}

.jyohou_btn1{
margin: 0px 0px 0px 7px;
padding: 0px;
float: left;
}

.jyohou_box3{
margin: 0px;
padding: 0px;
float: left;
width: 600px;
}

.sub_main_l{
margin: 15px 0px 0px;
padding: 0px;
float: left;
width: 290px;
}

.sub_main_l_g{
margin: 0px;
padding: 0px;
}

.sub_main_n{
margin: 15px 0px 0px;
padding: 0px;
float: left;
width: 225px;
}

.sub_main_n_g{
margin: 0px 0px 0px 3px;
padding: 0px;
}

.sub_main_r{
margin: 0px;
padding: 0px;
float: left;
width: 335px;
}

.sub_main_r1{
margin: 15px 0px 0px;
padding: 0px;
float: left;
width: 335px;
}

.sub_main_r2{
margin: 5px 0px 0px;
padding: 0px;
float: left;
width: 335px;
}

.sub_main_r2_m{
font-size: 0.8em;
line-height: 130%;
margin: 0px;
padding: 0px;
width: 335px;
}/* 地図 */
.kakudai{
font-size: 0.8em;
line-height: 130%;
text-align: center;
margin: 3px 0px 0px;
padding: 0px;
}

.owabi_box{
display: none;
}
.sumaho_owabi_box{
	margin: 15px 0px 0px 0px;
	padding: 0px;
}

.sumaho_owabi_waku{
	padding: 0px;
	margin: 0 auto;
	border: solid 1px #09C;
	width: 300px;
}

.sumaho_owabi_title{
	padding:5px;
	letter-spacing:5px;
	font-size:0.85em;
	font-weight:bold;
	text-align:center;
	background-color:#E2EBFE;
}

.sumaho_owabi_text{
	font-size:0.85em;
	line-height:170%;
	padding:5px 0px 5px 00px;
	text-align: center;
}

.raberu2_box{
	margin: 0px;
	padding: 0px;
}

.raberu2_box1{
	margin: 20px 0px 10px 0px;
	padding: 0px;
}

.raberu2_box_btn{
	margin: 0px;
	padding: 0px;
	width: 238px;
}

.raberu2_m{
	font-size: 1.2em;
	font-weight: bolder;
	text-align: center;
}

.raberu2_m A {
	color: #000000;
	text-decoration: none;
	margin-bottom: -1px;
	padding: 5px;
	border-width: 1px;
	border-color: #000000;
	border-style: solid;
	background-color: #FFFFFF;
	display: block;
}

.raberu2_m A:VISITED{
	color: #000000;
	text-decoration: none;
}

.raberu2_m A:HOVER{
	color: #000000;
	text-decoration: none;
	border: solid 1px #000000;
	background-color: #FFFF66;
}
}

/* 2023/07/10 */	
.topics_sp {	
    display: none;	
}	
@media screen and (max-width: 767px) {	
.main_r_m {	
    width: unset;	
    display: flex;	
    flex-direction: column;	
}	
.main_r_m table {	
    width: unset;	
}	
td {	
    background: none;	
}	
.topics_sp {	
    display: block;	
    width: 94%;	
    height: auto;	
    margin: 5px auto 10px auto;	
background-color: #f9ba46;
    padding-left: 3%;
    letter-spacing: -2px;
    font-size: 1.1rem;
}	
}