@charset "UTF-8";

/* ====================================
	共通スタイル
 ==================================== */
/* カラー */
.color-blue {
	color: #0A78C9;
}

article {
	overflow: hidden;
}

.fix-img {
	margin-top: 2rem;
}

/* メインビジュアル */

ul.list-page-navi a,
.mv-title {
	color: #0A78C9;
}

.btn-movie a {
	color: #0A78C9;
}

.color-blue,
.mv-title {
	color: #0A78C9;
}

.main-title {
	background-color: #0A78C9;
}

.inner-title {
	font-weight: 700;
}

span.marker {
	display: inline;
	background: linear-gradient(transparent 60%, #EFF8FD 60%);
	padding: 0 0.1em;
}

ul.list-page-navi a {
	border: solid 1px #0A78C9;
}

ul.list-page-navi a::before {

	background-color: #0A78C9;
}

/* 動画を見るボタン */
.btn-movie a {
	display: block;
	padding: .7em;
	text-align: center;
	font-size: 2rem;
	border: solid 2px #0A78C9;
	border-radius: 5px;
	text-decoration: none;
}

/* メインセクション */
.main-title {
	font-weight: 900;
}

/* サブセクション */
.sub-section .sub-title {
	position: relative;
	font-size: 1.8rem;
	font-weight: 700;
	padding-left: 1.2rem;
	background-color: #EFF8FD;
	color: #0A78C9;

}

.sub-title::before {
	content: '';
	display: block;
	width: 5px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #0A78C9;
}

.more {
	display: block;
	background-color: #EFF8FD;
	margin-top: 1rem;
}

.icon-img .img {
	width: 18%;
	margin-top: 3rem;
}

/* サブサブセクション */
.sub-sub-title {
	color: #0A78C9;
	padding-left: 13px;
	position: relative;
	font-weight: 700;
}

.caption-r {
	font-size: 1.2rem;
	text-align: right;
}

.text-area {
	padding-top: 0.3em;
	text-align: center;
	font-size: 1.4rem;
}

.right {
	text-align: right;
}

.left {
	text-align: left;
}

.center {
	text-align: center;
}

/* コンテンツ紹介 */
ul.list-figures.col5 li {
	background-color: #EFF8FD;
}

ul.list-figures.has-frame li .img {
	position: relative;
}

ul.list-figures .sub-name {
	text-align: center;
	margin-top: 0.6rem;
}

ul.list-figures .name {
	font-weight: 500;
	text-align: center;
	line-height: 1.4;
	margin-top: 1.2rem;
}

/* ====================================
	1023px以下専用スタイル
===================================== */
@media only screen and (max-width: 1023px) {

	/* メインビジュアル */
	#mainVisual {
		background-image: url(images/main-visual_sp.jpg);
	}

	/* 画像 サイズ調整 */
	.sp-mt {
		margin-top: 1rem;
	}

	.text {
		font-size: 1.4rem;
		line-height: 1.6;
	}

	.inner-title {
		font-size: 1.6rem;
	}

	.has-small-title .fix-img {
		margin-top: 1.5rem;
	}

	/* メインセクション */
	.main-section {
		padding-top: 8rem;
	}

	.main-title {
		max-width: 768px;
		margin: 0 auto 5rem;
		padding: .7em;
		font-size: 2rem;
		text-align: center;
	}

	.sub-section .sub-title {
		font-size: 1.6rem;
		padding: 0.2em 0.2em 0.2em 1.1em;
		margin-top: 5rem;
	}

	/* サブサブセクション */
	.sub-sub-title {
		margin-top: 3rem;
		font-size: 1.5rem;
		padding-left: 0px;
	}

	.sub-sub-title.no-mt {
		margin-top: 0;
	}

	.sub-title+.sub-sub-item>.sub-sub-title,
	.sub-title+.sub-sub-title {
		margin-top: 3rem;
	}

	/* サブセクション */
	.sub-section .text.small {
		font-size: 1.3rem;
		margin-top: 0.8rem;
	}

	.sub-title+.sub-sub-item {
		padding-top: 4rem;
	}

	.sub-title+.text {
		padding-top: 2rem;
	}

	.text-container,
	.img-container {
		margin-top: 2rem;
	}

	.sub-text {
		font-size: 1.4rem;
		margin-top: 2rem;
	}

	.more {
		font-size: 1.2rem;
		padding: 0.6rem 0.6rem;
	}

	.icon-img {
		margin-top: 2rem;
		margin-bottom: 2rem;
	}

	#main03 .img-container {
		margin-top: 2.6rem;
	}

	#main03 .sub11 .flex-item:last-of-type .img-container {
		margin-top: 3.6rem;
	}

	/* 画像下揃え */
	.fix-bottom-img .fix-img {
		min-height: 0%;
		width: 100%;
		margin-top: auto;
		padding-top: 1.5rem;
	}

	.fix-bottom-img.list-figures.sp-col2 li {
		display: flex;
		flex-direction: column;
	}

	/* 画像リスト */
	/* ul.list-figures li {
		margin-top: 1em;
	} */

	ul.list-figures li:first-child {
		margin-top: 0;
	}

	ul.list-figures li .img {
		width: 100%;
	}

	ul.list-figures.sp-col2,
	ul.list-figures.col4 {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	/* ul.list-figures.sp-col2 li,
	ul.list-figures.col4 li {
		width: 48%;
		margin-top: 2rem;
	} */
	ul.list-figures.sp-col2 li {
		width: 48%;
	}

	#main02 ul.list-figures.col4 li.sp-one {
		margin-right: 30%;
	}


	ul.list-figures.has-frame li {
		margin-top: 3rem;
	}

	ul.list-figures.sp-col2.no-gap li {
		width: 50%;
	}

	ul.list-figures.sp-col2 li:nth-child(-n+2),
	ul.list-figures.col4 li:nth-child(-n+2) {
		margin-top: 0;
	}

	ul.list-figures.sp-col3 {
		display: flex;
		flex-wrap: wrap;
	}

	ul.list-figures.sp-col3 li {
		width: 30%;
		margin-left: 5%;
		margin-top: 2rem;
	}

	ul.list-figures.sp-col3 li.large .img {
		padding: 30.8% 4%;
	}

	ul.list-figures.sp-col3 li:nth-child(3n-2) {
		margin-left: 0;
	}

	ul.list-figures.sp-col3 li:nth-child(-n+3) {
		margin-top: 0;
	}

	ul.list-figures.sp-col2 li.large {
		width: 100%;
	}

	.flex-container.sp-col2 {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	.flex-container.sp-col2 .flex-item {
		width: 48%;
		margin-top: 2rem;
	}

	.flex-container.sp-col2 .flex-item:nth-of-type(-n+2) {
		margin-top: 0;
	}

	.flex-container.sp-col2 .flex-item:nth-of-type(n+3) {
		margin-top: 2rem;
	}

	/* コンテンツ紹介 */
	ul.list-figures.col5 li {

		padding: 1em 0.4em 0.6em;
	}

	ul.list-figures .name {
		font-size: 1rem;
	}

	/* 動画を見るボタン */
	.btn-movie {
		width: 200px;
	}

	.btn-movie a {
		font-size: 1.6rem;
	}

}

/* ====================================
	1024px以上印刷専用スタイル
===================================== */
@media print,
screen and (min-width: 1024px) {
	.s-img {
		width: 85%;
		margin-left: auto;
		margin-right: auto;
	}

	.pc-mt1 {
		margin-top: 1rem;
	}

	/* メインビジュアル */
	#mainVisual {
		background-image: url(images/main-visual.jpg);
	}

	/* 追尾ページナビ */
	ul.list-page-navi li {
		width: 31%;
	}

	ul.list-page-navi a {
		border: solid 2px #0A78C9;
	}

	/* メインセクション */
	.main-section {
		padding: 12rem 0 4rem;
	}

	.main-title {
		max-width: 1200px;
		margin: 0 auto 6rem;
		padding: .7em;
		font-size: 2.4rem;
		text-align: center;
	}

	/* サブセクション */
	.sub-section .sub-title {
		font-size: 2.2rem;
		padding: 0.4em 0.4em 0.4em 1.2em;
	}

	/* サブセクション */


	.inner-title {
		font-size: 2.4rem;
	}

	.sub-section .text.small {
		font-size: 1.4rem;
		margin-top: 1rem;
	}


	.sub-text {
		font-size: 1.6rem;
		margin-top: 2rem;
	}

	.text-container,
	.img-container {
		margin-top: 3rem;
	}

	.text-container.pc-slim,
	.img-container.pc-slim {
		margin-top: 2rem;
	}

	.more {
		font-size: 1.4rem;
		padding: 0.6rem 0.8rem;
	}

	/* サブサブアイテム */
	.sub-sub-item {
		padding-top: 8rem;
	}

	.text+.sub-sub-item {
		padding-top: 4rem;
	}

	.sub-title+.sub-sub-item {
		padding-top: 4rem;
	}

	.sub-title+.text {
		padding-top: 3rem;
	}

	.sub-sub-title {
		font-size: 1.8rem;
		margin-top: 3rem;
	}

	.sub-sub-title::before {
		content: '';
		display: block;
		width: 4px;
		height: 85%;
		background: #0A78C9;
		position: absolute;
		top: 8%;
		left: 0;
	}

	.sub-sub-title+.text-container {
		margin-top: 2rem;
	}



	/* 画像リスト */


	ul.list-figures {
		display: flex;
		flex-wrap: wrap;
	}

	ul.list-figures.center {
		justify-content: center;
	}

	ul.list-figures li .img {
		width: 100%;
	}


	ul.list-figures.col2 {
		justify-content: space-between;
	}

	ul.list-figures.col2 li {
		width: 49%;
		margin-top: 1em;
	}

	ul.list-figures.col5.has-frame li.large .img {
		padding: 30.7% 4%;
	}

	ul.list-figures.col2.no-gap li {
		width: 50%;
	}

	ul.list-figures.col2 li:nth-child(-n+2) {
		margin-top: 0;
	}

	ul.list-figures.col3 {
		justify-content: left;
	}

	ul.list-figures.col3 li {
		width: 20.8%;
		margin-left: 5.6%;
	}

	ul.list-figures.col3 li:nth-child(3n-2) {
		margin-left: 0;
	}

	ul.list-figures.col3 li:nth-child(-n+3) {
		margin-top: 0;
	}

	ul.list-figures.col4 li {
		width: 20.8%;
		margin-left: 5.6%;
	}

	ul.list-figures.col4 li:nth-child(4n-3) {
		margin-left: 0;
	}

	ul.list-figures .name {
		font-size: 1.2rem;
	}

	.sepa2.flex-container.half>.flex-item {
		width: 47.2%;
	}

	.sepa2 ul.list-figures.col2 li {
		width: 44%;
	}



	/* コンテンツ紹介 */
	ul.list-figures.col5 li {
		width: 18.4%;
		margin-left: 2%;
		padding: 2.2em 0 2.2em;
		background-color: #EFF8FD;
	}

	ul.list-figures.col5.eitan li {
		padding: 1.6em 0 1.6em;
	}

	ul.list-figures.col5 li .img {
		padding: 0 2.2em;
	}

	ul.list-figures.col5 li .name {
		padding: 0 1em;
	}


	ul.list-figures.col5 li:nth-child(5n-4) {
		margin-left: 0;
	}

	.list-figures.col5 li:nth-of-type(n+6) {
		margin-top: 4rem;
	}

	/* ul.list-figures.col5 li.large {
	width: 24.2%;
} */
	ul.list-figures.col5 li.large {
		width: 18.4%;
	}

	.list-figures.col5.img-container {
		margin-top: 5rem;
	}

	/* 動画を見るボタン */
	.btn-movie {
		width: 300px;
	}

}

/* ====================================
	568px以上1023px以下専用スタイル
===================================== */
@media only screen and (min-width: 568px) and (max-width: 1023px) {


	.sp-small {
		display: none;
	}

	article .pc {
		display: none;
	}


	#main03 .adj {
		max-width: 600px;
		margin-left: auto;
		margin-right: auto;
	}

	.main-section .sp-col2-adj {
		padding-left: 14%;
		padding-right: 14%;
		margin-left: auto;
		margin-right: auto;
	}




	/* コンテンツ紹介 */
	/* ul.list-figures.sp-col2 li,
	ul.list-figures.col4 li {
		width: 46%;
		margin-top: 2rem;
	} */
	ul.list-figures.col2 li {
		/* padding: 0 4%; */
		width: 48%;
	}

	ul.list-figures.tab-col3 {
		display: flex;
		flex-wrap: wrap;
	}

	ul.list-figures.tab-col3 li {
		width: 30.66%;
		margin-left: 4%;
	}

	ul.list-figures.tab-col3 li:nth-child(3n-2) {
		margin-left: 0;
	}

	ul.list-figures.tab-col3 li.large {
		width: 30.66%;
	}

	ul.list-figures.tab-col3 li.large:nth-child(3n-2) {
		margin-left: 0;
	}

	ul.list-figures.col5 li {

		padding: 1em 0.4em 0.6em;
	}

	.list-figures.col5.img-container {
		margin-top: 5rem;
		padding: 0 6%;
	}

	.list-figures.col5 li:nth-of-type(n+4) {
		margin-top: 4rem;
	}

	/* タブPCレイアウト対応 */
	.flex-container.tab-half {
		justify-content: space-between;
	}

	.flex-container.tab-half>.flex-item {
		width: 47.2%;
	}

	.tab-half ul.list-figures.col2 li {
		width: 44%;
	}

	ul.list-figures.tab-col4 li {
		width: 20.8%;
		margin-left: 5.6%;
	}

	ul.list-figures.tab-col4 li:nth-child(4n-3) {
		margin-left: 0;
	}

	ul.list-figures.tab-col4 li {
		width: 20.8%;
		margin-left: 5.6%;
	}

	ul.list-figures.tab-col4 {
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
	}

	.sub-sub-title::before {
		content: '';
		display: block;
		width: 4px;
		height: 85%;
		background: #0A78C9;
		position: absolute;
		top: 8%;
		left: 0;
	}

	.sub-sub-title {
		padding-left: 13px;
	}

	.sub-sub-title.no-mt {
		margin-top: 3rem;
		/*  no-mtをspだけにすればよい*/
	}

	#main02 ul.list-figures.tab-col4 li:first-child {
		margin-right: 0%;
	}

}

/* ====================================
	567px以下専用スタイル
===================================== */
@media only screen and (max-width: 567px) {
	.sp-large {
		display: none;
	}

	/* サブセクション */
	.text-container {
		margin-top: 2rem;
	}

	.img-container {
		margin-top: 2rem;
	}

	.list-figures.col5.img-container {
		margin-top: 3rem;
	}

	/* 
	.flex-container>.flex-item:nth-of-type(n+2)>.text-container:first-child,
	.flex-container>.flex-item:nth-of-type(n+2)>.img-container:first-child {
		margin-top: 0;
	} */



	/* 注釈セクション */
	.caption-section {
		padding-top: 5rem;
	}

	/* サブサブセクション */


	.sub-title+.sub-sub-item>.sub-sub-title,
	.sub-title+.sub-sub-title {
		margin-top: 3rem;
	}

	/* 画像リスト */
	/* ul.list-figures li {
		margin-top: 1em;
	} */

	ul.list-figures li:first-child {
		margin-top: 0;
	}

	ul.list-figures li .img {
		width: 100%;
	}

	ul.list-figures.sp-col2,
	ul.list-figures.col4 {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	/* ul.list-figures.sp-col2 li,
	ul.list-figures.col4 li {
		width: 47%;
		margin-top: 2rem;
	} */
	ul.list-figures.sp-col2 li {
		width: 47%;
	}

	ul.list-figures.has-frame li {
		margin-top: 3rem;
	}

	ul.list-figures.sp-col2.no-gap li {
		width: 50%;
	}

	/* ul.list-figures.sp-col2 li:nth-child(-n+2),
	ul.list-figures.col4 li:nth-child(-n+2) {
		margin-top: 0;
	} */
	ul.list-figures.sp-col2 li:nth-child(-n+2),
	ul.list-figures.col4 li:nth-child(-n+2) {
		margin-top: 0;
	}

	ul.list-figures.sp-col3 {
		display: flex;
		flex-wrap: wrap;
	}

	ul.list-figures.sp-col3 li {
		width: 32%;
		margin-left: 2%;
		margin-top: 2rem;
	}


	ul.list-figures.sp-col3 li:nth-child(3n-2) {
		margin-left: 0;
	}

	ul.list-figures.sp-col3 li:nth-child(-n+3) {
		margin-top: 0;
	}

	ul.list-figures.sp-col2 li.large {
		width: 100%;
	}


	ul.list-figures.sp-col2 li.large+li {
		margin-top: 2rem;
	}

	.flex-container.sp-col2 {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	.flex-container.sp-col2 .flex-item {
		width: 48%;
		margin-top: 2rem;
	}



	.flex-container.sp-col2 .flex-item:nth-of-type(-n+2) {
		margin-top: 0;
	}

	.flex-container.sp-col2 .flex-item:nth-of-type(n+3) {
		margin-top: 2rem;
	}




}