/* CSS Document */
div.catchcopy {
    background-color: #103656;
}
div.catchcopy div.inner > * {
    color: #fff;
}
header{
	background-color: #fff !important;
	position: -webkit-sticky;
}
footer{
	background-color: #fff;
}
@media screen and (max-width:767px){
	/*子ページ
	---------------------------------------------------*/
	/*共通*/
	div.inner.sitemenu {
    padding: 0 !important;
	}
	div.child_title{
		height:200px;
		position:relative;
		z-index:1;
		overflow:hidden;
	}
	div.child_title h2{
		font-size:20px;
		color:#000;
		position:absolute;
		top:50%;
		left:50%;
		text-align:center;
		transform:translate(-50%,-50%);
	}
	div.child_title h2 p{
		font-size:1.4em;
		font-weight:bold;
		color:#000;
	}
	div.news{
		width: 100%;
		padding: 50px 0;
	}
	div.news div.news_inner{
		width: 100%;
		padding: 0 1em;
		box-sizing: border-box;
	}
	div.news div.news_inner article{
		position: relative;
		z-index: 1;
		border-bottom: 2px dotted #314b6e;
		width: 100%;
		box-sizing: border-box;
	}
	div.news div.news_inner article:first-child{
		border-top: 2px dotted #314b6e;
	}
	div.news div.news_inner article a{
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 5;
		display: block;
		transition: all 0.3s ease;
	}
	div.news div.news_inner article:hover{
		background-color:rgba(224,243,231,0.5);
	}
	div.news div.news_inner article div.news_box{
		width: 100%;
		display: flex;
		flex-flow: row-reverse;
	}
	div.news div.news_inner article div.news_box time{
		width: 50%;
		line-height: 50px;
		font-size: 12px;
	}
	div.news div.news_inner article div.news_box div.title{
		width: 50%;
		line-height: 50px;
	}
	div.news div.news_inner article div.news_box div.title h2{
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		box-sizing: border-box;
		font-size: 14px;
	}
	div.pagination{
		display: table;
		margin: 0 auto;
		margin-top: 50px;
	}
	ul.pagination{
		list-style: none;
		list-style-position: outside;
		margin: 0 auto;
		display: flex;
	}
	ul.pagination li{
		width: 2rem;
		height: 2rem;
		box-sizing: border-box;
		margin: 0 0.5rem;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
	}
}
@media screen and (min-width:768px) and (max-width:1099px){
		/*子ページ
	---------------------------------------------------*/
	/*共通*/
	div.child_title{
		height:300px;
		position:relative;
		z-index:1;
		overflow:hidden;
	}
	div.child_title h2{
		font-size:32px;
		color:#000;
		width:100%;
		position:absolute;
		top:50%;
		left:50%;
		text-align:center;
		transform:translate(-50%,-50%);
	}
	div.child_title h2 p{
		font-size:70px;
		font-weight:bold;
		color:#000;
	}
	div.news{
		width: 100%;
		padding: 70px 0;
	}
	div.news div.news_inner{
		width: 100%;
		padding: 0 1em;
		box-sizing: border-box;
	}
	div.news div.news_inner article{
		position: relative;
		z-index: 1;
		border-bottom: 2px dotted #314b6e;
		padding: 0 15px;
		width: 100%;
		box-sizing: border-box;
	}
	div.news div.news_inner article:first-child{
		border-top: 2px dotted #314b6e;
	}
	div.news div.news_inner article a{
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 5;
		display: block;
		transition: all 0.3s ease;
	}
	div.news div.news_inner article:hover{
		background-color:rgba(224,243,231,0.5);
	}
	div.news div.news_inner article div.news_box{
		width: 100%;
		display: flex;
		flex-flow: row-reverse;
	}
	div.news div.news_inner article div.news_box time{
		width: 30%;
		line-height: 50px;
	}
	div.news div.news_inner article div.news_box div.title{
		width: 70%;
		line-height: 50px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	div.pagination{
		display: table;
		margin: 0 auto;
		margin-top: 50px;
	}
	ul.pagination{
		list-style: none;
		list-style-position: outside;
		margin: 0 auto;
		display: flex;
	}
	ul.pagination li{
		width: 2rem;
		height: 2rem;
		box-sizing: border-box;
		margin: 0 0.5rem;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
	}
}
@media screen and (min-width:1100px){
	/*子ページ
	---------------------------------------------------*/
	/*共通*/
	div.child_title{
		height:300px;
		position:relative;
		z-index:1;
		overflow:hidden;
	}
	div.child_title h2{
		font-size:32px;
		color:#000;
		position:absolute;
		top:50%;
		left:50%;
		text-align:center;
		transform:translate(-50%,-50%);
	}
	div.child_title h2 p{
		font-size:70px;
		font-weight:bold;
		color:#000;
	}
	div.news{
		width: 100%;
		padding: 100px 0;
	}
	div.news div.news_inner{
		width: 800px;
		margin: 0 auto;
	}
	div.news div.news_inner article{
		position: relative;
		z-index: 1;
		border-bottom: 2px dotted #314b6e;
		padding: 0 15px;
		width: 100%;
		box-sizing: border-box;
	}
	div.news div.news_inner article:first-child{
		border-top: 2px dotted #314b6e;
	}
	div.news div.news_inner article a{
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 5;
		display: block;
		transition: all 0.3s ease;
	}
	div.news div.news_inner article:hover{
		background-color:rgba(224,243,231,0.5);
	}
	div.news div.news_inner article div.news_box{
		width: 100%;
		display: flex;
		flex-flow: row-reverse;
	}
	div.news div.news_inner article div.news_box time{
		width: 30%;
		line-height: 50px;
	}
	div.news div.news_inner article div.news_box div.title{
		width: 70%;
		line-height: 50px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	div.pagination{
		display: table;
		margin: 0 auto;
		margin-top: 50px;
	}
	ul.pagination{
		list-style: none;
		list-style-position: outside;
		margin: 0 auto;
		display: flex;
	}
	ul.pagination li{
		width: 2rem;
		height: 2rem;
		box-sizing: border-box;
		margin: 0 0.5rem;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
	}
}
