@charset "utf-8";
@import url(../fonts/fonts.css);

/* ------------------------------
 Common - Body
------------------------------ */
body{
	margin:0;
	padding:0;
	background:#FFF;
	color:#000;
	/*font-family: 'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
    font-size:62.5%;*/
	-webkit-text-size-adjust:100%;
}
html>/**/body {
	font-size: 10px; /* Except IE */
}


/* ------------------------------
 Common - Body - SP
------------------------------ */
body.sp-mode {
	font-size:1.2em;
	width:640px;
	overflow-x:hidden;
}
body.android4-mode *{
	background-color:rgba(255,255,255,.01);
}


/* ------------------------------
 Common - Reset Setting
------------------------------ */
article,aside,canvas,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,summary{
	display:block;
}
h1,h2,h3,h4,h5,h6,h7,p,dl,dt,dd,ul,ol,li,form,a{
	font-size:1em;
	margin:0;
	padding:0;
    font-weight:normal;
}
ul{
	list-style-type:none;
}
img{
    vertical-align:bottom;
	border:0;
}
a {
	outline : 0 ;
    text-decoration:none;
}
table{
	border-collapse:collapse;
	border-spacing:0;
}


/* ------------------------------
 Common - Clearfix
------------------------------ */
.clearfix:before,
.clearfix:after{
    content:"";
    display:table;
}
.clearfix:after {
    clear:both;
}



/* ------------------------------
 Common - Layout Ajast
------------------------------ */
.burasage{
	margin-left:1em;
	text-indent:-1em;
}
.mt0{
	margin-top:0 !important;
}
.mb0{
	margin-bottom:0 !important;
}
.float-left{
	float:left;
}
.float-right{
	float:right;
}
.align-left{
	text-align:left;
}
.align-right{
	text-align:right;
}
.align-center{
	text-align:center;
}
.clear-both{
	clear:both;
}
.display-none{
	display:none;
}

.mb10 {
	margin-bottom:10px;
}

.mb20 {
	margin-bottom:20px;
}

.mb30 {
	margin-bottom:30px;
}

.mb40 {
	margin-bottom:40px;
}

.mb50 {
	margin-bottom:50px;
}

.mb60 {
	margin-bottom:60px;
}

.mb70 {
	margin-bottom:70px;
}

.mb80 {
	margin-bottom:80px;
}

.mb90 {
	margin-bottom:90px;
}

.f10px {
	font-size: 10px;
}

.f12px {
	font-size: 12px;
}


/* ------------------------------
 Common - Switch PC or SP
------------------------------ */
.for-pc{
	display:inherit;
}
.sp-mode .for-pc{
	display:none;
}
.for-sp{
	display:none;
}
.sp-mode .for-sp{
	display:inherit;
}
/*img.swap-sp{
	display:none;
}*/


/* ------------------------------
 Common - Link
------------------------------ */
a{
	color:rgb(110,40,65);
}
a:hover{
	text-decoration:underline;
}
a.opacity-ro:hover{
	text-decoration:none;
}
.tel-link{
	pointer-events:none;
	cursor:default;
}
.sp-mode .tel-link{
	pointer-events:inherit;
}


/* ------------------------------
 Common - Wrapper
------------------------------ */
#wrapper{
	width: 905px;
	margin: 0 auto;
}


/* ------------------------------
 Common - Wrapper - SP
------------------------------ */
.sp-mode #wrapper{
	width:640px;
	overflow-x:hidden;
	position:relative;
	left:0;
}


/* ------------------------------
 Common - Header
------------------------------ */
#header{
	width:960px;
	position:relative;
	margin:auto;
	background:#FFF;
}
/* logo */
#header h1{
	padding:25px 0 40px 0;
}
/* tel */
#header p.tel{
	position:absolute;
	top:17px;
	right:5px;
}
/* q-nav */
#header ul.q-nav{
	position:absolute;
	top:75px;
	right:0px;
}
#header ul.q-nav li{
	float:left;
	padding:3px 18px;
	font-size:1.2em;
	line-height:1.5;
	text-align:center;
	border-left:1px solid #999
}
#header ul.q-nav li:first-child{
	border-left:none;
}
#header ul.q-nav li a{
	color:#7F7F7F;
}
#header ul.q-nav li a:hover{
	color:#999;
}
/* header-nav */
#header ul.global-nav{
	padding-bottom:18px;
	background:url(../img/header_nav_bg.png) repeat-x bottom;
}
#header ul.global-nav li{
	float:left;
	/* width:159px; */
	width:199px;
	height:45px;
	border-left:1px solid #999;
	position:relative;
}
#header ul.global-nav li:first-child{
	width:160px;
	border-left:none;
}
#header ul.global-nav li a{
	display:block;
	text-align:center;
	position:absolute;
	width:100%;
	height:30px;
	padding-top:15px;
}
#header ul.global-nav li a.current,
#header ul.global-nav li a:hover{
	height:50px;
	background:#FFF;
}


/* ------------------------------
 Common - Header - SP
------------------------------ */
.sp-mode #header{
	width:100%;
	height:98px;
	border-bottom:2px solid #D3B9A8;
}
.sp-mode #header h1{
	padding:16px 20px;
	pointer-events:none;
}


/* ------------------------------
 Common - SP Menu
------------------------------ */
#sp-menu{
	display:none;
}
.sp-mode #sp-menu{
	display:block;
	position:fixed;
	top:0;
	left:0;
	margin-left:640px;
	width:544px;
	height:100%;
	background:#E2E2D9;
	z-index:10000;
}
.android2-mode #sp-menu{
	position:absolute;
}
.sp-mode #sp-menu a{
	-webkit-touch-callout:none;
	-webkit-user-select:none;
}
.sp-mode #sp-menu .menu-button{
	display:block;
	background:rgba(255,255,255,0.9) url(../img/sp_menu_button.png) no-repeat 50% 50%;
	text-indent:-1000px;
	width:96px;
	height:96px;
	overflow:hidden;
	position:absolute;
	top:0px;
	left:-96px;
	z-index:10001;
}
.sp-mode #sp-menu.active .menu-button{
	pointer-events:none;
}
.sp-mode #sp-menu .close-cover{
	width:96px;
	height:100%;
	position:absolute;
	top:0px;
	left:-96px;
	z-index:10002;
	display:none;
}
.sp-mode #sp-menu.active .close-cover{
	display:block;
}
.sp-mode #sp-menu ul{
	pointer-events:none;
}
.sp-mode #sp-menu.active ul{
	pointer-events:inherit;
}
.sp-mode #sp-menu ul li{
	border-bottom:2px solid #D3B9A8;
}
.sp-mode #sp-menu ul li a{
	display:block;
	padding:16px 30px;
	color:#333;
	font-size:1.6em;
	position:relative;
}
.sp-mode #sp-menu ul li a.tap,
.sp-mode #sp-menu ul li a.current{
	color:#B84831;
	background:#D3B9A8;
}
.sp-mode #sp-menu ul li a span{
	position:absolute;
	top:50%;
	right:15px;
	font-size:40px;
	margin-top:-20px;
	color:#B84831;
}
.sp-mode #sp-menu ul li li:first-child{
	border-top:2px solid #D3B9A8;
}
.sp-mode #sp-menu ul li li:last-child{
	border-bottom:none;
}
.sp-mode #sp-menu ul li li a{
	text-indent:1em;
}



/* ------------------------------
 Common - Main
------------------------------ */
#main{
	width:960px;
	margin:50px auto;
}
/*article-column*/
#main .article-column{
	width:755px;
	float:left;
	position:relative;
}
#main .article-column .std-text{
	font-size:1.4em;
	line-height:1.7;
	color:#7F7F7F;
	margin-bottom:1em;
}
/*side-column*/
#main .side-column{
	width:160px;
	float:right;
}
#main .side-column .reservation{
	margin-bottom:20px;
}
#main .side-column .button{
	margin-bottom:10px;
}
#main .side-column .inquiry{
	margin:20px 0;
	padding:20px 0;
	border:1px dotted #999;
	border-width:1px 0;
	position:relative;
}
#main .side-column .inquiry a.map-button{
	display:block;
	position:absolute;
	top: 139px;
	right: 7px;
}


#frame{
	text-align: center;
}


/* ------------------------------
 Common - Main - SP
------------------------------ */
.sp-mode #main{
	width:100%;
}
/*article-column*/
.sp-mode #main .article-column{
	width:auto;
	float:none;
}
/*side-column*/
.sp-mode #main .side-column{
	width:auto;
	float:none;
	margin-top:100px;
}
.sp-mode #main .side-column .button{
	margin:20px;
}



/* ------------------------------
 Common - Footer
------------------------------ */
#footer{
	margin:80px auto 30px auto;
}
/*nav*/
#footer .nav{
	width:960px;
	margin:auto;
}
#footer .nav ul{
	float:left;
	position:relative;
	left:50%;
}
#footer .nav ul li{
	float:left;
	position:relative;
	left:-50%;
	font-size:1.2em;
	line-height:1.5em;
	border-left:1px solid #999;
	padding:0 10px;
	margin-bottom:30px;
}
#footer .nav ul li:first-child{
	border-left:none;
}
#footer .nav ul li a{
	color:#333;
}
#footer .nav ul li a:hover,
#footer .nav ul li a.current{
	color:rgb(110,40,65);
}
/*info*/
#footer .info{
	background:#6D273F;
	color:#FFF;
}
#footer .info .inner{
	width:970px;
	margin:auto;
	padding:20px 0;
}
#footer .info .tel{
	float:left;
}
#footer .info .text{
	float:right;
	margin-left:10px;
}
#footer .info ul.social-link{
	float:right;
	margin:29px 0 0 26px;
}
#footer .info ul.social-link li{
	float:left;
	border-left:1px solid #FFF;
	width:40px;
	height:16px;
	position:relative;
	line-height:1;
}
#footer .info ul.social-link li:first-child{
	border-left:none;
}
#footer .info ul.social-link li a{
	color:#FFF;
	display:block;
	font-size:25px;
	position:absolute;
	top:50%;
	left:50%;
	margin:-13px 0 0 -14px;
	line-height:1;
}
/*co-info*/
#footer .co-info{
	width:960px;
	margin:30px auto 0 auto;
}
#footer .co-info .co-logo{
	text-align:center;
}
#footer .co-info .privacy{
	float:right;
	margin-top:-60px;
}


/* ------------------------------
 Common - Footer - SP
------------------------------ */
.sp-mode #footer{
	margin-top:0;
}
/*info*/
.sp-mode #footer .info .inner{
	width:auto;
	padding:0;
}
.sp-mode #footer .info .tel{
	float:none;
	text-align:center;
	margin:30px auto 20px auto;
}
.sp-mode #footer .info .modelroom{
	text-align:center;
	margin-bottom:30px;
}
.sp-mode #footer .info ul.social-link{
	float:none;
	margin:0 auto 20px auto;
	padding-top:20px;
	width:600px;
	display:block;
	text-align:center;
	border-top:1px dotted #FFF;
}
.sp-mode #footer .info ul.social-link li{
	float:none;
	border-left:none;
	width:auto;
	height:auto;
	display:inline;
}
.sp-mode #footer .info ul.social-link li a{
	display:inline;
	font-size:4em;
	position:static;
	margin:auto 10px;
}
/*co-info*/
.sp-mode #footer .co-info{
	width:auto;
}
.sp-mode #footer .co-info .privacy{
	float:none;
	text-align:center;
	margin-top:20px;
}


/* ------------------------------
 Common - Map Popup
------------------------------ */
#map-popup{
	width:600px;
	height:600px;
	margin:auto;
	position:relative;
}
#map-popup .mfp-close{
	margin-top:-50px;
	color:#FFF;
	font-size:60px;
}
.mt20 {
	margin-top:20px;
}
.mt30 {
	margin-top:30px;
}
.mt40 {
	margin-top:40px;
}


@media screen and (max-width: 768px) {
#footer .co-info .privacy{
	float: none;
	position: absolute;
	right: 0;
}

#footer co-info{
	position: relative;
}
}