@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@500&display=swap");
.p-about-nav {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 768px), print {
	.p-about-nav {
		border-bottom: 1px solid #DDDDDD;
		background-color: #DDDDDD;
		gap: 1px;
		grid-template-columns: repeat(2, 1fr);
	}
}
.p-about-nav a {
	transition: color 0.3s;
	color: var(--color-txt);
}
.p-about-nav a:hover {
	color: var(--color-prim);
}
.p-about-nav a:hover img {
	transform: scale(1.28);
}
.p-about-nav__figure {
	height: 160px;
	overflow: hidden;
}
@media (min-width: 768px), print {
	.p-about-nav__figure {
		height: 312px;
	}
}
.p-about-nav__figure img {
	transition: transform 0.3s;
	height: 100%;
	object-fit: cover;
}
.p-about-nav__text {
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	text-align: center;
	font-weight: bold;
	font-size: 1.8rem;
	padding-block: 10px 14px;
}
@media (min-width: 768px), print {
	.p-about-nav__text {
		gap: 20px;
		font-size: 2rem;
		padding-block: 20px;
	}
}

.p-job-description-nav {
	background: var(--color-bg);
	margin-bottom: -80px;
}
@media (min-width: 768px), print {
	.p-job-description-nav {
		margin-bottom: -120px;
	}
}
.p-job-description-nav__inner {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	padding-block: 40px;
}
@media (min-width: 768px), print {
	.p-job-description-nav__inner {
		padding-left: 40px;
		padding-right: 40px;
	}
}
@media (min-width: 768px), print {
	.p-job-description-nav__inner {
		padding-block: 50px 54px;
	}
}
.p-job-description-nav__lead {
	line-height: var(--line-height-s);
	text-align: center;
	font-size: 2.4rem;
	font-weight: bold;
}
@media (min-width: 768px), print {
	.p-job-description-nav__lead {
		font-size: 2.8rem;
	}
}
.p-job-description-nav__items {
	margin-top: 20px;
}
@media (min-width: 768px), print {
	.p-job-description-nav__items {
		margin-top: 30px;
	}
}

.p-recruit-flow__steps {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 44px;
}
@media (min-width: 768px), print {
	.p-recruit-flow__steps {
		grid-template-columns: repeat(5, 1fr);
		gap: 50px;
	}
	.p-recruit-flow__steps--4up {
		grid-template-columns: repeat(4, 1fr);
		max-width: 1060px;
		margin-inline: auto;
	}
	.p-recruit-flow__steps--3up {
		grid-template-columns: repeat(3, 1fr);
		max-width: 1060px;
		margin-inline: auto;
	}
}
.p-recruit-flow__step {
	position: relative;
}
.p-recruit-flow__step:not(:last-child)::after {
	display: block;
	content: "";
	position: absolute;
	width: 28px;
	height: 28px;
	background: url(/saga/assets/images/recruit/fresh/arrow_right.svg) no-repeat center center;
	transform: rotate(90deg);
	left: calc(50% + 30px);
	bottom: -36px;
}
@media (min-width: 768px), print {
	.p-recruit-flow__step:not(:last-child)::after {
		transform: rotate(0);
		left: unset;
		bottom: unset;
		top: 110px;
		right: -38px;
	}
}
.p-recruit-flow__step--bg1 .p-recruit-flow__step-inner {
	background: #F0F2FF;
}
.p-recruit-flow__step--bg1 .p-recruit-flow__step-header {
	background: #545FB2;
}
.p-recruit-flow__step--bg1 .p-recruit-flow__step-title::before {
	background-color: #D4D8FA;
}
.p-recruit-flow__step--bg2 .p-recruit-flow__step-inner {
	background: #F3E9F8;
}
.p-recruit-flow__step--bg2 .p-recruit-flow__step-header {
	background: #8F5BAD;
}
.p-recruit-flow__step--bg2 .p-recruit-flow__step-title::before {
	background-color: #DEC2EF;
}
.p-recruit-flow__step--bg3 .p-recruit-flow__step-inner {
	background: #FCE7F5;
}
.p-recruit-flow__step--bg3 .p-recruit-flow__step-header {
	background: #D054A6;
}
.p-recruit-flow__step--bg3 .p-recruit-flow__step-title::before {
	background-color: #FAC8E8;
}
.p-recruit-flow__step--bg4 .p-recruit-flow__step-inner {
	background: #FFEAF1;
}
.p-recruit-flow__step--bg4 .p-recruit-flow__step-header {
	background: #D54074;
}
.p-recruit-flow__step--bg4 .p-recruit-flow__step-title::before {
	background-color: #FAC8DA;
}
.p-recruit-flow__step--bg5 .p-recruit-flow__step-inner {
	background: #FCE7E9;
}
.p-recruit-flow__step--bg5 .p-recruit-flow__step-header {
	background: #D52B3F;
}
.p-recruit-flow__step--bg5 .p-recruit-flow__step-title::before {
	background-color: #FFCED4;
}
.p-recruit-flow__step-inner {
	display: flex;
	min-height: 105px;
	border-radius: 0 0 0 24px;
	overflow: hidden;
}
@media (min-width: 768px), print {
	.p-recruit-flow__step-inner {
		flex-direction: column;
		border-radius: 0 24px 0 0;
		min-height: 200px;
	}
}
.p-recruit-flow__step-header {
	flex: 0 0 84px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #fff;
	font-weight: bold;
	font-size: 1.6rem;
}
@media (min-width: 768px), print {
	.p-recruit-flow__step-header {
		flex: 0 0 48px;
	}
}
.p-recruit-flow__step-title {
	flex: 1;
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	text-align: center;
	justify-content: center;
	flex-direction: column;
	font-weight: bold;
	font-size: 1.8rem;
	line-height: var(--line-height-s);
}
@media (min-width: 768px), print {
	.p-recruit-flow__step-title {
		font-size: 2.4rem;
	}
}
.p-recruit-flow__step-title::before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 120px;
	height: 55px;
	filter: blur(17px);
}
@media (min-width: 768px), print {
	.p-recruit-flow__step-title::before {
		width: 105px;
		height: 105px;
	}
}
.p-recruit-flow__step-caption {
	display: block;
	font-size: 1.6rem;
	margin-top: 4px;
}
.p-recruit-flow__documents {
	margin: 10px 0 0 90px;
}
@media (min-width: 768px), print {
	.p-recruit-flow__documents {
		margin: 10px 0 0 0;
		font-size: 1.4rem;
	}
}
.p-recruit-flow__documents-link {
	position: relative;
	display: block;
	color: var(--color-txt);
	line-height: var(--line-height-s);
	padding-left: 22px;
}
@media (min-width: 768px), print {
	.p-recruit-flow__documents-link {
		padding-left: 26px;
	}
}
.p-recruit-flow__documents-link .icon-blank {
	position: absolute;
	left: 0;
	top: 3px;
	padding-inline: 2px;
}

@media (min-width: 768px), print {
	.p-internship-survey {
		display: grid;
		grid-template-columns: repeat(2, auto);
		grid-template-rows: auto 1fr;
		gap: 0 40px;
	}
}
.p-internship-survey__title {
	font-size: 1.8rem;
	font-weight: bold;
}
@media (min-width: 768px), print {
	.p-internship-survey__title {
		font-size: 2rem;
		grid-area: 1/1/2/2;
	}
}
.p-internship-survey__graph {
	margin-inline: auto;
	max-width: 300px;
	margin-top: 32px;
}
@media (min-width: 768px), print {
	.p-internship-survey__graph {
		margin-top: 0;
		max-width: 360px;
		margin-inline: unset;
		grid-area: 1/2/3/3;
	}
}
.p-internship-survey__text {
	margin-inline: auto;
	max-width: 300px;
	margin-top: 16px;
}
@media (min-width: 768px), print {
	.p-internship-survey__text {
		margin-top: 40px;
		max-width: unset;
		zoom: 0.5;
		margin-inline: unset;
	}
}

.p-highlight-panel {
	padding-inline: 0;
}
.p-highlight-panel__icon {
	margin-inline: auto;
	width: 80px;
}
@media (min-width: 768px), print {
	.p-highlight-panel__icon {
		width: 100px;
	}
}
.p-highlight-panel__title {
	font-weight: bold;
	text-align: center;
	font-size: 1.6rem;
}
@media (min-width: 768px), print {
	.p-highlight-panel__title {
		font-size: 2rem;
	}
}
.p-highlight-panel__value {
	font-weight: bold;
	text-align: center;
	font-size: 1.8rem;
	line-height: var(--line-height-s);
}
.p-highlight-panel__value em {
	color: var(--color-prim);
	font-size: 3.8rem;
}
@media (min-width: 768px), print {
	.p-highlight-panel__value {
		font-size: 2.4rem;
	}
	.p-highlight-panel__value em {
		font-size: 4.4rem;
	}
}
.p-highlight-panel__value--small {
	font-size: 1.6rem;
}
.p-highlight-panel__value--small em {
	font-size: 3rem;
}
@media (min-width: 768px), print {
	.p-highlight-panel__value--small {
		font-size: 1.8rem;
	}
	.p-highlight-panel__value--small em {
		font-size: 3.2rem;
	}
}

.p-aboutus-business-details > li {
	padding-left: 3.5em;
	text-indent: -3.5em;
	padding-block: 16px;
	border-bottom: 1px dashed var(--color-border);
}
.p-aboutus-business-details > li:first-child {
	padding-top: 0;
}
@media (min-width: 768px), print {
	.p-aboutus-business-details > li {
		padding-left: 4em;
		text-indent: -4em;
		padding-block: 30px;
	}
}
.p-aboutus-business-details > li::before {
	color: var(--color-seco);
	font-weight: bold;
	font-size: 1.8rem;
}
@media (min-width: 768px), print {
	.p-aboutus-business-details > li::before {
		font-size: 2.4rem;
	}
}

.p-aboutus-contribution-panel {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 2;
	gap: 0;
}

.p-aboutus-txtpanel {
	border: 1px solid var(--color-border);
	border-radius: 10px;
	padding: 30px;
}
@media (min-width: 768px), print {
	.p-aboutus-txtpanel {
		padding: 40px;
	}
}
.p-aboutus-txtpanel__title {
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: var(--line-height-s);
}
@media (min-width: 768px), print {
	.p-aboutus-txtpanel__title {
		font-size: 2rem;
	}
}
.p-aboutus-txtpanel__body {
	margin-top: 20px;
	font-size: 1.4rem;
}

.p-recruit-top-mv {
	height: 667px;
	display: grid;
	place-content: center;
	background: url(/saga/assets/images/recruit/top/main_bg_sp.jpg) no-repeat center bottom/cover;
}
@media (min-width: 768px), print {
	.p-recruit-top-mv {
		height: 840px;
		background-image: url(/saga/assets/images/recruit/top/main_bg.jpg);
	}
}
.p-recruit-top-mv__logo {
	width: 280px;
}
@media (min-width: 768px), print {
	.p-recruit-top-mv__logo {
		width: 556px;
	}
}

.p-recruit-top-content {
	position: relative;
	overflow: hidden;
	text-align: center;
	padding-block: 90px 150px;
}
@media (min-width: 768px), print {
	.p-recruit-top-content {
		padding-block: 160px 300px;
	}
}
.p-recruit-top-content__text {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 500;
	font-size: 1.6rem;
	color: #3A3F4A;
	line-height: 3;
}
.p-recruit-top-content__text + p {
	margin-top: 40px;
}
@media (min-width: 768px), print {
	.p-recruit-top-content__text {
		font-size: 2rem;
	}
	.p-recruit-top-content__text + p {
		margin-top: 70px;
	}
}
.p-recruit-top-content__copy {
	height: 117px;
}
@media (min-width: 768px), print {
	.p-recruit-top-content__copy {
		height: 68px;
	}
}
.p-recruit-top-content__circle {
	position: absolute;
	border-radius: 50%;
	background-size: contain;
}
.p-recruit-top-content__circle--1 {
	background: #2BA3DA;
	width: 8px;
	height: 8px;
	top: 20px;
	left: calc(50% + 7px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--1 {
		width: 16px;
		height: 16px;
		top: 30px;
		left: calc(50% + 106px);
	}
}
.p-recruit-top-content__circle--2 {
	background: #D52128;
	width: 22px;
	height: 22px;
	top: 50px;
	left: calc(50% - 157px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--2 {
		width: 46px;
		height: 46px;
		top: 97px;
		left: calc(50% - 322px);
	}
}
.p-recruit-top-content__circle--3 {
	background-image: url(/saga/assets/images/recruit/top/circle_img03.png);
	z-index: 1;
	width: 98px;
	height: 98px;
	top: 252px;
	left: calc(50% - 218px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--3 {
		width: 273px;
		height: 273px;
		top: 118px;
		left: calc(50% - 560px);
	}
}
.p-recruit-top-content__circle--4 {
	background: #2BA3DA;
	width: 62px;
	height: 62px;
	top: 301px;
	left: calc(50% - 186px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--4 {
		width: 171px;
		height: 171px;
		top: 257px;
		left: calc(50% - 471px);
	}
}
.p-recruit-top-content__circle--5 {
	background: #2BA3DA;
	width: 17px;
	height: 17px;
	top: 205px;
	left: calc(50% + 142px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--5 {
		width: 34px;
		height: 34px;
		top: 267px;
		left: calc(50% + 363px);
	}
}
.p-recruit-top-content__circle--6 {
	background-image: url(/saga/assets/images/recruit/top/circle_img06.png);
	z-index: 1;
	width: 122px;
	height: 122px;
	top: 260px;
	left: calc(50% + 114px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--6 {
		width: 292px;
		height: 292px;
		top: 320px;
		left: calc(50% + 361px);
	}
}
.p-recruit-top-content__circle--7 {
	background-image: url(/saga/assets/images/recruit/top/circle_img07.png);
	width: 86px;
	height: 86px;
	top: 373px;
	left: calc(50% + 99px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--7 {
		width: 206px;
		height: 206px;
		top: 563px;
		left: calc(50% + 288px);
	}
}
.p-recruit-top-content__circle--8 {
	background-image: url(/saga/assets/images/recruit/top/circle_img08.png);
	z-index: 1;
	width: 62px;
	height: 62px;
	top: 384px;
	left: calc(50% - 176px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--8 {
		width: 129px;
		height: 129px;
		top: 674px;
		left: calc(50% - 568px);
	}
}
.p-recruit-top-content__circle--9 {
	background: #D52128;
	width: 25px;
	height: 25px;
	top: 714px;
	left: calc(50% - 184px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--9 {
		width: 51px;
		height: 51px;
		top: 777px;
		left: calc(50% - 474px);
	}
}
.p-recruit-top-content__circle--10 {
	background-image: url(/saga/assets/images/recruit/top/circle_img10.png);
	z-index: 1;
	width: 96px;
	height: 96px;
	top: 733px;
	left: calc(50% - 196px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--10 {
		width: 234px;
		height: 234px;
		top: 812px;
		left: calc(50% - 534px);
	}
}
.p-recruit-top-content__circle--11 {
	background: #2BA3DA;
	width: 15px;
	height: 15px;
	top: 564px;
	left: calc(50% + 184px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--11 {
		width: 31px;
		height: 31px;
		top: 1012px;
		left: calc(50% + 436px);
	}
}
.p-recruit-top-content__circle--12 {
	background-image: url(/saga/assets/images/recruit/top/circle_img12.png);
	z-index: 1;
	width: 107px;
	height: 107px;
	top: 712px;
	left: calc(50% + 103px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--12 {
		width: 221px;
		height: 221px;
		top: 1074px;
		left: calc(50% + 325px);
	}
}
.p-recruit-top-content__circle--13 {
	background: #D52128;
	width: 30px;
	height: 30px;
	top: 973px;
	left: calc(50% + 125px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--13 {
		width: 139px;
		height: 139px;
		top: 1167px;
		left: calc(50% + 514px);
	}
}
.p-recruit-top-content__circle--14 {
	background-image: url(/saga/assets/images/recruit/top/circle_img14.png);
	z-index: 1;
	width: 87px;
	height: 87px;
	top: 785px;
	left: calc(50% + 156px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--14 {
		width: 178px;
		height: 178px;
		top: 1285px;
		left: calc(50% + 470px);
	}
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--15 {
		background: #D52128;
		width: 35px;
		height: 35px;
		top: 1365px;
		left: calc(50% - 439px);
	}
}
.p-recruit-top-content__circle--16 {
	background-image: url(/saga/assets/images/recruit/top/circle_img16.png);
	z-index: 1;
	width: 96px;
	height: 96px;
	top: 962px;
	left: calc(50% - 217px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--16 {
		width: 289px;
		height: 289px;
		top: 1441px;
		left: calc(50% - 642px);
	}
}
.p-recruit-top-content__circle--17 {
	background-image: url(/saga/assets/images/recruit/top/circle_img17.png);
	z-index: 1;
	width: 126px;
	height: 126px;
	top: 1140px;
	left: calc(50% + 123px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--17 {
		width: 261px;
		height: 261px;
		top: 1585px;
		left: calc(50% + 285px);
	}
}
.p-recruit-top-content__circle--18 {
	background: #2BA3DA;
	width: 33px;
	height: 33px;
	top: 1372px;
	left: calc(50% + 167px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--18 {
		width: 37px;
		height: 37px;
		top: 1857px;
		left: calc(50% + 248px);
	}
}
.p-recruit-top-content__circle--19 {
	background: #D52128;
	width: 67px;
	height: 67px;
	top: 1508px;
	left: calc(50% - 197px);
}
@media (min-width: 768px), print {
	.p-recruit-top-content__circle--19 {
		width: 63px;
		height: 63px;
		top: 1920px;
		left: calc(50% - 261px);
	}
}

.p-recruit-top-fade-anime {
	opacity: 0;
	transition: opacity 0.3s ease-in-out;
}
.p-recruit-top-fade-anime.is-inview {
	opacity: 1;
}

/* Map Info Window Styling */
.p-map {
	aspect-ratio: 1/1;
}
@media (min-width: 768px), print {
	.p-map {
		aspect-ratio: 16/9;
	}
}

.p-map-info-window figure {
	max-width: 280px;
}
.p-map-info-window figure img {
	height: 80px;
	object-fit: cover;
	border-radius: 4px;
}
@media (min-width: 768px), print {
	.p-map-info-window figure img {
		height: 160px;
		width: 280px;
	}
}
.p-map-info-window h3 {
	margin-top: 15px;
	font-size: 16px;
	font-weight: bold;
}
.p-map-info-window p {
	margin-top: 5px;
}
/*# sourceMappingURL=common.css.map */
