@charset "utf-8";



/* News List and Event List
------------------------------------------------------------- */

#news_box {
	margin: 0;
}

#news_box h2, #event_box h2 {
	margin: 20px 0 0 0;
	padding: 30px 0 25px 0;
	font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-weight: 200;
	text-align: center;
	font-size: 1.5rem;
	line-height: 1.6rem;
	letter-spacing: 0.05em;
	clear: both;
	position: relative;
}

#news_box h2:before, #event_box h2:before {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -30px;
	margin-left: -30px;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background-color: #e5ebee;
	z-index: -1;
}

#news_box h2 span, #event_box h2 span {
	display: block;
	font-size: 0.85rem;
	color: #29abe2;
}

dl.news_list, dl.event_list {
	margin: 0 10px;
	padding: 0;
	line-height: normal;
	font-size: 0;
	border-bottom: 1px solid #d5d5d5;
}

dl.news_list dt, dl.event_list dt {
	margin: 0;
	padding: 10px 5px 7px 5px;
	font-size: 0.85rem;
	font-weight: bold;
	line-height: 1.2rem;
	border-top: 1px solid #d5d5d5;
}

dl.news_list dt:first-child {
	border-top: 1px solid #d5d5d5;
}

dl.news_list dd, dl.event_list dd {
	margin: 0;
	padding: 0 5px 10px 5px;
	font-size: 0.85rem;
	font-weight: normal;
	line-height: 1.5rem;
}



/* MoreInformation Button
------------------------------------------------------------- */

p.btn_more {
	margin: 15px 10px 40px 10px;
	padding: 0px;
	text-align: center;
	font-size: 0.9rem;
	position: relative;
}

p.btn_more a {
	display: inline-block;
	position: relative;
	margin: 0px;
	padding: 10px;
	height: 100%;
	width: 100%;
	text-align: center;
	line-height: normal;
	color: #333;
	border: 1px solid #d5d5d5;
	background-color: #f5f5f5;
	transition: 0.3s all;
}

p.btn_more a:hover {
	text-decoration: none;
	border: 1px solid #bfc7cb;
	background-color: #e5ebee;
	transition: 0.3s all;
}

p.btn_more a:after {
	content: "\f101";
	font-family: FontAwesome;
	margin-left: 5px;
}



/* Banner
------------------------------------------------------------- */

#banner_box {
	margin: 0;
	padding: 20px 20px 10px 20px;
	border-top: 1px solid #d5d5d5;
}

.bn_large_box {
	width: 100%;
	padding: 0 0 10px 0;
}

.bn_large_box p {
	margin-bottom: 20px;
	text-align: center;
}

.bn_large_box p a img {
	width: 100%;
	max-width: 320px;
}

ul.banner_list {
	margin: 0;
	padding: 0;
}

ul.banner_list li {
	margin: 0 0 10px 0;
	padding: 0;
	list-style-position: outside;
	list-style-type: none;
	text-align: center;
	width: 100%;
}

ul.banner_list li img {
	width: auto;
	height: auto;
}

ul.banner_list li.banner_txt a {
	display: block;
	margin: 0;
	padding: 10px;
	width: 100%;
	height: auto;
	text-align: center;
	line-height: normal;
	color: #333;
	border: 1px solid #d5d5d5;
	background-color: #f5f5f5;
	transition: 0.3s all;
}

ul.banner_list li.banner_txt a:hover {
	text-decoration: none;
	border: 1px solid #bfc7cb;
	background-color: #e5ebee;
	transition: 0.3s all;
}





/* for MiddleSize(MainMenu)
-------------------------------------------------------------------------------- */
@media print, screen and (min-width:480px) {

	/* Banner
	------------------------------------------------------------- */

	#banner_box {
		padding: 20px 20px 10px 20px;
	}

	ul.banner_list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
	}

	ul.banner_list li {
		margin: 0 0 10px 0;
		padding: 0;
		width: 48%;
	}

}





/* for MiddleSize
-------------------------------------------------------------------------------- */
@media print, screen and (min-width:788px) {

	/* News List and Event List
	------------------------------------------------------------- */

	#news_box h2, #event_box h2 {
		font-size: 1.7rem;
		line-height: 1.7rem;
	}

	#news_box h2:before, #event_box h2:before {
		margin-top: -35px;
		margin-left: -35px;
		width: 70px;
		height: 70px;
	}

	dl.news_list, dl.event_list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 10px;
		padding: 0;
		font-size: 0;
	}

	dl.news_list dt, dl.event_list dt {
		width: 22%;
		margin: 0;
		padding: 10px;
		font-size: 0.85rem;
		font-weight: normal;
		line-height: 1.5rem;
		border-top: 1px solid #d5d5d5;
	}

	dl.news_list dd, dl.event_list dd {
		width: 78%;
		margin: 0;
		padding: 10px;
		font-size: 0.85rem;
		font-weight: normal;
		line-height: 1.5rem;
		border-top: 1px solid #d5d5d5;
	}

	/* MoreInformation Button
	------------------------------------------------------------- */

	p.btn_more {
		margin: 20px auto 50px auto;
		width: 300px;
	}

	/* Banner
	------------------------------------------------------------- */

	#banner_box {
		padding: 25px 20px 10px 20px;
	}

	ul.banner_list {
		justify-content: flex-start;
	}

	ul.banner_list li {
		margin: 0 1.5% 15px 0;
		padding: 0;
		width: 23.5%;
	}

}





/* for LargeSize
-------------------------------------------------------------------------------- */
@media print, screen and (min-width:980px) {

	/* News List and Event List
	------------------------------------------------------------- */

	dl.news_list dt, dl.event_list dt {
		width: 25%;
		padding-left: 25px;
	}

	dl.news_list dd, dl.event_list dd {
		width: 75%;
	}

	/* Banner
	------------------------------------------------------------- */

	#banner_box {
		padding: 25px 20px 10px 20px;
	}

	ul.banner_list li {
		margin: 0 1% 15px 0;
		padding: 0;
		width: 19%;
	}

}

