.main {
	padding-bottom: 12.50rem;
}

.container_full {
	max-width: 100%;
	padding-inline: 0;
	position: relative;
	width: 100%;
}

.pageLead {
	padding-bottom: 8rem;
}

.page__hgroup p {
	font-size: 1rem;
}

.pageLead__hgroup h3 {
	margin-top: 1.1rem;
}

.requirements {
	padding-block: 3.75rem 6.56rem;
	padding-bottom: 0;
}

.requirements__lead {
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0.01em;
	line-height: 1.6;
}

.requirements__head-lead {
	display: flex;
}

.requirements__lead-left {
	width: 37.777vw;
}


.requirements__lead-img {
	bottom: 0;
	position: absolute;
	right: 0;
	text-align: right;
	z-index: -1;
}

.requirements__lead-img img {
	width: 50%;
}

.requirements__lead-text {
	margin-top: 2.5rem;
}

.requirements__lead-text p {
	font-size: 1.125rem;
	line-height: 1.8;
}

.requirements__lead-text p a {
	color: #c8000b;
}

.requirements__lead-left .sessionLink a {
	margin-left: 0;
}

.requirements__section {
	padding-top: 6.7rem;
}

.requirements__table {
	border-top: #c8c8c8 solid 1px;
	font-weight: 500;
	line-height: 1.8;
}

.requirements__table tr {
	border-bottom: #c8c8c8 solid 1px;
}

.requirements__table th {
	font-size: 1.25rem;
	padding: 1.875rem 3.375rem;
	text-align: left;
	width: 13.125rem;
}

.requirements__table td {
	padding: 1.875rem 1.0rem;
}

.requirements__table td {
	width: calc(100% - 13.125rem);
}

.requirements__table a {
	color: #c8000b;
}
.requirements__table span {
	font-size: 1rem;
	font-weight: normal;
	white-space: nowrap;
}

.list-link {
	background: linear-gradient(90deg, #ffd6d9, #f99ba0);
	border-radius: 999px;
	display: inline-block;
	margin-top: 1.0rem;
	padding: 3px;
}

.list-link a {
	background: #fff url("../../images/requirements/icon_link_right.png") center right 2.0rem no-repeat;
	border-radius: 999px;
	color: #000;
	display: block;
	font-weight: 600;
	height: 2.8125rem;
	line-height: 2.8125rem;
	text-align: center;
	width: 13.75rem;
}

.requirements__flowBox {
	margin-top: 6.25rem;
}

.requirements__flowList {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-left: auto;
	margin-right: auto;
	margin-top: 3.0rem;
	padding: 0 2.5rem;
}

.requirements__flowList li {
	width: 20%;
}

.step_box {
	color: #fff;
	line-height: 1.6;
	min-height: 140.8px;
	padding: 1.6rem 2.50rem;
	position: relative;
}

.step_box.step_1 {
	background: #6cd3e4;
}

.step_box:before {
	background: #6cd3e4;
	content: "";
	height: 72px;
	position: absolute;
	right: -36px;
	top: 34px;
	transform: rotate(45deg) skew(20deg, 20deg);
	width: 72px;
	z-index: 1;
}

.step_box.step_1:before {
	background: #6cd3e4;
}

.step_box.step_2 {
	background: #5ac9e5;
}

.step_box.step_2:before {
	background: #5ac9e5;
}

.step_box.step_3 {
	background: #32b3e7;
}

.step_box.step_3:before {
	background: #32b3e7;
}

.step_box.step_4 {
	background: #0ea0ea;
}

.step_box.step_4:before {
	background: #0ea0ea;
}

.step_box.step_5 {
	background: #257bed;
}

.step_box.step_5:before {
	content: "";
	display: none;
}


.step_box dt {
	font-size: 1.0rem;
	text-align: center;
}

.step_box dd {
	align-items: center;
	display: flex;
	font-size: 1.250rem;
	font-weight: 600;
	justify-content: center;
	min-height: 64px;
	position: relative;
	text-align: center;
	z-index: 2;
}

.requirements__flowText {
	font-size: 1.125rem;
	line-height: 1.8;
	margin: 3rem auto 0;
	padding: 0 2.5rem;
}

.requirements__flowText span {
	font-weight: 600;
}

.requirements__flowCont {
	margin-top: 5.25rem;
	padding: 0 2.5rem;
}

.requirements__flowContBox {
	align-items: flex-start;
	background: #f6f6f6;
	border-radius: 20px;
	display: flex;
	justify-content: space-between;
	padding: 1.875rem 1.875rem 1.0rem 1.875rem;
}

.requirements__flowContBox dt {
	width: 17.5rem;
}

.requirements__flowContBox dt span {
	border-radius: 999px;
	color: #fff;
	display: inline-block;
	line-height: 1.0;
	margin-bottom: 0.75rem;
	padding: 5px 42.5px 9px 42.5px;
}

.requirements__flowContBox .step_1 {
	background: #6cd3e4;
}

.requirements__flowContBox .step_2 {
	background: #5ac9e5;
}

.requirements__flowContBox .step_3 {
	background: #32b3e7;
}

.requirements__flowContBox .step_4 {
	background: #0ea0ea;
}

.requirements__flowContBox .step_5 {
	background: #0198ea;
}

.requirements__flowContBox dt p {
	font-size: 1.25rem;
	font-weight: 600;
}

.requirements__flowContBox dd {
	width: calc(100% - 17.5rem);
}

.requirements__flowContBox p {
	line-height: 1.8;
	margin-bottom: 1.0rem;
}

.font-red {
	color: #c8000b;
}

.requirements__flowArrow {
	margin-bottom: 1.0rem;
	margin-top: 1.0rem;
	text-align: center;
}

.requirementsBottom {
	font-weight: normal;
	letter-spacing: 0.0625em;
	line-height: 1.625;
	margin-top: 1.25rem;
}

.requirementsContact {
	margin-top: 10.25rem;
}

.contactInner {
	background: var(--colorPalePink);
	border-radius: 1.25rem;
	color: var(--colorBlack);
	padding: 3.75rem 5rem;
}

.contactTitle__warp {
	text-align: center;
}

.contactInner a {
	color: var(--colorBlack);
}

.contactTellMail {
	align-items: center;
	display: flex;
}

.tell, .mail {
	width: 50%;
}

.contactTitleEn {
	color: var(--colorMain);
	font-size: 1.25rem;
	font-weight: 500;
}

.contactTitle {
	font-size: 2.0rem;
	font-weight: 700;
	margin-bottom: 2.0rem;
	margin-top: 1.25rem;
}

.contactSection {
	font-size: 1.25rem;
	font-weight: 700;
}

.contactSection span {
	margin: 0 0.25em;
}

.contactTellMail {
	background: url("../../images/orientation/bar_white.png") center center no-repeat;
	height: 58px;
	margin-top: 3.0rem;
}

.tell, .mail {
	align-items: center;
	color: var(--colorBlack);
	display: flex;
	font-size: 1.25rem;
	font-weight: bold;
	height: 58px;
	justify-content: center;
	text-align: center;
}

.tell a, .mail a {
	align-items: center;
	display: flex;
	font-weight: 500;
}

.mail a {
	text-decoration: underline;
}

.mail a:hover {
	text-decoration: none;
}

.tell a:before {
	background: url("../../images/orientation/icon_telephone.png") center center no-repeat;
	background-size: cover;
	content: "";
	display: block;
	height: 30px;
	margin-right: 0.625rem;
	width: 30px;
}

.mail a:before {
	background: url("../../images/orientation/icon_mail.png") center center no-repeat;
	background-size: cover;
	content: "";
	display: block;
	height: 30px;
	margin-right: 0.625rem;
	width: 30px;
}

.contactIcon {
	margin-right: 0.625rem;
}

.tell dl, .mail dl {
	align-items: center;
	display: flex;
}

.tell dd, .mail dd {
	font-weight: 500;
	padding-left: 1.0em;
}

.requirements__recruitmentBox {
	margin-top: 10.25rem;
}

.requirements__recruitmentBox p {
	font-size: 1.125rem;
	line-height: 1.8;
	margin-top: 2.0rem;
	text-align: center;
}


@media (max-width: 1279px) {
	.requirements__head-lead {
		flex-direction: column-reverse;
		flex-flow: column;
	}

	.requirements__lead-left {
		margin-top: 2.0rem;
		width: 100%;
	}

	.requirements__lead-img {
		position: static;
	}

	.requirements__lead-img img {
		margin-right: -40px;
		width: 100%;
	}

	.requirements__flowText {
		padding-inline: 0;
	}

	.contactTellMail {
		background: none;
		display: block;
		height: auto;
	}

	.tell, .mail {
		border-top: #fff solid 2px;
		height: auto;
		width: 100%;
	}

	.tell dl, .mail dl {
		display: block;
		line-height: 1.4;
		padding: 1.0rem 0;
		width: auto;
	}
}


@media (max-width: 1199px) {
	.requirements__flowList {
		flex-wrap: wrap;
		justify-content: center;
		padding: 0 0;
	}

	.requirements__flowList li {
		width: calc(100% / 3);
	}

	.requirements__flowCont {
		padding-left: 0;
		padding-right: 0;
	}
}

@media (max-width: 743px) {
	.br-pc {
		display: none;
	}

	.requirements {
		padding-top: 0;
	}

	.requirements__lead-img {
		margin-left: -30px;
		margin-right: -30px;
	}

	.requirements__lead-img img {
		margin-right: 0;
	}

	.requirements__lead {
		font-size: 1.125rem;
		text-align: center;
	}

	.requirements__lead-text p {
		font-size: 1.0rem;
	}

	.br-pc {
		display: none;
	}

	.requirements__lead-text {
		margin-top: 2.0rem;
	}

	.requirements__lead-left .sessionLink a {
		margin-left: auto;
		margin-right: auto;
		max-width: 278px;
		width: auto;
	}

	.requirements__section {
		padding-top: 4.625rem;
	}

	.requirements__table th, .requirements__table td {
		display: block;
		width: 100%;
	}

	.requirements__table th {
		font-size: 1.125rem;
		padding: 1.25rem 0;
		padding-bottom: 0;
		text-align: left;
	}

	.requirements__table td {
		padding: 0 0;
		padding-bottom: 1.25rem;
	}

	.list-link {
		display: block;
		margin-left: auto;
		margin-right: auto;
		width: 226px;
	}

	.requirements__flowBox {
		margin-top: 5.0rem;
	}

	.step_box {
		min-height: 70.5px;
		padding: 0 0;
		padding-left: 14px;
		padding-top: 7px;
	}

	.step_box dt {
		font-size: 1rem;
	}
	.step_box dd {
		font-size: 0.875rem;
	}

	.step_box dd {
		min-height: 57px;
	}

	.step_box::before {
		background: #6cd3e4;
		content: "";
		height: 48px;
		position: absolute;
		right: -22px;
		top: 21px;
		transform: rotate(44deg) skew(20deg, 20deg);
		width: 44.5px;
		z-index: 1;
	}

	.step_box.step_4::after {
		background: #fff;
		content: "";
		height: 44.5px;
		left: -22px;
		position: absolute;
		top: 21px;
		transform: rotate(45deg) skew(20deg, 20deg);
		width: 44.5px;
		z-index: 1;
	}

	.requirements__flowCont {
		margin-top: 3.25rem;
	}

	.requirements__flowContBox {
		display: block;
		padding: 0.875rem 0.875rem 0.5rem 0.875rem;
	}

	.requirements__flowContBox dd {
		width: 100%;
	}

	.requirements__flowContBox dt span {
		padding: 5px 26px 9px 26px;
	}

	.requirements__flowContBox dt p {
		font-size: 1.125rem;
	}

	.pageLead__hgroup p {
		line-height: 1.4;
		text-align: center !important;
	}

	.requirements__recruitmentBox p {
		font-size: 1.0rem;
		line-height: 1.6;
		text-align: left;
	}

	.requirements__recruitmentBox p span {
		display: block;
	}

	.requirementsContact {
		margin-top: 6.25rem;
	}

	.requirements__recruitmentBox {
		margin-top: 6.25rem;
	}

	.contactInner {
		margin-left: -1.875rem;
		margin-right: -1.875rem;
		padding: 3.25rem 2.0rem 2.5rem;
	}

	.contactTellMail {
		background: none;
		display: block;
		height: auto;
	}

	.contactTitleEn {
		font-size: 0.9375rem;
		;
	}

	.contactTitle {
		font-size: 1.50rem;
	}

	.contactSection {
		line-height: 1.6;
	}

	.contactSection span {
		display: block;
		margin: 0 0;
	}

	.tell, .mail {
		justify-content: flex-start;
		padding-left: 2rem;
	}

	.tell a:before, .mail a:before {
		height: 24px;
		width: 24px;
	}

	.tell dl, .mail dl {
		font-size: 1rem;
		padding-block: 0.8125rem;
	}

	.tell dt, .mail dt, .tell dd, .mail dd {
		text-align: left;
	}

	.tell dd, .mail dd {
		padding-left: 2.4375rem;
	}

	.contactTellMail {
		margin-top: 1.5rem;
	}
}




.mainvisual {
	margin-top: 4rem;
	padding-block: 6rem 3.5rem;
}

.mainvisual::after {
	background-image: url(../../images/orientation/img-sub-mainvisual-left-triangle.png);
	height: 38.3125rem;
	top: -4.625rem;
}

.mainvisual__title {
	letter-spacing: 0.019em;
}

.mainvisual__title span:nth-child(1) {
	letter-spacing: -0.208em;
}

.mainvisual__title span:nth-child(2), .mainvisual__title span:nth-child(4) {
	letter-spacing: -0.27em;
}

.mainvisual__title span:nth-child(3) {
	letter-spacing: -0.412em;
}

.sessionLink {
	margin-top: 3.875rem;
}

#selection-flow .sessionLink {
	margin-top: 3rem;
}

.sessionLink a {
	background: #c8000b;
	border-radius: 0.5rem;
	color: #fff;
	display: block;
	font-size: 1.25rem;
	font-weight: bold;
	line-height: 5.0rem;
	margin-left: auto;
	margin-right: auto;
	width: 22.0rem;
}

.sessionLink a span {
	align-items: center;
	display: flex;
	justify-content: center;
}

.sessionLink a span:after {
	background: url("../../images/orientation/icon_link_right.png") center center no-repeat;
	background-size: cover;
	content: "";
	display: block;
	height: 40px;
	margin-left: 1.25rem;
	width: 40px;
}

.mainvisualAttention {
	line-height: 1.4;
	margin-top: 1.5rem;
	text-align: center;
}

.orientation__section {
	padding-top: 6.7rem;
}

.orientation__column {
	display: grid;
	gap: 6.0625rem;
	grid-template-columns: 1fr 1fr;
}

.orientationItem {
	position: relative;
}

.orientation__title {
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: -0.04em;
	padding-left: 1.5rem;
	position: relative;
}

.orientation__title::before {
	background: var(--colorMain);
	border-radius: 2rem;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 0.375rem;
}

.orientationItem__title p {
	font-weight: normal;
	letter-spacing: 0.0625em;
	line-height: 1.75;
	margin-top: 2.1rem;
}

.orientation__pickupColumn {
	border: 0.125rem solid var(--colorLightBlue);
	border-radius: 0.5rem;
	margin-top: 2.5rem;
	padding: 2rem 1.6rem 1.8rem;
	position: relative;
}

.orientation__pickup {
	align-items: center;
	background: linear-gradient(to left, var(--colorLightGreen), var(--colorBlue));
	border-radius: 2rem;
	color: var(--colorWhite);
	display: flex;
	font-size: 1.125rem;
	height: 2.375rem;
	justify-content: center;
	left: 50%;
	padding-inline: 3rem;
	position: absolute;
	top: -1.2rem;
	transform: translateX(-50%);
	width: fit-content;
}

.orientationItem__list {
	line-height: 1.4;
	margin-left: 1.8rem;
}

.orientationItem__list li {
	color: var(--colorMain);
	font-size: 1.5rem;
	font-weight: 500;
	list-style: disc;
}

@media (max-width: 743px) {
	.sessionLink a {
		line-height: 3.125rem;
		padding-left: 28px;
		padding-right: 10px;
	}

	.sessionLink a span {
		font-size: 0.875rem;
		justify-content: space-between;
	}

	.sessionLink a span::after {
		height: 32px;
		width: 32px;
	}

	.main {
		padding-bottom: 6.25rem !important;
	}
}
