@charset "UTF-8";
/* BLUE
-----------------------*/
/* GRAY
-----------------------*/
/* 明朝
-----------------------*/
/* .icon-blank
-----------------------*/
.icon-blank {
	display: inline-block;
	width: 12px;
	height: 11px;
	background: url(/asset/gakuen/common/img/g__icon_blank.png) no-repeat;
	vertical-align: middle;
	margin: 0 0 0 5px;
	position: relative;
}

.tpl-btn .icon-blank {
	display: inline-block;
	vertical-align: middle;
	background: url(/asset/gakuen/common/img/g__icon_blank_white.png) no-repeat;
	margin: 0 0 0 10px;
}

.tpl-btn a:hover .icon-blank {
	background: url(%g__icon_blank%) no-repeat;
}

@media screen and (max-width: 740px) {
	.icon-blank {
		background-size: 10px auto;
		top: -1px;
	}
}

/* .icon-pdf
-----------------------*/
.icon-pdf {
	display: inline-block;
	width: 28px;
	height: 20px;
	background: url(/asset/gakuen/common/img/g__icon_pdf.png) no-repeat;
	vertical-align: bottom;
	margin: 0 0 0 5px;
	position: relative;
	top: 0;
}

.tpl-btn .icon-pdf {
	display: inline-block;
	height: 18px !important;
	vertical-align: middle;
}

@media screen and (max-width: 740px) {
	.icon-pdf {
		background-size: 14px auto;
		top: 5px;
	}
}

/* .tpl-btn
-----------------------*/
.tpl-btn {
	display: inline-block;
	letter-spacing: normal;
	width: 80px;
	text-align: center;
	font-size: 12px;
	padding-bottom: 5px;
}

@media screen and (max-width: 740px) {
	.tpl-btn {
		width: auto;
		min-width: 50px;
		vertical-align: top;
		margin: 0 5px;
		padding-bottom: 10px;
		box-sizing: border-box;
	}
}

.tpl-btn a {
	display: block;
	padding: 1px;
	position: relative;
}

.tpl-btn a::before {
	content: "";
	display: block;
	height: 1px;
	width: 20px;
	background-color: white;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	transform: rotate(0deg);
	border: none;
	transition-property: transform, opacity;
	transition-duration: 0.5s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.tpl-btn a::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: white;
	opacity: 0.4;
	transform: scaleY(0);
	transition-property: transform;
	transition-duration: 0.5s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

@media screen and (max-width: 740px) {
	.tpl-btn a {
		display: table;
		width: 100%;
	}
}

.tpl-btn a:hover {
	text-decoration: none;
}

@media screen and (min-width: 741px) {
	.tpl-btn a:hover::before {
		opacity: 0;
		transform: translateX(20px);
	}
	.tpl-btn a:hover::after {
		transform: scaleY(1);
	}
}

.tpl-btn a span {
	display: block;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	padding: 0 5px;
	box-sizing: border-box;
	font-size: 16px;
	font-family: "Sawarabi Mincho",游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}

@media screen and (max-width: 740px) {
	.tpl-btn a span {
		line-height: 1.2;
		display: table-cell;
		vertical-align: middle;
		padding-top: 5px;
		padding-bottom: 5px;
	}
}

/* .tpl-btn.large
-----------------------*/
.tpl-btn.large {
	width: 100%;
	font-size: 15px;
	padding-bottom: 0;
	margin: 0;
}

.tpl-btn.large a {
	height: 70px;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: center;
	/* Safari */
	justify-content: center;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
}

.tpl-btn.large a span {
	line-height: 1.375;
	padding: 0 10px;
}

@media screen and (max-width: 740px) {
	.tpl-btn.large a span {
		font-size: 14px;
	}
}

/* .tpl-btn--gray
-----------------------*/
.tpl-btn--gray.is-active {
	padding-bottom: 5px;
}

.tpl-btn--gray a {
	border: 1px solid #D7D7D7;
	background: #FFF;
	color: #333;
	box-sizing: border-box;
}

.tpl-btn--gray.is-active a {
	padding: 0;
	border: 1px solid #03325E;
	color: #FFF;
}

.tpl-btn--gray a span {
	background: #E6E6E6;
}

.tpl-btn--gray a:hover span {
	background: #F6F6F6;
}

.tpl-btn--gray.is-active a span {
	background: #03325E;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
}

/* .tpl-btn--blue
-----------------------*/
.tpl-btn--blue a {
	background: #03325E;
	color: #FFF;
	box-sizing: border-box;
}

/* [ 中央配置ボタン ]
-----------------------*/
.tpl-btn-wrap--center {
	text-align: center;
}

.tpl-btn-wrap--center .tpl-btn.large {
	width: auto;
	min-width: 400px;
}

@media screen and (max-width: 740px) {
	.tpl-btn-wrap--center .tpl-btn.large {
		width: 100%;
		min-width: 0;
	}
}

/* [ 見出し中央 ]
-----------------------*/
.tpl-h1 {
	font-size: 36px;
	font-weight: bold;
	color: #03325E;
}

.tpl-h2 {
	font-size: 48px;
	font-weight: bold;
	font-family: "Sawarabi Mincho", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
	color: #03325E;
	position: relative;
}

.tpl-h2::after {
	content: "";
	display: block;
	width: 60px;
	height: 2px;
	background-color: #03325E;
	position: relative;
	top: 0;
	left: 0;
	right: 0;
	margin: 25px auto 0;
}

.tpl-h3 {
	font-size: 28px;
	font-weight: bold;
	color: #03325E;
}

.tpl-h4 {
	font-size: 20px;
	font-weight: bold;
	color: #03325E;
}

.tpl-h5 {
	font-size: 16px;
	font-weight: bold;
}

.tpl-h1,
.tpl-h2,
.tpl-h3,
.tpl-h4,
.tpl-h5 {
	clear: both;
}

@media screen and (max-width: 740px) {
	.tpl-h1 {
		font-size: 23px;
		font-weight: bold;
		color: #03325E;
	}
	.tpl-h2 {
		font-size: 36px;
	}
	.tpl-h2::after {
		width: 40px;
		margin: 15px auto 0;
	}
	.tpl-h3 {
		font-size: 24px;
	}
	.tpl-h4 {
		font-size: 20px;
	}
	.tpl-h5 {
		font-size: 16px;
	}
}

/* [ 見出し左揃え・罫線ありなし ]
-----------------------*/
.tpl-border-bottom {
	border-bottom: 1px solid #D7D7D7;
}

.tpl-h2.tpl-border-bottom,
.tpl-h3.tpl-border-bottom,
.tpl-h4.tpl-border-bottom,
.tpl-h5.tpl-border-bottom {
	padding-bottom: 10px;
}

/* [ ローカルナビ ]
-----------------------*/
.tpl-local-navi.is-bottom {
	display: none;
}

@media screen and (max-width: 740px) {
	.tpl-local-navi.is-bottom {
		display: block;
	}
}

.tpl-local-navi ul {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
	margin: 0 -20px -20px 0;
}

@media screen and (max-width: 740px) {
	.tpl-local-navi ul {
		-webkit-justify-content: space-between;
		/* Safari */
		justify-content: space-between;
		margin: 0 0 -15px;
	}
}

.tpl-local-navi li {
	width: 230px;
	min-height: 70px;
	margin: 0 20px 20px 0;
}

@media screen and (max-width: 740px) {
	.tpl-local-navi li {
		width: 47%;
		min-height: 60px;
		margin: 0 0 4%;
	}
}

.tpl-local-navi li a {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: center;
	/* Safari */
	justify-content: center;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
	height: 100%;
	font-size: 14px;
	color: #03325E;
	background: #EBF1F6;
	padding: 14px 30px;
	position: relative;
	box-sizing: border-box;
	text-decoration: none;
	text-align: center;
	line-height: 1.5;
}

@media screen and (max-width: 740px) {
	.tpl-local-navi li a {
		font-size: 12px;
		padding: 14px 15px;
	}
}

.tpl-local-navi li a::before {
	content: "";
	display: block;
	width: 10px;
	height: 1px;
	background-color: #03325E;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	transform: translateX(0px);
	border: none;
	transition-property: transform, opacity;
	transition-duration: 0.5s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.tpl-local-navi li a::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: white;
	opacity: 0.4;
	transform: scaleY(0);
	transition-property: transform;
	transition-duration: 0.5s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

@media screen and (min-width: 741px) {
	.tpl-local-navi li a:hover::before {
		opacity: 0;
		transform: translateX(20px);
	}
	.tpl-local-navi li a:hover::after {
		transform: scaleY(1);
	}
}

.tpl-local-navi li a.is-active {
	color: white;
	background: #03325E;
}

.tpl-local-navi li a.is-active::before {
	background-color: white;
}

.tpl-local-navi li a .cursor {
	display: none;
}

.tpl-local-navi .gridfix-sponly {
	display: none;
}

/* [ サブ ローカルナビ ]
-----------------------*/
.tpl-sub-local-navi {
	padding-top: 1px;
}

.tpl-sub-local-navi .tpl-box-border {
	padding-top: 45px;
	padding-bottom: 45px;
}

@media screen and (max-width: 740px) {
	.tpl-sub-local-navi .tpl-box-border {
		padding-top: 20px;
		padding-bottom: 20px;
	}
}

@media screen and (max-width: 740px) {
	.tpl-sub-local-navi {
		padding-top: 20px;
	}
}

.tpl-sub-local-navi__title {
	font-size: 24px;
	color: #03325E;
	font-weight: bold;
	text-align: center;
}

@media screen and (max-width: 740px) {
	.tpl-sub-local-navi__title {
		font-size: 18px;
	}
}

.tpl-sub-local-navi__list {
	font-size: 15px;
	padding-top: 20px;
	text-align: center;
}

@media screen and (max-width: 740px) {
	.tpl-sub-local-navi__list {
		font-size: 12px;
		padding-top: 10px;
		text-align: left;
		margin-left: -10px;
	}
}

.tpl-sub-local-navi__list li {
	display: inline-block;
	margin: 0 0 0 30px;
	padding-bottom: 10px;
}

.tpl-sub-local-navi__list > ul li:first-child {
	margin: 0;
}

@media screen and (max-width: 740px) {
	.tpl-sub-local-navi__list > ul li:first-child {
		margin: 0 0 0 10px;
	}
	.tpl-sub-local-navi__list li {
		float: left;
		width: 46%;
		margin: 0 0 0 10px;
		padding-bottom: 10px;
		box-sizing: border-box;
	}
}

.tpl-sub-local-navi__list li.is-active {
	border-bottom: 3px solid #03325E;
}

.tpl-sub-local-navi__list li a {
	color: #333;
}

.tpl-sub-local-navi__list li.is-active a {
	font-weight: bold;
	color: #03325E;
}

/*[ サブカテゴリ名 ]
-----------------------*/
.tpl-subcate-title-wrap {
	border-top: 1px solid #023462;
	border-bottom: 1px solid #023462;
	margin: 50px 0;
	padding: 45px 0;
	text-align: center;
	color: #023462;
	font-size: 24px;
}

@media screen and (max-width: 740px) {
	.tpl-subcate-title-wrap {
		margin: 25px -10px;
		padding: 25px 10px;
		font-size: 18px;
	}
}

/*[ キャプション ]
-----------------------*/
.tpl-caption {
	font-size: 15px;
	line-height: 1.4;
	display: inline-block;
	padding-top: 10px;
}

@media screen and (max-width: 740px) {
	.tpl-caption {
		font-size: 10px;
		float: left;
	}
}

/*[ 画像右&左系 ]
-----------------------*/
.tpl-col2-wrap {
	clear: both;
	overflow: hidden;
}

.tpl-col2-wrap__text-wrap__title {
	font-weight: bold;
	color: #03325E;
	font-size: 20px;
	padding-bottom: 10px;
}

.tpl-col2-wrap__text-wrap__attr {
	display: inline-block;
	padding: 3px 10px;
	background: #EBF1F6;
	margin-bottom: 20px;
}

@media screen and (max-width: 740px) {
	.tpl-col2-wrap__text-wrap__title {
		font-size: 20px !important;
		padding-bottom: 5px;
		line-height: 1.5 !important;
	}
	.tpl-col2-wrap__text-wrap__attr {
		padding: 1px 10px;
		margin-bottom: 10px;
	}
}

@media screen and (max-width: 740px) {
	.tpl-col2-wrap__img-wrap {
		width: 100%;
	}
	.tpl-col2-wrap__img-wrap p {
		overflow: hidden;
	}
	.tpl-col2-wrap__img-wrap img {
		width: 100%;
	}
}

/*[ 画像右 - 回り込み無し ]
-----------------------*/
.tpl-col2-wrap--img-right {
	display: table;
	width: 100%;
}

@media screen and (max-width: 740px) {
	.tpl-col2-wrap--img-right {
		display: block;
	}
}

.tpl-col2-wrap--img-right .tpl-col2-wrap__text-wrap {
	display: table-cell;
	vertical-align: top;
}

.tpl-col2-wrap--img-right .tpl-col2-wrap__img-wrap {
	display: table-cell;
	padding: 0 0 0 40px;
	text-align: right;
}

.tpl-col2-wrap--img-right .tpl-col2-wrap__img-wrap p {
	padding: 20px 0 0;
}

@media screen and (max-width: 740px) {
	.tpl-col2-wrap--img-right .tpl-col2-wrap__img-wrap {
		padding: 15px 0 0;
	}
	.tpl-col2-wrap--img-right .tpl-col2-wrap__text-wrap {
		display: block;
	}
	.tpl-col2-wrap--img-right .tpl-col2-wrap__img-wrap p {
		padding: 15px 0 0;
	}
}

.tpl-col2-wrap--img-right .tpl-col2-wrap__img-wrap p:first-child {
	padding: 0;
}

.tpl-col2-wrap--img-right .tpl-col2-wrap__img-wrap span {
	text-align: left;
}

/* [ 画像右 - 回り込み有り ]
-----------------------*/
.tpl-col2-wrap--img-right-float .tpl-col2-wrap__img-wrap {
	float: right;
	padding: 0 0 10px 40px;
	text-align: right;
}

.tpl-col2-wrap--img-right-float .tpl-col2-wrap__img-wrap p {
	padding: 20px 0 0;
}

@media screen and (max-width: 740px) {
	.tpl-col2-wrap--img-right-float .tpl-col2-wrap__img-wrap {
		padding: 0 0 10px 15px;
	}
	.tpl-col2-wrap--img-right-float .tpl-col2-wrap__img-wrap p {
		padding: 15px 0 0;
	}
}

.tpl-col2-wrap--img-right-float .tpl-col2-wrap__img-wrap p:first-child {
	padding: 0;
}

.tpl-col2-wrap--img-right-float .tpl-col2-wrap__img-wrap span {
	text-align: left;
}

/*[ 画像左 - 回り込み無し ]
-----------------------*/
.tpl-col2-wrap--img-left {
	width: 100%;
	overflow: hidden;
}

.tpl-col2-wrap--img-left .tpl-col2-wrap__img-wrap {
	float: left;
	padding: 0 40px 0 0;
}

.tpl-col2-wrap--img-left .tpl-col2-wrap__img-wrap p {
	padding: 20px 0 0;
}
.tpl-col2-wrap--img-left .tpl-col2-wrap__img-wrap p img {
	max-width: 350px;
}

@media screen and (max-width: 740px) {
	.tpl-col2-wrap--img-left .tpl-col2-wrap__img-wrap {
		float: none;
		padding: 0 0 10px;
	}
	.tpl-col2-wrap--img-left .tpl-col2-wrap__img-wrap p {
		padding: 15px 0 0;
	}
	.tpl-col2-wrap--img-left .tpl-col2-wrap__img-wrap p img {
		max-width: initial;
	}
}

.tpl-col2-wrap--img-left .tpl-col2-wrap__img-wrap p:first-child {
	padding: 0;
}

.tpl-col2-wrap--img-left .tpl-col2-wrap__text-wrap {
	overflow: hidden;
	vertical-align: top;
}

/* [ 画像左 - 回り込み有り ]
-----------------------*/
.tpl-col2-wrap--img-left-float .tpl-col2-wrap__img-wrap {
	float: left;
	padding: 0 40px 10px 0;
}

.tpl-col2-wrap--img-left-float .tpl-col2-wrap__img-wrap p {
	padding: 20px 0 0;
}

@media screen and (max-width: 740px) {
	.tpl-col2-wrap--img-left-float .tpl-col2-wrap__img-wrap {
		padding: 0 15px 10px 0;
	}
	.tpl-col2-wrap--img-left-float .tpl-col2-wrap__img-wrap p {
		padding: 15px 0 0;
	}
}

.tpl-col2-wrap--img-left-float .tpl-col2-wrap__img-wrap p:first-child {
	padding: 0;
}

/*[ グリッド ]
-----------------------*/
.tpl-grid-wrap {
	overflow: hidden;
	clear: both;
}

@media screen and (max-width: 740px) {
	.tpl-grid-wrap {
		font-size: 14px;
	}
}

.tpl-grid-wrap > ul {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
}

.tpl-grid-wrap img, .tpl-grid-wrap p, .tpl-grid-wrap div {
	max-width: 100%;
}

.tpl-grid-wrap > ul > li {
	box-sizing: border-box;
}

.tpl-grid-wrap > ul > li > a {
	display: block;
	overflow: hidden;
}

@media screen and (max-width: 740px) {
	.tpl-grid-wrap > ul > tpl-grid-wrap__item--col2 > a {
		height: auto !important;
	}
}

.tpl-grid-wrap > ul > li > a:hover {
	text-decoration: none;
}

/*[ 2カラム ]
	-----------------------*/
.tpl-grid-wrap__item--col2 {
	width: 48%;
	margin-right: 4%;
	margin-bottom: 25px;
}

.tpl-grid-wrap__item--col2:nth-child(2n) {
	margin-right: 0;
}

/*[ 3カラム ]
	-----------------------*/
.tpl-grid-wrap__item--col3 {
	width: 31%;
	margin-right: 3.5%;
	margin-bottom: 25px;
}

.tpl-grid-wrap__item--col3:nth-child(3n) {
	margin-right: 0;
}

@media screen and (max-width: 740px) {
	.tpl-grid-wrap__item--col3 {
		width: 48%;
		margin-right: 4%;
		margin-bottom: 15px;
	}
	.tpl-grid-wrap__item--col3:nth-child(2n) {
		margin-right: 0;
	}
	.tpl-grid-wrap__item--col3:nth-child(3n) {
		margin-right: 4%;
	}
		.tpl-grid-wrap__item--col3:last-child {
		margin-right: 0
	}
}

/*[ 4カラム ]
	-----------------------*/
.tpl-grid-wrap__item--col4 {
	width: 22.5%;
	margin-right: 3.33%;
	margin-bottom: 25px;
}

.tpl-grid-wrap__item--col4:nth-child(4n) {
	margin-right: 0;
}

@media screen and (max-width: 740px) {
	.tpl-grid-wrap__item--col4 {
		width: 48%;
		margin-right: 4%;
		margin-bottom: 15px;
	}
	.tpl-grid-wrap__item--col4:nth-child(2n) {
		margin-right: 0;
	}
}

/*[ 5カラム ]
	-----------------------*/
.tpl-grid-wrap__item--col5 {
	width: 17.8%;
	margin-right: 2.75%;
	margin-bottom: 25px;
}

.tpl-grid-wrap__item--col5:nth-child(5n) {
	margin-right: 0;
}

@media screen and (max-width: 740px) {
	.tpl-grid-wrap__item--col5 {
		width: 48%;
		margin-right: 4%;
		margin-bottom: 15px;
	}
	.tpl-grid-wrap__item--col5:nth-child(2n) {
		margin-right: 0;
	}
	.tpl-grid-wrap__item--col5:nth-child(5n) {
		margin-right: 4%;
	}
}

/*[ 画像+リンク ]
	-----------------------*/
/*.tpl-grid-wrap__item--col2 .tpl-grid-wrap__item__img{
		float: left;
		padding-right: 20px;
	}*/
.tpl-grid-wrap__item__title {
	padding-top: 10px;
	color: #03325E;
	font-weight: bold;
	font-size: 15px;
}

.tpl-grid-wrap__item__title.tpl-grid-wrap__item__title--sub {
	font-size: 13px;
	margin-top: -5px;
}

@media screen and (max-width: 740px) {
	.tpl-grid-wrap__item__title.tpl-grid-wrap__item__title--sub {
		margin-top: 0;
	}
}

a:hover .tpl-grid-wrap__item__title {
	text-decoration: underline;
}

/*.tpl-grid-wrap__item--col2 .tpl-grid-wrap__item__title{
		padding-top: 0;
	}
	.tpl-grid-wrap__item--col2 .tpl-grid-wrap__item__title.tpl-grid-wrap__item__title--sub{
		margin-top: 0;
	}*/
.tpl-grid-wrap__item__text {
	padding-top: 10px;
	color: #333;
}

.tpl-grid-wrap__item__text--samll {
	font-size: 13px;
}

.tpl-grid-wrap__item__more {
	padding-top: 5px;
}

a:hover .tpl-grid-wrap__item__more {
	text-decoration: underline;
}

.tpl-grid-wrap img {
	max-width: 100%;
}

/*[ ボーダー ]
-----------------------*/
.tpl-box-border {
	border: 1px solid #D7D7D7;
	padding: 20px;
	overflow: hidden;
}

@media screen and (max-width: 740px) {
	.tpl-box-border {
		padding: 10px 15px;
	}
	.tpl-grid-wrap__item--col2 .tpl-box-border {
		height: auto !important;
	}
}

.tpl-box-border--w-bold {
	border-width: 5px;
	border-color: #E6E6E6;
}

.tpl-box-border--comment {
	border-color: #C2C9D2;
	border-width: 2px;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	position: relative;
	margin-bottom: 18px;
	overflow: visible;
}

@media screen and (max-width: 740px) {
	.tpl-box-border--comment {
		border-color: #C2C9D2;
		border-width: 2px;
		border-radius: 4px;
		-webkit-border-radius: 4px;
		-moz-border-radius: 4px;
		position: relative;
		margin-bottom: 18px;
		overflow: visible;
	}
	.tpl-box-border--comment .tpl-box-border__title {
		font-size: 20px !important;
	}
	.tpl-box-border--comment .tpl-box-border__text {
		padding-top: 0;
	}
}

.tpl-box-border--comment .tpl-box-border--comment__edge {
	position: absolute;
	display: block;
	width: 100%;
	height: 18px;
	bottom: -18px;
	left: 0;
	background: url(%tpl_box_border__comment_edge%) no-repeat center top;
}

.tpl-box-border__title {
	color: #03325E;
	font-weight: bold;
	font-size: 20px;
}

.tpl-box-border__text {
	padding: 15px 0 0;
	font-size: 15px;
}

.tpl-box-border__name {
	padding: 12px 0 0;
	font-size: 15px;
	font-weight: bold;
}

@media screen and (max-width: 740px) {
	.tpl-box-border__title {
		font-size: 14px;
	}
	.tpl-box-border__text {
		font-size: 10px;
		padding: 10px 0 0;
	}
	.tpl-box-border__name {
		font-size: 12px;
		padding: 6px 0 0;
	}
}

.tpl-box-border .tpl-grid-wrap__item__img {
	text-align: center;
}

/*[ タイトル + ボーダー ]
-----------------------*/
@media screen and (max-width: 740px) {
	.tpl-box-border--title {
		padding-bottom: 10px;
	}
}

.tpl-box-border--title__title {
	display: block;
	border-bottom: 1px solid #D7D7D7;
	background: #EBF1F6;
	color: #03325E;
	font-weight: bold;
	padding: 20px;
	margin: -20px -20px 20px;
}

@media screen and (max-width: 740px) {
	.tpl-box-border--title__title {
		font-size: 16px !important;
		padding: 10px 15px;
		margin: -15px -15px 15px;
	}
	.tpl-grid-wrap__item--col2 .tpl-box-border--title__title {
		height: auto !important;
	}
}

.tpl-box-border--title__title a {
	display: block;
	padding: 20px;
	padding-left: 30px;
	margin: -20px;
	background-position: 20px center;
}

.tpl-box-border__date {
	font-size: 13px;
}

@media screen and (max-width: 740px) {
	.tpl-box-border__date {
		font-size: 10px;
	}
}

.tpl-box-border__attr {
	font-weight: bold;
}

.tpl-box-border__desc {
	padding-top: 10px;
	line-height: 1.4 !important;
}

@media screen and (max-width: 740px) {
	.tpl-box-border__desc {
		padding-top: 5px;
	}
}

/*[ 画像(なりゆき横並び) ]
-----------------------*/
.tpl-imglist-wrap {
	clear: both;
}

.tpl-imglist-wrap > ul {
	letter-spacing: -0.4em;
	text-align: center;
	margin-left: -20px;
}

.tpl-imglist-wrap > ul > li {
	letter-spacing: normal;
	display: inline-block;
	padding: 20px 0 0 17px;
	box-sizing: border-box;
	vertical-align: bottom;
}

.tpl-imglist-wrap > ul > li img {
	width: 100%;
}

/*[ ビュレットなし ]
-----------------------*/
.tpl-link {
	color: #03325E;
}

@media screen and (max-width: 750px) {
	.tpl-link {
		font-size: 14px;
	}
}

/*[ ビュレット有り ]
-----------------------*/
.tpl-link--cursor {
	padding-left: 15px;
	position: relative;
}

.tpl-link--cursor::before, .tpl-link--cursor::after {
	position: absolute;
	top: 0.5em;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.tpl-link--cursor::before {
	width: 4px;
	height: 4px;
	border-top: 2px solid #03325E;
	border-right: 2px solid #03325E;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

@media screen and (max-width: 740px) {
	.tpl-link--cursor {
		padding-left: 15px;
	}
	.tpl-link--cursor::before, .tpl-link--cursor::after {
		top: 0.35em;
	}
}

/*[ リンク有り - 水平 ]
-----------------------*/
.tpl-list-wrap {
	overflow: hidden;
	clear: both;
}

@media screen and (max-width: 740px) {
	.tpl-list-wrap {
		font-size: 14px;
	}
}

.tpl-list-wrap > ul {
	overflow: hidden;
	margin-top: -0.6em;
}

.tpl-list-wrap > ul > li {
	padding-top: 0.6em;
}

.tpl-list-wrap--horizontal > ul > li {
	display: inline-block;
	padding-right: 20px;
	vertical-align: top;
}

@media screen and (max-width: 740px) {
	.tpl-list-wrap--horizontal > ul > li {
		padding-right: 15px;
	}
}

/*[ リストパターン1(算用数字)   - 垂直 ]
-----------------------*/
.tpl-list-wrap--type-decimal > ul > li {
	list-style-type: decimal;
	margin-left: 2.3em;
}

/*[ リストパターン2(中黒)   - 垂直 ]
-----------------------*/
.tpl-list-wrap--type-disc > ul > li {
	text-indent: -1em;
	margin-left: 1em;
}

/*[ ぶら下げインデント ]
-----------------------*/
.tpl-indent-hang__1em {
	text-indent: -1em;
	margin-left: 1em;
	display: inline-block;
}

.tpl-indent-hang__1-5em {
	text-indent: -1.5em;
	margin-left: 1.5em;
	display: inline-block;
}

.tpl-indent-hang__2em {
	text-indent: -2em;
	margin-left: 2em;
	display: inline-block;
}

.tpl-indent-hang__2-5em {
	text-indent: -2.5em;
	margin-left: 2.5em;
	display: inline-block;
}

/*[ 表 ]
-----------------------*/
.tpl-table-wrap {
	clear: both;
}

@media screen and (max-width: 740px) {
	.tpl-table-wrap {
		font-size: 12px;
        overflow-x: auto;
	}
}

.tpl-table-wrap table {
	width: 100% !important;
	heighy: auto !important;
	border-right: 1px solid #DDD;
	border-top: 1px solid #DDD;
}

.tpl-table-wrap table caption {
	font-size: 18px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	padding: 15px;
	background: #03325E;
}

.tpl-table-wrap table th,
.tpl-table-wrap table td {
	border-left: 1px solid #DDD;
	border-bottom: 1px solid #DDD;
	padding: 15px;
}

@media screen and (max-width: 740px) {
	.tpl-table-wrap table caption {
		font-size: 14px;
		padding: 5px;
		text-align: left;
	}
	.tpl-table-wrap table th,
	.tpl-table-wrap table td {
		padding: 5px;
	}
	/* [ ズームアウト（弱）※列数が多い場合用。スマホ端末でのみ発動。 ] */
	.tpl-table-wrap--zoomout-s table th,
	.tpl-table-wrap--zoomout-s table td {
		font-size: 0.4rem;
	}
	/* [ ズームアウト（強）※列数がかなり多い場合用。スマホ端末でのみ発動。 ] */
	.tpl-table-wrap--zoomout-l table th,
	.tpl-table-wrap--zoomout-l table td {
		font-size: 0.2rem;
		padding: 3px;
	}
}

/* .tpl-table-wrap__message-pinch
	-----------------------*/
.tpl-table-wrap__message-pinch {
	display: none;
}

.device-sp .tpl-table-wrap__message-pinch {
	display: block;
	width: 67.56756756756757%;
	/* 500/740 */
	margin: 0 auto;
	padding: 15px 0 0;
}

.tpl-table-wrap table th {
	background: #EBF1F6;
}

.tpl-table-wrap__item--bg-gray-light {
	background: #EBEDF0 !important;
}

/*[ ライトボックス ]
-----------------------*/
.tpl-lb--wrap {
	position: relative;
}

.tpl-lb--wrap--icon {
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 30px;
	height: 30px;
	background: url(%tpl_lb_icon_zoom%) no-repeat;
}

/*[ アコーディオン ]
-----------------------*/
.tpl-accordion {
	clear: both;
}

.tpl-accordion--btn {
	cursor: pointer;
}

.tpl-accordion--body {
	/*hidden*/
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
}

.tpl-accordion--body.is-init {
	/*visible*/
	width: auto;
	height: auto;
	margin: auto;
	overflow: visible;
	display: none;
}

.tpl-accordion_v2 .btn-more {
	width: 274px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
}

.tpl-accordion--body_v2 {
	/*visible*/
	width: auto;
	height: auto;
	margin: auto;
	overflow: hidden;
}

.tpl-accordion--body_v2 .open-area {
	overflow: hidden;
}

/*[ ページャー ]
-----------------------*/
.tpl-pager {
	letter-spacing: -0.4em;
	line-height: 15px;
	color: #888;
	padding-top: 30px;
	text-align: center;
}

@media screen and (max-width: 740px) {
	.tpl-pager {
		padding-left: 5px;
		padding-right: 5px;
		font-size: 13px;
	}
}

.tpl-pager .btn {
	letter-spacing: normal;
	display: inline-block;
}

@media screen and (max-width: 740px) {
	.tpl-pager .btn {
		margin-bottom: 15px;
	}
}

.tpl-pager .btn a {
	display: block;
}

.tpl-pager ul {
	display: inline-block;
}

.tpl-pager ul li {
	letter-spacing: normal;
	display: inline-block;
	padding: 0 10px;
	line-height: 1;
	border-left: 1px solid #666;
}

@media screen and (max-width: 740px) {
	.tpl-pager ul li {
		margin-bottom: 15px;
	}
}

.tpl-pager ul li:first-child {
	border-left: none;
}

.tpl-pager ul a {
	display: block;
	padding: 0 15px;
	margin: 0 -15px;
}

/*[ ニュースティッカー ]
-----------------------*/
.tpl-news-ticker {
	/* .list-wrap
	-----------------------*/
}

.tpl-news-ticker .wrap {
	background: #03325E;
	color: #FFF;
	display: table;
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
}

@media screen and (max-width: 740px) {
	.tpl-news-ticker .wrap {
		display: block;
	}
}

.tpl-news-ticker .inner-title,
.tpl-news-ticker .list-wrap,
.tpl-news-ticker .btn-list {
	display: table-cell;
	vertical-align: middle;
}

@media screen and (max-width: 740px) {
	.tpl-news-ticker .inner-title,
	.tpl-news-ticker .list-wrap,
	.tpl-news-ticker .btn-list {
		display: block;
	}
}

.tpl-news-ticker .inner-title {
	width: 80px;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
}

@media screen and (max-width: 740px) {
	.tpl-news-ticker .inner-title {
		width: auto;
		padding: 15px;
		margin: -10px -10px 15px;
		border-bottom: 1px solid #9BAEC1;
	}
}

.tpl-news-ticker .list-wrap {
	line-height: 1;
}

.tpl-news-ticker .list-wrap li {
	display: table;
	height: 45px;
}

.tpl-news-ticker .list-wrap a,
.tpl-news-ticker .list-wrap .dummy-wrap {
	color: #FFF;
	display: table-cell;
	vertical-align: middle;
}

.tpl-news-ticker .list-wrap a:hover {
	text-decoration: none;
}

.tpl-news-ticker .list-wrap .date {
	padding-right: 10px;
	font-size: 13px;
}

.tpl-news-ticker .list-wrap a:hover .title {
	text-decoration: underline;
}

@media screen and (max-width: 740px) {
	.tpl-news-ticker .list-wrap .date {
		padding-right: 0;
		display: block;
		font-size: 10px;
	}
	.tpl-news-ticker .list-wrap .title {
		display: block;
		padding-top: 5px;
		font-size: 12px;
		line-height: 1.3;
	}
}

@media screen and (max-width: 740px) {
	.tpl-news-ticker .btn-list {
		padding-top: 10px;
	}
}

.tpl-news-ticker .btn-list a {
	display: block;
	background: #FFF;
	width: 90px;
	height: 47px;
	line-height: 47px;
	float: right;
	font-weight: bold;
	color: #03325E;
	text-align: center;
	box-sizing: border-box;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}

@media screen and (max-width: 740px) {
	.tpl-news-ticker .btn-list a {
		display: block;
		width: 100%;
		height: 44px;
		line-height: 44px;
		float: none;
	}
}

/* .tpl-mv
-----------------------*/
.tpl-mv {
	height: 510px;
	position: relative;
}

.tpl-mv .mv-ttl {
	position: absolute;
	top: 165px;
	left: 0;
	z-index: 1;
	padding-left: 100px;
}

.tpl-mv .mv-ttl .box {
	background-color: #03325E;
	color: white;
	display: inline-block;
	padding: 32px 50px;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
}

.tpl-mv .mv-ttl .box .jp {
	font-size: 40px;
	letter-spacing: 0.075em;
	margin-right: 25px;
}

.tpl-mv .mv-ttl .box .en {
	font-size: 15px;
	letter-spacing: 0.05em;
}

.tpl-mv .mv-bg {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 285px;
	background-color: #EBF1F6;
}

.tpl-mv .mv-img {
	position: relative;
	padding-left: 200px;
	height: 450px;
}

.tpl-mv .mv-img .inner {
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	height: 100%;
}

.tpl-mv .mv-scroll {
	position: absolute;
	bottom: -110px;
	left: 54px;
	transform-origin: left center;
	transform: rotate(-90deg);
	display: none;
}

.tpl-mv .mv-scroll p {
	padding-left: 230px;
	position: relative;
	color: #004986;
	font-size: 13px;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1;
}

.tpl-mv .mv-scroll p::before {
	content: "";
	display: block;
	width: 200px;
	height: 1px;
	background-color: #03325E;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	transform-origin: right center;
	animation-name: scroll-bar;
	animation-duration: 3s;
	animation-iteration-count: infinite;
}

@keyframes scroll-bar {
	0% {
		transform: scale(0, 1);
	}
	50% {
		transform: scale(1, 1);
	}
	100% {
		transform: scale(1, 1);
	}
}

@media screen and (max-width: 740px) {
	.tpl-mv {
		height: 400px;
	}
	.tpl-mv .mv-ttl {
		top: 145px;
		padding-left: 30px;
	}
	.tpl-mv .mv-ttl .box {
		display: block;
		padding: 12px 20px;
	}
	.tpl-mv .mv-ttl .box .jp {
		font-size: 28px;
		margin-right: 0;
		margin-bottom: 2px;
	}
	.tpl-mv .mv-ttl .box .en {
		font-size: 14px;
	}
	.tpl-mv .mv-bg {
		height: 210px;
	}
	.tpl-mv .mv-img {
		padding-left: 60px;
		height: 380px;
	}
	.tpl-mv .mv-scroll {
		display: inline-block;
		bottom: -37px;
		left: 23px;
	}
	.tpl-mv .mv-scroll p {
		padding-left: 60px;
		font-size: 12px;
	}
	.tpl-mv .mv-scroll p::before {
		width: 50px;
	}
}

/* .tpl-second-mv
-----------------------*/
.tpl-second-mv {
	position: relative;
	padding-bottom: 100px;
}

.tpl-second-mv .mv-ttl {
	position: absolute;
	top: 250px;
	left: 0;
	z-index: 1;
	padding-left: 100px;
}

.tpl-second-mv .mv-ttl .box {
	background-color: #03325E;
	color: white;
	display: inline-block;
	padding: 32px 50px;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
}

.tpl-second-mv .mv-ttl .box .jp {
	font-size: 40px;
	letter-spacing: 0.075em;
	margin-right: 25px;
}

.tpl-second-mv .mv-ttl .box .en {
	font-size: 15px;
	letter-spacing: 0.05em;
}

.tpl-second-mv .mv-bg {
	position: absolute;
	top: 150px;
	left: 0;
	width: 100%;
	height: 600px;
	background-color: #EBF1F6;
}

.tpl-second-mv .mv-img {
	padding-left: 200px;
	height: 650px;
}

.tpl-second-mv .mv-img .inner {
	height: 100%;
	overflow: hidden;
}

.tpl-second-mv .mv-img .inner .img {
	position: relative;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.tpl-second-mv .mv-scroll {
	position: absolute;
	bottom: -110px;
	left: 54px;
	transform-origin: left center;
	transform: rotate(-90deg);
	display: inline-block;
}

.tpl-second-mv .mv-scroll p {
	padding-left: 230px;
	position: relative;
	color: #004986;
	font-size: 13px;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1;
}

.tpl-second-mv .mv-scroll p::before {
	content: "";
	display: block;
	width: 200px;
	height: 1px;
	background-color: #03325E;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	transform-origin: right center;
	animation-name: scroll-bar;
	animation-duration: 3s;
	animation-iteration-count: infinite;
}

@media screen and (max-width: 740px) {
	.tpl-second-mv {
		padding-bottom: 20px;
	}
	.tpl-second-mv .mv-ttl {
		top: 145px;
		padding-left: 30px;
	}
	.tpl-second-mv .mv-ttl .box {
		padding: 15px 20px;
		display: block;
	}
	.tpl-second-mv .mv-ttl .box .jp {
		font-size: 28px;
		margin-right: 0;
	}
	.tpl-second-mv .mv-ttl .box .en {
		font-size: 14px;
	}
	.tpl-second-mv .mv-bg {
		top: 190px;
		height: 210px;
	}
	.tpl-second-mv .mv-img {
		padding-left: 60px;
		height: 380px;
	}
	.tpl-second-mv .mv-scroll {
		bottom: -40px;
		left: 25px;
	}
	.tpl-second-mv .mv-scroll p {
		padding-left: 60px;
		font-size: 12px;
	}
	.tpl-second-mv .mv-scroll p::before {
		width: 50px;
	}
}

body:not(.is-ie11) .tpl-second-mv .mv-ttl .box {
	opacity: 0;
	transform: scaleX(0);
	transform-origin: left center;
	transition-property: transform;
	transition-duration: 2s;
	transition-delay: 0s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

body:not(.is-ie11) .tpl-second-mv .mv-ttl .box > * {
	opacity: 0;
	transform: translateX(-10px);
	transition-property: opacity, transform;
	transition-duration: 1.5s;
	transition-delay: 1.25s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

body:not(.is-ie11) .tpl-second-mv.show .mv-ttl .box {
	opacity: 1;
	transform: scaleX(1);
}

body:not(.is-ie11) .tpl-second-mv.show .mv-ttl .box > * {
	opacity: 1;
	transform: translateX(0);
}

body:not(.is-ie11) .tpl-second-mv .mv-bg {
	opacity: 0;
	transform: scale(0.5, 1);
	transform-origin: left center;
	transition-property: opacity, transform;
	transition-duration: 2s;
	transition-delay: 0s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

body:not(.is-ie11) .tpl-second-mv.show .mv-bg {
	opacity: 1;
	transform: scale(1, 1);
}

body:not(.is-ie11) .tpl-second-mv .mv-img .inner {
	transform: translateX(50%);
	transition-property: transform;
	transition-duration: 2s;
	transition-delay: 0s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

body:not(.is-ie11) .tpl-second-mv .mv-img .inner .img {
	opacity: 0;
	transform: translateX(-45%);
	transition-property: opacity, transform;
	transition-duration: 2s;
	transition-delay: 0s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

body:not(.is-ie11) .tpl-second-mv.show .mv-img .inner {
	transform: translateX(0);
}

body:not(.is-ie11) .tpl-second-mv.show .mv-img .inner .img {
	opacity: 1;
	transform: translateX(0);
}

/* .tpl-third-mv
-----------------------*/
.tpl-third-mv {
	height: 400px;
	position: relative;
}

.tpl-third-mv .mv-img {
	padding-left: 200px;
	height: 100%;
}

.tpl-third-mv .mv-img .inner {
	height: 100%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.tpl-third-mv .mv-ttl {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: center;
	/* Safari */
	justify-content: center;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
}

.tpl-third-mv .mv-ttl .inner {
	color: white;
	text-align: center;
}

.tpl-third-mv .mv-ttl .inner .mincho-jp {
	font-size: 40px;
	letter-spacing: 0.075em;
	padding-bottom: 25px;
	margin-bottom: 35px;
	position: relative;
}

.tpl-third-mv .mv-ttl .inner .mincho-jp::after {
	content: "";
	display: block;
	width: 40px;
	height: 1px;
	background-color: white;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

.tpl-third-mv .mv-ttl .inner .mincho-en {
	font-size: 15px;
}

.tpl-third-mv .mv-scroll {
	position: absolute;
	bottom: -110px;
	left: 54px;
	transform-origin: left center;
	transform: rotate(-90deg);
}

.tpl-third-mv .mv-scroll p {
	padding-left: 130px;
	position: relative;
	color: #004986;
	font-size: 13px;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1;
}

.tpl-third-mv .mv-scroll p::before {
	content: "";
	display: block;
	width: 100px;
	height: 1px;
	background-color: #03325E;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	transform-origin: right center;
	animation-name: scroll-bar;
	animation-duration: 3s;
	animation-iteration-count: infinite;
}

.tpl-third-mv .mv-copyright {
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
}

.tpl-third-mv .mv-copyright p {
	color: #004986;
	font-size: 11px;
	letter-spacing: 0.05em;
	transform: translate(70px, 410px) rotate(90deg);
}

@media screen and (max-width: 740px) {
	.tpl-third-mv {
		height: 250px;
	}
	.tpl-third-mv .mv-img {
		padding-left: 60px;
	}
	.tpl-third-mv .mv-ttl .inner {
		padding-left: 65px;
	}
	.tpl-third-mv .mv-ttl .inner .mincho-jp {
		font-size: 28px;
		padding-bottom: 15px;
		margin-bottom: 15px;
	}
	.tpl-third-mv .mv-ttl .inner .mincho-en {
		font-size: 14px;
	}
	.tpl-third-mv .mv-scroll {
		bottom: -40px;
		left: 25px;
	}
	.tpl-third-mv .mv-scroll p {
		padding-left: 60px;
		font-size: 12px;
	}
	.tpl-third-mv .mv-scroll p::before {
		width: 50px;
		height: 1px;
	}
	.tpl-third-mv .mv-copyright {
		display: none;
	}
}

/* .tpl-second-sec
-----------------------*/
.tpl-second-sec {
	height: 650px;
	position: relative;
	padding: 120px 0 0;
}

.tpl-second-sec .sec-ttl {
	position: absolute;
	bottom: 60px;
	z-index: 1;
}

.tpl-second-sec .sec-ttl .box {
	display: inline-block;
	background-color: #03325E;
	padding: 60px 100px 60px 0;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
}

.tpl-second-sec .sec-ttl .box .jp {
	font-size: 32px;
	letter-spacing: 0.1em;
	color: white;
	position: relative;
	padding-left: 100px;
}

.tpl-second-sec .sec-ttl .box .jp::before {
	content: "";
	display: block;
	width: 80px;
	height: 1px;
	background-color: #A6B4C0;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

.tpl-second-sec .sec-ttl .box .jp a {
	display: block;
	color: white;
}

.tpl-second-sec .sec-ttl .box .list {
	padding-top: 35px;
	padding-left: 100px;
	display: -webkit-flex;
	/* Safari */
	display: flex;
}

.tpl-second-sec .sec-ttl .box .list ul {
	margin-right: 60px;
}

.tpl-second-sec .sec-ttl .box .list ul:last-child {
	margin-right: 0;
}

.tpl-second-sec .sec-ttl .box .list ul li {
	margin-bottom: 20px;
	padding-left: 20px;
	position: relative;
}

.tpl-second-sec .sec-ttl .box .list ul li:last-child {
	margin-bottom: 0;
}

.tpl-second-sec .sec-ttl .box .list ul li::before {
	content: "";
	display: block;
	width: 8px;
	height: 1px;
	background-color: #A6B4C0;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

.tpl-second-sec .sec-ttl .box .list ul li a {
	color: white;
	font-size: 16px;
}

.tpl-second-sec .sec-ttl-en {
	font-size: 61px;
	color: #004986;
	letter-spacing: 0.05em;
	line-height: 1 !important;
	position: absolute;
	top: -0.5em;
}

.tpl-second-sec .sec-bg {
	position: absolute;
	bottom: 0;
	width: 950px;
	height: 550px;
	background-color: #EBF1F6;
}

.tpl-second-sec .sec-img {
	position: relative;
	height: 500px;
}

.tpl-second-sec .sec-img .inner {
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	height: 100%;
}

.tpl-second-sec-left .sec-ttl {
	left: 0;
	padding-left: 100px;
}

.tpl-second-sec-left .sec-ttl-en {
	right: 100px;
}

.tpl-second-sec-left .sec-bg {
	left: 0;
}

.tpl-second-sec-left .sec-img {
	padding-left: 320px;
}

.tpl-second-sec-right .sec-ttl {
	right: 0;
	padding-right: 100px;
}

.tpl-second-sec-right .sec-ttl-en {
	left: 100px;
}

.tpl-second-sec-right .sec-bg {
	right: 0;
}

.tpl-second-sec-right .sec-img {
	padding-right: 320px;
}

.tpl-second-mv + .tpl-second-sec {
	padding: 160px 0 0;
}

@media screen and (max-width: 740px) {
	.tpl-second-sec {
		height: auto;
		padding: 40px 0 0;
	}
	.tpl-second-sec .sec-ttl {
		position: relative;
		top: -60px;
		bottom: auto;
	}
	.tpl-second-sec .sec-ttl .box {
		padding: 35px 50px 35px 0;
	}
	.tpl-second-sec .sec-ttl .box .jp {
		font-size: 20px;
		padding-left: 50px;
	}
	.tpl-second-sec .sec-ttl .box .jp::before {
		width: 40px;
	}
	.tpl-second-sec .sec-ttl .box .list {
		display: block;
		padding-top: 25px;
		padding-left: 50px;
	}
	.tpl-second-sec .sec-ttl .box .list ul {
		margin-right: 0;
		margin-bottom: 15px;
	}
	.tpl-second-sec .sec-ttl .box .list ul:last-child {
		margin-bottom: 0;
	}
	.tpl-second-sec .sec-ttl .box .list ul li {
		margin-bottom: 15px;
		padding-left: 15px;
	}
	.tpl-second-sec .sec-ttl .box .list ul li a {
		font-size: 14px;
	}
	.tpl-second-sec .sec-ttl-en {
		font-size: 30px;
		position: absolute;
	}
	.tpl-second-sec .sec-bg {
		display: none;
	}
	.tpl-second-sec .sec-img {
		height: 300px;
	}
	.tpl-second-sec-left .sec-ttl {
		padding-left: 0;
		padding-right: 25px;
	}
	.tpl-second-sec-left .sec-ttl-en {
		right: auto;
		left: 15px;
	}
	.tpl-second-sec-left .sec-img {
		padding-left: 0;
	}
	.tpl-second-sec-right .sec-ttl {
		padding-right: 25px;
	}
	.tpl-second-sec-right .sec-ttl-en {
		left: 15px;
	}
	.tpl-second-sec-right .sec-bg {
		right: 0;
	}
	.tpl-second-sec-right .sec-img {
		padding-right: 0;
	}
	.tpl-second-mv + .tpl-second-sec {
		padding: 100px 0 0;
	}
}

/* .tpl-tab-link
-----------------------*/
.tpl-tab-link {
	padding-top: 120px;
}

.tpl-tab-link .tab-block {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
	margin-bottom: 20px;
}

.tpl-tab-link .tab-block:last-child {
	margin-bottom: 0;
}

.tpl-tab-link h2 {
	width: 100px;
	min-width: 100px;
}

.tpl-tab-link ul {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
	border-left: 1px solid #DEE0E2;
	flex: 1;
}

.tpl-tab-link ul li {
	box-sizing: border-box;
	border-right: 1px solid #DEE0E2;
	border-bottom: 1px solid #DEE0E2;
	border-top: 1px solid #DEE0E2;
	flex: 1;
}

.tpl-tab-link ul li:nth-child(-n+5) {
	border-top: 1px solid #DEE0E2;
}

.tpl-tab-link ul li a {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: center;
	/* Safari */
	justify-content: center;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
	padding: 20px 0;
	text-align: center;
	font-size: 14px;
	text-decoration: none;
	height: 100%;
	box-sizing: border-box;
}

.tpl-tab-link ul li.current a {
	background-color: #03325E;
	color: white;
}

@media screen and (max-width: 740px) {
	.tpl-tab-link {
		padding-top: 60px;
	}
	.tpl-tab-link .tab-block {
		display: block;
		margin-bottom: 35px;
	}
	.tpl-tab-link .tab-block:last-child {
		margin-bottom: 0;
	}
	.tpl-tab-link h2 {
		width: auto;
		text-align: center;
		min-width: initial;
		font-size: 15px;
		margin-bottom: 15px;
	}
	.tpl-tab-link ul {
		border-top: 1px solid #DEE0E2;
	}
	.tpl-tab-link ul li {
		min-width: 50%;
		max-width: 50%;
	}
	.tpl-tab-link ul li:nth-child(-n+5) {
		border-top: none;
	}
	.tpl-tab-link ul li a {
		padding: 15px 0;
	}
}

/* .tpl-topics-slider
-----------------------*/
.tpl-topics-slider {
	padding-top: 80px;
}

.tpl-topics-slider .tpl-inner-wrap {
	width: 1020px;
}

.tpl-topics-slider ul {
	margin-bottom: -55px;
}

.tpl-topics-slider ul li {
	width: 300px;
	margin: 0 0 55px;
	padding: 0 20px;
}

.tpl-topics-slider ul li:nth-child(3n) {
	margin-right: 0;
}

.tpl-topics-slider ul li a {
	text-decoration: none;
}

.tpl-topics-slider ul li a .img {
	width: 100%;
	padding-top: 66.666666666%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	margin-bottom: 20px;
}

.tpl-topics-slider ul li a .date {
	color: black;
	font-size: 16px;
}

.tpl-topics-slider ul li a .ttl {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.625 !important;
	margin-bottom: 15px;
}

.tpl-topics-slider ul li a .txt {
	color: black;
	font-size: 14px;
	line-height: 1.71 !important;
	margin-bottom: 15px;
}

.tpl-topics-slider ul li a .more {
	letter-spacing: 0.12em;
	padding-left: 30px;
	position: relative;
	line-height: 1 !important;
}

.tpl-topics-slider ul li a .more::before {
	content: "";
	display: block;
	width: 20px;
	height: 1px;
	background-color: #03325E;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

.tpl-topics-slider ul .slick-arrow {
	width: 40px;
	height: 40px;
	background-color: #03325E;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 16px auto;
	position: absolute;
	top: 22%;
	z-index: 1;
}

.tpl-topics-slider ul .slick-prev {
	background-image: url(%slider_prev_icon%);
	left: 0;
}

.tpl-topics-slider ul .slick-next {
	background-image: url(%slider_next_icon%);
	right: 0;
}

@media screen and (max-width: 740px) {
	.tpl-topics-slider .tpl-inner-wrap {
		width: auto;
		padding: 0 !important;
	}
	.tpl-topics-slider ul {
		margin-bottom: 0;
		padding: 0 60px;
	}
	.tpl-topics-slider ul li {
		margin: 0;
		padding: 0;
	}
	.tpl-topics-slider ul li a .img {
		margin-bottom: 10px;
	}
	.tpl-topics-slider ul li a .ttl {
		margin-bottom: 10px;
	}
	.tpl-topics-slider ul .slick-arrow {
		top: 29%;
	}
	.tpl-topics-slider .tpl-btn-wrap--center {
		padding: 0 45px;
	}
}

/* .tpl-topics-list
-----------------------*/
.tpl-topics-list {
	padding-top: 80px;
}

.tpl-topics-list .tpl-inner-wrap {
	width: 1020px;
}

.tpl-topics-list ul {
	margin-bottom: -55px;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
}

.tpl-topics-list ul li {
	width: 300px;
	margin: 0 0 55px;
	padding: 0 20px;
}

.tpl-topics-list ul li:nth-child(3n) {
	margin-right: 0;
}

.tpl-topics-list ul li a {
	text-decoration: none;
}

.tpl-topics-list ul li a .topics-head {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: space-between;
	/* Safari */
	justify-content: space-between;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
	margin-bottom: 10px;
}

.tpl-topics-list ul li a .img {
	width: 100%;
	padding-top: 66.666666666%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	margin-bottom: 20px;
}

.tpl-topics-list ul li a .date {
	color: black;
	font-size: 16px;
}

.tpl-topics-list ul li a .category {
	background-color: #EBF1F6;
	color: #004986;
	line-height: 1 !important;
	display: block;
	text-align: center;
	border-radius: 13px;
	font-size: 12px;
	padding: 5px 10px;
}

.tpl-topics-list ul li a .ttl {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.625 !important;
	margin-bottom: 15px;
}

.tpl-topics-list ul li a .txt {
	color: black;
	font-size: 14px;
	line-height: 1.71 !important;
	margin-bottom: 15px;
}

.tpl-topics-list ul li a .more {
	letter-spacing: 0.12em;
	padding-left: 30px;
	position: relative;
	line-height: 1 !important;
}

.tpl-topics-list ul li a .more::before {
	content: "";
	display: block;
	width: 20px;
	height: 1px;
	background-color: #03325E;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

@media screen and (max-width: 740px) {
	.tpl-topics-list .tpl-inner-wrap {
		width: auto;
	}
	.tpl-topics-list ul {
		margin-bottom: -55px;
		padding: 0;
		display: block;
	}
	.tpl-topics-list ul li {
		width: auto;
		margin: 0 0 55px;
		padding: 0;
	}
	.tpl-topics-list ul li a .img {
		margin-bottom: 10px;
	}
	.tpl-topics-list ul li a .category {
		border-radius: 19px;
		font-size: 10px !important;
	}
	.tpl-topics-list ul li a .ttl {
		margin-bottom: 10px;
	}
	.tpl-topics-list .tpl-btn-wrap--center {
		padding: 0 45px;
	}
}

/* .tpl-news-list
-----------------------*/
.tpl-news-list {
	padding: 100px 0 0;
}

.tpl-news-list .news-notes {
	color: #004986;
	font-weight: bold;
	margin-bottom: 50px;
}

.tpl-news-list .news-list li {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
	padding: 20px 0;
	border-bottom: 1px solid #D7D7D7;
}

.tpl-news-list .news-list li .news-head {
	width: 230px;
	min-width: 230px;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
}

.tpl-news-list .news-list li .news-head .news-date {
	color: #787878;
	width: 100px;
	min-width: 100px;
}

.tpl-news-list .news-list li .news-head .news-category {
	font-size: 12px;
}

.tpl-news-list .news-list li .news-head .news-category span {
	background-color: #EBF1F6;
	color: #004986;
	line-height: 1;
	display: block;
	width: 110px;
	text-align: center;
	height: 26px;
	line-height: 26px;
	border-radius: 13px;
}

.tpl-news-list .main-news-list li {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-align-items: center;
	/* Safari */
	align-items: flex-start;
	padding: 20px 0;
	border-bottom: 1px solid #D7D7D7;
}

.tpl-news-list .main-news-list li .main-news-image {
	width: 150px;
	min-width: 150px;
	margin-right: 50px;
}

.tpl-news-list .main-news-list li .news-head {
	width: 220px;
	min-width: 220px;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
	margin-bottom: 10px;
}

.tpl-news-list .main-news-list li .news-head .news-date {
	color: #787878;
	width: 100px;
	min-width: 100px;
}

.tpl-news-list .main-news-list li .news-head .news-category {
	font-size: 12px;
}

.tpl-news-list .main-news-list li .news-head .news-category span {
	background-color: #EBF1F6;
	color: #004986;
	line-height: 1;
	display: block;
	width: 110px;
	text-align: center;
	height: 26px;
	line-height: 26px;
	border-radius: 13px;
}

@media screen and (max-width: 740px) {
	.tpl-news-list {
		padding: 70px 0 0;
	}
	.tpl-news-list .news-notes {
		margin-bottom: 20px;
		line-height: 1.6;
	}
	.tpl-news-list .news-list li {
		display: block;
		padding: 20px 0;
	}
	.tpl-news-list .news-list li .news-head {
		margin-bottom: 5px;
	}
	.tpl-news-list .news-list li .news-head .news-date {
		width: 75px;
		min-width: 75px;
	}
	.tpl-news-list .news-list li .news-head .news-category {
		width: auto;
		min-width: initial;
		font-size: 10px !important;
	}
	.tpl-news-list .news-list li .news-head .news-category span {
		width: auto;
		height: 19px;
		line-height: 19px;
		border-radius: 19px;
		padding: 0 10px;
	}
	.tpl-news-list .news-list li .news-txt {
		font-size: 12px !important;
	}
	.tpl-news-list .main-news-list li {
		padding: 20px 0;
		display: -webkit-flex;
		/* Safari */
		display: flex;
	}
	.tpl-news-list .main-news-list li .main-news-image {
		width: 35%;
		min-width: 35%;
		margin-right: 10px;
	}
	.tpl-news-list .main-news-list li .main-news-lead {
		width: 60%;
	}
	.tpl-news-list .main-news-list li .news-head {
		margin-bottom: 3px;
	}
	.tpl-news-list .main-news-list li .news-head .news-date {
		width: 75px;
		min-width: 75px;
	}
	.tpl-news-list .main-news-list li .news-head .news-category {
		width: auto;
		min-width: initial;
		font-size: 10px !important;
	}
	.tpl-news-list .main-news-list li .news-head .news-category span {
		width: auto;
		height: 19px;
		line-height: 19px;
		border-radius: 19px;
		padding: 0 10px;
	}
	.tpl-news-list .main-news-list li .news-txt {
		font-size: 12px !important;
	}
}

/* .tpl-topics-pager
-----------------------*/
.tpl-topics-pager {
	padding-top: 80px;
}

.tpl-topics-pager .tpl-inner-wrap {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: center;
	/* Safari */
	justify-content: center;
}

.tpl-topics-pager .arrow {
	width: 60px;
	height: 60px;
	background-color: #EBF1F6;
}

.tpl-topics-pager .arrow a {
	display: block;
	position: relative;
	height: 100%;
}

.tpl-topics-pager .arrow a::before, .tpl-topics-pager .arrow a::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.tpl-topics-pager .arrow a::before {
	width: 7px;
	height: 7px;
	border-top: 2px solid #03325E;
	border-right: 2px solid #03325E;
}

.tpl-topics-pager .arrow.prev {
	margin-right: 6px;
}

.tpl-topics-pager .arrow.prev a::before {
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

.tpl-topics-pager .arrow.next {
	margin-left: 6px;
}

.tpl-topics-pager .arrow.next a::before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.tpl-topics-pager ul {
	display: -webkit-flex;
	/* Safari */
	display: flex;
}

.tpl-topics-pager ul li {
	width: 60px;
	height: 60px;
	background-color: #EBF1F6;
	margin-right: 6px;
}

.tpl-topics-pager ul li:last-child {
	margin-right: 0;
}

.tpl-topics-pager ul li a {
	height: 100%;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: center;
	/* Safari */
	justify-content: center;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
	font-size: 16px;
	text-decoration: none;
}

.tpl-topics-pager ul li.current {
	background-color: #03325E;
}

.tpl-topics-pager ul li.current a {
	color: white;
}
.tpl-topics-pager ul li.current {
	color: white;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: center;
	/* Safari */
	justify-content: center;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
}
@media screen and (max-width: 740px) {
	.tpl-topics-pager {
		padding-top: 70px;
	}
	.tpl-topics-pager .arrow {
		width: 45px;
		height: 45px;
	}
	.tpl-topics-pager .arrow a::before {
		width: 7px;
		height: 7px;
		border-top: 2px solid #03325E;
		border-right: 2px solid #03325E;
	}
	.tpl-topics-pager .arrow.prev {
		margin-right: 5px;
	}
	.tpl-topics-pager .arrow.next {
		margin-left: 5px;
	}
	.tpl-topics-pager ul li {
		width: 45px;
		height: 45px;
		margin-right: 5px;
	}
	.tpl-topics-pager ul li a {
		font-size: 14px;
	}
}

/* .tpl-topics-detail
-----------------------*/
.tpl-topics-detail {
	padding: 120px 0 60px;
}

.tpl-topics-detail .topics-ttl {
	color: #03325E;
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 20px;
}

.tpl-topics-detail .topics-date {
	color: #03325E;
	font-size: 14px;
	padding-bottom: 35px;
	border-bottom: 1px solid #D7D7D7;
}

.tpl-topics-detail .topics-contents {
	padding: 55px 0 70px;

  /* display: -webkit-flex; */

  /* Safari */
	/* display: flex;
	-webkit-justify-content: space-between; */

  /* Safari */
	/* justify-content: space-between;
	-webkit-flex-wrap: wrap; */

  /* Safari */
	/* flex-wrap: wrap; */
	border-bottom: 1px solid #D7D7D7;
}

.tpl-topics-detail .topics-contents p {
	font-size: 14px;
}

.tpl-topics-detail .topics-contents figure {
	width: 48%;
	padding-top: 65px;
	text-align: center;
	box-sizing: border-box;
}

.tpl-topics-detail .topics-contents figure:nth-of-type(odd) {
	padding-left: 35px;
}

.tpl-topics-detail .topics-contents figure:nth-of-type(even) {
	padding-right: 35px;
}

.tpl-topics-detail .topics-contents figure img {
	margin-bottom: 15px;
}

.tpl-topics-detail .topics-contents figure figcaption {
	font-size: 14px;
	line-height: 1.5;
}

.tpl-topics-detail .topics-btn {
	padding: 60px 90px 0;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: space-between;
	/* Safari */
	justify-content: space-between;
}

.tpl-topics-detail .topics-btn .tpl-btn {
	width: 240px;
	height: 70px;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: center;
	/* Safari */
	justify-content: center;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
	position: relative;
	background-color: #C0CCD7;
	color: white;
}

.tpl-topics-detail .topics-btn .tpl-btn::before {
	content: "";
	display: block;
	height: 1px;
	width: 20px;
	background-color: white;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	transform: rotate(0deg);
	border: none;
	transition-property: transform, opacity;
	transition-duration: 0.5s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.tpl-topics-detail .topics-btn .tpl-btn a {
	width: 240px;
}

@media screen and (max-width: 740px) {
	.tpl-topics-detail .topics-btn .tpl-btn a {
		width: 100%;
	}
}

.tpl-topics-detail .topics-btn .tpl-btn.only-pc {
	display: inline-block;
}

.tpl-topics-detail .topics-btn .tpl-btn.only-pc a::before {
	display: none;
}

.tpl-topics-detail .topics-btn .tpl-btn.only-sp {
	display: none;
}

@media screen and (max-width: 740px) {
	.tpl-topics-detail {
		padding: 70px 0 0;
	}
	.tpl-topics-detail .topics-ttl {
		font-size: 20px;
		margin-bottom: 10px;
	}
	.tpl-topics-detail .topics-date {
		padding-bottom: 20px;
	}
	.tpl-topics-detail .topics-contents {
		padding: 35px 0 60px;
		display: block;
	}
	.tpl-topics-detail .topics-contents figure {
		width: auto;
		padding-top: 50px;
	}
	.tpl-topics-detail .topics-contents figure:nth-of-type(odd) {
		padding-left: 0;
	}
	.tpl-topics-detail .topics-contents figure:nth-of-type(even) {
		padding-right: 0;
	}
	.tpl-topics-detail .topics-contents figure img {
		margin-bottom: 15px;
	}
	.tpl-topics-detail .topics-contents figure figcaption {
		font-size: 12px;
	}
	.tpl-topics-detail .topics-btn {
		padding: 45px 0 0;
		-webkit-flex-wrap: wrap;
		/* Safari */
		flex-wrap: wrap;
	}
	.tpl-topics-detail .topics-btn .tpl-btn {
		width: 47.5%;
	}
	.tpl-topics-detail .topics-btn .tpl-btn.only-sp {
		width: 100%;
		display: inline-block;
		margin-top: 20px;
	}
	.tpl-topics-detail .topics-btn .tpl-btn.only-sp a::before {
		display: none;
	}
	.tpl-topics-detail .topics-btn .tpl-btn.only-pc {
		display: none;
	}
}

/* .tpl-contents-link-list
-----------------------*/
.tpl-contents-link-list {
	padding: 150px 0 0;
}

.tpl-contents-link-list ul {
	padding: 55px 0 0;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	/* Safari */
	justify-content: space-between;
}

.tpl-contents-link-list ul li {
	width: 470px;
	height: 120px;
	margin-bottom: 40px;
}

.tpl-contents-link-list ul li a {
	background-color: #EBF1F6;
	height: 100%;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
	padding: 0 110px 0 45px;
	text-decoration: none;
	position: relative;
}

.tpl-contents-link-list ul li a::before {
	content: "";
	display: block;
	height: 1px;
	width: 20px;
	background-color: #03325E;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	transform: rotate(0deg);
	border: none;
	transition-property: transform, opacity;
	transition-duration: 0.5s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.tpl-contents-link-list ul li a::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: white;
	opacity: 0.4;
	transform: scaleY(0);
	transition-property: transform;
	transition-duration: 0.5s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.tpl-contents-link-list ul li a p {
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.5625 !important;
}

.tpl-contents-link-list ul li a .contents-link-icon {
	width: 132px;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 83px auto;
}

@media screen and (min-width: 741px) {
	.tpl-contents-link-list ul li a:hover::before {
		opacity: 0;
		transform: translateX(20px);
	}
	.tpl-contents-link-list ul li a:hover::after {
		transform: scaleY(1);
	}
}

@media screen and (max-width: 740px) {
	.tpl-contents-link-list {
		padding: 75px 0 0;
	}
	.tpl-contents-link-list ul {
		display: block;
		padding: 30px 0 0;
	}
	.tpl-contents-link-list ul li {
		width: auto;
		height: 75px;
		margin-bottom: 10px;
	}
	.tpl-contents-link-list ul li a {
		padding: 0 100px 0 60px;
	}
	.tpl-contents-link-list ul li a::before {
		width: 40px;
	}
	.tpl-contents-link-list ul li a .contents-link-icon {
		width: 100px;
		background-size: 66px auto;
	}
}

@media screen and (max-width: 740px) and (min-width: 741px) {
	.tpl-contents-link-list ul li a:hover::before {
		opacity: 0;
		transform: translateX(20px);
	}
	.tpl-contents-link-list ul li a:hover::after {
		transform: scaleY(1);
	}
}

/* .tpl-contents-box-list
-----------------------*/
.tpl-contents-box-list {
	background-color: #EBF1F6;
	margin: 0 0 0;
	padding: 120px 0 150px;
}

.tpl-contents-box-list ul {
	padding: 55px 0 0;
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-flex-wrap: wrap;
	/* Safari */
	flex-wrap: wrap;
	margin-right: -30px;
	margin-bottom: -94px;
}

.tpl-contents-box-list ul li {
	width: 300px;
	margin-right: 30px;
	margin-bottom: 94px;
}

.tpl-contents-box-list ul li .white-box {
	width: 300px;
	height: 250px;
	background-color: white;
	position: relative;
}

.tpl-contents-box-list ul li .white-box .img-wrap {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: center;
	/* Safari */
	justify-content: center;
	-webkit-align-items: center;
	/* Safari */
	align-items: center;
	height: 214px;
}

.tpl-contents-box-list ul li .white-box .img-wrap img {
	width: 131px;
}

.tpl-contents-box-list ul li .white-box .tpl-btn {
	position: absolute;
	left: 0;
	bottom: -34px;
	width: 260px;
}

@media screen and (max-width: 740px) {
	.tpl-contents-box-list {
		padding: 75px 0;
	}
	.tpl-contents-box-list ul {
		margin-right: 0;
		margin-bottom: -25px;
		-webkit-justify-content: space-between;
		/* Safari */
		justify-content: space-between;
	}
	.tpl-contents-box-list ul li {
		width: 48%;
		margin-right: 0;
		margin-bottom: 25px;
	}
	.tpl-contents-box-list ul li .white-box {
		width: 100%;
		height: auto;
	}
	.tpl-contents-box-list ul li .white-box .img-wrap {
		height: 115px;
	}
	.tpl-contents-box-list ul li .white-box .img-wrap img {
		width: 99px;
	}
	.tpl-contents-box-list ul li .white-box .tpl-btn {
		position: static;
		width: 100%;
	}
}
#tpl-contents .tpl-subcate-title-wrap {
	margin-bottom: -52px;
	border-bottom: none;
}

@media screen and (max-width: 740px) {
	#tpl-contents .tpl-subcate-title-wrap {
		margin-bottom: -45px;
		border-bottom: none;
	}
}

#tpl-contents .list-navi-upper {
	border-top: 1px solid #023462;
	margin-top: 45px;
	padding: 45px 0 0;
	text-align: center;
}

@media screen and (max-width: 740px) {
	#tpl-contents .list-navi-upper {
		margin-left: -10px;
		margin-right: -10px;
	}
}

#tpl-contents .list-navi-upper .category-navi {
	padding-bottom: 30px;
}

#tpl-contents .list-navi-upper .category-navi li {
	min-width: 110px;
	width: auto;
}

@media screen and (max-width: 740px) {
	#tpl-contents .list-navi-upper .category-navi li {
		min-width: 80px;
		vertical-align: top;
		margin: 0 5px;
	}
	#tpl-contents .list-navi-upper .category-navi li a {
		display: table;
		width: 100%;
	}
	#tpl-contents .list-navi-upper .category-navi li a span {
		line-height: 1.2;
		display: table-cell;
		vertical-align: middle;
		box-sizing: border-box;
		height: 40px;
		padding-top: 5px;
		padding-bottom: 5px;
	}
}

#tpl-contents .pager {
	letter-spacing: -0.3em;
	line-height: 15px;
	color: #888;
}

#tpl-contents .list-navi-bottom .pager {
	padding-top: 30px;
}

@media screen and (max-width: 740px) {
	#tpl-contents .pager {
		padding-left: 5px;
		padding-right: 5px;
		font-size: 13px;
	}
}

#tpl-contents .pager .btn {
	letter-spacing: normal;
	display: inline-block;
}

@media screen and (max-width: 740px) {
	#tpl-contents .pager .btn {
		margin-bottom: 15px;
	}
}

#tpl-contents .pager .btn a {
	display: block;
}

#tpl-contents .pager ul {
	display: inline-block;
}

#tpl-contents .pager ul li {
	letter-spacing: normal;
	display: inline-block;
	padding: 0 10px;
	line-height: 1;
	border-left: 1px solid #666;
}

@media screen and (max-width: 740px) {
	#tpl-contents .pager ul li {
		margin-bottom: 15px;
	}
}

#tpl-contents .pager ul li:first-child {
	border-left: none;
}

#tpl-contents .pager ul a {
	display: block;
	padding: 0 15px;
	margin: 0 -15px;
}

#tpl-contents .list-wrap {
	padding-top: 30px;
}

#tpl-contents .list-wrap .bold {
	font-weight: bold;
}

@media screen and (max-width: 740px) {
	#tpl-contents .list-wrap {
		padding-top: 15px;
		margin: 0 -10px;
	}
}

#tpl-contents .list-wrap ul {
	border-bottom: 1px solid #DDD;
}

#tpl-contents .list-wrap li {
	border-top: 1px solid #DDD;
	padding: 30px 0;
	overflow: hidden;
}

@media screen and (max-width: 740px) {
	#tpl-contents .list-wrap li {
		padding: 20px;
	}
}

#tpl-contents .list-wrap li a {
	display: block;
	padding: 30px 0;
	margin: -30px 0;
	color: #023462;
}

#tpl-contents .list-wrap li a:hover {
	text-decoration: none;
}

@media screen and (max-width: 740px) {
	#tpl-contents .list-wrap li a {
		display: block;
		padding: 20px;
		margin: -20px;
	}
}

#tpl-contents .list-wrap li .date {
    width: 110px;
    float: left;
    display: block;
    color: #333;
}

@media screen and (max-width: 740px) {
	#tpl-contents .list-wrap li .date {
		width: auto;
		float: none;
	}
	#tpl-contents .list-wrap li .date.float {
		float: left;
		padding-right: 10px;
	}
}

#tpl-contents .list-wrap li .cate-label {
	width: auto;
	float: left;
	display: block;
	color: #333;
	padding-right: 20px;
}

#tpl-contents .list-wrap li .cate-label span {
	background: #023462;
	line-height: 1;
	color: #FFF;
	padding: 0 3px;
	font-size: 12px;
	margin-right: 1px;
}

@media screen and (max-width: 740px) {
	#tpl-contents .list-wrap li .cate-label {
		width: auto;
		float: none;
	}
}

#tpl-contents .list-wrap li .title {
	display: block;
	overflow: hidden;
}

@media screen and (max-width: 740px) {
	#tpl-contents .list-wrap li .title {
		padding-top: 5px;
	}
}

#tpl-contents .list-wrap li a:hover .title {
	text-decoration: underline;
}

#tpl-contents .list-wrap li .detail-wrap {
	padding-top: 20px;
}

@media screen and (max-width: 740px) {
	#tpl-contents .list-wrap li .detail-wrap {
		padding-top: 15px;
	}
}

#tpl-contents .list-navi-bottom {
	text-align: center;
	padding-top: 20px;
}

@media screen and (max-width: 740px) {
	#tpl-contents .list-navi-bottom {
		padding-top: 0;
	}
}
#tpl-contents .list-wrap .bx-viewport li .date {
	color: #fff;
}
#tpl-contents .list-wrap .bx-viewport li a {
	color: #fff;
	padding: 20px 0;
	margin: -20px 0;
}
@media screen and (max-width: 740px) {
	#tpl-contents .list-wrap .bx-viewport li a {
	padding: 20px;
}
}
#tpl-contents .list-wrap .bx-viewport li {
	border-top: none;
	padding: 10px 0;
}

.article-title-wrap .text {
	padding-top: 40px;
}

.article-title-wrap .text .date {
	color: #03325E;
	font-size: 14px;
	padding-bottom: 15px;
}

.article-title-wrap .text h1 {
	color: #03325E;
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 20px;
}

@media only screen and (max-width: 740px) {
	.article-title-wrap .text h1 {
		font-size: 20px;
	}
}
