@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600&family=Noto+Sans+JP:wght@400&family=Noto+Serif+JP:wght@400;500;600;700&display=swap");
body {
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 400;
	color: #000;
	font-family: "Noto Serif JP", sans-serif;
}

* {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	font-size: 20px;
	overflow-y: scroll;
	scroll-behavior: smooth;
}
@media screen and (max-width: 767px) {
	html {
		font-size: 16px !important;
	}
}

:target {
	scroll-margin-top: 120px;
}

body {
	margin: 0px auto;
	background: #fff;
	overflow: clip;
}

input, select, textarea, button {
	font: inherit;
}

main {
	position: relative;
	min-height: 50vh;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
	border: 0px;
}

a {
	text-decoration: none;
}

dl, ul, ol {
	margin: 0px;
	padding: 0px;
	list-style: none;
}

p, dt, dd, h1, h2, h3, h4, h5, h6 {
	margin: 0px;
	padding: 0px;
}

.clear {
	clear: both;
}

@media screen and (max-width: 767px) {
	.view_pc {
		display: none !important;
	}
}

.view_sp {
	display: none !important;
}
@media screen and (max-width: 767px) {
	.view_sp {
		display: block !important;
	}
}

.loading * {
	transition: 0ms !important;
}
.loading *:before, .loading *:after {
	transition: 0ms !important;
}

.popup.popin {
	opacity: 0;
	transition: opacity 800ms 200ms !important;
}
.popup.popin.popon {
	opacity: 1;
}

.popup.popcont > * {
	opacity: 0;
	transition: opacity 800ms 200ms !important;
}
.popup.popcont.popon > * {
	opacity: 1;
}
.popup.popcont.popon > *:nth-child(0) {
	transition-delay: 200ms !important;
}
.popup.popcont.popon > *:nth-child(1) {
	transition-delay: 260ms !important;
}
.popup.popcont.popon > *:nth-child(2) {
	transition-delay: 320ms !important;
}
.popup.popcont.popon > *:nth-child(3) {
	transition-delay: 380ms !important;
}
.popup.popcont.popon > *:nth-child(4) {
	transition-delay: 440ms !important;
}
.popup.popcont.popon > *:nth-child(5) {
	transition-delay: 500ms !important;
}
.popup.popcont.popon > *:nth-child(6) {
	transition-delay: 560ms !important;
}
.popup.popcont.popon > *:nth-child(7) {
	transition-delay: 620ms !important;
}
.popup.popcont.popon > *:nth-child(8) {
	transition-delay: 680ms !important;
}
.popup.popcont.popon > *:nth-child(9) {
	transition-delay: 740ms !important;
}
.popup.popcont.popon > *:nth-child(10) {
	transition-delay: 800ms !important;
}
.popup.popcont.popon > *:nth-child(11) {
	transition-delay: 860ms !important;
}
.popup.popcont.popon > *:nth-child(12) {
	transition-delay: 920ms !important;
}

header {
	display: block;
	position: fixed;
	width: 100%;
	height: 100px;
	top: 0px;
	background: rgba(0, 32, 96, 0.7);
	z-index: 1000;
	transition: top 600ms, background 600ms;
}
.hideheader header {
	top: -50px;
}
@media screen and (max-width: 959px) {
	header {
		top: -50px;
	}
}

#logo {
	position: fixed;
	top: 50px;
	left: 50%;
	width: 100%;
	max-width: 1720px;
	margin: auto;
	padding: 0 clamp(15px, -7.0183486239px + 2.8669724771vw, 40px);
	transform: translate(-50%, -50%);
	transition: top 600ms;
}
.hideheader #logo {
	top: 25px;
}
@media screen and (max-width: 959px) {
	#logo {
		top: 25px;
	}
}
#logo a {
	display: block;
	width: 300px;
	background: url(../images/logo.svg) no-repeat left center;
	background-size: 100% auto;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	transition: width 600ms, height 600ms, opacity 200ms;
	aspect-ratio: 301.747 / 72.92;
}
#logo a:hover {
	opacity: 0.7;
}
html[lang="en"] #logo a {
	width: 200px;
	background-image: url(../images/logo_en.svg);
	aspect-ratio: 202.96 / 72.904;
}
.hideheader #logo a {
	width: 140px;
}
html[lang="en"].hideheader #logo a {
	width: 100px;
}
@media screen and (max-width: 959px) {
	#logo a {
		width: 140px;
	}
	html[lang="en"] #logo a {
		width: 100px;
	}
}
#logo a span {
	position: absolute;
	left: -10000px;
}

#navigation {
	position: fixed;
	top: 0px;
	left: 50%;
	width: 100%;
	max-width: 1720px;
	margin: auto;
	padding: 0 clamp(15px, -7.0183486239px + 2.8669724771vw, 40px);
	transform: translateX(-50%);
	transition: top 600ms;
}
@media screen and (max-width: 767px) {
	#navigation {
		display: none;
	}
}
#navigation > ul {
	display: flex;
	gap: 0px;
	align-items: flex-end;
	justify-content: flex-end;
	gap: clamp(15px, -6.1764705882px + 2.2058823529vw, 30px);
	height: 100px;
	transition: height 600ms;
}
.hideheader #navigation > ul {
	height: 50px;
}
@media screen and (max-width: 959px) {
	#navigation > ul {
		height: 50px;
	}
}
#navigation > ul > li {
	display: flex;
	height: 100%;
}
#navigation > ul > li a {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	font-size: clamp(12px, 3.5294117647px + 0.8823529412vw, 18px);
	line-height: 1;
	font-weight: 700;
	color: #fff;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#navigation > ul > li a:hover {
	opacity: 0.7;
}

footer {
	position: relative;
	display: block;
	font-family: "Noto Sans JP";
	background: #002060;
	border-top: 1px solid #fff;
	z-index: 2;
}
footer > div {
	position: relative;
	width: 100%;
	max-width: 1720px;
	margin: auto;
	padding: clamp(55px, 2.619047619px + 6.5476190476vw, 110px) clamp(15px, -7.0183486239px + 2.8669724771vw, 40px) clamp(60px, 2.8571428571px + 7.1428571429vw, 120px);
}
footer .logo {
	margin-bottom: clamp(16px, 12.1904761905px + 0.4761904762vw, 20px);
}
footer .logo a {
	display: block;
	width: 370px;
	max-width: 75%;
	background: url(../images/logo.svg) no-repeat left center;
	background-size: 100% auto;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	transition: width 600ms, height 600ms, opacity 200ms;
	aspect-ratio: 301.747 / 72.92;
}
footer .logo a:hover {
	opacity: 0.7;
}
html[lang="en"] footer .logo a {
	width: 260px;
	background-image: url(../images/logo_en.svg);
	aspect-ratio: 202.96 / 72.904;
}
footer .logo a span {
	position: absolute;
	left: -10000px;
}
footer p {
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	color: #fff;
}
footer p + p {
	margin-top: 1em;
}
footer p a {
	color: #fff;
	position: relative;
	display: inline-block;
}
footer p a:before {
	content: "";
	display: block;
	position: absolute;
	bottom: calc(0.25em - 10px);
	right: 55%;
	width: 15%;
	height: 1px;
	background: #fff;
	opacity: 0;
	transform: scaleX(3);
	pointer-events: none;
	transform-origin: right;
	transition: transform 0s 0.3s, bottom 0.3s, right 0s 0.3s, width 0s 0.3s, opacity 0.3s;
	pointer-events: none;
}
footer p a:hover:before {
	opacity: 1;
	right: 0%;
	width: 100%;
	bottom: calc(0.25em - 5px);
	transition: transform 0.3s 0.1s, bottom 0s, right 0.3s, width 0.3s 0.4s, opacity 0.25s;
	transform: scaleX(1);
}
footer p a.map {
	margin-left: 30px;
}
footer p a.map::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 11.5px);
	left: -30px;
	height: 23px;
	background: url(../images/map.svg) no-repeat center center;
	aspect-ratio: 17.457 / 23.156;
}
footer .copyright {
	margin-top: 10px;
	font-size: clamp(12px  * var(--fontratio, 1), (10.0952380952px + 0.2380952381vw) * var(--fontratio, 1), 14px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	color: #fff;
}

#topvisual {
	position: relative;
}
#topvisual::after {
	content: "";
	display: block;
	width: 100%;
	aspect-ratio: 1920 / 185;
}
#topvisual > div {
	position: relative;
	width: 100%;
	max-width: 1720px;
	margin: auto;
	padding: clamp(65px, 3.0952380952px + 7.7380952381vw, 130px) clamp(15px, -7.0183486239px + 2.8669724771vw, 40px) clamp(35px, 1.6666666667px + 4.1666666667vw, 70px);
	position: static;
}
#topvisual .visual {
	position: absolute;
	width: 100vw;
	height: 100%;
	top: 0;
	left: calc(50% - 50vw);
	z-index: -2;
}
#topvisual .visual img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#topvisual .title {
	width: 50%;
	max-width: 808px;
	aspect-ratio: 808 / 625;
	transform: translateX(-5.32%);
}
@media screen and (max-width: 767px) {
	#topvisual .title {
		width: 70%;
	}
}
#topvisual .title img {
	transform: scale(1.29);
}

.block1 {
	position: relative;
	margin-top: -9.6354166667%;
	min-height: 9.6354166667vw;
	z-index: 5;
	overflow: hidden;
}
.block1::before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
	background: url(../images/wave.svg) no-repeat center center;
	background-size: 100% 100%;
	aspect-ratio: 1920 / 185;
}
.block1::after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 9.5833333333vw;
	left: 0;
	background: #002060;
	z-index: -1;
}
.block1 > div {
	position: relative;
	width: 100%;
	max-width: 1720px;
	margin: auto;
	padding: clamp(47.5px, 2.2619047619px + 5.6547619048vw, 95px) clamp(15px, -7.0183486239px + 2.8669724771vw, 40px) clamp(70px, 3.3333333333px + 8.3333333333vw, 140px);
	display: flex;
	gap: clamp(19px, 13.2857142857px + 0.7142857143vw, 25px);
}
.block1 h2 {
	font-size: clamp(28px  * var(--fontratio, 1), (-2.4761904762px + 3.8095238095vw) * var(--fontratio, 1), 60px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 600;
	color: #fff;
	font-family: "Cormorant Garamond";
}
.block1 .datelist {
	margin-top: 0.5em;
	font-size: clamp(14px  * var(--fontratio, 1), (12.0952380952px + 0.2380952381vw) * var(--fontratio, 1), 16px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
}
.block1 .datelist > ul {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.block1 .datelist > ul > li {
	width: fit-content;
}
.block1 .datelist > ul > li div,
.block1 .datelist > ul > li a {
	position: relative;
	display: block;
	color: #fff;
	font-family: "Noto Sans JP";
}
.block1 .datelist > ul > li a:hover .title span {
	background-position: left bottom;
	background-size: 100% 1px;
	transition: background-size 800ms;
}
.block1 .datelist > ul > li .date {
	display: flex;
	width: fit-content;
	gap: 10px;
	min-height: 1.5em;
	margin-bottom: 5px;
}
.block1 .datelist > ul > li .date.new::after {
	content: "New";
	display: flex;
	align-items: center;
	padding: 2px 10px;
	font-size: clamp(12px  * var(--fontratio, 1), (10.0952380952px + 0.2380952381vw) * var(--fontratio, 1), 14px * var(--fontratio, 1));
	line-height: 1;
	background: #4366B0;
}
.block1 .datelist > ul > li .title > span {
	display: inline;
	padding-bottom: 0.15em;
	background: linear-gradient(#fff 0%, #fff 100%) no-repeat right bottom;
	background-size: 0% 1px;
	transition: background-size 800ms;
}
.block1 .datelist > ul > li .title > span:before {
	content: "";
	display: inline;
	position: absolute;
}

.block2 {
	position: relative;
	overflow: hidden;
	z-index: 1;
}
.block2 > div {
	position: relative;
	width: 100%;
	max-width: 1720px;
	margin: auto;
	padding: clamp(0px, 0px + 0vw, 0px) clamp(15px, -7.0183486239px + 2.8669724771vw, 40px);
	display: flex;
	flex-direction: column;
}
.block2 .wrap {
	position: relative;
	margin-top: clamp(26px, 3.1428571429px + 2.8571428571vw, 50px);
	padding-top: clamp(29px, -10.0476190476px + 4.880952381vw, 70px);
	padding-bottom: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	line-height: 2.5;
	font-weight: 700;
	color: #fff;
	text-align: center;
}
.block2 .wrap p.large {
	font-size: clamp(23px  * var(--fontratio, 1), (10.619047619px + 1.5476190476vw) * var(--fontratio, 1), 36px * var(--fontratio, 1));
}
@media screen and (max-width: 767px) {
	.block2 .wrap p.large {
		line-height: 2;
	}
}
.block2 .wrap p:not(.large) {
	font-size: clamp(18px  * var(--fontratio, 1), (6.5714285714px + 1.4285714286vw) * var(--fontratio, 1), 30px * var(--fontratio, 1));
}
.block2 .wrap p + p {
	margin-top: clamp(28px, -2.4761904762px + 3.8095238095vw, 60px);
}
.block2 .wrap .image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	mix-blend-mode: screen;
}
.block2 .wrap .image img {
	width: 100%;
	height: 100%;
	object-fit: scale-down;
}
.block2 small {
	order: -1;
	font-size: clamp(12px  * var(--fontratio, 1), (10.0952380952px + 0.2380952381vw) * var(--fontratio, 1), 14px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 400;
	color: #fff;
	text-align: right;
	font-family: "Noto Sans JP";
}
.block2 > div > .image {
	position: relative;
	height: min(500px, 30.487804878vw);
	z-index: -3;
}
.block2 > div > .image img {
	position: absolute;
	width: 100vw;
	max-width: none;
	bottom: 0;
	left: calc(50% - 50vw);
	object-fit: cover;
	object-position: bottom;
	aspect-ratio: 1920 / 1106;
}
.block2 > div > .image::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0%;
	left: calc(50% - 50vw);
	width: 100vw;
	height: 2000px;
	background: linear-gradient(to top, rgba(0, 32, 96, 0) 12vw, #002060 45vw);
}

.block3 h2, .block4 h2, .block5 h2, .block6 h2, .block7 h2, .block8 h2 {
	position: relative;
}
.block3 h2 .a, .block4 h2 .a, .block5 h2 .a, .block6 h2 .a, .block7 h2 .a, .block8 h2 .a {
	font-size: clamp(40px  * var(--fontratio, 1), (-83.8095238095px + 15.4761904762vw) * var(--fontratio, 1), 170px * var(--fontratio, 1));
	line-height: 0.9;
	font-weight: 600;
	color: #002060;
	font-family: "Cormorant Garamond";
}
.block3 h2 .b, .block4 h2 .b, .block5 h2 .b, .block6 h2 .b, .block7 h2 .b, .block8 h2 .b {
	font-size: clamp(22px  * var(--fontratio, 1), (-18px + 5vw) * var(--fontratio, 1), 64px * var(--fontratio, 1));
	line-height: 1.4;
	font-weight: 700;
}
.block3 h2 .a + .b, .block4 h2 .a + .b, .block5 h2 .a + .b, .block6 h2 .a + .b, .block7 h2 .a + .b, .block8 h2 .a + .b {
	margin-top: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}

.block3 {
	position: relative;
}
.block3 > div {
	position: relative;
	width: 100%;
	max-width: 1720px;
	margin: auto;
	padding: clamp(0px, 0px + 0vw, 0px) clamp(15px, -7.0183486239px + 2.8669724771vw, 40px);
}
.block3 h2 {
	margin-bottom: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block3 .name {
	font-size: clamp(16px  * var(--fontratio, 1), (8.380952381px + 0.9523809524vw) * var(--fontratio, 1), 24px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 700;
}
.block3 p {
	font-size: clamp(16px  * var(--fontratio, 1), (8.380952381px + 0.9523809524vw) * var(--fontratio, 1), 24px * var(--fontratio, 1));
	line-height: 2.25;
	font-weight: 500;
}
@media screen and (max-width: 767px) {
	.block3 p {
		line-height: 1.85;
	}
}
.block3 p + p {
	margin-top: 2.5em;
}
.block3 .head {
	display: flex;
	gap: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	align-items: flex-end;
	justify-content: space-between;
}
@media screen and (max-width: 767px) {
	.block3 .head {
		flex-wrap: wrap;
		align-items: center;
	}
	.block3 .head .body {
		display: contents;
	}
	.block3 .head h2 {
		width: 100%;
		margin-bottom: 0;
	}
	.block3 .head .name {
		width: calc((100% - clamp(24px, 8.7619047619px + 1.9047619048vw, 40px)) * 0.6);
		text-align: right;
	}
	.block3 .head .image {
		width: calc((100% - clamp(24px, 8.7619047619px + 1.9047619048vw, 40px)) * 0.4);
	}
}
.block3 .head .image {
	overflow: hidden;
	border-radius: 50%;
}
.block3 .block {
	margin-top: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
}
.block3 .block:after {
	content: "";
	display: block;
	clear: both;
}
.block3 .block .image1 {
	position: relative;
	float: left;
	width: calc((100% - clamp(29px, -19.5714285714px + 6.0714285714vw, 80px)) / 1.95);
	max-width: 789px;
	margin-right: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
	margin-bottom: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
	aspect-ratio: 789 / 683;
}
.block3 .block .image1 img {
	position: absolute;
	width: calc(50vw - clamp(29px, -19.5714285714px + 6.0714285714vw, 80px) * 0.26);
	max-width: none;
	height: 100%;
	right: 0;
	top: 0;
	object-fit: cover;
	border-radius: 0 clamp(24px, 8.7619047619px + 1.9047619048vw, 40px) clamp(24px, 8.7619047619px + 1.9047619048vw, 40px) 0;
}
.block3 .image2 {
	position: relative;
	width: calc((100% - clamp(29px, -19.5714285714px + 6.0714285714vw, 80px)) / 1.95);
	max-width: 789px;
	margin-right: 0;
	margin-left: auto;
	margin-top: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
	aspect-ratio: 789 / 535;
}
@media screen and (max-width: 767px) {
	.block3 .image2 {
		width: 70%;
	}
}
.block3 .image2 img {
	position: absolute;
	border-radius: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block3 .image2 img:nth-child(1) {
	top: 0;
	right: 0;
	width: 61.9771863118%;
}
.block3 .image2 img:nth-child(2) {
	left: 0;
	bottom: 0;
	width: 48.1622306717%;
}
.block3::after {
	content: "";
	display: block;
	margin-top: clamp(56px, -33.5238095238px + 11.1904761905vw, 150px);
	width: 100%;
	background: url(../images/wave.svg) no-repeat center center;
	background-size: 100%;
	aspect-ratio: 1920 / 210;
}

.block4 {
	position: relative;
	background: #002060;
	z-index: 1;
}
.block4 > div {
	position: relative;
	width: 100%;
	max-width: 1720px;
	margin: auto;
	padding: clamp(0px, 0px + 0vw, 0px) clamp(15px, -7.0183486239px + 2.8669724771vw, 40px);
}
.block4 h2 {
	margin-bottom: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
}
.block4 h2 .a, .block4 h2 .b {
	color: #fff;
}
.block4 h3 {
	margin-bottom: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	font-size: clamp(20px  * var(--fontratio, 1), (-6.6666666667px + 3.3333333333vw) * var(--fontratio, 1), 48px * var(--fontratio, 1));
	line-height: 1.4;
	font-weight: 700;
	color: #fff;
}
.block4 > div > .image {
	position: relative;
}
.block4 > div > .image img {
	position: absolute;
	width: 100%;
	aspect-ratio: 1640 / 904;
	transform: translateY(-34.2920353982%);
}
.block4 .block01 {
	display: flex;
	gap: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
	justify-content: center;
}
@media screen and (max-width: 767px) {
	.block4 .block01 {
		flex-direction: column;
	}
}
.block4 .block01 div {
	flex: 1;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
	max-width: 600px;
	aspect-ratio: 1 / 1;
}
@media screen and (max-width: 767px) {
	.block4 .block01 div {
		margin: auto;
	}
}
.block4 .block01 div::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	width: 100%;
	background: radial-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.4) 60%, rgba(255, 255, 255, 0.2) 70%);
	aspect-ratio: 1 / 1;
	z-index: -1;
	transform: translateY(-50%);
	border-radius: 50%;
}
.block4 .block01 h4 {
	margin-bottom: clamp(16px, 12.1904761905px + 0.4761904762vw, 20px);
	font-size: clamp(16px  * var(--fontratio, 1), (-3.0476190476px + 2.380952381vw) * var(--fontratio, 1), 36px * var(--fontratio, 1));
	line-height: 1.4;
	font-weight: 700;
	color: #fff;
	text-align: center;
}
.block4 .block01 p {
	font-size: clamp(13px  * var(--fontratio, 1), (6.3333333333px + 0.8333333333vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.8;
	font-weight: 400;
	color: #fff;
}
.block4 .block02 {
	position: relative;
	margin-top: clamp(56px, -33.5238095238px + 11.1904761905vw, 150px);
	padding-top: clamp(56px, -33.5238095238px + 11.1904761905vw, 150px);
	padding-bottom: clamp(56px, -33.5238095238px + 11.1904761905vw, 150px);
}
.block4 .block02::before {
	content: "";
	display: block;
	position: absolute;
	width: 100vw;
	height: 100%;
	top: 0;
	left: calc(50% - 50vw);
	background: #2B4780;
	z-index: -1;
}
.block4 .block02 .image {
	margin: auto;
	width: fit-content;
}
.block4 .block02 .image p {
	margin-top: clamp(16px, 12.1904761905px + 0.4761904762vw, 20px);
	font-size: clamp(12px  * var(--fontratio, 1), (10.0952380952px + 0.2380952381vw) * var(--fontratio, 1), 14px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 400;
	color: #fff;
	font-family: "Noto Sans JP";
}
.block4 .block02 .link {
	margin-top: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	width: 100%;
	max-width: 800px;
}
.block4 .block02 .link a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 5.5em;
	padding: 10px clamp(15px, -8.8095238095px + 2.9761904762vw, 40px);
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 400;
	color: #fff;
	border: 1px solid #fff;
	border-radius: clamp(21px, 12.4285714286px + 1.0714285714vw, 30px);
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.block4 .block02 .link a:hover {
	opacity: 0.7;
}
.block4 .block02 .link a::after {
	content: "";
	display: block;
	flex-shrink: 0;
	width: 9px;
	height: 15px;
	background: url(../images/arrow.svg) no-repeat center center;
	filter: brightness(0) saturate(100%) invert(100%);
}
.block4 .block03 {
	position: relative;
	margin-top: clamp(56px, -33.5238095238px + 11.1904761905vw, 150px);
	display: flex;
	gap: 0 clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
@media screen and (max-width: 767px) {
	.block4 .block03 {
		flex-direction: column;
	}
}
.block4 .block03::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - clamp(50px, 2.380952381px + 5.9523809524vw, 100px) / 2);
	left: calc(50% - clamp(50px, 2.380952381px + 5.9523809524vw, 100px) / 2);
	width: clamp(50px, 2.380952381px + 5.9523809524vw, 100px);
	aspect-ratio: 1 / 1;
	background: url(../images/rotate.svg) no-repeat center center #E9F3F5;
	background-size: 50%;
	border-radius: 50%;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	z-index: 5;
}
@media screen and (max-width: 767px) {
	.block4 .block03::after {
		position: relative;
		margin-top: -15px;
		margin-bottom: -15px;
	}
}
.block4 .block03 > div {
	position: relative;
	flex: 1;
	padding: clamp(16px, 12.1904761905px + 0.4761904762vw, 20px) clamp(16px, 12.1904761905px + 0.4761904762vw, 20px) clamp(21px, 12.4285714286px + 1.0714285714vw, 30px);
	background: #fff;
	border-radius: clamp(19px, 13.2857142857px + 0.7142857143vw, 25px);
	overflow: hidden;
}
.block4 .block03 > div:nth-child(1) ul::before {
	background-color: #4366B0;
}
.block4 .block03 > div:nth-child(1) li {
	background: #6D97CF;
}
@media screen and (max-width: 767px) {
	.block4 .block03 > div:nth-child(2) {
		order: 99;
	}
}
.block4 .block03 > div:nth-child(2) ul::before {
	background-color: #6D97CF;
}
.block4 .block03 > div:nth-child(2) li {
	background: #4366B0;
}
.block4 .block03 h4 {
	position: relative;
	margin-bottom: 10px;
	font-size: clamp(22px  * var(--fontratio, 1), (-2.7619047619px + 3.0952380952vw) * var(--fontratio, 1), 48px * var(--fontratio, 1));
	line-height: 1.4;
	font-weight: 700;
	color: #fff;
	text-align: center;
	z-index: 1;
}
.block4 .block03 ul {
	position: relative;
	display: flex;
	justify-content: center;
	gap: clamp(10px, -38.6486486486px + 5.4054054054vw, 50px);
	z-index: 0;
}
.block4 .block03 ul::before {
	content: "";
	display: block;
	position: absolute;
	bottom: clamp(-24px, -12.2857142857px + -0.7142857143vw, -18px);
	left: calc(50% - 25vw);
	width: 50vw;
	height: 300px;
	z-index: -1;
}
@media screen and (max-width: 767px) {
	.block4 .block03 ul::before {
		left: calc(50% - 50vw);
		width: 100vw;
	}
}
.block4 .block03 ul li {
	display: flex;
	align-items: center;
	padding: 0 clamp(8px, -0.5135135135px + 0.9459459459vw, 15px);
	height: 1.84375em;
	font-size: clamp(20px  * var(--fontratio, 1), (8.5714285714px + 1.4285714286vw) * var(--fontratio, 1), 32px * var(--fontratio, 1));
	line-height: 1;
	font-weight: 400;
	color: #fff;
	text-align: center;
	border-radius: 10px;
}
html[lang="en"] .block4 .block03 ul li {
	height: 2.95em;
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.45;
	font-weight: 400;
	color: #fff;
}
.block4 .block03 p {
	width: fit-content;
	margin: auto;
	max-width: 628px;
	margin-top: calc(clamp(18px, 12.2857142857px + 0.7142857143vw, 24px) * 2);
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.45;
	font-weight: 400;
	color: #000;
}
.block4::after {
	content: "";
	display: block;
	margin-top: clamp(56px, -33.5238095238px + 11.1904761905vw, 150px);
	width: 100%;
	background: url(../images/wave.svg) no-repeat center center;
	background-size: 100%;
	aspect-ratio: 1920 / 210;
	filter: brightness(0) saturate(100%) invert(100%);
}

.block5 {
	position: relative;
	z-index: 1;
}
.block5 > div {
	position: relative;
	width: 100%;
	max-width: 1720px;
	margin: auto;
	padding: clamp(0px, 0px + 0vw, 0px) clamp(15px, -7.0183486239px + 2.8669724771vw, 40px);
}
.block5 h2 {
	margin-bottom: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block5 h3 {
	font-size: clamp(26px  * var(--fontratio, 1), (5.0476190476px + 2.619047619vw) * var(--fontratio, 1), 48px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 400;
	margin-bottom: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block5 > div > p {
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
}
.block5 dl {
	margin-top: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	border-top: 1px solid #AFAFAF;
}
.block5 dl > div {
	border-bottom: 1px solid #AFAFAF;
}
.block5 dl button {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	width: 100%;
	min-height: 4.7916666667em;
	padding: 10px 0;
	font-size: clamp(18px  * var(--fontratio, 1), (12.2857142857px + 0.7142857143vw) * var(--fontratio, 1), 24px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 600;
	color: #000;
	text-align: left;
	background: transparent;
	border: 0;
	cursor: pointer;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.block5 dl button:hover {
	opacity: 0.7;
}
.block5 dl button::before {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 10px);
	right: 8.335px;
	width: 3.33px;
	height: 20px;
	background: #002060;
	border-radius: 2px;
	transition: 400ms;
}
.block5 dl button::after {
	content: "";
	display: block;
	flex-shrink: 0;
	width: 20px;
	height: 3.33px;
	background: #002060;
	border-radius: 2px;
}
.block5 dl button.open::before {
	transform: translateY(100%);
	opacity: 0;
}
.block5 dl dd {
	display: none;
	padding-bottom: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block5 dl p {
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.85;
	font-weight: 400;
}
.block5 .block01 {
	position: relative;
	margin-top: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
	padding: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px) 0;
}
.block5 .block01 h3 {
	color: #fff;
}
.block5 .block01::before {
	content: "";
	display: block;
	position: absolute;
	width: 100vw;
	height: 100%;
	top: 0;
	left: calc(50% - 50vw);
	background: rgba(0, 0, 0, 0.26);
	mix-blend-mode: multiply;
	z-index: -1;
}
.block5 .block01 .image {
	position: absolute;
	top: 0;
	width: 100vw;
	height: 100%;
	top: 0;
	left: calc(50% - 50vw);
	z-index: -2;
}
.block5 .block01 .image img {
	width: 100%;
	max-width: none;
	height: 100%;
	object-fit: cover;
}
.block5 .block01 .list {
	display: flex;
	gap: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block5 .block01 .list > div {
	flex: 1;
	padding: clamp(15px, -8.8095238095px + 2.9761904762vw, 40px);
	background: rgba(255, 255, 255, 0.7);
	border-radius: clamp(21px, 12.4285714286px + 1.0714285714vw, 30px);
}
.block5 .block01 .list h4 {
	font-size: clamp(22px  * var(--fontratio, 1), (12.4761904762px + 1.1904761905vw) * var(--fontratio, 1), 32px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 400;
	margin-bottom: clamp(16px, 12.1904761905px + 0.4761904762vw, 20px);
}
.block5 .block01 .list p {
	font-size: clamp(13px  * var(--fontratio, 1), (10.1428571429px + 0.3571428571vw) * var(--fontratio, 1), 16px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	font-family: "Noto Sans JP";
}
.block5 .block02 {
	margin-top: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
}
.block5 .block02 .list {
	display: flex;
	gap: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	flex-wrap: wrap;
}
.block5 .block02 .list > div {
	width: calc((100% - clamp(24px, 8.7619047619px + 1.9047619048vw, 40px)) / 2);
}
@media screen and (max-width: 767px) {
	.block5 .block02 .list > div {
		width: 100%;
	}
}
.block5 .block02 .list > div.support {
	padding: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	width: 100%;
	background: #002060;
	border-radius: clamp(21px, 12.4285714286px + 1.0714285714vw, 30px);
}
.block5 .block02 .list > div.support p {
	color: #fff;
}
.block5 .block02 .list > div.support .link a:hover {
	opacity: 0.9;
}
.block5 .block02 .list h4 {
	position: relative;
	margin-bottom: clamp(16px, 12.1904761905px + 0.4761904762vw, 20px);
	padding-left: 24px;
	font-size: clamp(23px  * var(--fontratio, 1), (10.619047619px + 1.5476190476vw) * var(--fontratio, 1), 36px * var(--fontratio, 1));
	line-height: 1.4167;
	font-weight: 400;
}
.block5 .block02 .list h4::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 6px;
	height: 100%;
	background: linear-gradient(to bottom, #4366B0 0%, #439FB0 100%);
}
.block5 .block02 .list p {
	margin-bottom: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	font-size: clamp(14px  * var(--fontratio, 1), (12.0952380952px + 0.2380952381vw) * var(--fontratio, 1), 16px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	font-family: "Noto Sans JP";
}
.block5 .block02 .list .link {
	width: 100%;
}
.block5 .block02 .list .link a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 5.5em;
	padding: 10px clamp(15px, -8.8095238095px + 2.9761904762vw, 40px);
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 400;
	color: #000;
	background: #fff;
	border: 1px solid #AFAFAF;
	border-radius: clamp(21px, 12.4285714286px + 1.0714285714vw, 30px);
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.block5 .block02 .list .link a:hover {
	opacity: 0.7;
}
.block5 .block02 .list .link a::after {
	content: "";
	display: block;
	flex-shrink: 0;
	width: 9px;
	height: 15px;
	background: url(../images/arrow.svg) no-repeat center center;
}
.block5 .block02 > p {
	margin-top: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	font-size: clamp(12px  * var(--fontratio, 1), (10.0952380952px + 0.2380952381vw) * var(--fontratio, 1), 14px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 400;
	font-family: "Noto Sans JP";
}
.block5::after {
	content: "";
	display: block;
	margin-top: clamp(56px, -33.5238095238px + 11.1904761905vw, 150px);
	width: 100%;
	background: url(../images/wave.svg) no-repeat center center;
	background-size: 100%;
	aspect-ratio: 1920 / 210;
}

.block6 {
	position: relative;
	background: #002060;
	z-index: 1;
}
.block6 > div {
	position: relative;
	width: 100%;
	max-width: 1720px;
	margin: auto;
	padding: clamp(0px, 0px + 0vw, 0px) clamp(15px, -7.0183486239px + 2.8669724771vw, 40px);
}
.block6 h2 {
	margin-bottom: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block6 h2 .a, .block6 h2 .b {
	color: #fff;
}
.block6 h3 {
	position: relative;
	margin-top: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
	margin-bottom: clamp(16px, 12.1904761905px + 0.4761904762vw, 20px);
	padding-left: 24px;
	font-size: clamp(23px  * var(--fontratio, 1), (10.619047619px + 1.5476190476vw) * var(--fontratio, 1), 36px * var(--fontratio, 1));
	line-height: 1.4167;
	font-weight: 400;
	color: #fff;
}
.block6 h3::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 6px;
	height: 100%;
	background: linear-gradient(to bottom, #fff 0%, #4366B0 100%);
}
.block6 > div > p {
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.45;
	font-weight: 400;
	color: #fff;
}
.block6 .list1 {
	margin-top: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
}
.block6 .list1 ul {
	display: flex;
	flex-wrap: wrap;
	gap: clamp(10px, -18.5714285714px + 3.5714285714vw, 40px);
}
.block6 .list1 ul li {
	display: flex;
	align-items: center;
	padding: clamp(15px, -8.8095238095px + 2.9761904762vw, 40px);
	width: calc((100% - clamp(10px, -18.5714285714px + 3.5714285714vw, 40px) * 3) / 4);
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.45;
	font-weight: 400;
	background: #fff;
	border-radius: clamp(21px, 12.4285714286px + 1.0714285714vw, 30px);
}
@media screen and (max-width: 767px) {
	.block6 .list1 ul li {
		width: calc((100% - clamp(10px, -18.5714285714px + 3.5714285714vw, 40px) * 1) / 2);
	}
}
.block6 .list2 {
	margin-top: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block6 .list2 ul {
	display: flex;
	flex-wrap: wrap;
	gap: clamp(10px, -18.5714285714px + 3.5714285714vw, 40px);
}
.block6 .list2 ul li {
	padding: clamp(15px, -8.8095238095px + 2.9761904762vw, 40px);
	width: calc((100% - clamp(10px, -18.5714285714px + 3.5714285714vw, 40px) * 3) / 4);
	background: #fff;
	border-radius: clamp(21px, 12.4285714286px + 1.0714285714vw, 30px);
}
@media screen and (max-width: 767px) {
	.block6 .list2 ul li {
		width: calc((100% - clamp(10px, -18.5714285714px + 3.5714285714vw, 40px) * 1) / 2);
	}
}
.block6 .list2 h4 {
	margin-bottom: clamp(16px, 12.1904761905px + 0.4761904762vw, 20px);
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.45;
	font-weight: 700;
	color: #002060;
}
.block6 .list2 p {
	font-size: clamp(14px  * var(--fontratio, 1), (12.0952380952px + 0.2380952381vw) * var(--fontratio, 1), 16px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	font-family: "Noto Sans JP";
}
.block6 .list3 {
	margin-top: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block6 .list3 ul {
	display: flex;
	flex-wrap: wrap;
	gap: clamp(10px, -18.5714285714px + 3.5714285714vw, 40px);
}
.block6 .list3 ul li {
	position: relative;
	padding: clamp(10px, 0.4761904762px + 1.1904761905vw, 20px) clamp(10px, -18.5714285714px + 3.5714285714vw, 40px);
	width: calc((100% - clamp(10px, -18.5714285714px + 3.5714285714vw, 40px) * 2) / 3);
	background: #fff;
	border-radius: clamp(21px, 12.4285714286px + 1.0714285714vw, 30px);
}
@media screen and (max-width: 767px) {
	.block6 .list3 ul li {
		width: calc((100% - clamp(10px, -18.5714285714px + 3.5714285714vw, 40px) * 1) / 2);
	}
}
.block6 .list3 .image img {
	margin: auto;
}
@media screen and (max-width: 767px) {
	.block6 .list3 .image {
		position: absolute;
		top: 5px;
		left: 5px;
		width: 30px;
	}
}
.block6 .list3 h4 {
	margin-top: 10px;
	margin-bottom: clamp(16px, 12.1904761905px + 0.4761904762vw, 20px);
	padding-bottom: clamp(13px, 11.0952380952px + 0.2380952381vw, 15px);
	font-size: clamp(14px  * var(--fontratio, 1), (8.2857142857px + 0.7142857143vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.45;
	font-weight: 700;
	color: #4366B0;
	text-align: center;
	border-bottom: 1px solid #AFAFAF;
}
@media screen and (max-width: 767px) {
	.block6 .list3 h4 {
		margin-top: 0;
		padding-left: 30px;
		text-align: left;
	}
}
.block6 .list3 p {
	font-size: clamp(11.5px  * var(--fontratio, 1), (7.2142857143px + 0.5357142857vw) * var(--fontratio, 1), 16px * var(--fontratio, 1));
	line-height: 1.5;
	font-weight: 400;
	font-family: "Noto Sans JP";
	text-align: center;
}
@media screen and (max-width: 767px) {
	.block6 .list3 p {
		text-align: left;
	}
}
.block6 > div > h4 {
	font-size: clamp(18px  * var(--fontratio, 1), (12.2857142857px + 0.7142857143vw) * var(--fontratio, 1), 24px * var(--fontratio, 1));
	line-height: 1.45;
	font-weight: 700;
	color: #fff;
}
.block6 > div > h4 + h4,
.block6 > div > p + h4 {
	margin-top: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block6 > div > h4 + p {
	margin-top: clamp(16px, 12.1904761905px + 0.4761904762vw, 20px);
}
.block6 .link {
	margin-top: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	width: 100%;
	max-width: 800px;
}
.block6 .link a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 5.5em;
	padding: 10px clamp(15px, -8.8095238095px + 2.9761904762vw, 40px);
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 400;
	color: #fff;
	border: 1px solid #fff;
	border-radius: clamp(21px, 12.4285714286px + 1.0714285714vw, 30px);
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.block6 .link a:hover {
	opacity: 0.7;
}
.block6 .link a::after {
	content: "";
	display: block;
	flex-shrink: 0;
	width: 9px;
	height: 15px;
	background: url(../images/arrow.svg) no-repeat center center;
	filter: brightness(0) saturate(100%) invert(100%);
}
.block6 .block01 {
	position: relative;
	margin-top: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
	padding: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px) clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	background: #2B4780;
}
.block6 .block01::before {
	content: "";
	display: block;
	position: absolute;
	width: 100vw;
	height: 100%;
	top: 0;
	left: calc(50% - 50vw);
	background: #2B4780;
	z-index: -1;
}
.block6 .block01 h3 {
	margin-top: 0;
}
.block6 .block01 .list {
	margin-top: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block6 .block01 .list ul {
	display: flex;
	flex-direction: column;
	gap: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block6 .block01 .list li {
	display: flex;
	gap: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	align-items: flex-start;
}
@media screen and (max-width: 767px) {
	.block6 .block01 .list li {
		flex-direction: column;
	}
}
.block6 .block01 .list .image {
	flex-shrink: 0;
	width: clamp(139px, 80.9047619048px + 7.2619047619vw, 200px);
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	overflow: hidden;
}
.block6 .block01 .list .image img {
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.block6 .block01 .list .body {
	position: relative;
	padding: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px) clamp(15px, -8.8095238095px + 2.9761904762vw, 40px);
	background: #fff;
	border-radius: clamp(21px, 12.4285714286px + 1.0714285714vw, 30px);
}
.block6 .block01 .list .body::before {
	content: "";
	display: block;
	position: absolute;
	top: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	left: -23px;
	border: 13px solid transparent;
	border-right: 23px solid #fff;
	border-left: 0;
}
@media screen and (max-width: 767px) {
	.block6 .block01 .list .body::before {
		top: -23px;
		left: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
		transform: rotate(90deg);
	}
}
.block6 .block01 .list p {
	font-size: clamp(14px  * var(--fontratio, 1), (8.2857142857px + 0.7142857143vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.45;
	font-weight: 400;
}
.block6 .block01 .list p.sub {
	margin-top: clamp(16px, 12.1904761905px + 0.4761904762vw, 20px);
	font-size: clamp(12px  * var(--fontratio, 1), (8.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 16px * var(--fontratio, 1));
	line-height: 1.5;
	font-family: "Noto Sans JP";
}
.block6 .block01 .list p + p {
	margin-top: 10px;
}
.block6 .block02 {
	display: flex;
	gap: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
@media screen and (max-width: 767px) {
	.block6 .block02 {
		flex-direction: column;
	}
}
.block6 .block02 > div {
	flex: 1;
}
.block6::after {
	content: "";
	display: block;
	margin-top: clamp(56px, -33.5238095238px + 11.1904761905vw, 150px);
	width: 100%;
	background: url(../images/wave.svg) no-repeat center center;
	background-size: 100%;
	aspect-ratio: 1920 / 210;
	filter: brightness(0) saturate(100%) invert(100%);
}

.block7 {
	position: relative;
	z-index: 1;
}
.block7 > div {
	position: relative;
	width: 100%;
	max-width: 1720px;
	margin: auto;
	padding: clamp(0px, 0px + 0vw, 0px) clamp(15px, -7.0183486239px + 2.8669724771vw, 40px);
}
.block7 h2 {
	margin-bottom: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
}
.block7 .slidewrap .swiper-slide {
	display: flex;
	flex-direction: column;
	width: clamp(300px, -176.1904761905px + 59.5238095238vw, 800px);
	height: auto !important;
	padding: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px) clamp(20px, -37.1428571429px + 7.1428571429vw, 80px);
	margin: 0 clamp(5px, -9.2857142857px + 1.7857142857vw, 20px);
	border: 2px solid #002060;
	border-radius: clamp(21px, 12.4285714286px + 1.0714285714vw, 30px);
}
.block7 .slidewrap .swiper-slide .head {
	display: flex;
	align-items: flex-start;
	gap: clamp(15px, -8.8095238095px + 2.9761904762vw, 40px);
	margin-bottom: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block7 .slidewrap .swiper-slide .head .image {
	flex-shrink: 0;
	width: clamp(100px, -36.1904761905px + 17.0238095238vw, 243px);
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	overflow: hidden;
}
.block7 .slidewrap .swiper-slide .head .image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.block7 .slidewrap .swiper-slide .head h3 {
	font-size: clamp(18px  * var(--fontratio, 1), (0.8571428571px + 2.1428571429vw) * var(--fontratio, 1), 36px * var(--fontratio, 1));
	line-height: 1.4;
	font-weight: 400;
}
.block7 .slidewrap .swiper-slide .head p + h3 {
	margin-top: 10px;
}
.block7 .slidewrap .swiper-slide p {
	font-size: clamp(14px  * var(--fontratio, 1), (8.2857142857px + 0.7142857143vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.45;
	font-weight: 400;
}
.block7 .slidewrap .switch {
	margin-top: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
}
.block7 .slidewrap .switch ul {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}
.block7 .slidewrap .switch li a {
	display: block;
	text-indent: -10000px;
	overflow: hidden;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.block7 .slidewrap .switch li a:hover {
	opacity: 0.7;
}
.block7 .slidewrap .switch li:not(.prev):not(.next) a {
	width: 10px;
	height: 10px;
	background: #AFAFAF;
	border-radius: 50%;
}
.block7 .slidewrap .switch li:not(.prev):not(.next).on a {
	background: #002060;
}
.block7 .slidewrap .switch li.prev a {
	width: clamp(26px, 3.1428571429px + 2.8571428571vw, 50px);
	margin-right: 10px;
	background: url(../images/arrow2.svg) no-repeat center center;
	border: 1px solid #AFAFAF;
	transform: rotate(180deg);
	aspect-ratio: 1 / 1;
	border-radius: 50%;
}
.block7 .slidewrap .switch li.next a {
	width: clamp(26px, 3.1428571429px + 2.8571428571vw, 50px);
	margin-left: 10px;
	background: url(../images/arrow2.svg) no-repeat center center;
	border: 1px solid #AFAFAF;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
}
.block7::after {
	content: "";
	display: block;
	margin-top: clamp(56px, -33.5238095238px + 11.1904761905vw, 150px);
	width: 100%;
	background: url(../images/wave.svg) no-repeat center center;
	background-size: 100%;
	aspect-ratio: 1920 / 210;
}

.block8 {
	position: relative;
	background: #002060;
	z-index: 1;
}
.block8 > div {
	position: relative;
	width: 100%;
	max-width: 1720px;
	margin: auto;
	padding: clamp(0px, 0px + 0vw, 0px) clamp(15px, -7.0183486239px + 2.8669724771vw, 40px) clamp(75px, 3.5714285714px + 8.9285714286vw, 150px);
}
.block8 h2 {
	margin-bottom: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
}
.block8 h2 .a, .block8 h2 .b {
	color: #fff;
}
.block8 dl {
	border-top: 1px solid #fff;
}
.block8 dl > div {
	border-bottom: 1px solid #fff;
}
.block8 dl button {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	width: 100%;
	min-height: 4.7916666667em;
	padding: 10px 0;
	font-size: clamp(18px  * var(--fontratio, 1), (12.2857142857px + 0.7142857143vw) * var(--fontratio, 1), 24px * var(--fontratio, 1));
	line-height: 1.3;
	font-weight: 600;
	color: #fff;
	text-align: left;
	background: transparent;
	border: 0;
	cursor: pointer;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.block8 dl button:hover {
	opacity: 0.7;
}
.block8 dl button::before {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 10px);
	right: 8.335px;
	width: 3.33px;
	height: 20px;
	background: #fff;
	border-radius: 2px;
	transition: 400ms;
}
.block8 dl button::after {
	content: "";
	display: block;
	flex-shrink: 0;
	width: 20px;
	height: 3.33px;
	background: #fff;
	border-radius: 2px;
}
.block8 dl button.open::before {
	transform: translateY(100%);
	opacity: 0;
}
.block8 dl button div {
	display: flex;
	gap: 1em;
}
.block8 dl button div::before {
	content: "Q.";
	display: block;
}
.block8 dl dd {
	position: relative;
	display: none;
	padding-left: 1.5em;
	padding-bottom: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.85;
	font-weight: 400;
	color: #fff;
}
.block8 dl dd::before {
	content: "A.";
	display: block;
	position: absolute;
	left: 0;
}
.block8 dl p {
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.85;
	font-weight: 400;
	color: #fff;
}
.block8 .list {
	margin-top: clamp(29px, -19.5714285714px + 6.0714285714vw, 80px);
}
.block8 .list ul {
	display: flex;
	gap: clamp(10px, -18.5714285714px + 3.5714285714vw, 40px);
}
@media screen and (max-width: 767px) {
	.block8 .list ul {
		flex-direction: column;
		max-width: 250px;
		margin: auto;
	}
}
.block8 .list ul li {
	flex: 1;
}
.block8 .list a {
	position: relative;
	display: block;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	border-radius: clamp(21px, 12.4285714286px + 1.0714285714vw, 30px);
	overflow: hidden;
}
.block8 .list a:hover {
	opacity: 0.7;
}
.block8 .list a::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #4366B0;
	opacity: 0.8;
	mix-blend-mode: multiply;
}
.block8 .list a .title {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(24px, 8.7619047619px + 1.9047619048vw, 40px);
	left: 0;
	right: 0;
	top: 50%;
	padding: 0 clamp(15px, -8.8095238095px + 2.9761904762vw, 40px);
	font-size: clamp(16px  * var(--fontratio, 1), (12.1904761905px + 0.4761904762vw) * var(--fontratio, 1), 20px * var(--fontratio, 1));
	line-height: 1.45;
	font-weight: 700;
	color: #fff;
	transform: translateY(-50%);
}
.block8 .list a .title::after {
	content: "";
	display: block;
	flex-shrink: 0;
	width: 9px;
	height: 15px;
	background: url(../images/arrow.svg) no-repeat center center;
	filter: brightness(0) saturate(100%) invert(100%);
}

/**
 * Swiper 11.1.0
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2024 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: March 28, 2024
 */
/* FONT_START */
@font-face {
	font-family: 'swiper-icons';
	src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
	font-weight: 400;
	font-style: normal;
}
/* FONT_END */
:root {
	--swiper-theme-color: #007aff;
	/*
	--swiper-preloader-color: var(--swiper-theme-color);
	--swiper-wrapper-transition-timing-function: initial;
	*/
}

:host {
	position: relative;
	display: block;
	margin-left: auto;
	margin-right: auto;
	z-index: 1;
}

.swiper {
	margin-left: auto;
	margin-right: auto;
	position: relative;
	overflow: hidden;
	list-style: none;
	padding: 0;
	/* Fix of Webkit flickering */
	z-index: 1;
	display: block;
}

.swiper-vertical > .swiper-wrapper {
	flex-direction: column;
}

.swiper-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
	display: flex;
	transition-property: transform;
	transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
	box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
	transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
	touch-action: pan-y;
}

.swiper-vertical {
	touch-action: pan-x;
}

.swiper-slide {
	flex-shrink: 0;
	width: 100%;
	height: 100%;
	position: relative;
	transition-property: transform;
	display: block;
}

.swiper-slide-invisible-blank {
	visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
	height: auto;
}

.swiper-autoheight .swiper-wrapper {
	align-items: flex-start;
	transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
	perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
	transform-style: preserve-3d;
}

.swiper-3d {
	perspective: 1200px;
}

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
	transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
	overflow: auto;
	scrollbar-width: none;
	/* For Firefox */
	-ms-overflow-style: none;
	/* For Internet Explorer and Edge */
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
	display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
	scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
	scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
	scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
	scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
	scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
	content: '';
	flex-shrink: 0;
	order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
	scroll-snap-align: center center;
	scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
	margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
	height: 100%;
	min-height: 1px;
	width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
	margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
	width: 100%;
	min-width: 1px;
	height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
	background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
	background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
	background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
	width: 42px;
	height: 42px;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -21px;
	margin-top: -21px;
	z-index: 10;
	transform-origin: 50%;
	box-sizing: border-box;
	border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
	border-radius: 50%;
	border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
	animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
	--swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
	--swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
/* Slide styles end */
