@charset "utf-8";


/* all
-------------------------------------------------------------------*/
html {
	background:#FFFFFF;
	color:#333333;
	font-family: 'Noto Sans JP',  "游ゴシック Medium", "Yu Gothic Medium" ,"游ゴシック体", "Yu Gothic", YuGothic , 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size:16px;
	line-height:1.4;
}
html .goti,
html .goti form *{
	font-family:  'Noto Sans JP', "游ゴシック Medium", "Yu Gothic Medium" ,"游ゴシック体", "Yu Gothic", YuGothic , 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
html .sorts-mill-goudy,
html .sorts-mill-goudy form *{
	font-family: "Sorts Mill Goudy", serif;
}
html .zen-old-mincho,
html .zen-old-mincho form *{
	font-family: "Zen Old Mincho", serif;
}
html .mincho,
html .mincho form *{
	font-family: "Noto Serif JP", serif;
}
body {
	width: 100%;
	font-size: 100%;
	text-align: center;
	min-width:1100px;
}

main{
	overflow:hidden;
	width:100%;
}

.sitewrap {
	width: 1200px;
	min-width:1200px;
	overflow: visible;
	margin: 0 auto;
	text-align: left;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

@media screen and (max-width:1200px) {
	body,
	.sitewrap {
		width: 100%;
		min-width:0;
	}	
	.sitewrap > *{
		padding-left:2%;
		padding-right:2%;
	}
}
@media screen and (max-width:767px) {
	html {
		font-size:14px;
	}
	.sitewrap > *{
		padding-left:15px;
		padding-right:15px;
	}
	img{
		max-width:100%;
		height:auto;
	}
}


/* header
-------------------------------------------------------------------*/
header#fix_menu{
	position: fixed;
	top: 0;
	left:0;
	right:0;
	z-index:999;
	transition:top .4s .2s;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
body:not(.home) header:before,
header.fixedMenu:before{
	content:'';
	width: 100%;
	height:100%;
	background:#fff;
	position:absolute;
	inset:0;
	z-index:3;
}
header#fix_menu:after{
	content:'';
	width: 100%;
	height:100vh;
	background:transparent;
	position:absolute;
	inset:0;
	transition:.4s background-color;
	pointer-events: none;
}
header#fix_menu:has(.drop_wrap:hover):after{
	background: rgba(0,0,0,0.2);
}
body.home .visual .mv-tit{
	position:absolute;
	left: 6%;
	top: 15%;
	bottom:0;
	margin:auto;
	height:fit-content;
	text-align:left;
	transition:.5s opacity;
}
body.home header.top_h1_action ~ main .visual .mv-tit{
	opacity:0;
}
header#fix_menu.fixedMenu{
	background-color:#fff;
}
.menu_top {
   	position:relative;
   	z-index: 5;
}
.menu_top #site_ttl {
	float:left;
	padding:10px;
	white-space:nowrap;
}
.menu_top #site_ttl a{
	display:inline-block;
	vertical-align:middle;
}
.menu_top #site_ttl p{
	margin-left:10px;
	font-size:12px;
}
.menu_bottom {
	padding-right: 2.5em;
	position: relative;
	z-index: 5;
	width: 45%;
}
html.translated-ltr .menu_bottom{
	width: 60%;
}
.drop_menu{
	margin:auto;
}
.drop_menu #site_ttl:hover{
	color:#f18900;
}
.drop_menu #NavWrap {
	padding-block: 20px;
}
.drop_menu #NavWrap .Navmenu{
	display: flex;
	justify-content: flex-end;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 0 1em;
}
header.fixedMenu .drop_menu #NavWrap .langage-area{
	display:none;
}
header.fixedMenu .drop_menu #NavWrap .Navmenu .Navmenu_area{
	width:calc(100% - 180px);
	order:2;
}
header.fixedMenu .menu_bottom{
	width: 57%;
	padding-right: 1em;
}
html.translated-ltr header.fixedMenu .menu_bottom{
	width:65%;
}
html.translated-ltr .drop_menu #NavWrap .Navmenu .contact_btn{
	display:flex;
	justify-content:center;
	align-items: center;
}
html.translated-ltr .drop_menu #NavWrap .Navmenu .contact_btn a{
	width:100%;
	height: 2.86em;
}
.drop_menu #NavWrap .Navmenu .langage-area{
	display:flex;
	justify-content:space-between;
	align-items: flex-start;
	gap: 0.5em;
	order:1;
	position: relative;
	z-index: 10;
}
.drop_menu #NavWrap .Navmenu .langage-area p{
	font-size: 0.75rem;
	position: relative;
	top: 1em;
}
.drop_menu #NavWrap .Navmenu .langage-area .lang-pragin{
	width: 100px;
	height: 38px;
	position: relative;
}
.drop_menu #NavWrap .Navmenu .langage-area .lang-pragin .gtranslate_wrapper{
	position:absolute;
	inset: 0;
	margin: auto;
}
.drop_menu #NavWrap .Navmenu .lang-en{
	position: relative;
	width: 100px;
}
.drop_menu .langage-area .lang-en a{
	box-shadow: rgba(0, 0, 0, 0.15) 0 5px 15px;
	padding: 5px 6px;
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:5px;
	background:#fff;
	transition:.5s box-shadow;
	height: 38px;
	color: #101010;
	justify-content: center;
}
.drop_menu .langage-area .lang-en a img{
	display:none;
}
.drop_menu .langage-area .lang-en a span{
	font-weight:bold;
}
.drop_menu #NavWrap .Navmenu .contact_btn{
	order:2;
	width: 163px;
}
.drop_menu #NavWrap .Navmenu .Navmenu_area{
	order:3;
	width:100%
}
.drop_menu #NavWrap ul {
	margin: 0;
	padding: 0;
	width:100%;
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	gap: 0.5em;
}
html[lang="en"] .drop_menu #NavWrap ul {
	justify-content:flex-end;
	gap:1.5em;
}
.drop_menu #NavWrap ul::after{
	display:none;
}
.drop_menu #NavWrap .head-txt{
	height: auto;
}
.drop_menu #NavWrap .head-txt a,
.drop_menu #NavWrap .head-txt p {
	display: block;
	box-sizing:border-box;
	text-decoration: none;
	font-size: 1em;
	width: auto;
	position:relative;
	text-align:center;
	transition:background 0.5s ,color 0.5s, opacity 0.5s, color 0.5s;
	padding-block: 0.75em;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #282828;
}
.drop_menu #NavWrap .head-txt a span{
	display:flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	white-space: normal;
	font-weight: bold;
	position:relative;
}
.drop_menu #NavWrap .head-txt a span br{
	display:none;
}
.drop_menu #NavWrap .head-txt a span:after{
	content:"";
	width:0;
	height:2px;
	display:block;
	position:absolute;
	bottom: -0.25em;
	left:0;
	transition:width .2s;
	background: #f18900;
}
.drop_menu #NavWrap .head-txt a:hover span{
	opacity:1;
}
.drop_menu #NavWrap .head-txt a:hover span:after{
	width:100%;
}
.drop_menu #NavWrap .head-txt a:hover {
   opacity:1;
}
.drop_menu #NavWrap .head-txt.drop_wrap {
	position:relative;
}
.drop_menu #NavWrap .head-txt.drop_wrap.head-recruit ul{
	left: 24%;
}
html.translated-ltr .drop_menu #NavWrap .head-txt.drop_wrap.head-recruit ul{
	left: -5%;
}
.drop_menu #NavWrap .head-txt.drop_wrap a{
	padding-right: 1.5em;
}
.drop_menu #NavWrap .head-txt.drop_wrap .drop_wrap_top{
	height:100%;
}
.drop_menu #NavWrap .head-txt.drop_wrap li + li{
	border-top: solid 1px #ccc;
}
.drop_menu #NavWrap .head-txt.drop_wrap li a{
	padding-block:1em;
	font-size: 0.875rem;
}
.drop_menu #NavWrap .head-txt.drop_wrap li a span:after{
	display:none;
}
.drop_menu #NavWrap .head-txt.drop_wrap:before{
	content: '';
	width: 6px;
	height: 6px;
	border-top: solid 2px #000;
	border-right: solid 2px #000;
	position: absolute;
	right: 0px;
	top: 0;
	bottom:0;
	margin:auto;
	transform: rotate(135deg);
	transition:.5s transform;
}
.drop_menu #NavWrap .head-txt.drop_wrap i{
	display:none;
}
.drop_menu #NavWrap .head-txt ul{
	position:absolute;
	width: 180px;
	opacity:0;
	visibility:hidden;
	left:50%;
	transform:translateX(-50%);
	transition:opacity .4s;
	display: block;
}
html.translated-ltr .drop_menu #NavWrap .head-txt ul{
	width: 190px;
}
.drop_menu #NavWrap .head-txt:hover ul{
	opacity:1;
	visibility:visible;
	z-index:999;
}
.drop_menu #NavWrap .head-txt ul a{
	min-width:10em;
	padding: 10px;
	background: #fff;
	color:#333;
}
.drop_menu #switch {
	position: absolute;
	display: none;
	opacity: 0;
}
.drop_menu .gt_float_switcher img{
	display:none;
}
.drop_menu .gt_float_switcher .gt-selected .gt-current-lang,
.drop_menu .gt_float_switcher .gt_options a{
	padding: 9px 5px;
	width: 100%;
	max-width: 100%;
	position: relative;
}
.drop_menu .gt_float_switcher .gt_options{
	max-width:100% !important;
}
.drop_menu .gt_float_switcher{
	font-size:1rem;
	width: 100%;
}
.drop_menu .gt_float_switcher .gt-selected .gt-current-lang span.gt_float_switcher-arrow{
	transform:rotate(0deg);
	position:absolute;
	right: 7px;
	top:0;
	bottom:0;
	margin:auto;
}
.drop_menu .gt_float_switcher .gt-selected .gt-current-lang span.gt_float_switcher-arrow.gt_arrow_rotate{
	transform:rotate(-180deg);
}
.drop_menu .gt_float_switcher{
	opacity: 1 !important;
}
.drop_menu .contact_btn a{
	min-height: 2.86em;
	padding: 0 1em;
}
@media (any-hover: hover) {
	.drop_menu #NavWrap .head-txt.drop_wrap:hover:before{
		transform: rotate(135deg) scale(-1);
	}
	.drop_menu #NavWrap .head-txt.drop_wrap li a:hover{
		background:#f4ebe0;
	}
	.drop_menu .langage-area .lang-en a:hover{
		box-shadow:none;
	}
}
@media screen and (max-width:1450px) {
	.drop_menu #NavWrap .head-txt a, .drop_menu #NavWrap .head-txt p{
		font-size:0.75rem;
	}
}
@media screen and (max-width:1300px) {
	html.translated-ltr .drop_menu{
		max-width: 700px;
	}
	header.fixedMenu .menu_bottom{
		width:70%;
	}
	.drop_menu #NavWrap .Navmenu .contact_btn{
		width: 140px;
	}
	.drop_menu #NavWrap .Navmenu .contact_btn a{
		font-size: 0.75rem;
	}
}

@media screen and (max-width:1160px) {
	.drop_menu #NavWrap .head-txt a{
		font-size: 0.75rem;
		white-space: nowrap;
	}
	.menu_bottom {
		padding-right:1em;
		width: 100%;
		height: auto;
		z-index: 2;
	}
	html[lang="en"] header .menu_bottom{
		z-index:3;
	}
	.drop_menu{
		max-width: 700px;
		margin-right: 0;
	}
	.menu_top{
		width: 30%;
	}
	.menu_top #site_ttl a{
		display:flex;
		justify-content:flex-start;
		align-items:center;
	}
	.menu_top #site_ttl a img{
		max-width:100%;
		height:auto;
	}
	header.fixedMenu:before{
		content:'';
		width: 100%;
		height: 100%;
		background:#fff;
		position:absolute;
		inset:0;
		z-index: 1;
	}
	html.translated-ltr .menu_bottom{
		width: 65%;
	}
	html.translated-ltr header.fixedMenu .menu_bottom{
		width: 70%;
	}
}
@media screen and (max-width:1000px) {
	.drop_menu #NavWrap .head-txt a{
		font-size:0.75rem;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	html.translated-ltr .menu_bottom{
		width: 70%;
	}
}
@media screen and (max-width:767px) {
	body {
		padding-top: 80px;
	}
	header:before{
		display:none;
	}
	header .menu_top{
		position: absolute;
		top:0;
		left:0;
		width:100%;
		z-index: auto;
		background: none;
		padding: 0;
		box-sizing: border-box;
		background: #fff;
	}
	header#fix_menu,
	header#fix_menu.fixedMenu{
		top:0;
		transition: none;
		position: fixed;
		z-index: 10000;
	}
	header .menu_bottom {
		z-index: 0;
	}
	header .menu_top #site_ttl{
		padding: 5px 5px;
		width: 45%;
		position: relative;
		z-index: 15;
		height: 60px;
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}
	html.translated-ltr header.fixedMenu .menu_bottom{
		width:100%;
	}
	header .menu_top #site_ttl img{
		height: 40px;
		width:auto;
	}
	header .menu_top #site_ttl p{
		display:none;
	}
	header#fix_menu:after{display:none;}
	.drop_menu #switch ~ label {
		display: block;
		cursor: pointer;
		top: 5px;
		right: 10px;
		z-index:900;
		-webkit-transition: 0.5s transform;
		transition: 0.5s transform, right 0.2s;
		box-sizing:border-box;
		background:#f18900;
		text-align:center;
		border-radius: 50%;
		padding: 10px 10px;
		width: 45px;
		height: 45px;
		position: absolute;
	}
	.drop_menu #switch ~ label b{
		z-index:2;
		width:100%;
		display:block;
		margin-bottom: 0;
	}
	.drop_menu #switch ~ label span{
		cursor: -webkit-grabbing;
		display:block;
		background: #fff;
		-webkit-transition: 0.2s transform, 0.5s background;
		transition: 0.2s transform, 0.5s background;
		position:absolute;
		left:0;
		right:0;
		width: 18px;
		height: 1px;
		top: 22px;
		margin:auto;
	}
	.drop_menu #switch ~ label span:before,
	.drop_menu #switch ~ label span:after{
		content:"";
		display:block;
		background:#fff;
		position:absolute;
		margin-top:0;
		width: 18px;
		height: 1px;
		margin-top:0;
	}
	.drop_menu #switch ~ label span:before{
		 top: -6px;
	}
	.drop_menu #switch ~ label span:after{
		top: 6px;
	}
	.drop_menu #switch:checked ~ label span{
		-webkit-transform:rotate(-45deg) ;
		transform:rotate(-45deg) ;
	}
	.drop_menu #switch:checked ~ label span:before{
		top:0;
	}
	.drop_menu #switch:checked ~ label span:after{
		-webkit-transform:rotate(270deg);
		transform:rotate(270deg);
		top:0;
		margin-top:0;
	}
	.drop_menu #switch:checked ~ label{
		right: 10px;
	}
	.drop_menu #switch:checked ~ label+#NavWrap{
		left:auto;
		right:0;
		visibility:visible;
		max-height: calc(100vh - 60px);
		top: 60px;
		z-index: 1000;
	}
	.drop_menu #NavWrap{
		position: fixed;
		top: 60px;
		width:100%;
		z-index: 800;
		height:100%;
		overflow: auto;
		visibility: hidden;
		padding-top: 100px;
		box-sizing: border-box;
		transition:all 0.25s;
		padding-top: 0;
		position:fixed;
		top: 60px;
		left:auto;
		right:-100%;
		padding:0;
		width: 100%;
		height:100%;
		background: #fff;
	}
	.drop_menu #NavWrap::-webkit-scrollbar {
		height:10px;
		width:10px;
	}
	.drop_menu #NavWrap::-webkit-scrollbar-track {
		border-radius: 10px;
		background: #b3b3b3;
	}
	.drop_menu #NavWrap::-webkit-scrollbar-thumb {
		border-radius: 10px;
	}
	.drop_menu #NavWrap > ul {
		width: 100%;
		margin-right: 0;
		margin-left: auto;
	}
	.drop_menu #NavWrap .head-txt a {
		padding: 15px 0;
		text-decoration: none;
		text-align: center;
		width: auto;
		background:rgba(255,255,255,0.9);
	}
	.drop_menu #NavWrap .head-txt a span{
		padding: 10px 0px;
		border-left:none;
		white-space: normal;
	}
	.drop_menu #NavWrap ul {
	   display: block;
	   border-left:none;
	   height: 100%;
	   width: 100%;
	   padding: 0;
	}
	.drop_menu #NavWrap ul li {
		display:block;
		padding:0;
		border-bottom: solid 1px #c4c8cc;
	}
	.drop_menu #NavWrap .head-txt.drop_wrap {
		width: 100%;
	}
	.drop_menu #NavWrap ul li li{
		border-bottom:none;
	}
	.drop_menu #NavWrap ul li li:first-child{
		border-top: solid 1px #c4c8cc;
	}
	.drop_menu #NavWrap .head-txt.drop_wrap a{
		width: fit-content;
	}
	.drop_menu #NavWrap .head-txt a,
	.drop_menu #NavWrap .head-txt a:hover{
		font-size: 14px;
		text-align: left;
		width: auto;
		text-decoration: none;
		background:none;
		border:none;
		width: 100%;
		justify-content: flex-start;
	}
	html.translated-ltr .drop_menu #NavWrap .head-txt a,
	html.translated-ltr .drop_menu #NavWrap .head-txt a:hover{
		padding-right: 2em;
		width: 100%;
		align-items: center;
		justify-content: flex-start;
	}
	html.translated-ltr .drop_menu #NavWrap .head-txt.drop_wrap > a,
	html.translated-ltr .drop_menu #NavWrap .head-txt.drop_wrap > a:hover{
		width:fit-content;
	}
	.drop_menu #NavWrap .head-txt a:hove{
		background:none;
	}
	.drop_menu #NavWrap .head-txt a{
		padding: 19.25px 20px;
	}
	.drop_menu #NavWrap .head-txt a span{
		display:block;
		font-weight: 500;
		background:none;
		line-height: 1.4;
		padding: 0;
	}
	.drop_menu #NavWrap .head-txt a span br{
		display:block;
	}
	.drop_menu #NavWrap .head-txt a span:after{
		display:none;
	}
	.drop_menu #NavWrap .drop_wrap_top{
		position:relative;
	}
	.drop_menu #NavWrap .head-txt.drop_wrap i{
		display:block;
		width: 60px;
		cursor:pointer;
		position:absolute;
		top:0;
		right:0;
		z-index:10;
		bottom: 0;
		margin: auto;
	}
	.drop_menu #NavWrap ul li.drop_wrap i:before,
	.drop_menu #NavWrap ul li.drop_wrap i:after{
		content:"";
		width: 7px;
		height:2px;
		display:block;
		position:absolute;
		right:10px;
		top: 0;
		bottom:0;
		margin:auto;
		z-index:20;
		background: #282828;
		transition:transform .4s;
	}
	.drop_menu #NavWrap ul li.drop_wrap i:before{
		right: 19px;
		transform:rotate(45deg);
	}
	.drop_menu #NavWrap ul li.drop_wrap i:after{
		right:15px;
		transform:rotate(-45deg);
	}
	.drop_menu #NavWrap .head-txt.drop_wrap ul{
		opacity:0;
		visibility:hidden;
		display:block;
		position:static;
		transform: none;
		width:100%;
		max-height:0;
		overflow:hidden;
		transition:opacity .4s,visibility .4s, max-height .4s;
	}
	.drop_menu #NavWrap ul li.drop_wrap.opened ul{
		opacity:1;
		visibility:visible;
		max-height:100vh;
	}
	html.translated-ltr .drop_menu #NavWrap .head-txt ul{
		width:100%;
	}
	.drop_menu #NavWrap ul li.drop_wrap.opened i:before{
		transform: rotate(-45deg);
	}
	.drop_menu #NavWrap ul li.drop_wrap.opened i:after{
		transform:rotate(45deg);
	}
	.drop_menu #NavWrap .head-txt.drop_wrap ul li + li{
		border-top:solid 1px #ccc;
	}
	.drop_menu #NavWrap .head-txt.drop_wrap ul li a{
		font-size: 13px;
		text-align: left;
		width: auto;
		padding: 0;
		text-decoration: none;
		background: #f4f5f7;
		color:#333;
		border:none;
	}
	.drop_menu #NavWrap .head-txt.drop_wrap ul li a span{
		padding: 20px 30px;
		width: 100%;
	}
	.drop_menu #NavWrap .Navmenu .langage-area{
		display:none;
	}
	.drop_menu #NavWrap .Navmenu{
		justify-content:center;
		gap: 1.5em;
		padding-bottom: 7em;
	}
	.drop_menu #NavWrap .Navmenu .langage-area p{
		font-size: 0.75rem;
	}
	.drop_menu #NavWrap .Navmenu .contact_btn{
		order:2;
		width: 89%;
	}
	.drop_menu #NavWrap .Navmenu .Navmenu_area,
	header.fixedMenu .drop_menu #NavWrap .Navmenu .Navmenu_area{
		order:1;
		width:100%;
		background: #e9eef3;
	}
	.drop_menu #NavWrap .head-txt.drop_wrap:before{
		display:none;
	}
	.menu_top .langage-area{
		position: absolute;
		right: 65px;
		top: 0.75em;
		width: fit-content;
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
	}
	.menu_top .langage-area .lang-pragin{
		width: 73px;
		font-size: 12px;
		position: relative;
		z-index: 20;
	}
	.menu_top .langage-area .lang-en{
		width: 65px;
		position: relative;
		z-index: 15;
	}
	.menu_top .langage-area .lang-en a{
		box-shadow: rgba(0, 0, 0, 0.15) 0 5px 15px;
		display:block;
		padding: 3.21px 6px;
		min-height:38px;
		justify-content:center;
		align-items:center;
		display:flex;
		font-weight: 500;
		color: #101010;
	}
	.menu_top .langage-area .lang-en a .lang-icon{
		display:none;
	}
	.menu_top .gt_float_switcher .gt-selected .gt-current-lang{
		padding: 7px 7px 7px 10px;
	}
	.menu_top .gt_float_switcher img{
		width:24px;
		margin-right: 1px;
	}
	.menu_top .gt_float_switcher{
		font-size:0.86rem;
	}
	.menu_top .gt_float_switcher .gt_options{
		max-width: 100% !important;
		width:100%;
	}
	.menu_top .gt_float_switcher img{
		width:24px;
		display: none;
	}
	.menu_top .gt_float_switcher .gt_options a{
		padding:7px;
	}
	.drop_menu .contact_btn a{
		min-height: 4.006em;
		padding: 0 1em;
	}
	header.fixedMenu .menu_bottom{
		width:100%;
	}
	html.translated-ltr .menu_bottom{
		width:100%;
	}
}
@media screen and (max-width:350px) {
	header .menu_top #site_ttl{
		width: 40%;
	}
}
/* contents
-------------------------------------------------------------------*/
/*loding*/
/* ローディング画面の全体背景 */
#loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 29999;
  transition: opacity 0.7s,left 1s;
}
#loader.loader-close{
	left:100%;
}
#loader::before{
	content:"";
	width:100%;
	height:100%;
	background:#283d57;
	inset:0;
	transform:scale(0,1);
	transform-origin:left top;
	transition:.5s transform;
}
#loader.loader-cover::before{
	transform:scale(1,1);
	transform-origin:left top;
}
#loader .loader-image{
	position:absolute;
	inset:0;
	margin: auto;
	width: 498px; /* ロゴサイズは適宜調整 */
	height: 206px;
}
/* ロゴ画像のアニメーション */
#loader #loader-logo {
  opacity: 0;
  animation: logo-fadein-rotate 1.2s forwards;
  transition:.5s filter;
}
#loader.loader-cover #loader-logo{
	filter: brightness(0) invert(1);
}
/* ロゴのフェードイン＋回転 */
@keyframes logo-fadein-rotate {
  0% {
    opacity: 0;
    transform: rotate(0deg) scale(0.8);
  }
  60% {
    opacity: 1;
    transform: rotate(360deg) scale(1.05);
  }
  100% {
    opacity: 1;
    transform: rotate(360deg) scale(1);
  }
}
@media screen and (max-width:767px) {
	#loader .loader-image{
		width:80%;
		height:fit-content;
	}
}


main{
	display: block;
}
body.home .visual-area{
	height: 56.25vw;
	display: block;
}
body.home .visual-area{
	animation-delay: 2.5s;
}
body.home .visual{
	position: fixed;
	transform: translate(0px, 0px) !important;
	aspect-ratio: 1920/1080;
}
body.home .top_title{
	position:relative;
	margin-bottom: 2em;
}
body.home .top_title .top_style-sub{
	display:block;
	position:relative;
	font-size:1rem;
	font-weight:500;
	padding-left: 0.75em;
}
body.home .top_title .top_style-sub:before{
	content:"";
	width: 7px;
	height: 7px;
	border-radius:50%;
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	margin:auto;
	background: #f18900;
}
body.home .top_title .top_style02{
	font-size:3rem;
	font-family: "Sorts Mill Goudy", serif;
}
body.home .top_style03{
	font-family: "Zen Old Mincho", serif;
	font-size:1.875rem;
	font-weight:500;
	margin-bottom: 0.5em;
	line-height: 1.75;
}
html.translated-ltr body.home .top_style03 br{
	display:none;
}
@media screen and (max-width:1200px) {
	body.home .top_title .top_style-sub{
		font-size:0.875rem;
	}
	body.home .top_title .top_style02{
		font-size:2.5rem;
	}
	body.home .top_style03{
		font-size:1.5rem;
	}
}
@media screen and (max-width:767px) {
	body.home .top_title{
		margin-bottom: 1.5em;
	}
	body.home .top_title .top_style-sub{
		font-size:0.86rem;
		padding-left: 0.75em;
	}
	body.home .top_title .top_style02{
		font-size: 2.15rem;
		line-height: 1.4;
	}
	body.home .top_style03{
		font-size: 1.43rem;
		line-height: 1.6;
		margin-bottom: 1em;
	}
	body.home .top_title .top_style-sub:before{
		width:0.35em;
		height: 0.35em;
	}
}



body.home .visual .bg-mv{
	background: #fff;
	height: 100vh;
	width: 100vw;
	position: relative;
}
body.home .visual .bg-mv video{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  object-fit: cover;
  transition: opacity 1s ease;
  opacity: 0;
  pointer-events: none;
  height: auto;
}
body.home .visual .mv-tit{
	position:absolute;
	left: 6%;
	top: 13%;
	bottom:0;
	margin:auto;
	height:fit-content;
	text-align:left;
	transition:.5s opacity;
	width: 44%;
	z-index: 15;
}
body.home header.top_h1_action ~ main .visual .mv-tit{
	opacity:0;
}
body.home .visual .mv-tit .mv_style{
	font-size: min(3.4vw,4.125rem);
	font-family: "Zen Old Mincho", serif;
	color:#283d57;
	margin-bottom: 0.75em;
	line-height: 1.5;
	font-weight: 500;
	letter-spacing: 0.05em;
	overflow: hidden;
}
body.home .visual .mv-tit .once .slide-up-child{
	animation-delay: 3s;
}
body.home .visual .mv-tit p{
	font-size: 1.25rem;
	color:#666666;
	line-height:1.875;
}
body.home .visual-cover{
	position:relative;
	background-color: rgb(17 39 65 / 90%);
	transition:.4s background-color;
}
body.home .visual .bg-mv .movie-active{
	opacity:1;
}
@media screen and (max-width:1130px) {
	body.home .visual .mv-tit p{
		font-size:1rem;
	}
}
@media screen and (max-width:767px) {
	body.home .visual{
		height: 143vw !important;
		max-height: 100% !important;
		top: 60px !important;
		aspect-ratio: auto;
	}
	body.home .pin-spacer{
		inset: 0 !important;
		height: 143vw !important;
	}
	body.home .visual .mv-tit{
		left: 0;
		top: 3%;
		bottom:auto;
		margin:auto;
		padding-inline: 15px;
		width: 100%;
		z-index: 15;
	}
	body.home .visual .mv-tit .mv_style{
		font-size:2.214rem;
		margin-bottom: 0;
	}
	body.home .visual .mv-tit p{
		font-size:0.93rem;
		letter-spacing: 0.05em;
		line-height: 2;
	}
	body.home .visual-area{
		height:143vw;
		display: block;
	}
	body.home .visual .bg-mv{
		width:100vw;
		height:160vw;
		background: url(../img/top/bg-mv_sp.jpg) no-repeat top center / cover;
	}
	body.home .visual .bg-mv video{
		z-index:5;
		width:100vw;
		height:160vw;
	}
	body.home .visual .bg-mv video#loop-video{
		/* position:absolute; */
	}
}
@media screen and (max-width:350px) {
	body.home .visual .mv-tit .mv_style{
		font-size:1.85rem;
	}
	body.home .visual .mv-tit p{
		font-size:0.86rem;
		letter-spacing:-0.02em;
	}
}
body.home .scroll-area{
	position:relative;
	z-index:5;
	opacity: 0;
}
body.home .services{
	position: relative;
	z-index: 1;
	height: auto;
	padding-block: 10em 13em;
	transition:.5s background-color;
}
body.home .services img{
	max-width:100%;
	height:auto;
}
body.home .services .sitewrap{
	overflow:visible;
}
body.home .services_col{
	display:flex;
	justify-content:space-between;
	align-items: center;
	gap: 0;
}
body.home .services_col .common_btn a{
	border-color: #fff;
	max-width: 226px;
	min-height: 3.75em;
	width: 100%;
	background-color: transparent;
}
body.home .services_col .services_txt{
	width: 55%;
	color:#fff;
}
body.home .services_col .services_txt p{
	line-height: 2;
	font-feature-settings:'palt';
	margin-bottom: 3.25em;
	font-weight: 400;
}
body.home .services_col .services_image{
	width: 632px;
	position: relative;
	left: 72px;
}
body.home .services_col .services_image img{
	max-width:fit-content;
}
body.home .bg-white{
	position:relative;
	z-index:50;
	background: url(../img/top/bg-oversease.jpg) #fff no-repeat center bottom / contain;
	padding-bottom: 7em;
}
body.home .bg-white:before{
	content:"";
	width: 890px;
	height:596px;
	background:url(../img/top/txt-m.svg) no-repeat right bottom / contain;
	position:absolute;
	right: -4%;
	bottom: -1%;
}
@media screen and (max-width:1410px) {
	body.home .services_col .services_image{
		width:48%;
		left:0;
	}
	body.home .services_col .services_txt{
		width:48%;
	}
	body.home .services_col .services_image img{
		max-width:100%;
	}
}
@media screen and (max-width:1330px) {
	body.home .services{
		padding-inline:15px;
	}
	body.home .services_col .services_image{
		width:50%;
		left: 0;
	}

}
@media screen and (max-width:767px) {
	body.home .services{
		padding: 2em 0 3em;
	}
	body.home header.fixedMenu ~ main .visual-cover .scroll-area .services{
		background: rgb(17 39 65 / 0);
	}
	body.home .services_col{
		flex-wrap:wrap;
		gap: 2.5em;
	}
	body.home .services_col .services_image{
		width:100%;
	}
	body.home .services_col .services_txt{
		padding-inline: 10px;
		width:100%;
	}
	body.home .services_col .common_btn a{
		max-width: 320px;
		width: 76%;
		min-height: 3.605em;
		font-size: 1.07rem;
		padding: 0.25em 4.25em 0.25em 2.5em;
	}
	body.home .services_col .common_btn a:after{
		right: 26px;
		width: 14px;
		height: 7px;
	}
	body.home .services_col .services_txt p{
		margin-bottom:2em;
		font-size: 0.86rem;
	}
	body.home .bg-white:before{
		width: 307px;
		height: 209px;
		right: -1%;
		bottom: 1%;
	}
	body.home .bg-white{
		padding-bottom: 8em;
		background-image: url(../img/top/bg-oversease_sp.jpg);
	}
}

/*report-news*/
body.home .report-news{
	position:relative;
	background: #eef1f5;
	padding-block:80px;
}
body.home .report-news_wrap{
	max-width:1300px;
	margin:0 auto;
	text-align:left;
}
body.home .report-news_wrap .report-news_col{
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
}
body.home .report-news_wrap .report-news_col .report-news_item{
	width:48%;
	max-width:625px;
	background:#fff;
	padding: 50px 50px;
}
body.home .report-news_title{
	display:flex;
	justify-content:space-between;
	align-items:flex-end;
	margin-bottom: 0;
}
body.home .report-news_title .common_btn{
	margin-bottom:0.75em;
}
body.home .report-news_title .top_title{
	margin-bottom:0;
}
body.home .report-news_title .top_title .top_style02{
	font-size:2.5rem;
}
@media screen and (max-width:1330px) {
	body.home .report-news_wrap{
		padding-inline:15px;
	}
	body.home .report-news_wrap .report-news_col .report-news_item{
		padding:30px;
		width:49%;
	}
}
@media screen and (max-width:767px) {
	body.home .report-news{
		padding-block: 40px 60px;
	}
	body.home .report-news_wrap .report-news_col{
		gap:2em;
	}
	body.home .report-news_wrap .report-news_col .report-news_item{
		width:100%;
		max-width:100%;
		padding:20px 15px;
	}
	body.home .report-news_title{
		align-items:flex-start;
		margin-bottom: 0em;
	}
	body.home .report-area .report-news_title{
		margin-bottom:1em;
	}
	body.home .report-news_title .top_title .top_style02{
		font-size: 2.15rem;
	}
	body.home .report-news_title .common_btn{
		margin-bottom:0;
	}
	body.home .report-news_title .common_btn a:before{
		width:29px;
		height:14px;
		right:16px;
	}
}

/*overseas*/
body.home .overseas{
	position:relative;
	padding-block: 100px 105px;
}
body.home .overseas .top_title{
	margin-bottom:1em;
}
body.home .overseas img{
	max-width:100%;
	height:auto;
}
body.home .overseas .overseas_col{
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
	gap:4%
}
body.home .overseas .overseas_col .overseas_image{
	width: 48%;
}
body.home .overseas .overseas_col .overseas_txt{
	width: 44%;
	padding-top: 3em;
}
body.home .overseas .overseas_col .overseas_txt .overseas_tit{
	margin-bottom: 5em;
}
body.home .overseas .overseas_link{
	border-top:1px solid #c4c8cc;
}
body.home .overseas .overseas_item{
	border-bottom:1px solid #c4c8cc;
}
body.home .overseas .overseas_item a{
	display:flex;
	font-size: 1.25rem;
	padding: 1.75em 2.5em 1.75em 10px;
	text-decoration:none;
	position:relative;
	transition: .4s background;
}
body.home .overseas .overseas_item a:before{
	width: 36px;
	height: 18px;
	background: #f18900;
	border-radius: 42px;
	right: 10px;
	position: absolute;
	z-index: 0;
	display: inline-block;
	content: "";
	top: 0;
	bottom: 0;
	margin: auto;
}
body.home .overseas .overseas_item a:after{
	content: "";
	width: 14px;
	height: 7px;
	display: inline-block;
	position: absolute;
	margin:auto;
	top:0;
	bottom:0;
	right: 20px;
	transition:transform .2s,visibility .2s;
	background:url(../img/common/icon-arrow.svg) no-repeat center / contain;
	z-index:10;
}
@media (any-hover: hover) {
	body.home .overseas .overseas_item a:hover:after{
		animation-name: arrowRightUp;
		animation-duration: 0.5s;
		animation-iteration-count: 1;
	}
	body.home .overseas .overseas_item a:hover{
		background:#fff9eb;
	}
}
@media screen and (max-width:767px) {
	body.home .overseas{
		padding-block:0 60px;
	}
	body.home .overseas .overseas_inner{
		padding:0;
	}
	body.home .overseas .overseas_col{
		gap:2.5em;
		flex-direction:column-reverse;
	}
	body.home .overseas .overseas_col .overseas_image,
	body.home .overseas .overseas_col .overseas_txt{
		width:100%;
	}
	body.home .overseas .overseas_col .overseas_txt{
		padding:0 30px;
	}
	body.home .overseas .overseas_col .overseas_txt .overseas_tit p{
		font-size:0.86rem;
	}
	body.home .overseas .overseas_item a{
		font-size:0.86rem;
		padding: 1.75em 3.5em 1.75em 10px;
	}
	body.home .overseas .overseas_item a:before{
		width:26px;
		height:13px;
	}
	body.home .overseas .overseas_item a:after{
		width: 10px;
		height: 5px;
		right: 18px;
	}
	body.home .overseas .overseas_col .overseas_txt .overseas_tit{
		margin-bottom:2.5em;
	}
	body.home .overseas .overseas_col .overseas_txt .overseas_tit .top_style-sub{
		margin-bottom:0.5em;
	}
	body.home .overseas .overseas_col .overseas_txt .overseas_tit .top_title{
		margin-bottom:0.75em;
	}
}

/*follow*/
body.home .follow{
	position:relative;
	max-width:1300px;
	margin:0 auto;
	background:url(../img/top/bg-follow.jpg) no-repeat center / auto;
	min-height: 514px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-inline: 50px;
}
body.home .follow .follow_wrap{
	text-align:left;
}
body.home .follow .follow_col{
	display: flex;
	justify-content: space-between;
	align-items: self-end;
	margin-bottom: 7.5em;
}
body.home .follow .follow_col .follow_title{
	width:40%;
}
body.home .follow .follow_col .top_title{
	margin-bottom: 1em;
}
body.home .follow .follow_col .follow_title .top_style03{
	margin-bottom:0;
	font-size: 1.75rem;
}
body.home .follow .follow_col .follow_txt{
	width:50%;
}
body.home .follow .follow_col .follow_txt p{
	line-height:2;
	margin-bottom: 0.75em;
}
body.home .follow .common_btn{
	width: 250px;
	margin-left: auto;
}
body.home .follow .common_btn a{
	width:100%;
	min-height: 3.75em;
}
body.home .follow .common_btn a span:before{
	left: 30%;
}
html.translated-ltr body.home .follow .follow_col{
	margin-bottom:1em;
}
html.translated-ltr body.home .follow .follow_col .top_style03 .slide-up-child br{
	display:none;
}
@media screen and (max-width:1330px) {
	body.home .follow{
		width:calc(100% - 30px);
	}
	body.home .follow .follow_col .follow_title{
		width:45%;
	}
	body.home .follow .follow_col .follow_txt{
		width:60%;
	}
	body.home .follow .follow_col{
		margin-bottom: 6em;
	}
}
@media screen and (max-width:1000px) {
	body.home .follow .follow_col .follow_title .top_style03{
		font-size: 1.5rem;
	}
}
@media screen and (max-width:767px) {
	body.home .follow{
		background-image:url(../img/top/bg-follow_sp.jpg);
		min-height:0;
		padding:35px 15px;
		background-size:contain;
		min-height: 128vw;
	}
	body.home .follow .follow_col .top_title{
		margin-bottom: 0.5em;
	}
	body.home .follow .follow_col{
		flex-wrap:wrap;
		gap: 2.5em;
		margin-bottom: 6em;
	}
	body.home .follow .follow_col .follow_title{
		width:100%;
	}
	body.home .follow .follow_col .follow_txt{
		width:100%;
	}
	body.home .follow .follow_col .follow_txt p{
		margin-bottom:0;
		font-size: 0.86rem;
	}
	body.home .follow .common_btn{
		width: 209px;
	}
	body.home .follow .common_btn a{
		width:100%;
		min-height: 4.154em;
		padding-inline: 3em 5em;
	}
	body.home .follow .common_btn a span:before{
		left: -20%;
	}
	body.home .follow .common_btn a:before{
		width:30px;
		height:15px;
		right: 25px;
	}
	body.home .follow .common_btn a:after{
		width: 10px;
		height:5px;
		right: 34px;
	}
	body.home .follow .follow_col .follow_title .top_style03{
		font-size: 1.43rem;
	}
	html.translated-ltr body.home .follow .follow_col{
		gap: 1em;
	}
}


/*other*/
body.home .other{
	position:relative;
	z-index:52;
	background:#283d57;
	padding-block: 5em;
}
body.home .other .sitewrap{
	overflow:visible;
}
body.home .other .other_wrap{
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
	gap: 1.75em 2%;
}
body.home .other .other_wrap .other_item{
	width:48%;
	max-width:574px;
}
body.home .other .other_wrap .other_item img{
	max-width:100%;
	height:auto;
}
body.home .other .other_wrap .other_item a{
	display: flex;
	transition:.5s transform;
	background: #fff;
	min-height: 200px;
	justify-content: flex-start;
	align-items: center;
	padding: 0 50px;
	background-size:contain;
	background-repeat:no-repeat;
	background-position:right center;
	text-decoration:none;
	position: relative;
	overflow:hidden;
}
body.home .other .other_wrap .other_item a:before,
body.home .other .other_wrap .other_item a:after{
	position: absolute;
  z-index: 10;
  display: inline-block;
  content: "";
  width: 100%;
  height: 100%;
  border: 3px solid #ea8500;
  box-sizing: border-box;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  transform: scale(0);
  transition: transform .5s;
}
body.home .other .other_wrap .other_item a:before {
  border-bottom: none;
  border-right: none;
  transform-origin: left top;
}
body.home .other .other_wrap .other_item a:after {
  border-top: none;
  border-left: none;
  transform-origin: right bottom;
}
body.home .other .other_wrap .item-profile a{
	background-image:url(../img/top/img-profile.jpg);
}
body.home .other .other_wrap .item-staff a{
	background-image:url(../img/top/img-staff.jpg);
}
body.home .other .other_wrap .item-recruit a{
	background-image:url(../img/top/img-recruit.jpg);
}
body.home .other .other_wrap .item-contact a{
	background-image:url(../img/top/img-contact.jpg);
}
body.home .other .other_wrap .other_item a .top_style02{
	font-size:2.5rem;
	line-height: 1;
	text-shadow: 0 0 3px #fff,0 0 5px #fff,0 0 7px #fff,0 0 10px #fff;
}
body.home .other .other_wrap .other_item a .top_style-sub{
	margin-bottom: 0.875em;
	display: inline-block;
}
body.home .other .other_wrap .other_item a .top_title{
	margin-bottom:0;
}
@media (any-hover: hover) {
	body.home .other .other_wrap .other_item a:hover{
		transform:translateY(5px);
	}
	body.home .other .other_wrap .other_item a:hover:before,
	body.home .other .other_wrap .other_item a:hover:after{
	    transform: scale(1);
	  }
}
@media screen and (max-width:767px) {
	body.home .other{
		padding-block: 4em;
	}
	body.home .other .other_wrap{
		gap: 1.75em;
	}
	body.home .other .other_wrap .other_item{
		width:100%;
		max-width:100%;
	}
	body.home .other .other_wrap .other_item a{
		min-height:120px;
		padding: 0 15px;
	}
	body.home .other .other_wrap .other_item a .top_style02{
		font-size: 2.15rem;
	}
	body.home .other .other_wrap .other_item a .top_style-sub{
		margin-bottom: 0.875em;
	}
}






/* footer
-------------------------------------------------------------------*/
#pageTop {
	position: fixed;
	bottom: 15px;
	right: 5%;
	width: fit-content;
	z-index: 10000;
	transition:transform .4s;
	text-decoration: none;
	color: #282828;
}
#pageTop p{
	display:flex;
	justify-content:center;
	align-items:center;
	gap:0.5em;
}
#pageTop p span{
	width:fit-content;
}
.contact_fix{
	height:0;
	overflow:hidden;
	
}
footer.on ~ * #pageTop {
	bottom: 60px;
}
footer{
	padding-block: 80px 40px;
	position: relative;
	z-index: 9999;
	background: #fff;
}
footer .foot_top{
	position:relative;
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
	margin-bottom: 4.5em;
}
html.translated-ltr footer .foot_top .foot_top_left{
	width: 26%;
}
html.translated-ltr footer .foot_top .foot_top_right{
	width: 72%;
}
footer .foot_top .foot_left-bottom{
	margin-top:1em;
}
footer .foot_top .foot_left-bottom address{
	font-size:0.875rem;
	line-height:2;
}
footer .foot_top .foot_top_right{
	position:relative;
}
footer .foot_top .foot_top_right .foot_top_right_col{
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	gap: 2.5em;
}
html[lang="en"] footer .foot_top .foot_top_right .foot_top_right_col{
	margin-bottom:2em;	
}
footer .foot_top .foot_top_right .foot_top_right_col .foot_top_right_wrap{
	width:fit-content;
}
footer .foot_top .foot_top_right .foot_top_right_col .foot_top_right_wrap .foot_txt01 a{
	font-size:0.875rem;
	font-weight:bold;
	color: #282828;
}
footer .foot_top .foot_top_right .foot_top_right_col .foot_top_right_wrap .foot_txt01 + .foot_txt01{
	margin-top:1em;
}

footer .foot_top .foot_top_right .foot_top_right_col .foot_top_right_wrap .foot_txt01 + .foot_txt02{
	margin-top:0.5em;
}
footer .foot_top .foot_top_right .foot_top_right_col .foot_top_right_wrap .foot_txt02{
	line-height:1;
}
footer .foot_top .foot_top_right .foot_top_right_col .foot_top_right_wrap .foot_txt02 a{
	font-size: 0.85rem;
	padding-left:1em;
	border-left:1px solid #c4c8cc;
	display:block;
	padding-block: 0.675em;
	color: #282828;
}
footer .foot_top .foot_top_right .foot_top_right_col .foot_top_right_wrap a{
	text-decoration:none;
}
footer .foot_top .foot_top_right .foot_top_right_col .foot_top_right_wrap a span{
	position:relative;
}
footer .foot_top .foot_top_right .foot_top_right_col .foot_top_right_wrap a span:before{
	content:"";
	width:100%;
	height:1px;
	background:#000;
	position:absolute;
	left:0;
	bottom:-0.125em;
	transition:.5s transform;
	transform:scale(0,1);
	transform-origin:right top;
}
footer .contact_btn{
	width:163px;
	margin-left:auto;
}
footer .contact_btn a{
	min-height: 2.86em;
	padding: 0;
}
footer .foot_bottom{
	display:flex;
	justify-content:space-between;
	align-items:flex-end;
}
footer .foot_bottom .foot_bottom_lick{
	display:flex;
	justify-content:flex-start;
	align-content:stretch;
	gap:1em;
}
footer .foot_bottom .foot_bottom_lick a{
	font-size:0.75rem;
	text-decoration:underline;
	text-underline-offset:5px;
	display:block;
	line-height:1.875;
}
footer .foot_bottom small{
	font-size:0.75rem;
}
main a.page_link {
	margin-top: -60px;
	padding-top: 60px;
	display: block;
	position:relative;
	z-index:-10;
}
@media (any-hover: hover) {
	footer .foot_top .foot_top_right .foot_top_right_col .foot_top_right_wrap a:hover span:before{
		transform:scale(1,1);
		transform-origin:left top;
	}
	footer .foot_bottom .foot_bottom_lick a:hover{
		text-decoration:none;
	}
	#pageTop:hover{
		transform:translateY(5px);
	}
}
@media screen and (max-width:1150px) {
	footer .foot_top{
		gap:2em;
	}
}
@media screen and (max-width:767px) {
	#pageTop {
	    width: 96px;
	    right:10px;
	    bottom: 60px;
	    z-index: 9999;
	}
	#pageTop p span{
		width: 60px;
		display: block;
		text-shadow: 0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff;
	}
	#pageTop p .pagetop_image{
		width: 30px;
	}
	.contact_fix{
		position:fixed;
		bottom:0;
		left:0;
		right:0;
		margin:auto;
		z-index: 9999;
		height: auto;
		overflow: visible;
	}
	.contact_fix a{
		position:relative;
		display:flex;
		justify-content:center;
		align-items:center;
		font-weight:500;
		background:#f18900;
		height: 55px;
		color: #fff;
	}
	.contact_fix a span{
		position:relative;
		padding-left:1em;
	}
	.contact_fix a span:after{
		content: "";
		width:17px;
		height:14px;
		background: url(../img/common/icon-mail.svg) no-repeat center / contain;
		position:absolute;
		left:-8px;
		top:0;
		bottom: 0;
		margin: auto;
		transition:filter .4s;
	}
	footer{ padding-block:30px 80px;}
	body.post-name-contact footer,
	body.post-name-thanks footer{
		padding-bottom:30px;
	}
	footer .foot_top .foot_left-bottom,
	footer .foot_top .foot_top_right .foot_top_right_col,
	footer .contact_btn,
	footer .foot_bottom .foot_bottom_lick{
		display:none;
	}
	html.translated-ltr footer .foot_top .foot_top_left{
		width:100%;
	}
	footer .foot_top,
	footer .foot_bottom{
		justify-content:center;
	}
	footer .foot_top{
		margin-bottom: 2em;
	}
	html[lang="en"] footer .foot_top{
		gap:0;
	}
	footer .foot_bottom small{
		font-size:0.86rem;
	}
	html.translated-ltr #pageTop{
		width:fit-content;
	}
	html.translated-ltr #pageTop p span{
		width:fit-content;
	}
}