@charset "UTF-8";
/* ---------------------------------------
  トップページ
-----------------------------------------*/
/* header
--------------------------------*/
#header {
	opacity: 0;
	transition: opacity 1s;
	transition-delay: 2s;
}

body.is-loaded #header {
	opacity: 1;
}

.main {
	overflow: hidden;
}

/* common
--------------------------------*/
.js-section-fadeup {
	opacity: 0;
	transform: translateY(30rem);
	scale: 1.2;
	transition: opacity 1s, transform 1s, scale 1s;
}
.js-section-fadeup.is-show {
	opacity: 1;
	transform: translate(0, 0);
	scale: 1;
}

.sec_head {
	padding-bottom: 5.4rem;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 767px) {
	.sec_head {
		padding-bottom: 2.3rem;
	}
}
.sec_head::before {
	content: "";
	width: 114.4rem;
	height: 26.7rem;
	background: url(../../img/recruit/index/sechead_bg.svg) no-repeat right center/cover;
	position: absolute;
	right: calc(50% + 0.9rem);
	bottom: 0;
	z-index: -1;
}
@media screen and (max-width: 767px) {
	.sec_head::before {
		width: 37.4rem;
		height: 20.5rem;
		right: auto;
		left: -1.6rem;
	}
}
.sec_head .txt {
	min-height: 4em;
	font-size: 1.8rem;
	margin-top: 2.4rem;
}
@media screen and (max-width: 767px) {
	.sec_head .txt {
		min-height: 5.2em;
		font-size: 1.5rem;
		line-height: 1.7333333333;
		padding: 0 1rem;
		margin-top: 0.8rem;
	}
}

.sec_ttl {
	--mask-size: 4.9rem;
}
@media screen and (max-width: 767px) {
	.sec_ttl {
		--mask-size: 3rem;
	}
}
.sec_ttl .en {
	display: inline-block;
	font-size: 12.8rem;
	line-height: 1;
	padding-bottom: 3rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	.sec_ttl .en {
		font-size: 6.4rem;
		white-space: nowrap;
		padding-bottom: 1.6rem;
	}
}
.sec_ttl .en::after {
	content: "";
	width: 100%;
	height: 1.6rem;
	background-image: url(../../img/recruit/common/ttl_wave.png);
	background-repeat: repeat-x;
	background-size: var(--mask-size) auto;
	background-position: 0 0;
	background-color: transparent;
	animation: animeWave 1s linear infinite;
	position: absolute;
	left: 0;
	bottom: 0;
}
@media screen and (max-width: 767px) {
	.sec_ttl .en::after {
		height: 1rem;
	}
}
.sec_ttl .en .deco {
	display: inline-block;
	position: relative;
}
.sec_ttl .en .deco::before {
	content: "";
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	position: absolute;
}
.sec_ttl .ja {
	display: block;
	font-weight: 700;
	font-size: 3.2rem;
	line-height: 1.3125;
	margin-top: 2rem;
}
@media screen and (max-width: 767px) {
	.sec_ttl .ja {
		font-size: 2.4rem;
		line-height: 1.2916666667;
		padding-left: 1rem;
		margin-top: 1.8rem;
	}
}

/* sec_fv
--------------------------------*/
#sec_fv {
	padding: 3.2rem 0 6.6rem;
}
@media screen and (max-width: 767px) {
	#sec_fv {
		padding: 10.3rem 0 13.8rem;
	}
}
#sec_fv .fv_nav {
	width: fit-content;
	padding: 1.3rem 2.1rem;
	position: absolute;
	right: 3.2rem;
	top: 20.7rem;
	z-index: 1;
	opacity: 0;
	transition: opacity 1s;
	transition-delay: 2s;
	z-index: 2;
}
#sec_fv .fv_nav .nav_list {
	font-family: "Dela Gothic One", sans-serif;
}
#sec_fv .fv_nav .nav_list .item {
	text-align: right;
	font-size: 2rem;
	line-height: 1.2;
	letter-spacing: 0.05em;
	white-space: nowrap;
}
@media screen and (max-width: 767px) {
	#sec_fv .fv_nav .nav_list .item {
		font-size: 1.6rem;
		line-height: 1.1875;
	}
}
#sec_fv .fv_nav .nav_list .item + .item {
	margin-top: 2.4rem;
}
@media screen and (max-width: 767px) {
	#sec_fv .fv_nav .nav_list .item + .item {
		margin-top: 2rem;
	}
}
#sec_fv .fv_nav .nav_list .item a {
	display: inline-flex;
	align-items: center;
	transition: color 0.3s ease-out;
}
@media screen and (min-width: 768px) {
	#sec_fv .fv_nav .nav_list .item a:hover {
		color: #FD7D05;
	}
}
#sec_fv .fv_nav .nav_list .item a::after {
	content: "";
	width: 0.9rem;
	height: 1.4rem;
	background-color: #FD7D05;
	mask-image: url(../../img/recruit/common/btn_arw.svg);
	-webkit-mask-image: url(../../img/recruit/common/btn_arw.svg);
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: 100% 100%;
	-webkit-mask-size: 100% 100%;
	mask-position: center;
	-webkit-mask-position: center;
	margin-left: 1.2rem;
}
@media screen and (max-width: 767px) {
	#sec_fv .fv_nav .nav_list .item a::after {
		width: 0.6rem;
		height: 0.8rem;
		margin-left: 0.8rem;
	}
}
#sec_fv .wrap {
	z-index: 1;
}
#sec_fv .fv_ttl {
	width: 82.3rem;
	padding: 9.3rem 0 0;
	position: relative;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	#sec_fv .fv_ttl {
		width: 100%;
		padding: 6.5rem 0 0;
	}
}
#sec_fv .fv_ttl::before {
	content: "";
	width: 41.6rem;
	height: 13.25rem;
	background: url(../../img/recruit/index/fv_hole.png) no-repeat center/contain;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	#sec_fv .fv_ttl::before {
		width: 20.7rem;
		height: 7.2rem;
	}
}
#sec_fv .fv_ttl .ttl {
	width: 76.3rem;
}
@media screen and (max-width: 767px) {
	#sec_fv .fv_ttl .ttl {
		width: 34.3rem;
	}
}
#sec_fv .fv_ttl .ttl img {
	transform: translateY(-120%);
	opacity: 0;
}
#sec_fv .mascot {
	position: absolute;
	bottom: 6rem;
	opacity: 0;
	scale: 0;
	transition: opacity 0.2s ease, scale 0.2s ease;
}
@media screen and (max-width: 767px) {
	#sec_fv .mascot {
		bottom: -11.2rem;
	}
}
#sec_fv .mascot._01 {
	width: 28.7rem;
	left: 10rem;
	transition-delay: 1s;
}
@media screen and (max-width: 767px) {
	#sec_fv .mascot._01 {
		width: 17.7rem;
		left: 2rem;
	}
}
#sec_fv .mascot._01 .fukidashi {
	width: 27.1rem;
	height: 12.7rem;
	font-size: 2.2rem;
	line-height: 1.1;
	letter-spacing: 0.1em;
	padding: 2.6rem 2rem 2rem 2.7rem;
	background: url(../../img/recruit/index/fv_fukidashi.svg) no-repeat center/100% 100%;
	position: absolute;
	left: -8rem;
	top: -12.5rem;
}
@media screen and (max-width: 767px) {
	#sec_fv .mascot._01 .fukidashi {
		width: 14.6rem;
		height: 6.9rem;
		font-size: 1.18rem;
		padding: 1.4rem 1rem 1rem 1.5rem;
		left: -1.5rem;
		top: -5.3rem;
	}
}
#sec_fv .mascot._01 .fukidashi span {
	color: #FD7D05;
	letter-spacing: 0;
	margin-right: 0.9rem;
}
@media screen and (max-width: 767px) {
	#sec_fv .mascot._01 .fukidashi span {
		margin-right: 0.4rem;
	}
}
#sec_fv .mascot._02 {
	width: 23.5rem;
	right: 18rem;
	transition-delay: 1.3s;
}
@media screen and (max-width: 767px) {
	#sec_fv .mascot._02 {
		width: 13.3rem;
		right: 2.9rem;
	}
}
#sec_fv .catch {
	width: 100%;
	height: 80rem;
	position: absolute;
	bottom: 0;
	overflow: hidden;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
	overflow: hidden;
	display: flex;
	align-items: flex-end;
	justify-content: center;
}
#sec_fv .catch .circle {
	display: block;
	width: 290rem;
	aspect-ratio: 1/1;
	position: relative;
	flex-shrink: 0;
}
@media screen and (min-width: 1441px) {
	#sec_fv .catch .circle {
		width: 201.3888888889vw;
	}
}
@media screen and (max-width: 767px) {
	#sec_fv .catch .circle {
		width: 145rem;
	}
}
#sec_fv .catch .circle text {
	fill: #FFEDDC;
	font-family: "Dela Gothic One", sans-serif;
	font-size: 8rem;
	letter-spacing: 0.05em;
	white-space: nowrap;
}
#sec_fv .catch .circle text tspan {
	font-weight: 700;
	font-size: 13rem;
	letter-spacing: 0;
}
#sec_fv .catch .circle svg {
	width: 100%;
	height: 100%;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	animation: animeRotate 90s linear infinite reverse;
}

body.is-loaded #sec_fv .fv_nav {
	opacity: 1;
}
body.is-loaded #sec_fv .fv_ttl .ttl img {
	animation: animeBounceIn 0.9s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}
body.is-loaded #sec_fv .mascot {
	opacity: 1;
	scale: 1;
}

@keyframes animeRotate {
	from {
		transform: translateX(-50%) rotate(-360deg);
	}
	to {
		transform: translateX(-50%) rotate(0deg);
	}
}
@keyframes animeBounceIn {
	0% {
		transform: translateY(-120%) scale(0.5);
		opacity: 0;
	}
	40% {
		transform: translateY(5%) scaleY(0.9) scaleX(1.05);
		opacity: 1;
	}
	55% {
		transform: translateY(-4%) scaleY(1.02) scaleX(0.98);
		opacity: 1;
	}
	70% {
		transform: translateY(2%) scaleY(0.98) scaleX(1.01);
		opacity: 1;
	}
	85% {
		transform: translateY(-1%) scaleY(1.01) scaleX(0.99);
		opacity: 1;
	}
	100% {
		transform: translateY(0) scale(1);
		opacity: 1;
	}
}
/* sec_intro
--------------------------------*/
#sec_intro {
	margin-top: -17.9rem;
	z-index: 0;
}
@media screen and (min-width: 1441px) {
	#sec_intro {
		margin-top: -12.4305555556vw;
	}
}
@media screen and (max-width: 767px) {
	#sec_intro {
		margin-top: -8.95rem;
	}
}
#sec_intro::before {
	content: "";
	display: block;
	width: 100%;
	height: 17.9rem;
	background: url(../../img/recruit/index/intro_bg.png) no-repeat center bottom/cover;
}
@media screen and (min-width: 1441px) {
	#sec_intro::before {
		height: 12.4305555556vw;
	}
}
@media screen and (max-width: 767px) {
	#sec_intro::before {
		height: 8.95rem;
	}
}
#sec_intro::after {
	content: "";
	display: block;
	width: 100%;
	height: 100vh;
	background-color: #FD7D05;
	position: absolute;
	top: calc(100% - 1px);
	left: 0;
	z-index: -1;
}
#sec_intro .intro_contents {
	padding: 6.4rem 0 32rem;
	background-color: #FD7D05;
	position: relative;
}
@media screen and (max-width: 767px) {
	#sec_intro .intro_contents {
		padding: 9.2rem 0 18.2rem;
	}
}
#sec_intro .intro_contents .mascot {
	width: 70.65rem;
	position: absolute;
	left: calc(50% - 40rem);
	bottom: -9rem;
}
@media screen and (max-width: 767px) {
	#sec_intro .intro_contents .mascot {
		width: 35.1rem;
		left: 0.7rem;
		bottom: -3.8rem;
	}
}
#sec_intro .txt_wrap {
	position: relative;
	z-index: 1;
}
#sec_intro .txt_wrap .txt {
	font-size: 2.4rem;
	line-height: 2.5833333333;
}
@media screen and (max-width: 767px) {
	#sec_intro .txt_wrap .txt {
		font-size: 1.8rem;
		line-height: 2;
	}
}
#sec_intro .txt_wrap .ttl {
	width: 66.1rem;
	margin: 7.2rem auto 0;
}
@media screen and (max-width: 767px) {
	#sec_intro .txt_wrap .ttl {
		width: 100%;
		margin-top: 27rem;
	}
}
#sec_intro .img {
	position: absolute;
	opacity: 0;
	scale: 0;
	transition: opacity 0.2s ease, scale 0.2s ease;
}
#sec_intro .img._01 {
	width: 24.6rem;
	left: 7.4rem;
	top: -10.4rem;
	transition-delay: 0.2s;
}
@media screen and (max-width: 767px) {
	#sec_intro .img._01 {
		width: 12.05rem;
		left: 4.3rem;
		top: -9rem;
	}
}
#sec_intro .img._02 {
	width: 31.7rem;
	left: 16rem;
	top: 11.4rem;
	transition-delay: 0.6s;
}
@media screen and (max-width: 767px) {
	#sec_intro .img._02 {
		width: 14.91rem;
		left: -4.6rem;
		top: 7rem;
	}
}
#sec_intro .img._03 {
	width: 36.05rem;
	left: -12.8rem;
	top: 24.6rem;
	transition-delay: 0.8s;
}
@media screen and (max-width: 767px) {
	#sec_intro .img._03 {
		width: 14rem;
		left: -2.5rem;
		top: 28.3rem;
	}
}
#sec_intro .img._04 {
	width: 33.45rem;
	left: -4.4rem;
	top: 59.2rem;
	transition-delay: 0.4s;
}
@media screen and (max-width: 767px) {
	#sec_intro .img._04 {
		width: 15.2rem;
		left: 5.8rem;
		top: 36.9rem;
	}
}
#sec_intro .img._05 {
	width: 31rem;
	right: 5.9rem;
	top: -3rem;
	transition-delay: 0.8s;
}
@media screen and (max-width: 767px) {
	#sec_intro .img._05 {
		width: 13rem;
		right: -1.2rem;
		top: -2.8rem;
	}
}
#sec_intro .img._06 {
	width: 27.4rem;
	right: -7.4rem;
	top: 12.8rem;
	transition-delay: 0.2s;
}
@media screen and (max-width: 767px) {
	#sec_intro .img._06 {
		width: 10.93rem;
		right: -1.7rem;
		top: 7rem;
	}
}
#sec_intro .img._07 {
	width: 33.9rem;
	right: -4.5rem;
	top: 49.1rem;
	transition-delay: 0.6s;
}
@media screen and (max-width: 767px) {
	#sec_intro .img._07 {
		width: 15.5rem;
		right: -5.4rem;
		top: 24.8rem;
	}
}
#sec_intro .img._08 {
	width: 19.9rem;
	right: 15.8rem;
	top: 74.6rem;
	transition-delay: 0.4s;
}
@media screen and (max-width: 767px) {
	#sec_intro .img._08 {
		width: 10.45rem;
		right: 0.85rem;
		top: 42.7rem;
	}
}
#sec_intro .img._09 {
	width: 23.6rem;
	left: -6.6rem;
	top: -15.9rem;
	transition-delay: 0.6s;
}
@media screen and (max-width: 767px) {
	#sec_intro .img._09 {
		width: 8.4rem;
		left: -0.6rem;
		top: -7.2rem;
	}
}
#sec_intro .img._10 {
	width: 15.3rem;
	left: 17rem;
	top: 35.5rem;
	transition-delay: 0.2s;
}
@media screen and (max-width: 767px) {
	#sec_intro .img._10 {
		width: 6.2rem;
		left: 1rem;
		top: 35.5rem;
	}
}
#sec_intro .img._11 {
	width: 13rem;
	right: 0;
	top: -23.2rem;
	transition-delay: 0.4s;
}
@media screen and (max-width: 767px) {
	#sec_intro .img._11 {
		width: 4.8rem;
		right: 1.6rem;
		top: -11.8rem;
	}
}
#sec_intro .img._12 {
	width: 31.55rem;
	right: 3.8rem;
	top: 21.1rem;
	transition-delay: 0.8s;
}
@media screen and (max-width: 767px) {
	#sec_intro .img._12 {
		width: 10.4rem;
		right: 4.4rem;
		top: 31.7rem;
	}
}
#sec_intro.is-show .img {
	opacity: 1;
	scale: 1;
}

/* sec_works
--------------------------------*/
#sec_works {
	margin-top: -27rem;
	z-index: 0;
}
@media screen and (min-width: 1441px) {
	#sec_works {
		margin-top: -18.75vw;
	}
}
@media screen and (max-width: 767px) {
	#sec_works {
		margin-top: -13.5rem;
	}
}
#sec_works::before {
	content: "";
	display: block;
	width: 100%;
	height: 27rem;
	background: url(../../img/recruit/index/works_bg.png) no-repeat center bottom/cover;
}
@media screen and (min-width: 1441px) {
	#sec_works::before {
		height: 18.75vw;
	}
}
@media screen and (max-width: 767px) {
	#sec_works::before {
		height: 13.5rem;
	}
}
#sec_works::after {
	content: "";
	display: block;
	width: 100%;
	height: 100vh;
	background-color: #FFE41B;
	position: absolute;
	top: calc(100% - 1px);
	left: 0;
	z-index: -1;
}
#sec_works .works_contents {
	padding: 5rem 0 8.2rem;
	background-color: #FFE41B;
	position: relative;
	z-index: 2;
	overflow: hidden;
}
@media screen and (max-width: 767px) {
	#sec_works .works_contents {
		padding: 4.6rem 0 2rem;
	}
}
#sec_works .sec_ttl .en .deco::before {
	width: 7.15rem;
	height: 6.65rem;
	background-image: url(../../img/recruit/index/works_ttl_deco.png);
	right: 0.8rem;
	top: -1rem;
}
@media screen and (max-width: 767px) {
	#sec_works .sec_ttl .en .deco::before {
		width: 4.1rem;
		height: 3.85rem;
		right: 0.4rem;
		top: -0.8rem;
	}
}
#sec_works .works_list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 6.4rem 3.2rem;
	margin-top: 6.4rem;
}
@media screen and (max-width: 767px) {
	#sec_works .works_list {
		grid-template-columns: 1fr;
		gap: 4rem 0;
		margin-top: 5.4rem;
	}
}
#sec_works .works_list .item {
	padding: 0 12.8rem 4rem 3.2rem;
	background-color: #FEFEFE;
	border-radius: 1.6rem;
	position: relative;
}
@media screen and (min-width: 768px) {
	#sec_works .works_list .item:nth-child(3n+1) {
		translate: 0 6.4rem;
	}
	#sec_works .works_list .item:nth-child(3n) {
		translate: 0 -6.4rem;
	}
	#sec_works .works_list .item:nth-child(3) {
		padding-right: 13.6rem;
	}
}
@media screen and (max-width: 767px) {
	#sec_works .works_list .item {
		padding: 0 12.1rem 3.2rem 2.4rem;
		border-radius: 2.4rem;
	}
}
#sec_works .works_list .item .num_wrap {
	display: flex;
	align-items: center;
	gap: 0 1.7rem;
	margin-top: -2.9rem;
	margin-right: -9rem;
}
@media screen and (max-width: 767px) {
	#sec_works .works_list .item .num_wrap {
		gap: 0 0.6rem;
	}
}
#sec_works .works_list .item .num_wrap .num {
	font-size: 4.8rem;
	line-height: 1;
}
@media screen and (max-width: 767px) {
	#sec_works .works_list .item .num_wrap .num {
		font-size: 4rem;
	}
}
#sec_works .works_list .item .num_wrap .department_label {
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.2;
	letter-spacing: 0.05em;
	padding: 0.4rem 1.2rem 0.5rem;
	border-radius: 100vh;
	margin-top: 0.9rem;
}
@media screen and (max-width: 767px) {
	#sec_works .works_list .item .num_wrap .department_label {
		font-size: 1.5rem;
		line-height: 1.2;
		padding: 0.5rem 0.8rem;
	}
}
#sec_works .works_list .item .ttl {
	font-weight: 700;
	font-size: 3.2rem;
	line-height: 1.3125;
	margin-top: 1.3rem;
}
@media screen and (max-width: 767px) {
	#sec_works .works_list .item .ttl {
		font-size: 2.4rem;
		line-height: 1.2916666667;
	}
}
#sec_works .works_list .item .txt {
	margin-top: 1.6rem;
}
@media screen and (max-width: 767px) {
	#sec_works .works_list .item .txt {
		margin-top: 0.8rem;
	}
}
#sec_works .works_list .item .mascot {
	position: absolute;
}
#sec_works .works_list .item._01 .mascot {
	width: 11.7rem;
	right: 0.7rem;
	bottom: -0.7rem;
}
@media screen and (max-width: 767px) {
	#sec_works .works_list .item._01 .mascot {
		width: 8.9rem;
		right: 0.8rem;
		bottom: -0.8rem;
	}
}
#sec_works .works_list .item._02 .mascot {
	width: 11.8rem;
	right: 1.6rem;
	bottom: -0.8rem;
}
@media screen and (max-width: 767px) {
	#sec_works .works_list .item._02 .mascot {
		width: 9.7rem;
		right: 1.5rem;
	}
}
#sec_works .works_list .item._03 .mascot {
	width: 16.1rem;
	right: -2.4rem;
	bottom: -0.9rem;
}
@media screen and (max-width: 767px) {
	#sec_works .works_list .item._03 .mascot {
		width: 12.3rem;
		right: -0.8rem;
	}
}
#sec_works .works_list .item._04 .mascot {
	width: 8.4rem;
	right: 1.6rem;
	bottom: -0.8rem;
}
@media screen and (max-width: 767px) {
	#sec_works .works_list .item._04 .mascot {
		width: 6.7rem;
		right: 3.2rem;
	}
}
#sec_works .works_list .item._05 .mascot {
	width: 17.6rem;
	right: -1.5rem;
	bottom: -0.8rem;
}
@media screen and (max-width: 767px) {
	#sec_works .works_list .item._05 .mascot {
		width: 13rem;
		right: -0.8rem;
	}
}
#sec_works .works_list .item._06 .mascot {
	width: 8.4rem;
	right: 1.6rem;
	bottom: -0.8rem;
}
@media screen and (max-width: 767px) {
	#sec_works .works_list .item._06 .mascot {
		width: 6.6rem;
		right: 3.2rem;
	}
}
#sec_works .btn {
	margin-top: 1.6rem;
}
@media screen and (max-width: 767px) {
	#sec_works .btn {
		margin-top: 2.5rem;
	}
}
#sec_works .btn a {
	margin: 0 7.8rem 0 auto;
}
@media screen and (max-width: 767px) {
	#sec_works .btn a {
		margin: 0 auto;
	}
}
#sec_works .catch {
	width: 144.8rem;
	margin: 2.7rem auto 0;
	rotate: 0.96deg;
}
@media screen and (max-width: 767px) {
	#sec_works .catch {
		width: 100%;
		margin: 1.3rem auto 0;
	}
}

/* sec_system
--------------------------------*/
#sec_system {
	margin-top: -27rem;
	pointer-events: none;
}
@media screen and (min-width: 1441px) {
	#sec_system {
		margin-top: -18.75vw;
	}
}
@media screen and (max-width: 767px) {
	#sec_system {
		margin-top: -13.5rem;
	}
}
#sec_system::before {
	content: "";
	display: block;
	width: 100%;
	height: 27rem;
	background: url(../../img/recruit/index/system_bg.png) no-repeat center bottom/cover;
	pointer-events: none;
}
@media screen and (min-width: 1441px) {
	#sec_system::before {
		height: 18.75vw;
	}
}
@media screen and (max-width: 767px) {
	#sec_system::before {
		height: 13.5rem;
	}
}
#sec_system::after {
	content: "";
	display: block;
	width: 100%;
	height: 100vh;
	background-color: #37E5C3;
	position: absolute;
	top: calc(100% - 1px);
	left: 0;
	z-index: -1;
}
#sec_system .system_contents {
	padding: 6rem 0 7.5rem;
	background-color: #37E5C3;
	position: relative;
	pointer-events: auto;
}
@media screen and (max-width: 767px) {
	#sec_system .system_contents {
		padding: 4rem 0 2rem;
	}
}
#sec_system .system_contents .mascot {
	width: 20.8rem;
	position: absolute;
	right: 0;
	top: -10rem;
	translate: 120% 0;
	transition: translate 0.2s ease;
}
@media screen and (max-width: 767px) {
	#sec_system .system_contents .mascot {
		width: 20rem;
		top: 22rem;
	}
}
#sec_system.is-show .system_contents .mascot {
	translate: 0 0;
}
#sec_system .sec_ttl .en .deco::before {
	width: 6.95rem;
	height: 4.2rem;
	background-image: url(../../img/recruit/index/system_ttl_deco.png);
	left: 0.8rem;
	top: 0.2rem;
}
@media screen and (max-width: 767px) {
	#sec_system .sec_ttl .en .deco::before {
		width: 3.5rem;
		height: 2.1rem;
	}
}
#sec_system .system_list {
	width: 121.6rem;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin-left: auto;
	margin-top: 8rem;
}
@media screen and (max-width: 767px) {
	#sec_system .system_list {
		width: 100%;
		grid-template-columns: 1fr;
		gap: 4.8rem 0;
	}
}
#sec_system .system_list .item {
	position: relative;
}
@media screen and (min-width: 768px) {
	#sec_system .system_list .item:nth-child(2) {
		translate: 0 8rem;
	}
	#sec_system .system_list .item:nth-child(4) {
		translate: 0 -8rem;
	}
}
@media screen and (max-width: 767px) {
	#sec_system .system_list .item {
		display: flex;
		align-items: center;
		gap: 0 0.8rem;
	}
	#sec_system .system_list .item .img {
		width: 18.9rem;
	}
}
#sec_system .system_list .item::before {
	content: "";
	width: 9.7rem;
	height: 7rem;
	background: url(../../img/recruit/index/system_txt_point.svg) no-repeat center/contain;
	position: absolute;
	left: 0;
	top: -3.2rem;
}
@media screen and (max-width: 767px) {
	#sec_system .system_list .item::before {
		width: 6.1rem;
		height: 4.4rem;
		top: -2.6rem;
	}
}
#sec_system .system_list .item .ttl {
	text-align: center;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.4166666667;
	margin-top: 1.6rem;
}
@media screen and (max-width: 767px) {
	#sec_system .system_list .item .ttl {
		flex: 1;
		font-size: 1.8rem;
		line-height: 1.5;
		margin-top: 0;
	}
}
@media screen and (min-width: 768px) {
	#sec_system .btn {
		position: absolute;
		right: 9.8rem;
		top: 20rem;
		z-index: 1;
	}
}
@media screen and (max-width: 767px) {
	#sec_system .btn {
		margin-top: 3.2rem;
	}
	#sec_system .btn a {
		margin: 0 auto;
	}
}
#sec_system .catch {
	width: 147rem;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	#sec_system .catch {
		width: 100%;
		margin: 1.6rem auto 0;
	}
}

/* sec_interview
--------------------------------*/
#sec_interview {
	margin-top: -27rem;
}
@media screen and (min-width: 1441px) {
	#sec_interview {
		margin-top: -18.75vw;
	}
}
@media screen and (max-width: 767px) {
	#sec_interview {
		margin-top: -13.5rem;
	}
}
#sec_interview::before {
	content: "";
	display: block;
	width: 100%;
	height: 27rem;
	background: url(../../img/recruit/index/interview_bg.png) no-repeat center bottom/cover;
}
@media screen and (min-width: 1441px) {
	#sec_interview::before {
		height: 18.75vw;
	}
}
@media screen and (max-width: 767px) {
	#sec_interview::before {
		height: 13.5rem;
	}
}
#sec_interview::after {
	content: "";
	display: block;
	width: 100%;
	height: 100vh;
	background-color: #245FF3;
	position: absolute;
	top: calc(100% - 1px);
	left: 0;
	z-index: -1;
}
#sec_interview .interview_contents {
	padding: 4.3rem 0 21.5rem;
	background-color: #245FF3;
	position: relative;
	overflow: hidden;
}
@media screen and (min-width: 1441px) {
	#sec_interview .interview_contents {
		padding: 4.3rem 0 calc(9rem + 8.6805555556vw);
	}
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_contents {
		padding: 2.2rem 0 16rem;
	}
}
#sec_interview .interview_contents .mascot {
	width: 41rem;
	position: absolute;
	right: calc(50% - 60.7rem);
	bottom: -0.5rem;
	translate: 0 120%;
	transition: translate 0.3s ease 1.5s;
}
@media screen and (min-width: 1441px) {
	#sec_interview .interview_contents .mascot {
		bottom: calc(4rem + 3.1vw);
		bottom: calc(8.68vw - 13rem);
		z-index: 3;
	}
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_contents .mascot {
		width: 23.15rem;
		right: -2rem;
		bottom: 1rem;
	}
}
#sec_interview.is-show .interview_contents .mascot {
	translate: 0 0;
}
#sec_interview .sec_ttl .en {
	color: #48BEFF;
	font-size: 17.6rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .sec_ttl .en {
		font-size: 4.8rem;
	}
}
#sec_interview .sec_ttl .en::after {
	background-image: url(../../img/recruit/common/ttl_wave_white.png);
}
#sec_interview .interview_list {
	margin-top: 4rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list {
		margin-top: 3rem;
	}
}
#sec_interview .interview_list .slick-list, #sec_interview .interview_list .slick-track {
	overflow: visible;
}
#sec_interview .interview_list .item {
	width: 30.4rem;
	height: 42.4rem;
	margin: 0 1.6rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item {
		width: 20.5rem;
		height: 28.5rem;
		margin: 0 0.8rem;
	}
}
#sec_interview .interview_list .item a {
	display: block;
	width: 100%;
	height: 100%;
	background-color: #FEFEFE;
	border-radius: 3.2rem;
	position: relative;
	overflow: hidden;
}
@media screen and (min-width: 768px) {
	#sec_interview .interview_list .item a {
		transition: transform 0.2s ease;
	}
	#sec_interview .interview_list .item a::before {
		content: "";
		width: 100%;
		height: 100%;
		background: url(../../img/recruit/index/interview_frame.png) no-repeat center/100% 100%;
		position: absolute;
		left: 0;
		top: 0;
		opacity: 0;
		transition: opacity 0.2s ease;
		z-index: 2;
	}
	#sec_interview .interview_list .item a:hover {
		border-color: #A7BEFA;
		transform: rotate(5deg);
	}
	#sec_interview .interview_list .item a:hover::before {
		opacity: 1;
	}
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item a {
		border-radius: 2.4rem;
	}
}
#sec_interview .interview_list .item .txt_wrap {
	padding: 2rem 2.4rem 0;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item .txt_wrap {
		padding: 1.2rem 0.5rem 0 1.3rem;
	}
}
#sec_interview .interview_list .item .txt_wrap .department_label {
	display: inline-block;
	font-weight: 700;
	line-height: 1.1875;
	letter-spacing: 0.05em;
	padding: 0.2rem 1rem 0.3rem;
	border-radius: 100vh;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item .txt_wrap .department_label {
		font-size: 1.4rem;
		line-height: 1.2142857143;
		padding: 0.25rem 0.8rem;
	}
}
#sec_interview .interview_list .item .txt_wrap .ttl {
	font-size: 3.2rem;
	line-height: 1.3125;
	letter-spacing: 0.05em;
	margin-top: 0.4rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item .txt_wrap .ttl {
		font-size: 2.4rem;
		line-height: 1.1666666667;
	}
}
#sec_interview .interview_list .item .txt_wrap .ttl span {
	font-size: 2rem;
	line-height: 1.2;
	letter-spacing: 0.05em;
	margin-left: 0.8rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item .txt_wrap .ttl span {
		font-size: 1.6rem;
		margin-left: 0.4rem;
	}
}
#sec_interview .interview_list .item .txt_wrap .name {
	font-weight: 700;
	line-height: 1;
	margin-top: 0.8rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item .txt_wrap .name {
		font-size: 1.4rem;
		margin-top: 0.4rem;
	}
}
#sec_interview .interview_list .item .txt_wrap .year {
	font-size: 1.2rem;
	line-height: 1;
	margin-top: 0.8rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item .txt_wrap .year {
		font-size: 1rem;
		margin-top: 0.6rem;
	}
}
#sec_interview .interview_list .item .img {
	width: 100%;
	height: 29.5rem;
	position: absolute;
	left: 0;
	bottom: 0;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item .img {
		height: 19rem;
	}
}
#sec_interview .interview_list .item .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
}
#sec_interview .interview_list .item._mascot {
	perspective: 1000px;
	cursor: pointer;
	transition: transform 0.6s;
}
#sec_interview .interview_list .item._mascot .inner {
	width: 100%;
	height: 100%;
	position: relative;
	transition: transform 0.6s;
	transform-style: preserve-3d;
}
#sec_interview .interview_list .item._mascot.is-flipped .inner {
	transform: rotate(5deg) rotateY(180deg);
}
#sec_interview .interview_list .item._mascot .front, #sec_interview .interview_list .item._mascot .back {
	width: 100%;
	height: 100%;
	border-radius: 3.2rem;
	background-color: #FEFEFE;
	position: absolute;
	backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .front, #sec_interview .interview_list .item._mascot .back {
		border-radius: 2.4rem;
	}
}
#sec_interview .interview_list .item._mascot .txt_wrap {
	text-align: center;
	padding: 2rem 0 0;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .txt_wrap {
		padding: 1.4rem 0 0;
	}
}
#sec_interview .interview_list .item._mascot .txt_wrap .sub {
	color: #1C1C1C;
	font-size: 2rem;
	line-height: 1.2;
	letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .txt_wrap .sub {
		font-size: 1.6rem;
		line-height: 1.1875;
	}
}
#sec_interview .interview_list .item._mascot .txt_wrap .ttl {
	font-size: 6.1rem;
	line-height: 1;
	letter-spacing: 0;
	position: relative;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .txt_wrap .ttl {
		font-size: 4.1rem;
	}
}
#sec_interview .interview_list .item._mascot .txt_wrap .ttl span {
	display: block;
	color: #1C1C1C;
	font-size: 3.2rem;
	line-height: 1;
	letter-spacing: 0.05em;
	translate: 0 -4.4rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .txt_wrap .ttl span {
		font-size: 2.4rem;
		translate: 0 -3.1rem;
	}
}
#sec_interview .interview_list .item._mascot .txt_wrap .txt {
	font-size: 1.2rem;
	line-height: 1.6666666667;
}
#sec_interview .interview_list .item._mascot .front .img {
	height: 34.1rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .front .img {
		height: 22rem;
	}
}
#sec_interview .interview_list .item._mascot .front .copy {
	width: 100%;
	text-align: center;
	font-size: 0.8rem;
	line-height: 1.4;
	position: absolute;
	bottom: 0.8rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .front .copy {
		font-size: 0.6rem;
		line-height: 1.2;
		bottom: 0.5rem;
	}
}
#sec_interview .interview_list .item._mascot .back {
	display: flex;
	flex-direction: column;
	justify-content: center;
	transform: rotateY(180deg);
	border-width: 1.2rem;
	border-style: solid;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .back {
		border-width: 0.5rem;
	}
}
#sec_interview .interview_list .item._mascot .back .img {
	width: 30.4rem;
	height: auto;
	position: relative;
	margin: 1rem -1.2rem 0;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .back .img {
		width: 15.2rem;
		margin: 0.5rem auto 0;
	}
}
#sec_interview .interview_list .item._mascot .back .img img {
	height: auto;
	object-fit: unset;
}
#sec_interview .interview_list .item._mascot .back .txt_wrap {
	flex: 1;
	padding: 0 1.2rem;
	margin-top: 0.5rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .back .txt_wrap {
		padding: 0 0.4rem;
	}
}
#sec_interview .interview_list .item._mascot .back .txt_wrap .txt {
	text-align: center;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .back .txt_wrap .txt {
		text-align: left;
		font-size: 1.1rem;
		line-height: 1.7272727273;
	}
}
#sec_interview .interview_list .item._mascot .back .txt_wrap ul li {
	text-align: left;
	font-size: 1.2rem;
	line-height: 1.6666666667;
	padding-left: 1.3rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .back .txt_wrap ul li {
		font-size: 1.1rem;
		line-height: 1.7272727273;
		letter-spacing: -0.05em;
		padding-left: 1.2rem;
	}
}
#sec_interview .interview_list .item._mascot .back .txt_wrap ul li::before {
	content: "";
	width: 1rem;
	height: 1rem;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	position: absolute;
	left: 0;
	top: 0.5rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .back .txt_wrap ul li::before {
		width: 0.9rem;
		height: 0.9rem;
	}
}
#sec_interview .interview_list .item._mascot .back .txt_wrap .ttl {
	width: 100%;
	margin-top: 0;
	position: absolute;
	left: 0;
	bottom: -3rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .back .txt_wrap .ttl {
		margin-top: -0.5rem;
		bottom: -1.9rem;
	}
}
#sec_interview .interview_list .item._mascot .back .txt_wrap .ttl span {
	font-size: 2.4rem;
	translate: 0 -3.6rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .interview_list .item._mascot .back .txt_wrap .ttl span {
		font-size: 1.6rem;
		translate: 0 -2.6rem;
	}
}
#sec_interview .interview_list .item._mascot._01 .txt_wrap .ttl {
	color: #FFE44E;
}
#sec_interview .interview_list .item._mascot._01 .back {
	border-color: #FAE4A7;
}
#sec_interview .interview_list .item._mascot._01 .back .txt_wrap ul li::before {
	background-image: url(../../img/recruit/index/interview_mascot01_ico.svg);
}
#sec_interview .interview_list .item._mascot._02 .txt_wrap .ttl {
	color: #6AE7CE;
}
#sec_interview .interview_list .item._mascot._02 .back {
	border-color: #96E6C8;
}
#sec_interview .interview_list .item._mascot._02 .back .txt_wrap ul li::before {
	background-image: url(../../img/recruit/index/interview_mascot02_ico.svg);
}
#sec_interview .slider_counter {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 3rem;
	margin-top: 4rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .slider_counter {
		gap: 0 2rem;
		margin-top: 2.4rem;
	}
}
#sec_interview .slider_counter .num {
	width: 6.5em;
	display: flex;
	justify-content: center;
	font-family: "Dela Gothic One", sans-serif;
	color: #FEFEFE;
	font-size: 2rem;
	line-height: 1;
	letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
	#sec_interview .slider_counter .num {
		font-size: 1.6rem;
	}
}
#sec_interview .slider_counter .num .separator {
	margin: 0 0.5em;
}
#sec_interview .slider_counter .num .current, #sec_interview .slider_counter .num .total {
	flex: 1;
}
#sec_interview .slider_counter .num .current {
	text-align: right;
}
#sec_interview .slider_counter .slick-arrow {
	width: 6.4rem;
	height: 5rem;
	background: url(../../img/recruit/common/arw_interview_list.svg) no-repeat center center/contain;
	font-size: 0;
}
@media screen and (min-width: 768px) {
	#sec_interview .slider_counter .slick-arrow {
		transition: opacity 0.3s ease-out;
		cursor: pointer;
	}
	#sec_interview .slider_counter .slick-arrow:hover {
		opacity: 0.6;
	}
}
@media screen and (max-width: 767px) {
	#sec_interview .slider_counter .slick-arrow {
		width: 4.8rem;
		height: 3.8rem;
	}
}
#sec_interview .slider_counter .slick-arrow.slick-prev {
	scale: -1 1;
}
#sec_interview .marquee_txt {
	margin-top: 4.8rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .marquee_txt {
		margin-top: 3.2rem;
	}
}
#sec_interview .marquee_txt .loop_txt {
	display: flex;
	justify-content: flex-start;
	gap: 0 1.6rem;
	color: #FEFEFE;
	font-size: 3.2rem;
	line-height: 1;
	letter-spacing: 0.05em;
	white-space: nowrap;
	will-change: transform;
	animation: animeMarquee var(--dur, 45s) linear infinite;
	animation-direction: reverse;
}
@media screen and (max-width: 767px) {
	#sec_interview .marquee_txt .loop_txt {
		font-size: 2.4rem;
	}
}
#sec_interview .marquee_txt .loop_txt > span {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 0 1.6rem;
}
#sec_interview .marquee_txt .loop_txt > span::after {
	content: "";
	width: 3.8rem;
	height: 4.2rem;
	background: url(../../img/recruit/index/interview_txt_deco.svg) no-repeat center/contain;
}
@media screen and (max-width: 767px) {
	#sec_interview .marquee_txt .loop_txt > span::after {
		width: 3rem;
		height: 3.3rem;
	}
}
#sec_interview .btn {
	margin-top: 4.8rem;
}
@media screen and (max-width: 767px) {
	#sec_interview .btn {
		margin-top: 3.3rem;
	}
}
#sec_interview .btn a {
	margin: 0 auto;
}

/* sec_news
--------------------------------*/
#sec_news {
	margin-top: -12.5rem;
}
@media screen and (min-width: 1441px) {
	#sec_news {
		margin-top: -8.6805555556vw;
	}
}
@media screen and (max-width: 767px) {
	#sec_news {
		margin-top: -6.25rem;
	}
}
#sec_news::before {
	content: "";
	display: block;
	width: 100%;
	height: 12.5rem;
	background: url(../../img/recruit/index/news_bg.png) no-repeat center top/cover;
}
@media screen and (min-width: 1441px) {
	#sec_news::before {
		height: 8.6805555556vw;
	}
}
@media screen and (max-width: 767px) {
	#sec_news::before {
		height: 6.25rem;
	}
}
#sec_news .news_contents {
	background-color: #FEFEFE;
	position: relative;
}
#sec_news .wrap {
	z-index: 1;
}
#sec_news .sec_ttl .en {
	font-size: 6.4rem;
}
@media screen and (max-width: 767px) {
	#sec_news .sec_ttl .en {
		font-size: 3.2rem;
	}
}
#sec_news .sec_ttl .ja {
	font-size: 2.4rem;
	line-height: 1.4166666667;
	margin-top: 2rem;
}
@media screen and (max-width: 767px) {
	#sec_news .sec_ttl .ja {
		font-size: 1.8rem;
		line-height: 1.5;
	}
}
#sec_news .news_list {
	width: 92.8rem;
	padding: 5rem 4rem 6rem;
	background-color: #F3F3F3;
	border-radius: 1.6rem;
	position: relative;
	margin: 5.2rem auto 0;
}
@media screen and (max-width: 767px) {
	#sec_news .news_list {
		width: 100%;
		padding: 3.2rem 2.4rem;
		border-radius: 3.2rem;
		margin-top: 4.3rem;
	}
}
#sec_news .news_list .item + .item {
	margin-top: 4.8rem;
}
@media screen and (max-width: 767px) {
	#sec_news .news_list .item + .item {
		margin-top: 3.2rem;
	}
}
#sec_news .news_list .item a {
	display: block;
	padding-right: 4rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	#sec_news .news_list .item a {
		padding-right: 2.5rem;
	}
}
#sec_news .news_list .item a::after {
	content: "";
	width: 1.4rem;
	height: 1.4rem;
	background: url(../../img/recruit/common/arw_orange.svg) no-repeat center/contain;
	position: absolute;
	right: 1rem;
	bottom: 1rem;
}
@media screen and (max-width: 767px) {
	#sec_news .news_list .item a::after {
		right: 0.8 rem;
		bottom: 0.5rem;
	}
}
#sec_news .news_list .item .info {
	display: flex;
	align-items: flex-start;
	gap: 0 1.3rem;
}
@media screen and (max-width: 767px) {
	#sec_news .news_list .item .info {
		display: block;
	}
}
#sec_news .news_list .item .info .date {
	width: 6em;
}
@media screen and (max-width: 767px) {
	#sec_news .news_list .item .info .date {
		font-size: 1.4rem;
		line-height: 1.7142857143;
	}
}
#sec_news .news_list .item .info .cate {
	flex: 1;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 1rem;
	line-height: 1.125;
	margin-top: 0.3rem;
}
@media screen and (max-width: 767px) {
	#sec_news .news_list .item .info .cate {
		font-size: 1.4rem;
		line-height: 1.2142857143;
		letter-spacing: 0.05em;
		margin-top: 0.6rem;
		margin-right: -2.5rem;
	}
}
#sec_news .news_list .item .info .cate span {
	padding: 0.4rem 1rem;
	border-radius: 100vh;
}
@media screen and (max-width: 767px) {
	#sec_news .news_list .item .info .cate span {
		padding: 0.35rem 0.7rem;
	}
}
#sec_news .news_list .item .info .cate span.careers {
	background-color: #FD7D05;
}
#sec_news .news_list .item .info .cate span.events-exhibitions {
	background-color: var(--dept-design);
}
#sec_news .news_list .item .info .cate span.products {
	background-color: var(--dept-sales);
}
#sec_news .news_list .item .ttl {
	width: fit-content;
	max-width: calc(100% - 1.5rem);
	font-size: 1.8rem;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	margin-top: 1.6rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	#sec_news .news_list .item .ttl {
		max-width: 100%;
		font-size: 1.4rem;
		line-height: 1.7142857143;
		margin-top: 1rem;
	}
}
#sec_news .news_list .item .ttl span {
	padding-bottom: 0.4rem;
	background-image: linear-gradient(90deg, #1A1A1A, #1A1A1A);
	background-repeat: no-repeat;
	background-position: left bottom;
	background-size: 100% 1px;
	transition: background-size 0.3s ease-out;
}
@media screen and (min-width: 768px) {
	#sec_news .news_list .item a:hover .ttl span {
		background-size: 0 1px;
	}
}
#sec_news .news_list .mascot {
	width: 24.05rem;
	position: absolute;
	left: -14.4rem;
	top: 5.1rem;
	z-index: -1;
	translate: 120% 0;
	transition: translate 0.2s ease 1s;
}
@media screen and (max-width: 767px) {
	#sec_news .news_list .mascot {
		width: 12rem;
		left: -2.5rem;
		top: -8.8rem;
		rotate: 16deg;
		translate: 0 120%;
	}
}
#sec_news.is-show .news_list .mascot {
	translate: 0 0;
}
#sec_news .btn {
	margin-top: 2.4rem;
}
@media screen and (max-width: 767px) {
	#sec_news .btn {
		margin-top: 3.2rem;
	}
}

#footer::after {
	content: "";
	width: 20.3rem;
	height: 13.4rem;
	background: url(../../img/recruit/common/footer_illust.png) no-repeat center/contain;
	position: absolute;
	top: -2.1rem;
	right: calc(50% - 64rem);
	z-index: 1;
}
@media screen and (min-width: 1441px) {
	#footer::after {
		width: 14.0972222222vw;
		height: 9.3055555556vw;
		top: -1.4583333333vw;
		right: calc(50% - 44.4444444444vw);
	}
}
@media screen and (max-width: 767px) {
	#footer::after {
		width: 15.7rem;
		height: 10.4rem;
		top: -1.1rem;
		right: 2.3rem;
	}
}