@charset "UTF-8";
*, :before, :after {
	box-sizing: border-box
}
:where(:root) {
	font-family: sans-serif;
	line-height: 1.5;
	text-spacing-trim: trim-start;
	text-autospace: normal;
	line-break: strict;
	overflow-wrap: anywhere;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	scrollbar-gutter: stable;
	-webkit-tap-highlight-color: transparent
}
:where(body) {
	min-block-size: 100dvb;
	margin: unset
}
:where(:is(h1, h2, h3, h4, h5, h6):lang(en)) {
	text-wrap: pretty
}
:where(h1) {
	margin-block: .67em;
	font-size: 2em
}
:where(h2, h3, h4, h5, h6) {
	margin-block: unset
}
:where(search) {
	display: block flow
}
:where(p, blockquote, figure, pre, address, ul, ol, dl, menu) {
	margin-block: unset
}
:where(blockquote, figure) {
	margin-inline: unset
}
:where(p:lang(en)) {
	text-wrap: pretty
}
:where(address:lang(ja)) {
	font-style: unset
}
:where(ul, ol, menu) {
	padding-inline-start: unset;
	list-style-type: ""
}
:where(dt) {
	font-weight: bolder
}
:where(dd) {
	margin-inline-start: unset
}
:where(pre) {
	text-spacing-trim: space-all;
	text-autospace: no-autospace
}
@media print {
	:where(pre) {
		text-wrap-mode: unset
	}
}
:where(em:lang(ja)) {
	font-weight: bolder
}
:where(:is(i, cite, em, dfn):lang(ja)) {
	font-style: unset
}
:where(u, s, del, ins) {
	text-decoration-inset: auto
}
:where(code, kbd, samp) {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
	font-feature-settings: initial;
	font-variation-settings: initial;
	font-size: unset;
	font-variant-ligatures: none
}
:where(abbr[title]) {
	text-decoration-line: underline;
	text-decoration-style: dotted;
	text-decoration-inset: auto;
	cursor: help
}
:where(time) {
	text-autospace: no-autospace
}
@media(forced-colors:active) {
	:where(mark) {
		background-color: Highlight;
		color: HighlightText
	}
}
@media print {
	:where(mark) {
		border-width: 1px;
		border-style: dotted
	}
}
:where(a) {
	color: unset
}
:where(a:any-link) {
	text-decoration-line: unset;
	text-decoration-thickness: from-font;
	text-decoration-inset: auto
}
:where(img, svg, picture, video, audio, canvas, model, iframe, embed, object) {
	max-inline-size: 100%;
	vertical-align: bottom
}
:where(img, svg, picture, video, canvas, model, iframe, embed, object) {
	block-size: auto
}
:where(iframe) {
	border: unset
}
:where(table) {
	border-collapse: collapse
}
:where(caption, th) {
	text-align: unset
}
:where(caption:lang(en)) {
	text-wrap: pretty
}
:where(button, input, select, textarea), ::file-selector-button {
	border-width: 1px;
	border-style: solid;
	border-color: unset;
	border-radius: unset;
	color: unset;
	font: unset;
	letter-spacing: unset;
	text-align: unset
}
:where(input:is([type=radio i], [type=checkbox i])) {
	margin: unset
}
:where(input[type=file i]) {
	border: unset
}
:where(input[type=search i]) {
	-webkit-appearance: textfield
}
@supports (-webkit-touch-callout: none) {
	:where(input[type=search i]) {
		background-color: Canvas
	}
}
:where(input:is([type=tel i], [type=url i], [type=email i], [type=number i]):not(:placeholder-shown)) {
	direction: ltr
}
:where(textarea) {
	margin-block: unset;
	resize: block
}
:where(input:not([type=button i], [type=submit i], [type=reset i]), textarea, [contenteditable]) {
	text-autospace: no-autospace
}
:where(button, input:is([type=button i], [type=submit i], [type=reset i])), ::file-selector-button {
	background-color: unset
}
:where(button, input:is([type=button i], [type=submit i], [type=reset i]), [role=tab i], [role=button i], [role=option i]), ::file-selector-button {
	touch-action: manipulation
}
:where(button:enabled, label[for], select:enabled, input:is([type=button i], [type=submit i], [type=reset i], [type=radio i], [type=checkbox i]):enabled, [role=tab i], [role=button i], [role=option i]), :where(:enabled)::file-selector-button {
	cursor: pointer
}
:where(fieldset) {
	min-inline-size: 0;
	margin-inline: unset;
	padding: unset;
	border: unset
}
:where(legend) {
	padding-inline: unset
}
:where(progress) {
	vertical-align: unset
}
::placeholder {
	opacity: unset
}
:where(summary) {
	list-style-type: "";
	cursor: pointer
}
:where(summary)::-webkit-details-marker {
	display: none
}
:where(dialog, [popover]) {
	overscroll-behavior-block: contain;
	padding: unset;
	border: unset
}
:where(dialog:not([open], [popover]), [popover]:not(:popover-open)) {
	display: none!important
}
:where(dialog) {
	max-inline-size: unset;
	max-block-size: unset
}
:where(dialog)::backdrop {
	background-color: #0000004d
}
:where([popover]) {
	margin: unset
}
:where(:focus-visible) {
	outline-offset: 3px
}
[tabindex="-1"]:focus {
	outline: none!important
}
:where(:disabled, [aria-disabled=true i]) {
	cursor: default
}
[hidden]:not([hidden=until-found i]) {
	display: none!important
}
@font-face {
	font-family: CanelaDeck;
	src: url(../fonts/CanelaDeck-Light.otf) format("opentype");
	font-weight: 300;
	font-style: normal;
	font-display: swap
}
@font-face {
	font-family: CanelaDeck;
	src: url(../fonts/CanelaDeck-LightItalic.otf) format("opentype");
	font-weight: 300;
	font-style: italic;
	font-display: swap
}
@font-face {
	font-family: CanelaDeck;
	src: url(../fonts/CanelaDeck-Regular.otf) format("opentype");
	font-weight: 400;
	font-style: normal;
	font-display: swap
}
@font-face {
	font-family: CanelaDeck;
	src: url(../fonts/CanelaDeck-RegularItalic.otf) format("opentype");
	font-weight: 400;
	font-style: italic;
	font-display: swap
}
@font-face {
	font-family: CanelaDeck;
	src: url(../fonts/CanelaDeck-Medium.otf) format("opentype");
	font-weight: 500;
	font-style: normal;
	font-display: swap
}
@font-face {
	font-family: CanelaDeck;
	src: url(../fonts/CanelaDeck-MediumItalic.otf) format("opentype");
	font-weight: 500;
	font-style: italic;
	font-display: swap
}
@font-face {
	font-family: CanelaDeck;
	src: url(../fonts/CanelaDeck-Bold.otf) format("opentype");
	font-weight: 700;
	font-style: normal;
	font-display: swap
}
@font-face {
	font-family: CanelaDeck;
	src: url(../fonts/CanelaDeck-BoldItalic.otf) format("opentype");
	font-weight: 700;
	font-style: italic;
	font-display: swap
}
@font-face {
	font-family: CanelaDeck;
	src: url(../fonts/CanelaDeck-Black.otf) format("opentype");
	font-weight: 900;
	font-style: normal;
	font-display: swap
}
@font-face {
	font-family: CanelaDeck;
	src: url(../fonts/CanelaDeck-BlackItalic.otf) format("opentype");
	font-weight: 900;
	font-style: italic;
	font-display: swap
}
body {
	background-color: #fff;
	color: #000;
	font-family: Noto Sans JP, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
	line-height: 1.7
}
a {
	color: inherit;
	text-decoration: none;
	-webkit-tap-highlight-color: transparent;
	transition: opacity .3s
}
@media(any-hover:hover) {
	a:hover {
		opacity: .7;
		text-decoration: underline
	}
}
a:focus:not(:focus-visible), a:active {
	text-decoration: none
}
.ff-en {
	font-family: CanelaDeck, Times New Roman, serif
}
.site-header {
	background-image: linear-gradient(to right, #006fa7, #323182 40%, #ec2087);
	inline-size: 100%;
	height: 30px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 12px;
	font-weight: 500
}
@media(max-width:750px) {
	.site-header {
		font-size: 3.2vw;
		padding-block-start: 2px
	}
}
@media(min-width:1025px) {
	.site-header {
		height: 60px;
		font-size: 20px
	}
}
.fv {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: calc(100svh - 30px);
	padding-block: calc(.13*(100svh - 30px)) 0;
	overflow: hidden;
	color: #fff;
	text-align: center
}
@media(min-width:1025px) {
	.fv {
		padding-block: calc(.1577777778 * (100svh - 60px)) 64px;
		min-height: calc(100svh - 60px)
	}
}
.fv>.u-container {
	width: 100%;
	min-width: 0
}
.fv__movie {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -2
}
.fv__movie video {
	width: 100%;
	height: 100%;
	object-fit: cover
}
.fv__logo {
	position: absolute;
	top: 26px;
	left: 50px;
	z-index: 1
}
.fv__logo img {
	display: block;
	width: 228px;
	height: auto
}
@media(max-width:750px) {
	.fv__logo {
		top: 8px;
		left: 20px
	}
	.fv__logo img {
		width: 160px
	}
}
.fv__container {
	padding-inline: 40px
}
@media(max-width:750px) {
	.fv__container {
		padding-inline: 20px
	}
}
.fv__main {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	color: #181818
}
.fv__main>* {
	max-width: 100%
}
.fv__main .ff-en {
	margin: 0;
	line-height: 1.25
}
.fv__main .ff-en:first-child {
	font-size: 33px;
	letter-spacing: .04em;
	margin-block-end: 12px
}
@media(max-width:750px) {
	.fv__main .ff-en:first-child {
		margin-block-end: 1.6vw;
		font-size: 3.2vw;
		letter-spacing: 0
	}
}
.fv__main .ff-en:nth-child(2) {
	margin-bottom: 56px;
	font-size: 76px;
	font-weight: 500;
	line-height: 1.2
}
@media(max-width:750px) {
	.fv__main .ff-en:nth-child(2) {
		margin-bottom: 13.2svh;
		font-size: 6.4vw
	}
}
.fv__main h1 {
	margin: 0 0 72px;
	font-size: clamp(32px, 5vw, 72px);
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap
}
.fv__main h1 small {
	font-size: .4em;
	font-weight: 500;
	vertical-align: super
}
@media(max-width:750px) {
	.fv__main h1 {
		margin-bottom: 13svh;
		font-size: calc(32 / 375 * 100vw);
		white-space: normal
	}
}
.fv__title svg {
	display: block;
	width: clamp(300px, 90vw, 1320px);
	height: auto;
	margin-inline: auto
}
@media(max-width:750px) {
	.fv__title svg {
		width: calc(335 / 375 * 100vw);
		margin-inline: auto;
		transform: translate(2.6666666667vw)
	}
}
.fv__title path {
	fill: #181818;
	stroke: #181818;
	stroke-width: 2;
	fill-opacity: 0;
	stroke-opacity: 0
}
.fv__title.is-ready path {
	animation: fv-char-stroke .15s ease forwards, fv-char-fill .25s ease forwards, fv-char-blink .18s ease-in-out 2 forwards;
	animation-delay: calc(var(--char-index, 0) * .1s), calc(var(--char-index, 0) * .1s + .2s), calc(var(--char-index, 0) * .1s + .2s + .25s)
}
@keyframes fv-char-stroke {
	to {
		stroke-opacity: 1
	}
}
@keyframes fv-char-fill {
	to {
		fill-opacity: 1
	}
}
@keyframes fv-char-blink {
	0% {
		fill-opacity: 1;
		stroke-opacity: 1
	}
	50% {
		fill-opacity: 0;
		stroke-opacity: 0
	}
	to {
		fill-opacity: 1;
		stroke-opacity: 1
	}
}
@media(prefers-reduced-motion:reduce) {
	.fv__title path, .fv__title.is-ready path {
		fill-opacity: 1;
		stroke-opacity: 1;
		animation: none
	}
}
.fv__main>div {
	display: grid;
	grid-template-columns: auto auto auto;
	justify-content: center;
	align-items: center;
	gap: 0 12px;
	margin-bottom: 64px
}
@media(max-width:750px) {
	.fv__main>div {
		gap: 0 calc(5 / 375 * 100vw);
		margin-block-end: 9.6vw
	}
}
@media(max-width:750px) {
	.fv__main>div .text-date {
		display: flex;
		align-items: center;
		gap: 0
	}
}
@media(max-width:750px) {
	.fv__main>div .arrow {
		width: 4.8vw
	}
}
.fv__main>div p {
	margin: 0;
	font-size: 54px;
	font-weight: 700
}
@media(max-width:750px) {
	.fv__main>div p {
		font-size: calc(20 / 375 * 100vw);
		letter-spacing: -.03em
	}
}
.fv__main>div span {
	display: inline-flex;
	align-items: center
}
@media(max-width:750px) {
	.fv__main>div span.arrow {
		width: 4.8vw
	}
}
.fv__main>div span svg path {
	stroke: #181818
}
.fv__main>div p:last-child {
	grid-column: 1/-1;
	font-size: 22px;
	font-weight: 400
}
@media(max-width:750px) {
	.fv__main>div p:last-child {
		font-size: 3.2vw
	}
}
.fv__button a {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 8px 24px;
	background-color: #06c755;
	color: #fff;
	font-size: 24px;
	font-weight: 400;
	transition: opacity .3s
}
@media(max-width:750px) {
	.fv__button a {
		font-size: calc(16 / 375 * 100vw);
		padding: calc(8 / 375 * 100vw) 3.2vw
	}
}
@media(any-hover:hover) {
	.fv__button a:hover {
		text-decoration: none;
		opacity: .7
	}
}
.fv__button span:last-child svg path {
	stroke: #fff
}
.fv__button-icon {
	width: 65px;
	height: 50px
}
@media(max-width:750px) {
	.fv__button-icon {
		width: calc(41.941 / 375 * 100vw);
		height: calc(32.694 / 375 * 100vw)
	}
}
@media(max-width:750px) {
	.fv__button-arrow {
		width: 6.4vw
	}
}
.site-footer {
	padding-block: 60px 50px;
	background-color: #181818;
	color: #fff;
	text-align: center
}
@media(max-width:750px) {
	.site-footer {
		padding-block: calc(32 / 375 * 100vw) calc(28 / 375 * 100vw)
	}
}
.site-footer__brand {
	margin-block-end: 76px
}
@media(max-width:750px) {
	.site-footer__brand {
		text-align: center;
		margin-block-end: 9.6vw
	}
}
.site-footer__brand img {
	width: calc(176 / 375 * 100vw);
	margin-inline: auto;
	height: auto
}
@media(min-width:751px) {
	.site-footer__brand img {
		width: 400px
	}
}
.site-footer__info {
	margin-block-end: 90px;
	font-size: 16px;
	line-height: 1.4
}
@media(max-width:750px) {
	.site-footer__info {
		margin-block-end: calc(10 / 375 * 100vw);
		font-size: 3.2vw;
		text-align: center
	}
}
.site-footer__caution {
	margin-top: 8px;
	font-size: 14px
}
@media(max-width:750px) {
	.site-footer__caution {
		font-size: calc(10 / 375 * 100vw)
	}
}
.site-footer__address {
	color: #939393;
	font-size: 16px;
	line-height: 1.4
}
@media(max-width:750px) {
	.site-footer__address {
		text-align: center;
		font-size: calc(10 / 375 * 100vw)
	}
}
.site-footer__address p:not(:last-child) {
	margin-block-end: 36px
}
@media(max-width:750px) {
	.site-footer__address p:not(:last-child) {
		margin-block-end: calc(16 / 375 * 100vw)
	}
}
.footer-links {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	justify-content: center;
	gap: 24px;
	margin: 0 0 calc(80 / 375 * 100vw);
	padding: 0;
	list-style: none
}
@media(min-width:751px) {
	.footer-links {
		margin-block-end: 150px;
		max-width: 760px;
		margin-inline: auto
	}
}
@media(max-width:750px) {
	.footer-links {
		flex-wrap: wrap;
		gap: 16px
	}
}
.footer-link-item {
	aspect-ratio: 1/1;
	max-width: 160px
}
.footer-link {
	display: block;
	max-width: 160px
}
@media(max-width:750px) {
	.footer-link {
		max-width: 100%
	}
}
.footer-link img {
	display: block;
	width: 100%;
	height: auto
}
.c-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 16px 32px;
	border-radius: 9999px;
	background-color: #000;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer
}
@media(max-width:750px) {
	.c-button {
		font-size: calc(16 / 375 * 100vw)
	}
}
.c-button {
	transition: background-color .2s ease, color .2s ease
}
@media(any-hover:hover) {
	.c-button:hover {
		text-decoration: none;
		opacity: .9
	}
}
.u-container {
	width: 100%;
	max-width: 1250px;
	margin-inline: auto;
	padding-inline: 20px
}
@media(min-width:751px)and (max-width:1024px) {
	.u-container {
		max-width: 1270px;
		padding-inline: 30px
	}
}
.u-visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0
}
[data-fade-step]>* {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity .7s ease, transform .7s ease;
	will-change: opacity, transform
}
[data-fade-step].is-visible>* {
	opacity: 1;
	transform: translateY(0)
}
[data-fade-step].is-visible>*:nth-child(1) {
	transition-delay: 0s
}
[data-fade-step].is-visible>*:nth-child(2) {
	transition-delay: .15s
}
[data-fade-step].is-visible>*:nth-child(3) {
	transition-delay: .3s
}
[data-fade-step].is-visible>*:nth-child(4) {
	transition-delay: .45s
}
[data-fade-step].is-visible>*:nth-child(5) {
	transition-delay: .6s
}
[data-fade-step].is-visible>*:nth-child(6) {
	transition-delay: .75s
}
[data-fade-step].is-visible>*:nth-child(7) {
	transition-delay: .9s
}
[data-fade-step].is-visible>*:nth-child(8) {
	transition-delay: 1.05s
}
[data-fade-step].is-visible>*:nth-child(9) {
	transition-delay: 1.2s
}
[data-fade-step].is-visible>*:nth-child(10) {
	transition-delay: 1.35s
}
@media(prefers-reduced-motion:reduce) {
	[data-fade-step]>*, [data-fade-step].is-visible>* {
		opacity: 1;
		transform: none;
		transition: none
	}
}
@media(max-width:750px) {
	.u-hidden-sp {
		display: none
	}
}
@media(min-width:751px)and (max-width:1024px) {
	.u-hidden-tb {
		display: none
	}
}
@media(min-width:751px) {
	.u-hidden-pc {
		display: none
	}
}
.section {
	padding-block: 140px
}
@media(max-width:750px) {
	.section {
		padding-block: 80px
	}
}
.section-label {
	margin: 0 0 24px
}
.section-label .ff-en {
	position: relative;
	margin: 0;
	padding-bottom: calc(4 / 375 * 100vw);
	font-size: calc(16 / 375 * 100vw);
	font-weight: 500
}
@media(min-width:751px) {
	.section-label .ff-en {
		padding-bottom: 10px;
		font-size: 32px
	}
}
.section-label .ff-en:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background-color: currentColor;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform .8s ease
}
.section-label.is-visible .ff-en:after {
	transform: scaleX(1)
}
.section-label--light {
	transition: color .8s ease
}
.section-label--light .ff-en:after {
	transition: transform .8s ease, background-color .8s ease
}
.is-bg .section-label--light {
	color: #fff
}
.is-bg .section-label--light .ff-en:after {
	background-color: #fff
}
@media(max-width:750px) {
	.section-label {
		margin-block-end: calc(20 / 375 * 100vw)
	}
}
.section-label__title {
	font-weight: 700;
	line-height: 1.4
}
@media(min-width:751px) {
	.section-label__title {
		font-size: 52px;
		margin-block-start: 32px
	}
}
@media(max-width:750px) {
	.section-label__title {
		font-size: calc(32 / 375 * 100vw);
		margin-block-start: 9.6vw;
		margin-block-end: vw(22)
	}
}
.section-text {
	line-height: 2;
	font-weight: 400
}
.section-text+.section-text {
	margin-block-start: 2.5em
}
@media(min-width:751px) {
	.section-text {
		font-size: 16px
	}
}
@media(max-width:750px) {
	.section-text {
		font-size: calc(14 / 375 * 100vw)
	}
}
.section-lead {
	font-weight: 700;
	line-height: 1.75;
	margin-block-start: 9.6vw
}
@media(min-width:751px) {
	.section-lead {
		margin-block-start: 60px;
		font-size: 36px
	}
}
@media(max-width:750px) {
	.section-lead {
		font-size: 6.4vw
	}
}
@media(prefers-reduced-motion:reduce) {
	.section-label .ff-en:after {
		transform: scaleX(1);
		transition: none
	}
}
.message {
	background-color: #fff;
	color: #000;
	transition: background-color .8s ease, color .8s ease
}
.message.is-bg {
	background-color: #181818;
	color: #fff
}
@media(prefers-reduced-motion:reduce) {
	.message {
		transition: none
	}
}
@media(max-width:750px) {
	.message {
		padding-block: 19.2vw
	}
}
.message-text {
	font-weight: 300;
	letter-spacing: .07em;
	margin-block-start: 6px
}
.concept {
	background-color: #fff
}
.concept__title {
	margin-block: 42px 30px;
	font-weight: 700;
	line-height: 1.75
}
@media(min-width:751px) {
	.concept__title {
		font-size: 64px
	}
}
@media(max-width:750px) {
	.concept__title {
		font-size: calc(32 / 375 * 100vw);
		margin-block-end: 26px
	}
}
.concept__body {
	line-height: 2
}
@media(min-width:751px) {
	.concept__body {
		font-size: 28px
	}
}
@media(max-width:750px) {
	.concept__body {
		font-size: calc(14 / 375 * 100vw)
	}
}
.concept__body p {
	margin: 0 0 1.5em
}
.concept__body p:last-child {
	margin-block-end: 0
}
.concept__body {
	max-width: 860px
}
.concept__lead {
	margin: 48px 0 0;
	font-weight: 700;
	line-height: 1.4
}
@media(min-width:751px) {
	.concept__lead {
		font-size: 30px
	}
}
@media(max-width:750px) {
	.concept__lead {
		font-size: calc(20 / 375 * 100vw)
	}
}
.offer {
	background-color: #fff;
	color: #000;
	transition: background-color .8s ease, color .8s ease
}
.offer.is-bg {
	background-color: #11b1e7;
	color: #fff
}
@media(prefers-reduced-motion:reduce) {
	.offer {
		transition: none
	}
}
.offer__title {
	margin-block: 42px 30px;
	font-weight: 700;
	line-height: 1.75
}
@media(min-width:751px) {
	.offer__title {
		font-size: 64px
	}
}
@media(max-width:750px) {
	.offer__title {
		font-size: calc(32 / 375 * 100vw);
		margin-block-end: 26px
	}
}
.offer__lead {
	margin: 48px 0 0;
	font-weight: 700;
	line-height: 1.4
}
@media(min-width:751px) {
	.offer__lead {
		font-size: 30px
	}
}
@media(max-width:750px) {
	.offer__lead {
		font-size: calc(20 / 375 * 100vw)
	}
}
.offer__list {
	margin-block-start: 32px;
	display: flex;
	flex-direction: column;
	gap: 150px
}
@media(max-width:750px) {
	.offer__list {
		gap: calc(88 / 375 * 100vw)
	}
}
.pillar {
	display: grid;
	grid-template-columns: 264px 1fr;
	gap: 48px
}
@media(max-width:750px) {
	.pillar {
		grid-template-columns: 1fr;
		gap: calc(8 / 375 * 100vw)
	}
}
.pillar__label {
	position: relative;
	margin: 0;
	padding-right: 24px;
	font-size: 38px;
	font-weight: 500;
	width: 264px;
	color: #000;
	padding-top: 6px
}
@media(max-width:750px) {
	.pillar__label {
		width: calc(128 / 375 * 100vw);
		padding: 0 0 calc(14 / 375 * 100vw);
		font-size: 6.4vw
	}
}
.pillar__label:after {
	content: "";
	position: absolute;
	top: .2em;
	right: 0;
	width: 1px;
	height: 72px;
	background-color: #fff
}
@media(max-width:750px) {
	.pillar__label:after {
		content: none
	}
}
.pillar__content {
	line-height: 2
}
@media(min-width:751px) {
	.pillar__content {
		font-size: 28px
	}
}
@media(max-width:750px) {
	.pillar__content {
		font-size: calc(14 / 375 * 100vw)
	}
}
.pillar__content p {
	margin: 0 0 1.5em
}
.pillar__content p:last-child {
	margin-block-end: 0
}
.pillar__heading {
	margin: 0 0 20px;
	font-size: calc(31 / 375 * 100vw);
	font-weight: 700;
	line-height: 1.2
}
@media(min-width:751px) {
	.pillar__heading {
		line-height: 2.2;
		font-size: 36px
	}
}
@media(max-width:750px) {
	.pillar__heading {
		position: relative
	}
	.pillar__heading:before {
		content: "";
		position: absolute;
		top: 50%;
		left: -6.4vw;
		transform: translateY(-50%);
		background-color: #fff;
		width: 1px;
		height: 100%
	}
}
@media(max-width:750px) {
	.pillar-head {
		gap: calc(20 / 375 * 100vw);
		display: flex;
		align-items: center
	}
}
.pillar-text {
	line-height: 1.5;
	margin-block-end: 1.2em
}
@media(max-width:750px) {
	.pillar-text {
		line-height: 1.8
	}
}
.pillar-text:first-of-type {
	margin-block: .7em 0
}
.pillar-text+.pillar-text {
	margin-block: 1.3em 0
}
@media(max-width:750px) {
	.pillar-text+.pillar-text {
		margin-block: 2.7em 0
	}
}
.pillar-lead {
	margin-block-start: 100px
}
@media(max-width:750px) {
	.pillar-lead {
		margin-block-start: calc(46 / 375 * 100vw)
	}
}
.card-slider {
	position: relative;
	padding: 70px 70px 46px;
	margin: 30px 0 0;
	background-color: #e0e0e0;
	color: #000
}
@media(max-width:750px) {
	.card-slider {
		margin-block-start: 0;
		padding: calc(32 / 375 * 100vw) calc(32 / 375 * 100vw) calc(20 / 375 * 100vw)
	}
}
.card-slider--light {
	background-color: #ffffffeb
}
.card-slider__caption {
	margin: 0 0 24px;
	text-align: center;
	font-size: 14px;
	letter-spacing: .1em
}
@media(max-width:750px) {
	.card-slider__caption {
		font-size: calc(14 / 375 * 100vw)
	}
}
.card-slider__body {
	text-align: center
}
.card-slider__heading {
	margin: 0 0 34px;
	padding: 12px 24px;
	background-image: linear-gradient(to right, #006fa7, #323182 40%, #ec2087);
	color: #fff;
	font-size: 16px;
	font-weight: 700
}
@media(max-width:750px) {
	.card-slider__heading {
		font-size: calc(14 / 375 * 100vw);
		padding: calc(8 / 375 * 100vw);
		margin-block-end: calc(10 / 375 * 100vw)
	}
}
.card-slider__heading-jp {
	margin: 0 0 24px;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.4
}
@media(max-width:750px) {
	.card-slider__heading-jp {
		font-size: calc(20 / 375 * 100vw)
	}
}
.card-slider__text {
	margin: 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 2;
	text-align: left
}
@media(max-width:750px) {
	.card-slider__text {
		font-size: calc(14 / 375 * 100vw);
		line-height: 2.2
	}
}
.card-slider .splide__arrows {
	position: absolute;
	top: 40px;
	bottom: 40px;
	left: 80px;
	right: 80px;
	z-index: 1;
	pointer-events: none
}
@media(max-width:750px) {
	.card-slider .splide__arrows {
		top: 6.4vw;
		bottom: 6.4vw;
		left: calc(32 / 375 * 100vw);
		right: calc(32 / 375 * 100vw)
	}
}
.card-slider .splide__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 40px;
	height: 40px;
	border: none;
	border-radius: 0;
	background: none;
	color: #000;
	opacity: 1;
	cursor: pointer;
	pointer-events: auto;
	transition: opacity .3s
}
@media(any-hover:hover) {
	.card-slider .splide__arrow:hover {
		opacity: .3
	}
}
@media(max-width:750px) {
	.card-slider .splide__arrow {
		width: 4.8vw;
		height: 4.8vw
	}
}
.card-slider .splide__arrow svg {
	display: none
}
.card-slider .splide__arrow:before {
	font-size: 32px;
	line-height: 1;
	width: 16px;
	height: 34px
}
@media(max-width:750px) {
	.card-slider .splide__arrow:before {
		font-size: 6.4vw
	}
}
.card-slider .splide__arrow--prev {
	content: "";
	right: calc(100% + 40px);
	left: auto;
	background: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='16.945'%20height='33.837'%20viewBox='0%200%2016.945%2033.837'%3e%3cpath%20d='M16.245,33.5.354,16.926,16.245.354'%20transform='translate(0.339%20-0.008)'%20fill='none'%20stroke='%23000'%20stroke-miterlimit='10'%20stroke-width='1'/%3e%3c/svg%3e") center top no-repeat;
	background-size: auto 100%
}
@media(max-width:750px) {
	.card-slider .splide__arrow--prev {
		right: calc(100% + 4px)
	}
}
.card-slider .splide__arrow--next {
	content: "";
	left: calc(100% + 40px);
	right: auto;
	background: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='16.945'%20height='33.837'%20viewBox='0%200%2016.945%2033.837'%3e%3cpath%20d='M.354,33.5,16.245,16.926.354.354'%20transform='translate(0.007%20-0.008)'%20fill='none'%20stroke='%23000'%20stroke-miterlimit='10'%20stroke-width='1'/%3e%3c/svg%3e") center top no-repeat;
	background-size: auto 100%
}
@media(max-width:750px) {
	.card-slider .splide__arrow--next {
		left: calc(100% + 4px)
	}
}
.card-slider .splide__arrow:disabled {
	opacity: .3
}
.card-slider .splide__pagination {
	position: static;
	gap: 16px;
	margin: 55px 0 0;
	padding: 0
}
@media(max-width:750px) {
	.card-slider .splide__pagination {
		margin-block-start: calc(16 / 375 * 100vw);
		gap: calc(8 / 375 * 100vw)
	}
}
.card-slider .splide__pagination li {
	line-height: 1;
	aspect-ratio: 1/1
}
@media(max-width:750px) {
	.card-slider .splide__pagination li {
		width: calc(8 / 375 * 100vw)
	}
}
.card-slider .splide__pagination .splide__pagination__page {
	border-radius: 50%;
	background-color: #0000004d;
	opacity: 1;
	transform: none;
	aspect-ratio: 1/1;
	border: none;
	width: 16px;
	height: 16px;
	display: block
}
@media(max-width:750px) {
	.card-slider .splide__pagination .splide__pagination__page {
		padding: 0;
		width: calc(8 / 375 * 100vw);
		height: 100%
	}
}
.card-slider .splide__pagination .splide__pagination__page.is-active {
	background-color: #000;
	transform: none
}
.learning {
	background-color: #fff
}
.learning__title {
	margin-block: 42px 30px;
	font-weight: 700;
	line-height: 1.75
}
@media(min-width:751px) {
	.learning__title {
		font-size: 52px
	}
}
@media(max-width:750px) {
	.learning__title {
		font-size: calc(32 / 375 * 100vw);
		margin-block-end: 26px
	}
}
@media(max-width:750px) {
	.learning__title {
		margin-block-end: calc(5 / 375 * 100vw)
	}
}
.learning__lead {
	margin: 48px 0 0;
	font-weight: 700;
	line-height: 1.4
}
@media(min-width:751px) {
	.learning__lead {
		font-size: 30px
	}
}
@media(max-width:750px) {
	.learning__lead {
		font-size: calc(20 / 375 * 100vw)
	}
}
.learning-lead {
	margin-block-start: 24px
}
.project {
	background-color: #fff;
	color: #000;
	transition: background-color .8s ease, color .8s ease
}
.project.is-bg {
	background-color: #292662;
	color: #fff
}
@media(prefers-reduced-motion:reduce) {
	.project {
		transition: none
	}
}
@media(max-width:750px) {
	.project {
		padding-block-end: 6.4vw
	}
}
.project__title {
	margin-block: 42px 30px;
	font-weight: 700;
	line-height: 1.75
}
@media(min-width:751px) {
	.project__title {
		font-size: 64px
	}
}
@media(max-width:750px) {
	.project__title {
		font-size: calc(32 / 375 * 100vw);
		margin-block-end: 26px
	}
}
.project__body {
	line-height: 2
}
@media(min-width:751px) {
	.project__body {
		font-size: 16px
	}
}
@media(max-width:750px) {
	.project__body {
		font-size: calc(14 / 375 * 100vw)
	}
}
.project__body p {
	margin: 0 0 1.5em
}
.project__body p:last-child {
	margin-block-end: 0
}
.project__caption {
	margin: 65px 0 24px;
	text-align: center;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: .07em
}
@media(max-width:750px) {
	.project__caption {
		margin-block: 8vw calc(10 / 375 * 100vw);
		font-size: 3.2vw
	}
}
.project__slider.card-slider {
	margin-block-start: 24px;
	padding: 56px 70px 30px
}
@media(max-width:750px) {
	.project__slider.card-slider {
		margin-block-start: 0;
		padding: calc(28 / 375 * 100vw) calc(32 / 375 * 100vw) calc(16 / 375 * 100vw)
	}
}
.project__slider .card-slider__heading-jp {
	font-size: 24px;
	margin-block-end: 20px
}
@media(max-width:750px) {
	.project__slider .card-slider__heading-jp {
		font-size: calc(14 / 375 * 100vw)
	}
}
.project__slider .card-slider__text {
	line-height: 2.2
}
.project__slider .splide__pagination {
	margin-block-start: 32px
}
@media(max-width:750px) {
	.project__slider .splide__pagination {
		margin-block-start: calc(16 / 375 * 100vw)
	}
}
.project__note {
	margin: 24px 0 0;
	text-align: center;
	line-height: 1.4;
	font-size: 16px
}
@media(max-width:750px) {
	.project__note {
		line-height: 2.2;
		margin-block-start: calc(8 / 375 * 100vw);
		text-align: left;
		font-size: calc(14 / 375 * 100vw)
	}
}
.project__lead {
	margin: 48px 0 0;
	font-weight: 700;
	line-height: 1.4
}
@media(min-width:751px) {
	.project__lead {
		font-size: 30px
	}
}
@media(max-width:750px) {
	.project__lead {
		font-size: calc(20 / 375 * 100vw)
	}
}
@media(max-width:750px) {
	.project-label {
		margin-block-end: calc(10 / 375 * 100vw)
	}
}
@media(max-width:750px) {
	.project-lead {
		margin-block-end: calc(50 / 375 * 100vw)
	}
}
.curriculum {
	background-color: #fff
}
@media(max-width:750px) {
	.curriculum {
		padding-block-end: calc(68 / 375 * 100vw)
	}
}
.curriculum__title {
	margin-block: 42px 30px;
	font-weight: 700;
	line-height: 1.75
}
@media(min-width:751px) {
	.curriculum__title {
		font-size: 64px
	}
}
@media(max-width:750px) {
	.curriculum__title {
		font-size: calc(32 / 375 * 100vw);
		margin-block-end: 26px
	}
}
.curriculum__lead {
	margin: 48px 0 0;
	font-weight: 700;
	line-height: 1.4
}
@media(min-width:751px) {
	.curriculum__lead {
		font-size: 30px
	}
}
@media(max-width:750px) {
	.curriculum__lead {
		font-size: calc(20 / 375 * 100vw)
	}
}
.curriculum-lead {
	margin-block-start: 70px
}
@media(max-width:750px) {
	.curriculum-lead {
		margin-block-start: 6.4vw
	}
}
.timeline {
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none
}
.timeline:before {
	content: "";
	position: absolute;
	top: 10px;
	bottom: 10px;
	left: 172px;
	width: 2px;
	background-color: #000;
	transform: translate(-50%)
}
@media(max-width:750px) {
	.timeline:before {
		top: 8px;
		bottom: 8px;
		left: calc(92 / 375 * 100vw);
		height: calc(100% - 1.5em)
	}
}
.timeline__stage {
	display: grid;
	grid-template-columns: 172px 1fr
}
@media(max-width:750px) {
	.timeline__stage {
		grid-template-columns: calc(84 / 375 * 100vw) 1fr
	}
}
.timeline__stage:not(:last-child) {
	padding-bottom: 98px
}
@media(max-width:750px) {
	.timeline__stage:not(:last-child) {
		padding-bottom: 16vw
	}
}
.timeline__year {
	grid-column: 1;
	grid-row: 1;
	margin: 0;
	padding-right: 42px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4;
	white-space: nowrap
}
@media(max-width:750px) {
	.timeline__year {
		font-size: calc(16 / 375 * 100vw);
		padding-right: 20px
	}
}
.timeline__items {
	grid-column: 2;
	grid-row: 1;
	margin: 0;
	padding: 0;
	list-style: none
}
.timeline__item {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 20px;
	padding-left: 42px;
	font-size: 16px;
	line-height: 1.4
}
@media(max-width:750px) {
	.timeline__item {
		min-height: 16px;
		padding-left: calc(34 / 375 * 100vw);
		font-size: calc(16 / 375 * 100vw)
	}
}
.timeline__item:not(:last-child) {
	margin-block-end: 30px
}
@media(max-width:750px) {
	.timeline__item:not(:last-child) {
		margin-block-end: calc(20 / 375 * 100vw)
	}
}
.timeline__item:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: var(--dot, #11B1E7);
	transform: translate(-50%, -50%)
}
@media(max-width:750px) {
	.timeline__item:before {
		left: calc(8 / 375 * 100vw);
		width: 12px;
		height: 12px
	}
}
.timeline__item--lead:before {
	width: 20px;
	height: 20px;
	background-color: var(--dot, #11B1E7);
	box-shadow: 0 0 0 4px #fff, 0 0 0 5px #000
}
@media(max-width:750px) {
	.timeline__item--lead:before {
		width: 16px;
		height: 16px;
		box-shadow: 0 0 0 3px #fff, 0 0 0 4px #000
	}
}
@media(max-width:750px) {
	.timeline__item--lead:before {
		width: 12px;
		height: 12px
	}
}
.global-local {
	background-color: #fff;
	color: #000;
	transition: background-color .8s ease, color .8s ease
}
.global-local.is-bg {
	background-color: #7e2384;
	color: #fff
}
@media(prefers-reduced-motion:reduce) {
	.global-local {
		transition: none
	}
}
.global-local__title {
	margin-block: 42px 30px;
	font-weight: 700;
	line-height: 1.75
}
@media(min-width:751px) {
	.global-local__title {
		font-size: 64px
	}
}
@media(max-width:750px) {
	.global-local__title {
		font-size: calc(32 / 375 * 100vw);
		margin-block-end: 26px
	}
}
.global-local__body {
	line-height: 2
}
@media(min-width:751px) {
	.global-local__body {
		font-size: 16px
	}
}
@media(max-width:750px) {
	.global-local__body {
		font-size: calc(14 / 375 * 100vw)
	}
}
.global-local__lead {
	margin: 48px 0 0;
	font-weight: 700;
	line-height: 1.4
}
@media(min-width:751px) {
	.global-local__lead {
		font-size: 30px
	}
}
@media(max-width:750px) {
	.global-local__lead {
		font-size: calc(20 / 375 * 100vw)
	}
}
.global-local__text:not(:last-child) {
	margin-block-end: 2.4em
}
.global-local-lead {
	margin-block-start: 55px
}
@media(max-width:750px) {
	.global-local-lead {
		margin-block-start: calc(32 / 375 * 100vw)
	}
}
.student-profile {
	background-color: #fff;
	padding-block-end: 90px
}
@media(max-width:750px) {
	.student-profile {
		padding-block-end: calc(80 / 375 * 100vw)
	}
}
.student-profile__title {
	margin-block: 42px 30px;
	font-weight: 700;
	line-height: 1.75
}
@media(min-width:751px) {
	.student-profile__title {
		font-size: 64px
	}
}
@media(max-width:750px) {
	.student-profile__title {
		font-size: calc(32 / 375 * 100vw);
		margin-block-end: 26px
	}
}
.badge-list {
	display: flex;
	flex-wrap: wrap;
	gap: 24px 40px;
	margin: 0;
	padding: 0;
	list-style: none
}
@media screen and (min-width:751px)and (max-width:1189px) {
	.badge-list {
		display: grid;
		grid-template-columns: auto auto
	}
}
@media(max-width:750px) {
	.badge-list {
		flex-direction: column;
		align-items: center;
		gap: 0
	}
}
.badge {
	flex: 0 1 auto
}
.badge picture, .badge img {
	display: block
}
.badge img {
	width: 100%;
	height: auto
}
@media(max-width:750px) {
	.badge:nth-child(1) {
		width: calc(257 / 375 * 100vw);
		margin-left: calc(-50 / 375 * 100vw)
	}
	.badge:nth-child(2) {
		width: calc(257 / 375 * 100vw);
		margin-left: 16vw
	}
	.badge:nth-child(3) {
		width: 68.8vw;
		margin-left: calc(-50 / 375 * 100vw)
	}
	.badge:nth-child(4) {
		width: 68.8vw;
		margin-left: 8vw
	}
	.badge:nth-child(5) {
		width: calc(257 / 375 * 100vw);
		margin-left: calc(-40 / 375 * 100vw)
	}
}
@media screen and (min-width:751px)and (max-width:1189px) {
	.badge:nth-child(2n) {
		transform: translateY(50px)
	}
}
@media screen and (min-width:1190px) {
	.badge-image1 {
		max-width: 380px;
		transform: translateY(50px)
	}
	.badge-image2 {
		max-width: 380px;
		transform: translate(141px, -61px)
	}
	.badge-image3 {
		max-width: 390px;
		transform: translate(36px, 58px)
	}
	.badge-image4 {
		max-width: 390px;
		transform: translate(80px, -60px)
	}
	.badge-image5 {
		max-width: 380px;
		transform: translate(584px, -50px)
	}
}
.career {
	background-color: #fff;
	color: #000;
	transition: background-color .8s ease, color .8s ease
}
.career.is-bg {
	background-color: #ec2088;
	color: #fff
}
@media(prefers-reduced-motion:reduce) {
	.career {
		transition: none
	}
}
.career__title {
	margin-block: 42px 30px;
	font-weight: 700;
	line-height: 1.75
}
@media(min-width:751px) {
	.career__title {
		font-size: 64px
	}
}
@media(max-width:750px) {
	.career__title {
		font-size: calc(32 / 375 * 100vw);
		margin-block-end: 26px
	}
}
.career__lead {
	margin: 48px 0 0;
	font-weight: 700;
	line-height: 1.4
}
@media(min-width:751px) {
	.career__lead {
		font-size: 30px
	}
}
@media(max-width:750px) {
	.career__lead {
		font-size: calc(20 / 375 * 100vw)
	}
}
.career__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 500px));
	gap: 40px 70px;
	margin-block-end: 100px;
	padding: 0;
	list-style: none
}
@media(max-width:750px) {
	.career__list {
		grid-template-columns: 1fr;
		gap: calc(14 / 375 * 100vw);
		margin-block: 8vw calc(62 / 375 * 100vw)
	}
}
.career__item {
	border-radius: 10px;
	border: 1px solid #000000;
	padding: 12px 24px;
	background-color: #fff;
	color: #000;
	font-size: 20px;
	font-weight: 700;
	text-align: center
}
@media(max-width:750px) {
	.career__item {
		max-width: calc(280 / 375 * 100vw);
		font-size: calc(16 / 375 * 100vw)
	}
}
.why-kuis {
	background-color: #fff
}
.why-kuis__title {
	margin-block: 42px 30px;
	font-weight: 700;
	line-height: 1.75
}
@media(min-width:751px) {
	.why-kuis__title {
		font-size: 64px
	}
}
@media(max-width:750px) {
	.why-kuis__title {
		font-size: calc(32 / 375 * 100vw);
		margin-block-end: 26px
	}
}
.why-kuis__intro {
	margin: 0;
	line-height: 1.75;
	font-size: 16px;
	font-weight: 400;
	line-height: 2
}
@media(max-width:750px) {
	.why-kuis__intro {
		font-size: calc(14 / 375 * 100vw)
	}
}
.why-kuis__note {
	margin: 24px 0 0;
	line-height: 1.75;
	font-size: 16px;
	font-weight: 400;
	line-height: 2
}
@media(max-width:750px) {
	.why-kuis__note {
		font-size: calc(14 / 375 * 100vw)
	}
}
.why-kuis__lead {
	margin: 48px 0 0;
	font-weight: 700;
	line-height: 1.4
}
@media(min-width:751px) {
	.why-kuis__lead {
		font-size: 30px
	}
}
@media(max-width:750px) {
	.why-kuis__lead {
		font-size: calc(20 / 375 * 100vw)
	}
}
.why-kuis__lead {
	margin-top: 24px
}
.why-kuis-lead {
	margin-block-start: 36px
}
@media(max-width:750px) {
	.why-kuis-lead {
		margin-block-start: 4.8vw
	}
}
.ranking {
	position: relative;
	margin: 66px 0 32px;
	padding: 16px 0 52px;
	border-top: 1px solid #FF0200;
	border-bottom: 1px solid #FF0200
}
@media(max-width:750px) {
	.ranking {
		max-width: calc(260 / 375 * 100vw);
		margin-inline: auto;
		margin-block: calc(42 / 375 * 100vw) calc(50 / 375 * 100vw);
		padding-block: calc(8 / 375 * 100vw) calc(22 / 375 * 100vw)
	}
}
.ranking__caption {
	position: absolute;
	top: -28px;
	left: 50%;
	transform: translate(-50%);
	color: #ff0200;
	font-weight: 700;
	font-size: 34px;
	background-color: #fff;
	display: inline-block;
	padding-inline: 50px
}
@media(max-width:750px) {
	.ranking__caption {
		top: calc(-20 / 375 * 100vw);
		font-size: 6.4vw;
		padding-inline: 3.2vw
	}
}
.ranking__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 4.8958333333%;
	margin: 0;
	padding: 0;
	list-style: none
}
@media(max-width:750px) {
	.ranking__list {
		flex-direction: column;
		align-items: center;
		gap: calc(16 / 375 * 100vw)
	}
}
.ranking__item {
	display: flex;
	align-items: flex-end;
	gap: 6px;
	color: #ff0200
}
@media(max-width:750px) {
	.ranking__item {
		gap: calc(4 / 375 * 100vw);
		width: 100%
	}
}
.ranking__label {
	color: #ff0200;
	font-size: 34px;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap
}
@media(max-width:750px) {
	.ranking__label {
		font-size: 6.4vw;
		flex-basis: 36vw
	}
}
.ranking__num {
	font-size: 198px;
	font-weight: 900;
	line-height: 1;
	transform: translateY(42px)
}
@media(max-width:750px) {
	.ranking__num {
		width: .6em;
		font-size: 134px;
		transform: translateY(calc(28 / 375 * 100vw))
	}
}
.ranking__unit {
	font-family: Hiragino Mincho ProN, Hiragino Mincho Pro, Yu Mincho, YuMincho, MS PMincho, serif;
	font-size: 53px;
	font-weight: 700;
	line-height: 1
}
@media(max-width:750px) {
	.ranking__unit {
		font-size: 36px
	}
}
.closing {
	background-color: #fff;
	color: #000;
	transition: background-color .8s ease, color .8s ease
}
.closing.is-bg {
	background-color: #181818;
	color: #fff
}
@media(prefers-reduced-motion:reduce) {
	.closing {
		transition: none
	}
}
.closing__body p {
	margin-block-end: .4em;
	font-size: 30px;
	font-weight: 500;
	line-height: 2
}
@media(max-width:750px) {
	.closing__body p {
		font-size: calc(16 / 375 * 100vw);
		line-height: 2.1
	}
}
.closing__lead {
	margin: 48px 0 0;
	font-weight: 700;
	line-height: 1.4
}
@media(min-width:751px) {
	.closing__lead {
		font-size: 30px
	}
}
@media(max-width:750px) {
	.closing__lead {
		font-size: calc(20 / 375 * 100vw)
	}
}
.closing-lead {
	margin-block-start: 100px;
	font-size: 56px;
	font-weight: 500;
	line-height: 1.75
}
@media(max-width:750px) {
	.closing-lead {
		margin-block-start: 9.6vw;
		font-size: calc(23 / 375 * 100vw)
	}
}
@keyframes splide-loading {
	0% {
		transform: rotate(0)
	}
	to {
		transform: rotate(1turn)
	}
}
.splide__track--draggable {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none
}
.splide__track--fade>.splide__list>.splide__slide {
	margin: 0!important;
	opacity: 0;
	z-index: 0
}
.splide__track--fade>.splide__list>.splide__slide.is-active {
	opacity: 1;
	z-index: 1
}
.splide--rtl {
	direction: rtl
}
.splide__track--ttb>.splide__list {
	display: block
}
.splide__container {
	box-sizing: border-box;
	position: relative
}
.splide__list {
	backface-visibility: hidden;
	display: -ms-flexbox;
	display: flex;
	height: 100%;
	margin: 0!important;
	padding: 0!important
}
.splide.is-initialized:not(.is-active) .splide__list {
	display: block
}
.splide__pagination {
	-ms-flex-align: center;
	align-items: center;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 0;
	pointer-events: none
}
.splide__pagination li {
	display: inline-block;
	line-height: 1;
	list-style-type: none;
	margin: 0;
	pointer-events: auto
}
.splide:not(.is-overflow) .splide__pagination {
	display: none
}
.splide__progress__bar {
	width: 0
}
.splide {
	position: relative;
	visibility: hidden
}
.splide.is-initialized, .splide.is-rendered {
	visibility: visible
}
.splide__slide {
	backface-visibility: hidden;
	box-sizing: border-box;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	list-style-type: none!important;
	margin: 0;
	position: relative
}
.splide__slide img {
	vertical-align: bottom
}
.splide__spinner {
	animation: splide-loading 1s linear infinite;
	border: 2px solid #999;
	border-left-color: transparent;
	border-radius: 50%;
	bottom: 0;
	contain: strict;
	display: inline-block;
	height: 20px;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	top: 0;
	width: 20px
}
.splide__sr {
	clip: rect(0 0 0 0);
	border: 0;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px
}
.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
	display: none
}
.splide__toggle.is-active .splide__toggle__pause {
	display: inline
}
.splide__track {
	overflow: hidden;
	position: relative;
	z-index: 0
}