/* -----------------------------------------------
= main
----------------------------------------------- */
.main {
	background: #fff;
	overflow: clip;
}
/* -----------------------------------------------
= kv
----------------------------------------------- */
.kv {
	position: relative;
	min-height: 150px;
}
.kv .breadcrumbs {
	position: absolute;
	top: 0;
	left: 5px;
	z-index: 1;
	color: #fff;
}
.kv .breadcrumbs li + li::before {
	background: rgba(255,255,255,.6);
}
.kv h1 {
	position: absolute;
	left: 15px;
	bottom: 15px;
	z-index: 1;
	color: #fff;
}
.kv h1 .en {
	margin-bottom: 12px;
	display: block;
	position: relative;
	font-family: var(--fig);
	font-size: calc(1.2rem / 1.6);
	font-weight: 600;
	line-height: 1;
	overflow: hidden;
}
.kv h1 .jp {
	display: block;
	font-size: calc(2.4rem / 1.6);
	font-weight: 700;
	line-height: 1.2;
	overflow: hidden;
}
.kv .img {
	overflow: hidden;
}
.kv .img img {
	height: 150px;
	object-fit: cover;
	object-position: 58% 0;
}
.kv.js-inview .img img {
	transform: scale(1.2);
	transition: transform 2.4s;
}
.kv.js-inview.is-show .img img {
	transform: scale(1);
}
@media print, screen and (min-width: 768px) {/* PC */
.kv {
	min-height: 460px;
	padding-left: 40px;
}
.kv .breadcrumbs {
	top: 20px;
	left: 60px;
}
.kv h1 {
	left: 80px;
	right: 80px;
	bottom: 30px;
}
.kv h1 .en {
	margin-bottom: 12px;
	font-size: calc(1.8rem / 1.6);
}
.kv h1 .jp {
	font-size: calc(4.6rem / 1.6);
}
.kv .img img {
	height: 460px;
}
}/* @media */
@media print, screen and (max-width: 1440px) and (min-width: 768px) {
.kv h1 .jp {
	font-size: calc(4.2rem / 1.6);
}
}/* @media */
/* -----------------------------------------------
= container
----------------------------------------------- */
@media print, screen and (min-width: 768px) {/* PC */
.container {
	display: flex;
	gap: 0 calc(98 / 1360 * 100%);
	position: relative;
	max-width: 1360px;
	margin-inline: auto;
	padding: 120px 20px 0;
}
.container::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
	width: 100%;
	height: 1px;
	border-bottom: 1px solid #e2e2e7;
}
.container .side {
	max-width: calc(222 / 1360 * 100%);
	width: 222px;
	margin-bottom: 120px;
}
.container .contents {
	flex: 1;
	min-width: 1px;
}
}/* @media */
@media print, screen and (max-width: 1023px) and (min-width: 768px) {/* TABLET */
.container .side {
	display: none;
}
}/* @media */
/* -----------------------------------------------
= side
----------------------------------------------- */
.side {
	padding: 45px 20px;
}
.side h2 {
	padding-bottom: 30px;
	border-bottom: 1px solid #e2e2e7;
	font-family: var(--fig);
	font-size: calc(2.1rem / 1.6);
	font-weight: 600;
	letter-spacing: 0;
}
.side > nav > ul > li > a {
	display: block;
	position: relative;
	padding: 16px 30px 16px 0;
	border-bottom: 1px solid #e2e2e7;
	font-size: calc(1.2rem / 1.6);
	font-weight: 700;
	line-height: calc(19 / 12);
}
.side > nav > ul > li > a::before,
.side > nav > ul > li > a::after {
	content: "";
	position: absolute;
}
.side > nav > ul > li > a::before {
	top: calc(50% - 11px);
	right: 0;
	width: 22px;
	height: 22px;
	background: linear-gradient(120deg,var(--red),#7d1e69 65%,var(--blue));
	border-radius: 50%;
}
.side > nav > ul > li > a::after {
	top: calc(50% - 3px);
	right: 8px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(135deg);
}
.side .sub {
	padding-block: 10px;
	border-bottom: 1px solid #e2e2e7;
}
.side .sub li {
	margin-block: 10px;
}
.side .sub li a {
	display: block;
	position: relative;
	padding-right: 14px;
	font-size: calc(1.2rem / 1.6);
}
.side .sub li a::after {
	content: "";
	position: absolute;
	top: calc(50% - 3px);
	right: 6px;
	width: 5px;
	height: 5px;
	border-top: 1px solid var(--black);
	border-right: 1px solid var(--black);
	transform: rotate(135deg);
}
.side li a span {
	display: inline-block;
	position: relative;
	color: transparent;
}
.side li a span::after {
	content: attr(data-text);
	position: absolute;
	inset: 0;
	background: var(--grad-orix);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.side li a span::before,
.side li a span::after {
	content: attr(data-text);
	position: absolute;
	inset: 0;
	transition: opacity 0.3s ease;
}
.side li a span::before {
	background: var(--black);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	opacity: 1;
}
.side li a span::after {
	background: var(--grad-orix);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	opacity: 0;
}
.side li a.is-active span::before {
	opacity: 0;
}
.side li a.is-active span::after {
	opacity: 1;
}
@media print, screen and (min-width: 768px) {/* PC */
.side {
	padding: 0 0 0 20px;
}
.side nav {
	position: sticky;
	top: 100px;
	z-index: 2;
}
.side h2 {
	padding-bottom: 30px;
}
.side > nav > ul > li > a {
	padding: 22px 30px 22px 0;
	font-size: calc(1.4rem / 1.6);
	line-height: calc(22 / 14);
}
.side > nav > ul > li > a::before {
	top: calc(50% - 10px);
	width: 20px;
	height: 20px;
}
.side > nav > ul > li > a::after {
	transform: rotate(45deg);
}
.side .sub li a::after {
	transform: rotate(45deg);
}
}/* @media */
@media (hover:hover) {
.side li a:hover span::before {
	opacity: 0;
}
.side li a:hover span::after {
	opacity: 1;
}
}/* @media */
/* -----------------------------------------------
= nav-sub-fix
----------------------------------------------- */
.nav-sub-fix .nav-sub a {
	font-size: calc(1.5rem / 1.6);
	font-weight: 700;
}
.nav-sub-fix .nav-sub ul li ul {
	padding: 0;
}
.nav-sub-fix .nav-sub ul li ul li + li {
	border-top: none;
}
.nav-sub-fix .nav-sub ul li ul li a {
	padding-block: 10px;
	font-size: calc(1.2rem / 1.6);
}
.nav-sub-fix .nav-sub ul li ul li a::after {
	top: calc(50% - 2px);
	right: 3px;
	width: 4px;
	height: 4px;
}
/* -----------------------------------------------
= section
----------------------------------------------- */
.section {
	padding: 45px 20px;
}
.section h2 {
	position: relative;
	margin-bottom: 30px;
	padding-top: 30px;
}
.section h2::before,
.section h2::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
}
.section h2::before {
	width: 100%;
	height: 1px;
	background: #e2e2e7;
}
.section h2::after {
	width: 60px;
	height: 2px;
	background: var(--grad-orix);
}
.section h2 span {
	display: block;
}
.section h2 .en {
	font-family: var(--fig);
	font-size: calc(3.2rem / 1.6);
	font-weight: 600;
	letter-spacing: 0;
}
.section h2 .jp {
	font-size: calc(1.2rem / 1.6);
	font-weight: 500;
	letter-spacing: .05em;
}
.section .text {
	font-size: calc(1.2rem / 1.6);
	font-weight: 500;
	line-height: 2;
}
@media print, screen and (min-width: 768px) {/* PC */
.section {
	scroll-margin-top: 80px;
	padding: 0 0 120px;
}
.section h2 {
	margin-bottom: 60px;
	padding-top: 60px;
}
.section h2::after {
	width: 120px;
	height: 5px;
}
.section h2 span {
	display: inline-block;
}
.section h2 .en {
	margin-right: 30px;
	font-size: calc(6.9rem / 1.6);
}
.section h2 .jp {
	font-size: calc(1.8rem / 1.6);
	letter-spacing: 0;
}
.section .text {
	font-size: calc(1.6rem / 1.6);
}
}/* @media */
@media print, screen and (max-width: 1440px) and (min-width: 768px) {
.section h2 .en {
	font-size: calc(5rem / 1.6);
}
}/* @media */
/* -----------------------------------------------
= workstyle
----------------------------------------------- */
@media print, screen and (min-width: 768px) {/* PC */
.workstyle {
	scroll-margin-top: 80px;
	padding-top: 0;
}
.workstyle .text {
	font-size: calc(1.8rem / 1.6);
	font-weight: 500;
	line-height: calc(38 / 18);
}
}/* @media */
/* -----------------------------------------------
= sub-section
----------------------------------------------- */
.sub-section {
	position: relative;
	z-index: 1;
}
.sub-section::before {
	content: "";
	position: absolute;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 574px;
	background: linear-gradient(#f3f3f7,#fff);
}
.sub-section h3 {
	padding: 50px 20px 30px;
}
.sub-section h3 .jp {
	display: inline-block;
	margin-bottom: 10px;
	padding: 5px 10px;
	color: #fff;
	background: var(--grad-orix);
	font-size: calc(1.2rem / 1.6);
	font-weight: 500;
	letter-spacing: 0;
}
.sub-section h3 .en {
	display: block;
	font-family: var(--fig);
	font-size: calc(3.2rem / 1.6);
	font-weight: 600;
	letter-spacing: 0;
}
.sub-section .inner {
	padding: 0 20px 50px;
}
.sub-section .img-wide {
	margin: 0 -20px 30px;
}
.sub-section .img-wide img {
	width: 100%;
	height: 150px;
	object-fit: cover;
}
.sub-section .sub-title {
	position: relative;
	margin-bottom: 25px;
	padding-bottom: 15px;
	font-family: var(--min);
	font-size: calc(2rem / 1.6);
	text-align: center;
	letter-spacing: 0;
}
.sub-section .sub-title::after {
	content: "";
	position: absolute;
	left: calc(50% - 25px);
	bottom: 0;
	width: 50px;
	height: 2.5px;
	background: var(--grad-orix);
}
.sub-section .text {
	font-size: calc(1.2rem / 1.6);
	line-height: 2;
}
@media print, screen and (min-width: 768px) {/* PC */
.sub-section {
	position: relative;
	z-index: 1;
	scroll-margin-top: -40px;
	padding-block: 120px;
	background: transparent;
}
.sub-section + .sub-section {
	scroll-margin-top: 80px;
	padding-top: 0;
}
.sub-section::before {
	content: "";
	position: absolute;
	top: 0;
	left: -50vw;
	z-index: -1;
	width: 200vw;
	height: 100%;
	background: #f3f3f7;
}
.sub-section h3 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 30px;
	padding: 0 0 60px;
}
.sub-section h3 .jp {
	order: 2;
	margin-bottom: 0;
	padding: 6px 15px;
	font-size: calc(1.6rem / 1.6);
}
.sub-section h3 .en {
	order: 1;
	font-size: calc(5.4rem / 1.6);
}
.sub-section .inner {
	padding: 0 60px 60px;
	background: #fff;
}
.sub-section .img-wide {
	margin: 0 -60px 80px;
}
.sub-section .img-wide img {
	height: auto;
}
.sub-section .sub-title {
	margin-bottom: 55px;
	padding-bottom: 25px;
	font-size: calc(3.6rem / 1.6);
}
.sub-section .sub-title::after {
	left: calc(50% - 40px);
	width: 80px;
	height: 4px;
}
.sub-section .text {
	font-size: calc(1.6rem / 1.6);
}
}/* @media */
@media print, screen and (max-width: 1440px) and (min-width: 768px) {
.sub-section h3 .en {
	font-size: calc(4rem / 1.6);
}
.sub-section .sub-title {
	font-size: calc(3rem / 1.6);
}
}/* @media */
/* -----------------------------------------------
= scroll-hint
----------------------------------------------- */
.scroll-hint {
	background: transparent !important;
}
/* -----------------------------------------------
= img-scroll
----------------------------------------------- */
.img-scroll {
	margin-right: -20px;
	margin-block: 35px 25px;
	padding-bottom: 15px;
}
@media print, screen and (min-width: 768px) {/* PC */
.img-scroll {
	margin-right: 0;
	margin-block: 50px 30px;
	padding-bottom: 25px;
}
}/* @media */
/* -----------------------------------------------
= training
----------------------------------------------- */
.training .img-scroll img {
	width: 620px;
}
@media print, screen and (min-width: 768px) {/* PC */
.training .img-scroll img {
	width: 1225px;
}
}/* @media */
/* -----------------------------------------------
= onboarding
----------------------------------------------- */
.onboarding .img-scroll img {
	width: 760px;
}
@media print, screen and (min-width: 768px) {/* PC */
.onboarding .img-scroll img {
	width: 1505px;
}
}/* @media */
/* -----------------------------------------------
= feature
----------------------------------------------- */
.feature {
	margin-bottom: 50px;
}
.feature .item {
	padding: 30px;
	background: #f6f6f7;
}
.feature .item + .item {
	margin-top: 20px;
}
.feature .item .num {
	display: inline-block;
	position: relative;
	margin-bottom: 10px;
	color: transparent;
	font-family: var(--fig);
	font-size: calc(1rem / 1.6);
	font-weight: 600;
	letter-spacing: 0;
}
.feature .item .num::after {
	content: attr(data-text);
	position: absolute;
	inset: 0;
	background: var(--grad-orix);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.feature .item h5 {
	margin-bottom: 20px;
	font-size: calc(1.6rem / 1.6);
	font-weight: 700;
}
.feature .item h5 span {
	display: inline-block;
	font-size: calc(1rem / 1.6);
	font-weight: 400;
}
@media print, screen and (min-width: 768px) {/* PC */
.feature {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
	margin-bottom: 80px;
}
.feature .item {
	padding: 40px;
}
.feature .item + .item {
	margin-top: 0;
	transition-delay: .8s;
}
.feature .item .num {
	margin-bottom: 15px;
	font-size: calc(1.4rem / 1.6);
}
.feature .item h5 {
	margin-bottom: 35px;
	font-size: calc(2.4rem / 1.6);
}
.feature .item h5 span {
	font-size: calc(1.2rem / 1.6);
}
}/* @media */
@media print, screen and (max-width: 1440px) and (min-width: 768px) {
.feature .item h5 {
	margin-bottom: 25px;
	font-size: calc(2rem / 1.6);
}
}/* @media */
/* -----------------------------------------------
= case
----------------------------------------------- */
.case {
	padding-top: 30px;
	border-top: 1px solid #e2e2e7;
}
.case h4 {
	margin-bottom: 35px;
	text-align: center;
}
.case h4 .en {
	display: inline-block;
	position: relative;
	margin-bottom: 10px;
	color: transparent;
	font-family: var(--fig);
	font-size: calc(1.2rem / 1.6);
	font-weight: 600;
	letter-spacing: 0;
}
.case h4 .en::after {
	content: attr(data-text);
	position: absolute;
	inset: 0;
	background: var(--grad-orix);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.case h4 .jp {
	display: block;
	font-size: calc(1.8rem / 1.6);
	font-weight: 700;
}
.case .item {
	padding: 30px;
	background: #f6f6f7;
	border-left: 2.5px solid;
	border-image: linear-gradient(var(--red),var(--blue)) 1;
}
.case .item + .item {
	margin-top: 20px;
}
.case .title {
	display: grid;
	grid-template-columns: 60px 1fr;
	gap: 0 15px;
	align-items: center;
	margin-bottom: 25px;
}
.case .title img {
	border-radius: 50%;
}
.case .title h5 span {
	display: block;
}
.case .title h5 span:first-child {
	margin-bottom: 5px;
	font-size: calc(1.6rem / 1.6);
	font-weight: 700;
	letter-spacing: .01em;
}
.case .title h5 span:last-child {
	font-size: calc(1rem / 1.6);
}
.case .timeline {
	position: relative;
	margin-top: 30px;
	padding: 20px 20px 8px;
	background: #fff;
}
.case .timeline::before {
	content: "";
	position: absolute;
	top: 25px;
	left: 68px;
	bottom: 24px;
	width: 7px;
	height: calc(100% - 51px);
	background: #f6f6f7;
	border-radius: 4px;
}
.case .timeline li {
	display: flex;
}
.case .timeline li .time {
	width: 34px;
	padding: 3px 14px 0 0;
	font-family: var(--fig);
	font-size: calc(1.3rem / 1.6);
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	text-align: right;
}
.case .timeline li .text {
	flex: 1;
	position: relative;
	margin: 0;
	padding: 0 0 12px 20px;
	font-weight: 700;
	line-height: calc(18 / 12);
}
.case .timeline li .text::before {
	content: "";
	position: absolute;
	top: 5px;
	left: 0;
	width: 7px;
	height: 7px;
	background: linear-gradient(120deg,var(--red),#7d1e69 65%,var(--blue));
	border-radius: 50%;
}
@media print, screen and (min-width: 768px) {/* PC */
.case {
	padding-top: 60px;
}
.case h4 {
	margin-bottom: 55px;
}
.case h4 .en {
	margin-bottom: 20px;
	font-size: calc(1.6rem / 1.6);
}
.case h4 .jp {
	font-size: calc(3.6rem / 1.6);
}
.case .item {
	padding: 40px;
	border-left-width: 5px;
}
.case .title {
	grid-template-columns: 100px 1fr;
	gap: 0 30px;
	margin-bottom: 30px;
}
.case .title h5 span:first-child {
	margin-bottom: 10px;
	font-size: calc(2.4rem / 1.6);
}
.case .title h5 span:last-child {
	font-size: calc(1.4rem / 1.6);
}
.case .timeline {
	margin-top: 35px;
	padding: 40px 40px 20px;
}
.case .timeline::before {
	top: 50px;
	left: 126px;
	bottom: 50px;
	width: 10px;
	height: calc(100% - 100px);
	border-radius: 5px;
}
.case .timeline li .time {
	width: 56px;
	padding: 3px 30px 0 0;
	font-size: calc(1.8rem / 1.6);
}
.case .timeline li .text {
	padding: 0 0 20px 40px;
}
.case .timeline li .text::before {
	top: 8px;
	width: 10px;
	height: 10px;
}
}/* @media */
@media print, screen and (max-width: 1440px) and (min-width: 768px) {
.case h4 .jp {
	font-size: calc(3.2rem / 1.6);
}
.case .title h5 span:first-child {
	font-size: calc(2rem / 1.6);
}
}/* @media */
/* -----------------------------------------------
= career-design
----------------------------------------------- */
.career-design {
	padding-bottom: 1px;
	background: #f3f3f7;
}
.career-design::before {
	display: none;
}
.career-design .lead {
	margin: 0 20px 40px;
	font-size: calc(1.2rem / 1.6);
	line-height: 2;
}
.career-design .list {
	margin: 0 20px 40px;
}
.career-design .item {
	padding: 34px 30px 30px;
	background: #fff;
}
.career-design .item + .item {
	margin-top: 25px;
}
.career-design .item img {
	display: block;
	width: 67px;
	margin: 0 auto 15px;
	border-radius: 50%;
}
.career-design .item h4 {
	margin-bottom: 20px;
	font-size: calc(1.6rem / 1.6);
	font-weight: 700;
	text-align: center;
}
@media print, screen and (min-width: 768px) {/* PC */
.career-design {
	background: transparent;
}
.career-design::before {
	display: block;
}
.career-design .lead {
	margin: 0 0 75px;
	font-size: calc(1.8rem / 1.6);
	line-height: calc(38 / 18);
}
.career-design .list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 40px;
	margin: 0 0 90px;
}
.career-design .item {
	padding: 34px 30px 30px;
	background: #fff;
}
.career-design .item:nth-child(2n) {
	margin-top: 0;
	transition-delay: .8s;
}
.career-design .item + .item {
	margin-top: 0;
}
.career-design .item img {
	width: 100px;
	margin: 0 auto 25px;
}
.career-design .item h4 {
	margin-bottom: 35px;
	font-size: calc(2.4rem / 1.6);
}
}/* @media */
@media print, screen and (max-width: 1440px) and (min-width: 768px) {
.career-design .item h4 {
	margin-bottom: 25px;
	font-size: calc(2rem / 1.6);
}
}/* @media */
/* -----------------------------------------------
= career-case
----------------------------------------------- */
.career-case {
	padding-bottom: 1px;
	background: #fff;
}
.career-case::before {
	display: none;
}
.career-case .lead {
	margin: 0 20px 40px;
	font-size: calc(1.2rem / 1.6);
	line-height: 2;
}
.career-case .inner {
	padding-inline: 0;
}
.career-case .title {
	display: flex;
	align-items: center;
	gap: 0 14px;
	margin: 0 20px 30px;
	padding-bottom: 10px;
	border-bottom: 1px solid #f6f6f7;
}
.career-case .title .job-type {
	display: inline-block;
	position: relative;
	border-top: 1px solid;
	border-bottom: 1px solid;
	border-image: var(--grad-orix) 1;
	color: transparent;
	font-family: var(--fig);
	font-size: calc(1rem / 1.6);
	font-weight: 600;
	letter-spacing: -.02em;
	background: var(--grad-orix);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.career-case .title h4 {
	font-size: calc(2.2rem / 1.6);
	font-weight: 700;
	letter-spacing: 0;
}
.career-case .item {
	display: flex;
	gap: 0 15px;
	margin: 0 20px 25px;
}
.career-case .item + .item {
	padding-top: 25px;
	border-top: 1px solid #f6f6f7;
}
.career-case .item .num {
	display: block;
	padding: 10px;
	color: #fff;
	background: linear-gradient(180deg, var(--red), var(--blue));
	font-family: var(--fig);
	font-size: calc(1.2rem / 1.6);
	font-weight: 600;
	letter-spacing: -.02em;
	writing-mode: vertical-rl;
	text-orientation: mixed;
}
.career-case .item ul {
	position: relative;
	padding-left: 20px;
}
.career-case .item ul::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 5px;
	height: 100%;
	background: var(--grad-orix);
	opacity: .1;
}
.career-case .item li {
	position: relative;
	padding: 15px 20px;
	background: #f6f6f7;
	font-size: calc(1.2rem / 1.6);
	line-height: 2;
}
.career-case .item li::before {
	content: "";
	position: absolute;
	top: calc(50% - 5px);
	left: -6px;
	width: 6px;
	height: 10px;
	background: #f6f6f7;
	clip-path: polygon(0 50%, 100% 0, 100% 100%);
}
.career-case .item li::after {
	content: "";
	position: absolute;
	top: calc(50% - 6px);
	left: -24px;
	width: 12px;
	height: 12px;
	background: url(../img/icon_hr_development_circle.png) no-repeat 50% / cover;
}
.career-case .item li + li {
	margin-top: 10px;
}
.career-case .member {
	margin-inline: 20px;
	padding-top: 30px;
}
.career-case .member a {
	background: transparent;
}
.career-case .block {
	scroll-margin-top: 45px;
}
.career-case .block + .block {
	margin-top: 50px;
}
@media print, screen and (min-width: 768px) {/* PC */
.career-case {
	padding-bottom: 100px;
	background: transparent;
}
.career-case::before {
	display: block;
}
.career-case .lead {
	margin: 0 0 75px;
	font-size: calc(1.8rem / 1.6);
	line-height: calc(38 / 18);
}
.career-case .inner {
	padding: 80px 60px 60px;
}
.career-case .block {
	scroll-margin-top: 80px;
}
.career-case .title {
	gap: 0 24px;
	margin: 0 0 60px;
	padding-bottom: 25px;
}
.career-case .title .job-type {
	padding-block: 8px;
	font-size: calc(1.4rem / 1.6);
}
.career-case .title h4 {
	font-size: calc(3.5rem / 1.6);
}
.career-case .item {
	align-items: stretch;
	gap: 0 20px;
	margin: 0 0 45px;
}
.career-case .item + .item {
	padding-top: 0;
	border-top: none;
}
.career-case .item .num {
	display: block;
	padding: 10px;
	font-size: calc(1.8rem / 1.6);
	text-align: center;
}
.career-case .item ul {
	display: flex;
	gap: 0 10px;
	padding: 38px 0 0;
}
.career-case .item ul::before {
	width: 100%;
	height: 6px;
	background: var(--grad-orix);
}
.career-case .item li {
	width: 100%;
	padding: 20px 30px;
	font-size: calc(1.6rem / 1.6);
	line-height: calc(28 / 16);
}
.career-case .item li::before {
	top: -12px;
	left: calc(50% - 11px);
	width: 22px;
	height: 12px;
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
}
.career-case .item li::after {
	top: -45px;
	left: calc(50% - 11px);
	width: 22px;
	height: 22px;
}
.career-case .item li + li {
	margin-top: 0;
}
.career-case .member {
	margin-inline: 0;
}
.career-case .block {
	scroll-margin-top: 80px;
}
.career-case .block + .block {
	margin-top: 80px;
}
}/* @media */
@media print, screen and (max-width: 1440px) and (min-width: 768px) {
.career-case .title h4 {
	font-size: calc(3rem / 1.6);
}
}/* @media */
/* -----------------------------------------------
= member
----------------------------------------------- */
.member {
	padding-top: 50px;
	border-top: 1px solid #e2e2e7;
}
.member + .member {
	padding-top: 0;
	border-top: none;
}
.member a {
	padding: 20px;
	background: #f6f6f7;
	border: 1px solid #e2e2e7;
	display: block;
	position: relative;
}
.member + .member a {
	border-top: none;
}
.member a::before {
	content: "";
	position: absolute;
	right: 12px;
	bottom: 12px;
	z-index: 1;
	width: 38px;
	height: 38px;
	border: 1px solid rgba(29,40,64,.1);
}
.member a::after {
	content: "";
	position: absolute;
	right: 24px;
	bottom: 26px;
	width: 15px;
	height: 10px;
	background: url(/company/recruit/assets/img/icon_link_arrow.svg) no-repeat 50% / cover;
}
.member a .mem-hd {
	padding: 0 0 18px;
	align-items: flex-start;
	display: flex;
}
.member a .mem-hd figure {
	margin-right: 20px;
	width: 70px;
	height: auto;
	display: block;
	overflow: hidden;
}
.member a .mem-hd h5 {
	margin-bottom: 0;
	font-size: calc(1.5rem / 1.6);
	font-weight: 700;
	line-height: 1.4;
}
.member a .mem-hd h5 span {
	margin-bottom: 12px;
	padding: 2px 6px;
	background: #545c7a;
	color: #fff;
	font-size: calc(1rem / 1.6);
	font-weight: 700;
	line-height: 1.5;
	display: inline-block;
}
.member a h6 {
	margin-bottom: 10px;
	font-family: var(--fig);
	font-size: calc(1.3rem / 1.6);
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: .01em;
}
.member a p {
	font-size: calc(1rem / 1.6);
	font-weight: 400;
	line-height: 1.7;
	letter-spacing: .05em;
}
@media print, screen and (min-width: 768px) {/* PC */
.member {
	padding-top: 15px;
	border-top: none;
}
.member a {
	padding: 40px 100px 40px 215px;
	min-height: 200px;
	background: #f6f6f7;
	display: block;
	position: relative;
	transition-property: background;
	transition-duration: 0.3s;
}
.member a::before {
	right: 20px;
	bottom: 20px;
	width: 64px;
	height: 64px;
	border: 1px solid rgba(29,40,64,.1);
	transition-property: border;
	transition-duration: 0.3s;
}
.member a::after {
	right: 43px;
	bottom: 46px;
	width: 20px;
	height: 14px;
}
.member a .mem-hd {
	padding: 0 0 25px;
	display: block;
}
.member a .mem-hd figure {
	margin-right: 0;
	width: 140px;
	left: 35px;
	top: 40px;
	position: absolute;
}
.member a .mem-hd h5 {
	margin-bottom: 0;
	font-size: calc(2rem / 1.6);
	line-height: 1.6;
}
.member a .mem-hd h5 span {
	margin-bottom: 13px;
	padding: 5px 14px;
	font-size: calc(1.4rem / 1.6);
	line-height: 1.5;
}
.member a h6 {
	margin-bottom: 2px;
	font-size: calc(1.6rem / 1.6);
	line-height: 1.4;
}
.member a p {
	font-size: calc(1.2rem / 1.6);
	line-height: 2;
}
}/* @media */
@media (hover:hover) {
.member a:hover {
	background: #fff;
}
.member a:hover::before {
	border-color: rgba(29,40,64,1);
}
.member a .mem-hd figure img {
	transform: scale(1);
	transition-property: transform;
	transition-duration: 0.3s;
}
.member a:hover .mem-hd figure img {
	transform: scale(1.1);
}
}/* @media */



