@charset "UTF-8";
/* CSS Document */

/*ヘッダー*/
/*PC*/
@media only screen and (min-width: 1025px) {
	
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	header {
		z-index: 100;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 60px;
		background: #fff;
	}
	
	header a#logo {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		width: 180px;
		height: auto;
	}
	
	header a#logo img {
		display: block;
		position: relative;
		width: 100%;
		height: auto;
		object-fit: cover;
	}
}

/*フッター*/
/*PC*/
@media only screen and (min-width: 1025px) {
	
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	footer {
		position: relative;
		width: 100%;
		height: auto;
		padding: 40px 0 15px 0;
		background: #FFF5DA;
	}
	
	footer .credit {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	footer .credit p {
		font-size: 12px;
		font-weight: 400;
		letter-spacing: 0.5px;
		line-height: 12px;
		text-align: center;
	}
}

/*トップページ*/
/*PC*/
@media only screen and (min-width: 1025px) {
	
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	/*メインビジュアル*/
	#top_mv {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*共通*/
	.top_title {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 20px auto;
	}
	
	.top_title h2 {
		position: relative;
		padding: 3px 0 3px 15px;
		font-size: 18px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 18px;
		text-align: left;
	}
	
	.top_title h2::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%) translateX(0);
		width: 7px;
		height: 100%;
		background: #4d95e5;
	}
	
	/*ナビゲーション*/
	#top_nav {
		position: relative;
		width: 96%;
		height: auto;
		margin: 40px auto 40px auto;
	}
	
	#top_nav .con {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		position: relative;
		width: 100%;
		height: auto;
	}
	
	#top_nav .con a {
		display: block;
		position: relative;
		width: 48%;
		height: auto;
		padding: 25px 0 25px 0;
		margin: 0 1% 0 1%;
		border: solid 2px #4d95e5;
		border-radius: 4px;
		box-sizing: border-box;
		text-align: center;
	}
	
	#top_nav .con a font {
		font-size: 16px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: center;
		color: #4d95e5;
	}
	
	/*イベント告知*/
	#top_info {
		position: relative;
		width: 96%;
		height: auto;
		margin: 0 auto 40px auto;
	}
	
	#top_info a {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		height: auto;
	}
	
	#top_info a .img {
		position: relative;
		width: 40%;
		height: 100px;
		overflow: hidden;
	}
	
	#top_info a .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 100px;
		object-fit: cover;
		object-position: center;
	}
	
	#top_info a .text {
		position: relative;
		width: 55%;
		height: auto;
	}
	
	#top_info a .text h3 {
		font-size: 16px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: left;
		color: #202020;
	}
	
	#top_info a .text .cat {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		width: 100%;
		height: auto;
		margin: 10px auto 6px auto;
	}
	
	#top_info a .text .cat font {
		display: block;
		position: relative;
		margin: 0 0 0 0;
		padding: 3px 10px 4px 10px;
		font-size: 12px;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 12px;
		text-align: left;
		color: #fff;
		background: #0054A6;
		border-radius: 5px;
	}
	
	#top_info a .text .tag {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 10px auto;
	}
	
	#top_info a .text .tag font {
		display: block;
		position: relative;
		margin: 0 5px 0 0;
		font-size: 12px;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		letter-spacing: 0.5px;
		line-height: 12px;
		text-align: left;
		color: #8E8E8E;
	}
	
	#top_info a .text span {
		display: block;
		position: relative;
		width: 180px;
		height: auto;
		padding: 10px 0 10px 0;
		font-size: 12px;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 12px;
		text-align: center;
		color: #fff;
		background: #202020;
		border-radius: 3px;
	}
	
	#top_info a .text span::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 15px;
		transform: translateY(-50%) translateX(0);
		width: 0;
		height: 0;
		border-style: solid;
		border-top: 4px solid transparent;
		border-bottom: 4px solid transparent;
		border-left: 7px solid #fff;
		border-right: 0;
	}
	
}