@charset "UTF-8";

/* !Base -------------------------------------------------------------- */
:root {
  --blue: #1e39dc;
  --red: #dc1e37;
  --lgray: #f2f2f2;
  --gray: #e6e6e6;
}
a {	color: #000; text-decoration: none; }
a:hover { color: var(--red); text-decoration: none;}
.detail a {	color: var(--blue); text-decoration: none; border-bottom: 1px solid; }
.detail a:hover,
a.underline { border-bottom: 1px solid; }
a.underline:hover {  }
a.red {	color: var(--red); text-decoration: none; }
a.red:hover { border-bottom: 1px solid; }
html { 
	font-size: 62.5%; overflow-y: scroll;
}
body {
	font-size: 16px;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	line-height: 1.75;
	color: #000;
	letter-spacing: 0.01em;
}
body.no-scroll {
}
.noto {
	font-family: "Noto Sans JP", sans-serif;
}
.poppins {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal;
}
.fw900 {
	font-weight: 900;
}
.bold {
	font-weight: 700;
}
.bold2 {
	font-weight: 600;
}
.medium {
	font-weight: 500;
}
.normal {
	font-weight: 400;
}
.thin {
	font-weight: 100;
}
p { padding: 1em 0; }
p.h1 { padding: 0; }
img { max-width: 100%; height: auto; }
.taL { text-align: left   !important;}
.taC { text-align: center !important;}
.taR { text-align: right  !important;}
.marker { background:linear-gradient(transparent 60%, #FCFAD8 60%, #FCFAD8 100%, #fff 100%);}
.white { color: #fff; }
.red { color: var(--red); }
.black { color: #000; }
.glay { color: #c9caca; }
.bg_white { background: #fff; }
.bg_black { background: #000; }
.bg_red { background: var(--red); }
.bg_gray { background: var(--gray); }
.bg_lgray { background: var(--lgray); }
.br10 { border-radius: 10px; }
.fz100 { font-size: 100px; }
.fz90 { font-size: 90px; }
.fz84 { font-size: 84px; }
.fz80 { font-size: 80px; }
.fz75 { font-size: 75px; }
.fz74 { font-size: 74px; }
.fz73 { font-size: 73px; }
.fz65 { font-size: 65px; }
.fz64 { font-size: 64px; }
.fz52 { font-size: 52px; }
.fz50 { font-size: 50px; }
.fz42 { font-size: 42px; }
.fz41 { font-size: 41px; }
.fz39 { font-size: 39px; }
.fz38 { font-size: 38px; }
.fz36 { font-size: 36px; }
.fz32 { font-size: 32px; }
.fz31 { font-size: 31px; }
.fz30 { font-size: 30px; }
.fz28 { font-size: 28px; }
.fz26 { font-size: 26px; }
.fz26-2 { font-size: 26px; }
.fz25 { font-size: 25px; }
.fz24 { font-size: 24px; }
.fz23 { font-size: 23px; }
.fz22 { font-size: 22px; }
.fz21 { font-size: 21px; }
.fz20 { font-size: 20px; }
.fz19 { font-size: 19px; }
.fz18 { font-size: 18px; }
.fz16 { font-size: 16px; }
.fz14 { font-size: 14px; }
.fz13 { font-size: 13px; }
.fz12 { font-size: 12px; }
body:not(.home) h1,body:not(.home) .h1 { font-size: 20px; font-weight: 700; }
h2,h3,h4,h5 { font-size: 30px; line-height: 1.4; font-weight: 700; }
strong { font-weight: 700; }
.lh25 {line-height:2.5;}
.lh24 {line-height:2.4;}
.lh22 {line-height:2.2;}
.lh21 {line-height:2.1;}
.lh20 {line-height:2.0;}
.lh19 {line-height:1.9;}
.lh18 {line-height:1.8;}
.lh17 {line-height:1.7;}
.lh16 {line-height:1.6;}
.lh15 {line-height:1.5;}
.lh14 {line-height:1.4;}
.lh13 {line-height:1.3;}
.lh12 {line-height:1.2;}
.lh11 {line-height:1.1;}
.lh10 {line-height:1;}
.lh09 {line-height:0.9;}
.ls00 {letter-spacing:0;}
.nls004 {letter-spacing:-0.04em;}
.ls001 {letter-spacing:0.01em;}
.ls002 {letter-spacing:0.02em;}
.ls004 {letter-spacing:0.04em;}
.ls005 {letter-spacing:0.05em;}
.ls007 {letter-spacing:0.07em;}
.ls008 {letter-spacing:0.08em;}
.ls01 {letter-spacing:0.1em;}
.ls015 {letter-spacing:0.15em;}
.ls02 {letter-spacing:0.19em;}
.ls025 {letter-spacing:0.25em;}
.ls03 {letter-spacing:0.3em;}
.ls04 {letter-spacing:0.4em;}
.ls07 {letter-spacing:.7em;}
figcaption { line-height: 1.5; margin-top: 0.5em; }
.r_over { transition: all 0.3s;}
.r_over:hover { filter: brightness(120%);}
.r_over2 { transition: all 0.3s;}
.r_over2:hover { filter: brightness(80%);}
.t-03 { transition: all 0.3s;}
.hdn { display: none; }
@media screen and (max-width: 1920px) {
}
@media screen and (max-width: 1813px) {
}
@media screen and (max-width: 1700px) {
body:not(.home) h1,body:not(.home) .h1 { font-size: 1.176vw; }
}
@media screen and (max-width: 1300px) {
body { font-size: 1.231vw; }
.fz100 { font-size: 7.692vw; }
.fz90 { font-size: 6.923vw; }
.fz84 { font-size: 6.462vw; }
.fz80 { font-size: 6.154vw; }
.fz75 { font-size: 5.769vw; }
.fz73 { font-size: 5.615vw; }
.fz65 { font-size: 5vw; }
.fz50 { font-size: 3.846vw; }
.fz42 { font-size: 3.231vw; }
.fz38 { font-size: 2.923vw; }
.fz36 { font-size: 2.769vw; }
.fz32 { font-size: 2.462vw; }
.fz31 { font-size: 2.385vw; }
.fz30 { font-size: 2.308vw; }
.fz28 { font-size: 2.154vw; }
.fz26 { font-size: 2vw; }
.fz25 { font-size: 1.923vw; }
.fz24 { font-size: 1.846vw; }
.fz23 { font-size: 1.769vw; }
.fz22 { font-size: 1.692vw; }
.fz21 { font-size: 1.615vw; }
.fz20 { font-size: 1.538vw; }
.fz19 { font-size: 1.462vw; }
.fz18 { font-size: 1.385vw; }
.fz16 { font-size: 1.231vw; }
.fz14 { font-size: 1.077vw; }
.fz13 { font-size: 1vw; }
.fz12 { font-size: 0.923vw; }
h2,h3,h4,h5 { font-size: 2.308vw; }
}
@media screen and (max-width: 1024px) {
body { font-size: 1.563vw; }
.fz100 { font-size: 9.766vw; }
.fz90 { font-size: 8.789vw; }
.fz90 { font-size: 6.923vw; }
.fz84 { font-size: 8.203vw; }
.fz80 { font-size: 7.813vw; }
.fz75 { font-size: 7.324vw; }
.fz73 { font-size: 7.129vw; }
.fz65 { font-size: 6.348vw; }
.fz50 { font-size: 4.883vw; }
.fz42 { font-size: 4.102vw; }
.fz38 { font-size: 3.711vw; }
.fz36 { font-size: 3.516vw; }
.fz32 { font-size: 3.125vw; }
.fz31 { font-size: 3.027vw; }
.fz30 { font-size: 2.93vw; }
.fz28 { font-size: 2.734vw; }
.fz26 { font-size: 2.539vw; }
.single-interview .fz26 { font-size: 2.1vw; }
.fz25 { font-size: 2.441vw; }
.fz24 { font-size: 2.344vw; }
.fz23 { font-size: 2.246vw; }
.fz22 { font-size: 2.148vw; }
.fz21 { font-size: 2.051vw; }
.fz20 { font-size: 1.953vw; }
.fz19 { font-size: 1.855vw; }
.fz18 { font-size: 1.758vw; }
.fz16 { font-size: 1.563vw; }
.fz14 { font-size: 1.367vw; }
.fz13 { font-size: 1.27vw; }
.fz12 { font-size: 1.172vw; }
body:not(.home) h1,body:not(.home) .h1 { font-size: 1.75vw; }
h2,h3,h4,h5 { font-size: 2.93vw; }
}
@media screen and (max-width: 540px) { /*500px*/
body { font-size: 3.32vw; line-height: 1.83; }
.fz100 { font-size: 20vw; }
.fz100 { font-size: 13vw; }
.fz90 { font-size: 14.2vw; }
.fz84 { font-size: 16.8vw; }
.fz80 { font-size: 16vw; }
.fz75 { font-size: 15vw; }
.fz73 { font-size: 14.6vw; }
.fz65 { font-size: 13vw; }
.fz50 { font-size: 10vw; }
.fz50 { font-size: 6.667vw; }
.fz42 { font-size: 8.4vw; }
.fz38 { font-size: 7.6vw; }
.fz36 { font-size: 7.2vw; }
.fz36 { font-size: 4.8vw; }
.features-container .fz36 { font-size: 5.06vw; }
.strength .fz36 { font-size: 4.67vw; }
.fz36.fz36-2 { font-size: 4.5vw; }
.fz32 { font-size: 3.5vw; }
.entry .fz32 { font-size: 5.8vw; }
.fz31 { font-size: 6.2vw; }
.fz30 { font-size: 6vw; }
.jobs-container .fz30 { font-size: 4.8vw; }
.fz28 { font-size: 5.6vw; }
.bg_dot_black .fz28 { font-size: 3.8vw; }
.fz26 { font-size: 5.2vw; }
.single-interview .fz26 { font-size: 3.6vw; }
.fz25 { font-size: 5vw; }
.fz24 { font-size: 4.8vw; }
.fz23 { font-size: 4.6vw; }
.fz22 { font-size: 4.4vw; }
.info_inner .fz22 { font-size: 3.47vw; }
.fz21 { font-size: 4.2vw; }
.fz20 { font-size: 4vw; }
.jobs-container .fz20 { font-size: 3.3vw; }
.fz19 { font-size: 3.8vw; }
.fz18 { font-size: 3.6vw; }
.fz16 { font-size: 3.2vw; }
.fz14 { font-size: 2.8vw; }
.fz13 { font-size: 2.6vw; }
.fz12 { font-size: 2.4vw; }
body:not(.home) h1,body:not(.home) .h1 { font-size: 4vw; }
h2,h3,h4,h5 { font-size: 5.5vw; }
.br10 { border-radius: 1.3vw; }
.sp-taC { text-align: center !important;}
}
.sp,
.pro,
.tab,
.protabonly {
	display: none;
}
@media screen and (max-width: 1024px) {
	.pc {
		display: none;
	}
	.pro,
	.protabonly {
		display: block;
	}
}
@media screen and (max-width: 820px) {
	.pcpro,
	.notabonly {
		display: none;
	}
	.tab {
		display: block;
	}
}
@media screen and (max-width: 540px) {
	.sp,
	.notabonly {
		display: block;
	}
	.nosp,
	.protabonly {
		display: none !important;
	}
}
.mw100 { width: 100%; height: auto;}
.mw90 { width: 90%; margin: 0 5%;}
.mw72 { width: 100%; max-width: 72vw; margin: 0 auto; }
.dib { display: inline-block; }


/* toggle menu */
.menu { 
	background: #fff;
	transition: 0.3s ease;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
	position: fixed;
	z-index: 5;
	right: 0;
	top: 0;
	width: auto;
	height: 100%;
	overflow-y: scroll;
	scrollbar-width: none;
	overscroll-behavior: none;
}
.menu-inner {
	padding: 100px 30px 40px;
	min-height: 100.1%;
	min-height: calc(100% + 1px);
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.menu-logoWrap {
	margin-left: auto;
	margin-right: auto;
}
.menu ul.header-menu1 {
	width: 100%;
	display: flex;
	flex-direction: column;
	padding: 0 15%;
	margin-top: 2em;
}
.menu ul.header-menu1 li {
	width: 100%;
}
.menu ul.header-menu1 li {
	border-bottom: 1px solid var(--red);
}
.menu ul.header-menu1 li a {
	display: flex;
	flex-direction: column;
	font-weight: 500;
	line-height: 1.38;
	letter-spacing: 0.02em;
	font-size: 24px;
	padding: .55em 0;
}
.menu ul.header-menu3 {
	margin-top: 1.5em;
	padding: 0 15%;
}
.menu ul.header-menu3 li {
	font-weight: 500;
	letter-spacing: 0.02em;
	font-size: 18px;
}
.menu ul.header-menu3 li a {
	display: block;
	font-weight: 500;
	letter-spacing: 0.02em;
	padding: .18em 0;
	line-height: 1.75;
	font-size: 18px;
}
.menu ul.header-menu2 {
	display: flex;
	justify-content: space-between;
	margin-top: 2em;
	width: 450px;
}
.menu ul.header-menu2 li {
	width: 48.4%;
}
.menu ul.header-menu2 li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 1.15em 0 1.3em;
	color: #fff;
	font-weight: 500;
	text-align: center;
	position: relative;
	overflow: hidden;
}
.menu ul.header-menu2 li a span {
	position: relative;
	z-index: 2;
}
.menu ul.header-menu2 li a::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	transition: all .3s;
	display: block;
	height: 100%;
	width: 110%;
	z-index: 1;
	transform: translateX(-100%);
	clip-path: polygon(0 0, 100% 0%, 95% 100%, 0% 100%);
}
.menu ul.header-menu2 li a.bg_red::before {
	background: #000;
}
.menu ul.header-menu2 li a.bg_black::before {
	background: var(--red);
}
.menu-logo-ml {
	margin-left: 50px;
}
@media screen and (min-width: 1025px) {
	.menu ul.header-menu2 li a:hover::before {
		transform: translateX(0%);
	}
}
@media screen and (max-width: 1920px) {
	.menu-inner {
		padding: 5.208vw 1.563vw 2.083vw;
	}
	.menu .fz14 {
		font-size: 0.729vw;
	}
	.menu .fz18 {
		font-size: 0.938vw;
	}
	.menu ul.header-menu1 li a {
		font-size: 1.25vw;
	}
	.menu ul.header-menu3 li {
		font-size: 0.938vw;
	}
	.menu ul.header-menu3 li a {
		font-size: 0.938vw;
	}
	.menu ul.header-menu2 {
		width: 23.438vw;
	}
	.menu-logo-ml {
		margin-left: 2.604vw;
	}
}
@media screen and (max-width: 1024px) {
	.menu {
	}
	.menu-inner {
		padding: 9.766vw 5vw 3.906vw;
		font-size: 1.563vw;
	}
	.menu .fz14 {
		font-size: 1.367vw;
	}
	.menu .fz18 {
		font-size: 1.758vw;
	}
	.menu ul.header-menu1 {
		margin-top: 2em;
	}
	.menu ul.header-menu1 li a {
		font-size: 2.344vw;
	}
	.menu ul.header-menu3 li {
		font-size: 1.758vw;
	}
	.menu ul.header-menu3 li a {
		font-size: 1.758vw;
	}
	.menu ul.header-menu2 {
		width: 43.945vw;
	}
	.menu-logo-ml {
		margin-left: 4.883vw;
	}
}
@media screen and (max-width: 540px) {
	.menu {
		width: 100%;
	}
	.menu-inner {
		padding: 19.417vw 5.86vw 7.767vw;
		font-size: 3.2vw;
	}
	.menu .fz14 {
		font-size: 2.93vw;
	}
	.menu .fz18 {
		font-size: 3.47vw;
	}
	.menu ul.header-menu1 {
		margin-top: 2em;
	}
	.menu ul.header-menu1 li a {
		font-size: 4.66vw;
	}
	.menu ul.header-menu3 li {
		font-size: 3.495vw;
	}
	.menu ul.header-menu3 li a {
		font-size: 3.2vw;
	}
	.menu ul.header-menu2 {
		width: 100%;
	}
	.menu-logo-ml {
		margin-left: 8.591vw;
	}
}
 
.menu.open {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
}
 
.Toggle {
	display: inline-block;
	cursor: pointer;
	line-height: 1;
	background: #727171;
	position: relative;
	width: 97px;
	height: 97px;
	z-index: 6;
}
.Toggle span {
	display: block;
	position: absolute;
	left: 26px;
	transition: all .3s;
}
.Toggle span:nth-child(1),
.Toggle span:nth-child(2) {
	width: 46px;
	border-bottom: solid 2px #fff;
}
.Toggle span:nth-child(1) {
	top: 29px;
}
.Toggle span:nth-child(2) {
	top: 44px;
}
.Toggle span:nth-child(3) {
	top: 56px;
	color: #fff;
}
.Toggle.active {
	background: none;
}
.Toggle.active span:nth-child(1),
.Toggle.active span:nth-child(2) {
	top: 36px;
	left: 22px;
}
.Toggle.active span:nth-child(1),
.Toggle.active span:nth-child(2) {
	width: 56px;
	border-bottom: solid 2px #4f4f4f;
}
.Toggle.active span:nth-child(1) {
	transform: rotate(-45deg);
}
.Toggle.active span:nth-child(2) {
	transform: rotate(45deg);
}
.Toggle.active span:nth-child(3) {
	display: none;
}
.header-cover {
	background-color: rgba(0,0,0,.5);
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	opacity: 0;
	visibility: hidden;
	transition: opacity .2s ease;
	z-index: 2;
	overflow-y: auto;
	scrollbar-width: none;
	overscroll-behavior: none;
}
.menu.open + .header-cover {
	opacity: 1;
	visibility: visible;
}
@media screen and (max-width: 1920px) {
	.Toggle {
		width: 5.052vw;
		height: 5.052vw;
	}
	.Toggle span {
		left: 1.354vw;
	}
	.Toggle span:nth-child(1),
	.Toggle span:nth-child(2) {
		width: 2.396vw;
	}
	.Toggle span:nth-child(1) {
		top: 1.51vw;
	}
	.Toggle span:nth-child(2) {
		top: 2.292vw;
	}
	.Toggle span:nth-child(3) {
		top: 2.917vw;
		font-size: 0.833vw;
	}
	.Toggle.active span:nth-child(1),
	.Toggle.active span:nth-child(2) {
		top: 1.875vw;
		left: 1.146vw;
	}
	.Toggle.active span:nth-child(1),
	.Toggle.active span:nth-child(2) {
		width: 2.917vw;
	}
}
@media screen and (max-width: 1024px) {
	.Toggle {
		width: 9.473vw;
		height: 9.473vw;
	}
	.Toggle span {
		left: 2.539vw;
	}
	.Toggle span:nth-child(1),
	.Toggle span:nth-child(2) {
		width: 4.492vw;
	}
	.Toggle span:nth-child(1) {
		top: 2.832vw;
	}
	.Toggle span:nth-child(2) {
		top: 4.297vw;
	}
	.Toggle span:nth-child(3) {
		top: 5.469vw;
		font-size: 1.563vw;
	}
	.Toggle.active span:nth-child(1),
	.Toggle.active span:nth-child(2) {
		top: 3.516vw;
		left: 2.148vw;
	}
	.Toggle.active span:nth-child(1),
	.Toggle.active span:nth-child(2) {
		width: 5.469vw;
	}
}
@media screen and (max-width: 540px) {
	.Toggle {
		width: 16.66vw;
		height: 16.66vw;
	}
	.Toggle span {
		left: 4.467vw;
	}
	.Toggle span:nth-child(1),
	.Toggle span:nth-child(2) {
		width: 7.904vw;
	}
	.Toggle span:nth-child(1) {
		top: 4.983vw;
	}
	.Toggle span:nth-child(2) {
		top: 7.56vw;
	}
	.Toggle span:nth-child(3) {
		top: 9.622vw;
		font-size: 2.749vw;
	}
	.Toggle.active span:nth-child(1),
	.Toggle.active span:nth-child(2) {
		top: 6.186vw;
		left: 3.78vw;
	}
	.Toggle.active span:nth-child(1),
	.Toggle.active span:nth-child(2) {
		width: 9.622vw;
	}
}

.header-pc {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.header-pc li a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}
.header-pc li.header-pc-menu a {
	font-weight: 500;
	letter-spacing: 0.05em;
	letter-spacing: 0;
	padding: 0 18px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.header-pc li.header-pc-btn {
	height: 100%;
	width: 127px;
	position: relative;
	overflow: hidden;
}
.header-pc li.header-pc-btn a,
.header-pc li.header-pc-btn a:hover {
	color: #fff;
	position: relative;
	z-index: 2;
}
.header-pc-btn {
	margin-left: 20px;
}
.header-pc-btn + .header-pc-btn {
	margin-left: 0;
}
.header-pc li.header-pc-btn::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	transition: all .2s;
	display: block;
	height: 100%;
	width: 125%;
	z-index: 1;
	transform: translateX(-100%);
	clip-path: polygon(0% 0, 100% 0%, 85% 100%, 0% 100%);
}
.header-pc li.header-pc-btn.bg_red::before {
	background: #000;
}
.header-pc li.header-pc-btn.bg_black::before {
	background: var(--red);
}
.header-pc li.header-pc-btn:hover::before {
	transform: translateX(0%);
}
@media screen and (max-width: 1920px) {
	.header-pc li.header-pc-menu a {
		padding: 0 0.938vw;
		font-size: 0.833vw;
	}
	.header-pc li.header-pc-btn {
		width: 6.615vw;
		font-size: 0.833vw;
	}
	.header-pc-btn {
		margin-left: 1.042vw;
	}
}


/* !header -------------------------------------------------------------- */
#header {
	position: fixed;
	width: 100%;
	top: 0;
	z-index: 5;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 97px;
	padding-left: 24px;
	background: #fff;
}
#header.change-color {
	background: #fff;
}
#contents {
	padding-top: 97px;
}
@media screen and (max-width: 1920px) {
	#header {
		height: 5.02vw;
		padding-left: 1.25vw;
	}
	#contents {
		padding-top: 5.02vw;
	}
}
@media screen and (max-width: 1024px) {
	#header {
		height: 9.473vw;
		padding-left: 4vw;
	}
	#contents {
		padding-top: 9.473vw;
	}
}
@media screen and (max-width: 540px) {
	#header {
		height: 16.6vw;
		padding-left: 2.8vw;
	}
	#contents {
		padding-top: 16.6vw;
	}
}


/* !logo -------------------------------------------------------------- */
.logo,
.footer_logo {
	padding: 0;
	font-weight: 700;
}
.logo a,
.footer_logo a {
	display: block;
	width: 100%;
	height: 100%;
	line-height: 2.2;
}
.logo a:hover {
	color: #000;
}
.logo a * {
	white-space: nowrap;
}
.logo_txt {
	padding: 0 14px 2px 26px;
}
.logo img {
	margin-top: 7px;
}
.footer_logo a {
}
.nm {
	margin-left: -0.5em;
}
@media screen and (max-width: 1920px) {
	#header .logo .fz12 {
		font-size: 0.625vw;
	}
	#header .logo .fz26 {
		font-size: 1.354vw;
	}
	#header .logo .fz20 {
		font-size: 1.042vw;
	}
	#header .logo_txt {
		padding: 0 0.729vw 0.104vw 1.354vw;
	}
	#header .logo img {
		width: 11.823vw;
		margin-top: 0.365vw;
	}
}
@media screen and (max-width: 1300px) {
	#footer .logo .fz12 {
		font-size: 0.923vw;
	}
	#footer .logo .fz26 {
		font-size: 2vw;
	}
	#footer .logo .fz20 {
		font-size: 1.538vw;
	}
	#footer .logo_txt {
		padding: 0 1.077vw 0.15vw 2vw;
	}
	#footer .logo img {
		width: 17.462vw;
		margin-top: 0.538vw;
	}
}
@media screen and (max-width: 1024px) {
	#header .logo .fz12 {
		font-size: 1.172vw;
	}
	#header .logo .fz26 {
		font-size: 2.539vw;
	}
	#header .logo .fz20 {
		font-size: 1.953vw;
	}
	#header .logo_txt {
		padding: 0 1.367vw 0 2.539vw;
	}
	#header .logo img {
		width: 22.168vw;
		margin-top: 1vw;
	}
	#footer {
		text-align: center;
	}
	#footer .logo {
		display: inline-block;
	}
	#footer .logo .fz12 {
		font-size: 1.333vw;
	}
	#footer .logo .fz26 {
		font-size: 2.889vw;
	}
	#footer .logo .fz20 {
		font-size: 2.222vw;
	}
	#footer .logo_txt {
		padding: 0 1.556vw 0.7vw 2.889vw;
	}
	#footer .logo img {
		width: 25.222vw;
		margin-top: 0.778vw;
	}
}
@media screen and (max-width: 540px) {
	#header .logo a {
		padding-top: 1vw;
	}
	#header .logo .fz12 {
		font-size: 2.226vw;
	}
	#header .logo .fz26 {
		font-size: 4.824vw;
	}
	#header .logo .fz20 {
		font-size: 3.83vw;
	}
	#header .logo_txt {
		padding: 0;
	}
	#header .logo img {
		width: 42.27vw;
	}
	
	#footer .logo .fz12 {
		font-size: 2.4vw;
	}
	#footer .logo .fz26 {
		font-size: 5.2vw;
	}
	#footer .logo .fz20 {
		font-size: 4vw;
	}
	#footer .logo_txt {
		padding: 0;
	}
	#footer .logo img {
		width: 45.4vw;
	}
	.logo .sp-taC {
		padding-left: 6.5vw;
	}
	.logo .sp-taC span {
		display: block;
		line-height: 1.2;
	}
}


/*基準1300*/
.container {
	width: 84.62%;
	max-width: 1100px;
	margin: 0 auto;
}
.container-min {
	width: 84.62%;
	max-width: 1100px;
	margin: 0 auto;
}
.container83 {
	width: 83.1%;
	margin: 0 auto;
}
.container85 {
	width: 85.5%;
	margin: 0 auto;
}
.container80-94 {
	width: 80%;
	margin: 0 auto;
}
.container95 {
	width: 84.62%;
	max-width: 1100px;
	margin: 0 auto;
}
.container100 {
	width: 100%;
	margin: 0 auto;
}
.container790 {
	width: 60.8%;
	max-width: 790px;
	margin: 0 auto;
}
.container936 {
	width: 72%;
	max-width: 936px;
	margin: 0 auto;
}
.container940 {
	width: 72.31%;
	max-width: 940px;
	margin: 0 auto;
}
.container972 {
	width: 74.8%;
	max-width: 972px;
	margin: 0 auto;
}
.container1180 {
	width: 90.77%;
	max-width: 1180px;
	margin: 0 auto;
}
.container1220 {
	width: 93.85%;
	max-width: 1220px;
	margin: 0 auto;
}
.container1400 {
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
}
.container1920 {
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
}
.container-jobs {
	width: 92.31%;
}
.container-left {
	margin-left: 0;
	margin-right: auto;
}
.container-right {
	margin-right: 0;
	margin-left: auto;
}
.container58 {
	width: 58%;
	margin: 0 auto;
}
@media screen and (min-width: 1301px) {
	.container-jobs {
		width: calc(calc(calc(100% - 1100px) /2) + 1100px);
	}
	/*.container-left {
		padding-left: calc(calc(100% - 1100px)/2);
	}
	.container-right {
		padding-right: calc(calc(100% - 1100px)/2);
	}*/
}
@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1024px) {
	.container-left {
		margin-left: auto;
		margin-right: auto;
	}
	.container-right {
		margin-left: auto;
		margin-right: auto;
	}
	.container95 {
		width: 95%;
	}
	.container936 {
		width: 75%;
	}
	.container58 {
		width: 70%;
	}
	.container940 {
		width: 89.5%;
	}
}
@media screen and (max-width: 540px) {
	.container {
		width: 89.5%;
	}
	.container1220 {
		width: 68%;
	}
	.container936 {
		width: 89.5%;
	}
	.container58 {
		width: 87%;
	}
	.container790 {
		width: 100%;
	}
	.container80-94 {
		width: 94%;
	}
	.container972 {
		width: 89.5%;
	}
	.container83 {
		width: 89.5%;
	}
}


/* !btn -------------------------------------------------------------- */
a.btn_01,
.submitbtnWrap {
	display: inline-block;
	color: #fff;
	position: relative;
	display: flex;
	align-items: center;
	line-height: 1;
	transition: all .2s;
	overflow: hidden;
	font-weight: 700;
	width: 290px;
	height: 60px;
	font-size: 18px;
}
a.btn_01.btn_01_w {
	width: 363px;
}
a.btn_01.btn_01_s {
	width: 242px;
	height: 38px;
	font-size: 16px;
}
a.btn_01.btn_01_f {
	width: 256px;
	height: 53px;
	font-size: 16px;
}
a.btn_01::after,
.submitbtnWrap::after {
	position: absolute;
	content: "";
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	transition: all .3s;
	display: block;
	background: #fff;
	height: 1px;
	width: 38px;
	z-index: 3;
}
a.btn_01::before,
.submitbtnWrap::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	transition: all .3s;
	display: block;
	height: 100%;
	width: 110%;
	z-index: 1;
	transform: translateX(-100%);
	clip-path: polygon(0 0, 100% 0%, 95% 100%, 0% 100%);
}
a.btn_01.bg_red::before,
.submitbtnWrap::before {
	background: #000;
}
a.btn_01.bg_black::before {
	background: var(--red);
}
a.btn_01 span,
.submitbtnWrap button {
	padding-left: 31px;
	padding-bottom: 0.1em;
	position: relative;
	z-index: 2;
}
a.btn_01.btn_01_m span,
a.btn_01.btn_01_f span {
	padding-left: 28px;
}
a.btn_01.taC,
.submitbtnWrap {
	margin: 0 auto;
}
.submitbtnWrap {
	background: var(--red);
}
.submitbtnWrap button {
	width: 100%;
	height: 100%;
}
@media screen and (min-width: 1025px) {
	a.btn_01:hover::after,
	.submitbtnWrap:hover::after {
		width: 0;
	}
	a.btn_01:hover::before,
	.submitbtnWrap:hover::before {
		transform: translateX(0);
	}
	a.btn_01:hover,
	.submitbtnWrap:hover {
	}
}
@media screen and (max-width: 1300px) {
	a.btn_01,
	.submitbtnWrap {
		width: 22.308vw;
		height: 4.615vw;
		font-size: 1.385vw;
	}
	a.btn_01.btn_01_w {
		width: 27.923vw;
	}
	a.btn_01.btn_01_s {
		width: 18.615vw;
		height: 2.923vw;
		font-size: 1.231vw;
	}
	a.btn_01.btn_01_f {
		width: 19.692vw;
		height: 4.077vw;
		font-size: 1.231vw;
	}
	a.btn_01::after,
	.submitbtnWrap::after {
		width: 2.923vw;
		z-index: 3;
	}
	a.btn_01 span,
	.submitbtnWrap button {
		padding-left: 2.385vw;
	}
	a.btn_01.btn_01_m span,
	a.btn_01.btn_01_f span {
		padding-left: 2.154vw;
	}
}
@media screen and (max-width: 1024px) {
	a.btn_01,
	.submitbtnWrap {
		width: 28.32vw;
		height: 5.859vw;
		font-size: 1.758vw;
	}
	a.btn_01.btn_01_w {
		width: 35.449vw;
	}
	a.btn_01.btn_01_s {
		width: 23.633vw;
		height: 3.711vw;
		font-size: 1.563vw;
	}
	a.btn_01.btn_01_f {
		width: 25vw;
		height: 5.176vw;
		font-size: 1.563vw;
	}
	a.btn_01::after,
	.submitbtnWrap::after {
		width: 3.711vw;
	}
	a.btn_01 span,
	.submitbtnWrap button {
		padding-left: 3.027vw;
		padding-bottom: 0.1em;
	}
	a.btn_01.btn_01_m span,
	a.btn_01.btn_01_f span {
		padding-left: 2.734vw;
	}
}
@media screen and (max-width: 540px) {
	a.btn_01,
	.submitbtnWrap {
		width: 52.267vw;
		height: 10.667vw;
		font-size: 3.2vw;
	}
	a.btn_01.btn_01_w {
		width: 60vw;
	}
	a.btn_01.btn_01_s {
		width: 52.267vw;
		height: 10.667vw;
		font-size: 3.2vw;
	}
	a.btn_01.btn_01_f {
		width: 52.267vw;
		height: 10.667vw;
		font-size: 3.2vw;
	}
	a.btn_01::after,
	.submitbtnWrap::after {
		width: 6.8vw;
	}
	a.btn_01 span,
	.submitbtnWrap button {
		padding-left: 5.6vw;
	}
	a.btn_01.btn_01_m span,
	a.btn_01.btn_01_f span {
		padding-left: 5.6vw;
	}
	a.btn_01.sp-taC {
		margin: 0 auto;
	}
}


/* !flex -------------------------------------------------------------- */
.flex,
.flex_pc,
.flex_all,
.flex_pcpro {
	display: flex;
	justify-content: space-between;
}
.aic {
	align-items: center;
}
.ais {
	align-items: start;
}
.aie {
	align-items: flex-end;
}
.flwWrap {
	flex-wrap: wrap;
}
.jcs {
	justify-content: start;
}
.jcc {
	justify-content: center;
}
.jcr {
	justify-content: flex-end;
}
.jc-se {
	justify-content: space-evenly;
}
.fd-rr {
	flex-direction: row-reverse;
}
.fd-column {
	flex-direction: column;
}
.flex-sh0 {
	flex-shrink: 0;
}
.order-1 {
	order: 1;
}
.order-2 {
	order: 2;
}
.flex-w51 {
	width: 50.1%;
}
.flex-w50 {
	width: 50%;
}
.flex-w45 {
	width: 45%;
}
@media screen and (max-width: 1024px) {
	.flex_pc {
		display: block;
	}
}
@media screen and (max-width: 820px) {
	.flex_pcpro {
		display: block;
	}
}
@media screen and (max-width: 540px) {
	.flex {
		display: block;
	}
	.flex-w50,
	.flex-w45 {
		width: 100%;
	}
	.interview_detail .flex-w51 {
		width: 70%;
		margin-left: auto;
		margin-right: auto;
	}
}


.fl_r {
	float: right;
}
.fl_l {
	float: left;
}


/* !行間設定 -------------------------------------------------------------- */
.pd0	{ padding: 0; }
.pd03	{ padding: 0.3em 0; }
.pd04	{ padding: 0.4em 0; }
.pd05	{ padding: 0.5em 0; }
.pd07	{ padding: 0.7em 0; }
.pd08	{ padding: 0.8em 0; }
.pd1	{ padding: 1em 0; }
.pd15	{ padding: 1.5em 0; }
.pd2	{ padding: 2em 0; }
.pd25	{ padding: 2.5em 0; }
.pd3	{ padding: 3em 0; }
.pd35	{ padding: 3.5em 0; }
.pd4	{ padding: 4em 0; }
.pd45	{ padding: 4.5em 0; }
.pd5	{ padding: 5em 0; }
.pd6	{ padding: 6em 0; }
.pd7	{ padding: 7em 0; }
.pd8	{ padding: 8em 0; }
.mg05	{ margin: 0.5em auto; }
.mg1	{ margin: 1em auto; }
.mg15	{ margin: 1.5em auto; }
.mg2	{ margin: 2em auto; }
.mg25	{ margin: 2.5em auto; }
.mg3	{ margin: 3em auto; }
.mg4	{ margin: 4em auto; }
.mg5	{ margin: 5em auto; }
.mt03	{ margin-top: 0.3em;}
.mt05	{ margin-top: 0.5em;}
.mt1	{ margin-top: 1em;}
.mt15	{ margin-top: 1.5em;}
.mt18	{ margin-top: 1.8em;}
.mt2	{ margin-top: 2em;}
.mt25	{ margin-top: 2.5em;}
.mt3	{ margin-top: 3em;}
.mt35	{ margin-top: 3.5em;}
.mt4	{ margin-top: 4em;}
.mt45	{ margin-top: 4.5em;}
.mt5	{ margin-top: 5em;}
.mt6	{ margin-top: 6em;}
.mt7	{ margin-top: 7em;}
.mt8	{ margin-top: 8em;}
.mt9	{ margin-top: 9em;}
.mr05	{ margin-right: 0.5em;}
.mr1	{ margin-right: 1em;}
.mr15	{ margin-right: 1.5em;}
.mr2	{ margin-right: 2em;}
.mr25	{ margin-right: 2.5em;}
.mr3	{ margin-right: 3em;}
.mr4	{ margin-right: 4em;}
.mr5	{ margin-right: 5em;}
.ml05	{ margin-left: 0.5em;}
.ml1	{ margin-left: 1em;}
.ml15	{ margin-left: 1.5em;}
.ml2	{ margin-left: 2em;}
.ml25	{ margin-left: 2.5em;}
.ml3	{ margin-left: 3em;}
.ml4	{ margin-left: 4em;}
.ml5	{ margin-left: 5em;}
.mb05	{ margin-bottom: 0.5em;}
.mb1	{ margin-bottom: 1em;}
.mb15	{ margin-bottom: 1.5em;}
.mb2	{ margin-bottom: 2em;}
.mb25	{ margin-bottom: 2.5em;}
.mb3	{ margin-bottom: 3em;}
.mb35	{ margin-bottom: 3.5em;}
.mb4	{ margin-bottom: 4em;}
.mb45	{ margin-bottom: 4.5em;}
.mb5	{ margin-bottom: 5em;}
.mb6	{ margin-bottom: 6em;}
.pt05	{ padding-top: 0.5em;}
.pt1	{ padding-top: 1em;}
.pt15	{ padding-top: 1.5em;}
.pt2	{ padding-top: 2em;}
.pt25	{ padding-top: 2.5em;}
.pt3	{ padding-top: 3em;}
.pt35	{ padding-top: 3.5em;}
.pt4	{ padding-top: 4em;}
.pt45	{ padding-top: 4.5em;}
.pt5	{ padding-top: 5em;}
.pt6	{ padding-top: 6em;}
.pt7	{ padding-top: 7em;}
.pt8	{ padding-top: 8em;}
.pt10	{ padding-top: 10em;}
.pr05	{ padding-right: 0.5em;}
.pr1	{ padding-right: 1em;}
.pr15	{ padding-right: 1.5em;}
.pr2	{ padding-right: 2em;}
.pr25	{ padding-right: 2.5em;}
.pr3	{ padding-right: 3em;}
.pr35	{ padding-right: 3.5em;}
.pr4	{ padding-right: 4em;}
.pr5	{ padding-right: 5em;}
.pl05	{ padding-left: 0.5em;}
.pl08	{ padding-left: 0.8em;}
.pl1	{ padding-left: 1em;}
.pl15	{ padding-left: 1.5em;}
.pl2	{ padding-left: 2em;}
.pl25	{ padding-left: 2.5em;}
.pl3	{ padding-left: 3em;}
.pl35	{ padding-left: 3.5em;}
.pl4	{ padding-left: 4em;}
.pl5	{ padding-left: 5em;}
.pb05	{ padding-bottom: 0.5em;}
.pb1	{ padding-bottom: 1em;}
.pb15	{ padding-bottom: 1.5em;}
.pb2	{ padding-bottom: 2em;}
.pb25	{ padding-bottom: 2.5em;}
.pb3	{ padding-bottom: 3em;}
.pb35	{ padding-bottom: 3.5em;}
.pb4	{ padding-bottom: 4em;}
.pb45	{ padding-bottom: 4.5em;}
.pb5	{ padding-bottom: 5em;}
.pb6	{ padding-bottom: 6em;}
.pb7	{ padding-bottom: 7em;}
.pb8	{ padding-bottom: 8em;}
.pb9	{ padding-bottom: 9em;}
.pb10	{ padding-bottom: 10em;}
.pb-f	{ padding-bottom: 15em;}
@media screen and (max-width: 1024px) {
.pd08	{ padding: 1.2vw 0; }
.pd1	{ padding: 1.5vw 0; }
.pd15	{ padding: 2.25vw 0; }
.pd2	{ padding: 3vw 0; }
.pd25	{ padding: 3.75vw 0; }
.pd3	{ padding: 4.5vw 0; }
.pd35	{ padding: 5.25vw 0; }
.pd4	{ padding: 6vw 0; }
.pd45	{ padding: 6.75vw 0; }
.pd5	{ padding: 7.5vw 0; }
.pd6	{ padding: 9vw 0; }
.pd7	{ padding: 10.5vw 0; }
.pd8	{ padding: 12vw 0; }
.mg1	{ margin: 1.5vw auto; }
.mg15	{ margin: 2.25vw auto; }
.mg2	{ margin: 3vw auto; }
.mg25	{ margin: 3.75vw auto; }
.mg3	{ margin: 4.5vw auto; }
.mg4	{ margin: 6vw auto; }
.mg5	{ margin: 7.5vw auto; }
.mt05	{ margin-top: 0.75vw;}
.mt1	{ margin-top: 1.5vw;}
.mt15	{ margin-top: 2.25vw;}
.mt2	{ margin-top: 3vw;}
.mt25	{ margin-top: 3.75vw;}
.mt3	{ margin-top: 4.5vw;}
.mt35	{ margin-top: 5.25vw;}
.mt4	{ margin-top: 6vw;}
.mt45	{ margin-top: 6.75vw;}
.strengthBox .mt45	{ margin-top: 3vw;}
.mt5	{ margin-top: 7.5vw;}
.mt6	{ margin-top: 9vw;}
.mt7	{ margin-top: 10.5vw;}
.mt8	{ margin-top: 12vw;}
.mt9	{ margin-top: 13.5vw;}
.mr1	{ margin-right: 1.5vw;}
.mr15	{ margin-right: 2.25vw;}
.mr2	{ margin-right: 3vw;}
.mr25	{ margin-right: 3.75vw;}
.mr3	{ margin-right: 4.5vw;}
.mr4	{ margin-right: 6vw;}
.mr5	{ margin-right: 7.5vw;}
.ml1	{ margin-left: 1.5vw;}
.ml15	{ margin-left: 2.25vw;}
.ml2	{ margin-left: 3vw;}
.ml25	{ margin-left: 3.75vw;}
.ml3	{ margin-left: 4.5vw;}
.ml4	{ margin-left: 6vw;}
.ml5	{ margin-left: 7.5vw;}
.mb1	{ margin-bottom: 1.5vw;}
.mb15	{ margin-bottom: 2.25vw;}
.mb2	{ margin-bottom: 3vw;}
.mb25	{ margin-bottom: 3.75vw;}
.mb3	{ margin-bottom: 4.5vw;}
.mb35	{ margin-bottom: 5.25vw;}
.mb4	{ margin-bottom: 6vw;}
.mb45	{ margin-bottom: 6.75vw;}
.mb5	{ margin-bottom: 7.5vw;}
.mb6	{ margin-bottom: 9vw;}
.pt1	{ padding-top: 1.5vw;}
.pt15	{ padding-top: 2.25vw;}
.pt2	{ padding-top: 3vw;}
.pt25	{ padding-top: 3.75vw;}
.pt3	{ padding-top: 4.5vw;}
.pt35	{ padding-top: 5.25vw;}
.pt4	{ padding-top: 6vw;}
.pt45	{ padding-top: 6.75vw;}
.pt5	{ padding-top: 7.5vw;}
.pt6	{ padding-top: 9vw;}
.pt7	{ padding-top: 10.5vw;}
.pt8	{ padding-top: 12vw;}
.pt10	{ padding-top: 15vw;}
.pr1	{ padding-right: 1.5vw;}
.pr15	{ padding-right: 2.25vw;}
.pr2	{ padding-right: 3vw;}
.pr25	{ padding-right: 3.75vw;}
.pr3	{ padding-right: 4.5vw;}
.pr35	{ padding-right: 5.25vw;}
.pr4	{ padding-right: 6vw;}
.pr5	{ padding-right: 7.5vw;}
.pl1	{ padding-left: 1.5vw;}
.pl15	{ padding-left: 2.25vw;}
.pl2	{ padding-left: 3vw;}
.pl25	{ padding-left: 3.75vw;}
.pl3	{ padding-left: 4.5vw;}
.pl35	{ padding-left: 5.25vw;}
.pl4	{ padding-left: 6vw;}
.pl5	{ padding-left: 7.5vw;}
.pb1	{ padding-bottom: 1.5vw;}
.pb15	{ padding-bottom: 2.25vw;}
.pb2	{ padding-bottom: 3vw;}
.pb25	{ padding-bottom: 3.75vw;}
.pb3	{ padding-bottom: 4.5vw;}
.pb35	{ padding-bottom: 5.25vw;}
.pb4	{ padding-bottom: 6vw;}
.pb45	{ padding-bottom: 6.75vw;}
.pb5	{ padding-bottom: 7.5vw;}
.pb6	{ padding-bottom: 9vw;}
.pb7	{ padding-bottom: 10.5vw;}
.pb8	{ padding-bottom: 12vw;}
.pb9	{ padding-bottom: 13.5vw;}
.pb10	{ padding-bottom: 15vw;}
.pb-f	{ padding-bottom: 20vw;}
.tab-mt { margin-top: 5.5vw; }
.tab-pd { padding: 3vw 0; }
}
@media screen and (max-width: 540px) {
.pd08	{ padding: 2vw 0; }
.pd1	{ padding: 2vw 0; }
.pd15	{ padding: 3vw 0; }
.pd2	{ padding: 4vw 0; }
.pd25	{ padding: 5vw 0; }
.pd3	{ padding: 6vw 0; }
.pd35	{ padding: 7vw 0; }
.pd4	{ padding: 8vw 0; }
.pd45	{ padding: 9vw 0; }
.pd5	{ padding: 10vw 0; }
.pd6	{ padding: 12vw 0; }
.pd7	{ padding: 14vw 0; }
.pd8	{ padding: 16vw 0; }
.mg1	{ margin: 2vw auto; }
.mg15	{ margin: 3vw auto; }
.mg2	{ margin: 4vw auto; }
.mg25	{ margin: 5vw auto; }
.mg3	{ margin: 6vw auto; }
.mg4	{ margin: 8vw auto; }
.mg5	{ margin: 10vw auto; }
.mt1	{ margin-top: 2vw;}
.mt15	{ margin-top: 3vw;}
.mt2	{ margin-top: 4vw;}
.mt25	{ margin-top: 5vw;}
.mt3	{ margin-top: 6vw;}
.mt35	{ margin-top: 7vw;}
.mt4	{ margin-top: 8vw;}
.mt45	{ margin-top: 9vw;}
.strengthBox .mt45	{ margin-top: 5vw;}
.mt5	{ margin-top: 10vw;}
.mt6	{ margin-top: 12vw;}
.mt7	{ margin-top: 14vw;}
.strength .mt7	{ margin-top: 9vw;}
.privacy-policy .mt7	{ margin-top: 10vw;}
.mt8	{ margin-top: 16vw;}
.strength .mt8	{ margin-top: 9vw;}
.company .mt8	{ margin-top: 9vw;}
.mt9	{ margin-top: 18vw;}
.privacy-policy .mt9	{ margin-top: 12vw;}
.mr1	{ margin-right: 2vw;}
.mr15	{ margin-right: 3vw;}
.mr2	{ margin-right: 4vw;}
.mr25	{ margin-right: 5vw;}
.mr3	{ margin-right: 6vw;}
.mr4	{ margin-right: 8vw;}
.mr5	{ margin-right: 10vw;}
.ml1	{ margin-left: 2vw;}
.ml15	{ margin-left: 3vw;}
.ml2	{ margin-left: 4vw;}
.ml25	{ margin-left: 5vw;}
.ml3	{ margin-left: 6vw;}
.ml4	{ margin-left: 8vw;}
.ml5	{ margin-left: 10vw;}
.mb1	{ margin-bottom: 2vw;}
.mb15	{ margin-bottom: 3vw;}
.mb2	{ margin-bottom: 4vw;}
.mb25	{ margin-bottom: 5vw;}
.mb3	{ margin-bottom: 6vw;}
.mb35	{ margin-bottom: 7vw;}
.mb4	{ margin-bottom: 8vw;}
.mb45	{ margin-bottom: 9vw;}
.mb5	{ margin-bottom: 10vw;}
.mb6	{ margin-bottom: 12vw;}
.pt1	{ padding-top: 2vw;}
.pt15	{ padding-top: 3vw;}
.pt2	{ padding-top: 4vw;}
.pt25	{ padding-top: 5vw;}
.pt3	{ padding-top: 6vw;}
.pt35	{ padding-top: 7vw;}
.pt4	{ padding-top: 8vw;}
.infographics .pt4	{ padding-top: 5vw;}
.pt45	{ padding-top: 9vw;}
.pt5	{ padding-top: 10vw;}
#footer .pt5	{ padding-top: 5vw;}
.pt6	{ padding-top: 12vw;}
.pt6.guideline	{ padding-top: 9vw;}
.pt6.entry	{ padding-top: 9vw;}
.pt7	{ padding-top: 14vw;}
.pt7.triangle-bottom	{ padding-top: 5vw;}
.pt7.features-container	{ padding-top: 6vw;}
.pt7.shape-red	{ padding-top: 4.7vw;}
.single-interview .pt7	{ padding-top: 8vw;}
.pt8	{ padding-top: 16vw;}
.pt8.bg_about	{ padding-top: 7vw;}
.pt10	{ padding-top: 20vw;}
.pr1	{ padding-right: 2vw;}
.pr15	{ padding-right: 3vw;}
.pr2	{ padding-right: 4vw;}
.pr25	{ padding-right: 5vw;}
.pr3	{ padding-right: 6vw;}
.pr35	{ padding-right: 7vw;}
.pr4	{ padding-right: 8vw;}
.pr5	{ padding-right: 10vw;}
.pl1	{ padding-left: 2vw;}
.pl15	{ padding-left: 3vw;}
.pl2	{ padding-left: 4vw;}
.pl25	{ padding-left: 5vw;}
.pl3	{ padding-left: 6vw;}
.pl35	{ padding-left: 7vw;}
.pl4	{ padding-left: 8vw;}
.pl5	{ padding-left: 10vw;}
.pb1	{ padding-bottom: 2vw;}
.pb15	{ padding-bottom: 3vw;}
.pb2	{ padding-bottom: 4vw;}
.pb25	{ padding-bottom: 5vw;}
.pb3	{ padding-bottom: 6vw;}
.pb35	{ padding-bottom: 7vw;}
.pb4	{ padding-bottom: 8vw;}
#footer .pb4	{ padding-bottom: 4vw;}
.pb45	{ padding-bottom: 9vw;}
.pb5	{ padding-bottom: 10vw;}
.pb5.triangle-bottom	{ padding-bottom: 5vw;}
.pb5.strength	{ padding-bottom: 6vw;}
.pb6	{ padding-bottom: 12vw;}
.pb6.infographics	{ padding-bottom: 9vw;}
.pb7	{ padding-bottom: 14vw;}
.pb8	{ padding-bottom: 16vw;}
.pb8.bg_about	{ padding-bottom: 7vw;}
.pb8.features-container	{ padding-bottom: 9vw;}
.pb8.guideline	{ padding-bottom: 12vw;}
.pb9	{ padding-bottom: 18vw;}
.company .pb9	{ padding-bottom: 12vw;}
.privacy-policy .pb9	{ padding-bottom: 12vw;}
.pb10	{ padding-bottom: 20vw;}
.pb-f	{ padding-bottom: 25vw;}
.sp-mt { margin-top: 3vw; }
.sp-mt2 { margin-top: 6vw; }
.sp-mt3 { margin-top: 9vw; }
.sp-mt4 { margin-top: 12vw; }
.sp-mt5 { margin-top: 25vw; }
.sp-pt { padding-top: 18vw; }
.sp-pb { padding-bottom: 6vw; }
.sp-pb2 { padding-bottom: 9vw; }
.tab-mt { margin-top: 17vw; }
.tab-pd { padding: 10vw 0; }
}


/* !fv -------------------------------------------------------------- */
.h2-title {
	position: relative;
	width: 100%;
	max-width: 1920px;
	margin-left: auto;
	margin-right: auto;
	height: 280px;
}
.h2-title::before {
	position: absolute;
	left: 0;
	top: 0;
	clip-path: polygon(0 0, 100% 0%, 73.1% 100%, 0% 100%);
	background: var(--red);
	display: block;
	content: "";
	height: 100%;
	width: 357px;
}
.h2-title-inner {
	height: 100%;
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	letter-spacing: 0.05em;
	padding-left: 21.4%;
}
@media screen and (min-width: 1921px) {
	.h2-title::after {
		position: absolute;
		left: 0;
		top: 0;
		background: var(--red);
		display: block;
		content: "";
		height: 100%;
		width: 322px;
		width: calc(calc(100vw - 1900px) /2);
		transform: translateX(-99%);
	}
}
@media screen and (max-width: 1800px) {
	.h2-title::before {
		left: calc(calc(calc(calc(100vw - 1800px) /2) /2) *0.8);
	}
}
@media screen and (max-width: 1300px) {
	.h2-title {
		height: 21.538vw;
	}
	.h2-title::before {
		width: 27.462vw;
	}
}
@media screen and (max-width: 1024px) {
	.h2-title {
		height: 20.222vw;
	}
	.h2-title::before {
		left: 0;
		clip-path: polygon(0 0, 100% 0%, 45.7% 100%, 0% 100%);
		width: 12.889vw;
	}
	.h2-title-inner {
		padding-left: 13.889vw;
	}
}
@media screen and (max-width: 540px) {
	.h2-title {
		height: 24.267vw;
	}
	.h2-title::before {
		left: 0;
		clip-path: polygon(0 0, 100% 0%, 45.7% 100%, 0% 100%);
		width: 15.467vw;
	}
	.h2-title-inner {
		padding-left: 16.6vw;
	}
	.h2-title-inner .fz80,
	.h2-title2 .fz80 {
		font-size: 9.8vw;
	}
	.h2-title-inner .fz20,
	.h2-title2 .fz20 {
		font-size: 3.2vw;
	}
}

#mv {
	width: 100%;
	position: relative;
	margin-left: auto;
	margin-right: auto;
	height: 983px;
	height: calc(100vh - 97px);
	max-height: 983px;
	min-height: 960px;
}
.mv_slideWrap {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.mv_slideWrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/*.mv_imgTxt {
	position: absolute;
	left: 72.7%;
	top: 3.5%;
}
.mv_imgTxt p {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	color: #fff;
	text-align: center;
	border-radius: 50%;
	width: 160px;
	height: 160px;
	line-height: 1.5;
	border: 1px solid #fff;
}
.mv_imgTxt p + p {
	margin-left: 5px;
}*//*中途用*/
.mv_imgTxt {
	position: absolute;
	top: 6.8%;
	right: 0;
	width: 100%;
	height: 10.7%;
}
.mv_imgTxt::after {
}
.mv_imgTxt p {
	padding: 0;
	font-size: 2.75em;
	color: #fff;
	font-weight: 700;
	width: 30.1%;
	margin: 0 0 0 auto;
	height: 100%;
	display: flex;
	align-items: center;
	padding-left: 1.5em;
	position: relative;
	padding-bottom: 0.1em;
}
.mv_imgTxt p::after {
	position: absolute;
	content: "";
	display: block;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	clip-path: polygon(0.795em 0%, 100% 0%, 100% 100%, 0% 100%);
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
.mv_imgTxt p::before {
	position: absolute;
	content: "";
	display: block;
	background: #fff;
	width: 0.795em;
	height: 100%;
	clip-path: polygon(97.5% 0%, 100% 0%, 2.5% 100%, 0% 100%);
	left: 0;
	top: 0;
}/*新卒用*/
.mv_txt {
	position: absolute;
	left: 51.66%;
	bottom: 40%;
	z-index: 2;
	font-style: italic;
}
.mv_txt1 {
	color: #fff;
	padding: 0;
	letter-spacing: 0.1em;
	padding: .1em 1em .2em;
	clip-path: polygon(1.9% 0, 100% 0%, 98.1% 100%, 0% 100%);
	margin-bottom: .7em;
	line-height: 1.55;
}
.mv_txt2 {
	color: #fff;
	padding: 0.5em 0;
	letter-spacing: 0.18em;
	line-height: 1.25;
}
.mv_txt3 {
	padding: 0;
	letter-spacing: 0.18em;
	line-height: 1.16;
}
.mv_point {
	position: absolute;
	left: 51.66%;
	bottom: 4.1%;
}
.mv_pointInner {
	text-align: center;
	width: 282px;
	padding: 10px 10px 14px;
	position: relative;
}
.mv_pointInner + .mv_pointInner {
	margin-left: 20px;
}
.border-left {
	border-left: 7px solid var(--red);
	padding: 0 0 0 13px;
	color: #fff;
}
.mv_pointInner_title {
	padding: 0.2em 0 .5em; /*中途用*/
	padding: 0.5em 0 .3em; /*新卒用*/
}
.mv_pointInner_border {
	border-top: 2px solid var(--red);
}
.mv_pointInner_num {
	position: absolute;
	left: 0;
	top: -39px;
	line-height: 1;
}
.nls {
	letter-spacing: -0.04em;
	margin-right: 0.05em;
}
.nls2 {
	letter-spacing: -0.1em;
}
.nls3 {
	letter-spacing: -0.15em;
}
.pc-mt08 {
	margin-top: 0.8em;
}

#mv {
	overflow: hidden;
}
.mv_imgTxt,
.mv_txt {
	overflow: hidden;
	transform: translateX(15%);
	opacity: 0;
	clip-path: inset(0 0 0 100%);
}
.mv_point {
	overflow: hidden;
	transform: translateY(20%);
	opacity: 0;
}
#mv.open .mv_imgTxt,
#mv.open .mv_txt,
#mv.openac .mv_imgTxt,
#mv.openac .mv_txt {
	opacity: 1;
	transform: translateX(0);
	transition: all 0.75s ease 1.8s;
	clip-path: inset(0);
}
#mv.open .mv_point,
#mv.openac .mv_point {
	opacity: 1;
	transform: translateY(0);
	transition: all 0.75s ease 1.8s;
}
@media screen and (max-width: 1920px) {
#mv { font-size: 16px; }
#mv .fz84 { font-size: 84px; }
#mv .fz75 { font-size: 75px; }
#mv .fz74 { font-size: 74px; }
#mv .fz73 { font-size: 73px; }
#mv .fz65 { font-size: 65px; }
#mv .fz64 { font-size: 64px; }
#mv .fz52 { font-size: 52px; }
#mv .fz42 { font-size: 42px; }
#mv .fz41 { font-size: 40px; }
#mv .fz39 { font-size: 39px; }
#mv .fz31 { font-size: 31px; }
#mv .fz30 { font-size: 30px; }
#mv .fz26 { font-size: 26px; }
#mv .fz26-2 { font-size: 26px; }
#mv .fz24 { font-size: 24px; }
#mv .fz22 { font-size: 22px; }
#mv .fz21 { font-size: 21px; }
#mv .fz19 { font-size: 19px; }
#mv .fz12 { font-size: 12px; }
#mv { font-size: 0.833vw; }
#mv .fz84 { font-size: 4.375vw; }
#mv .fz75 { font-size: 3.906vw; }
#mv .fz74 { font-size: 3.854vw; }
#mv .fz73 { font-size: 3.802vw; }
#mv .fz65 { font-size: 3.385vw; }
#mv .fz64 { font-size: 3.333vw; }
#mv .fz52 { font-size: 2.708vw; }
#mv .fz42 { font-size: 2.188vw; }
#mv .fz41 { font-size: 2.083vw; }
#mv .fz39 { font-size: 2.031vw; }
#mv .fz31 { font-size: 1.615vw; }
#mv .fz30 { font-size: 1.563vw; }
#mv .fz26 { font-size: 1.354vw; }
#mv .fz26-2 { font-size: 1.354vw; }
#mv .fz24 { font-size: 1.25vw; }
#mv .fz22 { font-size: 1.146vw; }
#mv .fz21 { font-size: 1.094vw; }
#mv .fz19 { font-size: 0.99vw; }
#mv .fz12 { font-size: 0.625vw; }
	#mv {
		height: 51.198vw;
		height: calc(100vh - 5.052vw);
		max-height: 51.198vw;
		min-height: 50vw;
	}
	/*.mv_imgTxt p {
		width: 8.333vw;
		height: 8.333vw;
	}
	.mv_imgTxt p + p {
		margin-left: 0.26vw;
	}*//*中途用*/
	.mv_pointInner {
		width: 14.688vw;
		padding: 0.521vw 0.521vw 0.729vw;
	}
	.mv_pointInner + .mv_pointInner {
		margin-left: 1.042vw;
	}
	.border-left {
		border-left-width: 0.365vw;
		padding: 0 0 0 0.677vw;
	}
	.mv_pointInner_num {
		top: -2.031vw;
	}
}
@media screen and (max-width: 1300px) {
}
@media screen and (max-width: 1024px) { /*1500*/
#mv { font-size: 1.333vw; }

#mv .fz84 { font-size: 5.25vw; }
#mv .fz75 { font-size: 4.688vw; }
#mv .fz74 { font-size: 4.4vw; }
#mv .fz73 { font-size: 4.563vw; }
#mv .fz65 { font-size: 4.063vw; }
#mv .fz64 { font-size: 4vw; }
#mv .fz52 { font-size: 3.25vw; }
#mv .fz42 { font-size: 2.625vw; }
#mv .fz41 { font-size: 2.5vw; }
#mv .fz39 { font-size: 2.35vw; }
#mv .fz31 { font-size: 1.938vw; }
#mv .fz30 { font-size: 1.875vw; }
#mv .fz26 { font-size: 1.625vw; }
#mv .fz26-2 { font-size: 1.625vw; }
#mv .fz24 { font-size: 1.5vw; }
#mv .fz22 { font-size: 1.375vw; }
#mv .fz21 { font-size: 1.313vw; }
#mv .fz19 { font-size: 1.188vw; }
#mv .fz12 { font-size: 0.75vw; }

#mv .fz65 { font-size: 5vw; }
#mv .fz52 { font-size: 4vw; }
#mv .fz31 { font-size: 2.8vw; }
#mv .fz30 { font-size: 2.5vw; }
#mv .fz26 { font-size: 2.167vw; }
#mv .fz26-2 { font-size: 1.95vw; }
#mv .fz24 { font-size: 2.167vw; }
#mv .fz22 { font-size: 1.833vw; }
#mv .fz21 { font-size: 2vw; }
#mv .fz19 { font-size: 2vw; }
#mv .fz12 { font-size: 1.3vw; }
	#mv {
		height: inherit;
		position: inherit;
		max-height: inherit;
	}
	.mv_imgWrap {
		position: relative;
		height: 48vw;
	}
	/*.mv_imgTxt {
		left: 50%;
		top: inherit;
		bottom: 2vw;
	}
	.mv_imgTxt p {
		width: 14.167vw;
		height: 14.167vw;
		background: var(--red);
		color: #fff;
		border: none;
	}
	.mv_imgTxt p + p {
		margin-left: 1.73vw;
	}
	.mv_txt {
		left: inherit;
		right: 3%;
		display: inline-block;
		padding: 3vw 0 2vw;
		bottom: inherit;
		top: 5%;
	}*//*中途用*/
	.mv_txt {
		left: inherit;
		right: 3%;
		display: inline-block;
		padding: 3vw 0 2vw;
		bottom: inherit;
		top: 25%;
	}
	.mv_imgTxt {
		height: 14%;
	}
	.mv_imgTxt p {
		font-size: 2em;
		width: 40%;
	}/*新卒用*/
	.mv_txt2 {
		line-height: 1.3;
	}
	.mv_txt2 .fz84,
	.mv_txt2 .fz75,
	.mv_txt2 .fz73 {
		color: var(--red);
	}
	.mv_point {
		position: relative;
		left: 50%;
		transform: translateX(-50%);
		display: inline-block;
		padding: 4vw 0 4.4vw;
	}
	/*
	.mv_pointInner {
		width: 23.5vw;
		padding: 0.833vw 0.833vw 1.167vw;
	}
	.mv_pointInner + .mv_pointInner {
		margin-left: 1.667vw;
	}*/
	.border-left {
		border-left-width: 0.583vw;
		padding: 0 0 0 1.083vw;
		color: #000;
	}
	
	.mv_pointInner {
		width: 100%;
		padding: 1vw 3vw;
		min-height: 9.5vw;
		border: 1px solid var(--red);
		display: flex;
		align-items: center;
		text-align: left;
	}
	.mv_pointInner + .mv_pointInner {
		margin-left: 0;
		margin-top: 1.5vw;
	}
	.mv_pointInner_title {
		padding: 0;
		width: 22vw;
	}
	.mv_pointInner_border {
		border-top: none;
		border-left: 1px solid var(--red);
		padding-left: 2vw;
	}
	.mv_pointInner_num {
		position: inherit;
		top: auto;
		width: 9vw;
	}
	.mv_pointInner_num-01 {
		letter-spacing: 0.1em;
	}
	.mv_point .mt3 {
		margin-top: 4vw;
	}
	.mv_pointInner .mt05 {
		margin-top: 0;
	}
	.mv_point .mt3 {
		margin-top: 2.5vw;
	}
	.mv_point {
		transform: translate(-50%,10%);
	}
	#mv.open .mv_point,
	#mv.openac .mv_point {
		transform: translate(-50%,0);
	}
	.pc-mt08 {
		margin-top: 0;
	}
}
@media screen and (max-width: 540px) { /*947*/
#mv { font-size: 2.204vw; }
#mv .fz84 { font-size: 8.87vw; }
#mv .fz75 { font-size: 7.92vw; }
#mv .fz74 { font-size: 7.814vw; }
#mv .fz73 { font-size: 7.709vw; }
#mv .fz65 { font-size: 6.864vw; }
#mv .fz64 { font-size: 6.758vw; }
#mv .fz52 { font-size: 5.491vw; }
#mv .fz42 { font-size: 4.435vw; }
#mv .fz41 { font-size: 4.224vw; }
#mv .fz39 { font-size: 4.118vw; }
#mv .fz31 { font-size: 3.273vw; }
#mv .fz30 { font-size: 3.168vw; }
#mv .fz26 { font-size: 2.746vw; }
#mv .fz24 { font-size: 2.534vw; }
#mv .fz22 { font-size: 2.323vw; }
#mv .fz21 { font-size: 2.218vw; }
#mv .fz19 { font-size: 2.006vw; }
#mv .fz12 { font-size: 1.267vw; }

#mv .fz65 { font-size: 8.63vw; }
#mv .fz52 { font-size: 6.9vw; }
#mv .fz42 { font-size: 5.4vw; }
#mv .fz41 { font-size: 4.6vw; }
#mv .fz39 { font-size: 5.4vw; }
#mv .fz31 { font-size: 5vw; }
#mv .fz30 { font-size: 4.132vw; }
#mv .fz26 { font-size: 3.556vw; }
#mv .fz26-2 { font-size: 3.556vw; }
#mv .fz24 { font-size: 3.306vw; }
#mv .fz22 { font-size: 3.2vw; }
#mv .fz21 { font-size: 3.33vw; }
#mv .fz19 { font-size: 3.33vw; }
#mv .fz12 { font-size: 2.4vw; }
	.mv_imgWrap {
		height: 120vw;
	}
	/*.mv_imgTxt {
	}
	.mv_imgTxt p {
		width: 25.2vw;
		height: 25.2vw;
	}*//*中途用*/
	.mv_imgTxt {
		height: 8%;
		top: 4%;
	}
	.mv_imgTxt p {
		font-size: 2em;
		width: 65%;
	}/*新卒用*/
	/*.mv_txt {
		padding: 0 1vw 0 0;
		top: 25%;
	}*/
	.mv_txt {
		padding: 0 1vw 0 0;
		top: 15%;
	}/*新卒用*/
	.mv_txt2 {
		text-align: center;
		line-height: 1.5;
	}
	.mv_txt3 {
		text-align: center;
	}
	.mv_point {
		left: 5.4%;
		transform: none;
		width: 89.2%;
	}
	.mv_pointInner {
		padding: 1.8vw;
		min-height: 16.4vw;
	}
	.mv_pointInner + .mv_pointInner {
		margin-top: 2.3vw;
	}
	.border-left {
		border-left-width: 0.9vw;
	}
	.mv_pointInner_title {
		width: 32vw;
	}
	.mv_pointInner_title.ls004 {
		letter-spacing: 0;
	}
	.mv_pointInner_border {
		padding-left: 2.5vw;
	}
	.mv_pointInner_num {
		width: 13.2vw;
	}
	.mv_point .mt3 {
		margin-top: 4vw;
	}
	/*.mv_imgTxt {
		transform: translate(-35%,0);
	}
	#mv.open .mv_imgTxt,
	#mv.openac .mv_imgTxt {
		transform: translate(-50%,0);
	}*//*中途用*/
	.mv_imgTxt {
		transform: translate(15%,0);
	}
	#mv.open .mv_imgTxt,
	#mv.openac .mv_imgTxt {
		transform: translate(0,0);
	}/*新卒用*/
	.mv_point {
		transform: translateY(10%);
	}
	#mv.open .mv_point,
	#mv.openac .mv_point {
		transform: translateY(0);
	}
}

#mv.open .mv_imgTxt {
	transition-delay: 0.3s;
}
#mv.open .mv_txt {
	transition-delay: 0.8s;
}
#mv.open .mv_point {
	transition-delay: 1.3s;
}
@media screen and (max-width: 540px) {
	#mv.open .mv_imgTxt {
		transition-delay: 0.8s;
	}
	#mv.open .mv_txt {
		transition-delay: 0.3s;
	}
	#mv.open .mv_point {
		transition-delay: 1.3s;
	}
}


.bg_dot_red {
	background: #dc1e37 url(../images/bg_dot_red.png) top;
}
.bg_dot_black {
	background: #000 url(../images/bg_dot_black.png) top;
}
.bg_dot_gray {
	background: #f2f2f2 url(../images/bg_dot_gray.png) top;
}
.serifBox {
	position: relative;
	height: 280px;
}
.serif {
	padding: 1.4em 2.4em 1.5em;
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 130px;
}
.serif.serif-p1 {
	top: 0;
	left: 0;
}
.serif.serif-p2 {
	top: 36px;
	right: 80px;
}
.serif.serif-p3 {
	top: 113px;
	left: 22.45%;
}
.serif::after {
	content: "";
	display: block;
	position: absolute;
	background: #fff;
	clip-path: polygon(15% 0, 100% 0%, 0% 100%);
	bottom: -35px;
	width: 40px;
	height: 36px;
}
.serif.serif-p1::after {
	left: 41px;
}
.serif.serif-p2::after {
	right: 79px;
}
.serif.serif-p3::after {
	right: 36px;
	clip-path: polygon(0 0, 85% 0%, 100% 100%);
}
.triangle-bottom {
	position: relative;
}
.triangle-bottom::after {
	content: "";
	display: block;
	position: absolute;
	background: #fff;
	clip-path: polygon(0 0, 50% 99%, 100% 0, 100% 100%, 0 100%);
	width: 100%;
	height: 7.8125vw;
	bottom: -1px;
}
@media screen and (max-width: 1920px) {
}
@media screen and (max-width: 1300px) {
	.serifBox {
		height: 21.538vw;
	}
	.serif {
		min-height: 10vw;
	}
	.serif.serif-p2 {
		top: 2.769vw;
		right: 6.154vw;
	}
	.serif.serif-p3 {
		top: 8.692vw;
	}
}
@media screen and (max-width: 1024px) {
	.serifBox {
		height: 30.344vw;
	}
	.serif {
		min-height: 12.695vw;
	}
	.serif.serif-p2 {
		top: 3.516vw;
		right: 0;
	}
	.serif.serif-p3 {
		top: 14.035vw;
	}
	.serif::after {
		bottom: -3.418vw;
		width: 3.906vw;
		height: 3.516vw;
	}
	.serif.serif-p1::after {
		left: 4.004vw;
	}
	.serif.serif-p2::after {
		right: 7.715vw;
	}
	.serif.serif-p3::after {
		right: 3.516vw;
	}
}
@media screen and (max-width: 540px) {
	.serifBox {
		height: 47.1vw;
		margin-bottom: 1vw;
	}
	.serif {
		min-height: 17.333vw;
		padding: 1.4em 1.7em 1.5em;
	}
	.serif.serif-p1 {
		left: 7.6%;
	}
	.serif.serif-p2 {
		top: 15.2vw;
	}
	.serif.serif-p3 {
		top: inherit;
		left: 0;
		bottom: 0;
	}
	.serif::after {
		bottom: -4.667vw;
		width: 5.333vw;
		height: 4.8vw;
	}
	.serif.serif-p1::after {
		left: 5.467vw;
	}
	.serif.serif-p2::after {
		right: 10.533vw;
	}
	.serif.serif-p3::after {
		right: 4.8vw;
	}
	.serifBox .fz24 {
		font-size: 3.2vw;
	}
	.triangle-bottom::after {
		clip-path: polygon(0 0, 50% 95%, 100% 0, 100% 100%, 0 100%);
		height: 7.3vw;
	}
}

.border-bottom {
	border-bottom: 2px solid var(--red);
	padding-bottom: 1px;
}
.dli-arrow-down {
	display: inline-block;
	line-height: 1;
	position: relative;
	background: var(--red);
	border-radius: 50%;
	width: 49px;
	height: 49px;
	margin-top: 13px;
}
.dli-arrow-down::before {
	content: '';
	width: 13px;
	height: 13px;
	border: 3px solid #fff;
	border-top: 0;
	border-right: 0;
	transform: rotate(-45deg);
	transform-origin: bottom left;
	position: absolute;
	left: 50%;
	top: 42%;
	transition: all .2s;
}
.dli-arrow-down::after {
	content: '';
	background: #fff;
	display: block;
	position: absolute;
	left: 47%;
	top: 30.6%;
	width: 3px;
	height: 15px;
	transition: all .2s;
}
.dli-arrow-down:hover {
	background: #000;
}
.dli-arrow-down:hover::before {
	top: 52%;
}
.dli-arrow-down:hover::after {
	top: 40.6%;
}
.features {
	width: 29.1%;
}
.features_num {
	position: relative;
}
.features_num span {
	position: absolute;
	left: 0;
	top: -28px;
	line-height: 1;
}
@media screen and (max-width: 1300px) {
	.dli-arrow-down {
		width: 49px;
		height: 49px;
		margin-top: 13px;
	}
	.dli-arrow-down::before {
		width: 13px;
		height: 13px;
	}
	.dli-arrow-down::after {
		width: 3px;
		height: 15px;
	}
	.features_num span {
		top: -2.154vw;
	}
}
@media screen and (max-width: 1024px) {
	.features_num span {
		top: -2.734vw;
	}
}
@media screen and (max-width: 540px) {
	.features {
		width: 100%;
	}
	.features + .features {
		margin-top: 7vw;
	}
	.dli-arrow-down {
		width: 11.136vw;
		height: 11.136vw;
		margin-top: 2.955vw;
	}
	.dli-arrow-down::before {
		width: 2.955vw;
		height: 2.955vw;
		border: 2px solid #fff;
		border-top: 0;
		border-right: 0;
		top: 41%;
	}
	.dli-arrow-down::after {
		width: 2px;
		height: 3.409vw;
	}
	.features_num span {
		top: 0;
	}
	.img_01 {
		width: 100%;
		height: 21.33vw;
		object-fit: cover;
	}
}

.features_img {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 262px;
}
.illust_01_p1 {
	width: 328px;
	margin-top: 20px;
}
.illust_02_p1 {
	width: 345px;
	margin-top: 6px;
}
.illust_03_p1 {
	width: 242px;
	margin-left: 24px;
}
@media screen and (max-width: 1300px) {
	.features_img {
		height: 20.154vw;
	}
	.illust_01_p1 {
		width: 25.231vw;
		margin-top: 1.538vw;
	}
	.illust_02_p1 {
		width: 26.538vw;
		margin-top: 0.462vw;
	}
	.illust_03_p1 {
		width: 18.615vw;
		margin-left: 1.846vw;
	}
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 540px) {
	.features_img {
		height: auto;
	}
	.illust_01_p1 {
		width: 49.6vw;
		margin-top: 0vw;
		margin-left: 14vw;
		margin-bottom: 1.5vw;
	}
	.illust_02_p1 {
		width: 52vw;
		margin-top: 6vw;
		margin-bottom: 1vw;
	}
	.illust_03_p1 {
		width: 59.467vw;
		margin-left: 7vw;
	}
}

.border-white {
	border: 1px solid #fff;
}
.entryFlex a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 31.7%;
	color: #fff;
	height: 130px;
}
.entryFlex a:hover {
	color: #fff;
}
.entryFlex a.border-white:hover {
	color: var(--red);
	border-color: var(--red);
}
@media screen and (max-width: 1300px) {
	.entryFlex a {
		height: 10vw;
	}
}
@media screen and (max-width: 1024px) {
	.entryFlex a {
		height: 12.695vw;
	}
}
@media screen and (max-width: 540px) {
	.entryFlex a {
		height: 13.5vw;
	}
}

.border {
	border: 1px solid var(--red);
}
.border-2px {
	border: 2px solid var(--red);
}
.border-3px {
	border: 3px solid var(--red);
}
@media screen and (max-width: 540px) {
	.border-2px {
		border: 1px solid var(--red);
	}
	.border-3px {
		border: 2px solid var(--red);
	}
}
.br5 {
	border-radius: 5px;
}
.strengthBox {
	padding: 5.9% 5.9% 7.7% 7.1%;
}
.strength_icon {
	width: 164px;
}
.strength_icon + .strength_icon {
	margin-left: .75em;
}
.strength_txt {
	width: 56%;
}
.strength_img {
	width: 40.4%;
}
.strength_num {
	padding: 0 1.6em 0 0;
}
.strength_dl {
	padding-left: 5%;
}
.strength_dl dt {
	width: 22.3%;
	margin-top: 1.5em;
}
.strength_dl dt span {
	border-left: 4px solid var(--red);
	padding-left: .6em;
}
.strength_dl dd {
	width: 77.7%;
	margin-top: 1.5em;
	padding-top: 0.5em;
}
.ul_dot li {
	text-indent: -1em;
	padding-left: 1em;
}
.ul_dot li::before {
	content: "・";
}
.ul_list {
}
.ul_list li {
	display: inline-block;
	margin-right: 1.8em;
}
.ul_list li::before {
	content: "■";
	color: var(--red);
}
.illust_01_p2 {
	width: 314px;
}
.illust_02_p2 {
	width: 340px;
}
.illust_03_p2 {
	width: 322px;
}
.ul_list_wrap {
	display: flex;
	flex-wrap: wrap;
}
.ul_list_wrap dt {
	width: 14%;
	padding-left: 5%;
}
.ul_list_wrap dd {
	width: 86%;
}
@media screen and (max-width: 1300px) {
	.illust_01_p2 {
		width: 24.154vw;
	}
	.illust_02_p2 {
		width: 26.154vw;
	}
	.illust_03_p2 {
		width: 24.769vw;
	}
	.strength_icon {
	}
}
@media screen and (max-width: 1024px) {
	.strength_txt {
		width: 100%;
	}
	.strength_img {
		width: 100%;
	}
	.strength_txt {
		margin-top: 3vw;
	}
	.strength_dl {
		padding-left: 4%;
	}
	.strength_dl dt {
		width: 100%;
		margin-top: 2vw;
	}
	.strength_dl dd + dt {
		margin-top: 3vw;
	}
	.strength_dl dd {
		width: 100%;
		margin-top: 0;
		padding-top: 0.5em;
	}
	.strength_icon {
		width: 16.015vw;
	}
	.ul_list_wrap dt {
		padding-left: 4%;
	}
}
@media screen and (max-width: 540px) {
	.illust_01_p2 {
		width: 41.867vw;
	}
	.illust_02_p2 {
		width: 45.333vw;
	}
	.illust_03_p2 {
		width: 50.667vw;
	}
	.strengthBox {
		padding: 5.9% 6.5% 7%;
	}
	.strength_num {
		padding: 0 .65em 0 0;
	}
	.strength_dl {
		padding-left: 7%;
		padding-right: 4%;
	}
	.strength_dl dd + dt {
		margin-top: 5vw;
	}
	.strength_icon {
		width: 31.5%;
	}
	.ul_list_wrap dt {
		width: 22%;
	}
	.ul_list_wrap dd {
		width: 78%;
	}
	.ul_list li {
		margin-right: 1.2em;
	}
}


.bg_about {
	background-image: url(../images/bg_about.webp);
	background-size: cover;
	background-position: center;
}
.aboutBox {
	padding: 3.5% 5.2% 5.5% 6.5%;
}
.shadow {
	box-shadow: 0 0 6px 4px rgba(0, 0, 0, .1);
}
.about_txt {
	width: 48%;
}
.about_img {
	width: 49%;
	margin-top: -4%;
}
.about_img_inner {
	width: 468px;
	height: 324px;
	overflow: hidden;
}
@media screen and (max-width: 1300px) {
	.about_img_inner {
		width: 36vw;
		height: 24.923vw;
	}
}
@media screen and (max-width: 1024px) {
	.about_img {
		margin-top: 4vw;
	}
}
@media screen and (max-width: 540px) {
	.bg_about {
		background-image: url(../images/bg_about_sp.webp);
	}
	.aboutBox {
		padding: 6% 5% 7% 6.5%;
	}
	.about_txt {
		width: 100%;
	}
	.about_img {
		width: 74vw;
		margin-top: 8vw;
		margin-left: auto;
		margin-right: auto;
	}
	.about_img_inner {
		width: 73.125vw;
		height: 50.625vw;
	}
	.shadow {
		box-shadow: 0 0 4px 2px rgba(0, 0, 0, .1);
	}
}
.dots {
	position: relative;
	display: inline-block;
	width: 110px;
}
.slick-dots {
    bottom: -20px;
}
.slick-dots li {
    margin: 0 1px;
}
.slick-dots li button {
    padding: 0;
}
.slick-dots li button:before {
    opacity: 1;
	content: "";
	width: 12px;
	height: 12px;
	border-radius: 50%;
	border: 1px solid #a4a4a4;
}
.slick-dots li.slick-active button:before {
    opacity: 1;
	background: var(--red);
	border: 1px solid var(--red);
}
@media screen and (max-width: 1024px) {
	.dots {
		width: 13vw;
	}
	.slick-dots {
		bottom: -2.5vw;
	}
	.slick-dots li,
	.slick-dots li button {
		width: 1.953vw;
	}
	.slick-dots li button:before {
		width: 1.172vw;
		height: 1.172vw;
	}
}
@media screen and (max-width: 540px) {
	.dots {
		width: 20vw;
	}
	.slick-dots {
		bottom: -4vw;
	}
	.slick-dots li,
	.slick-dots li button {
		width: 3.515vw;
	}
	.slick-dots li button:before {
		width: 2.109vw;
		height: 2.109vw;
	}
}


.info_inner {
	width: 22.7%;
	margin-right: 3.06%;
	padding: .5em 0 .85em;
}
@media screen and (min-width: 1025px) {
	.info_inner:nth-child(4n) {
		margin-right: 0;
	}
}
@media screen and (max-width: 1024px) and (min-width: 541px) {
	.info_inner {
		width: 31%;
		margin-right: 3.5%;
		padding: .5em 0 .85em;
	}
	.info_inner:nth-child(3n) {
		margin-right: 0;
	}
}
@media screen and (max-width: 540px) {
	.info_inner {
		width: 47.5%;
		margin-right: 5%;
		padding: .5em 0 .85em;
	}
	.info_inner:nth-child(2n) {
		margin-right: 0;
	}
}

.bg_jobs_1,
.bg_jobs_2 {
	width: 524px;
	height: 311px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	background-size: cover;
	letter-spacing: 1.1em;
}
.bg_jobs_1 {
	background-image: url(../images/bg_jobs_1.webp);
}
.bg_jobs_2 {
	background-image: url(../images/bg_jobs_2.webp);
}
.fz40 {
	font-size: 40px;
}
.bg_jobs_1::after,
.bg_jobs_2::after {
	width: 1px;
	height: 38%;
	position: absolute;
	left: 50%;
	bottom: 0;
	background: #fff;
	display: block;
	content: "";
}
.bg_jobs_1:hover::after,
.bg_jobs_2:hover::after {
	animation: loop 1s linear infinite;
	animation-timing-function: ease-out;
}
.bg_jobs_1 span,
.bg_jobs_2 span {
	padding-left: 0.5em;
}
@keyframes loop {
  0% {
	height: 38%;
  }
  100% {
	height: 0;
  }
}
@media screen and (max-width: 1300px) {
	.bg_jobs_1,
	.bg_jobs_2 {
		width: 40.308vw;
		height: 23.923vw;
	}
	.fz40 {
		font-size: 3.077vw;
	}
}
@media screen and (max-width: 540px) {
	.bg_jobs_1,
	.bg_jobs_2 {
		width: 42.533vw;
		height: 25.467vw;
	}
	.fz40 {
		font-size: 3.4vw;
		letter-spacing: 0.5em;
	}
}

.shape-red {
	position: relative;
}
.shape-red::before {
	position: absolute;
	content: "";
	display: block;
	background: var(--red);
	left: 50%;
	transform: translateX(-50%);
	top: 45px;
	top: 0;
	width: 1920px;
	height: 1166px;
}
.shape-red.shape-red-1::before {
	clip-path: polygon(20.8% 0, 100% 0, 100% 100%, 0 100%);
}
.shape-red.shape-red-2::before {
	clip-path: polygon(0 0, 79.2% 0, 100% 100%, 0 100%);
}
.img_03 {
	background: url(../images/img_03.webp) center top no-repeat;
	padding-top: 24.166%;
	background-size: 100% auto;
}
.img_04 {
	background: url(../images/img_04.webp) center top no-repeat;
	padding-top: 24.166%;
	background-size: 100% auto;
}
.jobs-container-right,
.jobs-container-left {
	position: relative;
}
.jobs-container-right::after,
.jobs-container-left::after {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	content: "";
	display: block;
	background: #fff;
	z-index: -1;
}
.jobs-container-right::after {
	right: -99%;
}
.jobs-container-left::after {
	left: -99%;
}
.border-bottom-4px {
	border-bottom: 4px solid var(--red);
	padding-bottom: .55em;
}
.jobs-container {
	padding: 75px 75px 110px;
}
.ul_list2 {
}
.ul_list2 li {
	text-indent: -1em;
	padding-left: 1em;
}
.ul_list2 li::before {
	content: "●";
	color: var(--red);
}
.jobs_txt {
	width: 52%;
}
.jobs_img {
	width: 44%;
}
.jobs_title {
	letter-spacing: .5em;
	margin-right: 1.5em;
}
.jobs_sche_1 {
	width: 23.3%;
	clip-path: polygon(0 0, 91% 0, 100% 100%, 0 100%);
}
.jobs_sche_2 {
	padding-left: 1em;
}
.schedule_dl dt {
	text-align: right;
	width: 3.5em;
	float: left;
	padding: .6em 0;
	white-space: nowrap;
	position: relative;
}
.schedule_dl dt::before {
	content: "●";
	color: var(--red);
	position: absolute;
	left: -1.4em;
}
.schedule_dl dd {
	border-bottom: 1px dashed #9fa0a0;
	padding: .6em 0 .6em 5.8em;
	position: relative;
}
.schedule_dl dd::after {
	content: "";
	background: var(--red);
	position: absolute;
	left: -1em;
	width: 1px;
	height: 105%;
	bottom: 1em;
}
.schedule_dl dd:nth-of-type(1)::after {
	content: none;
}
.schedule_dl dd:last-of-type {
	border-bottom: none;
}
@media screen and (max-width: 1920px) {
}
@media screen and (max-width: 1300px) {
	.shape-red::before {
		top: 3.462vw;
		top: 0;
	}
	.jobs-container {
		padding: 5.769vw 5.769vw 8.462vw;
	}
}
@media screen and (max-width: 1024px) {
	.shape-red::before {
		top: 3vw;
		width: 128vw;
		height: 77.733vw;
	}
}
@media screen and (max-width: 540px) {
	.border-bottom-4px {
		border-bottom-width: 3px;
		padding-bottom: .4em;
	}
	.shape-red::before {
		top: 0;
	}
	.img_03 {
		background-image: url(../images/img_03_sp.webp);
		padding-top: 29vw;
	}
	.img_04 {
		background-image: url(../images/img_04_sp.webp);
		padding-top: 29vw;
	}
	.jobs-container {
		width: 100%;
	}
	.jobs_txt {
		width: 100%;
	}
	.jobs_img {
		width: 63%;
		margin-left: auto;
		margin-right: auto;
		margin-top: 3vw;
	}
	.schedule_dl {
		font-size: 3vw;
		padding-left: 4%;
	}
	.jobs_sche_1 {
		width: 30.6%;
	}
}

.faq_nav a {
	width: 33.127%;
	padding: .8em 0;
	font-size: 18px;
}
.border-bottom-3px {
	border-bottom: 3px solid var(--red);
}
.dot_red::before {
	content: "●";
	font-size: 50%;
	color: var(--red);
	margin-right: .7em;
	vertical-align: .3em;
}
@media screen and (max-width: 1300px) {
	.faq_nav a {
		font-size: 1.385vw;
	}
}
@media screen and (max-width: 1024px) {
	.faq_nav a {
		font-size: 1.758vw;
	}
	.border-bottom-3px {
		border-bottom: 2px solid var(--red);
	}
}
@media screen and (max-width: 540px) {
	.faq_nav a {
		font-size: 3.2vw;
		line-height: 1.25;
		display: flex;
		align-items: center;
		justify-content: center;
	}
}


.ofh {
	overflow: hidden;
	width: 100%;
}
.content_area {
	width: 88%;
	max-width: 1100px;
	padding: 0 5px;
	margin: 0 auto;
}
.slide_inner_wrap {
	display: none;
}
.slider.slick-initialized .slide_inner_wrap {
	display: block;
}
.slide_inner_wrap a {
	width: 336px;
	height: auto;
	display: block;
	transition: all 0.3s;
}
.slide_inner_wrap a:hover {
	color: inherit;
	filter: brightness(110%);
}
#interview_slide .slick-list{
	overflow: visible;
}
.slide_inner {
	width: 100%;
	height: 445px;
	position: relative;
}
.slide_inner_img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.slide_inner_eiji {
	position: absolute;
	top: 0;
	right: 0;
	display: inline-block;
	background: #fff;
	writing-mode: vertical-rl;
	z-index: 2;
	padding: .6em 0 .7em .5em;
	line-height: 1;
	font-size: 25px;
}
.slide_inner_eiji:first-letter {
	color: var(--red);
}
.slide_inner_name {
	line-height: 2;
	margin-top: .1em;
	font-weight: 600;
}
.slide_inner_midashi {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	color: #fff;
	background: rgba(0,0,0,.45);
	display: inline-block;
	padding: .6em .8em .7em 1em;
}
.slide_inner_wrap a:hover .slide_inner_midashi {
	background: var(--red);
}
.border-bottom-min {
	position: relative;
	display: inline-block;
}
.border-bottom-min::after {
	position: absolute;
	bottom: 0;
	left: 0;
	display: inline-block;
	background: var(--red);
	content: "";
	width: 23px;
	height: 4px;
}
@media screen and (max-width: 1300px) {
	.slide_inner_wrap a {
		width: 25.846vw;
	}
	.slide_inner {
		height: 34.231vw;
	}
	.slide_inner_eiji {
		font-size: 1.923vw;
	}
}
@media screen and (max-width: 1024px) {
	.slide_inner_wrap a {
		width: 28vw;
	}
	.slide_inner {
		height: 37.083vw;
	}
	.slide_inner_eiji {
		font-size: 2.083vw;
	}
}
@media screen and (max-width: 540px) {
	.slide_inner_wrap a {
		width: 44.8vw;
	}
	.slide_inner {
		height: 59.333vw;
	}
	.slide_inner_eiji {
		font-size: 3.333vw;
	}
	.slide_inner_name {
		font-size: 4.53vw;
	}
	.slide_inner_part {
		font-size: 2.7vw;
	}
	.border-bottom-min::after {
		width: 4vw;
		height: 2px;
	}
}

.arrows {
	width: 110px;
	height: 49px;
	position: relative;
}
.slick-arrow {
	display: block;
	position: absolute;
	top: 0;
	bottom: inherit;
	margin: inherit;
	padding: 0;
	width: 49px;
	height: 49px;
	color: transparent;
	z-index: 1;
	background: #dcdddd;
	border-radius: 50%;
	opacity: 1;
}

.slick-next,
.slick-prev {
	top: 0;
	transform: none;
	opacity: 1;
	background: #dcdddd !important;
}
.slick-arrow:hover {
	opacity: 1;
	background: var(--red) !important;
}
.slick-next::before,
.slick-next::after,
.slick-prev::before,
.slick-prev::after {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.slick-next::before,
.slick-prev::before {
	width: 15px;
	height: 3px;
	background: #fff;
	opacity: 1;
}
.slick-next::after,
.slick-prev::after {
	width: 13px;
	height: 13px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
}
.slick-prev.slick-disabled,
.slick-next.slick-disabled {
	opacity: 1;
	background: #dcdddd;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: 1;
}

/* next */
.slick-next {
  right: 0;
}
.slick-next::before {
  right: 18px;
}
.slick-next::after {
  right: 18px;
  transform: rotate(45deg);
}

/* prev */
.slick-prev {
  left: 0;
}
.slick-prev::before {
  left: 18px;
}
.slick-prev::after {
  left: 18px;
  transform: rotate(-135deg);
}
@media screen and (max-width: 1920px) {
}
@media screen and (max-width: 1300px) {
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 540px) {
	.arrows {
		width: 21.277vw;
		height: 9.478vw;
	}
	.slick-arrow {
		width: 9.478vw;
		height: 9.478vw;
	}
	.slick-next::before,
	.slick-prev::before {
		width: 2.901vw;
		height: 2px;
	}
	.slick-next::after,
	.slick-prev::after {
		width: 2.515vw;
		height: 2.515vw;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}
	.slick-next::before {
	  right: 3.482vw;
	}
	.slick-next::after {
	  right: 3.482vw;
	}
	.slick-prev::before {
	  left: 3.482vw;
	}
	.slick-prev::after {
	  left: 3.482vw;
	}
}


.border-left-min::before {
	display: inline-block;
	background: var(--red);
	width: 1.6em;
	height: 4px;
	content: "";
	vertical-align: middle;
	margin-right: .4em;
}
@media screen and (max-width: 540px) {
	.border-left-min::before {
		height: 3px;
	}
}



.gallery_slide_wrap {
	width: 1920px;
	margin-left: auto;
	margin-right: auto;
}

.ofh_2 {
	overflow: hidden;
	width: 95.5%;
	max-width: 1560px;
	margin-left: 17.7%;
	margin-left: calc(calc(calc(100% - 1200px) /2) - 10px);
	margin-right: 0;
}
.gallery_slide_wrap2 {
	width: 1770px;
}
@media screen and (max-width: 1920px) {
}
@media screen and (max-width: 1334px) {
	.gallery_slide_wrap {
		width: 143.928vw;
	}
	.ofh_2 {
		margin-left: 4.5%;
	}
	.gallery_slide_wrap2 {
		width: 132.684vw;
	}
}
@media screen and (max-width: 1024px) {
	.gallery_slide_wrap {
		width: 187.5vw;
	}
	.gallery_slide_wrap2 {
		width: 172.852vw;
	}
}
@media screen and (max-width: 540px) {
	.gallery_slide_wrap {
		width: 261vw;
	}
	.gallery_slide_wrap2 {
		width: 232vw;
		margin-top: 1vw;
	}
}


.zi2 {
	z-index: 2;
	position: relative;
}


.effect {
}
.effect .effect-span {
    position: relative;
	display: inline-block;
}
.effect .effect-span,
.effect .effect-span::after {
  animation-delay: var(--animation-delay, .5s); /* アニメーションの開始タイミング */
  animation-iteration-count: var(--iterations, 1); /* 再生される回数 */
  animation-duration: var(--duration, 500ms); /* 完了するまでの所要時間 */
  animation-fill-mode: both; /* 実行の前後 */
  animation-timing-function: cubic-bezier(0, 0, 0.2, 1); /* タイミングの指定 */
}

.effect.scroll-in .effect-span {
  --animation-delay: var(--delay, 0);
  --animation-duration: var(--duration, 800ms);
  --animation-iterations: var(--iterations, 1);
  position: relative;
  animation-name: clip-text;
}
.effect.scroll-in .effect-span::after {
  content: "";
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--red);
  transform: scaleX(0);
  transform-origin: 0 50%;
  pointer-events: none;
  animation-name: text-revealer;
}

@keyframes clip-text {
  from {
    clip-path: inset(0 100% 0 0);
  }
  to {
    clip-path: inset(0 0 0 0);
  }
}
@keyframes text-revealer {
  0%, 50% {
    transform-origin: 0 50%;
  }
  60%, 100% {
    transform-origin: 100% 50%;
  }
  60% {
    transform: scaleX(1);
  }
  100% {
    transform: scaleX(0);
  }
}

/* !footer
---------------------------------------------------------- */
#footer {
	width: 100%;
}
.footer-menu li:not(.footer-menu-sub) {
	font-weight: 700;
}
.footer-menu li:not(.footer-menu-sub) a {
	font-size: 17px;
	display: flex;
	flex-direction: column;
	line-height: 1.4;
	padding: .35em 0;
}
.footer-menu li.nolink {
	padding-top: 0.2em;
}
.footer-menu li.footer-menu-sub {
	padding: .1em 0 0 .8em;
}
.footer-menu li.footer-menu-sub::before {
	content: "-";
	margin-right: .2em;
}
.footer-menu li.footer-menu-sub a {
	font-size: 14px;
}
.footer-menu2 li:not(:first-child):before {
	content: "｜";
	padding: 0 .7em;
}
.footer-menu2 li a:not(:hover) {
	color: #fff;
}
@media screen and (max-width: 1300px) {
	.footer-menu li:not(.footer-menu-sub) a {
		font-size: 1.308vw;
	}
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 540px) {
	.copyright {
		font-size: 2.7vw;
	}
}


a.anchor {
    display: block;
    padding-top: 96px;
    margin-top: -96px;
}
@media screen and (max-width: 1920px) {
	a.anchor {
		padding-top: 4.95vw;
		margin-top: -4.95vw;
	}
}
@media screen and (max-width: 1024px) {
	a.anchor {
		padding-top: 9.483vw;
		margin-top: -9.483vw;
	}
}
@media screen and (max-width: 540px) {
	a.anchor {
		padding-top: 16.5vw;
		margin-top: -16.5vw;
	}
}


/*----------------------------
scroll_up ｜下から上へ出現
----------------------------*/
.scroll_up {
  transition: .5s ease-in-out;
  transform: translateY(60px);
  opacity: 0;
}
.scroll_up.on {
  transform: translateY(0);
  opacity: 1.0;
}

/*----------------------------
scroll_left ｜左から出現
----------------------------*/
.scroll_left {
    transition: 0.8s ease-in-out;
    transform: translateX(-30px);
    opacity: 0;
    filter: alpha(opacity=0);
}
.scroll_left.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    transform: translateX(0);
}

/*----------------------------
scroll_right ｜右から出現
----------------------------*/
.scroll_right {
    transition: 0.8s ease-in-out;
    transform: translateX(30px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}
.scroll_right.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    transform: translateX(0);
}
@media screen and (max-width: 1024px) {
.scroll_up {
  transform: translateY(4.5vw);
}
.scroll_up.on {
  transform: translateY(0);
}
}

#interview_slide .slide_inner_wrap {
  transition: .5s ease-in-out;
  transform: translateY(40px);
  opacity: 0;
}
#interview_slide.on .slide_inner_wrap {
  transition: .5s ease-in-out;
  transform: translateY(0);
  opacity: 1.0;
}
#interview_slide.on .slick-slide:nth-of-type(1) .slide_inner_wrap {
	transition-delay: 0;
}
#interview_slide.on .slick-slide:nth-of-type(2) .slide_inner_wrap {
	transition-delay: .1s;
}
#interview_slide.on .slick-slide:nth-of-type(3) .slide_inner_wrap {
	transition-delay: .2s;
}
#interview_slide.on .slick-slide:nth-of-type(4) .slide_inner_wrap {
	transition-delay: .3s;
}
#interview_slide.on .slick-slide:nth-of-type(5) .slide_inner_wrap {
	transition-delay: .4s;
}
#interview_slide.on .slick-slide:nth-of-type(6) .slide_inner_wrap {
	transition-delay: .5s;
}


/* !Clearfix
---------------------------------------------------------- */
.clearfix::after,
.contactForm dd::after {
	content: '';
	display: block;
	height: 0;
	overflow: hidden;
	clear: both;
}

/* !tel
---------------------------------------------------------- */
@media (min-width: 541px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}