@charset "UTF-8";
@-webkit-keyframes menu-bar01 {
	0% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(45deg);
		transform: translateY(calc(1rem - 1px)) rotate(45deg);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(0);
		transform: translateY(calc(1rem - 1px)) rotate(0);
	}
	100% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
}
@keyframes menu-bar01 {
	0% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(45deg);
		transform: translateY(calc(1rem - 1px)) rotate(45deg);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(0);
		transform: translateY(calc(1rem - 1px)) rotate(0);
	}
	100% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
}
@-webkit-keyframes menu-bar02 {
	0% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(-45deg);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(-45deg);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(0);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(0);
	}
	100% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
}
@keyframes menu-bar02 {
	0% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(-45deg);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(-45deg);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(0);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(0);
	}
	100% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
}
@-webkit-keyframes active-menu-bar01 {
	0% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(0);
		transform: translateY(calc(1rem - 1px)) rotate(0);
	}
	100% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(45deg);
		transform: translateY(calc(1rem - 1px)) rotate(45deg);
	}
}
@keyframes active-menu-bar01 {
	0% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(0);
		transform: translateY(calc(1rem - 1px)) rotate(0);
	}
	100% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(45deg);
		transform: translateY(calc(1rem - 1px)) rotate(45deg);
	}
}
@-webkit-keyframes active-menu-bar03 {
	0% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(0);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(0);
	}
	100% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(-45deg);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(-45deg);
	}
}
@keyframes active-menu-bar03 {
	0% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(0);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(0);
	}
	100% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(-45deg);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(-45deg);
	}
}
/*-----------------------------------------------------------
		font
-----------------------------------------------------------*/
@font-face {
	font-family: 'Satoshi-Light';
	src: url("../fonts/Satoshi-Light.woff2") format("woff2"), url("../fonts/Satoshi-Light.woff") format("woff"), url("../fonts/Satoshi-Light.ttf") format("truetype");
	font-weight: 300;
	font-display: swap;
	font-style: normal;
}
@font-face {
	font-family: 'Satoshi-Regular';
	src: url("../fonts/Satoshi-Regular.woff2") format("woff2"), url("../fonts/Satoshi-Regular.woff") format("woff"), url("../fonts/Satoshi-Regular.ttf") format("truetype");
	font-weight: 400;
	font-display: swap;
	font-style: normal;
}
@font-face {
	font-family: 'Satoshi-Medium';
	src: url("../fonts/Satoshi-Medium.woff2") format("woff2"), url("../fonts/Satoshi-Medium.woff") format("woff"), url("../fonts/Satoshi-Medium.ttf") format("truetype");
	font-weight: 500;
	font-display: swap;
	font-style: normal;
}
@font-face {
	font-family: 'Satoshi-Bold';
	src: url("../fonts/Satoshi-Bold.woff2") format("woff2"), url("../fonts/Satoshi-Bold.woff") format("woff"), url("../fonts/Satoshi-Bold.ttf") format("truetype");
	font-weight: 700;
	font-display: swap;
	font-style: normal;
}
@font-face {
	font-family: 'Satoshi-Black';
	src: url("../fonts/Satoshi-Black.woff2") format("woff2"), url("../fonts/Satoshi-Black.woff") format("woff"), url("../fonts/Satoshi-Black.ttf") format("truetype");
	font-weight: 900;
	font-display: swap;
	font-style: normal;
}
/*-----------------------------------------------------------
		リセット
-----------------------------------------------------------*/
html {
	overflow-y: scroll;
}

fieldset, img {
	border: none;
	vertical-align: top;
}

ul, ol {
	list-style-type: none;
}

address, caption, cite, code, dfn, em, var {
	font-style: normal;
}

caption, th {
	text-align: left;
}

a {
	outline: none;
}

h1, h2, h3, h4, h5, h6,
html, body, div,
p, ul, ol, li, dl, dt, dd,
pre, blockquote,
form, fieldset, input, textarea,
table, th, td, figure {
	margin: 0;
	padding: 0;
}

/*-----------------------------------------------------------
		初期設定
-----------------------------------------------------------*/
:root {
	font-size: 0.52vw;
}
@media (max-width: 995px) {
	:root {
		-webkit-text-size-adjust: 100%;
		-moz-text-size-adjust: 100%;
		-ms-text-size-adjust: 100%;
		text-size-adjust: 100%;
		font-size: 0.7vw;
	}
}
@media (max-width: 767px) {
	:root {
		font-size: 1vw;
	}
}

body {
	color: #231815;
	line-height: 2;
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	font-size: 2rem;
	word-wrap: break-word;
	overflow-wrap: anywhere;
	font-weight: 400;
}
@media (max-width: 995px) {
	body {
		-webkit-text-size-adjust: 100%;
		-moz-text-size-adjust: 100%;
		-ms-text-size-adjust: 100%;
		text-size-adjust: 100%;
	}
}
@media (max-width: 767px) {
	body {
		font-size: 3.5vw;
	}
}

h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
}

img {
	max-width: 100%;
}

button, fieldset, form, input, label, legend, select, textarea {
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
}

a {
	text-decoration: none;
	color: #231815;
}
@media (min-width: 996px) {
	a:hover {
		color: #231815;
		text-decoration: underline;
	}
	a:visited {
		color: #231815;
	}
	a:active {
		text-decoration: none;
	}
}

q:before, q:after {
	content: '';
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/*-----------------------------------------------------------
		フォームタグ設定
-----------------------------------------------------------*/
[type=text], [type=email], [type=tel], [type=password], [type=number], [type=search], [type=date], textarea, select {
	padding: 0.75em 1em;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border: 1px solid #e5e5e5;
	border-radius: 1rem;
}

select {
	max-width: 100%;
	padding: 0.75em 3em 0.75em 1em;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #e5e5e5;
	border-radius: 1rem;
	background: transparent url("../img/common/arrow.svg") right center/auto 100% no-repeat;
}

select::-ms-expand {
	display: none;
}

[type=text], [type=email], [type=tel], [type=password], [type=submit], [type=number], [type=search], [type=date], textarea, button {
	background: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

[type=text]:focus, [type=email]:focus, [type=password]:focus, [type=number]:focus, [type=search]:focus, [type=date]:focus, textarea:focus {
	background: none;
	border: 1px solid #fff;
}

button {
	cursor: pointer;
}

input[type=checkbox],
input[type=radio] {
	display: none;
}

input[type=checkbox] + label,
input[type=radio] + label,
[type=radio] + .mwform-radio-field-text,
[type=checkbox] + .mwform-checkbox-field-text {
	display: inline-block;
	position: relative;
	padding-left: 2em;
}
input[type=checkbox] + label:before, input[type=checkbox] + label:after,
input[type=radio] + label:before,
input[type=radio] + label:after,
[type=radio] + .mwform-radio-field-text:before,
[type=radio] + .mwform-radio-field-text:after,
[type=checkbox] + .mwform-checkbox-field-text:before,
[type=checkbox] + .mwform-checkbox-field-text:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 0.5rem;
}
input[type=checkbox] + label:before,
input[type=radio] + label:before,
[type=radio] + .mwform-radio-field-text:before,
[type=checkbox] + .mwform-checkbox-field-text:before {
	left: 0px;
	width: 1.25em;
	height: 1.25em;
	border: 1px solid #e5e5e5;
	background-color: #fff;
}
input[type=checkbox] + label.single,
input[type=radio] + label.single,
[type=radio] + .mwform-radio-field-text.single,
[type=checkbox] + .mwform-checkbox-field-text.single {
	height: 1.25em;
	padding-left: 1.25em;
}

input[type=radio] + label:before, input[type=radio] + label:after,
[type=radio] + .mwform-radio-field-text:before,
[type=radio] + .mwform-radio-field-text:after {
	border-radius: 50%;
}

input[type=checkbox]:checked + label:after,
[type=checkbox]:checked + .mwform-checkbox-field-text:after {
	border-radius: 0.4rem;
}

input[type=checkbox]:checked + label:after,
input[type=radio]:checked + label:after,
[type=checkbox]:checked + .mwform-checkbox-field-text:after,
[type=radio]:checked + .mwform-radio-field-text:after {
	left: 3px;
	width: -webkit-calc(1.25em - 6px);
	width: calc(1.25em - 6px);
	height: -webkit-calc(1.25em - 6px);
	height: calc(1.25em - 6px);
	background-color: #fff47e;
}

/*-----------------------------------------------------------
		スクロールバー設定
-----------------------------------------------------------*/
:placeholder-shown {
	color: #BABABA;
}

/* Google Chrome, Safari, Opera 15+, Android, iOS */
::-webkit-input-placeholder {
	color: #BABABA;
}

/* Firefox 18- */
:-moz-placeholder {
	color: #BABABA;
	opacity: 1;
}

/* Firefox 19+ */
::-moz-placeholder {
	color: #BABABA;
	opacity: 1;
}

/* IE 10+ */
:-ms-input-placeholder {
	color: #BABABA;
}

@keyframes menu-bar01 {
	0% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(45deg);
		transform: translateY(calc(1rem - 1px)) rotate(45deg);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(0);
		transform: translateY(calc(1rem - 1px)) rotate(0);
	}
	100% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
}
@keyframes menu-bar02 {
	0% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(-45deg);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(-45deg);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(0);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(0);
	}
	100% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
}
@keyframes active-menu-bar01 {
	0% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(0);
		transform: translateY(calc(1rem - 1px)) rotate(0);
	}
	100% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(45deg);
		transform: translateY(calc(1rem - 1px)) rotate(45deg);
	}
}
@keyframes active-menu-bar03 {
	0% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(0);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(0);
	}
	100% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(-45deg);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(-45deg);
	}
}
/*-----------------------------------------------------------
		基本レイアウト
-----------------------------------------------------------*/
.wrap {
	position: relative;
	margin: 0px 8vw;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
@media (max-width: 1219px) {
	.wrap {
		margin: 0px 5vw;
	}
}

.linkbox {
	cursor: pointer;
}

.sp {
	display: none;
}
@media (max-width: 767px) {
	.sp {
		display: inherit;
	}
}

@media (max-width: 767px) {
	.spnone {
		display: none !important;
	}
}

.tb {
	display: none;
}
@media (max-width: 995px) {
	.tb {
		display: inherit;
	}
}

@media (max-width: 995px) {
	.tbnone {
		display: none !important;
	}
}

@media (max-width: 995px) {
	.pc {
		display: none !important;
	}
}

/*----------------------- header --------------------------*/
header {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	z-index: 3000;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	will-change: transform;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
header .simple {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	position: absolute;
	left: 0;
	top: 6.5rem;
	width: 100%;
	padding: 0 8rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
}
@media (max-width: 767px) {
	header .simple {
		top: 0;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-webkit-flex-direction: row-reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
		-webkit-box-pack: end;
		-webkit-justify-content: flex-end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		padding: 2.5vw 5vw;
	}
}
header .simple .name {
	width: 30rem;
	color: #fff;
	font-weight: 400;
	line-height: 1;
}
@media (max-width: 767px) {
	header .simple .name {
		width: 48vw;
	}
}
header .simple .name span {
	font-family: "Satoshi-Bold", sans-serif;
}
@media (max-width: 767px) {
	header .simple .name span {
		font-size: 3.25vw;
	}
}
header .simple .logo {
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 8.6rem;
}
@media (max-width: 767px) {
	header .simple .logo {
		position: static;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
		width: 12vw;
		margin-right: 2rem;
	}
}
header .headbox {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
	padding: 3rem 8rem 3rem 4rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transform: translateY(-30rem) translateZ(0);
	transform: translateY(-30rem) translateZ(0);
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
	will-change: transform;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
@media (max-width: 767px) {
	header .headbox {
		-webkit-transform: translateY(-40vw) translateZ(0);
		transform: translateY(-40vw) translateZ(0);
		padding: 2.5vw 5vw;
	}
}
@media (max-width: 767px) {
	header .headbox .logo {
		position: relative;
		z-index: 2010;
	}
}
header .headbox .logo a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	color: #fff;
	text-decoration: none;
}
header .headbox .logo a .img {
	width: 8.6rem;
	margin-right: 2rem;
}
@media (max-width: 767px) {
	header .headbox .logo a .img {
		width: 12vw;
	}
}
header .headbox .logo a .sitenema {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 1.5em;
	font-size: 1.8rem;
	font-family: "Satoshi-Bold", sans-serif;
}
@media (max-width: 767px) {
	header .headbox .logo a .sitenema {
		display: block;
		line-height: 1.2;
	}
}
header .headbox .logo a .sitenema img {
	width: 30rem;
}
@media (max-width: 767px) {
	header .headbox .logo a .sitenema img {
		width: 48vw;
	}
}
header .headbox .logo a .sitenema span {
	display: block;
	padding-top: 0.25em;
}
@media (max-width: 995px) {
	header .headbox .logo a .sitenema span {
		font-size: 2.4rem;
	}
}
@media (max-width: 767px) {
	header .headbox .logo a .sitenema span {
		font-size: 3.25vw;
	}
}
header .headbox .gnav {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
@media (max-width: 767px) {
	header .headbox .gnav {
		display: block;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
		position: fixed;
		right: -100vw;
		top: 0;
		width: 100vw;
		height: 100svh;
		padding-top: 30vw;
		-webkit-transition: 0.75s;
		-o-transition: 0.75s;
		transition: 0.75s;
		background-color: #519fd8;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
}
header .headbox .gnav.is-open {
	right: 0;
}
header .headbox .gnav ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 2em;
	font-size: 1.6rem;
}
@media (max-width: 995px) {
	header .headbox .gnav ul {
		gap: 1em;
		font-size: 2rem;
	}
}
@media (max-width: 767px) {
	header .headbox .gnav ul {
		display: block;
		width: 100%;
		margin: 0;
		font-size: 4vw;
	}
}
header .headbox .gnav ul li {
	position: relative;
}
header .headbox .gnav ul li + li {
	margin-left: 1em;
}
@media (max-width: 767px) {
	header .headbox .gnav ul li + li {
		position: relative;
		border-top: 1px solid rgba(255, 255, 255, 0.5);
		margin: 0;
	}
}
header .headbox .gnav ul li a {
	display: block;
	padding: 1em 0px;
	color: #fff;
	text-decoration: none;
}
@media (max-width: 767px) {
	header .headbox .gnav ul li a {
		display: block;
		padding: 0.75em 1.75em;
	}
}
header .headbox .gnav ul li .plus {
	display: block;
	position: absolute;
	right: -1.25em;
	top: 1.6em;
	width: 0.5em;
	height: 0.5em;
	border-bottom: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	header .headbox .gnav ul li .plus {
		right: 1.75em;
		top: 1.1em;
		width: 1.25em;
		height: 1.25em;
		border: none;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
	}
	header .headbox .gnav ul li .plus::before, header .headbox .gnav ul li .plus::after {
		content: "";
		display: block;
		position: absolute;
		left: 50%;
		top: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		background-color: #fff;
	}
	header .headbox .gnav ul li .plus::before {
		width: 100%;
		height: 1px;
	}
	header .headbox .gnav ul li .plus::after {
		width: 1px;
		height: 100%;
	}
	header .headbox .gnav ul li .plus.is-open::after {
		display: none;
	}
}
header .headbox .gnav ul li ul {
	display: block;
	position: absolute;
	top: 100%;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	padding: 1.5em;
	background-color: #fff;
	border-radius: 2rem;
	white-space: nowrap;
	visibility: hidden;
	opacity: 0;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	header .headbox .gnav ul li ul {
		display: none;
		position: static;
		padding: 5vw 8vw;
		border-radius: 0;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
		font-size: 3.5vw;
		visibility: visible;
		opacity: 1;
	}
}
header .headbox .gnav ul li ul.is-open {
	display: block;
}
header .headbox .gnav ul li ul li {
	margin: 0;
	visibility: hidden;
	opacity: 0;
	-webkit-transform: translateX(-1em);
	-ms-transform: translateX(-1em);
	transform: translateX(-1em);
	-webkit-transition: 0.3s 0.2s;
	-o-transition: 0.3s 0.2s;
	transition: 0.3s 0.2s;
}
@media (max-width: 767px) {
	header .headbox .gnav ul li ul li {
		visibility: visible;
		opacity: 1;
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
}
header .headbox .gnav ul li ul li + li {
	margin-top: 0.5em;
}
@media (max-width: 767px) {
	header .headbox .gnav ul li ul li + li {
		border-top: none;
	}
}
header .headbox .gnav ul li ul li a {
	display: block;
	padding: 0px 0px 0px 1em;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%204.36%208.61%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23519fd8%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpolygon%20class%3D%22cls-1%22%20points%3D%22.05%200%200%20.05%200%201.36%202.94%204.3%200%207.25%200%208.56%20.05%208.61%204.36%204.3%20.05%200%22%2F%3E%3C%2Fsvg%3E") left center/auto 0.5em no-repeat;
	color: #519fd8;
	font-weight: 600;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
header .headbox .gnav ul li ul li a:hover {
	background-position: 0.25em;
	color: #999;
}
header .headbox .gnav ul li ul ul {
	position: static;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
	padding: 0.25em 0px 0px;
	opacity: 1;
	visibility: hidden;
	font-size: 0.95em;
}
@media (max-width: 767px) {
	header .headbox .gnav ul li ul ul {
		display: block;
	}
}
header .headbox .gnav ul li ul ul li + li {
	margin-top: 0em;
}
header .headbox .gnav ul li ul ul li a {
	background: none;
}
header .headbox .gnav ul li ul ul li a::before {
	content: "ー";
	display: inline-block;
	margin-right: 0.25em;
}
@media (min-width: 996px) {
	header .headbox .gnav ul li:hover .plus {
		top: 1.9em;
		-webkit-transform: rotate(-135deg);
		-ms-transform: rotate(-135deg);
		transform: rotate(-135deg);
	}
	header .headbox .gnav ul li:hover ul {
		visibility: visible;
		opacity: 1;
	}
	header .headbox .gnav ul li:hover ul li {
		visibility: visible;
		opacity: 1;
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
	header .headbox .gnav ul li:hover ul ul {
		visibility: visible;
	}
}
@media (max-width: 767px) {
	header .headbox .gnav .entryarea {
		color: #fff;
		text-align: center;
		width: 85vw;
		margin: 5vw auto 0;
	}
	header .headbox .gnav .entryarea .title {
		font-family: "Satoshi-Black", sans-serif;
		font-size: 10vw;
		line-height: 1.25;
	}
	header .headbox .gnav .entryarea .title span {
		display: block;
		font-family: "Satoshi-Regular", sans-serif;
		font-size: 0.35em;
	}
	header .headbox .gnav .entryarea ul {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		gap: 2.5rem 0;
		margin-top: 3rem;
	}
	header .headbox .gnav .entryarea ul li {
		width: 48.5%;
		border-top: none;
	}
	header .headbox .gnav .entryarea ul li.long {
		width: 100%;
	}
	header .headbox .gnav .entryarea ul li a {
		display: block;
		padding: 1.25em 0px;
		font-size: 2.5vw;
		font-weight: 600;
		border-radius: 3em;
		text-decoration: none;
		-webkit-transition: 0.3s;
		-o-transition: 0.3s;
		transition: 0.3s;
	}
	header .headbox .gnav .entryarea ul li a.color01, header .headbox .gnav .entryarea ul li a.color02 {
		padding: 0;
		border-radius: 0;
	}
	header .headbox .gnav .entryarea ul li a.color01 span, header .headbox .gnav .entryarea ul li a.color02 span {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
		margin-top: 0.5em;
		color: #fff;
		font-size: 2.5vw;
		font-weight: 500;
	}
	header .headbox .gnav .entryarea ul li a.color01 span::after, header .headbox .gnav .entryarea ul li a.color02 span::after {
		content: "";
		display: block;
		width: 0.35em;
		height: 0.35em;
		margin-left: 0.5em;
		border-right: 2px solid #fff;
		border-bottom: 2px solid #fff;
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	header .headbox .gnav .entryarea ul li a.color03 {
		border: 1px solid #fff;
		color: #fff;
		padding: 1em 0px;
		font-size: 3.5vw;
	}
}
header.is-active .simple {
	top: -20rem;
	-webkit-transform: translateY(-100%);
	-ms-transform: translateY(-100%);
	transform: translateY(-100%);
}
header.is-active .headbox {
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	transform: translateY(0);
}
header.is-black .headbox .logo a, header.is-scroll .headbox .logo a {
	color: #231815;
	background: url(../img/common/logo_b.svg) left center/8.6rem auto no-repeat;
}
@media (max-width: 767px) {
	header.is-black .headbox .logo a, header.is-scroll .headbox .logo a {
		background-size: 12vw auto;
	}
}
header.is-black .headbox .logo a .img, header.is-scroll .headbox .logo a .img {
	visibility: hidden;
}
header.is-black .headbox .logo a .sitenema, header.is-scroll .headbox .logo a .sitenema {
	background: url(../img/common/name_b.svg) left center/30rem auto no-repeat;
}
@media (max-width: 767px) {
	header.is-black .headbox .logo a .sitenema, header.is-scroll .headbox .logo a .sitenema {
		background-position: left top;
		background-size: 48vw auto;
	}
}
header.is-black .headbox .logo a .sitenema img, header.is-scroll .headbox .logo a .sitenema img {
	visibility: hidden;
}
header.is-black .headbox .gnav ul li .plus, header.is-scroll .headbox .gnav ul li .plus {
	border-bottom: 1px solid #231815;
	border-right: 1px solid #231815;
}
@media (max-width: 767px) {
	header.is-black .headbox .gnav ul li .plus, header.is-scroll .headbox .gnav ul li .plus {
		border: none;
	}
}
header.is-black .headbox .gnav ul li a, header.is-scroll .headbox .gnav ul li a {
	color: #231815;
}
@media (max-width: 767px) {
	header.is-black .headbox .gnav ul li a, header.is-scroll .headbox .gnav ul li a {
		color: #fff;
	}
}
header.is-black .headbox .gnav ul ul, header.is-scroll .headbox .gnav ul ul {
	border: 1px solid #e5e5e5;
}
header.is-black .headbox .gnav ul ul ul, header.is-scroll .headbox .gnav ul ul ul {
	border: none;
}
header.is-black .headbox .gnav ul ul a, header.is-scroll .headbox .gnav ul ul a {
	color: #519fd8;
}
header.is-open .headbox .logo a {
	color: #fff;
	background-image: url(../img/common/logo.svg);
	background-repeat: no-repeat;
}
header.is-open .headbox .logo a .img {
	visibility: hidden;
}
header.is-open .headbox .logo a .sitenema {
	background-image: url(../img/common/name_w.svg);
	background-repeat: no-repeat;
}
header.is-open .headbox .logo a .sitenema img {
	visibility: hidden;
}
header.is-scroll {
	background-color: #fff;
}
header.is-scroll .headbox {
	padding: 2rem 6rem 2rem 2rem;
}
@media (max-width: 767px) {
	header.is-scroll .headbox {
		padding: 2.5vw 5vw;
	}
}
header.is-scroll .headbox .logo a {
	background-size: 5.5rem auto;
}
@media (max-width: 767px) {
	header.is-scroll .headbox .logo a {
		background-size: 12vw auto;
	}
}
header.is-scroll .headbox .logo a .img {
	width: 5.5rem;
}
@media (max-width: 767px) {
	header.is-scroll .headbox .logo a .img {
		width: 12vw;
	}
}
header .menu {
	display: none;
	position: fixed;
	right: 5vw;
	top: 5vw;
	z-index: 2010;
	width: 10vw;
	height: 10vw;
	border-radius: 50%;
	background-color: #447aac;
}
@media (max-width: 767px) {
	header .menu {
		display: block;
	}
}
header .menu span {
	position: absolute;
	left: 50%;
	top: 50%;
	display: block;
	width: 5vw;
	height: 1px;
	background-color: #fff;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
header .menu span:first-child {
	margin-top: -1vw;
	-webkit-animation: menuNone01 .75s forwards;
	animation: menuNone01 .75s forwards;
}
header .menu span:last-child {
	margin-top: 1vw;
	-webkit-animation: menuNone02 .75s forwards;
	animation: menuNone02 .75s forwards;
}
header .menu.is-open span:first-child {
	-webkit-animation: menuActive01 .75s forwards;
	animation: menuActive01 .75s forwards;
}
header .menu.is-open span:last-child {
	-webkit-animation: menuActive02 .75s forwards;
	animation: menuActive02 .75s forwards;
}

@-webkit-keyframes menuNone01 {
	0% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(45deg);
		transform: translate(-50%, -50%) rotate(45deg);
	}
	50% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
	100% {
		margin-top: -1vw;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
}

@keyframes menuNone01 {
	0% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(45deg);
		transform: translate(-50%, -50%) rotate(45deg);
	}
	50% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
	100% {
		margin-top: -1vw;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
}
@-webkit-keyframes menuNone02 {
	0% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(-45deg);
		transform: translate(-50%, -50%) rotate(-45deg);
	}
	50% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
	100% {
		margin-top: 1vw;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
}
@keyframes menuNone02 {
	0% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(-45deg);
		transform: translate(-50%, -50%) rotate(-45deg);
	}
	50% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
	100% {
		margin-top: 1vw;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
}
@-webkit-keyframes menuActive01 {
	0% {
		margin-top: -1vw;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
	50% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
	100% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(45deg);
		transform: translate(-50%, -50%) rotate(45deg);
	}
}
@keyframes menuActive01 {
	0% {
		margin-top: -1vw;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
	50% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
	100% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(45deg);
		transform: translate(-50%, -50%) rotate(45deg);
	}
}
@-webkit-keyframes menuActive02 {
	0% {
		margin-top: 1vw;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
	50% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
	100% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(-45deg);
		transform: translate(-50%, -50%) rotate(-45deg);
	}
}
@keyframes menuActive02 {
	0% {
		margin-top: 1vw;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
	50% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(0);
		transform: translate(-50%, -50%) rotate(0);
	}
	100% {
		margin-top: 0;
		-webkit-transform: translate(-50%, -50%) rotate(-45deg);
		transform: translate(-50%, -50%) rotate(-45deg);
	}
}
/*----------------------- content --------------------------*/
article {
	background-color: #519fd8;
	color: #fff;
}

.noitem {
	padding: 150px 0px;
	font-size: 1.6rem;
	text-align: center;
}
@media (max-width: 767px) {
	.noitem {
		font-size: 4vw;
	}
}

.entry {
	position: fixed;
	right: 5rem;
	bottom: 2rem;
	z-index: 1800;
	opacity: 0;
	visibility: hidden;
	-webkit-transform-origin: center bottom;
	-ms-transform-origin: center bottom;
	transform-origin: center bottom;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
.entry a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	width: 11rem;
	height: 11rem;
	border-radius: 50%;
	background-color: #fff47e;
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 1.6rem;
	text-decoration: none;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 995px) {
	.entry a {
		font-size: 2rem;
	}
}
@media (max-width: 767px) {
	.entry a {
		font-size: 2.5vw;
		width: 15vw;
		height: 15vw;
	}
}
.entry.is-show {
	visibility: visible;
	opacity: 1;
}
.entry.is-scroll {
	visibility: visible;
	opacity: 1;
}

.entrybox {
	position: relative;
	padding-top: 13rem;
	margin-top: 20rem;
	padding-bottom: 19rem;
}
@media (max-width: 767px) {
	.entrybox {
		margin-top: 15vw;
		padding-top: 0;
		padding-bottom: 60vw;
	}
}
.entrybox .bg01 {
	position: absolute;
	top: 0;
	right: -webkit-calc(50% + 4rem);
	right: calc(50% + 4rem);
	width: 89rem;
}
@media (max-width: 767px) {
	.entrybox .bg01 {
		top: auto;
		bottom: -40vw;
		left: 50%;
		right: auto;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
		width: 66vw;
	}
}
.entrybox .inbox {
	max-width: 74rem;
	margin-left: -webkit-calc(50% - 4rem);
	margin-left: calc(50% - 4rem);
	text-align: center;
}
@media (max-width: 767px) {
	.entrybox .inbox {
		max-width: none;
		margin: 0;
	}
}
.entrybox .inbox .title {
	font-family: "Satoshi-Black", sans-serif;
	font-size: 10rem;
	line-height: 1.25;
}
@media (max-width: 767px) {
	.entrybox .inbox .title {
		font-size: 10vw;
	}
}
.entrybox .inbox .title span {
	display: block;
	font-family: "Satoshi-Regular", sans-serif;
	font-size: 0.35em;
}
.entrybox .inbox .text {
	margin-top: 1em;
	font-size: 3rem;
	font-weight: 600;
	line-height: 1.8;
}
@media (max-width: 767px) {
	.entrybox .inbox .text {
		font-size: 3.5vw;
	}
}
.entrybox .inbox ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	gap: 2.5rem 0;
	margin: 10rem auto 0;
	max-width: 80%;
}
@media (max-width: 767px) {
	.entrybox .inbox ul {
		max-width: none;
	}
}
.entrybox .inbox ul li {
	width: 48.5%;
}
.entrybox .inbox ul li.long {
	width: 100%;
}
.entrybox .inbox ul li a {
	display: block;
	padding: 1.25em 0px;
	font-size: 1.8rem;
	font-weight: 600;
	border-radius: 3em;
	text-decoration: none;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	.entrybox .inbox ul li a {
		font-size: 2.75vw;
	}
}
.entrybox .inbox ul li a.color01, .entrybox .inbox ul li a.color02 {
	padding: 0;
	border-radius: 0;
}
.entrybox .inbox ul li a.color01 span, .entrybox .inbox ul li a.color02 span {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 0.5em;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 500;
}
@media (max-width: 767px) {
	.entrybox .inbox ul li a.color01 span, .entrybox .inbox ul li a.color02 span {
		font-size: 2.5vw;
	}
}
.entrybox .inbox ul li a.color01 span::after, .entrybox .inbox ul li a.color02 span::after {
	content: "";
	display: block;
	width: 0.35em;
	height: 0.35em;
	margin-left: 0.5em;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
@media (min-width: 996px) {
	.entrybox .inbox ul li a.color01:hover, .entrybox .inbox ul li a.color02:hover {
		opacity: 0.5;
	}
}
.entrybox .inbox ul li a.color03 {
	border: 1px solid #fff;
	color: #fff;
	padding: 0.75em 0px;
	font-size: 1.4em;
}
@media (max-width: 767px) {
	.entrybox .inbox ul li a.color03 {
		font-size: 1.2em;
	}
}
.entrybox .inbox ul li a.color03:hover {
	background-color: #fff;
	color: #447aac;
}

/*----------------------- footer --------------------------*/
footer {
	position: relative;
	z-index: 10;
	padding: 9rem 0px 2em;
	background-color: #fff;
}
footer .wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
@media (max-width: 995px) {
	footer .wrap {
		display: block;
	}
}
footer .wrap .logo {
	width: 53rem;
}
@media (max-width: 995px) {
	footer .wrap .logo {
		margin: 2rem auto 0;
	}
}
@media (max-width: 767px) {
	footer .wrap .logo {
		width: 68vw;
		margin-top: 5vw;
	}
}
footer .wrap .fnav {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: -webkit-calc(100% - 59rem);
	width: calc(100% - 59rem);
	font-size: 1.7rem;
	line-height: 1.5;
}
@media (max-width: 995px) {
	footer .wrap .fnav {
		width: auto;
	}
}
@media (max-width: 767px) {
	footer .wrap .fnav {
		display: block;
		font-size: 3.5vw;
	}
}
footer .wrap .fnav ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: -webkit-calc(100% - ((100% - 4em) / 5 + 1em));
	width: calc(100% - ((100% - 4em) / 5 + 1em));
}
@media (max-width: 767px) {
	footer .wrap .fnav ul {
		display: block;
		width: auto;
	}
}
footer .wrap .fnav ul + ul {
	display: block;
	width: -webkit-calc((100% - 4em) / 5);
	width: calc((100% - 4em) / 5);
}
@media (max-width: 767px) {
	footer .wrap .fnav ul + ul {
		width: auto;
		border-top: 1px solid #447aac;
	}
}
footer .wrap .fnav ul + ul li {
	width: auto;
}
footer .wrap .fnav ul + ul li + li {
	border-top: 1px solid #447aac;
}
footer .wrap .fnav ul ul {
	display: block;
	width: auto;
	padding-top: 0.5em;
	border-top: 1px solid #447aac;
	font-size: 0.85em;
}
@media (max-width: 767px) {
	footer .wrap .fnav ul ul {
		display: none;
		border-top: none;
		padding: 0px 0px 0.5em;
	}
}
footer .wrap .fnav ul ul.is-open {
	display: block;
}
footer .wrap .fnav ul ul li {
	width: auto;
}
@media (max-width: 767px) {
	footer .wrap .fnav ul ul li {
		border-top: none;
	}
}
@media (max-width: 767px) {
	footer .wrap .fnav ul ul li + li {
		border-top: none;
	}
}
footer .wrap .fnav ul ul li a {
	font-weight: 500;
}
footer .wrap .fnav ul ul ul {
	border-top: none;
	padding-left: 1em;
	padding-top: 0;
	font-size: 0.9em;
}
@media (max-width: 767px) {
	footer .wrap .fnav ul ul ul {
		display: block;
	}
}
footer .wrap .fnav ul li {
	width: -webkit-calc((100% - 1em * 3) / 4);
	width: calc((100% - 1em * 3) / 4);
}
@media (max-width: 767px) {
	footer .wrap .fnav ul li {
		position: relative;
		width: auto;
	}
	footer .wrap .fnav ul li .plus {
		display: block;
		position: absolute;
		right: 0.5em;
		top: 0.9em;
		width: 1.25em;
		height: 1.25em;
	}
	footer .wrap .fnav ul li .plus::before, footer .wrap .fnav ul li .plus::after {
		content: "";
		display: block;
		position: absolute;
		left: 50%;
		top: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		background-color: #447aac;
	}
	footer .wrap .fnav ul li .plus::before {
		width: 100%;
		height: 1px;
	}
	footer .wrap .fnav ul li .plus::after {
		width: 1px;
		height: 100%;
	}
	footer .wrap .fnav ul li .plus.is-open::after {
		display: none;
	}
}
@media (max-width: 767px) {
	footer .wrap .fnav ul li + li {
		border-top: 1px solid #447aac;
	}
}
footer .wrap .fnav ul li a {
	display: block;
	padding: 0.5em 0px;
	font-weight: 600;
}
@media (max-width: 767px) {
	footer .wrap .fnav ul li a {
		padding: 0.75em 1em;
	}
}
footer .wrap .copy {
	width: 100%;
	font-size: 1.7rem;
}
@media (max-width: 995px) {
	footer .wrap .copy {
		margin-top: 2em;
		text-align: center;
	}
}
@media (max-width: 767px) {
	footer .wrap .copy {
		font-size: 2.5vw;
	}
}

@keyframes menu-bar01 {
	0% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(45deg);
		transform: translateY(calc(1rem - 1px)) rotate(45deg);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(0);
		transform: translateY(calc(1rem - 1px)) rotate(0);
	}
	100% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
}
@keyframes menu-bar02 {
	0% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(-45deg);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(-45deg);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(0);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(0);
	}
	100% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
}
@keyframes active-menu-bar01 {
	0% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(0);
		transform: translateY(calc(1rem - 1px)) rotate(0);
	}
	100% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(45deg);
		transform: translateY(calc(1rem - 1px)) rotate(45deg);
	}
}
@keyframes active-menu-bar03 {
	0% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(0);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(0);
	}
	100% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(-45deg);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(-45deg);
	}
}
/*-----------------------------------------------------------
	index
-----------------------------------------------------------*/
@-webkit-keyframes fadeIn {
	from {
		opacity: 0;
		-webkit-transform: scale(1.2);
		transform: scale(1.2);
	}
	to {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@keyframes fadeIn {
	from {
		opacity: 0;
		-webkit-transform: scale(1.2);
		transform: scale(1.2);
	}
	to {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@-webkit-keyframes loading {
	0% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
	50% {
		-webkit-transform: scale(0, 1);
		transform: scale(0, 1);
	}
	100% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@keyframes loading {
	0% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
	50% {
		-webkit-transform: scale(0, 1);
		transform: scale(0, 1);
	}
	100% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@-webkit-keyframes dotsAnimation {
	0% {
		content: "";
	}
	33% {
		content: ".";
	}
	66% {
		content: "..";
	}
	100% {
		content: "...";
	}
}
@keyframes dotsAnimation {
	0% {
		content: "";
	}
	33% {
		content: ".";
	}
	66% {
		content: "..";
	}
	100% {
		content: "...";
	}
}
@keyframes loading {
	0% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
	50% {
		-webkit-transform: scale(0, 1);
		transform: scale(0, 1);
	}
	100% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@-webkit-keyframes openLeft {
	0% {
		opacity: 1;
		-webkit-transform: skew(0deg, 0deg) translateX(0);
		transform: skew(0deg, 0deg) translateX(0);
	}
	90% {
		opacity: 1;
		-webkit-transform: skew(0deg, -50deg) translateX(-30vw);
		transform: skew(0deg, -50deg) translateX(-30vw);
	}
	100% {
		opacity: 0;
		-webkit-transform: skew(0deg, -50deg) translateX(-30vw);
		transform: skew(0deg, -50deg) translateX(-30vw);
	}
}
@keyframes openLeft {
	0% {
		opacity: 1;
		-webkit-transform: skew(0deg, 0deg) translateX(0);
		transform: skew(0deg, 0deg) translateX(0);
	}
	90% {
		opacity: 1;
		-webkit-transform: skew(0deg, -50deg) translateX(-30vw);
		transform: skew(0deg, -50deg) translateX(-30vw);
	}
	100% {
		opacity: 0;
		-webkit-transform: skew(0deg, -50deg) translateX(-30vw);
		transform: skew(0deg, -50deg) translateX(-30vw);
	}
}
@-webkit-keyframes openRight {
	0% {
		opacity: 1;
		-webkit-transform: skew(0deg, 0deg) translateX(0);
		transform: skew(0deg, 0deg) translateX(0);
	}
	90% {
		opacity: 1;
		-webkit-transform: skew(0deg, 50deg) translateX(30vw);
		transform: skew(0deg, 50deg) translateX(30vw);
	}
	100% {
		opacity: 0;
		-webkit-transform: skew(0deg, 50deg) translateX(30vw);
		transform: skew(0deg, 50deg) translateX(30vw);
	}
}
@keyframes openRight {
	0% {
		opacity: 1;
		-webkit-transform: skew(0deg, 0deg) translateX(0);
		transform: skew(0deg, 0deg) translateX(0);
	}
	90% {
		opacity: 1;
		-webkit-transform: skew(0deg, 50deg) translateX(30vw);
		transform: skew(0deg, 50deg) translateX(30vw);
	}
	100% {
		opacity: 0;
		-webkit-transform: skew(0deg, 50deg) translateX(30vw);
		transform: skew(0deg, 50deg) translateX(30vw);
	}
}
@-webkit-keyframes openLeft-sp {
	0% {
		opacity: 1;
		-webkit-transform: rotateY(0deg);
		transform: rotateY(0deg);
	}
	90% {
		opacity: 1;
		-webkit-transform: rotateY(90deg);
		transform: rotateY(90deg);
	}
	100% {
		opacity: 0;
		-webkit-transform: rotateY(90deg);
		transform: rotateY(90deg);
	}
}
@keyframes openLeft-sp {
	0% {
		opacity: 1;
		-webkit-transform: rotateY(0deg);
		transform: rotateY(0deg);
	}
	90% {
		opacity: 1;
		-webkit-transform: rotateY(90deg);
		transform: rotateY(90deg);
	}
	100% {
		opacity: 0;
		-webkit-transform: rotateY(90deg);
		transform: rotateY(90deg);
	}
}
@-webkit-keyframes openRight-sp {
	0% {
		opacity: 1;
		-webkit-transform: rotateY(0deg);
		transform: rotateY(0deg);
	}
	90% {
		opacity: 1;
		-webkit-transform: rotateY(-90deg);
		transform: rotateY(-90deg);
	}
	100% {
		opacity: 0;
		-webkit-transform: rotateY(-90deg);
		transform: rotateY(-90deg);
	}
}
@keyframes openRight-sp {
	0% {
		opacity: 1;
		-webkit-transform: rotateY(0deg);
		transform: rotateY(0deg);
	}
	90% {
		opacity: 1;
		-webkit-transform: rotateY(-90deg);
		transform: rotateY(-90deg);
	}
	100% {
		opacity: 0;
		-webkit-transform: rotateY(-90deg);
		transform: rotateY(-90deg);
	}
}
@-webkit-keyframes bounce {
	0% {
		-webkit-transform: translateY(50%) scale(1, 1);
		transform: translateY(50%) scale(1, 1);
		opacity: 0;
	}
	20% {
		-webkit-transform: translateY(-8rem) scale(1, 1.1);
		transform: translateY(-8rem) scale(1, 1.1);
		opacity: 1;
	}
	40% {
		-webkit-transform: translateY(0) scale(1, 0.9);
		transform: translateY(0) scale(1, 0.9);
		opacity: 1;
	}
	55% {
		-webkit-transform: translateY(-5rem) scale(1, 1.07);
		transform: translateY(-5rem) scale(1, 1.07);
		opacity: 1;
	}
	70% {
		-webkit-transform: translateY(0) scale(1, 0.95);
		transform: translateY(0) scale(1, 0.95);
		opacity: 1;
	}
	80% {
		-webkit-transform: translateY(-2rem) scale(1, 1.05);
		transform: translateY(-2rem) scale(1, 1.05);
		opacity: 1;
	}
	95% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}
@keyframes bounce {
	0% {
		-webkit-transform: translateY(50%) scale(1, 1);
		transform: translateY(50%) scale(1, 1);
		opacity: 0;
	}
	20% {
		-webkit-transform: translateY(-8rem) scale(1, 1.1);
		transform: translateY(-8rem) scale(1, 1.1);
		opacity: 1;
	}
	40% {
		-webkit-transform: translateY(0) scale(1, 0.9);
		transform: translateY(0) scale(1, 0.9);
		opacity: 1;
	}
	55% {
		-webkit-transform: translateY(-5rem) scale(1, 1.07);
		transform: translateY(-5rem) scale(1, 1.07);
		opacity: 1;
	}
	70% {
		-webkit-transform: translateY(0) scale(1, 0.95);
		transform: translateY(0) scale(1, 0.95);
		opacity: 1;
	}
	80% {
		-webkit-transform: translateY(-2rem) scale(1, 1.05);
		transform: translateY(-2rem) scale(1, 1.05);
		opacity: 1;
	}
	95% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}
@-webkit-keyframes title-show {
	0% {
		opacity: 0;
		-webkit-transform: scale(0);
		transform: scale(0);
	}
	75% {
		opacity: 1;
		-webkit-transform: scale(1.2);
		transform: scale(1.2);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@keyframes title-show {
	0% {
		opacity: 0;
		-webkit-transform: scale(0);
		transform: scale(0);
	}
	75% {
		opacity: 1;
		-webkit-transform: scale(1.2);
		transform: scale(1.2);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@-webkit-keyframes key-show {
	0% {
		opacity: 0;
		-webkit-transform: scale(0);
		transform: scale(0);
	}
	75% {
		opacity: 1;
		-webkit-transform: scale(1.2);
		transform: scale(1.2);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@keyframes key-show {
	0% {
		opacity: 0;
		-webkit-transform: scale(0);
		transform: scale(0);
	}
	75% {
		opacity: 1;
		-webkit-transform: scale(1.2);
		transform: scale(1.2);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@-webkit-keyframes key-bounce {
	0% {
		-webkit-transform: translateY(0) scale(1);
		transform: translateY(0) scale(1);
	}
	20% {
		-webkit-transform: translateY(-15%) scale(1.1);
		transform: translateY(-15%) scale(1.1);
	}
	40% {
		-webkit-transform: translateY(0) scale(1);
		transform: translateY(0) scale(1);
	}
	100% {
		-webkit-transform: translateY(0) scale(1);
		transform: translateY(0) scale(1);
	}
}
@keyframes key-bounce {
	0% {
		-webkit-transform: translateY(0) scale(1);
		transform: translateY(0) scale(1);
	}
	20% {
		-webkit-transform: translateY(-15%) scale(1.1);
		transform: translateY(-15%) scale(1.1);
	}
	40% {
		-webkit-transform: translateY(0) scale(1);
		transform: translateY(0) scale(1);
	}
	100% {
		-webkit-transform: translateY(0) scale(1);
		transform: translateY(0) scale(1);
	}
}
@-webkit-keyframes key-hover {
	0% {
		-webkit-transform: translateY(0) scale(1);
		transform: translateY(0) scale(1);
	}
	50% {
		-webkit-transform: translateY(-15%) scale(1.1);
		transform: translateY(-15%) scale(1.1);
	}
	100% {
		-webkit-transform: translateY(0) scale(1);
		transform: translateY(0) scale(1);
	}
}
@keyframes key-hover {
	0% {
		-webkit-transform: translateY(0) scale(1);
		transform: translateY(0) scale(1);
	}
	50% {
		-webkit-transform: translateY(-15%) scale(1.1);
		transform: translateY(-15%) scale(1.1);
	}
	100% {
		-webkit-transform: translateY(0) scale(1);
		transform: translateY(0) scale(1);
	}
}
@-webkit-keyframes scroll {
	0% {
		top: 0;
		bottom: 100%;
	}
	60% {
		top: 0;
		bottom: 4em;
	}
	100% {
		top: -webkit-calc(100% - 4em);
		top: calc(100% - 4em);
		bottom: 4em;
	}
}
@keyframes scroll {
	0% {
		top: 0;
		bottom: 100%;
	}
	60% {
		top: 0;
		bottom: 4em;
	}
	100% {
		top: -webkit-calc(100% - 4em);
		top: calc(100% - 4em);
		bottom: 4em;
	}
}
.text-wrapper span {
	display: inline-block;
	min-width: 0.25em;
	opacity: 0;
	-webkit-animation: fadeIn 0.6s ease-in-out forwards;
	animation: fadeIn 0.6s ease-in-out forwards;
}

.is-animate {
	height: 100svh;
	overflow: hidden;
}

#index {
	overflow: hidden;
}
#index::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 29rem;
	background: -webkit-gradient(linear, left bottom, left top, from(rgba(255, 255, 255, 0)), to(#62c6f2));
	background: -webkit-linear-gradient(bottom, rgba(255, 255, 255, 0) 0%, #62c6f2 100%);
	background: -o-linear-gradient(bottom, rgba(255, 255, 255, 0) 0%, #62c6f2 100%);
	background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, #62c6f2 100%);
	opacity: 0.5;
	mix-blend-mode: multiply;
}
#index .topbox {
	position: relative;
	height: 100svh;
	min-height: 50vw;
}
@media (max-width: 767px) {
	#index .topbox {
		min-height: 178vw;
	}
}
#index .loading {
	position: absolute;
	left: 50%;
	top: 55%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	opacity: 0;
	-webkit-transition: 1.2s;
	-o-transition: 1.2s;
	transition: 1.2s;
}
#index .loading.is-active {
	opacity: 1;
}
#index .loading.is-active .loadtext {
	opacity: 1;
}
#index .loading .catch, #index .loading .title {
	text-align: center;
	color: #fff;
	line-height: 1.2;
}
#index .loading .catch {
	font-size: 3.68rem;
	font-weight: 600;
}
@media (max-width: 767px) {
	#index .loading .catch {
		font-size: 4vw;
		line-height: 1.35;
	}
}
#index .loading .title {
	font-size: 10.24rem;
	font-family: "Satoshi-Black", sans-serif;
	opacity: 0;
}
@media (max-width: 767px) {
	#index .loading .title {
		margin-top: 0.1em;
		font-size: 11vw;
	}
}
#index .loading .title.is-active {
	opacity: 1;
}
#index .loading .loadtext {
	margin-top: 5rem;
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 1.36rem;
	color: #fff;
	text-align: center;
	opacity: 0;
	-webkit-transition: 0.6s 3.4s;
	-o-transition: 0.6s 3.4s;
	transition: 0.6s 3.4s;
}
@media (max-width: 767px) {
	#index .loading .loadtext {
		font-size: 2.5vw;
	}
}
#index .loading .loadtext::before {
	content: "";
	display: block;
	width: 12rem;
	height: 5.28rem;
	margin: 0px auto 2.5rem;
	background: url(../img/index/loading.svg) center/100% no-repeat;
	-webkit-animation: loading 1.8s ease-in-out infinite;
	animation: loading 1.8s ease-in-out infinite;
}
@media (max-width: 767px) {
	#index .loading .loadtext::before {
		width: 14vw;
	}
}
#index .loading .loadtext .dots::after {
	content: "";
	display: inline-block;
	width: 1.5em;
	-webkit-animation: dotsAnimation 1.5s steps(3) infinite;
	animation: dotsAnimation 1.5s steps(3) infinite;
	text-align: left;
}
#index .historybox {
	position: relative;
	width: 100%;
	height: 100%;
}
#index .historybox::before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 10;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 18rem;
	height: 35.2rem;
	background: url(../img/index/hole.svg) center/100% no-repeat;
	opacity: 0;
	-webkit-transition: 1s 1s;
	-o-transition: 1s 1s;
	transition: 1s 1s;
}
@media (max-width: 767px) {
	#index .historybox::before {
		-webkit-transform: translate(-50%, -25%);
		-ms-transform: translate(-50%, -25%);
		transform: translate(-50%, -25%);
	}
}
#index .historybox .skip {
	position: absolute;
	right: 14rem;
	bottom: 10rem;
	z-index: 100;
	-webkit-transition: 0.8s 2s cubic-bezier(0.33, 1, 0.68, 1);
	-o-transition: 0.8s 2s cubic-bezier(0.33, 1, 0.68, 1);
	transition: 0.8s 2s cubic-bezier(0.33, 1, 0.68, 1);
	opacity: 0;
	-webkit-transform: translateX(-5rem);
	-ms-transform: translateX(-5rem);
	transform: translateX(-5rem);
}
@media (max-width: 767px) {
	#index .historybox .skip {
		right: 5vw;
		bottom: 5vw;
	}
}
#index .historybox .skip a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	color: #fff;
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 2.5rem;
	text-decoration: none;
}
@media (max-width: 767px) {
	#index .historybox .skip a {
		font-size: 3.5vw;
	}
}
#index .historybox .skip a::after {
	content: "";
	display: block;
	width: 2.88em;
	height: 2.88em;
	margin-left: 1.25em;
	background: center / 100% no-repeat;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2071.3%2071.3%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20none%3B%20stroke%3A%20%23231815%3B%20stroke-linecap%3A%20round%3B%20stroke-linejoin%3A%20round%3B%20stroke-width%3A%204px%3B%20%7D%20.cls-2%20%7B%20fill%3A%20%23fff47e%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ccircle%20class%3D%22cls-2%22%20cx%3D%2235.65%22%20cy%3D%2235.65%22%20r%3D%2235.65%22%2F%3E%20%3Cg%3E%20%3Cline%20class%3D%22cls-1%22%20x1%3D%2237.7%22%20y1%3D%2227.7%22%20x2%3D%2245.21%22%20y2%3D%2235.21%22%2F%3E%20%3Cline%20class%3D%22cls-1%22%20x1%3D%2237.7%22%20y1%3D%2242.72%22%20x2%3D%2245.21%22%20y2%3D%2235.21%22%2F%3E%20%3Cline%20class%3D%22cls-1%22%20x1%3D%2226.43%22%20y1%3D%2235.21%22%20x2%3D%2245.21%22%20y2%3D%2235.21%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
#index .historybox .skip a:hover::after {
	-webkit-transform: translateX(0.5em);
	-ms-transform: translateX(0.5em);
	transform: translateX(0.5em);
}
#index .historybox .scroll {
	position: absolute;
	left: 50%;
	bottom: 3rem;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	visibility: hidden;
	opacity: 0;
	-webkit-transition: 0.3s 6s;
	-o-transition: 0.3s 6s;
	transition: 0.3s 6s;
}
#index .historybox .scroll.is-active {
	visibility: visible;
	opacity: 1;
}
#index .historybox .scroll a {
	display: block;
	padding-top: 8rem;
	text-decoration: none;
	color: #fff;
	font-family: "Satoshi-Bold", sans-serif;
	text-align: center;
	font-size: 1.2rem;
	line-height: 1.5;
}
@media (max-width: 995px) {
	#index .historybox .scroll a {
		font-size: 1.7rem;
	}
}
@media (max-width: 767px) {
	#index .historybox .scroll a {
		font-size: 2.5vw;
	}
}
#index .historybox .scroll a::before {
	display: block;
	content: "";
	position: absolute;
	left: 50%;
	top: 0;
	width: 1px;
	background-color: #fff;
	-webkit-animation: scroll 1.8s ease-in-out infinite;
	animation: scroll 1.8s ease-in-out infinite;
}
#index .historybox.is-active::before {
	opacity: 1;
}
#index .historybox.is-active .skip {
	-webkit-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0);
	opacity: 1;
}
#index .historybox .yearbox {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	-webkit-transition: 1.2s;
	-o-transition: 1.2s;
	transition: 1.2s;
}
#index .historybox .yearbox.is-active {
	opacity: 1;
}
#index .historybox .yearbox.is-active .textarea::before {
	opacity: 1;
}
#index .historybox .yearbox.is-active .textarea .leftbox h2 {
	opacity: 1;
}
#index .historybox .yearbox.is-active .textarea .leftbox .year {
	opacity: 1;
}
#index .historybox .yearbox .bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	mix-blend-mode: luminosity;
	background: center / cover no-repeat;
}
#index .historybox .yearbox .textarea {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 10;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: -webkit-calc(100% - 28rem);
	width: calc(100% - 28rem);
	color: #fff;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
@media (max-width: 995px) {
	#index .historybox .yearbox .textarea {
		display: block;
	}
}
@media (max-width: 767px) {
	#index .historybox .yearbox .textarea {
		width: 86vw;
		-webkit-transform: translate(-50%, -43.5%);
		-ms-transform: translate(-50%, -43.5%);
		transform: translate(-50%, -43.5%);
	}
}
#index .historybox .yearbox .textarea::before {
	content: "";
	display: block;
	position: absolute;
	top: 20rem;
	background: center / 100% no-repeat;
	opacity: 0;
	-webkit-transition: 1.2s 1.6s;
	-o-transition: 1.2s 1.6s;
	transition: 1.2s 1.6s;
}
@media (max-width: 767px) {
	#index .historybox .yearbox .textarea::before {
		top: 0;
	}
}
@media (max-width: 995px) {
	#index .historybox .yearbox .textarea .leftbox {
		padding-bottom: 50svh;
	}
}
@media (max-width: 767px) {
	#index .historybox .yearbox .textarea .leftbox {
		padding-bottom: 26svh;
	}
}
#index .historybox .yearbox .textarea .leftbox h2 {
	margin-bottom: 0.5em;
	font-size: 4rem;
	color: #fff47e;
	letter-spacing: 0.025em;
	font-weight: 600;
	opacity: 0;
	-webkit-transition: 1.2s 1s;
	-o-transition: 1.2s 1s;
	transition: 1.2s 1s;
}
@media (max-width: 767px) {
	#index .historybox .yearbox .textarea .leftbox h2 {
		font-size: 5.14vw;
		line-height: 1.3;
	}
}
#index .historybox .yearbox .textarea .leftbox .year {
	opacity: 0;
	-webkit-transition: 1.2s 1.4s;
	-o-transition: 1.2s 1.4s;
	transition: 1.2s 1.4s;
}
#index .historybox .yearbox .textarea .leftbox .year img {
	height: 7.2rem;
}
@media (max-width: 767px) {
	#index .historybox .yearbox .textarea .leftbox .year img {
		height: 7.6vw;
	}
}
#index .historybox .yearbox .textarea .leftbox .read {
	margin-top: 1em;
	margin-left: 15rem;
	font-size: 3.2rem;
	font-weight: 600;
	line-height: 1.7;
}
@media (max-width: 767px) {
	#index .historybox .yearbox .textarea .leftbox .read {
		margin-left: 0;
		margin-top: 0.75em;
		font-size: 4.5vw;
	}
}
#index .historybox .yearbox .textarea .rightbox {
	max-width: 38%;
}
@media (max-width: 995px) {
	#index .historybox .yearbox .textarea .rightbox {
		position: absolute;
		right: 0;
		bottom: 0;
		max-width: none;
	}
}
@media (max-width: 767px) {
	#index .historybox .yearbox .textarea .rightbox {
		position: static;
	}
}
#index .historybox .yearbox .textarea .rightbox .text {
	font-size: 2rem;
	font-weight: 600;
	line-height: 2.2;
	opacity: 0;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
}
@media (max-width: 995px) {
	#index .historybox .yearbox .textarea .rightbox .text {
		font-size: 2.4rem;
	}
}
@media (max-width: 767px) {
	#index .historybox .yearbox .textarea .rightbox .text {
		font-size: 3.75vw;
	}
}
#index .historybox .yearbox .textarea .rightbox .text.is-active {
	opacity: 1;
}
#index .historybox .yearbox.year01 .bg {
	background-image: url(../img/index/year01_bg.png);
}
@media (max-width: 767px) {
	#index .historybox .yearbox.year01 .bg {
		background-image: url(../img/index/year01_bg_sp.png);
	}
}
#index .historybox .yearbox.year01 .textarea::before {
	left: -2rem;
	width: 14.8rem;
	height: 32.4rem;
	background-image: url(../img/index/year01_icon.png);
}
@media (max-width: 767px) {
	#index .historybox .yearbox.year01 .textarea::before {
		left: auto;
		right: 6vw;
		top: -6vw;
		width: 15.5vw;
		height: 34vw;
		-webkit-transform: scale(-1, 1);
		-ms-transform: scale(-1, 1);
		transform: scale(-1, 1);
	}
}
#index .historybox .yearbox.year02 .bg {
	background-image: url(../img/index/year02_bg.jpg);
	mix-blend-mode: normal;
}
@media (max-width: 767px) {
	#index .historybox .yearbox.year02 .bg {
		background-image: url(../img/index/year02_bg_sp.jpg);
	}
}
#index .historybox .yearbox.year02 .textarea::before {
	left: -2rem;
	width: 11.3rem;
	height: 33.6rem;
	background-image: url(../img/index/year02_icon.svg);
}
@media (max-width: 767px) {
	#index .historybox .yearbox.year02 .textarea::before {
		left: auto;
		right: 10vw;
		top: 1vw;
		width: 13.6vw;
		height: 40vw;
		-webkit-transform: scale(-1, 1);
		-ms-transform: scale(-1, 1);
		transform: scale(-1, 1);
	}
}
#index .historybox .yearbox.year03 .bg {
	opacity: 0.5;
	background-image: url(../img/index/year03_bg.png);
}
@media (max-width: 767px) {
	#index .historybox .yearbox.year03 .bg {
		opacity: 1;
		background-image: url(../img/index/year03_bg_sp.png);
	}
}
@media (max-width: 767px) {
	#index .historybox .yearbox.year03 .textarea {
		-webkit-transform: translate(-50%, -41%);
		-ms-transform: translate(-50%, -41%);
		transform: translate(-50%, -41%);
	}
}
#index .historybox .yearbox.year03 .textarea .leftbox .read {
	margin-left: 0;
}
#index .historybox .yearbox.year03 .textarea::before {
	top: 33rem;
	left: 10rem;
	width: 31.6rem;
	height: 26.6rem;
	background-image: url(../img/index/year03_icon.svg);
}
@media (max-width: 767px) {
	#index .historybox .yearbox.year03 .textarea::before {
		left: auto;
		right: 0vw;
		top: -6vw;
		width: 29.5vw;
		height: 25vw;
	}
}
#index .historybox .yearbox.year04 .bg {
	background-image: url(../img/index/year04_bg.png);
	opacity: 0.6;
}
@media (max-width: 767px) {
	#index .historybox .yearbox.year04 .bg {
		opacity: 1;
		background-image: url(../img/index/year04_bg_sp.png);
	}
}
@media (max-width: 767px) {
	#index .historybox .yearbox.year04 .textarea {
		-webkit-transform: translate(-50%, -45%);
		-ms-transform: translate(-50%, -45%);
		transform: translate(-50%, -45%);
	}
}
#index .historybox .yearbox.year04 .textarea::before {
	left: 0rem;
	width: 11.4rem;
	height: 36.2rem;
	background-image: url(../img/index/year04_icon.svg);
}
@media (max-width: 767px) {
	#index .historybox .yearbox.year04 .textarea::before {
		left: auto;
		right: -4vw;
		top: -15vw;
		width: 16vw;
		height: 51vw;
	}
}
#index .historybox .keyanimate {
	position: absolute;
	right: 50%;
	top: -webkit-calc(50% - 10rem);
	top: calc(50% - 10rem);
	z-index: 20;
	width: 40rem;
}
@media (max-width: 767px) {
	#index .historybox .keyanimate {
		top: 50%;
	}
}
#index .historybox .keyanimate.is-end {
	opacity: 0;
	visibility: hidden;
}
#index .historybox .endtext {
	position: absolute;
	left: -webkit-calc(50% + 20rem);
	left: calc(50% + 20rem);
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size: 4rem;
	color: #fff;
	font-weight: 700;
	line-height: 1.325;
	opacity: 0;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
}
@media (max-width: 995px) {
	#index .historybox .endtext {
		line-height: 1.5;
	}
}
@media (max-width: 767px) {
	#index .historybox .endtext {
		top: 70%;
		width: 100%;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
		left: 10vw;
		font-size: 5.5vw;
	}
}
#index .historybox .endtext.is-active {
	opacity: 1;
}
#index .historybox .join {
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	text-align: center;
	font-size: 15rem;
	color: #fff;
	font-family: "Satoshi-Black", sans-serif;
	visibility: hidden;
	-webkit-transition: 1.2s;
	-o-transition: 1.2s;
	transition: 1.2s;
}
@media (max-width: 767px) {
	#index .historybox .join {
		font-size: 10vw;
	}
}
#index .historybox .join.is-active {
	visibility: visible;
}
#index .historybox .join.is-hidden {
	opacity: 0;
}
#index .historybox .door {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	visibility: hidden;
	opacity: 0;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}
@media (max-width: 767px) {
	#index .historybox .door {
		-webkit-perspective: 1000px;
		perspective: 1000px;
	}
}
#index .historybox .door .left, #index .historybox .door .right {
	position: absolute;
	bottom: 0;
	width: 50%;
	height: 100%;
	border-bottom: 1px solid #fff;
	-webkit-transform: translateX(0) skewY(0deg);
	-ms-transform: translateX(0) skewY(0deg);
	transform: translateX(0) skewY(0deg);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
@media (max-width: 767px) {
	#index .historybox .door .left, #index .historybox .door .right {
		-webkit-transform: rotateY(0deg);
		transform: rotateY(0deg);
		-webkit-transform-style: preserve-3d;
		transform-style: preserve-3d;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		border-top: 1px solid #fff;
	}
}
#index .historybox .door .left {
	right: 50%;
	border-right: 1px solid #fff;
	-webkit-transform-origin: left bottom;
	-ms-transform-origin: left bottom;
	transform-origin: left bottom;
}
@media (max-width: 767px) {
	#index .historybox .door .left {
		-webkit-transform-origin: left center;
		-ms-transform-origin: left center;
		transform-origin: left center;
	}
}
#index .historybox .door .right {
	left: 50%;
	border-left: 1px solid #fff;
	-webkit-transform-origin: right bottom;
	-ms-transform-origin: right bottom;
	transform-origin: right bottom;
}
@media (max-width: 767px) {
	#index .historybox .door .right {
		-webkit-transform-origin: right center;
		-ms-transform-origin: right center;
		transform-origin: right center;
	}
}
#index .historybox.is-open::before {
	-webkit-transition: 0.6s;
	-o-transition: 0.6s;
	transition: 0.6s;
}
#index .historybox.is-open .door {
	visibility: visible;
	opacity: 1;
}
#index .historybox.is-open .door .left {
	-webkit-animation: openLeft 3s 0.5s ease-in-out forwards;
	animation: openLeft 3s 0.5s ease-in-out forwards;
}
@media (max-width: 767px) {
	#index .historybox.is-open .door .left {
		-webkit-animation: openLeft-sp 3s 0.5s ease-in-out forwards;
		animation: openLeft-sp 3s 0.5s ease-in-out forwards;
	}
}
#index .historybox.is-open .door .right {
	-webkit-animation: openRight 3s 0.5s ease-in-out forwards;
	animation: openRight 3s 0.5s ease-in-out forwards;
}
@media (max-width: 767px) {
	#index .historybox.is-open .door .right {
		-webkit-animation: openRight-sp 3s 0.5s ease-in-out forwards;
		animation: openRight-sp 3s 0.5s ease-in-out forwards;
	}
}
#index .historybox.is-skip::before, #index .historybox.is-skip .skip {
	-webkit-transition-delay: 0s;
	-o-transition-delay: 0s;
	transition-delay: 0s;
}
#index .officebox {
	position: relative;
	z-index: 20;
	height: 100%;
	-webkit-transition: 1.2s;
	-o-transition: 1.2s;
	transition: 1.2s;
	opacity: 0;
	visibility: hidden;
}
#index .officebox .stagearea {
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 96vw;
	padding-top: 47%;
	margin: 0px auto;
}
@media (max-width: 995px) {
	#index .officebox .stagearea {
		width: 84vw;
		padding-top: 0;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
		position: relative;
		left: auto;
		top: auto;
		margin: 0;
		margin-left: 8vw;
		aspect-ratio: 1 / 1.117;
	}
}
@media (max-width: 767px) {
	#index .officebox .stagearea {
		width: 102vw;
		margin-left: 0;
	}
}
#index .officebox .stagearea .linkblock {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 50;
	height: 100%;
	width: 100%;
}
#index .officebox .stagearea .linkblock a {
	display: block;
	position: absolute;
}
#index .officebox .stagearea .linkblock a.link01 {
	top: 28%;
	left: 6.2%;
	width: 19%;
	height: 29%;
	-webkit-transform: rotate(30deg) skewX(-30deg);
	-ms-transform: rotate(30deg) skewX(-30deg);
	transform: rotate(30deg) skewX(-30deg);
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.link01 {
		top: 23%;
		left: 12.2%;
		width: 27%;
		height: 20%;
	}
}
#index .officebox .stagearea .linkblock a.link02 {
	top: 23%;
	left: 31.2%;
	width: 35%;
	height: 33%;
	-webkit-transform: rotate(29deg) skewX(-34deg);
	-ms-transform: rotate(29deg) skewX(-34deg);
	transform: rotate(29deg) skewX(-34deg);
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.link02 {
		top: 40%;
		left: 39.2%;
		width: 50%;
		height: 25%;
		-webkit-transform: rotate(28deg) skewX(-29deg);
		-ms-transform: rotate(28deg) skewX(-29deg);
		transform: rotate(28deg) skewX(-29deg);
	}
}
#index .officebox .stagearea .linkblock a.link03 {
	top: 64.3%;
	left: 60.8%;
	width: 17%;
	height: 29%;
	-webkit-transform: rotate(28deg) skewX(-31deg);
	-ms-transform: rotate(28deg) skewX(-31deg);
	transform: rotate(28deg) skewX(-31deg);
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.link03 {
		top: 59.3%;
		left: 11.8%;
		width: 32%;
		height: 23%;
	}
}
#index .officebox .stagearea .linkblock a.link04 {
	left: 39.2%;
	bottom: 76.2%;
	width: 9.2%;
	height: 20%;
	-webkit-transform: skewY(31deg);
	-ms-transform: skewY(31deg);
	transform: skewY(31deg);
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.link04 {
		top: 59.3%;
		left: 11.8%;
		width: 32%;
		height: 23%;
	}
}
#index .officebox .stagearea .linkblock a.keylink::before {
	display: block;
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 2.6rem;
	height: 3.5rem;
	background: url(../img/index/office/pick.svg) center/100% no-repeat;
	opacity: 0;
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
	-webkit-transform-origin: center bottom;
	-ms-transform-origin: center bottom;
	transform-origin: center bottom;
}
#index .officebox .stagearea .linkblock a.keylink.kye01 {
	left: 41%;
	top: 11%;
	width: 2%;
	height: 10%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.keylink.kye01 {
		left: 54.5%;
		top: 33.5%;
		width: 3%;
		height: 6.5%;
	}
}
#index .officebox .stagearea .linkblock a.keylink.kye01::before {
	left: 13%;
	top: -37%;
}
#index .officebox .stagearea .linkblock a.keylink.kye02 {
	left: 49%;
	top: 23.5%;
	width: 3%;
	height: 10%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.keylink.kye02 {
		left: 64%;
		top: 39.5%;
		width: 5%;
		height: 7%;
	}
}
#index .officebox .stagearea .linkblock a.keylink.kye02::before {
	left: 70%;
	top: -34%;
}
#index .officebox .stagearea .linkblock a.keylink.kye03 {
	left: 64.5%;
	top: 75%;
	width: 4%;
	height: 10%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.keylink.kye03 {
		left: 17%;
		top: 67%;
		width: 8%;
		height: 7%;
	}
}
#index .officebox .stagearea .linkblock a.keylink.kye03::before {
	left: 42%;
	top: -10%;
}
#index .officebox .stagearea .linkblock a.keylink.kye04 {
	left: 16.5%;
	top: 29.5%;
	width: 3%;
	height: 12%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.keylink.kye04 {
		left: 28%;
		top: 23.5%;
		width: 4.5%;
		height: 8%;
	}
}
#index .officebox .stagearea .linkblock a.keylink.kye04::before {
	left: 60%;
	top: -34%;
}
#index .officebox .stagearea .linkblock a.keylink.kye05 {
	left: 64.5%;
	top: 38.5%;
	width: 3%;
	height: 10%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.keylink.kye05 {
		left: 89.5%;
		top: 50%;
		width: 4.5%;
		height: 7%;
	}
}
#index .officebox .stagearea .linkblock a.keylink.kye05::before {
	left: 80%;
	top: -3%;
}
#index .officebox .stagearea .linkblock a.keylink.kye06 {
	left: 58%;
	top: 34%;
	width: 3.5%;
	height: 10%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.keylink.kye06 {
		left: 79%;
		top: 46.7%;
		width: 5.5%;
		height: 7%;
	}
}
#index .officebox .stagearea .linkblock a.keylink.kye06::before {
	left: 40%;
	top: -36%;
}
#index .officebox .stagearea .linkblock a.keylink.kye07 {
	left: 36.2%;
	top: 20%;
	width: 3%;
	height: 13.5%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.keylink.kye07 {
		left: 42.5%;
		top: 40%;
		width: 5%;
		height: 9.5%;
	}
}
#index .officebox .stagearea .linkblock a.keylink.kye07::before {
	left: 50%;
	top: -30%;
}
#index .officebox .stagearea .linkblock a.keylink.kye08 {
	left: 65%;
	top: 68%;
	width: 3%;
	height: 7%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.keylink.kye08 {
		left: 18%;
		top: 61.5%;
		width: 6.5%;
		height: 5.5%;
	}
}
#index .officebox .stagearea .linkblock a.keylink.kye08::before {
	left: 41%;
	top: -42%;
}
#index .officebox .stagearea .linkblock a.keylink.kye09 {
	left: 6%;
	top: 28%;
	width: 3.5%;
	height: 14%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.keylink.kye09 {
		left: 11%;
		top: 23%;
		width: 6%;
		height: 9.5%;
	}
}
#index .officebox .stagearea .linkblock a.keylink.kye09::before {
	left: -11%;
	top: -7%;
	background-image: url(../img/index/office/rpick.svg);
}
#index .officebox .stagearea .linkblock a.keylink.kye10 {
	left: 51.2%;
	top: 47.5%;
	width: 3.5%;
	height: 14%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.keylink.kye10 {
		left: 67.2%;
		top: 56.5%;
		width: 6%;
		height: 10%;
	}
}
#index .officebox .stagearea .linkblock a.keylink.kye10::before {
	left: 102%;
	top: 0%;
}
#index .officebox .stagearea .linkblock a.keylink.kye11 {
	left: 37.3%;
	top: 27.5%;
	width: 3%;
	height: 13%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .linkblock a.keylink.kye11 {
		left: 47%;
		top: 45.5%;
		width: 5%;
		height: 9%;
	}
}
#index .officebox .stagearea .linkblock a.keylink.kye11::before {
	left: 50%;
	top: -27%;
}
#index .officebox .stagearea .linkblock a.keylink.is-active::before {
	-webkit-animation: key-show 0.6s forwards;
	animation: key-show 0.6s forwards;
}
#index .officebox .stagearea .linkblock a.keylink.is-bounce::before {
	opacity: 1;
	-webkit-animation: key-bounce 3s infinite;
	animation: key-bounce 3s infinite;
}
#index .officebox .stagearea .linkblock a.keylink:hover::before {
	opacity: 1;
	-webkit-animation: key-hover 0.6s infinite;
	animation: key-hover 0.6s infinite;
}
#index .officebox .stagearea .walkbox, #index .officebox .stagearea .leftbox, #index .officebox .stagearea .centerbox01, #index .officebox .stagearea .centerbox02, #index .officebox .stagearea .centerbox03, #index .officebox .stagearea .centerbox04, #index .officebox .stagearea .rightbox, #index .officebox .stagearea .bottombox, #index .officebox .stagearea .rslider {
	position: absolute;
	opacity: 0;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
	-webkit-transition-delay: 1s;
	-o-transition-delay: 1s;
	transition-delay: 1s;
}
#index .officebox .stagearea .walkbox {
	left: 60.5%;
	bottom: 31.5%;
	width: 9.75%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .walkbox {
		left: 31%;
		bottom: 27%;
		width: 18%;
	}
}
#index .officebox .stagearea .leftbox {
	left: 5%;
	bottom: 45%;
	width: 19%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .leftbox {
		left: 10.2%;
		bottom: 58.5%;
		width: 29%;
	}
}
#index .officebox .stagearea .centerbox01 {
	left: 31.5%;
	bottom: 63%;
	width: 8.1%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .centerbox01 {
		left: 34.5%;
		bottom: 46.8%;
		z-index: 20;
		width: 13.4%;
	}
}
#index .officebox .stagearea .centerbox02 {
	left: 39%;
	bottom: 63%;
	width: 9.75%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .centerbox02 {
		left: 51%;
		bottom: 47.8%;
		width: 15.6%;
	}
}
#index .officebox .stagearea .centerbox03 {
	left: 37%;
	bottom: 58%;
	width: 6%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .centerbox03 {
		left: 46.5%;
		bottom: 43%;
		z-index: 20;
		width: 10%;
	}
}
#index .officebox .stagearea .centerbox04 {
	left: 21%;
	bottom: 33%;
	width: 47.15%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .centerbox04 {
		left: 35%;
		bottom: 31.4%;
		width: 60.2%;
	}
}
#index .officebox .stagearea .bottombox {
	left: 55%;
	bottom: 2%;
	width: 29%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .bottombox {
		left: 6%;
		bottom: 21.5%;
		width: 35.4%;
	}
}
#index .officebox .stagearea .screen02 {
	position: absolute;
	overflow: hidden;
}
#index .officebox .stagearea .screen02 .swiper {
	height: 100%;
}
#index .officebox .stagearea .screen02 {
	left: 62.1%;
	top: 18.9%;
	z-index: 100;
	width: 9.8%;
	-webkit-transform: skewY(30deg);
	-ms-transform: skewY(30deg);
	transform: skewY(30deg);
	aspect-ratio: 1 / 0.81;
	border-radius: 0.5rem;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .screen02 {
		top: auto;
		left: 70%;
		bottom: 60%;
		width: 21%;
	}
}
#index .officebox .stagearea .rslider {
	left: 70.2%;
	bottom: 25%;
	z-index: 80;
	width: 29.8%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .rslider {
		left: auto;
		right: 3%;
		bottom: -16%;
		width: 71%;
	}
}
#index .officebox .stagearea .rslider .item {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	opacity: 0;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
}
#index .officebox .stagearea .rslider .item.is-active {
	z-index: 10;
	opacity: 1;
}
#index .officebox .stagearea .rslider .none {
	position: static;
}
#index .officebox .stagearea .rslider .rela {
	position: relative;
}
#index .officebox .stagearea .rslider .animatebox .shipimg {
	left: 56%;
	top: 23%;
}
#index .officebox .stagearea .rslider .animatebox .trackimg {
	left: 64%;
	top: 45%;
}
#index .officebox .stagearea .rslider .animatebox .obj.steel01 {
	left: 68%;
	top: 57%;
}
#index .officebox .stagearea .rslider .animatebox .obj.steel02 {
	left: 18%;
	top: 60%;
	-webkit-transform: scale(-1, 1);
	-ms-transform: scale(-1, 1);
	transform: scale(-1, 1);
}
#index .officebox .stagearea .stage {
	position: absolute;
	left: 0.75%;
	bottom: 0;
	width: 98.5%;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
	-webkit-transition-delay: 0s;
	-o-transition-delay: 0s;
	transition-delay: 0s;
	-webkit-transition-property: cubic-bezier(0.33, 1, 0.68, 1);
	-o-transition-property: cubic-bezier(0.33, 1, 0.68, 1);
	transition-property: cubic-bezier(0.33, 1, 0.68, 1);
	background-position: center;
	background-size: 100%;
	background-repeat: no-repeat;
	background-image: url(../img/index/office/stage.svg);
	opacity: 0;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .stage {
		background-image: url(../img/index/office/stage_sp.svg);
	}
}
#index .officebox .stagearea .stage img {
	position: static;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	opacity: 1;
}
@media (max-width: 995px) {
	#index .officebox .stagearea .stage {
		left: 1.8%;
		bottom: 8%;
		width: 98%;
	}
}
#index .officebox .stagearea .stage.is-over1, #index .officebox .stagearea .stage.is-over2, #index .officebox .stagearea .stage.is-over3 {
	-webkit-transition: none;
	-o-transition: none;
	transition: none;
}
#index .officebox .stagearea .stage.is-over1 img, #index .officebox .stagearea .stage.is-over2 img, #index .officebox .stagearea .stage.is-over3 img {
	opacity: 0;
}
#index .officebox .stagearea .stage.is-over1 {
	background-image: url(../img/index/office/stage_over1.svg);
}
@media (max-width: 995px) {
	#index .officebox .stagearea .stage.is-over1 {
		background-image: url(../img/index/office/stage_sp_over1.svg);
	}
}
#index .officebox .stagearea .stage.is-over2 {
	background-image: url(../img/index/office/stage_over2.svg);
}
@media (max-width: 995px) {
	#index .officebox .stagearea .stage.is-over2 {
		background-image: url(../img/index/office/stage_sp_over2.svg);
	}
}
#index .officebox .stagearea .stage.is-over3 {
	background-image: url(../img/index/office/stage_over3.svg);
}
@media (max-width: 995px) {
	#index .officebox .stagearea .stage.is-over3 {
		background-image: url(../img/index/office/stage_sp_over3.svg);
	}
}
#index .officebox .stagearea .booth {
	position: absolute;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
	-webkit-transition-delay: 1s;
	-o-transition-delay: 1s;
	transition-delay: 1s;
	left: 39.2%;
	bottom: 74.2%;
	width: 9.2%;
	opacity: 0;
	background-position: center;
	background-size: 100%;
	background-repeat: no-repeat;
	background-image: url(../img/index/office/box.svg);
}
@media (max-width: 995px) {
	#index .officebox .stagearea .booth {
		left: 51.6%;
		bottom: 56.2%;
		width: 15%;
	}
}
#index .officebox .stagearea .booth img {
	position: static;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	opacity: 1;
}
#index .officebox .stagearea .booth.is-over4 {
	-webkit-transition-delay: 0s;
	-o-transition-delay: 0s;
	transition-delay: 0s;
	background-image: url(../img/index/office/box_over.svg);
}
#index .officebox .stagearea .booth.is-over4 img {
	opacity: 0;
}
#index .officebox .stagearea img {
	position: absolute;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
	-webkit-transition-delay: 1s;
	-o-transition-delay: 1s;
	transition-delay: 1s;
}
#index .officebox .stagearea img.shadow {
	left: 0;
	bottom: 0;
	-webkit-transition-delay: 0s;
	-o-transition-delay: 0s;
	transition-delay: 0s;
	-webkit-transition-property: cubic-bezier(0.33, 1, 0.68, 1);
	-o-transition-property: cubic-bezier(0.33, 1, 0.68, 1);
	transition-property: cubic-bezier(0.33, 1, 0.68, 1);
	width: 100%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea img.shadow {
		left: 1%;
		bottom: 14%;
		width: 100%;
	}
}
#index .officebox .stagearea img.title {
	left: 16%;
	bottom: 69%;
	width: 9%;
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
	-webkit-transform-origin: right bottom;
	-ms-transform-origin: right bottom;
	transform-origin: right bottom;
	-webkit-transition: none;
	-o-transition: none;
	transition: none;
}
@media (max-width: 995px) {
	#index .officebox .stagearea img.title {
		left: auto;
		right: 9vw;
		bottom: -16vw;
		z-index: 100;
		width: 25%;
	}
}
#index .officebox .stagearea img.l_screen {
	left: 7.5%;
	bottom: 65%;
	width: 6%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea img.l_screen {
		display: none;
	}
}
#index .officebox .stagearea img.c_screen {
	left: 62%;
	bottom: 59%;
	width: 10%;
}
@media (max-width: 995px) {
	#index .officebox .stagearea img.c_screen {
		left: 69.7%;
		bottom: 54.5%;
		width: 22%;
	}
}
#index .officebox .text {
	position: absolute;
	right: 9vw;
	top: 50%;
	margin-top: -27rem;
	font-size: 3.2rem;
	font-weight: 600;
	line-height: 1.27;
	opacity: 0;
	-webkit-transition: 1s 1s;
	-o-transition: 1s 1s;
	transition: 1s 1s;
}
@media (max-width: 995px) {
	#index .officebox .text {
		top: 100vw;
		right: auto;
		left: 5vw;
		margin-top: 0;
		font-size: 3vw;
	}
}
@media (max-width: 767px) {
	#index .officebox .text {
		top: 120vw;
		font-size: 4.25vw;
	}
}
#index .officebox .text.white {
	color: #fff;
}
#index .officebox .text.is-up1, #index .officebox .text.is-up2, #index .officebox .text.is-up3, #index .officebox .text.is-up4 {
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
}
#index .officebox .text.is-up1 {
	margin-top: -27rem;
}
@media (max-width: 995px) {
	#index .officebox .text.is-up1 {
		margin-top: 0;
	}
}
#index .officebox .text.is-up2 {
	margin-top: -33rem;
}
@media (max-width: 995px) {
	#index .officebox .text.is-up2 {
		margin-top: 0;
	}
}
#index .officebox .text.is-up3 {
	margin-top: -28rem;
}
@media (max-width: 995px) {
	#index .officebox .text.is-up3 {
		margin-top: 0;
	}
}
#index .officebox .text.is-up4 {
	margin-top: -35rem;
}
@media (max-width: 995px) {
	#index .officebox .text.is-up4 {
		margin-top: 0;
	}
}
#index .officebox .textbox {
	position: absolute;
	left: 4vw;
	top: 50%;
	margin-top: 16rem;
	line-height: 1;
}
@media (max-width: 995px) {
	#index .officebox .textbox {
		left: 5vw;
		top: 109vw;
		margin-top: 0;
	}
}
@media (max-width: 767px) {
	#index .officebox .textbox {
		top: 133vw;
	}
}
#index .officebox .textbox.white {
	color: #fff;
}
#index .officebox .textbox .catch {
	font-size: 10rem;
	font-family: "Satoshi-Black", sans-serif;
	visibility: hidden;
}
@media (max-width: 767px) {
	#index .officebox .textbox .catch {
		font-size: 11vw;
	}
}
#index .officebox .textbox .read {
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 6.3rem;
	visibility: hidden;
}
@media (max-width: 767px) {
	#index .officebox .textbox .read {
		font-size: 6.95vw;
	}
}
#index .officebox .textbox .sub {
	margin-top: 0.5em;
	font-size: 3.3rem;
	font-family: "Satoshi-Regular", sans-serif;
	opacity: 0;
	-webkit-transition: 1s 5s;
	-o-transition: 1s 5s;
	transition: 1s 5s;
}
@media (max-width: 767px) {
	#index .officebox .textbox .sub {
		font-size: 3.9vw;
	}
}
#index .officebox .entry {
	right: 5vw;
}
#index .officebox .entry a {
	width: 10em;
	height: 10em;
}
@media (max-width: 767px) {
	#index .officebox .entry a {
		font-size: 3vw;
		width: 20vw;
		height: 20vw;
	}
}
#index .officebox .entry.is-scroll a {
	width: 11rem;
	height: 11rem;
}
@media (max-width: 767px) {
	#index .officebox .entry.is-scroll a {
		font-size: 2.5vw;
		width: 15vw;
		height: 15vw;
	}
}
#index .officebox.is-active {
	opacity: 1;
	visibility: visible;
}
#index .officebox.is-active .stagearea .walkbox, #index .officebox.is-active .stagearea .leftbox, #index .officebox.is-active .stagearea .centerbox01, #index .officebox.is-active .stagearea .centerbox02, #index .officebox.is-active .stagearea .centerbox03, #index .officebox.is-active .stagearea .centerbox04, #index .officebox.is-active .stagearea .rightbox, #index .officebox.is-active .stagearea .bottombox, #index .officebox.is-active .stagearea .rslider {
	opacity: 1;
}
#index .officebox.is-active .stagearea .stage {
	opacity: 1;
	bottom: 4%;
}
@media (max-width: 995px) {
	#index .officebox.is-active .stagearea .stage {
		bottom: 15.4%;
	}
}
#index .officebox.is-active .stagearea .booth {
	opacity: 1;
}
#index .officebox.is-active .stagearea img {
	opacity: 1;
}
#index .officebox.is-active .stagearea img.title {
	-webkit-animation: title-show 0.7s 7s forwards;
	animation: title-show 0.7s 7s forwards;
}
#index .officebox.is-active .text {
	opacity: 1;
}
#index .officebox.is-active .textbox .catch {
	visibility: visible;
}
#index .officebox.is-active .textbox .read {
	visibility: visible;
}
#index .officebox.is-active .textbox .sub {
	opacity: 1;
}
#index .officebox.is-active .entry {
	-webkit-animation: bounce 2.1s 5s forwards;
	animation: bounce 2.1s 5s forwards;
	visibility: visible;
}
#index .topobj {
	position: absolute;
}
#index .readbox {
	position: relative;
	margin-top: 15rem;
	text-align: center;
}
#index .readbox .bg01, #index .readbox .bg02 {
	position: absolute;
	background: center / 100% auto no-repeat;
}
#index .readbox .bg01 {
	top: -5.5rem;
	right: -webkit-calc(50% + 43rem);
	right: calc(50% + 43rem);
	width: 59rem;
	height: 68rem;
	background-image: url(../img/index/item01.png);
}
@media (max-width: 767px) {
	#index .readbox .bg01 {
		top: 18vw;
		right: -webkit-calc(50% + 9vw);
		right: calc(50% + 9vw);
		width: 46.5vw;
		height: 54vw;
	}
}
#index .readbox .bg01 .topobj {
	left: 0;
	bottom: 4%;
	width: 100%;
}
#index .readbox .bg02 {
	top: -9rem;
	left: -webkit-calc(50% + 37rem);
	left: calc(50% + 37rem);
	width: 69rem;
	height: 52rem;
	background-image: url(../img/index/item02.png);
}
@media (max-width: 767px) {
	#index .readbox .bg02 {
		top: 25vw;
		left: 50%;
		width: 53vw;
		height: 40vw;
	}
}
#index .readbox .bg02 .topobj {
	left: 1.4%;
	bottom: 1%;
	width: 66.8%;
}
#index .readbox h2 {
	font-size: 6rem;
	line-height: 1.2;
}
@media (max-width: 767px) {
	#index .readbox h2 {
		font-size: 6.25vw;
	}
}
#index .readbox h2 span {
	font-family: "Satoshi-Black", sans-serif;
	font-size: 1.13em;
}
@media (max-width: 767px) {
	#index .readbox h2 span {
		display: block;
	}
}
#index .readbox .sub {
	margin-top: 0.25em;
	font-family: "Satoshi-Regular", sans-serif;
	font-size: 3.5rem;
}
@media (max-width: 767px) {
	#index .readbox .sub {
		font-size: 3vw;
	}
}
#index .readbox .text {
	margin-top: 1.25em;
	font-size: 3.6rem;
	font-weight: 600;
	line-height: 2.14;
}
@media (max-width: 767px) {
	#index .readbox .text {
		margin-top: 8em;
		font-size: 3.9vw;
	}
}
#index .moviebox {
	margin-top: 9rem;
	text-align: center;
}
#index .moviebox .sub {
	margin-bottom: 0.5em;
	font-size: 3rem;
	font-weight: 600;
}
@media (max-width: 767px) {
	#index .moviebox .sub {
		font-size: 3.6vw;
	}
}
#index .moviebox h2 {
	margin-bottom: 1.5em;
	font-size: 6rem;
	line-height: 1.2;
	font-family: "Satoshi-Black", sans-serif;
	font-weight: 400;
}
@media (max-width: 767px) {
	#index .moviebox h2 {
		font-size: 6.5vw;
	}
}
#index .moviebox h2 span {
	font-size: 0.6em;
	font-family: "Satoshi-Regular", sans-serif;
}
#index .moviebox .movie {
	max-width: 120rem;
	margin: 0px auto;
	border: 4rem solid #3e7bac;
}
@media (max-width: 767px) {
	#index .moviebox .movie {
		margin: 0px 5vw;
		border: 1.6vw solid #3e7bac;
	}
}
#index .moviebox .movie div {
	position: relative;
	padding-top: 56.25%;
	border: 2px solid #fff;
}
#index .moviebox .movie div video {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
#index .businessbox, #index .keybox, #index .environmentbox, #index .infobox {
	margin-top: 22rem;
	text-align: center;
}
@media (max-width: 767px) {
	#index .businessbox, #index .keybox, #index .environmentbox, #index .infobox {
		margin-top: 17vw;
	}
}
#index .businessbox h2, #index .keybox h2, #index .environmentbox h2, #index .infobox h2 {
	margin-bottom: 1.5em;
	font-size: 3.4rem;
	text-align: center;
	line-height: 1.5;
}
@media (max-width: 767px) {
	#index .businessbox h2, #index .keybox h2, #index .environmentbox h2, #index .infobox h2 {
		font-size: 4.3vw;
	}
}
#index .businessbox h2 span, #index .keybox h2 span, #index .environmentbox h2 span, #index .infobox h2 span {
	display: block;
	font-family: "Satoshi-Black", sans-serif;
	font-size: 2em;
}
@media (max-width: 767px) {
	#index .businessbox h2 span, #index .keybox h2 span, #index .environmentbox h2 span, #index .infobox h2 span {
		margin-bottom: 0.15em;
		line-height: 1.1;
	}
}
#index .businessbox .text, #index .businessbox .read, #index .keybox .text, #index .keybox .read, #index .environmentbox .text, #index .environmentbox .read, #index .infobox .text, #index .infobox .read {
	font-size: 3.6rem;
	line-height: 2.14;
	font-weight: 600;
}
@media (max-width: 767px) {
	#index .businessbox .text, #index .businessbox .read, #index .keybox .text, #index .keybox .read, #index .environmentbox .text, #index .environmentbox .read, #index .infobox .text, #index .infobox .read {
		font-size: 3.6vw;
	}
}
#index .businessbox .items, #index .formation .items, #index .environmentbox .items {
	margin-top: 10rem;
}
@media (max-width: 767px) {
	#index .businessbox .items, #index .formation .items, #index .environmentbox .items {
		margin-right: -5vw;
		padding-right: 5vw;
		overflow: hidden;
	}
}
@media (max-width: 767px) {
	#index .businessbox .items .swiper, #index .formation .items .swiper, #index .environmentbox .items .swiper {
		padding-bottom: 5vw;
		overflow: visible;
	}
}
@media (max-width: 767px) {
	#index .businessbox .items .swiper .swiper-scrollbar, #index .formation .items .swiper .swiper-scrollbar, #index .environmentbox .items .swiper .swiper-scrollbar {
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1.2vw;
		background-color: transparent;
	}
}
@media (max-width: 767px) {
	#index .businessbox .items .swiper .swiper-scrollbar .swiper-scrollbar-drag, #index .formation .items .swiper .swiper-scrollbar .swiper-scrollbar-drag, #index .environmentbox .items .swiper .swiper-scrollbar .swiper-scrollbar-drag {
		border-radius: 0;
		background-color: #f6eb80;
	}
}
#index .businessbox .items .swiper-wrapper, #index .formation .items .swiper-wrapper, #index .environmentbox .items .swiper-wrapper {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0 1.4%;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}
@media (max-width: 767px) {
	#index .businessbox .items .swiper-wrapper, #index .formation .items .swiper-wrapper, #index .environmentbox .items .swiper-wrapper {
		gap: 0;
		-webkit-box-pack: start;
		-webkit-justify-content: flex-start;
		-ms-flex-pack: start;
		justify-content: flex-start;
	}
}
#index .businessbox .items .item, #index .formation .items .item, #index .environmentbox .items .item {
	position: relative;
	width: -webkit-calc((100% - 1.4% * 2) / 3);
	width: calc((100% - 1.4% * 2) / 3);
}
@media (max-width: 767px) {
	#index .businessbox .items .item, #index .formation .items .item, #index .environmentbox .items .item {
		width: auto;
	}
}
#index .businessbox .sub, #index .formation .sub {
	font-size: 3.6rem;
	font-weight: 600;
	text-align: center;
}
@media (max-width: 767px) {
	#index .businessbox .sub, #index .formation .sub {
		margin-bottom: 0.25em;
		font-size: 4.4vw;
		line-height: 1.35;
	}
}
#index .businessbox .btn, #index .formation .btn {
	margin-top: 2.5em;
	font-size: 2.2rem;
	text-align: center;
}
@media (max-width: 767px) {
	#index .businessbox .btn, #index .formation .btn {
		font-size: 3vw;
	}
}
#index .businessbox .btn .hovericon, #index .formation .btn .hovericon {
	width: 1.73em;
	margin-bottom: 0.5em;
}
#index .businessbox .btn a, #index .formation .btn a {
	display: inline-block;
	color: #fff;
	text-decoration: none;
	font-weight: 600;
	line-height: 1.6;
}
#index .businessbox {
	position: relative;
}
#index .businessbox .bg01, #index .businessbox .bg02 {
	position: absolute;
	background: center / 100% auto no-repeat;
}
#index .businessbox .bg01 {
	top: -18rem;
	right: -webkit-calc(50% + 31rem);
	right: calc(50% + 31rem);
	width: 186rem;
	height: 159rem;
	background-image: url(../img/index/item03.png);
}
@media (max-width: 767px) {
	#index .businessbox .bg01 {
		top: 25vw;
		right: -webkit-calc(50% + 1vw);
		right: calc(50% + 1vw);
		width: 110vw;
		height: 94vw;
	}
}
#index .businessbox .bg01 .topobj {
	right: 8.5%;
	top: 32.5%;
	width: 5.5%;
}
#index .businessbox .bg02 {
	top: 2rem;
	left: -webkit-calc(50% + 40rem);
	left: calc(50% + 40rem);
	width: 62rem;
	height: 52rem;
	background-image: url(../img/index/item04.png);
}
@media (max-width: 767px) {
	#index .businessbox .bg02 {
		top: 30vw;
		left: -webkit-calc(50% + 2vw);
		left: calc(50% + 2vw);
		width: 49.3vw;
		height: 41vw;
	}
}
#index .businessbox .bg02 .topobj {
	left: 20%;
	top: 58%;
	width: 14.4%;
}
#index .businessbox .text {
	width: 28em;
	margin: 0px auto;
	font-size: 2.6rem;
	font-weight: 400;
	text-align: left;
}
@media (max-width: 767px) {
	#index .businessbox .text {
		width: auto;
		margin-top: 47vw;
		font-size: 3.6vw;
	}
}
#index .businessbox .items .item {
	aspect-ratio: 1 / 1.27;
	background: url(../img/index/box_project.svg) center/100% auto no-repeat;
}
@media (max-width: 995px) {
	#index .businessbox .items .item {
		aspect-ratio: 1 / 1.428;
		background-image: url(../img/index/box_project_sp.svg);
	}
}
#index .businessbox .items .item::after {
	content: "";
	display: block;
	position: absolute;
	right: 6rem;
	bottom: 6rem;
	width: 4rem;
	height: 4rem;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2040.95%2040.95%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23fff%3B%20%7D%20.cls-2%20%7B%20fill%3A%20%23529ed7%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ccircle%20class%3D%22cls-2%22%20cx%3D%2220.48%22%20cy%3D%2220.48%22%20r%3D%2220.48%22%2F%3E%20%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2217.98%2013.16%2017.98%2015.38%2023.07%2020.48%2017.98%2025.57%2017.98%2027.79%2025.3%2020.48%2017.98%2013.16%22%2F%3E%3C%2Fsvg%3E") center/100% no-repeat;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 995px) {
	#index .businessbox .items .item::after {
		right: 4rem;
		bottom: 4rem;
	}
}
#index .businessbox .items .item:hover::after {
	right: 4rem;
}
#index .businessbox .items .item .num {
	padding: 2em 1.25em 1.75em;
	font-size: 2rem;
	color: #519fd8;
	text-align: left;
	line-height: 1.3;
	font-weight: 600;
}
@media (max-width: 767px) {
	#index .businessbox .items .item .num {
		padding-bottom: 1.25em;
		font-size: 2.5vw;
	}
}
#index .businessbox .items .item .num span {
	display: block;
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 0.8em;
}
#index .businessbox .items .item .title {
	padding-right: 3%;
	font-weight: 600;
	line-height: 1.2;
	font-size: 3.2rem;
}
@media (max-width: 995px) {
	#index .businessbox .items .item .title {
		height: 3.6em;
	}
}
@media (max-width: 767px) {
	#index .businessbox .items .item .title {
		font-size: 3.3vw;
	}
}
#index .businessbox .items .item .title a {
	color: #519fd8;
	text-decoration: none;
}
#index .businessbox .items .item figure {
	margin-top: 2.5rem;
	padding: 0px 4rem 0px 2.5rem;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#index .businessbox .items .item figure {
		margin-top: 2.5vw;
	}
}
#index .businessbox .items .item:hover figure {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
#index .businessbox .items .item.soon {
	position: relative;
	pointer-events: none;
}
#index .businessbox .items .item.soon > figure, #index .businessbox .items .item.soon > p {
	opacity: 0.4;
}
#index .businessbox .items .item.soon::after {
	left: 0;
	top: 0;
	z-index: 5;
	width: 100%;
	height: 100%;
	background: #519fd8;
	opacity: 0.6;
}
#index .businessbox .items .item.soon::before {
	content: "Coming soon";
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	z-index: 10;
	width: 95%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	text-align: center;
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 5rem;
}
#index .formation {
	margin-top: 9rem;
}
#index .formation h2 {
	font-size: 6.8rem;
	text-align: center;
	line-height: 1.2;
}
@media (max-width: 767px) {
	#index .formation h2 {
		font-size: 8.3vw;
	}
}
#index .formation h2 span {
	font-family: "Satoshi-Black", sans-serif;
}
#index .formation .read {
	margin-top: 0.35em;
	font-size: 3.6rem;
	font-weight: 600;
	text-align: center;
	line-height: 1.8;
}
@media (max-width: 767px) {
	#index .formation .read {
		font-size: 3.8vw;
	}
}
#index .formation .careerbox {
	margin-top: 14rem;
}
@media (max-width: 767px) {
	#index .formation .careerbox {
		margin-top: 13vw;
	}
}
#index .formation .careerbox .btn {
	margin-top: 0;
}
#index .formation .careerbox .btn a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	color: #231815;
	line-height: 1.25;
	font-weight: 400;
	pointer-events: none;
}
#index .formation .items .swiper {
	padding-bottom: 1.4rem;
	overflow: visible;
}
@media (max-width: 767px) {
	#index .formation .items .swiper {
		padding-bottom: 5vw;
	}
}
#index .formation .items .swiper-wrapper {
	gap: 0 2.6rem;
}
@media (max-width: 767px) {
	#index .formation .items .swiper-wrapper {
		gap: 0;
	}
}
#index .formation .items .item {
	width: -webkit-calc((100% - 2.6rem) / 2);
	width: calc((100% - 2.6rem) / 2);
	background-color: #e9f1f9;
	border-radius: 2rem;
	border: 2px solid #fff;
	-webkit-box-shadow: 1.4rem 1.4rem 0 rgba(0, 0, 0, 0.08);
	box-shadow: 1.4rem 1.4rem 0 rgba(0, 0, 0, 0.08);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
@media (max-width: 767px) {
	#index .formation .items .item {
		width: auto;
	}
}
#index .formation .items .item .num {
	padding: 0.5em 1.25em 0;
	font-size: 2.5rem;
	font-family: "Satoshi-Bold", sans-serif;
	color: #519fd8;
}
@media (max-width: 767px) {
	#index .formation .items .item .num {
		font-size: 3.25vw;
	}
}
#index .formation .items .item figure {
	overflow: hidden;
}
#index .formation .items .item figure img {
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
#index .formation .items .item .title {
	padding: 0.25em 1em;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2040.95%2040.95%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23fff%3B%20%7D%20.cls-2%20%7B%20fill%3A%20%23529ed7%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ccircle%20class%3D%22cls-2%22%20cx%3D%2220.48%22%20cy%3D%2220.48%22%20r%3D%2220.48%22%2F%3E%20%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2217.98%2013.16%2017.98%2015.38%2023.07%2020.48%2017.98%2025.57%2017.98%2027.79%2025.3%2020.48%2017.98%2013.16%22%2F%3E%3C%2Fsvg%3E") right 1em center/1.14em no-repeat;
	font-weight: 600;
	font-size: 3.5rem;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#index .formation .items .item .title {
		font-size: 4vw;
	}
}
#index .formation .items .item .title a {
	color: #519fd8;
	text-decoration: none;
}
#index .formation .items .item:hover figure img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
#index .formation .items .item:hover .title {
	background-position: right 0.75em center;
}
#index .environmentbox {
	margin-top: 9rem;
}
@media (max-width: 767px) {
	#index .environmentbox .read {
		font-size: 3.8vw;
	}
}
#index .environmentbox .read + .read {
	margin-top: 1.5em;
}
#index .environmentbox .items .item {
	aspect-ratio: 1 / 1.27;
}
#index .environmentbox .items .item .title {
	padding-top: 8rem;
	padding-right: 3%;
	font-weight: 600;
	line-height: 1.2;
	font-size: 2.8rem;
}
@media (max-width: 767px) {
	#index .environmentbox .items .item .title {
		font-size: 2.6vw;
	}
}
#index .environmentbox .items .item .title a {
	color: #519fd8;
	text-decoration: none;
}
#index .environmentbox .items .item figure {
	margin-top: 2.5rem;
	padding: 0px 4rem 0px 2.5rem;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#index .environmentbox .items .item figure {
		margin-top: 2.5vw;
	}
}
#index .environmentbox .items .item:hover figure {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
#index .environmentbox .items .item:nth-child(1) {
	background: url(../img/index/box_data.svg) center/100% auto no-repeat;
}
#index .environmentbox .items .item:nth-child(1) .title span {
	display: block;
	margin-top: 0.1em;
	font-size: 1.65em;
}
#index .environmentbox .items .item:nth-child(2) {
	background: url(../img/index/box_fukuri.svg) center/100% auto no-repeat;
}
#index .environmentbox .items .item:nth-child(2) .title span {
	display: block;
	margin-top: 0.1em;
	font-size: 1.65em;
}
#index .environmentbox .items .item:nth-child(3) {
	background: url(../img/index/box_faq.svg) center/100% auto no-repeat;
}
#index .environmentbox .items .item:nth-child(3) .title {
	font-size: 3rem;
}
#index .environmentbox .items .item:nth-child(3) .title span {
	font-size: 2.26em;
	font-family: "Satoshi-Black", sans-serif;
}
#index .infobox .sub {
	font-size: 4rem;
	text-align: center;
	font-weight: 600;
}
@media (max-width: 767px) {
	#index .infobox .sub {
		font-size: 4.5vw;
	}
}
#index .infobox .inbox {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
@media (max-width: 767px) {
	#index .infobox .inbox {
		display: block;
	}
}
#index .infobox .inbox .textbox {
	width: 50%;
}
@media (max-width: 767px) {
	#index .infobox .inbox .textbox {
		width: auto;
		margin-top: 10vw;
	}
}
#index .infobox .inbox .textbox h3 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 4.2rem;
}
@media (max-width: 767px) {
	#index .infobox .inbox .textbox h3 {
		font-size: 5.8vw;
	}
}
#index .infobox .inbox .textbox h3 span {
	display: inline-block;
	padding: 0px 1.25em;
	border-radius: 1rem;
	margin-right: 1em;
	font-size: 0.8em;
	background-color: #447aac;
}
#index .infobox .inbox .textbox .text {
	margin-top: 1.25em;
	font-size: 2.2rem;
	text-align: left;
}
@media (max-width: 767px) {
	#index .infobox .inbox .textbox .text {
		font-size: 3.6vw;
	}
}
#index .infobox .inbox .textbox .btn {
	margin-top: 1.5em;
	text-align: right;
}
@media (max-width: 767px) {
	#index .infobox .inbox .textbox .btn {
		text-align: center;
	}
}
#index .infobox .inbox .textbox .btn a {
	display: inline-block;
	width: 18em;
	padding: 1em 0;
	background-color: #447aac;
	border-radius: 2em;
	font-size: 1.8rem;
	font-weight: 600;
	color: #fff;
	text-align: center;
	text-decoration: none;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#index .infobox .inbox .textbox .btn a {
		font-size: 3vw;
	}
}
#index .infobox .inbox .textbox .btn a:hover {
	background-color: #fff;
	color: #447aac;
}
#index .infobox .inbox .bg01 {
	position: relative;
	width: 47%;
	margin-left: -3%;
}
@media (max-width: 767px) {
	#index .infobox .inbox .bg01 {
		width: auto;
		margin: 7.5vw 0px 0px;
	}
}
#index .infobox .inbox .bg01 .obja {
	left: 49%;
	top: 0%;
	width: 45.5%;
}
#index .infobox .inbox .bg01 .objb {
	left: 37%;
	top: 6%;
	width: 63.2%;
}
#index .infobox .inbox .bg01 .objc {
	left: 3%;
	top: 25.5%;
	width: 78.5%;
}

@keyframes menu-bar01 {
	0% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(45deg);
		transform: translateY(calc(1rem - 1px)) rotate(45deg);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(0);
		transform: translateY(calc(1rem - 1px)) rotate(0);
	}
	100% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
}
@keyframes menu-bar02 {
	0% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(-45deg);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(-45deg);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(0);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(0);
	}
	100% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
}
@keyframes active-menu-bar01 {
	0% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(0);
		transform: translateY(calc(1rem - 1px)) rotate(0);
	}
	100% {
		-webkit-transform: translateY(-webkit-calc(1rem - 1px)) rotate(45deg);
		transform: translateY(calc(1rem - 1px)) rotate(45deg);
	}
}
@keyframes active-menu-bar03 {
	0% {
		-webkit-transform: translateY(0) rotate(0);
		transform: translateY(0) rotate(0);
	}
	50% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(0);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(0);
	}
	100% {
		-webkit-transform: translateY(-webkit-calc(0px - (1rem - 1px))) rotate(-45deg);
		transform: translateY(calc(0px - (1rem - 1px))) rotate(-45deg);
	}
}
/*-----------------------------------------------------------
	common
-----------------------------------------------------------*/
.pagetitle {
	position: relative;
	padding-top: 15rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
@media (max-width: 767px) {
	.pagetitle {
		padding-top: 20vw;
	}
}
.pagetitle .breadcrumbs {
	padding: 0px 4rem;
	font-size: 1.4rem;
}
@media (max-width: 767px) {
	.pagetitle .breadcrumbs {
		font-size: 2.75vw;
	}
}
.pagetitle .breadcrumbs a {
	color: #fff;
}
.pagetitle .pager {
	position: absolute;
	right: 8vw;
	top: 22rem;
}
@media (max-width: 767px) {
	.pagetitle .pager {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		gap: 6vw;
		top: 28vw;
	}
}
.pagetitle .pager li + li {
	margin-top: 2rem;
}
@media (max-width: 767px) {
	.pagetitle .pager li + li {
		margin: 0;
	}
}
.pagetitle .pager li a {
	display: block;
	position: relative;
	width: 7.6rem;
	height: 7.6rem;
	border-radius: 50%;
	background-color: #519fd8;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 3.2rem auto;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.pagetitle .pager li a.next {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2033.36%2022.92%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23fff%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2232.02%2011.16%2032.02%2010.97%2031.81%2010.97%2019.26%200%2018.44%20.94%2029.91%2010.97%200%2010.97%200%2012.22%2031.34%2012.22%2031.36%2012.24%2018.15%2021.91%2018.89%2022.92%2033.36%2012.33%2032.02%2011.16%22%2F%3E%3C%2Fsvg%3E");
}
.pagetitle .pager li a.prev {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2033.35%2022.92%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23fff%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2233.35%2012.22%2033.35%2010.97%203.44%2010.97%2014.91%20.94%2014.09%200%201.55%2010.97%201.34%2010.97%201.34%2011.16%200%2012.33%2014.47%2022.92%2015.21%2021.91%201.99%2012.24%202.02%2012.22%2033.35%2012.22%22%2F%3E%3C%2Fsvg%3E");
}
.pagetitle .pager li a:hover {
	background-color: #fff;
}
.pagetitle .pager li a:hover.next {
	background-position: right -webkit-calc((7.6rem - 3.2rem) / 4) center;
	background-position: right calc((7.6rem - 3.2rem) / 4) center;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2033.36%2022.92%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23519fd8%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2232.02%2011.16%2032.02%2010.97%2031.81%2010.97%2019.26%200%2018.44%20.94%2029.91%2010.97%200%2010.97%200%2012.22%2031.34%2012.22%2031.36%2012.24%2018.15%2021.91%2018.89%2022.92%2033.36%2012.33%2032.02%2011.16%22%2F%3E%3C%2Fsvg%3E");
}
.pagetitle .pager li a:hover.prev {
	background-position: -webkit-calc((7.6rem - 3.2rem) / 4) center;
	background-position: calc((7.6rem - 3.2rem) / 4) center;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2033.35%2022.92%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23519fd8%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2233.35%2012.22%2033.35%2010.97%203.44%2010.97%2014.91%20.94%2014.09%200%201.55%2010.97%201.34%2010.97%201.34%2011.16%200%2012.33%2014.47%2022.92%2015.21%2021.91%201.99%2012.24%202.02%2012.22%2033.35%2012.22%22%2F%3E%3C%2Fsvg%3E");
}
.pagetitle .pager li a span {
	position: absolute;
	left: -webkit-calc(100% + 1em);
	left: calc(100% + 1em);
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	white-space: nowrap;
	font-family: "Satoshi-Bold", sans-serif;
	line-height: 1.1;
	font-size: 1.1rem;
	color: #fff;
}
@media (max-width: 767px) {
	.pagetitle .pager li a span {
		left: 50%;
		top: -webkit-calc(100% + 0.75em);
		top: calc(100% + 0.75em);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
		font-size: 2vw;
		text-align: center;
	}
}

#keyperson .other h3, #talk .other h3, #project .other h3 {
	margin-bottom: 0.75em;
	font-size: 4.6rem;
}
@media (max-width: 767px) {
	#keyperson .other h3, #talk .other h3, #project .other h3 {
		font-size: 4.5vw;
	}
}

#vision .pagetitle h1, #employee-benefits .pagetitle h1, #faq .pagetitle h1, #requirements .pagetitle h1 {
	margin-top: 8rem;
	padding: 0 0 0 3em;
	background: url(../img/common/hole.png) left center/auto 100% no-repeat;
	font-size: 2rem;
	line-height: 1.4;
}
@media (max-width: 767px) {
	#vision .pagetitle h1, #employee-benefits .pagetitle h1, #faq .pagetitle h1, #requirements .pagetitle h1 {
		font-size: 2.75vw;
	}
}
#vision .pagetitle h1 span, #employee-benefits .pagetitle h1 span, #faq .pagetitle h1 span, #requirements .pagetitle h1 span {
	display: block;
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 2em;
}

#business .popup, #career .popup {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 3000;
	min-height: 60rem;
	overflow-y: auto;
	visibility: hidden;
	opacity: 0;
	-webkit-transition: 0.6s;
	-o-transition: 0.6s;
	transition: 0.6s;
}
#business .popup.is-open, #career .popup.is-open {
	visibility: visible;
	opacity: 1;
}
#business .popup .overlay, #career .popup .overlay {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background-color: #000;
	opacity: 0.65;
}
#business .popup .popbox, #career .popup .popbox {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 3010;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 64vw;
	padding: 5rem 7.5rem;
	background-color: #fff;
	border-radius: 5rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	color: #231815;
	visibility: hidden;
	opacity: 0;
	-webkit-transition: 0.6s;
	-o-transition: 0.6s;
	transition: 0.6s;
}
@media (max-width: 995px) {
	#business .popup .popbox, #career .popup .popbox {
		width: 90vw;
	}
}
#business .popup .popbox.is-open, #career .popup .popbox.is-open {
	visibility: visible;
	opacity: 1;
}
#business .popup .popbox .close, #career .popup .popbox .close {
	position: absolute;
	right: 5rem;
	top: 5rem;
}
@media (max-width: 767px) {
	#business .popup .popbox .close, #career .popup .popbox .close {
		right: 3.5vw;
		top: 3.5vw;
	}
}
#business .popup .popbox .close a, #career .popup .popbox .close a {
	display: block;
	width: 7rem;
	height: 7rem;
	border-radius: 50%;
	background-color: #eaf1fa;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
@media (max-width: 767px) {
	#business .popup .popbox .close a, #career .popup .popbox .close a {
		width: 10vw;
		height: 10vw;
	}
}
#business .popup .popbox .close a::before, #business .popup .popbox .close a::after, #career .popup .popbox .close a::before, #career .popup .popbox .close a::after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background-color: #231815;
}
#business .popup .popbox .close a::before, #career .popup .popbox .close a::before {
	width: 1px;
	height: 50%;
}
#business .popup .popbox .close a::after, #career .popup .popbox .close a::after {
	width: 50%;
	height: 1px;
}

@-webkit-keyframes tooltip-sp {
	0% {
		opacity: 0;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	1% {
		opacity: 1;
		-webkit-transform: translate(-50%, -100%);
		transform: translate(-50%, -100%);
	}
	7% {
		opacity: 1;
		-webkit-transform: translate(-50%, -100%);
		transform: translate(-50%, -100%);
	}
	8% {
		opacity: 0;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	100% {
		opacity: 0;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
}

@keyframes tooltip-sp {
	0% {
		opacity: 0;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	1% {
		opacity: 1;
		-webkit-transform: translate(-50%, -100%);
		transform: translate(-50%, -100%);
	}
	7% {
		opacity: 1;
		-webkit-transform: translate(-50%, -100%);
		transform: translate(-50%, -100%);
	}
	8% {
		opacity: 0;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	100% {
		opacity: 0;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
}
@media (max-width: 767px) {
	.formation {
		overflow: hidden;
	}
}
.formation .careerbox {
	position: relative;
	width: 80%;
	margin-left: 10%;
	margin-top: 10rem;
}
@media (max-width: 995px) {
	.formation .careerbox {
		width: auto;
		margin: 14rem 0 0;
	}
}
@media (max-width: 767px) {
	.formation .careerbox {
		margin: 13vw 0 0;
	}
}
.formation .careerbox .stage {
	position: relative;
}
@media (max-width: 767px) {
	.formation .careerbox .stage {
		margin-right: 0;
	}
}
.formation .careerbox .stage .dummy {
	position: absolute;
	left: 0;
	top: -16.5%;
}
.formation .careerbox .stage .people {
	position: absolute;
}
.formation .careerbox .stage .people.people01 {
	left: 14.2%;
	top: -3.8%;
	width: 21.4%;
}
.formation .careerbox .stage .people.people02 {
	left: 68.2%;
	top: -5.5%;
	width: 29.4%;
}
.formation .careerbox .stage .people.people03 {
	left: 36.3%;
	top: -10%;
	width: 26.8%;
}
.formation .careerbox .stage .people.people04 {
	left: 57.8%;
	top: 12.5%;
	width: 26.1%;
}
.formation .careerbox .stage .people.people05 {
	left: 18.3%;
	top: 18.5%;
	width: 32.3%;
}
.formation .careerbox .stage .people.people06 {
	left: 29.5%;
	top: 41.7%;
	width: 45.2%;
}
.formation .careerbox .stage .people.man {
	left: -1%;
	top: -1%;
	width: 28%;
}
.formation .careerbox .stage .people.woman {
	left: 67%;
	top: 35%;
	width: 27%;
}
.formation .careerbox .btn {
	position: absolute;
}
.formation .careerbox .btn.btn01 {
	left: 7%;
	top: 17.5%;
	width: 6%;
	height: 16%;
}
.formation .careerbox .btn.btn02 {
	left: 22%;
	top: -4.5%;
	width: 6%;
	height: 17%;
}
.formation .careerbox .btn.btn03 {
	left: 13.5%;
	top: -0.5%;
	width: 4%;
	height: 16%;
}
.formation .careerbox .btn.btn04 {
	left: 66%;
	top: 2.5%;
	width: 6.5%;
	height: 16%;
}
.formation .careerbox .btn.btn05 {
	left: 72%;
	top: -6%;
	width: 7%;
	height: 18%;
}
.formation .careerbox .btn.btn06 {
	left: 92.5%;
	top: 3.5%;
	width: 7%;
	height: 17%;
}
.formation .careerbox .btn.btn07 {
	left: 82%;
	top: -6%;
	width: 7%;
	height: 17%;
}
.formation .careerbox .btn.btn08 {
	left: 35%;
	top: -8%;
	width: 6%;
	height: 18%;
}
.formation .careerbox .btn.btn09 {
	left: 44%;
	top: -1%;
	width: 8%;
	height: 17%;
}
.formation .careerbox .btn.btn10 {
	left: 52.5%;
	top: -10.5%;
	width: 6%;
	height: 17%;
}
.formation .careerbox .btn.btn11 {
	left: 56.5%;
	top: 24%;
	width: 6%;
	height: 18%;
}
.formation .careerbox .btn.btn12 {
	left: 64.5%;
	top: 23%;
	width: 7.5%;
	height: 18%;
}
.formation .careerbox .btn.btn13 {
	left: 79.5%;
	top: 22%;
	width: 6.5%;
	height: 17%;
}
.formation .careerbox .btn.btn14 {
	left: 17%;
	top: 18%;
	width: 6%;
	height: 18%;
}
.formation .careerbox .btn.btn15 {
	left: 36%;
	top: 20%;
	width: 6.5%;
	height: 18%;
}
.formation .careerbox .btn.btn16 {
	left: 45.5%;
	top: 25%;
	width: 6.5%;
	height: 18%;
}
.formation .careerbox .btn.btn17 {
	left: 47%;
	top: 52%;
}
.formation .careerbox .btn.btn18 {
	left: 47%;
	top: 76%;
}
.formation .careerbox .btn.btn19 {
	left: 30.5%;
	top: 4%;
	width: 6.5%;
	height: 18%;
}
.formation .careerbox .btn.btn20 {
	left: 58.5%;
	top: -3.5%;
	width: 6.5%;
	height: 19%;
}
.formation .careerbox .btn.btn21 {
	left: 86.5%;
	top: 10.5%;
	width: 6%;
	height: 17%;
}
.formation .careerbox .btn.btn22 {
	left: 72.2%;
	top: 12.5%;
	width: 4%;
	height: 17%;
}
.formation .careerbox .btn.btn17, .formation .careerbox .btn.btn18 {
	width: 14%;
	height: 13%;
}
.formation .careerbox .btn.btn17 a, .formation .careerbox .btn.btn18 a {
	height: 4.8em;
	min-width: 100%;
	font-size: 1.9rem;
	border-radius: 1rem;
	border: 2px solid #231815;
	-webkit-transform: translate(-50%, 30%);
	-ms-transform: translate(-50%, 30%);
	transform: translate(-50%, 30%);
}
@media (max-width: 767px) {
	.formation .careerbox .btn.btn17 a, .formation .careerbox .btn.btn18 a {
		height: auto;
		font-size: 2.5vw;
		opacity: 1;
		-webkit-transform: translate(-50%, 0%);
		-ms-transform: translate(-50%, 0%);
		transform: translate(-50%, 0%);
		border-width: 1px;
	}
}
.formation .careerbox .btn.btn17 a.is-active, .formation .careerbox .btn.btn18 a.is-active {
	opacity: 1;
	-webkit-transform: translate(-50%, 0%);
	-ms-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
	-webkit-animation: none;
	animation: none;
}
.formation .careerbox .btn.btn17 a::before, .formation .careerbox .btn.btn17 a::after, .formation .careerbox .btn.btn18 a::before, .formation .careerbox .btn.btn18 a::after {
	display: none;
}
.formation .careerbox .btn a, .formation .careerbox .btn span {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	position: absolute;
	left: 50%;
	top: 0;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	padding: 0.4em 0.75em;
	border-radius: 0.5rem;
	border: 1px solid #231815;
	background-color: #fff;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.25;
	text-align: center;
	text-decoration: none;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	color: #231815;
	white-space: nowrap;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	opacity: 0;
}
.formation .careerbox .btn a.is-active, .formation .careerbox .btn span.is-active {
	opacity: 1;
	-webkit-transform: translate(-50%, -100%);
	-ms-transform: translate(-50%, -100%);
	transform: translate(-50%, -100%);
}
@media (max-width: 767px) {
	.formation .careerbox .btn a.is-active, .formation .careerbox .btn span.is-active {
		opacity: 0;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		-webkit-animation: tooltip-sp 32s infinite;
		animation: tooltip-sp 32s infinite;
	}
}
.formation .careerbox .btn a::before, .formation .careerbox .btn a::after, .formation .careerbox .btn span::before, .formation .careerbox .btn span::after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	border-width: 0.8em 0.4em;
	border-style: solid;
}
.formation .careerbox .btn a::before, .formation .careerbox .btn span::before {
	top: 100%;
	border-color: #231815 transparent transparent transparent;
}
.formation .careerbox .btn a::after, .formation .careerbox .btn span::after {
	top: -webkit-calc(100% - 3px);
	top: calc(100% - 3px);
	border-color: #fff transparent transparent transparent;
}
@media (max-width: 767px) {
	.formation .careerbox .btn a, .formation .careerbox .btn span {
		padding: 0.35em 0.75em;
		border: 1px solid #231815;
		font-size: 2vw;
	}
}
.formation .careerbox .btn:hover a {
	top: -1em;
}

.animatebox {
	position: relative;
}
.animatebox .carimg {
	position: absolute;
	left: 12%;
	top: 0%;
	width: 72.6%;
}
.animatebox .infraimg {
	position: absolute;
	left: 15%;
	top: 22%;
	width: 80%;
}
.animatebox .foodimg {
	position: absolute;
	left: 11%;
	top: 0%;
	width: 71.9%;
}
.animatebox .steelimg {
	position: relative;
}
.animatebox .shipimg {
	position: absolute;
	left: 57.5%;
	top: 31%;
	width: 47.6%;
	-webkit-transition: 2s cubic-bezier(0.5, 1, 0.89, 1);
	-o-transition: 2s cubic-bezier(0.5, 1, 0.89, 1);
	transition: 2s cubic-bezier(0.5, 1, 0.89, 1);
}
.animatebox .shipimg.is-active {
	left: 47.5%;
	top: 24.5%;
}
.animatebox .trackimg {
	position: absolute;
	left: 58%;
	top: 47%;
	width: 25.3%;
	-webkit-transition: 1s 0.5s cubic-bezier(0.37, 0, 0.63, 1);
	-o-transition: 1s 0.5s cubic-bezier(0.37, 0, 0.63, 1);
	transition: 1s 0.5s cubic-bezier(0.37, 0, 0.63, 1);
}
.animatebox .trackimg.is-active {
	left: 65%;
	top: 52%;
}
.animatebox .obj {
	position: absolute;
}
.animatebox .obj.car01 {
	left: 0%;
	top: 0%;
	width: 100%;
}
.animatebox .obj.car02 {
	left: 72.5%;
	top: 35%;
	width: 13.8%;
}
.animatebox .obj.car03 {
	left: 46%;
	top: 45%;
	width: 15.1%;
}
.animatebox .obj.car04 {
	left: 27%;
	top: 45%;
	width: 11.3%;
}
.animatebox .obj.car05 {
	left: 37.5%;
	top: 21%;
	width: 10%;
}
.animatebox .obj.infra01 {
	left: 3%;
	top: -3%;
	width: 48.7%;
}
.animatebox .obj.infra02 {
	left: 26%;
	top: 43%;
	width: 38%;
}
.animatebox .obj.food01 {
	left: 59%;
	top: 36%;
	width: 5.5%;
}
.animatebox .obj.food02 {
	left: 42%;
	top: 67%;
	width: 4.6%;
}
.animatebox .obj.food03 {
	left: 44%;
	top: 19%;
	width: 34.7%;
}
.animatebox .obj.steel01 {
	left: 68%;
	top: 64%;
	width: 5.2%;
}
.animatebox .obj.steel02 {
	left: 38%;
	top: 53%;
	width: 7%;
}

@-webkit-keyframes keyanime1 {
	0% {
		opacity: 0;
		-webkit-transform: scale(1, 1) rotate(0deg);
		transform: scale(1, 1) rotate(0deg);
	}
	50% {
		opacity: 1;
		-webkit-transform: scale(1, 1) rotate(0deg);
		transform: scale(1, 1) rotate(0deg);
	}
	99% {
		opacity: 1;
		-webkit-transform: scale(0.7, 1) rotate(-5deg);
		transform: scale(0.7, 1) rotate(-5deg);
	}
	100% {
		opacity: 0;
		-webkit-transform: scale(0.7, 1) rotate(-5deg);
		transform: scale(0.7, 1) rotate(-5deg);
	}
}

@keyframes keyanime1 {
	0% {
		opacity: 0;
		-webkit-transform: scale(1, 1) rotate(0deg);
		transform: scale(1, 1) rotate(0deg);
	}
	50% {
		opacity: 1;
		-webkit-transform: scale(1, 1) rotate(0deg);
		transform: scale(1, 1) rotate(0deg);
	}
	99% {
		opacity: 1;
		-webkit-transform: scale(0.7, 1) rotate(-5deg);
		transform: scale(0.7, 1) rotate(-5deg);
	}
	100% {
		opacity: 0;
		-webkit-transform: scale(0.7, 1) rotate(-5deg);
		transform: scale(0.7, 1) rotate(-5deg);
	}
}
@-webkit-keyframes keyanime2 {
	0% {
		opacity: 1;
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
	99% {
		opacity: 1;
		-webkit-transform: scale(0.5, 1);
		transform: scale(0.5, 1);
	}
	100% {
		opacity: 0;
		-webkit-transform: scale(0.5, 1);
		transform: scale(0.5, 1);
	}
}
@keyframes keyanime2 {
	0% {
		opacity: 1;
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
	99% {
		opacity: 1;
		-webkit-transform: scale(0.5, 1);
		transform: scale(0.5, 1);
	}
	100% {
		opacity: 0;
		-webkit-transform: scale(0.5, 1);
		transform: scale(0.5, 1);
	}
}
@-webkit-keyframes keyanime3 {
	0% {
		opacity: 1;
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
	99% {
		opacity: 1;
		-webkit-transform: scale(0, 1);
		transform: scale(0, 1);
	}
	100% {
		opacity: 0;
		-webkit-transform: scale(0, 1);
		transform: scale(0, 1);
	}
}
@keyframes keyanime3 {
	0% {
		opacity: 1;
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
	99% {
		opacity: 1;
		-webkit-transform: scale(0, 1);
		transform: scale(0, 1);
	}
	100% {
		opacity: 0;
		-webkit-transform: scale(0, 1);
		transform: scale(0, 1);
	}
}
@-webkit-keyframes keyanime4 {
	0% {
		opacity: 1;
		-webkit-transform: rotate(0deg) scale(1);
		transform: rotate(0deg) scale(1);
	}
	15% {
		opacity: 1;
		-webkit-transform: rotate(0deg) scale(1);
		transform: rotate(0deg) scale(1);
	}
	40% {
		opacity: 1;
		-webkit-transform: rotate(0deg) scale(0.8);
		transform: rotate(0deg) scale(0.8);
	}
	45% {
		opacity: 1;
		-webkit-transform: rotate(0deg) scale(0.8);
		transform: rotate(0deg) scale(0.8);
	}
	100% {
		opacity: 1;
		-webkit-transform: rotate(180deg) scale(0.8);
		transform: rotate(180deg) scale(0.8);
	}
}
@keyframes keyanime4 {
	0% {
		opacity: 1;
		-webkit-transform: rotate(0deg) scale(1);
		transform: rotate(0deg) scale(1);
	}
	15% {
		opacity: 1;
		-webkit-transform: rotate(0deg) scale(1);
		transform: rotate(0deg) scale(1);
	}
	40% {
		opacity: 1;
		-webkit-transform: rotate(0deg) scale(0.8);
		transform: rotate(0deg) scale(0.8);
	}
	45% {
		opacity: 1;
		-webkit-transform: rotate(0deg) scale(0.8);
		transform: rotate(0deg) scale(0.8);
	}
	100% {
		opacity: 1;
		-webkit-transform: rotate(180deg) scale(0.8);
		transform: rotate(180deg) scale(0.8);
	}
}
.hovericon {
	position: relative;
	width: 1em;
	margin: 0px auto;
	aspect-ratio: 1 / 2;
	background: url(../img/index/hole.svg) center/100% auto no-repeat;
}
.hovericon .keyanimate {
	right: 50%;
	top: 20%;
	width: 300%;
}
.hovericon .keyanimate.is-active .key1 {
	-webkit-animation: keyanime1 0.4s forwards linear;
	animation: keyanime1 0.4s forwards linear;
}
.hovericon .keyanimate.is-active .key2 {
	-webkit-animation: keyanime2 0.2s 0.4s forwards linear;
	animation: keyanime2 0.2s 0.4s forwards linear;
}
.hovericon .keyanimate.is-active .key3 {
	-webkit-animation: keyanime3 0.2s 0.6s forwards linear;
	animation: keyanime3 0.2s 0.6s forwards linear;
}
.hovericon .keyanimate.is-active .key4 {
	-webkit-animation: keyanime4 1.2s 0.8s forwards;
	animation: keyanime4 1.2s 0.8s forwards;
}

.hovericon.out {
	-webkit-transition: 0.3s 2s;
	-o-transition: 0.3s 2s;
	transition: 0.3s 2s;
}
.hovericon.out.is-active {
	opacity: 0 !important;
}

.keyanimate {
	position: absolute;
}
.keyanimate img {
	position: absolute;
	right: 0;
	top: 0;
	-webkit-transform-origin: right center;
	-ms-transform-origin: right center;
	transform-origin: right center;
	max-width: none;
}
.keyanimate img.key1 {
	width: 100%;
	opacity: 0;
}
.keyanimate img.key2 {
	width: 69.3%;
	opacity: 0;
}
.keyanimate img.key3 {
	width: 34%;
	opacity: 0;
}
.keyanimate .key4 {
	position: absolute;
	right: 0;
	top: 55%;
	width: 3%;
	aspect-ratio: 1 / 11;
	background-color: #1c1817;
	margin-right: -1.5%;
	opacity: 0;
}
.keyanimate.is-active .key1 {
	-webkit-animation: keyanime1 0.6s forwards linear;
	animation: keyanime1 0.6s forwards linear;
}
.keyanimate.is-active .key2 {
	-webkit-animation: keyanime2 0.3s 0.6s forwards linear;
	animation: keyanime2 0.3s 0.6s forwards linear;
}
.keyanimate.is-active .key3 {
	-webkit-animation: keyanime3 0.3s 0.9s forwards linear;
	animation: keyanime3 0.3s 0.9s forwards linear;
}
.keyanimate.is-active .key4 {
	-webkit-animation: keyanime4 1.8s 1.2s forwards;
	animation: keyanime4 1.8s 1.2s forwards;
}

/*-----------------------------------------------------------
	vision
-----------------------------------------------------------*/
#vision {
	background: url(../img/vision/bg.jpg) center/cover fixed;
}
@media (max-width: 767px) {
	#vision {
		background: none;
	}
	#vision::before {
		content: "";
		display: block;
		position: fixed;
		left: 0;
		top: 0;
		z-index: -1;
		width: 100%;
		height: 100vh;
		background: url(../img/vision/bg.jpg) center/auto 100% no-repeat;
	}
}
#vision .loading {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 50;
	background: url(../img/vision/bg.jpg) center/cover fixed;
	-webkit-transition: 1.2s;
	-o-transition: 1.2s;
	transition: 1.2s;
}
#vision .loading.is-end {
	opacity: 0;
}
#vision .loading.is-hidden {
	display: none;
}
@media (max-width: 767px) {
	#vision .loading {
		background: url(../img/vision/bg.jpg) center/auto 100% no-repeat;
	}
}
#vision .loading .hole {
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 8rem;
}
@media (max-width: 767px) {
	#vision .loading .hole {
		width: 15vw;
	}
}
#vision .loading .keyanimate {
	position: absolute;
	right: 50%;
	top: 50%;
	-webkit-transform: translateY(-5rem);
	-ms-transform: translateY(-5rem);
	transform: translateY(-5rem);
	width: 30rem;
}
@media (max-width: 767px) {
	#vision .loading .keyanimate {
		width: 33vw;
	}
}
#vision .pagetitle .breadcrumbs {
	position: relative;
	z-index: 100;
}
#vision .aim h2, #vision .attempt h2 {
	text-align: center;
	font-size: 4.6rem;
	line-height: 1.3;
}
@media (max-width: 767px) {
	#vision .aim h2, #vision .attempt h2 {
		font-size: 5.5vw;
	}
}
#vision .aim h2 span, #vision .attempt h2 span {
	display: block;
	margin-bottom: 1em;
	font-size: 0.5em;
	font-weight: 400;
}
@media (max-width: 767px) {
	#vision .aim h2 span, #vision .attempt h2 span {
		font-size: 0.65em;
	}
}
#vision .aim {
	padding-top: 1em;
}
@media (max-width: 767px) {
	#vision .aim {
		margin-top: 10vw;
	}
}
#vision .aim h2 span {
	margin-bottom: 0.5em;
}
#vision .aim .copy {
	margin-top: 0.5em;
	font-size: 3rem;
	line-height: 1.4;
	font-weight: 600;
	text-align: center;
}
#vision .aim .copy span {
	display: block;
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 2.2em;
	letter-spacing: 0.02em;
}
@media (max-width: 767px) {
	#vision .aim .copy span {
		font-size: 1.8em;
	}
}
#vision .aim .text {
	margin-top: 3em;
	font-size: 2.2rem;
	font-weight: 600;
	line-height: 2.15;
	text-align: center;
}
@media (max-width: 767px) {
	#vision .aim .text {
		font-size: 3.5vw;
	}
}
#vision .aim .text + .text {
	margin-top: 1.25em;
}
#vision .aim h3 {
	margin: 2.5em 0px -3.5em 7.5em;
	font-size: 3.2rem;
}
@media (max-width: 767px) {
	#vision .aim h3 {
		margin-bottom: 0.25em;
		margin-left: 0;
		font-size: 4.5vw;
	}
}
#vision .aim figure img {
	width: 73%;
	margin-left: 15%;
}
@media (max-width: 767px) {
	#vision .aim figure img {
		width: auto;
		margin-left: 0;
	}
}
#vision .message {
	margin-top: 20rem;
}
#vision .message h2 {
	margin-bottom: 0.75em;
	font-size: 4rem;
}
@media (max-width: 767px) {
	#vision .message h2 {
		margin-bottom: 0;
		font-size: 4.5vw;
	}
}
#vision .message figure {
	margin-bottom: 10rem;
}
#vision .message .keybox {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	margin-bottom: 10rem;
	font-weight: 600;
}
@media (max-width: 767px) {
	#vision .message .keybox {
		display: block;
	}
}
#vision .message .keybox figure {
	width: 48%;
	border-radius: 3.5rem;
	margin-bottom: 0;
	overflow: hidden;
}
@media (max-width: 767px) {
	#vision .message .keybox figure {
		width: auto;
		margin-top: 1.5em;
	}
}
#vision .message .keybox .textbox {
	width: 45%;
}
@media (max-width: 767px) {
	#vision .message .keybox .textbox {
		width: auto;
	}
}
#vision .message .keybox .textbox .sub {
	font-size: 3rem;
}
#vision .message .keybox .textbox .catch {
	margin-top: 1em;
	font-size: 5rem;
	line-height: 1.38;
	font-weight: 700;
}
@media (max-width: 767px) {
	#vision .message .keybox .textbox .catch {
		font-size: 4.5vw;
	}
}
#vision .message .keybox .textbox .department {
	margin-top: 1em;
	font-size: 2.9rem;
}
@media (max-width: 767px) {
	#vision .message .keybox .textbox .department {
		text-align: right;
		font-size: 3vw;
	}
}
#vision .message .keybox .textbox .name {
	font-size: 4.8rem;
	line-height: 1.2;
}
@media (max-width: 767px) {
	#vision .message .keybox .textbox .name {
		font-size: 4vw;
		text-align: right;
	}
}
#vision .message .read {
	font-size: 4.2rem;
	font-weight: 600;
	line-height: 1.3;
}
@media (max-width: 767px) {
	#vision .message .read {
		font-size: 5vw;
	}
}
#vision .message .text {
	margin-top: 0.5em;
	font-size: 2.4rem;
}
@media (max-width: 767px) {
	#vision .message .text {
		font-size: 3.5vw;
	}
}
#vision .message .text + .text {
	margin-top: 1.25em;
}
#vision .message .block + .block {
	margin-top: 8rem;
}
@media (max-width: 767px) {
	#vision .message .block + .block {
		margin-top: 10vw;
	}
}
#vision .message .block.flex {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
@media (max-width: 767px) {
	#vision .message .block.flex {
		display: block;
	}
}
#vision .message .block figure {
	width: 38%;
	border-radius: 3.5rem;
	margin-bottom: 0;
	overflow: hidden;
}
@media (max-width: 767px) {
	#vision .message .block figure {
		width: auto;
	}
}
#vision .message .block .textbox {
	width: -webkit-calc(62% - 5rem);
	width: calc(62% - 5rem);
}
@media (max-width: 767px) {
	#vision .message .block .textbox {
		width: auto;
		margin-top: 5vw;
	}
}
#vision .attempt {
	margin-top: 10rem;
}
#vision .attempt .read {
	margin-top: 1em;
	font-size: 2.4rem;
	text-align: center;
}
@media (max-width: 767px) {
	#vision .attempt .read {
		font-size: 3.5vw;
	}
}
#vision .attempt .items {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 4rem;
	width: 76%;
	margin: 5rem auto 0;
}
@media (max-width: 767px) {
	#vision .attempt .items {
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		width: auto;
	}
}
#vision .attempt .items .item {
	width: -webkit-calc((100% - 4rem * 2) / 3);
	width: calc((100% - 4rem * 2) / 3);
}
@media (max-width: 767px) {
	#vision .attempt .items .item {
		width: -webkit-calc((100% - 4rem) / 2);
		width: calc((100% - 4rem) / 2);
	}
}
#vision .attempt .items .item h3 {
	width: 70%;
	margin: 0 auto;
}
#vision .attempt .items .item .text {
	margin-top: 1.25em;
	font-size: 1.8rem;
	line-height: 1.72;
}
@media (max-width: 767px) {
	#vision .attempt .items .item .text {
		font-size: 3.25vw;
	}
}
#vision .demand {
	margin: 4rem auto 5rem;
	max-width: 42em;
}
#vision .demand h2 {
	margin-bottom: 0.5em;
	font-size: 3.6rem;
}
@media (max-width: 767px) {
	#vision .demand h2 {
		font-size: 4.5vw;
	}
}
#vision .demand ul {
	gap: 0.5em 1em;
	padding: 1.5em;
	background-color: #e8ecf7;
	border: 2px solid #447aac;
	color: #231815;
	font-size: 2.8rem;
	font-weight: 600;
	border-radius: 2rem;
}
@media (max-width: 767px) {
	#vision .demand ul {
		display: block;
		font-size: 3.75vw;
	}
}
#vision .demand ul li {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
@media (max-width: 767px) {
	#vision .demand ul li {
		-webkit-box-align: start;
		-webkit-align-items: flex-start;
		-ms-flex-align: start;
		align-items: flex-start;
		margin-bottom: 0.25em;
	}
}
#vision .demand ul li span {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 1.5em;
	height: 1.5em;
	border-radius: 50%;
	margin-right: 0.5em;
	background-color: #fff47e;
	font-family: "Satoshi-Bold", sans-serif;
}
@media (max-width: 767px) {
	#vision .demand ul li span {
		margin-top: 0.25em;
	}
}
#vision .demand .text {
	margin-top: 2em;
	font-size: 5rem;
	font-weight: 600;
	line-height: 1.48;
	text-align: center;
}
@media (max-width: 767px) {
	#vision .demand .text {
		font-size: 4.5vw;
	}
}

/*-----------------------------------------------------------
	business
-----------------------------------------------------------*/
#business .pagetitle {
	margin-bottom: -1rem;
}
@media (max-width: 767px) {
	#business .pagetitle {
		padding-bottom: 0;
	}
}
#business .pagetitle .sub {
	margin-top: 8rem;
	font-size: 2.8rem;
	font-weight: 600;
}
@media (max-width: 767px) {
	#business .pagetitle .sub {
		font-size: 3.25vw;
	}
}
#business .pagetitle h1 {
	font-size: 2.6rem;
	line-height: 1;
}
@media (max-width: 767px) {
	#business .pagetitle h1 {
		font-size: 3.5vw;
	}
}
#business .pagetitle h1 span {
	display: block;
	margin-bottom: 0.25em;
	font-size: 2.54em;
	font-family: "Satoshi-Bold", sans-serif;
}
#business .pagetitle .text {
	position: absolute;
	right: 0;
	top: 0.5em;
	font-size: 2.2rem;
	line-height: 1.83;
	font-weight: 600;
}
@media (max-width: 995px) {
	#business .pagetitle .text {
		font-size: 2.6rem;
	}
}
@media (max-width: 767px) {
	#business .pagetitle .text {
		position: static;
		margin-top: 1.5em;
		font-size: 3.2vw;
	}
}
@media (max-width: 767px) {
	#business .detail {
		overflow: hidden;
	}
}
#business .detail .businessmap {
	position: relative;
	height: 137rem;
	width: 87%;
	margin: 0 auto;
}
@media (max-width: 995px) {
	#business .detail .businessmap {
		width: auto;
		height: 92vw;
	}
}
@media (max-width: 767px) {
	#business .detail .businessmap {
		margin-top: 10vw;
		height: 92vw;
	}
}
#business .detail .businessmap h2 {
	position: absolute;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	min-height: 2.5em;
	padding-left: 2em;
	background: left center / auto 100% no-repeat;
	text-align: center;
	font-size: 2.8rem;
	line-height: 1.5;
	white-space: nowrap;
}
@media (max-width: 767px) {
	#business .detail .businessmap h2 {
		font-size: 4vw;
		text-align: left;
	}
}
#business .detail .businessmap h2.title01 {
	left: 69%;
	top: 45%;
	background-image: url(../img/business/hole01.svg);
}
@media (max-width: 995px) {
	#business .detail .businessmap h2.title01 {
		left: 70%;
		top: 46%;
	}
}
@media (max-width: 767px) {
	#business .detail .businessmap h2.title01 {
		left: 0%;
		top: 1%;
	}
}
#business .detail .businessmap h2.title02 {
	left: -4%;
	top: 11%;
	background-image: url(../img/business/hole02.svg);
}
@media (max-width: 995px) {
	#business .detail .businessmap h2.title02 {
		left: 0%;
	}
}
@media (max-width: 767px) {
	#business .detail .businessmap h2.title02 {
		top: 60%;
	}
}
#business .detail .businessmap h2 span {
	display: block;
	font-size: 0.82em;
}
#business .detail .businessmap .links a {
	display: block;
	position: absolute;
	-webkit-transform: rotate(-62deg) skewY(32deg);
	-ms-transform: rotate(-62deg) skewY(32deg);
	transform: rotate(-62deg) skewY(32deg);
	z-index: 100;
}
#business .detail .businessmap .links a.linkarea01 {
	left: 65%;
	top: 36%;
	width: 28%;
	height: 27%;
}
#business .detail .businessmap .links a.linkarea02 {
	left: 6%;
	top: 45%;
	width: 33%;
	height: 33%;
}
#business .detail .businessmap .links a.linkarea03 {
	left: 41%;
	top: 58%;
	width: 38%;
	height: 39%;
}
#business .detail .businessmap .links a.linkarea04 {
	left: 25%;
	top: 6%;
	width: 38%;
	height: 50%;
}
#business .detail .businessmap figure {
	position: absolute;
}
#business .detail .businessmap figure .normal {
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
#business .detail .businessmap figure .over {
	position: absolute;
	left: 0;
	bottom: 0;
	opacity: 0;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
#business .detail .businessmap figure figcaption {
	position: absolute;
	font-size: 3rem;
}
@media (max-width: 767px) {
	#business .detail .businessmap figure figcaption {
		font-size: 3.5vw;
	}
}
#business .detail .businessmap figure figcaption a {
	display: block;
	padding: 0.5em 1.5em;
	border-radius: 2rem;
	background-color: #231815;
	font-weight: 600;
	color: #fff;
	text-decoration: none;
	white-space: nowrap;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#business .detail .businessmap figure figcaption a {
		font-size: 3vw;
	}
}
#business .detail .businessmap figure figcaption a span {
	font-size: 0.83em;
}
#business .detail .businessmap figure figcaption a:hover, #business .detail .businessmap figure figcaption a.is-active {
	background-color: #fff;
	color: #231815;
}
#business .detail .businessmap figure.is-active .normal {
	opacity: 0;
}
#business .detail .businessmap figure.is-active .over {
	opacity: 1;
}
#business .detail .businessmap figure.is-active figcaption a {
	background-color: #fff;
	color: #231815;
}
#business .detail .businessmap figure.item01 {
	z-index: 5;
	top: 33%;
	left: 55%;
	width: 46.6%;
}
#business .detail .businessmap figure.item01 figcaption {
	left: 50%;
	bottom: 50rem;
}
@media (max-width: 995px) {
	#business .detail .businessmap figure.item01 figcaption {
		left: 45%;
		bottom: 45rem;
	}
}
@media (max-width: 767px) {
	#business .detail .businessmap figure.item01 figcaption {
		left: 18%;
		bottom: 104%;
	}
}
#business .detail .businessmap figure.item02 {
	z-index: 6;
	top: 34%;
	left: -6%;
	width: 55.5%;
}
#business .detail .businessmap figure.item02 figcaption {
	left: 3%;
	bottom: -4%;
}
@media (max-width: 995px) {
	#business .detail .businessmap figure.item02 figcaption {
		left: 8%;
		bottom: 1%;
	}
}
@media (max-width: 767px) {
	#business .detail .businessmap figure.item02 figcaption {
		left: 5%;
		bottom: -4%;
	}
}
#business .detail .businessmap figure.item03 {
	z-index: 8;
	top: 53%;
	left: 28%;
	width: 64.3%;
}
#business .detail .businessmap figure.item03 figcaption {
	left: -5rem;
	top: 46rem;
}
@media (max-width: 995px) {
	#business .detail .businessmap figure.item03 figcaption {
		left: 5rem;
	}
}
@media (max-width: 767px) {
	#business .detail .businessmap figure.item03 figcaption {
		left: 0%;
		top: 80%;
	}
}
#business .detail .businessmap figure.item04 {
	z-index: 4;
	top: 0%;
	left: 6%;
	width: 67.2%;
}
#business .detail .businessmap figure.item04 figcaption {
	left: 12rem;
	top: 15%;
}
@media (max-width: 995px) {
	#business .detail .businessmap figure.item04 figcaption {
		left: 7rem;
	}
}
@media (max-width: 767px) {
	#business .detail .businessmap figure.item04 figcaption {
		left: 0%;
		top: 10%;
	}
}
#business .detail .flow {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
@media (max-width: 995px) {
	#business .detail .flow {
		display: block;
		margin-top: 12rem;
	}
}
#business .detail .flow .textbox {
	width: 53%;
}
@media (max-width: 995px) {
	#business .detail .flow .textbox {
		width: auto;
	}
}
#business .detail .flow .text {
	font-size: 2.4rem;
	line-height: 2;
	font-weight: 600;
}
@media (max-width: 767px) {
	#business .detail .flow .text {
		font-size: 3.5vw;
	}
}
#business .detail .flow .text + .text {
	margin-top: 1.25em;
}
#business .detail .flow figure {
	width: 41%;
}
@media (max-width: 995px) {
	#business .detail .flow figure {
		width: 60%;
		margin: 0px auto 7rem;
	}
}
@media (max-width: 767px) {
	#business .detail .flow figure {
		width: auto;
	}
}
#business .detail .popup .popbox {
	height: 96svh;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox {
		left: 5vw;
		top: 5vw;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
		height: auto;
	}
}
#business .detail .popup .popbox .headline {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .headline {
		display: block;
	}
}
#business .detail .popup .popbox .headline .textbox {
	width: 45%;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .headline .textbox {
		width: auto;
	}
}
#business .detail .popup .popbox .headline .textbox h3 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	height: 2em;
	font-size: 2.8rem;
	padding-left: 1.75em;
	background: url(../img/business/hole03.svg) left center/auto 100% no-repeat;
	line-height: 1.1;
	white-space: nowrap;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .headline .textbox h3 {
		font-size: 4.75vw;
	}
}
#business .detail .popup .popbox .headline .textbox .text {
	margin-top: 1em;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.77;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .headline .textbox .text {
		font-size: 3.5vw;
	}
}
#business .detail .popup .popbox .headline figure {
	width: 56%;
	margin-right: -5rem;
	aspect-ratio: 1 / 0.853;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .headline figure {
		width: auto;
		margin: 5vw auto;
		aspect-ratio: unset;
	}
}
#business .detail .popup .popbox .member {
	width: 50%;
	margin-top: -6rem;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .member {
		width: auto;
		margin-top: 1em;
	}
}
#business .detail .popup .popbox .member h5 {
	font-size: 1.8rem;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .member h5 {
		font-size: 3.75vw;
	}
}
#business .detail .popup .popbox .member ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 0.5em;
}
#business .detail .popup .popbox .member ul li {
	width: -webkit-calc((100% - 1rem * 4) / 5);
	width: calc((100% - 1rem * 4) / 5);
}
#business .detail .popup .popbox .member ul li a {
	display: block;
	border-radius: 50%;
	overflow: hidden;
}
#business .detail .popup .popbox .member + .otherbox {
	margin-top: 4rem;
}
#business .detail .popup .popbox .scrollbox {
	height: -webkit-calc(100svh - 82rem);
	height: calc(100svh - 82rem);
	overflow-y: auto;
}
#business .detail .popup .popbox .scrollbox.long {
	height: -webkit-calc(100svh - 67rem);
	height: calc(100svh - 67rem);
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .scrollbox {
		height: auto;
	}
}
#business .detail .popup .popbox .scrollbox::-webkit-scrollbar {
	width: 1rem;
	background: transparent;
}
#business .detail .popup .popbox .scrollbox::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.5);
	width: 1rem;
}
#business .detail .popup .popbox .otherbox {
	margin-top: -6rem;
	padding: 2rem 4rem;
	border-radius: 1.4rem;
	background-color: #eae8e8;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .otherbox {
		padding: 5vw 4vw;
		margin-top: 1em;
	}
}
#business .detail .popup .popbox .items .item {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding-right: 1em;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .items .item {
		display: block;
	}
}
#business .detail .popup .popbox .items .item + .item {
	margin-top: 1em;
	padding-top: 1em;
	border-top: 1px solid #cdced2;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .items .item + .item {
		margin-top: 5vw;
		padding-top: 5vw;
	}
}
#business .detail .popup .popbox .items .item .textbox {
	width: 45%;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .items .item .textbox {
		width: auto;
	}
}
#business .detail .popup .popbox .items .item .textbox h4 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 2rem;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .items .item .textbox h4 {
		display: block;
		font-size: 4vw;
	}
}
#business .detail .popup .popbox .items .item .textbox h4 span {
	display: block;
	margin-right: 0.5em;
	padding: 0.15em 1em;
	border-radius: 0.7rem;
	font-size: 0.6em;
	color: #fff;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .items .item .textbox h4 span {
		width: 10em;
		text-align: center;
	}
}
#business .detail .popup .popbox .items .item .textbox h4 span.color01 {
	background-color: #231815;
}
#business .detail .popup .popbox .items .item .textbox h4 span.color02 {
	background-color: #c5bab8;
}
#business .detail .popup .popbox .items .item .textbox .text {
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.8;
}
@media (max-width: 767px) {
	#business .detail .popup .popbox .items .item .textbox .text {
		font-size: 3vw;
	}
}
#business .detail .popup .popbox .items .item .member {
	margin-top: 0;
}

/*-----------------------------------------------------------
	career
-----------------------------------------------------------*/
#career .pagetitle .wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding-top: 8rem;
}
@media (max-width: 995px) {
	#career .pagetitle .wrap {
		display: block;
	}
}
#career .pagetitle .sub {
	font-size: 2.8rem;
	font-weight: 600;
}
@media (max-width: 767px) {
	#career .pagetitle .sub {
		font-size: 3.25vw;
	}
}
#career .pagetitle h1 {
	font-size: 6.2rem;
	line-height: 1;
	font-weight: 400;
}
@media (max-width: 767px) {
	#career .pagetitle h1 {
		font-size: 7vw;
	}
}
#career .pagetitle h1 span {
	font-family: "Satoshi-Bold", sans-serif;
}
#career .pagetitle .title {
	margin-top: 0.15em;
	font-size: 2.6rem;
	font-weight: 600;
}
@media (max-width: 767px) {
	#career .pagetitle .title {
		font-size: 3.5vw;
	}
}
#career .pagetitle .text {
	padding-right: 5em;
	padding-top: 0.5em;
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1.8;
}
@media (max-width: 995px) {
	#career .pagetitle .text {
		padding-right: 0;
		margin-top: 1.5em;
		font-size: 3.2vw;
	}
}
#career .formation h2, #career .training h2, #career .se h2 {
	padding-left: 2em;
	background: url(../img/career/hole01.svg) left center/auto 100% no-repeat;
	font-size: 3.2rem;
	line-height: 1.35;
}
@media (max-width: 767px) {
	#career .formation h2, #career .training h2, #career .se h2 {
		font-size: 4.5vw;
	}
}
#career .formation h2 span, #career .training h2 span, #career .se h2 span {
	display: block;
	font-size: 0.65em;
}
#career .formation .text, #career .training .text, #career .se .text {
	margin-top: 2.5em;
	line-height: 2.27;
}
#career .formation .text + .text, #career .training .text + .text, #career .se .text + .text {
	margin-top: 1.25em;
}
#career .formation {
	margin-top: 8rem;
}
#career .training {
	margin-top: 12rem;
}
#career .training .readbox {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	margin-top: 5rem;
}
@media (max-width: 767px) {
	#career .training .readbox {
		display: block;
	}
}
#career .training .readbox figure {
	width: 16%;
}
@media (max-width: 767px) {
	#career .training .readbox figure {
		width: 80%;
		margin: 0px auto;
	}
}
#career .training .readbox .text {
	width: 80%;
}
@media (max-width: 767px) {
	#career .training .readbox .text {
		width: auto;
		margin-top: 1.5em;
	}
}
#career .training .seido {
	margin-top: 6rem;
}
#career .training .seido h3 {
	margin-bottom: 0.5em;
	font-size: 4rem;
}
@media (max-width: 767px) {
	#career .training .seido h3 {
		font-size: 5vw;
	}
}
#career .training .seido figure {
	position: relative;
}
@media (max-width: 767px) {
	#career .training .seido figure {
		margin-right: -5vw;
		padding: 0px 10vw 5vw 0;
		overflow: auto;
	}
	#career .training .seido figure::-webkit-scrollbar {
		height: 1.2vw;
	}
	#career .training .seido figure::-webkit-scrollbar-thumb {
		background-color: #fff47e;
	}
	#career .training .seido figure .simplebar-scrollbar::before {
		background-color: #fff47e;
		height: 1.2vw;
		opacity: 1;
		border-radius: 0;
	}
	#career .training .seido figure .simplebar-track.simplebar-vertical {
		height: 1.2vw;
	}
	#career .training .seido figure img {
		width: 200vw;
		max-width: none;
	}
}
#career .training .seido figure .btn {
	position: absolute;
}
#career .training .seido figure .btn.btn01 {
	width: 6.5%;
	height: 21.5%;
	left: 15.5%;
	top: 15.2%;
}
@media (max-width: 767px) {
	#career .training .seido figure .btn.btn01 {
		width: 13%;
		left: 33%;
		height: 19.5%;
	}
}
#career .training .seido figure .btn.btn02 {
	width: 9%;
	height: 15%;
	left: 15.5%;
	top: 76%;
}
@media (max-width: 767px) {
	#career .training .seido figure .btn.btn02 {
		width: 18.5%;
		left: 33%;
		top: 72%;
	}
}
#career .training .seido figure .btn.btn03, #career .training .seido figure .btn.btn04, #career .training .seido figure .btn.btn05 {
	width: 74%;
	height: 5%;
	left: 24.8%;
}
@media (max-width: 767px) {
	#career .training .seido figure .btn.btn03, #career .training .seido figure .btn.btn04, #career .training .seido figure .btn.btn05 {
		width: 155%;
		height: 4.1%;
		left: 52.5%;
	}
}
#career .training .seido figure .btn.btn03 {
	top: 76%;
}
@media (max-width: 767px) {
	#career .training .seido figure .btn.btn03 {
		top: 72.4%;
	}
}
#career .training .seido figure .btn.btn04 {
	top: 81.2%;
}
@media (max-width: 767px) {
	#career .training .seido figure .btn.btn04 {
		top: 77.2%;
	}
}
#career .training .seido figure .btn.btn05 {
	top: 86.4%;
}
@media (max-width: 767px) {
	#career .training .seido figure .btn.btn05 {
		top: 82.4%;
	}
}
#career .se {
	position: relative;
	margin-top: 9rem;
}
#career .se .img {
	margin-top: 6rem;
}
@media (max-width: 767px) {
	#career .se .img {
		margin-right: -5vw;
		padding: 0px 10vw 5vw 0;
		overflow: auto;
	}
	#career .se .img::-webkit-scrollbar {
		height: 1.5vw;
	}
	#career .se .img::-webkit-scrollbar-thumb {
		background-color: #fff47e;
	}
	#career .se .img .simplebar-scrollbar::before {
		background-color: #fff47e;
		height: 1.2vw;
		opacity: 1;
		border-radius: 0;
	}
	#career .se .img .simplebar-track.simplebar-vertical {
		height: 1.2vw;
	}
	#career .se .img img {
		width: 170vw;
		max-width: none;
	}
}
#career .se .btn {
	position: absolute;
	right: 0;
	top: 0;
}
#career .se .btn a {
	display: inline-block;
	padding: 0.5em 2em;
	border-radius: 2em;
	font-weight: 600;
	background-color: #fff47e;
	font-size: 2rem;
	text-decoration: none;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#career .se .btn a {
		font-size: 3vw;
	}
}
#career .se .btn a:hover {
	background-color: #fff;
	color: #519fd8;
}
#career .popup .popbox.seidopop {
	max-width: 55rem;
	padding: 5rem;
	border-radius: 2rem;
	border: 2px solid #000;
}
@media (max-width: 767px) {
	#career .popup .popbox.seidopop {
		max-width: none;
	}
}
#career .popup .popbox.seidopop h3 {
	margin-bottom: 0;
}
#career .popup .popbox.seidopop .close {
	right: 3rem;
	top: 3rem;
}
#career .popup .popbox.seidopop .close a {
	width: 4rem;
	height: 4rem;
	background-color: #fff47e;
}
@media (max-width: 767px) {
	#career .popup .popbox.seidopop .close a {
		width: 7vw;
		height: 7vw;
	}
}
#career .popup .popbox h3 {
	margin-bottom: 0.75em;
	padding-left: 2em;
	background: url(../img/career/hole.svg) left center/auto 100% no-repeat;
	font-size: 3.2rem;
}
#career .popup .popbox h3.iconb {
	background-image: url(../img/career/hole_b.svg);
}
#career .popup .popbox h3.icong {
	background-image: url(../img/career/hole_g.svg);
}
#career .popup .popbox h3.iconp {
	background-image: url(../img/career/hole_p.svg);
}
#career .popup .popbox h3.icono {
	background-image: url(../img/career/hole_o.svg);
}
#career .popup .popbox h3.icony {
	background-image: url(../img/career/hole_y.svg);
}
#career .popup .popbox h3.none {
	padding-left: 0;
	background: none;
}
@media (max-width: 767px) {
	#career .popup .popbox h3 {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		min-height: 2.5em;
		font-size: 4.5vw;
		line-height: 1.2;
		padding-right: 8vw;
	}
}
#career .popup .popbox .box {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
@media (max-width: 767px) {
	#career .popup .popbox .box {
		display: block;
	}
}
#career .popup .popbox .box figure {
	width: 20%;
	text-align: center;
}
@media (max-width: 767px) {
	#career .popup .popbox .box figure {
		width: 50%;
		margin: 0px auto;
		text-align: center;
	}
}
#career .popup .popbox .box figure img {
	max-height: 28rem;
	margin: 0 auto;
}
@media (max-width: 767px) {
	#career .popup .popbox .box figure img {
		max-height: 20svh;
	}
}
#career .popup .popbox .box .textbox {
	width: 75%;
	font-weight: 600;
	line-height: 1.77;
	font-size: 2.2rem;
}
@media (max-width: 767px) {
	#career .popup .popbox .box .textbox {
		width: auto;
		margin-top: 5vw;
		font-size: 3.5vw;
	}
}
#career .popup .popbox h4 {
	margin: 1.5em 0px 0.5em;
	font-size: 2.4rem;
}
@media (max-width: 767px) {
	#career .popup .popbox h4 {
		font-size: 4vw;
	}
}
#career .popup .popbox ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 2rem;
}
#career .popup .popbox ul li {
	width: 11rem;
}
@media (max-width: 767px) {
	#career .popup .popbox ul li {
		width: -webkit-calc((100% - 2rem * 4) / 5);
		width: calc((100% - 2rem * 4) / 5);
	}
}
#career .popup .popbox ul li a {
	display: block;
	border-radius: 50%;
	overflow: hidden;
}

/*-----------------------------------------------------------
	office
-----------------------------------------------------------*/
@-webkit-keyframes closeDoor {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
@keyframes closeDoor {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
#office .loading {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 200;
	width: 100%;
	height: 100%;
	background-color: #519fd8;
	overflow: hidden;
}
@media (max-width: 767px) {
	#office .loading {
		-webkit-perspective: 1000px;
		perspective: 1000px;
	}
}
#office .loading .left, #office .loading .right {
	position: absolute;
	bottom: 0;
	width: 50%;
	height: 100%;
	border-bottom: 1px solid #fff;
	-webkit-transform: translateX(0) skewY(0deg);
	-ms-transform: translateX(0) skewY(0deg);
	transform: translateX(0) skewY(0deg);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
@media (max-width: 767px) {
	#office .loading .left, #office .loading .right {
		-webkit-transform: rotateY(0deg);
		transform: rotateY(0deg);
		-webkit-transform-style: preserve-3d;
		transform-style: preserve-3d;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		border-top: 1px solid #fff;
	}
}
#office .loading .left {
	right: 50%;
	border-right: 1px solid #fff;
	-webkit-transform-origin: left bottom;
	-ms-transform-origin: left bottom;
	transform-origin: left bottom;
}
@media (max-width: 767px) {
	#office .loading .left {
		-webkit-transform-origin: left center;
		-ms-transform-origin: left center;
		transform-origin: left center;
	}
}
#office .loading .right {
	left: 50%;
	border-left: 1px solid #fff;
	-webkit-transform-origin: right bottom;
	-ms-transform-origin: right bottom;
	transform-origin: right bottom;
}
@media (max-width: 767px) {
	#office .loading .right {
		-webkit-transform-origin: right center;
		-ms-transform-origin: right center;
		transform-origin: right center;
	}
}
#office .loading.is-active {
	-webkit-animation: closeDoor 1s 2.5s ease-in-out forwards;
	animation: closeDoor 1s 2.5s ease-in-out forwards;
}
#office .loading.is-active .left {
	-webkit-animation: openLeft 3s ease-in-out forwards;
	animation: openLeft 3s ease-in-out forwards;
}
@media (max-width: 767px) {
	#office .loading.is-active .left {
		-webkit-animation: openLeft-sp 3s ease-in-out forwards;
		animation: openLeft-sp 3s ease-in-out forwards;
	}
}
#office .loading.is-active .right {
	-webkit-animation: openRight 3s ease-in-out forwards;
	animation: openRight 3s ease-in-out forwards;
}
@media (max-width: 767px) {
	#office .loading.is-active .right {
		-webkit-animation: openRight-sp 3s ease-in-out forwards;
		animation: openRight-sp 3s ease-in-out forwards;
	}
}
#office .loading.is-hidden {
	display: none;
}
#office .pagetitle .wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding-top: 8rem;
}
@media (max-width: 767px) {
	#office .pagetitle .wrap {
		display: block;
	}
}
#office .pagetitle h1 {
	font-size: 2.6rem;
	font-weight: 400;
	line-height: 1;
}
@media (max-width: 767px) {
	#office .pagetitle h1 {
		font-size: 3.5vw;
	}
}
#office .pagetitle h1 span {
	display: block;
	margin-bottom: 0.15em;
	font-size: 3.8em;
	font-family: "Satoshi-Bold", sans-serif;
	letter-spacing: 0.04em;
}
#office .pagetitle .read {
	font-size: 2.2rem;
}
@media (max-width: 767px) {
	#office .pagetitle .read {
		margin-top: 1.5em;
		font-size: 3.2vw;
	}
}
#office .detail {
	margin-top: 6rem;
}
#office .detail .areabox {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	position: relative;
}
@media (max-width: 995px) {
	#office .detail .areabox {
		display: block;
	}
}
#office .detail .areabox + .areabox {
	margin-top: 8rem;
}
#office .detail .areabox h2 {
	position: -webkit-sticky;
	position: sticky;
	left: 0;
	top: 16rem;
	width: 50%;
	border-radius: 2rem;
	overflow: hidden;
}
@media (max-width: 995px) {
	#office .detail .areabox h2 {
		position: relative;
		top: auto;
		left: auto;
		width: auto;
	}
}
#office .detail .areabox h2 .name {
	position: absolute;
	left: 5rem;
	bottom: 5rem;
	color: #fff;
	line-height: 1;
	font-weight: 400;
}
#office .detail .areabox h2 .name span {
	display: block;
	margin-bottom: 0.1em;
	font-size: 8rem;
	font-family: "Satoshi-Bold", sans-serif;
}
#office .detail .areabox .databox {
	position: relative;
	width: 44%;
}
@media (max-width: 995px) {
	#office .detail .areabox .databox {
		width: auto;
	}
}
#office .detail .areabox .databox .plus {
	position: absolute;
	right: 0;
	top: 0;
	z-index: 100;
}
@media (max-width: 767px) {
	#office .detail .areabox .databox .plus {
		right: 50%;
		-webkit-transform: translateX(50%);
		-ms-transform: translateX(50%);
		transform: translateX(50%);
		top: auto;
		bottom: 0;
	}
}
#office .detail .areabox .databox .plus a {
	display: block;
	position: relative;
	width: 3em;
	height: 3em;
	margin-left: auto;
	border: 1px solid #fff;
	background-color: #519fd8;
	border-radius: 50%;
}
#office .detail .areabox .databox .plus a::before, #office .detail .areabox .databox .plus a::after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background-color: #fff;
}
#office .detail .areabox .databox .plus a::before {
	width: 40%;
	height: 1px;
}
#office .detail .areabox .databox .plus a::after {
	width: 1px;
	height: 40%;
}
#office .detail .areabox .databox .read {
	padding: 7em 0 6em;
}
@media (max-width: 995px) {
	#office .detail .areabox .databox .read {
		padding: 2em 0 4em;
	}
}
#office .detail .areabox .databox figure img {
	border-radius: 1.7rem;
	overflow: hidden;
}
#office .detail .areabox .databox figure .swiper-pagination {
	position: static;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 1rem;
	margin-top: 2.5rem;
}
@media (max-width: 767px) {
	#office .detail .areabox .databox figure .swiper-pagination {
		margin-top: 3.5vw;
	}
}
#office .detail .areabox .databox figure .swiper-pagination .swiper-pagination-bullet {
	background-color: #fff;
	opacity: 1;
	width: 1.6rem;
	height: 1.6rem;
}
@media (max-width: 767px) {
	#office .detail .areabox .databox figure .swiper-pagination .swiper-pagination-bullet {
		width: 3.5vw;
		height: 3.5vw;
	}
}
#office .detail .areabox .databox figure .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: #447aac;
}
#office .detail .areabox .databox .inbox {
	display: none;
}
#office .detail .areabox .databox h3 {
	margin-top: 0.75em;
	font-size: 2.6rem;
	font-weight: 400;
}
@media (max-width: 767px) {
	#office .detail .areabox .databox h3 {
		font-size: 4vw;
	}
}
#office .detail .areabox .databox h3.first {
	margin-top: 0;
	margin-bottom: 1em;
}
#office .detail .areabox .databox .data + .data {
	margin-top: 7rem;
}
#office .detail .areabox.is-open .databox .inbox {
	display: block;
}
@media (max-width: 767px) {
	#office .detail .areabox.is-open .databox .inbox {
		padding-bottom: 15vw;
	}
}
#office .detail .areabox.is-open .databox .plus {
	position: -webkit-sticky;
	position: sticky;
	top: 16rem;
}
@media (max-width: 767px) {
	#office .detail .areabox.is-open .databox .plus {
		top: 90dvh;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
	}
}
@media (max-width: 767px) {
	#office .detail .areabox.is-open .databox .plus a {
		margin: 0px auto;
	}
}
#office .detail .areabox.is-open .databox .plus a::after {
	display: none;
}

/*-----------------------------------------------------------
	data
-----------------------------------------------------------*/
#data .pagetitle .wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 1em 0px 0.5em;
}
@media (max-width: 767px) {
	#data .pagetitle .wrap {
		display: block;
	}
}
#data .pagetitle .wrap h1 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 3.8rem;
}
@media (max-width: 767px) {
	#data .pagetitle .wrap h1 {
		font-size: 5vw;
	}
}
#data .pagetitle .wrap h1 span {
	font-family: "Satoshi-Black", sans-serif;
	font-size: 1.17em;
}
#data .pagetitle .wrap .text {
	font-size: 2.6rem;
	font-weight: 600;
}
@media (max-width: 767px) {
	#data .pagetitle .wrap .text {
		font-size: 3vw;
	}
}
#data .list {
	padding-bottom: 10rem;
}
#data .list .items {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#data .list .items .item {
	width: -webkit-calc(100% / 7);
	width: calc(100% / 7);
	padding: 2rem 0px;
	border-left: 1px solid #fff;
	border-top: 1px solid #fff;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-weight: 600;
	text-align: center;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 995px) {
	#data .list .items .item {
		width: -webkit-calc(100% / 5);
		width: calc(100% / 5);
	}
}
@media (max-width: 767px) {
	#data .list .items .item {
		width: -webkit-calc(100% / 2);
		width: calc(100% / 2);
		padding: 5vw 0;
	}
}
#data .list .items .item:last-child {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}
@media (max-width: 995px) {
	#data .list .items .item:last-child {
		width: -webkit-calc((100% / 5) * 2);
		width: calc((100% / 5) * 2);
	}
}
@media (max-width: 767px) {
	#data .list .items .item:last-child {
		width: -webkit-calc(100% / 2);
		width: calc(100% / 2);
	}
}
#data .list .items .item:hover {
	background-color: #fff47e;
}
#data .list .items .item:hover .num img, #data .list .items .item:hover .title img {
	opacity: 0;
}
#data .list .items .item:hover .title a {
	color: #519fd8;
}
#data .list .items .item:hover .sub {
	color: #519fd8;
}
#data .list .items .item:hover .btn a {
	color: #519fd8;
}
#data .list .items .item:hover .btn a::after {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2044.84%2044.84%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23519fd8%3B%20%7D%20.cls-2%20%7B%20fill%3A%20none%3B%20stroke%3A%20%23fff%3B%20stroke-miterlimit%3A%2010%3B%20stroke-width%3A%20.87px%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ccircle%20class%3D%22cls-1%22%20cx%3D%2222.42%22%20cy%3D%2222.42%22%20r%3D%2222.42%22%2F%3E%20%3Cline%20class%3D%22cls-2%22%20x1%3D%2211.5%22%20y1%3D%2221.84%22%20x2%3D%2232.19%22%20y2%3D%2221.84%22%2F%3E%20%3Cline%20class%3D%22cls-2%22%20x1%3D%2225.58%22%20y1%3D%2214.08%22%20x2%3D%2233.05%22%20y2%3D%2222.42%22%2F%3E%20%3Cline%20class%3D%22cls-2%22%20x1%3D%2225.58%22%20y1%3D%2230.37%22%20x2%3D%2233.05%22%20y2%3D%2222.03%22%2F%3E%3C%2Fsvg%3E");
}
#data .list .items .item:hover:nth-child(1) .num {
	background-image: url(../img/data/num05_o.svg);
}
#data .list .items .item:hover:nth-child(2) .num {
	background-image: url(../img/data/num09_o.svg);
}
#data .list .items .item:hover:nth-child(3) .num {
	background-image: url(../img/data/num08_o.svg);
}
#data .list .items .item:hover:nth-child(4) .title a {
	background-image: url(../img/data/num15_o.svg);
}
#data .list .items .item:hover:nth-child(5) .num {
	background-image: url(../img/data/num01_o.svg);
}
#data .list .items .item:hover:nth-child(6) .num {
	background-image: url(../img/data/num02_o.svg);
}
#data .list .items .item:hover:nth-child(7) .num {
	background-image: url(../img/data/num06_o.svg);
}
#data .list .items .item:hover:nth-child(8) .num {
	background-image: url(../img/data/num07_o.svg);
}
#data .list .items .item:hover:nth-child(9) .num {
	background-image: url(../img/data/num10_o.svg);
}
#data .list .items .item:hover:nth-child(10) .num {
	background-image: url(../img/data/num11_o.svg);
}
#data .list .items .item:hover:nth-child(11) .title a {
	background-image: url(../img/data/num12_o.svg);
}
#data .list .items .item:hover:nth-child(12) .title a {
	background-image: url(../img/data/num13_o.svg);
}
#data .list .items .item:hover:nth-child(13) .title a {
	background-image: url(../img/data/num14_o.svg);
}
#data .list .items .item figure {
	width: 74%;
	margin: 0px auto;
}
#data .list .items .item .num, #data .list .items .item .title {
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
#data .list .items .item .num img, #data .list .items .item .title img {
	height: 4rem;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#data .list .items .item .num img, #data .list .items .item .title img {
		height: 6vw;
	}
}
#data .list .items .item .num.l2 img, #data .list .items .item .title.l2 img {
	height: 6.2rem;
}
@media (max-width: 767px) {
	#data .list .items .item .num.l2 img, #data .list .items .item .title.l2 img {
		height: 10.5vw;
	}
}
#data .list .items .item .num.l1 img, #data .list .items .item .title.l1 img {
	height: 3rem;
}
@media (max-width: 767px) {
	#data .list .items .item .num.l1 img, #data .list .items .item .title.l1 img {
		height: 5.5vw;
	}
}
#data .list .items .item .num.l2mini, #data .list .items .item .title.l2mini {
	margin-top: 0.4em;
}
#data .list .items .item .num.l2mini img, #data .list .items .item .title.l2mini img {
	height: 4.6rem;
}
@media (max-width: 767px) {
	#data .list .items .item .num.l2mini img, #data .list .items .item .title.l2mini img {
		height: 10.5vw;
	}
}
#data .list .items .item .title {
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	font-size: 1.9rem;
	line-height: 1.1;
}
@media (max-width: 995px) {
	#data .list .items .item .title {
		font-size: 2.4rem;
	}
}
@media (max-width: 767px) {
	#data .list .items .item .title {
		margin-top: 0.5em;
		margin-bottom: 0.25em;
		font-size: 3.25vw;
	}
}
#data .list .items .item .title.mt {
	padding-top: 1em;
	line-height: 0;
}
#data .list .items .item .title.mt2 {
	margin-top: 0.6em;
}
@media (max-width: 995px) {
	#data .list .items .item .title.mt2 {
		padding-top: 0;
	}
}
#data .list .items .item .title a {
	display: block;
	color: #fff;
	text-decoration: none;
	background: center / auto 100% no-repeat;
}
#data .list .items .item .num {
	line-height: 0;
	background: center / auto 100% no-repeat;
}
#data .list .items .item .sub {
	margin-top: 0.5em;
	font-size: 1.2rem;
	line-height: 1.25;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 995px) {
	#data .list .items .item .sub {
		font-size: 1.8rem;
	}
}
@media (max-width: 767px) {
	#data .list .items .item .sub {
		margin-top: 0.75em;
		font-size: 2.5vw;
	}
}
#data .list .items .item .btn a {
	display: block;
	color: #fff;
	font-size: 2rem;
	font-weight: 600;
	text-decoration: none;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 995px) {
	#data .list .items .item .btn a {
		font-size: 2.6rem;
	}
}
@media (max-width: 767px) {
	#data .list .items .item .btn a {
		font-size: 3.5vw;
	}
}
#data .list .items .item .btn a::after {
	content: "";
	display: block;
	width: 2em;
	height: 2em;
	margin: 1em auto 0;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2044.84%2044.84%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20none%3B%20stroke%3A%20%23231815%3B%20stroke-miterlimit%3A%2010%3B%20stroke-width%3A%20.87px%3B%20%7D%20.cls-2%20%7B%20fill%3A%20%23fff47e%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ccircle%20class%3D%22cls-2%22%20cx%3D%2222.42%22%20cy%3D%2222.42%22%20r%3D%2222.42%22%2F%3E%20%3Cline%20class%3D%22cls-1%22%20x1%3D%2211.5%22%20y1%3D%2221.84%22%20x2%3D%2232.19%22%20y2%3D%2221.84%22%2F%3E%20%3Cline%20class%3D%22cls-1%22%20x1%3D%2225.58%22%20y1%3D%2214.08%22%20x2%3D%2233.05%22%20y2%3D%2222.42%22%2F%3E%20%3Cline%20class%3D%22cls-1%22%20x1%3D%2225.58%22%20y1%3D%2230.37%22%20x2%3D%2233.05%22%20y2%3D%2222.03%22%2F%3E%3C%2Fsvg%3E") center/100% no-repeat;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
#data .detail {
	padding-bottom: 10rem;
}
#data .detail .mainbox {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	position: relative;
	min-height: 64rem;
}
@media (max-width: 995px) {
	#data .detail .mainbox {
		display: block;
		padding-top: 9vw;
		margin-top: 3rem;
	}
}
@media (max-width: 767px) {
	#data .detail .mainbox {
		padding-top: 15vw;
	}
}
#data .detail .mainbox .items {
	position: relative;
	width: 59%;
	height: 67rem;
}
@media (max-width: 995px) {
	#data .detail .mainbox .items {
		width: 80%;
		margin: 0 auto;
	}
}
@media (max-width: 767px) {
	#data .detail .mainbox .items {
		width: auto;
		height: 57vw;
	}
}
#data .detail .mainbox .items .item {
	position: absolute;
	font-weight: 600;
	white-space: nowrap;
}
#data .detail .mainbox .items .item .textbox {
	position: absolute;
	width: auto;
}
@media (max-width: 767px) {
	#data .detail .mainbox .items .item .textbox {
		margin-top: 0;
	}
}
#data .detail .mainbox .items .item .title {
	margin-bottom: 0.5em;
	font-size: 3rem;
	line-height: 1.1;
}
#data .detail .mainbox .items .item .num {
	line-height: 0;
}
#data .detail .mainbox .items .item .num img {
	max-width: none;
}
#data .detail .mainbox .items .item .sub {
	margin-top: 0.5em;
	font-size: 2rem;
	line-height: 1.3;
}
#data .detail .mainbox > .textbox {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 37%;
	padding: 2em 0;
}
@media (max-width: 995px) {
	#data .detail .mainbox > .textbox {
		width: auto;
		margin-top: 3vw;
		padding: 0;
	}
}
@media (max-width: 767px) {
	#data .detail .mainbox > .textbox {
		margin-top: 5vw;
	}
}
#data .detail .mainbox > .textbox h1 {
	font-size: 4.4rem;
}
@media (max-width: 995px) {
	#data .detail .mainbox > .textbox h1 {
		position: absolute;
		left: 0;
		top: 0;
	}
}
@media (max-width: 767px) {
	#data .detail .mainbox > .textbox h1 {
		font-size: 5vw;
	}
}
#data .detail .mainbox > .textbox .text, #data .detail .mainbox > .textbox dl {
	margin-top: 0.5em;
	font-size: 2rem;
	line-height: 1.8;
}
@media (max-width: 767px) {
	#data .detail .mainbox > .textbox .text, #data .detail .mainbox > .textbox dl {
		font-size: 3.5vw;
	}
}
#data .detail .mainbox > .textbox .textlist {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 0.5em 2em;
	margin-top: 0.5em;
}
#data .detail .mainbox > .textbox dl dt {
	margin-top: 0.5em;
	font-weight: 600;
}
#data .detail .mainbox > .textbox dl dd {
	font-size: 0.85em;
}
#data .detail .mainbox > .textbox table {
	width: 100%;
	margin-top: 1em;
	font-size: 0.8em;
}
#data .detail .mainbox > .textbox table th, #data .detail .mainbox > .textbox table td {
	padding: 0.5em 0.75em;
	border-bottom: 1px solid #fff;
	font-weight: 400;
	text-align: center;
	line-height: 1.5;
}
#data .detail .mainbox > .textbox table td {
	width: 42%;
	border-left: 1px solid #fff;
}
@media (max-width: 767px) {
	#data .detail .mainbox > .textbox table td {
		width: auto;
	}
}
#data .detail .mainbox > .textbox table tr:first-child th {
	background-color: rgba(255, 255, 255, 0.2);
}
#data .detail .mainbox > .textbox table tr:first-child th + th {
	border-left: 1px solid #fff;
}
@media (max-width: 767px) {
	#data .detail .mainbox > .textbox table tr:first-child th:nth-child(1) {
		width: 4em;
	}
}
@media (max-width: 767px) {
	#data .detail .mainbox > .textbox table tr:first-child th:nth-child(2) {
		width: 11em;
	}
}
#data .detail .mainbox > .textbox .next {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-top: 1em;
	padding: 0.5em;
	background-color: #fff47e;
	border-radius: 3em;
	font-size: 2.6rem;
	font-weight: 600;
	overflow: hidden;
	white-space: nowrap;
}
@media (max-width: 767px) {
	#data .detail .mainbox > .textbox .next {
		font-size: 3.5vw;
	}
}
#data .detail .mainbox > .textbox .next li + li {
	border-left: 1px solid #e1d15f;
}
#data .detail .mainbox > .textbox .next a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	color: #519fd8;
	font-weight: 600;
	text-decoration: none;
	line-height: 1;
}
#data .detail .mainbox > .textbox .next a .num {
	display: block;
	width: 1.5em;
	height: 100%;
	text-align: center;
}
#data .detail .mainbox > .textbox .next a .name {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	width: 0;
	overflow: hidden;
}
#data .detail .mainbox > .textbox .next a.current .name {
	width: auto;
	padding-right: 0.5em;
}
#data .detail .mainbox > .textbox .next a:hover::after {
	-webkit-transform: translateX(0.25em);
	-ms-transform: translateX(0.25em);
	transform: translateX(0.25em);
}
#data .detail .mainbox .link {
	position: absolute;
	right: 0;
	top: 0;
}
#data .detail .mainbox .link a {
	display: block;
	font-size: 1.2rem;
	color: #fff;
	text-decoration: none;
	text-align: center;
	font-weight: 700;
}
@media (max-width: 767px) {
	#data .detail .mainbox .link a {
		font-size: 2vw;
	}
}
#data .detail .mainbox .link a::before {
	content: "";
	display: block;
	width: 6.2em;
	height: 6.2em;
	margin: 0 auto 0.75em;
	border: 2px solid #fff;
	border-radius: 50%;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2036.41%2027.77%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20none%3B%20stroke%3A%20%23fff%3B%20stroke-linecap%3A%20round%3B%20stroke-linejoin%3A%20round%3B%20stroke-width%3A%202px%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cline%20class%3D%22cls-1%22%20x1%3D%2235.41%22%20y1%3D%2214.15%22%20x2%3D%221.06%22%20y2%3D%2214.15%22%2F%3E%20%3Cpolyline%20class%3D%22cls-1%22%20points%3D%2213.88%2026.77%201%2013.88%2013.88%201%22%2F%3E%3C%2Fsvg%3E") center/41% auto no-repeat;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#data .detail .mainbox .link a::before {
		width: 4em;
		height: 4em;
		margin-bottom: 0.5em;
		border-width: 1px;
	}
}
@media (min-width: 996px) {
	#data .detail .mainbox .link a:hover::before {
		background-position: 27% center;
		background-color: #fff;
		background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2036.41%2027.77%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20none%3B%20stroke%3A%20%23519fd8%3B%20stroke-linecap%3A%20round%3B%20stroke-linejoin%3A%20round%3B%20stroke-width%3A%202px%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cline%20class%3D%22cls-1%22%20x1%3D%2235.41%22%20y1%3D%2214.15%22%20x2%3D%221.06%22%20y2%3D%2214.15%22%2F%3E%20%3Cpolyline%20class%3D%22cls-1%22%20points%3D%2213.88%2026.77%201%2013.88%2013.88%201%22%2F%3E%3C%2Fsvg%3E");
	}
}
#data .detail .btn {
	margin-top: -2rem;
	text-align: right;
}
@media (max-width: 767px) {
	#data .detail .btn {
		margin-top: 5vw;
	}
}
#data .detail .btn a {
	display: inline-block;
	padding: 0.5em 2em;
	border-radius: 2em;
	font-weight: 600;
	background-color: #fff47e;
	font-size: 2rem;
	text-decoration: none;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#data .detail .btn a {
		font-size: 3vw;
	}
}
#data .detail .btn a:hover {
	background-color: #fff;
	color: #519fd8;
}
#data .detail .dot {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 3rem;
	margin-top: -3rem;
}
@media (max-width: 995px) {
	#data .detail .dot {
		margin-top: 5rem;
	}
}
@media (max-width: 767px) {
	#data .detail .dot {
		margin-top: 7.5vw;
	}
}
#data .detail .dot a {
	display: block;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	background-color: #fff;
}
#data .detail .dot a.is-active {
	background-color: #fff47e;
}
@media (max-width: 767px) {
	#data .detail.data01 .items {
		margin-top: 5vw;
	}
}
#data .detail.data01 .item01 {
	left: 35%;
	top: 0%;
	width: 27%;
}
@media (max-width: 767px) {
	#data .detail.data01 .item01 {
		left: 34%;
		top: -8%;
	}
}
#data .detail.data01 .item01 .textbox {
	left: -99%;
	top: 25%;
	text-align: center;
}
#data .detail.data01 .item01 .textbox img {
	height: 6.2rem;
}
#data .detail.data01 .item02 {
	left: 7%;
	top: 55%;
	width: 22%;
}
@media (max-width: 767px) {
	#data .detail.data01 .item02 {
		left: 5%;
		top: 48%;
	}
}
#data .detail.data01 .item02 .textbox {
	left: 93%;
	top: 81%;
	text-align: center;
}
#data .detail.data01 .item02 .textbox img {
	height: 6.2rem;
}
#data .detail.data01 .item03 {
	left: 67%;
	top: 42%;
	width: 27.5%;
}
@media (max-width: 767px) {
	#data .detail.data01 .item03 {
		top: 56%;
	}
}
#data .detail.data01 .item03 .textbox {
	left: 1%;
	top: -60%;
	text-align: center;
}
#data .detail.data01 .item03 .textbox img {
	height: 6.2rem;
}
@media (max-width: 995px) {
	#data .detail.data02 .items {
		height: 61rem;
	}
}
#data .detail.data02 .item01 {
	left: 73%;
	top: 11%;
	width: 25%;
}
@media (max-width: 767px) {
	#data .detail.data02 .item01 {
		top: 24%;
	}
}
#data .detail.data02 .item01 .textbox {
	left: -85%;
	top: 3%;
}
#data .detail.data02 .item01 .textbox img {
	height: 6.5rem;
}
#data .detail.data02 .item02 {
	left: 27%;
	top: 0%;
	width: 20%;
}
#data .detail.data02 .item02 .textbox {
	left: -67%;
	top: 103%;
}
#data .detail.data02 .item02 .textbox img {
	height: 5.6rem;
}
#data .detail.data02 .item03 {
	left: 51.5%;
	top: 48%;
	width: 13.6%;
}
@media (max-width: 767px) {
	#data .detail.data02 .item03 {
		top: 64%;
	}
}
#data .detail.data02 .item03 .textbox {
	left: 124%;
	top: 24%;
}
#data .detail.data02 .item03 .textbox img {
	height: 6.6rem;
}
#data .detail.data02 .item04 {
	left: 0%;
	top: 0%;
	width: 20%;
}
#data .detail.data02 .item04 .textbox {
	left: -6%;
	top: 102%;
}
#data .detail.data02 .item04 .textbox img {
	height: 6.2rem;
}
#data .detail.data02 .item04 .textbox .title {
	font-size: 2.4rem;
}
#data .detail.data02 .item04 .textbox .sub {
	font-size: 1.8rem;
}
@media (max-width: 995px) {
	#data .detail.data03 .items {
		height: 65rem;
	}
}
@media (max-width: 767px) {
	#data .detail.data03 .items {
		height: 62vw;
	}
}
#data .detail.data03 .item01 {
	left: 0%;
	top: 3%;
	width: 45%;
}
#data .detail.data03 .item01 .textbox {
	left: 10%;
	top: 75%;
}
#data .detail.data03 .item01 .textbox img {
	height: 5.5rem;
}
#data .detail.data03 .item01 .textbox .sub {
	text-align: center;
}
#data .detail.data03 .item02 {
	left: 51%;
	top: 0%;
	width: 27%;
}
#data .detail.data03 .item02 .textbox {
	left: 0%;
	top: 32%;
	text-align: center;
}
#data .detail.data03 .item02 .textbox img {
	height: 5.8rem;
}
#data .detail.data03 .item02 .model {
	margin: 15rem 0 0.5em;
	font-size: 2rem;
	font-weight: 700;
}
#data .detail.data03 .item02 .tablebox {
	width: 190%;
}
#data .detail.data03 .item02 table {
	table-layout: fixed;
	font-size: 1.4rem;
}
#data .detail.data03 .item02 table th, #data .detail.data03 .item02 table td {
	padding: 0.25em 0.75em;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	font-weight: 400;
}
#data .detail.data03 .item02 table td {
	border-left: 1px solid #fff;
}
#data .detail.data03 .item02 table td:nth-child(2) {
	width: 10em;
	text-align: center;
}
#data .detail.data03 .item02 table tr:first-child th {
	border-bottom: 1px solid white;
	border-left: 1px solid #fff;
	text-align: center;
}
#data .detail.data03 .item02 table tr:first-child th:first-child {
	border-left: none;
}
#data .detail.data03 .item02 table tr:last-child th, #data .detail.data03 .item02 table tr:last-child td {
	border-bottom: none;
}
@media (max-width: 995px) {
	#data .detail.data04 .items {
		margin: 0 auto 10rem;
	}
}
#data .detail.data04 .item01 {
	left: 47%;
	top: -2%;
	width: 25%;
}
@media (max-width: 995px) {
	#data .detail.data04 .item01 {
		top: 3%;
	}
}
#data .detail.data04 .item01 .textbox {
	left: -110%;
	top: 13%;
	text-align: center;
}
@media (max-width: 995px) {
	#data .detail.data04 .item01 .textbox {
		left: -120%;
	}
}
#data .detail.data04 .item01 .textbox img {
	height: 6.2rem;
}
#data .detail.data04 .item03 {
	left: 20%;
	top: 34%;
	width: 35%;
}
@media (max-width: 995px) {
	#data .detail.data04 .item03 {
		top: 43%;
	}
}
#data .detail.data04 .item03 .textbox {
	left: 113%;
	top: 26%;
	text-align: center;
}
#data .detail.data04 .item03 .textbox img {
	height: 7rem;
}
#data .detail.data05 .mainbox .items {
	width: 48%;
	height: auto;
}
@media (max-width: 995px) {
	#data .detail.data05 .mainbox .items {
		width: auto;
	}
}
#data .detail.data05 .mainbox .items figure {
	width: 62%;
	margin: 7rem auto 0;
}
@media (max-width: 995px) {
	#data .detail.data05 .mainbox .items figure {
		width: 50%;
		margin: 0 auto;
	}
}
#data .detail.data05 .mainbox .textbox {
	width: 52%;
}
@media (max-width: 995px) {
	#data .detail.data05 .mainbox .textbox {
		width: auto;
	}
}
#data .detail.data06 .mainbox .items {
	width: 48%;
	height: auto;
}
@media (max-width: 995px) {
	#data .detail.data06 .mainbox .items {
		width: auto;
	}
}
#data .detail.data06 .mainbox .items figure {
	width: 80%;
	margin: 0px auto;
}
@media (max-width: 995px) {
	#data .detail.data06 .mainbox .items figure {
		width: 65%;
	}
}
#data .detail.data06 .mainbox .textbox {
	width: 52%;
}
@media (max-width: 995px) {
	#data .detail.data06 .mainbox .textbox {
		width: auto;
	}
}
#data .detail.data07 .mainbox {
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
#data .detail.data07 .mainbox .items {
	width: 48%;
	height: auto;
}
@media (max-width: 995px) {
	#data .detail.data07 .mainbox .items {
		width: auto;
	}
}
#data .detail.data07 .mainbox .items figure {
	width: 95%;
	margin: 0px 0 0 auto;
}
@media (max-width: 995px) {
	#data .detail.data07 .mainbox .items figure {
		width: 90%;
		margin: 0px auto;
	}
}
#data .detail.data07 .mainbox .textbox {
	width: 52%;
}
@media (max-width: 995px) {
	#data .detail.data07 .mainbox .textbox {
		width: auto;
	}
}
#data .entrybox {
	margin-top: 0;
}

/*-----------------------------------------------------------
	employee-benefits
-----------------------------------------------------------*/
#employee-benefits .detail .read {
	margin-top: 5rem;
	font-size: 2.6rem;
	font-weight: 600;
	line-height: 2.28;
	text-align: center;
}
@media (max-width: 767px) {
	#employee-benefits .detail .read {
		font-size: 3.5vw;
	}
}
#employee-benefits .detail .block {
	margin-top: 7rem;
}
#employee-benefits .detail .block h2 {
	margin-bottom: 0.75em;
	font-size: 3.2rem;
}
#employee-benefits .detail .block dl {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 1.5rem 5rem;
	font-weight: 400;
}
#employee-benefits .detail .block dl dt, #employee-benefits .detail .block dl dd {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
#employee-benefits .detail .block dl dt {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 28rem;
	min-height: 4em;
	padding: 0.5em;
	background-color: #00b9ef;
	line-height: 1.2;
	text-align: center;
	font-size: 2.6rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
@media (max-width: 767px) {
	#employee-benefits .detail .block dl dt {
		width: 100%;
		min-height: 0;
		padding: 0.75em 0;
		font-size: 3.75vw;
	}
}
#employee-benefits .detail .block dl dd {
	width: -webkit-calc(100% - 33rem);
	width: calc(100% - 33rem);
	line-height: 1.9;
	font-size: 2.4rem;
}
@media (max-width: 767px) {
	#employee-benefits .detail .block dl dd {
		width: 100%;
		padding-bottom: 5vw;
		font-size: 3.5vw;
	}
}

/*-----------------------------------------------------------
	faq
-----------------------------------------------------------*/
#faq .pagetitle .read {
	margin-top: 3em;
	font-weight: 600;
	font-size: 2.8rem;
	text-align: center;
	line-height: 2.28;
}
@media (max-width: 767px) {
	#faq .pagetitle .read {
		font-size: 3.5vw;
	}
}
#faq .pagetitle h2 {
	margin: 2.5em 0 -2em;
	font-size: 3rem;
}
@media (max-width: 767px) {
	#faq .pagetitle h2 {
		margin: 2em 0 0;
		font-size: 4vw;
	}
}
@media (max-width: 767px) {
	#faq .pagetitle figure {
		margin-top: 2.5vw;
	}
}
#faq .pagetitle .entryarea {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-top: 3rem;
}
@media (max-width: 995px) {
	#faq .pagetitle .entryarea {
		display: block;
		text-align: center;
	}
}
#faq .pagetitle .entryarea .text {
	width: -webkit-calc(100% - 64rem);
	width: calc(100% - 64rem);
	font-size: 3.1rem;
	font-weight: 600;
}
@media (max-width: 995px) {
	#faq .pagetitle .entryarea .text {
		width: auto;
		margin-top: 10rem;
	}
}
#faq .pagetitle .entryarea .btns {
	width: 63rem;
	text-align: center;
}
@media (max-width: 995px) {
	#faq .pagetitle .entryarea .btns {
		margin: 3rem auto 0;
	}
}
@media (max-width: 767px) {
	#faq .pagetitle .entryarea .btns {
		width: auto;
	}
}
#faq .pagetitle .entryarea .btns .title {
	font-family: "Satoshi-Black", sans-serif;
	font-size: 9.7rem;
	line-height: 1.25;
}
#faq .pagetitle .entryarea .btns .title span {
	display: block;
	font-family: "Satoshi-Regular", sans-serif;
	font-size: 0.35em;
}
#faq .pagetitle .entryarea .btns ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-top: 4rem;
}
#faq .pagetitle .entryarea .btns ul li {
	width: 48.5%;
}
#faq .pagetitle .entryarea .btns ul li a {
	display: block;
	padding: 1.25em 0px;
	font-size: 1.7rem;
	font-weight: 600;
	border-radius: 3em;
	text-decoration: none;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#faq .pagetitle .entryarea .btns ul li a {
		font-size: 3vw;
	}
}
#faq .pagetitle .entryarea .btns ul li a.color01, #faq .pagetitle .entryarea .btns ul li a.color02 {
	padding: 0;
	border-radius: 0;
}
#faq .pagetitle .entryarea .btns ul li a.color01 span, #faq .pagetitle .entryarea .btns ul li a.color02 span {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 0.5em;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 500;
}
@media (max-width: 767px) {
	#faq .pagetitle .entryarea .btns ul li a.color01 span, #faq .pagetitle .entryarea .btns ul li a.color02 span {
		font-size: 2.5vw;
	}
}
#faq .pagetitle .entryarea .btns ul li a.color01 span::after, #faq .pagetitle .entryarea .btns ul li a.color02 span::after {
	content: "";
	display: block;
	width: 0.35em;
	height: 0.35em;
	margin-left: 0.5em;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
@media (min-width: 996px) {
	#faq .pagetitle .entryarea .btns ul li a.color01:hover, #faq .pagetitle .entryarea .btns ul li a.color02:hover {
		opacity: 0.5;
	}
}
#faq .detail {
	margin-top: 12rem;
}
@media (max-width: 767px) {
	#faq .detail {
		margin-top: 15vw;
	}
}
#faq .detail .headline {
	display: block;
}
#faq .detail .headline h2 {
	font-size: 4rem;
	line-height: 1;
}
@media (max-width: 767px) {
	#faq .detail .headline h2 {
		font-size: 5vw;
	}
}
@media (max-width: 767px) {
	#faq .detail .headline .scrollbox {
		margin-right: -5vw;
		padding-right: 5vw;
		padding-bottom: 2vw;
		overflow: auto;
	}
	#faq .detail .headline .scrollbox::-webkit-scrollbar {
		height: 1.5vw;
	}
	#faq .detail .headline .scrollbox::-webkit-scrollbar-thumb {
		background-color: #fff47e;
	}
	#faq .detail .headline .scrollbox .simplebar-scrollbar::before {
		background-color: #fff47e;
		height: 1.2vw;
		opacity: 1;
		border-radius: 0;
	}
	#faq .detail .headline .scrollbox .simplebar-track.simplebar-vertical {
		height: 1.2vw;
	}
}
#faq .detail .headline .tab {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 2.3rem;
	border-bottom: 1px solid #fff;
	margin-top: 1.5em;
}
@media (max-width: 767px) {
	#faq .detail .headline .tab {
		min-width: 49em;
		font-size: 3vw;
		white-space: nowrap;
	}
}
#faq .detail .headline .tab li a {
	display: block;
	position: relative;
	padding: 0.5em 1.5em;
	color: #fff;
	background-color: #519fd8;
	text-decoration: none;
}
#faq .detail .headline .tab li a:hover {
	margin-bottom: -1px;
	border: 1px solid #fff;
	border-bottom: none;
}
#faq .detail .headline .tab li a:hover::after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 100%;
	width: 0.65em;
	height: 0.65em;
	border-bottom: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg) translateX(-50%);
	-ms-transform: rotate(45deg) translateX(-50%);
	transform: rotate(45deg) translateX(-50%);
}
#faq .detail .faqbox {
	margin-top: 14rem;
}
@media (max-width: 767px) {
	#faq .detail .faqbox {
		margin-top: 10vw;
	}
}
#faq .detail .faqbox .titleline {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	margin-bottom: 2em;
}
#faq .detail .faqbox .titleline h3 {
	font-size: 4.5rem;
}
@media (max-width: 767px) {
	#faq .detail .faqbox .titleline h3 {
		font-size: 4.25vw;
	}
}
@media (max-width: 767px) {
	#faq .detail .faqbox .titleline .open {
		font-size: 2.5vw;
	}
}
#faq .detail .faqbox .titleline .open a {
	display: block;
	position: relative;
	padding-left: 1.25em;
	color: #fff;
}
@media (max-width: 767px) {
	#faq .detail .faqbox .titleline .open a {
		display: inline-block;
	}
}
#faq .detail .faqbox .titleline .open a::before, #faq .detail .faqbox .titleline .open a::after {
	content: "";
	display: block;
	position: absolute;
	background-color: #fff;
}
#faq .detail .faqbox .titleline .open a::before {
	left: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 0.75em;
	height: 1px;
}
#faq .detail .faqbox .titleline .open a::after {
	left: -webkit-calc(0.75em / 2);
	left: calc(0.75em / 2);
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 1px;
	height: 0.75em;
}
#faq .detail .faqbox .titleline .open a.is-open::after {
	display: none;
}
#faq .detail .faqbox .items {
	border-top: 1px solid #fff;
}
#faq .detail .faqbox .items .item {
	border-bottom: 1px solid #fff;
}
#faq .detail .faqbox .items .item.is-open h4 .plus::before {
	display: none;
}
@media (min-width: 996px) {
	#faq .detail .faqbox .items .item.is-open h4:hover {
		background-color: transparent;
	}
}
#faq .detail .faqbox .items .item.is-open .abox {
	display: block;
}
#faq .detail .faqbox .items .item h4 {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	padding: 0.6em 0.5em;
	font-size: 3.9rem;
	cursor: pointer;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	line-height: 1.5;
}
@media (min-width: 996px) {
	#faq .detail .faqbox .items .item h4:hover {
		background-color: #447aac;
	}
}
#faq .detail .faqbox .items .item h4 span {
	display: block;
}
#faq .detail .faqbox .items .item h4 .q {
	width: 1.4em;
	font-size: 4.6rem;
	font-family: "Satoshi-Bold", sans-serif;
}
#faq .detail .faqbox .items .item h4 .title {
	width: -webkit-calc(100% - 4.6rem * 1.4 - 2em);
	width: calc(100% - 4.6rem * 1.4 - 2em);
	padding-top: 0.1em;
}
#faq .detail .faqbox .items .item h4 .plus {
	position: absolute;
	right: 0.75em;
	top: 0.85em;
	width: 1.2em;
	height: 1.2em;
}
#faq .detail .faqbox .items .item h4 .plus::before, #faq .detail .faqbox .items .item h4 .plus::after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background-color: #fff;
}
#faq .detail .faqbox .items .item h4 .plus::before {
	width: 1px;
	height: 100%;
}
#faq .detail .faqbox .items .item h4 .plus::after {
	width: 100%;
	height: 1px;
}
#faq .detail .faqbox .items .item .abox {
	display: none;
	margin-left: -webkit-calc(4.6rem * 1.8);
	margin-left: calc(4.6rem * 1.8);
}
@media (max-width: 767px) {
	#faq .detail .faqbox .items .item .abox {
		margin-left: 0;
	}
}
#faq .detail .faqbox .items .item .abox .answer {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	position: relative;
	margin-bottom: 4rem;
	padding: 3rem 4rem 4rem;
	border-radius: 2rem;
	background-color: #428fc7;
}
@media (max-width: 767px) {
	#faq .detail .faqbox .items .item .abox .answer {
		padding: 4vw 5vw 5vw;
	}
}
#faq .detail .faqbox .items .item .abox .answer .title {
	width: 1.4em;
	font-size: 4.6rem;
	font-family: "Satoshi-Bold", sans-serif;
	line-height: 1;
}
#faq .detail .faqbox .items .item .abox .answer .textbox {
	width: -webkit-calc(100% - 4.6rem * 1.6);
	width: calc(100% - 4.6rem * 1.6);
}
#faq .detail .faqbox .items .item .abox .answer .textbox .text {
	padding-top: 0.25em;
	font-size: 2.2rem;
	font-weight: 600;
}
@media (max-width: 767px) {
	#faq .detail .faqbox .items .item .abox .answer .textbox .text {
		padding-top: 0;
		font-size: 3.25vw;
		line-height: 1.8;
	}
}
#faq .detail .faqbox .items .item .abox .answer .textbox .btns {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: end;
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	gap: 0.5em 1.5em;
	margin-top: 1.5em;
}
@media (max-width: 767px) {
	#faq .detail .faqbox .items .item .abox .answer .textbox .btns {
		font-size: 3vw;
	}
}
#faq .detail .faqbox .items .item .abox .answer .textbox .btns li a {
	display: inline-block;
	padding-left: 2em;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2042.33%2042.33%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23fff%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M21.16%2C0C9.48%2C0%2C0%2C9.48%2C0%2C21.16s9.48%2C21.16%2C21.16%2C21.16%2C21.16-9.48%2C21.16-21.16S32.85%2C0%2C21.16%2C0ZM18.56%2C28.41l-.4-.4%2C6.71-6.71-6.71-6.71.4-.4%2C7.12%2C7.12-7.12%2C7.12Z%22%2F%3E%3C%2Fsvg%3E") left center/1.5em no-repeat;
	color: #fff;
	text-decoration: none;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (min-width: 996px) {
	#faq .detail .faqbox .items .item .abox .answer .textbox .btns li a:hover {
		background-position: 0.25em center;
	}
}

/*-----------------------------------------------------------
	requirements
-----------------------------------------------------------*/
#requirements .detail {
	margin-top: 12rem;
}
@media (max-width: 767px) {
	#requirements .detail {
		margin-top: 15vw;
	}
}
#requirements .detail table th, #requirements .detail table td {
	padding: 1em;
	border-bottom: 0.6rem solid #519fd8;
}
@media (max-width: 767px) {
	#requirements .detail table th, #requirements .detail table td {
		display: block;
	}
}
#requirements .detail table th {
	width: 14em;
	background-color: #447aac;
	border-right: 0.6rem solid #519fd8;
	font-weight: 500;
}
@media (max-width: 767px) {
	#requirements .detail table th {
		width: auto;
		text-align: center;
		border-right: none;
	}
}
#requirements .detail table td {
	background-color: #fff;
	color: #231815;
}
#requirements .detail table dl {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#requirements .detail table dl dt {
	width: 4em;
}
#requirements .detail table dl dd {
	width: -webkit-calc(100% - 4em);
	width: calc(100% - 4em);
}
#requirements .detail table .note {
	font-size: 0.85em;
}

/*-----------------------------------------------------------
	keyperson
-----------------------------------------------------------*/
#keyperson-top .other .items, #keyperson-top .keyperson .items, #keyperson .other .items, #keyperson .keyperson .items {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 4rem;
}
#keyperson-top .other .items .item, #keyperson-top .keyperson .items .item, #keyperson .other .items .item, #keyperson .keyperson .items .item {
	position: relative;
	width: -webkit-calc((100% - 4rem * 3) / 4);
	width: calc((100% - 4rem * 3) / 4);
	border-radius: 3.8rem;
	background-color: #519fd8;
	overflow: hidden;
}
@media (max-width: 995px) {
	#keyperson-top .other .items .item, #keyperson-top .keyperson .items .item, #keyperson .other .items .item, #keyperson .keyperson .items .item {
		width: -webkit-calc((100% - 4rem * 2) / 3);
		width: calc((100% - 4rem * 2) / 3);
	}
}
@media (max-width: 767px) {
	#keyperson-top .other .items .item, #keyperson-top .keyperson .items .item, #keyperson .other .items .item, #keyperson .keyperson .items .item {
		width: -webkit-calc((100% - 4rem) / 2);
		width: calc((100% - 4rem) / 2);
	}
}
#keyperson-top .other .items .item img, #keyperson-top .keyperson .items .item img, #keyperson .other .items .item img, #keyperson .keyperson .items .item img {
	mix-blend-mode: multiply;
}
#keyperson-top .other .items .item img.hover, #keyperson-top .keyperson .items .item img.hover, #keyperson .other .items .item img.hover, #keyperson .keyperson .items .item img.hover {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	-webkit-transition: 0.3s 2s;
	-o-transition: 0.3s 2s;
	transition: 0.3s 2s;
	mix-blend-mode: normal;
}
#keyperson-top .other .items .item .hovericon, #keyperson-top .keyperson .items .item .hovericon, #keyperson .other .items .item .hovericon, #keyperson .keyperson .items .item .hovericon {
	position: absolute;
	opacity: 0.5;
	width: 4rem;
	right: 2.5rem;
	bottom: 4rem;
}
@media (max-width: 767px) {
	#keyperson-top .other .items .item .hovericon, #keyperson-top .keyperson .items .item .hovericon, #keyperson .other .items .item .hovericon, #keyperson .keyperson .items .item .hovericon {
		right: 3vw;
	}
}
#keyperson-top .other .items .item.linkbox:hover .hovericon, #keyperson-top .other .items .item.hoverbox:hover .hovericon, #keyperson-top .keyperson .items .item.linkbox:hover .hovericon, #keyperson-top .keyperson .items .item.hoverbox:hover .hovericon, #keyperson .other .items .item.linkbox:hover .hovericon, #keyperson .other .items .item.hoverbox:hover .hovericon, #keyperson .keyperson .items .item.linkbox:hover .hovericon, #keyperson .keyperson .items .item.hoverbox:hover .hovericon {
	opacity: 1;
}
#keyperson-top .other .items .item.linkbox:hover img.hover, #keyperson-top .other .items .item.hoverbox:hover img.hover, #keyperson-top .keyperson .items .item.linkbox:hover img.hover, #keyperson-top .keyperson .items .item.hoverbox:hover img.hover, #keyperson .other .items .item.linkbox:hover img.hover, #keyperson .other .items .item.hoverbox:hover img.hover, #keyperson .keyperson .items .item.linkbox:hover img.hover, #keyperson .keyperson .items .item.hoverbox:hover img.hover {
	opacity: 1;
}
#keyperson-top .other .items .item .textbox, #keyperson-top .keyperson .items .item .textbox, #keyperson .other .items .item .textbox, #keyperson .keyperson .items .item .textbox {
	position: absolute;
	left: 3.5rem;
	right: 3.5rem;
	bottom: 3rem;
	font-weight: 600;
	font-size: 1.4rem;
}
@media (max-width: 767px) {
	#keyperson-top .other .items .item .textbox, #keyperson-top .keyperson .items .item .textbox, #keyperson .other .items .item .textbox, #keyperson .keyperson .items .item .textbox {
		font-size: 2vw;
	}
}
#keyperson-top .other .items .item .textbox .department, #keyperson-top .keyperson .items .item .textbox .department, #keyperson .other .items .item .textbox .department, #keyperson .keyperson .items .item .textbox .department {
	line-height: 1.35;
}
#keyperson-top .other .items .item .textbox .name, #keyperson-top .keyperson .items .item .textbox .name, #keyperson .other .items .item .textbox .name, #keyperson .keyperson .items .item .textbox .name {
	font-size: 1.47em;
}
#keyperson-top .other .items .item .textbox .name a, #keyperson-top .keyperson .items .item .textbox .name a, #keyperson .other .items .item .textbox .name a, #keyperson .keyperson .items .item .textbox .name a {
	color: #fff;
}

#keyperson-top .titleline {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
@media (max-width: 767px) {
	#keyperson-top .titleline {
		display: block;
	}
}
#keyperson-top .titleline .textbox .sub {
	font-size: 2.8rem;
	font-weight: 600;
}
@media (max-width: 767px) {
	#keyperson-top .titleline .textbox .sub {
		font-size: 3.25vw;
	}
}
#keyperson-top .titleline .textbox h1 {
	font-size: 2.6rem;
	line-height: 1;
}
@media (max-width: 767px) {
	#keyperson-top .titleline .textbox h1 {
		font-size: 3.5vw;
	}
}
#keyperson-top .titleline .textbox h1 span {
	display: block;
	margin-bottom: 0.25em;
	font-size: 2.54em;
	font-family: "Satoshi-Bold", sans-serif;
}
#keyperson-top .titleline .text {
	font-size: 2.2rem;
	line-height: 1.83;
	font-weight: 600;
}
@media (max-width: 995px) {
	#keyperson-top .titleline .text {
		font-size: 2.6rem;
	}
}
@media (max-width: 767px) {
	#keyperson-top .titleline .text {
		margin-top: 1.5em;
		font-size: 3.2vw;
	}
}
#keyperson-top .keyperson .titleline {
	margin-top: 8rem;
}
#keyperson-top .keyperson .items {
	margin-top: 7rem;
}
#keyperson-top .crosstalk {
	margin-top: 15rem;
}
#keyperson-top .crosstalk .items {
	margin-top: 7rem;
}
@media (max-width: 767px) {
	#keyperson-top .crosstalk .items {
		margin-right: -5vw;
		padding-right: 5vw;
		overflow: hidden;
	}
}
#keyperson-top .crosstalk .items .swiper {
	padding-bottom: 1.4rem;
	overflow: visible;
}
@media (max-width: 767px) {
	#keyperson-top .crosstalk .items .swiper {
		padding-bottom: 5vw;
	}
}
@media (max-width: 767px) {
	#keyperson-top .crosstalk .items .swiper .swiper-scrollbar {
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1.2vw;
		background-color: transparent;
	}
}
@media (max-width: 767px) {
	#keyperson-top .crosstalk .items .swiper .swiper-scrollbar .swiper-scrollbar-drag {
		border-radius: 0;
		background-color: #f6eb80;
	}
}
#keyperson-top .crosstalk .items .swiper-wrapper {
	gap: 0 2.6rem;
}
@media (max-width: 767px) {
	#keyperson-top .crosstalk .items .swiper-wrapper {
		gap: 0;
	}
}
#keyperson-top .crosstalk .items .item {
	width: -webkit-calc((100% - 2.6rem) / 2);
	width: calc((100% - 2.6rem) / 2);
	background-color: #e9f1f9;
	border-radius: 2rem;
	border: 2px solid #fff;
	-webkit-box-shadow: 1.4rem 1.4rem 0 rgba(0, 0, 0, 0.08);
	box-shadow: 1.4rem 1.4rem 0 rgba(0, 0, 0, 0.08);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
@media (max-width: 767px) {
	#keyperson-top .crosstalk .items .item {
		width: auto;
	}
}
#keyperson-top .crosstalk .items .item .num {
	padding: 0.5em 1.25em 0;
	font-size: 2.5rem;
	font-family: "Satoshi-Bold", sans-serif;
	color: #519fd8;
}
@media (max-width: 767px) {
	#keyperson-top .crosstalk .items .item .num {
		font-size: 3.25vw;
	}
}
#keyperson-top .crosstalk .items .item figure {
	overflow: hidden;
}
#keyperson-top .crosstalk .items .item figure img {
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
#keyperson-top .crosstalk .items .item .title {
	padding: 0.25em 1em;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2040.95%2040.95%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23fff%3B%20%7D%20.cls-2%20%7B%20fill%3A%20%23529ed7%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ccircle%20class%3D%22cls-2%22%20cx%3D%2220.48%22%20cy%3D%2220.48%22%20r%3D%2220.48%22%2F%3E%20%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2217.98%2013.16%2017.98%2015.38%2023.07%2020.48%2017.98%2025.57%2017.98%2027.79%2025.3%2020.48%2017.98%2013.16%22%2F%3E%3C%2Fsvg%3E") right 1em center/1.14em no-repeat;
	font-weight: 600;
	font-size: 3.5rem;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#keyperson-top .crosstalk .items .item .title {
		font-size: 4vw;
	}
}
#keyperson-top .crosstalk .items .item .title a {
	color: #519fd8;
	text-decoration: none;
}
#keyperson-top .crosstalk .items .item:hover figure img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
#keyperson-top .crosstalk .items .item:hover .title {
	background-position: right 0.75em center;
}

#keyperson .pagetitle {
	height: 100svh;
	min-height: 85rem;
}
@media (max-width: 767px) {
	#keyperson .pagetitle {
		min-height: 0;
		height: 130vw;
	}
}
#keyperson .pagetitle .breadcrumbs {
	position: relative;
	z-index: 10;
	color: #231815;
}
#keyperson .pagetitle .breadcrumbs a {
	color: #231815;
}
@media (max-width: 767px) {
	#keyperson .pagetitle .pager {
		top: 20vw;
	}
}
#keyperson .pagetitle .pager li a span {
	color: #519fd8;
}
#keyperson .pagetitle .mainbox {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: center / cover no-repeat;
}
#keyperson .pagetitle .mainbox.keyperson01 {
	background-image: url(../img/keyperson/keyperson01.jpg);
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox.keyperson01 {
		background-image: url(../img/keyperson/keyperson01_sp.jpg);
	}
}
#keyperson .pagetitle .mainbox.keyperson02 {
	background-image: url(../img/keyperson/keyperson02.jpg);
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox.keyperson02 {
		background-image: url(../img/keyperson/keyperson02_sp.jpg);
	}
}
#keyperson .pagetitle .mainbox.keyperson03 {
	background-image: url(../img/keyperson/keyperson03.jpg);
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox.keyperson03 {
		background-image: url(../img/keyperson/keyperson03_sp.jpg);
	}
}
#keyperson .pagetitle .mainbox.keyperson04 {
	background-image: url(../img/keyperson/keyperson04.jpg);
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox.keyperson04 {
		background-image: url(../img/keyperson/keyperson04_sp.jpg);
	}
}
#keyperson .pagetitle .mainbox.keyperson05 {
	background-image: url(../img/keyperson/keyperson05.jpg);
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox.keyperson05 {
		background-image: url(../img/keyperson/keyperson05_sp.jpg);
	}
}
#keyperson .pagetitle .mainbox.keyperson06 {
	background-image: url(../img/keyperson/keyperson06.jpg);
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox.keyperson06 {
		background-image: url(../img/keyperson/keyperson06_sp.jpg);
	}
}
#keyperson .pagetitle .mainbox.keyperson07 {
	background-image: url(../img/keyperson/keyperson07.jpg);
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox.keyperson07 {
		background-image: url(../img/keyperson/keyperson07_sp.jpg);
	}
}
#keyperson .pagetitle .mainbox.keyperson08 {
	background-image: url(../img/keyperson/keyperson08.jpg);
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox.keyperson08 {
		background-image: url(../img/keyperson/keyperson08_sp.jpg);
	}
}
#keyperson .pagetitle .mainbox.keyperson09 {
	background-image: url(../img/keyperson/keyperson09.jpg);
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox.keyperson09 {
		background-image: url(../img/keyperson/keyperson09_sp.jpg);
	}
}
#keyperson .pagetitle .mainbox.keyperson10 {
	background-image: url(../img/keyperson/keyperson10.jpg);
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox.keyperson10 {
		background-image: url(../img/keyperson/keyperson10_sp.jpg);
	}
}
#keyperson .pagetitle .mainbox .textbox {
	position: absolute;
	top: 50%;
	left: 8.5vw;
	-webkit-transform: translateY(-webkit-calc(-50% + 8rem));
	-ms-transform: translateY(calc(-50% + 8rem));
	transform: translateY(calc(-50% + 8rem));
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox .textbox {
		left: 5vw;
		-webkit-transform: translateY(-webkit-calc(-50% + 10vw));
		-ms-transform: translateY(calc(-50% + 10vw));
		transform: translateY(calc(-50% + 10vw));
	}
}
#keyperson .pagetitle .mainbox .textbox .title {
	padding-left: 3em;
	background: url(../img/keyperson/hole.svg) left center/auto 100% no-repeat;
	color: #231815;
	font-size: 2.3rem;
	font-weight: 600;
	line-height: 1.2;
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox .textbox .title {
		font-size: 2.75vw;
	}
}
#keyperson .pagetitle .mainbox .textbox .title span {
	display: block;
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 2em;
}
#keyperson .pagetitle .mainbox .textbox h1 {
	margin: 1.25em 0 0.75em;
	color: #519fd8;
	font-size: 5.8rem;
	line-height: 1.25;
	font-weight: 600;
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox .textbox h1 {
		font-size: 6vw;
	}
}
#keyperson .pagetitle .mainbox .textbox .department, #keyperson .pagetitle .mainbox .textbox .name, #keyperson .pagetitle .mainbox .textbox .year {
	color: #231815;
	font-weight: 600;
	line-height: 1.75;
}
#keyperson .pagetitle .mainbox .textbox .department, #keyperson .pagetitle .mainbox .textbox .year {
	font-size: 2.5rem;
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox .textbox .department, #keyperson .pagetitle .mainbox .textbox .year {
		font-size: 2.75vw;
	}
}
#keyperson .pagetitle .mainbox .textbox .department {
	line-height: 1.5;
}
#keyperson .pagetitle .mainbox .textbox .name {
	font-size: 3.7rem;
}
@media (max-width: 767px) {
	#keyperson .pagetitle .mainbox .textbox .name {
		font-size: 3.5vw;
	}
}
#keyperson .pagetitle .mainbox .textbox.is-white .title, #keyperson .pagetitle .mainbox .textbox.is-white h1, #keyperson .pagetitle .mainbox .textbox.is-white .department, #keyperson .pagetitle .mainbox .textbox.is-white .name, #keyperson .pagetitle .mainbox .textbox.is-white .year {
	color: #fff;
}
#keyperson .pagetitle .mainbox .textbox.is-white h1 {
	text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
}
#keyperson .pagetitle .number {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: absolute;
	right: 5vw;
	bottom: 5vw;
	z-index: 20;
	width: 24rem;
	height: 24rem;
	border-radius: 50%;
	background-color: #519fd8;
	color: #fff;
	font-size: 6.6rem;
	font-family: "Satoshi-Bold", sans-serif;
	line-height: 1;
}
#keyperson .pagetitle .number .title {
	padding-top: 1em;
	font-size: 0.38em;
}
#keyperson .pagetitle .number .num {
	letter-spacing: 0.08em;
}
#keyperson .pagetitle .number::after {
	content: "";
	display: block;
	width: 0.3em;
	height: 0.58em;
	margin: 0.1em auto 0;
	background: url(../img/keyperson/hole.svg) center/100% no-repeat;
	mix-blend-mode: multiply;
}
#keyperson .profile, #keyperson .detail, #keyperson .other {
	margin-top: 10rem;
}
#keyperson .profile h2 {
	margin-bottom: 0.5em;
}
#keyperson .profile h2 span {
	margin-right: 0.5em;
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 1.5em;
}
#keyperson .profile .box {
	padding: 3.5rem 4.5rem;
	border: 1px solid #fff;
}
@media (max-width: 767px) {
	#keyperson .profile .box {
		padding: 5vw;
	}
}
#keyperson .profile .box.c2 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 2em;
}
@media (max-width: 767px) {
	#keyperson .profile .box.c2 {
		display: block;
	}
	#keyperson .profile .box.c2 dl + dl {
		margin-top: 1em;
	}
}
#keyperson .profile .box.c2 dl {
	min-width: 24em;
}
#keyperson .profile .box dl {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	font-size: 2.4rem;
}
@media (max-width: 767px) {
	#keyperson .profile .box dl {
		display: block;
		font-size: 3.5vw;
		line-height: 1.5;
	}
}
#keyperson .profile .box dl dt {
	width: 7em;
}
@media (max-width: 767px) {
	#keyperson .profile .box dl dt {
		width: auto;
		margin-bottom: 0.25em;
		font-weight: 600;
	}
}
#keyperson .profile .box dl dd {
	width: -webkit-calc(100% - 7em);
	width: calc(100% - 7em);
}
@media (max-width: 767px) {
	#keyperson .profile .box dl dd {
		width: auto;
	}
	#keyperson .profile .box dl dd + dt {
		margin-top: 1em;
	}
}
#keyperson .profile .box dl.short dt {
	width: 4em;
}
@media (max-width: 767px) {
	#keyperson .profile .box dl.short dt {
		width: auto;
	}
}
#keyperson .profile .box dl.short dd {
	width: -webkit-calc(100% - 4em);
	width: calc(100% - 4em);
}
@media (max-width: 767px) {
	#keyperson .profile .box dl.short dd {
		width: auto;
	}
}
#keyperson .profile .box dl.long dt {
	width: 9em;
}
@media (max-width: 767px) {
	#keyperson .profile .box dl.long dt {
		width: auto;
	}
}
#keyperson .profile .box dl.long dd {
	width: -webkit-calc(100% - 9em);
	width: calc(100% - 9em);
}
@media (max-width: 767px) {
	#keyperson .profile .box dl.long dd {
		width: auto;
	}
}
#keyperson .detail .text {
	text-indent: 1em;
	font-size: 2.2rem;
}
@media (max-width: 767px) {
	#keyperson .detail .text {
		font-size: 3.5vw;
	}
}
#keyperson .detail .items .item {
	overflow: auto;
}
@media (max-width: 995px) {
	#keyperson .detail .items .item {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
	}
}
#keyperson .detail .items .item + .item {
	margin-top: 8rem;
}
#keyperson .detail .items .item figure {
	float: right;
	width: 38%;
	margin-left: 5rem;
	border-radius: 3.8rem;
	overflow: hidden;
}
@media (max-width: 995px) {
	#keyperson .detail .items .item figure {
		float: none;
		width: auto;
		margin-left: 0;
		margin-top: 5rem;
		-webkit-box-ordinal-group: 1;
		-webkit-order: 0;
		-ms-flex-order: 0;
		order: 0;
	}
}
#keyperson .detail .items .item h2 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 0.75em;
	line-height: 1.3;
}
@media (max-width: 995px) {
	#keyperson .detail .items .item h2 {
		-webkit-box-ordinal-group: -1;
		-webkit-order: -2;
		-ms-flex-order: -2;
		order: -2;
	}
}
#keyperson .detail .items .item h2 .q {
	font-size: 4.6rem;
	font-family: "Satoshi-Bold", sans-serif;
}
#keyperson .detail .items .item h2 .title {
	width: -webkit-calc(100% - 5rem * 1.25);
	width: calc(100% - 5rem * 1.25);
	font-size: 4rem;
	font-weight: 600;
}
@media (max-width: 767px) {
	#keyperson .detail .items .item h2 .title {
		font-size: 4.75vw;
	}
}
@media (max-width: 995px) {
	#keyperson .detail .items .item .text {
		-webkit-box-ordinal-group: 0;
		-webkit-order: -1;
		-ms-flex-order: -1;
		order: -1;
	}
}
#keyperson .detail .message {
	margin-top: 8rem;
	overflow: auto;
}
@media (max-width: 995px) {
	#keyperson .detail .message {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
	}
}
#keyperson .detail .message figure {
	float: left;
	width: 38%;
	margin-right: 5rem;
	border-radius: 3.8rem;
	overflow: hidden;
}
@media (max-width: 995px) {
	#keyperson .detail .message figure {
		float: none;
		width: auto;
		margin-right: 0;
		margin-top: 5rem;
		-webkit-box-ordinal-group: 1;
		-webkit-order: 0;
		-ms-flex-order: 0;
		order: 0;
	}
}
#keyperson .detail .message h3 {
	margin-bottom: 0.75em;
	font-size: 4rem;
}
@media (max-width: 995px) {
	#keyperson .detail .message h3 {
		-webkit-box-ordinal-group: -1;
		-webkit-order: -2;
		-ms-flex-order: -2;
		order: -2;
	}
}
@media (max-width: 767px) {
	#keyperson .detail .message h3 {
		font-size: 4.5vw;
	}
}
@media (max-width: 995px) {
	#keyperson .detail .message .text {
		-webkit-box-ordinal-group: 0;
		-webkit-order: -1;
		-ms-flex-order: -1;
		order: -1;
	}
}
#keyperson .other {
	overflow: hidden;
}
#keyperson .other .items .swiper {
	overflow: visible;
	padding-bottom: 5rem;
}
#keyperson .other .items .swiper .swiper-scrollbar {
	left: 0;
	bottom: 0;
	height: 1rem;
	width: 100%;
	background-color: transparent;
	border-radius: 0;
}
#keyperson .other .items .swiper .swiper-scrollbar .swiper-scrollbar-drag {
	border-radius: 0;
	background-color: #fff47f;
}

/*-----------------------------------------------------------
	talk / project
-----------------------------------------------------------*/
#talk .pagetitle .pager li a, #project .pagetitle .pager li a {
	border: 1px solid #fff;
}
#talk .member, #talk .message, #talk .other, #project .member, #project .message, #project .other {
	margin-top: 10rem;
}
#talk .member h2, #project .member h2 {
	margin-bottom: 1em;
	font-size: 3.5rem;
	font-family: "Satoshi-Bold", sans-serif;
}
@media (max-width: 767px) {
	#talk .member h2, #project .member h2 {
		font-size: 5vw;
	}
}
#talk .member .items, #project .member .items {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 4rem;
}
#talk .member .items .item, #project .member .items .item {
	position: relative;
	width: -webkit-calc((100% - 4rem * 3) / 4);
	width: calc((100% - 4rem * 3) / 4);
	border-radius: 3.8rem;
	overflow: hidden;
}
@media (max-width: 995px) {
	#talk .member .items .item, #project .member .items .item {
		width: -webkit-calc((100% - 4rem * 2) / 3);
		width: calc((100% - 4rem * 2) / 3);
	}
}
@media (max-width: 767px) {
	#talk .member .items .item, #project .member .items .item {
		width: -webkit-calc((100% - 4rem) / 2);
		width: calc((100% - 4rem) / 2);
	}
}
#talk .member .items .item img, #project .member .items .item img {
	mix-blend-mode: multiply;
}
#talk .member .items .item img.hover, #project .member .items .item img.hover {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	-webkit-transition: 0.3s 2s;
	-o-transition: 0.3s 2s;
	transition: 0.3s 2s;
	mix-blend-mode: normal;
}
#talk .member .items .item .hovericon, #project .member .items .item .hovericon {
	position: absolute;
	width: 6rem;
	opacity: 0.5;
	width: 4rem;
	right: 2.5rem;
	bottom: 4rem;
}
@media (max-width: 767px) {
	#talk .member .items .item .hovericon, #project .member .items .item .hovericon {
		right: 3vw;
	}
}
#talk .member .items .item.linkbox:hover .hovericon, #talk .member .items .item.hoverbox:hover .hovericon, #project .member .items .item.linkbox:hover .hovericon, #project .member .items .item.hoverbox:hover .hovericon {
	opacity: 1;
}
#talk .member .items .item.linkbox:hover img.hover, #talk .member .items .item.hoverbox:hover img.hover, #project .member .items .item.linkbox:hover img.hover, #project .member .items .item.hoverbox:hover img.hover {
	opacity: 1;
}
#talk .member .items .item .textbox, #project .member .items .item .textbox {
	position: absolute;
	left: 3.5rem;
	right: 3.5rem;
	bottom: 3rem;
	font-weight: 600;
	font-size: 1.6rem;
}
@media (max-width: 767px) {
	#talk .member .items .item .textbox, #project .member .items .item .textbox {
		font-size: 2vw;
	}
}
#talk .member .items .item .textbox .department, #project .member .items .item .textbox .department {
	line-height: 1.35;
}
#talk .member .items .item .textbox .name, #project .member .items .item .textbox .name {
	font-size: 1.47em;
}
#talk .member .items .item .textbox .name a, #project .member .items .item .textbox .name a {
	color: #fff;
}
#talk .talkbox, #project .talkbox {
	margin-top: 10rem;
}
#talk .talkbox .wrap, #project .talkbox .wrap {
	margin: 0 13vw;
}
@media (max-width: 1219px) {
	#talk .talkbox .wrap, #project .talkbox .wrap {
		margin: 0px 5vw;
	}
}
#talk .talkbox h2, #project .talkbox h2 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	line-height: 1.5;
}
#talk .talkbox h2 .q, #project .talkbox h2 .q {
	font-size: 6rem;
	font-family: "Satoshi-Bold", sans-serif;
}
#talk .talkbox h2 .title, #project .talkbox h2 .title {
	width: -webkit-calc(100% - 6rem * 1.25);
	width: calc(100% - 6rem * 1.25);
	padding-top: 0.25em;
	font-size: 4.6rem;
	font-weight: 600;
}
#talk .talkbox h2 .title .img, #project .talkbox h2 .title .img {
	display: inline-block;
	border-radius: 50%;
	width: 1.5em;
	height: 1.5em;
	margin: 0px 0.25em;
	vertical-align: middle;
	overflow: hidden;
}
#talk .talkbox.is-scroll h2, #project .talkbox.is-scroll h2 {
	visibility: hidden;
}
#talk .talkbox.is-scroll h2.is-current, #project .talkbox.is-scroll h2.is-current {
	position: -webkit-sticky;
	position: sticky;
	left: 0;
	top: 10rem;
	z-index: 100;
	background: #000;
	margin: 0px -13vw;
	padding: 0.25em 13vw;
	visibility: visible;
}
@media (max-width: 1219px) {
	#talk .talkbox.is-scroll h2.is-current, #project .talkbox.is-scroll h2.is-current {
		margin: 0px -5vw;
		padding: 0.25em 5vw;
	}
}
@media (max-width: 995px) {
	#talk .talkbox.is-scroll h2.is-current, #project .talkbox.is-scroll h2.is-current {
		top: 8.5vw;
	}
}
@media (max-width: 767px) {
	#talk .talkbox.is-scroll h2.is-current, #project .talkbox.is-scroll h2.is-current {
		top: 18.5vw;
	}
}
#talk .talkbox.is-scroll h2.is-current br, #project .talkbox.is-scroll h2.is-current br {
	display: none;
}
#talk .talkbox.is-scroll h2.is-current .q, #project .talkbox.is-scroll h2.is-current .q {
	font-size: 4rem;
}
#talk .talkbox.is-scroll h2.is-current .title, #project .talkbox.is-scroll h2.is-current .title {
	font-size: 3rem;
	width: -webkit-calc(100% - 4.5rem * 1.25);
	width: calc(100% - 4.5rem * 1.25);
}
#talk .talkbox dl, #project .talkbox dl {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-top: 2rem;
	font-weight: 600;
}
#talk .talkbox dl dt, #project .talkbox dl dt {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 1rem;
	width: 12.5rem;
	text-align: center;
	font-size: 1.8rem;
}
@media (max-width: 767px) {
	#talk .talkbox dl dt, #project .talkbox dl dt {
		font-size: 2.5vw;
	}
}
#talk .talkbox dl dt figure, #project .talkbox dl dt figure {
	line-height: 0;
	border-radius: 50%;
	overflow: hidden;
}
#talk .talkbox dl dt .name, #project .talkbox dl dt .name {
	margin: 0.5em -2em 0;
}
#talk .talkbox dl dt .swiper, #project .talkbox dl dt .swiper {
	margin: 0 -2em;
	padding: 0 2em;
}
#talk .talkbox dl dd, #project .talkbox dl dd {
	width: -webkit-calc(100% - 19rem);
	width: calc(100% - 19rem);
	padding-bottom: 2em;
	font-size: 2.4rem;
}
@media (max-width: 767px) {
	#talk .talkbox dl dd, #project .talkbox dl dd {
		font-size: 3.5vw;
		padding-bottom: 0;
	}
}
#talk .talkbox dl dd + dt, #talk .talkbox dl dd + dt + dd, #project .talkbox dl dd + dt, #project .talkbox dl dd + dt + dd {
	margin-top: 2rem;
}
@media (max-width: 767px) {
	#talk .talkbox dl dd + dt, #talk .talkbox dl dd + dt + dd, #project .talkbox dl dd + dt, #project .talkbox dl dd + dt + dd {
		margin-top: 5vw;
	}
}
#talk .talkbox dl dd .img, #project .talkbox dl dd .img {
	display: inline-block;
	border-radius: 50%;
	width: 3.5em;
	height: 3.5em;
	margin: 0px 0.25em;
	vertical-align: middle;
	overflow: hidden;
}
@media (max-width: 767px) {
	#talk .talkbox dl dd .img, #project .talkbox dl dd .img {
		width: 2.5em;
		height: 2.5em;
	}
}
#talk .talkbox dl dd .inline, #project .talkbox dl dd .inline {
	display: inline-block;
}
@media (max-width: 767px) {
	#talk .talkbox dl dd .inline.spmb, #project .talkbox dl dd .inline.spmb {
		margin-bottom: 0.5em;
	}
}
#talk .images, #project .images {
	margin-top: 10rem;
}
#talk .images .wrap, #project .images .wrap {
	margin: 0 13vw;
}
@media (max-width: 1219px) {
	#talk .images .wrap, #project .images .wrap {
		margin: 0px 5vw;
	}
}
#talk .images .wrap img, #project .images .wrap img {
	border-radius: 2rem;
}
#talk .message h2, #project .message h2 {
	margin-bottom: 1em;
	font-size: 4rem;
}
@media (max-width: 767px) {
	#talk .message h2, #project .message h2 {
		font-size: 5vw;
	}
}
#talk .message .text, #project .message .text {
	margin-top: 3em;
}

/*-----------------------------------------------------------
	project
-----------------------------------------------------------*/
#project .pagetitle .headline {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
@media (max-width: 995px) {
	#project .pagetitle .headline {
		margin-top: 10rem;
	}
}
@media (max-width: 767px) {
	#project .pagetitle .headline {
		display: block;
	}
}
#project .pagetitle .headline .textbox {
	width: 42%;
	padding: 2em 0;
}
@media (max-width: 767px) {
	#project .pagetitle .headline .textbox {
		width: auto;
	}
}
#project .pagetitle .headline .textbox .title {
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 4rem;
	line-height: 1.5;
}
@media (max-width: 767px) {
	#project .pagetitle .headline .textbox .title {
		font-size: 6vw;
	}
}
#project .pagetitle .headline .textbox .title span {
	display: block;
	font-size: 0.4em;
}
#project .pagetitle .headline .textbox h1 {
	margin-top: 0.25em;
	font-size: 4.5rem;
	white-space: nowrap;
	line-height: 1.3;
}
@media (max-width: 767px) {
	#project .pagetitle .headline .textbox h1 {
		white-space: normal;
		font-size: 5.5vw;
	}
}
#project .pagetitle .headline .textbox h1.soon {
	font-size: 6.5rem;
	font-family: "Satoshi-Black", sans-serif;
}
@media (max-width: 767px) {
	#project .pagetitle .headline .textbox h1.soon {
		font-size: 10vw;
	}
}
#project .pagetitle .headline .textbox .sub {
	margin-top: 2em;
	font-size: 2.8rem;
	font-family: "Satoshi-Bold", sans-serif;
}
@media (max-width: 767px) {
	#project .pagetitle .headline .textbox .sub {
		margin-top: -5vw;
		font-size: 5vw;
	}
}
#project .pagetitle .headline .textbox .text {
	font-size: 1.7rem;
}
@media (max-width: 767px) {
	#project .pagetitle .headline .textbox .text {
		font-size: 3.5vw;
	}
}
#project .pagetitle .headline figure {
	width: 56%;
}
@media (max-width: 767px) {
	#project .pagetitle .headline figure {
		width: auto;
		margin: 5vw auto 0;
	}
}
#project .pagetitle .headline figure.rnm {
	margin-right: -5vw;
}
@media (max-width: 767px) {
	#project .pagetitle .headline figure.rnm {
		margin-right: auto;
	}
}
#project .pagetitle .ilust {
	margin-top: 10rem;
}
#project .pagetitle .ilust h2 {
	margin-bottom: 0.5em;
	font-size: 3.4rem;
}
@media (max-width: 767px) {
	#project .pagetitle .ilust h2 {
		font-size: 4.5vw;
	}
}
#project .pagetitle .ilust .items {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 3rem;
}
#project .pagetitle .ilust .items figure {
	width: -webkit-calc((100% - 3rem * 2) / 3);
	width: calc((100% - 3rem * 2) / 3);
	border-radius: 3rem;
	overflow: hidden;
}
#project .member {
	margin-top: 0;
}
@media (max-width: 767px) {
	#project .member {
		margin-top: 10vw;
	}
}
@media (max-width: 767px) {
	#project .other .items {
		margin-right: -5vw;
		padding-right: 5vw;
		overflow: hidden;
	}
}
@media (max-width: 767px) {
	#project .other .items .swiper {
		padding-bottom: 5vw;
		overflow: visible;
	}
}
@media (max-width: 767px) {
	#project .other .items .swiper .swiper-scrollbar {
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1.2vw;
		background-color: transparent;
	}
}
@media (max-width: 767px) {
	#project .other .items .swiper .swiper-scrollbar .swiper-scrollbar-drag {
		border-radius: 0;
		background-color: #f6eb80;
	}
}
#project .other .items .swiper-wrapper {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0 1.4%;
}
@media (max-width: 767px) {
	#project .other .items .swiper-wrapper {
		gap: 0;
	}
}
#project .other .items .item {
	position: relative;
	width: -webkit-calc((100% - 1.4% * 2) / 3);
	width: calc((100% - 1.4% * 2) / 3);
	aspect-ratio: 1 / 1.27;
	background: url(../img/index/box_project.svg) center/100% auto no-repeat;
}
@media (max-width: 995px) {
	#project .other .items .item {
		width: auto;
		aspect-ratio: 1 / 1.428;
		background-image: url(../img/index/box_project_sp.svg);
	}
}
#project .other .items .item::after {
	content: "";
	display: block;
	position: absolute;
	right: 6rem;
	bottom: 6rem;
	width: 4rem;
	height: 4rem;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2040.95%2040.95%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23fff%3B%20%7D%20.cls-2%20%7B%20fill%3A%20%23529ed7%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ccircle%20class%3D%22cls-2%22%20cx%3D%2220.48%22%20cy%3D%2220.48%22%20r%3D%2220.48%22%2F%3E%20%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2217.98%2013.16%2017.98%2015.38%2023.07%2020.48%2017.98%2025.57%2017.98%2027.79%2025.3%2020.48%2017.98%2013.16%22%2F%3E%3C%2Fsvg%3E") center/100% no-repeat;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 995px) {
	#project .other .items .item::after {
		right: 4rem;
		bottom: 4rem;
	}
}
#project .other .items .item:hover::after {
	right: 4rem;
}
#project .other .items .item .num {
	padding: 2em 1.25em 1.75em;
	font-size: 2rem;
	color: #519fd8;
	text-align: left;
	line-height: 1.3;
	font-weight: 600;
}
@media (max-width: 767px) {
	#project .other .items .item .num {
		padding-bottom: 1.25em;
		font-size: 2.5vw;
	}
}
#project .other .items .item .num span {
	display: block;
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 0.8em;
}
#project .other .items .item .title {
	padding-right: 3%;
	font-weight: 600;
	line-height: 1.2;
	font-size: 3.2rem;
	text-align: center;
}
@media (max-width: 995px) {
	#project .other .items .item .title {
		height: 3.6em;
	}
}
@media (max-width: 767px) {
	#project .other .items .item .title {
		font-size: 3.3vw;
	}
}
#project .other .items .item .title a {
	color: #519fd8;
	text-decoration: none;
}
#project .other .items .item figure {
	margin-top: 2.5rem;
	padding: 0px 4rem 0px 2.5rem;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#project .other .items .item figure {
		margin-top: 2.5vw;
	}
}
#project .other .items .item:hover figure {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
#project .other .items .item.soon {
	position: relative;
	pointer-events: none;
}
#project .other .items .item.soon > figure, #project .other .items .item.soon > p {
	opacity: 0.4;
}
#project .other .items .item.soon::after {
	left: 0;
	top: 0;
	z-index: 5;
	width: 100%;
	height: 100%;
	background: #519fd8;
	opacity: 0.6;
}
#project .other .items .item.soon::before {
	content: "Coming soon";
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	z-index: 10;
	width: 95%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	text-align: center;
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 5rem;
}

/*-----------------------------------------------------------
	talk
-----------------------------------------------------------*/
#talk .pagetitle h1 {
	margin: 1em 0px 1.25em;
	font-size: 5rem;
	line-height: 1.3;
	font-weight: 600;
}
@media (max-width: 767px) {
	#talk .pagetitle h1 {
		font-size: 4.5vw;
	}
}
#talk .pagetitle h1 span {
	display: block;
	margin-bottom: 0.5em;
	font-family: "Satoshi-Bold", sans-serif;
	font-size: 0.45em;
}
@media (max-width: 767px) {
	#talk .pagetitle h1 span {
		font-size: 2.75vw;
	}
}
#talk .pagetitle .text {
	margin-top: 8rem;
	font-size: 2.4rem;
	line-height: 2;
	font-weight: 600;
}
@media (max-width: 767px) {
	#talk .pagetitle .text {
		font-size: 3.5vw;
	}
}
@media (max-width: 767px) {
	#talk .pagetitle .pager {
		top: 20vw;
	}
}
#talk .other .items .item {
	width: -webkit-calc((100% - 2.6rem) / 2);
	width: calc((100% - 2.6rem) / 2);
	background-color: #e9f1f9;
	border-radius: 2rem;
	border: 2px solid #fff;
	-webkit-box-shadow: 1.4rem 1.4rem 0 rgba(0, 0, 0, 0.08);
	box-shadow: 1.4rem 1.4rem 0 rgba(0, 0, 0, 0.08);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
@media (max-width: 767px) {
	#talk .other .items .item {
		width: auto;
	}
}
#talk .other .items .item .num {
	padding: 0.5em 1.25em 0;
	font-size: 2.5rem;
	font-family: "Satoshi-Bold", sans-serif;
	color: #519fd8;
}
@media (max-width: 767px) {
	#talk .other .items .item .num {
		font-size: 3.25vw;
	}
}
#talk .other .items .item figure {
	overflow: hidden;
}
#talk .other .items .item figure img {
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
#talk .other .items .item .title {
	padding: 0.25em 1em;
	background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2040.95%2040.95%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23fff%3B%20%7D%20.cls-2%20%7B%20fill%3A%20%23529ed7%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ccircle%20class%3D%22cls-2%22%20cx%3D%2220.48%22%20cy%3D%2220.48%22%20r%3D%2220.48%22%2F%3E%20%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2217.98%2013.16%2017.98%2015.38%2023.07%2020.48%2017.98%2025.57%2017.98%2027.79%2025.3%2020.48%2017.98%2013.16%22%2F%3E%3C%2Fsvg%3E") right 1em center/1.14em no-repeat;
	font-weight: 600;
	font-size: 3.5rem;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
@media (max-width: 767px) {
	#talk .other .items .item .title {
		font-size: 4vw;
	}
}
#talk .other .items .item .title a {
	color: #519fd8;
	text-decoration: none;
}
#talk .other .items .item:hover figure img {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
#talk .other .items .item:hover .title {
	background-position: right 0.75em center;
}



/*# sourceMappingURL=style.css.map */
