@charset "utf-8";
/* ------------------------------
 コンテンツ（PC）
------------------------------ */
 .contents > .inBlock {
    padding-top: 110px;
}
.contents .mainContents .newsHead {
	display: none;
	position: relative;
	margin-bottom: 50px;
	padding-left: 16px;
	font-size: 2.4rem;
	line-height: 1.25;
	border-left: 3px solid #004da0;
}
.dateBox {
	display: flex;
	margin-bottom: 10px;
}
/* -- サイドナビ -- */
.sidenavi > ul > li a {
	position: relative;
	display: flex;
	align-items: center;
	padding: 21px 20px;
}
.sidenavi > ul > li.on > p > a,
.sidenavi > ul > li > ul.pulldown > li.on > p > a {
	color: #004da0;
	font-weight: bold;
}
.sidenavi > ul > li > ul {
	display: none;
}
.sidenavi > ul > li > ul > li a {
	padding: 21px calc(35px + 1em);
}
.sidenavi > ul > li > ul > li a::before {
	content: "";
	width: 12px;
	height: 10px;
	background: url(../img/icon_arrow.svg) no-repeat center / cover;
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(10px + 1em);
	margin: auto;
}
.sidenavi > ul > li.on > ul {
	display: block;
}
.sidenavi ul li a {
	color: #1a1a1a;
}
@media print, screen and (min-width: 768px) {
	.contents {
		margin-bottom: 140px;
	}
	.heading {
		margin-bottom: 70px;
	}
	/* -- サイドナビ -- */
	.sidenavi .title {
		border-top: solid 2px #004da0;
	}
	.sidenavi .title a {
		color: #1a1a1a;
		position: relative;
		display: flex;
		align-items: center;
		width: 100%;
		font-size: 2rem;
		font-weight: bold;
		padding: 24px 50px 24px 20px;
	}
	.sidenavi .title a::after {
		content: "";
		width: 20px;
		height: 20px;
		background: url(../img/icon_arrow_circle.svg) no-repeat center / cover;
		position: absolute;
		right: 12px;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	.sidenavi ul.toggleContents {
		display: block !important;
	}
	.sidenavi ul li {
		border-bottom: solid 1px #cddbe0;
	}
	.sidenavi > ul > li:first-child {
		border-top: solid 1px #cddbe0;
	}
	.sidenavi > ul > li.on > p > a,
	.sidenavi > ul > li > ul.pulldown > li.on > p > a {
		background-color: #e6f2fa;
	}
	.sidenavi > ul > li > ul {
		border-top: solid 1px #cddbe0;
	}
	.sidenavi > ul > li > ul > li:last-child {
		border-bottom: none;
	}
	.sidenavi > ul > li.on > p > a:hover,
	.sidenavi > ul > li > ul.pulldown > li.on > p > a:hover {
		opacity: 1;
	}
}
/* ------------------------------
 コンテンツ（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	.contents {
		padding-bottom: 0;
	}
	.contents .mainContents .newsHead {
		margin-bottom: 20px;
		padding-left: 10px;
		font-size: 1.8rem;
	}
	/* -- サイドナビ -- */
	.contents.listContents .inBlock {
		display: flex;
		flex-direction: column-reverse;
		row-gap: 50px;
		margin-top: 40px;
	}
	.sidenavi .toggle {
		position: relative;
		font-weight: 500;
		color: #fff;
		background-color: #004da0;
		border-radius: 7px;
		padding: 10px 5%;
	}
	.sidenavi .toggle .toggleBtn {
		width: 46px;
		height: 46px;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 1px;
		margin: auto;
	}
	.sidenavi .toggle .toggleBtn::before,
	.sidenavi .toggle .toggleBtn::after {
		content: "";
		width: 10px;
		height: 10px;
		border-top: solid 2px #fff;
		border-right: solid 2px #fff;
		transform: rotate(135deg);
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 6px;
		margin: auto;
		transition: opacity .3s ease-in-out;
	}
	.sidenavi .toggle .toggleBtn::after {
		transform: rotate(-45deg);
		top: 6px;
		bottom: 0;
	}
	.sidenavi .toggle:not(.is-open) .toggleBtn::before,
	.sidenavi .toggle.is-open .toggleBtn::after {
		opacity: 1;
	}
	.sidenavi .toggle.is-open .toggleBtn::before,
	.sidenavi .toggle:not(.is-open) .toggleBtn::after {
		opacity: 0;
	}
	.sidenavi > ul.toggleContents {
		display: none;
		box-shadow: rgba(0, 50, 90, 0.1) 0 0 18px;
		background-color: #fff;
		border-radius: 10px;
		padding: 18px 6%;
		margin-top: 10px;
	}
	.sidenavi > ul > li:not(:last-child) {
		margin-bottom: 2px;
	}
	.sidenavi > ul > li > p > a {
		font-weight: 500;
		padding: 3px 0;
	}
	.sidenavi > ul > li > ul {
    	padding: 5px 0 10px;
	}
	.sidenavi > ul > li > ul > li a {
		padding: 3px calc(22px + 1em);
	}
	.sidenavi > ul > li > ul > li a::before {
		width: 16px;
		height: 10px;
		left: 1em;
	}
}
/* ------------------------------
 一覧（PC）
------------------------------ */
.newsList li:first-child {
	border-top-width: 2px;
}
/* ------------------------------
 詳細（PC）
------------------------------ */
/* -- A-SAP -- */
.team {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
}
.cms_block.team::after {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	background: url(../img/team.svg) no-repeat center / cover;
	order: 1;
}
.team .cms_image {
	text-align: center;
	margin-bottom: 0;
}
.team .cms_image:last-child {
	order: 2;
}
.team .cms_image img {
	width: 100%;
}
.team .cms_image .cms_caption_b {
	text-align: center;
}
@media print, screen and (min-width: 768px) {
	.team .cms_image {
		max-width: 44.296%;
	}
	.team .cms_image img {
		width: 100%;
	}
	.mainContents .youtube {
		max-width: 640px;
		margin-left: auto;
		margin-right: auto;
	}
}
/* ------------------------------
 詳細（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	.team {
		flex-direction: column;
	}
	.team .cms_image:not(:last-child) {
		margin-bottom: 10px;
	}
	.team .cms_image .cms_caption_b {
		text-align: center;
	}
	.team {
		gap: 5px;
	}
}