@import "https://fonts.googleapis.com/css2?family=Hanken+Grotesk:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&display=swap";
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
section,
article,
aside,
hgroup,
header,
footer,
nav,
dialog,
figure,
menu,
video,
audio,
mark,
time,
canvas,
details {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
	box-sizing: border-box;
	background: rgba(0, 0, 0, 0);
}
section,
article,
aside,
hgroup,
header,
footer,
main,
nav,
dialog,
figure,
figcaption {
	display: block;
}
html {
	font-size: 62.5%;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	word-break: normal;
	-moz-tab-size: 4;
	tab-size: 4;
}
*,
::before,
::after {
	background-repeat: no-repeat;
	box-sizing: inherit;
}
::before,
::after {
	text-decoration: inherit;
	vertical-align: inherit;
}
* {
	padding: 0;
	margin: 0;
}
body {
	line-height: 1;
	-webkit-text-size-adjust: 100%;
	-webkit-print-color-adjust: exact;
}
hr {
	overflow: visible;
	height: 0;
	color: inherit;
}
details,
main {
	display: block;
}
summary {
	display: list-item;
}
small {
	font-size: 80%;
}
[hidden] {
	display: none;
}
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}
ol,
ul {
	list-style: none;
}
blockquote,
q {
	quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
	content: none;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
}
img {
	-webkit-backface-visibility: hidden;
	vertical-align: bottom;
}
b,
strong,
em {
	font-weight: inherit;
	font-style: inherit;
}
a {
	background-color: rgba(0, 0, 0, 0);
}
a:active,
a:hover {
	outline-width: 0;
}
code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
}
pre {
	font-size: 1em;
}
b,
strong {
	font-weight: bolder;
}
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sub {
	bottom: -0.25em;
}
sup {
	top: -0.5em;
}
table {
	border-color: inherit;
	text-indent: 0;
}
input {
	border-radius: 0;
}
[disabled] {
	cursor: default;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}
textarea {
	overflow: auto;
	resize: vertical;
}
button,
input,
optgroup,
select,
textarea {
	font: inherit;
}
optgroup {
	font-weight: bold;
}
button {
	overflow: visible;
}
button,
select {
	text-transform: none;
}
button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
	cursor: pointer;
	color: inherit;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	outline: 1px dotted ButtonText;
}
button,
html [type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}
button,
input,
select,
textarea {
	background-color: rgba(0, 0, 0, 0);
	border-style: none;
}
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
	outline-width: 0;
}
select {
	-moz-appearance: none;
	-webkit-appearance: none;
}
select::-ms-expand {
	display: none;
}
select::-ms-value {
	color: currentColor;
}
legend {
	border: 0;
	color: inherit;
	display: table;
	max-width: 100%;
	white-space: normal;
	max-width: 100%;
}
::-webkit-file-upload-button {
	-webkit-appearance: button;
	color: inherit;
	font: inherit;
}
img {
	border-style: none;
}
progress {
	vertical-align: baseline;
}
[aria-busy="true"] {
	cursor: progress;
}
[aria-controls] {
	cursor: pointer;
}
[aria-disabled="true"] {
	cursor: default;
}
html {
	font-size: 10px;
	min-height: 100vh;
	overflow-y: scroll;
}
body {
	width: 100%;
	color: var(--text-primary-color);
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.5;
}
@media print, screen and (min-width: 769px) {
	body {
		min-width: 1120px;
	}
}
@media screen and (max-width: 768px) {
	body {
		font-size: 4.1025641026vw;
	}
}
@media print {
	body {
		display: block;
		-webkit-print-color-adjust: exact;
		min-width: 980px !important;
		overflow: visible !important;
	}
}
body.is-locked {
	position: fixed;
	width: 100%;
	height: 100%;
}
*,
*:before,
*:after {
	box-sizing: border-box;
	word-break: break-all;
}
a {
	text-decoration: none;
	color: inherit;
}
a img,
a .c-ico {
	transition: 0.3s ease;
}
button {
	transition: 0.3s ease;
}
button img,
button .c-ico {
	transition: 0.3s ease;
}
picture {
	width: 100%;
	height: auto;
}
img {
	width: 100%;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	-webkit-backface-visibility: hidden;
}
iframe {
	vertical-align: bottom;
}
object {
	width: 100%;
}
.hover-alpha a:hover img {
	opacity: 0.7;
}
::-webkit-input-placeholder {
	padding-top: 0.2em;
}
:-moz-placeholder {
	opacity: 1;
}
::-moz-placeholder {
	opacity: 1;
}
select,
textarea,
input[type="text"],
input[type="email"],
input[type="number"],
input[type="tel"],
button {
	-webkit-appearance: none;
	-moz-appearance: none;
	padding: 0;
	line-height: 1;
	box-sizing: border-box;
	border-radius: 0;
	border: none;
	background: none;
	font-size: 1.6rem;
	font-family: "Noto Sans JP", sans-serif;
}
input[type="number"] {
	-moz-appearance: textfield;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
select::-ms-expand {
	display: none;
}
input[type="button"],
input[type="submit"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	border: none;
	line-height: 1;
	cursor: pointer;
}
button {
	cursor: pointer;
}
:root {
	--primary-color: #00a6c3;
	--secondary-color: #ffec00;
	--text-primary-color: #364a4d;
}
.c-ttl01 {
	display: flex;
	flex-direction: column;
	line-height: 1;
	gap: 20px;
}
@media screen and (max-width: 768px) {
	.c-ttl01 {
		gap: 3.8461538462vw;
		align-items: center;
	}
}
.c-ttl01--main {
	font-size: 4.8rem;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.c-ttl01--main {
		font-size: 9.2307692308vw;
	}
}
.c-ttl01--sub {
	font-family: "Hanken Grotesk", sans-serif;
	font-size: 2.4rem;
	font-weight: bold;
	color: var(--primary-color);
	padding-left: 5px;
}
@media screen and (max-width: 768px) {
	.c-ttl01--sub {
		font-size: 4.6153846154vw;
	}
}
@media screen and (max-width: 768px) {
	.u-sm-min {
		display: none !important;
	}
}
@media print, screen and (min-width: 769px) {
	.u-sm-max {
		display: none !important;
	}
}
@media screen and (max-width: 1080px) {
	.u-md-min {
		display: none !important;
	}
}
@media print, screen and (min-width: 1081px) {
	.u-md-max {
		display: none !important;
	}
}
.u-up {
	overflow: hidden;
	display: block;
}
.u-up-item {
	display: block;
	transform: translateY(100%);
	transition: transform 0.5s ease;
}
.u-up + .u-up .u-up-item {
	transition-delay: 0.3s;
}
.is-animate .u-up-item {
	transform: translateY(0);
}
.u-bg-color {
	background: var(--secondary-color);
}
.u-ff-en {
	font-family: "Hanken Grotesk", sans-serif;
}
.u-ta-l {
	text-align: left !important;
}
@media print, screen and (min-width: 769px) {
	.u-ta-l--pc {
		text-align: left !important;
	}
}
@media screen and (max-width: 768px) {
	.u-ta-l--sp {
		text-align: left !important;
	}
}
.u-ta-r {
	text-align: right !important;
}
@media print, screen and (min-width: 769px) {
	.u-ta-r--pc {
		text-align: right !important;
	}
}
@media screen and (max-width: 768px) {
	.u-ta-r--sp {
		text-align: right !important;
	}
}
.u-ta-c {
	text-align: center !important;
}
@media print, screen and (min-width: 769px) {
	.u-ta-c--pc {
		text-align: center !important;
	}
}
@media screen and (max-width: 768px) {
	.u-ta-c--sp {
		text-align: center !important;
	}
}
.u-mt-0 {
	margin-top: 0 !important;
}
@media screen and (max-width: 768px) {
	.u-mt-0 {
		margin-top: 0 !important;
	}
}
@media print, screen and (min-width: 769px) {
	.u-mt-0--pc {
		margin-top: 0 !important;
	}
}
@media screen and (max-width: 768px) {
	.u-mt-0--sp {
		margin-top: 0 !important;
	}
}
.u-mt-10 {
	margin-top: 10px !important;
}
@media screen and (max-width: 768px) {
	.u-mt-10 {
		margin-top: 2.5641025641vw !important;
	}
}
@media print, screen and (min-width: 769px) {
	.u-mt-10--pc {
		margin-top: 10px !important;
	}
}
@media screen and (max-width: 768px) {
	.u-mt-10--sp {
		margin-top: 2.5641025641vw !important;
	}
}
.u-mt-20 {
	margin-top: 20px !important;
}
@media screen and (max-width: 768px) {
	.u-mt-20 {
		margin-top: 5.1282051282vw !important;
	}
}
@media print, screen and (min-width: 769px) {
	.u-mt-20--pc {
		margin-top: 20px !important;
	}
}
@media screen and (max-width: 768px) {
	.u-mt-20--sp {
		margin-top: 5.1282051282vw !important;
	}
}
.u-mt-30 {
	margin-top: 30px !important;
}
@media screen and (max-width: 768px) {
	.u-mt-30 {
		margin-top: 7.6923076923vw !important;
	}
}
@media print, screen and (min-width: 769px) {
	.u-mt-30--pc {
		margin-top: 30px !important;
	}
}
@media screen and (max-width: 768px) {
	.u-mt-30--sp {
		margin-top: 7.6923076923vw !important;
	}
}
.u-mt-40 {
	margin-top: 40px !important;
}
@media screen and (max-width: 768px) {
	.u-mt-40 {
		margin-top: 10.2564102564vw !important;
	}
}
@media print, screen and (min-width: 769px) {
	.u-mt-40--pc {
		margin-top: 40px !important;
	}
}
@media screen and (max-width: 768px) {
	.u-mt-40--sp {
		margin-top: 10.2564102564vw !important;
	}
}
.u-mt-50 {
	margin-top: 50px !important;
}
@media screen and (max-width: 768px) {
	.u-mt-50 {
		margin-top: 12.8205128205vw !important;
	}
}
@media print, screen and (min-width: 769px) {
	.u-mt-50--pc {
		margin-top: 50px !important;
	}
}
@media screen and (max-width: 768px) {
	.u-mt-50--sp {
		margin-top: 12.8205128205vw !important;
	}
}
.u-mt-60 {
	margin-top: 60px !important;
}
@media screen and (max-width: 768px) {
	.u-mt-60 {
		margin-top: 15.3846153846vw !important;
	}
}
@media print, screen and (min-width: 769px) {
	.u-mt-60--pc {
		margin-top: 60px !important;
	}
}
@media screen and (max-width: 768px) {
	.u-mt-60--sp {
		margin-top: 15.3846153846vw !important;
	}
}
.u-mt-70 {
	margin-top: 70px !important;
}
@media screen and (max-width: 768px) {
	.u-mt-70 {
		margin-top: 17.9487179487vw !important;
	}
}
@media print, screen and (min-width: 769px) {
	.u-mt-70--pc {
		margin-top: 70px !important;
	}
}
@media screen and (max-width: 768px) {
	.u-mt-70--sp {
		margin-top: 17.9487179487vw !important;
	}
}
.u-mt-80 {
	margin-top: 80px !important;
}
@media screen and (max-width: 768px) {
	.u-mt-80 {
		margin-top: 20.5128205128vw !important;
	}
}
@media print, screen and (min-width: 769px) {
	.u-mt-80--pc {
		margin-top: 80px !important;
	}
}
@media screen and (max-width: 768px) {
	.u-mt-80--sp {
		margin-top: 20.5128205128vw !important;
	}
}
.u-mt-90 {
	margin-top: 90px !important;
}
@media screen and (max-width: 768px) {
	.u-mt-90 {
		margin-top: 23.0769230769vw !important;
	}
}
@media print, screen and (min-width: 769px) {
	.u-mt-90--pc {
		margin-top: 90px !important;
	}
}
@media screen and (max-width: 768px) {
	.u-mt-90--sp {
		margin-top: 23.0769230769vw !important;
	}
}
.u-mt-100 {
	margin-top: 100px !important;
}
@media screen and (max-width: 768px) {
	.u-mt-100 {
		margin-top: 25.641025641vw !important;
	}
}
@media print, screen and (min-width: 769px) {
	.u-mt-100--pc {
		margin-top: 100px !important;
	}
}
@media screen and (max-width: 768px) {
	.u-mt-100--sp {
		margin-top: 25.641025641vw !important;
	}
}
.u-mb-0 {
	margin-bottom: 0 !important;
}
@media screen and (max-width: 768px) {
	.u-mb-0 {
		margin-bottom: 0 !important;
	}
}
.u-ml-0 {
	margin-left: 0 !important;
}
@media screen and (max-width: 768px) {
	.u-ml-0 {
		margin-left: 0 !important;
	}
}
.u-ml-auto {
	margin-left: auto !important;
}
@media screen and (max-width: 768px) {
	.u-ml-auto {
		margin-left: auto !important;
	}
}
.u-mr-0 {
	margin-right: 0 !important;
}
@media screen and (max-width: 768px) {
	.u-mr-0 {
		margin-right: 0 !important;
	}
}
.u-mr-auto {
	margin-right: auto !important;
}
@media screen and (max-width: 768px) {
	.u-mr-auto {
		margin-right: auto !important;
	}
}
.u-pt-0 {
	padding-top: 0 !important;
}
@media screen and (max-width: 768px) {
	.u-pt-0 {
		padding-top: 0 !important;
	}
}
.u-pt-10 {
	padding-top: 10px !important;
}
@media screen and (max-width: 768px) {
	.u-pt-10 {
		padding-top: 2.5641025641vw !important;
	}
}
.u-pt-20 {
	padding-top: 20px !important;
}
@media screen and (max-width: 768px) {
	.u-pt-20 {
		padding-top: 5.1282051282vw !important;
	}
}
.u-pt-30 {
	padding-top: 30px !important;
}
@media screen and (max-width: 768px) {
	.u-pt-30 {
		padding-top: 7.6923076923vw !important;
	}
}
.u-pt-40 {
	padding-top: 40px !important;
}
@media screen and (max-width: 768px) {
	.u-pt-40 {
		padding-top: 10.2564102564vw !important;
	}
}
.u-pt-50 {
	padding-top: 50px !important;
}
@media screen and (max-width: 768px) {
	.u-pt-50 {
		padding-top: 12.8205128205vw !important;
	}
}
.u-pt-60 {
	padding-top: 60px !important;
}
@media screen and (max-width: 768px) {
	.u-pt-60 {
		padding-top: 15.3846153846vw !important;
	}
}
.u-pt-70 {
	padding-top: 70px !important;
}
@media screen and (max-width: 768px) {
	.u-pt-70 {
		padding-top: 17.9487179487vw !important;
	}
}
.u-pt-80 {
	padding-top: 80px !important;
}
@media screen and (max-width: 768px) {
	.u-pt-80 {
		padding-top: 20.5128205128vw !important;
	}
}
.u-pt-90 {
	padding-top: 90px !important;
}
@media screen and (max-width: 768px) {
	.u-pt-90 {
		padding-top: 23.0769230769vw !important;
	}
}
.u-pt-100 {
	padding-top: 100px !important;
}
@media screen and (max-width: 768px) {
	.u-pt-100 {
		padding-top: 25.641025641vw !important;
	}
}
.u-pb-0 {
	padding-bottom: 0 !important;
}
@media screen and (max-width: 768px) {
	.u-pb-0 {
		padding-bottom: 0 !important;
	}
}
.u-pl-0 {
	padding-left: 0 !important;
}
@media screen and (max-width: 768px) {
	.u-pl-0 {
		padding-left: 0 !important;
	}
}
.u-pr-0 {
	padding-right: 0 !important;
}
@media screen and (max-width: 768px) {
	.u-pr-0 {
		padding-right: 0 !important;
	}
}
.l-container {
	max-width: 1920px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
.l-inner {
	width: 100%;
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 40px;
	padding-right: 40px;
}
@media screen and (max-width: 768px) {
	.l-inner {
		padding-left: 5.1282051282vw;
		padding-right: 5.1282051282vw;
	}
}
.l-header {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 50;
}
.l-header-logo {
	width: 280px;
}
@media print, screen and (min-width: 1441px) {
	.l-header-logo {
		width: 340px;
	}
}
@media screen and (max-width: 768px) {
	.l-header-logo {
		width: 160px;
	}
}
.l-footer {
	position: relative;
	z-index: 50;
	padding-top: 170px;
	padding-bottom: 40px;
}
@media screen and (max-width: 768px) {
	.l-footer {
		padding-top: 28.2051282051vw;
		padding-bottom: 7.6923076923vw;
	}
}
.l-footer-logo {
	width: 300px;
	margin: 0 auto;
	position: relative;
}
@media screen and (max-width: 768px) {
	.l-footer-logo {
		width: 46.1538461538vw;
	}
}
.l-footer-copy {
	max-width: 1050px;
	margin: 0 auto;
	margin-top: -30px;
	position: relative;
}
@media screen and (max-width: 768px) {
	.l-footer-copy {
		margin-top: 0;
		padding: 0 5.1282051282vw;
	}
}
.l-footer-copyright {
	margin-top: 100px;
	text-align: center;
	color: #fff;
	font-family: "Hanken Grotesk", sans-serif;
	font-weight: 500;
	font-size: 1.6rem;
	display: block;
	position: relative;
}
@media screen and (max-width: 768px) {
	.l-footer-copyright {
		margin-top: 5.1282051282vw;
		font-size: 3.0769230769vw;
	}
}
