@charset "utf-8";
		.page_link_section__line {
			display: flex;
			justify-content: space-between;
			align-items: center;
			width: 100%;
			height: auto;
			margin: calc((40 / var(--vw)) * 100vw) auto 0;
		}
			.page_link_section__line__btn_wrap {
				width: calc((560 / 1200) * 100%);
				height: calc((100 / var(--vw)) * 100vw);
			}
				.page_link_section__line__btn {
					display: flex;
					justify-content: center;
					align-items: center;
					width: 100%;
					height: 100%;
					border-radius: 9999px;
					background-color: #06C755;
					position: relative;
				}
					.page_link_section__line__btn__icon {
						width: calc((52 / var(--vw)) * 100vw);
						height: auto;
						position: absolute;
						top: calc((27 / 100) * 100%);
						left: calc((24 / 560) * 100%);
					}
					.page_link_section__line__btn__text {
						font-size: calc((28 / var(--vw)) * 100vw);
						font-weight: 700;
						line-height: 1.4;
						letter-spacing: 0em;
						color: var(--color--white);
					}
					.page_link_section__line__btn__arrow {
						width: calc((28 / var(--vw)) * 100vw);
						height: calc((14 / var(--vw)) * 100vw);
						background-color: var(--color--white);
						mask-image: url(../image/btn_arrow_line.svg);
						mask-size: contain;
						mask-position: center;
						mask-repeat: no-repeat;
						position: absolute;
						top: calc((42 / 100) * 100%);
						right: calc((43 / 560) * 100%);
					}
			@media (any-hover: hover) {
				.page_link_section__line__btn {
					transition: var(--transition--opacity);
				}
				.page_link_section__line__btn:hover {
					opacity: .7;
				}
					.page_link_section__line__btn__arrow {
						transition: var(--transition--transform);
					}
					.page_link_section__line__btn:hover .page_link_section__line__btn__arrow {
						transform: translate(calc((10 / var(--vw)) * 100vw), 0);
					}
			}
			.page_link_section__line__details {
				width: calc((558 / 1200) * 100%);
			}
				.page_link_section__line__details__text {
					width: 100%;
					height: auto;
					margin-bottom: calc((19 / var(--vw)) * 100vw);
					font-size: calc((14 / var(--vw)) * 100vw);
					font-weight: 700;
					line-height: 2;
					letter-spacing: 0.1em;
				}
				.page_link_section__line__details__note {
					width: 100%;
					height: auto;
					font-size: calc((14 / var(--vw)) * 100vw);
					font-weight: 500;
					line-height: 1.8;
					letter-spacing: 0.03em;
				}

#brand_select {
	width: 100%;
	height: auto;
	padding: calc((145 / var(--vw)) * 100vw) 0 calc((130 / var(--vw)) * 100vw);
}
	.brand_select__inner {
		width: calc((1096 / var(--vw)) * 100vw);
		height: auto;
		margin: 0 auto;
	}
		.brand_select__list {
			display: grid;
			grid-template-columns: repeat(7, 1fr);
			gap: calc((24 / var(--vw)) * 100vw);
		}
			.brand_select__list__item {
				width: 100%;
				height: auto;
				opacity: 0;
				transform: translate(0, calc((20 / var(--vw)) * 100vw));
				-webkit-transform: translate(0, calc((20 / var(--vw)) * 100vw));
				transition: 1s cubic-bezier(0.490, 0.035, 0.140, 0.910);
			}
			._inview .brand_select__list__item {
				opacity: 1;
				transform: translate(0, 0);
				-webkit-transform: translate(0, 0);
			}
				.brand_select__list__item__btn,
				.brand_select__list__item__link {
					display: block;
					width: 100%;
					height: auto;
					aspect-ratio: 1 / 1;
					background-color: var(--color--white);
					border: solid calc((1 / var(--vw)) * 100vw) var(--color--mid_gray);
					box-shadow: 0 calc((3 / var(--vw)) * 100vw) calc((10 / var(--vw)) * 100vw) rgba(0, 0, 0, 0.06);
					position: relative;
					cursor: pointer;
					transition: var(--transition--bg);
				}
				._active .brand_select__list__item__btn {
					background-color: var(--color--mid_gray);
				}
					.brand_select__list__item__image {
						width: 100%;
						height: auto;
					}
					.brand_select__list__item__icon {
						width: calc((12 / var(--vw)) * 100vw);
						height: calc((12 / var(--vw)) * 100vw);
						background-color: var(--color--gray);
						mask-size: contain;
						mask-position: center;
						mask-repeat: no-repeat;
						position: absolute;
						bottom: calc((9 / var(--vw)) * 100vw);
						right: calc((9 / var(--vw)) * 100vw);
					}
					.brand_select__list__item__icon._arrow {
						mask-image: url(../image/flow/mid-career/brand_select-icon_arrow.svg);
					}
					.brand_select__list__item__icon._external_link {
						mask-image: url(../image/flow/mid-career/brand_select-icon_external_link.svg);
					}
			@media (any-hover: hover) {
				.brand_select__list__item__btn:hover,
				.brand_select__list__item__link:hover {
					background-color: var(--color--light_gray);
				}
			}

#job_description {
	width: 100%;
	height: auto;
	padding: calc((54 / var(--vw)) * 100vw) 0 calc((100 / var(--vw)) * 100vw);
	border-radius: calc((60 / var(--vw)) * 100vw) calc((60 / var(--vw)) * 100vw) 0 0;
	background-color: var(--color--light_gray);
	position: relative;
	overflow: hidden;
	opacity: 0;
	transform: translate(0, calc((20 / var(--vw)) * 100vw));
	-webkit-transform: translate(0, calc((20 / var(--vw)) * 100vw));
	transition: 1s cubic-bezier(0.490, 0.035, 0.140, 0.910);
}
#job_description._inview {
	opacity: 1;
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
}
	#job_description::after {
		content: '';
		display: block;
		width: 100%;
		height: calc((1194 / var(--vw)) * 100vw);
		background-color: var(--color--gray);
		clip-path: ellipse(100% 100% at 100% 100%);
		opacity: .05;
		position: absolute;
		bottom: 0;
		right: 0;
		z-index: 1;
	}
	.job_description__inner {
		width: calc((1000 / var(--vw)) * 100vw);
		height: auto;
		margin: 0 auto;
		position: relative;
		z-index: 2;
	}
		#job_description .section_heading {
			opacity: 1;
		}
		#job_description ._un_active .section_heading {
			opacity: 0;
			transition: opacity .3s ease;
		}
		#job_description ._active .section_heading {
			opacity: 1;
			transition: opacity .5s ease;
		}
		.job_description__item {
			width: 100%;
			height: auto;
			margin: 0 auto;
			opacity: 1;
		}
			.job_description__list {
				display: flex;
				flex-direction: column;
				gap: calc((20 / var(--vw)) * 100vw);
				width: 100%;
				height: auto;
				margin: calc((60 / var(--vw)) * 100vw) 0 0;
			}
			._un_active .job_description__list {
				opacity: 0;
				transition: opacity .3s ease;
			}
			._active .job_description__list {
				opacity: 1;
				transition: opacity .5s ease;
			}
				.job_description__list__item {
					display: flex;
					justify-content: space-between;
					align-items: flex-start;
					width: 100%;
					height: auto;
					padding: 0 calc((20 / var(--vw)) * 100vw) calc((20 / var(--vw)) * 100vw);
					border-bottom: solid 1px var(--color--gray);
					opacity: 0;
					transform: translate(0, calc((20 / var(--vw)) * 100vw));
					-webkit-transform: translate(0, calc((20 / var(--vw)) * 100vw));
					transition: 1s cubic-bezier(0.490, 0.035, 0.140, 0.910);
				}
				.job_description__list__item:nth-of-type(2) {
					transition-delay: .1s;
				}
				.job_description__list__item:nth-of-type(3) {
					transition-delay: .15s;
				}
				.job_description__list__item:nth-of-type(4) {
					transition-delay: .2s;
				}
				.job_description__list__item:nth-of-type(5) {
					transition-delay: .25s;
				}
				.job_description__list__item:nth-of-type(6) {
					transition-delay: .3s;
				}
				.job_description__list__item:nth-of-type(7) {
					transition-delay: .35s;
				}
				.job_description__list__item:nth-of-type(8) {
					transition-delay: .4s;
				}
				.job_description__list__item:nth-of-type(9) {
					transition-delay: .45s;
				}
				.job_description__list__item:nth-of-type(10) {
					transition-delay: .5s;
				}
				.job_description__list__item:nth-of-type(11) {
					transition-delay: .55s;
				}
				.job_description__list__item:nth-of-type(12) {
					transition-delay: .6s;
				}
				.job_description__list__item:nth-of-type(13) {
					transition-delay: .65s;
				}
				.job_description__list__item:nth-of-type(14) {
					transition-delay: .7s;
				}
				.job_description__list._inview .job_description__list__item {
					opacity: 1;
					transform: translate(0, 0);
					-webkit-transform: translate(0, 0);
				}
					.job_description__list__item dt {
						width: calc((434 / 960) * 100%);
						height: auto;
						font-size: calc((18 / var(--vw)) * 100vw);
						font-weight: 500;
						line-height: 1.4;
						letter-spacing: 0.05em;
					}
					.job_description__list__item dd {
						width: calc((526 / 960) * 100%);
						height: auto;
						font-size: calc((14 / var(--vw)) * 100vw);
						font-weight: 500;
						line-height: 1.8;
						letter-spacing: 0.03em;
					}

#flow {
	width: 100%;
	height: auto;
	padding: calc((120 / var(--vw)) * 100vw) 0 calc((80 / var(--vw)) * 100vw);
}
	.flow__inner {
		width: calc((1200 / var(--vw)) * 100vw);
		height: auto;
		margin: 0 auto;
	}
		.flow__list_wrap {
			width: 100%;
			height: auto;
			position: relative;
			z-index: 2;
		}
			.flow__list__line {
				width: 0;
				height: calc(100% - ((170 / var(--vw)) * 100vw));
				border-left: dashed calc((2 / var(--vw)) * 100vw) var(--color--red);
				position: absolute;
				left: calc((87 / var(--vw)) * 100vw);
				top: calc((85 / var(--vw)) * 100vw);
				z-index: -1;
				clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
			}
			.flow__list {
				display: flex;
				flex-direction: column;
				gap: calc((60 / var(--vw)) * 100vw);
				width: 100%;
				height: auto;
				margin: calc((80 / var(--vw)) * 100vw) 0 0;
			}
				.flow__list__item {
					display: flex;
					justify-content: space-between;
					align-items: center;
					width: 100%;
					height: auto;
					padding: calc((14 / var(--vw)) * 100vw) 0;
					border: solid calc((1 / var(--vw)) * 100vw) var(--color--mid_gray);
					background-color: var(--color--white);
					border-radius: calc((10 / var(--vw)) * 100vw);
				}
					.flow__list__item__number {
						display: flex;
						flex-direction: column;
						justify-content: center;
						align-items: center;
						width: calc(((170 / 1198) * 100%));
						height: calc((144 / var(--vw)) * 100vw);
						position: relative;
					}
						.flow__list__item__number::after {
							content: '';
							display: block;
							width: 0;
							height: 100%;
							border-right: solid calc((1 / var(--vw)) * 100vw) var(--color--mid_gray);
							position: absolute;
							top: 0;
							right: 0;
						}
						.flow__list__item__number__sub_text {
							margin-bottom: calc((7 / var(--vw)) * 100vw);
							font-size: calc((12 / var(--vw)) * 100vw);
							font-weight: 700;
							line-height: 1;
							letter-spacing: 0.03em;
							text-align: center;
							color: var(--color--red);
						}
						.flow__list__item__number__main_text {
							font-size: calc((30 / var(--vw)) * 100vw);
							font-weight: 700;
							line-height: 1;
							letter-spacing: 0.03em;
							text-align: center;
							color: var(--color--red);
						}
					.flow__list__item__contents {
						display: flex;
						justify-content: space-between;
						align-items: center;
						width: calc(((1028 / 1198) * 100%));
						height: auto;
					}
						.flow__list__item__image {
							display: flex;
							justify-content: center;
							align-items: center;
							width: calc((329 / var(--vw)) * 100vw);
							height: auto;
							opacity: 0;
							transform: translate(0, calc((20 / var(--vw)) * 100vw));
							-webkit-transform: translate(0, calc((20 / var(--vw)) * 100vw));
							transition: 1s cubic-bezier(0.490, 0.035, 0.140, 0.910);
						}
						.flow__list__item._inview .flow__list__item__image {
							opacity: 1;
							transform: translate(0, 0);
							-webkit-transform: translate(0, 0);
						}
							.flow__list__item__image img {
								height: auto;
							}
							._01 .flow__list__item__image img {
								width: calc((210 / var(--vw)) * 100vw);
								margin-top: calc((13 / var(--vw)) * 100vw);
							}
							._02 .flow__list__item__image img {
								width: calc((139 / var(--vw)) * 100vw);
								margin-bottom: calc((2 / var(--vw)) * 100vw);
							}
							._03 .flow__list__item__image img {
								width: calc((130 / var(--vw)) * 100vw);
								margin-top: calc((6 / var(--vw)) * 100vw);
							}
							._04 .flow__list__item__image img {
								width: calc((142 / var(--vw)) * 100vw);
								margin-bottom: calc((2 / var(--vw)) * 100vw);
							}
							._05 .flow__list__item__image img {
								width: calc((169 / var(--vw)) * 100vw);
							}
						.flow__list__item__desc {
							flex: 1;
							height: auto;
							padding-left: calc((14 / var(--vw)) * 100vw);
							opacity: 0;
							transform: translate(0, calc((20 / var(--vw)) * 100vw));
							-webkit-transform: translate(0, calc((20 / var(--vw)) * 100vw));
							transition: 1s cubic-bezier(0.490, 0.035, 0.140, 0.910);
						}
						.flow__list__item._inview .flow__list__item__desc {
							opacity: 1;
							transform: translate(0, 0);
							-webkit-transform: translate(0, 0);
						}
							.flow__list__item__desc dt {
								width: 100%;
								height: auto;
								margin-bottom: calc((4 / var(--vw)) * 100vw);
								font-size: calc((30 / var(--vw)) * 100vw);
								font-weight: 700;
								line-height: 1.4;
								letter-spacing: 0em;
								color: var(--color--red);
							}
							.flow__list__item__desc dd {
								width: 100%;
								height: auto;
								font-size: calc((14 / var(--vw)) * 100vw);
								font-weight: 700;
								line-height: 1.8;
								letter-spacing: 0.1em;
							}
		.flow__btn_wrap {
			margin: calc((100 / var(--vw)) * 100vw) auto calc((20 / var(--vw)) * 100vw);
		}

/* 新卒募集要項 */
#new_graduates_entry_section_01 {
	width: 100%;
	height: auto;
	padding: calc((118 / var(--vw)) * 100vw) 0 calc((100 / var(--vw)) * 100vw);
}
#new_graduates_entry_section_02 {
	width: 100%;
	height: auto;
	padding: 0 0 calc((120 / var(--vw)) * 100vw);
}
				#new_graduates_entry_section_01 .page_link_section__list__item__link,
				#new_graduates_entry_section_02 .page_link_section__list__item__link {
					background-color: var(--color--red);
				}

/* PC ================================================== */
@media all and (min-width: 769px){

}

/* Tablet ================================================== */
@media all and (max-width: 768px){
		.page_link_section__line {
			flex-direction: column;
			justify-content: flex-start;
			gap: calc((20 / var(--vw)) * 100vw);
		}
			.page_link_section__line__btn_wrap {
				width: calc((310 / 330) * 100%);
				height: calc((70 / var(--vw)) * 100vw);
			}
				.page_link_section__line__btn {
					padding-left: calc((10 / var(--vw)) * 100vw);
				}
					.page_link_section__line__btn__icon {
						width: calc((37 / var(--vw)) * 100vw);
						top: calc((19 / 70) * 100%);
						left: calc((23 / 310) * 100%);
					}
					.page_link_section__line__btn__text {
						font-size: calc((18 / var(--vw)) * 100vw);
					}
					.page_link_section__line__btn__arrow {
						width: calc((19 / var(--vw)) * 100vw);
						height: calc((10 / var(--vw)) * 100vw);
						mask-image: url(../image/btn_arrow_line.svg);
						top: calc((31 / 70) * 100%);
						right: calc((21 / 310) * 100%);
					}
			.page_link_section__line__details {
				width: calc((290 / 330) * 100%);
			}
				.page_link_section__line__details__text {
					margin-bottom: calc((10 / var(--vw)) * 100vw);
					font-size: calc((14 / var(--vw)) * 100vw);
					line-height: 1.8;
					letter-spacing: 0.03em;
				}
				.page_link_section__line__details__note {
					font-size: calc((12 / var(--vw)) * 100vw);
				}

#brand_select {
	padding: calc((40 / var(--vw)) * 100vw) 0 calc((60 / var(--vw)) * 100vw);
}
	.brand_select__inner {
		width: calc((330 / var(--vw)) * 100%);
	}
		.brand_select__list {
			grid-template-columns: repeat(1, 1fr);
			gap: calc((10 / var(--vw)) * 100vw);
		}
			.brand_select__list__item:nth-of-type(2) {
				transition-delay: .03s;
			}
			.brand_select__list__item:nth-of-type(2) {
				transition-delay: .06s;
			}
			.brand_select__list__item:nth-of-type(3) {
				transition-delay: .09s;
			}
			.brand_select__list__item:nth-of-type(4) {
				transition-delay: .12s;
			}
			.brand_select__list__item:nth-of-type(5) {
				transition-delay: .15s;
			}
			.brand_select__list__item:nth-of-type(6) {
				transition-delay: .18s;
			}
			.brand_select__list__item:nth-of-type(7) {
				transition-delay: .21s;
			}
				.brand_select__list__item__btn,
				.brand_select__list__item__link {
					aspect-ratio: 330 / 68;
				}
					.brand_select__list__item__icon {
						bottom: calc((19 / var(--vw)) * 100vw);
						right: calc((12 / var(--vw)) * 100vw);
					}

#job_description {
	padding: calc((50 / var(--vw)) * 100vw) 0 calc((60 / var(--vw)) * 100vw);
	border-radius: calc((40 / var(--vw)) * 100vw) calc((40 / var(--vw)) * 100vw) 0 0;
}
	#job_description::after {
		display: none;
	}
	.job_description__inner {
		width: calc((330 / var(--vw)) * 100%);
	}
			.job_description__list {
				gap: calc((40 / var(--vw)) * 100vw);
				margin: calc((40 / var(--vw)) * 100vw) 0 0;
			}
				.job_description__list__item {
					flex-direction: column;
					justify-content: flex-start;
					align-items: stretch;
					padding: 0 calc((20 / var(--vw)) * 100vw) calc((40 / var(--vw)) * 100vw);
				}
					.job_description__list__item dt {
						width: 100%;
						padding-left: calc((11 / var(--vw)) * 100vw);
						margin-bottom: calc((10 / var(--vw)) * 100vw);
						font-size: calc((16 / var(--vw)) * 100vw);
						position: relative;
					}
						.job_description__list__item dt::before {
							content: '';
							display: block;
							width: calc((3 / var(--vw)) * 100vw);
							height: calc((16 / var(--vw)) * 100vw);
							background-color: var(--color--red);
							position: absolute;
							top: calc((4 / var(--vw)) * 100vw);
							left: calc((1 / var(--vw)) * 100vw);
						}
					.job_description__list__item dd {
						width: 100%;
					}

#flow {
	padding: calc((60 / var(--vw)) * 100vw) 0 calc((40 / var(--vw)) * 100vw);
}
	.flow__inner {
		width: calc((330 / var(--vw)) * 100%);
	}
			.flow__list__line {
				height: calc(100% - ((255 / var(--vw)) * 100vw));
				left: calc((34 / var(--vw)) * 100vw);
				top: calc((114 / var(--vw)) * 100vw);
			}
			.flow__list {
				gap: calc((20 / var(--vw)) * 100vw);
				margin: calc((30 / var(--vw)) * 100vw) 0 0;
			}
				.flow__list__item {
					align-items: stretch;
					padding: calc((20 / var(--vw)) * 100vw) 0;
				}
					.flow__list__item__number {
						width: calc(((67 / 328) * 100%));
						height: auto;
					}
						.flow__list__item__number__sub_text {
							margin-bottom: calc((1 / var(--vw)) * 100vw);
							font-size: calc((10 / var(--vw)) * 100vw);
						}
						.flow__list__item__number__main_text {
							font-size: calc((22 / var(--vw)) * 100vw);
						}
					.flow__list__item__contents {
						flex-direction: column;
						justify-content: flex-start;
						align-items: stretch;
						width: calc((263 / 328) * 100%);
					}
						.flow__list__item__image {
							width: 100%;
						}
							._01 .flow__list__item__image img {
								width: calc((159 / var(--vw)) * 100vw);
								margin-top: calc((15 / var(--vw)) * 100vw);
								margin-bottom: calc((10 / var(--vw)) * 100vw);
							}
							._02 .flow__list__item__image img {
								width: calc((91 / var(--vw)) * 100vw);
								margin-top: calc((9 / var(--vw)) * 100vw);
								margin-bottom: calc((18 / var(--vw)) * 100vw);
							}
							._03 .flow__list__item__image img {
								width: calc((95 / var(--vw)) * 100vw);
								margin-top: calc((13 / var(--vw)) * 100vw);
								margin-bottom: calc((18 / var(--vw)) * 100vw);
							}
							._04 .flow__list__item__image img {
								width: calc((93 / var(--vw)) * 100vw);
								margin-top: calc((11 / var(--vw)) * 100vw);
								margin-bottom: calc((18 / var(--vw)) * 100vw);
							}
							._05 .flow__list__item__image img {
								width: calc((123 / var(--vw)) * 100vw);
								margin-top: calc((5 / var(--vw)) * 100vw);
								margin-bottom: calc((18 / var(--vw)) * 100vw);
							}
						.flow__list__item__desc {
							flex: initial;
							width: 100%;
							padding: 0 calc((20 / var(--vw)) * 100vw);
						}
							.flow__list__item__desc dt {
								margin-bottom: calc((5 / var(--vw)) * 100vw);
								font-size: calc((20 / var(--vw)) * 100vw);
							}
							.flow__list__item__desc dd {
								font-size: calc((14 / var(--vw)) * 100vw);
								line-height: 1.5;
								letter-spacing: 0.03em;
							}
		.flow__btn_wrap {
			margin: calc((40 / var(--vw)) * 100vw) auto calc((20 / var(--vw)) * 100vw);
		}

/* 新卒募集要項 */
#new_graduates_entry_section_01 {
	padding: calc((60 / var(--vw)) * 100vw) 0 calc((40 / var(--vw)) * 100vw);
}
#new_graduates_entry_section_02 {
	padding: 0 0 calc((30 / var(--vw)) * 100vw);
}
}

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

}