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

body {
	color: #000000;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 16px;
	line-height: 35px;
	letter-spacing: 1.5px;
	background: url(../img/shared/bg.jpg) repeat center top;
	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 - customs
 *=============================================*/

.fnt-mincho {
}
.fnt-meiryo {
}
.fnt-gothic {
}
.fnt-garamond {
}
/*=============================================
 * <main>
 *=============================================*/

main {
	clear: both;
	width: 100%;
	position: relative;
	overflow: hidden;
}
.wrap {
	width: 1000px;
	position: relative;
}
a:hover {
	text-decoration: none;
}
/*=============================================
 * <header>
 *=============================================*/

header {
	width: 100%;
	position: relative;
	height: 1000px;
	
}
header #belt{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1000;
	background: url(../img/shared/bg_nav.png) no-repeat center top;
	height: 1000px;
	width: 350px;
	text-align: center;
}
header h1 {
	    font-size: 14px;
    line-height: 26px;
    letter-spacing: 1.5px;
    color: #6e6e6e;
    z-index: 10;
    padding: 6px 0 56px;
    text-align: center;
    width: 220px;
    margin: 0 auto;
}
header .logo {
	padding-top: 60px;
}
header .tel1 {
	padding: 47px 0 41px;
    background: rgba(255,255,255,.8);
    margin-top: 57px;
}
header #belt nav {
	width: 262px;
	padding-bottom: 24px;
}
header nav {
	margin-bottom: 10px;
	text-align: left;
}
header nav a {
	float: none !important;
}
header #belt nav a{
	position: relative;
	margin-bottom: 7px;
	display: block;
}
header #belt nav a:before{
	background: #160c02;
	height: 2px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	width: 0;
	transition: all .3s ease;
	opacity: 0;
	content: '';
}
header #belt nav a.current:before,
header #belt nav a:hover:before{
	opacity: 1;
	width: 74px;
}
header .wrap {
	z-index: 10;
}
.nav_fix{
	position: fixed;
	top: 0;
	right: 0;
	z-index: 3200;
	opacity: 0;
	transition: all .3s ease;
}
.nav_fix.fixed{
	opacity: 1;
}
.menu_toggle{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,.95);
	opacity: 0;
	visibility: hidden;
	transition: all .3s ease;
	z-index: 3000;
}
#menu_ct{
	height: 60vh;
	overflow-y: auto;
	padding-top: 180px;
}
.menu_toggle.active{
	opacity: 1;
	visibility: inherit;
}
#menu_ct .logo2{
	padding-left: 100px;
	padding-bottom: 24px;
}
#menu_ct .header_info{
	font-size: 14px;
	line-height: 22px;
	padding: 10px 0 26px;
	position: relative;
	margin-left: 118px;
	width: 334px;
	text-align: center;
}
#menu_ct .header_info:before{
	border: 2px solid #000;
	border-top-width: 0;
	position: absolute;
	bottom: -2px;
	left: -2px;
	right: -2px;
	content: '';
	top: 26px;
	
}
#menu_ct .header_txt{
	padding-top: 16px;
}
#menu_ct .header_btn2{
	padding-left: 100px;
	padding-top: 70px;
}
#menu_ct nav{
	position: absolute;
	top: 0;
	right: 50px;
}
#menu_ct nav a{
	float: none !important;
	display: block;
}
#header_menu{
	position: relative;
	cursor: pointer;
}
.navOpen .nav_fix{
	opacity: 1;
}
.header_btn_fl{
	opacity: 1;
	visibility: inherit;
	transition: all .3s ease;
}
.navOpen .header_btn_fl{
	opacity: 0;
	visibility: hidden;
}
.navOpen #header_menu:before{
	opacity: 1;
}
#header_menu:before{
	background: url(../img/shared/header_menu_on.jpg) no-repeat center top;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: '';
	z-index: 1;
	opacity: 0;
	transition: all .3s ease;
}
body.navOpen {
	overflow: hidden;
}
body.navOpen, body.navOpen *, body.navOpen *:hover, body.navOpen *:focus, body.navOpen *:active {
	cursor: none !important;
	touch-action: none !important;
	pointer-events: none !important;
}
body.navOpen .navBtn, body.navOpen #menu_toggle, body.navOpen #menu_toggle * {
	touch-action: auto !important;
	pointer-events: visible !important;
	cursor: pointer !important;
}
body.navOpen #menu_toggle .header_info, body.navOpen #menu_toggle .header_info * {
	cursor: auto !important;
}
/*=============================================
 * key
 *=============================================*/

#key {
	background-color: #000;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	height: 1000px;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
#key ul {
	height: 1000px;
}
#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 {
	max-width: 460px;
	padding-top: 22px;
	text-align: center;
	margin: 0 auto;
	position: absolute;
	    top: 542px;
    left: 19px;
}
#socialbuttons > * {
	
}
/*=============================================
 * <footer>
 *=============================================*/

footer {
	width: 100%;
	height: 1055px;
	background: url(../img/shared/bg_ft_ct.jpg) repeat-x center top, url(../img/shared/bg_ft.jpg) repeat center top;
	color: #fff;
	font-size: 16px;
	line-height: 27px;
	letter-spacing: 1px;
}
footer .logo {
	position: absolute;
	top: 203px;
	left: 0;
}
footer .info_tel {
	position: absolute;
	top: 345px;
	left: 0;
	width: 338px;
	text-align: center;
}
footer .ft_txt {
	line-height: 22px;
	font-size: 14px;
	border: 2px solid #fff;
	border-top-width: 0;
	padding: 12px 0 26px;
}
footer .ft_info {
	margin-left: 398px;
	padding-top: 12px;
}
footer .ft_info dl:after {
	content: "." !important;
	clear: both !important;
	display: block !important;
	height: 0 !important;
	visibility: hidden !important;
}
footer .ft_info dl {
	padding-bottom: 27px;
}
footer .ft_info dt {
	float: left;
	width: 183px;
}
footer .ft_info dd {
	float: left;
	width: 410px;
}
footer .list_bnr{
	width: 300px;
	margin: 0 auto;
	padding-top: 60px;
}
footer .list_bnr p + p{
	margin-left: 20px;
}
footer nav {
	position: relative;
	font-size: 16px;
	line-height: 50px;
	letter-spacing: 2.2px;
	color: #000000;
	text-align: center;
	padding: 30px 0 81px;
	margin-right: 13px;
}
footer nav a {
	margin: 0 10px;
	position: relative;
}
footer nav li:last-child img{
	padding-left: 20px;
	position: relative;
	top: -3px;
}
footer nav a:after{
	background: #000;
	position: absolute;
	bottom: -5px;
	left: 0;
	content: '';
	width: 0;
	opacity: 0;
	height: 1px;
	transition: all .3s ease;
}
footer nav a:hover{
	text-decoration: none;
}
footer nav a:hover:after{
	width: 100%;
	opacity: 1;
}
footer nav > a + a:before{
	display: none;
}
footer nav li{
	position: relative;
	display: inline-block;
}
footer nav li + li:before{
	content: "\7C";
}
footer .cookies_link {
	text-align: center;
	font-size: 14px;
	line-height: 20px;
	letter-spacing: 2px;
	color: #707070;
	padding-top: 5px;
}
footer .cookies_link a:hover {
	text-decoration: underline;
}
/*=============================================
 * copyright
 *=============================================*/
#pagetop {
	right: 10px;
	bottom: 10px;
	z-index: 3000;
}
address {
	font-size: 14px;
	line-height: 20px;
	letter-spacing: 2px;
	color: #707070;
	padding: 40px 0 0;
}
.fl {
	float: left !important;
}
.fr {
	float: right !important;
}
.text_center {
	text-align: center;
}
.text_right {
	text-align: right;
}
.w_500 {
	width: 500px;
}
.w_50pc {
	width: 50%;
}
.w_470{
	width: 470px;
}
.w_300{
	width: 300px;
}
.link {
	position: relative;
	display: inline-block;
	z-index: 1;
}
.link:before{
	transition: all .3s ease;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	content: '';
	background-color: rgba(184, 141, 78, .3);
	opacity: 0;
}
.link:hover:before {
  opacity: 1;
}
.link:hover img, .link2:hover img{
	opacity: 1 !important;
}
.link2 {
	position: relative;
	display: inline-block;
	z-index: 1;
}
.link2:before{
	transition: all .3s ease;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	content: '';
	background-color: rgba(255, 255, 255, .1);
	opacity: 0;
}
.link2:hover:before {
  opacity: 1;
}

.bx-pager div {
	display: inline-block;
	height: 10px;
	margin: 0 5px;
	overflow: hidden;
	width: 10px;
}
.bx-pager div a {
	background: url("../img/index/icon_dot.png") no-repeat scroll -20px 0;
	display: block;
	height: 10px;
	padding: 10px 0 0;
	width: 10px;
}
.bx-pager div .active {
	background: url("../img/index/icon_dot.png") no-repeat scroll 0px 0;
}
.listmenu {
	line-height: 30px;
}
.listmenu dl {
	border-bottom: 1px solid #999999;
	padding-bottom: 13px;
	margin-bottom: 16px;
}
.listmenu dl:after {
	content: "." !important;
	clear: both !important;
	display: block !important;
	height: 0 !important;
	visibility: hidden !important;
}
.listmenu dl dt {
	float: left;
}
.listmenu dl dd {
	float: right;
	text-align: right;
}
.price {
	font-size: 20px;
	letter-spacing: 4px;
}
.price span {
	font-size: 25px;
}

#sp_botan a{
	border:1px #000 solid;
	padding:25px 5px;
	text-align:center;
	font-size:32px;
	color:#FFFFFF;
	display:block;
	text-decoration:none;
	background: #000; 
}