@charset "utf-8";
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* clearfix */	
.clearfix:after {content: "";display: block;clear: both;}
/* flex */	
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
/*------------------------------------------------------------
	ttlBox
------------------------------------------------------------*/
.ttlBox {
	max-width: 1100px;
	margin: 0 auto 44px;
	padding: 0 30px;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
}
.ttlBox h2 {
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	color: #BBBBBB;
}
.ttlBox h2 span {
	display: block;
	font-size: 4rem;
	color: #204B7D;
	font-weight: 500;
	letter-spacing: 0.2em;
}
#pagePath {
	display: flex;
	flex-wrap: wrap;
}
#pagePath li {
	margin-right: 10px;
	font-size: 1.2rem;
	color: #222222;
}
#pagePath li a {
	margin-right: 10px;
	color: #222222;
}
#pagePath li a:hover {
	opacity: 0.7;
}
#pagePath li:last-child {
	margin-right: 0;
}

@media all and (max-width: 896px) {
	.ttlBox {
		margin: 0 10px 49px;
		padding: 0;
		display: block;
	}
	.ttlBox h2 {
		font-size: 1.3rem;
		letter-spacing: 0;
	}
	.ttlBox h2 span {
		margin-bottom: 7px;
		font-size: 2.8rem;
		letter-spacing: 0.2em;
	}
	#pagePath {
		display: none;
	}
}

/*------------------------------------------------------------
	comWhiteBox
------------------------------------------------------------*/
.comWhiteBox {
	max-width: 1200px;
	margin: 0 auto;
	padding: 98px 0;
	border-radius: 30px;
	background-color: white;
}
.content {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 30px;
}
.over {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}
@media all and (max-width: 896px) {
	.content {
		padding: 0 30px;
	}
	.comWhiteBox {
		padding: 43px 4px;
		border-radius: 10px;
	}
}

/*------------------------------------------------------------
	comLink
------------------------------------------------------------*/
.comLink {
	width: 300px;
	margin: 29px auto 0;
	padding-left: 50px;
}
.comLink a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 60px;
	padding: 5px;
	border-radius: 50px;
	font-weight: bold;
	letter-spacing: 0;
	color: white;
	background-color: #204B7D;
	box-sizing: border-box;
}
.comLink a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	.comLink {
		width: auto;
		max-width: 300px;
		margin: 0 auto;
		padding: 0;
	}
}

/*------------------------------------------------------------
	comLink02
------------------------------------------------------------*/
.comLink02 {
	width: 200px;
}
.comLink02 a {
	display: flex;
	align-items: center;
	min-height: 45px;
	padding: 5px 18px;
	font-size: 1.3rem;
	letter-spacing: 0.2em;
	font-weight: 500;
	justify-content: flex-end;
	color: #204B7D;
	background-color: #F2F2F2;
	box-sizing: border-box;
	position: relative;
}
.comLink02 a:after {
	width: 100px;  
	height: 1px;
	background-color: #204B7D;
	position: absolute;  
	top: 50%;
	transform: translateY(-50%);
	left: 0;  
	content: ""; 
}
.comLink02 a:hover {
	opacity: 0.7;
}
.comLink02-blue a {
	color: white;
	background-color: #204B7D;
}
.comLink02-blue a::after {
	background-color: white;
}
@media all and (max-width: 896px) {
	.comLink02 {
		margin: 0 auto;
	}
}

/*------------------------------------------------------------
	common
------------------------------------------------------------*/
.newsUl {
	display: flex;
	flex-wrap: wrap;
}
.newsUl li {
	width: calc((100% - 40px) / 3);
	margin: 0 20px 35px 0;
}
.newsUl li:nth-child(3n) {
	margin-right: 0;
}
.newsUl li a {
	display: block;
}
.newsUl li a:hover {
	opacity: 0.7;
}
.newsUl li .photo {
	margin-bottom: 12px;
	border-radius: 10px;
	overflow: hidden;
}
.newsUl li .photos {
	margin-bottom: 12px;
	border-radius: 10px;
	overflow: hidden;
}
.newsUl li .photo img {
	width: 100%;
}
.newsUl li .photos img {
	width: 100%;
}
.newsUl li .photos div{
 background-size: cover;
 background-repeat: no-repeat;
 background-position: center center;
 width: 100%;
 height: 100%;
}
.newsUl li p {
	margin-bottom: 10px;
	font-size: 1.4rem;
	line-height: 1.8;
}
.n-mb p {
    margin-bottom: 0px!important;
}
.newsUl li .ttl {
	margin-bottom: 11px;
	font-size: 1.8rem;
	font-weight: 500;
	color: #204B7D;
}
.newsUl li .ttls {
 height: 7vh;
 margin-bottom: 11px;
 font-size: 1.8rem;
 font-weight: 500;
 color: #204B7D;
 overflow: hidden;
 display: -webkit-box;
 -webkit-box-orient: vertical;
 -webkit-line-clamp: 2;
}
.newsUl li .ttls2 {
    height: 8vh;
	margin-bottom: 0px;
	font-size: 1.6rem;
	font-weight: 500;
	color: #ffffff;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.newsUl li .date {
	text-align: right;
	font-size: 1.3rem;
	font-weight: bold;
	color: #888888;
	letter-spacing: 0;
}
.newsUl li .dates {
	text-align: right;
	font-size: 1.3rem;
	font-weight: bold;
	color: #888888;
	letter-spacing: 0;
}
.newsUl li .dates2 {
/*
    display: flex;
    justify-content: space-between;
*/
    display: block;
	text-align: right;
	font-size: 1.5rem;
	font-weight: bold;
	color: #ffffff;
	letter-spacing: 0;
}
.newsUl li .date .txtSpan {
	padding: 1px 2px 0px;
	box-sizing: border-box;
	min-width: 80px;
	display: inline-block;
	margin: 0 0 5px 10px;
	font-size: 1.3rem;
	font-weight: 500;
	color: white;
	letter-spacing: 0;
	text-align: center;
	background-color: #204B7D;
	border-radius: 5px;
}
.newsUl li .dates .txtSpan {
	padding: 1px 2px 0px;
	box-sizing: border-box;
	min-width: 80px;
	display: inline-block;
	margin: 0 0 5px 10px;
	font-size: 1.3rem;
	font-weight: 500;
	color: white;
	letter-spacing: 0;
	text-align: center;
	background-color: #204B7D;
	border-radius: 5px;
}
.newsUl li .dates2 .txtSpan {
    padding: 1px 2px 0px;
	box-sizing: border-box;
	min-width: 80px;
	display: inline-block;
	font-size: 1.3rem;
	font-weight: 500;
	color: #204B7D;
	letter-spacing: 0;
	text-align: center;
	background-color: #ffffff;
	border-radius: 5px;
}

@media all and (max-width: 896px) {
    .newsUl li {
        width: 100%;
    }
}

/*------------------------------------------------------------
	headLine01
------------------------------------------------------------*/
.headLine01 {
	margin-bottom: 110px;
	font-weight: 500;
	letter-spacing: 0;
	color: white;
}
.headLine01 span {
	margin-bottom: 10px;
	display: block;
	font-size: 4rem;
	letter-spacing: 0.2em;
	line-height: 1.5;
}
.headLine01-black {
	margin-bottom: 149px;
	color: #BBBBBB;
}
.headLine01-black span {
	color: #222222;
}
@media all and (max-width: 896px) {
	.headLine01 span {
		margin-bottom: 7px;
		font-size: 2.4rem;
	}
	.headLine01 {
		margin-bottom: 29px;
		font-size: 1.3rem;
	}
}

/*------------------------------------------------------------
	common
------------------------------------------------------------*/
@media all and (max-width: 896px) {
}

/*------------------------------------------------------------
	pageNavi
------------------------------------------------------------*/
.pageNavi {
	clear: both;
	text-align: center;
	font-family: 'Roboto Condensed', sans-serif;
}
.pageNavi li {
	margin: 0 3px;
	font-weight: 500;
	display: inline-block;
	line-height: 1.2;
}
.pageNavi li span,
.pageNavi li a {
	min-width: 35px;
	min-height: 35px;
	box-sizing: border-box;
	padding: 10px 13px;
    margin: 2px;
/*	font-size: 2rem;*/
	letter-spacing: 0.1em;
	display: inline-block;
	color: #204B7D;
	text-align: center;
	border-radius: 100%;
	background-color: #F5F5F5;
}
.pageNavi li .current {
	color: white;
	background-color: #204B7D;
}
.pageNavi li img {
	vertical-align: middle;
}

@media all and (min-width: 897px) {
	.pageNavi li a:hover {
		color: white;
		background-color: #204B7D;
	}
	.pageNavi .back a:hover {
		background: #204B7D url(../img/common/prev-white.png) no-repeat center;
		background-size: 12px auto;
	}
	.pageNavi .back a:hover img {
		visibility: hidden;
	}
	.pageNavi .next a:hover {
		background: #204B7D url(../img/common/next-white.png) no-repeat center;
		background-size: 12px auto;
	}
	.pageNavi .next a:hover img {
		visibility: hidden;
	}
}

@media all and (max-width: 896px) {
	.pageNavi li span, .pageNavi li a {
		min-width: 35px;
		min-height: 35px;
		font-size: 1.5rem;
		padding: 9px 3px 5px;
	}
	.pageNavi li a img {
		width: 8px;
	}
	.pageNavi {
		margin: 0 -20px;
	}
}

@media all and (max-width: 389px) {
	.contactBox .content {
		padding: 0 20px;
	}
}

@media all and (min-width: 897px) and (max-width: 1200px) {
}