@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
* {
	padding: 0;
	margin: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	list-style-type: none;
	overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict;
}
html,body{
	width: 100%;
	height: auto;
	scroll-behavior: smooth;
	scrollbar-width: none;
	-ms-overflow-style: none;
}
body {
	position: relative;
	font-family: museo-sans, "Helvetica Neue", Arial, "Noto Sans JP", Meiryo, sans-serif;
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt";
	-webkit-font-feature-settings: "palt";
	font-size: 14px;
	line-height: 28px;
	font-weight: 400;
	letter-spacing: 0.04em;
	background: #000;
	-webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body::-webkit-scrollbar{
  display:none;
}
.txt_s{
	font-size: 11px;
	line-height: 24px;
}
@media screen and (min-width: 750px) {
body {
	font-size: 15px;
	line-height: 32px;
}
.txt_s{
	font-size: 12px;
	line-height: 28px;
}
}
ul,li,ol {
  padding: 0;
  margin: 0;
}
li {
  list-style-type: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
a,
a img {
	color: #1a87d3;
	text-decoration: none;
	font-weight: 700;
}
img{
	display:block;
	width: 100%;
	height: auto;
}
video {
	display: block;
}
b{
	font-weight: 900;
}
.pc{
	display: none;
}
.sp{
	display: block;
}
@media screen and (min-width: 750px) {
.pc{
	display: block;
}
.sp{
	display: none;
}
}
.blue{
	color: #1a87d3;
}
#content{
	padding-bottom: 1px;
}
.container{
	width: 100%;
	height: 100%;
	overflow-x: hidden;
}
.relative{
	position: relative!important;
	z-index: 1;
}
/************************************
****** drawer
************************************/
#drawer{
	display: none;
}
label {
	cursor: pointer;
	position: fixed;
}
.open {
	z-index: 1002;
	top: 0;
	right: 0;
	width: 56px;
	height: 56px;
	background: #000;
	transition: background .2s, transform .2s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open span,
.open::before,
.open::after {
	content: "";
}
.open span,
.open::before,
.open::after {
	content: "";
	position: absolute;
	top: calc(50% - 1px);
	left: 30%;
	width: 40%;
	border-bottom:1px solid #999;
	transition: transform .2s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open span {
	transform: translateY(0);
}
.open::before {
	transform: translateY(-5px);
}
.open::after {
	transform: translateY(5px);
}
.close {
	/**z-index: 9001;
	inset: 0;
	pointer-events: none;
	transition: background .2s;**/
}
#drawer:checked + .open{
	right: 0;
}
#drawer:checked + .open span {
	transform: scaleX(0);
}
#drawer:checked + .open::before {
	transform: rotate(135deg) scaleX(1.2);
}
#drawer:checked + .open::after {
	transform: rotate(-135deg) scaleX(1.2);
}
#drawer:checked ~ .close {
	pointer-events: auto;
	background:rgba(14,22,25,0.8);
}
#drawer:checked ~ .header{
	display: block;
}
/* Drawer fixed header - logo and language switcher */
.drawer-header-fixed {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	height: 80px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px;
	background: #000;
	z-index: 9999;
}

.drawer-logo-link {
	display: block;
	width: 80px;
	height: 29px;
}

.drawer_logo_svg {
	display: block;
	width: 80px;
	height: 29px;
	transition: .3s;
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJsb2dvIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDExOS42IDQxLjciPiAgPGRlZnM+IDxzdHlsZT4gLnN0MCB7IGZpbGw6ICNmZmY7IH0gPC9zdHlsZT4gPC9kZWZzPiA8Zz4gPHBhdGggY2xhc3M9InN0MCIgZD0iTTEwOC4xLDBoMHMwLDAsMCwwaC03LjRsLTExLjUsMjguMWg3LjRsMi40LTUuOWgxMC44bDIuNCw1LjloNy40TDEwOC4xLDBaTTEwMS4zLDE2LjRsMy03LjRoMHMzLDcuNCwzLDcuNGgtNi4xWiIvPiA8cG9seWdvbiBjbGFzcz0ic3QwIiBwb2ludHM9IjYuOCAxMC41IDYuOCA2IDIzLjUgNiAyMy41IDAgMy43IDAgMCAzLjkgMCAxMi44IDMuNyAxNi42IDE4LjMgMTYuNiAxOC4zIDIyLjEgMCAyMi4xIDAgMjguMSAyMS40IDI4LjEgMjUuMiAyNC4yIDI1LjIgMTQuNCAyMS40IDEwLjUgNi44IDEwLjUiLz4gPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSI2OC4xIDAgNjEuMyAwIDYxLjMgMjguMSA4NS45IDI4LjEgODUuOSAyMi4xIDY4LjEgMjIuMSA2OC4xIDAiLz4gPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSI0OC45IDAgNDIuNSAxMS40IDQyLjUgMTEuNCAzNi4zIDAgMjguMyAwIDM5IDE4IDM5IDI4LjEgNDYuMSAyOC4xIDQ2LjEgMTggNTYuOSAwIDQ4LjkgMCIvPiA8L2c+IDxnPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNjYuNSwzMS45aDEuNHYzaDQuMnYtM2gxLjR2Ny40aC0xLjR2LTMuMWgtNC4ydjMuMWgtMS40di03LjRaIi8+IDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik03NS42LDM2LjZjMC0yLC44LTIuOCwzLTIuOHMyLjkuNywyLjksMi44LS44LDIuOC0yLjksMi44LTMtLjgtMy0yLjhaTTgwLjEsMzYuNmMwLTEuMi0uNC0xLjYtMS42LTEuNnMtMS42LjQtMS42LDEuNi40LDEuNiwxLjYsMS42LDEuNi0uNCwxLjYtMS42WiIvPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNODMuNCwzMS45aDEuNHY3LjRoLTEuNHYtNy40WiIvPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNODcuMSwzNi44YzAtMS45LjctMi42LDIuMy0yLjZzMS4zLjEsMS45LjV2LTIuN2gxLjR2Ny40aC0xdi0uNWMtLjkuNC0xLjUuNi0yLjMuNi0xLjcsMC0yLjMtLjgtMi4zLTIuN1pNOTEuNCwzNy45di0yLjFjLS42LS4zLTEtLjQtMS42LS40LTEsMC0xLjMuNC0xLjMsMS41cy4zLDEuNSwxLjMsMS41LDEtLjEsMS42LS40WiIvPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNOTUuNSwzMS44aDEuNXYxLjNoLTEuNXYtMS4zWk05NS41LDM0aDEuNHY1LjNoLTEuNHYtNS4zWiIvPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNOTkuNywzNGgxdi41Yy45LS41LDEuNS0uNiwyLjItLjYsMS40LDAsMiwuNiwyLDEuOXYzLjVoLTEuNHYtMy4xYzAtLjgtLjMtMS4xLTEtMS4xcy0uOS4xLTEuNS41djMuOGgtMS40di01LjNaIi8+IDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xMDcuMyw0MS40di0xLjJjLjguMiwxLjMuMywyLC4zLDEuMywwLDEuNy0uMywxLjctMS4zdi0uNGMtLjYuNC0xLjIuNS0xLjkuNS0xLjcsMC0yLjMtLjgtMi4zLTIuOHMuNy0yLjgsMi4zLTIuOCwxLjQuMiwyLjEuNnYtLjVoMS4ydjUuM2MwLDEuNy0uOCwyLjQtMywyLjRzLTEuNCwwLTIuMS0uM1pNMTExLjEsMzcuOHYtMi4zYy0uNi0uMy0xLS41LTEuNi0uNS0xLDAtMS4zLjQtMS4zLDEuNnMuMywxLjYsMS4zLDEuNiwxLS4xLDEuNi0uNVoiLz4gPHBhdGggY2xhc3M9InN0MCIgZD0iTTExNC41LDM5LjF2LTEuMmMuOS4zLDEuNS40LDIuNS40czEuMy0uMSwxLjMtLjUtLjItLjUtMS0uNmgtLjhjLTEuNC0uMi0xLjktLjYtMS45LTEuN3MuNy0xLjcsMi42LTEuNywxLjQsMCwyLjIuM3YxLjFjLS45LS4yLTEuNC0uMy0yLjItLjNzLTEuMi4xLTEuMi41LjIuNCwxLC41aC44YzEuNC4yLDEuOS42LDEuOSwxLjdzLS42LDEuNy0yLjcsMS43LTEuOCwwLTIuNC0uM1oiLz4gPC9nPjwvc3ZnPg==");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 80px;
}

/* TranslatePress language switcher - mobile positioning */
@media screen and (max-width: 748px) {
	#trp-floater-ls-language-list {
		position: fixed !important;
		top: 20px !important;
		right: 20px !important;
		left: auto !important;
		bottom: auto !important;
		z-index: 99999 !important;
	}

	#trp-floater-ls-language-list .trp-language-wrap {
		display: flex !important;
		gap: 8px !important;
		align-items: center !important;
	}

	#trp-floater-ls-language-list .trp-language-wrap a {
		color: #999 !important;
		font-size: 14px !important;
		line-height: 1 !important;
		padding: 0 !important;
		font-weight: 400 !important;
		text-decoration: none !important;
		transition: color 0.3s !important;
		background: none !important;
		border: none !important;
	}

	#trp-floater-ls-language-list .trp-language-wrap a:first-child {
		border-right: 1px dotted rgba(255,255,255,0.3) !important;
		padding-right: 8px !important;
		margin-right: 0 !important;
	}

	#trp-floater-ls-language-list .trp-language-wrap a:hover,
	#trp-floater-ls-language-list .trp-language-wrap a.trp-ls-disabled-language {
		color: #fff !important;
	}
}

/* PC version - TranslatePress in footer area as <li> */
@media screen and (min-width: 749px) {
	.footer-lang-switcher {
		display: flex !important;
		align-items: center !important;
		line-height: 15px;
	}

	.footer-lang-switcher #trp-floater-ls-language-list {
		position: static !important;
		display: block !important;
	}

	.footer-lang-switcher #trp-floater-ls-language-list .trp-language-wrap {
		display: flex !important;
		gap: 0 !important;
		align-items: center !important;
		background: transparent !important;
		padding: 0 !important;
	}

	.footer-lang-switcher #trp-floater-ls-language-list .trp-language-wrap a {
		color: #fff !important;
		font-size: 10px !important;
		line-height: 15px !important;
		padding: 4px 6px !important;
		font-weight: 400 !important;
		text-decoration: none !important;
		transition: color 0.3s !important;
		background: none !important;
		border: none !important;
		display: inline-block;
	}

	.footer-lang-switcher #trp-floater-ls-language-list .trp-language-wrap a:hover,
	.footer-lang-switcher #trp-floater-ls-language-list .trp-language-wrap a.trp-ls-disabled-language {
		color: #fff !important;
		opacity: 0.7;
	}

	/* Hide Japanese subtext on English pages */
	html[lang="en-US"] .gnavi_jp,
	html[lang="en"] .gnavi_jp {
		display: none !important;
	}
}

/* PC intermediate size - Navigation padding adjustment */
@media screen and (min-width: 749px) and (max-width: 1000px) {
	.head_nav {
		padding: 34px 20px 20px 112px;
	}
}

/* Drawer scrollable content */
.drawer-content-scroll {
	margin-top: 80px;
	height: calc(100vh - 80px);
	overflow-y: auto;
}
@media screen and (min-width: 750px) {
#drawer:checked ~ .close {
	background:none;
}
.open {
	display: none;
}
.drawer_logo_svg{
	display: none;
}
.drawer-header-fixed {
	display: none;
}
.drawer-content-scroll {
	margin-top: 0;
	height: auto;
}
}
/************************************
****** header
************************************/
.header{
	display: none;
	position: fixed;
	z-index: 1000;
	width: 100%;
	height: auto;
	padding-bottom: 80px;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	overflow-y: scroll;
	background: #000;
}
.header_border{
	display: none;
}
.head_nav{
	width: 100%;
	height: auto;
	display: block;
	padding: 20px;
	border-bottom-right-radius: none;
	transition: 0.3s ease-out;
	pointer-events: auto;
}
.head_nav:has(.gnavi1:hover),
.head_nav:has(.gnavi2:hover),
.head_nav:has(.gnavi4:hover){
	height: 100%;
}
.head_nav:hover{
	width: 100%;
}
h1 {
	position: fixed;
	z-index: 1000;
	width: 80px;
	top: 20px;
	left: 20px;
}
h1 img {
	opacity: 1;
	transition: .3s;
	filter: drop-shadow(0 0 20px rgba(0, 0, 0, 0.1));
}
h1:hover img {
	opacity: 0.7;
}
h1 a{
	position: absolute;
	z-index: 3;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.h1_logo{
	width: 80px;
}
.h1_logo_svg{
	display: block;
	width: 80px;
	height: 29px;
	transition: .3s;
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJsb2dvIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDExOS42IDQxLjciPiAgPGRlZnM+IDxzdHlsZT4gLnN0MCB7IGZpbGw6ICNmZmY7IH0gPC9zdHlsZT4gPC9kZWZzPiA8Zz4gPHBhdGggY2xhc3M9InN0MCIgZD0iTTEwOC4xLDBoMHMwLDAsMCwwaC03LjRsLTExLjUsMjguMWg3LjRsMi40LTUuOWgxMC44bDIuNCw1LjloNy40TDEwOC4xLDBaTTEwMS4zLDE2LjRsMy03LjRoMHMzLDcuNCwzLDcuNGgtNi4xWiIvPiA8cG9seWdvbiBjbGFzcz0ic3QwIiBwb2ludHM9IjYuOCAxMC41IDYuOCA2IDIzLjUgNiAyMy41IDAgMy43IDAgMCAzLjkgMCAxMi44IDMuNyAxNi42IDE4LjMgMTYuNiAxOC4zIDIyLjEgMCAyMi4xIDAgMjguMSAyMS40IDI4LjEgMjUuMiAyNC4yIDI1LjIgMTQuNCAyMS40IDEwLjUgNi44IDEwLjUiLz4gPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSI2OC4xIDAgNjEuMyAwIDYxLjMgMjguMSA4NS45IDI4LjEgODUuOSAyMi4xIDY4LjEgMjIuMSA2OC4xIDAiLz4gPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSI0OC45IDAgNDIuNSAxMS40IDQyLjUgMTEuNCAzNi4zIDAgMjguMyAwIDM5IDE4IDM5IDI4LjEgNDYuMSAyOC4xIDQ2LjEgMTggNTYuOSAwIDQ4LjkgMCIvPiA8L2c+IDxnPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNjYuNSwzMS45aDEuNHYzaDQuMnYtM2gxLjR2Ny40aC0xLjR2LTMuMWgtNC4ydjMuMWgtMS40di03LjRaIi8+IDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik03NS42LDM2LjZjMC0yLC44LTIuOCwzLTIuOHMyLjkuNywyLjksMi44LS44LDIuOC0yLjksMi44LTMtLjgtMy0yLjhaTTgwLjEsMzYuNmMwLTEuMi0uNC0xLjYtMS42LTEuNnMtMS42LjQtMS42LDEuNi40LDEuNiwxLjYsMS42LDEuNi0uNCwxLjYtMS42WiIvPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNODMuNCwzMS45aDEuNHY3LjRoLTEuNHYtNy40WiIvPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNODcuMSwzNi44YzAtMS45LjctMi42LDIuMy0yLjZzMS4zLjEsMS45LjV2LTIuN2gxLjR2Ny40aC0xdi0uNWMtLjkuNC0xLjUuNi0yLjMuNi0xLjcsMC0yLjMtLjgtMi4zLTIuN1pNOTEuNCwzNy45di0yLjFjLS42LS4zLTEtLjQtMS42LS40LTEsMC0xLjMuNC0xLjMsMS41cy4zLDEuNSwxLjMsMS41LDEtLjEsMS42LS40WiIvPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNOTUuNSwzMS44aDEuNXYxLjNoLTEuNXYtMS4zWk05NS41LDM0aDEuNHY1LjNoLTEuNHYtNS4zWiIvPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNOTkuNywzNGgxdi41Yy45LS41LDEuNS0uNiwyLjItLjYsMS40LDAsMiwuNiwyLDEuOXYzLjVoLTEuNHYtMy4xYzAtLjgtLjMtMS4xLTEtMS4xcy0uOS4xLTEuNS41djMuOGgtMS40di01LjNaIi8+IDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0xMDcuMyw0MS40di0xLjJjLjguMiwxLjMuMywyLC4zLDEuMywwLDEuNy0uMywxLjctMS4zdi0uNGMtLjYuNC0xLjIuNS0xLjkuNS0xLjcsMC0yLjMtLjgtMi4zLTIuOHMuNy0yLjgsMi4zLTIuOCwxLjQuMiwyLjEuNnYtLjVoMS4ydjUuM2MwLDEuNy0uOCwyLjQtMywyLjRzLTEuNCwwLTIuMS0uM1pNMTExLjEsMzcuOHYtMi4zYy0uNi0uMy0xLS41LTEuNi0uNS0xLDAtMS4zLjQtMS4zLDEuNnMuMywxLjYsMS4zLDEuNiwxLS4xLDEuNi0uNVoiLz4gPHBhdGggY2xhc3M9InN0MCIgZD0iTTExNC41LDM5LjF2LTEuMmMuOS4zLDEuNS40LDIuNS40czEuMy0uMSwxLjMtLjUtLjItLjUtMS0uNmgtLjhjLTEuNC0uMi0xLjktLjYtMS45LTEuN3MuNy0xLjcsMi42LTEuNywxLjQsMCwyLjIuM3YxLjFjLS45LS4yLTEuNC0uMy0yLjItLjNzLTEuMi4xLTEuMi41LjIuNCwxLC41aC44YzEuNC4yLDEuOS42LDEuOSwxLjdzLS42LDEuNy0yLjcsMS43LTEuOCwwLTIuNC0uM1oiLz4gPC9nPjwvc3ZnPg==")!important;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 80px;
}
.-inverted .h1_logo_svg{
	filter: invert(1)!important;
}

.toggle {
	display: none;
}
.head_nav_wrap{
	position: relative;
	display: flex;
	height: 100%;
	overflow-y: scroll;
}
.drawer_half{
	position: relative;
	width: 50%;
	padding: 0 12px;
}
.drawer_half::before{
	content: "";
	position: absolute;
	z-index: 1;
	width: 1px;
	height: 100%;
	background: rgba(255,255,255,0.2);
	left: 1px;
}
.head_nav_sp_bt a{
	display: block;
	position: relative;
	width: fit-content;
	padding: 4px 12px 4px 0;
	color: #fff;
	margin-top: 18px;
	font-size: 3.8vw;
	line-height: 6vw;
	transition: .3s;
}
.head_nav_sp_bt a:hover {
    color: #1a87d3;
}
.Label {
	position: static;
	padding: 4px 12px 4px 22px;
	width: fit-content;
	display: block;
	color: #fff;
	margin-top: 18px;
	transition: all .3s;
}
.Label:hover {
    color: #1a87d3;
}
.Label,
.content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	font-size: 3.8vw;
	line-height: 6vw;
}
.content {
	height: 0;
	margin-bottom:0;
	padding:0 12px 0 0;
	overflow: hidden;
	background: #000;
	border-left: 3px solid #fff;
}
.Label::before{
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 3px;
	height: 100%;
	background: #fff;
	transition: .3s;
	opacity: 0;
}
.Label:hover::before,
.toggle:checked + .Label::before{
	opacity: 1;
}
.toggle:checked + .Label {
	line-height: 8vw;
}
.toggle:checked + .Label + .content {
	height: auto;
	padding:0 12px 0 32px;
	line-height: 8vw;
}
.gnavi__wrap {
	display: none;
	width: fit-content;
    margin: 0 auto;
}
.gnavi__lists {
    display: block;
	transition: .8s;
}
.gnavi__lists:has(.gnavi__list a:hover) {
	border-bottom: 1px solid #222;
}
.gnavi1,
.gnavi2,
.gnavi3,
.gnavi4,
.gnavi5{
	width: 100%;
}
.gnavi__list {
    position: relative;
    transition: all .3s;
}
.gnavi__list:hover::before {
    background-color: #0071BB;
}
.gnavi__list a {
	position: relative;
	display: block;
    text-decoration: none;
    color: #fff;
    font-size: 11px;
	line-height: 24px;
    letter-spacing: 0.2em;
    font-weight: 700;
    transition: all .3s;
	pointer-events: auto;
	padding: 0 0 12px 4px;
}
.gnavi__list:hover a {
    color: #1a87d3;
}
.gnavi__list:hover::before {
	position: absolute;
    content: "";
	width: 100%;
	height: 2px;
	background: #fff;
	bottom: 0;
	left: 0;
	animation:gnavi_border 0.8s ease;
}
@keyframes gnavi_border {
from {
width: 0%;
}
to {
width: 100%;
}
}
.dropdown__lists {
	position: absolute;
    display: none;
	width: inherit!important;
    top: 36px;
    left: 0;
	text-align: left;
}
.gnavi__list:hover .dropdown__lists {
    display: block;
	 transition: all .3s;
}
.dropdown__list a {
	width: fit-content;
    display: flex;
    color: #fff!important;
    text-decoration: none;
	position: static;
	text-align: left;
	white-space: nowrap;
	padding: 2px 0;
	transition: .5s;
}
.dropdown__list:first-child a {
	padding-top: 0;
}
.dropdown__list a .gnavi_jp{
	font-size: 3vw;
	color: #808080;
	margin-left: 8px;
	transition: .5s;
}
 html[lang="en-US"] .dropdown__list a .gnavi_jp{
	display: none;
}
 html[lang="en-US"] .drawer_content .dropdown__list a .gnavi_jp{
	display: block!important;
}
.dropdown__list a:hover {
    color: #1a87d3!important;
}
.dropdown__list a:hover .gnavi_jp{
	color: #1a87d3!important;
}
ul.head_nav_sub{
	display: block;
	padding: 60px 0 30px 24px;
}
ul.head_nav_sub li{
	padding: 0 0;
	font-size: 0;
}
ul.head_nav_sub li a{
	color: #fff;
	font-size: 3vw;
	line-height: 8vw;
	transition: .3s;
}
ul.head_nav_sub li a:hover {
    color: #1a87d3;
}
.lang_bt_wrap,
.gtranslate_wrapper{
	position: static;
	padding: 0 0 0 32px;
}
.lang_bt_wrap ul li,
.gtranslate_wrapper ul li{
	display: inline-block;
	font-size: 0;
	line-height: 0;
}
.lang_bt_wrap ul li:first-child,
.gtranslate_wrapper ul li:first-child{
	border-right: 1px dotted rgba(255,255,255,0.3);
}
.lang_bt_wrap ul li a,
.lang_bt_wrap a,
.lang_bt_wrap button,
.lang_bt_wrap input,
.gtranslate_wrapper ul li a{
	color: #fff!important;
	font-size: 3.5vw!important;
	line-height: 6vw!important;
	padding: 8px 10px!important;
	transition: .3s!important;
}
.-inverted .lang_bt_wrap ul li:first-child,
.head_nav:hover + .lang_bt_wrap ul li:first-child{
	border-right: 1px dotted rgba(255,255,255,0.3);
}
.-inverted .lang_bt_wrap ul li a,
.-inverted .lang_bt_wrap a,
.head_nav:hover + .lang_bt_wrap ul li a,
.head_nav:hover + .lang_bt_wrap a{
	color: #fff!important;
}
.lang_bt_wrap ul li a:hover,
.lang_bt_wrap a:hover,
.-inverted .lang_bt_wrap ul li a:hover,
.-inverted .lang_bt_wrap a:hover{
    color: #1a87d3!important;
}


.bogo-language-switcher {
	position: static;
	padding: 0 0 0 32px;
  display: flex;
  align-items: center;
  gap: 0.3em;
}
.t-headerCenter .menuBtn__link::after {
  content: "LANG";
}
.widget > ul.bogo-language-switcher {
  border: none;
  text-align: center;
}
ul.bogo-language-switcher li {
  display: inline-block;
	font-size: 0;
	line-height: 0;
  cursor: pointer;
}
ul.bogo-language-switcher li:first-child{
	border-right: 1px dotted rgba(255,255,255,0.3);
}
ul.bogo-language-switcher li.current {
}
ul.bogo-language-switcher li span {
	font-size: 0;
	line-height: 0;
}
ul.bogo-language-switcher li a {
  color: #fff!important;
	font-size: 3.5vw!important;
	line-height: 6vw!important;
	padding: 8px 10px!important;
	transition: .3s!important;
}
ul.bogo-language-switcher li a:hover{
    color: #1a87d3!important;
}
@media screen and (min-width: 750px) {
.header{
	background: none;
	display: block;
	height: fit-content;
	padding-bottom:0;
	overflow-y: hidden;
}
.head_nav_wrap{
	display: none;
}
.header_border{
	display: block;
	width: 7px;
	height: 22px;
	margin: 0 20px 0 32px;
}	
.head_nav{
	width: 100%;
	max-width: 1042px;
	height: auto;
	display: flex;
	background: #000;
	padding: 34px 48px 20px 112px;
	border-bottom-right-radius: 12px;
	transition: 0.3s ease-out;
	pointer-events: none;
}
.head_nav:has(.gnavi_list2:hover) {
	height: 155px;
}
.head_nav:has(.gnavi_list3:hover) {
	height: 210px;
}
.head_nav:has(.gnavi_list4:hover) {
	height: 210px;
}
.head_nav:has(.gnavi_list5:hover) {
	height: 235px;
}
.head_nav:has(.gnavi_list6:hover) {
	height: 265px;
}
.head_nav:has(.gnavi_list7:hover) {
	height: 295px;
}
.head_nav:has(.gnavi_list8:hover) {
	height: 325px;
}
.head_nav:has(.gnavi_list9:hover) {
	height: 376px;
}
h1 {
	width: 80px;
	z-index: 1001;
	top: 34px;
	left: 40px;
}
.-inverted .h1_logo_svg{
	filter: invert(0)!important;
}
.Label {
	display: none;
}
.content {
	display: none;
}
.dropdown__list:first-child a {
	padding-top: 12px;
}
.gnavi__wrap {
	display: block;
}
.gnavi__lists {
    display: flex;
    gap: clamp(20px, calc(8px + 1.67vw), 42px);
}
.gnavi1,
.gnavi2,
.gnavi_results,
.gnavi3,
.gnavi4,
.gnavi5,
.gnavi6{
	width: auto;
}
/* トップレベルメニューのレイアウト */
.gnavi__list > a {
	display: flex;
	flex-direction: column;
	gap: 6px;
}
/* 英語テキストのスタイル */
.gnavi__list > a .gnavi_en {
	font-size: clamp(13px, calc(11px + 0.26vw), 16px);
	line-height: 1;
	letter-spacing: 0.6px;
	color: #ffffff;
	font-weight: 400;
}
/* 日本語テキストのスタイル */
.gnavi__list > a .gnavi_jp {
	font-size: 11px;
	line-height: 1;
	letter-spacing: 1.54px;
	color: #f8fafc;
	font-weight: 300;
	font-family: "Helvetica Neue", "Noto Sans JP", sans-serif;
}
/* ドロップダウンメニューの日本語テキスト */
.dropdown__list a .gnavi_jp{
	font-size: 10px;
	line-height: 24px;
}
ul.head_nav_sub{
	display: none;
}
.lang_bt_wrap,
.gtranslate_wrapper{
	position: absolute!important;
	top:29px!important;
	right: 36px!important;
}
.lang_bt_wrap ul li a,
.lang_bt_wrap a{
	font-size: 11px;
	line-height: 16px;
}
.-inverted .lang_bt_wrap ul li:first-child {
	border-right: 1px dotted #000;
}
.-inverted .lang_bt_wrap ul li a,
.-inverted .lang_bt_wrap a{
	color: #000!important;
}

.bogo-language-switcher {
	position: absolute!important;
	top:29px!important;
	right: 36px!important;
}
ul.bogo-language-switcher li a {
	font-size: 11px;
	line-height: 16px;
}
}
/************************************
****** top
************************************/
.top_fv{
	display: block;
  position:static;
	width: 100%;
	height: 100vh;
	z-index: 1;
	overflow: hidden;
	clip-path: inset(0);
}
.top_fv2{
	display: block;
  position:relative!important;
	width: 100%;
	height: 100vh;
	z-index: 1;
	overflow: hidden;
	clip-path: inset(0);
}
html:has(.top_fv_special),
body:has(.top_fv_special),
.container:has(.top_fv_special){
	min-height: 100svh;
	min-height: -webkit-fill-available;
	overflow: hidden;
}
.top_fv_special{
	min-height: 100svh;
	min-height: -webkit-fill-available;
}
.top_fv_short{
	position: relative!important;
	max-height: 360px!important;
}
.video-box {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100vh;
}
.kv01 {
  position: fixed;
  overflow: hidden;
	z-index: -1;
  width: 100%;
  height: 100%;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	min-height: auto;
	max-height: auto;
	background-size: cover;
	background-position: center center;
}
.kv02 {
  position: fixed;
  overflow: hidden;
	z-index: -1;
  width: 100%;
  height: 100vh;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	min-height: auto;
	max-height: auto;
	background-size: cover;
	background-position: center center;
}
.kv01_short{
	bottom: auto;
	max-height: 360px!important;
}
.video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.overlay::after {
  position: absolute;
	z-index: 1;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: rgba(0, 0, 0, 0.4);
}
.text-box {
  position: absolute;
	z-index: 2;
  top: 47%;
  left: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
h2 {
	font-size: 5.4vw;
	line-height: 10.8vw;
	font-weight: bold;
	text-align: center;
	color: #fff;
	letter-spacing: 0.5em;
}
h2.fv_title_en_wh{
	max-width: 800px;
	width: 96%;
	margin: 0 auto;
}
.kv_inner {
	position: static;
	z-index: 2;
	margin: auto;
	max-width: auto;
	width: 76%;
	padding: 160px 0 80px;
	display: block;
	color: #fff;
}
.kv_inner2 {
	position: static;
	z-index: 2;
	margin: auto;
	max-width: auto;
	width: 76%;
	padding: 160px 0 80px;
	display: block;
	color: #fff;
}
.kv_text{
	width: 100%;
	font-size: 16px;
	line-height: 34px;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
	padding: 0;
}
.kv_text h2{
	position: relative;
	display: block;
	text-align: left;
	font-size: 38px;
	line-height: 48px;
	font-weight: 300;
	letter-spacing: 0;
	margin-bottom: 28px;
}
.kv_text h2.lil_small{
	font-size: 32px;
	line-height: 42px;
}
 html[lang="en-US"] .kv_text h2{
	font-size: 34px;
	line-height: 42px;
	margin-bottom: 22px;
}
.kv_text h2::before {
	position: absolute;
	z-index: 1;
	content: "";
	width: 40%;
	height: 1px;
	background: rgba(255,255,255,0.6);
	top: -40px;
	left: 0;
}
.kv_text_read{
	width: 100%;
	font-size: 18px;
	line-height: 30px;
	letter-spacing: 0.1em;
	margin-top: -16px;
	margin-bottom: 12px;
}
 html[lang="en-US"] .kv_text_read{
	 font-size: 17px;
	line-height: 24px;
}
.kv_text_sub{
	width: 100%;
	font-size: 13px;
	line-height: 24px;
}
 html[lang="en-US"] .kv_text_sub{
	 font-size: 12px;
	line-height: 20px;
}
.kv_text_sub_business1_1{
	width: 100%;
	font-size: 13px;
	line-height: 24px;
}
.kv_text_sub_business1_2{
	width: 100%;
	font-size: 13px;
	line-height: 24px;
}
.kv_h2_sub{
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.2em;
	padding: 0 0 0 4px;
}
.kv_nav01{
	width: 100%;
}
.kv_nav01 ul li a{
	position: relative;
	width: 100%;
	display: block;
	background: #000;
	font-size: 10px;
	line-height: 20px;
	padding: 24px 18px;
	margin-bottom: 3px;
	letter-spacing: 0.15em;
	color: #666;
	transition: .3s;
	cursor: pointer;
	font-weight: 400;
}
.kv_nav01 ul li a:hover{
	background: #0062a6;
	color: #fff;
}
.kv_nav01 ul li.current a{
	background: #fff;
	color: #000;
}
.kv_nav01 ul li a::after{
	content: "";
	position: absolute;
	display: block;
	z-index: 2;
	right: 18px;
	top: 32px;
	margin: auto;
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 7px solid #fff;
	transition: .3s;
}
.kv_nav01 ul li.current a::after{
	border-left: 7px solid #000;
}
.kv_nav01 ul li a p{
	display: inline-block;
}
.kv_nav01 ul li a p.kv_nav_en{
	font-size: 11px;
	line-height: 20px;
	font-weight: 500;
	color: #fff;
	margin-right: 8px;
	transition: .3s;
}
.kv_nav01 ul li a:hover p.kv_nav_en{
	font-weight: 700;
}
.kv_nav01 ul li.current a p.kv_nav_en{
	font-weight: 700;
	color: #000;
}
@media screen and (min-width: 750px) {
.top_fv_short{
	max-height: 600px!important;
}
.kv01 {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100vh;
	background-size: cover;
	background-position: center center;
}
.kv02 {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100vh;
	background-size: cover;
	background-position: center center;
}
.kv01_short{
	max-height: 600px!important;
}
.text-box {
  top: 50%;
}
h2 {
	font-size: 20px;
	line-height: 42px;
	letter-spacing: 0.6em;
}
.kv_inner {
	position: absolute;
	z-index: 2;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-width: 1000px;
	width: 91%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	color: #fff;
}
.kv_inner2 {
	margin: auto;
	max-width: 1000px;
	width: 91%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	color: #fff;
}
.kv_text h2.lil_small{
	font-size: 38px;
	line-height: 48px;
}
.kv_text h2::before {
	content: none;
}
.kv_text{
	width: calc(100% - 310px);
	font-size: 16px;
	line-height: 34px;
	letter-spacing: 0.1em;
	padding: 0 0 40px;
}
.kv_text_read{
	font-size: 18px;
	line-height: 35px;
	margin-top: -10px;
	margin-bottom: 16px;
}
.kv_text_sub{
	width: 84%;
	min-width: 400px;
	max-width: 560px;
	font-size: 12px;
	line-height: 26px;
}
.kv_text_sub_business1_1{
	width: 100%;
	min-width: 340px;
	max-width: 470px;
	font-size: 12px;
	line-height: 26px;
}
.kv_text_sub_business1_2{
	width: 83%;
	min-width: 340px;
	max-width: 480px;
	font-size: 12px;
	line-height: 26px;
}
.kv_nav01{
	width: 310px;
}
}
@media screen and (min-width: 1000px) {
h2 {
	font-size: 32px;
}
}
/************************************
******  business1
************************************/
.business1_wrap{
	padding-bottom: 200px;
}
.business_box{
	width: 100%;
	min-width: auto;
	padding: 12px;
	background: rgba(255,255,255,0.9);
	margin: 12px 0 0;
}
.business_box_count{
	text-align: center;
	color: #000;
	font-size: 12px;
	line-height: 20px;
	padding: 8px 0;
	border-bottom: 1px solid rgba(197,197,197,0.8);
}
.business_box_head{
	font-size: 13px;
	line-height: 26px;
	vertical-align: middle;
}
.business_box_below{
	width: 100%;
	min-width: auto;
	margin: 12px 0 0;
	font-size: 10px;
	line-height: 16px;
	font-weight: 500;
}
.count_number1{
	font-size: 30px;
	line-height: 42px;
	font-weight: 400;
	margin: 0 3px 0 6px;
	letter-spacing: 0;
	vertical-align: middle;
}
.business_icon_person{
	width: 18px;
	display: inline-block;
	vertical-align: middle;
	margin: 0 6px 0 0;
}
.business_icon_chart{
	width: 22px;
}
a.business_box_link{
	position: relative;
	background: #000;
	color: #fff;
	display: block;
	text-align: center;
	padding: 23px 0;
	font-size: 12px;
	line-height: 20px;
	transition: .3s;
}
a.business_box_link .logo_syla_wh{
	max-width: 64px;
	width: 20%;
	margin: 0 auto;
}
a.business_box_link .logo_solar_wh{
	max-width: 130px;
	width: 40%;
	margin: 0 auto;
}
a.business_box_link::after{
	content: "";
	position: absolute;
	z-index: 2;
	right: 18px;
	top: 30px;
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 8px solid #fff;
	transition: .3s;
}
a.business_box_link:hover{
	background: #0062a6;
}
a.business_box_link:hover::after{;
}
.business_fv{
	display: block;
	position:relative;
	width: 100%;
	height: 100vh;
	z-index: 1;
	overflow: hidden;
	clip-path: inset(0);
}
.business_fv_business1{
	display: block;
	position:relative;
	width: 100%;
	height: auto;
	z-index: 1;
	overflow: hidden;
	clip-path: inset(0);
}
.business_kv{
  position: fixed;
	z-index: -1;
  width: 100%;
  height: 100vh;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-height: auto;
	background-size: cover;
	background-position: center center;
}
.business1_1_kv{
  position: fixed;
	z-index: -1;
  width: 100%;
  height: auto;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-height: auto;
	background-size: cover;
	background-position: center center;
}
.kv_business480 {
	min-height: 480px!important;
}
.kv_business700 {
	min-height: 700px!important;
}
.kv_business800 {
	min-height: 800px!important;
}
.kv_business1000 {
	min-height: 1000px!important;
}
.business_inner {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	max-width: auto;
	padding: 100px 0 0;
	width: 76%;
	height: fit-content;
	display: block;
	color: #fff;
	margin: auto;
}
.business_inner_business1_1 {
	position: static;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	max-width: auto;
	padding: 30% 0 65%;
	width: 76%;
	height: fit-content;
	display: block;
	color: #fff;
	margin: auto;
}
.business1_1_pic{
	position: absolute;
	max-width: 483px!important;
	width: 70%;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	margin: -15% auto 0;
}
.kv_text_business{
	padding: 0!important;
}
.business1_2_pic{
	position: absolute;
	z-index: 1;
	width: 66%;
	max-width: 624px;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
}
.kv_business600 {
	min-height: 600px!important;
	max-height: none!important;
}
@media screen and (min-width: 750px) {
.business1_1_pic{
	position: absolute;
	z-index: -1;
	width: 42%;
	min-width: 320px;
	left: auto;
	right: -13%;
	top: 0;
	bottom: 0;
	margin: auto;
}
.business_box{
	width: 70%;
	min-width: 310px;
	max-width: 480px;
	margin: 24px 0 0;
}
.business_box_below{
	width: 70%;
	min-width: 310px;
	max-width: 480px;
}
.business_inner_business1_1 {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	max-width: auto;
	padding: 160px 0 0;
	width: 76%;
	height: auto;
	display: block;
	color: #fff;
	margin: auto;
}
.kv_business600 {
	min-height: 600px!important;
	max-height: 1500px!important;
}
.business1_2_pic{
	position: absolute;
	z-index: 1;
	width: 65%;
	max-width: 624px;
	left: 52%;
	bottom: 0;
}
}
@media screen and (min-width: 950px) {
.business1_1_pic{
	right: 0;
}
}
/************************************
******  content
************************************/
.wh_wrap{
	background: #fff;
}
.content_footer_padding{
	padding-top: 12px;
}
.content_head40{
	padding-top: 14%;
}
.content_head60{
	padding-top: 16%;
}
.content_head80{
	padding-top: 18%;
}
.content_head100{
	padding-top: 20%;
}
.content_head120{
	padding-top: 22%;
}
h3{
	display: block;
	padding-bottom: 6%;
}
@media screen and (min-width: 750px) {
.content_footer_padding{
	padding-top: 40px;
}
.content_head40{
	padding-top: 40px;
}
.content_head60{
	padding-top: 60px;
}
.content_head80{
	padding-top: 80px;
}
.content_head100{
	padding-top: 100px;
}
.content_head120{
	padding-top: 120px;
}
h3{
	padding-bottom: 50px;
}
}

h3 p{
	display: inline-block;
	font-size: 22px;
	line-height: 32px;
	font-weight: 300;
	margin: 0 0 0 0;
	vertical-align: middle;
}
h3 p.content_h3_jp{
	font-size: 12px;
	line-height: 20px;
	margin-left: 28px;
	font-weight: 400;
}
h3 p.content_h3_jp_large{
	font-size: 18px;
	line-height: 20px;
	margin-left: 28px;
	font-weight: 400;
}
/************************************
******  company1
************************************/
table.list01 {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
}
table.list01 a {
	color: #000;
}
table.list01 tbody{
	width: 100%;
	display: block;
}
table.list01 tr{
	display: block;
	width: 100%!important;
	text-align: left;
	border-bottom: 1px solid #d9d9d9;
	padding: 32px 0;
}
table.list01 th,
table.list01 td{
	display: block;
	width: 100%;
	font-weight: normal;
}
table.list01 th{
	font-size: 11px;
	line-height: 20px;
	margin-bottom: 4px;
}
table.list01 td{
	font-size: 14px;
	line-height: 28px;
}
table.company_member_detail{
	width: 100%;
	
}
table.company_member_detail tr{
	padding: 0!important;
	margin: 0!important;
	display: flex;
	align-items: center;
	gap:12px;
	border-bottom: none;
}
table.company_member_detail th,
table.company_member_detail td{
	display: block;
	margin: 0!important;
}
table.company_member_detail th{
	min-width: 40%;
	width: 40%;
	padding: 8px 0 8px 0;
}
table.company_member_detail td{
	min-width: 60%;
	width: 60%;
	padding: 8px 0 8px 0;
}
.access_wrap{
	display: block;
}
.access_text,
.access_map{
	width: 100%;
}
.access_text{
	margin-bottom: 24px;
}
.g_map {
  position: relative;
  width: 110%;
	margin-left: -5%;
  height: 0;
  padding-top: 360px;
}
.g_map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
	filter: brightness(0.7) contrast(5) grayscale(0.9) invert(0.9) ;
}
.group_wrap{
	display: block;
	padding: 0 0 2px;
}
.group_box{
	width: 100%;
	padding: 0 0 6px;
	border-bottom: 1px solid #d9d9d9;
	margin-bottom: 32px;
}
.group_box a{
	width: 100%;
	position: relative;
	color: #000;
	transition: .3s;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.group_box a::before{
	content: "";
	position: absolute;
	z-index: 1;
	width: 18px;
	height: 18px;
	right: 0;
	bottom: 32px;
	background: #000;
	border-radius: 50%;
	transition: .3s;
}
.group_box a:hover::before{
	background: #1a87d3;
}
.group_box a::after{
	content: "";
	position: absolute;
	z-index: 2;
	right: 6px;
	bottom: 38px;
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 4px solid #fff;
}
.group_box a:hover{
	color: #1a87d3;
}
.group_text h4{
	font-size: 12px;
	line-height: 24px;
	font-weight: 400;
}
.group_text {
	width: 58%;
	font-size: 11px;
	line-height: 20px;
	font-weight: 300;
}
.group_img{
	width: 40%;
	border: none;
	padding: 0;
	margin: 0 0 0;
}
@media screen and (min-width: 750px) {
table.list01 tbody{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
table.list01 tr{
	width: 48%!important;
	padding: 32px 0;
}
table.list01 tr.company_member{
	width: 100%!important;	
}
table.list01 th{
	font-size: 12px;
	line-height: 22px;
	margin-bottom: 12px;
}
table.list01 td{
	font-size: 15px;
	line-height: 32px;
}
table.company_member_detail tr{
	width: 100%!important;	
	padding: 0!important;
	margin: 0!important;
}
table.company_member_detail th,
table.company_member_detail td{
	margin: 0!important;
}
.access_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.access_text,
.access_map{
	width: 48%;
}
.g_map {
  width: 100%;
  padding-top: 360px;
	margin: 0;
}
.group_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
.group_box{
	width: 22%;
	padding: 0 0 16px;
	display: block;
	margin-bottom: 0;
}
.group_box a::before{
	bottom: 0;
}
.group_box a::after{
	bottom: 6px;
}
.group_text {
	width: 100%;
}
.group_img{
	width: 100%;
	border: 1px solid #d9d9d9;
	padding: 5% 11%;
	margin: 0 0 12px;
}
}
/************************************
****** company2
************************************/
.member_head{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	max-width: auto;
	width: 100%;
	margin: 0 auto;
}
.member_below{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	align-items: stretch;
}
@media (max-width: 768px) {
	.member_below {
		gap: 0;
		justify-content: space-between;
	}
}
.member_below2{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	gap:0;
}
.member_head_box{
	position: relative;
	z-index: 1;
	width: 47%;
	margin: 24px 0;
}
.member_below_box{
	position: relative;
	z-index: 1;
	width: 47%;
	margin: 40px 0;
}
.member_below_box::after{
	position: absolute;
	z-index: 1;
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #d9d9d9;
	bottom: -20px;
}
.member_head_box a img{
	transition: .3s;
}
.member_head_box a:hover img{
	opacity: 0.8;
}
.member_head_box a::before,
.member_below_box a::before{
	position: absolute;
	z-index: 2;
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	bottom: 3px;
	right: 0;
	border: 1px solid #d9d9d9;
	background: #fff;
	transition: .6s;
}
.member_head_box a:hover::before,
.member_below_box a:hover::before{
	border: 1px solid #0062a6;
	background: #0062a6;
}
.member_head_box a::after,
.member_below_box a::after{
	position: absolute;
	z-index: 3;
	content: "+";
	display: block;
	font-size: 14px;
	line-height: 14px;
	font-weight: 300;
	bottom: 7px;
	right: 5px;
	color: #1a87d3;
	transition: .3s;
}
.member_head_box a:hover::after,
.member_below_box a:hover::after{
	color: #fff;
}
a .member_text_wrap,
.member_text_wrap{
	font-size: 10px;
	line-height: 14px;
	font-weight: 400;
	padding: 12px 0 0;
	color: #000;
	transition: .6s;
}
a:hover .member_text_wrap{
	color: #1a87d3;
}
a .member_text_wrap h4,
.member_text_wrap h4{
	font-size: 14px;
	line-height: 30px;
	font-weight: 400;
}
a .member_text_en,
.member_text_en{
	font-weight: 300;
}
.modal_inner{
	text-align: left;
	display: block;
	padding: 32px 0;
}
.member_modal_left{
	width: 100%;
	line-height: 24px!important;
	padding: 0 0 16px!important;
	margin-bottom: 24px!important;
	border-bottom: 1px solid #d9d9d9;
}
.member_modal_left h4{
	display: block!important;
	font-size: 16px;
	line-height: 40px;
}
.member_modal_left img{
	width: 70%!important;
	margin: 0 0 16px!important;
}
.member_modal_right{
	width: 100%;
	font-size: 13px;
	line-height: 25px;
}
@media screen and (min-width: 750px) {
.member_head{
	max-width: 716px;
	width: 80%;
}
.member_head_box{
	width: 47%;
	margin: 32px 0;
}
.member_below2{
	gap:5%;
}
.member_below_box{
	width: 30%;
	margin: 55px 0;
}
.member_head_box a::before{
	position: absolute;
	z-index: 2;
	content: "";
	display: block;
	width: 30px;
	height: 30px;
	bottom: 5px;
	right: 0;
	border: 1px solid #d9d9d9;
}
.member_head_box a::after{
	position: absolute;
	z-index: 3;
	content: "+";
	display: block;
	font-size: 18px;
	line-height: 18px;
	font-weight: 300;
	bottom: 13px;
	right: 9px;
	color: #1a87d3;
}
a .member_text_wrap,
.member_text_wrap{
	font-size: 12px;
	line-height: 24px;
	font-weight: 400;
	padding: 12px 0 0;
}
a .member_text_wrap h4,
.member_text_wrap h4{
	font-size: 18px;
	line-height: 24px;
	font-weight: 400;
}
a .member_text_en,
.member_text_en{
	font-weight: 300;
}
.modal_inner{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	padding: 40px 8px;
}
.member_modal_left{
	width: 38%;
	line-height: 32px!important;
	padding: 0 0 24px!important;
	border-bottom: 1px solid #d9d9d9;
	margin-bottom: 0;
}
.member_modal_left h4{
	font-size: 20px;
	line-height: 26px;
}
.member_modal_left img{
	width: 100%!important;
	margin-bottom: 16px!important;
}
.member_modal_right{
	width: 56%;
	font-size: 14px;
	line-height: 30px;
}
}
/************************************
****** company3
************************************/
.philosophy_head{
	display: block;
	margin: 2% 0 40px;
}
.philosophy_head_left{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin: 0 0 40px;
}
.philosophy_head_left img{
	width:42%;
}
.philosophy_head_left .member_text_wrap{
	width:54%;
}
.philosophy_head_right{
	width: 100%;
	padding: 0 0 0 0;
}
.philosophy_head_right h4{
	font-size: 19px;
	line-height: 38px;
	font-weight: 400;
	margin: 0 0 28px;
}
.philosophy_part{
	display: block;
	margin: 0 0 50px;
}
.sustainability_head{
	display: block;
	margin: 40px 0 90px;
}
.philosophy_left{
	width: 100%;
	font-size: 20px;
	font-weight: 300;
	margin-bottom: 16px;
}
.sustainability_left{
	width: 100%;
	font-size: 26px;
	font-weight: 400;
	margin-bottom: 24px;
}
.sustainability_mid_tit{
	width: 100%;
	font-size: 26px;
	font-weight: 400;
	margin:120px 0 56px;
}
.philosophy_number{
	position: relative;
	z-index: 1;
	font-size: 15px;
}
.philosophy_number p{
	width: fit-content;
	background: #fff;
	padding: 0 8px 0 0;
}
.philosophy_number::after{
	position: absolute;
	z-index: -1;
	content: "";
	display: block;
	width: 150px;
	height: 1px;
	background: #d9d9d9;
	top: 0;
	bottom: 0;
	margin: auto;
}
.philosophy_right{
	width: 100%;
}
.sustainability_right{
	width: 100%;
}
.philosophy_right h4{
	font-size: 19px;
	line-height: 38px;
	font-weight: 400;
}
.philosophy_right a{
	text-decoration: underline;
}
.sustainability_box_wrap{
	display: block;
}
.sustainability_box{
	width: 100%;
	color: #fff;
	font-size: 14px;
	line-height: 28px;
	padding: 46px 26px 50px;
	margin: 0 0 20px;
}
.bg_blue1{
	background: #002d65;
}
.bg_blue2{
	background: #004d82;
}
.bg_blue3{
	background: #006ebb;
}
.sustainability_number{
	font-size: 26px;
	line-height: 26px;
	width: 42px;
	text-align: center;
	border-bottom: 1px solid rgba(255,255,255,0.5);
	padding: 0 0 6px;
	margin: 0 0 16px;
	font-weight: 300;
}
.sustainability_system{
	max-width: 687px;
	margin: 0 auto;
}
a.sustainability_report{
	display: block;
	border: 1px solid #a0b6c5;
	position: relative;
	text-align: center;
	font-size: 16px;
	line-height: 20px;
	padding: 5% 0;
	color: #000;
	font-weight: 300;
	transition: .3s;
	margin: 60px 0 0;
}
a.sustainability_report:hover{
	color: #1a87d3;
}
a.sustainability_report::before{
	position: absolute;
	z-index: 1;
	content: "";
	width: 30px;
	height: 30px;
	right: 5%;
	top: 0;
	bottom: 0;
	margin: auto;
	background: url("../img/icon_arrow.webp")no-repeat center center,#002d65;
	background-size: cover,auto;
	border-radius: 50%;
	transition: .3s;
}
a.sustainability_report:hover::before{
	background: url("../img/icon_arrow.webp")no-repeat center center,#0062a6;
	background-size: cover,auto;
}
.sustainability_report_thumb{
	position: absolute;
	width: 20%;
	left: 3%;
	top: 0;
	bottom: 0;
	margin: auto;
}
@media screen and (min-width: 750px) {
.philosophy_head{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	margin: 12px 0 80px;
}
.philosophy_head_left{
	width: 300px;
	display: block;
	margin: 0;
}
.philosophy_head_left img{
	width:100%;
}
.philosophy_head_left .member_text_wrap{
	width:100%;
}
.philosophy_head_right{
	width: calc(100% - 300px);
	padding: 0 0 0 42px;
}
.philosophy_head_right h4{
	font-size: 26px;
	line-height: 48px;
}
.philosophy_part,
.sustainability_head{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.sustainability_head{
	margin-bottom: 55px;
}
.philosophy_left{
	width: 250px;
}
.sustainability_left{
	width: 300px;
}
.philosophy_right{
	width: calc(100% - 250px);
}
.sustainability_right{
	width: calc(100% - 300px);
}
.philosophy_right h4{
	font-size: 26px;
	line-height: 48px;
}
.sustainability_box_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
.sustainability_box{
	width: 31.2%;
}
.sustainability_number{
	font-size: 22px;
	line-height: 32px;
}
.sustainability_system{
	max-width: 1000px;
}
a.sustainability_report{
	font-size: 26px;
	line-height: 36px;
	margin: 140px 0 0;
}
a.sustainability_report::before{
	width: 52px;
	height: 52px;
	right: 5%;
}
.sustainability_report_thumb{
	width: 16%;
	left: 3.6%;
}
}
/************************************
******  ir
************************************/
.top_fv_ir{
	min-height: 800px;
}
.kv01_ir{
	background-image: url("../img/fv_ir_bg_sp.webp");
	min-height: 800px;
}
.kv_text_ir{
	width: 100%;
}
.kv_nav02 ul{
	width: 120%;
	margin: 0 0 0 -10%;
	max-width: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap:1%;
	
}
.kv_nav02 ul li{
	display: block;
	width: 49.5%!important;
}
.kv_nav02 ul li a{
	position: relative;
	width: 100%;
	display: block;
	background: #000;
	font-size: 11px;
	line-height: 20px;
	padding: 20px 12px;
	margin-bottom: 3px;
	letter-spacing: 0.15em;
	color: #fff;
	transition: .3s;
	cursor: pointer;
	font-weight: 500;
}
.kv_nav02 ul li a:hover{
	background: #0062a6;
	color: #fff;
}
.kv_nav02 ul li.current a{
	background: #fff;
	color: #000;
}
.kv_nav02 ul li a::after{
	content: "";
	position: absolute;
	display: block;
	z-index: 2;
	right: 18px;
	top: 26px;
	margin: auto;
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 7px solid #fff;
	transition: .3s;
}
.kv_nav02 ul li.current a::after{
	border-left: 7px solid #000;
}
.kv_nav02 ul li a p{
	display: inline-block;
}
.kv_nav02 ul li a p.kv_nav_en{
	font-size: 11px;
	line-height: 20px;
	font-weight: 500;
	color: #fff;
	margin-right: 8px;
	transition: .3s;
}
.kv_nav02 ul li a:hover p.kv_nav_en{
	font-weight: 700;
}
.kv_nav02 ul li.current a p.kv_nav_en{
	font-weight: 700;
	color: #000;
}
.kv_nav03 ul{
	width: 120%;
	margin: 0 0 0 -10%;
	max-width: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap:1%;
	
}
.kv_nav03 ul li{
	display: block;
	width: 49.5%!important;
}
.kv_nav03 ul li a{
	position: relative;
	width: 100%;
	display: block;
	background: #000;
	padding: 30px 12px;
	margin-bottom: 3px;
	letter-spacing: 0.15em;
	color: #fff;
	transition: .3s;
	cursor: pointer;
	font-weight: 500;
}
.kv_nav03 ul li a p{ 
	position: absolute;
	display: block;
	height: fit-content;
	font-size: 11px;
	line-height: 15px;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 0 14% 0 6%;
	margin: auto;
}
.kv_nav03 ul li a:hover{
	background: #0062a6;
	color: #fff;
}
.kv_nav03 ul li.current a{
	background: #fff;
	color: #000;
}
.kv_nav03 ul li a::after{
	content: "";
	position: absolute;
	display: block;
	z-index: 2;
	right: 18px;
	top: 26px;
	margin: auto;
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 7px solid #fff;
	transition: .3s;
}
.kv_nav03 ul li.current a::after{
	border-left: 7px solid #000;
}
.kv_nav03 ul li a p{
	display: inline-block;
}
.kv_nav03 ul li a p.kv_nav_en{
	font-size: 11px;
	line-height: 20px;
	font-weight: 500;
	color: #fff;
	margin-right: 8px;
	transition: .3s;
}
.kv_nav03 ul li a:hover p.kv_nav_en{
	font-weight: 700;
}
.kv_nav03 ul li.current a p.kv_nav_en{
	font-weight: 700;
	color: #000;
}
.ir1_h3{
	position: relative;
	z-index: 1!important;
	padding: 0;
	margin-bottom: 40px;
}
.ir1_h3 p{
	background: #fff;
	padding: 0 12px 0 0;
}
.ir1_h3::after{
	content: "";
	position: absolute;
	z-index: -1;
	display: block;
	width: 100%;
	height: 1px;
	background: #d9d9d9;
	top: 0;
	bottom: 0;
	margin: auto;
}
.ir6_text{
	font-size:inherit!important;
}
.ir6_wrap{
	border-bottom: 1px solid #d9d9d9;
	padding: 0 0 40px;
	margin: 40px 0 0;
}
a.ir7_bloomberg_bt{
	display: block;
	border: 1px solid #a0b6c5;
	position: relative;
	text-align: left;
	font-size: 13px;
	line-height: 20px;
	padding: 70px 0 20px 15px;
	color: #000;
	font-weight: 300;
	transition: .3s;
	margin: 60px 0 0;
}
a.ir7_bloomberg_bt:hover{
	color: #1a87d3;
}
a.ir7_bloomberg_bt::before{
	position: absolute;
	z-index: 1;
	content: "";
	width: 32px;
	height: 32px;
	right: 3%;
	top: 0;
	bottom: 0;
	margin: auto;
	background: url("../img/icon_arrow.webp")no-repeat center center,#000;
	background-size: cover,auto;
	border-radius: 50%;
	transition: .3s;
}
a.ir7_bloomberg_bt:hover::before{
	background: url("../img/icon_arrow.webp")no-repeat center center,#0062a6;
	background-size: cover,auto;
}
.ir7_bloomberg{
	position: absolute;
	left: 15px;
	top: 22px;
	bottom: auto;
	margin: auto;
	background: #000;
	padding: 0 0;
	width: 150px;
	height: 40px;
	color: #fff;
	font-size: 12px;
	line-height: 40px;
	font-weight: 700;
	text-align: center;
}
.ir9_bl{
	background: url("../img/ir9_bg.webp")no-repeat center center;
	background-size: cover;
	padding: 110px 0 90px!important;
}
.ir9_bl_inner{
	max-width: 1000px;
	width: 92%;
	margin: 0 auto;
	display: block;
}
.ir9_bl_left{
	width: 100%;
	color: #fff;
}
.ir9_bl_right{
	width: 100%;
	padding: 4px 0 0;
}
.ir9_bl_right ul li a{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	color: #fff;
	font-weight: 700;
	border-bottom: 1px solid rgba(255,255,255,0.2);
	padding: 0 0 28px;
	margin: 0 0 28px;
	transition: .3s;
}
.ir9_bl_right ul li a:hover{
	color: #1a87d3;
}
.ir9_bl_right ul li a p,
.ir9_bl_right ul li a .ir9_bl_bt{
	display: inline-block;
}
.ir9_bl_right ul li a p{
	width: calc(100% - 100px);
}
.ir9_bl_right ul li a .ir9_bl_bt{
	color: #1a87d3;
	font-size: 11px;
	text-align: left;
	background: rgba(26,135,211,0.2);
	padding: 2px 50px 2px 20px;
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgNTEyIDUxMiI+ICA8ZGVmcz4gPHN0eWxlPiAuc3QwIHsgZmlsbDogIzFhODdkMzsgfSA8L3N0eWxlPiA8L2RlZnM+IDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yODgsMzJDMjg4LDE0LjMsMjczLjcsMCwyNTYsMHMtMzIsMTQuMy0zMiwzMnYyNDIuN2wtNzMuNC03My40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMsMHMtMTIuNSwzMi44LDAsNDUuM2wxMjgsMTI4YzEyLjUsMTIuNSwzMi44LDEyLjUsNDUuMywwbDEyOC0xMjhjMTIuNS0xMi41LDEyLjUtMzIuOCwwLTQ1LjNzLTMyLjgtMTIuNS00NS4zLDBsLTczLjMsNzMuNFYzMlpNNjQsMzUyYy0zNS4zLDAtNjQsMjguNy02NCw2NHYzMmMwLDM1LjMsMjguNyw2NCw2NCw2NGgzODRjMzUuMywwLDY0LTI4LjcsNjQtNjR2LTMyYzAtMzUuMy0yOC43LTY0LTY0LTY0aC0xMDEuNWwtNDUuMyw0NS4zYy0yNSwyNS02NS41LDI1LTkwLjUsMGwtNDUuMi00NS4zaC0xMDEuNVpNNDMyLDQwOGMxMy4zLDAsMjQsMTAuNywyNCwyNHMtMTAuNywyNC0yNCwyNC0yNC0xMC43LTI0LTI0LDEwLjctMjQsMjQtMjRaIi8+PC9zdmc+");
	background-repeat: no-repeat;
	background-position: right 20px center;
	background-size: 21px;
	transition: .3s;
}
.ir9_bl_right ul li a:hover .ir9_bl_bt{
	background-color: #fff;
}
.ir_archive_sort{
	display: block;
	margin: 0 0 40px;
}
.ir_archive_sort_time{
	width: 100%;
	font-size: 12px;
	line-height: 20px;
	font-weight: 400;
	text-align: right!important;
	margin: 0 0 8px;
}
.ir_archive_sort_time span{
	display: inline-block;
}
.ir_archive_sort_time select{
	position: relative;
	width: 150px;
	padding: 8px 10px;
	margin: 0 0 6px 4px;
	border-radius: 0;
	border: 1px solid #7f7f7f;
	background: #fff;
	color: #000;
	font-size: 13px;
	line-height: 20px;
	transition: .2s;
	cursor: pointer;
}
.ir_archive_sort_category {
	width: 100%;
	overflow-x: scroll;
}
.ir_archive_sort_category ul{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	gap:1%;
}
.ir_archive_sort_category ul li{
	display: block;
	width : 32.666666%;
	margin-bottom: 1%;
}
.ir_archive_sort_category ul li a{
	display: block;
	width: 100%;
	text-align: center;
	border: 1px solid #7f7f7f;
	color: #000;
	background: #fff;
	font-size: 11px;
	line-height: 20px;
	font-weight: 400;
	padding: 8px 10px;
	transition: .2s;
}
.ir_archive_sort_category ul li a.current{
	border: 1px solid #000;
	color: #fff;
	background: #000;
	font-weight: 500;
}
.ir_archive_sort_category ul li a:hover{
	border: 1px solid #0062a6;
	color: #fff;
	background: #0062a6;
	font-weight: 700;
}
.ir_news_list ul li a{
	position: relative;
	width: 100%;
	color: #000;
	display: block;
	padding: 40px 0;
	border-bottom: 1px solid #d9d9d9;
	transition: .3s;
}
.ir_news_list ul li a:hover{
	color: #1a87d3;
}
.ir_news_list ul li a .ir_news_list_head{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	font-size: 12px;
	line-height: 22px;
	margin: 0 0 12px;
}
.ir_news_list ul li a .ir_news_list_head .ir_news_list_date{
	width: 80px;
	font-weight: 300;
}
.ir_news_list ul li a .ir_news_list_head .ir_news_list_category{
	width: 110px;
	background: #000;
	color: #fff;
	font-weight: 600;
	text-align: center;
	border-radius: 20px;
	transition: .3s;
	padding: 6px;
}
.ir_news_list ul li a:hover .ir_news_list_head .ir_news_list_category{
	background: #0062a6;
}
html[lang="en-US"] .ir_news_list ul li a .ir_news_list_head .ir_news_list_category{
	line-height: 14px!important;
}
.ir_news_list ul li a .ir_news_list_title{
	width: calc(100% - 40px);
	line-height: 22px;
	font-weight: 400;
}
.ir_news_list ul li a::before{
	position: absolute;
	z-index: 1;
	content: "";
	width: 35px;
	height: 35px;
	right: 1%;
	top: 0;
	bottom: 0;
	margin: auto;
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgMTQ2LjMgODYuNiI+ICA8ZGVmcz4gPHN0eWxlPiAuc3QwIHsgZmlsbDogI2ZmZjsgfSA8L3N0eWxlPiA8L2RlZnM+IDxwb2x5Z29uIGNsYXNzPSJzdDAiIHBvaW50cz0iMCAwIDAgODYuNiAxNDYuMyA0My4zIDAgMCIvPjwvc3ZnPg==");
	background-color: #000;
	background-repeat: no-repeat;
	background-position: left 15px center;
	background-size: 7px;
	border-radius: 50%;
	transition: .3s;
}
.ir_news_list ul li a:hover::before{
	background-color: #0062a6;
}
.ir_news_list ul li a[target="_blank"]::before{
	position: absolute;
	z-index: 1;
	content: "";
	width: 35px;
	height: 35px;
	right: 1%;
	top: 0;
	bottom: 0;
	margin: auto;
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgNTEyIDUxMiI+ICA8ZGVmcz4gPHN0eWxlPiAuc3QwIHsgZmlsbDogI2ZmZjsgfSA8L3N0eWxlPiA8L2RlZnM+IDxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yODgsMzJDMjg4LDE0LjMsMjczLjcsMCwyNTYsMHMtMzIsMTQuMy0zMiwzMnYyNDIuN2wtNzMuNC03My40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMsMHMtMTIuNSwzMi44LDAsNDUuM2wxMjgsMTI4YzEyLjUsMTIuNSwzMi44LDEyLjUsNDUuMywwbDEyOC0xMjhjMTIuNS0xMi41LDEyLjUtMzIuOCwwLTQ1LjNzLTMyLjgtMTIuNS00NS4zLDBsLTczLjMsNzMuNFYzMlpNNjQsMzUyYy0zNS4zLDAtNjQsMjguNy02NCw2NHYzMmMwLDM1LjMsMjguNyw2NCw2NCw2NGgzODRjMzUuMywwLDY0LTI4LjcsNjQtNjR2LTMyYzAtMzUuMy0yOC43LTY0LTY0LTY0aC0xMDEuNWwtNDUuMyw0NS4zYy0yNSwyNS02NS41LDI1LTkwLjUsMGwtNDUuMi00NS4zaC0xMDEuNVpNNDMyLDQwOGMxMy4zLDAsMjQsMTAuNywyNCwyNHMtMTAuNywyNC0yNCwyNC0yNC0xMC43LTI0LTI0LDEwLjctMjQsMjQtMjRaIi8+PC9zdmc+");
	background-color: #000;
	background-repeat: no-repeat;
	background-position: center top 8px;
	background-size: 16px;
	transition: .3s;
}
.ir_news_list ul li a[target="_blank"]:hover::before{
	background-color: #0062a6;
}
.ir_link_head{
	margin: 100px 0 3%;
}
.ir_link01 a{
	position: relative;
	z-index: 2;
	display: block;
	color: #fff;
	background:url("../img/ir2_pic1_pc.webp")no-repeat center center;
	background-size: cover;
	padding: 60px 20px;
	border-bottom: 1px solid #000;
	transition: .3s;
}
.ir_link01 a::before{
	position: absolute;
	content: "";
	z-index: -2;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: linear-gradient(90deg,rgba(0,0,0,0.8),rgba(0,0,0,0)50%);
	mix-blend-mode:multiply;
}
.ir_link01 a::after{
	position: absolute;
	content: "";
	z-index: -1;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: #0071BB;
	mix-blend-mode:multiply;
	opacity: 0;
	transition: .6s;
}
.ir_link01 a:hover::after{
	opacity: 0.8;
}
.ir_link01 a p{
	display: block;
}
.ir_link01 a .ir_link01_tit{
	font-size: 24px;
	line-height: 28px;
	font-weight: 500;
	margin: 0 40px 0 0;
}
.ir_link01 a .ir_link01_subtit{
	font-size: 14px;
	line-height: 28px;
	font-weight: 400;
}
.ir_link_below{
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: flex-start;
	gap:3%;
}
.ir_link_below_box{
	width: 48.5%;
	margin: 0 0 3%;
}
.ir_link_below_box a {
	position: relative;
	z-index: 2;
	display: block;
	height: 154px;
	color: #fff;
	border-bottom: 1px solid #000;
	transition: .3s;
}
.ir_link_below_box a::before{
	position: absolute;
	content: "";
	z-index: -2;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: linear-gradient(90deg,rgba(0,0,0,0.8),rgba(0,0,0,0)80%);
	mix-blend-mode:multiply;
}
.ir_link_below_box a::after{
	position: absolute;
	content: "";
	z-index: -1;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: #0071BB;
	mix-blend-mode:multiply;
	opacity: 0;
	transition: .6s;
}
.ir_link_below_box a:hover::after{
	opacity: 0.8;
}
.ir_link_below_box a .ir_link_below_txt{
	position: absolute;
	display: block;
	height: fit-content;
	left: 12px;
	top: 0;
	bottom: 0;
	margin: auto;
}
.ir_link_below_box a .ir_link01_tit{
	font-size: 18px;
	line-height: 22px;
	font-weight: 500;
	margin: 0 40px 0 0;
}
.ir_link_below_box a .ir_link01_subtit{
	font-size: 10px;
	line-height: 22px;
	font-weight: 400;
}
.ir_link02 a{
	background:url("../img/ir_link02_bg.webp")no-repeat center center;
	background-size: cover;
}
.ir_link03 a{
	background:url("../img/ir_link03_bg.webp")no-repeat center center;
	background-size: cover;
}
.ir_link04 a{
	background:url("../img/ir_link04_bg.webp")no-repeat center center;
	background-size: cover;
}
.ir_link05 a{
	background:url("../img/ir_link05_bg.webp")no-repeat center center;
	background-size: cover;
}
.ir_link06 a{
	background:url("../img/ir_link06_bg.webp")no-repeat center center;
	background-size: cover;
}
.ir_link07 a{
	background:url("../img/ir_link07_bg.webp")no-repeat center center;
	background-size: cover;
}
.ir_link08 a{
	background:url("../img/ir_link08_bg.webp")no-repeat center center;
	background-size: cover;
}
.ir_link09 a{
	background:url("../img/ir_link09_bg.webp")no-repeat center center;
	background-size: cover;
}
.ir_graph_container{
	display: block;
}
.ir_graph_wrap{
	background: none;
	width: 100%;
	padding: 40px 0 40px;
	margin: 0 auto 40px;
}
.ir_graph_wrap h4{
	font-weight: 400;
	font-size: 20px;
}
.graph1,
.graph2,
.graph3,
.graph4{
	position: absolute;
	width: 100%;
	height: 100%;
	bottom:0;
	-webkit-animation-name: graph;
  animation-name: graph;
}
@-webkit-keyframes graph {
  from{height: 0px;}
  to {height: 100%;}
}
.graph1{
	background: #828a98;
}
.graph2{
	background: #3a4253;
}
.graph3{
	background: #1b232f;
}
.graph4{
	background: #000000;
}
.ir_graph1,
.ir_graph2,
.ir_graph3,
.ir_graph4{
	position: absolute;
	width: 40px;
	bottom: 8%;
}
.ir_graph1{
	right: 66%;
}
.ir_graph2{
	right: 46%;
}
.ir_graph3{
	right: 26%;
}
.ir_graph4{
	right: 6%;
}
.ir_graph1 span,
.ir_graph2 span,
.ir_graph3 span,
.ir_graph4 span{
	position: absolute;
	width: fit-content;
	top: -24px;
	left: 0;
	right: 0;
	margin: auto;
	font-size: 13px;
	line-height: 20px;
	font-weight: 500;
	text-align: center;
	white-space: nowrap;
}
.ir_graph1 b,
.ir_graph2 b,
.ir_graph3 b,
.ir_graph4 b{
	position: absolute;
	width: fit-content;
	bottom: -25px;
	left: -4px;
	margin: auto;
	font-size: 13px;
	line-height: 20px;
	font-weight: 500;
	text-align: center;
	white-space: nowrap;
}
.company01_graph_sub_pc{
	margin: 8px 0 0;
}
table.ir_chart{
	position: absolute!important;
	width: 82%!important;
	height: 100%!important;
	top: 0;
	right: 10.49%;
	bottom: 0;
	margin: auto;
}
table.ir_chart tbody{
	height: 100%!important;
}
.ir_chart1,
.ir_chart2,
.ir_chart3,
.ir_chart4{
	position: absolute;
	width: 100%!important;
	height: 100!important;
}
@-webkit-keyframes chart {
  from{opacity: 0;}
  to {opacity: 1;}
}
.ir_chart1{
	right: 66%;
	animation: chart 0.1s 0.1s;
}
.ir_chart2{
	right: 46%;
	animation: chart 0.1s 0.3s;
}
.ir_chart3{
	right: 26%;
	animation: chart 0.1s 0.5s;
}
.ir_chart4{
	right: 6%;
	animation: chart 0.1s 0.7s;
}
.ir_chart1 span,
.ir_chart2 span,
.ir_chart3 span,
.ir_chart4 span{
	position: relative;
	font-size: 13px;
	line-height: 20px;
	font-weight: 500;
	text-align: center;
	white-space: nowrap;
	margin-right: -15%;
	padding-bottom: 10%;
}
.ir_chart1 span::before,
.ir_chart2 span::before,
.ir_chart3 span::before,
.ir_chart4 span::before{
	position: absolute;
	content: "";
	width: 30%;
	padding-top: 30%;
	height: 0;
	background: #000;
	border-radius: 50%;
	bottom: -15%;
	left: 0;
	right: 0;
	margin: auto;
}
.ir_chart1 b,
.ir_chart2 b,
.ir_chart3 b,
.ir_chart4 b{
	position: absolute;
	width: fit-content;
	bottom: -25px;
	right: -20%;
	margin: auto;
	font-size: 13px;
	line-height: 20px;
	font-weight: 500;
	text-align: center;
	white-space: nowrap;
}
@media screen and (min-width: 990px) {
.top_fv_ir{
	min-height: 600px;
}
.kv01_ir{
	background-image: url("../img/fv_ir_bg_pc.webp");
	min-height: 600px;
}
.kv_text_ir{
	width: calc(100% - 480px);
}
.kv_nav02 ul{
	width: 100%;
	max-width: 462px;
	margin: 0;
}
.kv_nav02 ul li a{
	font-size: 12px;
	padding: 20px 18px;
}
.kv_nav03{
	width: 100%!important;
	max-width: 462px!important;
}
.kv_nav03 ul{
	width: 100%!important;
	margin: 0;
}
.kv_nav03 ul li a{
	padding: 32px 18px;
}
.kv_nav03 ul li a p{
	font-size: 12px;
}
.ir6_wrap{
	padding: 0 0 60px;
	margin: 60px 0 0;
}
a.ir7_bloomberg_bt{
	text-align: center;
	font-size: 16px;
	padding: 6% 0;
}
a.ir7_bloomberg_bt:hover{
	color: #1a87d3;
}
a.ir7_bloomberg_bt::before{
	width: 40px;
	height: 40px;
}
.ir7_bloomberg{
	left: 20px;
	top: 0;
	bottom: 0;
	height: 64px;
	font-size: 13px;
	line-height: 64px;
}
.ir9_bl_inner{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.ir9_bl_left{
	width: 240px;
}
.ir9_bl_right{
	width: calc(100% - 240px);
	padding: 4px 0 0;
}
.ir9_bl_right ul li a p{
	width: calc(100% - 140px);
}
.ir9_bl_right ul li a .ir9_bl_bt{
	padding: 2px 70px 2px 40px;
	background-position: right 40px center;
}
.ir_archive_sort{
	display: flex;
	align-items: flex-start;
	gap:16px;
}
.ir_archive_sort_time{
	width: 130px;
	padding: 0;
	margin: 0 0 0 0;
}
.ir_archive_sort_time span{
	display:none;
}
.ir_archive_sort_time select{
	width: 100%;
	max-width: 190px;
	padding: 12px 16px;
	margin: 0 0 6px 0;
}
.ir_archive_sort_category {
	width: calc(100% - 160px);
	overflow-x: hidden;
}
.ir_archive_sort_category ul{
	display: flex;
	flex-wrap: unset !important;
	gap:3px;
}
.ir_archive_sort_category ul li{
	width: 120px;
	margin-bottom: 0;
}
.ir_archive_sort_category ul li a{
	font-size: 13px;
	padding: 12px 10px;
}
.ir_news_list ul li a{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}
.ir_news_list ul li a .ir_news_list_head{
	width: 190px;
}
.ir_news_list ul li a .ir_news_list_head .ir_news_list_date{
	width: 72px;
}
.ir_news_list ul li a .ir_news_list_title{
	width: calc(100% - 220px);
}
.ir_news_list ul li a .ir_news_list_head{
	margin: 0;
}
.ir_link_head{
	margin: 100px 0 3.5%;
}
.ir_link01 a:hover::after{
	opacity: 0.5;
}
.ir_link01 a p{
	display: inline-block;
}
.ir_link01 a .ir_link01_tit{
	font-size: 24px;
	line-height: 28px;
	font-weight: 500;
	margin: 0 40px 0 0;
}
.ir_link01 a .ir_link01_subtit{
	font-size: 14px;
	line-height: 28px;
	font-weight: 400;
}

.ir_link_below{
	gap:3.5%;
}
.ir_link_below_box{
	width: 31%;
	margin: 0 0 3.5%;
}
.ir_link_below_box a .ir_link_below_txt{
	left: 20px;
}
.ir_link_below_box a .ir_link01_tit{
	font-size: 20px;
	line-height: 24px;
	margin: 0 40px 0 0;
}
.ir_link_below_box a .ir_link01_subtit{
	font-size: 12px;
	line-height: 24px;
}
.ir_graph_container{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.ir_graph_wrap{
	background: none;
	width: 48%;
	padding: 40px 0 40px;
	margin: 0 0 40px;
}
}
/************************************
******  news
************************************/
.news_archive_box{
	position: relative;
	z-index: 1;
	width: 90%;
	margin: 0 auto 60px;
	padding: 0 0 20px;
	border-bottom: 1px solid #d9d9d9;
}
.news_archive_thumb{
	width: 100%;
  height: 40vw;;
	overflow: hidden;
}
.news_archive_thumb img{
	width: 100%;
	height: 100%;
  object-fit: cover;
	transition: .5s;
}
a:hover .news_archive_thumb img{
	opacity: 0.8;
}
a .news_archive_text_wrap{
	font-size: 14px;
	line-height: 24px;
	font-weight: 400;
	padding: 8px 0 0;
	color: #000;
	transition: .6s;
}
a:hover .news_archive_text_wrap{
	color: #1a87d3;
}
a .member_text_en{
	font-weight: 300;
	font-size: 11px;
}
.news_archive_excerpt{
	display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
	overflow: hidden;
	margin: 4px 0 0;
}
.news_archive_date{
	margin: 0 18px 0 0;
	display: inline-block;
}
a.news_archive_bt{
	position: relative;
	display: block;
	width: 286px;
	background: #000;
	color: #fff;
	text-align: center;
	padding: 18px 0;
	font-size: 12px;
	line-height: 24px;
	font-weight: bold;
	margin: 60px auto 0;
	transition: .3s;
}
a.news_archive_bt:hover{
	background: #1a87d3;
}
a.news_archive_bt::after{
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	right: 16px;
	top: 0;
	bottom: 0;
	margin: auto;
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 8px solid #fff;
	transition: .3s;
}
.wp-pagenavi {
  text-align: center;
	margin: 60px 0 0;
}
.wp-pagenavi a{
 	color:#000;
}
.wp-pagenavi .pages{
	font-size: 12px;
 	margin-right: 16px;
}
.wp-pagenavi .page {
  display: inline-block;
  text-align: center;
  width: 36px;
	color: #b0b0b0;
  line-height: 36px;
  border-radius: 21px;
  margin: auto 3px;
  transition: 0.3s ease-out;
}
.wp-pagenavi .page:hover {
  color: #000;
}
.wp-pagenavi .current {
  display: inline-block;
  text-align: center;
  width: 36px;
  line-height: 36px;
  color: #000;
  border-radius: 21px;
  margin: auto 3px;
	font-weight: bold;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .extend,
.wp-pagenavi .first,
.wp-pagenavi .last {
  line-height: 42px;
  margin: auto 8px;
  transition: 0.3s ease-out;
}
.wp-pagenavi .previouspostslink:hover,
.wp-pagenavi .nextpostslink:hover,
.wp-pagenavi .first:hover,
.wp-pagenavi .last:hover {
  color: #000;
}
.ir9_bl .wp-pagenavi a,
.ir9_bl .wp-pagenavi .pages,
.ir9_bl .wp-pagenavi .pages:hover,
.ir9_bl .wp-pagenavi .current,
.ir9_bl .wp-pagenavi .previouspostslink:hover,
.ir9_bl .wp-pagenavi .nextpostslink:hover,
.ir9_bl .wp-pagenavi .first:hover,
.ir9_bl .wp-pagenavi .last:hover{
 	color:#fff!important;
}
.content_head_news_archive{
	padding-top: 50px;
}
.content_head_news_single{
	padding-top: 50px;
}
.content_head_contact{
	padding-top: 1px;
}
.news_archive_sort{
	display: block;
	margin: 0 0 40px;
}
.news_archive_sort_time,
.news_archive_sort_category{
	font-size: 12px;
	line-height: 20px;
	font-weight: 400;
	text-align: right;
}
.news_archive_sort_time{
	width: 100%;
}
.news_archive_sort_category{
	width: 100%;
}
input, select {
  -webkit-appearance: none;
  appearance: none;
}
select,
::picker(select){
  appearance: base-select;
	width: 150px;
	padding: 8px 10px;
	margin: 0 0 6px 4px;
	border-radius: 0;
	border: 1px solid #7f7f7f;
	background: #fff;
	color: #000;
	font-size: 13px;
	line-height: 20px;
}
.news_archive_sort_category select,
.news_archive_sort select{
	width: 150px;
	padding: 8px 10px;
	margin: 0 0 6px 4px;
	border-radius: 0;
	border: 1px solid #7f7f7f;
	background: #fff;
	color: #000;
	font-size: 13px;
	line-height: 20px;
}
.breadcrumb {
  padding: 0 0 16px;
}
#breadcrumbs{
	font-size: 12px!important;
	line-height: 20px!important;
}
#breadcrumbs a{
	font-weight: bold;
	color: #000!important;
}
.breadcrumb_last{
	color: #666!important;
}
.news_single_wrap {
	max-width: 655px;
	width: 100%;
	margin: 60px auto 100px;
}
.news_single_wrap h3{
	font-size: 20px;
	line-height: 38px;
	font-weight: 400;
	padding: 0 0 20px!important;
}
.news_single_head{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	font-size: 10px;
	border-bottom: 1px solid #d8d8d8;
	margin-bottom: 24px;
}
.news_single_category a{
	color: #000;
	padding: 5px 12px;
	border-radius: 12px;
	background: #e7e7e7;
	margin: 0 10px 0 0;
	font-weight: 400;
}
.news_single_wrap h4{
	font-size: 17px;
	line-height: 32px;
	font-weight: 400;
	margin: 64px 0 32px;
}
.news_single_wrap p{
	margin: 32px 0;
}
.news_single_wrap img{
	margin: 32px 0;
}
.news_single_wrap ol li{
	margin: 0 0 0 20px;
	padding: 8px 0 8px 10px;
}
@media screen and (min-width: 750px) {
.news_archive_box{
	width: 30%;
	margin: 0 0 64px;
	padding: 0 0 20px;
}
.news_archive_thumb{
  height: 16vw;
	max-height: 168px;
}
a .news_archive_text_wrap{
	font-size: 12px;
	line-height: 24px;
	font-weight: 400;
	padding: 12px 0 0;
}
a .news_archive_text_wrap h4{
	font-size: 18px;
	line-height: 24px;
	font-weight: 400;
}
.content_head_news_archive{
	padding-top: 120px;
}
.content_head_news_single{
	padding-top: 50px;
}
.news_archive_sort{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
	margin: 0 0 80px;
}
.news_archive_sort_time,
.news_archive_sort_category{
	font-size: 12px;
	line-height: 20px;
	font-weight: 400;
	text-align: left;
}
.news_archive_sort_time{
	width: 310px;
}
.news_archive_sort_category{
	width: calc(100% - 310px);
}
select,
::picker(select) {
  appearance: base-select;
	width: 220px;
	padding: 12px;
	margin: 0 0 0 5px;
}
.news_archive_sort_category select,
.news_archive_sort select{
	width: 220px;
	padding: 12px!important;
	margin: 0 0 0 5px;
}
.news_single_wrap {
	width: 92%;
	margin: 80px auto 100px;
}
.news_single_wrap h3{
	font-size: 26px;
	line-height: 48px;
}
.news_single_head{
	font-size: 11px;
}
.news_single_category a{
	padding: 5px 18px;
	margin: 0 18px 0 0;
}
.news_single_wrap h4{
	font-size: 18px;
}
}
/************************************
******  recruit
************************************/
.recruit_head{
	display: block;
	margin: 30px 0 0;
	padding: 0 0 40px;
	font-size: 16px;
	line-height: 32px;
	font-weight: 400;
}
.recruit_head p{
	margin-bottom: 20px;
}
.recruit_black_wrap{
	background: #000;
	padding: 120px 0 20px;
}
.recruit_black_box,
.recruit_black_box2{
	max-width: 1000px;
	width: 90%;
	margin: 0 auto;
	padding: 0 0 100px;
	display: block;
}
.recruit_black_box2{
	flex-direction:row;
}
.recruit_black_box img,
.recruit_black_box2 img{
	width: 100%;
	margin: 0 0 32px;
}
.recruit_black_text{
	width: 100%;
	color: #fff;
	border-top: 1px solid #2b2b2b;
}
.recruit_black_head{
	font-size: 12px;
}
.recruit_black_text h4{
	font-size: 22px;
	font-weight: 400;
	padding: 18px 0;
}
.recruit_bnr_head{
	padding: 100px 0 0;
}
a.recruit_bnr{
	position: relative;
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	max-width: 1000px;
	width: 92%;
	margin: 0 auto;
	background: #000;
	color: #fff;
	transition: .6s;
}
a.recruit_bnr::before{
	content: "";
	position: absolute;
	z-index: 2;
	width: 50px;
	height: 50px;
	right: 18px;
	top: 0;
	bottom: 0;
	border-radius: 50%;
	background: #000;
	margin: auto;
	transition: .3s;
}
a.recruit_bnr:hover::before{
	background: #0062a6;
}
a.recruit_bnr::after{
	content: "";
	position: absolute;
	z-index: 2;
	width: 0;
	height: 0;
	right: 40px;
	top: 0;
	bottom: 0;
	margin: auto;
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 6px solid #fff;
	transition: .3s;
}
a.recruit_bnr:hover{
	background: #0062a6;
}
a.recruit_bnr p{
	display: block;
	width: 50%;
	text-align: center;
}
a.recruit_bnr img{
	max-width: auto;
	width: 50%;
	transition: .3s;
}
a.recruit_bnr:hover img{
	opacity: 0.7;
}
@media screen and (min-width: 750px) {
.recruit_head{
	margin: 0 0 0;
	font-size: 20px;
	line-height: 40px;
}
.recruit_black_box,
.recruit_black_box2{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.recruit_black_box2{
	flex-direction:row-reverse
}
.recruit_black_box img,
.recruit_black_box2 img{
	width: 48%;
	margin: 0;
}
.recruit_black_text{
	width: 48%;
}
a.recruit_bnr::before{
	right: 38px;
}
a.recruit_bnr::after{
	right: 60px;
	border-left: 6px solid #fff;
}
a.recruit_bnr p{
	width: 35.8%;
}
a.recruit_bnr img{
	max-width: 642px;
	width: 64.2%;
}
}
/************************************
******  contact
************************************/
.contact_form{
	display: block;
	padding: 60px 0 0;
}
.contact_h3{
	width: 100%;
	margin: 0 0 2px;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
}
.contact_h3 h3{
	font-size: 12px;
	line-height: 18px;
	padding: 0!important;
}
.required,
.disp_by_click{
	color: #1a87d3;
	font-size: 13px;
	line-height: 18px;
	font-weight: 400;
	padding: 2px 4px;
	margin: 0 0 0 4px;
}.gray{
	color: #999!important;
}

.contact_input{
	width: 100%;
	margin: 0 0 36px;
	padding: 0 0 12px;
}
.contact_input2{
	width: 100%;
	margin: 0 0 32px;
	padding: 12px;
	background: #fff;
	font-weight: 500;
	border-bottom:1px solid #d9d9d9;
}
* {
  -webkit-appearance: none;
  appearance: none;
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
	background: #b7eaf6;
	color: #000!important;
}
.contact_select {
    position: relative;
}
.contact_select::after {
	content: "";
    position: absolute;
    top: 18px;
    right: 16px;
    width: 6px;
    height: 6px;
    border-right: 1px solid #333;
    border-bottom: 1px solid #333;
    transform: rotate(45deg);
}
select::-ms-expand {
  display: none;
}
select:focus {
  outline: none;
}
input:-webkit-autofill {
-webkit-box-shadow: 0 0 0px 1000px #e7f0ff inset;
}
.textfield{
	display: block;
	width: 100%;
	font-size: 16px;
	line-height: 24px;
	background: #f5f5f5;
	padding: 16px 18px 16px;
	vertical-align: middle;
	outline: none;
	border: none;
	border-bottom:1px solid #d9d9d9;
	border-radius: none;
}
.textfield:focus,
.textfield:valid{
	background: #f5f5f5!important;
}
::placeholder {
  color: #999;
}
::-ms-input-placeholder {
  color: #999;
}
:-ms-input-placeholder {
  color: #999;
}
.contact_bt {
	position: relative;
	z-index: 1;
	width: 100%;
	margin: 32px auto 40px;
}
.contact_bt input[type="submit"]{
	position: relative;
	z-index: 1;
	display: block;
	width: 100%;
	text-align: center;
	font-size: 15px;
	line-height: 24px;
	font-weight: bold;
	border: none;
	outline: none;
	color: #fff;
	padding: 28px 0 28px 8px;
	cursor: pointer;
	background: #000;
	letter-spacing: 0.2em;
	transition: .2s;
}
.contact_bt input[type="submit"]:hover{
	background: #0062a6;
}
.contact_bt input[type="submit"]:disabled{
	letter-spacing: 0.2em;
	background: #999!important;
}
.visually-hidden {
 position: absolute;
 white-space: nowrap;
 border: 0;
 clip: rect(0 0 0 0);
 clip-path: inset(50%);
 overflow: hidden;
 height: 1px;
 width: 1px;
 margin: -1px;
 padding: 0;
}
.contact_radio{
	width: 100%;
	text-align: left;
}
.contact_radio a{
	color: #1a87d3;
	margin: 0 4px;
	text-decoration: underline;
}
.contact_radio label {
	transition: .2s;
	position: relative;
	cursor: pointer;
}
.contact_radio label:hover {
	color: #7e8183;
}
.contact_form input[type="radio"],
.contact_form input[type="checkbox"]{
	position: relative;
	display: inline-block;
	width: 18px;
	height: 18px;
	border: 1px solid #aeaeae;
	margin-right: 5px;
	border-radius: 50%;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.contact_form input[type="radio"],
.contact_form input[type="checkbox"]{
	vertical-align: -3px;
}
.contact_form input[type="radio"]:checked:before,
.contact_form input[type="checkbox"]:checked:before{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #1a87d3;
  content: '';
}
.contact_form label {
	width: 100%;
	display: inline-block;
}
.contact_form label span{
	font-size: 13px;
	line-height: 20px;
	font-weight: 400;
}
.wpcf7-form-control-wrap{
	display: block;
	width: 100%!important;
}
.wpcf7-form-control{
	display: block;
	width: 100%!important;
}
.contact_radio_head{
	margin: 6px 0 36px;
}
.contact_radio_head .wpcf7-list-item{
	display: block;
	width: 100%;
	padding: 5px 0;
}
.wpcf7-list-item{
	display: block;
	width: 100%;
	padding: 6px 0;
}
.prev_bt input{
	cursor: pointer;
	background: #fff;
	border: 1px solid #999;
	width: 60%;
	margin: 0 auto;
	display: block;
	color: #999;
	padding: 16px 0;
	transition: .3s;
}
.prev_bt input:hover{
	border: 1px solid #000;
	color: #000;
}
.contact_radio_head label span{
	font-size: 15px;
}
.top_confirm_short{
	position: relative!important;
	max-height: 300px!important;
	background: #000;
}
.wpcf7,
.wpcf7-form{
	width: 100%!important;
}
@media only screen and (min-width: 750px) {
.contact_h3 h3{
	font-size: 13px;
	line-height: 18px;
}
.contact_input{
	margin: 0 0 32px;
}
.textfield{
	padding: 16px 28px 16px;
}
.contact_radio{
	font-size: 14px;
}
.contact_radio_head label span{
	font-size: 15px;
}
.wpcf7-form-control{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	width: 100%;
}
.contact_radio_head .wpcf7-list-item{
	width: 50%;
}
.top_confirm_short{
	max-height: 320px!important;
}
}
/************************************
******  footer
************************************/
.footer_share_wrap{
	padding: 100px 0 0;
}
.footer{
	display: block;
	background: #fff;
	padding: 0 0 60px;
}
.normal_wrap{
	max-width: 1000px;
	width: 91.4666%;
	margin: 0 auto;
}
.footer_share{
	display: block;
}
h3.footer_share_h3{
	width: fit-content;
	padding:0;
}
ul.footer_share_inner {
	padding: 40px 0 0;
}
ul.footer_share_inner li{
	display: inline-block;
}
ul.footer_share_inner li a svg{
	cursor: pointer!important;
	width: 22px;
	height: 22px;
	margin: 0 25px 0 0;
}
ul.footer_share_inner li a svg path{
	fill: #000;
	transition: .3s;
}
ul.footer_share_inner li a:hover svg path{
	fill: #1a87d3;
}
a.footer_top{
	position: relative;
	display: block;
	width: fit-content;
	margin-left: auto;
	margin-top: 50px;
	color: #000;
	font-size: 12px;
	padding-right: 20px;
	font-weight: 500;
	transition: .3s;
}
a.footer_top:hover{
	color: #1a87d3;
}
a.footer_top::after{
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	border-right: 3px solid transparent;
	border-left: 3px solid transparent;
	border-bottom: 8px solid #000;
	transition: .3s;
}
a.footer_top:hover::after{
	border-bottom: 8px solid #1a87d3;
}
ul.footer_link{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	margin: 60px 0 60px;
}
ul.footer_link li:first-child{
	width: 100%;
	margin: 0 0 24px 0;
}
ul.footer_link li{
	width: 50%;
	margin: 0 0 40px;
}
ul.footer_link li a{
	display: block;
	padding: 8px 4px 8px 0;
	color: #000;
	transition: .3s;
	font-size: 24px;
	line-height: 30px;
	font-weight: 300;
}
ul.footer_link li a.footer_link_medium{
	padding: 4px 4px 4px 0;
	font-size: 20px;
	line-height: 26px;
}
ul.footer_link li a:hover{
	color: #1a87d3;
}
ul.footer_link li:last-child{
	padding-top: 4px;
}
ul.footer_link li ul li:last-child{
	padding-top: 0;
}
ul.footer_link li ul li:first-child{
	margin: 0;
}
ul.footer_link li ul li{
	width: fit-content!important;
	margin: 0;
}
ul.footer_link li ul li a{
	padding: 2px 4px 2px 1px;
	font-size: 11px;
	line-height: 20px;
	font-weight: 400;
}
.footer_link_small a{
	font-size: 10px!important;
	line-height: 18px!important;
}
.footer_link_sub{
	margin: 16px 0 0;
}
.copyright{
	font-size: 10px;
}
@media screen and (min-width: 750px) {
.footer_share_wrap{
	padding: 160px 0 0;
}
.footer{
	padding: 0 0 100px;
}
.footer_share{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}
h3.footer_share_h3 p{
	font-size: 22px;
	margin: 0 50px 0 0;
}
ul.footer_share_inner {
	padding: 16px 0 0;
}
ul.footer_share_inner li a svg{
	margin: 0 15px;
}
a.footer_top{
	margin-top: 0;
}
ul.footer_link{
	margin: 100px 0 60px;
}
ul.footer_link li a{
	font-size: 26px;
	line-height: 36px;
}
ul.footer_link li{
	width: 25%;
	margin: 0;
}
ul.footer_link li:last-child{
	padding-top: 8px;
}
ul.footer_link li a.footer_link_medium{
	font-size: 22px;
	line-height: 28px;
}
ul.footer_link li ul li a{
	font-size: 13px;
	line-height: 23px;
}
.footer_link_small a{
	font-size: 11px!important;
	line-height: 20px!important;
}
}


#drawer:checked ~ #trp-floater-ls{
	display: block!important;
}
#trp-floater-ls{
	display: none!important;
	position: fixed!important;
	background: none!important;
	box-shadow: none!important;
	top:auto!important;
	bottom: 20px!important;
	right: 24px!important;
	z-index: 9999!important;
	height: fit-content!important;
}
#trp-floater-ls::before{
	content: "";
	width: 1px;
	height: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background: rgba(255,255,255,0.2);
}
#trp-floater-ls-current-language{
	display: none!important;
}
#trp-floater-ls-language-list{
	display: block!important;
}
.trp-ls-disabled-language{
	margin: 0!important;
}
.trp-language-wrap{
	display: flex!important;
}
.trp-language-wrap a{
	color: #fff!important;
	font-size: 3.5vw!important;
	line-height: 6vw!important;
	transition: .3s;
	padding:5px 12px 2px!important;
}
.trp-language-wrap a:hover{
	background: none!important;
	color: #1a87d3!important;
}
.-inverted #trp-floater-ls::before{
	background: rgba(0,0,0,0.2);
}
.-inverted .trp-language-wrap a{
	color: #000!important;
}
.-inverted .trp-language-wrap a:hover{
	color: #1a87d3!important;
}
#drawer:checked ~ .trp-language-wrap a{
	color: #fff!important;
}
#drawer:checked ~ #trp-floater-ls::before{
	background: rgba(255,255,255,0.2);
}
@media screen and (min-width: 750px) {
#trp-floater-ls{
	display: block!important;
	top:27px!important;
	bottom: auto!important;
}
.trp-language-wrap a{
	font-size: 11px!important;
	line-height: 16px!important;
}
}

.fv_title_jp{
	max-width:auto;
	width: 80%;
	margin: 0 auto;
}
 html[lang="en-US"] .fv_title_jp{
	width: 94%;
}
.main_visual_sp {
	display: block;
	width:100%;
	height: 100vh;
	position:relative;
	overflow: hidden;
	z-index:-1;
	transition: .2s;
}
.main_visual_pc {
	display: none;
}
 html[lang="en-US"] .kv_nav_jp{
	display: none;
}
@media screen and (min-width: 750px) {
.fv_title_jp{
	max-width:560px;
	width: auto;
	margin: 0 auto;
}
 html[lang="en-US"] .fv_title_jp{
	max-width:720px;
}
.main_visual_sp {
	display: none;
	}
.main_visual_pc {
	display: block;
	width:100%;
	height: 100vh;
	position:relative;
	overflow: hidden;
	transition: .2s;
	z-index:-1;
	}
}
@media screen and (min-width: 1000px) {
.fv_title_jp{
	max-width:680px;
	}
 html[lang="en-US"] .fv_title_jp{
	max-width:960px;
}
}

.nav-links{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	margin: 60px 0 0;
}
.nav-previous,
.nav-next{
	position: relative;
	display: block;
	width: 50%;
	text-align: center;
}
.nav-previous{
	border: 1px solid rgba(0,0,0,0.2);
}
.nav-next{
	border-right: 1px solid rgba(0,0,0,0.2);
	border-top: 1px solid rgba(0,0,0,0.2);
	border-bottom: 1px solid rgba(0,0,0,0.2);
}
.nav-previous::after{
	content: "";
	position: absolute;
	z-index: 2;
	left: 10px;
	top: 45%;
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-right: 8px solid #000;
}
.nav-next::after{
	content: "";
	position: absolute;
	z-index: 2;
	right: 10px;
	top: 45%;
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 8px solid #000;
}
.nav-previous a,
.nav-next a{
	display: block;
	width: 100%;
	color: #000;
	transition: .3s;
	padding: 18px 28px;
}
.nav-previous a:hover,
.nav-next a:hover{
	color: #1a87d3!important;
}
.nav-subtitle{
	display: block;
	margin: 0 auto 4px;
	font-size: 15px;
	line-height: 20px;
	font-weight: 500;
}
.nav-title{
	display: block;
	font-weight: 400;
	font-size: 11px!important;
	line-height: 18px!important;
}
.wp-block-file__button{
	padding-left: 12px;
	padding-right: 12px;
}

.top_footer_link{
	position: fixed;
	width: 100%;
	bottom: 0;
	right: 0;
}
.top_footer_link ul{
	width: 100%;
	background: rgba(0,0,0,0.5);
	padding:16px 32px;
	display: flex;
	flex-direction: row-reverse;
}
.top_footer_link ul li{
	display: block;
}
.top_footer_link ul li a{
	color: #fff;
	font-size: 10px;
	line-height: 15px;
	font-weight: 400;
	padding: 4px 6px;
}

@media screen and (max-width: 768px) {
  .kv_inner {
    padding: 80px 0;
  }
}

.footer_link_medium-link {
	font-size: 23px !important;
}

@media (max-width: 768px) {
  .footer_link_medium-link {
    font-size: 20px;
  }
}

/************************************
****** Mobile Bottom Navigation
*************************************/
@media screen and (max-width: 748px) {
  /* Hide existing hamburger button on mobile */
  .open {
    display: none;
  }

  /* Mobile bottom navigation bar */
  .mobile-bottom-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 74px;
    background-color: #000000;
    z-index: 99999;
  }

  .mobile-nav-list {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    height: 100%;
    align-items: center;
    padding: 0;
    margin: 0;
  }

  .mobile-nav-item {
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .mobile-nav-item a,
  .mobile-nav-item .mobile-menu-button {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 10px;
    text-decoration: none;
    cursor: pointer;
  }

  .mobile-nav-item img {
    width: 22px;
    height: 22px;
  }

  .mobile-nav-text {
    font-size: 10px;
    line-height: 1;
    letter-spacing: 1.4px;
    color: #f8fafc;
    font-weight: 500;
    font-family: "Helvetica Neue", "Noto Sans JP", sans-serif;
    white-space: nowrap;
  }

  /* Mobile menu button styles */
  .mobile-menu-button {
    background: none;
    border: none;
    color: inherit;
  }

  .hamburger-icon {
    position: relative;
    display: block;
    width: 22px;
    height: 22px;
  }

  .hamburger-icon::before,
  .hamburger-icon::after {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #999999;
    transition: transform 0.3s, top 0.3s, background-color 0.3s;
  }

  .hamburger-icon::before {
    top: 6px;
    box-shadow: 0 5px 0 #999999;
  }

  .hamburger-icon::after {
    top: 16px;
  }

  /* Hamburger icon animation when drawer is open */
  #drawer:checked ~ .mobile-bottom-nav .hamburger-icon::before {
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    box-shadow: none;
  }

  #drawer:checked ~ .mobile-bottom-nav .hamburger-icon::after {
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
  }

  /* Tap feedback */
  .mobile-nav-item a:active,
  .mobile-nav-item .mobile-menu-button:active {
    opacity: 0.7;
  }
}

/* Hide mobile navigation on PC */
@media screen and (min-width: 749px) {
  .mobile-bottom-nav {
    display: none;
  }
}