@charset "utf-8";
	/* ==========================================================================//
	// 共通設定（変数の管理）
	// ========================================================================== */
	:root {
	/* フォントファミリー変数
	* - フォントファミリーの管理に利用する
	---------------------------------------------------------- */
	/* 基本は游ゴシック */
	--font-family-default: 'A+EqpB-游ゴシック体 Pr6N M', 游ゴシック Medium, Yu Gothic Medium, 游ゴシック体, Yu Gothic, YuGothic,
	Hiragino Kaku Gothic ProN, ヒラギノ角ゴ Pro W3, Meiryo, メイリオ, sans-serif;
	/* 特定の英字のみ Marcellus */
	--font-family-en: "Marcellus", serif;

	/* フォント変数
	* - フォントのサイズ・太さの管理に利用する
	---------------------------------------------------------- */
	/* font-size（16pxを基本として rem で計算する） */
	--font-size-10: 0.625rem; /* 10px */
	--font-size-11: 0.6875rem; /* 11px */
	--font-size-12: 0.75rem; /* 12px */
	--font-size-12-8: 0.8rem; /* 12.8px */
	--font-size-13: 0.8125rem; /* 13px */
	--font-size-14: 0.875rem; /* 14px */
	--font-size-15: 0.9375rem; /* 15px */
	--font-size-16: 1rem; /* 16px（基準値） */
	--font-size-17: 1.062rem; /* 17px */
	--font-size-18: 1.125rem; /* 18px */
	--font-size-20: 1.25rem; /* 20px */
	--font-size-22: 1.375rem; /* 22px */
	--font-size-23: 1.44rem; /* 23px */
	--font-size-24: 1.5rem; /* 24px */
	--font-size-28: 1.75rem; /* 28px */
	--font-size-32: 2rem; /* 32px */
	--font-size-36: 2.25rem; /* 36px */
	--font-size-60: 3.75rem; /* 60px */
	--font-size-40: 2.5rem; /* 40px */
	--font-size-44: 2.75rem; /* 44px */
	--font-size-48: 3rem; /* 48px */
	--font-size-72: 4.5rem; /* 72px */
	--font-size-84: 5.25rem; /* 84px */
	--font-size-96: 6rem; /* 96px */
	--font-size-108: 6.75rem; /* 108px */
	--font-size-164: 10.25rem; /* 164px */

	/* font-weight */
	--font-weight-regular: 400;
	--font-weight-medium: 500;
	--font-weight-bold: 700;

	/* 色変数
	* - 色の管理に利用する
	---------------------------------------------------------- */
	/* 16進数 */
	--color-default: #4d4d4d;
	--color-white: #ffffff;
	--color-gray: #455459;
	--color-gray-light: #f2f4f5;
	--color-gray-cool-light: #767676;
	--color-gray-medium-light: #8d8d8d;
	--color-gray-default-half: #9fa0a0;
	--color-dark-teal: #175163;
	--color-blue: #005bac;
	--color-blue-gray: #628e99;
	--color-dark-teal-blue: #144b63;
	--color-pale-blue: #82a2ac;
	--color-pale-blue-gray: #9bb7c2;
	--color-pale-aqua: #8d8d8d;
	--color-soft-aqua: #d8e8eb;
	--color-ice-blue: #f0f5f5;
	--color-light-blue-gray: #e1e8eb;
	--color-cerulean-blue: #5d90b2;
	--color-cadet-blue: #719cae;
	--color-green-teal: #5c9e9a;
	--color-purple: #7485b5;
	--color-rouge: #b84951;

	/* rgb（※rgbは表現上仕方ない部分のみ利用する） */
	--color-default-rgb: 88, 88, 88;
	--color-white-rgb: 255, 255, 255;
	--color-gray-rgb: 69, 84, 89;
	--color-dark-teal-rgb: 23, 81, 99;
	--color-blue-rgb: 0, 91, 172;
	--color-cadet-blue-rgb: 113, 156, 174;

	/* Opacity
	---------------------------------------------------------- */
	/* opacity（デフォルト透過値：0.75） */
	--opacity-default: 0.75;
	}

	/* ==========================================================================//
	// Reset CSS
	// ========================================================================== */
	/* Reset
	from A (more) Modern CSS Reset
	https://piccalil.li/blog/a-more-modern-css-reset/
	---------------------------------------------------------- */
	*,
	*::before,
	*::after {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	}
	/* Prevent font size inflation */
	html {
	-moz-text-size-adjust: none;
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
	}
	/* Remove default margin in favour of better control in authored CSS */
	body,
	h1,
	h2,
	h3,
	h4,
	p,
	figure,
	blockquote,
	dl,
	dd {
	margin-bottom: 0;
	}
	/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
	ul[role="list"],
	ol[role="list"] {
	list-style: none;
	}
	/* Set core body defaults */
	body {
	min-height: 100vh;
	line-height: 1.5;
	}
	/* Set shorter line heights on headings and interactive elements */
	h1,
	h2,
	h3,
	h4,
	button,
	input,
	label {
	line-height: 1.1;
	}
	/* Balance text wrapping on headings */
	h1,
	h2,
	h3,
	h4 {
	text-wrap: balance;
	}
	/* A elements that don't have a class get default styles */
	a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
	color: currentColor;
	}
	/* Make images easier to work with */
	img,
	picture {
	max-width: 100%;
	display: block;
	height: auto;
	}
	/* Inherit fonts for inputs and buttons */
	input,
	button,
	textarea,
	select {
	font-family: 游ゴシック Medium, Yu Gothic Medium, 游ゴシック体, Yu Gothic, YuGothic,
	Hiragino Kaku Gothic ProN, ヒラギノ角ゴ Pro W3, Meiryo, メイリオ, sans-serif;
	font-family: var(--font-family-default);
	}
	/* Make sure textareas without a rows attribute are not tiny */
	textarea:not([rows]) {
	min-height: 10em;
	}
	/* Anything that has been anchored to should have extra scroll margin */
	:target {
	scroll-margin-block: 20ex;
	}

	/* Remove the default triangle icon */
	summary {
	display: block;
	}
	/* Remove the default triangle icon displayed in Safari */
	summary::-webkit-details-marker {
	display: none;
	}

	button{
			background-color: transparent;
			border: none;
			cursor: pointer;
			outline: none;
			padding: 0;
			appearance: none;
	}

	button:focus-visible,
	a:focus-visible,
	input:focus-visible,
	select:focus-visible,
	textarea:focus-visible,
	summary:focus-visible {
	outline: 3px solid #005bac;
	}


	/* ==========================================================================//
	// layout
	// ========================================================================== */
	/* Common
	---------------------------------------------------------- */
	html {
	width: 100%;
	min-width: 320px;
	scroll-behavior: smooth;
	color: #4d4d4d;
	color: var(--color-default);
	font-size: 1rem;
	font-size: var(--font-size-16);
	font-family: 游ゴシック Medium, Yu Gothic Medium, 游ゴシック体, Yu Gothic, YuGothic,
	Hiragino Kaku Gothic ProN, ヒラギノ角ゴ Pro W3, Meiryo, メイリオ, sans-serif;
	font-family: var(--font-family-default);
	}
	body {
	position: relative;
	}

	/* 波形アニメーション用
	---------------------------------------------------------- */
	#waveBg{
	position: fixed;
	top: 0;
	right: 0;

	/* 回転前の箱：横 = 画面の高さ、縦 = 波帯の太さ */
	width: 100vh;
	height: 200px;

	transform: rotate(-90deg);
	transform-origin: top right;

	display: block;
	pointer-events: none;
	}
	@media (min-width: 769px) {
	#waveBg {
		right: 200px
	}
	}

	/* header
	---------------------------------------------------------- */
	.l-header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9990;
	}
	@media (min-width: 769px) {
	.l-header {
		top: 29px
	}
	}

	/* main
	---------------------------------------------------------- */
	.l-main {
	overflow: hidden;
	position: relative;
	z-index: 2;
	padding: 60px 0 0;
	font-size: 0.8125rem;
	font-size: var(--font-size-13);
	}
	@media (min-width: 1024px) {
	.l-main {
		padding: 100px 0 0;
		font-size: 0.875rem;
		font-size: var(--font-size-14);
	}

	/* .l-main の中に .l-hasNaviLayout__sub があるページだけ */
		.l-main:has(.l-hasNaviLayout__sub) {
		overflow: visible;
		}
	}

	/* footer
	---------------------------------------------------------- */
	.l-footer {
	overflow: hidden;
	position: relative;
	}

	/* contents（共通サイドナビありレイアウトの場合）
	---------------------------------------------------------- */
	.l-hasNaviLayout {
	display: flex;
	max-width: 1440px;
	margin: 0 auto;
	flex-direction: column;
	padding: 0 0 80px;
	}
	@media (min-width: 1024px) {
	.l-hasNaviLayout {
		flex-direction: row
	}
	}
	.l-hasNaviLayout__main {
	flex: 1;
	padding: 0 16px 0;
	}
	@media(max-width: 1023px) {
	.l-hasNaviLayout__main {
		order: 1
	}
	}
	@media (min-width: 1024px) {
	.l-hasNaviLayout__main {
		padding: 0 60px 0 0
	}
	}
	@media (min-width: 1240px) {
	.l-hasNaviLayout__main {
		padding-right: 120px
	}
	}
	.l-hasNaviLayout__sub {
	width: 100%;
	margin: 80px auto 0;
	}
	@media(max-width: 1023px) {
	.l-hasNaviLayout__sub {
		order: 2
	}
	}
	@media (min-width: 1024px) {
	.l-hasNaviLayout__sub {
		width: 300px;
		min-width: 300px;
		margin-top: 0;
		margin-right: 60px;
	}
	}

	@media (min-width: 1024px) {

	.p-hasNaviLayout--companyProfile .l-hasNaviLayout__main {
		padding-top: 80px
	}
	}

	/* ==========================================================================//
	// Components（header）
	// ========================================================================== */
	/* サイトヘッダー
	---------------------------------------------------------- */
	.c-header {
	width: 100%;
	height: 60px;
	/*background-color: transparent;*/
	background-color: #ffffff;
	background-color: var(--color-white);
	}
	@media (min-width: 1024px) {
	.c-header {
		height: 100px;
		background-color: #fff
	}
	}
	.c-header__inner {
	display: flex;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	padding: 16px 16px 8px 16px;
	}
	@media (min-width: 1024px) {
	.c-header__inner {
		max-width: 1440px;
		margin: 0 auto;
		padding-top: 28px;
		padding-bottom: 34px
	}
	}
	@media (min-width: 1024px) and (max-width: 1239.98px) {
	.c-header__inner {
		padding-right: 3.33vw;
		padding-left: 4.375vw
	}
	}
	@media (min-width: 1240px) {
	.c-header__inner {
		padding-right: 48px;
		padding-left: 63px
	}
	}
	.c-header__logo {
	width: 225px;
	padding: 11px 0 0;
	}
	@media (min-width: 1024px) {
	.c-header__logo {
		width: 100%;
		min-width: 225px;
		max-width: 493px;
		padding: 0;
		margin-top: 14px;
		flex: 1
	}
	}
	.c-header__logo-link {
	display: block;
	transition: opacity 0.3s ease;
	}
	.c-header__logo-link:hover {
	opacity: 0.75;
	}

	.c-header__assembly {
		display: flex;
		height: 70px;
	}

	@media (max-width: 1023px) {
		.c-header__assembly {
			height: 35px;
		}
	}

	/* Navigation */
	.c-header-navi {
	display: none;
	}
	@media (min-width: 1024px) {
	.c-header-navi {
		display: block
	}
	}
	.c-header-navi__main {
	display: flex;
	align-items: center;
	}
	.c-header-navi__sub {
	margin-bottom: 4px;
	}
	.c-header-global-navi {
	position: relative;
	display: flex;
	list-style-type: none;
	padding-right: 20px;
	margin-right: 32px;

	}
	.c-header-global-navi::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 1px;
	height: 16px;
	margin-top: -8px;
	background-color: #4d4d4d;
	background-color: var(--color-default);
	}
	.c-header-global-navi__item {
	margin-right: 4px;
	margin-left: 4px;
	}
	.c-header-global-navi__item:first-child {
	margin-left: 0;
	}
	.c-header-global-navi__item:last-child {
	margin-right: 0;
	}
	.c-header-global-navi__link {
	display: block;
	padding: 9px 12px;
	border-radius: 4px;
	color: #4d4d4d;
	color: var(--color-default);
	font-size: 0.875rem;
	font-size: var(--font-size-14);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1;
	-webkit-text-decoration: none;
	text-decoration: none;
	}
	.c-header-global-navi__link:hover {
	background-color: #005bac;
	background-color: var(--color-blue);
	color: #ffffff;
	color: var(--color-white);
	transition: all 0.3s ease;
	}
	.c-header-global-navi #js-megaMenuServiceTrigger.c-header-global-navi__link {
	position: relative;
	padding: 9px 20px 9px 12px;
	}
	.c-header-global-navi #js-megaMenuServiceTrigger.c-header-global-navi__link::before,
	.c-header-global-navi #js-megaMenuServiceTrigger.c-header-global-navi__link::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 6px;
	width: 7px;
	height: 1px;
	background-color: #4d4d4d;
	background-color: var(--color-default);
	}
	.c-header-global-navi #js-megaMenuServiceTrigger.c-header-global-navi__link::after {
	transform: rotate(90deg);
	transform-origin: center center;
	}
	.c-header-global-navi #js-megaMenuServiceTrigger.c-header-global-navi__link:hover::before {
	background-color: #ffffff;
	background-color: var(--color-white);
	}
	.c-header-global-navi #js-megaMenuServiceTrigger.c-header-global-navi__link:hover:after {
	display: none;
	}
	.c-header-sub-navi {
	display: flex;
	justify-content: flex-end;
	list-style-type: none;
	}
	.c-header-sub-navi__item {
	position: relative;
	margin-right: 20px;
	padding-right: 20px;
	}
	.c-header-sub-navi__item::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 1px;
	height: 12px;
	margin-top: -6px;
	background-color: #4d4d4d;
	}
	.c-header-sub-navi__item:last-child {
	margin-right: 0;
	padding-right: 0;
	}
	.c-header-sub-navi__item:last-child::after {
	display: none;
	}
	.c-header-sub-navi__link {
	position: relative;
	display: flex;
	align-items: center;
	padding: 2px 0;
	border-radius: 4px;
	color: #4d4d4d;
	color: var(--color-default);
	font-size: 0.75rem;
	font-size: var(--font-size-12);
	line-height: 1;
	-webkit-text-decoration: none;
	text-decoration: none;
	cursor: pointer;
	transition: all 0.3s ease;
	}
	.c-header-sub-navi__link::before {
	content: "";
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	top: -8px;
	left: -8px;
	width: calc(100% + 16px);
	height: calc(100% + 16px);
	background-color: transparent;
	border-radius: 4px;
	transition: background-color 0.3s ease;
	}
	.c-header-sub-navi__link:hover {
	color: #ffffff;
	color: var(--color-white);
	}
	.c-header-sub-navi__link:hover::before {
	background-color: #005bac;
	background-color: var(--color-blue);
	}
	.c-header-sub-navi__link:hover > span {
	text-shadow: 0 0 1px #ffffff;
	text-shadow: 0 0 1px var(--color-white);
	}
	.c-header-sub-navi__link > span {
	position: relative;
	z-index: 2;
	}
	.c-header-sub-navi__link--plus > span {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	padding-right: 14px;
	}
	.c-header-sub-navi__link--plus > span::before,
	.c-header-sub-navi__link--plus > span::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 7px;
	height: 1px;
	background-color: #4d4d4d;
	background-color: var(--color-default);
	}
	.c-header-sub-navi__link--plus > span::after {
	transform: rotate(90deg);
	transform-origin: center center;
	}
	.c-header-sub-navi__link--plus:hover > span:before {
	background-color: #ffffff;
	background-color: var(--color-white);
	}
	.c-header-sub-navi__link--plus:hover > span::after {
	display: none;
	}
	/* Language */
	.c-header-language {
	display: flex;
	list-style-type: none;
	}
	.c-header-language__item {
	position: relative;
	}
	.c-header-language__item:nth-child(1) {
	padding-right: 12px;
	margin-right: 12px;
	}
	.c-header-language__item:nth-child(1)::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -4px;
	width: 1px;
	height: 16px;
	margin-top: -6px;
	background-color: #767676;
	transform: rotate(25deg);
	}
	.c-header-language__item.is-active .c-header-language__link {
	color: #ffffff;
	color: var(--color-white);
	background-color: #4d4d4d;
	background-color: var(--color-default);
	}
	.c-header-language__link {
	display: inline-block;
	vertical-align: middle;
	padding: 4px 5px 4px 9px;
	border-radius: 4px;
	color: #4d4d4d;
	color: var(--color-default);
	font-size: 12px;
	font-family: "Marcellus", serif;
	font-family: var(--font-family-en);
	line-height: 1;
	letter-spacing: 0.25em;
	-webkit-text-decoration: none;
	text-decoration: none;
	transition: all 0.3s ease;
	}
	.c-header-language__link:hover {
	color: #ffffff;
	color: var(--color-white);
	background-color: #4d4d4d;
	background-color: var(--color-default);
	}

	.wovn-languages {
		align-self: center;
	}

	@media (max-width: 1023px) {
		.wovn-languages {
			margin-right: 20px;
		}
	}

	@media (max-width: 767px) {
			.wovn-languages {
			margin-left: 10px;
			margin-right: 10px;
		}
	}

	html[lang="ja"] .c-header-language.wovn-languages > .c-header-language__item > a[data-value="ja"] {
	color: #ffffff;
	color: var(--color-white);
	background-color: #4d4d4d;
	background-color: var(--color-default);
	}
	html[lang="en"] .c-header-language.wovn-languages > .c-header-language__item > a[data-value="en"] {
	color: #ffffff;
	color: var(--color-white);
	background-color: #4d4d4d;
	background-color: var(--color-default);
	}

	/* Search */
	.c-header-search {
	margin: 0 12px 0 0;
	}
	@media (min-width: 1024px) {
	.c-header-search {
		margin: 0
	}
	}

	@media (max-width: 1023px) {
		.c-header-search{
			display: none;
		}
	}

	.c-header-search__button {
	overflow: hidden;
	position: relative;
	cursor: pointer;
	width: 36px;
	height: 36px;
	border: none;
	background-color: transparent;
	}
	@media (min-width: 1024px) {
	.c-header-search__button {
		width: 52px;
		height: 52px;
		background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
		background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
		margin-left: 28px;
		border-radius: 4px;
		transition: opacity 0.3s ease
	}
	.c-header-search__button:hover {
		opacity: 0.75;
	}
	}
	.c-header-search__button::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 36px;
	height: 36px;
	background: url("/common/image/btn/btn_header_search_01_sp.png") 0 0 no-repeat;
	background-size: contain;
	}
	@media (min-width: 1024px) {
	.c-header-search__button::before {
		width: 16px;
		height: 16px;
		right: 0;
		bottom: 0;
		margin: auto;
		background: url("/common/image/ico/ico_search_white_01.svg") 0 0 no-repeat
	}
	}
	.c-header-search__button.is-active::before {
	background: url("/common/image/btn/btn_header_close_sp.png") 0 0 no-repeat;
	background-size: contain;
	}
	.c-header-searchBox {
	display: none;
	opacity: 0;
	position: fixed;
	z-index: 100;
	top: 60px;
	left: 0;
	width: 100%;
	height: calc(100vh - 60px);
	background-color: #ffffff;
	}
	@media (min-width: 769px) {
	.c-header-searchBox {
		top: 89px;
		height: calc(100vh - 89px)
	}
	}
	@media (min-width: 1024px) {
	.c-header-searchBox {
		max-width: 1340px;
		height: 132px;
		top: 120px;
		left: 0;
		right: 0;
		margin: 0 auto;
		border-radius: 8px;
		box-shadow: 16px 16px 32px 0 rgba(113, 156, 174, 0.32)
	}
	}
	.c-header-searchBox__inner {
	padding: 16px 16px;
	}
	@media (min-width: 1024px) {
	.c-header-searchBox__inner {
		padding: 36px 36px
	}
	}
	.c-header-searchBox.is-active {
	display: block;
	opacity: 1;
	animation: menuFadeIn 0.3s ease-in 0s forwards;
	}
	.c-header-searchBoxField {
	overflow: hidden;
	position: relative;
	display: block;
	border: 1px solid #8d8d8d;
	border: 1px solid var(--color-pale-aqua);
	background-color: #f0f5f5;
	background-color: var(--color-ice-blue);
	height: 44px;
	border-radius: 8px;
	}
	@media (min-width: 1024px) {
	.c-header-searchBoxField {
		height: 60px
	}
	}
	.c-header-searchBoxField__input {
	position: absolute;
	width: 124%;
	height: 124%;
	padding: 10px 64px 10px 14px;
	font-size: 16px;
	line-height: 1.5;
	border: none;
	border-radius: 8px;
	transform: scale(0.8125);
	transform-origin: left top;
	background-color: transparent;
	}
	@media (min-width: 1024px) {
	.c-header-searchBoxField__input {
		width: 100%;
		height: 60px;
		transform: none;
		padding: 10px 84px 10px 24px;
		font-size: 16px
	}
	}
	.c-header-searchBoxField__button {
	position: absolute;
	z-index: 2;
	top: 0;
	right: 0;
	width: 44px;
	height: 44px;
	background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
	background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	border-radius: 0 8px 8px 0;
	}
	@media (min-width: 1024px) {
	.c-header-searchBoxField__button {
		width: 60px;
		height: 60px
	}
	}
	.c-header-searchBoxField__button::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 16px;
	height: 16px;
	background: url(/common/image/ico/ico_search_white.svg) 0 0 no-repeat;
	background-size: contain;
	}
	@media (min-width: 1024px) {
	.c-header-searchBoxField__button::before {
		width: 24px;
		height: 24px
	}
	}

	/* Menu */
	@media (min-width: 1024px) {
	.c-header-menu {
		display: none
	}
	}
	.c-header-menu__button {
	overflow: hidden;
	position: relative;
	cursor: pointer;
	width: 36px;
	height: 36px;
	border: none;
	background-color: transparent;
	}
	.c-header-menu__button::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 36px;
	height: 36px;
	background: url("/common/image/btn/btn_header_menu_01_sp.png") 0 0 no-repeat;
	background-size: contain;
	}
	.c-header-menu__button.is-active::before {
	background: url("/common/image/btn/btn_header_close_sp.png") 0 0 no-repeat;
	background-size: contain;
	}
	.c-header-menuBox {
	display: none;
	opacity: 0;
	position: fixed;
	z-index: 100;
	top: 60px;
	left: 0;
	width: 100%;
	height: calc(100vh - 60px);
	background-color: #ffffff;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior-y: contain;
	}
	@media (min-width: 1024px) {
	.c-header-menuBox {
		display: none !important
	}
	}
	.c-header-menuBox__inner {
	min-height: 100vh;
	min-height: 100dvh;
	}
	.c-header-menuBox.is-active {
	display: block;
	opacity: 1;
	animation: menuFadeIn 0.3s ease-in 0s forwards;
	}

	@media (min-width: 768px) and (max-width: 1023px) {
		.c-header-menuBox.is-active {
			margin-top: 29px;
		}
	}

	.c-header-menuNavi {
	list-style-type: none;
	}
	.c-header-menuNavi__item {
	border-bottom: 1px solid #d8e8eb;
	border-bottom: 1px solid var(--color-soft-aqua);
	}
	.c-header-menuNavi__link,
	.c-header-menuNavi__accordion {
	position: relative;
	display: block;
	font-size: 1.25rem;
	font-size: var(--font-size-20);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	-webkit-text-decoration: none;
	text-decoration: none;
	}
	.c-header-menuNavi__link {
	padding: 15px 16px;
	color: #005bac;
	color: var(--color-blue);
	}
	.c-header-menuNavi__accordion {
	padding: 15px 40px 15px 16px;
	color: #455459;
	color: var(--color-gray);
	}
	.c-header-menuNavi__accordion::before,
	.c-header-menuNavi__accordion::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 19px;
	width: 10px;
	height: 2px;
	margin-top: -1px;
	background-color: #005bac;
	background-color: var(--color-blue);
	}
	.c-header-menuNavi__accordion::after {
	transform: rotate(90deg);
	transform-origin: center center;
	}
	.c-header-menuNavi__accordion.is-active::after {
	opacity: 0;
	}
	.c-header-menuChild {
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.4s ease-out;
	}
	.c-header-menuChild__inner {
	padding: 16px 16px;
	}
	.c-header-menuNavi__accordion.is-active + .c-header-menuChild {
	max-height: inherit;
	}

	.c-header-menuChild.c-header-menuChild--service .c-header-menuChild__inner {
	padding: 0 0 16px 16px;
	}
	.c-header-menuLinks {
	padding-bottom: 16px;
	list-style-type: none;
	}
	.c-header-menuLinks__item {
	margin-bottom: 16px;
	}
	.c-header-menuLinks__item:last-child {
	margin-bottom: 0;
	}
	.c-header-menuLinks__link {
	position: relative;
	display: block;
	padding-right: 24px;
	color: #005bac;
	color: var(--color-blue);
	font-size: 0.875rem;
	font-size: var(--font-size-14);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	-webkit-text-decoration: none;
	text-decoration: none;
	}
	.c-header-menuLinks__link::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 16px;
	width: 16px;
	height: 16px;
	transform: translateY(-50%);
	margin-top: -1px;
	background: url("/common/image/ico/ico_circle_arrow_blue.svg") 0 0 no-repeat;
	background-size: contain;
	}

	.c-header-menuService {
	list-style-type: none;
	margin-bottom: 16px;
	}

	.c-header-menuService__item {
	border-bottom: 1px solid #d8e8eb;
	border-bottom: 1px solid var(--color-soft-aqua);
	}

	.c-header-menuService__accordion {
	position: relative;
	padding: 15px 40px 15px 16px;
	color: #455459;
	color: var(--color-gray);
	font-size: 1.125rem;
	font-size: var(--font-size-18);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	}

	.c-header-menuService__accordion::before,
	.c-header-menuService__accordion::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 19px;
	width: 10px;
	height: 2px;
	margin-top: -1px;
	background-color: #005bac;
	background-color: var(--color-blue);
	}

	.c-header-menuService__accordion::after {
	transform: rotate(90deg);
	transform-origin: center center;
	}

	.c-header-menuService__accordion > span {
	position: relative;
	}

	.c-header-menuService__accordion > span::before {
	content: "";
	position: absolute;
	top: 50%;
	left: -16px;
	width: 2px;
	height: 20px;
	transform: translateY(-50%);
	background-color: #005bac;
	background-color: var(--color-blue);
	}

	.c-header-menuService__accordion.is-active::after {
	opacity: 0;
	}
	.c-header-menuServiceChild {
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.4s ease-out;
	}
	.c-header-menuService__accordion.is-active + .c-header-menuServiceChild {
	max-height: inherit;
	}
	.c-header-menuServiceDetail__top {
	padding-left: 16px;
	border-top: 1px solid #d8e8eb;
	border-top: 1px solid var(--color-soft-aqua);
	border-bottom: 1px solid #d8e8eb;
	border-bottom: 1px solid var(--color-soft-aqua);
	}
	.c-header-menuServiceDetail__bottom {
	padding-left: 16px;
	}
	.c-header-menuServiceMulpay {
	position: relative;
	display: block;
	padding: 16px 40px 16px 0;
	border-bottom: 1px solid #d8e8eb;
	border-bottom: 1px solid var(--color-soft-aqua);
	-webkit-text-decoration: none;
	text-decoration: none;
	}
	.c-header-menuServiceMulpay::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 16px;
	width: 16px;
	height: 16px;
	transform: translateY(-50%);
	margin-top: -1px;
	background: url("/common/image/ico/ico_circle_arrow_blue.svg") 0 0 no-repeat;
	background-size: contain;
	}
	.c-header-menuServiceMulpay__subTitle {
	display: inline-block;
	vertical-align: middle;
	padding: 3px 10px;
	margin-bottom: 3px;
	background-color: #005bac;
	background-color: var(--color-blue);
	color: #ffffff;
	color: var(--color-white);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	font-size: 10px;
	line-height: 1.5;
	border-radius: 15px;
	}
	.c-header-menuServiceMulpay__title {
	display: block;
	color: #005bac;
	color: var(--color-blue);
	font-size: 1rem;
	font-size: var(--font-size-16);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	}
	.c-header-menuServicePayment {
	list-style-type: none;
	}
	.c-header-menuServicePayment__item {
	border-bottom: 1px solid #d8e8eb;
	border-bottom: 1px solid var(--color-soft-aqua);
	}
	.c-header-menuServicePayment__item:last-child {
	border-bottom: none;
	}
	.c-header-menuServicePayment__accordion {
	position: relative;
	padding: 16px 40px 16px 0;
	color: #455459;
	color: var(--color-gray);
	font-size: 0.875rem;
	font-size: var(--font-size-14);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	}
	.c-header-menuServicePayment__accordion::before,
	.c-header-menuServicePayment__accordion::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 19px;
	width: 10px;
	height: 2px;
	margin-top: -1px;
	background-color: #005bac;
	background-color: var(--color-blue);
	}
	.c-header-menuServicePayment__accordion::after {
	transform: rotate(90deg);
	transform-origin: center center;
	}
	.c-header-menuServicePayment__accordion.is-active::after {
	opacity: 0;
	}
	.c-header-menuServicePayment__accordion .note {
	display: block;
	color: #9fa0a0;
	color: var(--color-gray-default-half);
	font-size: 10px;
	}
	.c-header-menuServicePaymentChild {
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.4s ease-out;
	}
	.c-header-menuServicePaymentChild__inner {
	padding: 0 16px 24px 0;
	}
	.c-header-menuServicePayment__accordion.is-active + .c-header-menuServicePaymentChild {
	max-height: inherit;
	}

	.c-header-menuServiceSupport {
	list-style-type: none;
	padding-left: 16px;
	}

	.c-header-menuServiceSupport__item {
	border-bottom: 1px solid #d8e8eb;
	border-bottom: 1px solid var(--color-soft-aqua);
	}

	.c-header-menuServiceSupport__item:last-child {
	border-bottom: none;
	}

	.c-header-menuServiceSupport__accordion {
	position: relative;
	padding: 16px 40px 16px 0;
	color: #455459;
	color: var(--color-gray);
	font-size: 1rem;
	font-size: var(--font-size-16);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	}

	.c-header-menuServiceSupport__accordion::before,
	.c-header-menuServiceSupport__accordion::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 19px;
	width: 10px;
	height: 2px;
	margin-top: -1px;
	background-color: #005bac;
	background-color: var(--color-blue);
	}

	.c-header-menuServiceSupport__accordion::after {
	transform: rotate(90deg);
	transform-origin: center center;
	}

	.c-header-menuServiceSupport__accordion.is-active::after {
	opacity: 0;
	}
	.c-header-menuServiceSupportChild {
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.4s ease-out;
	}
	.c-header-menuServiceSupportChild__inner {
	padding: 0 16px 24px 0;
	}
	.c-header-menuServiceSupport__accordion.is-active + .c-header-menuServiceSupportChild {
	max-height: inherit;
	}
	.c-header-menuSubLinks {
	list-style-type: none;
	}
	.c-header-menuSubLinks__item {
	margin-bottom: 10px;
	}
	.c-header-menuSubLinks__item:last-child {
	margin-bottom: 0;
	}
	.c-header-menuSubLinks__noLink {
	position: relative;
	padding-left: 16px;
	color: #455459;
	color: var(--color-gray);
	font-size: 0.75rem;
	font-size: var(--font-size-12);
	-webkit-text-decoration: none;
	text-decoration: none;
	line-height: 1.5;
	}
	.c-header-menuSubLinks__noLink::before {
	content: "";
	position: absolute;
	top: 0.375em;
	left: 6px;
	width: 3px;
	height: 3px;
	background-color: #455459;
	background-color: var(--color-gray);
	border-radius: 50%;
	}
	.c-header-menuSubLinks__link {
	position: relative;
	padding-left: 16px;
	color: #005bac;
	color: var(--color-blue);
	font-size: 0.75rem;
	font-size: var(--font-size-12);
	-webkit-text-decoration: none;
	text-decoration: none;
	line-height: 1.5;
	}
	.c-header-menuSubLinks__link::before {
	content: "";
	position: absolute;
	top: 0.375em;
	left: 6px;
	width: 3px;
	height: 3px;
	background-color: #455459;
	background-color: var(--color-gray);
	border-radius: 50%;
	}
	.c-header-menuSubLinks__link[target='_blank']::after {
	position: relative;
	top: 0.35em;
	margin-left: 3px;
	content: url('/common/image/ico/ico_external.svg');
	width: 14px;
	height: 14px;
	opacity: 0.5;
	}
	.c-header-menuSubLinks--horizontal {
	display: flex;
	flex-wrap: wrap;
	-moz-column-gap: 16px;
	column-gap: 16px;
	margin-top: -10px;
	}
	.c-header-menuSubLinks--horizontal .c-header-menuSubLinks__item {
	margin: 10px 0 0;
	}
	.c-header-menuSubLinks--horizontal .c-header-menuSubLinks__item.c-header-menuSubLinks__item--1col {
	width: 100%;
	}
	.c-header-menuSubLinks--horizontal + .c-header-menuSubLinks--horizontal {
	margin-top: 14px;
	}

	.c-header-menuServiceGoToList {
	margin-top: 12px;
	padding-right: 3px;
	text-align: right;
	}

	.c-header-menuServiceGoToList > a {
	display: inline-block;
	vertical-align: middle;
	color: #005bac;
	color: var(--color-blue);
	font-size: 0.75rem;
	font-size: var(--font-size-12);
	line-height: 1.5;
	-webkit-text-decoration: none;
	text-decoration: none;
	}

	.c-header-menuServiceMore {
	display: block;
	padding: 16px 16px;
	margin-right: 16px;
	background-color: #f0f5f5;
	background-color: var(--color-ice-blue);
	color: #005bac;
	color: var(--color-blue);
	font-size: 0.875rem;
	font-size: var(--font-size-14);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	text-align: center;
	-webkit-text-decoration: none;
	text-decoration: none;
	}
	.c-header-menuLanguage {
	display: flex;
	justify-content: flex-end;
	list-style-type: none;
	margin-top: 30px;
	padding: 0 16px 50px 16px;
	}
	.c-header-menuLanguage__item {
	position: relative;
	}
	.c-header-menuLanguage__item:nth-child(1) {
	padding-right: 12px;
	margin-right: 12px;
	}
	.c-header-menuLanguage__item:nth-child(1)::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -4px;
	width: 1px;
	height: 16px;
	margin-top: -6px;
	background-color: #767676;
	transform: rotate(25deg);
	}
	.c-header-menuLanguage__item.is-active .c-header-menuLanguage__link {
	color: #ffffff;
	color: var(--color-white);
	background-color: #4d4d4d;
	background-color: var(--color-default);
	}
	.c-header-menuLanguage__link {
	display: inline-block;
	vertical-align: middle;
	padding: 4px 5px 4px 9px;
	border-radius: 4px;
	color: #4d4d4d;
	color: var(--color-default);
	font-size: 12px;
	font-family: "Marcellus", serif;
	font-family: var(--font-family-en);
	line-height: 1;
	letter-spacing: 0.25em;
	-webkit-text-decoration: none;
	text-decoration: none;
	transition: all 0.3s ease;
	}
	.c-header-menuLanguage__link:hover {
	color: #ffffff;
	color: var(--color-white);
	background-color: #4d4d4d;
	background-color: var(--color-default);
	}

	/* PC Mega Menu */
	.c-header-megaMenu {
	display: none;
	opacity: 0;
	position: fixed;
	z-index: 100;
	top: 80px;
	left: 0;
	right: 0;
	width: 100%;
	max-width: 1344px;
	height: auto;
	margin: 0 auto;
	border-radius: 8px;
	}
	@media (max-width: 1023px) {
	.c-header-megaMenu {
		display: none !important
	}
	}

	.c-megaMenu {
	display: none;
	position: relative;
	padding-top: 4px;
	}

	.c-megaMenu::before {
	content: "";
	position: absolute;
	top: -4px;
	width: 24px;
	height: 12px;
	background: url("/common/image/ico/ico_arrow_megamenu.png") 0 0 no-repeat;
	background-size: contain;
	}

	.c-megaMenu__inner {
	display: flex;
	overflow: hidden;
	min-height: 100%;
	border-radius: 8px;
	box-shadow: 16px 16px 32px 0 rgba(113, 156, 174, 0.32);
	}

	.c-megaMenu__heading {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 270px;
	padding: 42px 36px 36px;
	background-color: #f0f5f5;
	background-color: var(--color-ice-blue);
	}

	.c-megaMenu__title {
	font-size: 1.5rem;
	font-size: var(--font-size-24);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	}

	.c-megaMenu__title > a {
	position: relative;
	display: block;
	padding-right: 40px;
	color: #4d4d4d;
	color: var(--color-default);
	-webkit-text-decoration: none;
	text-decoration: none;
	}

	.c-megaMenu__title > a:hover {
	opacity: 0.75;
	transition: all 0.3s ease;
	}

	.c-megaMenu__title > a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 36px;
	height: 36px;
	transform: translateY(-50%);
	background: url("/common/image/ico/ico_circle_linkArrow_blue.svg") 0 0 no-repeat;
	background-size: contain;
	}

	.c-megaMenu__subTitle {
	color: #9bb7c2;
	color: var(--color-pale-blue-gray);
	font-size: 0.875rem;
	font-size: var(--font-size-14);
	font-family: "Marcellus", serif;
	font-family: var(--font-family-en);
	}

	.c-megaMenu__body {
	flex: 1;
	padding: 24px 36px 36px;
	background-color: #ffffff;
	background-color: var(--color-white);
	}
	@media (max-width: 1360px) {
	.c-megaMenu--corp::before {
		left: var(--megaMenuCorpArrow);
	}
	}
	.c-megaMenu--corp::before{
	right: 496px;
	}
	@media (max-width: 1360px) {
	.c-megaMenu--ir::before {
		left: var(--megaMenuIrArrow);
	}
	}
	.c-megaMenu--ir::before{
	right: 315px;
	}
	.c-megaMenuLinksList {
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	}
	.c-megaMenuLinksList__item {
	}
	.c-megaMenuLinksList__link {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 228px;
	height: 60px;
	padding: 10px 40px 10px 12px;
	color: #005bac;
	color: var(--color-blue);
	font-size: 0.9375rem;
	font-size: var(--font-size-15);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	border-bottom: 1px solid #d8e8eb;
	border-bottom: 1px solid var(--color-soft-aqua);
	line-height: 1.2;
	-webkit-text-decoration: none;
	text-decoration: none;
	}
	.c-megaMenuLinksList__link:hover {
	opacity: 0.75;
	transition: all 0.3s ease;
	}
	.c-megaMenuLinksList__link::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 12px;
	width: 16px;
	height: 16px;
	transform: translateY(-50%);
	margin-top: -1px;
	background: url("/common/image/ico/ico_circle_arrow_blue.svg") 0 0 no-repeat;
	background-size: contain;
	}

	.c-megaMenuService {
	display: none;
	position: relative;
	top: -10px;
	padding-top: 6px;
	}

	.c-megaMenuService::before {
	content: "";
	position: absolute;
	top: 0;
	width: 24px;
	height: 12px;
	background: url("/common/image/ico/ico_arrow_megamenu.png") 0 0 no-repeat;
	background-size: contain;
	}

	.c-megaMenuService__inner {
	margin-top: 4px;
	position: relative;
	overflow: hidden;
	background-color: #ffffff;
	background-color: var(--color-white);
	box-shadow: 16px 16px 32px 0 rgba(113, 156, 174, 0.32);
	border-radius: 8px;
	}

	.c-megaMenuService__note {
	position: absolute;
	top: 16px;
	right: 22px;
	color: #9fa0a0;
	color: var(--color-gray-default-half);
	font-size: 0.75rem;
	font-size: var(--font-size-12);
	line-height: 1;
	}

	.c-megaMenuService__note img {
	display: inline-block;
	vertical-align: middle;
	}

	.c-megaMenuService__contents {
	padding: 32px 24px 0;
	border-radius: 8px 8px 0 0;
	}

	.c-megaMenuService_viewMore {
	display: block;
	padding: 20px 20px;
	background-color: #f0f5f5;
	background-color: var(--color-ice-blue);
	color: #005bac;
	color: var(--color-blue);
	font-size: 1rem;
	font-size: var(--font-size-16);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	text-align: center;
	-webkit-text-decoration: none;
	text-decoration: none;
	}
	@media (max-width: 1360px) {
	.c-megaMenuService::before {
		left: var(--megaMenuServiceArrow);
	}
	}
	.c-megaMenuService::before{
	right: 640px;
	}

	.c-megaMenuServicePayment__title {
	position: relative;
	padding: 0 0 12px 24px;
	color: #455459;
	color: var(--color-gray);
	font-size: 1.5rem;
	font-size: var(--font-size-24);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1;
	border-bottom: 1px solid #d8e8eb;
	border-bottom: 1px solid var(--color-soft-aqua);
	}

	.c-megaMenuServicePayment__title::before {
	content: "";
	position: absolute;
	left: 24px;
	bottom: -1px;
	width: 24px;
	height: 2px;
	background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
	background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
	}
	.c-megaMenuServicePaymentColumn {
	display: flex;
	}
	.c-megaMenuServicePaymentColumn__left {
	width: 75%;
	padding: 24px 24px 8px;
	border-right: 1px solid #d8e8eb;
	border-right: 1px solid var(--color-soft-aqua);
	}
	.c-megaMenuServicePaymentColumn__right {
	width: 25%;
	padding: 24px 24px 24px;
	}
	.c-megaMenuServicePaymentColumn__title {
	margin-bottom: 20px;
	color: #455459;
	color: var(--color-gray);
	font-size: 1.125rem;
	font-size: var(--font-size-18);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	}
	.c-megaMenuServicePaymentColumn__title a {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	padding-right: 24px;
	color: #005bac;
	color: var(--color-blue);
	-webkit-text-decoration: none;
	text-decoration: none;
	}
	.c-megaMenuServicePaymentColumn__title a:hover {
	opacity: 0.75;
	transition: all 0.3s ease;
	}
	.c-megaMenuServicePaymentColumn__title a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 18px;
	height: 18px;
	transform: translateY(-50%);
	background: url("/common/image/ico/ico_circle_arrow_blue.svg") 0 0 no-repeat;
	background-size: contain;
	}
	.c-megaMenuServiceMulpay__subTitle {
	color: #455459;
	color: var(--color-gray);
	font-size: 0.9375rem;
	font-size: var(--font-size-15);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	}
	.c-megaMenuServiceMulpay__title {
	margin-bottom: 24px;
	font-size: 1.125rem;
	font-size: var(--font-size-18);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	}
	.c-megaMenuServiceMulpay__title a {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	padding-right: 24px;
	color: #005bac;
	color: var(--color-blue);
	-webkit-text-decoration: none;
	text-decoration: none;
	}
	.c-megaMenuServiceMulpay__title a:hover {
	opacity: 0.75;
	transition: all 0.3s ease;
	}
	.c-megaMenuServiceMulpay__title a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 18px;
	height: 18px;
	transform: translateY(-50%);
	background: url("/common/image/ico/ico_circle_arrow_blue.svg") 0 0 no-repeat;
	background-size: contain;
	}

	.c-megaMenuServicePaymentSubColumn {
	display: flex;
	}

	.c-megaMenuServicePaymentSubColumn__left {
	width: 75%;
	}

	.c-megaMenuServicePaymentSubColumn__right {
	width: 25%;
	}

	.c-megaMenuServicePaymentSubColumn__title {
	margin-bottom: 16px;
	color: #455459;
	color: var(--color-gray);
	font-size: 0.9375rem;
	font-size: var(--font-size-15);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	}

	.c-megaMenuServicePaymentSubColumn__title .note {
	font-size: 0.8125rem;
	font-size: var(--font-size-13);
	font-weight: 500;
	font-weight: var(--font-weight-medium);
	}

	.c-megaMenuServicePaymentSubColumn__subTitle {
	margin: 16px 0 8px;
	color: #455459;
	color: var(--color-gray);
	font-size: 0.8125rem;
	font-size: var(--font-size-13);
	}

	.c-megaMenuServiceSupport__title {
	position: relative;
	padding: 0 0 12px 24px;
	color: #455459;
	color: var(--color-gray);
	font-size: 1.5rem;
	font-size: var(--font-size-24);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1;
	border-bottom: 1px solid #d8e8eb;
	border-bottom: 1px solid var(--color-soft-aqua);
	}

	.c-megaMenuServiceSupport__title::before {
	content: "";
	position: absolute;
	left: 24px;
	bottom: -1px;
	width: 24px;
	height: 2px;
	background: linear-gradient(225deg, #005bac 0%, #82a2ac 100%);
	background: linear-gradient(225deg, var(--color-blue) 0%, var(--color-pale-blue) 100%);
	}

	.c-megaMenuServiceSupportColumn {
	display: flex;
	}

	.c-megaMenuServiceSupportColumn__item {
	width: 50%;
	padding: 24px 24px 24px;
	}

	.c-megaMenuServiceSupportColumn__item:first-child {
	border-right: 1px solid #d8e8eb;
	border-right: 1px solid var(--color-soft-aqua);
	}

	.c-megaMenuServiceSupportColumn__title {
	margin-bottom: 20px;
	color: #455459;
	color: var(--color-gray);
	font-size: 1.125rem;
	font-size: var(--font-size-18);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1.5;
	}

	.c-megaMenuServiceSupportColumn__title a {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	padding-right: 24px;
	color: #005bac;
	color: var(--color-blue);
	-webkit-text-decoration: none;
	text-decoration: none;
	}

	.c-megaMenuServiceSupportColumn__title a:hover {
	opacity: 0.75;
	transition: all 0.3s ease;
	}

	.c-megaMenuServiceSupportColumn__title a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 18px;
	height: 18px;
	transform: translateY(-50%);
	background: url("/common/image/ico/ico_circle_arrow_blue.svg") 0 0 no-repeat;
	background-size: contain;
	}

	.c-megaMenuServiceLinks {
	list-style-type: none;
	margin-top: -8px;
	}

	.c-megaMenuServiceLinks__item {
	margin-top: 8px;
	}

	.c-megaMenuServiceLinks__link {
	position: relative;
	padding-left: 16px;
	color: #005bac;
	color: var(--color-blue);
	font-size: 0.8125rem;
	font-size: var(--font-size-13);
	-webkit-text-decoration: none;
	text-decoration: none;
	line-height: 1.5;
	}

	.c-megaMenuServiceLinks__link:hover {
	-webkit-text-decoration: underline;
	text-decoration: underline;
	}

	.c-megaMenuServiceLinks__link::before {
	content: "";
	position: absolute;
	top: 0.375em;
	left: 6px;
	width: 4px;
	height: 4px;
	background-color: #455459;
	background-color: var(--color-gray);
	border-radius: 50%;
	}

	.c-megaMenuServiceLinks__link[target='_blank']::after {
	position: relative;
	top: 0.35em;
	margin-left: 3px;
	content: url('/common/image/ico/ico_external.svg');
	width: 14px;
	height: 14px;
	opacity: 0.5;
	}
	.c-megaMenuServiceLinks--w50per {
	display: flex;
	flex-wrap: wrap;
	}
	.c-megaMenuServiceLinks--w50per .c-megaMenuServiceLinks__item {
	width: 50%;
	}
	.c-megaMenuServiceLinks--horizontal {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	}
	.c-megaMenuServiceLinks--horizontal .c-megaMenuServiceLinks__item {
	margin: 0;
	}

	.bg-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
	width: 100%;
	height: 100%;
	background-color: rgba(77, 77, 77, 0.3);
	}
	.c-shadow-header {
	display: none;
	}
	@media (min-width: 1024px) {
	.c-shadow-header {
		position: fixed;
		top: 29px;
		width: 100%;
		z-index: 99
	}
	}
	.c-shadow-header__inner {
	position: relative;
	max-width: 1440px;
	margin: 0 auto;
	}
	.c-shadow-header-search-button {
	display: none;
	position: absolute;
	top: 28px;
	right: 48px;
	width: 52px;
	height: 52px;
	border: none;
	border-radius: 4px;
	background-color: #f0f5f5;
	background-color: var(--color-ice-blue);
	cursor: pointer;
	}
	.c-shadow-header-search-button:hover {
	opacity: 0.75;
	transition: all 0.3s ease;
	}
	.c-shadow-header-search-button::before,
	.c-shadow-header-search-button::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 14px;
	height: 2px;
	background-color: #005bac;
	background-color: var(--color-blue);
	transform-origin: center center;
	}
	.c-shadow-header-search-button::before {
	transform: rotate(45deg);
	}
	.c-shadow-header-search-button::after {
	transform: rotate(135deg);
	}

	.c-shadow-header-links {
	list-style-type: none;
	}

	.c-shadow-header-links__item {
	}
	.c-shadow-header-links__button {
	display: none;
	align-items: center;
	position: absolute;
	background-color: #005bac;
	background-color: var(--color-blue);
	color: #ffffff;
	color: var(--color-white);
	font-weight: 700;
	font-weight: var(--font-weight-bold);
	line-height: 1;
	border: none;
	outline: none;
	border-radius: 4px;
	cursor: pointer;
	}
	.c-shadow-header-links__button::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 8px;
	width: 7px;
	height: 1px;
	background-color: #ffffff;
	background-color: var(--color-white);
	}
	.c-shadow-header-links__button--corp {
	top: 20px;
	right: 521px;
	width: 78px;
	height: 32px;
	padding: 5px 20px 5px 8px;
	font-size: 0.75rem;
	font-size: var(--font-size-12);
	}
	.c-shadow-header-links__button--ir {
	top: 20px;
	right: 344px;
	width: 66px;
	height: 32px;
	padding: 5px 20px 5px 8px;
	font-size: 0.75rem;
	font-size: var(--font-size-12);
	}
	.c-shadow-header-links__button--service {
	top: 48px;
	right: 657px;
	width: 90px;
	min-width: 88px;
	height: 32px;
	padding: 5px 20px 5px 12px;
	font-size: 0.875rem;
	font-size: var(--font-size-14);
	}

	.is-overlay .bg-overlay {
	display: block;
	}
	@media (min-width: 1024px) {
	.is-overlay .c-header,
	.is-overlay .gmoGroupHeader {
		z-index: 98 !important
	}
	}
	.is-overlay .c-shadow-header {
	display: none !important;
	}
	@media (min-width: 1024px) {
	.is-overlay .c-shadow-header {
		display: block !important
	}
	}
	.is-overlay.is-searchOpen .c-shadow-header-search-button {
	display: block;
	}
	.is-overlay.is-megaMenuOpen .c-header-megaMenu {
	display: block;
	opacity: 1;
	animation: menuFadeIn 0.3s ease-in 0s forwards;
	}
	.is-overlay.is-megaMenuOpen.is-ir .c-megaMenu--ir {
	display: block;
	}
	.is-overlay.is-megaMenuOpen.is-ir .c-shadow-header-links__button--ir {
	display: flex;
	}
	.is-overlay.is-megaMenuOpen.is-corp .c-megaMenu--corp {
	display: block;
	}
	.is-overlay.is-megaMenuOpen.is-corp .c-shadow-header-links__button--corp {
	display: flex;
	}
	.is-overlay.is-megaMenuOpen.is-service .c-header-megaMenu {
	top: 115px;
	}
	.is-overlay.is-megaMenuOpen.is-service .c-megaMenuService {
	display: block;
	}
	.is-overlay.is-megaMenuOpen.is-service .c-shadow-header-links__button--service {
	display: flex;
	}

	@keyframes menuFadeIn {
	0% {
		display: none;
		opacity: 0;
	}

	1% {
		display: block;
		opacity: 0;
	}

	100% {
		display: block;
		opacity: 1;
	}
	}

	/* ==========================================================================//
	// Components（Navi）
	// ========================================================================== */
	/* パンくず
	---------------------------------------------------------- */
	.c-breadcrumb {
	overflow: hidden;
	padding-left: 16px;
	}
	@media (min-width: 1024px) {
	.c-breadcrumb {
		padding-right: 16px
	}
	}
	.c-breadcrumb__list {
	overflow-x: auto;
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	width: 100%;
	padding-right: 16px;
	list-style-type: none;
	text-overflow: ellipsis;
	white-space: nowrap;
	}
	@media (min-width: 1024px) {
	.c-breadcrumb__list {
		padding-right: 0;
		max-width: 1300px;
		margin: 0 auto
	}
	}
	.c-breadcrumb__item{
	position: relative;
	margin-right: 22px;
	}
	@media (min-width: 1024px) {
	.c-breadcrumb__item{
		margin-right: 38px
	}
	}
	.c-breadcrumb__item::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -14px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	margin-top: -3px;
	background-color: #8d8d8d;
	background-color: var(--color-gray-medium-light);
	opacity: 0.5;
	}
	@media (min-width: 1024px) {
	.c-breadcrumb__item::after {
		right: -23px
	}
	}
	.c-breadcrumb__item:last-child {
	overflow-x: hidden;
	margin-right: 0;
	}
	.c-breadcrumb__item:last-child::after {
	display: none;
	}
	.c-breadcrumb__item:last-child > span {
	display: block;
	color: #767676;
	color: var(--color-gray-cool-light);
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow-x: hidden;
	}
	.c-breadcrumb__link {
	display: inline-block;
	vertical-align: middle;
	font-size: 0.625rem;
	font-size: var(--font-size-10);
	}
	@media (min-width: 1024px) {
	.c-breadcrumb__link {
		font-size: 0.75rem;
		font-size: var(--font-size-12)
	}
	}
	.c-breadcrumb__link:not(span) {
	color: #4d4d4d;
	color: var(--color-default);
	-webkit-text-decoration: underline;
	text-decoration: underline;
	transition: all 0.3s ease;
	}
	.c-breadcrumb__link:not(span):hover {
	opacity: 0.75;
	-webkit-text-decoration: none;
	text-decoration: none;
	}

	/* ==========================================================================//
	// wovn用
	// ========================================================================== */
	html[lang=ja] .hide_if_ja {
	display: none !important;
	}
	html[lang=en] .hide_if_en {
	display: none !important;
	}

	html[lang=en] .c-shadow-header-links__button--ir {
	/* right: 312px; */
	width: 165px;
	}

	html[lang=en] .c-irMenuList__sub {
	opacity: 0;
	}

	.c-header-language__link {
	cursor: pointer;
	}

	html[lang="ja"] .wovn-languages .c-header-language > .c-header-language__item > a[data-value="ja"] {
	color: #ffffff;
	background-color: #4d4d4d;
	}
	html[lang="en"] .wovn-languages .c-header-language > .c-header-language__item > a[data-value="en"] {
	color: #ffffff;
	background-color: #4d4d4d;
	}

	@media (min-width: 1359px) {
	html[lang="en"] .c-megaMenu--corp::before {
		right: 558px;
	}
	html[lang="en"] .c-megaMenuService::before {
		right: 580px;
	}
	}




	/* skip link */
	.u-skip-link {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
	}
	.u-skip-link:focus {
	background-color: #eee;
	clip: auto !important;
	clip-path: none;
	color: #444;
	display: block;
	font-size: 1em;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
	}


	button[aria-controls]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
	}

	.visually-hidden{
	position:absolute !important;
	width:1px; height:1px;
	padding:0; margin:-1px;
	overflow:hidden; clip:rect(0,0,0,0);
	white-space:nowrap; border:0;
	}

	/* 色以外でも「現在地」が分かるように：高さを変える例 */
	.splide__pagination__page { height: 2px; }
	.splide__pagination__page.is-active { height: 4px; }

	/* ついでに focus 可視化（outline:none を打ち消す） */
	.splide__pagination__page:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
	}