/*-------------------------
header
---------------------------*/
header {
	padding-top: 70px;
}

header a,
header img {
	display: block;
	width: 100%;
}

header a,
header a::after {
	transition: 200ms ease-out;
}

#floatingNaviWrapper {
	background-color: #fff;
	width: 100%;
	height: 70px;
	position: fixed;
	top: 0;
	z-index: 20;
}

#floatingNavi {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	max-width: 1140px;
	padding: 10px 0;
	margin: 0 auto;
}

#floatingNavi h1 {
	width: 100%;
	max-width: 286px;
	padding: 0 20px 0 0;
}

#floatingNavi h1 a:hover {
	opacity: .5;
}

#floatingNavi #fa_logo {
	width: 100%;
	max-width: 286px;
	padding: 0 20px 0 0;
}

#floatingNavi #fa_logo a:hover {
	opacity: .5;
}

#navigation {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: calc(100% - 266px);
	padding-left: 20px;
}

#globalNavi {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

#globalNavi li {
	position: relative;
}

#globalNavi li:nth-child(n+2) {
	margin-left: 20px;
}

#globalNavi a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

#globalNavi a span {
	display: inline-block;
	padding-right: 4em;
	position: relative;
}

#globalNavi a span::after {
	display: inline-block;
	content: "｜";
	cursor: text;
}

#globalNavi a:hover {
	color: #e60012;
}

#globalNavi a:hover span::after {
	color: #000;
}

#globalNavi figure {
	max-width: 58px;
}

#entry {
	display: inline-block;
	width: auto;
	position: absolute;
	right: 0;
	bottom: 0;
}

#memberNavi {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-left: 30px;
}

#memberNavi li:nth-child(n+2) {
	margin-left: 10px;
}

#memberNavi a {
	display: block;
	width: 40px;
	height: 40px;
	padding: 3px;
	position: relative;
	border-radius: 3px;
	transition: .2s ease-out;
}

#memberNavi a:hover {
	background-color: #768787;
}

#memberNavi img {
	display: block;
	width: 100%;
	transition: .2s ease-out;
}

#memberNavi a:hover img {
	filter: brightness(0) invert(1);
}

#memberNavi a span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #e60012;
	width: 20px;
	height: 20px;
	color: #fff;
	font-weight: 400;
	border-radius: 50%;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 20;
	-webkit-transform: translate(50%, -50%);
	transform: translate(50%, -50%);
}

/* SP floating Navi */
#memberNaviSp {
	display: none;
	width: 100%;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 21;
	border-top: 1px solid #dbdbdb;
}

#memberNaviSp li {
	width: 25%;
}

#memberNaviSp a,
#memberNaviSp img {
	display: block;
	width: 100%;
}

#memberNaviSp a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #fff;
	height: 60px;
	color: #b7c1c2;
	font-size: 10px;
	font-weight: 700;
	position: relative;
}

#memberNaviSp img {
	max-width: 40px;
}

#memberNaviSp a span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #e60012;
	width: 20px;
	height: 20px;
	color: #fff;
	font-weight: 400;
	border-radius: 50%;
	position: absolute;
	top: 1px;
	right: 0;
}


/* Navigation */
#pageNavi {
	background-color: #768787;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}

#pageNavi ul {
	max-width: 1140px;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

#pageNavi li {
	width: 20%;
	border-right: 1px solid #fff;
	border-left: 1px solid #fff;
}

#pageNavi li:nth-child(n+2) {
	border-left-width: 0;
}

#pageNavi a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 50px;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	position: relative;
}

#pageNavi a:hover {
	background-color: #fff;
	color: #a0aab0;
	text-decoration: none;
}

#pageNavi a::after {
	display: block;
	content: "";
	background-color: #e60012;
	width: 0;
	height: 5px;
	position: absolute;
	bottom: 0;
	left: 50%;
}

#pageNavi a:hover::after {
	width: 100%;
	left: 0;
}

/* sp Page Navi */
#pageNaviSp {
	display: none;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 21;
	transition: 200ms ease-out;
	-webkit-transform: translateY(calc(-100% + 30px));
	transform: translateY(calc(-100% + 30px));
}

#pageNaviSp.open-menu {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

#pageNaviSp dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #768787;
	width: 100%;
}

#menu {
	width: 60px;
	height: 0;
	padding-top: 30px;
	overflow: hidden;
	position: relative;
	cursor: pointer;
}

#menu::before,
#menu::after {
	display: block;
	content: "";
	background-color: #fff;
	width: 24px;
	height: 1px;
	position: absolute;
	top: calc(50% - 1px);
	left: 18px;
	transition: .2s ease-out;
}

#menu::before {
	-webkit-transform: translateY(-4px);
	transform: translateY(-4px);
}

#menu::after {
	-webkit-transform: translateY(4px);
	transform: translateY(4px);
}

#menu.close-button::before {
	transform: translateY(0) rotate(225deg);
}

#menu.close-button::after {
	transform: translateY(0) rotate(-225deg);
}

#pageNaviSp dd {
	width: 100%;
	padding: 20px 20px 10px;
}

#pageNaviSp ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

#pageNaviSp li {
	width: 50%;
	border-bottom: 1px solid #fff;
}

#pageNaviSp li:nth-child(2n-1) {
	border-right: 1px solid #fff;
}

#pageNaviSp li:last-child {
	border-bottom-width: 0;
}

#pageNaviSp li:nth-last-child(2) {
	border-bottom-width: 0;
}

#pageNaviSp a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 50px;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	position: relative;
}

@media screen and (max-width: 800px) {
	header {
		height: 115px;
		padding-top: 0;
	}

	#floatingNaviWrapper {
		height: auto;
	}

	#floatingNavi {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		padding: 40px 0 0;
	}

	#floatingNavi #fa_logo {
		max-width: 306px;
		padding: 0 20px;
		margin: 5px 0;
	}

	#floatingNavi h1 {
		max-width: 306px;
		padding: 0 20px;
		margin: 5px 0;
	}

	#navigation {
		width: 100%;
		padding-left: 0;
	}

	#globalNavi {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		width: 100%;
		padding: 10px 0;
	}

	#globalNavi li:nth-child(n+2) {
		margin-left: 5px;
	}

	#globalNavi a {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
		font-size: 12px;
		line-height: 1;
	}

	#globalNavi figure {
		width: 28px;
	}

	#globalNavi li:last-child {
		display: none;
	}

	#memberNavi {
		display: none;
	}

	#memberNaviSp {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}

	/* Navigation */
	#pageNavi {
		display: none;
	}

	#pageNaviSp {
		display: block;
	}

	ul.loginmenu {
		display: none;
	}
}

#globalNavi .loginmenu li ul li {
	margin: 0;
}

ul.loginmenu {
	margin-left: 80px;
}

ul.loginmenu li ul {
	width: 115px;
	display: none;
	position: absolute;
	top: 20px;
	right: 10px;
	background: #fff;
	border: solid 1px #ccc;
	z-index: 1;
}

.loginmenu li ul li {
	width: 110px;
	float: none !important;
	border: none;
	padding: 0 !important;
	text-align: left;
	margin: 0;
}

.loginmenu li ul li a {
	display: inline-block;
	width: 110px;
	padding: 5px 0 5px 0;
}

.loginmenu li ul li a:hover {
	text-decoration: underline;
}

.loginmenu li span.u_point {
	color: red;
	font-size: 18px;
	font-weight: bold;
	margin-left: 33px;
	margin-right: 3px;
}

#globalNavi .loginmenu li.userpaoint {
	margin: 0;
}

#globalNavi .loginmenu li.username,
#globalNavi .loginmenu li.userpaoint {
	cursor: pointer;
}

/*-------------------------
ヘッダーお問い合わせボタン
---------------------------*/
#headerNaviContact li:last-child {
	margin: 0 0 0 15px;
}

#headerNaviContact li:last-child a:hover {
	background-color: #fff;
	color: #a0aab0;
}

#headerNaviContact li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: baseline;
	-ms-flex-align: baseline;
	align-items: baseline;
	line-height: 1.7 !important;
	font-size: 14px;
}

#headerNaviContact li:last-child a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #e60012;
	width: 110px;
	max-width: 200px;
	color: #fff;
	font-weight: 700;
	padding: 5px 10px;
	border: 1px solid #e60012;
	transition: 200ms ease-out;
	cursor: pointer;
}

ul.loginmenu.clearfix.solution {
	font-size: 14px;
}

ul.loginmenu.clearfix.solution li ul li {
	right: 169px;
}

ul.loginmenu.clearfix.solution li ul li a {
	margin: 0 20px;
}

ul.loginmenu.clearfix.solution li ul li a:hover {
	color: red;
}

#page_solution>header>div>nav>div>ul>li.username,
li.userpaoint {
	cursor: pointer;
}


@media only screen and (max-width: 800px) {
	#headerNaviContact li:last-child {
		padding-bottom: 10px;
	}
}

/*-------------------------
header
---------------------------*/
header {
	padding-top: 70px;
}

header a,
header img {
	display: block;
	width: 100%;
}

header a,
header a::after {
	transition: 200ms ease-out;
}

#floatingNaviWrapper {
	background-color: #fff;
	width: 100%;
	height: 70px;
	position: fixed;
	top: 0;
	z-index: 20;
}

#floatingNavi {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	max-width: 1140px;
	padding: 10px 0;
	margin: 0 auto;
}

#floatingNavi h1 {
	width: 100%;
	max-width: 286px;
	padding: 0 20px 0 0;
}

#floatingNavi h1 a:hover {
	opacity: .5;
}

#floatingNavi #fa_logo {
	width: 100%;
	max-width: 286px;
	padding: 0 20px 0 0;
}

#floatingNavi #fa_logo a:hover {
	opacity: .5;
}

#navigation {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: calc(100% - 266px);
	padding-left: 20px;
}

#globalNavi {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

#globalNavi li {
	position: relative;
}

#globalNavi li:nth-child(n+2) {
	margin-left: 20px;
}

#globalNavi a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	color: #000;
}

#globalNavi a span {
	display: inline-block;
	padding-right: 4em;
	position: relative;
}

#globalNavi a span::after {
	display: inline-block;
	content: "｜";
	cursor: text;
}

#globalNavi a:hover {
	color: #e60012;
	text-decoration: none;
}

#globalNavi a:hover span::after {
	color: #000;
}

#globalNavi figure {
	max-width: 58px;
}

#entry {
	display: inline-block;
	width: auto;
	position: absolute;
	right: 0;
	bottom: 0;
}

#memberNavi {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-left: 30px;
}

#memberNavi li:nth-child(n+2) {
	margin-left: 10px;
}

#memberNavi a {
	display: block;
	width: 40px;
	height: 40px;
	padding: 3px;
	position: relative;
	border-radius: 3px;
	transition: .2s ease-out;
}

#memberNavi a:hover {
	background-color: #768787;
}

#memberNavi img {
	display: block;
	width: 100%;
	transition: .2s ease-out;
}

#memberNavi a:hover img {
	filter: brightness(0) invert(1);
}

#memberNavi a span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #e60012;
	width: 20px;
	height: 20px;
	color: #fff;
	font-weight: 400;
	border-radius: 50%;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 20;
	-webkit-transform: translate(50%, -50%);
	transform: translate(50%, -50%);
}

/* SP floating Navi */
#memberNaviSp {
	display: none;
	width: 100%;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 21;
	border-top: 1px solid #dbdbdb;
}

#memberNaviSp li {
	width: 25%;
}

#memberNaviSp a,
#memberNaviSp img {
	display: block;
	width: 100%;
}

#memberNaviSp a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #fff;
	height: 60px;
	color: #b7c1c2;
	font-size: 10px;
	font-weight: 700;
	position: relative;
}

#memberNaviSp img {
	max-width: 40px;
}

#memberNaviSp a span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #e60012;
	width: 20px;
	height: 20px;
	color: #fff;
	font-weight: 400;
	border-radius: 50%;
	position: absolute;
	top: 1px;
	right: 0;
}


/* Navigation */
#pageNavi {
	background-color: #768787;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}

#pageNavi ul {
	max-width: 1140px;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

#pageNavi li {
	width: 20%;
	border-right: 1px solid #fff;
	border-left: 1px solid #fff;
}

#pageNavi li:nth-child(n+2) {
	border-left-width: 0;
}

#pageNavi a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 50px;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	position: relative;
}

#pageNavi a:hover {
	background-color: #fff;
	color: #a0aab0;
}

#pageNavi a::after {
	display: block;
	content: "";
	background-color: #e60012;
	width: 0;
	height: 5px;
	position: absolute;
	bottom: 0;
	left: 50%;
}

#pageNavi a:hover::after {
	width: 100%;
	left: 0;
}

/* sp Page Navi */
#pageNaviSp {
	display: none;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 21;
	transition: 200ms ease-out;
	-webkit-transform: translateY(calc(-100% + 30px));
	transform: translateY(calc(-100% + 30px));
}

#pageNaviSp.open-menu {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

#pageNaviSp dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #768787;
	width: 100%;
}

#menu {
	width: 60px;
	height: 0;
	padding-top: 30px;
	overflow: hidden;
	position: relative;
	cursor: pointer;
}

#menu::before,
#menu::after {
	display: block;
	content: "";
	background-color: #fff;
	width: 24px;
	height: 1px;
	position: absolute;
	top: calc(50% - 1px);
	left: 18px;
	transition: .2s ease-out;
}

#menu::before {
	-webkit-transform: translateY(-4px);
	transform: translateY(-4px);
}

#menu::after {
	-webkit-transform: translateY(4px);
	transform: translateY(4px);
}

#menu.close-button::before {
	transform: translateY(0) rotate(225deg);
}

#menu.close-button::after {
	transform: translateY(0) rotate(-225deg);
}

#pageNaviSp dd {
	width: 100%;
	padding: 20px 20px 10px;
}

#pageNaviSp ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

#pageNaviSp li {
	width: 50%;
	border-bottom: 1px solid #fff;
}

#pageNaviSp li:nth-child(2n-1) {
	border-right: 1px solid #fff;
}

#pageNaviSp li:last-child {
	border-bottom-width: 0;
}

#pageNaviSp li:nth-last-child(2) {
	border-bottom-width: 0;
}

#pageNaviSp a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 50px;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	position: relative;
}

@media screen and (max-width: 800px) {
	header {
		height: 115px;
		padding-top: 0;
	}

	#floatingNaviWrapper {
		height: auto;
	}

	#floatingNavi {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		padding: 40px 0 0;
	}

	#floatingNavi #fa_logo {
		max-width: 306px;
		padding: 0 20px;
		margin: 5px 0;
	}

	#floatingNavi h1 {
		max-width: 306px;
		padding: 0 20px;
		margin: 5px 0;
	}

	#navigation {
		width: 100%;
		padding-left: 0;
	}

	#globalNavi {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		width: 100%;
		padding: 10px 0;
	}

	#globalNavi li:nth-child(n+2) {
		margin-left: 5px;
	}

	#globalNavi a {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
		font-size: 12px;
		line-height: 1;
	}

	#globalNavi figure {
		width: 28px;
	}

	#globalNavi li:last-child {
		display: none;
	}

	#memberNavi {
		display: none;
	}

	#memberNaviSp {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}

	/* Navigation */
	#pageNavi {
		display: none;
	}

	#pageNaviSp {
		display: block;
	}

	ul.loginmenu {
		display: none;
	}
}

#globalNavi .loginmenu li ul li {
	margin: 0;
}

ul.loginmenu {
	margin-left: 80px;
}

ul.loginmenu li ul {
	width: 115px;
	display: none;
	position: absolute;
	top: 20px;
	right: 10px;
	background: #fff;
	border: solid 1px #ccc;
	z-index: 1;
}

.loginmenu li ul li {
	width: 110px;
	float: none !important;
	border: none;
	padding: 0 !important;
	text-align: left;
	margin: 0;
}

.loginmenu li ul li a {
	display: inline-block;
	width: 110px;
	padding: 5px 0 5px 0;
}

.loginmenu li ul li a:hover {
	text-decoration: underline;
}

.loginmenu li span.u_point {
	color: red;
	font-size: 18px;
	font-weight: bold;
	margin-left: 33px;
	margin-right: 3px;
}

#globalNavi .loginmenu li.userpaoint {
	margin: 0;
}

#globalNavi .loginmenu li.username,
#globalNavi .loginmenu li.userpaoint {
	cursor: pointer;
}

/*-------------------------
ヘッダーお問い合わせボタン
---------------------------*/
#headerNaviContact li:last-child {
	margin: 0 0 0 15px;
}

#headerNaviContact li:last-child a:hover {
	background-color: #fff;
	color: #a0aab0;
}

#headerNaviContact li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: baseline;
	-ms-flex-align: baseline;
	align-items: baseline;
	line-height: 1.7 !important;
	font-size: 14px;
}

#headerNaviContact li:last-child a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #e60012;
	width: 110px;
	max-width: 200px;
	color: #fff;
	font-weight: 700;
	padding: 5px 10px;
	border: 1px solid #e60012;
	transition: 200ms ease-out;
	cursor: pointer;
}

ul.loginmenu.clearfix.solution {
	font-size: 14px;
}

ul.loginmenu.clearfix.solution li ul li {
	right: 169px;
}

ul.loginmenu.clearfix.solution li ul li a {
	margin: 0 20px;
}

ul.loginmenu.clearfix.solution li ul li a:hover {
	color: red;
}

#page_solution>header>div>nav>div>ul>li.username,
li.userpaoint {
	cursor: pointer;
}


@media only screen and (max-width: 800px) {
	#headerNaviContact li:last-child {
		padding-bottom: 10px;
	}
}

.gnavi__wrap {
	display: none;
}

.gnavi__section:hover .gnavi__wrap {
	display: block !important;
}

.gnavi__section:hover .dropdown__lists {
	display: block !important;
}

.dropdown__lists {
	display: block !important;
	width: 100%;
	position: absolute;
	z-index: 2;
}

.dropdown__list {
	background-color: #768787 !important;
	transition: all .3s;
	position: relative;
}

.dropdown__list:nth-child(odd) {
	border-top: 1px solid #fff;
	border-left: 1px solid #fff !important;
	border-right: 1px solid #fff !important;
	width: 20.05% !important;
}

.dropdown__list:nth-child(even) {
	border-top: 1px solid #fff;
	border-left: 1px solid #fff !important;
	border-right: 1px solid #fff !important;
	border-bottom: 1px solid #fff !important;
	width: 20.05% !important;
}

.dropdown__list:not(:first-child)::before {
	content: "";
	width: 100%;
	height: 1px;
	background-color: #768787 !important;
	position: absolute;
	top: 0;
	left: 0;
}

.dropdown__list:hover {
	background-color: #768787 !important;
}

#pageNavi .dropdown__list a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	position: relative;
}

.dropdown__list a::before {
	content: '';
	display: block;
	width: 6px;
	height: 6px;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	transform: rotate(135deg);
	position: absolute;
	right: 15px;
	top: calc(50% - 5px);
}

#prodcutDetailButton {
	display: none !important;
}

@media screen and (max-width: 640px) {
	#prodcutDetailButton {
		display: flex !important;
		margin-top: 0px !important;
	}

	.pc {
		display: none !important;
	}
}

#searchAreaWrapper_sp {
	display: none;
}

#globalNavi li:last-child {
	display: none;
}

#globalNavi ul.loginmenu.clearfix li {
	display: block;
}

@media screen and (max-width: 800px) {
	body#home {
		box-sizing: border-box;
	}

	body#home * {
		box-sizing: border-box;
	}

	header {
		height: 135px !important;
	}

	#globalNavi li:nth-child(3) {
		display: none;
	}

	#globalNavi li:last-child {
		display: block;
	}

	#globalNavi li.globalNavi_sp_inquiry a {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: initial !important;
		position: relative;
		width: 112px;
		height: 28px;
		background: #E60012;
		color: #fff;
		font-size: 12px;
		font-weight: 700;
		text-align: center;
		border-radius: 14px;
		margin-left: 10px !important;
	}

	#globalNavi li.globalNavi_sp_inquiry a:before {
		position: relative;
		content: '';
		display: inline-block;
		width: 12px;
		height: 9px;
		background: url(/ecsuites/img/header/icon_header_inquiry_sp.svg) no-repeat center center;
		background-size: contain;
		margin-right: 5px;
	}

	#headerNaviContact,
	#searchAreaWrapper {
		display: none;
	}

	#searchAreaWrapper_sp {
		display: block;
	}

	#searchAreaWrapper_sp #searchArea_sp_tabSelect {
		display: flex;
		align-items: flex-end;
	}

	#searchAreaWrapper_sp #searchArea_sp_tabSelect li {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		width: calc(100% / 4);
		height: 54px;
		font-size: 12px;
		font-weight: 700;
		text-align: center;
		line-height: 1.2;
		border: 1px solid #fff;
		padding-top: 8px;
		cursor: pointer;
	}

	#searchAreaWrapper_sp #searchArea_sp_tabSelect li:after {
		position: absolute;
		bottom: 0;
		left: 0;
		content: '';
		width: 100%;
		height: 3px;
		background: #CBDADA;
	}

	#searchAreaWrapper_sp #searchArea_sp_tabSelect li.active:after {
		background: #4B5858;
	}

	#searchAreaWrapper_sp #searchArea_sp_tabSelect a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
	}

	#searchAreaWrapper_sp input[type="text"] {
		width: calc(100% - 36px) !important;
		height: 36px !important;
		min-height: 36px !important;
		font-size: 14px;
		padding: 6px 8px !important;
		border-radius: 0;
		border: none;
		outline: 0;
		margin: 0;
	}

	#searchAreaWrapper_sp input[type="text"]::placeholder,
	#searchAreaWrapper_sp input[type="text"]:-ms-input-placeholder,
	#searchAreaWrapper_sp input[type="text"]::-ms-input-placeholder {
		color: #757575;
	}

	#searchAreaWrapper_sp input[type="text"]:focus {
		outline: 0;
	}

	#searchAreaWrapper_sp input[type="text"]:focus::placeholder,
	#searchAreaWrapper_sp input[type="text"]:focus:-ms-input-placeholder,
	#searchAreaWrapper_sp input[type="text"]:focus::-ms-input-placeholder {
		color: transparent !important;
	}

	#searchAreaWrapper_sp input[type="submit"] {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 36px;
		height: 36px;
		background: #000 url(/ecsuites/img/header/icon_header_search_sp.svg) no-repeat center center;
		background-size: 22px 22px;
		color: #fff;
		border: none !important;
		border: 1px solid #fff;
		padding: 0;
		outline: 0;
		cursor: pointer;
		text-indent: -9999px;
	}

	#searchAreaWrapper_sp input[type="submit"]:before {
		position: absolute;
		top: 0;
		left: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		content: '';
	}

	#searchAreaWrapper_sp .searchArea_sp_item {
		display: none;
		background: #F4F4F4;
		padding: 10px;
		margin: 0 auto;
	}

	#searchAreaWrapper_sp .searchArea_sp_item fieldset {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		gap: 0;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_02 #___gcse_1 {
		height: 36px;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_02 .gsc-control-cse {
		border-color: transparent;
		background-color: transparent;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_02 .gsib_a {
		width: 223.993px;
		height: 35.990px;
		padding: 0;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_02 .gsib_a input[type="text"] {
		background-position: left 8px center !important;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_02 form.gsc-search-box {
		margin-bottom: 0;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_02 table.gsc-search-box {
		margin-bottom: 0;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_02 table.gsc-search-box td .gsst_b {
		text-align: right;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_02 .gsc-input-box {
		border: none;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_02 .gsc-search-button.gsc-search-button-v2 {
		width: 36px;
		height: 36px;
		background: #000 url(/ecsuites/img/header/icon_header_search_sp.svg) no-repeat center center;
		background-size: 22px 22px;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_02 .gsc-search-button.gsc-search-button-v2 svg {
		display: none;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_03 form+form {
		margin-top: 10px;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_03 fieldset>label {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		gap: 0;
		width: 100%;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_03 fieldset>label span {
		display: block;
		width: 120px;
		font-size: 12px;
		line-height: 1;
		text-align: center;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_03 fieldset>label span img {
		display: block;
		width: 86px;
		height: auto;
		margin: 0 auto 3px;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_03 fieldset>label span i {
		font-style: normal;
		font-size: 9px;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_03 fieldset>label input[type="text"] {
		width: calc(100% - 36px - 120px) !important;
	}

	#searchAreaWrapper_sp .searchArea_sp_item.category_03 #empty_quick_code_message_sp {
		color: #f00;
		font-size: 12px;
		text-align: right;
		line-height: 1.6;
	}
}