@charset "utf-8";

/* basic
------------------------------------------------------------------------- */
body {
	color:#333;
	font-size:16px;
	font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3",Osaka,"メイリオ","Meiryo",Sans-Serif;
}
	@media(max-width:980px) {
		body {
			-webkit-text-size-adjust:none;
		}
	}

.cf:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.cf {
  min-height: 1px;
}

* html .cf {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

/* link default */
a:link		{ color:#0040FF; text-decoration:underline; }
a:visited	{ color:#0040FF; text-decoration:underline; }
a:hover		{ color:#0040FF; text-decoration:none; }
a:active	{ color:#0040FF; text-decoration:none; }

/* link black */
a.a1:link	{ color:#333; text-decoration:none; }
a.a1:visited	{ color:#333; text-decoration:none; }
a.a1:hover	{ color:#333; text-decoration:none; }
a.a1:active	{ color:#333; text-decoration:none; }

a[target="_blank"] {
	display:inline-block;
	background: url(../images/icon_blank.png) right center no-repeat;
	background-size:12px;
	padding-right:18px;
}



/* header
------------------------------------------------------------------------- */
#headerWrap {
	height:45px;
	background-color:#000;
}
#header {
	width:960px;
	margin:0 auto;
}
	@media(max-width:980px) {
		#header {
			width:auto;
			padding:0 5px;
		}
	}

#header > a {
	text-decoration:none;
}
#header > a p {
	display:inline;
	line-height:45px;
	color:#FFF;
	font-size:14px;
	margin-right:3px;
}
	@media(max-width:980px) {
		#header > a p {
			font-size:10px;
		}
	}
	@media(max-width:400px) {
		#header > a p {
			display:none;
		}
	}

#header > a span {
	font-size:24px;
	line-height:45px;
	color:#FFF;
}
	@media(max-width:980px) {
		#header > a span {
			font-size:18px;
		}
	}

#header #translate {
	float:right;
	margin-top:10px;
}



/* breadCrumb
------------------------------------------------------------------------- */

#breadCrumb {
	margin-bottom:60px;
	background-color:#F7F7F7;
	font-size:14px;
	line-height:1.3;
	padding:8px 0;
}
	@media(max-width:980px) {
		#breadCrumb {
			margin-bottom:40px;
		}
	}

#breadCrumb ul {
	width:960px;
	margin:0 auto;
}
	@media(max-width:980px) {
		#breadCrumb ul {
			width:auto;
			padding:0 5px;
		}
	}

#breadCrumb ul li {
	display:inline;
	line-height:1.3;
}
#breadCrumb ul li a {
	color:#333;
	text-decoration: none;
	background:url(../images/breadCrumbArrow.gif) right center no-repeat;
	background-size:5px 9px;
	padding-right:15px;
	margin-right:5px;
}
#breadCrumb ul li.current a {
	background: none;
	font-weight:bold;
}



/* footer
------------------------------------------------------------------------- */

#footerWrap {
	text-align:center;
	background-color:#000;
}
#footer {
	width:960px;
	margin:0 auto;
	padding:20px 0 0 0;
}
	@media(max-width:980px) {
		#footer {
			width:auto;
			margin:0 5px;
		}
	}

#footer nav.related {
	padding-bottom:5px;
	border-bottom:1px solid #444;
	margin-bottom:5px;
}
#footer nav.related header {
	font-size:14px;
	color:#FFF;
	font-weight:bold;
}
#footer nav ul li {
	display:inline-block;
	margin:0 10px;
}
#footer nav ul li a {
	color:#FFF;
}

#footer address {
	color:#CCC;
	font-style:normal;
	line-height:48px;
	font-size:12px;
}
#footer a {
	line-height:32px;
}



/* common
------------------------------------------------------------------------- */

.frame {
	width:960px;
	margin:0 auto;
}
	@media(max-width:980px) {
		.frame {
			width:auto;
		}
	}

/* tableOfContents */
#tableOfContents {
	display:inline-block;
	text-align:left;
	border:1px solid #CCC;
	background-color:#F7F7F7;
	padding:20px;
}
#tableOfContents h2 {
	text-align:center;
	margin-bottom:10px;
}
#tableOfContents dl {
	line-height:1.8;
}
#tableOfContents dl dt {
	display:inline;
	margin-right:10px;
}
#tableOfContents dl dd {
	display:inline;
}

.travelTime {
	display:block;
	margin-bottom:30px;
	background:url(../../tourism/images/bg_1.png) bottom center no-repeat;
	background-size:24px 60px;
	line-height:1.3;
	padding:25px 0 25px 53%;
}

.tourismTime {
	font-size:14px;
}

/* spot */
.spot {
	margin-bottom:20px;
}
.spot .frame figure {
	float:left;
	width:480px;
	margin-bottom:15px;
}
	@media(max-width:980px) {
		.spot .frame figure {
			float:none;
			width:auto;
		}
	}

.spot .frame figure img {
	-moz-box-shadow:2px 2px 4px #999;
	-webkit-box-shadow:2px 2px 4px #999;
}
	@media(max-width:980px) {
		.spot .frame figure img {
			-moz-box-shadow:none;
			-webkit-box-shadow:none;
		}
	}

.spot .frame .text {
	float:right;
	width:460px;
	min-height:320px;
	margin-bottom:10px;
}
	@media(max-width:980px) {
		.spot .frame .text {
			float:none;
			width:auto;
			min-height:0;
			padding:0 5px;
		}
	}
.spot .frame .text header {
	border-bottom:1px solid #000;
	padding-bottom:15px;
	margin-bottom:15px;
}
.spot .frame .text header .time {
	display:inline-block;
	background-color:#204D8E;
	font-size:20px;
	height:32px;
	line-height:32px;
	padding:0 8px;
	color:#FFF;
	margin-right:5px;
}
.spot .frame .text header h3 {
	display:inline;
	font-size:24px;
	line-height:1.5;
}
.spot .frame .text h2 {
	font-size:20px;
	line-height:1.3;
	margin-bottom:10px;
}
.spot .frame .text p {
	line-height:1.6;
	margin-bottom:10px;
}
.spot .frame .text dl {
	display:table;
	width:100%;
}
.spot .frame .text p span {
	font-size:14px;
}
.spot .frame .text dl dt,
.spot .frame .text dl dd {
	display:table-cell;
	padding:10px 8px;
	border-bottom:dashed 1px #999;
}
.spot .frame .text dl dt {
	width:25%;
	line-height:1.3;
	background-color:#F7F7F7;
}
.spot .frame .text dl dd {
	width:70%;
	line-height:1.3;
}
/* photo */
.photoButton {
	width:960px;
	margin:0 auto;
	text-align:right;
}
	@media(max-width:980px) {
		.photoButton {
			width:auto;
		}
	}

.photoButton span {
	display:inline-block;
	margin-right:10px;
	padding:12px;
	line-height:1;
	background-color:#000;
	color:#FFF;
	cursor:pointer;

    border-radius:7px;	/* CSS3草案 */  
    -webkit-border-radius:7px;	/* Safari,Google Chrome用 */  
    -moz-border-radius:7px;	/* Firefox用 */  
}
.photoList {
	display:none;
	background-color:#000;
	padding:10px;
	margin-top:-7px;
}
.photoList figure {
	margin-bottom:10px;
	display:block; 
	position:relative; 
}
.photoList figure:last-child {
	margin-bottom:0;
}
.photoList figure figcaption {
	position:absolute; 
	background:rgba(0,0,0,0.4); 
	color:#FFF; 
	width:100%;
	text-align:center;
	left:0;
	bottom:0;
	padding:5px 0;
	line-height:1.3;
}
	@media(max-width:980px) {
		.photoList figure figcaption {
			font-size:14px;
		}
	}

div.toTop {
	display:none;
	width:46px;
	height:46px;
	position:fixed;
	right:12px;
	bottom:12px;
}
div.toTop img {
	-moz-opacity:0.7;
	opacity:0.7;
}

.toMap {
	width:960px;
	margin:0 auto 100px auto;
}
	@media(max-width:980px) {
		.toMap {
			width:auto;
			margin:0 10px 80px 10px;
		}
	}

.toMap a {
	display:block;
	border:3px solid #999;
	color:#000;
	text-decoration:none;
	line-height:180px;
	text-align:center;
	font-size:42px;
	font-weight:bold;
	text-shadow:2px 2px 2px #FFF;
	background:url(../images/bg_map.png) center center no-repeat !important;
	background-size:covert !important;
}
	@media(max-width:980px) {
		.toMap a {
			font-size:28px;
			line-height:120px;
		}
	}

.toMap a span {
	background: url(../images/icon_blank.png) right center no-repeat;
	padding-right:40px;
}
	@media(max-width:980px) {
		.toMap a span {
			background-size:12px;
			padding-right:20px;
		}
	}