@charset "UTF-8";

/* リセット */
body,div,p,blockquote,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,table,caption,tr,td,th,address,header,footer,nav,article,section,aside,figure,figcaption {margin:0; padding:0;}
body,div,p,blockquote,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,address,header,footer,nav,article,section,aside,figure,figcaption {display:block;}
ul,ol {list-style-type:none;}
img {border:none; vertical-align:middle;}

/* ユーティリティー */
a {zoom:1; text-decoration:none; color:#333; transition: opacity 2s; -webkit-transition: opacity 2s; -ms-transition: opacity 2s; -o-transition: opacity 2s;}
a:hover, a.active, a.np {opacity: 0.8; filter: alpha(opacity=80); -ms-filter: "alpha(opacity=80)";}
a.nohover {opacity: 1.0; filter: alpha(opacity=100); -ms-filter: "alpha(opacity=100)";	}
.fgo {font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;}
.fmin {	font-family:"ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;}
.flt-l {float: left;}
.flt-r {float: right;}
.clearfix:after {
	content:"";
	clear:both;
	display:block;
}
.page {margin:0 auto; width:790px;}

.boxshadow {box-shadow:rgba(000, 000, 000, 0.120000) 0px 0px 3px 2px; -webkit-box-shadow:rgba(000, 000, 000, 0.120000) 0px 0px 3px 2px; -moz-box-shadow:rgba(000, 000, 000, 0.120000) 0px 0px 3px 2px;zoom: 1;position:relative;}

table {border-collapse:collapse;}

body {
	color:#333;
	font-family:"ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
	font-size:14px;
	line-height:1.4;
	background-color:#edd7b2;
}
body p {
	line-height:1.8;
}

/* -------------------------------------
common
------------------------------------- */
.cp {
	font-size:12px;
	font-weight:bold;
	font-family: "garamond-premier-pro",serif;
	color:#002a42;
	text-align:center;
}

/* -------------------------------------
header
------------------------------------- */
header {
	width:290px;
	float:left;
	padding:80px 20px;
	box-sizing:border-box;
	position: -webkit-sticky;
	position: -ms-sticky;
	position: -moz-sticky;
	position: sticky;
	top:0;
	transition: all .5s;
	-webkit-transition: all .5s;
	-ms-transition: all .5s;
	-moz-transition: all .5s;
	-o-transition: all .5s;
}
header #logo {
	max-width:135px;
	width:47%;
	margin:0 auto 40px auto;
}
header #logo a {
	display:block;
}
header #logo img {
	width:100%;
	height:auto;
	transition: all .5s;
	-webkit-transition: all .5s;
	-ms-transition: all .5s;
	-moz-transition: all .5s;
	-o-transition: all .5s;
}
header #logo img.sp {
	display:none;
}
header #gnavi {
	margin-bottom:50px;
}
header #gnavi ul {
	text-align:center;
}
header #gnavi ul li {
	margin-bottom:40px;
}
header #gnavi ul li:last-child {
	margin-bottom:0;
}
header #gnavi ul li a {
	font-weight:bold;
	font-family: "garamond-premier-pro",serif;
	color:#002a42;
}
header aside {
	margin-bottom:40px;
}
header aside ul {
	font-size:0;
	text-align:center;
}
header aside ul li {
	width:17px;
	margin-right:10px;
	display:inline-block;
}
header aside ul li a {
	display:block;
}
header aside ul li img {
	width:100%;
	height:auto;
}

/* -------------------------------------
maincontent
------------------------------------- */
#maincontent {
	width:calc(100% - 290px);
	float:right;
	transition: all .5s;
	-webkit-transition: all .5s;
	-ms-transition: all .5s;
	-moz-transition: all .5s;
	-o-transition: all .5s;
}
#maincontent .blk {
	margin-bottom:180px;
}
#maincontent .blkimg {
	width:100%;
	margin-bottom:180px;
	position:relative;
}
#maincontent .blkimg img {
	width:100%;
	height:auto;
}
.caution {
	font-size:21px;
	font-weight:bold;
	color:#fff;
	height:auto;
	text-shadow:2px 2px 3px #000,0px 0px 6px #000;
	-webkit-text-shadow:2px 2px 3px #000,0px 0px 6px #000;
	-moz-text-shadow:2px 2px 3px #000,0px 0px 6px #000;
	-ms-text-shadow:2px 2px 3px #000,0px 0px 6px #000;
	position:absolute;
	bottom:5px;
	left:10px;
}
#maincontent .ttl {
	-ms-writing-mode: tb-rl;
	-moz-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	width:125px;
	min-height:183px;
	background-color:rgba(255,255,255,0.6);
	position:absolute;
	top:97.5%;
	right:18%;
	transition: all .5s;
	-webkit-transition: all .5s;
	-ms-transition: all .5s;
	-moz-transition: all .5s;
	-o-transition: all .5s;
}
#maincontent .ttl h2 {
	font-size:18px;
	width:45%;
	height:65%;
	margin:0 auto;
	position:absolute;
	top:50%;
	left:0;
	right:0;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	-o-transform:translateY(-50%);
}
#maincontent .ttl span {
	font-size:14px;
	line-height:2.4;
	display:block;
	text-align:right;
}
#maincontent .ttl img {
	width:17px;
	display:block;
	position:absolute;
	bottom:10px;
	right:20px;
}

#hotellink {
	max-width:34px;
	width:10%;
	position:fixed;
	top:20px;
	right:30px;
	z-index:200;
}
#hotellink img {
	width:100%;
	height:auto;
}

#scrollbtn {
	text-align:center;
	max-width:60px;
	width:20%;
	margin:0 auto;
	position:absolute;
	bottom:20px;
	left:0;
	right:0;
	z-index:200;
	transition: all .5s;
	-webkit-transition: all .5s;
	-ms-transition: all .5s;
	-moz-transition: all .5s;
	-o-transition: all .5s;
}
#scrollbtn img {
	width:100%;
	height:auto;
}
	
/* -------------------------------------
footer
------------------------------------- */
footer {
	padding:50px 0 40px;
}
footer .cp {
	display:none;
}
footer ul {
	font-size:0;
	text-align:center;
}
footer ul li {
	border-right:1px solid #243855;
	box-sizing:border-box;
	display:inline-block;
}
footer ul li:last-child {
	border-right:none;
}
footer ul li a {
	font-size:14px;
	font-weight:bold;
	color:#243855;
	padding:0 20px;
	box-sizing:border-box;
}

@media screen and (max-width:1200px) {
	#maincontent .ttl {
		top:90%;
		right:10%;
	}
}

@media screen and (max-width:1130px) {
	.page {
		width:100%;
		padding:0 20px;
		box-sizing:border-box;
	}

	/* -------------------------------------
	header
	------------------------------------- */
	header {
		width:240px;
	}
	/* -------------------------------------
	maincontent
	------------------------------------- */
	#maincontent {
		width:calc(100% - 240px);
	}
	#maincontent .blk {
		margin-bottom:100px;
	}
	
	.caution {
		font-size:18px;
	}
}

@media screen and (max-width:768px) {
	/* -------------------------------------
	common
	------------------------------------- */
	.cp {
		display:none;
	}
	
	/* -------------------------------------
	header
	------------------------------------- */
	header {
		font-size:0;
		text-align:center;
		width:100%;
		float:none;
		padding:20px;
		box-sizing:border-box;
		display:block;
		background-color:#edd7b2;
		z-index:1000;
	}
	header #logo {
		min-width:120px;
		width:20%;
		margin:0 auto;
		display:block;
	}
	header #logo img.pc {
		display:none;
	}
	header #logo img.sp {
		display:block;
	}
	header #gnavi {
		margin-bottom:0;
		padding-top:20px;
		display:inline-block;
		vertical-align:middle;
	}
	header #gnavi ul {
		font-size:0;
	}
	header #gnavi ul li {
		margin:0 30px 0 0;
		display:inline-block;
	}
	header #gnavi ul li:last-child {
		margin-right:0;
	}
	header #gnavi ul li a {
		font-size:16px;
	}
	header aside {
		margin-bottom:0;
		position:absolute;
		top:20px;
		right:20px;
	}
	
	/* -------------------------------------
	maincontent
	------------------------------------- */
	#maincontent {
		width:100%;
		float:none;
	}
	#maincontent .blk {
		margin-bottom:80px;
	}
	#maincontent .blkimg {
		margin-bottom:45px;
	}
	#maincontent .blkimg img {
		margin-bottom:45px;
	}
	#maincontent #menu .blkimg img {
		margin-bottom:5px;
	}
	.caution {
		font-size:14px;
		color:#000;
		text-shadow:none;
		-webkit-text-shadow:none;
		-ms-text-shadow:none;
		-moz-text-shadow:none;
		margin-bottom:50px;
		padding:0 20px;
		box-sizing:border-box;
	}
	#maincontent .ttl, #maincontent .ttl h2 {
		position:static;
	}
	#maincontent .ttl {
		-ms-writing-mode: lr-tb;
		-moz-writing-mode: horizontal-tb;
		-webkit-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
		width:185px;
		min-height:initial;
		margin:0 auto;
		padding:15px 0;
	}
	#maincontent .ttl h2 {
		text-align:center;
		width:100%;
		height:auto;
		transform:translateY(0);
		-webkit-transform:translateY(0);
		-ms-transform:translateY(0);
		-moz-transform:translateY(0);
		-o-transform:translateY(0);
	}
	#maincontent .ttl span {
		line-height:1.8;
		text-align:center;
	}
	#maincontent .ttl img {
		margin:0 auto;
		position:static;
	}
	.caution {
		font-size:16px;
		position:static;
	}
	
	#hotellink {
		position:absolute;
	}
	#scrollbtn {
		bottom:15%;
		transform:translateY(-50%);
		-webkit-transform:translateY(-50%);
		-ms-transform:translateY(-50%);
		-moz-transform:translateY(-50%);
		-o-transform:translateY(-50%);
	}
	
	/* -------------------------------------
	footer
	------------------------------------- */
	footer {
		padding:30px 0 10px;
	}
	footer ul {
		margin-bottom:30px;
	}
	footer .cp {
		display:block;
	}
}

@media screen and (max-width:640px) {
	/* -------------------------------------
	header
	------------------------------------- */
	header #gnavi ul li {
		margin-right:20px;
	}
	header #gnavi ul li a {
		font-size:14px;
	}
	
	#maincontent .blk {
		margin-bottom:60px;
	}
	.caution {
		font-size:13px;
	}
	#hotellink {
		top:10px;
		right:10px;
	}
	#scrollbtn {
		bottom:20%;
	}
	
	footer ul li a {
		font-size:13px;
		padding:0 15px;
	}
}

@media screen and (max-width:480px) {
	.caution {
		font-size:12px;
	}
}

@media screen and (max-width:320px) {
	header aside {
		right:10px;
	}
}
