@charset "UTF-8";
/*----------------------------------------
	fonts
----------------------------------------*/
/*----------------------------------------
	Vars
----------------------------------------*/
/*----------------------------------------
	Reset
----------------------------------------*/
html, body, div, span, applet, object,
iframe, h1, h2, h3, h4, h5, h6, p, blockquote,
pre, a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp, small,
strike, strong, sub, sup, tt, var, b, u, i, center,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, article,
aside, canvas, details, embed, figure, figcaption, footer,
header, hgroup, menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	border: 0;
	font-size: 100%;
	font-style: normal;
	font-weight: normal;
	font: inherit;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: "";
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

th, td {
	text-align: left;
	vertical-align: top;
}

img {
	border: none;
	vertical-align: top;
}

/*----------------------------------------
	Mediaquery
----------------------------------------*/
/*----------------------------------------
	fonts
----------------------------------------*/
/*----------------------------------------
	Base
----------------------------------------*/
html {
	font-size: 14px;
}
@media screen and (min-width: 769px) {
	html {
		font-size: 15px;
	}
}

* {
	box-sizing: border-box;
}

body {
	font-family: "Noto Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	line-height: 1.5;
	letter-spacing: 0.06em;
	background-color: #ffffff;
	color: #000000;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-overflow-scrolling: touch;
	-webkit-text-size-adjust: 100%;
}

main {
	width: 100vw;
	min-height: 100dvh;
	overflow-x: hidden;
}
main:before {
	content: "";
	position: fixed;
	width: 100%;
	height: 100dvh;
	z-index: -1;
	background: url(../../image/background/under-pc.webp) no-repeat 0 0/cover;
}
@media screen and (max-width: 768px) {
	main:before {
		background: url(../../image/background/under-sp.webp) no-repeat 0 0/cover;
	}
}

img {
	width: 100%;
	height: auto;
}

a {
	text-decoration: none;
}

a:hover {
	opacity: 0.7;
}

a[data-rel=external]:after {
	content: "";
	width: 1em;
	height: 1em;
	display: inline-block;
	vertical-align: middle;
	margin-left: 0.5em;
	background: transparent url("../image/icon-external.png") no-repeat scroll center center;
	background-size: contain;
	margin-right: 0.5em;
}

.isSP {
	display: none;
}
@media screen and (max-width: 768px) {
	.isSP {
		display: block;
	}
}

.isPC {
	display: none;
}
@media screen and (min-width: 769px) {
	.isPC {
		display: block;
	}
}

.grecaptcha-badge {
	visibility: hidden !important;
}

/*----------------------------------------
	Animation Settings
----------------------------------------*/
.slide-left {
	opacity: 0;
	transform: translateX(12%);
}
.slide-left.show {
	animation: slideLeft 0.4s ease-out forwards;
	animation-delay: 0.1s;
}
.slide-left--delay.show {
	animation-delay: 0.4s;
}

@keyframes slideLeft {
	to {
		opacity: 1;
		transform: translateX(0);
	}
}
.slide-up {
	opacity: 0;
	transform: translateY(12%);
}
.slide-up.show {
	animation: slideUp 0.4s ease-out forwards;
	animation-delay: 0.1s;
}
.slide-up--delay.show {
	animation-delay: 0.4s;
}

@keyframes slideUp {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
/*----------------------------------------
	Setting
----------------------------------------*/
/* font family */
/*----------------------------------------
	Layout
----------------------------------------*/
.l-container {
	padding: 140px 0 80px;
	min-height: calc(100dvh - 90px);
}
@media screen and (max-width: 768px) {
	.l-container {
		width: 100vw;
		padding: 110px 0 50px;
		min-height: calc(100dvh - 70px);
		overflow: hidden;
	}
}
.l-container__head {
	width: 87.5%;
	margin: 0 auto 44px;
	max-width: 1600px;
}
.l-container__head h1 {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 100px;
	line-height: 1.1;
	margin-bottom: 16px;
}
@media screen and (max-width: 768px) {
	.l-container__head h1 {
		font-size: 13.3vw;
		margin-bottom: 8px;
	}
}
.l-container__head p {
	font-size: 26px;
	font-weight: bold;
	padding-left: 40px;
	position: relative;
}
.l-container__head p:before {
	width: 30px;
	height: 30px;
	background: #E5661E;
	border-radius: 100%;
	content: "";
	display: block;
	position: absolute;
	top: 4px;
	left: 0;
}
@media screen and (max-width: 768px) {
	.l-container__head p:before {
		width: 5.3vw;
		height: 5.3vw;
		top: 2px;
	}
}
@media screen and (max-width: 768px) {
	.l-container__head p {
		font-size: 4.27vw;
		padding-left: 36px;
	}
}

.l-limit {
	margin: 0 auto;
	width: 100%;
}
@media screen and (min-width: 769px) {
	.l-limit {
		box-sizing: border-box;
		max-width: 1280px;
	}
}

.l-content-head-image {
	width: 100%;
	display: block;
	margin: 70px auto 0;
}
@media screen and (max-width: 768px) {
	.l-content-head-image {
		margin-top: 50px;
	}
}

.l-frame {
	width: 97.3333333333%;
	margin: 0 auto;
}
@media screen and (min-width: 769px) {
	.l-frame {
		width: 80.9375%;
	}
}
.l-frame--l {
	width: 97.3333333333%;
	margin: 0 auto;
}
@media screen and (min-width: 769px) {
	.l-frame--l {
		width: 96.5625%;
	}
}

@media screen and (min-width: 769px) {
	.l-column {
		display: flex;
		justify-content: space-between;
	}
}
.l-column-both {
	display: flex;
	justify-content: space-between;
}
.l-column--wrap {
	flex-wrap: wrap;
}
.l-column--reverse {
	flex-direction: row-reverse;
}

.l-under-menu {
	width: 87.5%;
	max-width: 1600px;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.l-under-menu {
		width: 95.27vw;
		margin-left: 5.3vw;
		margin-right: 0;
	}
}
.l-under-menu__banner {
	display: block;
	width: 360px;
	border-radius: 16px;
	border: 2px solid #ccc;
	position: relative;
	background: #fff;
	overflow: hidden;
	margin: 45px auto;
	padding: 20px;
	transition: 0.2s;
}
@media screen and (max-width: 768px) {
	.l-under-menu__banner {
		width: 78.7vw;
		margin-top: 30px;
	}
}
@media (hover: hover) {
	.l-under-menu__banner:hover {
		opacity: 1;
		scale: 1.02;
	}
	.l-under-menu__banner:hover .l-under-menu__arrow {
		translate: 4px 0;
	}
}
.l-under-menu__banner:active {
	opacity: 1;
	scale: 0.98;
}
.l-under-menu__banner:active .l-under-menu__arrow {
	translate: 4px 0;
}
@media screen and (max-width: 768px) {
	.l-under-menu__banner:active .l-under-menu__arrow {
		translate: 0 0;
	}
}
.l-under-menu__banner__image {
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
	margin-bottom: 20px;
}
.l-under-menu__banner__image img {
	-o-object-fit: cover;
	object-fit: cover;
}
.l-under-menu__banner__title {
	font-size: 18px;
	color: #219BAC;
	font-weight: bold;
	line-height: 1.1;
}
@media screen and (max-width: 768px) {
	.l-under-menu__banner__title {
		font-size: 4.8vw;
	}
}
.l-under-menu__title {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 28px;
	line-height: 1.1;
	margin-bottom: 16px;
}
@media screen and (max-width: 768px) {
	.l-under-menu__title {
		font-size: 7.46vw;
	}
}
.l-under-menu__sub {
	padding-left: 26px;
	position: relative;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.2;
}
.l-under-menu__sub:before {
	width: 18px;
	height: 18px;
	content: "";
	display: block;
	left: 0;
	top: 0;
	position: absolute;
	background: #E5661E;
	border-radius: 100%;
}
@media screen and (max-width: 768px) {
	.l-under-menu__sub {
		font-size: 4.27vw;
		padding-left: calc(4.8vw + 8px);
	}
	.l-under-menu__sub:before {
		width: 4.8vw;
		height: 4.8vw;
	}
}
.l-under-menu__arrow {
	position: absolute;
	width: 40px;
	height: 40px;
	right: 20px;
	bottom: 16px;
	border-radius: 100%;
	background: #219BAC;
	z-index: 3;
	transition: 0.2s;
}
.l-under-menu__arrow:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	left: 16px;
	top: 16px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.l-under-menu__arrow {
		width: 32px;
		height: 32px;
		right: 9px;
		bottom: 9px;
	}
	.l-under-menu__arrow:after {
		border-top-width: 1px;
		border-right-width: 1px;
		left: 13px;
		top: 13px;
	}
}
.l-under-menu__arrow--banner {
	right: 20px;
	bottom: 15px;
	translate: 0 0;
}
.l-under-menu__items {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 20px;
	margin: 60px auto 120px;
	scrollbar-color: #219BAB #F0EFEE;
}
@media screen and (max-width: 768px) {
	.l-under-menu__items {
		overflow-x: auto;
		justify-content: start;
		margin: 24px auto 100px;
		padding-bottom: 30px;
	}
}
@media screen and (max-width: 768px) {
	.l-under-menu__items li:last-of-type {
		margin-right: 5.3vw;
	}
}
.l-under-menu__items a {
	display: block;
	width: 28vw;
	max-width: 480px;
	padding: 20px 20px 22px;
	position: relative;
	border-radius: 16px;
	background: #fff;
	border: 2px solid #ccc;
	transition: 0.2s;
}
@media (hover: hover) {
	.l-under-menu__items a:hover {
		opacity: 1;
		scale: 1.02;
	}
	.l-under-menu__items a:hover .l-under-menu__arrow {
		translate: 4px 0;
	}
}
.l-under-menu__items a:active {
	opacity: 1;
	scale: 0.98;
}
.l-under-menu__items a:active .l-under-menu__arrow {
	translate: 4px 0;
}
@media screen and (max-width: 768px) {
	.l-under-menu__items a:active .l-under-menu__arrow {
		translate: 0;
	}
}
@media screen and (max-width: 768px) {
	.l-under-menu__items a {
		width: 78.67vw;
		padding: 16px 16px 18px;
	}
}
.l-under-menu__items a img {
	width: 100%;
	border-radius: 160px;
}
.l-under-menu__items a p {
	width: 80%;
	margin-top: 18px;
	font-size: 18px;
	font-weight: bold;
	color: #219BAC;
	line-height: 1.2;
}
@media screen and (max-width: 768px) {
	.l-under-menu__items a p {
		font-size: 3.73vw;
	}
}
.l-under-menu__items--gray a {
	background: #F0EFEE;
	border: 0;
}

/*----------------------------------------
	Header
----------------------------------------*/
.g-header {
	position: fixed;
	left: 50%;
	top: 0;
	z-index: 10;
	background: transparent;
	width: 100%;
	height: 90px;
	translate: -50% 0;
	transition: 0.1s;
}
@media screen and (max-width: 768px) {
	.g-header {
		height: 70px;
	}
}
.g-header--active {
	height: 70px;
	background: #fff;
}
@media screen and (max-width: 768px) {
	.g-header--active {
		height: 50px;
	}
}
.g-header__wrapper {
	justify-content: space-between;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: 100%;
	height: 100%;
	max-width: 1500px;
	padding: 0 40px;
	margin: 0 auto;
}
@media screen and (max-width: 1179px) and (min-width: 769px) {
	.g-header__wrapper {
		padding: 0 20px;
	}
}
@media screen and (max-width: 768px) {
	.g-header__wrapper {
		padding: 0 18px 0 20px;
	}
}
.g-header__logo {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 18px;
	transition: 0.2s;
	position: realtive;
	z-index: 11;
}
@media screen and (max-width: 1179px) and (min-width: 769px) {
	.g-header__logo {
		gap: 8px;
	}
}
@media (hover: hover) {
	.g-header__logo:hover {
		opacity: 0.8;
	}
}
.g-header__logo:active {
	opacity: 0.8;
}
.g-header__logo img {
	width: 18.75vw;
	max-width: 240px;
	display: block;
}
@media screen and (max-width: 1179px) and (min-width: 769px) {
	.g-header__logo img {
		width: 15vw;
	}
}
@media screen and (max-width: 768px) {
	.g-header__logo img {
		width: 40vw;
	}
}
.g-header__logo span {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal;
	font-size: 13px;
	line-height: 1.1;
	color: #000;
}
@media screen and (max-width: 1179px) {
	.g-header__logo span {
		font-size: 11px;
	}
}
.g-header__nav {
	justify-content: flex-end;
	align-items: center;
	flex-direction: row;
	display: flex;
}
@media screen and (max-width: 768px) {
	.g-header__nav {
		width: 100%;
		margin: 0 auto 50px;
		flex-direction: column-reverse;
	}
}
.g-header__menus {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 18px;
	margin-right: 12px;
	margin-top: 28px;
}
@media screen and (max-width: 768px) {
	.g-header__menus {
		width: 100%;
		flex-direction: column;
		margin-right: 0;
		margin-bottom: 0;
		gap: 0;
		border-top: 1px solid #6E6E6D;
	}
}
@media screen and (max-width: 1179px) and (min-width: 769px) {
	.g-header__menus {
		gap: 12px;
	}
}
.g-header__menu {
	margin: 0;
	padding: 0;
	position: relative;
}
@media screen and (max-width: 768px) {
	.g-header__menu {
		width: 100%;
		border-bottom: 1px solid #6E6E6D;
	}
}
.g-header__menu > a, .g-header__menu > p {
	display: block;
	cursor: pointer;
	font-size: 13px;
	line-height: 1.1;
	white-space: nowrap;
	font-weight: bold;
	color: #000;
	letter-spacing: 0;
}
@media screen and (max-width: 1179px) and (min-width: 769px) {
	.g-header__menu > a, .g-header__menu > p {
		font-size: 12px;
	}
}
.g-header__menu > a:before, .g-header__menu > a:after, .g-header__menu > p:before, .g-header__menu > p:after {
	content: "";
	position: absolute;
	opacity: 0;
	transition: 0.2s;
	display: block;
}
@media screen and (min-width: 769px) {
	.g-header__menu > a, .g-header__menu > p {
		padding-bottom: 30px;
	}
	.g-header__menu > a:after, .g-header__menu > p:after {
		width: 100%;
		height: 4px;
		bottom: 13px;
		left: 0;
		background: #ccc;
	}
}
@media screen and (max-width: 768px) {
	.g-header__menu > a, .g-header__menu > p {
		width: 100%;
		font-size: 16px;
		padding: 15px 0;
	}
}
.g-header__menu > a:active, .g-header__menu > p:active {
	opacity: 0.8;
}
@media screen and (max-width: 768px) {
	.g-header__menu > a {
		display: none;
	}
}
@media screen and (min-width: 769px) {
	.g-header__menu > p.show:after {
		animation: menuActive 0.2s ease-in forwards;
		opacity: 0;
	}
	.g-header__menu > p.hide:after {
		animation: menuDisActive 0.2s ease-out forwards;
		opacity: 1;
	}
}
@keyframes menuActive {
	to {
		opacity: 1;
	}
}
@keyframes menuDisActive {
	to {
		opacity: 0;
	}
}
@media screen and (max-width: 768px) {
	.g-header__menu > p:before {
		width: 2px;
		height: 18px;
		background: #000;
		top: 14px;
		right: 18px;
		opacity: 1;
	}
	.g-header__menu > p:after {
		width: 18px;
		height: 2px;
		background: #000;
		top: 22px;
		right: 10px;
		opacity: 1;
	}
	.g-header__menu > p.show:before {
		opacity: 0;
	}
	.g-header__menu > p + .g-header__under-menu {
		height: auto;
		max-height: 0;
	}
	.g-header__menu > p + .g-header__under-menu.show {
		animation: underMenuShowSP 0.2s ease-in forwards;
		max-height: 0;
	}
	.g-header__menu > p + .g-header__under-menu.hide {
		animation: underMenuHideSP 0.2s ease-out forwards;
		max-height: 200px;
	}
	@keyframes underMenuShowSP {
		to {
			max-height: 200px;
		}
	}
	@keyframes underMenuHideSP {
		to {
			max-height: 0;
		}
	}
}
@media screen and (min-width: 769px) {
	.g-header__buttons {
		justify-content: flex-end;
		align-items: center;
		flex-direction: row;
		display: flex;
		gap: 10px;
		margin-top: 12px;
	}
}
@media screen and (max-width: 768px) {
	.g-header__buttons {
		justify-content: flex-start;
		flex-direction: row-reverse;
		display: flex;
		width: 100%;
		gap: 16px;
	}
}
.g-header__button {
	width: 140px;
	height: 60px;
	line-height: 1.25;
	text-align: center;
	font-weight: bold;
	position: relative;
}
@media screen and (max-width: 1179px) and (min-width: 769px) {
	.g-header__button {
		width: 110px;
	}
}
@media screen and (max-width: 768px) {
	.g-header__button {
		justify-content: center;
		align-items: stretch;
		flex-direction: column;
		display: flex;
		width: calc(100% - 7.5px);
		height: auto;
		border-radius: 8px;
		padding: 10px 5px;
	}
}
.g-header__button > p {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	transition: 0.2s;
	cursor: pointer;
}
@media screen and (min-width: 769px) {
	.g-header__button > p {
		width: 100%;
		height: 44px;
		border-radius: 44px;
	}
}
@media screen and (max-width: 768px) {
	.g-header__button > p {
		margin-bottom: 10px;
		height: 28px;
	}
}
.g-header__button--internship > p {
	font-size: 12px;
}
@media screen and (max-width: 1179px) and (min-width: 769px) {
	.g-header__button--internship > p {
		font-size: 10px;
	}
}
@media screen and (min-width: 769px) {
	.g-header__button--internship > p {
		border: 2px solid #ccc;
		background: #fff;
		color: #219BAC;
	}
}
@media screen and (max-width: 768px) {
	.g-header__button--internship {
		background: #219BAC;
	}
	.g-header__button--internship > p {
		color: #fff;
	}
}
.g-header__button--entry {
	color: #fff;
}
@media screen and (max-width: 768px) {
	.g-header__button--entry {
		background: #D6000F;
	}
}
.g-header__button--entry > p {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
}
@media screen and (min-width: 769px) {
	.g-header__button--entry > p {
		border: 0;
		background: #D6000F;
		font-size: 15px;
		font-weight: 400;
	}
}
@media screen and (max-width: 1179px) and (min-width: 769px) {
	.g-header__button--entry > p {
		font-size: 13px;
	}
}
@media screen and (min-width: 769px) {
	.g-header__button--entry .g-header__under-menu {
		left: -20%;
	}
}
@media screen and (max-width: 1179px) and (min-width: 769px) {
	.g-header__button--entry .g-header__under-menu {
		left: -50%;
	}
}
@media screen and (min-width: 769px) {
	.g-header__button .g-header__under-menu {
		top: 52px;
	}
}
@media screen and (max-width: 768px) {
	.g-header__button .g-header__under-menu {
		justify-content: flex-start;
		align-items: flex-start;
		flex-direction: column;
		display: flex;
		gap: 10px;
		height: 140px;
		opacity: 1;
		visibility: visible;
		background: #fff;
		border-radius: 4px;
		padding: 13px 15px;
	}
	.g-header__button .g-header__under-menu li {
		margin-bottom: 0;
	}
	.g-header__button .g-header__under-menu a {
		font-size: 13px;
		padding-left: 0;
		display: none;
	}
}
@media screen and (min-width: 769px) {
	.g-header__under-menu {
		position: absolute;
		top: 40px;
		left: 0;
		width: auto;
		max-wdith: 290px;
		padding: 24px 30px 12px;
		border-radius: 12px;
		border: 2px solid #ccc;
		background: #fff;
		opacity: 0;
		visibility: hidden;
	}
	.g-header__under-menu.show {
		animation: underMenuShowPC 0.2s ease-in forwards;
		opacity: 0;
		visibility: hidden;
	}
	.g-header__under-menu.hide {
		animation: underMenuHidePC 0.2s ease-out forwards;
		opacity: 1;
		visibility: visible;
	}
}
@keyframes underMenuShowPC {
	to {
		opacity: 1;
		visibility: visible;
	}
}
@keyframes underMenuHidePC {
	to {
		opacity: 0;
		visibility: hidden;
	}
}
@media screen and (max-width: 1179px) and (min-width: 769px) {
	.g-header__under-menu {
		padding: 24px 20px 12px;
	}
}
@media screen and (max-width: 768px) {
	.g-header__under-menu {
		overflow: hidden;
		height: 0;
	}
}
.g-header__under-menu li {
	margin-bottom: 15px;
}
.g-header__under-menu a {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: column;
	display: flex;
	width: 100%;
	position: relative;
	transition: 0.2s;
	font-weight: bold;
	text-align: left;
	letter-spacing: 0;
	color: #000;
}
@media screen and (min-width: 769px) {
	.g-header__under-menu a {
		white-space: nowrap;
		font-size: 14px;
		padding-right: 30px;
	}
}
@media screen and (min-width: 769px) and (hover: hover) {
	.g-header__under-menu a:hover span {
		translate: 4px 0;
	}
}
@media screen and (min-width: 769px) {
	.g-header__under-menu a:active span {
		translate: 4px 0;
	}
}
@media screen and (max-width: 768px) {
	.g-header__under-menu a {
		padding-left: 20px;
	}
}
.g-header__under-menu small {
	width: 100%;
	display: block;
	font-size: 11px;
}
@media screen and (min-width: 769px) {
	.g-header__under-menu span {
		width: 20px;
		height: 20px;
		position: absolute;
		top: 0;
		right: 0;
		background: #219BAC;
		border-radius: 100%;
		transition: 0.2s;
	}
	.g-header__under-menu span:after {
		content: "";
		width: 4px;
		height: 4px;
		border-top: solid 1px #fff;
		border-right: solid 1px #fff;
		position: absolute;
		left: 7.5px;
		top: 7.5px;
		transform: rotate(45deg);
	}
}
.g-header__hamburger {
	display: none;
}
@media screen and (max-width: 768px) {
	.g-header__hamburger {
		justify-content: space-between;
		flex-direction: column;
		display: flex;
		width: 50px;
		height: 24px;
		background: transparent;
		padding: 2px;
		outline: 0;
		border: 0;
		position: realtive;
		z-index: 11;
	}
	.g-header__hamburger span {
		width: 46px;
		height: 1px;
		background: #000;
		transition: 0.2s;
	}
	.g-header__hamburger--active span:first-of-type {
		transform: rotate(30deg) translate(7px, 7px);
	}
	.g-header__hamburger--active span:nth-of-type(2) {
		opacity: 0;
	}
	.g-header__hamburger--active span:last-of-type {
		transform: rotate(-30deg) translate(7px, -7px);
	}
	.g-header__hamburger--active + .g-header__content {
		opacity: 1;
		visibility: visible;
		z-index: 10;
		background: url(../../image/background/top-sp.webp) no-repeat center center;
		background-size: cover;
	}
	.g-header__hamburger--active + .g-header__content .g-header__menu > a {
		display: block;
	}
	.g-header__hamburger--active + .g-header__content .g-header__under-menu a {
		display: block;
	}
}
.g-header__catch-copy {
	display: none;
}
@media screen and (max-width: 768px) {
	.g-header__catch-copy {
		display: block;
		width: 65vw;
		margin: 13.3vw auto 0;
	}
}
@media screen and (max-width: 768px) {
	.g-header__content {
		width: 100%;
		height: 100dvh;
		opacity: 0;
		left: 0;
		top: 0;
		translate: 0 0;
		visibility: hidden;
		position: absolute;
		z-index: -1;
		padding: 85px 20px 40px;
		transition: 0.2s;
		overflow-y: auto;
		display: none;
	}
}

/*----------------------------------------
	Footer
----------------------------------------*/
.g-footer {
	position: relative;
	z-index: 3;
}
.g-footer__outer {
	width: 100%;
	background: #ccc;
	border-top-left-radius: 80px;
	border-top-right-radius: 80px;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 768px) {
	.g-footer__outer {
		border-top-left-radius: 40px;
		border-top-right-radius: 40px;
	}
}
.g-footer__wrapper {
	max-width: 1280px;
	width: 100%;
	margin: 0 auto;
	padding: 60px 60px 40px;
}
@media screen and (max-width: 768px) {
	.g-footer__wrapper {
		width: 89.3%;
		padding: 30px 0 24px;
	}
}
.g-footer__top {
	margin: 0 auto 48px;
}
.g-footer__catch {
	width: 39.5vw;
	max-width: 620px;
	display: block;
	margin: 0 auto 40px;
}
@media screen and (max-width: 768px) {
	.g-footer__catch {
		width: 61.8vw;
		margin: 0 auto 24px;
	}
}
@media screen and (max-width: 768px) {
	.g-footer__boxes {
		justify-content: center;
		align-items: flex-start;
		flex-direction: row;
		display: flex;
		gap: 10px;
	}
}
.g-footer__box {
	width: 360px;
	min-height: 180px;
	border-radius: 8px;
	padding: 0 5px;
	background: #219BAB;
}
@media screen and (min-width: 769px) {
	.g-footer__box {
		margin: 0 auto;
	}
}
@media screen and (max-width: 768px) {
	.g-footer__box {
		width: calc(50% - 5px);
		min-height: 198px;
	}
}
@media screen and (max-width: 768px) {
	.g-footer__box--entry {
		background: #D6000F;
	}
}
@media screen and (min-width: 769px) {
	.g-footer__box--entry {
		position: relative;
		min-height: 100px;
		background: transparent;
	}
	.g-footer__box--entry .g-footer__box__title {
		background: #D6000F;
		width: 100%;
		height: 90px;
		border-radius: 90px;
		cursor: inherit;
		position: relative;
	}
	.g-footer__box--entry .g-footer__box__title span {
		display: none;
	}
}
@media screen and (min-width: 769px) and (min-width: 769px) {
	.g-footer__box--entry .g-footer__box__title span {
		width: 50px;
		height: 50px;
		position: absolute;
		display: block;
		top: 50%;
		right: 20px;
		background: #fff;
		border-radius: 100%;
		transition: 0.2s;
		translate: 0 -50%;
	}
	.g-footer__box--entry .g-footer__box__title span:after {
		content: "";
		width: 4px;
		height: 4px;
		border-top: solid 1px #000;
		border-right: solid 1px #000;
		position: absolute;
		left: 22px;
		top: 22px;
		transform: rotate(45deg);
	}
}
.g-footer__box__title {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: 100%;
	height: 90px;
	color: #fff;
	text-align: center;
	position: relative;
}
@media screen and (max-width: 768px) {
	.g-footer__box__title {
		height: 50px;
		font-size: 12px;
		font-weight: bold;
		line-height: 1.2;
	}
}
.g-footer__box__title--entry {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 24px;
	line-height: 1.1;
}
@media screen and (max-width: 768px) {
	.g-footer__box__title--entry {
		font-size: 15px;
	}
}
.g-footer__box__menu {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: column;
	display: flex;
	gap: 12px;
	background: #fff;
	border-radius: 4px;
	padding: 20px 15px;
}
@media screen and (max-width: 768px) {
	.g-footer__box__menu {
		gap: 10px;
		padding: 13px 15px;
		height: 140px;
	}
}
.g-footer__box__link {
	width: 100%;
	color: #000;
	font-weight: bold;
	transition: 0.2s;
	font-size: 13px;
	line-height: 1.25;
}
@media screen and (min-width: 769px) {
	.g-footer__box__link {
		justify-content: space-between;
		align-items: center;
		flex-direction: row;
		display: flex;
		gap: 12px;
		font-size: 16px;
	}
}
@media (hover: hover) {
	.g-footer__box__link:hover span {
		translate: 4px 0;
	}
}
.g-footer__box__link:active span {
	translate: 4px 0;
}
@media screen and (min-width: 769px) {
	.g-footer__box__link span {
		width: 20px;
		height: 20px;
		background: #219BAC;
		border-radius: 100%;
		transition: 0.2s;
		position: relative;
	}
	.g-footer__box__link span:after {
		content: "";
		width: 4px;
		height: 4px;
		border-top: solid 1px #fff;
		border-right: solid 1px #fff;
		position: absolute;
		left: 7px;
		top: 7px;
		transform: rotate(45deg);
	}
}
.g-footer__menus {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 42px 0;
	flex-wrap: wrap;
}
@media screen and (max-width: 1179px) and (min-width: 769px) {
	.g-footer__menus {
		width: 100%;
		margin: 0 auto;
		justify-content: flex-start;
		gap: 42px 50px;
	}
}
@media screen and (max-width: 768px) {
	.g-footer__menus {
		gap: 0;
	}
}
.g-footer__menu {
	width: 25%;
}
@media screen and (max-width: 1179px) and (min-width: 769px) {
	.g-footer__menu {
		width: calc(33.3% - 38px);
	}
}
@media screen and (max-width: 768px) {
	.g-footer__menu {
		width: 100%;
		border-top: 1px solid #6E6E6D;
	}
}
.g-footer__menu__title {
	width: 100%;
	line-height: 1.1;
	margin-bottom: 20px;
	font-weight: 400;
	border: 0;
	background: transparent;
	outline: 0;
	text-align: left;
	color: #000;
}
@media screen and (min-width: 769px) {
	.g-footer__menu__title {
		font-size: 24px;
		color: #fff;
		font-family: "Inter", serif;
		font-optical-sizing: auto;
		font-weight: 500;
		font-style: normal;
	}
}
@media screen and (max-width: 768px) {
	.g-footer__menu__title {
		font-size: 16px;
		font-weight: bold;
		margin-bottom: 0;
		min-height: 54px;
		padding: 18px 0;
		position: relative;
	}
	.g-footer__menu__title:before, .g-footer__menu__title:after {
		content: "";
		position: absolute;
		opacity: 0;
		transition: 0.2s;
		display: block;
	}
	.g-footer__menu__title:before {
		width: 2px;
		height: 18px;
		background: #000;
		top: 17px;
		right: 18px;
		opacity: 1;
	}
	.g-footer__menu__title:after {
		width: 18px;
		height: 2px;
		background: #000;
		top: 25px;
		right: 10px;
		opacity: 1;
	}
	.g-footer__menu__title.show:before {
		opacity: 0;
	}
}
@media screen and (max-width: 768px) {
	.g-footer__menu__link {
		display: block;
		font-size: 16px;
		color: #000;
		text-decoration: none;
		font-weight: bold;
		transition: 0.2s;
		padding: 15px 0;
	}
}
@media screen and (max-width: 768px) {
	.g-footer__menu__list {
		max-height: 0;
		overflow: hidden;
	}
	.g-footer__menu__list.show {
		animation: underMenuShowSP 0.2s ease-in forwards;
		max-height: 0;
	}
	.g-footer__menu__list.hide {
		animation: underMenuHideSP 0.2s ease-out forwards;
		max-height: 200px;
	}
	@keyframes underMenuShowSP {
		to {
			max-height: 200px;
		}
	}
	@keyframes underMenuHideSP {
		to {
			max-height: 0;
		}
	}
}
@media screen and (min-width: 769px) {
	.g-footer__menu__list {
		justify-content: flex-start;
		align-items: flex-start;
		flex-direction: column;
		display: flex;
		gap: 12px;
	}
}
@media screen and (max-width: 768px) {
	.g-footer__menu__list li {
		margin-bottom: 15px;
	}
}
.g-footer__menu__list a {
	font-size: 14px;
	font-weight: bold;
	color: #000;
	transition: 0.2s;
}
@media screen and (max-width: 768px) {
	.g-footer__menu__list a {
		font-size: 3.2vw;
		padding-left: 20px;
	}
}
.g-footer__contact {
	width: 200px;
	display: block;
	margin: 0 0 30px;
	transition: 0.2s;
}
@media (hover: hover) {
	.g-footer__contact:hover {
		opacity: 0.8;
	}
}
.g-footer__contact:active {
	scale: 0.98;
}
@media screen and (max-width: 768px) {
	.g-footer__contact {
		margin: 30px auto 20px;
	}
}
.g-footer__share {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 10px;
}
@media screen and (max-width: 768px) {
	.g-footer__share {
		justify-content: center;
	}
}
.g-footer__share a {
	width: 40px;
	display: block;
	transition: 0.2s;
}
@media (hover: hover) {
	.g-footer__share a:hover {
		opacity: 0.8;
	}
}
.g-footer__share a:active {
	scale: 0.98;
}
.g-footer__share a img {
	width: 100%;
}
.g-footer__bottom {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 22px;
	margin-top: 52px;
}
@media screen and (max-width: 768px) {
	.g-footer__bottom {
		flex-direction: column;
		gap: 40px;
		margin-top: 40px;
	}
}
.g-footer__other-menu {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
	.g-footer__other-menu {
		justify-content: center;
		gap: 12px 0;
	}
}
.g-footer__other-menu li:not(:last-of-type):after {
	content: "|";
	margin: 0 6px;
}
.g-footer__other-menu a {
	color: #000;
	font-size: 12px;
}
.g-footer__copy-right {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal;
	font-size: 13px;
}
@media screen and (max-width: 768px) {
	.g-footer__copy-right {
		font-size: 12px;
		text-align: center;
	}
}
@media screen and (min-width: 769px) {
	.g-footer__entry-menu {
		position: absolute;
		top: 100px;
		left: 15px;
		width: auto;
		width: 330px;
		padding: 24px 30px;
		border-radius: 12px;
		border: 2px solid #ccc;
		background: #fff;
		opacity: 0;
		visibility: hidden;
	}
	.g-footer__entry-menu.show {
		animation: underMenuShowPC 0.2s ease-in forwards;
		opacity: 0;
		visibility: hidden;
	}
	.g-footer__entry-menu.hide {
		animation: underMenuHidePC 0.2s ease-out forwards;
		opacity: 1;
		visibility: visible;
	}
	@keyframes underMenuShowPC {
		to {
			opacity: 1;
			visibility: visible;
		}
	}
	@keyframes underMenuHidePC {
		to {
			opacity: 0;
			visibility: hidden;
		}
	}
}
@media screen and (min-width: 769px) and (max-width: 1179px) and (min-width: 769px) {
	.g-footer__entry-menu {
		padding: 24px 20px 12px;
	}
}
@media screen and (min-width: 769px) {
	.g-footer__entry-menu li {
		margin-bottom: 15px;
	}
	.g-footer__entry-menu a {
		justify-content: flex-start;
		align-items: flex-start;
		flex-direction: column;
		display: flex;
		width: 100%;
		position: relative;
		transition: 0.2s;
		font-weight: bold;
		text-align: left;
		letter-spacing: 0;
		color: #000;
	}
}
@media screen and (min-width: 769px) and (min-width: 769px) {
	.g-footer__entry-menu a {
		white-space: nowrap;
		font-size: 14px;
		padding-right: 30px;
	}
}
@media screen and (min-width: 769px) and (min-width: 769px) and (hover: hover) {
	.g-footer__entry-menu a:hover span {
		translate: 4px 0;
	}
}
@media screen and (min-width: 769px) and (min-width: 769px) {
	.g-footer__entry-menu a:active span {
		translate: 4px 0;
	}
}
@media screen and (min-width: 769px) and (max-width: 768px) {
	.g-footer__entry-menu a {
		padding-left: 20px;
	}
}
@media screen and (min-width: 769px) {
	.g-footer__entry-menu span {
		display: none;
	}
}
@media screen and (min-width: 769px) and (min-width: 769px) {
	.g-footer__entry-menu span {
		width: 20px;
		height: 20px;
		position: absolute;
		display: block;
		top: 0;
		right: 0;
		background: #219BAC;
		border-radius: 100%;
		transition: 0.2s;
	}
	.g-footer__entry-menu span:after {
		content: "";
		width: 4px;
		height: 4px;
		border-top: solid 1px #fff;
		border-right: solid 1px #fff;
		position: absolute;
		left: 7px;
		top: 7px;
		transform: rotate(45deg);
	}
}

/*----------------------------------------
	Top Page
----------------------------------------*/
.top {
	position: relative;
}
.top:after {
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100dvh;
	z-index: 0;
	background: #fff url(../../image/background/top-pc.webp) no-repeat 0 0/cover;
}
@media screen and (max-width: 768px) {
	.top:after {
		background: #fff url(../../image/background/top-sp.webp) no-repeat 0 0/cover;
	}
}
.top .g-footer:before {
	background: #fff;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	width: 100%;
	height: 100px;
}
@media screen and (max-width: 768px) {
	.top .g-footer .g-footer__wrapper {
		padding-bottom: 110px;
	}
}
.top__head {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 80px;
}
@media screen and (max-width: 768px) {
	.top__head {
		flex-direction: column;
		gap: 50px;
	}
}
.top__head__right {
	border-left: 2px solid #000;
	padding-left: 40px;
	font-size: 16px;
	margin-top: 16px;
	font-weight: bold;
	line-height: 1.75;
}
@media screen and (max-width: 768px) {
	.top__head__right {
		font-size: 4vw;
		margin-top: 0;
		padding-left: 0;
		border-left: 0;
	}
}
.top__title {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 100px;
	margin-bottom: 20px;
	line-height: 1.1;
}
@media screen and (max-width: 768px) {
	.top__title {
		font-size: 13.3vw;
		margin-bottom: 10px;
	}
}
.top__sub {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 10px;
	font-size: 26px;
	line-height: 1.1;
	font-weight: bold;
}
.top__sub:before {
	content: "";
	width: 30px;
	height: 30px;
	border-radius: 30px;
	background: #E5661E;
}
@media screen and (max-width: 768px) {
	.top__sub {
		font-size: 4.27vw;
	}
	.top__sub:before {
		width: 20px;
		height: 20px;
	}
}
.top__menu-button {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 20px;
	width: 100%;
	height: 90px;
	border-radius: 90px;
	position: relative;
	padding-right: 60px;
	background: #fff;
	transition: 0.2s;
}
@media (hover: hover) {
	.top__menu-button:hover {
		opacity: 1;
		scale: 1.02;
	}
	.top__menu-button:hover span {
		translate: 4px -50%;
	}
}
.top__menu-button:active {
	opacity: 1;
	scale: 0.98;
}
.top__menu-button:active span {
	translate: 4px -50%;
}
@media screen and (max-width: 768px) {
	.top__menu-button:active span {
		translate: 0 -50%;
	}
}
@media screen and (max-width: 768px) {
	.top__menu-button {
		height: 76px;
		gap: 16px;
	}
}
.top__menu-button img {
	width: 180px;
}
@media screen and (max-width: 768px) {
	.top__menu-button img {
		width: 35.2vw;
	}
}
.top__menu-button p {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: calc(100% - 40px);
	height: 100%;
	font-size: 18px;
	color: #219BAC;
	line-height: 1.2;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.top__menu-button p {
		font-size: 4vw;
	}
}
.top__menu-button p small {
	font-size: 12px;
	color: #6E6E6D;
}
.top__menu-button span {
	position: absolute;
	width: 40px;
	height: 40px;
	right: 20px;
	top: 50%;
	translate: 0 -50%;
	border-radius: 100%;
	background: #219BAC;
	z-index: 3;
	transition: 0.2s;
}
.top__menu-button span:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	position: absolute;
	left: 16px;
	top: 16px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.top__menu-button span {
		width: 30px;
		height: 30px;
		right: 15px;
	}
	.top__menu-button span:after {
		left: 11px;
		top: 11px;
	}
}
.top__menu-button--large {
	width: 100%;
	height: 100%;
	flex-direction: column;
	align-items: flex-start;
	border-radius: 16px;
	padding: 20px;
}
@media screen and (max-width: 768px) {
	.top__menu-button--large {
		width: 78.4vw;
		padding: 15px;
	}
}
.top__menu-button--large img {
	width: 100%;
}
.top__menu-button--large span {
	top: auto;
	translate: 0 0;
	bottom: 15px;
}
@media (hover: hover) {
	.top__menu-button--large:hover span {
		translate: 4px 0;
	}
}
.top__menu-button--large:active span {
	translate: 4px 0;
}
@media screen and (max-width: 768px) {
	.top__menu-button--large:active span {
		translate: 0 0;
	}
}
.top__menu-button--small {
	border-radius: 16px;
	border: 2px solid #ccc;
	padding-left: 40px;
}
@media screen and (max-width: 768px) {
	.top__menu-button--small {
		border-radius: 10px;
		padding-left: 24px;
	}
}
.top__scrollable-menu {
	justify-content: flex-start;
	align-items: stretch;
	flex-direction: row;
	display: flex;
	gap: 20px;
	margin-top: 60px;
}
@media screen and (max-width: 768px) {
	.top__scrollable-menu {
		overflow-x: scroll;
		scrollbar-color: #219BAB #F0EFEE;
		padding-bottom: 20px;
		width: 100vw;
		margin-left: -5.35vw;
		padding-left: 5.35vw;
		margin-top: 48px;
	}
}
.top__scrollable-menu li {
	width: calc(33.3% - 8px);
}
@media screen and (max-width: 768px) {
	.top__scrollable-menu li {
		width: 78.4vw;
	}
	.top__scrollable-menu li:last-of-type {
		margin-right: 5.35vw;
	}
}
.top__section {
	position: relative;
	padding-top: 110px;
	overflow: hidden;
}
@media screen and (max-width: 768px) {
	.top__section {
		padding-top: 8.53vw;
	}
}
.top__section:before {
	content: "";
	display: block;
	position: absolute;
	width: 312.5vw;
	height: 312.5vw;
	border-radius: 100%;
	left: 50%;
	top: 0;
	translate: -50% 0;
}
@media screen and (max-width: 768px) {
	.top__section:before {
		width: 320vw;
		height: 320vw;
	}
}
.top__inner {
	width: 87.5vw;
	max-width: 1280px;
	margin: 0 auto;
	padding: 60px 0 130px;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 768px) {
	.top__inner {
		width: 100vw;
		padding: 80px 5.35vw 70px;
	}
}
.top__wrapper {
	position: relative;
	z-index: 2;
}
.top__bg {
	width: 100vw;
	height: 100dvh;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 2;
}
.top__bg__circle {
	position: fixed;
	z-index: 2;
	width: 340vw;
	height: 226.5vw;
	border-radius: 50%;
	left: 50%;
	top: 70%;
	translate: -50% 0;
	overflow: hidden;
	will-change: top, width, height;
	transition: top 0.7s ease, width 0.7s ease, height 0.7s ease;
}
@media screen and (max-width: 768px) {
	.top__bg__circle {
		transition: top 0.5s ease, width 0.5s ease, height 0.5s ease;
	}
}
.top__bg__circle--first {
	top: 70%;
	width: 340vw;
	height: 226.5vw;
}
.top__bg__circle--message {
	top: 50%;
	width: 210vw;
	height: 256.5vw;
}
.top__bg__circle--about {
	top: 75%;
	height: 312.5vw;
}
.top__bg__circle--hide {
	top: 100%;
}
.top__bg__circle .circle-bg {
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: radial-gradient(circle, var(--bg-color-start, rgb(229, 0, 17)) 0%, var(--bg-color-mid, rgb(235, 64, 6)) 45%, var(--bg-color-end, rgb(255, 169, 31)) 70%);
}
.top__bg__circle .circle-bg--bottom {
	z-index: 0;
}
.top__bg__circle .circle-bg--top {
	z-index: 1;
	pointer-events: none;
	opacity: 0;
	transition: opacity 0.3s linear;
}
.top__announce {
	justify-content: flex-end;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 15px;
	position: fixed;
	right: 3.125%;
	bottom: 30px;
	z-index: 100;
	transition: 0.5s;
	transition-delay: 2s;
	opacity: 0;
	translate: 0 30%;
}
@media screen and (max-width: 768px) {
	.top__announce {
		justify-content: center;
		flex-direction: column;
		right: auto;
		left: 50%;
		translate: -50% 30%;
		width: 89.3vw;
	}
}
.top__announce.show {
	opacity: 1;
	bottom: 30px;
	translate: 0 0;
}
@media screen and (max-width: 768px) {
	.top__announce.show {
		translate: -50% 0;
	}
}
.top__news {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: 700px;
	height: 60px;
	background: #fff;
	border: 3px solid #ccc;
	border-radius: 60px;
	padding: 0 20px 0 30px;
	visibility: visible;
	opacity: 1;
}
@media screen and (max-width: 768px) {
	.top__news {
		width: 89.3vw;
		padding: 16px 10px 16px 30px;
		height: auto;
		border-radius: 100px;
	}
}
.top__news__item {
	display: none;
	width: 100%;
}
.top__news__inner {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: 100%;
}
@media screen and (max-width: 768px) {
	.top__news__inner {
		gap: 4px;
		flex-direction: column;
		align-items: flex-start;
	}
}
.top__news time {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	width: 78px;
	font-size: 12px;
	color: #E71F19;
	letter-spacing: 0rem;
}
@media screen and (max-width: 768px) {
	.top__news time {
		width: 100%;
	}
}
.top__news p {
	width: calc(100% - 78px);
	overflow: hidden;
	white-space: normal;
	text-overflow: ellipsis;
}
@media screen and (max-width: 768px) {
	.top__news p {
		width: 100%;
	}
}
.top__news--hide {
	transition: 0.2s;
	opacity: 0;
	visibility: hidden;
	translate: 0 100%;
}
.top__request {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 10px;
	width: 180px;
	height: 60px;
	background: #000;
	border: 3px solid #ccc;
	border-radius: 60px;
	color: #fff;
	font-weight: bold;
	font-size: 14px;
	transition: 0.2s;
}
.top__request img {
	width: 14px;
}
.top__first {
	width: 100%;
	height: 70dvh;
	transition: 0.3s;
	position: relative;
}
.top__first--hide {
	opacity: 0;
}
.top__first__copy {
	position: absolute;
	left: 50%;
	top: 65%;
	translate: -50% -50%;
	z-index: 1;
	width: 75%;
	max-width: 960px;
}
@media screen and (max-width: 768px) {
	.top__first__copy {
		width: 89.3vw;
	}
}
.top__first__copy__top, .top__first__copy__middle {
	opacity: 0;
	transform: translateY(30%);
	transition: 0.5s;
}
.top__first__copy__top.show, .top__first__copy__middle.show {
	opacity: 1;
	transform: translateX(0);
}
.top__first__copy__top {
	width: 93.3%;
	margin-left: 3.2%;
	transition-delay: 0.7s;
}
.top__first__copy__arrow {
	width: 88.85%;
	position: absolute;
	left: 12.4%;
	top: 37.2%;
	stroke-dasharray: 500;
	stroke-dashoffset: 500;
	overflow: hidden;
}
.top__first__copy__arrow img {
	width: 100%;
	transition: 0.7s;
	transition-delay: 0.5s;
	transform: translateX(-100%);
}
.top__first__copy__arrow.show img {
	transform: translateX(0);
}
.top__first__copy__middle {
	margin-top: 2.1%;
	width: 95.8%;
	transition-delay: 1s;
}
.top__first__copy__bottom {
	transition: 0.5s;
	transition-delay: 2s;
	margin-top: 5%;
	transform: translateY(20%);
	opacity: 0;
}
.top__first__copy__bottom.show {
	transform: translateY(0);
	opacity: 1;
}
.top__message {
	position: relative;
	padding: 100dvh 20px 50dvh;
	margin-top: 0;
}
@media screen and (max-width: 768px) {
	.top__message {
		padding: 90dvh 4vw 30dvh;
	}
}
.top__message__content {
	position: relative;
	z-index: 1;
}
.top__message__text {
	font-size: 24px;
	line-height: 2;
	text-align: center;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.top__message__text {
		font-size: 4vw;
	}
}
.top__message__text + .top__message__text {
	margin-top: 70px;
}
@media screen and (max-width: 768px) {
	.top__message__text + .top__message__text {
		margin-top: 50px;
	}
}
.top__message .top__menu-button {
	border: 2px solid #ccc;
	width: 440px;
	margin: 80px auto 0;
}
@media screen and (max-width: 768px) {
	.top__message .top__menu-button {
		width: 89.3vw;
		margin-top: 50px;
	}
}
.top__menus li {
	opacity: 0;
	translate: 10% 0;
	transition: 0.3s ease-out;
}
.top__menus.show li {
	translate: 0 0;
	opacity: 1;
	transition-delay: 0.6s;
}
.top__menus.show li:nth-of-type(2) {
	transition-delay: 0.7s;
}
.top__menus.show li:nth-of-type(3) {
	transition-delay: 0.8s;
}
.top__menus.show li:nth-of-type(4) {
	transition-delay: 0.9s;
}
.top__menus--large li {
	translate: 0 10%;
}
.top__about {
	margin-top: -110px;
}
@media screen and (max-width: 768px) {
	.top__about {
		margin-top: -8.53vw;
	}
}
.top__about:before {
	background: #E0E0E0;
}
.top__about__section {
	background: #E0E0E0;
}
@media screen and (min-width: 769px) {
	.top__about__section {
		min-height: 100dvh;
		padding: 120px 0 200px;
	}
}
.top__about__wrapper {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 50px;
	margin-top: 50px;
}
@media screen and (max-width: 768px) {
	.top__about__wrapper {
		flex-direction: column;
	}
}
.top__about__content {
	flex: 1;
	opacity: 0;
	translate: 10% 0;
	transition: 0.3s;
	transition-delay: 0.3s;
}
.top__about__content.show {
	opacity: 1;
	translate: 0 0;
}
.top__about__content p {
	margin-bottom: 70px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.75;
}
@media screen and (max-width: 768px) {
	.top__about__content p {
		font-size: 4vw;
		margin-top: 0;
	}
}
@media screen and (min-width: 769px) {
	.top__about__menus {
		width: 460px;
	}
}
@media screen and (max-width: 768px) {
	.top__about__menus {
		width: 90.3vw;
		margin: 0 auto;
	}
}
.top__about__menus li:not(:last-of-type) {
	margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
	.top__about__menus li:not(:last-of-type) {
		margin-bottom: 20px;
	}
}
.top__job-bg {
	position: fixed;
	width: 100vw;
	height: 100dvh;
	left: 50%;
	top: 50%;
	z-index: 2;
	translate: -50% -50%;
	display: none;
}
.top__job-bg img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.top__job-bg--show {
	display: block;
}
.top__job {
	padding-top: 0;
}
.top__job .top__head {
	color: #fff;
	text-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
}
.top__job .top__head p {
	text-shadow: 0 0 4px rgba(0, 0, 0, 0.9);
}
.top__job .top__head__right {
	border-left-color: #fff;
}
.top__job__section {
	padding-top: 120px;
	padding-bottom: 275px;
}
@media screen and (max-width: 768px) {
	.top__job__section {
		padding-top: 120px;
		padding-bottom: 24vw;
	}
}
.top__job__menus {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
	gap: 30px 40px;
	margin: 60px auto 0;
}
@media screen and (max-width: 768px) {
	.top__job__menus {
		flex-direction: column;
		gap: 20px;
		width: 90.3vw;
		margin: 50px auto 0;
	}
}
.top__job__menus li {
	width: 100%;
}
@media screen and (min-width: 769px) {
	.top__job__menus li {
		width: calc(50% - 20px);
	}
}
.top__workstyle {
	margin-top: -110px;
}
@media screen and (max-width: 768px) {
	.top__workstyle {
		margin-top: -8.53vw;
	}
}
.top__workstyle:before {
	background: #E9E0D9;
}
.top__workstyle__section {
	background: #E9E0D9;
}
.top__internship {
	margin-top: -110px;
}
@media screen and (max-width: 768px) {
	.top__internship {
		margin-top: -8.53vw;
	}
}
.top__internship:before {
	background: #fff;
}
.top__internship__section {
	background: #fff;
}
.top__internship .top__menu-button {
	border: 2px solid #ccc;
}
.top__recruit {
	background: #fff;
}
@media screen and (max-width: 768px) {
	.top__recruit {
		padding-top: 20px;
	}
}
.top__recruit__wrapper {
	width: 100%;
	position: relative;
	padding: 110px 12% 110px 87px;
	background: #F4F4F4;
	overflow: hidden;
}
@media screen and (max-width: 768px) {
	.top__recruit__wrapper {
		padding: 92px 22px 72px;
	}
}
.top__recruit__bg {
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	z-index: 1;
}
.top__recruit__inner {
	position: relative;
	z-index: 2;
}
.top__recruit__menus {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 30px;
	flex-wrap: wrap;
	margin-top: 60px;
}
@media screen and (max-width: 768px) {
	.top__recruit__menus {
		flex-direction: column;
		gap: 20px;
		margin-top: 50px;
	}
}
.top__recruit__menus li {
	width: calc(50% - 15px);
}
@media screen and (max-width: 768px) {
	.top__recruit__menus li {
		width: 100%;
	}
}
.top__recruit__menus .top__menu-button {
	height: 120px;
}
.top__recruit__menus .top__menu-button p {
	height: auto;
	display: block;
}
.top__slide img {
	width: 37.5vw;
	-o-object-fit: cover;
	object-fit: cover;
}
@media screen and (max-width: 768px) {
	.top__slide img {
		width: 92.5vw;
	}
}

/*----------------------------------------
	Page About Common
----------------------------------------*/
.about .g-footer:before {
	background: #fff;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	width: 100%;
	height: 100px;
}
.about .l-container {
	padding-bottom: 0;
}
@media screen and (max-width: 768px) {
	.about .l-under-menu {
		width: 95.27vw;
	}
}
.about__head {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 20px;
}
@media screen and (max-width: 768px) {
	.about__head {
		flex-direction: column;
	}
}
@media screen and (min-width: 769px) {
	.about__head h1 {
		font-size: 90px;
	}
}
@media screen and (min-width: 769px) {
	.about__head__content {
		margin-top: 40px;
		position: relative;
		z-index: 1;
	}
}
.about__head__lead {
	padding-left: 0;
	font-size: 42px;
	line-height: 1.5;
	font-weight: bold;
	margin-top: 40px;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 768px) {
	.about__head__lead {
		font-size: 6.93vw;
		margin-top: 8px;
	}
}
.about__head__lead:before {
	display: none;
}
@media screen and (min-width: 769px) {
	.about__head picture {
		position: absolute;
		right: 7.3%;
		top: 156px;
		z-index: 0;
	}
}
@media screen and (max-width: 768px) {
	.about__head picture {
		justify-content: flex-end;
		align-items: center;
		flex-direction: row;
		display: flex;
		width: 100%;
	}
}
.about__head img {
	width: 490px;
}
@media screen and (max-width: 768px) {
	.about__head img {
		width: 64vw;
	}
}
.about__outer {
	width: 100%;
	background: #fff;
	padding-bottom: 80px;
	position: relative;
	overflow: hidden;
}
@media screen and (max-width: 768px) {
	.about__outer {
		padding-bottom: 10px;
	}
}
.about__wrapper {
	width: 78.125vw;
	max-width: 1280px;
	padding: 60px 0 0;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 768px) {
	.about__wrapper {
		width: 89.3vw;
		padding: 40px 0 0;
	}
}
.about__bg-image {
	position: absolute;
	left: 0;
	top: 60%;
	translate: 0 -50%;
	z-index: 0;
}
.about__bottom-menu {
	background: #fff;
	padding: 150px 0 200px;
}
@media screen and (max-width: 768px) {
	.about__bottom-menu {
		padding: 60px 0 80px;
	}
}
.about__bottom-menu .l-under-menu__items {
	margin-bottom: 0;
}

/*----------------------------------------
	Page About Index
----------------------------------------*/
.about-index .l-container {
	padding-bottom: 0;
}
.about-index .l-under-menu {
	margin-top: 140px;
}
@media screen and (max-width: 768px) {
	.about-index .l-under-menu {
		margin-top: 120px;
	}
}
.about-index__title {
	font-size: 36px;
	font-weight: bold;
	line-height: 1.4;
	margin-bottom: 50px;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.about-index__title {
		font-size: 5.3vw;
		margin-bottom: 36px;
		text-align: left;
	}
}
.about-index__row {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 50px;
	margin: 0 auto 150px;
}
@media screen and (max-width: 768px) {
	.about-index__row {
		flex-direction: column;
		margin-bottom: 60px;
	}
}
@media screen and (min-width: 769px) {
	.about-index__row--reverse {
		flex-direction: row-reverse;
		margin-bottom: 60px;
	}
}
.about-index__text {
	flex: 1;
	font-size: 16;
	line-height: 1.75;
}
@media screen and (max-width: 768px) {
	.about-index__text {
		font-size: 4.27vw;
	}
}
.about-index__image {
	width: 400px;
}
@media screen and (max-width: 768px) {
	.about-index__image {
		width: 100%;
	}
}
.about-index__mvp {
	justify-content: center;
	align-items: center;
	flex-direction: column;
	display: flex;
	width: 70vw;
	max-width: 920px;
	padding: 90px 100px 110px;
	margin: 120px auto 160px;
	background: rgba(255, 255, 255, 0.3);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
}
@media screen and (max-width: 768px) {
	.about-index__mvp {
		width: 100%;
		padding: 40px 10px;
		margin: 60px auto 120px;
	}
}
.about-index__mvp__logo {
	width: 580px;
	display: block;
	margin: 0 auto 60px;
}
@media screen and (max-width: 768px) {
	.about-index__mvp__logo {
		width: 280px;
		margin-bottom: 40px;
	}
}
.about-index__mvp__caption {
	display: inline;
	padding: 6px 30px;
	height: 32px;
	border-radius: 30px;
	font-size: 13px;
	background: #E5661E;
	font-weight: bold;
	color: #fff;
}
@media screen and (max-width: 768px) {
	.about-index__mvp__caption {
		height: 28px;
		padding: 5px 15px;
	}
}
.about-index__mvp__text {
	margin: 20px auto 60px;
	font-size: 28px;
	line-height: 1.7;
	font-weight: bold;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.about-index__mvp__text {
		font-size: 4.8vw;
		margin-bottom: 40px;
	}
}
.about-index__mvp__text:last-of-type {
	margin-bottom: 0;
}

/*----------------------------------------
	Page Business Field
----------------------------------------*/
.about-business__title {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 12px;
	font-size: 32px;
	line-height: 1.25;
	font-weight: bold;
}
.about-business__title:before {
	content: "";
	width: 24px;
	height: 24px;
	border-radius: 100%;
	background: #E5661E;
	margin-top: 8px;
	flex: 24px 0 0;
}
@media screen and (max-width: 768px) {
	.about-business__title {
		align-items: flex-start;
		font-size: 6.93vw;
		gap: 8px;
		letter-spacing: 0;
	}
	.about-business__title:before {
		margin-top: 8px;
		width: 20px;
		height: 20px;
		flex: 20px 0 0;
	}
}
.about-business__title--case {
	font-size: 26px;
}
.about-business__title--case:before {
	margin-top: 3px;
}
@media screen and (max-width: 768px) {
	.about-business__title--case {
		font-size: 5.87vw;
	}
}
.about-business__sub {
	font-size: 20px;
	line-height: 1.6;
	font-weight: bold;
	margin: 40px auto 30px;
}
@media screen and (max-width: 768px) {
	.about-business__sub {
		font-size: 5.3vw;
		margin: 20px auto 30px;
	}
}
.about-business__caption {
	display: inline-block;
	height: 42px;
	border-radius: 42px;
	background: #E5661E;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	padding: 8px 30px;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.about-business__caption {
		height: 28px;
		padding: 5px 20px;
		font-size: 13px;
	}
}
.about-business__row {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 60px;
	margin: 0 auto 110px;
}
@media screen and (max-width: 768px) {
	.about-business__row {
		flex-direction: column;
		gap: 30px;
		margin-bottom: 60px;
	}
}
.about-business__row p {
	font-size: 16px;
	line-height: 1.75;
}
@media screen and (max-width: 768px) {
	.about-business__row p {
		font-size: 4.27vw;
	}
}
.about-business__row img {
	width: 400px;
}
@media screen and (max-width: 768px) {
	.about-business__row img {
		width: 100%;
	}
}
.about-business__lead {
	font-size: 32px;
	line-height: 1.6;
	font-weight: bold;
	text-align: center;
	margin: 30px auto 80px;
}
@media screen and (max-width: 768px) {
	.about-business__lead {
		margin: 20px auto 50px;
		font-size: 6.93vw;
		text-align: left;
	}
}
.about-business__case {
	align-items: center;
	flex-direction: column;
	display: flex;
	margin: 150px auto 160px;
}
@media screen and (max-width: 768px) {
	.about-business__case {
		justify-content: flex-start;
		margin: 120px auto 110px;
	}
}
.about-business__case__list {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
	gap: 60px;
}
@media screen and (max-width: 768px) {
	.about-business__case__list {
		gap: 50px;
	}
}
.about-business__case__item {
	width: calc(50% - 30px);
}
@media screen and (max-width: 768px) {
	.about-business__case__item {
		width: 100%;
	}
}
.about-business__case__row {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 20px;
}
@media screen and (max-width: 768px) {
	.about-business__case__row {
		flex-direction: column;
		align-items: center;
	}
}
.about-business__case__row p {
	font-size: 16px;
	line-height: 1.75;
}
@media screen and (max-width: 768px) {
	.about-business__case__row p {
		font-size: 4.27vw;
	}
}
.about-business__case h4 {
	margin: 30px auto 20px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.6;
}
@media screen and (max-width: 768px) {
	.about-business__case h4 {
		font-size: 4.27vw;
		margin: 20px auto 15px;
	}
}
.about-business__case img {
	width: 120px;
}
@media screen and (max-width: 768px) {
	.about-business__case img {
		width: 175px;
	}
}

/*----------------------------------------
	Page Global
----------------------------------------*/
.about-global__content {
	justify-content: center;
	align-items: center;
	flex-direction: column;
	display: flex;
	gap: 20px;
}
.about-global__content:first-of-type {
	margin-bottom: 60px;
}
@media screen and (min-width: 769px) {
	.about-global__content:first-of-type {
		border-bottom: 1px solid #ccc;
		padding-bottom: 60px;
	}
}
@media screen and (min-width: 769px) {
	.about-global__content:first-of-type img {
		width: 80vw;
		max-width: 1024px;
	}
}
.about-global__content:nth-of-type(2) {
	margin-bottom: 110px;
}
@media screen and (min-width: 769px) {
	.about-global__content:nth-of-type(2) img {
		width: 59.2vw;
		max-width: 758px;
		margin-top: -50px;
	}
}
.about-global__title {
	display: inline;
	padding: 8px 30px;
	height: 42px;
	border-radius: 42px;
	font-size: 18px;
	background: #E5661E;
	font-weight: bold;
	color: #fff;
}
@media screen and (max-width: 768px) {
	.about-global__title {
		font-size: 13px;
		height: 28px;
		padding: 5px 15px;
	}
}

/*----------------------------------------
	Page Corporate Profile
----------------------------------------*/
.about-corporate__wrapper {
	width: 80.9%;
	max-width: 1280px;
	margin: 200px auto 120px;
	padding: 100px 90px;
	background: #fff;
	border-radius: 30px;
}
@media screen and (max-width: 768px) {
	.about-corporate__wrapper {
		width: 89.3vw;
		margin: 50px auto 30px;
		padding: 40px 20px;
	}
}
.about-corporate__table {
	border-collapse: collapse;
	border-bottom: 1px solid #E3E3E3;
	font-size: 16px;
	line-height: 1.5;
}
@media screen and (max-width: 768px) {
	.about-corporate__table {
		display: block;
		font-size: 4.27vw;
		border-bottom: 0;
	}
}
.about-corporate__table tr {
	border-top: 1px solid #E3E3E3;
}
@media screen and (max-width: 768px) {
	.about-corporate__table tr {
		justify-content: flex-start;
		align-items: flex-start;
		flex-direction: column;
		display: flex;
		gap: 16px;
		padding: 20px;
	}
}
.about-corporate__table th {
	width: 174px;
	padding: 40px 20px;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.about-corporate__table th {
		padding: 0;
	}
}
.about-corporate__table td {
	padding: 40px 20px;
}
@media screen and (max-width: 768px) {
	.about-corporate__table td {
		padding: 0;
	}
}

/*----------------------------------------
	Challenge Common
----------------------------------------*/
.challenge .l-container__head h1 {
	font-size: 70px;
}
@media screen and (max-width: 768px) {
	.challenge .l-container__head h1 {
		font-size: 13.3vw;
	}
}
.challenge__head {
	width: 87.5vw;
	max-width: 1280px;
	margin: 0 auto 80px;
}
@media screen and (max-width: 768px) {
	.challenge__head {
		width: 89.3vw;
		margin-bottom: 40px;
	}
}
.challenge__head__wrapper {
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	background: #fff;
	border-radius: 40px;
	gap: 40px;
	padding: 40px 40px 100px;
}
@media screen and (max-width: 768px) {
	.challenge__head__wrapper {
		flex-direction: column;
		align-items: center;
		border-radius: 15px;
		gap: 26px;
		padding: 30px 20px 150px;
	}
}
.challenge__head__wrapper img {
	width: 520px;
}
@media screen and (max-width: 768px) {
	.challenge__head__wrapper img {
		width: 73.3vw;
	}
}
@media screen and (max-width: 768px) {
	.challenge__head__content {
		width: 100%;
	}
}
@media screen and (min-width: 769px) {
	.challenge__head__content {
		padding-top: 26px;
	}
}
.challenge__head__caption {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	line-height: 1.1;
	font-size: 32px;
}
@media screen and (max-width: 768px) {
	.challenge__head__caption {
		font-size: 5.3vw;
	}
}
.challenge__head__title {
	font-size: 36px;
	font-weight: bold;
	line-height: 1.4;
	margin-top: 20px;
}
@media screen and (max-width: 768px) {
	.challenge__head__title {
		font-size: 6.4vw;
		margin-top: 4px;
	}
}
.challenge__head__detail {
	margin: -60px auto 0;
	width: 82.1%;
	border-radius: 30px;
	border: 2px solid #ccc;
	padding: 60px;
	background: rgba(255, 255, 255, 0.2);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
}
@media screen and (max-width: 768px) {
	.challenge__head__detail {
		width: 100%;
		margin-top: -96px;
		padding: 36px 20px 30px;
	}
}
.challenge__head__detail h2 {
	font-size: 24px;
	color: #E4661D;
	line-height: 1.6;
	font-weight: bold;
	margin-bottom: 36px;
	text-align: center;
}
@media screen and (min-width: 769px) {
	.challenge__head__detail h2 {
		letter-spacing: 0;
	}
}
@media screen and (max-width: 768px) {
	.challenge__head__detail h2 {
		font-size: 16px;
		margin-bottom: 16px;
	}
}
.challenge__head__detail p {
	font-size: 16px;
	line-height: 2;
}
@media screen and (max-width: 768px) {
	.challenge__head__detail p {
		font-size: 4.27vw;
		line-height: 1.6;
	}
}
.challenge__outer {
	width: 81.25vw;
	max-width: 1400px;
	margin: 0 auto 120px;
}
@media screen and (max-width: 768px) {
	.challenge__outer {
		width: 89.3vw;
		margin-bottom: 60px;
	}
}
.challenge__wrapper {
	position: relative;
	background: #fff;
	width: 100%;
	border-radius: 30px;
}
@media screen and (max-width: 768px) {
	.challenge__wrapper {
		border-radius: 15px;
	}
}
.challenge__back {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: 320px;
	height: 80px;
	border: 2px solid #ccc;
	position: relative;
	outline: 0;
	border-radius: 80px;
	background: #fff;
	color: #219BAC;
	font-size: 24px;
	font-weight: bold;
	cursor: pointer;
	transition: 0.2s;
	padding: 0 40px;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.challenge__back {
		justify-content: center;
		width: 78.7vw;
		font-size: 4.8vw;
	}
}
@media (hover: hover) {
	.challenge__back:hover {
		opacity: 1;
		scale: 1.02;
	}
	.challenge__back:hover span {
		translate: 4px -50%;
	}
}
.challenge__back:active {
	opacity: 1;
	scale: 0.98;
}
.challenge__back:active span {
	translate: 4px -50%;
}
@media screen and (max-width: 768px) {
	.challenge__back:active span {
		translate: 0 -50%;
	}
}
.challenge__back span {
	position: absolute;
	width: 40px;
	height: 40px;
	right: 20px;
	top: 50%;
	translate: 0 -50%;
	border-radius: 100%;
	background: #219BAC;
	z-index: 3;
	transition: 0.2s;
}
.challenge__back span:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	position: absolute;
	left: 16px;
	top: 16px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.challenge__back span {
		width: 30px;
		height: 30px;
		right: 15px;
	}
	.challenge__back span:after {
		left: 11px;
		top: 11px;
	}
}

/*----------------------------------------
	Challenge Index
----------------------------------------*/
.challenge-index__menu {
	justify-content: center;
	flex-direction: column;
	display: flex;
	gap: 60px;
	width: 68.75vw;
	max-width: 880px;
	margin: 100px auto 120px;
}
@media screen and (max-width: 768px) {
	.challenge-index__menu {
		width: 89.3vw;
		gap: 52px;
		margin: 45px auto 60px;
	}
}
.challenge-index__link {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 4.5%;
	width: 100%;
	border-radius: 240px;
	background: #fff;
	position: relative;
	transition: 0.2s;
}
@media screen and (max-width: 768px) {
	.challenge-index__link {
		height: auto;
		flex-direction: column;
		gap: 10px;
		padding: 20px 20px 30px;
		border-radius: 15px;
	}
}
.challenge-index__link picture {
	display: block;
	width: 54.5%;
}
@media screen and (max-width: 768px) {
	.challenge-index__link picture {
		width: 100%;
	}
}
.challenge-index__link img {
	width: 100%;
}
.challenge-index__link p {
	font-size: clamp(20px, 2.18vw, 28px);
	font-weight: bold;
	line-height: 1.5;
	color: #219BAC;
}
@media screen and (max-width: 768px) {
	.challenge-index__link p {
		font-size: 4.27vw;
		padding-right: 64px;
	}
}
.challenge-index__link span {
	width: 40px;
	height: 40px;
	border-radius: 100%;
	position: absolute;
	right: 30px;
	top: 100px;
	background: #219BAB;
	transition: 0.2s;
}
.challenge-index__link span:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	position: absolute;
	left: 16px;
	top: 16px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.challenge-index__link span {
		width: 32px;
		height: 32px;
		right: 20px;
		top: auto;
		bottom: 38px;
	}
	.challenge-index__link span:after {
		left: 13px;
		top: 13px;
	}
}
@media (hover: hover) {
	.challenge-index__link:hover {
		opacity: 1;
		scale: 1.02;
	}
	.challenge-index__link:hover span {
		translate: 4px 0;
	}
}
.challenge-index__link:active {
	opacity: 1;
	scale: 0.98;
}
.challenge-index__link:active span {
	translate: 4px 0;
}
@media screen and (max-width: 768px) {
	.challenge-index__link:active span {
		translate: 0 0;
	}
}
.challenge-index__note {
	font-size: 15px;
	margin-top: 20px;
	line-height: 1.6;
}
@media screen and (min-width: 769px) {
	.challenge-index__note {
		text-align: center;
	}
}
@media screen and (max-width: 768px) {
	.challenge-index__note {
		margin-top: 10px;
		font-size: 3.73vw;
	}
}

/*----------------------------------------
	Challenge Index
----------------------------------------*/
.challenge-moto .challenge__wrapper {
	padding-bottom: 105px;
	margin-bottom: 80px;
}
@media screen and (max-width: 768px) {
	.challenge-moto .challenge__wrapper {
		padding-bottom: 46px;
		margin-bottom: 40px;
	}
}
.challenge-moto__section {
	width: calc(100% - 160px);
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.challenge-moto__section {
		width: calc(100% - 40px);
		padding-bottom: 0;
	}
}
.challenge-moto__section:first-of-type {
	padding-top: 80px;
}
@media screen and (max-width: 768px) {
	.challenge-moto__section:first-of-type {
		padding-top: 20px;
	}
}
.challenge-moto__section:not(:first-of-type) {
	border-top: 1px solid #707070;
	margin-top: 80px;
	padding-top: 80px;
}
@media screen and (max-width: 768px) {
	.challenge-moto__section:not(:first-of-type) {
		margin-top: 50px;
		padding-top: 60px;
	}
}
.challenge-moto__head {
	margin: 0 auto 40px;
}
@media screen and (min-width: 769px) {
	.challenge-moto__head {
		margin-bottom: 80px;
		display: grid;
		grid-template: "image .    .   " 0 "image .  lead  " auto "image .    .   " 30px "image . profile" auto/400px 40px 1fr;
	}
}
.challenge-moto__head__image {
	width: 100%;
	grid-area: image;
}
.member-detail__head > .challenge-moto__head__image {
	-ms-grid-row: 1;
	-ms-grid-row-span: 5;
	-ms-grid-column: 3;
}
.challenge-moto__head__lead {
	flex: 1;
	grid-area: lead;
	font-size: 32px;
	line-height: 1.6;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.challenge-moto__head__lead {
		font-size: 5.3vw;
		margin: 16px auto;
	}
}
.challenge-moto__head__profile {
	grid-area: profile;
	width: 280px;
}
@media screen and (max-width: 768px) {
	.challenge-moto__head__profile {
		width: 100%;
	}
}
.challenge-moto__head__profile h3 {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	padding-bottom: 6px;
	line-height: 1.1;
	font-size: 18px;
	border-bottom: 1px solid #6E6E6D;
}
.challenge-moto__head__profile p {
	border-bottom: 1px solid #6E6E6D;
	font-size: 13px;
	padding: 6px 0;
	line-height: 1.25;
}
.challenge-moto__inner {
	padding: 0 80px;
	margin: 80px auto;
}
@media screen and (max-width: 768px) {
	.challenge-moto__inner {
		padding: 0;
		margin: 0;
	}
}
.challenge-moto__inner--only-text {
	margin: 0 auto;
}
.challenge-moto__sub {
	font-size: 24px;
	line-height: 1.6;
	font-weight: bold;
	margin: 76px 0;
}
@media screen and (max-width: 768px) {
	.challenge-moto__sub {
		font-size: 4.8vw;
		margin: 28px 0;
	}
}
.challenge-moto__text {
	line-height: 16px;
	line-height: 2;
}
@media screen and (max-width: 768px) {
	.challenge-moto__text {
		font-size: 4.27vw;
	}
}
.challenge-moto__news {
	padding: 60px 180px;
	background: #F2F2F2;
	margin-top: 50px;
}
@media screen and (max-width: 768px) {
	.challenge-moto__news {
		margin-top: 70px;
		padding: 60px 20px 30px;
	}
}
.challenge-moto__news__title {
	line-height: 1.1;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
	.challenge-moto__news__title {
		margin-bottom: 30px;
	}
}
.challenge-moto__news__row {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 40px;
}
@media screen and (max-width: 768px) {
	.challenge-moto__news__row {
		flex-direction: column;
		gap: 26px;
	}
}
.challenge-moto__news img {
	width: 240px;
}
@media screen and (max-width: 768px) {
	.challenge-moto__news img {
		width: 100%;
	}
}

/*----------------------------------------
	Challenge Index
----------------------------------------*/
.challenge-mod .challenge__wrapper {
	padding: 80px 0 60px;
	margin-bottom: 80px;
}
@media screen and (max-width: 768px) {
	.challenge-mod .challenge__wrapper {
		padding: 30px 20px 40px;
		margin-bottom: 40px;
	}
}
.challenge-mod__line {
	width: calc(100% - 160px);
	height: 1px;
	background: #707070;
	margin: 80px auto 100px;
}
@media screen and (max-width: 768px) {
	.challenge-mod__line {
		width: 100%;
		margin: 40px auto 30px;
	}
}
.challenge-mod .js-mod-slider {
	overflow: hidden;
	position: relative;
	width: 100%;
}
.challenge-mod .js-mod-slider__track {
	display: flex;
	transition: transform 0.3s ease;
	will-change: transform;
	width: auto;
	cursor: pointer;
}
.challenge-mod .js-mod-slider__slide {
	flex: 0 0 80%;
	max-width: 520px;
	margin: 0 15px;
}
@media screen and (max-width: 768px) {
	.challenge-mod .js-mod-slider__slide {
		flex: 0 0 100%;
	}
	.challenge-mod .js-mod-slider__slide img {
		border-radius: 30px;
		overflow: hidden;
	}
}
.challenge-mod .js-mod-slider__pagination {
	text-align: center;
	margin-top: 10px;
}
.challenge-mod .js-mod-slider__pagination span {
	display: inline-block;
	width: 12px;
	height: 12px;
	background: #ccc;
	border-radius: 50%;
	margin: 0 4px;
	cursor: pointer;
}
.challenge-mod .js-mod-slider__pagination span.is-active {
	background: #E6661D;
}
.challenge-mod__slide-content {
	margin: 44px auto 0;
	padding: 0 180px !important;
}
@media screen and (max-width: 768px) {
	.challenge-mod__slide-content {
		margin-top: 20px;
		padding: 0 !important;
	}
}
.challenge-mod__slide-inner {
	width: 100%;
}
.challenge-mod__title {
	font-size: 32px;
	line-height: 1.6;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.challenge-mod__title {
		font-size: 5.3vw;
	}
}
.challenge-mod__sub {
	font-size: 20px;
	color: #E4661D;
	font-weight: bold;
	margin: 50px auto 16px;
}
@media screen and (max-width: 768px) {
	.challenge-mod__sub {
		font-size: 4.27vw;
		margin-top: 30px;
	}
}
.challenge-mod__point {
	border-top: 2px solid #ccc;
	padding-top: 20px;
}
.challenge-mod__point li {
	list-style: disc;
	list-style-position: inside;
	line-height: 1.75;
	font-size: 16px;
}
.challenge-mod__point li:not(:first-of-type) {
	margin-top: 12px;
}
@media screen and (max-width: 768px) {
	.challenge-mod__point li:not(:first-of-type) {
		font-size: 4.27vw;
		margin-top: 4px;
	}
}

/*----------------------------------------
	Page Member Index
----------------------------------------*/
.member-search {
	background: rgba(255, 255, 255, 0.9);
	border-radius: 30px;
	width: 87.5%;
	max-width: 1140px;
	margin: 0 auto 60px;
	padding: 28px 60px 50px;
	position: relative;
	overflow: hidden;
}
@media screen and (max-width: 768px) {
	.member-search {
		width: 89.3%;
		margin-bottom: 30px;
		border-radius: 15px;
		padding: 28px 8vw 50px;
	}
}
.member-search__notice {
	position: absolute;
	right: 30px;
	top: 20px;
	font-size: 13px;
}
@media screen and (max-width: 768px) {
	.member-search__notice {
		right: 4vw;
		top: 4vw;
		font-size: 11px;
	}
}
.member-search__content {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 60px;
}
.member-search__content:not(:last-of-type) {
	border-bottom: 1px solid #DFE4ED;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
	.member-search__content {
		gap: 10px;
		flex-direction: column;
	}
}
.member-search__title {
	width: 82px;
	margin-top: 4px;
}
.member-search__buttons {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
	gap: 20px 10px;
	width: calc(100% - 138px);
}
@media screen and (max-width: 768px) {
	.member-search__buttons {
		width: 100%;
		gap: 10px 5px;
	}
}
.member-search__button {
	outline: none;
	border: none;
	background: #fff;
	border: 2px solid #ccc;
	border-radius: 34px;
	padding: 8px 16px;
	font-size: 13px;
	line-height: 1.1;
	cursor: pointer;
	white-space: nowrap;
	transition: 0.2s;
	color: #000;
}
.member-search__button--active {
	background: #E5661E;
	color: #fff;
}
@media (hover: hover) {
	.member-search__button:hover {
		opacity: 0.8;
	}
}
.member-search__button:active {
	opacity: 8;
	scale: 0.98;
}

.members {
	max-width: 1036px;
	width: 80.9vw;
	margin: 0 auto 60px;
}
@media screen and (max-width: 768px) {
	.members {
		width: 89.3vw;
		margin-bottom: 80px;
	}
}
.members .l-container__head h1 {
	font-size: 100px;
}
@media screen and (max-width: 768px) {
	.members .l-container__head h1 {
		font-size: 13.3vw;
	}
}
.members__head {
	justify-content: space-between;
	align-items: flex-end;
	flex-direction: row;
	display: flex;
	margin-bottom: 20px;
	gap: 20px;
}
@media screen and (max-width: 768px) {
	.members__head {
		flex-direction: column;
		gap: 10px;
	}
}
.members__selected-tags {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
	gap: 10px 20px;
	width: 100%;
}
@media screen and (max-width: 768px) {
	.members__selected-tags {
		gap: 0 15px;
	}
}
.members__selected-tag {
	display: block;
	font-size: 13px;
	height: 34px;
	line-height: 34px;
}
.members__clear {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 8px;
	width: 115px;
	height: 34px;
	border-radius: 34px;
	color: #219BAB;
	font-size: 13px;
	background: #fff;
	border: 1px solid #219BAB;
	cursor: pointer;
	outline: 0;
	transition: 0.2s;
	opacity: 0;
	visibility: hidden;
}
.members__clear--show {
	opacity: 1;
	visibility: visible;
}
.members__clear span {
	width: 12px;
	height: 12px;
	position: relative;
}
.members__clear span:before, .members__clear span:after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	width: 1px;
	height: 13px;
	background: #219BAB;
}
.members__clear span:before {
	rotate: 45deg;
}
.members__clear span:after {
	rotate: -45deg;
}
@media (hover: hover) {
	.members__clear:hover {
		opacity: 0.8;
	}
}
.members__clear:active {
	opacity: 8;
	scale: 0.98;
}
.members__counts {
	justify-content: flex-end;
	align-items: flex-end;
	flex-direction: row;
	display: flex;
	gap: 6px;
	font-size: 16px;
	line-height: 1.1;
	color: #6E6E6D;
}
@media screen and (max-width: 768px) {
	.members__counts {
		font-size: 13px;
		margin-bottom: 12px;
	}
}
.members__counts strong {
	color: #E6661D;
	font-size: 25px;
	font-weight: bold;
}
.members__counts span {
	padding-bottom: 2px;
}
.members__no-result {
	display: none;
	width: 480px;
	background: #fff;
	border-radius: 30px;
	margin: 0 auto;
	padding: 30px;
	text-align: center;
	line-height: 1.6;
	font-size: 18px;
	margin-top: 20px;
}
@media screen and (max-width: 768px) {
	.members__no-result {
		width: 80%;
		font-size: 4.27vw;
		border-radius: 15px;
	}
}
.members__no-result--show {
	display: block;
}
.members__list {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}
@media screen and (max-width: 768px) {
	.members__list {
		flex-direction: column;
		gap: 10px;
	}
}
.members__item {
	width: calc(33.3% - 21px);
	transition: 0.2s;
	opacity: 1;
	visibility: visible;
}
.members__item--hide {
	opacity: 0;
	visibility: hidden;
}
@media screen and (max-width: 768px) {
	.members__item {
		width: 89.3vw;
	}
}
.members__link {
	display: block;
	position: relative;
	border-radius: 30px;
	overflow: hidden;
	transition: 0.2s;
}
@media screen and (max-width: 768px) {
	.members__link {
		justify-content: flex-end;
		align-items: flex-start;
		flex-direction: row-reverse;
		display: flex;
		gap: 18px;
		border-radius: 0;
		min-height: auto;
	}
}
@media (hover: hover) {
	.members__link:hover {
		opacity: 1;
		scale: 1.02;
	}
	.members__link:hover .members__arrow {
		translate: 4px 0;
	}
}
.members__link:active {
	opacity: 1;
	scale: 0.98;
}
.members__link:active .members__arrow {
	translate: 4px 0;
}
@media screen and (max-width: 768px) {
	.members__link:active .members__arrow {
		translate: 0;
	}
}
.members picture {
	position: relative;
	display: block;
	border-bottom-left-radius: 30px;
	border-bottom-right-radius: 30px;
	overflow: hidden;
}
@media screen and (max-width: 768px) {
	.members picture {
		border-bottom-left-radius: 15px;
		border-bottom-right-radius: 15px;
	}
}
.members picture:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 59.2%;
	bottom: 0;
	left: 0;
	background: linear-gradient(to top, rgba(68, 68, 68, 0.96) 0%, rgba(68, 68, 68, 0) 100%);
}
.members__image {
	width: 100%;
	z-index: 1;
}
@media screen and (max-width: 768px) {
	.members__image {
		width: 28.5vw;
		border-radius: 15px;
	}
}
.members__content {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: column;
	display: flex;
	gap: 16px;
	position: absolute;
	z-index: 2;
	left: 50%;
	bottom: 32px;
	translate: -50% 0;
	width: calc(100% - 40px);
}
@media screen and (max-width: 768px) {
	.members__content {
		position: relative;
		width: 56vw;
		translate: 0 0;
		left: 0;
		bottom: 0;
	}
}
.members__title {
	color: #fff;
	font-size: 20px;
	line-height: 1.5;
	font-weight: bold;
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
@media screen and (max-width: 768px) {
	.members__title {
		font-size: 3.73vw;
		color: #000;
	}
}
.members__tags {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	width: 100%;
}
@media screen and (max-width: 768px) {
	.members__tags {
		width: 100%;
		gap: 2px 4px;
	}
}
.members__tag {
	color: #DBDBDB;
	font-size: 12px;
	white-space: nowrap;
}
.members__tag:before {
	content: "#";
}
@media screen and (max-width: 768px) {
	.members__tag {
		color: #000;
		font-size: 2.93vw;
	}
}
.members__arrow {
	position: absolute;
	width: 40px;
	height: 40px;
	right: 20px;
	bottom: 20px;
	border-radius: 100%;
	background: #219BAC;
	z-index: 3;
	transition: 0.2s;
}
.members__arrow:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	left: 16px;
	top: 16px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.members__arrow {
		width: 20px;
		height: 20px;
		right: 9px;
		bottom: 9px;
	}
	.members__arrow:after {
		width: 4px;
		height: 4px;
		border-top-width: 1px;
		border-right-width: 1px;
		left: 7.5px;
		top: 7.5px;
	}
}

/*----------------------------------------
	Page Member Detail
----------------------------------------*/
.member-detail__head {
	width: 87.5%;
	max-width: 1120px;
	margin: 0 auto 90px;
	display: grid;
	grid-template: "title   . image" auto "  .     . image" 30px "history . image" auto "  .     . image" 8px " tags   . image" auto/1fr 5% 51%;
}
@media screen and (max-width: 768px) {
	.member-detail__head {
		width: 89.3%;
		grid-template: " title " auto "   .   " 24px " image " auto "   .   " 20px "history" auto "   .   " 10px "  tags " auto/1fr;
		margin-bottom: 40px;
	}
	.member-detail__head > .challenge-moto__head__image {
		-ms-grid-row: 3;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
	}
}
.member-detail__head__title {
	-ms-grid-row: 1;
	-ms-grid-column: 1;
	grid-area: title;
}
.member-detail__head__title span {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 32px;
	line-height: 1.1;
}
@media screen and (max-width: 768px) {
	.member-detail__head__title span {
		font-size: 6.4vw;
	}
}
.member-detail__head__title h1 {
	font-family: "Noto Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	margin-top: 20px;
	font-size: 36px;
	line-height: 1.6;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.member-detail__head__title h1 {
		margin-top: 10px;
		font-size: 8vw;
	}
}
.member-detail__head__image {
	grid-area: image;
}
.member-detail__head > .member-detail__head__image {
	-ms-grid-row: 1;
	-ms-grid-row-span: 5;
	-ms-grid-column: 3;
}
.member-detail__head__image img {
	-o-object-fit: cover;
	object-fit: cover;
	aspect-ratio: 145/97;
	border-radius: 30px;
	overflow: hidden;
}
.member-detail__head__history {
	-ms-grid-row: 3;
	-ms-grid-column: 1;
	grid-area: history;
	border-top: 1px solid #6E6E6D;
}
.member-detail__head__history li {
	border-bottom: 1px solid #6E6E6D;
	font-size: 13px;
	line-height: 1.2;
	padding: 8px 0;
}
@media screen and (max-width: 768px) {
	.member-detail__head__history li {
		font-size: 3.46vw;
	}
}
.member-detail__head__tags {
	-ms-grid-row: 5;
	-ms-grid-column: 1;
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	grid-area: tags;
}
.member-detail__head__tags li {
	font-size: 13px;
	color: #219BAB;
	line-height: 1.1;
}
@media screen and (max-width: 768px) {
	.member-detail__head__tags li {
		font-size: 3.46vw;
	}
}
.member-detail__head__tags li:before {
	content: "#";
}
.member-detail__content {
	width: 81.25%;
	max-width: 1040px;
	margin: 0 auto;
	background: #fff;
	border-radius: 30px;
	padding-bottom: 100px;
}
@media screen and (max-width: 768px) {
	.member-detail__content {
		width: 89.3%;
		border-radius: 15px;
		padding-bottom: 50px;
	}
}
.member-detail__inner {
	width: 100%;
	padding: 180px 100px 0;
}
@media screen and (max-width: 768px) {
	.member-detail__inner {
		padding: 40px 20px 0;
	}
}
.member-detail__inner:not(.member-detail__inner:first-of-type) {
	padding-top: 80px;
}
@media screen and (max-width: 768px) {
	.member-detail__inner:not(.member-detail__inner:first-of-type) {
		padding: 32px 10px 56px;
	}
}
.member-detail__inner p {
	font-size: 16px;
	line-height: 2;
}
@media screen and (max-width: 768px) {
	.member-detail__inner p {
		font-size: 4.27vw;
	}
}
.member-detail__inner img {
	display: block;
	width: 100%;
	border-radius: 30px;
	margin: 54px auto 75px;
}
@media screen and (max-width: 768px) {
	.member-detail__inner img {
		margin: 20px auto 40px;
	}
}
.member-detail__inner h4 {
	font-size: 17px;
	font-weight: bold;
	border-bottom: 2px solid #6E6E6D;
	color: #6E6E6D;
	line-height: 1.1;
	padding-bottom: 4px;
	display: inline;
}
@media screen and (max-width: 768px) {
	.member-detail__inner h4 {
		font-size: 4.53vw;
	}
}
.member-detail__caption {
	margin-bottom: 40px;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.member-detail__caption {
		margin-bottom: 28px;
	}
}
.member-detail__caption h2 {
	padding-left: 32px;
	gap: 8px;
	font-size: 18px;
	line-height: 1.2;
	position: relative;
}
.member-detail__caption h2:before {
	content: "";
	width: 24px;
	height: 24px;
	background: #E5661E;
	border-radius: 100%;
	position: absolute;
	left: 0;
	top: 0;
}
@media screen and (max-width: 768px) {
	.member-detail__caption h2 {
		font-size: 3.73vw;
		padding-left: 7.46vw;
	}
	.member-detail__caption h2:before {
		width: 4.8vw;
		height: 4.8vw;
	}
}
.member-detail__caption h3 {
	font-size: 32px;
	line-height: 1.75;
	margin-top: 14px;
}
@media screen and (max-width: 768px) {
	.member-detail__caption h3 {
		margin-top: 20px;
		font-size: 5.3vw;
	}
}
.member-detail__history {
	background: #F2F2F2;
	margin-top: 80px;
	padding: 80px 80px 110px;
}
@media screen and (max-width: 768px) {
	.member-detail__history {
		margin-top: 36px;
		padding: 30px 10px 24px;
	}
	.member-detail__history picture {
		display: block;
		overflow-x: scroll;
		padding-bottom: 20px;
		scrollbar-color: #219BAB #F0EFEE;
	}
	.member-detail__history img {
		width: 250vw;
	}
}
.member-detail__definition {
	margin-top: 50px;
}
@media screen and (max-width: 768px) {
	.member-detail__definition {
		margin-top: 30px;
	}
}
.member-detail__definition + .member-detail__caption {
	margin-top: 60px;
}
@media screen and (max-width: 768px) {
	.member-detail__definition + .member-detail__caption {
		margin-top: 45px;
	}
}
.member-detail__row {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 40px;
}
@media screen and (max-width: 768px) {
	.member-detail__row {
		flex-direction: column;
		align-items: center;
		gap: 0;
	}
}
.member-detail__row p {
	flex: 1;
	text-align: left;
}
@media screen and (max-width: 768px) {
	.member-detail__row p {
		width: 100%;
	}
}
.member-detail__row img {
	width: 240px;
}
@media screen and (max-width: 768px) {
	.member-detail__row img {
		width: 200px;
	}
}
.member-detail__back {
	justify-content: space-between;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: 320px;
	height: 80px;
	border: 2px solid #ccc;
	padding: 0 20px 0 40px;
	color: #219BAC;
	border-radius: 80px;
	background: #fff;
	margin: 60px auto 0;
	font-size: 18px;
	font-weight: bold;
	transition: 0.2s;
}
@media screen and (max-width: 768px) {
	.member-detail__back {
		width: 78.7vw;
		margin-top: 40px;
		font-size: 4.8vw;
	}
}
@media (hover: hover) {
	.member-detail__back:hover {
		opacity: 1;
		scale: 1.02;
	}
	.member-detail__back:hover .member-detail__back__arrow {
		translate: 4px 0;
	}
}
.member-detail__back:active {
	opacity: 1;
	scale: 0.98;
}
.member-detail__back:active .member-detail__back__arrow {
	translate: 4px 0;
}
@media screen and (max-width: 768px) {
	.member-detail__back:active .member-detail__back__arrow {
		translate: 0;
	}
}
.member-detail__back__arrow {
	width: 40px;
	height: 40px;
	border-radius: 100%;
	background: #219BAC;
	position: relative;
	transition: 0.2s;
}
.member-detail__back__arrow:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	position: absolute;
	left: 16px;
	top: 16px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.member-detail__back__arrow {
		width: 32px;
		height: 32px;
	}
	.member-detail__back__arrow:after {
		left: 13px;
		top: 13px;
	}
}
.member-detail__think {
	width: 65.6vw;
	max-width: 1000px;
	margin: 0 auto 80px;
	padding: 60px 60px 70px;
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.3);
	border: 2px solid #ccc;
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
}
@media screen and (max-width: 768px) {
	.member-detail__think {
		width: 89.3vw;
		padding: 30px 20px 24px;
		margin-bottom: 20px;
		border-radius: 15px;
	}
}
.member-detail__think__title {
	color: #E4661D;
	font-size: 24px;
	line-height: 1.25;
	font-weight: bold;
	margin-bottom: 40px;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.member-detail__think__title {
		font-size: 4.27vw;
		margin-bottom: 16px;
		letter-spacing: 0;
	}
}
.member-detail__think__text {
	font-size: 16px;
	line-height: 2;
}
@media screen and (max-width: 768px) {
	.member-detail__think__text {
		font-size: 4.27vw;
	}
}

/*----------------------------------------
	Page Careers Index
----------------------------------------*/
.message .l-container {
	padding-bottom: 0;
	padding-top: 90px;
}
@media screen and (max-width: 768px) {
	.message .l-container {
		padding-top: 70px;
	}
}
.message .g-footer:before {
	background: #fff;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	width: 100%;
	height: 100px;
}
.message__head {
	position: relative;
	width: 100%;
}
@media screen and (min-width: 769px) {
	.message__head {
		min-height: 840px;
		max-height: 840px;
		overflow: hidden;
	}
}
.message__head .l-container__head {
	margin-left: 0;
}
@media screen and (max-width: 768px) {
	.message__head .l-container__head {
		color: #fff;
	}
}
@media screen and (max-width: 768px) {
	.message__head__titles {
		position: absolute;
		z-index: 1;
	}
	.message__head__titles h1 {
		position: absolute;
		z-index: 1;
		transform: rotate(90deg);
		margin-top: 0;
		margin-left: 0;
		right: -42%;
		top: 154px;
		font-size: 6.4vw;
	}
	.message__head__titles p {
		position: absolute;
		right: 2.2%;
		z-index: 1;
		writing-mode: vertical-rl;
		text-orientation: upright;
		padding-top: 23px;
		padding-left: 0;
		margin-top: 10%;
		white-space: nowrap;
	}
	.message__head__titles p:before {
		top: 0;
		left: 50%;
		translate: -50% 0;
		width: 15px;
		height: 15px;
	}
}
@media screen and (max-width: 768px) {
	.message__head__texts {
		position: absolute;
		left: 20px;
		bottom: 20px;
		z-index: 1;
	}
}
@media screen and (min-width: 769px) {
	.message__head__content {
		position: absolute;
		z-index: 1;
		top: 12%;
		left: 6.25%;
	}
}
.message__head__image {
	position: relative;
	z-index: 0;
}
.message__head__lead {
	font-size: 52px;
	line-height: 1.4;
	font-weight: bold;
	margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
	.message__head__lead {
		color: #fff;
		font-size: 7.4vw;
		margin-bottom: 20px;
	}
}
.message__head__profile {
	width: 360px;
	border-top: 1px solid #6E6E6D;
}
@media screen and (max-width: 768px) {
	.message__head__profile {
		border-top-color: #fff;
		width: 49.6vw;
	}
}
.message__head__profile p {
	border-bottom: 1px solid #6E6E6D;
	font-size: 13px;
	line-height: 1.2;
	padding: 8px 0;
}
@media screen and (max-width: 768px) {
	.message__head__profile p {
		border-bottom-color: #fff;
		font-size: 3.47vw;
		color: #fff;
	}
}
.message__comment {
	padding: 145px 20px 170px;
	position: relative;
	background: #fff;
}
@media screen and (min-width: 769px) {
	.message__comment {
		min-height: 1150px;
	}
}
@media screen and (max-width: 768px) {
	.message__comment {
		padding: 60px 20px 120px;
	}
}
.message__comment__bg {
	position: absolute;
	right: 0;
	top: 50%;
	width: 40.6%;
	max-width: 520px;
	translate: 0 -50%;
	z-index: 0;
}
@media screen and (max-width: 768px) {
	.message__comment__bg {
		width: 74.7vw;
	}
}
.message__comment p {
	max-width: 1280px;
	width: 65.6vw;
	font-size: 18px;
	line-height: 1.8;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 768px) {
	.message__comment p {
		font-size: 4.27vw;
		width: 100%;
	}
}

.careers .l-container {
	padding-bottom: 0;
}
.careers .g-footer:before {
	background: #fff;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	width: 100%;
	height: 100px;
}
.careers .l-under-menu__items {
	margin-bottom: 0;
}

/*----------------------------------------
	Page Careers Index
----------------------------------------*/
@media screen and (min-width: 769px) {
	.careers-index .l-container {
		padding-top: 200px;
	}
}
.careers-index__head {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	width: 83%;
	max-width: 1280px;
	gap: 40px;
}
@media screen and (max-width: 768px) {
	.careers-index__head {
		flex-direction: column;
	}
}
.careers-index__head__title, .careers-index__head__texts {
	width: calc(50% - 20px);
}
@media screen and (max-width: 768px) {
	.careers-index__head__title, .careers-index__head__texts {
		width: 100%;
	}
}
.careers-index__head__title {
	margin-top: -36px;
}
.careers-index__head__texts {
	border-left: 2px solid #1C1D1D;
	padding: 10px 0 16px 30px;
}
@media screen and (max-width: 768px) {
	.careers-index__head__texts {
		border-left: 0;
		padding: 0;
	}
}
.careers-index__head__texts h2 {
	font-size: 32px;
	margin-bottom: 35px;
	line-height: 1.1;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.careers-index__head__texts h2 {
		font-size: 6.4vw;
		line-height: 1.25;
		margin-bottom: 15px;
	}
}
.careers-index__head__texts p {
	padding-left: 0;
	font-size: 15px;
	line-height: 1.87;
}
@media screen and (max-width: 768px) {
	.careers-index__head__texts p {
		font-size: 4vw;
		line-height: 1.73;
	}
}
.careers-index__head__texts p:before {
	display: none;
}
.careers-index__wrapper {
	width: 100%;
	background: #fff;
	padding: 50px 0 80px;
	position: relative;
}
.careers-index__bg {
	position: absolute;
	z-index: 0;
	right: 0;
	top: 50%;
	translate: 0 -50%;
	width: 39vw;
	max-width: 500px;
	aspect-ratio: 1/2;
}
@media screen and (max-width: 768px) {
	.careers-index__bg {
		width: 78vw;
	}
}
.careers-index__inner {
	position: relative;
	z-index: 1;
}
.careers-index__items {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 100px 12.5%;
	flex-wrap: wrap;
	width: 75vw;
	max-width: 960px;
	margin: 0 auto 108px;
}
@media screen and (max-width: 768px) {
	.careers-index__items {
		width: 77.3%;
		flex-direction: column;
		gap: 40px;
		margin-bottom: 82px;
	}
}
.careers-index__link {
	display: block;
	width: 43.75%;
	transition: 0.2s;
	color: #1C1D1D;
	text-decoration: none;
}
@media screen and (max-width: 768px) {
	.careers-index__link {
		width: 100%;
	}
}
@media (hover: hover) {
	.careers-index__link:hover .careers-index__arrow {
		translate: 4px 0;
	}
}
.careers-index__link:active {
	opacity: 1;
	scale: 0.98;
}
.careers-index__link:active .careers-index__arrow {
	translate: 4px 0;
}
@media screen and (max-width: 768px) {
	.careers-index__link:active .careers-index__arrow {
		translate: 0;
	}
}
.careers-index__top {
	position: relative;
	overflow: hidden;
	border-top-right-radius: 80px;
}
.careers-index__top img {
	display: block;
	width: 100%;
}
.careers-index__title {
	font-size: 18px;
	line-height: 1.7;
	font-weight: bold;
	margin: 30px 0 20px;
}
@media screen and (max-width: 768px) {
	.careers-index__title {
		margin: 22px 0 18px;
		font-size: 4.8vw;
	}
}
.careers-index__profile {
	border-top: 1px solid #6E6E6D;
}
.careers-index__profile p {
	border-bottom: 1px solid #6E6E6D;
	font-size: 13px;
	line-height: 1.2;
	padding: 6px 0;
}
@media screen and (max-width: 768px) {
	.careers-index__profile p {
		font-size: 3.47vw;
	}
}
.careers-index__arrow {
	width: 50px;
	height: 50px;
	border-radius: 100%;
	background: #219BAC;
	position: absolute;
	transition: 0.2s;
	right: 20px;
	bottom: 20px;
}
.careers-index__arrow:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	position: absolute;
	left: 21px;
	top: 21px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.careers-index__arrow {
		width: 32px;
		height: 32px;
		display: none;
	}
	.careers-index__arrow:after {
		left: 13px;
		top: 13px;
	}
}

/*----------------------------------------
	Page Careers Detail
----------------------------------------*/
.careers-detail {
	background: #fff;
}
.careers-detail .l-container {
	padding-top: 90px;
}
@media screen and (max-width: 768px) {
	.careers-detail .l-container {
		padding-top: 70px;
	}
}
.careers-detail__head {
	width: 100%;
	max-width: 1600px;
	height: 840px;
	margin: 0 auto;
	position: relative;
	border-top-right-radius: 22%;
	overflow: hidden;
}
@media screen and (max-width: 768px) {
	.careers-detail__head {
		height: 122.7vw;
		border-top-right-radius: 60px;
	}
}
.careers-detail__head__overlay {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background: rgba(0, 0, 0, 0.3);
}
.careers-detail__head img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	display: block;
}
.careers-detail__head__title, .careers-detail__head__text {
	position: absolute;
	color: #fff;
}
.careers-detail__head__title {
	right: -4%;
	top: 84px;
}
@media screen and (max-width: 768px) {
	.careers-detail__head__title {
		right: -44px;
		top: -12px;
	}
}
.careers-detail__head__title h1 {
	transform: rotate(90deg);
	margin-top: 95px;
}
.careers-detail__head__title p {
	writing-mode: vertical-rl;
	text-orientation: upright;
	padding-left: 0;
	padding-top: 40px;
	margin-top: -240px;
	margin-left: 82px;
}
.careers-detail__head__title p:before {
	left: 4px;
}
@media screen and (max-width: 768px) {
	.careers-detail__head__title p {
		padding-top: 28px;
		margin-top: -140px;
		margin-left: 30px;
	}
}
.careers-detail__head__text {
	position: absolute;
	left: 80px;
	bottom: 80px;
}
.careers-detail__head__text:before {
	content: "";
	width: 80px;
	height: 2px;
	display: block;
	background: #fff;
}
@media screen and (max-width: 768px) {
	.careers-detail__head__text {
		left: 16px;
		bottom: 32px;
	}
	.careers-detail__head__text:before {
		display: none;
	}
}
.careers-detail__head__text p {
	padding-left: 0;
	font-size: 52px;
}
@media screen and (max-width: 768px) {
	.careers-detail__head__text p {
		font-size: 6.93vw;
	}
}
.careers-detail__head__text p:before {
	display: none;
}
.careers-detail__wrapper {
	max-width: 1600px;
	width: 100%;
}
.careers-detail__profile {
	width: 80%;
	max-width: 1020px;
	background: #F0F3F5;
	border-bottom-right-radius: 180px;
	padding: 50px 80px 128px;
}
@media screen and (max-width: 768px) {
	.careers-detail__profile {
		width: 89.3vw;
		padding: 30px 20px 56px;
	}
}
.careers-detail__profile h2 {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 18px;
	line-height: 1.1;
	margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
	.careers-detail__profile h2 {
		font-size: 4.8vw;
	}
}
.careers-detail__profile p {
	border-bottom: 1px solid #6E6E6D;
	padding: 6px 0;
	max-width: 360px;
	font-size: 13px;
	line-height: 1.2;
}
@media screen and (max-width: 768px) {
	.careers-detail__profile p {
		width: 50vw;
		font-size: 3.46vw;
	}
}
.careers-detail__profile p:first-of-type {
	border-top: 1px solid #6E6E6D;
}
.careers-detail__content {
	width: 82.8%;
	max-width: 1060px;
	margin-left: 10.9%;
}
@media screen and (max-width: 768px) {
	.careers-detail__content {
		width: 89.3vw;
		margin-left: auto;
		margin-right: auto;
	}
}
.careers-detail__content:first-of-type {
	margin-top: -14px;
}
.careers-detail__caption {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: column;
	display: flex;
	gap: 16px;
	margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
	.careers-detail__caption {
		margin-bottom: 28px;
	}
}
.careers-detail__caption span {
	font-size: 13px;
	background: #E6661D;
	border-radius: 14px;
	line-height: 1.1;
	padding: 8px 34px;
	color: #fff;
	font-weight: bold;
}
.careers-detail__caption h2 {
	font-size: 28px;
	line-height: 1.5;
	font-weight: bold;
}
.careers-detail__row {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 20px;
	width: 100%;
	margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
	.careers-detail__row {
		flex-direction: column;
		gap: 40px;
		margin-bottom: 60px;
	}
}
.careers-detail__row picture {
	position: relative;
	display: block;
	padding-left: 40px;
}
.careers-detail__row picture:before {
	width: 1px;
	height: 40px;
	background: #6E6E6D;
	content: "";
	position: absolute;
	left: 0;
	top: 0;
}
.careers-detail__image {
	width: 280px;
	display: block;
}
.careers-detail__like {
	width: 65%;
	max-width: 840px;
	margin: -20px auto 130px;
	background: #F5F5F5;
	border: 3px solid #CCCCCC;
	border-radius: 16px;
	padding: 50px 80px 60px;
}
@media screen and (max-width: 768px) {
	.careers-detail__like {
		width: 89.3vw;
		padding: 40px 20px 32px;
		margin: 0 auto 80px;
	}
}
.careers-detail__like h3 {
	width: 176px;
	font-size: 13px;
	background: #E6661D;
	font-weight: bold;
	border-radius: 14px;
	line-height: 1.1;
	padding: 8px 0;
	color: #fff;
	text-align: center;
	margin: 0 auto 46px;
}
@media screen and (max-width: 768px) {
	.careers-detail__like h3 {
		margin-bottom: 30px;
	}
}
.careers-detail__like p {
	font-size: 16px;
	line-height: 1.75;
}
@media screen and (max-width: 768px) {
	.careers-detail__like p {
		font-size: 4.27vw;
	}
}
.careers-detail__other {
	margin-bottom: 110px;
}
.careers-detail__other__title {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 8px;
	font-size: 16px;
	font-weight: bold;
	margin: 0 auto 60px;
}
.careers-detail__other__title:before {
	width: 18px;
	height: 18px;
	border-radius: 100%;
	background: #E5661E;
	content: "";
}
@media screen and (max-width: 768px) {
	.careers-detail__other__title {
		font-size: 4.27vw;
		margin-bottom: 20px;
	}
}
.careers-detail__other__careers {
	width: 87.5%;
	max-width: 1120px;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.careers-detail__other__careers {
		width: 89.97vw;
		magrin-left: 5.3vw;
		margin-right: 0;
	}
}
.careers-detail__other__items {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 50px;
	margin: 0 auto 65px;
	padding-bottom: 20px;
	overflow-x: scroll;
	scrollbar-color: #219BAB #F0EFEE;
}
@media screen and (max-width: 768px) {
	.careers-detail__other__items {
		justify-content: flex-start;
		gap: 20px;
	}
}
.careers-detail__other__items li {
	width: calc(33.3% - 50px);
	flex: 0 0 auto;
}
@media screen and (max-width: 768px) {
	.careers-detail__other__items li {
		width: 77.3vw;
	}
	.careers-detail__other__items li:last-of-type {
		margin-right: 5.3vw;
	}
}
.careers-detail__other__link {
	width: 100%;
	display: block;
	color: #1C1D1D;
	transition: 0.2s;
}
@media (hover: hover) {
	.careers-detail__other__link:hover .careers-detail__other__arrow {
		translate: 4px 0;
	}
}
.careers-detail__other__link:active {
	opacity: 1;
	scale: 0.98;
}
.careers-detail__other__link:active .careers-detail__other__arrow {
	translate: 4px 0;
}
@media screen and (max-width: 768px) {
	.careers-detail__other__link:active .careers-detail__other__arrow {
		translate: 0;
	}
}
.careers-detail__other__head {
	position: relative;
}
.careers-detail__other__head img {
	width: 100%;
}
.careers-detail__other__caption {
	margin: 20px 0 10px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.6;
}
@media screen and (max-width: 768px) {
	.careers-detail__other__caption {
		font-size: 4.27vw;
		margin: 20px 0;
	}
}
.careers-detail__other__arrow {
	width: 50px;
	height: 50px;
	border-radius: 100%;
	background: #219BAC;
	position: absolute;
	transition: 0.2s;
	right: 20px;
	bottom: 20px;
}
@media screen and (max-width: 768px) {
	.careers-detail__other__arrow {
		display: none;
	}
}
.careers-detail__other__arrow:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	position: absolute;
	left: 21px;
	top: 21px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.careers-detail__other__arrow {
		width: 32px;
		height: 32px;
	}
	.careers-detail__other__arrow:after {
		left: 13px;
		top: 13px;
	}
}
.careers-detail__other__profile {
	border-top: 1px solid #6E6E6D;
}
.careers-detail__other__profile p {
	border-bottom: 1px solid #6E6E6D;
	padding: 6px 0;
	line-height: 1.1;
	font-size: 13px;
}
@media screen and (max-width: 768px) {
	.careers-detail__other__profile p {
		font-size: 3.47vw;
	}
}

.workstyle .l-container {
	padding-bottom: 0;
}
@media screen and (min-width: 769px) {
	.workstyle .l-container__head h1 {
		font-size: 90px;
	}
}

/*----------------------------------------
	Work Style Index
----------------------------------------*/
.workstyle-index__wrapper {
	margin: 90px auto 60px;
}
.workstyle-index__content {
	width: 80.7vw;
	max-width: 1034px;
	background: #fff;
	border-radius: 30px;
	margin: 0 auto;
	position: relative;
}
.workstyle-index__content:not(:last-of-type) {
	margin-bottom: 94px;
}
@media screen and (max-width: 768px) {
	.workstyle-index__content {
		width: 89.3vw;
		border-radius: 15px;
	}
}
.workstyle-index__list {
	justify-content: space-between;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #EFF3F5;
}
@media screen and (max-width: 768px) {
	.workstyle-index__list {
		flex-direction: column;
		border-top: 0;
	}
}
.workstyle-index__list--top {
	border-top: 0;
}
.workstyle-index__list--top .workstyle-index__item {
	padding-top: 62px;
}
@media screen and (max-width: 768px) {
	.workstyle-index__list--top .workstyle-index__item {
		padding-top: 44px;
	}
}
.workstyle-index__item {
	width: calc(50% - 1px);
	padding: 30px 36px 30px;
}
@media screen and (max-width: 768px) {
	.workstyle-index__item {
		width: 100%;
		display: grid;
		grid-template: "icon .   .  " 0 "icon . title" auto "icon .   .  " 12px "icon .  text" auto/16vw 20px 1fr;
		border-bottom: 1px solid #EFF3F5;
		padding: 30px 20px 30px 30px;
	}
	.workstyle-index__item > .member-detail__head__title {
		-ms-grid-row: 2;
		-ms-grid-column: 3;
	}
}
@media screen and (min-width: 769px) {
	.workstyle-index__item--short {
		width: 33.3%;
	}
}
.workstyle-index__item:not(:last-of-type) {
	border-right: 1px solid #EFF3F5;
}
.workstyle-index__item h3 {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	line-height: 1.2;
}
.workstyle-index__item h3 small {
	font-size: 14px;
}
@media screen and (max-width: 768px) {
	.workstyle-index__item h3 small {
		font-size: 3.2vw;
	}
}
@media screen and (min-width: 769px) {
	.workstyle-index__item h3 {
		justify-content: center;
		align-items: center;
		flex-direction: column;
		display: flex;
		height: 44px;
		margin: 0 auto 32px;
	}
}
@media screen and (max-width: 768px) {
	.workstyle-index__item h3 {
		-ms-grid-row: 1;
		-ms-grid-column: 1;
		grid-area: title;
		font-size: 4.8vw;
		text-align: left;
	}
}
.workstyle-index__item img {
	width: auto;
	display: block;
	margin: 0 auto 20px;
}
@media screen and (max-width: 768px) {
	.workstyle-index__item img {
		width: 16vw;
		grid-area: icon;
	}
}
.workstyle-index__item p {
	font-size: 16px;
	line-height: 1.5;
}
@media screen and (max-width: 768px) {
	.workstyle-index__item p {
		grid-area: text;
		font-size: 3.467vw;
	}
}
.workstyle-index__caption {
	display: inline-block;
	height: 42px;
	border-radius: 42px;
	background: #E6661D;
	padding: 10px 30px;
	font-size: 13px;
	font-weight: bold;
	color: #fff;
	position: absolute;
	left: 50%;
	top: -21px;
	translate: -50% 0;
	white-space: nowrap;
}
@media screen and (max-width: 768px) {
	.workstyle-index__caption {
		height: 7.46vw;
		font-size: 3.467vw;
		top: -3.73vw;
		padding: 5px 20px;
		letter-spacing: 0.02rem;
	}
}
@media screen and (min-width: 769px) {
	.workstyle-index__image {
		width: 100%;
		height: 100px;
		margin: 0 auto 30px;
	}
}
.workstyle-index__note {
	position: absolute;
	right: 0;
	bottom: -36px;
	font-size: 12px;
}
.workstyle-index__benefit {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 4px;
}
@media screen and (max-width: 768px) {
	.workstyle-index__benefit {
		align-items: flex-start;
		flex-direction: column;
		gap: 12px;
	}
}
.workstyle-index__benefit img {
	width: 87px;
	margin-bottom: 0;
}

/*----------------------------------------
	Work Style Other Page
----------------------------------------*/
.workstyle-other .l-under-menu__items {
	margin-bottom: 0;
}
.workstyle-other .g-footer:before {
	background: #fff;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	width: 100%;
	height: 100px;
}
@media screen and (max-width: 768px) {
	.workstyle-other .l-container__head {
		margin-bottom: 20px;
	}
}
.workstyle-other__head {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 40px;
	width: 87.5%;
	max-width: 1600px;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.workstyle-other__head {
		flex-direction: column;
		width: 89.3%;
	}
}
.workstyle-other__head__title {
	font-size: 42px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
	.workstyle-other__head__title {
		font-size: 8vw;
		margin-bottom: 35px;
	}
}
.workstyle-other__head__profile {
	width: 360px;
	border-top: 1px solid #6E6E6D;
}
@media screen and (max-width: 768px) {
	.workstyle-other__head__profile {
		width: 100%;
	}
}
.workstyle-other__head__profile p {
	border-bottom: 1px solid #6E6E6D;
	font-size: 13px;
	line-height: 1.1;
	padding: 6px 0;
}
@media screen and (max-width: 768px) {
	.workstyle-other__head__profile p {
		font-size: 3.47vw;
	}
}
.workstyle-other__head__image {
	width: 320px;
}
@media screen and (max-width: 768px) {
	.workstyle-other__head__image {
		width: 100%;
		border-radius: 200px;
	}
}
.workstyle-other__wrapper {
	background: #fff url(../../image/background/soccer-double-pc.webp) no-repeat center center;
	background-size: cover;
	padding: 34px 0 110px;
}
@media screen and (max-width: 768px) {
	.workstyle-other__wrapper {
		padding-top: 40px;
		background-image: url(../../image/workstyle/soccer-double-sp.webp);
		background-size: cover;
	}
}
.workstyle-other__section {
	justify-content: center;
	align-items: center;
	flex-direction: column;
	display: flex;
	width: 65.6vw;
	max-width: 1280px;
	margin: 0 auto 120px;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 768px) {
	.workstyle-other__section {
		width: 89.3vw;
		margin-bottom: 40px;
	}
}
.workstyle-other__section--mb0 {
	margin-bottom: 0;
}
.workstyle-other__caption {
	display: inline-block;
	height: 32px;
	border-radius: 32px;
	background: #E6661D;
	padding: 6px 30px;
	font-size: 13px;
	font-weight: bold;
	color: #fff;
	white-space: nowrap;
	margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
	.workstyle-other__caption {
		height: 7.46vw;
		font-size: 3.467vw;
		padding: 5px 20px;
		letter-spacing: 0.02rem;
	}
}
.workstyle-other__lead {
	font-size: 36px;
	text-align: center;
	line-height: 1.5;
	font-weight: bold;
	margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
	.workstyle-other__lead {
		font-size: 20px;
		margin-bottom: 32px;
	}
}
.workstyle-other__text {
	width: 100%;
	font-size: 16px;
	line-height: 1.75;
}
@media screen and (max-width: 768px) {
	.workstyle-other__text {
		font-size: 4.27vw;
	}
}
.workstyle-other__image {
	width: 100%;
	margin: 56px auto 0;
}
@media screen and (max-width: 768px) {
	.workstyle-other__image {
		margin-top: 40px;
	}
}
.workstyle-other__profile {
	width: 78%;
	max-width: 1280px;
	padding: 40px 80px 70px;
	background: #F5F5F5;
	border: 3px solid #ccc;
	border-radius: 16px;
	margin: 0 auto 130px;
}
@media screen and (max-width: 768px) {
	.workstyle-other__profile {
		width: 89.3vw;
		padding: 30px 16px 20px;
		margin-bottom: 60px;
	}
}
.workstyle-other__profile__title {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 18px;
	line-height: 1.1;
	margin-bottom: 20px;
}
.workstyle-other__profile__name {
	font-size: 16px;
	line-height: 1.1;
}
.workstyle-other__profile__name:after {
	content: "";
	display: block;
	width: 20px;
	height: 1px;
	background: #E5661E;
	margin: 10px 0 15px;
}
.workstyle-other__profile__row {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 40px;
}
@media screen and (max-width: 768px) {
	.workstyle-other__profile__row {
		flex-direction: column;
		gap: 30px;
	}
}
.workstyle-other__profile__text {
	font-size: 16px;
	line-height: 1.75;
}
@media screen and (max-width: 768px) {
	.workstyle-other__profile__text {
		font-size: 4.27vw;
	}
}
.workstyle-other__profile__image {
	width: 280px;
}
@media screen and (max-width: 768px) {
	.workstyle-other__profile__image {
		width: 100%;
	}
}

/*----------------------------------------
	Work Style Career Page
----------------------------------------*/
.workstyle-career__wrapper {
	background: #fff;
	position: relative;
}
.workstyle-career__bg {
	position: absolute;
	right: 0;
	bottom: 16%;
	width: 520px;
	z-index: 0;
}
.workstyle-career__training-caption {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 10px;
	font-size: 18px;
	font-weight: bold;
	margin: 100px 0 30px;
	align-self: flex-start;
}
.workstyle-career__training-caption:before {
	content: "";
	width: 24px;
	height: 24px;
	background: #E5661E;
	border-radius: 100%;
}
@media screen and (max-width: 768px) {
	.workstyle-career__training-caption {
		margin: 40px 0 20px;
		font-size: 14px;
	}
	.workstyle-career__training-caption:before {
		width: 20px;
		height: 20px;
	}
}
@media screen and (max-width: 768px) {
	.workstyle-career__training-image {
		width: 94.7vw;
		margin-left: 0;
		overflow-x: scroll;
		margin-left: 6%;
		padding-bottom: 20px;
		scrollbar-color: #219BAB #F0EFEE;
	}
	.workstyle-career__training-image img {
		width: 135vw;
		margin-right: 5.3vw;
	}
}
.workstyle-career__content {
	position: relative;
}
.workstyle-career__message {
	width: 65.6vw;
	max-width: 1080px;
	background: #F2F5F7;
	padding: 20px;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	margin: 54px auto 12px;
	line-height: 1.75;
}
@media screen and (max-width: 768px) {
	.workstyle-career__message {
		width: 89.3vw;
		margin: 40px auto 30px;
		font-size: 4.27vw;
		text-align: left;
	}
}
.workstyle-career__image {
	width: 65.6vw;
	max-width: 1080px;
	margin: 0 auto 40px;
}
@media screen and (max-width: 768px) {
	.workstyle-career__image {
		width: 94.7vw;
		margin-left: 5.3vw;
		padding-bottom: 20px;
		scrollbar-color: #219BAB #F0EFEE;
		overflow-x: scroll;
	}
	.workstyle-career__image img {
		width: 135vw;
		margin-right: 5.3vw;
	}
}
.workstyle-career__challenge {
	justify-content: center;
	align-items: center;
	flex-direction: column;
	display: flex;
	gap: 40px;
	width: 65.6vw;
	max-width: 1140px;
	background-color: #F5F5F5;
	border: 3px solid #ccc;
	border-radius: 16px;
	padding: 80px 80px 65px;
	margin: 40px auto 110px;
}
@media screen and (max-width: 768px) {
	.workstyle-career__challenge {
		width: 89.3vw;
		margin: 40px auto 70px;
		padding: 40px 20px 20px;
		gap: 20px;
	}
}
.workstyle-career__challenge h4 {
	font-weight: bold;
	text-align: center;
	font-size: 28px;
	line-height: 1.1;
}
@media screen and (max-width: 768px) {
	.workstyle-career__challenge h4 {
		font-size: 6.4vw;
	}
}
.workstyle-career__challenge p {
	line-height: 1.75;
	font-size: 16px;
}
@media screen and (max-width: 768px) {
	.workstyle-career__challenge p {
		font-size: 4.27vw;
	}
}
.workstyle-career__challenge img {
	width: 65%;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.workstyle-career__challenge img {
		width: 90%;
	}
}

/*----------------------------------------
	Page Recruit Form
----------------------------------------*/
.contact-form label.error {
	width: 100%;
	display: block;
	width: 100%;
	color: #FD0300;
	background: #FDD7D6;
	padding: 6px 10px;
	font-size: 11px;
	letter-spacing: 0;
}
.contact-form label.error:before {
	content: "※";
}
@media screen and (min-width: 769px) {
	.contact-form label.error {
		position: absolute;
		right: 0;
		top: 46px;
	}
}
.contact-form__wrapper {
	width: 80.9%;
	max-width: 1036px;
	margin: 0 auto;
	padding: 60px 100px 100px;
	background: #fff;
	border-radius: 30px;
}
@media screen and (max-width: 768px) {
	.contact-form__wrapper {
		width: 89.3vw;
		padding: 40px 20px 50px;
	}
}
.contact-form__title {
	font-size: 32px;
	line-height: 1.1;
	font-weight: bold;
	text-align: center;
	margin: 0 auto 60px;
}
@media screen and (max-width: 768px) {
	.contact-form__title {
		font-size: 6.4vw;
		margin-bottom: 30px;
	}
}
.contact-form__text-link {
	display: inline;
	color: #219BAB;
	cursor: pointer;
	text-decoration: underline;
}
.contact-form__text-link:hover {
	opacity: 1;
	text-decoration: none;
}
.contact-form__text-link:active {
	opacity: 1;
	text-decoration: none;
}
.contact-form__lead {
	text-align: center;
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0;
	margin: 0 auto 40px;
}
@media screen and (max-width: 768px) {
	.contact-form__lead {
		font-size: 3.73vw;
		text-align: left;
	}
}
.contact-form__lead small {
	display: block;
	margin-top: 36px;
	font-size: 14px;
}
@media screen and (max-width: 768px) {
	.contact-form__lead small {
		font-size: 3.2vw;
	}
}
.contact-form__content {
	margin-top: 22px;
}
.contact-form__item {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 20px;
	width: 100%;
	border-bottom: 1px solid #E3E3E3;
	padding: 30px 8px 30px 20px;
}
@media screen and (max-width: 768px) {
	.contact-form__item {
		flex-direction: column;
	}
}
.contact-form__item:first-of-type {
	border-top: 1px solid #E3E3E3;
}
.contact-form__label {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.1;
}
.contact-form__label--name {
	width: 236px;
}
.contact-form__container {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	width: calc(100% - 300px);
	position: relative;
}
@media screen and (max-width: 768px) {
	.contact-form__container {
		width: 100%;
		gap: 0;
	}
}
.contact-form__container--name {
	width: calc(100% - 274px);
	gap: 40px;
}
@media screen and (max-width: 768px) {
	.contact-form__container--name {
		width: 100%;
		gap: 10px;
	}
}
.contact-form__container--column {
	flex-direction: column;
	gap: 10px;
}
@media screen and (max-width: 768px) {
	.contact-form__container--column {
		width: 100%;
	}
}
.contact-form__name-wrap {
	position: relative;
	flex: 1;
}
.contact-form__input-name {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
	width: calc(50% - 20px);
	gap: 10px;
	font-size: 16px;
	font-weight: 300;
}
@media screen and (max-width: 768px) {
	.contact-form__input-name {
		width: 100%;
	}
}
.contact-form__input-name--confirm {
	flex-wrap: nowrap;
}
.contact-form__required {
	background: #F57B03;
	color: #fff;
	font-size: 11px;
	line-height: 1.1;
	padding: 2px 4px 2px;
	margin-left: 10px;
}
.contact-form__input {
	width: 100%;
	background: #F7F7F7;
	height: 46px;
	padding: 0 14px;
	border: 0;
	outline: 0;
	transition: 0.2s;
	border: 1px solid transparent;
}
.contact-form__input--name {
	flex: 1 0 0;
}
.contact-form__input:focus {
	border: 1px solid #219BAC;
}
.contact-form__input.error {
	border: 1px solid #D7000F;
}
.contact-form__select {
	position: relative;
}
@media screen and (max-width: 768px) {
	.contact-form__select {
		width: 100%;
	}
}
.contact-form__select:after {
	content: "";
	position: absolute;
	top: 18px;
	right: 10px;
	background: #838383;
	width: 10px;
	height: 8.6602540378px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.contact-form__select select {
	width: 270px;
	height: 46px;
	background: #FDFDFD;
	border: 1px solid #D5D5D5;
	padding: 0 28px 0 16px;
	outline: 0;
	transition: 0.2s;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
@media screen and (max-width: 768px) {
	.contact-form__select select {
		width: 100%;
	}
}
.contact-form__select select:focus {
	border: 1px solid #219BAC;
}
.contact-form__select select.error {
	border: 1px solid #D7000F;
}
.contact-form__textarea {
	position: relative;
	width: 100%;
	margin: 20px 0 0;
}
.contact-form__textarea textarea {
	width: 100%;
	height: 195px;
	background: #F7F7F7;
	padding: 12px 14px;
	line-height: 1.5;
	border: 1px solid transparent;
	outline: 0;
	transition: 0.2s;
	display: block;
}
.contact-form__textarea textarea:focus {
	border: 1px solid #219BAC;
}
.contact-form__textarea textarea.error {
	border: 1px solid #D7000F;
}
@media screen and (min-width: 769px) {
	.contact-form__textarea label.error {
		top: auto;
		bottom: -22px;
	}
}
.contact-form__radios {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	width: 408px;
	gap: 8px 0;
	flex-wrap: wrap;
	margin-top: 10px;
}
@media screen and (max-width: 768px) {
	.contact-form__radios {
		width: 100%;
		flex-direction: column;
	}
}
.contact-form__radio {
	width: 50%;
	height: 25px;
	position: relative;
	padding: 2px 0 0 33px;
}
@media screen and (max-width: 768px) {
	.contact-form__radio {
		width: 100%;
	}
}
.contact-form__radio input {
	display: none;
}
.contact-form__radio input:checked + label:before {
	border-color: #219BAC;
}
.contact-form__radio input:checked + label:after {
	width: 12px;
	height: 12px;
	background: #219BAC;
	border-radius: 100%;
	left: 7.5px;
	top: 7.5px;
}
.contact-form__radio label {
	width: 100%;
	cursor: pointer;
	display: block;
}
.contact-form__radio label:before, .contact-form__radio label:after {
	content: "";
	display: block;
	position: absolute;
	transition: 0.2s;
}
.contact-form__radio label:before {
	width: 25px;
	height: 25px;
	border-radius: 100%;
	border: 1px solid #E3E3E3;
	top: 0;
	left: 0;
}
.contact-form__consent {
	width: 100%;
	border-radius: 30px;
	padding: 36px;
	margin: 45px auto 13px;
	background: #F2F2F2;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.contact-form__consent {
		margin: 30px auto 13px;
	}
}
.contact-form__consent__title {
	font-size: 17px;
	font-weight: bold;
	color: #6E6E6D;
	padding-bottom: 2px;
	display: inline;
	border-bottom: 2px solid #6E6E6D;
}
@media screen and (max-width: 768px) {
	.contact-form__consent__title {
		line-height: 2;
	}
}
.contact-form__consent__text-wrap {
	justify-content: center;
	align-items: center;
	flex-direction: column;
	display: flex;
	margin: 28px auto 38px;
}
.contact-form__consent__text {
	text-align: left;
	font-size: 15px;
	line-height: 1.74;
}
@media screen and (max-width: 768px) {
	.contact-form__consent__text {
		font-size: 4vw;
	}
}
.contact-form__consent__checkbox {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
}
.contact-form__consent__checkbox input {
	display: none;
}
.contact-form__consent__checkbox input:checked + label:before {
	border-color: #219BAC;
}
.contact-form__consent__checkbox input:checked + label:after {
	top: 3px;
	left: 9px;
	transform: rotate(50deg);
	width: 6px;
	height: 12px;
	border-right: 2px solid #219BAC;
	border-bottom: 2px solid #219BAC;
}
.contact-form__consent__checkbox label {
	position: relative;
	padding-left: 35px;
	font-size: 16px;
	font-weight: bold;
	cursor: pointer;
}
.contact-form__consent__checkbox label:before, .contact-form__consent__checkbox label:after {
	position: absolute;
	content: "";
	top: 50%;
	transform: translateY(-50%);
	transition: 0.2s;
}
.contact-form__consent__checkbox label:before {
	left: 0;
	width: 25px;
	height: 25px;
	border: 1px solid #E3E3E3;
	background: #fff;
}
.contact-form__consent__checkbox .contact-form__required {
	margin-left: 16px;
}
.contact-form__google-policy {
	margin: 0 auto 45px;
	text-align: center;
	font-size: 14px;
	line-height: 1.7;
}
@media screen and (max-width: 768px) {
	.contact-form__google-policy {
		margin-bottom: 30px;
		font-size: 12px;
		text-align: left;
	}
}
.contact-form__note {
	font-size: 14px;
	line-height: 1.4;
}
.contact-form__buttons {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 24px;
	margin: 45px auto 0;
}
@media screen and (max-width: 768px) {
	.contact-form__buttons {
		flex-direction: column-reverse;
	}
}
.contact-form__button {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	height: 83px;
	border: 2px solid #ccc;
	position: relative;
	outline: 0;
	border-radius: 16px;
	background: #fff;
	color: #219BAC;
	font-size: 24px;
	font-weight: bold;
	cursor: pointer;
	transition: 0.2s;
}
@media screen and (max-width: 768px) {
	.contact-form__button {
		width: 100%;
		font-size: 4.8vw;
	}
}
.contact-form__button:disabled {
	cursor: inherit;
	background: #F2F2F2;
	color: #ccc;
	border: 0;
}
.contact-form__button:disabled span {
	opacity: 0;
}
@media (hover: hover) {
	.contact-form__button:disabled:hover {
		scale: 1;
		opacity: 1;
	}
}
.contact-form__button:disabled:active {
	scale: 1;
}
@media (hover: hover) {
	.contact-form__button:hover {
		opacity: 1;
		scale: 1.02;
	}
	.contact-form__button:hover span {
		translate: 4px -50%;
	}
}
.contact-form__button:active {
	opacity: 1;
	scale: 0.98;
}
.contact-form__button:active span {
	translate: 4px -50%;
}
@media screen and (max-width: 768px) {
	.contact-form__button:active span {
		translate: 0 -50%;
	}
}
.contact-form__button span {
	position: absolute;
	width: 40px;
	height: 40px;
	right: 20px;
	top: 50%;
	translate: 0 -50%;
	border-radius: 100%;
	background: #219BAC;
	z-index: 3;
	transition: 0.2s;
}
.contact-form__button span:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	position: absolute;
	left: 16px;
	top: 16px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.contact-form__button span {
		width: 30px;
		height: 30px;
		right: 15px;
	}
	.contact-form__button span:after {
		left: 11px;
		top: 11px;
	}
}
@media screen and (min-width: 769px) {
	.contact-form__button--small {
		width: 130px;
	}
}
.contact-form__button--large {
	justify-content: start;
	width: 363px;
	padding: 0 60px 0 40px;
}
@media screen and (max-width: 768px) {
	.contact-form__button--large {
		width: 100%;
		padding: 0 46px 0 30px;
	}
}
.contact-form__errors {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: column;
	display: flex;
	gap: 10px;
	background: #FDD7D6;
	border-radius: 10px;
	padding: 20px;
	margin: 0 auto 40px;
}
.contact-form__errors li {
	font-size: 13px;
	line-height: 1.1;
	padding-left: 16px;
	position: relative;
	color: #FD0300;
	font-weight: 400;
}
.contact-form__errors li:before {
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
	width: 6px;
	height: 6px;
	background: #FD0300;
	border-radius: 100%;
}

/*----------------------------------------
	Page Jobs
----------------------------------------*/
.jobs .l-container {
	padding-bottom: 0;
}
.jobs .l-container__head {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 30px;
}
@media screen and (max-width: 768px) {
	.jobs .l-container__head {
		flex-direction: column;
	}
}
@media screen and (min-width: 769px) {
	.jobs .l-container__head h1 {
		margin-top: -13px;
	}
}
.jobs .l-container__head__image {
	width: 320px;
}
@media screen and (max-width: 768px) {
	.jobs .l-container__head__image {
		width: 100%;
	}
}
.jobs .g-footer:before {
	background: #fff;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	width: 100%;
	height: 100px;
}
@media screen and (max-width: 768px) {
	.jobs .l-under-menu {
		width: 94.7vw;
	}
}
.jobs .l-under-menu__items {
	margin-bottom: 0;
}
.jobs__wrapper {
	background: #fff;
	padding: 40px 0 100px;
}
@media screen and (max-width: 768px) {
	.jobs__wrapper {
		padding-bottom: 60px;
	}
}
.jobs__content {
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	width: 87.5%;
	max-width: 1400px;
	margin: 0 auto 80px;
	position: relative;
	overflow: visible;
}
@media screen and (max-width: 768px) {
	.jobs__content {
		width: 89.3vw;
		flex-direction: column;
		gap: 20px;
		margin-bottom: 50px;
	}
}
@media screen and (min-width: 769px) {
	.jobs__category {
		width: 580px;
		padding-right: 60px;
	}
}
@media screen and (max-width: 768px) {
	.jobs__category {
		position: relative;
		margin-bottom: 20px;
	}
}
.jobs__category__inner {
	position: relative;
}
@media screen and (min-width: 769px) {
	.jobs__category__inner {
		max-width: 520px;
		transition: opacity 0.2s;
		opacity: 1;
	}
	.jobs__category__inner--fixed {
		position: fixed;
		left: 0;
		top: 120px;
		opacity: 1;
		transition: opacity 0.2s;
	}
	.jobs__category__inner--hide {
		opacity: 0;
		top: 100px;
	}
}
.jobs__category__label {
	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
	font-size: 48px;
	color: #fff;
	text-align: center;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.jobs__category__label {
		font-size: 8vw;
	}
}
.jobs__category img {
	width: 100%;
}
.jobs__items {
	justify-content: flex-start;
	flex-direction: column;
	display: flex;
	gap: 30px;
	padding: 0 0 0 40px;
}
@media screen and (min-width: 769px) {
	.jobs__items {
		width: calc(100% - 580px);
	}
}
@media screen and (max-width: 768px) {
	.jobs__items {
		padding: 0;
		margin-bottom: 0;
	}
}
.jobs__items:last-of-type {
	margin-bottom: 0;
}
.jobs__section {
	width: 100%;
	border-radius: 30px;
	background: #EFF3F5;
	padding: 36px 40px;
}
@media screen and (max-width: 768px) {
	.jobs__section {
		border-radius: 20px;
		padding: 30px 20px;
	}
}
.jobs__section:last-of-type {
	margin-bottom: 0;
}
.jobs__section:not(:last-of-type) {
	margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
	.jobs__section:not(:last-of-type) {
		margin-bottom: 20px;
	}
}
.jobs__title {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 8px;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.25;
}
.jobs__title:before {
	content: "";
	width: 24px;
	height: 24px;
	border-radius: 100%;
	background: #E5661E;
}
@media screen and (max-width: 768px) {
	.jobs__title {
		font-size: 5.3vw;
	}
}
.jobs__caption {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: 100%;
	height: 36px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.1;
	margin: 30px 0;
	border-radius: 36px;
	border: 2px solid #CCCDCB;
	background: #F7F7F7;
}
@media screen and (max-width: 768px) {
	.jobs__caption {
		font-size: 4.27vw;
		margin: 20px 0;
	}
}
.jobs__caption:first-of-type {
	margin-top: 0;
}
.jobs__definition__wrapper {
	border-top: 2px solid #ccc;
	padding: 20px 0 0;
	margin-top: 20px;
	font-size: 16px;
	line-height: 1.75;
}
@media screen and (max-width: 768px) {
	.jobs__definition__wrapper {
		font-size: 4.27vw;
	}
}
.jobs__definition__title {
	font-weight: bold;
}
.jobs__links {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 20px;
	margin: 80px auto 100px;
}
@media screen and (max-width: 768px) {
	.jobs__links {
		flex-direction: column;
		gap: 20px;
		margin: 50px auto;
	}
}
.jobs__link {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: 360px;
	height: 80px;
	border-radius: 80px;
	padding-left: 100px;
	background: #219BAA;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	position: relative;
	transition: 0.2s;
}
@media screen and (max-width: 768px) {
	.jobs__link {
		width: 89.3vw;
		height: 66px;
		font-size: 4vw;
		padding-left: 0;
		justify-content: center;
	}
}
@media (hover: hover) {
	.jobs__link:hover {
		opacity: 1;
		scale: 1.02;
	}
	.jobs__link:hover span {
		translate: 4px -50%;
	}
}
.jobs__link:active {
	opacity: 1;
	scale: 0.98;
}
.jobs__link:active span {
	translate: 4px -50%;
}
@media screen and (max-width: 768px) {
	.jobs__link:active span {
		translate: 0 -50%;
	}
}
.jobs__link span {
	position: absolute;
	width: 40px;
	height: 40px;
	right: 20px;
	top: 50%;
	translate: 0 -50%;
	border-radius: 100%;
	background: #fff;
	z-index: 3;
	transition: 0.2s;
}
.jobs__link span:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 1px #219BAC;
	border-right: solid 1px #219BAC;
	position: absolute;
	left: 16px;
	top: 16px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.jobs__link span {
		width: 30px;
		height: 30px;
		right: 15px;
	}
	.jobs__link span:after {
		left: 11px;
		top: 11px;
	}
}

/*----------------------------------------
	Page Jobs
----------------------------------------*/
.recruit .l-container {
	padding-bottom: 0;
}
.recruit .l-container__head {
	position: relative;
}
@media screen and (max-width: 768px) {
	.recruit .l-container__head {
		margin-bottom: 20px;
	}
}
@media screen and (min-width: 769px) {
	.recruit .l-container__head h1 {
		font-size: 60px;
	}
}
.recruit__outer {
	position: relative;
	width: 81.25%;
	max-width: 1280px;
	margin: 0 auto 80px;
}
@media screen and (max-width: 768px) {
	.recruit__outer {
		width: 89.3vw;
	}
}
.recruit__menus {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
@media screen and (max-width: 768px) {
	.recruit__menus {
		margin-bottom: 20px;
	}
}
@media screen and (min-width: 769px) {
	.recruit__menus {
		position: absolute;
		right: 0;
		top: -60px;
		justify-content: flex-end;
	}
}
.recruit__menus a {
	justify-content: space-between;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 10px;
	width: 150px;
	height: 40px;
	border-radius: 40px;
	border: 1px solid #ccc;
	padding: 0 10px 0 20px;
	background: #fff;
	color: #000;
	transition: 0.2s;
}
.recruit__menus a img {
	width: 6px;
}
.recruit__wrapper {
	background: #fff;
	border-radius: 30px;
	width: 100%;
	position: relative;
}
@media screen and (max-width: 768px) {
	.recruit__wrapper {
		border-radius: 20px;
	}
}
.recruit__title {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 10px;
	font-size: 32px;
	font-weight: bold;
	line-height: 1.25;
	margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
	.recruit__title {
		font-size: 5.3vw;
		margin-bottom: 32px;
	}
}
.recruit__title:before {
	content: "";
	width: 24px;
	height: 24px;
	border-radius: 100%;
	background: #E5661E;
}
.recruit__links {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 20px;
	margin: 30px auto 0;
}
.recruit__links .recruit__link {
	margin: 0;
}
@media screen and (max-width: 768px) {
	.recruit__links {
		flex-direction: column;
	}
}
.recruit__link {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: 360px;
	height: 80px;
	border-radius: 80px;
	background: #219BAA;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	position: relative;
	transition: 0.2s;
	margin: 0 auto;
	letter-spacing: 0;
	padding: 0 60px 0 20px;
}
@media screen and (max-width: 768px) {
	.recruit__link {
		width: 100%;
		height: 66px;
		padding-right: 50px;
		font-size: 4vw;
	}
}
@media (hover: hover) {
	.recruit__link:hover {
		opacity: 1;
		scale: 1.02;
	}
	.recruit__link:hover span {
		translate: 4px -50%;
	}
}
.recruit__link:active {
	opacity: 1;
	scale: 0.98;
}
.recruit__link:active span {
	translate: 4px -50%;
}
@media screen and (max-width: 768px) {
	.recruit__link:active span {
		translate: 0 -50%;
	}
}
.recruit__link span {
	position: absolute;
	width: 40px;
	height: 40px;
	right: 20px;
	top: 50%;
	translate: 0 -50%;
	border-radius: 100%;
	background: #fff;
	z-index: 3;
	transition: 0.2s;
}
.recruit__link span:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 1px #219BAC;
	border-right: solid 1px #219BAC;
	position: absolute;
	left: 16px;
	top: 16px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.recruit__link span {
		width: 30px;
		height: 30px;
		right: 15px;
	}
	.recruit__link span:after {
		left: 11px;
		top: 11px;
	}
}
.recruit__link--border {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: 280px;
	border: 2px solid #ccc;
	background: #fff;
	color: #219BAC;
}
.recruit__link--border span {
	background: #219BAC;
}
.recruit__link--border span:after {
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
}

/*----------------------------------------
	Page New & Career
----------------------------------------*/
.recruit-index__wrapper {
	padding: 100px 80px;
}
@media screen and (max-width: 768px) {
	.recruit-index__wrapper {
		padding: 40px 20px;
	}
}
.recruit-index__title {
	display: inline;
	font-size: 17px;
	color: #6E6E6D;
	border-bottom: 2px solid #6E6E6D;
	line-height: 1.1;
	padding-bottom: 5px;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.recruit-index__title {
		font-size: 4.53vw;
	}
}
.recruit-index__text {
	font-size: 16px;
	line-height: 1.75;
	margin: 40px 0 50px;
}
@media screen and (max-width: 768px) {
	.recruit-index__text {
		font-size: 3.73vw;
		margin: 20px 0 40px;
	}
}
.recruit-index__content {
	margin-bottom: 40px;
}
.recruit-index__caption {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: 100%;
	height: 36px;
	border-radius: 36px;
	background: #F7F7F7;
	border: 2px solid #CCCDCB;
	font-weight: bold;
	margin: 20px auto;
	font-size: 16px;
}
@media screen and (max-width: 768px) {
	.recruit-index__caption {
		font-size: 3.83vw;
		margin: 30px auto 10px;
	}
}
.recruit-index__list {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
@media screen and (max-width: 768px) {
	.recruit-index__list {
		flex-direction: column;
		gap: 10px;
	}
}
.recruit-index__list:last-of-type {
	margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
	.recruit-index__list:last-of-type {
		margin-bottom: 40px;
	}
}
.recruit-index__list li {
	width: calc(50% - 10px);
}
@media screen and (max-width: 768px) {
	.recruit-index__list li {
		width: 100%;
	}
}
.recruit-index__item {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	height: 120px;
	gap: 20px;
	background: #fff;
	border: 2px solid #ccc;
	border-radius: 16px;
	transition: 0.2s;
	font-size: 20px;
	line-height: 1.4;
	font-weight: bold;
	position: relative;
	padding: 10px;
}
@media screen and (max-width: 768px) {
	.recruit-index__item {
		height: 100px;
		gap: 15px;
		font-size: 4vw;
	}
}
.recruit-index__item--link {
	padding: 10px 60px 10px 10px;
	color: #219BAC;
}
@media screen and (max-width: 768px) {
	.recruit-index__item--link {
		height: 100px;
		padding: 10px 45px 10px 10px;
	}
}
@media (hover: hover) {
	.recruit-index__item--link:hover {
		opacity: 1;
		scale: 1.02;
	}
	.recruit-index__item--link:hover span {
		translate: 4px -50%;
	}
}
.recruit-index__item--link:active {
	opacity: 1;
	scale: 0.98;
}
.recruit-index__item--link:active span {
	translate: 4px -50%;
}
@media screen and (max-width: 768px) {
	.recruit-index__item--link:active span {
		translate: 0 -50%;
	}
}
.recruit-index__item--link span {
	position: absolute;
	width: 40px;
	height: 40px;
	right: 20px;
	top: 50%;
	translate: 0 -50%;
	border-radius: 100%;
	background: #219BAC;
	z-index: 3;
	transition: 0.2s;
}
.recruit-index__item--link span:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	position: absolute;
	left: 16px;
	top: 16px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.recruit-index__item--link span {
		width: 30px;
		height: 30px;
		right: 15px;
	}
	.recruit-index__item--link span:after {
		left: 11px;
		top: 11px;
	}
}
.recruit-index__item img {
	width: 130px;
}
@media screen and (max-width: 768px) {
	.recruit-index__item img {
		width: 27.2vw;
	}
}
.recruit-index__process {
	width: 680px;
	margin: 40px auto 60px;
}
@media screen and (max-width: 768px) {
	.recruit-index__process {
		width: 100%;
		margin: 20px auto 40px;
	}
}
.recruit-index__process p {
	margin-top: 20px;
	font-size: 12px;
	line-height: 1.7;
}

/*----------------------------------------
	Page FAQ
----------------------------------------*/
.recruit-faq__wrapper {
	padding: 100px 90px;
}
@media screen and (max-width: 768px) {
	.recruit-faq__wrapper {
		padding: 40px 20px;
	}
}
.recruit-faq__caption {
	font-size: 17px;
	color: #6E6E6D;
	line-height: 1.2;
	margin-bottom: 20px;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.recruit-faq__caption {
		font-size: 3.73vw;
	}
}
.recruit-faq__items + .recruit__title {
	margin-top: 90px;
}
@media screen and (max-width: 768px) {
	.recruit-faq__items + .recruit__title {
		margin-top: 60px;
	}
}
.recruit-faq__items + .recruit-faq__caption {
	margin-top: 45px;
}
@media screen and (max-width: 768px) {
	.recruit-faq__items + .recruit-faq__caption {
		margin-top: 35px;
	}
}
.recruit-faq__item {
	background: #F2F2F2;
	border-radius: 30px;
}
@media screen and (max-width: 768px) {
	.recruit-faq__item {
		border-radius: 10px;
	}
}
.recruit-faq__item + .recruit-faq__item {
	margin-top: 20px;
}
@media screen and (max-width: 768px) {
	.recruit-faq__item + .recruit-faq__item {
		margin-top: 10px;
	}
}
.recruit-faq__item--show .recruit-faq__button:after {
	opacity: 0;
}
.recruit-faq__item--show .recruit-faq__answer {
	max-height: 500px;
	transition: 1s;
}
.recruit-faq__button {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 30px;
	text-align: left;
	width: 100%;
	min-height: 84px;
	position: relative;
	padding: 28px 88px 28px 30px;
	font-size: 18px;
	line-height: 1.6;
	font-weight: bold;
	cursor: pointer;
	outline: 0;
	border: 0;
	background: transparent;
}
.recruit-faq__button:before, .recruit-faq__button:after {
	content: "";
	position: absolute;
	background: #6E6E6D;
	top: 50%;
	translate: 0 -50%;
	transition: 0.2s;
}
.recruit-faq__button:before {
	width: 45px;
	height: 2px;
	right: 30px;
}
.recruit-faq__button:after {
	width: 2px;
	height: 45px;
	right: 52px;
}
@media screen and (max-width: 768px) {
	.recruit-faq__button {
		gap: 10px;
		padding: 20px 40px 20px 20px;
		font-size: 4.27vw;
	}
	.recruit-faq__button:before {
		width: 16px;
		right: 10px;
	}
	.recruit-faq__button:after {
		height: 16px;
		right: 17px;
	}
}
.recruit-faq__answer {
	max-height: 0;
	overflow: hidden;
	transition: 0.3s;
}
.recruit-faq__content {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 30px;
	padding: 8px 88px 28px 30px;
	font-size: 16px;
	line-height: 1.8;
}
@media screen and (max-width: 768px) {
	.recruit-faq__content {
		gap: 10px;
		padding: 8px 20px 20px;
		font-size: 4.27vw;
	}
}
.recruit-faq__content a {
	color: #219BAA;
	text-decoration: underline;
}
@media (hover: hover) {
	.recruit-faq__content a {
		opacity: 1;
	}
	.recruit-faq__content a:hover {
		text-decoration: none;
	}
}
.recruit-faq__content a:active {
	opacity: 1;
	text-decoration: none;
}
.recruit-faq__sub {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 30px;
	line-height: 1.1;
	color: #E6661D;
	margin-top: -5px;
}
@media screen and (max-width: 768px) {
	.recruit-faq__sub {
		font-size: 5.3vw;
		margin-top: 5px;
	}
}

/*----------------------------------------
	Page Others
----------------------------------------*/
@media screen and (max-width: 768px) {
	.recruit-others .l-container__head {
		margin-bottom: 40px;
	}
}
.recruit-others .l-container__head p {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 4px;
}
@media screen and (max-width: 768px) {
	.recruit-others .l-container__head p {
		align-items: flex-start;
		flex-direction: column;
	}
}
.recruit-others .l-container__head p small {
	font-size: 12px;
	font-weight: normal;
}
.recruit-others__section:not(:last-of-type) {
	padding-bottom: 90px;
	margin-bottom: 90px;
	border-bottom: 1px solid #E3E3E3;
}
@media screen and (max-width: 768px) {
	.recruit-others__section:not(:last-of-type) {
		padding-bottom: 40px;
		margin-bottom: 40px;
	}
}
.recruit-others__wrapper {
	padding: 100px 90px;
}
@media screen and (max-width: 768px) {
	.recruit-others__wrapper {
		padding: 40px 20px;
	}
}
.recruit-others .recruit__title {
	margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
	.recruit-others .recruit__title {
		margin-bottom: 16px;
	}
}
.recruit-others__text {
	font-size: 16px;
	line-height: 1.8;
}
@media screen and (max-width: 768px) {
	.recruit-others__text {
		font-size: 4.27vw;
	}
}
.recruit-others .recruit__link {
	margin-top: 56px;
}
@media screen and (max-width: 768px) {
	.recruit-others .recruit__link {
		margin-top: 24px;
	}
}

/*----------------------------------------
	Internship Common
----------------------------------------*/
.internship .l-container {
	padding-bottom: 0;
}
.internship .l-container__head {
	justify-content: space-between;
	align-items: center;
	flex-direction: row;
	display: flex;
	margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
	.internship .l-container__head {
		flex-direction: column;
		align-items: stretch;
		margin-bottom: 40px;
		gap: 16px;
	}
}
.internship .l-container__head h1 {
	line-height: 1.1;
	margin-bottom: 16px;
}
@media screen and (min-width: 769px) {
	.internship .l-container__head h1 {
		font-size: 70px;
	}
}
@media screen and (max-width: 768px) {
	.internship .l-container__head picture {
		justify-content: flex-end;
		align-items: flex-end;
		flex-direction: row;
		display: flex;
	}
}
.internship .l-container__head__image {
	width: 38.3vw;
	max-width: 490px;
}
@media screen and (max-width: 768px) {
	.internship .l-container__head__image {
		width: 64vw;
	}
}
.internship__wrapper {
	width: 65.6%;
	max-width: 1080px;
	margin: 0 auto 90px;
}
@media screen and (max-width: 768px) {
	.internship__wrapper {
		width: 89.3vw;
	}
}
.internship__content {
	width: 100%;
	background: #fff;
	border-radius: 12px;
	padding: 42px 60px 80px;
}
@media screen and (max-width: 768px) {
	.internship__content {
		padding: 28px 20px 50px;
	}
}
.internship__content + .internship__content {
	margin-top: 30px;
}
@media screen and (max-width: 768px) {
	.internship__content + .internship__content {
		margin-top: 10px;
	}
}
.internship__title {
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	display: flex;
	gap: 10px;
	font-size: 32px;
	font-weight: bold;
	line-height: 1.6;
	padding-bottom: 32px;
	border-bottom: 2px solid #ccc;
}
.internship__title:before {
	content: "";
	width: 24px;
	height: 24px;
	border-radius: 100%;
	background: #E6661D;
}
@media screen and (max-width: 768px) {
	.internship__title {
		font-size: 5.3vw;
		padding-bottom: 16px;
	}
}
.internship__entry {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	width: 280px;
	height: 80px;
	background: #219BAA;
	border-radius: 80px;
	color: #fff;
	position: relative;
	font-size: 18px;
	transition: 0.2s;
}
@media screen and (max-width: 768px) {
	.internship__entry {
		width: 100%;
		height: 66px;
	}
}
.internship__entry__arrow {
	width: 40px;
	height: 40px;
	border-radius: 100%;
	background: #fff;
	position: absolute;
	transition: 0.2s;
	right: 20px;
	bottom: 20px;
}
.internship__entry__arrow:after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 1px #1C1D1D;
	border-right: solid 1px #1C1D1D;
	position: absolute;
	left: 16px;
	top: 16px;
	transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	.internship__entry__arrow {
		width: 30px;
		height: 30px;
	}
	.internship__entry__arrow:after {
		left: 12px;
		top: 12px;
	}
}
.internship__tags {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 20px 0 60px;
}
@media screen and (max-width: 768px) {
	.internship__tags {
		margin-bottom: 20px;
	}
}
.internship__tags li {
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: flex;
	padding: 0 20px;
	color: #E6661D;
	border: 1px solid #E6661D;
	border-radius: 30px;
	font-size: 12px;
	letter-spacing: 0rem;
}
@media screen and (max-width: 768px) {
	.internship__tags li {
		padding: 0 14px;
	}
}
.internship__sub {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
	.internship__sub {
		margin-bottom: 20px;
	}
}
@media screen and (min-width: 769px) {
	.internship__detail {
		display: grid;
		grid-template: "image .   . " 0 "image . text" auto "image .   . " 40px "image . entry" 80px/240px 40px 1fr;
	}
	.internship__detail > .challenge-moto__head__image {
		-ms-grid-row: 1;
		-ms-grid-row-span: 4;
		-ms-grid-column: 1;
	}
	.internship__detail > .member-detail__head__image {
		-ms-grid-row: 1;
		-ms-grid-row-span: 4;
		-ms-grid-column: 1;
	}
	.internship__detail > p {
		-ms-grid-row: 2;
		-ms-grid-column: 3;
	}
}
.internship__detail img {
	grid-area: image;
}
@media screen and (max-width: 768px) {
	.internship__detail img {
		margin: 20px auto;
	}
}
.internship__detail p {
	grid-area: text;
	line-height: 1.75;
	font-size: 16px;
}
@media screen and (max-width: 768px) {
	.internship__detail p {
		font-size: 4.27vw;
	}
}
.internship__detail a {
	grid-area: entry;
}
@media screen and (min-width: 769px){
	.challenge-moto__head__image {
		-ms-grid-row: 1;
		-ms-grid-row-span: 4;
		-ms-grid-column: 1;
	}
	.challenge-moto__head__lead {
		-ms-grid-row: 2;
		-ms-grid-column: 3;
	}
	.challenge-moto__head__profile {
		-ms-grid-row: 4;
		-ms-grid-column: 3;
	}
	.member-detail__head__image {
		-ms-grid-row: 1;
		-ms-grid-row-span: 4;
		-ms-grid-column: 1;
	}
	.internship__detail img {
		-ms-grid-row: 1;
		-ms-grid-row-span: 4;
		-ms-grid-column: 1;
	}
	.internship__detail > img {
		-ms-grid-row: 1;
		-ms-grid-row-span: 4;
		-ms-grid-column: 1;
	}
	.internship__detail > p {
		-ms-grid-row: 2;
		-ms-grid-column: 3;
	}
	.internship__detail a {
		-ms-grid-row: 4;
		-ms-grid-column: 3;
	}
}
@media screen and (max-width: 768px){
	.member-detail__head__title {
		-ms-grid-row: 1;
		-ms-grid-column: 1;
	}
	.member-detail__head > .member-detail__head__image {
		-ms-grid-row: 3;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
	}
	.member-detail__head__history {
		-ms-grid-row: 5;
		-ms-grid-column: 1;
	}
	.member-detail__head__tags {
		-ms-grid-row: 7;
		-ms-grid-column: 1;
	}
	.workstyle-index__item h3 {
		-ms-grid-row: 1;
		-ms-grid-column: 1;
	}
	.workstyle-index__item > h3 {
		-ms-grid-row: 2;
		-ms-grid-column: 3;
	}
	.workstyle-index__item img {
		-ms-grid-row: 1;
		-ms-grid-row-span: 4;
		-ms-grid-column: 1;
	}
	.workstyle-index__item p {
		-ms-grid-row: 4;
		-ms-grid-column: 3;
	}
	.member-detail__head > img {
		-ms-grid-row: 3;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
	}
	.internship__detail p {
		-ms-grid-row: 4;
		-ms-grid-column: 3;
	}
}
.internship__career {
	margin-top: 60px;
}
@media screen and (max-width: 768px) {
	.internship__career {
		margin-top: 26px;
	}
}
.internship__career__caption {
	background: #E6661D;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	line-height: 1.1;
	padding: 9px 20px;
	border-radius: 40px;
	display: inline;
}
@media screen and (max-width: 768px) {
	.internship__career__caption {
		font-size: 3.2vw;
	}
}
.internship__career__text {
	margin: 16px 0 36px;
	line-height: 1.75;
	font-size: 16px;
}
@media screen and (max-width: 768px) {
	.internship__career__text {
		margin: 12px auto 26px;
		font-size: 4.27vw;
	}
}
.internship__voice {
	margin: 44px auto 0;
}
@media screen and (max-width: 768px) {
	.internship__voice {
		margin-top: 36px;
	}
}
.internship__voice__title {
	font-size: 24px;
	text-align: center;
	font-weight: bold;
	margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
	.internship__voice__title {
		font-size: 5.86vw;
		margin-bottom: 20px;
	}
}
.internship__voice__list {
	justify-content: flex-start;
	align-items: stretch;
	flex-direction: row;
	display: flex;
	gap: 20px;
}
@media screen and (max-width: 768px) {
	.internship__voice__list {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}
}
.internship__voice__item {
	width: calc(50% - 10px);
	border-radius: 12px;
	background: #F5F5F6;
	line-height: 1.75;
	font-size: 16px;
	padding: 28px 30px;
}
@media screen and (max-width: 768px) {
	.internship__voice__item {
		width: 100%;
		font-size: 4.27vw;
	}
}
.internship__voice .internship__entry {
	margin: 60px auto 0;
}
@media screen and (max-width: 768px) {
	.internship__voice .internship__entry {
		margin-top: 40px;
	}
}

/*----------------------------------------
	Page Movie
----------------------------------------*/
.movie .g-footer:before {
	background: #fff;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	width: 100%;
	height: 100px;
}
.movie .l-container {
	padding-bottom: 0;
	min-height: auto;
}
.movie__outer {
	width: 100%;
	background: #fff;
	padding-bottom: 80px;
	position: relative;
	overflow: hidden;
}
.movie__wrapper {
	width: 78.125vw;
	max-width: 1280px;
	padding: 60px 0 0;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 768px) {
	.movie__wrapper {
		width: 89.3vw;
		padding: 40px 0 0;
	}
}
.movie__list {
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	display: flex;
	gap: 32px;
}
@media screen and (max-width: 768px) {
	.movie__list {
		flex-direction: column;
		gap: 40px;
	}
}
.movie__item {
	width: calc(50% - 16px);
}
@media screen and (max-width: 768px) {
	.movie__item {
		width: 100%;
	}
}
.movie__button {
	border: 0;
	outline: 0;
	padding: 0;
	background: transparent;
	cursor: pointer;
	transition: 0.2s;
}
@media (hover: hover) {
	.movie__button:hover {
		opacity: 0.8;
		scale: 1.02;
	}
}
.movie__button:active {
	opacity: 0.8;
	scale: 0.98;
}
.movie__button p {
	text-align: center;
	line-height: 1.7;
	font-weight: bold;
	font-size: 18px;
	margin-top: 24px;
}
@media screen and (max-width: 768px) {
	.movie__button p {
		font-size: 4.8vw;
		margin-top: 20px;
	}
}
.movie__thumbnail {
	position: relative;
}
.movie__thumbnail:before, .movie__thumbnail:after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
}
.movie__thumbnail:before {
	width: 80px;
	height: 80px;
	border-radius: 100%;
	background: #219BAC;
}
.movie__thumbnail:after {
	background: #ffffff;
	left: calc(50% + 2px);
	width: 16px;
	height: 19.0525588833px;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media screen and (max-width: 768px) {
	.movie__thumbnail:before {
		width: 60px;
		height: 60px;
	}
	.movie__thumbnail:after {
		width: 12px;
		height: 13.8564064606px;
	}
}
.movie__thumbnail img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	aspect-ratio: 16/9;
}
.movie__modal {
	width: 100%;
	height: 100dvh;
	opacity: 0;
	visibility: hidden;
	position: fixed;
	z-index: -1;
	transition: 0.3s;
	left: 0;
	top: 0;
}
.movie__modal.show {
	opacity: 1;
	visibility: visible;
	z-index: 20;
}
.movie__modal__overlay {
	width: 100%;
	height: 100dvh;
	position: fixed;
	background: rgba(255, 255, 255, 0.9);
	left: 0;
	top: 0;
}
.movie__modal__wrapper {
	width: 80.9vw;
	max-width: 1280px;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
}
@media screen and (max-width: 768px) {
	.movie__modal__wrapper {
		width: 100vw;
	}
}
.movie__modal iframe {
	width: 100%;
	aspect-ratio: 16/9;
}
.movie__modal p {
	margin-top: 30px;
	font-size: 28px;
	line-height: 1.7;
	font-weight: bold;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.movie__modal p {
		margin-top: 20px;
		font-size: 4.8vw;
	}
}
.movie__modal__video-wrap {
	display: none;
	position: relative;
}
.movie__modal__play-button {
	position: absolute;
	width: 150px;
	height: 150px;
	border-radius: 100%;
	background: #219BAC;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
	border: 0;
	outline: 0;
	transition: 0.2s;
}
@media (hover: hover) {
	.movie__modal__play-button:hover {
		scale: 1.02;
	}
}
.movie__modal__play-button:active {
	scale: 0.98;
}
.movie__modal__play-button:after {
	background: #ffffff;
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: calc(50% + 2px);
	translate: -50% -50%;
	width: 30px;
	height: 36.3730669589px;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media screen and (max-width: 768px) {
	.movie__modal__play-button {
		width: 80px;
		height: 80px;
	}
	.movie__modal__play-button:after {
		width: 12px;
		height: 13.8564064606px;
	}
}
.movie__modal__close {
	position: absolute;
	right: 0;
	top: -160px;
	right: -20px;
	width: 150px;
	height: 150px;
	transition: 0.2s;
	background: transparent;
	border: 0;
	outline: 0;
	padding: 0;
	cursor: pointer;
}
@media screen and (max-width: 768px) {
	.movie__modal__close {
		width: 100px;
		height: 100px;
		top: -90px;
		right: -5px;
	}
}
.movie__modal__close:before, .movie__modal__close:after {
	width: 1;
	height: 1px;
	background: #219BAB;
	content: "";
	display: block;
}
.movie__modal__close:before {
	rotate: -45deg;
}
.movie__modal__close:after {
	rotate: 45deg;
}
@media (hover: hover) {
	.movie__modal__close:hover {
		opacity: 0.8;
		scale: 1.02;
	}
}
.movie__modal__close:active {
	opacity: 0.8;
	scale: 0.98;
}
@media screen and (max-width: 768px) {
	.movie__modal__close {
		width: 80px;
		height: 80px;
	}
}
.movie__coming-soon {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 50px;
	text-align: center;
	margin-bottom: 70px;
}
@media screen and (max-width: 768px) {
	.movie__coming-soon {
		font-size: 10.67vw;
	}
}