﻿html:not(.responsive) {
	min-width: 1000px;
	/* viewport */
}



/*=============================================
 * body
 *=============================================*/

body {
	color: #1f1c18;
	font-family: "游ゴシック", YuGothic, "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ明朝体 Pro", "ヒラギノ角ゴシックPro", "ＭＳ ゴシック", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 15px;
	line-height: 35px;
	letter-spacing: 0;
	background: #FFF;
	min-width: inherit;
	min-height: inherit;
	max-height: 100%;
}



/*=============================================
 * fonts - DON'T EDIT
 *=============================================*/

.fnt-mincho {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.fnt-meiryo {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴシックPro", "ＭＳ ゴシック", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.fnt-gothic {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

.fnt-noto-serif {
	font-family: "Noto Serif JP", serif;
}

.txt_center {
	text-align: center;
}

/*=============================================
 * .fnt - customs
 *=============================================*/

.fnt-mincho {}

.fnt-meiryo {}

.fnt-gothic {}

.fnt-garamond {}



/*=============================================
 * <main>
 *=============================================*/

main {
	clear: both;
	width: 100%;
	position: relative;
	overflow: hidden;
}

.wrap {
	width: 1000px;
	position: relative;

}



/*=============================================
 * <header>
 *=============================================*/

header {}

header h1 {
	font-size: 12px;
	color: #2a2a2a;
	line-height: 35px;
	text-align: right;
	position: absolute;
	top: 12px;
	right: 509px;
	left: 0;

	z-index: 9;
}

header .logo {
	position: absolute;
	z-index: 9;
	top: 39px;
	right: calc(50% + 242px);

}

header .tel {}

header nav {
	position: absolute;
	right: 0;
	top: 70px;
	z-index: 9;
}


header .bnr_fix {
	position: fixed;
	right: 0;
	top: 150px;
	z-index: 1000;
}

header .bnr_fix1 {
	position: fixed;
	right: 0;
	top: 440px;
	z-index: 1000;
}

@media screen and (max-width: 1366px) and (max-height: 768px) {
	header .bnr_fix {
		width: 50px;
		top: calc(50% - 70px);
		transform: translateY(-50%);
	}

	header .bnr_fix img {
		width: 100%;
		height: auto;
	}
	
	header .bnr_fix1 {
		width: 50px;
		top: calc(50% + 110px);
		transform: translateY(-50%);		
	}

	header .bnr_fix1 img {
		width: 100%;
		height: auto;
	}
}

/*=============================================
 * key
 *=============================================*/

#key {
	background-color: #000;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	min-height: 1000px;
	position: relative;
}

#key ul {
	min-height: inherit;
}

#key li {
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	min-height: inherit;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}



/*=============================================
 * <section>
 *=============================================*/

section {}



/*=============================================
 * #socialbuttons
 *=============================================*/

#socialbuttons {
	padding: 43px 0 66px;
}



/*=============================================
 * <footer>
 *=============================================*/

footer {
	background-color: #151515;
	font-size: 15px;
	line-height: 20px;
	color: #fff;
	padding-top: 87px;
}

footer .tit {
	padding-bottom: 21px;
	padding-top: 18px;
}

footer .logo {}

footer .tel {
	font-size: 13px;
	line-height: 20px;
}

footer .tel dt {
	padding: 28px 0 18px;
}

footer nav {
	text-align: center;
}

footer .info {
	margin-left: 17px;
}

footer .shop {
	padding-bottom: 84px;
}

footer .tbl_info {
	width: 620px;
}

footer .tbl_info dl {
	display: table;
	width: 100%;
}

footer .tbl_info dt,
footer .tbl_info dd {
	display: table-cell;
	vertical-align: top;
	padding-bottom: 20px;
}

footer .tbl_info dt {
	width: 143px;
}

footer .link {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	width: 485px;
	padding-top: 26px;
}

footer .link li a {
	display: block;
	background: url(../img/shared/f_btn.jpg) repeat;
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	line-height: 35px;
	width: 235px;
	position: relative;
}

footer .link li a:after {

	content: url(../img/shared/arow.png);
	position: absolute;
	top: 0px;
	right: 19px;

}

footer .link li a:hover {
	opacity: 0.8;
	text-decoration: none;
}


/*=============================================
 * copyright
 *=============================================*/

address {
	background-color: #000;
	color: #fff;
	font-size: 15px;
	line-height: 20px;
	padding: 20px 0 60px;
}

address span a {
	font-size: 10px;
	text-align: center;
	color: #FFF;
	display: block;
}

.bg_decor {
	position: relative;
}

.bg_decor:after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 180px;
	background: url(../img/index/bg2.jpg) 0 0 repeat;
	z-index: 0;
}

.bg1 {
	background: url(../img/index/bg1.jpg) center 0 repeat;
}

.cl_box {
	background-image: url(../img/index/line1.jpg);
	background-position: 0 bottom;
	background-repeat: repeat-x;
	background-color: #151515;
	color: #fff;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}

@keyframes slideOutUpe {
	0% {
		-webkit-transform: translateX(0);
		transform: translateX(0)
	}

	100% {
		visibility: hidden;
		-webkit-transform: translateX(110%);
		transform: translateX(110%);
	}
}

.slideOutUpe {
	-webkit-animation-name: slideOutUpe;
	animation-name: slideOutUpe;

	-webkit-animation-duration: 1.5s;
	animation-duration: 1.5s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	animation-delay: 0.3s;

}

.js_wow {
	position: relative;
}

.js_wow .js_fade {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	z-index: 109;
	background-color: #fff;
}

.d_flex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}

#belt {
	background-color: #151515;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 99;
	opacity: 0;
	visibility: hidden;
	transition: all 0.5s ease 0.2s;
	-moz-transition: all 0.5s ease 0.2s;
	-webkit-transition: all 0.5s ease 0.2s;
}

#belt ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}

#belt ul li {
	padding-top: 11px;
}

#belt ul li:first-child {
	margin-left: 10px;
}

#belt ul li:nth-child(6) {
	margin-right: 15px;
}

#belt ul li:nth-child(7),
#belt ul li:last-child {
	padding-top: 0;
}

.has_nav #belt {
	opacity: 1;
	visibility: visible;
}

header .top_bnr {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 9;
}

header .top_bnr li {
	float: right;
}


.toggle-link {
	font-weight: bold;
	text-align: center;
	border: 5px solid #151515;
	font-size: 33px;
	line-height: 67px;
	color: #151515;
	margin-bottom: 32px;
}

.toggle-link:after {
	background: url(../img/menu/acc_co.png) center no-repeat;
	position: absolute;
	top: 0;
	right: 0;
	content: '';
	width: 30px;
	width: 75px;
	height: 67px;
	background-color: #151515;
	position: absolute;
}

.active .toggle-link:after {
	transform: rotate(180deg);
}

.menu_list {
	width: 470px;
	margin-bottom: 56px;
}

.menu_list h4 {
	text-align: center;
	font-weight: bold;
	font-size: 26px;
	line-height: 28px;
}

.menu_list h4 span {
	font-size: 16px;
}

.menu_list h5 {
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	line-height: 35px;
	padding-top: 21px;
}

.menu_list dl {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	flex-direction: row;
	font-size: 15px;
	line-height: 20px;
	border-bottom: 1px solid #020202;
	padding: 9px 0 10px;
}

.menu_list dl dd {
	text-align: right;
	color: #6f1811;
}



.access_shared h2 {
	padding: 72px 0 22px;
	font-weight: bold;
	font-size: 28px;
	line-height: 61px;
}

.access_shared .link_shared {
	padding: 57px 100px 87px;
}

.access_shared .link_shared li {
	text-align: center;
}

.access_shared .link_shared li a {
	display: block;
	margin-bottom: 10px;
}

.access_shared .tbl_info {
	width: 770px;
	margin: 0 auto;
}

.access_shared .tbl_info .link {
	font-weight: bold;
	font-size: 18px;
	text-decoration: underline;
	display: inline-block;
	margin-top: 10px;
	margin-bottom: 10px;
}

.access_shared .tbl_info .link:hover {
	text-decoration: none;
}

.access_shared .tbl_info .tel {
	font-size: 20px;
	font-weight: bold;
}

.access_shared .tbl_info dl {
	display: table;
	width: 100%;
	border-bottom: 1px solid #000;
	line-height: 25px;
}

.access_shared .tbl_info dl dt,
.access_shared .tbl_info dl dd {
	display: table-cell;
	vertical-align: top;
	padding: 12px 0 12px;
	box-sizing: border-box;
}

.access_shared .tbl_info dl dd {
	padding-right: 60px;
}

.access_shared .tbl_info dl dt {
	width: 222px;
	padding-left: 52px;
}

#gmap {
	line-height: 0;
	border-bottom: 11px solid #151515;
	border-top: 11px solid #151515;
}

.floor_shared {
	padding-bottom: 62px;
}

.floor_shared .lead {
	padding-bottom: 50px;
}

.floor_shared .lead h2 {
	position: relative;
	margin-top: 86px;
	font-weight: bold;
	font-size: 28px;
}

.floor_shared .lead h2 span {
	position: absolute;
	top: 100px;
	left: 32px;
}

.floor_shared .lead .info {
	width: 367px;
}

.floor_shared .lead .info .decor {
	margin-left: -18px;
}

.floor_shared .lead .info .txt {
	padding: 40px 10px 0 77px;
}

.floor_shared .floor {
	margin-bottom: 50px;
	display: table;
	width: 100%;
}

.floor_shared .floor .photo,
.floor_shared .floor dl {
	display: table-cell;
	vertical-align: middle;
}

.floor_shared .floor dl {

	width: 470px;
}

.floor_shared .floor .photo img {
	margin-left: -70px;
}

.floor_shared .floor dt {
	padding-left: 46px;
	font-size: 22px;
	line-height: 55px;
	font-weight: bold;
	padding-top: 10px;
}

.floor_shared .floor dd {

	border-bottom: 4px solid #000;
	padding: 30px 44px 16px 46px;
}

.floor_shared .floor2 dl {
	padding-bottom: 25px;
}

.floor_shared .floor3 dl {
	padding-bottom: 55px;
}