@charset "utf-8";
:root {
/* 共通設定 */
	--color--black: #000000;
	--color--richblack : #131314;
	--color--grayblack: #101010;
	--color--blueblack: #28292B;
	--color--white: #ffffff;
	--color--gray: #9E9DA9;
	--color--lightgray: #D5D5DB;
	--color--graywhite: #EDECF2;
	--color--darkgray: #4A4A52;
	--color--pink: #FF4DAF;
	/* --color--gradient_main: linear-gradient(90deg, #878795 0%, #DDDDF0 50%, #878795 100%); */
	--color--gradient_main: linear-gradient(90deg, #9595A4 0%, #DDDDF0 50%, #90909F 100%);
}
@media all and (min-width: 769px){
	:root {
		--vw: 1440;
		--vh: 812;
	}
}
@media all and (max-width: 768px){
	:root {
		--vw: 375;
		--vh: 812;
	}
}

html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body {
	min-height: 100vh;
	margin: 0px;
	padding: 0px;
	background-color: var(--color--richblack);
	text-rendering: optimizeSpeed;
	color: var(--color--white);
	font-family: dnp-shuei-gothic-gin-std, sans-serif;
	font-weight: 500;
	font-style: normal;
	line-height: 1.8;
	letter-spacing: 0em;
}
/* #wrap {
	opacity: 0;
	transition: opacity .1s cubic-bezier(.85,0,.15,1);
} */

._gfont {
	font-family: source-han-sans-japanese, sans-serif;
}
._mfont {
	font-family: dnp-shuei-mincho-pr6n, sans-serif;
}
._ifont {
	font-family: Inter, sans-serif;
}
._block_link {
	display: block;
}
._palt {
	font-feature-settings: "palt";
}

header {
	width: 100%;
	height: 80px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10000;
}
body.page_about header,
body.page_contact header,
body.page_policy header,
body.page_recruit header,
body.page_thanks header {
	background-color: var(--color--richblack);
}
	.header__inner {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: calc((1302 / 1440) * 100%);
		height: 100%;
		margin: 0 auto;
	}
		.header__logo {
			width: 139px;
			height: auto;
			position: relative;
			z-index: 2;
		}
		.page_top .header__logo {
			pointer-events: none;
		}
			.header__logo__link {
				width: 100%;
				height: auto;
				font-size: 0;
			}
		.hamburger {
			width: 56px;
			height: 56px;
			position: relative;
			z-index: 2;
		}
			.hbg_btn {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 100%;
				height: 100%;
				padding: 0;
				cursor: pointer;
			}
				.hbg_btn_line {
					width: 38px;
					height: 1px;
					position: relative;
				}
					.hbg_btn_line::before,
					.hbg_btn_line::after {
						content: '';
						display: block;
						width: 100%;
						height: 100%;
						background-color: var(--color--white);
						position: absolute;
						top: 0;
						left: 0;
					}
					.hbg_btn_line::before {
						transform: translateY(-6px);
					}
					.hbg_btn_line::after {
						transform: translateY(6px);
					}
				/* 開く時の処理 */
					.open .hbg_btn_line::before {
						animation: hbg_btn-line_before-open .5s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
					.open .hbg_btn_line::after {
						animation: hbg_btn-line_after-open .5s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
						@keyframes hbg_btn-line_before-open {
							0% {
								transform: translateY(-6px);
							}
							100% {
								transform: translateY(0);
							}
						}
						@keyframes hbg_btn-line_after-open {
							0% {
								transform: translateY(6px);
							}
							100% {
								transform: translateY(0);
							}
						}
				/* 閉じる時の処理 */
					.close .hbg_btn_line::before {
						animation: hbg_btn-line_before-close .5s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
					.close .hbg_btn_line::after {
						animation: hbg_btn-line_after-close .5s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
						@keyframes hbg_btn-line_before-close {
							0% {
								transform: translateY(0);
							}
							100% {
								transform: translateY(-6px);
							}
						}
						@keyframes hbg_btn-line_after-close {
							0% {
								transform: translateY(0);
							}
							100% {
								transform: translateY(6px);
							}
						}
		.global_nav {
			width: 100%;
			height: 100vh;
			position: absolute;
			top: 0;
			left: 0;
			z-index: 1;
			pointer-events: none;
		}
		._opened.global_nav{
			pointer-events: auto;
		}
			.global_nav__bg {
				width: 100%;
				height: 100%;
				background-color: var(--color--black);
				position: absolute;
				top: 0;
				left: 0;
				z-index: 1;
				transition: 1s cubic-bezier(.85,0,.15,1);
				transform: translateY(-100%);
			}
			._opened .global_nav__bg {
				transform: translateY(0);
			}
			.global_nav__contents {
				width: 100%;
				height: 100%;
				position: relative;
				z-index: 2;
			}
				.global_nav__contents__inner {
					display: flex;
					justify-content: flex-start;
					align-items: center;
					width: 100%;
					height: 100%;
					padding: 0 max(calc((120 / var(--vw)) * 100vw), 120px);
				}
					.global_nav__list {
						display: flex;
						flex-direction: column;
						justify-content: flex-start;
						align-items: stretch;
						gap: max(calc((28 / var(--vw)) * 100vw), 28px);
						width: max(calc((256 / var(--vw)) * 100vw), 256px);
						height: auto;
					}
						.global_nav__item {
							width: 100%;
							height: auto;
							font-size: max(calc((16 / var(--vw)) * 100vw), 16px);
							font-weight: 700;
							line-height: max(calc((32 / var(--vw)) * 100vw), 32px);
							opacity: 0;
							transform: translateY(max(calc((10 / var(--vw)) * 100vw), 10px));
							transition: transform 0.4s, opacity 0.4s;
						}
						._opened .global_nav__item {
							opacity: 1;
							transform: translateY(0);
						}
						:root {
							--gn_item-base_delay: 0.4s;
							--gn_item-item_delay: 0.04s;
						}
						._opened .global_nav__item:nth-of-type(1) {
							transition-delay: calc(var(--gn_item-base_delay) + 0s);
						}
						._opened .global_nav__item:nth-of-type(2) {
							transition-delay: calc(var(--gn_item-base_delay) + var(--gn_item-item_delay));
						}
						._opened .global_nav__item:nth-of-type(3) {
							transition-delay: calc(var(--gn_item-base_delay) + var(--gn_item-item_delay) * 2);
						}
						._opened .global_nav__item:nth-of-type(4) {
							transition-delay: calc(var(--gn_item-base_delay) + var(--gn_item-item_delay) * 3);
						}
						._opened .global_nav__item:nth-of-type(5) {
							transition-delay: calc(var(--gn_item-base_delay) + var(--gn_item-item_delay) * 4);
						}
						._opened .global_nav__item:nth-of-type(6) {
							transition-delay: calc(var(--gn_item-base_delay) + var(--gn_item-item_delay) * 5);
						}
						._opened .global_nav__item:nth-of-type(7) {
							transition-delay: calc(var(--gn_item-base_delay) + var(--gn_item-item_delay) * 6);
						}
						._opened .global_nav__item:nth-of-type(8) {
							transition-delay: calc(var(--gn_item-base_delay) + var(--gn_item-item_delay) * 7);
						}
							.global_nav__item__link {
								display: flex;
								justify-content: space-between;
								align-items: center;
								width: 100%;
								height: auto;
								height: max(calc((32 / var(--vw)) * 100vw), 32px);
								color: var(--color--white);
							}
								.global_nav__item__arrow {
									width: max(calc((20 / var(--vw)) * 100vw), 20px);
									height: auto;
								}
									.global_nav__item__arrow svg {
										fill: var(--color--white);
									}
						@media (any-hover: hover) {
							.global_nav__item__link {
								transition: color .4s;
							}
							.global_nav__item__link:hover {
								color: var(--color--lightgray);
							}
									.global_nav__item__arrow svg {
										transition: .4s;
									}
									.global_nav__item__link:hover .global_nav__item__arrow svg {
										fill: var(--color--lightgray);
									}
						}

#footer {
	width: 100%;
	height: auto;
	background-color: var(--color--black);
}
	.footer__lyrics_belt {
		width: 100%;
		height: auto;
		overflow: hidden;
	}
		.footer__lyrics_belt__list {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			width: max-content;
			height: auto;
		}
			.footer__lyrics_belt__list__item {
				flex-shrink: 0;
				width: auto;
				height: 128px;
			}
				.footer__lyrics_belt__list__item img {
					width: auto;
					height: 100%;
				}
	.footer__inner {
		width: calc((1280 / var(--vw)) * 100vw);
		height: auto;
		padding: max(calc((48 / var(--vw)) * 100vw), 48px) 0 max(calc((80 / var(--vw)) * 100vw), 80px);
		margin: 0 auto;
	}
		.footer__top {
			display: flex;
			justify-content: flex-end;
			align-items: flex-start;
			width: 100%;
			height: auto;
			margin: 0 auto max(calc((24 / var(--vw)) * 100vw), 24px);
		}
			.footer__contact {
				width: fit-content;
				height: auto;
				margin: 0 auto 0 0;
			}
				.footer__contact__heading {
					font-size: max(calc((24 / var(--vw)) * 100vw), 24px);
					font-weight: 700;
					line-height: 1;
				}
				.footer__contact_btn_wrap {
					width: max(calc((256 / var(--vw)) * 100vw), 256px);
					height: max(calc((72 / var(--vw)) * 100vw), 72px);
					margin: max(calc((24 / var(--vw)) * 100vw), 24px) auto max(calc((24 / var(--vw)) * 100vw), 24px) 0;
				}
				.footer__contact__text {
					margin-bottom: max(calc((12 / var(--vw)) * 100vw), 12px);
					font-size: max(calc((16 / var(--vw)) * 100vw), 16px);
					font-weight: 700;
					line-height: 1;
				}
				.footer__contact__tel {
					margin-bottom: max(calc((24 / var(--vw)) * 100vw), 24px);
					font-size: max(calc((32 / var(--vw)) * 100vw), 32px);
					font-weight: 600;
					line-height: 1;
					letter-spacing: 0.04em;
				}
					.footer__contact__tel a {
						display: inline-block;
						color: var(--color--white);
						position: relative;
					}
						.footer__contact__tel a::before {
							content: '';
							display: block;
							width: 100%;
							height: 2px;
							background-color: var(--color--white);
							position: absolute;
							bottom: max(calc((-5 / var(--vw)) * 100vw), -5px);
							left: 0;
						}
				.footer__contact__reception {
					font-size: max(calc((14 / var(--vw)) * 100vw), 14px);
					font-weight: 500;
					line-height: 1;
				}
			.footer__menu {
				width: fit-content;
				height: auto;
				margin: 0 max(calc((80 / var(--vw)) * 100vw), 80px) 0 0;
			}
				.footer__menu__list {
					display: flex;
					flex-direction: column;
					justify-content: flex-start;
					align-items: stretch;
					gap: max(calc((12 / var(--vw)) * 100vw), 12px);
					width: max(calc((180 / var(--vw)) * 100vw), 180px);
					height: auto;
				}
					.footer__menu__list__item {
						font-size: max(calc((14 / var(--vw)) * 100vw), 14px);
						font-weight: 700;
						line-height: max(calc((24 / var(--vw)) * 100vw), 24px);
					}
						.footer__menu__list__item__link {
							display: flex;
							justify-content: space-between;
							align-items: center;
							width: 100%;
							height: auto;
							height: max(calc((24 / var(--vw)) * 100vw), 24px);
							color: var(--color--white);
						}
							.footer__menu__list__item__arrow {
								width: max(calc((16 / var(--vw)) * 100vw), 16px);
								height: auto;
							}
								.footer__menu__list__item__arrow svg {
									fill: var(--color--white);
								}
					@media (any-hover: hover) {
						.footer__menu__list__item__link {
							transition: color .4s;
						}
						.footer__menu__list__item__link:hover {
							color: var(--color--lightgray);
						}
								.footer__menu__list__item__arrow svg {
									transition: .4s;
								}
								.footer__menu__list__item__link:hover .footer__menu__list__item__arrow svg {
									fill: var(--color--lightgray);
								}
					}
			.footer__for_top {
				width: max(calc((80 / var(--vw)) * 100vw), 80px);
				height: max(calc((80 / var(--vw)) * 100vw), 80px);
				border-radius: 9999px;
				background: linear-gradient(140deg, #878795 0%, #DDDDF0 50%, #878795 100%);
				position: relative;
				cursor: pointer;
			}
				.footer__for_top__arrow {
					width: max(calc((24 / var(--vw)) * 100vw), 24px);
					height: auto;
					position: absolute;
					top: 50%;
					left: 50%;
					transform: translate(-50%, -50%) rotate(-90deg);
				}
					.footer__for_top__arrow svg {
						fill: var(--color--black);
					}
		.footer__bottom {
			display: flex;
			justify-content: space-between;
			align-items: flex-start;
			flex-wrap: wrap;
			width: 100%;
			height: auto;
		}
			.footer__logo {
				width: 100%;
				height: auto;
				margin: 0 auto max(calc((24 / var(--vw)) * 100vw), 24px);
				font-size: 0;
			}
			.footer__copyright {
				width: fit-content;
				height: auto;
				font-size: max(calc((12 / var(--vw)) * 100vw), 12px);
				font-weight: 500;
				line-height: 1;
				color: var(--color--lightgray);
			}
			.footer__policy {
				width: fit-content;
				height: auto;
				font-size: max(calc((12 / var(--vw)) * 100vw), 12px);
				font-weight: 500;
				line-height: 1;
			}
				.footer__policy a {
					color: var(--color--lightgray);
				}
			@media (any-hover: hover) {
				.footer__policy a {
					transition: .4s;
				}
				.footer__policy a:hover {
					color: var(--color--white);
				}
			}

/* 共通 */
.page__mask {
	position: fixed;
	top: 0;
	left: 0;
	/* z-index: 99999999; */
	z-index: 100000000;
	pointer-events: none;
}
	.page__mask ._mask__item {
		transform: scaleY(1);
	}

.section_heading {
	display: flex;
	justify-content: flex-start;
	gap: max(calc((16 / var(--vw)) * 100vw), 16px);
	font-size: max(calc((18 / var(--vw)) * 100vw), 18px);
	font-weight: 700;
	line-height: max(calc((24 / var(--vw)) * 100vw), 24px);;
	letter-spacing: 0em;
	color: var(--color--white);
	overflow: hidden;
}
.section_heading._center {
	justify-content: center;
}
	.section_heading__icon {
		display: block;
		width: max(calc((24 / var(--vw)) * 100vw), 24px);
		height: auto;

		position: relative;
		
		clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0% 100%);
		transition-duration: .4s;
		transition-delay: 0s;
		transition-timing-function: cubic-bezier(.85,0,.15,1);
		transition-property: clip-path;
	}
	._run .section_heading__icon {
		transition-duration: 1s;
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	}
		.section_heading__icon svg {
			fill: var(--color--white);
		}
	.section_heading__text {
		display: block;
		width: auto;
	}
		.section_heading__text span {
			display: inline-block;
			transform: translateY(100%);
			transition-duration: .4s;
			transition-delay: 0s;
			transition-timing-function: cubic-bezier(.85,0,.15,1);
		}
		._run .section_heading__text span:nth-of-type(2) {
			transition-delay: .025s;
		}
		._run .section_heading__text span:nth-of-type(3) {
			transition-delay: .05s;
		}
		._run .section_heading__text span:nth-of-type(4) {
			transition-delay: .075s;
		}
		._run .section_heading__text span:nth-of-type(5) {
			transition-delay: .1s;
		}
		._run .section_heading__text span:nth-of-type(6) {
			transition-delay: .125s;
		}
		._run .section_heading__text span:nth-of-type(7) {
			transition-delay: .15s;
		}
		._run .section_heading__text span:nth-of-type(8) {
			transition-delay: .175s;
		}
		._run .section_heading__text span:nth-of-type(9) {
			transition-delay: .2s;
		}
		._run .section_heading__text span:nth-of-type(10) {
			transition-delay: .225s;
		}
		._run .section_heading__text span:nth-of-type(11) {
			transition-delay: .25s;
		}
		._run .section_heading__text span:nth-of-type(12) {
			transition-delay: .275s;
		}
		._run .section_heading__text span:nth-of-type(13) {
			transition-delay: .3s;
		}
		._run .section_heading__text span:nth-of-type(14) {
			transition-delay: .325s;
		}
		._run .section_heading__text span:nth-of-type(15) {
			transition-delay: .35s;
		}
		._run .section_heading__text span {
			transition-duration: 1s;
			transform: translateY(0%);
		}

.site_copy {
	width: 100%;
	height: auto;
	font-size: max(calc((48 / var(--vw)) * 100vw), 48px);
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: left;
}
.site_copy._center {
	text-align: center;
}
	.site_copy__row {
		display: inline-block;
		vertical-align: bottom;
		overflow: hidden;
	}
		.site_copy__item {
			display: inline-block;
			vertical-align: bottom;
			transition-duration: .4s;
			transition-timing-function: ease;
			transition-property: transform, opacity;
		}
		.site_copy__item._border {
			-webkit-text-stroke-width: max(calc((1.5 / var(--vw)) * 100vw), 1.5px);
			-webkit-text-stroke-color: var(--color--white);
			color: transparent;
		}
		._run .site_copy .site_copy__item,
		._run.site_copy .site_copy__item {
			transition-duration: 1s;
			transition-timing-function: cubic-bezier(.85,0,.15,1);
			transform: translate(0%) !important;
			opacity: 1 !important;
		}

.btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	border-radius: 9999px;
	font-size: max(calc((14 / var(--vw)) * 100vw), 16px);
	font-weight: 500;
	line-height: 1;
	overflow: hidden;
	position: relative;
}
._black.btn {
	border: solid 1px var(--color--lightgray);
	color: var(--color--white);
}
._gray.btn {
	border: solid 1px transparent;
	color: var(--color--black);
}
	.btn::before {
		content: '';
		display: block;
		width: 200%;
		height: 100%;
		/* border-radius: 9999px; */
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		pointer-events: none;
	}
	._black.btn::before {
		background: linear-gradient(90deg, #878795 0%, #DDDDF0 25%, #878795 50%, #000000 75%, rgba(0, 0, 0, 0) 100%);
		transform: translateX(-100%);
	}
	._gray.btn::before {
		background: linear-gradient(-90deg, #878795 0%, #DDDDF0 25%, #878795 50%, #000000 75%, rgba(0, 0, 0, 0) 100%);
		transform: translateX(-50%);
	}
	.btn * {
		position: relative;
		z-index: 2;
	}
	.btn__arrow {
		width: max(calc((16 / var(--vw)) * 100vw), 16px);
		height: auto;
		position: absolute;
		top: 50%;
		right: max(calc((32 / var(--vw)) * 100vw), 32px);
		transform: translateY(-50%);
		z-index: 2;
	}
		._black.btn .btn__arrow svg {
			fill: var(--color--white);
		}
		._gray.btn .btn__arrow svg {
			fill: var(--color--black);
		}
@media (any-hover: hover) {
.btn {
	transition: .4s;
}
._black.btn:hover {
	color: var(--color--black);
}
._gray.btn:hover {
	border: solid 1px var(--color--lightgray);
	color: var(--color--white);
}
	._black.btn::before {
		opacity: 0;
		transition: .4s;
	}
	._black.btn:hover::before {
		opacity: 1;
		transform: translateX(0);
	}
	._gray.btn::before {
		opacity: 1;
		transition: .4s;
	}
	._gray.btn:hover::before {
		opacity: 0;
		transform: translateX(0%);
	}
		.btn__arrow svg {
			transition: .4s;
		}
		._black.btn:hover .btn__arrow svg {
			fill: var(--color--black);
		}
		._gray.btn:hover .btn__arrow svg {
			fill: var(--color--white);
		}
}

.more_btn {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: max(calc((8 / var(--vw)) * 100vw), 8px);
	width: fit-content;
	height: auto;
	padding: max(calc((8 / var(--vw)) * 100vw), 8px) 0;
	cursor: pointer;
	user-select: none;
}
	.more_btn__text {
		font-size: max(calc((16 / var(--vw)) * 100vw), 16px);
		font-weight: 500;
		line-height: 1;
	}
	.more_btn__icon {
		width: max(calc((16 / var(--vw)) * 100vw), 16px);
		height: max(calc((16 / var(--vw)) * 100vw), 16px);
		position: relative;
	}
		.more_btn__icon::before,
		.more_btn__icon::after {
			content: '';
			display: block;
			background-color: var(--color--black);
			border-radius: 9999px;
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
		}
		.more_btn__icon::before {
			width: 1px;
			height: max(calc((14 / var(--vw)) * 100vw), 14px);
			transition: .4s;
		}
		.more_btn__icon::after {
			width: max(calc((14 / var(--vw)) * 100vw), 14px);
			height: 1px;
		}
		._open .more_btn__icon::before {
			transform: translate(-50%, -50%) rotate(90deg);
		}

._mask {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100vh;
	will-change: width, height, transform;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
	._mask__item {
		width: 100%;
		flex: 1;
		margin-top: -1px; 
		background-color: var(--color--blueblack);
		transform: scaleY(0);
	}

.noise__bg {
	width: 100%;
	height: 100%;
	background: url('../image/index/noise-effect.webp');
	background-size: 310px 310px;

	background-repeat: repeat;
	background-position: center;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	pointer-events: none;

	opacity: 0;
	transition: opacity 2s ease;
}
._run .noise__bg {
	opacity: 1;
}
	.noise__bg::before {
		content: '';
		display: block;
		width: 100%;
		height: 100%;
		background-color: #D9D9D9;
		opacity: .07;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	}
	.noise__bg__high_light {
		width: calc((1200 / var(--vw)) * 100vw);
		height: auto;
		aspect-ratio: 1 / 1;
		border-radius: 9999px;
		/* box-sizing: content-box;
		border: solid 200vw var(--color--black); */
		position: absolute;
		top: 50%;
		left: 60%;
		z-index: 2;
		transform: translate(-50%, -50%);
		animation: infinity-x 16s ease-in-out infinite;
	}
	@keyframes infinity-x {
		0%, 100% { transform: translate(-50%, -50%); }
		50%      { transform: translate(-0%, -50%); }
	}
		.noise__bg__high_light__inner {
			width: 100%;
			height: 100%;
			border-radius: 9999px;
			overflow: hidden;
			box-shadow: 0 0 0 200vw var(--color--black);
			/* box-shadow: 0 0 calc((300 / var(--vw)) * 100vw) calc((220 / var(--vw)) * 100vw) var(--color--black) inset; */
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
			animation: infinity-y 10s ease-in-out infinite -2s;
		}
		@keyframes infinity-y {
			0%, 100% { 
				transform: translate(-50%, -47%) scale(1);
			}
			33.333% {
				transform: translate(-50%, -51%) scale(0.7);
			}
			50%      {
				transform: translate(-50%, -53%) scale(0.9);
			}
			66.666%  {
				transform: translate(-50%, -51%) scale(0.7);
			}
		}
			.noise__bg__high_light__inner::after {
				content: '';
				display: block;
				width: 100%;
				height: 100%;
				border-radius: 9999px;
				border: solid 1px var(--color--black);
				position: absolute;
				top: 0;
				left: 0;
				z-index: 2;
			}

#t_recruit {
	width: 100%;
	height: auto;
	padding: max(calc((90 / var(--vh)) * 100vh), 90px) 0;
	background-color: var(--color--black);
	background-image: url('../image/index/recruit-bg@pc.webp');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
	.t_recruit__inner {
		width: calc((1280 / var(--vw)) * 100%);
		height: auto;
		margin: 0 auto;
	}
		.t_recruit__copy {
			margin: max(calc((24 / var(--vw)) * 100vw), 24px) auto;
		}
			.t_recruit__copy .site_copy__item._01 {
				transform: translateY(100%);
			}
			.t_recruit__copy .site_copy__item._02 {
				transform: translateY(100%);
			}
			.t_recruit__copy .site_copy__item._03 {
				transform: translateY(100%);
			}
		.t_recruit__text {
			width: 100%;
			height: auto;
			margin: 0 auto max(calc((24 / var(--vw)) * 100vw), 24px);
			font-size: max(calc((16 / var(--vw)) * 100vw), 16px);
			font-weight: 500;
			line-height: 1.8;
			text-align: center;

			opacity: 0;
			transition: opacity 1s ease;
			transition-delay: 1s;
		}
		._run .t_recruit__text  {
			opacity: 1;
		}
		.t_recruit__btn_wrap {
			width: calc((256 / var(--vw)) * 100vw);
			height: calc((72 / var(--vw)) * 100vw);
			margin: 0 auto;

			opacity: 0;
			transition: opacity 1s ease;
			transition-delay: 1s;
		}
		._run .t_recruit__btn_wrap  {
			opacity: 1;
		}

/* 下層ページ */
section._white {
	background-color: var(--color--white);
	color: var(--color--blueblack);
}
	.page_heading {
		width: 100%;
		height: auto;
		font-size: max(calc((40 / var(--vw)) * 100vw), 40px);
		/* font-size: 40px; */
		font-weight: 700;
		line-height: 1.4;
		overflow: hidden;
	}
		.page_heading span {
			display: inline-block;
			vertical-align: bottom;
			transform: translateY(100%);
			transition-duration: 1s;
			transition-timing-function: cubic-bezier(.85,0,.15,1);
			transition-property: transform;
		}
		._run.page_heading span {
			transform: translateY(0%);
		}


/* PC ================================================== */
@media all and (min-width: 769px){
.sp {display: none;}
.pc {display: inline-block;}
.view_sp {display: none;}
.view_pc {display: block;}

/* 共通 */
.site_copy._sp {
	display: none;
}

}

/* Tablet ================================================== */
@media all and (max-width: 768px){
.pc {display: none;}
.sp {display: inline-block;}
.view_pc {display: none;}
.view_sp {display: block;}
body {}
h1{}
h2{}
h3{}
h4{}
h5{}
h6{}

/* header */
	.header__inner {
		width: calc((343 / 375) * 100%);
	}
		.header__logo {
			width: 124px;
		}
		.hamburger {
			width: 40px;
			height: 40px;
		}
				.hbg_btn_line {
					width: 27px;
				}
					.hbg_btn_line::before {
						transform: translateY(-4px);
					}
					.hbg_btn_line::after {
						transform: translateY(4px);
					}
						@keyframes hbg_btn-line_before-open {
							0% {
								transform: translateY(-4px);
							}
							100% {
								transform: translateY(0);
							}
						}
						@keyframes hbg_btn-line_after-open {
							0% {
								transform: translateY(4px);
							}
							100% {
								transform: translateY(0);
							}
						}
						@keyframes hbg_btn-line_before-close {
							0% {
								transform: translateY(0);
							}
							100% {
								transform: translateY(-4px);
							}
						}
						@keyframes hbg_btn-line_after-close {
							0% {
								transform: translateY(0);
							}
							100% {
								transform: translateY(4px);
							}
						}
		.global_nav {
			height: 100lvh;
		}
			.global_nav__contents {
				height: 100svh;
			}
				.global_nav__contents__inner {
					align-items: flex-start;
					padding: 144px max(calc((48 / var(--vw)) * 100vw), 48px) 0;
				}
					.global_nav__list {
						gap: 28px;
						width: 100%;
						max-width: 300px;
					}
						.global_nav__item {
							font-size: 14px;
							line-height: 32px;
							transform: 10px;
						}
							.global_nav__item__link {
								height: 32px;
							}
								.global_nav__item__arrow {
									width: 20px;
								}

/* footer */
			.footer__lyrics_belt__list__item {
				height: 80px;
			}
	.footer__inner {
		width: calc((327 / var(--vw)) * 100%);
		padding: 24px 0 80px;
	}
		.footer__top {
			flex-direction: column;
			justify-content: flex-start;
			align-items: stretch;
			margin: 0 auto 24px;
		}
			.footer__contact {
				width: 100%;
				margin: 0 auto;
			}
				.footer__contact__heading {
					font-size: 20px;
				}
				.footer__contact_btn_wrap {
					width: 256px;
					height: 72px;
					margin: 24px auto 24px 0;
				}
				.footer__contact__text {
					margin-bottom: 16px;
					font-size: 16px;
				}
				.footer__contact__tel {
					margin-bottom: 24px;
					font-size: 32px;
				}
						.footer__contact__tel a::before {
							height: 2px;
							bottom: -4px;
						}
				.footer__contact__reception {
					font-size: 14px;
				}
				.footer__contact__company {
					width: 100%;
					height: auto;
					margin: 24px auto 0;
					font-size: 14px;
					font-weight: 500;
					line-height: 1.8;
				}
					.footer__contact__company a {
						color: var(--color--white);
					}
			.footer__menu {
				width: 100%;
				margin: 24px auto 0;
			}
				.footer__menu__list {
					display: none;
				}
			.footer__for_top {
				display: none;
			}
			.footer__logo {
				margin: 0 auto 24px;
			}
			.footer__copyright {
				font-size: 12px;
			}
			.footer__policy {
				font-size: 12px;
			}

/* 共通 */
.section_heading {
	gap: 8px;
	font-size: 18px;
	line-height: 24px;
}
	.section_heading__icon {
		width: 24px;
	}

.site_copy {
	font-size: 40px;
	line-height: 1.5;
	white-space: nowrap;
}
.site_copy._pc {
	display: none;
}
	.site_copy__item {
		padding: 2px 0;
	}
	.site_copy__item._border {
		-webkit-text-stroke-width: 1.5px;
	}

.btn {
	font-size: 14px;
}
	.btn__arrow {
		width: 16px;
		right: 32px;
	}

/* noise__bg */
	.noise__bg__high_light {
		width: calc((342 / var(--vw)) * 100vw);
		/* border: solid 200vh var(--color--black); */
		left: 50%;
	}
		.noise__bg__high_light__inner {
			box-shadow: 0 0 0 200vw var(--color--black);

			/* box-shadow: 0 0 calc((60 / var(--vw)) * 100vw) calc((60 / var(--vw)) * 100vw) var(--color--black) inset; */
		}
		@keyframes infinity-y {
			0%, 100% { 
				transform: translate(-50%, -47%) scale(1);
			}
			33.333% {
				transform: translate(-50%, -51%) scale(0.7);
			}
			50%      {
				transform: translate(-50%, -53%) scale(0.9);
			}
			66.666%  {
				transform: translate(-50%, -51%) scale(0.7);
			}
		}

#t_recruit {
	padding: 80px 0;
	background-image: url('../image/index/recruit-bg@sp.webp');
}
	.t_recruit__inner {
		width: calc((327 / var(--vw)) * 100%);
	}
		#t_recruit .section_heading {
			justify-content: flex-start !important;
		}
		.t_recruit__copy {
			margin: 22px auto;
			font-size: 36px;
			text-align: left !important;
			white-space: wrap;
		}
			.t_recruit__copy .site_copy__item._02 {
				transition-delay: .1s;
			}
			.t_recruit__copy .site_copy__item._03 {
				transition-delay: .1s;
			}
		.t_recruit__text {
			margin: 0 auto 32px;
			font-size: 16px;
			text-align: left;
		}
		.t_recruit__btn_wrap {
			width: 256px;
			height: 72px;
			margin: 0 auto;
		}


/* 下層ページ */
	.page_heading {
		font-size: 32px;
		line-height: 1.4;
		font-feature-settings: "palt";
	}
}

/* SP ================================================== */
@media all and (max-width: 575px){

}

@media all and (max-width: 460px){
/* t_recruit */
			.t_recruit__copy .site_copy__item._02 {
				transition-delay: 0.1s;
			}
			.t_recruit__copy .site_copy__item._03 {
				transition-delay: 0.2s;
			}
}