@charset "utf-8";
@font-face {
  font-family: 'Current';
  src: url('../font/Current.woff2') format('woff2'),
  url('../font/Current.woff') format('woff'),
  url('../font/Current.ttf') format('truetype');
}
*,*::before,*::after {
	box-sizing: border-box;
}
ul,ol  {
	padding: 0;
	margin: 0;
	list-style: none;
}
body,h1,h2,h3,h4,p,li,figure,figcaption,blockquote,dl,dd {
	margin: 0;
}
body {
	min-height: 100vh;
	margin: 0px;
	padding: 0px;
	background-color: #ffffff;
	scroll-behavior: smooth;
	text-rendering: optimizeSpeed;
	color: #000000;
	font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 1.8;
	letter-spacing: 0.05em;
/*	font-feature-settings: "palt";*/
}
.en {
	font-family: 'Barlow', sans-serif;
}
body.scroll-stop {
	overflow: hidden;
}
body #wrap {
	width: 100%;
	overflow: hidden;
}
#l-wrapper {
	position: relative;
}
a:not([class]) {
	text-decoration-skip-ink: auto;
}
img {
	display: block;
	vertical-align: bottom;
}
input,button,textarea,select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
hr{
	margin: 0px;
	padding: 0px;
}
a{
	outline:none;
	text-decoration:none;
}
a img{
	border:none;
}
.clearfix::after{
	content: "";
	display: block;
	clear: both;
}
@media (prefers-reduced-motion: reduce) {
	* {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
/* PC ================================================== */
@media all and (min-width:960px){
.tablet,.sp {display: none;}
.pc {display: inline-block;}
.view_sp {display: none;}
.view_tablet {display: none;}
.view_pc {display: block;}
body {}
h1{}
h2{}

h2.sec-heading-ja {
	font-family: 'Current';
	font-size: 38px;
	line-height: 1;
	letter-spacing: .24em;
}
p.sec-heading-en {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.0;
	letter-spacing: .2em;
}
h2.about-heading {
	font-family: 'Current';
	font-size: 12px;
	font-weight: 700;
	line-height: 1.0;
	letter-spacing: .34em;
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	text-align: left;
	position: absolute;
	top: 50%;
	right: 50%;
	-webkit-transform: translate(50%,-50%);
	transform: translate(50%,-50%);
}
h3{}
h4{}
h5{}

header {
	width: 100%;
	height: 0px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
	.hamburger {
		display: block;
		width: 65px;
		height: 65px;
		position: absolute;
		top: 15px;
		right: 25px;
		z-index: 6;
	}
		button.hbg_btn {
			display: block;
			width: 100%;
			height: 100%;
			padding: 0px;
			cursor: pointer;
			position: relative;
		}
			.hbg_btn-line_l {
				width: 33px;
				height: 3px;
				border-radius: 1.5px;
				background-color: #000000;
				position: absolute;
				top: 27px;
				left: 50%;
				transform: translate(-50%,-50%);
				animation: hbg_btn-line_l-close 1.0s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
			}
			@keyframes hbg_btn-line_l-close {
				0% {
					background-color: #ffffff;
					top: 50%;
					transform: translate(-50%,-50%) rotate(45deg);
				}
				25% {
					background-color: #ffffff;
					top: 50%;
					transform: translate(-50%,-50%) rotate(45deg);
				}
				30% {
					background-color: #ffffff;
					top: 50%;
					transform: translate(-50%,-50%) rotate(45deg);
				}
				65% {
					background-color: #000000;
					top: 50%;
					transform: translate(-50%,-50%) rotate(0deg);
				}
				100% {
					background-color: #000000;
					top: 27px;
					transform: translate(-50%,-50%) rotate(0deg);
				}
			}
				.close .hbg_btn-line_l {
					animation: hbg_btn-line_l-open .9s cubic-bezier(0.65, 0, 0.35, 1) .2s 1 forwards;
				}
				@keyframes hbg_btn-line_l-open {
					0% {
						background-color: #000000;
						top: 27px;
						transform: translate(-50%,-50%) rotate(0deg);
					}
					25% {
						background-color: #000000;
						top: 50%;
						transform: translate(-50%,-50%) rotate(0deg);
					}
					30% {
						background-color: #000000;
						top: 50%;
						transform: translate(-50%,-50%) rotate(0deg);
					}
					65% {
						background-color: #ffffff;
						top: 50%;
						transform: translate(-50%,-50%) rotate(45deg);
					}
					100% {
						background-color: #ffffff;
						top: 50%;
						transform: translate(-50%,-50%) rotate(45deg);
					}
				}
			.hbg_btn-line_s {
				width: 16px;
				height: 3px;
				border-radius: 1.5px;
				background-color: #000000;
				position: absolute;
				bottom: 27px;
				right: 16px;
				transform: translate(0%,50%);
				animation: hbg_btn-line_s-close 1.0s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
			}
			@keyframes hbg_btn-line_s-close {
				0% {
					width: 33px;
					background-color: rgba(255, 255, 255, 0.0);
					right: 16px;
					bottom: 50%;
					transform: translate(0%,50%) rotate(-45deg);
				}
				25% {
					width: 0px;
					background-color: rgba(255, 255, 255, 0.0);
					right: 32px;
					bottom: 50%;
					transform: translate(0%,50%) rotate(-45deg);
				}
				30% {
					width: 0px;
					background-color: rgba(255, 255, 255, 0.0);
					right: 32px;
					bottom: 50%;
					transform: translate(0%,50%) rotate(-45deg);
				}
				64% {
					width: 0px;
					background-color: rgba(255, 255, 255, 0.0);
					right: 32px;
					bottom: 50%;
					transform: translate(0%,50%);
				}
				65% {
					width: 16px;
					background-color: #000000;
					right: 16px;
					bottom: 50%;
					transform: translate(0%,50%);
				}
				100% {
					width: 16px;
					background-color: #000000;
					right: 16px;
					bottom: 27px;
					transform: translate(0%,50%);
				}
			}
				.hbg_btn-line_s::before,
				.hbg_btn-line_s::after {
					content: '';
					display: block;
					width: 36.363636%;
					height: 3px;
					border-radius: 1.5px;
					background-color: #ffffff;
					position: absolute;
					top: 0;
					opacity: 0;
					transition: 1.0s cubic-bezier(0.65, 0, 0.35, 1);
				}
				.hbg_btn-line_s::before {
					left: 0;
				}
				.hbg_btn-line_s::after {
					right: 0;
				}
				.close .hbg_btn-line_s {
					animation: hbg_btn-line_s-open .9s cubic-bezier(0.65, 0, 0.35, 1) .2s 1 forwards;
				}
				@keyframes hbg_btn-line_s-open {
					0% {
						width: 16px;
						background-color: #000000;
						right: 16px;
						bottom: 27px;
						transform: translate(0%,50%);
					}
					25% {
						width: 16px;
						background-color: #000000;
						right: 16px;
						bottom: 50%;
						transform: translate(0%,50%);
					}
					26% {
						width: 0px;
						background-color: #000000;
						right: 32px;
						bottom: 50%;
						transform: translate(0%,50%);
					}
					65% {
						width: 0px;
						background-color: rgba(255, 255, 255, 0.0);
						right: 32px;
						bottom: 50%;
						transform: translate(0%,50%) rotate(-45deg);
					}
					100% {
						width: 33px;
						background-color: rgba(255, 255, 255, 0.0);
						right: 16px;
						bottom: 50%;
						transform: translate(0%,50%) rotate(-45deg);
					}
				}
				.close .hbg_btn-line_s::before,
				.close .hbg_btn-line_s::after {
					opacity: 1;
					transition: .9s cubic-bezier(0.65, 0, 0.35, 1) .2s;
				}

	.global-nav {
		width: 100%;
		height: 100vh;
		backdrop-filter: blur(5px);
		-webkit-backdrop-filter: blur(5px);
		position: relative;
		display: none;
	}
		.global-nav-close {
			width: 100%;
			height: 100%;
			position: absolute;
			top: 0;
			left: 0;
			z-index: 1;
		}
		.global-nav-contents {
			width: 1900px;
			height: 1900px;
			background-color: #2C8CA2;
			border-radius: 50%;
			opacity: 0;
			position: absolute;
			top: 50%;
			right: -550px;
			transform: translate(50%,-50%);
			z-index: 5;
			animation: global-nav-contents-close 1.0s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
		}
		@keyframes global-nav-contents-close {
			0% {
				opacity: 1;
				right: -550px;
				transform: translate(50%,-50%) scale(1.0);
			}
			100% {
				opacity: 0;
				right: -950px;
				transform: translate(50%,-50%) scale(1.0);
			}
		}
		.global-nav-contents.active {
			animation: global-nav-contents-open .9s cubic-bezier(0.65, 0, 0.35, 1) .2s 1 forwards;
		}
		@keyframes global-nav-contents-open {
			0% {
				opacity: 0;
				right: -950px;
				transform: translate(50%,-50%) scale(1.0);
			}
			100% {
				opacity: 1;
				right: -550px;
				transform: translate(50%,-50%) scale(1.0);
			}
		}
			.global-nav-menu_container {
				width: 400px;
				height: 100vh;
				padding-left: 108px;
				display: flex;
				justify-content: flex-start;
				align-items: center;
				position: absolute;
				top: 50%;
				left: 0;
				-webkit-transform: translate(0,-50%);
				transform: translate(0,-50%);
			}
				.global-nav-menu_list {
					width: 100%;
				}
					.global-nav-menu_item {
						width: 100%;
						margin-bottom: 29px;
						font-size: 12px;
						font-weight: 500;
						line-height: 22px;
						letter-spacing: .1em;
						overflow: hidden;
					}
					.global-nav-menu_item:last-of-type {
						margin-bottom: 0px;
					}
						.global-nav-menu_item a {
							display: inline-block;
							color: #ffffff;
							opacity: 1;
							position: relative;
							top: 27px;
						}
						.global-nav-menu_item a span {
							margin-right: 8px;
							font-size: 22px;
							position: relative;
							bottom: -1px;
						}
						.global-nav-contents.active .global-nav-menu_item a {
							opacity: 1;
							top: 0px;
							transition: .3s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(1) a {
							transition-delay: 1.1s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(2) a {
							transition-delay: 1.13s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(3) a {
							transition-delay: 1.16s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(4) a {
							transition-delay: 1.19s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(5) a {
							transition-delay: 1.22s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(6) a {
							transition-delay: 1.25s;
						}

footer {
	width: 100%;
	height: auto;
}
	.footer--inner {
		width: 95%;
		max-width: 1215px;
		height: auto;
		padding: 0px 0px 28px;
		margin: auto auto;
		position: relative;
	}
		.footer--inner > img {
			width: 100%;
			height: auto;
		}
		.footer-info {
			width: 391px;
			height: auto;
			position: absolute;
			top: 13.5px;
			left: 67px;
		}
			.footer-logo {
				width: 100%;
				height: auto;
				margin-bottom: 25px;
			}
				.footer-logo img {
					width: 100%;
					height: auto;
				}
			.footer-info-address {
				width: 100%;
				margin: auto auto 10px;
				font-size: 14px;
				font-weight: 500;
				line-height: 1.2;
				letter-spacing: .03em;
				color: #0E4086;
			}
			.footer-info-tel {
				width: 100%;
				margin: auto auto;
				font-size: 14px;
				font-weight: 500;
				line-height: 1.2;
				letter-spacing: .03em;
				color: #0E4086;
			}
}

/* Tablet ================================================== */
@media all and (min-width:560px) and (max-width:959px){
.pc,.sp {display: none;}
.tablet {display: inline-block;}
.view_pc {display: none;}
.view_sp {display: none;}
.view_tablet {display: block;}
body {}
h1{}

h2.sec-heading-ja {
	font-family: 'Current';
	font-size: 30px;
	line-height: 1;
	letter-spacing: .24em;
}
p.sec-heading-en {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.0;
	letter-spacing: .2em;
}
h2.about-heading {
	font-family: 'Current';
	font-size: 10px;
	font-weight: 700;
	line-height: 1.0;
	letter-spacing: .24em;
}
h3{}
h4{}
h5{}

header {
	width: 100%;
	height: 0px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
	.hamburger {
		display: block;
		width: 65px;
		height: 65px;
		position: absolute;
		top: 7px;
		right: 16px;
		z-index: 6;
	}
		button.hbg_btn {
			display: block;
			width: 100%;
			height: 100%;
			padding: 0px;
			cursor: pointer;
			position: relative;
		}
			.hbg_btn-line_l {
				width: 33px;
				height: 3px;
				border-radius: 1.5px;
				background-color: #000000;
				position: absolute;
				top: 27px;
				left: 50%;
				transform: translate(-50%,-50%);
				animation: hbg_btn-line_l-close 1.0s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
			}
			@keyframes hbg_btn-line_l-close {
				0% {
					background-color: #ffffff;
					top: 50%;
					transform: translate(-50%,-50%) rotate(45deg);
				}
				25% {
					background-color: #ffffff;
					top: 50%;
					transform: translate(-50%,-50%) rotate(45deg);
				}
				30% {
					background-color: #ffffff;
					top: 50%;
					transform: translate(-50%,-50%) rotate(45deg);
				}
				65% {
					background-color: #000000;
					top: 50%;
					transform: translate(-50%,-50%) rotate(0deg);
				}
				100% {
					background-color: #000000;
					top: 27px;
					transform: translate(-50%,-50%) rotate(0deg);
				}
			}
				.close .hbg_btn-line_l {
					animation: hbg_btn-line_l-open .9s cubic-bezier(0.65, 0, 0.35, 1) .2s 1 forwards;
				}
				@keyframes hbg_btn-line_l-open {
					0% {
						background-color: #000000;
						top: 27px;
						transform: translate(-50%,-50%) rotate(0deg);
					}
					25% {
						background-color: #000000;
						top: 50%;
						transform: translate(-50%,-50%) rotate(0deg);
					}
					30% {
						background-color: #000000;
						top: 50%;
						transform: translate(-50%,-50%) rotate(0deg);
					}
					65% {
						background-color: #ffffff;
						top: 50%;
						transform: translate(-50%,-50%) rotate(45deg);
					}
					100% {
						background-color: #ffffff;
						top: 50%;
						transform: translate(-50%,-50%) rotate(45deg);
					}
				}
			.hbg_btn-line_s {
				width: 16px;
				height: 3px;
				border-radius: 1.5px;
				background-color: #000000;
				position: absolute;
				bottom: 27px;
				right: 16px;
				transform: translate(0%,50%);
				animation: hbg_btn-line_s-close 1.0s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
			}
			@keyframes hbg_btn-line_s-close {
				0% {
					width: 33px;
					background-color: rgba(255, 255, 255, 0.0);
					right: 16px;
					bottom: 50%;
					transform: translate(0%,50%) rotate(-45deg);
				}
				25% {
					width: 0px;
					background-color: rgba(255, 255, 255, 0.0);
					right: 32px;
					bottom: 50%;
					transform: translate(0%,50%) rotate(-45deg);
				}
				30% {
					width: 0px;
					background-color: rgba(255, 255, 255, 0.0);
					right: 32px;
					bottom: 50%;
					transform: translate(0%,50%) rotate(-45deg);
				}
				64% {
					width: 0px;
					background-color: rgba(255, 255, 255, 0.0);
					right: 32px;
					bottom: 50%;
					transform: translate(0%,50%);
				}
				65% {
					width: 16px;
					background-color: #000000;
					right: 16px;
					bottom: 50%;
					transform: translate(0%,50%);
				}
				100% {
					width: 16px;
					background-color: #000000;
					right: 16px;
					bottom: 27px;
					transform: translate(0%,50%);
				}
			}
				.hbg_btn-line_s::before,
				.hbg_btn-line_s::after {
					content: '';
					display: block;
					width: 36.363636%;
					height: 3px;
					border-radius: 1.5px;
					background-color: #ffffff;
					position: absolute;
					top: 0;
					opacity: 0;
					transition: 1.0s cubic-bezier(0.65, 0, 0.35, 1);
				}
				.hbg_btn-line_s::before {
					left: 0;
				}
				.hbg_btn-line_s::after {
					right: 0;
				}
				.close .hbg_btn-line_s {
					animation: hbg_btn-line_s-open .9s cubic-bezier(0.65, 0, 0.35, 1) .2s 1 forwards;
				}
				@keyframes hbg_btn-line_s-open {
					0% {
						width: 16px;
						background-color: #000000;
						right: 16px;
						bottom: 27px;
						transform: translate(0%,50%);
					}
					25% {
						width: 16px;
						background-color: #000000;
						right: 16px;
						bottom: 50%;
						transform: translate(0%,50%);
					}
					26% {
						width: 0px;
						background-color: #000000;
						right: 32px;
						bottom: 50%;
						transform: translate(0%,50%);
					}
					65% {
						width: 0px;
						background-color: rgba(255, 255, 255, 0.0);
						right: 32px;
						bottom: 50%;
						transform: translate(0%,50%) rotate(-45deg);
					}
					100% {
						width: 33px;
						background-color: rgba(255, 255, 255, 0.0);
						right: 16px;
						bottom: 50%;
						transform: translate(0%,50%) rotate(-45deg);
					}
				}
				.close .hbg_btn-line_s::before,
				.close .hbg_btn-line_s::after {
					opacity: 1;
					transition: .9s cubic-bezier(0.65, 0, 0.35, 1) .2s;
				}

	.global-nav {
		width: 100%;
		height: 100vh;
		backdrop-filter: blur(5px);
		-webkit-backdrop-filter: blur(5px);
		position: relative;
		display: none;
	}
		.global-nav-close {
			width: 100%;
			height: 100%;
			position: absolute;
			top: 0;
			left: 0;
			z-index: 1;
		}
		.global-nav-contents {
			width: 100%;
			height: 100%;
			background-color: #2C8CA2;
			opacity: 0;
			position: absolute;
			top: 50%;
			transform: translate(100%,-50%);
			z-index: 5;
			animation: global-nav-contents-close 1.0s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
		}
		@keyframes global-nav-contents-close {
			0% {
				opacity: 1;
				right: 100vw;
				transform: translate(100%,-50%) scale(1.0);
			}
			100% {
				opacity: 0;
				right: 0;
				transform: translate(100%,-50%) scale(1.0);
			}
		}
		.global-nav-contents.active {
			animation: global-nav-contents-open .9s cubic-bezier(0.65, 0, 0.35, 1) .2s 1 forwards;
		}
		@keyframes global-nav-contents-open {
			0% {
				opacity: 0;
				right: 0;
				transform: translate(100%,-50%) scale(1.0);
			}
			100% {
				opacity: 1;
				right: 100vw;
				transform: translate(100%,-50%) scale(1.0);
			}
		}
			.global-nav-menu_container {
				width: 100%;
				height: 100vh;
				padding-left: 40px;
				padding-bottom: 5vh;
				display: flex;
				justify-content: center;
				align-items: center;
				position: absolute;
				top: 50%;
				left: 0;
				-webkit-transform: translate(0,-50%);
				transform: translate(0,-50%);
			}
				.global-nav-menu_list {
					width: 100%;
				}
					.global-nav-menu_item {
						width: 100%;
						margin-bottom: 29px;
						font-size: 12px;
						font-weight: 500;
						line-height: 22px;
						letter-spacing: .1em;
						overflow: hidden;
					}
					.global-nav-menu_item:last-of-type {
						margin-bottom: 0px;
					}
						.global-nav-menu_item a {
							display: inline-block;
							color: #ffffff;
							opacity: 1;
							position: relative;
							top: 27px;
						}
						.global-nav-menu_item a span {
							margin-right: 8px;
							font-size: 22px;
							position: relative;
							bottom: -1px;
						}
						.global-nav-contents.active .global-nav-menu_item a {
							opacity: 1;
							top: 0px;
							transition: .3s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(1) a {
							transition-delay: 1.1s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(2) a {
							transition-delay: 1.13s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(3) a {
							transition-delay: 1.16s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(4) a {
							transition-delay: 1.19s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(5) a {
							transition-delay: 1.22s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(6) a {
							transition-delay: 1.25s;
						}

footer {
	width: 100%;
	height: auto;
}
	.footer--inner {
		width: 90%;
		height: auto;
		padding: 122px 0px 25px;
		margin: auto auto;
		position: relative;
	}
		.footer--inner > img {
			width: 100%;
			height: auto;
		}
		.footer-info {
			width: 391px;
			height: auto;
			position: absolute;
			top: 0;
			left: 0;
		}
			.footer-logo {
				width: 100%;
				height: auto;
				margin-bottom: 21px;
			}
				.footer-logo img {
					width: 100%;
					height: auto;
				}
			.footer-info-address {
				width: 94.5%;
				margin: auto auto 10px;
				font-size: 12px;
				font-weight: 500;
				line-height: 1.2;
				letter-spacing: .03em;
				color: #0E4086;
			}
			.footer-info-tel {
				width: 94.5%;
				margin: auto auto;
				font-size: 12px;
				font-weight: 500;
				line-height: 1.2;
				letter-spacing: .03em;
				color: #0E4086;
			}
}

/* SP ================================================== */
@media all and (max-width:559px){
.pc,.tablet {display: none;}
.sp {display: inline-block;}
.view_pc {display: none;}
.view_tablet {display: none;}
.view_sp {display: block;}
body {}
h1{}
h2{}

h2.sec-heading-ja {
	font-family: 'Current';
	font-size: 30px;
	line-height: 1;
	letter-spacing: .24em;
}
p.sec-heading-en {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.0;
	letter-spacing: .2em;
}
h2.about-heading {
	font-family: 'Current';
	font-size: 10px;
	font-weight: 700;
	line-height: 1.0;
	letter-spacing: .24em;
}
h3{}
h4{}
h5{}

header {
	width: 100%;
	height: 0px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
	.hamburger {
		display: block;
		width: 65px;
		height: 65px;
		position: absolute;
		top: 7px;
		right: 16px;
		z-index: 6;
	}
		button.hbg_btn {
			display: block;
			width: 100%;
			height: 100%;
			padding: 0px;
			cursor: pointer;
			position: relative;
		}
			.hbg_btn-line_l {
				width: 33px;
				height: 3px;
				border-radius: 1.5px;
				background-color: #000000;
				position: absolute;
				top: 27px;
				left: 50%;
				transform: translate(-50%,-50%);
				animation: hbg_btn-line_l-close 1.0s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
			}
			@keyframes hbg_btn-line_l-close {
				0% {
					background-color: #ffffff;
					top: 50%;
					transform: translate(-50%,-50%) rotate(45deg);
				}
				25% {
					background-color: #ffffff;
					top: 50%;
					transform: translate(-50%,-50%) rotate(45deg);
				}
				30% {
					background-color: #ffffff;
					top: 50%;
					transform: translate(-50%,-50%) rotate(45deg);
				}
				65% {
					background-color: #000000;
					top: 50%;
					transform: translate(-50%,-50%) rotate(0deg);
				}
				100% {
					background-color: #000000;
					top: 27px;
					transform: translate(-50%,-50%) rotate(0deg);
				}
			}
				.close .hbg_btn-line_l {
					animation: hbg_btn-line_l-open .9s cubic-bezier(0.65, 0, 0.35, 1) .2s 1 forwards;
				}
				@keyframes hbg_btn-line_l-open {
					0% {
						background-color: #000000;
						top: 27px;
						transform: translate(-50%,-50%) rotate(0deg);
					}
					25% {
						background-color: #000000;
						top: 50%;
						transform: translate(-50%,-50%) rotate(0deg);
					}
					30% {
						background-color: #000000;
						top: 50%;
						transform: translate(-50%,-50%) rotate(0deg);
					}
					65% {
						background-color: #ffffff;
						top: 50%;
						transform: translate(-50%,-50%) rotate(45deg);
					}
					100% {
						background-color: #ffffff;
						top: 50%;
						transform: translate(-50%,-50%) rotate(45deg);
					}
				}
			.hbg_btn-line_s {
				width: 16px;
				height: 3px;
				border-radius: 1.5px;
				background-color: #000000;
				position: absolute;
				bottom: 27px;
				right: 16px;
				transform: translate(0%,50%);
				animation: hbg_btn-line_s-close 1.0s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
			}
			@keyframes hbg_btn-line_s-close {
				0% {
					width: 33px;
					background-color: rgba(255, 255, 255, 0.0);
					right: 16px;
					bottom: 50%;
					transform: translate(0%,50%) rotate(-45deg);
				}
				25% {
					width: 0px;
					background-color: rgba(255, 255, 255, 0.0);
					right: 32px;
					bottom: 50%;
					transform: translate(0%,50%) rotate(-45deg);
				}
				30% {
					width: 0px;
					background-color: rgba(255, 255, 255, 0.0);
					right: 32px;
					bottom: 50%;
					transform: translate(0%,50%) rotate(-45deg);
				}
				64% {
					width: 0px;
					background-color: rgba(255, 255, 255, 0.0);
					right: 32px;
					bottom: 50%;
					transform: translate(0%,50%);
				}
				65% {
					width: 16px;
					background-color: #000000;
					right: 16px;
					bottom: 50%;
					transform: translate(0%,50%);
				}
				100% {
					width: 16px;
					background-color: #000000;
					right: 16px;
					bottom: 27px;
					transform: translate(0%,50%);
				}
			}
				.hbg_btn-line_s::before,
				.hbg_btn-line_s::after {
					content: '';
					display: block;
					width: 36.363636%;
					height: 3px;
					border-radius: 1.5px;
					background-color: #ffffff;
					position: absolute;
					top: 0;
					opacity: 0;
					transition: 1.0s cubic-bezier(0.65, 0, 0.35, 1);
				}
				.hbg_btn-line_s::before {
					left: 0;
				}
				.hbg_btn-line_s::after {
					right: 0;
				}
				.close .hbg_btn-line_s {
					animation: hbg_btn-line_s-open .9s cubic-bezier(0.65, 0, 0.35, 1) .2s 1 forwards;
				}
				@keyframes hbg_btn-line_s-open {
					0% {
						width: 16px;
						background-color: #000000;
						right: 16px;
						bottom: 27px;
						transform: translate(0%,50%);
					}
					25% {
						width: 16px;
						background-color: #000000;
						right: 16px;
						bottom: 50%;
						transform: translate(0%,50%);
					}
					26% {
						width: 0px;
						background-color: #000000;
						right: 32px;
						bottom: 50%;
						transform: translate(0%,50%);
					}
					65% {
						width: 0px;
						background-color: rgba(255, 255, 255, 0.0);
						right: 32px;
						bottom: 50%;
						transform: translate(0%,50%) rotate(-45deg);
					}
					100% {
						width: 33px;
						background-color: rgba(255, 255, 255, 0.0);
						right: 16px;
						bottom: 50%;
						transform: translate(0%,50%) rotate(-45deg);
					}
				}
				.close .hbg_btn-line_s::before,
				.close .hbg_btn-line_s::after {
					opacity: 1;
					transition: .9s cubic-bezier(0.65, 0, 0.35, 1) .2s;
				}

	.global-nav {
		width: 100%;
		height: 100vh;
		backdrop-filter: blur(5px);
		-webkit-backdrop-filter: blur(5px);
		position: relative;
		display: none;
	}
		.global-nav-close {
			width: 100%;
			height: 100%;
			position: absolute;
			top: 0;
			left: 0;
			z-index: 1;
		}
		.global-nav-contents {
			width: 100%;
			height: 100%;
			background-color: #2C8CA2;
			opacity: 0;
			position: absolute;
			top: 50%;
			transform: translate(100%,-50%);
			z-index: 5;
			animation: global-nav-contents-close 1.0s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
		}
		@keyframes global-nav-contents-close {
			0% {
				opacity: 1;
				right: 100vw;
				transform: translate(100%,-50%) scale(1.0);
			}
			100% {
				opacity: 0;
				right: 0;
				transform: translate(100%,-50%) scale(1.0);
			}
		}
		.global-nav-contents.active {
			animation: global-nav-contents-open .9s cubic-bezier(0.65, 0, 0.35, 1) .2s 1 forwards;
		}
		@keyframes global-nav-contents-open {
			0% {
				opacity: 0;
				right: 0;
				transform: translate(100%,-50%) scale(1.0);
			}
			100% {
				opacity: 1;
				right: 100vw;
				transform: translate(100%,-50%) scale(1.0);
			}
		}
			.global-nav-menu_container {
				width: 100%;
				height: 100vh;
				padding-left: 40px;
				padding-bottom: 5vh;
				display: flex;
				justify-content: center;
				align-items: center;
				position: absolute;
				top: 50%;
				left: 0;
				-webkit-transform: translate(0,-50%);
				transform: translate(0,-50%);
			}
				.global-nav-menu_list {
					width: 100%;
				}
					.global-nav-menu_item {
						width: 100%;
						margin-bottom: 29px;
						font-size: 12px;
						font-weight: 500;
						line-height: 22px;
						letter-spacing: .1em;
						overflow: hidden;
					}
					.global-nav-menu_item:last-of-type {
						margin-bottom: 0px;
					}
						.global-nav-menu_item a {
							display: inline-block;
							color: #ffffff;
							opacity: 1;
							position: relative;
							top: 27px;
						}
						.global-nav-menu_item a span {
							margin-right: 8px;
							font-size: 22px;
							position: relative;
							bottom: -1px;
						}
						.global-nav-contents.active .global-nav-menu_item a {
							opacity: 1;
							top: 0px;
							transition: .3s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(1) a {
							transition-delay: 1.1s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(2) a {
							transition-delay: 1.13s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(3) a {
							transition-delay: 1.16s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(4) a {
							transition-delay: 1.19s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(5) a {
							transition-delay: 1.22s;
						}
						.global-nav-contents .global-nav-menu_item:nth-of-type(6) a {
							transition-delay: 1.25s;
						}

footer {
	width: 100%;
	height: auto;
}
	.footer--inner {
		width: 90%;
		height: auto;
		padding: 122px 0px 25px;
		margin: auto auto;
		position: relative;
	}
		.footer--inner > img {
			width: 100%;
			height: auto;
		}
		.footer-info {
			width: 100%;
			height: auto;
			position: absolute;
			top: 0;
			left: 0;
		}
			.footer-logo {
				width: 100%;
				height: auto;
				margin-bottom: 21px;
			}
				.footer-logo img {
					width: 100%;
					height: auto;
				}
			.footer-info-address {
				width: 94.5%;
				margin: auto auto 10px;
				font-size: 12px;
				font-weight: 500;
				line-height: 1.2;
				letter-spacing: .03em;
				color: #0E4086;
			}
			.footer-info-tel {
				width: 94.5%;
				margin: auto auto;
				font-size: 12px;
				font-weight: 500;
				line-height: 1.2;
				letter-spacing: .03em;
				color: #0E4086;
			}
}