:root {
	--color-white: #fff;
    --color-black: #000000;
	--color-accent: #1c6baf;
    --color-black09: rgba(0,0,0,0.9);
    --font-sans: 'Noto Sans JP', sans-serif;
    --font-size-12: 1.2rem;
    --font-size-18: 1.8rem;
    --font-size-20: 2rem;
    --font-size-24: 2.4rem;
    --font-size-40: 4rem;
    --font-size-68: 6.8rem;
    --font-size-9-sp: 2.4vw;
    --font-size-16-sp: 4.26vw;
    --font-size-21-sp: 5.6vw;
    --font-size-32-sp: 8.53vw;
    --font-size-36-sp: 9.6vw;
}

/*---------------------------------------
common
---------------------------------------*/
html {
    font-size: 62.5%;
}
body {
	background-color: var(--color-white);
	font-family: var(--font-sans);
    font-weight: 400;
    font-size: var(--font-size-20);
    line-height: 1.75em;
	color: var(--color-black);
}

@media screen and (max-width:767px) {
	body {
		font-size: var(--font-size-16-sp);
	}
	img{
		width:100%;
		vertical-align: top;
	}
}


/*---------------------------------------
header
---------------------------------------*/
.header-area {
}
.header-area h1 {
	display: flex;
	justify-content: center;
	padding: 50px 0 50px 0;
}
.header-area h1 img {
	width: 418px;
}
@media screen and (max-width:767px) {
	.header-area {
	}
	.header-area h1 {
		padding: 8% 0 8% 0;
	}
	.header-area h1 picture {
		width: 67.2%;
	}
	.header-area h1 img {
		width: 100%;
	}
}

/*---------------------------------------
block-title
---------------------------------------*/
.block-title {
	height: clamp(264px, 70.4vw, 480px);
	width: 100%;
	background-image: url(../img/bg.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}
.block-title .block-title-area {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.block-title .block-title-area h1 {
	margin: 0;
	text-align: center;
	font-size: var(--font-size-68);
	color: var(--color-white);
	-webkit-text-stroke:7px var(--color-black);
	text-stroke:7px var(--color-black);
	paint-order: stroke fill;
	filter: drop-shadow(0 0 4.0344px var(--color-black09));
}

@media screen and (max-width:767px) {
	.block-title {
	}
	.block-title .block-title-area {
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.block-title .block-title-area h1 {
		margin: 0;
		text-align: center;
		font-size: var(--font-size-36-sp);
		color: var(--color-white);
		-webkit-text-stroke:7px var(--color-black);
		text-stroke:7px var(--color-black);
		paint-order: stroke fill;
		filter: drop-shadow(0 0 4.0344px var(--color-black09));
	}
}


/*---------------------------------------
contents
---------------------------------------*/
.block-contents {
}
.block-contents .block-header {
	padding-top: clamp(50px, 13.33vw, 90px);
	padding-bottom: clamp(25px, 6.66vw, 50px);
}
.block-contents .block-header h1 {
	font-size: var(--font-size-40);
	font-weight: 700;
	margin: 0 0 0 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	line-height: 1;
	width: 100%;
}
.block-contents .block-header h1::before {
	content: "";
	display: inline-block;
	width: 43px;
	height: 57px;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2043.08%2057.47%22%3E%3Cpath%20fill%3D%22none%22%20d%3D%22M21.85%209.2l-5.4-4.97c-3.07%203.1-10.21%2011.66-10.44%2024.41-.21%2011.64%206.23%2020.39%2010.17%2024.63l5.52-5.08c-3.24-3.7-7.83-10.57-7.66-19.66.17-9.5%204.93-16.16%207.81-19.33z%22%2F%3E%3Cpath%20fill%3D%22none%22%20d%3D%22M31.85%2018.4l-5.58-5.14c-2.3%202.53-6.09%207.83-6.23%2015.37-.13%207.04%203.47%2012.48%206.08%2015.49l5.77-5.31c-1.06-1.21-3.98-5.01-3.98-10.23%200-1.01.11-5.96%203.94-10.18z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M16.18%2053.27c-3.93-4.24-10.38-12.99-10.17-24.63.23-12.75%207.37-21.31%2010.44-24.41L12.17.3l.15-.17-.14-.14C8.62%203.61.28%2013.6%200%2028.53c-.25%2013.85%207.34%2024.08%2011.88%2028.94l.41-.38-.12-.14%204-3.68z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M26.26%2013.26l-4.41-4.06c-2.88%203.17-7.64%209.83-7.81%2019.33-.16%209.09%204.42%2015.96%207.66%2019.66l4.42-4.06c-2.61-3.01-6.21-8.45-6.08-15.49.13-7.54%203.93-12.84%206.23-15.37z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M31.85%2018.4c-3.83%204.22-3.94%209.17-3.94%2010.18%200%205.23%202.92%209.02%203.98%2010.23l5.61-5.16.18.19%205.41-5.23-5.41-5.2-.18.19-5.65-5.2z%22%2F%3E%3Cpolygon%20fill%3D%22%231c6baf%22%20points%3D%2216.44%204.23%2016.45%204.22%2012.33%20.14%2012.17%20.3%2016.44%204.23%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M31.85%2018.4l5.65%205.2.18-.19-5.54-5.33c-.1.11-.19.22-.29.32z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M16.18%2053.27l-4%203.68.12.14%203.97-3.71s-.07-.07-.1-.11z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M31.89%2038.82c.13.15.24.27.31.34l5.48-5.3-.18-.19-5.61%205.16z%22%2F%3E%3C%2Fsvg%3E") no-repeat center;
	background-size: contain;
}
.block-contents .block-header h1::after {
	content: "";
	display: inline-block;
	width: 43px;
	height: 57px;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2043.08%2057.47%22%3E%3Cpath%20fill%3D%22none%22%20d%3D%22M21.24%2048.27l5.4%204.97c3.07-3.1%2010.21-11.66%2010.44-24.41.21-11.64-6.23-20.39-10.17-24.63l-5.52%205.08c3.24%203.7%207.83%2010.57%207.66%2019.66-.17%209.5-4.93%2016.16-7.81%2019.33z%22%2F%3E%3Cpath%20fill%3D%22none%22%20d%3D%22M11.24%2039.07l5.58%205.14c2.3-2.53%206.09-7.83%206.23-15.37.13-7.04-3.47-12.48-6.08-15.49l-5.77%205.31c1.06%201.21%203.98%205.01%203.98%2010.23%200%201.01-.11%205.96-3.94%2010.18z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M26.91%204.2c3.93%204.24%2010.38%2012.99%2010.17%2024.63-.23%2012.75-7.37%2021.31-10.44%2024.41l4.27%203.93-.15.17.14.14c3.57-3.61%2011.91-13.6%2012.18-28.53.25-13.85-7.34-24.08-11.88-28.94l-.41.38.12.14-4%203.68z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M16.82%2044.21l4.41%204.06c2.88-3.17%207.64-9.83%207.81-19.33.16-9.09-4.42-15.96-7.66-19.66l-4.42%204.06c2.61%203.01%206.21%208.45%206.08%2015.49-.13%207.54-3.93%2012.84-6.23%2015.37z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M11.24%2039.07c3.83-4.22%203.94-9.17%203.94-10.18%200-5.23-2.92-9.02-3.98-10.23l-5.61%205.16-.18-.19L0%2028.86l5.41%205.2.18-.19%205.65%205.2z%22%2F%3E%3Cpolygon%20fill%3D%22%231c6baf%22%20points%3D%2226.64%2053.24%2026.63%2053.25%2030.76%2057.34%2030.91%2057.17%2026.64%2053.24%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M11.24%2039.07l-5.65-5.2-.18.19%205.54%205.33c.1-.11.19-.22.29-.32z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M26.91%204.2l4-3.68-.12-.14-3.97%203.71s.07.07.1.11z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M11.2%2018.66c-.13-.15-.24-.27-.31-.34l-5.48%205.3.18.19%205.61-5.16z%22%2F%3E%3C%2Fsvg%3E") no-repeat center;
	background-size: contain;
}
.block-contents .block-body-img {
	display: flex;
	justify-content: center;
	flex-direction: column;
	width: 740px;
	margin: 0 auto;
	padding-bottom: clamp(40px, 10.66vw, 75px);
}
.block-contents .block-body-img picture {
	padding-bottom: clamp(50px, 13.33vw, 75px);
}
.block-contents .block-body-img picture img {
	width: 100%;
}
.block-contents .block-body-img p {
	text-align: center;
}
.block-contents .block-body {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 70px 40px;
	margin: 0 auto;
	width: clamp(343px, 91.46vw, 780px);
	padding-bottom: clamp(65px, 17.33vw, 100px);
}
.block-contents .block-body .block-body-block {
	width: 355px;
}
.block-contents .block-body h2 {
	font-size: var(--font-size-24);
	font-weight: 700;
	margin: 0 0 0 0;
	padding-bottom: clamp(15px, 4.26vw, 16px);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	line-height: 1;
	width: 100%;
}
.block-contents .block-body h2::before {
	content: "";
	display: inline-block;
	width: 26px;
	height: 35px;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2043.08%2057.47%22%3E%3Cpath%20fill%3D%22none%22%20d%3D%22M21.85%209.2l-5.4-4.97c-3.07%203.1-10.21%2011.66-10.44%2024.41-.21%2011.64%206.23%2020.39%2010.17%2024.63l5.52-5.08c-3.24-3.7-7.83-10.57-7.66-19.66.17-9.5%204.93-16.16%207.81-19.33z%22%2F%3E%3Cpath%20fill%3D%22none%22%20d%3D%22M31.85%2018.4l-5.58-5.14c-2.3%202.53-6.09%207.83-6.23%2015.37-.13%207.04%203.47%2012.48%206.08%2015.49l5.77-5.31c-1.06-1.21-3.98-5.01-3.98-10.23%200-1.01.11-5.96%203.94-10.18z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M16.18%2053.27c-3.93-4.24-10.38-12.99-10.17-24.63.23-12.75%207.37-21.31%2010.44-24.41L12.17.3l.15-.17-.14-.14C8.62%203.61.28%2013.6%200%2028.53c-.25%2013.85%207.34%2024.08%2011.88%2028.94l.41-.38-.12-.14%204-3.68z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M26.26%2013.26l-4.41-4.06c-2.88%203.17-7.64%209.83-7.81%2019.33-.16%209.09%204.42%2015.96%207.66%2019.66l4.42-4.06c-2.61-3.01-6.21-8.45-6.08-15.49.13-7.54%203.93-12.84%206.23-15.37z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M31.85%2018.4c-3.83%204.22-3.94%209.17-3.94%2010.18%200%205.23%202.92%209.02%203.98%2010.23l5.61-5.16.18.19%205.41-5.23-5.41-5.2-.18.19-5.65-5.2z%22%2F%3E%3Cpolygon%20fill%3D%22%231c6baf%22%20points%3D%2216.44%204.23%2016.45%204.22%2012.33%20.14%2012.17%20.3%2016.44%204.23%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M31.85%2018.4l5.65%205.2.18-.19-5.54-5.33c-.1.11-.19.22-.29.32z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M16.18%2053.27l-4%203.68.12.14%203.97-3.71s-.07-.07-.1-.11z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M31.89%2038.82c.13.15.24.27.31.34l5.48-5.3-.18-.19-5.61%205.16z%22%2F%3E%3C%2Fsvg%3E") no-repeat center;
	background-size: contain;
}
.block-contents .block-body h2::after {
	content: "";
	display: inline-block;
	width: 26px;
	height: 35px;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2043.08%2057.47%22%3E%3Cpath%20fill%3D%22none%22%20d%3D%22M21.24%2048.27l5.4%204.97c3.07-3.1%2010.21-11.66%2010.44-24.41.21-11.64-6.23-20.39-10.17-24.63l-5.52%205.08c3.24%203.7%207.83%2010.57%207.66%2019.66-.17%209.5-4.93%2016.16-7.81%2019.33z%22%2F%3E%3Cpath%20fill%3D%22none%22%20d%3D%22M11.24%2039.07l5.58%205.14c2.3-2.53%206.09-7.83%206.23-15.37.13-7.04-3.47-12.48-6.08-15.49l-5.77%205.31c1.06%201.21%203.98%205.01%203.98%2010.23%200%201.01-.11%205.96-3.94%2010.18z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M26.91%204.2c3.93%204.24%2010.38%2012.99%2010.17%2024.63-.23%2012.75-7.37%2021.31-10.44%2024.41l4.27%203.93-.15.17.14.14c3.57-3.61%2011.91-13.6%2012.18-28.53.25-13.85-7.34-24.08-11.88-28.94l-.41.38.12.14-4%203.68z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M16.82%2044.21l4.41%204.06c2.88-3.17%207.64-9.83%207.81-19.33.16-9.09-4.42-15.96-7.66-19.66l-4.42%204.06c2.61%203.01%206.21%208.45%206.08%2015.49-.13%207.54-3.93%2012.84-6.23%2015.37z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M11.24%2039.07c3.83-4.22%203.94-9.17%203.94-10.18%200-5.23-2.92-9.02-3.98-10.23l-5.61%205.16-.18-.19L0%2028.86l5.41%205.2.18-.19%205.65%205.2z%22%2F%3E%3Cpolygon%20fill%3D%22%231c6baf%22%20points%3D%2226.64%2053.24%2026.63%2053.25%2030.76%2057.34%2030.91%2057.17%2026.64%2053.24%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M11.24%2039.07l-5.65-5.2-.18.19%205.54%205.33c.1-.11.19-.22.29-.32z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M26.91%204.2l4-3.68-.12-.14-3.97%203.71s.07.07.1.11z%22%2F%3E%3Cpath%20fill%3D%22%231c6baf%22%20d%3D%22M11.2%2018.66c-.13-.15-.24-.27-.31-.34l-5.48%205.3.18.19%205.61-5.16z%22%2F%3E%3C%2Fsvg%3E") no-repeat center;
	background-size: contain;
}
.block-contents .block-body .audio {
}
.block-contents .block-body .audio audio {
	width: 100%;
}
.block-contents .block-link {
	display: flex;
	justify-content: center;
	margin: 0 auto;
	width: clamp(343px, 91.46vw, 500px);
	padding-bottom: clamp(65px, 17.33vw, 100px);
}
.block-contents .block-link a {
	background-color: var(--color-accent);
	border-radius: 60px;
	color: var(--color-white);
	font-weight: 700;
	padding-top: clamp(20px, 5.33vw, 30px);
	padding-bottom: clamp(20px, 5.33vw, 30px);
	width: 100%;
	text-align: center;
	text-decoration: none;
	position: relative;
}

.block-contents .block-link a::after{
	content: "";
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-left: 19px solid var(--color-white);
	border-top: 11.4px solid transparent;
	border-bottom: 11.4px solid transparent;
}

.block-contents .block-link a:hover::after,
.block-contents .block-link a:focus-visible::after{
	right: 0.8em;
	transition: right 160ms ease;
}

@media screen and (max-width:767px) {
	.block-contents {
	}
	.block-contents .block-header {
	}
	.block-contents .block-header h1 {
		font-size: var(--font-size-32-sp);
		gap: 10px;
	}
	.block-contents .block-header h1{ gap: 8px; }
	.block-contents .block-header h1::before,
	.block-contents .block-header h1::after{
		aspect-ratio: 43.08 / 57.47;
		height: clamp(28px, 7.46vw, 60px);
		width: auto;
	}

	.block-contents .block-body-img {
		width: 90.66%;
	}

	.block-contents .block-body {
		gap: 10.66vw 0;
	}
	.block-contents .block-body .block-body-block {

		width: 100%;
	}
	.block-contents .block-body h2 {
		font-size: var(--font-size-21-sp);
	}
	.block-contents .block-link a {
		border-radius: 100px;
	}
	.block-contents .block-link a span {
		display: block;
		line-height: 1.3;
		margin-top: .2em;
	}
	.block-contents .block-link a::after{
		--arrow-w: clamp(14px, 5.067vw, 22px);
		border-left: var(--arrow-w) solid var(--color-white);
		border-top:  calc(var(--arrow-w) * 0.6) solid transparent;
		border-bottom: calc(var(--arrow-w) * 0.6) solid transparent;
		right: 1.2em;
	}
}


/*---------------------------------------
footer
---------------------------------------*/
footer {
    width: 100%;
    box-shadow: inset 0 10px 10px -10px rgba(0,0,0,0.5);
	padding-top: clamp(20px, 6vw, 40px);
}
footer div {
	display: flex;
	justify-content: center;
	margin: 0 auto;
}
footer div picture {
    width: clamp(250px, 65.6vw, 265px);
	padding-bottom: 10px;
}
footer div picture img {
    width: 100%;
}
footer p {
    text-align: center;
    font-size: var(--font-size-18);
}
footer p.copy_text {
    text-align: right;
    font-size: var(--font-size-12);
    padding-top: clamp(30px, 8vw, 50px);
}
