@charset "utf-8";
/* all
-------------------------------------------------------------------*/
:root {
	--black: #282828;
	--white: #fff;
	--main_color: #ff7900;
	--point_color: #211816;
	--gray01: #666;
	--gray02: #f6f5f3;
	--bg_color: url(../img/common/bg-common.png);
	--bg_color02:#f4f3f0;
}
html,body {
	background: var(--white);
	color: var(--black);
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	line-height: 1.4;
	scroll-behavior: smooth;
	scroll-padding-top: 6em;
}
html:is([lang="en"]) *:not(font) {
	white-space: normal;
}
body {
	width: 100%;
	font-size: 100%;
	text-align: center;
	min-width: 1200px;
	text-size-adjust: none;
	font-feature-settings: 'palt';
	-webkit-text-size-adjust: none;
}
main {
	overflow: clip;
	width: 100%;
}
main>*:first-child {
	margin-top: 6.875em;
}
body:not(.home) main {
	padding-bottom: 10em;
}
.lato {
	font-family: "Lato", sans-serif;
	font-weight: 700;
}
html:is([lang="zh-CN"]),
html:is([lang="zh-CN"]) .lato {
	font-family: "Noto Sans SC", sans-serif;
}
.sitewrap {
	width: 1200px;
	min-width: 1200px;
	margin: 0 auto;
	text-align: left;
	box-sizing: border-box;
}
img {
	max-width: 100%;
	height: auto;
}
*:has(>wbr) {
	word-break: keep-all;
}
header *,
footer * {
	margin: 0;
	padding: 0;
	line-height: inherit;
}
header a:hover,
footer a:hover {
	color: inherit;
}
@media screen and (max-width:1270px) {
	body,
	.sitewrap {
		width: 100%;
		min-width: 0;
	}
	.sitewrap>* {
		padding-left: 2%;
		padding-right: 2%;
	}
}
@media screen and (max-width:767px) {
	html {
		font-size: 14px;
	}
	main>*:first-child {
		margin-top: 70px;
	}
	body:not(.home) main {
		padding-bottom: 0;
	}
	.sitewrap>* {
		padding-left: 1em;
		padding-right: 1em;
	}
}
/* header
-------------------------------------------------------------------*/
header#fix_menu {
	position: fixed;
	z-index: 999;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	inset: 0 0 auto;
	container-type: inline-size;
	padding-right: 6em;
}
header.fixedMenu,
body:not(.home) header#fix_menu {
	background: var(--white);
}
header #site_ttl {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 1.318333em 1.5em;
	white-space: nowrap;
}
header #site_ttl a {
	display: inline-block;
	vertical-align: middle;
	width: 197px;
}
header .drop_menu {
	max-width: min(100%, 1000px);
	font-size: 0;
}
header .drop_menu #NavWrap {
	font-size: 0;
}
header .drop_menu #NavWrap .nav-inner {
	display: inline-flex;
	justify-content: flex-start;
	align-items: center;
	height: 100%;
	font-size: 1rem;
	white-space: nowrap;
}
header .drop_menu #NavWrap ul {
	display: inline-flex;
	justify-content: flex-start;
	align-items: stretch;
	gap: 0 2em;
	margin-right: 2em;
}
header .drop_menu #NavWrap li {
	flex: 1;
}
header .drop_menu #NavWrap li *:is(a, p) {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	min-height: 7.1435em;
	text-align: left;
	font-size: 0.875rem;
	color: var(--black);
	text-decoration: none;
}
header .drop_menu #NavWrap li>*>span {
	position: relative;
	z-index: 10;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: row-reverse;
	gap: 0.5em;
	/* width: 100%; */
	height: 100%;
}
header .drop_menu #NavWrap li.drop-wrap>*>span::before {
	content: "";
	display: inline-block;
	width: 0.35em;
	aspect-ratio: 1/1;
	border-bottom: 2px solid var(--point_color);
	border-right: 2px solid var(--point_color);
	rotate: 45deg;
	translate: 0 -25%;
	transform: skew(5deg, 5deg);
}
header .drop_menu #NavWrap li>a span::after {
	position: absolute;
	z-index: 10;
	display: inline-block;
	content: "";
	width: 1.5em;
	height: 3px;
	background: var(--main_color);
	border-radius: 2px;
	bottom: -0.75em;
	scale: 0 1;
	transform-origin: center;
	transition: scale .4s ease;
}
header .drop_menu #NavWrap li.drop-wrap {
	position: relative;
	z-index: 10;
}
header .drop_menu #NavWrap ul::before {
	position: fixed;
	z-index: -10;
	content: "";
	display: inline-block;
	width: 100vw;
	height: 100%;
	background: #000;
	inset: 6.25em 0;
	opacity: 0;
	visibility: hidden;
	transition: opacity .4s;
}
header .drop_menu #NavWrap li.drop-wrap i {
	display: none;
}
header .drop_menu #NavWrap li .drop-box {
	position: fixed;
	z-index: 999;
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	gap: 3.125em;
	width: min(100vw, 1000px);
	background: var(--white);
	border-radius: 0.625em;
	padding: 3.125em 4.625em;
	opacity: 0;
	visibility: hidden;
	top: 5.5em;
	left: 50%;
	transform: translateX(-50%);
	transition: opacity .4s;
	filter: drop-shadow(0 10px 16px rgba(0, 0, 0, 0.15));
}
header .drop_menu #NavWrap li .drop-box::after {
	order: 2;
	content: "";
	display: block;
	width: 1px;
	border-left: 2px dotted #c5c5c5;
}
header .drop_menu #NavWrap li .drop-ttl_box {
	order: 1;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: column;
	width: 11.25em;
	text-align: left;
	font-size: 1rem;
	font-weight: bold;
}
header .drop_menu #NavWrap li .drop-ttl_sub {
	text-transform: uppercase;
}
header .drop_menu #NavWrap li .drop-ttl {
	font-size: 1.625em;
}
header .drop_menu #NavWrap li .drop-box_child {
	order: 3;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 1.475em;
	flex: 1;
}
header .drop_menu #NavWrap li .drop-item {
	width: calc((100% - 2.95em) / 3);
}
header .drop_menu #NavWrap li .drop-item a {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: column;
	gap: 0.5em;
	text-align: left;
	text-decoration: none;
}
header .drop_menu #NavWrap li .drop-item a .drop-item_image {
	border-radius: .3125em;
	overflow: hidden;
}
header .drop_menu #NavWrap li .drop-item a .drop-item_image img {
	scale: 1.01;
	transition: scale .4s;
}
header .drop_menu #NavWrap .contact-btn_box {
	display: inline-flex;
	justify-content: flex-start;
	align-items: center;
	gap: 1em;
	height: 100%;
	margin-right: 1.5em;
}
header .drop_menu #NavWrap .contact-btn a {
	position: relative;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 10em;
	width: fit-content;
	min-height: 3em;
	text-align: center;
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--point_color);
	padding: 0.5em 1.25em;
	margin: auto;
	text-decoration: none;
}
header .drop_menu #NavWrap .contact-btn a::after {
	position: absolute;
	z-index: -10;
	display: inline-block;
	content: "";
	width: 100%;
	height: 100%;
	background: var(--white);
	border: 1px solid var(--point_color);
	border-radius: 5em;
	transition: filter .4s, transform .4s;
}
header .drop_menu #NavWrap .contact-btn.btn_search a {
	color: var(--white);
}
header .drop_menu #NavWrap .contact-btn.btn_search a::after {
	background: var(--main_color);
	border-color: var(--main_color);
}
header .drop_menu #switch {
	position: fixed;
	z-index: -999;
	width: 0;
	height: 0;
	opacity: 0;
}
@media screen and (min-width: 1300px) {
	header .drop_menu #NavWrap li.drop-wrap:hover::before {
		opacity: 0.3;
		visibility: visible;
	}
	header .drop_menu #NavWrap li.drop-wrap:hover .drop-box {
		opacity: 1;
		visibility: visible;
	}
}
@media (any-hover: hover) and (any-pointer: fine) {
	header .drop_menu #NavWrap li>a:hover span::after {
		scale: 1 1;
	}
	header .drop_menu #NavWrap ul:has(li.drop-wrap:hover)::before {
		opacity: 0.3;
		visibility: visible;
	}
	header .drop_menu #NavWrap li .drop-item a:hover .drop-item_image img {
		scale: 1.08;
	}
	header .drop_menu #NavWrap .contact-btn a:hover::after {
		transform: scale(0.95);
	}
}
@media screen and (max-width: 1300px), only screen and (max-device-width: 1366px) and (orientation: landscape) {
	header#fix_menu{
		padding:0;
	}
	header .drop_menu #switch~label {
		position: relative;
		z-index: 980;
		display: inline-block;
		text-align: center;
		padding: 12px;
		width: 6.25rem;
		aspect-ratio: 1/1;
		background: var(--point_color);
		box-sizing: border-box;
		cursor: pointer;
	}
	header .drop_menu #switch~label b {
		display: block;
		width: 100%;
		margin-bottom: 0;
	}
	header .drop_menu #switch~label span {
		position: absolute;
		display: block;
		width: 38px;
		height: 4px;
		background: var(--white);
		border-radius: 4px;
		top: 50%;
		left: 0;
		right: 0;
		margin: auto;
		cursor: -webkit-grabbing;
		transition: transform 0.4s;
	}
	header .drop_menu #switch~label span:before,
	header .drop_menu #switch~label span:after {
		position: absolute;
		z-index: 10;
		display: block;
		content: "";
		width: 38px;
		height: 4px;
		background: var(--white);
		border-radius: 4px;
		margin-top: 0;
	}
	header .drop_menu #switch~label span:before {
		top: -14px;
	}
	header .drop_menu #switch~label span:after {
		top: 14px;
	}
	header .drop_menu #switch:checked~label span {
		transform: rotate(-135deg);
	}
	header .drop_menu #switch:checked~label span:before {
		top: 0;
	}
	header .drop_menu #switch:checked~label span:after {
		transform: rotate(270deg);
		top: 0;
		margin-top: 0;
	}
	header .drop_menu #switch~label::after {
		position: fixed;
		z-index: -100;
		display: inline-block;
		content: "";
		width: 100vw;
		height: 100vh;
		background: #000;
		inset: 100px 0 0;
		opacity: 0;
		visibility: hidden;
		transition: inset 0.4s;
	}
	header .drop_menu #switch:checked~label::after {
		opacity: 0.3;
		visibility: visible;
		;
	}
	header .drop_menu #NavWrap {
		position: fixed;
		z-index: 980;
		width: min(100%, 340px);
		height: calc(100dvh - 100px);
		inset: 100px -100% 0 auto;
		background: var(--white);
		box-sizing: border-box;
		overscroll-behavior: contain;
		overflow: auto;
		visibility: hidden;
		transition: inset 0.4s, opacity .4s;
	}
	header .drop_menu #NavWrap::-webkit-scrollbar {
		height: 10px;
		width: 10px;
	}
	header .drop_menu #NavWrap::-webkit-scrollbar-track {
		border-radius: 10px;
		background: var(--gray02);
	}
	header .drop_menu #NavWrap::-webkit-scrollbar-thumb {
		border-radius: 10px;
		background: var(--gray01);
	}
	header .drop_menu #switch:checked~#NavWrap {
		inset: 100px 0 0 auto;
		visibility: visible;
	}
	header .drop_menu #NavWrap .nav-inner {
		display: flex;
		justify-content: flex-end;
		flex-direction: column-reverse;
		gap: 1em;
		padding: 2em 0;
	}
	header .drop_menu #NavWrap .nav-inner::after {
		display: block;
		content: "";
		width: 100%;
		padding-top: 4em;
		order: -1;
	}
	header .drop_menu #NavWrap ul {
		flex-direction: column;
		width: 100%;
		margin: 0;
	}
	header .drop_menu #NavWrap ul li {
		border-bottom: 1px solid var(--point_color);
	}
	header .drop_menu #NavWrap li *:is(a, p) {
		position: relative;
		z-index: 10;
		display: flex;
		justify-content: flex-start;
		min-height: 3.5em;
		font-size: 1rem;
		padding: 0.75em;
	}
	header .drop_menu #NavWrap li span {
		justify-content: flex-start;
		align-items: flex-start;
		flex-direction: row;
	}
	header .drop_menu #NavWrap li.drop-wrap>*:is(a, p) {
		width: fit-content;
		margin-right: 3.5em;
	}
	header .drop_menu #NavWrap li.drop-wrap>*>span::before,
	header .drop_menu #NavWrap li>a span::after,
	header .drop_menu #NavWrap ul::before {
		display: none;
	}
	header .drop_menu #NavWrap li:not(.drop-wrap) a::after,
	header .drop_menu #NavWrap li .drop-item a::after {
		position: absolute;
		z-index: 10;
		display: inline-block;
		content: "";
		width: 0.45em;
		aspect-ratio: 1/1;
		border-top: 1px solid var(--black);
		border-right: 1px solid var(--black);
		rotate: 45deg;
		top: 1.5em;
		right: 1.75em;
	}
	header .drop_menu #NavWrap li.drop-wrap i {
		position: absolute;
		z-index: 10;
		display: block;
		width: 3.5em;
		aspect-ratio: 1/1;
		top: 0;
		right: 0;
	}
	header .drop_menu #NavWrap li.drop-wrap i::before,
	header .drop_menu #NavWrap li.drop-wrap i::after {
		position: absolute;
		z-index: 10;
		display: inline-block;
		content: "";
		width: 1em;
		height: 1px;
		background: var(--point_color);
		top: 50%;
		left: 50%;
		translate: -50% -50%;
	}
	header .drop_menu #NavWrap li.drop-wrap i::after {
		rotate: 90deg;
		transition: rotate .4s;
	}
	header .drop_menu #NavWrap li.drop-wrap.opened i::after {
		rotate: 360deg;
	}
	header .drop_menu #NavWrap li .drop-box {
		position: static;
		flex-direction: column;
		gap: 0;
		width: 100%;
		max-height: 0;
		background: #f4f3f0;
		border-radius: 0;
		padding: 0;
		opacity: 1;
		transform: none;
		transition: max-height .4s;
		filter: none;
	}
	header .drop_menu #NavWrap li.drop-wrap.opened .drop-box {
		visibility: visible;
		max-height: 100vw;
	}
	header .drop_menu #NavWrap li .drop-box::after,
	header .drop_menu #NavWrap li .drop-ttl_box,
	header .drop_menu #NavWrap li .drop-item a .drop-item_image {
		display: none;
	}
	header .drop_menu #NavWrap li .drop-box_child {
		flex-direction: column;
		gap: 0;
		flex: 1;
	}
	header .drop_menu #NavWrap li .drop-item {
		width: 100%;
		border-top: 1px solid var(--point_color);
	}
	header .drop_menu #NavWrap li .drop-item a {
		justify-content: center;
		font-size: 0.875rem;
		padding-inline: 1.75em;
	}
	header .drop_menu #NavWrap li .drop-item a::before {
		position: absolute;
		z-index: 10;
		display: inline-block;
		content: "";
		width: 0.5em;
		height: 1px;
		background: var(--black);
		top: 1.75em;
		left: 1em;
	}
	header .drop_menu #NavWrap .contact-btn_box {
		flex-direction: column-reverse;
		gap: 1em;
		width: 100%;
		height: auto;
		padding-inline: 1.25em;
		margin: 0;
	}
	header .drop_menu #NavWrap .contact-btn,
	header .drop_menu #NavWrap .contact-btn a {
		width: 100%;
	}
	@media (any-hover: hover) and (any-pointer: fine) {
		header .drop_menu #NavWrap li:not(.drop-box) a:hover,
		header .drop_menu #NavWrap li.drop-wrap:has(> a:hover) {
			background: var(--gray02);
		}
		header .drop_menu #NavWrap .drop-item a:hover {
			color: var(--white);
			background: var(--gray01) !important;
		}
		header .drop_menu #NavWrap .drop-item a:hover::before {
			background: var(--white);
		}
		header .drop_menu #NavWrap .drop-item a:hover::after {
			border-color: var(--white);
		}
	}
}
@media screen and (max-width:767px) {
	header #site_ttl {
		padding: 5px 0.75em;
	}
	header #site_ttl a {
		aspect-ratio: 170/50;
		width: auto;
		height: 50px;
	}
	header #site_ttl a img {
		object-fit: cover;
		max-width: inherit;
		width: 100%;
		height: 100%;
	}
	header .drop_menu #switch~label {
		z-index: 990;
		width: 4.28571428571rem;
	}
	header .drop_menu #switch~label b {
		display: block;
		width: 100%;
		margin-bottom: 0;
	}
	header .drop_menu #switch~label span,
	header .drop_menu #switch~label span:before,
	header .drop_menu #switch~label span:after {
		width: 22px;
		height: 2px;
	}
	header .drop_menu #switch~label span:before {
		top: -9px;
	}
	header .drop_menu #switch~label span:after {
		top: 9px;
	}
	header .drop_menu #switch~label::after {
		display: none;
	}
	header .drop_menu #NavWrap {
		width: 100%;
		height: calc(100svh - 60px);
		inset: -100px 0 0 auto;
		opacity: 0;
	}
	header .drop_menu #switch:checked~#NavWrap {
		inset: 60px 0 0 auto;
		opacity: 1;
	}
	header .drop_menu #NavWrap .contact-btn_box {
		flex-direction: row-reverse;
	}
}
/* contents
-------------------------------------------------------------------*/
.section,
section {
	position: relative;
	z-index: 10;
}
.slick-slider .slick-arrow {
	position: absolute;
	z-index: 100;
	display: flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	width: 4.444445em;
	aspect-ratio: 1/1;
	font-size: 1.125rem;
	color: transparent;
	background: var(--black);
	border: 2px solid var(--black);
	border-radius: 50%;
	top: calc(50% - 2em);
	left: 0;
	transform: translateY(-50%);
	cursor: pointer;
	transition: background .4s;
}
.slick-slider .slick-arrow.slick-disabled {
	display: none !important;
}
.slick-slider .slick-arrow.slick-next {
	left: auto;
	right: 0;
}
.slick-slider .slick-arrow::before {
	position: absolute;
	z-index: 20;
	display: inline-block;
	content: "\2192";
	color:var(--white);
	transition: color .4s;
}
.slick-slider .slick-prev.slick-arrow::before {
	rotate:180deg;
}
.slick-slider .slick-arrow:focus {
	background: var(--white);
}
.slick-slider .slick-arrow:focus::before {
	color: var(--black);
}
.slick-slider .slick-dots {
	width: 100%;
	text-align: center;
	line-height: 0;
	padding: 0;
	margin: 2em auto 0;
	list-style: none;
}
.slick-slider .slick-dots li {
	position: relative;
	z-index: 10;
	display: inline-block;
	width: 0.625em;
	height: 0.625em;
	border-radius: 100%;
	line-height: 1;
	margin: 0 0.5em;
	padding: 0;
	cursor: pointer;
	overflow: hidden;
}
.slick-slider .slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: flex;
	width: 100%;
	height: 100%;
	padding: 0;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
}
.slick-slider .slick-dots li button::before {
	position: absolute;
	z-index: 10;
	display: inline-block;
	content: "";
	width: 100%;
	height: 100%;
	background: #ababab;
	top: 0;
	left: 0;
}
.slick-slider .slick-dots li.slick-active button::before {
	background: #282828;
}
@media (any-hover: hover) and (any-pointer: fine) {
	.slick-slider .slick-arrow:hover {
		background: var(--white);
	}
	.slick-slider .slick-arrow:hover::before {
		color: var(--black);
	}
	.slick-slider .slick-dots li button:hover,
	.slick-slider .slick-dots li button:focus {
		outline: none;
	}
}
@media screen and (max-width: 767px) {
	.slick-slider .slick-arrow:not(.slide-arrow) {
		width: 3.5em;
	}
}
/* footer
-------------------------------------------------------------------*/
#pageTop {
	position: fixed;
	z-index: 900;
	bottom: 3em;
	right: 5em;
}
#pageTop a {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-direction: column-reverse;
	gap: 0.5em;
	min-width: 70px;
	min-height: 150px;
	font-size: 1.25rem;
	color: var(--black);
	text-transform: uppercase;
	text-decoration: none;
}
#pageTop a::before,
#pageTop a::after {
	display: inline-block;
	content: "";
	width: 2px;
	height: 5.85em;
	background: #e6e6e6;
}
#pageTop a::before {
	position: absolute;
	inset: 0 0 auto;
	margin-inline: auto;
	background: var(--point_color);
	animation: pagetop 2s infinite;
}
#pageTop.is-active a::before {
	animation-name: page-top;
}
#pageTop a span {
	font-weight: bold;
	letter-spacing: 0.1em;
	writing-mode: vertical-rl;
	padding-left: 0.25em;
}
footer {
	position: relative;
	z-index: 100;
	padding-top: 4em;
	overflow: clip;
}
footer .footer-box {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	gap: 5.625em;
	margin-bottom: 4em;
}
footer .footer-box::after {
	order: 2;
	content: "";
	display: block;
	width: 1px;
	border-left: 2px dotted #c5c5c5;
}
footer .footer-holdings_box {
	order: 1;
}
footer .footer-holdings_box .footer-logo {
	margin-bottom: 2.5em;
}
footer .footer-nav_box li.mb{
	margin-bottom: 4.75em;
}
footer .footer-holdings_box .footer-holdings_list a,
footer .footer-nav_box li a,
footer .footer-other_box li a {
	position: relative;
	z-index: 10;
	display: inline-block;
	text-decoration: none;
}
footer .footer-holdings_box .footer-holdings_list a::after,
footer .footer-nav_box li a::after,
footer .footer-other_box li a::after {
	position: absolute;
	z-index: 10;
	display: inline-block;
	content: "";
	width: 100%;
	height: 1px;
	background: var(--point_color);
	bottom: 0;
	left: 0;
	scale: 0 1;
	transform-origin: right;
	transition: scale .4s;
}
footer .footer-other_box li a::after {
	background: #888;
	scale: 1 1;
	transform-origin: left;
}
footer .footer-holdings_box .footer-holdings_list dt a {
	font-size: 1rem;
	font-weight: bold;
	margin-bottom: 1em;
}
footer .footer-holdings_box .footer-holdings_list dd li+li {
	margin-top: 0.75em;
}
footer .footer-holdings_box .footer-holdings_list dd a {
	font-size: 0.875rem;
	font-weight: 500;
}
footer .footer-nav_box {
	order: 3;
	flex: 1;
}
footer .footer-nav_box .footer-nav_parent {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: space-between;
	flex-direction: column;
	flex-wrap: wrap;
	gap: 2em 1.5em;
	height: 360px;
}
footer .footer-nav_box .footer-nav_parent>li>*:is(a, p) {
	font-size: 1rem;
	font-weight: 500;
}
footer .footer-nav_box .footer-nav_child li {
	position: relative;
	z-index: 10;
	padding-left: 0.75em;
	margin-top: 0.5em;
}
footer .footer-nav_box .footer-nav_child li::before {
	position: absolute;
	z-index: 10;
	display: inline-block;
	content: "";
	width: 0.35em;
	height: 1px;
	background: #888;
	top: 0.85em;
	left: 0;
}
footer .footer-nav_box .footer-nav_child a {
	font-size: 0.875rem;
	color: #888;
}
footer .footer-nav_box .footer-nav_child a[target="_blank"]:not([href$=".pdf"])::before {
	position: absolute;
	z-index: 10;
	display: inline-block;
	content: "";
	width: 1em;
	aspect-ratio: 1/1;
	background: #888;
	mask: url(../img/common/icon-target.svg) no-repeat;
	mask-size: cover;
	top: 50%;
	right: -1.35em;
	translate: 0 -50%;
}
footer .footer-other_box {
	position: relative;
	z-index: 10;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	gap: 1em;
	padding-block: 1em;
}
footer .footer-other_box::after {
	position: absolute;
	z-index: -10;
	display: inline-block;
	content: "";
	width: 100vw;
	height: 100%;
	background: #f4f4f4;
	left: 50%;
	translate: -50%;
	bottom: 0;
}
footer .footer-other_box ul {
	position: relative;
	z-index: 10;
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	gap: 1.5em;
}
footer .footer-other_box ul:not(:has(li:first-child:last-child))::after {
	position: relative;
	z-index: 10;
	content: "";
	width: 1px;
	height: 100%;
	background: var(--black);
	order: 1;
}
footer .footer-other_box li:last-child {
	order: 3;
}
footer .footer-other_box li a,
footer .footer-other_box small {
	font-size: 0.875rem;
	color: #888;
}
footer .footer-other_box li a::before {
	transform: scale(1, 1);
	transform-origin: left;
}
@media (any-hover: hover) and (any-pointer: fine) {
	footer .footer-holdings_box .footer-holdings_list a:hover::after,
	footer .footer-nav_box li a:hover::after {
		scale: 1 1;
		transform-origin: left;
	}
	footer .footer-other_box li a:hover::after {
		scale: 0 1;
		transform-origin: right;
	}
}
@media screen and (max-width: 1000px) {
	footer .footer-box {
		gap: 2em;
	}
}
@media screen and (max-width: 767px) {
	#pageTop {
		bottom: 5.75em;
		right: 1em;
	}
	#pageTop a {
		gap: 0.5em;
		min-width: 20px;
		min-height: 90px;
		font-size: 0.71428571428rem;
	}
	footer {
		padding-top: 2.75em;
	}
	footer .footer-box {
		flex-direction: column;
		gap: 0;
		margin-bottom: 3em;
	}
	footer .footer-box::after,
	footer .footer-nav_box {
		display: none;
	}
	footer .footer-holdings_box .footer-logo {
		width: 104px;
		margin-bottom: 1.5em;
	}
	footer .footer-holdings_box .footer-holdings_list dd li+li {
		margin-top: 0.5em;
	}
	footer .footer-holdings_box .footer-holdings_list dd a {
		font-size: 1rem;
	}
	footer .footer-other_box {
		align-items: center;
		flex-direction: column;
	}
}
#gt_float_wrapper {
	z-index: 1000 !important;
	top: 27px !important;
}
#gt_float_wrapper img {
	display: none !important;
}
@media screen and (max-width: 1300px),
only screen and (max-device-width: 1366px) and (orientation: landscape) {
	#gt_float_wrapper {
		right: 120px !important;
	}
}
@media screen and (max-width: 767px) {
	#gt_float_wrapper {
		z-index: 1000 !important;
		top: 10px !important;
		right: 70px !important;
	}
	.gt_float_switcher {
		display: inline-flex !important;
		flex-direction: column-reverse !important;
		font-size: 1rem !important;
	}
	.gt_float_switcher .gt-selected .gt-current-lang {
		padding: 0.5em 0.75em !important;
	}
	.gt_float_switcher .gt-selected .gt-current-lang span.gt_float_switcher-arrow {
		rotate: 180deg !important;
	}
}
.grecaptcha-badge{
	z-index: 100;
}