@charset "utf-8";

@media screen and (max-width: 640px) {
	table.typeA {
		border-bottom: 1px solid #aaa;
	}
	table.typeA th,
	table.typeA td {
		display: block;
		border-bottom: none;
		height: auto;
	}

	table.typeB {
		border-bottom: 1px solid #aaa;
		border-right: 1px solid #aaa;
	}
	table.typeB thead {
		display: block;
		float: left;
		width: 30%;
	}
	table.typeB tbody {
		display: block;
		float: left;
		width: 70%;
	}
	table.typeB tr {
		display: block;
		float: left;
	}
	table.typeB thead tr {
		width: 100%;
	}
	table.typeB tbody tr {
		width: 33.3%;
	}
	table.typeB tr td,
	tablexxx tr th {
		display: block;
		height: 40px;
		border-bottom: none;
		border-right: none;
	}
}

.slide_bg {
    height: 600px;
	padding-top: 120px;
}
.slide_bg > div {
	position: absolute;
	top: 119px;
	left: 0;
	width: 100%;
	height: 600px;
	background-repeat: no-repeat;
	background-position: center top 119px;
	background-attachment: fixed;
	box-shadow: 0 10px 25px -15px #000 inset, 0 -10px 25px -15px #000 inset;
}
#slide_1 {
	background-image: url(../images/main_slide1.jpg);
}
#slide_2 {
	background-image: url(../images/main_slide2.jpg);
}
@media screen and (max-width: 640px) {
	.slide_bg {
	    height: 56px;
		padding-top: 120px;
	}
	.slide_bg > div {
		position: absolute;
		top: 57px;
		left: 0;
		width: 100%;
		height: 200px;
		background-repeat: no-repeat;
		background-position: top 57px center;
	}
	#slide_1 {
		background-image: url(../images/main_slide1sp.jpg);
	}
	#slide_2 {
		background-image: url(../images/main_slide2sp.jpg);
	}
}

h1 { font-size: 36px; font-weight: bold; padding: 0.5em 0; }
h2 { font-size: 30px; font-weight: bold; padding: 0.5em 0; }
h3 { font-size: 24px; font-weight: bold; padding: 0.5em 0; }
h4 { font-size: 20px; font-weight: bold; padding: 0.5em 0; }
h5 { font-size: 18px; font-weight: bold; padding: 0.5em 0; }
h6 { font-size: 18px; font-weight: bold; padding: 0.5em 0; }

/* ----------------------------------------------------------
 layout
---------------------------------------------------------- */

body {
	color: #000;
}

header {
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 10;
}
header .inner {
	width: 1000px;
	min-width: 1000px;
	padding: 10px 0;
	margin: 0 auto;
	position: relative;
}
@media screen and (max-width: 640px) {
	header .inner {
		width: 100%;
		min-width: 100%;
	}
}

.siteLogo { float :left; }
.headLinkList { float: right; }
.headLinkList ul { overflow: hidden; }
.headLinkList ul li { float: left; margin-right: 10px; font-size: 14px; }
.headLinkList ul li:before {
	content: '>';
	font-size: 14px;
	margin-right: 5px;
}
.headLinkList ul li:last-child { margin-right: 0; }
.headCall {
	position: absolute;
	bottom: 10px;
	right: 0;
}
@media screen and (max-width: 640px) {
	.headCallSp {
		float: right;
		margin: 10px 60px 0 0;
	}
}
nav {
	background: #aaa;
	position: fixed;
	top: 83px;
	left: 0;
	right: 0;
	z-index: 9;
}
nav .inner {
	width: 1000px;
	min-width: 1000px;
	margin: 0 auto;
}
nav ul {
	letter-spacing: -.4em;
}
nav ul li {
	letter-spacing: normal;
	display: inline-block;
	text-align: center;
	border-left: 1px solid #fff;
	width: 20%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
nav ul li:last-child {
	border-right: 1px solid #fff;
}
nav ul li:hover {
	background: #000;
}
nav ul li a {
	display: block;
	color: #fff;
	text-decoration: none;
	padding: 10px 0;
}
nav ul li.current a:before {
	content: '▲';
	transform: rotate(90deg);
	color: #fff;
	display: inline-block;
	font-size: 10px;
	vertical-align: middle;
	margin: 0 5px 2px 0;
}






/*#global-nav {
	overflow: hidden;
	width: 100%;
	display: block;
}
#global-nav ul {
	width: 100%;
	background: #000;
	position: relative !important;
	text-align: center;
	letter-spacing: -.4em;
}
#global-nav ul li {
	letter-spacing: normal;
	display: inline-block;
	float: none !important;
	width: 20%;
	margin: 10px 0;
}
#global-nav ul li:after; {
	content: '｜';
	color: #fff;
}*/




/* sp head + menu */
/*.inner:after {
	content: "";
	clear: both;
	display: block;
}*/
 
/* header */
#header .inner {
	width: 980px;
	margin: 0 auto;
}
#header .inner:after {
	content: "";
	clear: both;
	display: block;
}
 
/* header */
#top-head {
	top: -100px;
	position: absolute;
	width: 100%;
	margin: 100px auto 0;
	padding: 30px 0 0;
	line-height: 1;
	z-index: 999;
}
#top-head a,
#top-head {
	color: #fff;
	text-decoration: none;
}
#top-head .inner {
	position: relative;
	padding: 0;
}
#top-head .logo {
	float: left;
	font-size: 36px;
}
#global-nav ul {
	list-style: none;
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 14px;
}
#global-nav ul li {
	float: left;
}
#global-nav ul li a {
	padding: 0 30px;
}
 
/* Fixed */
#top-head.fixed {
	margin-top: 0;
	top: 0;
	position: fixed;
	padding-top: 10px;
	height: 55px;
	background: #fff;
	background: rgba(255,255,255,.7);
	transition: top 0.65s ease-in;
	-webkit-transition: top 0.65s ease-in;
	-moz-transition: top 0.65s ease-in;
}
#top-head.fixed .logo {
	font-size: 24px;
	color: #333;
}
#top-head.fixed #global-nav ul li a {
	color: #333;
	padding: 0 20px;
}
 
/* Toggle Button */
#nav-toggle {
	display: none;
	position: absolute;
	right: 12px;
	top: 14px;
	width: 34px;
	height: 36px;
	cursor: pointer;
	z-index: 101;
}
#nav-toggle div {
	position: relative;
	color: #333;
	font-size: 12px;
	text-align: center;
}
#nav-toggle span {
	display: block;
	position: absolute;
	height: 4px;
	width: 100%;
	background: #666;
	left: 0;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
	top: 0;
}
#nav-toggle span:nth-child(2) {
	top: 11px;
}
#nav-toggle span:nth-child(3) {
	top: 22px;
}
#nav-toggle span:nth-child(4) {
	top: 27px;
	background: none;
}




/*モバイル*/

@media screen and (max-width: 640px) {
	#top-head,
	.inner {
		width: 100%;
		padding: 0;
	}
	#top-head {
		top: 0;
		position: fixed;
		margin-top: 0;
		box-shadow: 0 2px 3px #aaa;
	}
	/* Fixed reset */
	#top-head.fixed {
		padding-top: 0;
		background: transparent;
	}
	#mobile-head {
		background: #fff;
		width: 100%;
		height: 56px;
		z-index: 999;
		position: relative;
	}
	#top-head.fixed .logo,
	#top-head .logo {
		position: absolute;
		left: 5px;
		top: 5px;
		color: #333;
		font-size: 26px;
		padding: 0;
	}
	#global-nav {
		position: absolute;
		/* 開いてないときは画面外に配置 */
		top: -500px;
		background: #333;
		width: 100%;
		text-align: center;
		padding: 10px 0;
		-webkit-transition: .5s ease-in-out;
		-moz-transition: .5s ease-in-out;
		transition: .5s ease-in-out;
	}
	#global-nav ul {
		list-style: none;
		position: static;
		right: 0;
		bottom: 0;
		font-size: 14px;
	}
	#global-nav ul li {
		float: none;
		position: static;
		display: block;
		width: 100%;
		border: none;
	}
	#top-head #global-nav ul li a,
	#top-head.fixed #global-nav ul li a {
		width: 100%;
		display: block;
		color: #fff;
		padding: 18px 0;
	}
	#nav-toggle {
		display: block;
	}
	/* #nav-toggle 切り替えアニメーション */
	.open #nav-toggle span:nth-child(1) {
		top: 11px;
		-webkit-transform: rotate(315deg);
		-moz-transform: rotate(315deg);
		transform: rotate(315deg);
	}
	.open #nav-toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}
	.open #nav-toggle span:nth-child(3) {
		top: 11px;
		-webkit-transform: rotate(-315deg);
		-moz-transform: rotate(-315deg);
		transform: rotate(-315deg);
	}
	/* #global-nav スライドアニメーション */
	.open #global-nav {
		/* #global-nav top + #mobile-head height */
		-moz-transform: translateY(556px);
		-webkit-transform: translateY(556px);
		transform: translateY(556px);
	}
}



.contents {
	overflow: hidden;
}
.inner {
	width: 1000px;
	margin: 30px auto;
}
@media screen and (max-width: 640px) {
	.contents {
		margin-top: 80px;
		overflow: hidden;
	}
	.inner {
		width: 96%;
		margin: 10px auto;
	}
}


.footer {
	background: #000;
	color: #fff;
}
.footer a:link {
	color: #fff;
	text-decoration: none;
}
.footer .inner {
	width: 1000px;
	margin: 10px auto;
	padding: 10px;
	overflow: hidden;
}
.footer .inner .footer_ul_l1 {
	overflow: hidden;
}
.footer .inner .footer_ul_l1 li {
	font-weight: bold;
	width: 24%;
	float: left;
	margin: 0 1% 0 0;
}
.footer .inner .footer_ul_l1 li:last-child {
	margin: 0;
}
.footer .inner .footer_ul_l1 li .footer_ul_l2 li {
	font-size: 14px;
	font-weight: normal;
	width: 100%;
	float: none;
	display: block;
	padding: 5px 0;
}
.footer .footer_ul_l1 li .footer_ul_l2 li:before {
	content: '＞';
	font-size: 13px;
	padding-right: 5px;
}
.footer .footer_address {
	width: 1000px;
	margin: 10px auto;
	overflow: hidden;
}
.footer .footer_address .foot_logo {
	float: left;
	margin-right: 10px;
	background: #fff;
}
.footer .inner .footer_address .foot_add {
}
.footer .copy {
	font-size: 12px;
	text-align: center;
	padding: 10px 0;
}
@media screen and (max-width: 640px) {
	.footer .inner {
		width: 96%;
		margin: 0 auto;
		padding: 10px 0;
	}
	.footer .inner .footer_ul_l1 li {
		font-weight: bold;
		width: 49%;
		float: left;
		margin: 0 1% 0 0;
	}
	.footer .inner .footer_ul_l1 li:last-child {
		margin: 0;
	}
	.footer .inner .footer_ul_l1 li:nth-child(even) {
		margin: 0;
	}
	.footer .footer_address {
		width: 96%;
		margin: 0 auto;
	}
}





/* ----------------------------------------------------------
 module
---------------------------------------------------------- */

h2 span {
	/*background: rgb(255,255,255);
	background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 60%, rgba(255,255,0,1) 60%, rgba(255,255,0,1) 100%);
	background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 60%,rgba(255,255,0,1) 60%,rgba(255,255,0,1) 100%);
	background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 60%,rgba(255,255,0,1) 60%,rgba(255,255,0,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffff00',GradientType=0 );*/
	border-bottom: 1px solid #666;
	padding-bottom: 10px;
}
h3 {
	font-size: 18px;
	font-weight: bold;
	padding: 10px 0;
}



.mod-box-01 {
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}
.mod-box-01 .colmun {
	padding-top: 1em;
}

.mod-box-02 {
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}
.mod-box-02 .colmun {
	width: 450px;
	padding: 20px;
	float: left;
	margin-right: 20px;
	background: #ffc;
}
.mod-box-02 .colmun:last-child {
	margin-right: 0;
}
@media screen and (max-width: 640px) {
	.mod-box-02 {
		width: 100%;
	}
	.mod-box-02 .colmun {
		width: 100%;
		float: none;
		margin: 10px 0;
		background: #ffc;
	}
}
.mod-box-03 {
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}
.mod-box-03 .colmun {
	width: 280px;
	padding: 20px;
	float: left;
	margin-right: 20px;
	background: #ffc;
}
.mod-box-03 .colmun:last-child {
	margin-right: 0;
}
@media screen and (max-width: 640px) {
	.mod-box-03 {
		width: 100%;
	}
	.mod-box-03 .colmun {
		width: 100%;
		float: none;
		margin: 10px 0;
		background: #ffc;
	}
}
.mod-box-04 {
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}
.mod-box-04 .colmun {
	width: 195px;
	padding: 20px;
	float: left;
	margin-right: 20px;
	background: #ffc;
}
.mod-box-04 .colmun:last-child {
	margin-right: 0;
}
@media screen and (max-width: 640px) {
	.mod-box-04 .colmun {
		width: calc(48% - 40px);
		float: left;
		margin: 10px 2% 10px 0;
		background: #ffc;
	}
	.mod-box-04 .colmun:nth-child(even) {
		margin-right: 0;
	}
}
.mod-box-05 {
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}
.mod-box-05 .colmun {
	width: 144px;
	padding: 20px;
	float: left;
	margin-right: 20px;
	background: #ffc;
}
.mod-box-05 .colmun:last-child {
	margin-right: 0;
}
@media screen and (max-width: 640px) {
	.mod-box-05 .colmun {
		width: 100%;
		float: left;
		margin: 10px 0;
		background: #ffc;
	}
}

.colmun dl {
	line-height: 1.5;
}
.colmun li {
	line-height: 1.5;
}

#pageTop {
	position: fixed;
	bottom: 20px;
	right: 1%;
	z-index: 999;
}

#pageTop a {
	display: block;
	width: 50px;
	height: 50px;
	opacity: 0.7;
}

#fl_ban {
	display: none;
}
#fl_ban.fixed {
	display: block;
	position: fixed;
	top: 120px;
	right: 0;
	z-index: 11;
}
#fl_ban.fixed:hover {
	opacity: 0.8;
}

/* ----------------------------------------------------------
 style
---------------------------------------------------------- */
.fz-12	{ font-size: 12px!important;}
.fz-10	{ font-size: 10px!important;}
.fwN	{ font-weight: normal;}
.fwB	{ font-weight: bold;}
.taL	{ text-align: left !important;}
.taC	{ text-align: center !important;}
.taR	{ text-align: right !important;}
.vaT	{ vertical-align: top !important;}
.vaM	{ vertical-align: middle !important;}
.vaB	{ vertical-align: bottom !important;}
.ovH	{ overflow: hidden;}
.clear	{ clear: both;}
.hide	{ display: none;}
.red	{ color: #d51429;}
.txt-hide	{ text-indent: 100%; white-space: nowrap; overflow: hidden;}
.txt15	{ font-size: 15px !important; }
.bg-n	{ background: none !important;}
.mt00	{ margin-top: 0 !important;}
.mt05	{ margin-top: 5px !important;}
.mt10	{ margin-top: 10px !important;}
.mt15	{ margin-top: 15px !important;}
.mt20	{ margin-top: 20px !important;}
.mt25	{ margin-top: 25px !important;}
.mt30	{ margin-top: 30px !important;}
.mt35	{ margin-top: 35px !important;}
.mt40	{ margin-top: 40px !important;}
.mt60	{ margin-top: 60px !important;}
.mt70	{ margin-top: 70px !important;}

.mb00	{ margin-bottom: 0 !important;}
.mb10	{ margin-bottom: 10px !important;}
.mb20	{ margin-bottom: 20px !important;}
.mb30	{ margin-bottom: 30px !important;}
.mb40	{ margin-bottom: 40px !important;}
.mb50	{ margin-bottom: 50px !important;}
.mb80	{ margin-bottom: 80px !important;}

.ml00	{ margin-left: 0 !important;}
.ml15	{ margin-left: 15px !important;}
.ml20	{ margin-left: 20px !important;}
.ml30	{ margin-left: 30px !important;}
.mr00	{ margin-right: 0 !important;}
.mr25	{ margin-right: 25px !important;}
.mr35	{ margin-right: 35px !important;}

.pd10	{ padding: 10px; }
.pd20	{ padding: 20px; }
.pd30	{ padding: 30px; }
.pd40	{ padding: 40px; }
.pd50	{ padding: 50px; }
.pt20	{ padding-top: 20px !important;; }
.pb20	{ padding-bottom: 30px !important;; }

.w12em	{ display: inline-block; width: 12em !important; }
.wspnwp	{ white-space: nowrap; }
.w160	{ width: 160px; }


input.alpha{ime-mode:disabled;}


table.col2 th{width: 250px;box-sizing: border-box;}
#gmap iframe{width: 100%; margin-top: 1em;}
@media screen and (max-width: 640px) {
	table.col2 th,
	table.col2 td{display: block; width: auto;height: auto;}
	table.col2{border-top:1px solid #aaa;}
	table.col2 th{border-style:none solid;}
}

.col2flex{margin-top: 1em;}
.col2flex > div{margin-bottom: 1.5em;}
.col2flex img{max-width: 100%;}
@media screen and (min-width: 641px) {
	.col2flex{display: flex;flex-wrap:wrap;}
	.col2flex > div{width: 50%; box-sizing: border-box;}
	.col2flex > div:nth-child(2n+1){padding-right: 1%;}
	.col2flex > div:nth-child(2n){padding-left: 1%;}
}

.sec_rsv{padding-bottom: 2em;}
.sec_rsv table{margin-bottom: 1em;}
.sec_rsv table th,
.sec_rsv table td{padding: .5em; box-sizing: border-box;}
.sec_rsv table th.vtop{vertical-align: top;padding-top: 15px;}
.sec_rsv .required{color: #f00; margin-left: .5em; font-size: .8em;}

.sec_rsv form input[type="text"],
.sec_rsv form textarea{width: 90%;padding: .5em; box-sizing: border-box; font-size: 1em;font:inherit;}

.sec_rsv form select{padding: .5em;font-size: 1em; }
.sec_rsv form input[name="last_name"], .sec_rsv form input[name="first_name"]{width: 15em;}
.sec_rsv form input[name="zip1"]{width: 3.5em;}
.sec_rsv form input[name="zip2"]{width: 4.5em;}
.sec_rsv form input[name="checkin_date"]{width: 8em;}
.sec_rsv form .ui-datepicker-trigger{vertical-align: middle;margin-bottom: 4px;}
.sec_rsv form .error{color: #f00;}

.sec_rsv form .plan dt {font-weight: bold;}
.sec_rsv form .plan dd {padding: .5em 0 1em 2em; border-bottom: 1px solid #aaa; margin-bottom: 1em;}
.sec_rsv form .plan dd:last-child {border-bottom: none;margin-bottom: 0;}
.sec_rsv form .plan dd .img img{max-width: 100%;}
@media screen and (min-width: 641px) {
	.sec_rsv form input[name="address"]{width: 32.5em;margin-left: 6px;}
	.sec_rsv form .plan dd > div{display: flex;}
	.sec_rsv form .plan dd .excerpt{width: 70%;}
	.sec_rsv form .plan dd .img{width: 30%;}
}
@media screen and (max-width: 640px) {
	.sec_rsv form input[type="text"],
	.sec_rsv form textarea{width: 100%;}
}

.sec_rsv form a:hover{text-decoration: none;}

.sec_rsv .btn{text-align: center;}
.sec_rsv button{
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
    border: none;
    border-bottom: solid 3px #ccc;
    background: #333;
    color: #fff;
    letter-spacing: 1px;
    padding: 8px 30px;
    cursor: pointer;
    margin: 0 2em;
    font-size: 1.2em;
}


.sec_rsv button.btnBack{
	background: #999;
	border-bottom: 4px solid #555;
}

@media screen and (min-width: 641px) {
	.sec_rsv table th{width: 200px;}
	.sec_rsv button:hover{opacity: .8;}
}


.thanks .contents h2{margin-bottom: 1em;}
@media screen and (min-width: 641px) {
	.thanks .contents{margin-top: 150px;}
}

