@charset "utf-8";
/* CSS Document */

:root{
	--mainC:#0C96C6;
	--mainthinC:#EFF8FC;
}


/*ヘッダー*/
body {
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-weight: 500;
	/* letter-spacing: 0.1em; */
}
.gothic {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 500;
}
.eng {
	font-family: "Roboto", sans-serif;
	font-weight: 500;
}

a {
	text-decoration: none;
	color: #3d7ab0;
}
a.imgOver:hover {
	opacity: 0.7;
}
ul {
	list-style: none;
}


.wrap {
	max-width: 760px;
	margin: 0 auto;
	padding: 0 15px;
}
/*PC→スマホ 表示・非表示
.pcBlock { display: block !important;}
.spBlock { display: none !important;}
.pcInline { display: inline !important;}
.spInline { display: none !important;}
@media only screen and (max-width: 600px) {
	.pcBlock { display: none !important;}
	.spBlock { display: block !important;}
	.pcInline { display: none !important;}
	.spInline { display: inline !important;}
}
*/



#containar {
	color: #000000;
	overflow: hidden;
}
#containar p {
	line-height: 1.8;
}
table {
	border-collapse:collapse;
}
div.vid_contents {
	text-align: center;
	margin: 0.5em auto;
}
div.vid_contents video.vid_main {
	width: 100%;
	max-width: 750px;
}
div.youtube {
	width: 100%;
	aspect-ratio: 16 / 9;
}
div.youtube iframe {
	width: 100%;
	height: 100%;
}
.textCenter {
	text-align: center;
}
.cap {
	text-indent: -1em;
	padding-left: 1em;
}








/*header*/
#header {
	padding: 15px 0;
}
#header .logo {
	max-width: 150px;
	margin: 0 auto;
}






/*related_page*/
.related_page {
	background: #EFF8FC;
	padding: 40px 0;
	padding-top: 0;
}
.related_page h2 {
	text-align: center;
	transform: translateY(-50%);
	margin-bottom: 10px;
}
.related_page h2 span {
	position: relative;
	display: inline-block;
	padding: 10px 40px;
	min-width: 120px;
	max-width: 100%;
	box-sizing: border-box;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	background: #0C96C6;
	border-radius: 50px;
}
.related_page h2 span::before {
	content: "";
	position: absolute;
	top: 96%;
	left: 50%;
	margin-left: -10px;
	border: 10px solid transparent;
	border-top: 10px solid #0C96C6;
}
.related_page h2 span .fa-solid {
	margin-right: 5px;
}
.related_page ul.list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.related_page ul.list li {
	width: 48.5%;
}
.related_page ul.list li a {
	display: flex;
	align-items: center;
	border: 1px solid #707070;
	background: #fff;
	color: #333;
	padding: 15px 12px;
}
.related_page ul.list li a:hover {
	opacity: 0.6;
}
.related_page ul.list li a figure {
	width: 35%;
	max-width: 115px;
	margin-right: 10px;
}
.related_page ul.list li a .text {
	flex: 1;
}
.related_page ul.list li a .text p {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
}
@media only screen and (max-width: 700px) {
	.related_page {
		padding: 30px 0;
		padding-top: 0;
	}
	.related_page h2 {
		margin-bottom: 0;
	}
	.related_page ul.list {
		margin-top: -5px;
	}
	.related_page ul.list li {
		width: 100%;
		margin-top: 12px;
	}
}






/*cta*/
.cta {
	background: #4898D3 url("img/bg_cta.png") no-repeat center bottom;
	background-size: 100% auto;
	padding: 40px 0 50px 0;
}
.cta h2 {
	max-width: 250px;
	margin: 0 auto;
	margin-bottom: 20px;
}
.cta ul.list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.cta ul.list > li {
	box-sizing: border-box;
	width: 31.5%;
	background: #fff;
	border-radius: 15px;
	padding: 30px 15px 15px 15px;
}
.cta ul.list li h3 {
	text-align: center;
	color: #4898D3;
	font-size: 21px;
	font-weight: 700;
}
.cta ul.list li .ico {
	max-width: 45px;
	margin: 15px auto;
}
.cta ul.list li ul.link {
	list-style: disc;
	color: #333;
	padding-left: 1em;
	font-size: 14px;
}
.cta ul.list li ul.link li {
	margin-top: 5px;
	line-height: 1.4;
}
.cta ul.list li ul.link li a {
	text-decoration: underline;
	color: #333;
}
.cta ul.list li ul.link li a:hover {
	text-decoration: none;
}
.cta nav.btn {
	margin-top: 30px;
	text-align: center;
}
.cta nav.btn a {
	position: relative;
	display: inline-block;
	background: #FFE405;
	box-shadow: 0px 3px 0px 0px #FFC400;
	color: #333;
	font-size: 18px;
	font-weight: 700;
	padding: 15px 30px;
	border-radius: 50px;
}
.cta nav.btn a:hover {
	background: #FFC400;
	top: 3px;
	box-shadow: none;
}
.cta nav.btn a .fa-solid {
	font-size: 8px;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}
@media only screen and (max-width: 600px) {
	.cta {
		background: #4898D3 url("img/bg_cta_sp.png") no-repeat center bottom;
		background-size: 100% auto;
		padding: 40px 0;
	}
	.cta h2 {
		margin-bottom: 10px;
	}
	.cta ul.list > li {
		width: 48%;
		padding: 20px 10px 10px 15px;
		margin: 10px auto;
	}
	.cta nav.btn {
		margin-top: 15px;
	}
	.cta ul.list li ul.link {
		font-size: 12px;
	}
}






/*footer*/
#footer {}
#footer .address {
	background: #EB7267;
	color: #fff;
	text-align: center;
	padding: 35px 0;
}
#footer .address .col {
	margin-bottom: 25px;
}
#footer .address h2 {
	position: relative;
	display: inline-block;
	margin-bottom: 30px;
	padding: 10px 20px;
	min-width: 120px;
	max-width: 100%;
	box-sizing: border-box;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	background: #EB7267;
	border: solid 2px #ffffff;
	border-radius: 50px;
}
#footer .address h2::before {
	content: "";
	position: absolute;
	bottom: -24px;
	left: 50%;
	margin-left: -15px;
	border: 12px solid transparent;
	border-top: 12px solid #EB7267;
	z-index: 2;
}
#footer .address h2::after {
	content: "";
	position: absolute;
	bottom: -30px;
	left: 50%;
	margin-left: -17px;
	border: 14px solid transparent;
	border-top: 14px solid #ffffff;
	z-index: 1;
}
#footer .address h3 {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 10px;
}
#footer .address p {
	font-size: 14px;
}
#footer .address .tel,
#footer .address .url {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 3px;
}
#footer .address .tel a,
#footer .address .url a {
	color: #fff;
}
#footer .address .tel a:hover,
#footer .address .url a:hover {
	opacity: 0.6;
}
#footer .address .instagram {
	max-width: 240px;
	margin: 0 auto;
}
#footer .copy {
	background: #4898D3;
	color: #fff;
	text-align: center;
	font-size: 14px;
	padding: 15px 0;
}
@media only screen and (max-width: 600px) {
	#footer .address {
		padding: 25px 0;
	}
	#footer .address .col {
		margin-bottom: 20px;
	}
	#footer .address h2 {
		margin-bottom: 25px;
	}
	#footer .copy {
		font-size: 12px;
		padding: 12px 0;
	}
}





/*containar*/
#containar {
	padding-top: 30px;
	padding-bottom: 30px;
}
#containar section {
	margin-bottom: 70px;
}
@media only screen and (max-width: 600px) {
	#containar section {
		margin-bottom: 50px;
	}
}










/*mv*/
#containar .mv {}
#containar .mv h1 {
	max-width: 440px;
	margin: 0 auto;
	margin-bottom: 30px;
}
#containar .mv h1 .pc {
	display: inline;
}
#containar .mv h1 .sp {
	display: none;
}
#containar .mv figure {
	margin-bottom: 30px;
}
#containar .mv p {
	font-size: 16px;
}
#containar .mv .toc {
	background: #F8F7F7;
	border-radius: 10px;
	padding: 25px 50px;
	margin-top: 30px;
}
#containar .mv .toc h3 {
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: var(--mainC);
	margin-bottom: 15px;
}
#containar .mv .toc ul.list {
	list-style: disc;
	color: #333;
	padding-left: 1em;
	font-size: 16px;
}
#containar .mv .toc ul.list li {
	margin-top: 10px;
	line-height: 1.4;
}
#containar .mv .toc ul.list li a {
	text-decoration: underline;
	color: #333;
}
#containar .mv .toc ul.list li a:hover {
	text-decoration: none;
}
@media only screen and (max-width: 600px) {
	#containar .mv h1 .pc {
		display: none;
	}
	#containar .mv h1 .sp {
		display: inline;
	}
	#containar .mv p {
		font-size: 15px;
	}
	#containar .mv .toc {
		padding: 15px 20px;
	}
	#containar .mv .toc h3 {
		font-size: 18px;
	}
	#containar .mv .toc ul.list {
		font-size: 15px;
	}
	#containar .mv .toc ul.list li {
		margin-top: 7px;
	}
}











/*sec01*/
#containar .sec1 {}
#containar .sec1 .memberList {
	border: 2px solid var(--mainC);
	background: var(--mainthinC);
	padding: 30px;
	padding-top: 0;
	border-radius: 15px;
}
#containar .sec1 .memberList h3 {
	text-align: center;
	transform: translateY(-50%);
	margin-bottom: 10px;
}
#containar .sec1 .memberList h3 span {
	position: relative;
	display: inline-block;
	padding: 10px 30px;
	min-width: 120px;
	max-width: 100%;
	box-sizing: border-box;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	background: var(--mainC);
	border-radius: 50px;
}
#containar .sec1 .memberList ul.list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#containar .sec1 .memberList ul.list li {
	width: 33.33%;
	box-sizing: border-box;
	padding: 0 5%;
	border-left: 1px dashed var(--mainC);
}
#containar .sec1 .memberList ul.list li:first-child {
	border-left: none;
}
#containar .sec1 .memberList ul.list li figure {
	width: 80%;
	max-width: 150px;
	margin: 0 auto;
	margin-bottom: 20px;
}
#containar .sec1 .memberList ul.list li .ico {
	text-align: center;
	margin-bottom: 10px;
}
#containar .sec1 .memberList ul.list li .ico span {
	font-size: 14px;
	font-weight: 700;
	padding: 5px 10px;
	border-radius: 5px;
	background: #6BAA5F;
	color: #fff;
}
#containar .sec1 .memberList ul.list li.memberA .ico span {
	background: #6BAA5F;
}
#containar .sec1 .memberList ul.list li.memberB .ico span {
	background: #E27979;
}
#containar .sec1 .memberList ul.list li.memberC .ico span {
	background: #0C96C6;
}
#containar .sec1 .memberList ul.list li p {
	font-size: 13px;
}
#containar .sec1 .memberList ul.list li p.name {
	text-align: center;
	margin-bottom: 10px;
}
#containar .sec1 .memberList ul.list li p.name strong {
	font-size: 16px;
	display: block;
}
@media only screen and (max-width: 800px) {
	#containar .sec1 .memberList {
		padding: 20px;
		padding-top: 0;
	}
	#containar .sec1 .memberList ul.list li {
		padding: 0 2%;
	}
}
@media only screen and (max-width: 600px) {
	#containar .sec1 .memberList h3 {
		margin-bottom: 0;
	}
	#containar .sec1 .memberList {
		padding: 10px 20px;
		padding-top: 0;
	}
	#containar .sec1 .memberList ul.list li {
		display: flex;
		align-items: center;
		padding: 20px 0;
		width: 100%;
		border: none;
		border-top: 1px dashed var(--mainC);
	}
	#containar .sec1 .memberList ul.list li:first-child {
		padding-top: 5px;
		border-top: none;
	}
	#containar .sec1 .memberList ul.list li figure {
		max-width: 100px;
		margin: 0;
		margin-right: 10px;
	}
	#containar .sec1 .memberList ul.list li .text {
		flex: 1;
		text-align: left;
	}
	#containar .sec1 .memberList ul.list li .ico {
		text-align: left;
		margin-bottom: 10px;
	}
	#containar .sec1 .memberList ul.list li p.name {
		text-align: left;
		margin-bottom: 5px;
	}
	#containar .sec1 .memberList ul.list li p.name strong {
		display: inline;
	}
}



#containar .sec1 h2 {
	background: var(--mainthinC);
	color: var(--mainC);
	padding: 15px 25px;
	margin: 30px 0;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
	display: flex;
	align-items: baseline;
}
#containar .sec1 h2 span {
	line-height: 1;
	font-size: 30px;
	margin-right: 5px;
}
#containar .sec1 h2.closing {
	align-items: center;
}
#containar .sec1 h2.closing span {
	width: 45px;
	margin-right: 10px;
}
#containar .sec1 h2.closing .text {
	flex: 1;
}
#containar .sec1 h2.closing .text em {
	font-style: normal;
	font-size: 16px;
	display: block;
}
#containar .sec1 figure.image {
	margin: 30px 0;
}
#containar .sec1 figure.image figcaption {
	line-height: 1.4;
	font-size: 12px;
	margin-top: 5px;
}
@media only screen and (max-width: 800px) {
	#containar .sec1 h2 {
		margin: 20px -15px;
	}
	#containar .sec1 h2.closing span {
		width: 35px;
	}
	#containar .sec1 figure.image figcaption {
		font-size: 12px;
	}
}
#containar .sec1 .speechL {
	display: flex;
	margin: 20px 0;
}
#containar .sec1 .speechL .text {
	flex: 1;
	font-size: 15px;
	padding-left: 15px;
}
#containar .sec1 .speechL figure {
	width: 60px;
	padding-right: 25px;
	background: url("img/speech_member-c.png") no-repeat right top;
	background-size: 6px auto;
	text-align: center;
}
#containar .sec1 .speechL figure img {
	border-radius: 50px;
	border: 3px solid #0C96C6;
}
#containar .sec1 .speechL figure figcaption {
	color: #0C96C6;
	letter-spacing: 0;
	font-size: 12px;
	font-weight: 700;
	margin-top: 5px;
}
#containar .sec1 .speechL.memberC figure {
	background: url("img/speech_member-c.png") no-repeat right top;
	background-size: 6px auto;
}
#containar .sec1 .speechL.memberC figure img {
	border: 2px solid #0C96C6;
}
#containar .sec1 .speechL.memberC figure figcaption {
	color: #0C96C6;
}
#containar .sec1 .speechR {
	display: flex;
	flex-direction: row-reverse;
	margin: 25px 0;
}
#containar .sec1 .speechR .text {
	flex: 1;
	font-size: 15px;
	padding-right: 15px;
}
#containar .sec1 .speechR figure {
	width: 60px;
	padding-left: 25px;
	background: url("img/speech_member-c.png") no-repeat left top;
	background-size: 6px auto;
	text-align: center;
}
#containar .sec1 .speechR figure img {
	border-radius: 50px;
	border: 3px solid #0C96C6;
}
#containar .sec1 .speechR figure figcaption {
	color: #0C96C6;
	letter-spacing: 0;
	font-size: 12px;
	font-weight: 700;
	margin-top: 5px;
}
#containar .sec1 .speechR.memberA figure {
	background: url("img/speech_member-a.png") no-repeat left top;
	background-size: 6px auto;
}
#containar .sec1 .speechR.memberA figure img {
	border: 2px solid #6BAA5F;
}
#containar .sec1 .speechR.memberA figure figcaption {
	color: #6BAA5F;
}
#containar .sec1 .speechR.memberB figure {
	background: url("img/speech_member-b.png") no-repeat left top;
	background-size: 6px auto;
}
#containar .sec1 .speechR.memberB figure img {
	border: 2px solid #E27979;
}
#containar .sec1 .speechR.memberB figure figcaption {
	color: #E27979;
}







/* ボタン */
#containar .sec1 ul.linkBtn {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
}

#containar .sec1 ul.linkBtn li {
	width: auto;
	max-width: 100%;
	margin: 0;
}

#containar .sec1 ul.linkBtn li nav.btn {
	text-align: center;
}

#containar .sec1 ul.linkBtn li nav.btn a {
	position: relative;
	display: block;
	background: #fff;
	border: #21a0db solid 1px;
	color: #21a0db;
	box-shadow: 0px 3px 0px 0px #e3e3e3;
	margin-bottom: 10px;
	font-size: 16px;
	font-weight: 700;
	padding: 15px 35px;
	border-radius: 50px;
	white-space: normal;
	overflow-wrap: anywhere;
}

#containar .sec1 ul.linkBtn li nav.btn a:hover {
	background: #9adfff;
	top: 3px;
	box-shadow: none;
}

#containar .sec1 ul.linkBtn li nav.btn a .fa-solid {
	font-size: 8px;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}

@media only screen and (max-width: 800px) {
	#containar .sec1 ul.linkBtn li {
		max-width: 100%;
	}

	#containar .sec1 ul.linkBtn li nav.btn a {
		font-size: 14px;
		padding: 15px 30px;
	}
}

