/* Concept */
/*common*/
footer {
	background-color: #545454;
	color: #fff;
	position: relative;
	z-index: 4;
	padding: 54px 0 50px;
}
footer .nav {
	text-align: left;
	padding-left: 132px;
	margin-bottom: 0;
}
footer .nav a {
	padding: 0 10px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
footer .nav > li {
	margin-right: 2px;
}
footer .nav > li:nth-child(2)::before {
	content: "\7C";
}
footer .f-top {
	position: relative;
	padding-bottom: 73px;
}
footer .f-top .social-btn {
	position: absolute;
	top: -2px;
	right: 142px;
}
footer .f-top .social-btn li {
	display: inline-block;
}
footer .f-top .social-btn li + li {
	margin-left: 33px;
}
footer .f-group {
	padding-bottom: 73px;
}
footer .f-group .left {
	width: 311px;
	padding-left: 48px;
	float: left;
}
footer .f-group .left .f-logo {
	position: relative;
	margin-bottom: 17px;
}
footer .f-group .left .f-logo .social-btn {
	width: 32px;
	position: absolute;
	right: -50px;
	top: 23px;
	display: none;
}
footer .f-group .left .f-logo .social-btn li {
	display: block;
	margin-bottom: 20px;
}
footer .f-group .left .tel-ft {
	margin-bottom: 14px;
}
footer .f-group .left ul.list_btn {
	padding-top: 18px;
}
footer .f-group .left ul.list_btn li {
	float: left;
}
footer .f-group .left ul.list_btn li + li {
	float: right;
	padding-right: 9px;
}
footer .f-group .right {
	float: right;
	width: 555px;
	padding-top: 47px;
}
footer .f-group .right .vcard dl {
	display: table;
	width: 100%;
	padding-bottom: 17px;
}
footer .f-group .right .vcard dl dt, footer .f-group .right .vcard dl dd {
	display: table-cell;
	vertical-align: top;
	line-height: 17px;
}
footer .f-group .right .vcard dl dt {
	width: 106px;
}
footer #socialbuttons, footer #socialbuttons_sp {
	padding-bottom: 17px;
	text-align: center;
}
footer address {
	font-size: 13px;
	padding-bottom: 0;
	letter-spacing: 2px;
	padding-top: 0;
	text-align: center;
	margin: 0 auto;
	padding: 0;
}
footer address a {
	display: block;
	letter-spacing: 1px;
	font-size: 12px;
}
footer address span {
	margin: 0;
}
.header-box .b_tel {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	flex-direction: column;
	position: absolute;
	top: 0;
	right: 0;
}
.header-box .h_top .left .logoh {
	padding-left: 10px;
	margin-bottom: 4px;
}
@media screen and (max-width: 1300px) {
	.header-box .h_top .left {
		left: 0 !important;
	}
	.header-box .h_top .right {
		right: 0 !important;
	}
}
.header-box .h_top .left ul {
	position: absolute;
	top: 9px;
	left: 219px;
}
.header-box .h_top .left ul li {
	margin-bottom: -1px;
}
.header-box .h_top .right {
	width: 205px;
	position: absolute;
	z-index: 2;
	top: 52px;
	right: -149px;
}
.header-box .h_top .right ul li {
	float: left;
}
.header-box .h_top .right ul li + li {
	width: 85px;
	margin-left: 5px;
}
.header-box .h_top .right ul a {
	display: block;
	margin-bottom: 2px;
}
.header-box .h_top ul.nav {
	text-align: center;
	padding: 86px 0 70px;
}
.header-box .h_top ul.nav li {
	display: inline-block;
	padding: 0 0px;
	position: relative;
	margin: 0 10px;
}
.header-box .h_top ul.nav li::before {
	content: "";
	background: url(../img/concept/dote.png) no-repeat center;
	width: 5px;
	height: 5px;
	position: absolute;
	bottom: -4px;
	left: 50%;
	margin-left: -2px;
	display: none;
}
.header-box .h_top ul.nav li a {
	display: block;
	padding: 0 8px;
}
.header-box .h_top ul.nav li a:hover {
	text-decoration: none;
}
.header-box .h_top ul.nav li:hover::before, .header-box .h_top ul.nav li.active::before {
	display: block;
}
/*end common*/
/* ------- RESPONSIVE ---------- */
@media only screen and (max-width: 999px) {
	/*common*/
	header h1 {
		width: auto;
		font-size: 12px;
		padding: 10px 3%;
		display: block;
		text-align: left;
	}
	.header-box .h_top ul.nav, .header-box .h_top .right {
		display: none;
	}
	.header-box .h_top .left {
		width: 193px;
		position: relative;
		z-index: 2;
		top: 0;
		left: 0;
		right: 0;
		margin: 0 auto;
		padding-right: 40px;
	}
	.header-box {
		display: block;
	}
	.header-box .h_top .left .logoh {
		padding-left: 0;
		margin-bottom: 0;
		padding-right: 35px;
	}
	.header-box .h_top .left ul {
		position: absolute;
		top: 9px;
		left: auto;
		right: -15px;
		width: 69px;
	}
	.header-box .h_top .left ul li {
		max-width: 22px;
		float: left;
	}
	.header-box .h_top .left ul li + li {
		float: right;
	}
	.h_top {
		padding: 20vw 0 20px;
	}
	footer .f-top, #location {
		display: none;
	}
	footer .f-group {
		padding-bottom: 8%;
	}
	footer .f-group .left {
		width: 100%;
		padding-left: 0;
		float: none;
		clear: both;
		margin: 0 auto;
	}
	footer .f-group .left .f-logo {
		min-width: 180px;
		padding-right: 5%;
		margin: 0 auto;
		width: 90%;
		max-width: 230px;
	}
	footer .f-group .left .f-logo .social-btn {
		display: block;
		width: 25px;
		position: absolute;
		right: -2vw;
		top: 2vw;
	}
	footer .logo {
		min-width: 180px;
		padding-right: 5%;
		width: 90%;
		max-width: 230px;
		padding-bottom: 10%;
	}
	footer .f-group .left .f-logo .social-btn li {
		display: block;
		margin-bottom: 4px;
	}
	footer .f-group .left .tel-ft {
		min-width: 225px;
		margin: 0 auto 0px;
		width: 83%;
		max-width: 300px;
	}
	footer .f-group .right {
		float: none;
		width: auto;
		padding-top: 10%;
		padding-left: 3%;
		padding-right: 3%;
	}
	footer .f-group .right .vcard dl dt {
		width: 30%;
	}
	footer .f-group .right .vcard dl dd {
		width: 70%;
	}
	footer .f-group .right .vcard dl dt, footer .f-group .right .vcard dl dd {
		line-height: 1.8;
	}
	.f_gbtn {
		max-width: 298px;
		margin: 0 auto;
		width: 90%;
	}
	.f_gbtn p {
		display: none;
	}
	footer .f-group .left ul.list_btn li {
		width: 47%;
	}
	footer .f-group .left ul.list_btn li + li {
		padding-right: 0;
	}
	footer .f-group .left ul.list_btn {
		padding-top: 5%;
	}
	footer .f-group .right .vcard dl dd span {
		display: block;
	}
	footer address {
		line-height: 1.6;
		letter-spacing: 0 !important;
		padding: 0 3% !important;
		text-align: center !important;
	}
	address span {
		padding-top: 10px;
	}
	footer address span {
		margin-top: 0 !important;
	}
	#fixed-sp ul li {
		height: 50px;
	}
	#fixed-sp {
		/* background: rgba(255, 255, 255, .58); */
		background-image: url(../img/index/bg2.jpg);
	}
	.menu-open #fixed-sp {
		opacity: 1;
		/* background: #e3eef6; */
	}
	.menu-open #fixed-sp .hamberger-btn {
		display: none;
	}
	#fixed-sp ul li a img {
		width: auto;
		height: 100%;
		text-align: center;
		margin: 0 auto;
		max-height: 50px;
	}
	#fixed-sp ul li a {
		width: 100%;
		height: auto;
		border-right: 1px solid #fff;
	}
	#fixed-sp ul li:nth-child(1), #fixed-sp ul li:nth-child(4) {
		border: none;
		width: 20%;
	}
	#fixed-sp ul li:nth-child(4) a {
		border-right: none;
	}
	/* #fixed-sp ul li:nth-child(1) img{
		max-width: 374px;
	} */
	#fixed-sp ul li:nth-child(2), #fixed-sp ul li:nth-child(3) {
		width: 30%;
	}
	.hamberger-btn {
		position: fixed;
		top: 10px;
		right: 10px;
		color: #fff;
	}
	.js-scroll .btn_sp {
		flex-direction: row !important;
		justify-content: center;
		display: flex;
		padding-bottom: 8%;
	}
	.js-scroll .btn_sp.pc {
		display: none;
	}
	.js-scroll .btn_sp > * {
		margin: 0 1%;
	}
	.js-scroll .nav_sp {
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
		width: 70% !important;
		margin: 0 auto;
		box-sizing: border-box;
		align-items: flex-start !important;
	}
	.js-scroll .nav_sp > * {
		width: calc(100% / 5);
	}
	.js-scroll .nav_sp a {
		padding: 0;
	}
	.nav-header li.active a.nav-main::before {
		border-left: 1px solid;
		background: none;
		top: 0;
		bottom: 0;
		height: auto;
		left: 0;
		position: absolute;
	}
	.js-scroll .nav_sp a {
		cursor: vertical-text;
		writing-mode: vertical-rl;
		-o-writing-mode: vertical-rl;
		-ms-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		-moz-writing-mode: vertical-rl;
		-webkit-writing-mode: vertical-rl;
		text-orientation: upright;
		word-wrap: break-word;
	}
	.js-scroll .nav_sp a .txt-latin {
		cursor: vertical-text;
		direction: rtl;
		writing-mode: vertical-rl;
		-o-writing-mode: vertical-rl;
		-ms-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		-moz-writing-mode: vertical-rl;
		-webkit-writing-mode: vertical-rl;
		text-orientation: sideways-right;
		-o-text-orientation: sideways-right;
		-ms-text-orientation: upright;
		-ms-text-orientation: sideways-right;
		-moz-text-orientation: sideways-right;
		-webkit-text-orientation: sideways-right;
		letter-spacing: .25em;
	}
	.js-scroll .nav_sp a .int {
		height: 1.1em;
		width: 1px;
		display: inline-block;
	}
	.nav-header a.nav-main {
		width: 100%;
		height: auto;
	}
}