@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Agdasima&family=Montserrat:wght@500&family=Noto+Sans+JP:wght@400;500;700&display=swap");
/* Reset
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, button,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

main, article, aside, dialog, figure, footer, header,
hgroup, nav, section {
	display: block;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote::before, blockquote::after,
q::before, q::after {
	content: "";
	content: none;
}

/* remember to define focus styles! */
:focus {
	outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}

del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* Fonts
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
:lang(ja) {
	font-family: "Noto Sans JP", sans-serif;
}

:lang(en) {
	font-family: "Montserrat", sans-serif;
	font-weight: 500;
	/*font-variant-ligatures: none;*/
}

html {
	font-size: 62.5%;
}

body {
	line-height: 2.3;
	font-size: 1.6rem;
	font-weight: 400;
	color: #090F24;
	letter-spacing: 0;
	/* font-feature-settings: "palt"; */
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
	body {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
}
@media screen and (max-width: 1023px) {
	body {
		font-size: 1.4rem;
		line-height: 2;
	}
}
/* common
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
html {
	height: 100%;
}

body {
	background: #FFF;
	position: relative;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

p, ul, ol, dl {
	margin: 0 0 30px;
}

h1, h2, h3, h4, h5 {
	line-height: 1.5;
	margin: 0 0 30px;
	font-weight: bold;
	font-size: 3rem;
}

li {
	margin: 0 0 0 2.2em;
}

ul {
	list-style: disc;
}
ul ul {
	list-style: circle;
}
ul.no-style {
	list-style: none;
}
ul.no-style > li {
	margin-left: 0;
}

ol {
	list-style: decimal;
}
ol ol {
	counter-reset: number-child-list;
}
ol ol li {
	counter-increment: number-child-list;
	list-style: none;
	margin-left: 2.5em;
}
ol ol li::before {
	content: "(" counter(number-child-list) ")";
	width: 2.5em;
	display: inline-block;
	margin-left: -2.5em;
}
ol.parentheses {
	counter-reset: parentheses-list;
}
ol.parentheses li {
	counter-increment: parentheses-list;
	margin-left: 2.5em;
	list-style: none;
}
ol.parentheses li::before {
	content: "(" counter(parentheses-list) ")";
	width: 2.5em;
	display: inline-block;
	margin-left: -2.5em;
}

.hidden {
	display: none;
}

table {
	width: 100%;
	margin: 60px 0;
	padding: 20px 0;
	border-collapse: collapse;
}
table th, table td {
	padding: 30px;
	text-align: left;
}
table th p, table th ul, table th ol, table th dl, table td p, table td ul, table td ol, table td dl {
	margin: 0 0 20px;
}
table th :not(input):not(select):not(textarea):not(span):last-child, table td :not(input):not(select):not(textarea):not(span):last-child {
	margin-bottom: 0 !important;
}
table th {
	width: 30%;
	font-weight: 700;
	letter-spacing: 0.15em;
}
table tbody tr.combine > td {
	border-top: none;
	border-bottom-style: dashed;
}
table tbody tr:last-child > th, table tbody tr:last-child > td {
	border-bottom: none;
}
table tbody th[rowspan] ~ td {
	border-bottom-style: dashed;
}
table thead th {
	width: auto;
	text-align: center;
	border-top: none;
}
table tfoot th,
table tfoot td {
	border-bottom: none;
}
table caption {
	font-weight: bold;
	text-align: left;
}

hr {
	display: none;
}

img {
	max-width: 100%;
	height: auto;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	border: none;
	vertical-align: bottom;
	pointer-events: none;
}

i {
	font-style: normal;
}

em {
	font-style: normal;
	color: #090F24;
	font-weight: 700;
}

strong {
	font-weight: bold;
}

sup {
	vertical-align: top;
	line-height: 1.8;
	font-size: x-small;
}

ins {
	color: #C00;
}

a {
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	color: #090F24;
	text-decoration: none;
}
@media (hover: hover) {
	a:where(:-moz-any-link, :enabled, summary):hover {
		color: #090F24;
	}
	a:where(:any-link, :enabled, summary):hover {
		color: #090F24;
	}
}
a:hover span {
	cursor: pointer;
}
a.inactive, .inactive a {
	cursor: default;
	pointer-events: none;
}
a:not([class]) {
	text-decoration: underline;
	color: #090F24;
}
@media (hover: hover) {
	a:not([class]):where(:-moz-any-link, :enabled, summary):hover {
		color: #090F24;
	}
	a:not([class]):where(:any-link, :enabled, summary):hover {
		color: #090F24;
	}
}
@media screen and (min-width: 1024px) {
	a[href^="tel:"] {
		color: #090F24;
		text-decoration: none;
		pointer-events: none;
	}
}

input,
select,
textarea,
button {
	font-family: "Noto Sans JP", sans-serif;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	border-radius: 0;
	background: transparent;
	-webkit-transition: background-color 0.2s ease;
	transition: background-color 0.2s ease;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.8;
	overflow: visible;
}

input[type=submit],
button {
	cursor: pointer;
}

figcaption {
	text-align: left;
}

.italic {
	font-style: italic;
}

.note {
	font-size: 1.3rem;
	line-height: 1.8;
	color: #666;
}

.flow-root {
	display: flow-root;
}

.float-clear {
	clear: both;
}

.align-right {
	text-align: right;
}

.align-center {
	text-align: center;
}

.flex-end {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}

.flex-center {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

@media screen and (max-width: 1023px) {
	p, ul, ol, dl {
		margin: 0 0 20px;
	}
	h1, h2, h3, h4, h5 {
		margin: 0 0 20px;
		font-size: 1.8rem;
	}
	table {
		margin: 40px 0;
		padding: 0;
	}
	table th, table td {
		padding: 15px 5px;
		font-size: 1.3rem;
		width: auto;
	}
	.btn-area {
		margin: 40px 0;
	}
	input,
	select,
	textarea,
	button {
		font-size: 1.4rem;
	}
	.note {
		font-size: 1.1rem;
	}
}
@media screen and (min-width: 1024px) {
	.mob-only {
		display: none;
	}
}
@media screen and (max-width: 1023px) {
	.pc-only {
		display: none;
	}
	.mob-only {
		display: block;
	}
	br.mob-only {
		display: inline;
	}
}
.wrapper {
	overflow: clip;
}

.contents {
	display: flow-root;
	position: relative;
	padding-top: 150px;
}
@media screen and (max-width: 1023px) {
	.contents {
		padding-top: 54px;
	}
}
.contents::before {
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 114, 188, 0);
	-webkit-transition: 1s ease;
	transition: 1s ease;
}

.page {
	padding-top: 60px;
}
.page-header {
	width: min(75%, 1000px);
	margin: 0 auto 100px;
}
.page-title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 0.6em 0;
}
.page-title-en {
	font-size: 6.4rem;
	line-height: 1;
}
.page-title-ja {
	font-size: 2.4rem;
	color: #0072BC;
	line-height: 1.4;
}
@media screen and (max-width: 1023px) {
	.page-header {
		width: min(86%, 1280px);
		margin: 0 auto 50px;
	}
	.page-title-en {
		font-size: 4rem;
	}
	.page-title-ja {
		font-size: 1.8rem;
	}
}

.section {
	width: min(75%, 1000px);
	margin: 0 auto 100px;
	/* ul, ol {
		margin-left: max(5%, 20px);
	} */
}
.section--wide {
	width: 90%;
}
.section-heading {
	font-size: 3.2rem;
	color: #090F24;
	margin: 0 0 50px;
}
.section-child-heading {
	font-size: 2.4rem;
	margin: 50px 0 30px;
}
.section-child-2-heading {
	font-size: 1.6rem;
}
.section .without-bullets li {
	list-style: none;
	margin: 15px 0;
}
.section .without-bullets .arrow-s-icon {
	margin-left: 10px;
	vertical-align: middle;
}
.section .without-bullets .arrow-s-icon::before {
	-webkit-mask-size: 15px auto;
	        mask-size: 15px auto;
}
@media screen and (max-width: 1023px) {
	.section {
		width: min(86%, 1280px);
		margin: 0 auto 60px;
	}
	.section-heading {
		font-size: 2.2rem;
		margin: 0 0 30px;
	}
	.section-child-heading {
		font-size: 1.8rem;
		margin: 30px 0 20px;
	}
	.section-child-2-heading {
		font-size: 1.6rem;
	}
}

.article-list {
	width: min(86%, 1280px);
	margin: 0 auto;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 45px 1fr 45px 1fr;
	grid-template-columns: repeat(3, 1fr);
	gap: 50px 45px;
}
.article-card {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 10px 0;
}
.article-card .thumbnail {
	aspect-ratio: 480/295;
	max-width: none;
	width: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-webkit-transition: -webkit-transform 0.4s ease;
	transition: -webkit-transform 0.4s ease;
	transition: transform 0.4s ease;
	transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}
.article-card .thumbnail-wrap {
	position: relative;
	overflow: hidden;
	margin: 0 0 10px;
}
.article-card-title {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 0 10px;
}
@media (hover: hover) {
	.article-card-link:where(:-moz-any-link, :enabled, summary):hover .thumbnail {
		transform: scale(1.1);
	}
	.article-card-link:where(:any-link, :enabled, summary):hover .thumbnail {
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}
.article-card .tag {
	margin: 0 10px;
}
.article-date {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 1.5;
	border-right: 1px solid #D9D9D9;
	border-left: 1px solid #D9D9D9;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	padding: 0 10px;
	margin: 0 10px;
}
.article-date .new-stamp {
	display: inline-block;
	border-left: 1px solid #D9D9D9;
	color: #FF2F00;
	padding-left: 10px;
	margin-left: 10px;
}
@media screen and (max-width: 1023px) {
	.article-list {
		width: 90%;
		-ms-grid-columns: 1fr;
		grid-template-columns: repeat(1, 1fr);
		gap: 40px 0;
	}
	.article-card-title {
		font-size: 1.8rem;
		margin: 0 10px 5px;
	}
}

.modal {
	visibility: hidden;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1000;
	opacity: 0;
	-webkit-transition: visibility 0.4s, opacity 0.4s;
	transition: visibility 0.4s, opacity 0.4s;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	pointer-events: none;
}
.modal-mode body {
	overflow: hidden !important;
}
.modal.is-opened {
	visibility: visible;
	opacity: 1;
	pointer-events: initial;
}
.modal .overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.7);
}
.modal-inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	position: absolute;
	top: 30px;
	left: 30px;
	right: 30px;
	bottom: 30px;
	padding: 50px 0;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	overflow: auto;
	z-index: 2;
	background: #FFF;
}
.modal-section {
	width: min(86%, 1280px);
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
.modal-section > *:last-child {
	margin-bottom: 0;
}
.modal.video-modal .modal-inner {
	background: transparent;
	padding: 0;
	top: auto;
	left: auto;
	right: auto;
	bottom: auto;
	inset: 0;
	margin: auto;
	aspect-ratio: 16/9;
	width: min(80%, 1280px);
	height: auto;
}
.modal.video-modal .modal-section {
	width: 100%;
	margin: auto;
}
.modal.video-modal .modal-section .video {
	display: block;
	aspect-ratio: 16/9;
	width: 100%;
	height: auto;
}
.modal-heading {
	font-size: 1.8rem;
	margin: 0 0 30px;
}
.modal-heading:not(:first-child) {
	margin-top: 40px;
}
.modal .close-button .close-icon {
	background-color: #FFF !important;
}
@media screen and (max-width: 1023px) {
	.modal-inner {
		top: 73px;
		left: 24px;
		right: 24px;
		bottom: 24px;
	}
	.modal-heading {
		font-size: 1.4rem;
		margin: 0 0 20px;
	}
	.modal-heading:not(:first-child) {
		margin-top: 30px;
	}
	.modal.video-modal .modal-inner {
		width: auto;
		max-height: min(80%, 100% - 100px);
		inset: 0 5%;
	}
}

.close-button {
	position: fixed;
	z-index: 3;
	top: 45px;
	right: 60px;
	cursor: pointer;
	width: 60px;
	height: 60px;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
.close-button-label {
	position: absolute;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.close-button .close-icon {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	display: block;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	height: 100%;
	overflow: hidden;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_close.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_close.svg);
	-webkit-mask-size: 32px auto;
	        mask-size: 32px auto;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
	background-color: #090F24;
}
@media screen and (max-width: 1023px) {
	.close-button {
		top: 20px;
		right: calc((100% - 90%) / 2);
		width: 40px;
		height: 40px;
	}
}
@media (hover: hover) {
	.close-button:where(:-moz-any-link, :enabled, summary):hover .close-icon {
		background: #0072BC;
	}
	.close-button:where(:any-link, :enabled, summary):hover .close-icon {
		background: #0072BC;
	}
}

.arrow-icon, .job-index .career-regist-button .mail-icon,
.related-link .career-regist-button .mail-icon, .job-index .career-regist-button .arrow-l-icon,
.related-link .career-regist-button .arrow-l-icon, .related-site-buttons .x-icon, .utility-nav-link .arrow-l-icon, .nav-side-bar .cv-buttons .arrow-l-icon, .footer-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .footer-buttons .career-regist-button .mail-icon {
	display: inline-block;
	vertical-align: middle;
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 30px;
	height: 30px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	background-color: #090F24;
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow.svg);
	-webkit-mask-size: 15px auto;
	        mask-size: 15px auto;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
}
@media screen and (max-width: 1023px) {
	.arrow-icon, .job-index .career-regist-button .mail-icon,
	.related-link .career-regist-button .mail-icon, .job-index .career-regist-button .arrow-l-icon,
	.related-link .career-regist-button .arrow-l-icon, .related-site-buttons .x-icon, .utility-nav-link .arrow-l-icon, .nav-side-bar .cv-buttons .arrow-l-icon, .footer-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .footer-buttons .career-regist-button .mail-icon {
		width: 28px;
		height: 28px;
	}
}
a[target=_blank]:not([class]) .arrow-icon, a[target=_blank]:not([class]) .job-index .career-regist-button .mail-icon, .job-index .career-regist-button a[target=_blank]:not([class]) .mail-icon,
a[target=_blank]:not([class]) .related-link .career-regist-button .mail-icon,
.related-link .career-regist-button a[target=_blank]:not([class]) .mail-icon, a[target=_blank]:not([class]) .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button a[target=_blank]:not([class]) .arrow-l-icon,
a[target=_blank]:not([class]) .related-link .career-regist-button .arrow-l-icon,
.related-link .career-regist-button a[target=_blank]:not([class]) .arrow-l-icon, a[target=_blank]:not([class]) .related-site-buttons .x-icon, .related-site-buttons a[target=_blank]:not([class]) .x-icon, a[target=_blank]:not([class]) .utility-nav-link .arrow-l-icon, .utility-nav-link a[target=_blank]:not([class]) .arrow-l-icon, a[target=_blank]:not([class]) .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons a[target=_blank]:not([class]) .arrow-l-icon, a[target=_blank]:not([class]) .footer-buttons .arrow-l-icon, .footer-buttons a[target=_blank]:not([class]) .arrow-l-icon, a[target=_blank]:not([class]) .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons a[target=_blank]:not([class]) .career-regist-button .mail-icon, a[target=_blank]:not([class]) .footer-buttons .career-regist-button .mail-icon, .footer-buttons a[target=_blank]:not([class]) .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .career-regist-button a[target=_blank]:not([class]) .mail-icon, .footer-buttons .career-regist-button a[target=_blank]:not([class]) .mail-icon {
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow_ext.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow_ext.svg);
}

.tag {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 10px;
	margin: 0;
}
.tag-item {
	margin: 0;
	list-style: none;
}
.tag-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	font-size: 1.1rem;
	line-height: 1.5;
	color: #090F24;
	background: #FFF;
	border-radius: 13px;
	padding: 0.4em 1em;
	border: 1px solid #D9D9D9;
}
@media (hover: hover) {
	.tag-link:where(:-moz-any-link, :enabled, summary):hover {
		background: #090F24;
		color: #FFF;
	}
	.tag-link:where(:any-link, :enabled, summary):hover {
		background: #090F24;
		color: #FFF;
	}
}

.cookie-consent {
	position: fixed;
	z-index: 100;
	left: 0;
	right: 0;
	bottom: 0;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	color: #FFF;
	background: rgba(0, 114, 188, 0.85);
	visibility: hidden;
	-webkit-transform: translate(0, 100%);
	        transform: translate(0, 100%);
	-webkit-transition: 0.4s 0.2s ease;
	transition: 0.4s 0.2s ease;
	backdrop-filter: blur(10px);
}
.cookie-consent.is-visible {
	visibility: visible;
	-webkit-transform: translate(0, 0);
	        transform: translate(0, 0);
}
.cookie-consent-inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 30px;
	width: min(80%, 1200px);
	margin: 0 auto;
	padding: 20px 0;
}
.cookie-consent-description {
	font-size: 1.2rem;
	line-height: 1.8em;
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
	margin: 0;
}
.cookie-consent-description a {
	color: #D4E7FE;
}
.cookie-consent-accept-button {
	width: 190px;
	height: 50px;
	margin: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	text-align: center;
	background: #FFF;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.6;
	color: #090F24;
}
@media (hover: hover) {
	.cookie-consent-accept-button:where(:-moz-any-link, :enabled, summary):hover {
		color: #FFF;
		background: #090F24;
	}
	.cookie-consent-accept-button:where(:any-link, :enabled, summary):hover {
		color: #FFF;
		background: #090F24;
	}
}
.cookie-consent-close-button {
	text-indent: -100vw;
	overflow: hidden;
	width: 30px;
	height: 30px;
	position: absolute;
	top: 10px;
	right: 15px;
	cursor: pointer;
	margin: 0;
	padding: 0;
	border: none;
}
.cookie-consent-close-button::before, .cookie-consent-close-button::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 30px;
	border-top: 1px solid;
	color: #FFF;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	        transform: translate(-50%, -50%) rotate(45deg);
}
.cookie-consent-close-button::after {
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	        transform: translate(-50%, -50%) rotate(-45deg);
}
.cookie-consent-close-button:hover::before, .cookie-consent-close-button:hover::after {
	width: 40px;
}
@media screen and (max-width: 1023px) {
	.cookie-consent-inner {
		gap: 20px;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.cookie-consent-description {
		font-size: 1.2rem;
		line-height: 1.6;
	}
	.cookie-consent-accept-button {
		width: 170px;
		height: 40px;
		font-size: 1.5rem;
	}
	.cookie-consent-close-button {
		width: 20px;
		height: 20px;
		top: 7px;
		right: 10px;
	}
	.cookie-consent-close-button::before, .cookie-consent-close-button::after {
		width: 20px !important;
	}
}

.basic-button, .external-link-button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 10px;
	padding: 0 30px;
	margin: 0 auto;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.5em;
	width: auto;
	height: 53px;
	border-radius: 40px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	background: #FFF;
	border: 1px solid #D9D9D9;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
.basic-button-wrapper, .external-link-button-wrapper {
	margin: 50px auto;
}
@media (hover: hover) {
	.basic-button:where(:-moz-any-link, :enabled, summary):hover, .external-link-button:where(:-moz-any-link, :enabled, summary):hover {
		background: #090F24;
		color: #FFF;
	}
	.basic-button:where(:any-link, :enabled, summary):hover, .external-link-button:where(:any-link, :enabled, summary):hover {
		background: #090F24;
		color: #FFF;
	}
	.basic-button:where(:-moz-any-link, :enabled, summary):hover .arrow-icon, .external-link-button:where(:-moz-any-link, :enabled, summary):hover .arrow-icon, .basic-button:where(:-moz-any-link, :enabled, summary):hover .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .basic-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .external-link-button:where(:-moz-any-link, :enabled, summary):hover .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .external-link-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .basic-button:where(:-moz-any-link, :enabled, summary):hover .related-link .career-regist-button .mail-icon, .related-link .career-regist-button .basic-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .external-link-button:where(:-moz-any-link, :enabled, summary):hover .related-link .career-regist-button .mail-icon, .related-link .career-regist-button .external-link-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .basic-button:where(:-moz-any-link, :enabled, summary):hover .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .basic-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .external-link-button:where(:-moz-any-link, :enabled, summary):hover .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .external-link-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .basic-button:where(:-moz-any-link, :enabled, summary):hover .related-link .career-regist-button .arrow-l-icon, .related-link .career-regist-button .basic-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .external-link-button:where(:-moz-any-link, :enabled, summary):hover .related-link .career-regist-button .arrow-l-icon, .related-link .career-regist-button .external-link-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .basic-button:where(:-moz-any-link, :enabled, summary):hover .related-site-buttons .x-icon, .related-site-buttons .basic-button:where(:-moz-any-link, :enabled, summary):hover .x-icon, .external-link-button:where(:-moz-any-link, :enabled, summary):hover .related-site-buttons .x-icon, .related-site-buttons .external-link-button:where(:-moz-any-link, :enabled, summary):hover .x-icon, .basic-button:where(:-moz-any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon, .utility-nav-link .basic-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .external-link-button:where(:-moz-any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon, .utility-nav-link .external-link-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .basic-button:where(:-moz-any-link, :enabled, summary):hover .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .basic-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .external-link-button:where(:-moz-any-link, :enabled, summary):hover .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .external-link-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .basic-button:where(:-moz-any-link, :enabled, summary):hover .footer-buttons .arrow-l-icon, .footer-buttons .basic-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .external-link-button:where(:-moz-any-link, :enabled, summary):hover .footer-buttons .arrow-l-icon, .footer-buttons .external-link-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .basic-button:where(:-moz-any-link, :enabled, summary):hover .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .basic-button:where(:-moz-any-link, :enabled, summary):hover .career-regist-button .mail-icon, .external-link-button:where(:-moz-any-link, :enabled, summary):hover .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .external-link-button:where(:-moz-any-link, :enabled, summary):hover .career-regist-button .mail-icon, .basic-button:where(:-moz-any-link, :enabled, summary):hover .footer-buttons .career-regist-button .mail-icon, .footer-buttons .basic-button:where(:-moz-any-link, :enabled, summary):hover .career-regist-button .mail-icon, .external-link-button:where(:-moz-any-link, :enabled, summary):hover .footer-buttons .career-regist-button .mail-icon, .footer-buttons .external-link-button:where(:-moz-any-link, :enabled, summary):hover .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .career-regist-button .basic-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .footer-buttons .career-regist-button .basic-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .nav-side-bar .cv-buttons .career-regist-button .external-link-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .footer-buttons .career-regist-button .external-link-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon {
		background-color: #FFF;
	}
	.basic-button:where(:any-link, :enabled, summary):hover .arrow-icon, .external-link-button:where(:any-link, :enabled, summary):hover .arrow-icon, .basic-button:where(:any-link, :enabled, summary):hover .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .basic-button:where(:any-link, :enabled, summary):hover .mail-icon, .external-link-button:where(:any-link, :enabled, summary):hover .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .external-link-button:where(:any-link, :enabled, summary):hover .mail-icon,
	.basic-button:where(:any-link, :enabled, summary):hover .related-link .career-regist-button .mail-icon,
	.related-link .career-regist-button .basic-button:where(:any-link, :enabled, summary):hover .mail-icon,
	.external-link-button:where(:any-link, :enabled, summary):hover .related-link .career-regist-button .mail-icon,
	.related-link .career-regist-button .external-link-button:where(:any-link, :enabled, summary):hover .mail-icon, .basic-button:where(:any-link, :enabled, summary):hover .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .basic-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .external-link-button:where(:any-link, :enabled, summary):hover .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .external-link-button:where(:any-link, :enabled, summary):hover .arrow-l-icon,
	.basic-button:where(:any-link, :enabled, summary):hover .related-link .career-regist-button .arrow-l-icon,
	.related-link .career-regist-button .basic-button:where(:any-link, :enabled, summary):hover .arrow-l-icon,
	.external-link-button:where(:any-link, :enabled, summary):hover .related-link .career-regist-button .arrow-l-icon,
	.related-link .career-regist-button .external-link-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .basic-button:where(:any-link, :enabled, summary):hover .related-site-buttons .x-icon, .related-site-buttons .basic-button:where(:any-link, :enabled, summary):hover .x-icon, .external-link-button:where(:any-link, :enabled, summary):hover .related-site-buttons .x-icon, .related-site-buttons .external-link-button:where(:any-link, :enabled, summary):hover .x-icon, .basic-button:where(:any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon, .utility-nav-link .basic-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .external-link-button:where(:any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon, .utility-nav-link .external-link-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .basic-button:where(:any-link, :enabled, summary):hover .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .basic-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .external-link-button:where(:any-link, :enabled, summary):hover .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .external-link-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .basic-button:where(:any-link, :enabled, summary):hover .footer-buttons .arrow-l-icon, .footer-buttons .basic-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .external-link-button:where(:any-link, :enabled, summary):hover .footer-buttons .arrow-l-icon, .footer-buttons .external-link-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .basic-button:where(:any-link, :enabled, summary):hover .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .basic-button:where(:any-link, :enabled, summary):hover .career-regist-button .mail-icon, .external-link-button:where(:any-link, :enabled, summary):hover .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .external-link-button:where(:any-link, :enabled, summary):hover .career-regist-button .mail-icon, .basic-button:where(:any-link, :enabled, summary):hover .footer-buttons .career-regist-button .mail-icon, .footer-buttons .basic-button:where(:any-link, :enabled, summary):hover .career-regist-button .mail-icon, .external-link-button:where(:any-link, :enabled, summary):hover .footer-buttons .career-regist-button .mail-icon, .footer-buttons .external-link-button:where(:any-link, :enabled, summary):hover .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .career-regist-button .basic-button:where(:any-link, :enabled, summary):hover .mail-icon, .footer-buttons .career-regist-button .basic-button:where(:any-link, :enabled, summary):hover .mail-icon, .nav-side-bar .cv-buttons .career-regist-button .external-link-button:where(:any-link, :enabled, summary):hover .mail-icon, .footer-buttons .career-regist-button .external-link-button:where(:any-link, :enabled, summary):hover .mail-icon {
		background-color: #FFF;
	}
}
.basic-button-label {
	margin: 0 auto;
}
.basic-button .arrow-icon, .external-link-button .arrow-icon, .basic-button .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .basic-button .mail-icon, .external-link-button .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .external-link-button .mail-icon,
.basic-button .related-link .career-regist-button .mail-icon,
.related-link .career-regist-button .basic-button .mail-icon,
.external-link-button .related-link .career-regist-button .mail-icon,
.related-link .career-regist-button .external-link-button .mail-icon, .basic-button .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .basic-button .arrow-l-icon, .external-link-button .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .external-link-button .arrow-l-icon,
.basic-button .related-link .career-regist-button .arrow-l-icon,
.related-link .career-regist-button .basic-button .arrow-l-icon,
.external-link-button .related-link .career-regist-button .arrow-l-icon,
.related-link .career-regist-button .external-link-button .arrow-l-icon, .basic-button .related-site-buttons .x-icon, .related-site-buttons .basic-button .x-icon, .external-link-button .related-site-buttons .x-icon, .related-site-buttons .external-link-button .x-icon, .basic-button .utility-nav-link .arrow-l-icon, .utility-nav-link .basic-button .arrow-l-icon, .external-link-button .utility-nav-link .arrow-l-icon, .utility-nav-link .external-link-button .arrow-l-icon, .basic-button .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .basic-button .arrow-l-icon, .external-link-button .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .external-link-button .arrow-l-icon, .basic-button .footer-buttons .arrow-l-icon, .footer-buttons .basic-button .arrow-l-icon, .external-link-button .footer-buttons .arrow-l-icon, .footer-buttons .external-link-button .arrow-l-icon, .basic-button .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .basic-button .career-regist-button .mail-icon, .external-link-button .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .external-link-button .career-regist-button .mail-icon, .basic-button .footer-buttons .career-regist-button .mail-icon, .footer-buttons .basic-button .career-regist-button .mail-icon, .external-link-button .footer-buttons .career-regist-button .mail-icon, .footer-buttons .external-link-button .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .career-regist-button .basic-button .mail-icon, .footer-buttons .career-regist-button .basic-button .mail-icon, .nav-side-bar .cv-buttons .career-regist-button .external-link-button .mail-icon, .footer-buttons .career-regist-button .external-link-button .mail-icon {
	margin: 0;
	background-color: #090F24;
}
@media screen and (max-width: 1023px) {
	.basic-button-wrapper, .external-link-button-wrapper {
		margin: 30px auto;
	}
	.basic-button .arrow-icon, .external-link-button .arrow-icon, .basic-button .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .basic-button .mail-icon, .external-link-button .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .external-link-button .mail-icon,
	.basic-button .related-link .career-regist-button .mail-icon,
	.related-link .career-regist-button .basic-button .mail-icon,
	.external-link-button .related-link .career-regist-button .mail-icon,
	.related-link .career-regist-button .external-link-button .mail-icon, .basic-button .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .basic-button .arrow-l-icon, .external-link-button .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .external-link-button .arrow-l-icon,
	.basic-button .related-link .career-regist-button .arrow-l-icon,
	.related-link .career-regist-button .basic-button .arrow-l-icon,
	.external-link-button .related-link .career-regist-button .arrow-l-icon,
	.related-link .career-regist-button .external-link-button .arrow-l-icon, .basic-button .related-site-buttons .x-icon, .related-site-buttons .basic-button .x-icon, .external-link-button .related-site-buttons .x-icon, .related-site-buttons .external-link-button .x-icon, .basic-button .utility-nav-link .arrow-l-icon, .utility-nav-link .basic-button .arrow-l-icon, .external-link-button .utility-nav-link .arrow-l-icon, .utility-nav-link .external-link-button .arrow-l-icon, .basic-button .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .basic-button .arrow-l-icon, .external-link-button .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .external-link-button .arrow-l-icon, .basic-button .footer-buttons .arrow-l-icon, .footer-buttons .basic-button .arrow-l-icon, .external-link-button .footer-buttons .arrow-l-icon, .footer-buttons .external-link-button .arrow-l-icon, .basic-button .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .basic-button .career-regist-button .mail-icon, .external-link-button .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .external-link-button .career-regist-button .mail-icon, .basic-button .footer-buttons .career-regist-button .mail-icon, .footer-buttons .basic-button .career-regist-button .mail-icon, .external-link-button .footer-buttons .career-regist-button .mail-icon, .footer-buttons .external-link-button .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .career-regist-button .basic-button .mail-icon, .footer-buttons .career-regist-button .basic-button .mail-icon, .nav-side-bar .cv-buttons .career-regist-button .external-link-button .mail-icon, .footer-buttons .career-regist-button .external-link-button .mail-icon {
		margin: 0 0 0 auto;
	}
}

.more-button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 10px;
	padding: 0 40px;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.5em;
	width: 285px;
	height: 53px;
	border-radius: 40px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	background: #FFF;
	border: 1px solid #D9D9D9;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
.more-button-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: min(86%, 1280px);
	margin: 80px auto 0;
}
.more-button--small {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	font-size: 1.2rem;
	margin-left: auto;
	text-decoration: underline;
	padding: 0;
	width: auto !important;
	height: auto;
	border: none;
	background: transparent !important;
	color: #090F24 !important;
}
.more-button--small .arrow-icon, .more-button--small .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .more-button--small .mail-icon,
.more-button--small .related-link .career-regist-button .mail-icon,
.related-link .career-regist-button .more-button--small .mail-icon, .more-button--small .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .more-button--small .arrow-l-icon,
.more-button--small .related-link .career-regist-button .arrow-l-icon,
.related-link .career-regist-button .more-button--small .arrow-l-icon, .more-button--small .related-site-buttons .x-icon, .related-site-buttons .more-button--small .x-icon, .more-button--small .utility-nav-link .arrow-l-icon, .utility-nav-link .more-button--small .arrow-l-icon, .more-button--small .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .more-button--small .arrow-l-icon, .more-button--small .footer-buttons .arrow-l-icon, .footer-buttons .more-button--small .arrow-l-icon, .more-button--small .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .more-button--small .career-regist-button .mail-icon, .more-button--small .footer-buttons .career-regist-button .mail-icon, .footer-buttons .more-button--small .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .career-regist-button .more-button--small .mail-icon, .footer-buttons .career-regist-button .more-button--small .mail-icon {
	background-color: #090F24 !important;
}
.more-button:disabled {
	display: none;
}
@media (hover: hover) {
	.more-button:where(:-moz-any-link, :enabled, summary):hover {
		background: #090F24;
		color: #FFF;
	}
	.more-button:where(:any-link, :enabled, summary):hover {
		background: #090F24;
		color: #FFF;
	}
	.more-button:where(:-moz-any-link, :enabled, summary):hover .arrow-icon, .more-button:where(:-moz-any-link, :enabled, summary):hover .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .more-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .more-button:where(:-moz-any-link, :enabled, summary):hover .related-link .career-regist-button .mail-icon, .related-link .career-regist-button .more-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .more-button:where(:-moz-any-link, :enabled, summary):hover .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .more-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .more-button:where(:-moz-any-link, :enabled, summary):hover .related-link .career-regist-button .arrow-l-icon, .related-link .career-regist-button .more-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .more-button:where(:-moz-any-link, :enabled, summary):hover .related-site-buttons .x-icon, .related-site-buttons .more-button:where(:-moz-any-link, :enabled, summary):hover .x-icon, .more-button:where(:-moz-any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon, .utility-nav-link .more-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .more-button:where(:-moz-any-link, :enabled, summary):hover .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .more-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .more-button:where(:-moz-any-link, :enabled, summary):hover .footer-buttons .arrow-l-icon, .footer-buttons .more-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .more-button:where(:-moz-any-link, :enabled, summary):hover .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .more-button:where(:-moz-any-link, :enabled, summary):hover .career-regist-button .mail-icon, .more-button:where(:-moz-any-link, :enabled, summary):hover .footer-buttons .career-regist-button .mail-icon, .footer-buttons .more-button:where(:-moz-any-link, :enabled, summary):hover .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .career-regist-button .more-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .footer-buttons .career-regist-button .more-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon {
		background-color: #FFF;
	}
	.more-button:where(:any-link, :enabled, summary):hover .arrow-icon, .more-button:where(:any-link, :enabled, summary):hover .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .more-button:where(:any-link, :enabled, summary):hover .mail-icon,
	.more-button:where(:any-link, :enabled, summary):hover .related-link .career-regist-button .mail-icon,
	.related-link .career-regist-button .more-button:where(:any-link, :enabled, summary):hover .mail-icon, .more-button:where(:any-link, :enabled, summary):hover .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .more-button:where(:any-link, :enabled, summary):hover .arrow-l-icon,
	.more-button:where(:any-link, :enabled, summary):hover .related-link .career-regist-button .arrow-l-icon,
	.related-link .career-regist-button .more-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .more-button:where(:any-link, :enabled, summary):hover .related-site-buttons .x-icon, .related-site-buttons .more-button:where(:any-link, :enabled, summary):hover .x-icon, .more-button:where(:any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon, .utility-nav-link .more-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .more-button:where(:any-link, :enabled, summary):hover .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .more-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .more-button:where(:any-link, :enabled, summary):hover .footer-buttons .arrow-l-icon, .footer-buttons .more-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .more-button:where(:any-link, :enabled, summary):hover .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .more-button:where(:any-link, :enabled, summary):hover .career-regist-button .mail-icon, .more-button:where(:any-link, :enabled, summary):hover .footer-buttons .career-regist-button .mail-icon, .footer-buttons .more-button:where(:any-link, :enabled, summary):hover .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .career-regist-button .more-button:where(:any-link, :enabled, summary):hover .mail-icon, .footer-buttons .career-regist-button .more-button:where(:any-link, :enabled, summary):hover .mail-icon {
		background-color: #FFF;
	}
}
.more-button .arrow-icon, .more-button .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .more-button .mail-icon,
.more-button .related-link .career-regist-button .mail-icon,
.related-link .career-regist-button .more-button .mail-icon, .more-button .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .more-button .arrow-l-icon,
.more-button .related-link .career-regist-button .arrow-l-icon,
.related-link .career-regist-button .more-button .arrow-l-icon, .more-button .related-site-buttons .x-icon, .related-site-buttons .more-button .x-icon, .more-button .utility-nav-link .arrow-l-icon, .utility-nav-link .more-button .arrow-l-icon, .more-button .nav-side-bar .cv-buttons .arrow-l-icon, .nav-side-bar .cv-buttons .more-button .arrow-l-icon, .more-button .footer-buttons .arrow-l-icon, .footer-buttons .more-button .arrow-l-icon, .more-button .nav-side-bar .cv-buttons .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .more-button .career-regist-button .mail-icon, .more-button .footer-buttons .career-regist-button .mail-icon, .footer-buttons .more-button .career-regist-button .mail-icon, .nav-side-bar .cv-buttons .career-regist-button .more-button .mail-icon, .footer-buttons .career-regist-button .more-button .mail-icon {
	margin: 0 0 0 auto;
	background-color: #090F24;
}
@media screen and (max-width: 1023px) {
	.more-button {
		width: min(100%, 285px);
	}
	.more-button-wrapper {
		width: 90%;
		margin: 60px auto 0;
	}
}

.box, .border-box {
	background: #F7F7F7;
	padding: 60px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	border-radius: 20px;
}
.box:not(.section), .border-box:not(.section) {
	margin-top: 50px;
	margin-bottom: 50px;
}
.box :first-child, .border-box :first-child {
	margin-top: 0;
}
.box :last-child, .border-box :last-child {
	margin-bottom: 0;
}
@media screen and (max-width: 1023px) {
	.box, .border-box {
		padding: 30px 20px;
	}
	.box:not(.section), .border-box:not(.section) {
		margin-top: 30px;
		margin-bottom: 30px;
	}
}

.border-box {
	background-color: transparent;
	border-radius: 0;
	border-top: 1px solid #D9D9D9;
	border-bottom: 1px solid #D9D9D9;
}

.search-by-tag > .tag-group {
	gap: 50px 0 !important;
	margin-bottom: 0;
}
.search-by-tag > .tag-group .tag-group-item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.search-by-tag > .tag-group .tag-group-title {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 14em;
	font-size: 2.4rem;
	line-height: 1.5;
	font-weight: 500;
	border-right: 1px solid #D9D9D9;
	padding: 0 30px 0 0;
}
.box .search-by-tag > .tag-group .tag-group-title, .border-box .search-by-tag > .tag-group .tag-group-title {
	width: 8em;
}

.search-by-tag > .tag-group .tag-group-content {
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
	margin-left: 30px;
}
@media screen and (max-width: 1023px) {
	.search-by-tag > .tag-group {
		gap: 40px 0 !important;
	}
	.search-by-tag > .tag-group .tag-group-item {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.search-by-tag > .tag-group .tag-group-title {
		width: auto;
		font-size: 1.8rem;
		border-right: none;
		padding: 0;
		margin-bottom: 20px;
	}
	.search-by-tag > .tag-group .tag-group-content {
		margin-left: 0;
	}
	.search-by-tag .tag {
		margin: 0;
	}
}

.search-form {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 10px;
	width: 290px;
	height: 43px;
	border-radius: 10px;
	padding: 0 10px 0 20px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	background: #F7F7F7;
}
.search-form--large {
	width: min(100%, 800px);
	height: 64px;
	margin: 0 auto;
}
.box .search-form, .border-box .search-form {
	background: #FFF;
}

.search-form-text {
	-webkit-box-ordinal-group: 3;
	    -ms-flex-order: 2;
	        order: 2;
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
	width: 100%;
	font-size: 1.6rem;
	font-weight: 500;
}
.search-form-submit {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	-webkit-box-ordinal-group: 2;
	    -ms-flex-order: 1;
	        order: 1;
	width: 30px;
	height: 30px;
	background: #ACACAC;
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_search.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_search.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
	-webkit-mask-size: 25px auto;
	        mask-size: 25px auto;
	text-indent: 100%;
	overflow: hidden;
}
@media (hover: hover) {
	.search-form-submit:where(:-moz-any-link, :enabled, summary):hover {
		background-color: #0072BC;
	}
	.search-form-submit:where(:any-link, :enabled, summary):hover {
		background-color: #0072BC;
	}
}
@media screen and (max-width: 1023px) {
	.search-form {
		width: auto;
	}
	.search-form--large {
		height: 43px;
	}
}

.pagination {
	width: auto;
	border-top: 1px solid #D9D9D9;
	margin: 100px 0;
}
.pagination-number {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	padding: 60px 0 0;
	gap: 10px;
}
.pagination-number a, .pagination-number span {
	width: 50px;
	height: 50px;
	text-align: center;
	display: -ms-grid;
	display: grid;
	place-items: center;
	border-radius: 25px;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	border: 1px solid transparent;
}
.pagination-number a.is-current, .pagination-number span.is-current {
	background: #090F24;
	color: #FFF;
}
@media (hover: hover) {
	.pagination-number a:where(:-moz-any-link, :enabled, summary):hover {
		border: 1px solid #090F24;
	}
	.pagination-number a:where(:any-link, :enabled, summary):hover {
		border: 1px solid #090F24;
	}
}
@media screen and (max-width: 1023px) {
	.pagination {
		margin: 50px 0;
	}
	.pagination-number {
		padding: 30px 0 0;
	}
	.pagination-number a, .pagination-number span {
		width: 40px;
		height: 40px;
		border-radius: 20px;
	}
}

.content-number {
	font-size: 2rem;
	color: #0072BC;
	border-bottom: 1px solid;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	line-height: 1.4;
	padding: 0 0 0.2em;
	margin: -20px 0 0 !important;
}
@media screen and (max-width: 1023px) {
	.content-number {
		font-size: 1.6rem;
		margin: -10px 0 0 !important;
	}
}

.nav-side-bar .cv-buttons .career-regist-button,
.nav-side-bar .cv-buttons .recruitment-button, .footer-buttons .career-regist-button,
.footer-buttons .recruitment-button,
.footer-buttons .division-recruit-button {
	position: relative;
	z-index: 2;
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 0%;
	        flex: 1 1 0%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	height: 88px;
	color: #FFF;
	font-size: 1.4rem;
	line-height: 1.5;
	border-radius: 6px;
	font-weight: 500;
}
.nav-side-bar .cv-buttons .career-regist-button::before,
.nav-side-bar .cv-buttons .recruitment-button::before, .footer-buttons .career-regist-button::before,
.footer-buttons .recruitment-button::before,
.footer-buttons .division-recruit-button::before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	inset: 0;
	border-radius: 6px;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
@media (hover: hover) {
	.nav-side-bar .cv-buttons .career-regist-button:where(:-moz-any-link, :enabled, summary):hover::before, .nav-side-bar .cv-buttons .recruitment-button:where(:-moz-any-link, :enabled, summary):hover::before, .footer-buttons .career-regist-button:where(:-moz-any-link, :enabled, summary):hover::before, .footer-buttons .recruitment-button:where(:-moz-any-link, :enabled, summary):hover::before, .footer-buttons .division-recruit-button:where(:-moz-any-link, :enabled, summary):hover::before {
		opacity: 0.8;
	}
	.nav-side-bar .cv-buttons .career-regist-button:where(:any-link, :enabled, summary):hover::before,
	.nav-side-bar .cv-buttons .recruitment-button:where(:any-link, :enabled, summary):hover::before, .footer-buttons .career-regist-button:where(:any-link, :enabled, summary):hover::before,
	.footer-buttons .recruitment-button:where(:any-link, :enabled, summary):hover::before,
	.footer-buttons .division-recruit-button:where(:any-link, :enabled, summary):hover::before {
		opacity: 0.8;
	}
}
@media screen and (max-width: 1023px) {
	.nav-side-bar .cv-buttons .career-regist-button,
	.nav-side-bar .cv-buttons .recruitment-button, .footer-buttons .career-regist-button,
	.footer-buttons .recruitment-button,
	.footer-buttons .division-recruit-button {
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 auto;
		        flex: 0 0 auto;
	}
}

.nav-side-bar .cv-buttons .career-regist-button::before, .footer-buttons .career-regist-button::before {
	background: #142F49;
}
.nav-side-bar .cv-buttons .career-regist-button .mail-icon, .footer-buttons .career-regist-button .mail-icon {
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_mail.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_mail.svg);
	-webkit-mask-size: 24px auto;
	        mask-size: 24px auto;
	background-color: #FFF;
}

.nav-side-bar .cv-buttons .recruitment-button::before, .footer-buttons .recruitment-button::before {
	background: -webkit-gradient(linear, left top, right top, from(#2F6FB2), to(#3C8291));
	background: linear-gradient(90deg, #2F6FB2 0%, #3C8291 100%);
}

.nav-side-bar .cv-buttons .arrow-l-icon, .footer-buttons .arrow-l-icon {
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow_l.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow_l.svg);
	-webkit-mask-size: 15px auto;
	        mask-size: 15px auto;
	margin: 0 -5px 0 auto;
	background-color: #FFF;
}

.header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	height: 150px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 16px;
	padding: 0 calc((100% - 90%) / 2);
	background: #FFF;
	-webkit-transition: height 0.2s ease;
	transition: height 0.2s ease;
}
@media screen and (max-width: 1023px) {
	.header {
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		padding: 0 15px;
		height: 54px !important;
	}
}
.on-scroll .header {
	height: 80px;
}

.header .site-title {
	-webkit-box-ordinal-group: 3;
	    -ms-flex-order: 2;
	        order: 2;
	position: relative;
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	height: 100%;
	margin: 0 auto 0 0;
}
.header .site-title:first-child:last-child {
	margin-inline: auto;
}
.header .site-title-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 20px;
}
.header .site-title-logo {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 87px;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
.on-scroll .header .site-title-logo {
	width: 70px;
}

.header .site-title-logo-image {
	height: auto;
	vertical-align: top;
}
.header .site-title-text {
	font-size: 1.2rem;
	line-height: 1.6;
	font-weight: 500;
}
.header .site-title-text .corporate {
	font-size: 1rem;
	font-weight: 400;
}
@media screen and (min-width: 1024px) {
	.header .site-title {
		display: -webkit-box !important;
		display: -ms-flexbox !important;
		display: flex !important;
		opacity: 1 !important;
		visibility: visible !important;
	}
}
@media screen and (max-width: 1023px) {
	.header .site-title {
		position: absolute;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		inset: 0;
		margin: auto;
	}
	.header .site-title-logo {
		width: 50px !important;
	}
	.header .site-title-text {
		display: none;
	}
}
@media screen and (max-width: 1023px) {
	.header .always-visible-nav {
		display: none !important;
	}
}
.header .search-form-wrapper--foldable {
	position: relative;
	-webkit-box-ordinal-group: 6;
	    -ms-flex-order: 5;
	        order: 5;
}
.header .search-form-wrapper--foldable .search-form {
	width: 30px;
	background: transparent;
	margin: 0;
	padding: 0;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	max-width: 290px;
}
.header .search-form-wrapper--foldable .search-form-submit {
	background-color: #090F24;
}
@media (hover: hover) {
	.header .search-form-wrapper--foldable .search-form-submit:where(:-moz-any-link, :enabled, summary):hover {
		background-color: #0072BC;
	}
	.header .search-form-wrapper--foldable .search-form-submit:where(:any-link, :enabled, summary):hover {
		background-color: #0072BC;
	}
}
@media screen and (max-width: 1023px) {
	.header .search-form-wrapper--foldable .search-form-submit {
		width: 40px;
		height: 40px;
		-webkit-mask-size: 33px auto;
		        mask-size: 33px auto;
	}
}
.header .search-form-wrapper--foldable .search-form-button {
	position: absolute;
	z-index: 2;
	inset: 0;
	white-space: nowrap;
	text-indent: 100%;
	overflow: hidden;
}
@media screen and (max-width: 1023px) {
	.header .search-form-wrapper--foldable .search-form {
		max-width: none;
	}
}
.header .search-form-wrapper--foldable.is-opened .search-form {
	background: #F7F7F7;
	padding: 0 10px 0 20px;
}
.header .search-form-wrapper--foldable.is-opened .search-form-submit {
	background-color: #ACACAC;
}
@media (hover: hover) {
	.header .search-form-wrapper--foldable.is-opened .search-form-submit:where(:-moz-any-link, :enabled, summary):hover {
		background-color: #0072BC;
	}
	.header .search-form-wrapper--foldable.is-opened .search-form-submit:where(:any-link, :enabled, summary):hover {
		background-color: #0072BC;
	}
}
.header .search-form-wrapper--foldable.is-opened .search-form-button {
	display: none;
}
.header-buttons {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	-webkit-box-ordinal-group: 7;
	    -ms-flex-order: 6;
	        order: 6;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 10px;
}
.header-buttons .recruitment-button,
.header-buttons .career-site-button {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	padding: 0 0 0 20px;
	font-size: clamp(1.2rem, 0.9vw, 1.5rem);
	font-weight: 500;
	line-height: 1.4em;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	height: 49px;
	border-radius: 30px;
	color: #FFF;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	background: #0072BC;
	border: 1px solid #0072BC;
}
@media (hover: hover) {
	.header-buttons .recruitment-button:where(:-moz-any-link, :enabled, summary):hover, .header-buttons .career-site-button:where(:-moz-any-link, :enabled, summary):hover {
		background: #FFF;
		color: #0072BC;
	}
	.header-buttons .recruitment-button:where(:any-link, :enabled, summary):hover,
	.header-buttons .career-site-button:where(:any-link, :enabled, summary):hover {
		background: #FFF;
		color: #0072BC;
	}
	.header-buttons .recruitment-button:where(:-moz-any-link, :enabled, summary):hover .arrow-icon, .header-buttons .recruitment-button:where(:-moz-any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon, .utility-nav-link .header-buttons .recruitment-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .header-buttons .recruitment-button:where(:-moz-any-link, :enabled, summary):hover .related-site-buttons .x-icon, .related-site-buttons .header-buttons .recruitment-button:where(:-moz-any-link, :enabled, summary):hover .x-icon, .header-buttons .career-site-button:where(:-moz-any-link, :enabled, summary):hover .arrow-icon, .header-buttons .career-site-button:where(:-moz-any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon, .utility-nav-link .header-buttons .career-site-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .header-buttons .career-site-button:where(:-moz-any-link, :enabled, summary):hover .related-site-buttons .x-icon, .related-site-buttons .header-buttons .career-site-button:where(:-moz-any-link, :enabled, summary):hover .x-icon {
		background-color: #0072BC;
	}
	.header-buttons .recruitment-button:where(:any-link, :enabled, summary):hover .arrow-icon, .header-buttons .recruitment-button:where(:any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon, .utility-nav-link .header-buttons .recruitment-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .header-buttons .recruitment-button:where(:any-link, :enabled, summary):hover .related-site-buttons .x-icon, .related-site-buttons .header-buttons .recruitment-button:where(:any-link, :enabled, summary):hover .x-icon,
	.header-buttons .career-site-button:where(:any-link, :enabled, summary):hover .arrow-icon,
	.header-buttons .career-site-button:where(:any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon,
	.utility-nav-link .header-buttons .career-site-button:where(:any-link, :enabled, summary):hover .arrow-l-icon,
	.header-buttons .career-site-button:where(:any-link, :enabled, summary):hover .related-site-buttons .x-icon,
	.related-site-buttons .header-buttons .career-site-button:where(:any-link, :enabled, summary):hover .x-icon {
		background-color: #0072BC;
	}
}
.header-buttons .recruitment-button .arrow-icon, .header-buttons .recruitment-button .utility-nav-link .arrow-l-icon, .utility-nav-link .header-buttons .recruitment-button .arrow-l-icon, .header-buttons .recruitment-button .related-site-buttons .x-icon, .related-site-buttons .header-buttons .recruitment-button .x-icon,
.header-buttons .career-site-button .arrow-icon,
.header-buttons .career-site-button .utility-nav-link .arrow-l-icon,
.utility-nav-link .header-buttons .career-site-button .arrow-l-icon,
.header-buttons .career-site-button .related-site-buttons .x-icon,
.related-site-buttons .header-buttons .career-site-button .x-icon {
	background-color: #FFF;
	margin: 0 8px 0 auto;
}
@media screen and (max-width: 1023px) {
	.header-buttons {
		display: none;
	}
}

.nav {
	-webkit-box-ordinal-group: 2;
	    -ms-flex-order: 1;
	        order: 1;
}
.nav-mode body {
	overflow: hidden !important;
}
.nav-button {
	position: relative;
	cursor: pointer;
	width: 60px;
	height: 60px;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	vertical-align: top;
}
.nav-button-inner {
	display: block;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	height: 100%;
	overflow: hidden;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_menu.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_menu.svg);
	-webkit-mask-size: 35px auto;
	        mask-size: 35px auto;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
	background-color: #090F24;
}
.nav-button-inner::before, .nav-button-inner::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	border-top: 2px solid #000;
	width: 45px;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	margin: -8px 0 0;
}
.nav-button-inner::after {
	margin: 8px 0 0;
}
@media (hover: hover) {
	.nav-button:where(:-moz-any-link, :enabled, summary):hover .nav-button-inner {
		background-color: #0072BC;
	}
	.nav-button:where(:any-link, :enabled, summary):hover .nav-button-inner {
		background-color: #0072BC;
	}
}
.nav-mode .nav-button {
	visibility: hidden;
	opacity: 0;
}

.nav-inner {
	visibility: hidden;
	position: fixed;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	z-index: 4;
	inset: 0;
	padding: 60px 0 0;
	gap: 60px 0;
	opacity: 0;
	-webkit-transition: visibility 0.4s ease, opacity 0.4s ease;
	transition: visibility 0.4s ease, opacity 0.4s ease;
	overflow: auto;
	pointer-events: none;
	background: #FFF;
}
.nav.is-opened .nav-inner {
	visibility: visible;
	opacity: 1;
	pointer-events: initial;
}
.nav-content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: min(75%, 1000px);
	margin: auto auto 0;
	gap: 0 10%;
}
.nav-list {
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	list-style: none;
	gap: 3vh 0;
	margin: 0;
}
.nav-item {
	margin: 0;
}
.nav-link {
	text-decoration: none;
}
.nav-link::before {
	content: "";
	display: block;
	width: 13px;
	height: 13px;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	margin: 0 0 3px;
}
.nav-link.work-and-challenge::before {
	background-color: #0072BC;
}
.nav-link.career-and-workstyle::before {
	background-color: #2EADB2;
}
.nav-link.technology::before {
	background-color: #566DBE;
}
.nav-link.organization-and-strategy::before {
	background-color: #51A1F4;
}
.nav-link.system-and-culture::before {
	background-color: #CD3A20;
}
.nav-label {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 3px 0;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	line-height: 1.4;
}
.nav-label-ja {
	font-size: 2.8rem;
	font-weight: 500;
}
.nav-label-en {
	font-size: 1.4rem;
}
.nav-side-bar {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 auto;
	        flex: 1 1 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	color: #FFF;
	width: min(45%, 415px);
	gap: 40px 0;
}
.nav-side-bar .site-title {
	margin: 0 0 40px;
	height: auto;
}
.nav-side-bar .site-title-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 40px;
}
.nav-side-bar .site-title-logo {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 125px !important;
}
.nav-side-bar .site-title-text {
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
	font-size: 1.6rem;
	line-height: 1.6;
	font-weight: 500;
}
.nav-side-bar .search-form {
	width: auto;
}
.nav-side-bar .cv-buttons {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 10px 1fr;
	grid-template-columns: 1fr 1fr;
	gap: 0 10px;
}
.nav-side-bar .cv-buttons .career-regist-button,
.nav-side-bar .cv-buttons .recruitment-button {
	gap: 0 8px;
	padding: 0 min(5vw, 20px);
	word-break: keep-all;
	overflow-wrap: anywhere;
}
@media screen and (max-width: 1023px) {
	.nav-side-bar .cv-buttons {
		margin-block: 0 20px;
	}
}
.nav-side-bar .nav-tag-heading {
	color: #090F24;
	font-size: 1.4rem;
	font-weight: 500;
	margin: 0 0 10px;
}
.nav-side-bar .nav-tag .tag {
	margin: 0 0 20px;
}
.nav-side-bar .nav-tag-button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	font-size: 1.2rem;
	margin-left: auto;
	text-decoration: underline;
}
.nav-side-bar .nav-tag-button .arrow-icon, .nav-side-bar .nav-tag-button .utility-nav-link .arrow-l-icon, .utility-nav-link .nav-side-bar .nav-tag-button .arrow-l-icon, .nav-side-bar .nav-tag-button .related-site-buttons .x-icon, .related-site-buttons .nav-side-bar .nav-tag-button .x-icon {
	background: #090F24;
}
.nav .close-button {
	z-index: 5;
	visibility: hidden;
	opacity: 0;
	top: 45px;
	left: calc((100% - 90%) / 2);
}
.nav-mode .nav .close-button {
	visibility: visible;
	opacity: 1;
}

@media screen and (max-width: 1023px) {
	.nav-button {
		width: 40px;
		height: 40px;
	}
	.nav-inner {
		inset: 54px 0 0;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		padding: 30px 0 60px;
	}
	.nav-content {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: stretch;
		    -ms-flex-align: stretch;
		        align-items: stretch;
		width: min(86%, 1280px);
		gap: 60px 0;
		margin: auto;
	}
	.nav-list {
		gap: 30px 0;
	}
	.nav-label {
		gap: 2px 0;
	}
	.nav-label-ja {
		font-size: 1.8rem;
	}
	.nav-label-en {
		font-size: 1.4rem;
	}
	.nav-side-bar {
		-webkit-box-flex: 1;
		    -ms-flex: 1 1 auto;
		        flex: 1 1 auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		color: #FFF;
		width: auto;
		gap: 0;
	}
	.nav-side-bar .site-title {
		position: relative;
		inset: 0;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		margin: 0 auto 20px;
	}
	.nav-side-bar .site-title-wrapper {
		margin: auto;
		height: auto !important;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		margin-bottom: 20px;
	}
	.nav-side-bar .site-title-link {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		gap: 0 36px;
	}
	.nav-side-bar .site-title-logo {
		width: 95px !important;
	}
	.nav-side-bar .site-title-text {
		display: block !important;
		font-size: 1.4rem;
	}
	.nav-side-bar .site-title-text .corporate {
		display: inline-block;
	}
	.nav-side-bar .search-form {
		width: auto;
	}
	.nav-side-bar .nav-tag {
		display: none;
	}
	.nav .close-button {
		position: fixed;
		top: 8px;
		left: 15px;
	}
}

.always-visible-nav {
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-ordinal-group: 4;
	    -ms-flex-order: 3;
	        order: 3;
}
@media screen and (max-width: 1480px) {
	.always-visible-nav {
		display: none !important;
	}
}
.always-visible-nav-list {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 5px 16px;
	margin: 0 0 0 auto;
}
.always-visible-nav-item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	list-style: none;
	margin: 0;
	line-height: 1.5;
}
@media (hover: hover) {
	.always-visible-nav-link:where(:-moz-any-link, :enabled, summary):hover {
		color: #0072BC;
	}
	.always-visible-nav-link:where(:any-link, :enabled, summary):hover {
		color: #0072BC;
	}
}
.always-visible-nav-label {
	display: block;
	font-size: clamp(1.1rem, 0.77vw, 1.2rem);
	font-weight: 500;
}
@media screen and (max-width: 1023px) {
	.always-visible-nav {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		position: fixed;
		z-index: 9;
		inset: auto 0 0 0;
		background: #090F24;
		height: 68px;
	}
	.always-visible-nav-list {
		width: auto;
		-webkit-box-align: stretch;
		    -ms-flex-align: stretch;
		        align-items: stretch;
		gap: 0;
		margin: 0;
		height: 100%;
		padding: 0 10px;
	}
	.always-visible-nav-item {
		-webkit-box-flex: 2;
		    -ms-flex: 2 2 auto;
		        flex: 2 2 auto;
		height: 100%;
	}
	.always-visible-nav-link {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		color: #D9D9D9;
		width: 100%;
		height: 100%;
	}
}
@media screen and (max-width: 1023px) and (hover: hover) {
	.always-visible-nav-link:where(:-moz-any-link, :enabled, summary):hover {
		color: #51A1F4;
	}
	.always-visible-nav-link:where(:any-link, :enabled, summary):hover {
		color: #51A1F4;
	}
	.always-visible-nav-link:where(:-moz-any-link, :enabled, summary):hover .always-visible-nav-icon {
		background: #51A1F4;
	}
	.always-visible-nav-link:where(:any-link, :enabled, summary):hover .always-visible-nav-icon {
		background: #51A1F4;
	}
}
@media screen and (max-width: 1023px) {
	.always-visible-nav-icon {
		display: block;
		width: 24px;
		height: 24px;
		margin: 0 0 2px;
		-webkit-mask-size: 32px auto;
		        mask-size: 32px auto;
		-webkit-mask-box-image-repeat: no-repeat;
		        mask-border-repeat: no-repeat;
		-webkit-mask-position: center;
		        mask-position: center;
		background: #D9D9D9;
		-webkit-transition: 0.2s ease;
		transition: 0.2s ease;
	}
	.always-visible-nav-link.work-and-challenge .always-visible-nav-icon {
		-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_work.svg);
		        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_work.svg);
	}
	.always-visible-nav-link.career-and-workstyle .always-visible-nav-icon {
		-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_career.svg);
		        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_career.svg);
	}
	.always-visible-nav-link.technology .always-visible-nav-icon {
		-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_technology.svg);
		        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_technology.svg);
	}
	.always-visible-nav-link.organization-and-strategy .always-visible-nav-icon {
		-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_organization.svg);
		        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_organization.svg);
	}
	.always-visible-nav-link.system-and-culture .always-visible-nav-icon {
		-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_culture.svg);
		        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_culture.svg);
	}
	.always-visible-nav-label {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		font-size: 1rem;
		line-height: 1.2;
		margin: 0 -3px;
		-webkit-transform: scale(0.9);
		        transform: scale(0.9);
	}
}

.official-sns {
	-webkit-box-ordinal-group: 5;
	    -ms-flex-order: 4;
	        order: 4;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0;
	margin: 0;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
.official-sns::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: -10px -15px;
	background: transparent;
}
.official-sns.is-opened {
	gap: 0 15px;
	margin: 0 10px 0 0;
}
.official-sns.is-opened::before {
	background: #F7F7F7;
}
.official-sns-button {
	font-size: clamp(1.1rem, 0.77vw, 1.2rem);
	font-weight: 500;
	line-height: 1.5rem;
}
@media (hover: hover) {
	.official-sns-button:where(:-moz-any-link, :enabled, summary):hover {
		color: #0072BC;
	}
	.official-sns-button:where(:any-link, :enabled, summary):hover {
		color: #0072BC;
	}
}
.official-sns-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 15px;
	margin: 0;
	width: 0;
	overflow: hidden;
}
.official-sns-item {
	list-style: none;
	margin: 0;
}
.official-sns-link {
	display: block;
	text-indent: 100%;
	overflow: hidden;
	width: 24px;
	height: 24px;
	opacity: 0;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
.official-sns-link::before {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
	background: #090F24;
}
.official-sns-link[href^="https://twitter.com"]::before {
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_x_mono.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_x_mono.svg);
}
.official-sns-link[href^="https://www.facebook.com"]::before {
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_fb_mono.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_fb_mono.svg);
}
.official-sns.is-opened .official-sns-link {
	opacity: 1;
}
@media screen and (max-width: 1023px) {
	.official-sns {
		visibility: hidden !important;
	}
}

.footer {
	position: relative;
}
.footer-upper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: min(86%, 1280px);
	margin: 130px auto 0;
	padding: 0 0 70px;
}
.footer-lower {
	position: relative;
}
.footer .site-title {
	margin: 0 0 40px;
}
.footer .site-title-wrapper {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
}
.footer .site-title-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 40px;
}
.footer .site-title-logo {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
}
.footer .site-title-logo-image {
	width: 155px;
	height: auto;
}
.footer .site-title-text {
	font-size: 1.6rem;
	line-height: 1.6;
	font-weight: 500;
}
.footer .site-title-text .corporate {
	display: inline-block;
	font-size: 1.2rem;
	font-weight: 400;
}
.footer .pagetop-button {
	position: fixed;
	z-index: 8;
	right: 0;
	bottom: 50px;
	height: 0;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 2% 0 auto;
	opacity: 0;
	visibility: hidden;
	-webkit-transform: scale(0.5);
	        transform: scale(0.5);
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
.on-scroll .footer .pagetop-button {
	opacity: 1;
	visibility: visible;
	-webkit-transform: scale(1);
	        transform: scale(1);
}

.footer .pagetop-button.is-fixed {
	position: absolute;
	top: 0;
}
.footer .pagetop-button-label {
	position: absolute;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.footer .pagetop-button-icon {
	display: -ms-grid;
	display: grid;
	place-items: center;
	width: 54px;
	height: 54px;
	background: #FFF;
	border: 1px solid #EAEAEA;
	border-radius: 50%;
	-webkit-transform: translate(0, -50%);
	        transform: translate(0, -50%);
	-webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.16);
	        box-shadow: 0 2px 2px rgba(0, 0, 0, 0.16);
}
.footer .pagetop-button-icon::before {
	content: "";
	display: block;
	width: 18px;
	height: 18px;
	background-color: #090F24;
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_pagetop.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_pagetop.svg);
	-webkit-mask-size: 18px auto;
	        mask-size: 18px auto;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
}
.footer-corporate-logo {
	height: 113px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.footer .always-visible-nav {
	display: none !important;
}
@media screen and (max-width: 1023px) {
	.footer .always-visible-nav {
		display: block !important;
	}
}
@media screen and (max-width: 1023px) {
	.footer {
		margin-bottom: 68px;
	}
	.footer-upper {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		width: 90%;
		margin: 60px auto 0;
		padding: 0 0 60px;
	}
	.footer-lower {
		position: initial;
	}
	.footer .site-title {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		margin: 0 auto 20px;
	}
	.footer .site-title-wrapper {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		margin-bottom: 20px;
	}
	.footer .site-title-link {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		gap: 0 36px;
	}
	.footer .site-title-logo-image {
		width: 95px;
	}
	.footer .site-title-text {
		font-size: 1.4rem;
	}
	.footer .site-title-text .corporate {
		font-size: 1rem;
	}
	.footer .pagetop-button {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		position: absolute !important;
		right: calc((100% - 90%) / 2);
		top: auto !important;
		bottom: 0 !important;
		height: 100px;
	}
	.footer .pagetop-button-icon {
		-webkit-transform: none;
		        transform: none;
	}
	.footer-corporate-logo {
		width: 90%;
		height: 100px;
		margin: 0 auto;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
	}
}

.related-site-buttons {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	width: min(100%, 415px);
	gap: 12px 0;
	margin: 0 0 0 auto;
}
.related-site-buttons .career-site-button,
.related-site-buttons .nttdata-x-button {
	height: 69px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	border: 1px solid;
	border-radius: 69px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	padding: 0 0 0 40px;
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.4em;
	background: #0072BC;
	color: #FFF;
}
@media (hover: hover) {
	.related-site-buttons .career-site-button:where(:-moz-any-link, :enabled, summary):hover, .related-site-buttons .nttdata-x-button:where(:-moz-any-link, :enabled, summary):hover {
		color: #0072BC;
		background: #FFF;
	}
	.related-site-buttons .career-site-button:where(:any-link, :enabled, summary):hover,
	.related-site-buttons .nttdata-x-button:where(:any-link, :enabled, summary):hover {
		color: #0072BC;
		background: #FFF;
	}
	.related-site-buttons .career-site-button:where(:-moz-any-link, :enabled, summary):hover .arrow-icon, .related-site-buttons .career-site-button:where(:-moz-any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon, .utility-nav-link .related-site-buttons .career-site-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .related-site-buttons .career-site-button:where(:-moz-any-link, :enabled, summary):hover .x-icon, .related-site-buttons .nttdata-x-button:where(:-moz-any-link, :enabled, summary):hover .arrow-icon, .related-site-buttons .nttdata-x-button:where(:-moz-any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon, .utility-nav-link .related-site-buttons .nttdata-x-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .related-site-buttons .nttdata-x-button:where(:-moz-any-link, :enabled, summary):hover .x-icon {
		background-color: #0072BC;
	}
	.related-site-buttons .career-site-button:where(:any-link, :enabled, summary):hover .arrow-icon, .related-site-buttons .career-site-button:where(:any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon, .utility-nav-link .related-site-buttons .career-site-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .related-site-buttons .career-site-button:where(:any-link, :enabled, summary):hover .x-icon,
	.related-site-buttons .nttdata-x-button:where(:any-link, :enabled, summary):hover .arrow-icon,
	.related-site-buttons .nttdata-x-button:where(:any-link, :enabled, summary):hover .utility-nav-link .arrow-l-icon,
	.utility-nav-link .related-site-buttons .nttdata-x-button:where(:any-link, :enabled, summary):hover .arrow-l-icon,
	.related-site-buttons .nttdata-x-button:where(:any-link, :enabled, summary):hover .x-icon {
		background-color: #0072BC;
	}
	.related-site-buttons .career-site-button:where(:-moz-any-link, :enabled, summary):hover .x-icon, .related-site-buttons .nttdata-x-button:where(:-moz-any-link, :enabled, summary):hover .x-icon {
		background-color: #000;
	}
	.related-site-buttons .career-site-button:where(:any-link, :enabled, summary):hover .x-icon,
	.related-site-buttons .nttdata-x-button:where(:any-link, :enabled, summary):hover .x-icon {
		background-color: #000;
	}
}
.related-site-buttons .nttdata-x-button {
	background: #000;
}
@media (hover: hover) {
	.related-site-buttons .nttdata-x-button:where(:-moz-any-link, :enabled, summary):hover {
		color: #000;
	}
	.related-site-buttons .nttdata-x-button:where(:any-link, :enabled, summary):hover {
		color: #000;
	}
}
.related-site-buttons .x-icon {
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_x_mono.svg) !important;
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_x_mono.svg) !important;
	-webkit-mask-size: 21px auto;
	        mask-size: 21px auto;
}
.related-site-buttons .arrow-icon, .related-site-buttons .utility-nav-link .arrow-l-icon, .utility-nav-link .related-site-buttons .arrow-l-icon,
.related-site-buttons .x-icon {
	background-color: #FFF;
	margin: 0 20px 0 auto;
}
@media screen and (max-width: 1023px) {
	.related-site-buttons {
		width: 100%;
		gap: 12px 0;
		margin: 0 0 0 auto;
	}
	.related-site-buttons .career-site-button,
	.related-site-buttons .nttdata-x-button {
		height: 66px;
		padding: 0 0 0 30px;
		font-size: 1.8rem;
	}
}

.footer-lower,
.nav-lower {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 40px 0;
	background: #090F24;
	padding: 60px 0;
}
.footer-lower .copyright,
.nav-lower .copyright {
	font-size: 1.6rem;
	font-family: "Arial", sans-serif;
	font-weight: normal;
	text-align: right;
	margin: 0 auto;
	width: min(86%, 1280px);
	color: #FFF;
}
@media screen and (max-width: 1023px) {
	.footer-lower,
	.nav-lower {
		gap: 20px 0;
		padding: 20px 0 60px;
	}
	.footer-lower .copyright,
	.nav-lower .copyright {
		text-align: left;
		width: 90%;
	}
}

.nav-lower {
	margin-top: auto;
}
@media screen and (max-width: 1023px) {
	.nav-lower {
		display: none;
	}
}
.nav-lower .pagetop-button {
	display: none;
}

.footer-buttons {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0 30px;
	margin: 0 auto;
	width: min(86%, 1280px);
}
.footer-buttons .career-regist-button,
.footer-buttons .recruitment-button,
.footer-buttons .division-recruit-button {
	gap: 0 12px;
	padding: 0 min(3.5vw, 60px);
}
@media screen and (max-width: 1023px) {
	.footer-buttons .career-regist-button,
	.footer-buttons .recruitment-button,
	.footer-buttons .division-recruit-button {
		padding: 0 40px;
	}
}
.footer-buttons .division-recruit-button {
	color: #090F24;
}
.footer-buttons .division-recruit-button .arrow-icon, .footer-buttons .division-recruit-button .utility-nav-link .arrow-l-icon, .utility-nav-link .footer-buttons .division-recruit-button .arrow-l-icon, .footer-buttons .division-recruit-button .related-site-buttons .x-icon, .related-site-buttons .footer-buttons .division-recruit-button .x-icon {
	background-color: #090F24;
}
.footer-buttons .division-recruit-button::before {
	background: #FFF;
}
@media screen and (max-width: 1023px) {
	.footer-buttons {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		gap: 20px 0;
		width: 90%;
	}
}

.utility-nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: baseline;
	    -ms-flex-align: baseline;
	        align-items: baseline;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	list-style: none;
	margin: 0 auto;
	width: min(86%, 1280px);
	gap: 0 25px;
}
.utility-nav-item {
	margin: 0;
}
.utility-nav-link {
	color: #FFF !important;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0;
	font-size: 1.4rem;
}
.utility-nav-link .arrow-l-icon {
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow_ext.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow_ext.svg);
	display: none;
	background-color: #FFF;
}
.utility-nav-link[target=_blank] .arrow-l-icon {
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow_ext.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow_ext.svg);
	display: block;
}
@media (hover: hover) {
	.utility-nav-link:where(:-moz-any-link, :enabled, summary):hover {
		text-decoration: underline;
	}
	.utility-nav-link:where(:any-link, :enabled, summary):hover {
		text-decoration: underline;
	}
}
@media screen and (max-width: 1023px) {
	.utility-nav {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		list-style: none;
		margin: 0 auto 10px;
		width: 90%;
		gap: 8px 0;
	}
}

.top {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	margin: 0 0 200px;
}
@media screen and (max-width: 1023px) {
	.top {
		margin: 0 0 80px;
	}
}

.pickup-slider {
	position: relative;
	padding: 100px 0;
	margin-top: -45px;
}
.pickup-slider::before {
	content: "";
	position: absolute;
	inset: 35% 0 0;
	background: #F7F7F7;
}
.pickup-slider .article-list {
	display: block;
	overflow: visible !important;
	width: auto;
}
.pickup-slider .article-card {
	width: 400px;
	background: #FFF;
	padding-bottom: 30px;
	height: auto !important;
}
.pickup-slider .article-card .thumbnail-wrap {
	margin: 0 0 20px;
}
.pickup-slider .article-card-title,
.pickup-slider .article-card .tag {
	margin: 0 20px;
}
.pickup-slider .article-date {
	margin: 0 30px;
}
@media screen and (max-width: 1023px) {
	.pickup-slider .article-list {
		overflow: hidden !important;
		margin: 0;
	}
	.pickup-slider .article-card {
		width: auto;
		padding-bottom: 30px;
	}
	.pickup-slider .article-card .thumbnail-wrap {
		margin: 0;
	}
	.pickup-slider .article-card-title,
	.pickup-slider .article-card .tag {
		margin: 0 calc((100% - 90%) / 2);
	}
	.pickup-slider .article-date {
		margin: 0 calc((100% - 90%) / 2);
	}
}
.pickup-slider .swiper-slide {
	-webkit-transition: -webkit-transform 0.2s ease;
	transition: -webkit-transform 0.2s ease;
	transition: transform 0.2s ease;
	transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.pickup-slider .swiper-slide-active {
	-webkit-transform: scale(1.2);
	        transform: scale(1.2);
}
.pickup-slider .swiper-button {
	position: absolute;
	z-index: 3;
	inset: 0;
	margin: auto;
	height: 40px;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}
.pickup-slider .swiper-button .next-icon,
.pickup-slider .swiper-button .prev-icon {
	display: block;
	width: 30px;
	height: 40px;
	background: #090F24;
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_next.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_next.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-size: 18px auto;
	        mask-size: 18px auto;
	-webkit-mask-position: center;
	        mask-position: center;
	margin: 0 auto;
}
.pickup-slider .swiper-button-next {
	left: 540px;
}
.pickup-slider .swiper-button-prev {
	right: 540px;
	-webkit-transform: scale(-1, 1);
	        transform: scale(-1, 1);
}
.pickup-slider .swiper-button-label {
	position: absolute;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	width: 0;
}
.pickup-slider .swiper-pagination {
	position: absolute;
	z-index: 3;
	inset: 100% 0 0;
	margin: 30px auto 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 0 10px;
}
.pickup-slider .swiper-pagination-bullet {
	display: block;
	width: 46px;
	height: 5px;
	background: #D9D9D9;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	cursor: pointer;
}
.pickup-slider .swiper-pagination-bullet-active {
	background: #090F24;
}
@media screen and (max-width: 1023px) {
	.pickup-slider {
		width: 100%;
		padding: 0;
		margin-top: 0;
	}
	.pickup-slider::before {
		content: "";
		position: absolute;
		inset: 35% 0 0;
		background: #F7F7F7;
	}
	.pickup-slider .article-list {
		display: block;
		overflow: visible !important;
		width: auto;
	}
	.pickup-slider .article-card {
		width: 480px;
		background: #FFF;
		padding-bottom: 30px;
		height: auto !important;
	}
	.pickup-slider .article-card .thumbnail-wrap {
		margin: 0 0 20px;
	}
	.pickup-slider .article-card-title,
	.pickup-slider .article-card .tag {
		margin: 0 30px;
	}
	.pickup-slider .article-date {
		margin: 0 30px;
	}
}
@media screen and (max-width: 1023px) and (max-width: 1023px) {
	.pickup-slider .article-list {
		overflow: hidden !important;
		margin: 0;
	}
	.pickup-slider .article-card {
		width: auto;
		padding-bottom: 30px;
	}
	.pickup-slider .article-card .thumbnail-wrap {
		margin: 0 0 10px;
	}
	.pickup-slider .article-card-title,
	.pickup-slider .article-card .tag {
		margin: 0 calc((100% - 90%) / 2);
	}
	.pickup-slider .article-date {
		margin: 0 calc((100% - 90%) / 2);
	}
}
@media screen and (max-width: 1023px) {
	.pickup-slider .swiper-slide-active {
		-webkit-transform: none;
		        transform: none;
	}
	.pickup-slider .swiper-button {
		display: none;
	}
	.pickup-slider .swiper-pagination {
		margin-top: 0;
		padding: 0 calc((100% - 90%) / 2);
	}
}

.home-section {
	margin: 0 0 150px;
	scroll-margin-top: 80px;
}
.home-section-heading {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	width: min(86%, 1280px);
	margin: 0 auto 60px;
}
.home-section-heading-en {
	font-size: 3.2rem;
	line-height: 1.2;
}
.home-section-heading-ja {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.5;
}
@media screen and (max-width: 1023px) {
	.home-section {
		margin: 0 0 100px;
		scroll-margin-top: 54px;
	}
	.home-section-heading {
		width: 100%;
		text-align: center;
		margin: 0 auto 30px;
		padding: 0;
	}
	.home-section-heading-en {
		font-size: 2.8rem;
	}
	.home-section-heading-ja {
		font-size: 1.8rem;
	}
	.home-section-lead {
		width: 100%;
		margin: 30px 0 0;
		font-size: 1.4rem;
		line-height: 2;
	}
}
.home-search {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 50px 0;
	background: #F7F7F7;
	padding: 60px;
	border-radius: 20px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.top + .home-search {
	margin-top: -120px;
}
.home-search-heading {
	font-size: 2rem;
}
.home-search-by-keyword {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 40px;
}
.home-search-by-keyword-heading {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	margin: 0;
}
.home-search .search-form {
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
	background: #FFF;
}
.home-search .tag-group {
	gap: 20px 0 !important;
}
.home-search .tag-group-title {
	font-size: 1.6rem !important;
	width: 10em !important;
	padding: 10px 0 !important;
}
.home-search .tag-group-content {
	padding: 10px 0;
}
.home-search .tag-link {
	font-size: 1.3rem !important;
}
.home-search-more-button {
	position: absolute;
	z-index: 2;
	inset: 100% 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 10px;
	margin-inline: auto;
	padding: 0 10px 10px;
	width: 200px;
	background: #F7F7F7;
	border-radius: 0 0 10px 10px;
	font-size: 1.4rem;
}
.home-search-more-button .toggle-icon {
	display: inline-block;
	width: 13px;
	height: 13px;
	background-color: currentColor;
	clip-path: polygon(6px 0, 7px 0, 7px 6px, 13px 6px, 13px 7px, 7px 7px, 7px 13px, 6px 13px, 6px 7px, 0 7px, 0 6px, 6px 6px);
}
.home-search.is-open .home-search-more-button .toggle-icon {
	clip-path: polygon(0 6px, 13px 6px, 13px 7px, 0 7px);
}
.home-search-more-content {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 20px 0;
}
.home-search:not(.is-open) .home-search-more-content {
	height: 50px;
	overflow: hidden;
	pointer-events: none;
}
.home-search:not(.is-open)::after {
	content: "";
	position: absolute;
	z-index: 2;
	inset: auto 0 0;
	height: 110px;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(247, 247, 247, 0)), color-stop(40%, rgb(247, 247, 247)));
	background: linear-gradient(to bottom, rgba(247, 247, 247, 0) 0%, rgb(247, 247, 247) 40%);
	border-radius: 0 0 20px 20px;
}
@media screen and (max-width: 1023px) {
	.home-search {
		gap: 30px 0;
		width: min(86%, 1280px);
		padding: 30px 20px;
		border-radius: 10px;
	}
	.top + .home-search {
		margin-top: -40px;
	}
	.home-search-heading {
		font-size: 1.8rem;
	}
	.home-search-by-keyword {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		gap: 0 40px;
	}
	.home-search-by-keyword-heading {
		margin: 0 0 20px;
	}
	.home-search .search-form {
		-webkit-box-flex: 2;
		    -ms-flex: 2 2 auto;
		        flex: 2 2 auto;
		background: #FFF;
	}
	.home-search .tag-group {
		gap: 20px 0 !important;
	}
	.home-search .tag-group-title {
		font-size: 1.6rem !important;
		width: auto !important;
		padding: 0 !important;
		margin: 0 0 10px !important;
	}
	.home-search .tag-group-content {
		padding: 0;
	}
	.home-search .tag-link {
		font-size: 1.1rem !important;
	}
	.home-search-more-button {
		border-radius: 0 0 6px 6px;
		color: #090F24;
	}
	.home-search:not(.is-open)::after {
		height: 50px;
		background: -webkit-gradient(linear, left top, left bottom, from(rgba(247, 247, 247, 0)), color-stop(40%, rgb(247, 247, 247)));
		background: linear-gradient(to bottom, rgba(247, 247, 247, 0) 0%, rgb(247, 247, 247) 40%);
	}
}

@media screen and (max-width: 1023px) {
	.new-articles {
		background: #2C2C2C;
		padding: 40px 0;
		margin-bottom: 0;
	}
	.new-articles-heading {
		color: #FFF;
	}
	.new-articles .article-card-title {
		color: #FFF;
	}
	.new-articles .article-date {
		color: #FFF;
	}
}

.category-archive {
	position: relative;
	background: #F7F7F7;
	padding: 120px 0 0;
	scroll-margin-top: 80px;
}
.category-archive .article-card--newest {
	display: none !important;
}
.category-archive-slider {
	position: relative;
	padding: 0 0 80px;
}
.category-archive-list {
	position: relative;
}
.category-archive-list::before {
	content: "";
	position: absolute;
	inset: 150px 0 0;
}
#work-and-challenge .category-archive-list::before {
	background-color: #0072BC;
}

#career-and-workstyle .category-archive-list::before {
	background-color: #2EADB2;
}

#technology .category-archive-list::before {
	background-color: #566DBE;
}

#organization-and-strategy .category-archive-list::before {
	background-color: #51A1F4;
}

#system-and-culture .category-archive-list::before {
	background-color: #CD3A20;
}

.category-archive-heading {
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
	position: relative;
	z-index: 2;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 3px 0;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	line-height: 1.4;
}
.category-archive-heading-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: min(86%, 1280px);
	margin: 0 auto 100px;
}
.category-archive-heading::before {
	content: "";
	display: block;
	width: 13px;
	height: 13px;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	margin: 0 0 3px;
}
#work-and-challenge .category-archive-heading::before {
	background-color: #0072BC;
}

#career-and-workstyle .category-archive-heading::before {
	background-color: #2EADB2;
}

#technology .category-archive-heading::before {
	background-color: #566DBE;
}

#organization-and-strategy .category-archive-heading::before {
	background-color: #51A1F4;
}

#system-and-culture .category-archive-heading::before {
	background-color: #CD3A20;
}

.category-archive-heading-ja {
	font-size: 2.8rem;
	font-weight: 500;
}
.category-archive-heading-en {
	font-size: 1.4rem;
}
.category-archive .more-button {
	width: 240px;
}
.category-archive .more-button-wrapper {
	width: auto;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	margin: 0 0 0 auto;
}
.category-archive-slider .article-list {
	position: relative;
	z-index: 3;
	display: block;
	overflow: visible !important;
	width: min(75%, 1000px);
	margin: 0 auto;
}
.category-archive-slider .article-card {
	width: 350px;
	height: auto !important;
	padding-bottom: 30px;
	-webkit-transition: background-color 0.2s ease, -webkit-transform 0.2s ease;
	transition: background-color 0.2s ease, -webkit-transform 0.2s ease;
	transition: transform 0.2s ease, background-color 0.2s ease;
	transition: transform 0.2s ease, background-color 0.2s ease, -webkit-transform 0.2s ease;
}
.category-archive-slider .article-card.swiper-slide-active {
	-webkit-transform: scale(1.15);
	        transform: scale(1.15);
	-webkit-transform-origin: 50% 100%;
	        transform-origin: 50% 100%;
	background: #FFF;
}
.category-archive-slider .article-card.swiper-slide-active .article-card-title {
	color: #090F24;
}
.category-archive-slider .article-card .thumbnail-wrap {
	margin: 0 0 20px;
}
.category-archive-slider .article-card-title,
.category-archive-slider .article-card .tag {
	margin: 0 20px;
}
.category-archive-slider .article-card-title {
	color: #FFF;
}
.category-archive-slider .article-date {
	margin: 0 20px;
}
@media screen and (max-width: 1023px) {
	.category-archive-slider .article-list {
		overflow: hidden !important;
		margin: 0;
	}
	.category-archive-slider .article-card {
		width: auto;
		padding-bottom: 30px;
	}
	.category-archive-slider .article-card .thumbnail-wrap {
		margin: 0;
	}
	.category-archive-slider .article-card-title,
	.category-archive-slider .article-card .tag {
		margin: 0 calc((100% - 90%) / 2) !important;
	}
	.category-archive-slider .article-date {
		margin: 0 calc((100% - 90%) / 2) !important;
	}
}
.category-archive .swiper-controller {
	position: absolute;
	z-index: 2;
	inset: -80px 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
	gap: 0 30px;
	width: min(86%, 1280px);
	margin: 0 auto;
}
.category-archive .swiper-button {
	width: 40px;
	height: 40px;
}
.category-archive .swiper-button .next-icon,
.category-archive .swiper-button .prev-icon {
	display: block;
	width: 30px;
	height: 40px;
	background: #090F24;
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_next.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_next.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-size: 18px auto;
	        mask-size: 18px auto;
	-webkit-mask-position: center;
	        mask-position: center;
	margin: 0 auto;
}
.category-archive .swiper-button-prev {
	-webkit-transform: scale(-1, 1);
	        transform: scale(-1, 1);
}
.category-archive .swiper-button-label {
	position: absolute;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	left: 100%;
	width: 0;
}
.category-archive .swiper-pagination {
	display: none;
}
@media screen and (max-width: 1023px) {
	.category-archive {
		padding: 40px 0 0;
		scroll-margin-top: 54px;
	}
	.category-archive-list, .category-archive-slider {
		position: relative;
		padding: 0 0 40px;
	}
	.category-archive-list::before, .category-archive-slider::before {
		inset: 0;
	}
	.category-archive-list {
		padding: 30px 0 0;
	}
	.category-archive-heading {
		gap: 3px 0;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		text-align: center;
	}
	.category-archive-heading-wrapper {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		width: 90%;
		margin: 0 auto 40px;
	}
	.category-archive-heading-ja {
		font-size: 2.4rem;
	}
	.category-archive-heading-en {
		font-size: 1.4rem;
	}
	.category-archive .more-button {
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		margin: 0 auto;
	}
	.category-archive .more-button-wrapper {
		margin: 0 auto;
	}
	.category-archive-list .article-card {
		display: -webkit-box !important;
		display: -ms-flexbox !important;
		display: flex !important;
		position: relative;
		z-index: 2;
		width: min(86%, 1280px);
		margin: 0 auto;
	}
	.category-archive-list .article-date {
		margin-bottom: 30px;
	}
	.category-archive-list .article-card-title {
		color: #FFF;
	}
	.category-archive-slider .article-list {
		width: auto;
	}
	.category-archive-slider .article-card {
		width: 50vw;
		padding-bottom: 10px;
		background: #FFF;
	}
	.category-archive-slider .article-card.swiper-slide-active {
		-webkit-transform: none;
		        transform: none;
	}
	.category-archive-slider .article-card .thumbnail-wrap {
		margin: 0 0 10px;
	}
	.category-archive-slider .article-card .tag {
		display: none;
	}
	.category-archive-slider .article-card-title {
		font-size: 1.4rem;
		color: #090F24 !important;
		margin: 0 10px 10px;
	}
	.category-archive-slider .article-date {
		font-size: 1.2rem;
		margin: 0 20px;
	}
	.category-archive .swiper-controller {
		position: relative;
		inset: initial;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		gap: 0 20px;
		width: min(86%, 1280px);
		margin: 0 auto;
	}
	.category-archive .swiper-button {
		display: none;
	}
	.category-archive .swiper-pagination {
		position: relative;
		z-index: 2;
		margin: 20px auto 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		gap: 0 10px;
	}
	.category-archive .swiper-pagination-bullet {
		display: block;
		width: 5px;
		height: 5px;
		-webkit-transition: 0.2s ease;
		transition: 0.2s ease;
		cursor: pointer;
		border-radius: 5px;
		border: 1px solid #FFF;
	}
	.category-archive .swiper-pagination-bullet-active {
		background: #FFF;
	}
}

.search-by-tag.home-section {
	background: #F7F7F7;
	padding: 150px 0;
	margin: 0;
}
.search-by-tag-inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: min(86%, 1280px);
	margin: 0 auto;
	gap: 0 100px;
}
.search-by-tag-heading {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 0 40px 0 0;
	margin: 0;
	width: auto;
	border-right: 1px solid #D9D9D9;
}
.search-by-tag .tag-group {
	position: relative;
	z-index: 2;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 30px 0;
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
	margin-bottom: 0;
}
.search-by-tag .tag-group .tag-link {
	font-size: 1.4rem;
	border-radius: 30px;
}
@media screen and (max-width: 1023px) {
	.search-by-tag.home-section {
		padding: 50px 0;
		margin: 0;
	}
	.search-by-tag-inner {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		width: 90%;
		gap: 0 100px;
	}
	.search-by-tag-heading {
		-webkit-box-pack: stretch;
		    -ms-flex-pack: stretch;
		        justify-content: stretch;
		padding: 0 0 20px;
		margin: 0;
		border-right: none;
		border-bottom: 1px solid #D9D9D9;
		text-align: left;
		margin-bottom: 20px;
	}
	.search-by-tag .tag-group {
		gap: 20px 0;
	}
	.search-by-tag .tag-group-title {
		margin-bottom: 10px;
	}
	.search-by-tag .tag-group .tag-link {
		font-size: 1.1rem;
	}
	.search-by-tag .more-button-wrapper {
		margin-top: 30px;
	}
}

.floating-banner {
	position: fixed;
	z-index: 10;
	right: 5vw;
	bottom: 100px;
	-webkit-animation: 0.6s ease banner;
	        animation: 0.6s ease banner;
	-webkit-transition: visibility 0.4s ease, opacity 0.4s ease, -webkit-transform 0.4s ease;
	transition: visibility 0.4s ease, opacity 0.4s ease, -webkit-transform 0.4s ease;
	transition: transform 0.4s ease, visibility 0.4s ease, opacity 0.4s ease;
	transition: transform 0.4s ease, visibility 0.4s ease, opacity 0.4s ease, -webkit-transform 0.4s ease;
}
.floating-banner-link {
	display: block;
}
.floating-banner-image {
	width: 300px;
	height: auto;
}
.floating-banner-close-button {
	position: absolute;
	z-index: 2;
	top: 0;
	right: 0;
	width: 36px;
	height: 36px;
	text-indent: 100%;
	overflow: hidden;
}
.floating-banner-close-button::before, .floating-banner-close-button::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	        transform: translate(-50%, -50%) rotate(45deg);
	border-top: 2px solid #FFF;
	width: 20px;
}
.floating-banner-close-button::after {
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	        transform: translate(-50%, -50%) rotate(-45deg);
}
.floating-banner.is-hide {
	-webkit-transform: translate(0, 30px) scale(0.8);
	        transform: translate(0, 30px) scale(0.8);
	visibility: hidden;
	opacity: 0;
}
@-webkit-keyframes banner {
	0% {
		-webkit-transform: translate(0, 30px) scale(0.8);
		        transform: translate(0, 30px) scale(0.8);
		opacity: 0;
	}
	100% {
		-webkit-transform: translate(0, 0) scale(1);
		        transform: translate(0, 0) scale(1);
	}
}
@keyframes banner {
	0% {
		-webkit-transform: translate(0, 30px) scale(0.8);
		        transform: translate(0, 30px) scale(0.8);
		opacity: 0;
	}
	100% {
		-webkit-transform: translate(0, 0) scale(1);
		        transform: translate(0, 0) scale(1);
	}
}
@media screen and (max-width: 1023px) {
	.floating-banner {
		right: 20px;
		bottom: 85px;
	}
	.floating-banner-close-button {
		right: -4px;
		width: 30px;
		height: 30px;
	}
	.floating-banner-close-button::before, .floating-banner-close-button::after {
		width: 18px;
	}
	.floating-banner-image {
		width: 200px;
		height: auto;
	}
}

.article {
	position: relative;
	padding-top: 50px;
}
.article-header {
	width: min(75%, 1000px);
	margin: 0 auto;
}
.article-header-text {
	position: relative;
	margin: 0 0 50px;
}
.article-date {
	font-size: 1.4rem;
	font-weight: bold;
	margin: 0 0 40px;
}
.article-title {
	font-size: 3.2rem;
	line-height: 1.4;
	font-weight: bold;
	margin: 0 0 30px;
}
.article .share {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	position: absolute;
	top: 70px;
	right: 107%;
}
.article .share-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 15px 0;
}
.article .share-item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	list-style: none;
	margin: 0;
}
.article .share-title {
	font-size: 1.3rem;
	line-height: 1.4;
	-webkit-writing-mode: vertical-rl;
	    -ms-writing-mode: tb-rl;
	        writing-mode: vertical-rl;
	margin: 0 0 30px;
}
.article .share-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background: no-repeat 50% 50%;
	text-indent: 100%;
	overflow: hidden;
	width: 25px;
	white-space: nowrap;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	position: relative;
}
.article .share-link::before {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	content: "";
	height: 25px;
	width: 25px;
	background-size: 25px auto;
	background-repeat: no-repeat;
	background-position: 50% 50%;
}
.article .share-link[href^="https://twitter.com/"]::before {
	background-image: url(/global/ja/recruit/uptodata/assets/images/icn_x.svg);
}
.article .share-link[href^="https://www.facebook.com/"]::before {
	background-image: url(/global/ja/recruit/uptodata/assets/images/icn_fb.svg);
}
.article .share-link[href^="https://social-plugins.line.me/"]::before {
	background-image: url(/global/ja/recruit/uptodata/assets/images/icn_line.svg);
}
.article .share-link[href^="http://b.hatena.ne.jp/"]::before {
	background-image: url(/global/ja/recruit/uptodata/assets/images/icn_hatena.svg);
}
.article .share-link[href^="https://getpocket.com/"]::before {
	background-image: url(/global/ja/recruit/uptodata/assets/images/icn_pocket.svg);
}
@media (hover: hover) {
	.article .share-link:where(:-moz-any-link, :enabled, summary):hover {
		transform: scale(1.1);
	}
	.article .share-link:where(:any-link, :enabled, summary):hover {
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}
.article-hero {
	position: relative;
	margin: 0 0 50px;
	overflow: hidden;
}
.article-hero img {
	-webkit-transition: -webkit-transform 0.4s ease;
	transition: -webkit-transform 0.4s ease;
	transition: transform 0.4s ease;
	transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}
.article .play-video-button-label {
	position: absolute;
	left: 100%;
}
.article .play-video-button::before {
	content: "";
	position: absolute;
	z-index: 2;
	inset: 0;
	background: #838383;
	mix-blend-mode: multiply;
	opacity: 0.6;
}
.article .play-video-button .play-video-icon {
	position: absolute;
	z-index: 3;
	inset: 0;
	margin: auto;
	width: 115px;
	height: 115px;
	background: no-repeat 50% 50%;
	background-size: 100% auto;
	background-image: url(/global/ja/recruit/uptodata/assets/images/icn_play-video.svg);
	-webkit-filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.5));
	        filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.5));
}
@media (hover: hover) {
	.article .play-video-button:where(:-moz-any-link, :enabled, summary):hover img {
		transform: scale(1.1);
	}
	.article .play-video-button:where(:any-link, :enabled, summary):hover img {
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}
.article-introduction {
	width: min(75%, 1000px);
	margin: 0 auto 80px;
}
@media screen and (max-width: 1023px) {
	.article {
		padding-top: 30px;
	}
	.article-header {
		position: relative;
		width: auto;
	}
	.article-header-text {
		position: static;
		margin: 0 auto 30px;
		width: min(86%, 1280px);
	}
	.article-title {
		font-size: 1.8rem;
		margin: 0 0 20px;
	}
	.article .share {
		position: absolute;
		top: calc(100% + 10px);
		right: auto;
		left: auto;
		width: min(86%, 1280px);
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: 0 10px;
		margin: 5px 0 0;
	}
	.article .share-title {
		-webkit-writing-mode: horizontal-tb;
		    -ms-writing-mode: lr-tb;
		        writing-mode: horizontal-tb;
	}
	.article .share-list {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		gap: 0 10px;
	}
	.article .share-item {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		list-style: none;
		margin: 0;
	}
	.article-hero {
		margin: 0 -2.325% 80px;
	}
	.article .play-video-button .play-video-icon {
		width: 90px;
		height: 90px;
	}
	.article-introduction {
		width: min(86%, 1280px);
		margin-bottom: 50px;
	}
}
.article-index {
	width: min(75%, 1000px);
	margin: 0 auto 100px;
	padding: 60px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	background: #F5FAFF;
	border-radius: 20px;
}
.article-index-heading {
	font-size: 2.4rem;
	font-weight: 500;
	padding: 0 0 10px;
	border-bottom: 1px solid #D9D9D9;
}
.article-index-list {
	position: relative;
	display: flow-root;
	margin: 0;
}
.article-index-item {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: baseline;
	    -ms-flex-align: baseline;
	        align-items: baseline;
	gap: 0 25px;
	list-style: none;
	margin: 0;
}
.article-index-item::before {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	display: block;
	content: "";
	border-top: 1px solid;
	border-right: 1px solid;
	color: #0072BC;
	width: 20px;
	height: 20px;
	-webkit-transform: scale(1, 0.6) rotate(45deg);
	        transform: scale(1, 0.6) rotate(45deg);
}
.article-index-item::after {
	content: "";
	position: absolute;
	top: 2em;
	left: 15px;
	bottom: 0.3em;
	border-left: 1px solid;
	color: #0072BC;
}
.article-index-link {
	margin: 0 0 30px;
	color: #0072BC !important;
	font-weight: bold;
}
@media (hover: hover) {
	.article-index-link:where(:-moz-any-link, :enabled, summary):hover {
		text-decoration: underline;
	}
	.article-index-link:where(:any-link, :enabled, summary):hover {
		text-decoration: underline;
	}
}
.article-index .job-index-button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 10px;
	padding: 0 40px;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.5em;
	height: 53px;
	border-radius: 40px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	color: #FFF;
	background: #0072BC;
	border: 1px solid #0072BC;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
.article-index .job-index-button-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: min(86%, 1280px);
	margin: 40px auto 0;
}
.article-index .job-index-button .arrow-icon, .article-index .job-index-button .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .article-index .job-index-button .arrow-l-icon,
.article-index .job-index-button .related-link .career-regist-button .arrow-l-icon,
.related-link .career-regist-button .article-index .job-index-button .arrow-l-icon, .article-index .job-index-button .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .article-index .job-index-button .mail-icon,
.article-index .job-index-button .related-link .career-regist-button .mail-icon,
.related-link .career-regist-button .article-index .job-index-button .mail-icon {
	margin: 0 0 0 auto;
	background-color: #FFF;
}
@media (hover: hover) {
	.article-index .job-index-button:where(:-moz-any-link, :enabled, summary):hover {
		background: #FFF;
		color: #0072BC;
	}
	.article-index .job-index-button:where(:any-link, :enabled, summary):hover {
		background: #FFF;
		color: #0072BC;
	}
	.article-index .job-index-button:where(:-moz-any-link, :enabled, summary):hover .arrow-icon, .article-index .job-index-button:where(:-moz-any-link, :enabled, summary):hover .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .article-index .job-index-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .article-index .job-index-button:where(:-moz-any-link, :enabled, summary):hover .related-link .career-regist-button .arrow-l-icon, .related-link .career-regist-button .article-index .job-index-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .article-index .job-index-button:where(:-moz-any-link, :enabled, summary):hover .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .article-index .job-index-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .article-index .job-index-button:where(:-moz-any-link, :enabled, summary):hover .related-link .career-regist-button .mail-icon, .related-link .career-regist-button .article-index .job-index-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon {
		background-color: #0072BC;
	}
	.article-index .job-index-button:where(:any-link, :enabled, summary):hover .arrow-icon, .article-index .job-index-button:where(:any-link, :enabled, summary):hover .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .article-index .job-index-button:where(:any-link, :enabled, summary):hover .arrow-l-icon,
	.article-index .job-index-button:where(:any-link, :enabled, summary):hover .related-link .career-regist-button .arrow-l-icon,
	.related-link .career-regist-button .article-index .job-index-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .article-index .job-index-button:where(:any-link, :enabled, summary):hover .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .article-index .job-index-button:where(:any-link, :enabled, summary):hover .mail-icon,
	.article-index .job-index-button:where(:any-link, :enabled, summary):hover .related-link .career-regist-button .mail-icon,
	.related-link .career-regist-button .article-index .job-index-button:where(:any-link, :enabled, summary):hover .mail-icon {
		background-color: #0072BC;
	}
}
@media screen and (max-width: 1023px) {
	.article-index .job-index-button {
		padding: 0 20px;
		width: min(100%, 320px);
	}
	.article-index .job-index-button-wrapper {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		margin: 20px auto 0;
	}
}
@media screen and (max-width: 1023px) {
	.article-index {
		width: min(86%, 1280px);
		margin: 0 auto 45px;
		padding: 30px 20px;
		border-radius: 10px;
	}
	.article-index-heading {
		font-size: 1.8rem;
		padding: 0 0 10px;
	}
}
.article .profile {
	background: #F7F7F7;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin: 0 0 100px;
	padding: 100px 0;
}
.article .profile-member {
	width: min(75%, 1000px);
	margin: 0 auto;
}
.article .profile-member-item {
	width: 280px;
	height: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 10px 0;
}
.article .profile-member-item .profile-member-name {
	visibility: visible;
	opacity: 1;
}
.article .profile-member-item.swiper-slide-thumb-active .profile-member-name {
	background: #FFF;
}
.article .profile-member-item.swiper-slide-thumb-active .profile-member-name::before {
	border-top-color: #767676;
}
.article .profile-member-item.swiper-slide-thumb-active .profile-member-name-ja, .article .profile-member-item.swiper-slide-thumb-active .profile-member-name-en {
	color: #090F24;
}
.article .profile-member-item.swiper-slide-thumb-active .profile-member-name.color--yl::before {
	border-top-color: #FFDF34;
}
.article .profile-member-item.swiper-slide-thumb-active .profile-member-name.color--bl::before {
	border-top-color: #51A1F4;
}
.article .profile-member-item.swiper-slide-thumb-active .profile-member-name.color--gr::before {
	border-top-color: #61C669;
}
.article .profile-member-item.swiper-slide-thumb-active .profile-member-name.color--rd::before {
	border-top-color: #CD3A20;
}
.article .profile-member-image {
	-o-object-fit: cover;
	   object-fit: cover;
	width: 152px;
	height: 152px;
	border-radius: 50%;
	margin: 0 auto;
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
}
.article .profile-member-name {
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	text-align: center;
	gap: 5px 0;
	padding: 15px;
	background: #F0F0F0;
	border-radius: 10px 10px 0 0;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
.article .profile-member-name::before {
	content: "";
	position: absolute;
	inset: 0;
	margin: 0 auto;
	width: 113px;
	border-top: 5px solid transparent;
}
.article .profile-member-name-ja {
	font-size: 2rem;
	line-height: 1.3;
	font-weight: 500;
	color: #D9D9D9;
}
.article .profile-member-name-en {
	font-size: 1.4rem;
	line-height: 1.5;
	color: #D9D9D9;
}
.article .profile-content {
	position: relative;
	width: min(75%, 1000px);
	margin: 0 auto;
	overflow: visible !important;
	background: #FFF;
	border-radius: 0 0 10px 10px;
}
.article .profile-content-item {
	padding: 60px 30px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-transition: opacity 0.2s ease;
	transition: opacity 0.2s ease;
	opacity: 0 !important;
}
.article .profile-content-item.swiper-slide-active {
	z-index: 2;
	opacity: 1 !important;
}
.article .profile-content-wrapper {
	position: relative;
}
.article .profile-description {
	font-size: 1.8rem;
	font-weight: 500;
	margin: 0 0 20px;
}
.article .profile-description:last-child {
	margin-bottom: 0 !important;
}
.article .profile-detail {
	margin: 0;
}
.article .profile .swiper-controller {
	position: absolute;
	z-index: 2;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
	gap: 0 30px;
	width: min(86%, 1280px);
	margin: 0 auto;
	inset: -100px 0 auto;
}
.article .profile .swiper-controller.is-disabled {
	display: none;
}
.article .profile .swiper-button {
	width: 40px;
	height: 40px;
}
.article .profile .swiper-button .next-icon,
.article .profile .swiper-button .prev-icon {
	display: block;
	width: 30px;
	height: 40px;
	background: #090F24;
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_next.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_next.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-size: 18px auto;
	        mask-size: 18px auto;
	-webkit-mask-position: center;
	        mask-position: center;
	margin: 0 auto;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
.article .profile .swiper-button-disabled .next-icon,
.article .profile .swiper-button-disabled .prev-icon {
	background-color: #D9D9D9;
	cursor: default;
}
.article .profile .swiper-button-prev {
	-webkit-transform: scale(-1, 1);
	        transform: scale(-1, 1);
}
.article .profile .swiper-button-label {
	position: absolute;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	left: 100%;
	width: 0;
}
@media screen and (max-width: 1023px) {
	.article .profile {
		padding: 50px 0;
		margin: 0 0 80px;
	}
	.article .profile-member {
		width: auto;
		clip-path: none;
	}
	.article .profile-member-item {
		width: 120px;
	}
	.article .profile-member-image {
		width: 100px;
		height: 100px;
	}
	.article .profile-member-name {
		padding: 10px;
		border-radius: 5px 5px 0 0;
	}
	.article .profile-member-name::before {
		width: 60px;
		border-top-width: 3px;
	}
	.article .profile-member-name-ja {
		font-size: 1.4rem;
	}
	.article .profile-member-name-en {
		display: none;
	}
	.article .profile-content {
		width: min(86%, 1280px);
		border-radius: 0;
	}
	.article .profile-content::before {
		position: absolute;
		content: "";
		inset: 0 -50vw;
		background: #FFF;
	}
	.article .profile-content-item {
		padding: 30px 0;
	}
	.article .profile-description {
		font-size: 1.6rem;
	}
	.article .profile .swiper-controller {
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		width: min(86%, 1280px);
		inset: -65px 0 auto;
	}
	.article .profile .swiper-button {
		width: 30px;
		height: 30px;
	}
	.article .profile .swiper-button .next-icon,
	.article .profile .swiper-button .prev-icon {
		width: 20px;
		height: 30px;
		-webkit-mask-size: 14px auto;
		        mask-size: 14px auto;
	}
	.article .profile .swiper-button-disabled .next-icon,
	.article .profile .swiper-button-disabled .prev-icon {
		background-color: #D9D9D9;
		cursor: default;
	}
	.article .profile .swiper-button-prev {
		-webkit-transform: scale(-1, 1);
		        transform: scale(-1, 1);
	}
	.article .profile .swiper-button-label {
		position: absolute;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		left: 100%;
		width: 0;
	}
}
.article .project {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin: 100px 0;
	padding: 100px 0;
	border-top: 1px solid #D9D9D9;
	border-bottom: 1px solid #D9D9D9;
}
.article .project-step {
	width: min(75%, 1000px);
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.article .project-step-card {
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	width: calc((100% - 70px) / 3);
	background: #F5FAFF;
	padding: 20px;
	gap: 20px;
	border-radius: 10px;
}
.article .project-step-icon {
	display: -ms-grid;
	display: grid;
	place-items: center;
	background: #FFF;
	height: 150px;
	border-radius: 5px;
}
.article .project-step-icon-image {
	width: 80px;
	height: 80px;
	-o-object-fit: contain;
	   object-fit: contain;
}
.article .project-step-content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 20px;
	padding: 10px;
}
.article .project-step-title {
	font-size: 1.8rem;
	font-weight: 700;
	color: #0072BC;
	margin: 0;
}
.article .project-step-description {
	line-height: 2;
	margin: 0;
}
.article .project-step-separator {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 35px;
	        flex: 0 0 35px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
.article .project-step-separator .step-arrow-icon {
	display: block;
	width: 35px;
	height: 60px;
	background: #0072BC;
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_step-arrow.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_step-arrow.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-size: 18px auto;
	        mask-size: 18px auto;
	-webkit-mask-position: 55% 50%;
	        mask-position: 55% 50%;
}
.article .project-description {
	width: min(75%, 1000px);
	margin: 45px auto 0;
}
@media screen and (max-width: 1023px) {
	.article .project {
		padding: 50px 0;
		margin: 0 0 80px;
	}
	.article .project-step {
		width: min(86%, 1280px);
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.article .project-step-card {
		width: auto;
		border-radius: 10px;
	}
	.article .project-step-content {
		gap: 10px;
	}
	.article .project-step-title {
		font-size: 1.6rem;
	}
	.article .project-step-separator {
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 35px;
		        flex: 0 0 35px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
	.article .project-step-separator .step-arrow-icon {
		display: block;
		height: 50px;
		-webkit-mask-position: 55% 50%;
		        mask-position: 55% 50%;
		rotate: 90deg;
	}
	.article .project-description {
		width: min(86%, 1280px);
		margin: 30px auto 0;
	}
}
.article .profile + .project {
	border-top: none;
	margin: 100px 0;
	padding: 0 0 100px;
}
@media screen and (max-width: 1023px) {
	.article .profile + .project .profile + .project {
		margin: 80px 0;
		padding: 0 0 50px;
	}
}
.article-body {
	width: min(75%, 1000px);
	margin: 0 auto 100px;
	/* h2 + .left-indent {
		margin-left: 0;
	} */
}
.article-body h2 {
	font-size: 3.2rem;
	line-height: 1.4;
	color: #090F24;
	margin: 150px 0 50px;
}
.article-body h3 {
	font-size: 2.2rem;
	line-height: 1.6;
	color: #0072BC;
	margin: 80px 0 60px;
}
.article-body h3 a {
	color: #0072BC !important;
}
.article-body .image {
	margin: 60px 0;
}
.article-body .image-caption {
	font-size: 1.3rem;
	color: #606060;
}
.article-body .video {
	margin: 60px 0;
}
.article-body .video iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 16/9;
}
.article-body .left-indent {
	margin-left: 25%;
}
.article-body .narrow {
	margin-left: 12.5%;
	margin-right: 12.5%;
}
.article-body b.name::after {
	content: "）";
}
.article-body strong {
	font-weight: bold;
	background: #DDEBFF;
}
.article-body .dialogue {
	position: relative;
	margin: 100px 0;
	padding: 0 100px;
}
.article-body .dialogue::before, .article-body .dialogue::after {
	font-family: "Agdasima", sans-serif;
	position: absolute;
	font-size: 30rem;
	line-height: 1;
	color: #D4E7FE;
}
.article-body .dialogue::before {
	content: "“";
	top: -0.2em;
	left: -0.1em;
}
.article-body .dialogue::after {
	content: "”";
	bottom: -0.7em;
	right: -0.1em;
}
.article-body .basic-button, .article-body .external-link-button {
	color: #FFF;
	background: #090F24;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
@media (hover: hover) {
	.article-body .basic-button:where(:-moz-any-link, :enabled, summary):hover, .article-body .external-link-button:where(:-moz-any-link, :enabled, summary):hover {
		background: #FFF;
		color: #090F24;
	}
	.article-body .basic-button:where(:any-link, :enabled, summary):hover, .article-body .external-link-button:where(:any-link, :enabled, summary):hover {
		background: #FFF;
		color: #090F24;
	}
	.article-body .basic-button:where(:-moz-any-link, :enabled, summary):hover .arrow-icon, .article-body .external-link-button:where(:-moz-any-link, :enabled, summary):hover .arrow-icon, .article-body .basic-button:where(:-moz-any-link, :enabled, summary):hover .job-index .career-regist-button .arrow-l-icon, .article-body .external-link-button:where(:-moz-any-link, :enabled, summary):hover .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .article-body .basic-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .job-index .career-regist-button .article-body .external-link-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .article-body .basic-button:where(:-moz-any-link, :enabled, summary):hover .related-link .career-regist-button .arrow-l-icon, .article-body .external-link-button:where(:-moz-any-link, :enabled, summary):hover .related-link .career-regist-button .arrow-l-icon, .related-link .career-regist-button .article-body .basic-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .related-link .career-regist-button .article-body .external-link-button:where(:-moz-any-link, :enabled, summary):hover .arrow-l-icon, .article-body .basic-button:where(:-moz-any-link, :enabled, summary):hover .job-index .career-regist-button .mail-icon, .article-body .external-link-button:where(:-moz-any-link, :enabled, summary):hover .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .article-body .basic-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .job-index .career-regist-button .article-body .external-link-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .article-body .basic-button:where(:-moz-any-link, :enabled, summary):hover .related-link .career-regist-button .mail-icon, .article-body .external-link-button:where(:-moz-any-link, :enabled, summary):hover .related-link .career-regist-button .mail-icon, .related-link .career-regist-button .article-body .basic-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon, .related-link .career-regist-button .article-body .external-link-button:where(:-moz-any-link, :enabled, summary):hover .mail-icon {
		background-color: #090F24;
	}
	.article-body .basic-button:where(:any-link, :enabled, summary):hover .arrow-icon, .article-body .external-link-button:where(:any-link, :enabled, summary):hover .arrow-icon, .article-body .basic-button:where(:any-link, :enabled, summary):hover .job-index .career-regist-button .arrow-l-icon, .article-body .external-link-button:where(:any-link, :enabled, summary):hover .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .article-body .basic-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .job-index .career-regist-button .article-body .external-link-button:where(:any-link, :enabled, summary):hover .arrow-l-icon,
	.article-body .basic-button:where(:any-link, :enabled, summary):hover .related-link .career-regist-button .arrow-l-icon,
	.article-body .external-link-button:where(:any-link, :enabled, summary):hover .related-link .career-regist-button .arrow-l-icon,
	.related-link .career-regist-button .article-body .basic-button:where(:any-link, :enabled, summary):hover .arrow-l-icon,
	.related-link .career-regist-button .article-body .external-link-button:where(:any-link, :enabled, summary):hover .arrow-l-icon, .article-body .basic-button:where(:any-link, :enabled, summary):hover .job-index .career-regist-button .mail-icon, .article-body .external-link-button:where(:any-link, :enabled, summary):hover .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .article-body .basic-button:where(:any-link, :enabled, summary):hover .mail-icon, .job-index .career-regist-button .article-body .external-link-button:where(:any-link, :enabled, summary):hover .mail-icon,
	.article-body .basic-button:where(:any-link, :enabled, summary):hover .related-link .career-regist-button .mail-icon,
	.article-body .external-link-button:where(:any-link, :enabled, summary):hover .related-link .career-regist-button .mail-icon,
	.related-link .career-regist-button .article-body .basic-button:where(:any-link, :enabled, summary):hover .mail-icon,
	.related-link .career-regist-button .article-body .external-link-button:where(:any-link, :enabled, summary):hover .mail-icon {
		background-color: #090F24;
	}
}
.article-body .basic-button .arrow-icon, .article-body .external-link-button .arrow-icon, .article-body .basic-button .job-index .career-regist-button .arrow-l-icon, .article-body .external-link-button .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .article-body .basic-button .arrow-l-icon, .job-index .career-regist-button .article-body .external-link-button .arrow-l-icon,
.article-body .basic-button .related-link .career-regist-button .arrow-l-icon,
.article-body .external-link-button .related-link .career-regist-button .arrow-l-icon,
.related-link .career-regist-button .article-body .basic-button .arrow-l-icon,
.related-link .career-regist-button .article-body .external-link-button .arrow-l-icon, .article-body .basic-button .job-index .career-regist-button .mail-icon, .article-body .external-link-button .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .article-body .basic-button .mail-icon, .job-index .career-regist-button .article-body .external-link-button .mail-icon,
.article-body .basic-button .related-link .career-regist-button .mail-icon,
.article-body .external-link-button .related-link .career-regist-button .mail-icon,
.related-link .career-regist-button .article-body .basic-button .mail-icon,
.related-link .career-regist-button .article-body .external-link-button .mail-icon {
	background-color: #FFF;
}
@media screen and (max-width: 1023px) {
	.article-body {
		width: min(86%, 1280px);
		margin: 0 auto 80px;
	}
	.article-body h2 {
		font-size: 2.6rem;
		margin: 80px 0 30px;
	}
	.article-body .image {
		margin: 30px -2.325%;
	}
	.article-body .image-caption {
		font-size: 1.3rem;
	}
	.article-body .dialogue {
		margin: 80px 0;
		padding: 0 15px;
	}
	.article-body .dialogue::before, .article-body .dialogue::after {
		font-size: 17rem;
	}
	.article-body .dialogue::before {
		top: -0.4em;
		left: -0.1em;
	}
	.article-body .dialogue::after {
		bottom: -0.9em;
		right: -0.1em;
	}
	.article-body h3 {
		margin: 40px 0 30px;
	}
	.article-body .left-indent {
		margin-left: 0;
	}
	.article-body .narrow {
		margin-left: 0;
		margin-right: 0;
	}
}

.annotation {
	width: min(75%, 1000px);
	margin: 100px auto 0;
}
@media screen and (max-width: 1023px) {
	.annotation {
		width: min(86%, 1280px);
		margin: 80px auto 0;
	}
}

.chat-box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0 40px;
	margin: 60px 0;
}
.chat-box--right {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
}
.chat-box-speaker {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 160px;
	text-align: center;
}
.chat-box-image {
	width: min(100%, 113px);
	border-radius: 50%;
	margin: 0 0 10px;
}
.chat-box-name {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	border-top: 5px solid #767676;
	border-color: #767676;
	padding: 10px 0 0;
	margin: 0 auto;
	gap: 5px 0;
}
.chat-box-name-ja {
	font-size: 2.4rem;
	line-height: 1.3;
	font-weight: 500;
}
.chat-box-name-en {
	font-size: 1.2rem;
	line-height: 1.5;
}
.chat-box-speech {
	position: relative;
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
	background: #F7F7F7;
	border-radius: 20px;
	padding: 50px;
}
.chat-box-speech::before {
	content: "";
	position: absolute;
	right: 100%;
	top: 80px;
	width: 30px;
	height: 20px;
	background: #F7F7F7;
	clip-path: polygon(0 0, 100% 0, 100% 100%);
}
.chat-box p:last-child {
	margin-bottom: 0;
}
.chat-box--right .chat-box-speech::before {
	right: auto;
	left: 100%;
	-webkit-transform: scale(-1, 1);
	        transform: scale(-1, 1);
}
.chat-box.color--yl .chat-box-name {
	border-color: #FFDF34;
}
.chat-box.color--yl .chat-box-speech {
	background: #FEFFE6;
}
.chat-box.color--yl .chat-box-speech::before {
	background: #FEFFE6;
}
.chat-box.color--bl .chat-box-name {
	border-color: #51A1F4;
}
.chat-box.color--bl .chat-box-speech {
	background: #EDF4FF;
}
.chat-box.color--bl .chat-box-speech::before {
	background: #EDF4FF;
}
.chat-box.color--gr .chat-box-name {
	border-color: #61C669;
}
.chat-box.color--gr .chat-box-speech {
	background: #EDF9EB;
}
.chat-box.color--gr .chat-box-speech::before {
	background: #EDF9EB;
}
.chat-box.color--rd .chat-box-name {
	border-color: #CD3A20;
}
.chat-box.color--rd .chat-box-speech {
	background: #FFF3F0;
}
.chat-box.color--rd .chat-box-speech::before {
	background: #FFF3F0;
}
@media screen and (max-width: 1023px) {
	.chat-box {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		gap: 10px 0;
		margin: 50px 0;
	}
	.chat-box-speaker {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: 0 10px;
		width: auto;
	}
	.chat-box-image {
		width: 60px;
		margin: 0;
	}
	.chat-box-name {
		-webkit-box-flex: 2;
		    -ms-flex: 2 2 auto;
		        flex: 2 2 auto;
		border-top: none;
		border-left-width: 2px;
		border-left-style: solid;
		padding: 10px;
		margin: 0;
		gap: 5px 0;
		text-align: left;
	}
	.chat-box-name-ja {
		font-size: 1.6rem;
	}
	.chat-box-name-en {
		font-size: 1rem;
	}
	.chat-box-speech {
		padding: 20px;
		margin-top: 25px;
	}
	.chat-box-speech::before {
		right: auto;
		top: auto;
		left: 20px;
		bottom: 100%;
		width: 20px;
		height: 30px;
		clip-path: polygon(0 0, 0% 100%, 100% 100%);
	}
	.chat-box--right .chat-box-speaker {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: row-reverse;
		        flex-direction: row-reverse;
		-webkit-box-pack: end;
		    -ms-flex-pack: end;
		        justify-content: flex-end;
	}
	.chat-box--right .chat-box-name {
		text-align: right;
		border-left: none;
		border-right-width: 2px;
		border-right-style: solid;
	}
	.chat-box--right .chat-box-speech::before {
		right: 20px;
		top: auto;
		left: auto;
		bottom: 100%;
		-webkit-transform: scale(-1, 1);
		        transform: scale(-1, 1);
	}
}

.bottom-share {
	margin: 150px auto;
}
.bottom-share:last-child {
	margin-bottom: 0;
}
.bottom-share-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0;
	border-top: 1px solid #D9D9D9;
	border-bottom: 1px solid #D9D9D9;
}
.bottom-share-item {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 0%;
	        flex: 1 1 0%;
	list-style: none;
	margin: 0;
}
.bottom-share-item:nth-child(n+2) {
	border-left: 1px solid #D9D9D9;
}
.bottom-share-button {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 15px;
	background-color: #FFF;
	width: 100%;
	height: 140px;
	font-size: 1.6rem;
	line-height: 1.6;
	font-weight: normal;
}
.bottom-share-button::before {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	content: "";
	display: block;
	height: 25px;
	width: 25px;
	background-size: 25px auto !important;
}
.bottom-share-button[href^="https://twitter.com/"]::before {
	background-image: url(/global/ja/recruit/uptodata/assets/images/icn_x.svg);
}
.bottom-share-button[href^="https://www.facebook.com/"]::before {
	background-image: url(/global/ja/recruit/uptodata/assets/images/icn_fb.svg);
}
.bottom-share-button[href^="https://social-plugins.line.me/"]::before {
	background-image: url(/global/ja/recruit/uptodata/assets/images/icn_line.svg);
}
.bottom-share-button.copy-url-button::before {
	background-image: url(/global/ja/recruit/uptodata/assets/images/icn_copy.svg);
}
.bottom-share-button.copy-url-button.is-copied {
	pointer-events: none;
}
.bottom-share-button.copy-url-button.is-copied::after {
	content: "URLをコピーしました";
	display: -ms-grid;
	display: grid;
	place-items: center;
	position: absolute;
	z-index: 2;
	inset: 10px;
	background-color: #090F24;
	border-radius: 10px;
	color: #FFF;
	-webkit-animation: urlCopy 2s ease;
	        animation: urlCopy 2s ease;
}
@-webkit-keyframes urlCopy {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 10px, 0);
		        transform: translate3d(0, 10px, 0);
	}
	10% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
	80% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
	100% {
		opacity: 0;
		-webkit-transform: translate3d(0, -10px, 0);
		        transform: translate3d(0, -10px, 0);
		visibility: hidden;
	}
}
@keyframes urlCopy {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 10px, 0);
		        transform: translate3d(0, 10px, 0);
	}
	10% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
	80% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
	100% {
		opacity: 0;
		-webkit-transform: translate3d(0, -10px, 0);
		        transform: translate3d(0, -10px, 0);
		visibility: hidden;
	}
}
@media (hover: hover) {
	.bottom-share-button:where(:-moz-any-link, :enabled, summary):hover {
		background: #F7F7F7;
	}
	.bottom-share-button:where(:any-link, :enabled, summary):hover {
		background: #F7F7F7;
	}
}
@media screen and (max-width: 1023px) {
	.bottom-share {
		margin: 80px auto;
	}
	.bottom-share-item {
		width: 100%;
	}
	.bottom-share-button {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		gap: 5px;
		font-size: 1.3rem;
	}
	.bottom-share-button.copy-url-button.is-copied::after {
		white-space: pre;
		content: "URLを\aコピーしました";
	}
	.bottom-share-label {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		min-height: 3.2em;
		text-align: center;
	}
}

.index-button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 20px;
	height: 110px;
	background: #FFF;
	border: 1px solid #D9D9D9;
	font-size: 1.6rem;
	font-weight: bold;
}
.index-button-wrap {
	margin: 100px auto;
	width: min(75%, 1000px);
}
.index-button .index-icon {
	display: block;
	width: 14px;
	height: 14px;
	background-color: #E4ECF8;
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_index.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_index.svg);
	-webkit-mask-size: 14px auto;
	        mask-size: 14px auto;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
}
@media screen and (max-width: 1023px) {
	.index-button {
		height: 75px;
		font-size: 1.6rem;
	}
	.index-button-wrap {
		margin: 60px auto 100px;
		width: min(86%, 1280px);
	}
}

.article-section {
	margin: 0 0 150px;
	scroll-margin-top: 80px;
}
.article-section-heading {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	width: min(86%, 1280px);
	margin: 0 auto 60px;
}
.article-section-heading-en {
	font-size: 3.2rem;
	line-height: 1.2;
}
.article-section-heading-ja {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.5;
}
@media screen and (max-width: 1023px) {
	.article-section {
		margin: 0 0 100px;
		scroll-margin-top: 54px;
	}
	.article-section-heading {
		width: 100%;
		text-align: center;
		margin: 0 auto 30px;
		padding: 0;
	}
	.article-section-heading-en {
		font-size: 2.8rem;
	}
	.article-section-heading-ja {
		font-size: 1.8rem;
	}
	.article-section-lead {
		width: 100%;
		margin: 30px 0 0;
		font-size: 1.4rem;
		line-height: 2;
	}
}

.related-articles {
	position: relative;
}
.related-articles .more-button {
	margin: 0 0 0 auto;
	width: 240px;
}
.related-articles .more-button-wrapper {
	position: absolute;
	width: min(86%, 1280px);
	margin: 0 auto;
	inset: 0 0 auto 0;
}
@media screen and (max-width: 1023px) {
	.related-articles .more-button {
		margin: 0;
	}
	.related-articles .more-button-wrapper {
		position: relative;
		width: 90%;
		margin: 60px auto 0;
		inset: 0;
	}
}

.job-index,
.related-link {
	width: min(75%, 1000px);
	margin: 0 auto 50px;
	padding: 60px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	background: #F5FAFF;
	border-radius: 20px;
}
.job-index-heading,
.related-link-heading {
	font-size: 2.4rem;
	font-weight: 500;
	padding: 0 0 10px;
	border-bottom: 1px solid #D9D9D9;
}
.job-index-list,
.related-link-list {
	position: relative;
	display: flow-root;
	margin: 0;
}
.job-index-item,
.related-link-item {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	list-style: none;
	margin: 0;
}
.job-index-link,
.related-link-link {
	margin: 0 0 30px;
	color: #0072BC !important;
	font-weight: bold;
}
@media (hover: hover) {
	.job-index-link:where(:-moz-any-link, :enabled, summary):hover, .related-link-link:where(:-moz-any-link, :enabled, summary):hover {
		text-decoration: underline;
	}
	.job-index-link:where(:any-link, :enabled, summary):hover,
	.related-link-link:where(:any-link, :enabled, summary):hover {
		text-decoration: underline;
	}
}
.job-index .career-regist-button,
.related-link .career-regist-button {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 0%;
	        flex: 1 1 0%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0 12px;
	min-height: 63px;
	color: #FFF;
	font-size: 1.8rem;
	line-height: 1.5;
	border-radius: 6px;
	font-weight: 500;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	padding: 5px min(3.5vw, 60px);
	background: #142F49;
}
.job-index .career-regist-button-wrapper,
.related-link .career-regist-button-wrapper {
	position: relative;
	margin-top: 30px;
}
.job-index .career-regist-button .mail-icon,
.related-link .career-regist-button .mail-icon {
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_mail.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_mail.svg);
	-webkit-mask-size: 24px auto;
	        mask-size: 24px auto;
	background-color: #FFF;
}
.job-index .career-regist-button .arrow-l-icon,
.related-link .career-regist-button .arrow-l-icon {
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow_l.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow_l.svg);
	-webkit-mask-size: 15px auto;
	        mask-size: 15px auto;
	margin: 0 0 0 auto;
	background-color: #FFF;
}
@media (hover: hover) {
	.job-index .career-regist-button:where(:-moz-any-link, :enabled, summary):hover, .related-link .career-regist-button:where(:-moz-any-link, :enabled, summary):hover {
		background: rgba(20, 47, 73, 0.8);
	}
	.job-index .career-regist-button:where(:any-link, :enabled, summary):hover,
	.related-link .career-regist-button:where(:any-link, :enabled, summary):hover {
		background: rgba(20, 47, 73, 0.8);
	}
}
@media screen and (max-width: 1023px) {
	.job-index,
	.related-link {
		width: min(86%, 1280px);
		margin: 0 auto 45px;
		padding: 30px 20px;
		border-radius: 10px;
	}
	.job-index-heading,
	.related-link-heading {
		font-size: 1.8rem;
		padding: 0 0 10px;
	}
	.job-index .career-regist-button,
	.related-link .career-regist-button {
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: 0 12px;
		min-height: 60px;
		font-size: 1.4rem;
		line-height: 1.5;
		border-radius: 6px;
		font-weight: 500;
		padding: 5px 20px;
	}
	.job-index .career-regist-button-wrapper,
	.related-link .career-regist-button-wrapper {
		margin-top: 0;
	}
}

.column-box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background: #F7F7F7;
	margin: 100px auto;
	padding: 60px;
	gap: 50px;
}
.column-box-heading {
	margin: 0 0 30px !important;
	font-size: 1.6rem !important;
	color: #090F24 !important;
}
.column-box-image {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 210px;
}
.column-box-image img {
	width: 100%;
	height: auto;
}
.column-box-content {
	-webkit-box-flex: 2;
	    -ms-flex: 2 2 auto;
	        flex: 2 2 auto;
}
.column-box-content :last-child {
	margin-bottom: 0;
}
.column-box-content .basic-button, .column-box-content .external-link-button {
	margin: 0;
	min-width: 285px;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}
.column-box-content .basic-button-wrapper, .column-box-content .external-link-button-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 10px;
	margin: 30px 0 0;
}
@media screen and (max-width: 1023px) {
	.column-box {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		margin: 80px auto;
		padding: 30px 20px;
	}
	.column-box-heading {
		margin: 0 0 20px !important;
		font-size: 1.4rem !important;
	}
	.column-box-image {
		text-align: center;
		max-width: 210px;
		margin: 20px auto 40px;
	}
}

.external-link-button {
	min-width: 285px;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	-webkit-box-pack: stretch;
	    -ms-flex-pack: stretch;
	        justify-content: stretch;
}
.external-link-button-label {
	margin: 0 auto;
}
.external-link-button .arrow-icon, .external-link-button .job-index .career-regist-button .mail-icon, .job-index .career-regist-button .external-link-button .mail-icon,
.external-link-button .related-link .career-regist-button .mail-icon,
.related-link .career-regist-button .external-link-button .mail-icon, .external-link-button .job-index .career-regist-button .arrow-l-icon, .job-index .career-regist-button .external-link-button .arrow-l-icon,
.external-link-button .related-link .career-regist-button .arrow-l-icon,
.related-link .career-regist-button .external-link-button .arrow-l-icon {
	-webkit-mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow_ext.svg);
	        mask-image: url(/global/ja/recruit/uptodata/assets/images/icn_arrow_ext.svg);
}
.series-link-button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	gap: 0 5px;
	font-size: 1.8rem;
	font-weight: bold;
	color: #0072BC !important;
	line-height: 1.6;
	margin: 60px auto 0;
	width: min(100%, 800px);
}
@media (hover: hover) {
	.series-link-button:where(:-moz-any-link, :enabled, summary):hover {
		text-decoration: underline;
	}
	.series-link-button:where(:any-link, :enabled, summary):hover {
		text-decoration: underline;
	}
}
.series-link-button::before, .series-link-button::after {
	content: "";
	width: 20px;
	min-height: 87px;
	color: #0072BC;
	border: 1px solid;
}
.series-link-button::before {
	border-right: none;
}
.series-link-button::after {
	border-left: none;
}
@media screen and (max-width: 1023px) {
	.series-link-button {
		margin: 40px auto 0;
		font-size: 1.4rem;
	}
}