@charset "utf-8";
#header .logo {
	width: auto;	
}
#header .logo a {
	display: flex;
	align-items: center;
}
#header .logo .logo-l {
	width: 213px;
}
#header .logo .logo-r {
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	font-size: 20px;
	line-height: 1;
	margin-left: 12px;
	padding-top: 8px;
}
.menu .menu-wrap {
	padding-right: 0;
}
.menu .btn-entry {
	height: 100%;
	margin-left: 30px;
}
.menu .btn-entry a {
	display: flex;
	width: 160px;
	height: 100%;
	color: #fff;
	background: #000;
	align-items: center;
	justify-content: center;
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	font-size: 20px;
	line-height: 1;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	transition: 0.3s;
}
.menu .btn-entry a:hover {
	color: #000;
	background: #ff0;
}
.page.recruit .main-wrap {
	padding: 0;
	max-width: 100%;
}
.recruit #footer .footer-wrap {
	padding-top: 5px;
}
.recruit #footer .footer-wrap .contact {
	display: none;
}

@media screen and (max-width: 800px) {
	body.recruit {
		padding-bottom: 40px;
	}
	body.recruit.recruit-entry {
		padding-bottom: 0;
	}

	#header .logo .logo-l {
		width: 142px;
	}
	#header .logo .logo-r {
		font-size: 12px;
		padding-top: 6px;
	}
	.menu {
		padding: 80px 8.4vw;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.menu .menu-wrap {
		max-width: 240px;
	}
	.menu .main-nav {
		padding-left: 47px;
		margin: 45px 0;
	}
	.menu .main-nav > li {
		margin-bottom: 17px;
	}
	.menu .main-nav > li > a {
		padding-left: 0;
		font-size: 16px;
		line-height: 24px;
	}
	.menu .main-nav > li > a::before {
		display: none;
	}
	#header .splogo a {
		margin-bottom: 0;
	}
	#header .splogo a img {
		margin-bottom: 8px;
	}
	#header .splogo span {
		display: block;
		font-size: 20px;
		line-height: 1.2;
		font-weight: 700;
		font-family: 'Roboto', sans-serif;
		padding-left: 47px;
	}
	.menu .btn-entry {
		margin-left: 0;
		padding-left: 47px;
		height: auto;
	}
	.menu .btn-entry a {
		width: 144px;
		height: 40px;
	}
	.btn-entry-fix {
		font-size: 20px;
		line-height: 1;
		font-weight: 700;
		font-family: 'Roboto', sans-serif;
		color: #fff;
		letter-spacing: 0.1em;
		text-indent: 0.1em;
		transition: 0.7s;
		position: fixed;
		width: 100%;
		bottom: 0;
		left: 0;
		z-index: 10;
	}
	.btn-entry-fix a {
		width: 100%;
		height: 40px;
		display: flex;
		align-items: center;
		justify-content: center;
		background: #000;
	}
}



/*------------------------------------------------------------
	Recruit - MV
------------------------------------------------------------*/

#recruit-mv {
	height: 100vh;
	min-height: 640px;
	padding-top: 82px;
	position: relative;
	z-index: 2;
	background: #fff;
}
#recruit-mv .section-wrap {
	height: 100%;
	max-width: 1600px;
	margin: auto;
	width: 100%;
	position: relative;
	display: flex;
	align-items: center;
}
#recruit-mv .section-wrap::after {
	content: '';
	display: block;
	height: 100%;
	width: 430px;
	left: 314px;
	top: 0;
	background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
	position: absolute;
	z-index: 1;
}
#recruit-mv .section-wrap {
}
#recruit-mv .section-wrap .txt {
	position: relative;
	z-index: 2;
	padding-left: 60px;
}
#recruit-mv .section-wrap .txt h1 {
	font-weight: 100;
	font-size: 44px;
	line-height: 65px;
	position: relative;
	margin-bottom: 20px;
}
#recruit-mv .section-wrap .txt h1::after {
	content: '';
	display: block;
	height: 1px;
	width: calc(100% + 60px);
	position: absolute;
	left: -60px;
	bottom: 0;
	background: #ff0;
}
#recruit-mv .section-wrap .txt h2 {
	font-weight: 700;
	font-size: 50px;
	line-height: 66px;
	letter-spacing: -0.03em;
}
#recruit-mv .section-wrap .img {
	position: absolute;
	width: calc(100% - 314px);
	top: 0;
	right: 0;
	height: 100%;
}
#recruit-mv .section-wrap .txt h3 {
	font-size: 18px;
	line-height: 28px;
	font-weight: 700;
	margin-top: 10px;
}
#recruit-mv .section-wrap .img img {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

@media screen and (max-width: 800px) {
	#recruit-mv {
		padding-top: 54px;
		height: auto;
		min-height: 0;
	}
	#recruit-mv .section-wrap {
		display: block;
	}
	#recruit-mv .section-wrap::after {
		display: none;
	}
	#recruit-mv .section-wrap .txt {
		padding-top: 31px;
	}
	#recruit-mv .section-wrap .txt {
		padding-left: 8.4vw;
	}
	#recruit-mv .section-wrap .txt h1 {
		font-size: 30px;
		line-height: 45px;
		padding-bottom: 6px;
	}
	#recruit-mv .section-wrap .txt h1::after {
		height: 2px;
	}
	#recruit-mv .section-wrap .txt h2 {
		font-size: 34px;
		line-height: 44px;
	}
	#recruit-mv .section-wrap .img {
		position: relative;
		width: 100%;
		margin-top: -65px;
	}
	#recruit-mv .section-wrap .img::after {
		content: '';
		display: block;
		height: 100%;
		width: 50%;
		left: 0;
		top: 0;
		background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
		position: absolute;
		z-index: 1;
	}
	#recruit-mv .section-wrap .img img {
		width: 100%;
		height: auto;
		position: static;
	}
	#recruit-mv > h3 {
		font-size: 12px;
		line-height: 19px;
		font-weight: 700;
		padding: 20px 8.4vw 70px;
	}
}

/*------------------------------------------------------------
	Recruit - Common
------------------------------------------------------------*/

.recruit-title {
	padding: 200px 0 100px;
	width: 100%;
	position: relative;
	background: #fff;
}
.recruit-title h2 {
	padding-left: 60px;
	padding-right: 10px;
	position: relative;
	display: inline-block;
	z-index: 1;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 30px;
	line-height: 44px;
	letter-spacing: -0.05em;
}
.recruit-title h2 span {
	position: relative;
	z-index: 1;
}
.recruit-title h2::after {
	content: '';
	height: 16px;
	width: 100%;
	background: #ff0;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
}
.recruit-title img {
	position: absolute;
	top: 80px;
	right: -4px;
	height: 206px;
	z-index: 1;
}

@media screen and (max-width: 800px) {
	.recruit-title {
		padding: 130px 0 80px;
	}
	.recruit-title h2 {
		padding-left: 8.4vw;
	}
	.recruit-title img {
		height: 82px;
		right: 0;
		top: 47px;
	}
}


/*------------------------------------------------------------
	Recruit - About
------------------------------------------------------------*/

#section-about .fixbgimg {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	z-index: -1;
	opacity: 0;
}
.showbg #section-about .fixbgimg {
	opacity: 1;
}
#section-about .recruit-content {
	padding: 645px 60px 100vh;
}
#section-about .recruit-content .box {
	padding: 50px 60px;
	display: grid;
	grid-template-columns: 356px auto;
	gap: 24px;
	background: #fff;
	max-width: 1026px;
	margin: auto;
}
#section-about .recruit-content .box h2 {
	font-size: 30px;
	line-height: 40px;
	font-weight: 700;
}
#section-about .recruit-content .box p {
	font-size: 16px;
	line-height: 30px;
}
#section-about .recruit-content .box p + p {
	margin-top: 30px;
}
#section-about .recruit-movie {
	background: #fff;
	padding-top: 150px;
}
#section-about .recruit-movie .wrap {
	margin: auto;
	width: 100%;
	background: url(images/dot1.svg) top left/6px 7px repeat;
}
#section-about .recruit-movie .wrap a {
	max-width: 850px;
	width: 100%;
	margin: auto;
	display: block;
}
#section-about .recruit-movie .box {
	max-width: 850px;
	width: 100%;
	margin: -30px auto 0;
	padding-bottom: 150px;
}
#section-about .recruit-movie .box h2 {
	font-size: 24px;
	line-height: 36px;
	padding: 9px 30px;
	display: inline-block;
	font-weight: 700;
	background: #fff;
}
#section-about .recruit-movie .box p {
	font-size: 16px;
	line-height: 26px;
	padding: 0 30px;
}

#section-about .recruit-voice {
	background: #fff;
	padding-bottom: 60px;
}
#section-about .recruit-voice a {
	max-width: 1600px;
	margin: auto;
	width: 100%;
	display: block;
}
#section-about .recruit-voice a img {
	width: 100%;
}
#section-about .recruit-voice .box {
	max-width: 850px;
	width: 100%;
	margin: -30px auto 0;
}
#section-about .recruit-voice .box h2 {
	font-size: 24px;
	line-height: 36px;
	padding: 9px 30px;
	display: inline-block;
	font-weight: 700;
	background: #fff;
}
#section-about .recruit-voice .box p {
	font-size: 16px;
	line-height: 26px;
	padding: 0 30px;
}
#section-about .recruit-voice .box a {
	display: inline-block;
	font-size: 11px;
	line-height: 13px;
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	width: 94px;
	padding-bottom: 4px;
	position: relative;
	margin-left: 30px;
	margin-top: 30px;
}
#section-about .recruit-voice .box a::before {
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	display: block;
	width: 100%;
	height: 1px;
	background: currentcolor;
}
#section-about .recruit-voice .box a::after {
	content: '';
	position: absolute;
	bottom: 0;
	right: -1px;
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 0 6px;
	border-color: transparent transparent transparent currentcolor;
}

@media screen and (max-width: 800px) {
	#section-about .recruit-content {
		padding: 0;
		display: grid;
	}
	#section-about .fixbgimg {
		position: static;
		width: 100%;
		height: auto;
		opacity: 1;
	}
	#section-about .recruit-content .box {
		order: 1;
		grid-template-columns: 1fr;
		padding: 40px 8.4vw 120px;
		gap: 40px;
	}
	#section-about .recruit-content .box h2 {
		font-size: 26px;
		line-height: 36px;
	}
	#section-about .recruit-movie {
		padding-top: 120px;
	}
	#section-about .recruit-movie .box {
		padding-bottom: 80px;
	}
	#section-about .recruit-voice .box h2,
	#section-about .recruit-movie .box h2 {
		font-size: 20px;
		line-height: 29px;
		padding: 7px 12px 10px 8.4vw;
	}
	#section-about .recruit-movie .box p {
		padding: 0 8.4vw;
	}
	
}

/*------------------------------------------------------------
	Recruit - Business
------------------------------------------------------------*/

#section-business {
	background: #fff;
}
#section-business .recruit-content {
	max-width: 1600px;
	padding: 0 60px;
	margin: auto;
	width: 100%;
	overflow: hidden;
}

#section-business .recruit-content .flex {
	max-width: 1026px;
	margin: auto;
	display: flex;
	gap: 30px;
	align-items: flex-start;
}
#section-business .recruit-content .flex + .flex {
	margin-top: 100px;
}
#section-business .recruit-content .flex > div {
	width: calc(50% - 15px);
}
#section-business .recruit-content .flex.reverse .thumb {
	order: 1;
}
#section-business .recruit-content .flex .thumb {
	padding-top: 7px;
	position: relative;
}
#section-business .recruit-content .flex .thumb::after {
	background: #f4f4f4;
	content: '';
	display: block;
	width: 50vw;
	height: calc(100% - 7px);
	position: absolute;
	top: 37px;
	right: 40px;
}

#section-business .recruit-content .flex.reverse .thumb::after {
	right: auto;
	left: 40px;
}
#section-business .recruit-content .flex .thumb > img {
	position: relative;
	z-index: 2;
}

#section-business .recruit-content .flex .txt h2 {
	font-size: 22px;
	line-height: 33px;
	font-weight: 300;
}
#section-business .recruit-content .flex .txt h2::after {
	content: '';
	display: inline-block;
	width: 120px;
	height: 1px;
	background: currentcolor;
	margin-left: 10px;
	vertical-align: 7px;
}
#section-business .recruit-content .flex .txt h3 {
	font-size: 30px;
	line-height: 40px;
	font-weight: 700;
	margin-top: 30px;
	margin-bottom: 10px;
}
#section-business .recruit-content .flex .txt p {
	font-size: 14px;
	line-height: 24px;
}
#section-business .recruit-content .flex .txt p + p {
	margin-top: 24px;
}
#section-business .recruit-slide {
	margin-bottom: 0;
	padding-bottom: 18px;
	z-index: 2;
}
#section-business .recruit-slide .slick-dots {
	bottom: 0;
	text-align: left;
}
#section-business .recruit-slide .slick-dots li {
	width: 8px;
	height: 8px;
	margin: 0 8px 0 0;
}
#section-business .recruit-slide .slick-dots li button {
	width: 8px;
	height: 8px;
	padding: 0;
	background: #c3c3c3;
}
#section-business .recruit-slide .slick-dots li.slick-active button {
	background: #000;
}
#section-business .recruit-slide .slick-dots li button:before {
	display: none;
}
#section-business .recruit-slide div {
	line-height: 1;
	vertical-align: top;
}
#section-business .recruit-content .business-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
	margin-top: 130px;
	padding-bottom: 20px;
}
#section-business .recruit-content .business-list li {
	position: relative;
	padding-top: 30px;
}
#section-business .recruit-content .business-list li::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 120px;
	height: 1px;
	background: currentcolor;
}
#section-business .recruit-content .business-list li h2 {
	font-size: 24px;
	line-height: 32px;
	font-weight: 700;
	margin-bottom: 10px;
}
#section-business .recruit-content .business-list li p {
	font-size: 14px;
	line-height: 24px;
}

@media screen and (max-width: 800px) {
	#section-business .recruit-content {
		padding: 0 8.4vw;
	}
	#section-business .recruit-content .flex {
		flex-direction: column;
		padding-top: 60px;
		position: relative;
		gap: 50px;
	}
	#section-business .recruit-content .flex + .flex {
		margin-top: 40px;
	}
	#section-business .recruit-content .flex > div {
		width: 100%;
	}
	#section-business .recruit-content .flex .thumb {
		padding-top: 0;
	}
	#section-business .recruit-content .flex.reverse .thumb {
		order: 0;
	}
	#section-business .recruit-content .flex .thumb::after {
		width: calc(100% + 8.4vw - 20px);
		height: 100%;
		top: 20px;
		left: 20px;
	}
	#section-business .recruit-content .flex.reverse .thumb::after {
		height: calc(100% + 2px);
		left: 20px;
		right: auto;	
	}
	#section-business .recruit-content .flex .txt h2 {
		position: absolute;
		top: 0;
		left: 0;
	}
	#section-business .recruit-content .flex .txt h3 {
		font-size: 19px;
		line-height: 28px;
		margin-top: 0;
		margin-bottom: 20px;
	}
	#section-business .recruit-content .business-list {
		grid-template-columns: 1fr;
		margin-top: 40px;
		gap: 40px;
	}
	#section-business .recruit-content .business-list li h2 {
		font-size: 18px;
		line-height: 28px;
	}
}

/*------------------------------------------------------------
	Recruit - Recruit
------------------------------------------------------------*/


#section-recruit {
	position: relative;
	overflow: hidden;
}
#section-recruit::after {
	content: '';
	display: block;
	width: 100%;
	height: 300px;
	background: linear-gradient(0deg, #fff 0%, #f4f4f4 100%);
	position: absolute;
	top: 117px;
	left: 0;
}
#section-recruit .recruit-content {
	padding: 0 60px 150px;
	position: relative;
	z-index: 1;
}
#section-recruit .flex {
	max-width: 850px;
	margin: auto;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 0 30px;
}
#section-recruit .flex h2 {
	width: 100%;
	font-size: 22px;
	line-height: 33px;
	font-weight: 300;
}
#section-recruit .flex h2::after {
	content: '';
	display: inline-block;
	width: 120px;
	height: 1px;
	background: currentcolor;
	margin-left: 10px;
	vertical-align: 5px;
}
#section-recruit .flex h3 {
	width: 100%;
	font-family: 'Noto Serif JP', serif;
	font-size: 30px;
	line-height: 44px;
	letter-spacing: -0.05em;
	font-weight: 500;
	margin-top: 20px;
	margin-bottom: 30px;
}
#section-recruit .flex .content {
	flex: 1;
}
#section-recruit .flex .content p {
	font-size: 14px;
	line-height: 24px;
}
#section-recruit .flex .content p + p {
	margin-top: 24px;
}
#section-recruit .flex figure {
	width: 234px;
}
#section-recruit .flex figcaption {
	font-size: 20px;
	line-height: 1;
	margin-top: 20px;
	text-align: right;
}
#section-recruit .flex figcaption small {
	font-size: 14px;
	margin-right: 10px;
}
@media screen and (max-width: 800px) {
	#section-recruit::after {
		top: 61px;
	}
	#section-recruit .recruit-content {
		padding: 0 8.4vw 120px;
	}
	#section-recruit .flex h3 {
		width: 100%;
		order: 2;
		font-size: 19px;
		line-height: 28px;
		margin-top: 30px;
	}
	#section-recruit .flex h2::after {
		width: 82px;
	}
	#section-recruit .flex .content {
		width: 100%;
		order: 2;
	}
	#section-recruit .flex figure {
		order: 1;
		margin-top: 25px;
		display: flex;
		flex-direction: row-reverse;
		align-items: flex-end;
		width: 100%;
		gap: 15px;
	}
	#section-recruit .flex figure img {
		width: 192px;
	}
	#section-recruit .flex figcaption {
		flex: 1;
		margin-top: 0;
		font-size: 16px;
	}
	#section-recruit .flex figcaption small {
		display: block;
		margin-right: 0;
		margin-bottom: 8px;
		font-size: 12px;
	}
}

/*------------------------------------------------------------
	Recruit - Footer
------------------------------------------------------------*/

#footer-recruit .btn-wrap {
	background: #f4f4f4;
	padding: 60px;
}
#footer-recruit .btn-wrap .btn {
	max-width: 1480px;
	margin: auto;
	width: 100%;
	display: grid;
	gap: 20px;
}
#footer-recruit .btn-wrap .btn.column2 {
	grid-template-columns: 1fr 1fr;
}
#footer-recruit .btn-wrap .btn.column2 .cl2 {
	grid-column: 1 / 3;
}
#footer-recruit .btn-wrap .btn.column1 {
	grid-template-columns: 1fr;
}
#footer-recruit .btn-wrap .btn li {
	height: 160px;
}
#footer-recruit .btn-wrap .btn li a {
	display: flex;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: center;
	background: #fff;
	border: 1px solid #000;
	border-radius: 12px;
	transition: 0.3s;
	font-size: 20px;
	font-weight: 700;
	line-height: 30px;
}
#footer-recruit .btn-wrap .btn li a::after {
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent #000;
	margin-left: 12px;
}
#footer-recruit .btn-wrap .btn li a:hover {
	background: #ff0;
	border-color: #ff0;
}
#footer-recruit .btn-wrap .btn li.tel {
	background: #fff;
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 160px;
	justify-content: center;
	align-items: center;
	border-radius: 12px;
}
#footer-recruit .btn-wrap .btn li.tel h3 {
	font-size: 12px;
	line-height: 1;
	font-weight: 700;
}
#footer-recruit .btn-wrap .btn li.tel h2 {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 6px;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	font-size: 28px;
	line-height: 33px;
	margin: 12px 0;
}
#footer-recruit .btn-wrap .btn li.tel h2 img {
	width: 22px;
}
#footer-recruit .btn-wrap .btn li.tel p {
	font-size: 12px;
	line-height: 1;
}
#footer-recruit .news-wrap {
	padding: 80px 60px 100px;
}
#footer-recruit .news-wrap .flex {
	max-width: 850px;
	margin: auto;
	width: 100%;
	display: flex;
}
#footer-recruit .news-wrap .flex h2 {
	width: 176px;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	font-size: 34px;
	line-height: 40px;
}
#footer-recruit .news-wrap .flex ul {
	flex: 1;
	padding-top: 15px;
}
#footer-recruit .news-wrap .flex ul li a {
	display: grid;
	grid-template-columns: 88px auto;
	font-size: 14px;
	line-height: 24px;
}
#footer-recruit .news-wrap .flex ul li a:hover {
	text-decoration: underline;
}
#footer-recruit .news-wrap .flex ul li a .date {
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
}
#footer-recruit .news-wrap .flex ul li a .title {
	
}
@media screen and (max-width: 800px) {
	#footer-recruit .btn-wrap {
		padding: 60px 8.4vw;
	}
	#footer-recruit .btn-wrap .btn.column2 {
		grid-template-columns: 1fr;
	}
	#footer-recruit .btn-wrap .btn.column2 .cl2 {
		grid-column: 1 / 2;
	}

	#footer-recruit .news-wrap {
		padding: 80px 8.4vw 100px;
	}
	#footer-recruit .news-wrap .flex {
		flex-direction: column;
		gap: 30px;
	}
	#footer-recruit .news-wrap .flex ul {
		padding-top: 0;
	}
	#footer-recruit .news-wrap .flex ul li a {
		grid-template-columns: 1fr;
		gap: 5px;
	}

}

/*------------------------------------------------------------
	Recruit - Voice
------------------------------------------------------------*/
.recruit-title.first {
	padding-top: 142px;
	background: transparent;
}
#section-voice .recruit-content {
	margin-top: -116px;
	padding-bottom: 100px;
}
#section-voice .recruit-content .inner {
	max-width: 1026px;
	margin: auto;
	width: 100%;
}
#section-voice .recruit-content .thumb {
	padding-left: 440px;
}
#section-voice .recruit-content .thumb img {
	width: calc(100% + (50vw - 513px));
	max-width: calc(100% + (50vw - 513px));
}
#section-voice .recruit-content .txt {
	padding: 60px;
	max-width: 850px;
	background: #f4f4f4;
	margin-top: -272px;
}
#section-voice .recruit-content .txt .head {
	width: 380px;
	height: 280px;
}
#section-voice .recruit-content .txt .head h2 {
	font-size: 30px;
	line-height: 40px;
	font-weight: 700;
	margin-bottom: 20px;
}
#section-voice .recruit-content .txt .head h3 {
	font-weight: 700;
	font-size: 20px;
	line-height: 29px;
}
#section-voice .recruit-content .txt .head h3 small {
	font-size: 14px;
}
#section-voice .recruit-content .txt .head p {
	font-weight: 700;
	font-size: 12px;
	line-height: 18px;
}

#section-voice .recruit-content .txt .content {
	border-top: 1px solid #000;
	padding-top: 60px;
	font-size: 16px;
	line-height: 36px;
}
#section-timeschedule .recruit-content {
	padding-bottom: 200px;
}
#section-timeschedule .inner {
	max-width: 1026px;
	margin: auto;
	width: 100%;
}
#section-timeschedule .inner h2 {
	font-size: 22px;
	line-height: 33px;
	font-weight: 300;
	margin-bottom: 50px;
}
#section-timeschedule .inner h2::after {
	content: '';
	display: inline-block;
	width: 120px;
	height: 1px;
	background: currentcolor;
	margin-left: 10px;
	vertical-align: 5px;
}
#section-timeschedule .inner .grid {
	display: grid;
	grid-template-columns: calc((1006px - (100vw - 20px) / 3) / 2) calc((100vw - 20px) / 3) calc((1006px - (100vw - 20px) / 3) / 2);
	gap: 10px;
}
#section-timeschedule .inner .left,
#section-timeschedule .inner .right {
	position: relative;
}
#section-timeschedule .inner .center {
	padding-left: 40px;
	padding-right: 27px;
}
#section-timeschedule .inner .center ul {
	font-size: 14px;
	line-height: 24px;
	font-weight: 700;
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}
#section-timeschedule .inner .center ul li {
	min-height: 66px;
	display: grid;
	grid-template-columns: 106px auto;
	position: relative;
	overflow: hidden;
	padding-bottom: 18px;
}
#section-timeschedule .inner .center ul li:last-child {
	padding-bottom: 0;
	min-height: 0;
}
#section-timeschedule .inner .center ul li::before {
	content: '';
	display: block;
	width: 2px;
	height: 100%;
	top: 30px;
	left: 9px;
	position: absolute;
	background: #d6d6d6;
}
#section-timeschedule .inner .center ul li p {
	transform: translate(0,-3px);
}
#section-timeschedule .inner .center ul li .time {
	position: relative;
	padding-left: 30px;
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	font-size: 18px;
	line-height: 20px;
}
#section-timeschedule .inner .center ul li .time::before {
	content: '';
	display: block;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	border: 4px solid #000;
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
}


#section-timeschedule .inner .img1 {
	width: 260px;
	max-width: 100%;
}
#section-timeschedule .inner .img2 {
	width: calc((100vw - 20px) / 3);
	position: absolute;
	top: 150px;
	left: 0;
}
#section-timeschedule .inner .img3 {
	width: calc((100vw - 20px) / 3);
	position: absolute;
	bottom: -75px;
	right: 0;
}
#section-timeschedule figcaption {
	margin-top: 10px;
	font-size: 12px;
	line-height: 1;
	font-weight: 700;
}
#section-timeschedule .img3 figcaption {
	padding-left: 30px;
}

@media screen and (max-width: 800px) {
	.recruit-title.first {
		padding-top: 94px;
	}
	#section-voice .recruit-content {
		margin-top: 0;
		padding-bottom: 70px;
	}
	#section-voice .recruit-content .thumb {
		padding-left: 15.2vw;
	}
	#section-voice .recruit-content .thumb img {
		width: 100%;
		max-width: 100%;
	}
	#section-voice .recruit-content .txt {
		margin-top: -100px;
		padding: 146px 8.4vw 60px;
	}
	#section-voice .recruit-content .txt .head {
		height: auto;
		width: 100%;
		padding-bottom: 25px;
	}
	#section-voice .recruit-content .txt .head h2 {
		font-size: 26px;
		line-height: 36px;
	}
	#section-voice .recruit-content .txt .content {
		padding-top: 25px;
		font-size: 14px;
		line-height: 2;
	}
	#section-timeschedule .recruit-content {
		padding-bottom: 120px;
	}
	#section-timeschedule .inner {
		padding: 0 8.4vw;
	}
	#section-timeschedule .inner h2::after {
		width: 104px;
	}
	#section-timeschedule .inner .left,
	#section-timeschedule .inner .right {
		display: none;
	}
	#section-timeschedule .inner .center {
		padding: 0;
	}
	#section-timeschedule .inner .center ul {
		font-size: 12px;
		line-height: 22px;
	}
	#section-timeschedule .inner .center ul li .time {
		font-size: 16px;
		line-height: 19px;
	}
	#section-timeschedule .inner .center ul li p span {
		display: block;
		margin-top: 15px;
	}
	#section-timeschedule .inner .grid {
		grid-template-columns: 1fr;
	}
}
/*------------------------------------------------------------
	Recruit - Guideline
------------------------------------------------------------*/
#section-guideline .recruit-content {
	padding: 0 60px 150px;
}
#section-guideline .recruit-content .inner {
	max-width: 850px;
	margin: auto;
	width: 100%;
}
#section-guideline .recruit-content .inner h1 {
	font-size: 26px;
	font-weight: 700;
	line-height: 36px;
	margin-bottom: 30px;
}
#section-guideline .recruit-content .inner p {
	font-size: 14px;
	line-height: 24px;
}
#section-guideline .recruit-content .inner table {
	width: 100%;
	margin-top: 50px;
}
#section-guideline .recruit-content .inner table th {
	background: #f4f4f4;
	font-size: 14px;
	line-height: 24px;
	padding: 12px 20px;
	text-align: left;
	vertical-align: top;
	width: 220px;
	border-bottom: 1px solid #fff;
}
#section-guideline .recruit-content .inner table td {
	font-size: 14px;
	line-height: 24px;
	padding: 12px 20px;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid #e9e9e9;
}

@media screen and (max-width: 800px) {
	#section-guideline .recruit-content {
		padding: 0 8.4vw 100px;
	}
	#section-guideline .recruit-content .inner table tr {
		width: 100%;
		display: block;
	}
	#section-guideline .recruit-content .inner table th {
		width: 100%;
		display: block;
		border: none;
	}
	#section-guideline .recruit-content .inner table td {
		display: block;
		width: 100%;
		border: none;
	}
}

/*------------------------------------------------------------
	Recruit - Entry
------------------------------------------------------------*/

#section-entry .recruit-content {
	padding: 0 60px 150px;
}
#section-entry .form-content {
	width: 100%;
	max-width: 1026px;
	margin: auto;
	font-size: 14px;
}
#section-entry .form-content p.description {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.71;
	margin-top: 0;
}
#section-entry .form-content h2 {
	position: relative;
	font-size: 26px;
	font-weight: 700;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: -.02em;
	margin-top: 80px;
	margin-bottom: 50px;
}
#section-entry .form-content h2 span {
	display: inline-block;
	padding-right: 1em;
	background-color: #fff;
	z-index: 2;
	position: relative;
}
#section-entry .form-content h2::after {
	content: '';
	display: block;
	background: #c8c8c8;
	width: calc(50% + 50vw);
	height: 1px;
	position: absolute;
	left: 0;
	bottom: .3em;
	z-index: 1;
}


#section-entry .form-content dl {
	position: relative;
	width: 560px;
	display: flex;
	justify-content: space-between;
}
#section-entry .form-content dl::after {
	content: '';
	display: block;
	height: 1px;
	width: 100%;
	position: absolute;
	bottom: 1em;
	left: 0;
	border-top: 2px dotted #363636;
}
#section-entry .form-content dl.txts {
	background: none;
}
#section-entry .form-content dl dt {
	position: relative;
	z-index: 1;
	font-size: 18px;
	font-weight: 700;
	line-height: 2.33;
	white-space: nowrap;
	display: inline-block;
	background-color: #fff;
	padding-right: .5em;
}
#section-entry .form-content dl dd {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	white-space: nowrap;
	display: inline-block;
	font-family: 'Roboto', sans-serif;
	font-size: 28px;
	line-height: 1.5;
	background-color: #fff;
	padding-left: .5em;
}
#section-entry .form-content  dl dd img {
	width: 42px;
}
.entry #section-entry .form-content form {
	margin-top: 20px;
}
#section-entry .form-content .req {
	color: #d20e00;
}
#section-entry .form-content p {
	font-size: 14px;
	line-height: 24px;
	margin-bottom: 40px;
}
#section-entry .form-content table {
	width: 100%;
}
#section-entry .form-content th {
	text-align: left;
	vertical-align: top;
	font-size: 14px;
	font-weight: 700;
	line-height: 24px;
	padding-top: .5em;
	padding-bottom: 40px;
	width: 250px;
}

#section-entry .form-content td {
	padding-bottom: 40px;
}
#section-entry .form-content input[type=text],
#section-entry .form-content input[type=email],
#section-entry .form-content input[type=tel] {
	-webkit-appearance: none;
	box-shadow: none;
	padding: .5em 1em;
	color: #363636;
	font-size: 14px;
	line-height: 1.7;
	background-color: #fff;
	max-width: 600px;
	width: 100%;
	border: 1px solid #c8c8c8;
	border-radius: 4px;
}
#section-entry .form-content .your-acceptance-wrap label {
	position: relative;
	display: block;
	cursor: pointer;
}
#section-entry .form-content input[type=checkbox] {
	position: absolute;
	opacity: 0;
}
#section-entry .form-content input[type=checkbox] + span {
	position: relative;
	padding: 0 0 0 30px;
	display: block;
	min-width: 100%;
}
#section-entry .form-content input[type=checkbox] + span::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -.7em;
	height: 1.4em;
	width: 1.4em;
	box-sizing: border-box;
	background-color: #fff;
	border: 1px solid #b4b4b4;
	border-radius: 0;
	z-index: 1;
	transition: .3s;
}
#section-entry .form-content input[type=checkbox]:checked + span::before {
	border-color: #c8c8c8;
	background-color: #c8c8c8;
}
#section-entry .form-content input[type=checkbox] + span::after {
	content: '';
	opacity: 0;
	box-sizing: border-box;
	margin-top: -1px;
	width: .8em;
	height: .5em;
	border-left: 3px solid #fff;
	border-bottom: 3px solid #fff;
	position: absolute;
	top: .8em;
	left: .3em;
	transform: translateY(-50%) rotate(-45deg);
	z-index: 2;
	transition: .3s;
}
#section-entry .form-content input[type=checkbox]:checked + span::after {
	opacity: 1;
}
#section-entry .form-content textarea {
	-webkit-appearance: none;
	box-shadow: none;
	padding: .5em 1em;
	color: #363636;
	font-size: 14px;
	line-height: 1.7;
	height: 240px;
	background-color: #fff;
	max-width: 780px;
	width: 100%;
	border: 1px solid #c8c8c8;
	border-radius: 4px;
}
#section-entry .form-content .radio-list-item {
	width: 100px;
	display: inline-block;
}
#section-entry .form-content .radio-list-item label {
	position: relative;
	display: block;
}
#section-entry .form-content input[type=radio] {
	position: absolute;
	opacity: 0;
}
#section-entry .form-content input[type=radio] + span {
	position: relative;
	padding: .2em 0 .2em 30px;
	display: block;
	min-width: 100%;
}
#section-entry .form-content input[type=radio] + span::before {
	content: '';
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -10px;
	height: 20px;
	width: 20px;
	background-color: #fff;
	border: 1px solid #c8c8c8;
	border-radius: 50%;
	z-index: 1;
}
#section-entry .form-content input[type=radio] + span::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -10px;
	height: 20px;
	width: 20px;
	background-color: #999;
	border-radius: 50%;
	z-index: 2;
	opacity: 0;
	transform: scale(.6);
	transition: .3s;
}
#section-entry .form-content input[type=radio]:checked + span::after {
	opacity: 1;
}
#section-entry .form-content .terms {
	width: 100%;
	max-width: 780px;
	border: 1px solid #c8c8c8;
	border-radius: 4px;
	padding: .5em 1em;
	background-color: #fff;
	overflow: hidden;
	height: 156px;
	margin-top: 1.4em;
	margin-bottom: 30px;
}
#section-entry .form-content .terms .inner {
	width: 100%;
	height: 100%;
	overflow: scroll;
	padding-top: .5em;
	padding-right: 1em;
}
#section-entry .form-content .terms .inner p {
	font-size: 12px;
	line-height: 1.5;
	margin: 0;
}
#section-entry .form-content .terms .inner h3 {
	font-size: 12px;
	font-weight: 700;
	line-height: 1.5;
}
#section-entry .form-content .submit {
	text-align: center;
	padding-top: 40px;
	position: relative;
	margin-top: 0;
}
#section-entry .form-content input[type=submit] {
	text-align: center;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	box-shadow: none;
	font-size: 18px;
	font-weight: 700;
	padding: 0;
	color: #fff;
	line-height: 4;
	letter-spacing: -.02em;
	border: none;
	border-radius: 0;
	background-color: #363636;
	width: 360px;
	max-width: 100%;
	cursor: pointer;
	transition: .3s;
}
#section-entry .form-content input[type=submit]:hover {
	opacity: .5;
}
#section-entry .form-content input[type=submit]:disabled {
	background-color: #c8c8c8;
	cursor: not-allowed;
}
#section-entry .form-content input[type=submit]:disabled:hover {
	opacity: 1;
}

@media screen and (max-width: 800px) {
	#section-entry .recruit-content {
		padding: 0 8.4vw 100px;
	}
	#section-entry .form-content p {
		margin-bottom: 20px;
	}
	#section-entry .form-content th {
		padding: 0;
		display: block;
		width: 100%;
	}
	#section-entry .form-content td {
		padding: 5px 0 15px;
		display: block;
		width: 100%;
	}
	#section-entry .form-content textarea {
		margin-bottom: 70px;
	}
}