@charset "UTF-8";
/* hotaru.css */

img {
	max-width: 100%;
	height: auto;
}
#main {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

@media only print, screen and (max-width: 40.063em) {	
/* SP　Layout
---------------------------------------------------------- */
html { overflow-y: scroll;}
body { text-align: center;}
}	

/* Clearfix
---------------------------------------------------------- */
.clearfix {
	display: block;
	min-height: 1%;
}
.clearfix:after {
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}
* html .clearfix {
	height: 1%;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}


/* main
---------------------------------------------------------- */
.lDef #main { 
	float: right;
	width: 760px;
	margin-bottom: 25px;
}
@media only print, screen and (max-width: 40.063em) {	
.lDef #main { 
	float: none;
	width: 100%;
	margin-bottom: 25px;
}
}	


/* header
---------------------------------------------------------- */
.hotaru #header01 { }
.hotaru #header01 h1 {
	position: relative;
	width: 660px;
	height: 260px;
	margin: 0;
	padding: 0;
    overflow: hidden;
}
.hotaru.featuredlist #header01 h1 {
	width: 760px;
	height: 200px;
	margin-bottom: 20px;
}
.hotaru #header01 h1 img { 
    position: absolute;
	top: 50%;
    left: 0;
	-webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    width: 100%;
    height: auto;
}

@media only print, screen and (max-width: 40.063em) { 
.hotaru #header01 { }
.hotaru #header01 h1,
.hotaru.featuredlist #header01 h1 { 
	width: 100%;
	height: auto;
	margin: 0 auto;
    overflow: hidden;
}
.hotaru #header01 h1 img { 
    position: inherit;
	top: 0;
    left: 0;
	-webkit-transform: none;
    -ms-transform: none;
	transform: none;
	object-fit: contain;
}
}

/* List page
---------------------------------------------------------- */
/* 戻る */
.hotaru #return {
	width: 100%;
	margin: 0;
	background-color: #002D64;
	text-align: right;
}
.hotaru #return a {
    display: block; 
    margin: 0;
    padding: 8px 20px;
	font-size: 100%;
	color: #fff;
}
.hotaru #return a::after {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-left: 8px;
    border: solid #fff;
    border-width: 2px 2px 0 0;
    transform: rotate(45deg);
	-webkit-transform: rotate(45deg);  
    -moz-transform: rotate(45deg);  
}
.hotaru #return a::befor {
    display: inherit;
}

@media only print, screen and (max-width: 40.063em) {
/* 戻る */
.hotaru #return {
	margin: 0;
	background-color: #002D64;
	text-align: left;
}
.hotaru #return a {
    display: block; 
    margin: 0;
    padding: 10px 15px;
	font-size: 100%;
	color: #fff;
}
.hotaru #return a::after {
    display: none;
}
.hotaru #return a::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-right: 8px;
    border: solid #fff;
    border-width: 2px 2px 0 0;
    transform: rotate(45deg);
	-webkit-transform: rotate(45deg);  
    -moz-transform: rotate(45deg);  
}
}

/* Area Navi
---------------------------------------------------------- */
.hotaru #areaNavi {
	width: 100%;
	margin: 0 0 20px 0;
	padding: 18px 0;
	background-color: #002D64;
	text-align: center;
}
.hotaru #areaNavi ul {
	width: 90%;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}
.hotaru.featuredlis #areaNavi ul {
    width: 90%;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}
.hotaru #areaNavi ul li { 
    display: inline-block;
	width: 22.5%;
	margin: 0;
	font-size: 108%;
	line-height: 1.2;
	font-weight: bold;
}
.hotaru #areaNavi ul li:first-child { }
.hotaru #areaNavi ul li:last-child { 
	margin: 0;
}
.hotaru #areaNavi ul li a {
    display: block; 
    margin: 0;
    padding: 2px 2px;
	color: #fff;
	text-decoration: none;
	border-left: solid 1px #fff;
}
.hotaru #areaNavi ul li:last-child a {
	border-right: solid 1px #fff;	
}
.hotaru #areaNavi ul li a:hover,
.hotaru.featuredlist #areaNavi ul li a:hover,
.hotaru #areaNavi ul li.current a,
.hotaru.featuredlist #areaNavi ul li.current a { 
    color: #feb;
	text-decoration: none;
}
.hotaru #areaNavi ul li:first-child a:hover { 
    color: #feb;
	text-decoration: none;
}

@media only print, screen and (max-width: 40.063em) {
.hotaru #areaNavi {
	width: 100%;
	margin: 0 0 20px 0;
	padding: 18px 0;
	background-color: #002D64;
}
.hotaru #areaNavi ul {
	width: 94%;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}
.hotaru.featuredlist #areaNavi ul {
    width: 94%;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}
.hotaru #areaNavi ul li { 
    display: inline-block;
	width: 31.5%;
	margin: 5px 0.5% 0 0;
	font-size: 108%;
	line-height: 1.4;
	background-color: #FFF;
	vertical-align: middle;
}
.hotaru #areaNavi ul li span { 
	letter-spacing: -.2em;
}
.hotaru #areaNavi ul li:first-child { 
    display: block;
	width: 99%;
	margin: 0 auto 5px auto;
	background-color: #FFDD4B;
}
.hotaru #areaNavi ul li:last-child { 
	margin: 5px 0 0 0;
}
.hotaru #areaNavi ul li a {
    display: block; 
    margin: 0;
    padding: 13px 0 12px 0;
	color:  #002D64;
	text-decoration: none;
	border-left: none;
}	
.hotaru #areaNavi ul li:first-child a { 
    color: #002D64;
}
.hotaru #areaNavi ul li:first-child a::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-right: 8px;
    border: solid #002D64;
    border-width: 2px 2px 0 0;
    transform: rotate(45deg);
	-webkit-transform: rotate(45deg);  
    -moz-transform: rotate(45deg);  
}
.hotaru #areaNavi ul li a::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-right: 6px;
    border: solid  #002D64;
    border-width: 2px 2px 0 0;
    transform: rotate(45deg);
	-webkit-transform: rotate(45deg);  
    -moz-transform: rotate(45deg);  
}	
.hotaru #areaNavi ul li:last-child a {
	border-right: none;	
}
.hotaru #areaNavi ul li a:hover,
.hotaru.featuredlist #areaNavi ul li a:hover,
.hotaru #areaNavi ul li.current a,
.hotaru.featuredlist #areaNavi ul li.current a { 
    color:  #002D64;
	background-color: #fec;
}
.hotaru #areaNavi ul li:first-child a:hover { 
    color: #fff;
	background-color: #953;
}
}


/* copy */
#txtArea { 
	padding: 0;
    font-size: 108%;
	line-height: 1.6;
}
#txtArea h2 { 
    font-size: 139%;
	line-height: 1.6;
	font-weight: bold;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
#txtArea span { 
	font-size: 93%;
	line-height: 1.6;
} 

@media only print, screen and (max-width: 40.063em) { 
#txtArea { 
	padding: 0 20px;
    font-size: 108%;
	line-height: 1.6;
}
#txtArea h2 { 
    font-size: 139%;
	line-height: 1.6;
	font-weight: bold;
}
#txtArea span { 
	font-size: 93%;
	line-height: 1.6;
} 
}

/* カテゴリー検索
---------------------------------------------------------- */
#featured { 
	clear: both;
	margin-top: 35px;
}


@media only print, screen and (max-width: 40.063em) {
/* カテゴリー検索
---------------------------------------------------------- */
#featured { margin-top: 30px;}
}




/* （1）searchlist01 [listA] -PC-3列-
================================ */
ul.searchlist01.listA { 
    width: 100%;
	margin: 20px 0;
	padding: 0;
	list-style: none;
	color: #333;
    text-decoration: none;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
ul.searchlist01.listA li {
    display: inline-block;
    width: 31.2%; 
    margin: 0 2.5% 20px 0;
    padding: 0;
    vertical-align: top;
}
ul.searchlist01.listA li:nth-child(3n) { margin-right: 0 !important;}

ul.searchlist01.listA li a {
    display: block;
    text-decoration: none; 
}
ul.searchlist01.listA li a:hover {
    opacity: 0.75;
    filter: alpha(opacity=75);
    -ms-filter: "alpha(opacity=75)";
}
ul.searchlist01.listA li a dl dt { 
    display: block;
    margin: 0 0 8px 0;
    padding: 0;
    vertical-align: middle;
}
ul.searchlist01.listA li a dl dd.categoryTtl { 
    margin-bottom: 5px;
    font-size: 108%;
    line-height: 1.2;
    font-weight: bold;
	text-align: center;
    color: #002D64;
}        
ul.searchlist01.listA li a dl dd.txt { 
    font-size: 108%;
    line-height: 1.4;
    color: #333;
}

@media only print, screen and (max-width: 40.063em) { 
/* listA 左右
----------------------------------*/
/* searchlist01  */
ul.searchlist01.listA {
	width: 100%; 
	padding: 0 10px;
    margin: 20px 0; 
}
/* istA- 左右  */	
ul.searchlist01.listA li { 
    clear: both;
    overflow: hidden;
    display: block;
    width: 100% !important;
    margin: 0 0 12px 0;
    padding: 0 0 12px 0;
	border-bottom: solid 1px #ccc;
 }
ul.searchlist01.listA li:nth-child(3n) { margin-right: inherit !important;}

ul.searchlist01.listA li a dl {
	width: 100%;
    margin: 0;
    padding: 0;
   /*  border: solid 2px #;*/
}
ul.searchlist01.listA li a dl dt {
	float: left;
	width: 45%;
    margin: 0;
    padding: 0;
   /*  border: solid 2px #;*/
}	
ul.searchlist01.listA li a dl dd {
	width: 49%;
    margin: 0 0 0 50%;
    padding: 0;
   /*  border: solid 2px #;*/
}
ul.searchlist01.listA li a dl dd.categoryTtl { 
    margin-bottom: 6px;
    font-size: 118%;
    line-height: 1.2;
	text-align: left;
}
ul.searchlist01.listA li a dl dd.txt { 
    font-size: 108%;
    line-height: 1.4;
}	
}



/* Sub Title
---------------------------------------------------------- */
#featured h2.featured_tit {
	margin: 0 0 0 -45px;
	color: #fff;
	background-color: #002D64;
}
.sec01 { border: solid 2px #002D64;}

#spot-listS { border-top: solid 2px #002D64;}

/* areaLink */
.areaLink {
	position: absolute;
	display: inline;
	top: 6px;
	right: 15px;
	font-size: 93%;
	line-height: 1.4;
	font-weight: normal;
	color: #fff;
}
.areaLink a:link { color: #fff; text-decoration: none;}
.areaLink a:visited { color: #fff; text-decoration: none;}
.areaLink a:active { color: #da3; text-decoration: none;}
.areaLink a:hover { color: #da3; text-decoration: none;}
.areaLink a.current { color: #da3;}
.areaLink span:hover { color: #da3; text-decoration: none;}
.areaLink span.area-selected { color: #da3;}

@media only print, screen and (max-width: 40.063em) {

#featured h2.featured_tit {
	margin: 0 0 0 -45px;
}
.sec01 { border: none;}
#spot-listS { border-top: solid 2px #002D64;}

/* areaLink */
.areaLink {
    position: inherit;
	display: table;
	margin: -2px 0 10px -32px;
	padding: 0 0 5px 0;
	font-size: 100%;
	line-height: 1.4;
	font-weight: normal;
}
}


/* 説明 */
.depiction { 
	padding: 0;
    color: #59c;
    line-height: 2.5;
}
.depiction.down01 { 
	margin-bottom: -25px;
}
@media only print, screen and (max-width: 40.063em) {
.depiction { 
	padding: 0 10px;
}
}





		 
/* For_Firefly - index Page -
------------------------------------------------*/
.For_Firefly {
	margin: 0 auto;
	padding: 0 0 15px 0;
	text-align: center;
}
	.For_Firefly img {
		width: 400px;
		margin: 20px 0;
	}
.For_Firefly ul.Firefly_list {
	margin: 0;
	padding: 0 10px;
	text-align: left;
	list-style: none;
}
	.For_Firefly ul.Firefly_list li {
		padding: 8px 0;
		font-size: 108%;
		line-height: 1.8;
		color: #323232;
		border-bottom: dotted 1px #DBD3BB;
		/*position: relative;
		padding-left: 0.4em;*/
	}
	/*.For_Firefly ul.Firefly_list li::before {
		content: "●";
		color: red;
		font-size: 50%;
		position: absolute;
		left: -1.3em;
		top: 10px;
	}*/
	.For_Firefly ul.Firefly_list li dl {}
	.For_Firefly ul.Firefly_list li dt {
		width: 2%;
		font-size: 70%;
		line-height: 1.8;
		color: #C00;
		display: inline-table;
	}
	.For_Firefly ul.Firefly_list li dd {
		width: 93%;
		line-height: 1.8;
		display: inline-table;
	}

/* For_Observation*/
#For_Observation {
	width: 660px;
	margin: 15px auto;
	font-size: 108%;
	line-height: 1.8;
	background: #FFD;
}
	p.For_Observation-tit {
		padding: 0;
		font-size: 131%;
		font-weight: bold;
		text-align: center;
		color: #002651;
		background: rgba(190,210,255,0.7);
	}
	p.For_Observation-txt { padding: 20px 25px 20px;}
		p.For_Observation-tit img { vertical-align: middle; display: inline;}


@media only print, screen and (max-width: 40.063em) {
/* For_Firefly*/
.For_Firefly { }
	.For_Firefly img {
		width: 92%;
		margin: 25px 0 20px;
	}
.For_Firefly ul.Firefly_list { }
	.For_Firefly ul.Firefly_list li { }
	/*.For_Firefly ul.Firefly_list li::before {
		content: "●";
		color: red;
		font-size: 50%;
	}*/
	.For_Firefly ul.Firefly_list li dl {}
	.For_Firefly ul.Firefly_list li dt { display: inline-table;}
	.For_Firefly ul.Firefly_list li dd {
		display: inline-table;
	}

	
/* For_Observation*/
#For_Observation { width: 100%;}
	p.For_Observation-tit {
		padding: 6px 0;
		font-size: 123.1%;
	}
	p.For_Observation-txt { padding: 20px 15px;}
		p.For_Observation-tit img { display: none;}
}

