@charset "UTF-8";
/* CSS Document */

/* --------------------------------------------------
reset
-------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

strong{
	font-weight:bold;
}

em{
	font-style:italic;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

img,a {
  vertical-align:top;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

*, *:before, *:after {
	box-sizing: border-box;
}

/* --------------------------------------------------
fonts
-------------------------------------------------- */

.wf-notosansjapanese { font-family: "Noto Sans Japanese"; }

@font-face {
  font-family: 'kumamoto';
  src:
    url('../fonts/kumamoto.woff?rvpffw') format('woff'),
    url('../fonts/kumamoto.ttf?rvpffw') format('truetype'),
    url('../fonts/kumamoto.svg?rvpffw#kumamoto') format('svg');
  font-weight: normal;
  font-style: normal;
}

/* --------------------------------------------------
clearfix
-------------------------------------------------- */

.clearfix:after{
  content: "."; 
  display: block; 
  height: 0;
  font-size:0;   
  clear: both;
  visibility:hidden;
}
.clearfix {display: inline-block;}
* html .clearfix {height: 1%;}
.clearfix {display:block;}


/* --------------------------------------------------
html
-------------------------------------------------- */

html{
  font-size: 62.5%;
  height:100%;
}

/* --------------------------------------------------
body
-------------------------------------------------- */

body{
	font-family:"Noto Sans JP" , "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, Osaka, sans-serif;
  font-size: 1.5rem;
  line-height:1.6;
  -webkit-text-size-adjust: 100%;
  height:100%;
	color:#272727;
	box-sizing:border-box;
}

/* --------------------------------------------------
form
-------------------------------------------------- */

button, fieldset, form, input, label, legend, select, textarea {
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	padding: 0;
	vertical-align: middle;
}
fieldset {
	border: none;
	display: block;
}
legend {
	display: none;
}
label {
	cursor: pointer;
	display: none;
}
textarea {
	overflow: auto;
	padding: 3px;
	vertical-align: middle;
	width: 100%;
	border: 1px solid #D1D1D1;
	padding: 5px 10px;
	font-size: 1.6rem;
	line-height: 1.8;
	margin: 10px 0;
	box-sizing: border-box;
}
input::-webkit-input-placeholder {
 color: #747484;
}
input:-ms-input-placeholder {
 color: #747484;
}
input::-moz-placeholder {
 color: #747484;
}
select {
	padding: 8px;
	border: 1px solid #D1D1D1;
}
input[type="checkbox"],
input[type="radio"]{
 margin-right: .5rem;
}
input[type="checkbox"] + label,
input[type="radio"] + label{
	display: inline-block;
	margin-right: 1rem;
}
input[type="text"],
input[type="tel"],
input[type="email"] {
	vertical-align: middle;
	border: none;
	border: 1px solid #D1D1D1;
	padding: 5px 10px;
	font-size: 1.5rem;
	line-height: 1.8;
	box-sizing: border-box;
}
input[type="file"] {
	padding: 5px 0;
}

select.text-ss {
	padding: 5px;
	background: #FFF;
}
.label-name {
	margin: 0px 7px 0 0;
	display: inline-block;
}
.text-ss {
	width: 10%;
	margin: 10px 7px 10px 0;
}
.text-s,
.text-s-sp-harf {
	width: 30%;
	margin: 10px 7px 10px 0;
}
.text-m {
	width: 58%;
	margin: 10px 7px 10px 0;
}
.text-l {
	width: 100%;
	margin: 10px 0;
}

/* table-form */
.table-form {
	width: 100%;
	margin: 15px 0 30px;
	border-collapse: collapse;
}
.table-form th {
	width: 260px;
	display: table-cell;
	font-weight: bold;
	background: #EEE;
	padding: 10px 20px;
	border-bottom: 1px solid #FFF;
}
.table-form td {
	background: #F9F9F9;
	padding: 10px 20px;
	border-bottom: 1px solid #E7E7E7;
	word-break: break-all;
	word-wrap: break-word;
}

/* essential */
.essential {
	display: inline-block;
	color: #F00;
	margin-left: 10px;
	vertical-align: middle;
	font-weight: normal;
}

/* error-message */
.error-message {
	color: #f00;
	line-height: 1.4;
	margin-bottom: 1rem;
}

/* form-caption */
.form-caption {
	font-size: 1.3rem;
	line-height: 1.4;
}

/* sp-block */
.form-group .sp-block{
	display: inline;
}

/* form-list */
.form-list {
	margin: 5px 0;
}
.form-list li {
	display: inline-block;
	margin: 5px 15px 5px 0;
}

/* scroll-box */
.scroll-box {
	border: 1px solid #cccccc;
	background: #FFF;
	height: 100px;
	overflow-y: scroll;
	padding: 10px;
}

/* form-icon  */
.form-icon a {
	display: inline-block;
	vertical-align: middle;
}
.form-icon a i {
	color: #e06f73;
	font-size: 2rem;
	margin-right: 5px;
}


/* --------------------------------------------------
link
-------------------------------------------------- */

a:link{
  color: #1b63a0;
  text-decoration: none;
}
a:visited{
  color: #1b63a0;
  text-decoration: none;
}
a:hover{
  color: #1b63a0;
  text-decoration: none;
}
a:active{
  color: #1b63a0;
  text-decoration: none;
}

a:hover img{
	opacity:0.8;
}

/* --------------------------------------------------
spnav
-------------------------------------------------- */

#spnav{
	z-index:100;
	background: rgba(0, 0, 0, 0.8);
	position: fixed;
	width: 100%;
	height: 100%;
	overflow-y: scroll;
	-webkit-overflow-scrolling:touch;
	top:0;
	opacity: 0;
	display: none;
	transition: opacity .3s;
	padding-top:50px;
}
#spnav.open{
	opacity: 1;
	display: block;
}
.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
}
#spnav .comingsoon span{
	background: rgba(255, 255, 255, .2);
	border:1px solid #FFF;
	color:#FFF;
	display:inline-block;
	margin-left:15px;
	padding:2px 5px;
	font-size:1rem;
}

/* btn-spnav */
.btn-spnav{
	position:relative;
	order: 3;
	display:none;
}
.btn-spnav a{
	display: block;
	padding: .5em;
	width: 6rem;
	text-align: center;
	font-size: 2rem;
	color: #fff;
	background: #000;
}
.btn-spnav span{
	font-size:.8rem;
	display:block;
	text-align:center;
	margin-top:-5px;
}
#spnav .btn-access{
	vertical-align: middle;
	padding:0 20px;
}
#spnav .btn-access a{
	background:#fff;
	color:#66CC99;
	display:block;
	padding:13px;
	border-radius:5px;
	text-align:center;
}

@media screen and (max-width: 767px) {
	/* btn-spnav */
	.btn-spnav{
		display:block;
	}
}

/* Menu style */
#spnav nav {
	text-align: center;
	margin-top:10%;
}
#spnav nav > ul {
	width:90%;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
}
#spnav nav > ul li {
	display: block;
	width:100%;
}
#spnav nav > ul li > a {
	color:#FFF;
	padding:.5em;
	font-size:1.2rem;
	display:block;
	border:#FFF solid 1px;
	margin-bottom:10px;
}
#spnav nav > ul ul {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
#spnav nav > ul ul li {
	display: block;
	width:calc(50% - 5px);
}

/* serch box */
#spnav nav .h-serch{
	padding: 10px 0;
	display: flex;
	justify-content: flex;
	height: 100%;
}
#spnav nav form{
	width: 100%;
}
#spnav nav .h-serch input{
	vertical-align: middle;
	border: none;
	border: 1px solid #fff;
	width: 100%;
}
#spnav nav .h-serch a{
	font-size: 1.5rem;
	padding: 0.5em;
	display: block;
	color: #fff;
	background: #000;
	margin-bottom: 0;
	border: 1px solid #fff;
}

/* language */
#spnav .sp-lang{
	position: relative;
	text-align:center;
	width:80%;
	position:relative;
	overflow:hidden;
	margin:0 auto;
}
#spnav .sp-lang a{
	color:#FFF;
}
#spnav .sp-lang dt{
	font-weight:bold;
}
#spnav .sp-lang dd{
	display:inline-block;
}
#spnav .sp-lang dd:after{
	color:#FFF;
	content:"|";
	margin:0 10px;
}

/* language */
#spnav .sp-sns{
	position: relative;
	text-align:center;
	width:80%;
	position:relative;
	overflow:hidden;
	margin: 1em auto;
}
#spnav .sp-sns li{
	display:inline-block;
}
#spnav .sp-sns li a{
	display: block;
	width: 35px;
}
#spnav .sp-sns li a img{
	width: 100%;
}

/* --------------------------------------------------
Overlay
-------------------------------------------------- */

/* Overlay style */
#spnav .overlay {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background:	rgba(27,99,160,0.8)  ;
	z-index:2;
}

/* Overlay closing cross */
#spnav .btn-close {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
	color:#FFF;
	font-size:3rem;
	line-height:3rem;
	z-index:1111;
	position:absolute;
	top:20px;
	right:20px;
}

/* Effects */
.overlay-slidedown {
	visibility: hidden;
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
	-webkit-transition: -webkit-transform 0.4s ease-in-out, visibility 0s 0.4s;
	transition: transform 0.4s ease-in-out, visibility 0s 0.4s;
}
.overlay-slidedown.open {
	visibility: visible;
	-webkit-transform: translateY(0%);
	transform: translateY(0%);
	-webkit-transition: -webkit-transform 0.4s ease-in-out;
	transition: transform 0.4s ease-in-out;
}

/* --------------------------------------------------
header
-------------------------------------------------- */

#header{
	position:relative;
	background:#FFF;
	display:flex;
	justify-content: flex-end;
	height: 52px;
	box-shadow: 0 0 4px rgba(0,0,0,0.2);
	z-index: 20;
	width: 100%;
}


#header.fixed-h {
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1);
	position: fixed;
	top: 0;
}

#header.up-h {
	animation: UpAnime 1s forwards;
}

@keyframes UpAnime {
	from {
		transform: translateY(0);
	}

	to {
		transform: translateY(-300%);
	}
}

#header.down-h {
	animation: DownAnime 1s forwards;
}

@keyframes DownAnime {
	from {
		transform: translateY(-105%);
	}

	to {
		transform: translateY(0);
	}
}



.h-logo {
	width:28%;
	min-width:150px;
	max-width:300px;
	padding:10px;
	position:relative;
	z-index:100;
}
.h-logo img{
	width:100%;
	z-index:90;
	position:absolute;
}

@media screen and (max-width: 1200px) {
	#header{
		height: auto;
		flex-wrap:wrap;
		padding-left:200px;
	}
	.h-logo {
		width:180px;
		position: absolute;
		left:0;
		top:8%;
	}
	.h-logo img{
		position:relative;
	}
}

/* --------------------------------------------------
#gnav
-------------------------------------------------- */

#gnav{
	order:1;
	width:100%;
	display:flex;
	align-items: end;
}
#gnav > ul{
	width:100%;
	display:table;
}
#gnav > ul > li{
	display:table-cell;
	position:relative;
}
#gnav > ul > li:after{
	content:"";
	position:absolute;
	right:0;
	top:1em;
	width:1px;
	height:1.5em;
	background: #CCC;
}
#gnav > ul > li.current{
	position:relative;
}
#gnav > ul > li::before{
	content:"";
	display:none;
	position:absolute;
	left:50%;
	top:100%;
	z-index:1;
	width:50px;
	height:4px;
	background:#E60012;
	margin-top:-4px;
	margin-left:-25px;
}
#gnav > ul > li.current::before{
	display:block;
}
#gnav > ul > li:last-of-type::after{
	content:none;
}
#gnav > ul > li > a{
	text-align:center;
	color:#000;
	padding:1em 0;
	display:block;
	min-width:4em;
}

#gnav ul ul{
	display:none;
	position:absolute;
	left:0;
	top:100%;
	background:#FFF;
	z-index:100;
	width:250px;
}
#gnav ul ul a{
	text-align:center;
	color:#000;
	display:block;
	line-height:1.2;
	padding:1em .5em;
	background:#E60012;
	color:#FFF;
}
#gnav ul ul a:hover{
	opacity:.8;
}
#gnav > ul > li:hover ul{
	display:block;
}

@media screen and (max-width: 1200px) {
	#gnav{
		order:2;
	}
}
@media screen and (max-width: 767px) {
	#gnav{
		display:none;
	}
}

/* --------------------------------------------------
h-menu
-------------------------------------------------- */

.h-menu{
	display:flex;
	align-items: center;
	justify-content: flex-end;
	order:2;
}
@media screen and (max-width: 1200px) {
	.h-menu{
		order:1;
	}
}
@media screen and (max-width: 767px) {
	.h-menu{
		display:none;
	}
}

/* language */
.language{
	text-align:center;
	position:relative;
	margin:0 1em;
	font-size:1.2rem;
}
.language dt{
	cursor:pointer;
	position:relative;
	padding:.3em 1.5em;
	border:#000 solid 1px;
}
.language dd{
	width:100%;
	position: absolute;
	display:none;
	top:100%;
	left:0;
	z-index:99;
}
.language dd a{
	width:100%;
	display:block;
	padding:7px;
	color:#FFF;
	background:#000;
}

/* h-serch-box */
.btn-h-serch a{
	display:block;
	padding:.5em;
	width:5rem;
	text-align:center;
	font-size:2rem;
	color:#fff;
	background:#E60012;
}
.h-serch-box{
	width:100%;
	position: absolute;
	display:none;
	top:100%;
	left:0;
	z-index:98;
	background:#C0000F;
}
.h-serch{
	padding:10px;
	display:flex;
	justify-content:flex-end;
}
.h-serch input{
	height:100%;
}
.h-serch a{
	font-size:2rem;
	padding:.5em 1em;
	display:block;
	color:#fff;
	background:#000;
}

/* shere */
.shere{
	display:flex;
	padding-right:.5em;
	align-items: center;
}
.shere a{
	display:block;
	padding:.5em;
	font-size:2rem;
	color:#000;
}
.shere .tw img{
	width: 20px;
	margin-top: 5px;
}
.shere .fb img{
	width: 15px;
	margin-top: 3px;
}
.side-info .shere .tw img{
	width: 30px;
	margin-top: 0;
}
.side-info .shere .fb img{
	width: 13px;
	margin-top: 0;
}

/* --------------------------------------------------
contents
-------------------------------------------------- */

#contents {
  width: 100%;
	overflow:hidden;
	position:relative;
	box-sizing:border-box;
}

section{
	margin-bottom:20px;
}

/* --------------------------------------------------
social
-------------------------------------------------- */
.social{
	position:absolute;
	right:5px;
	top:0;
	display:block;
	padding: 5px 0;
}
.social .twitter-share-button,
.social .fb-like{
	display:inline;
	margin-left:5px;
	vertical-align: middle;
	line-height: 1;
}

@media screen and (max-width: 767px) {
	.social{
		display:none;
	}
}

/* --------------------------------------------------
side
-------------------------------------------------- */

#side {
  width: 20%;
	float:left;
	box-sizing:border-box;
}
.side-list{
	margin-bottom:2rem;
}
.side-list h3{
	font-size:1.7rem;
	padding:15px;
	text-align:center;
	background:#404040;
	color:#FFF;
}
.side-list li a{
	display:block;
	color:#000;
	background:#FFF;
	padding:15px 25px 15px 15px;
	font-size:1.4rem;
	line-height:1.2;
	border-left:#d2d2d2 solid 1px;
	border-right:#d2d2d2 solid 1px;
	border-bottom:#d2d2d2 solid 1px;
	position:relative;
}
.side-list li a:after{
	content:"\f105";
	line-height:1;
	font-size:2rem;
	font-family:fontawesome;
	position:absolute;
	right:1rem;
	top:50%;
	margin-top:-1rem;
}

/* --------------------------------------------------
main
-------------------------------------------------- */

#main {
  width: 80%;
	padding-left:5%;
	float:right;
	box-sizing:border-box;
	position:relative;
}

/* --------------------------------------------------
footer
-------------------------------------------------- */

#footer{
  width: 100%;
  margin: 0 auto;
	overflow:hidden;
	position:relativee;
	box-sizing:border-box;
	text-align:center;
}
#footer a{
	text-decoration:none;
	color:#000;
}
.f-logo{
	font-size:3rem;
	margin-top:2rem;
}

/* f-linkt */
.f-link{
	text-align:center;
	padding:10px;
}
.f-link li{
	display:inline-block;
}
.f-link a{
	display:block;
	padding:.5rem 2rem;
	font-size:1.2rem;
}
.f-link a:before{
	content:"\f0da";
	font-size:1rem;
	font-family:fontawesome;
	margin-right:.5rem;
}

.f-link button{
	background-color: transparent;
	border: none;
	font-size:1.2rem;
	cursor: pointer;
	padding: .5rem 2rem;
}

.f-link button:before{
	content:"\f0da";
	font-size:1rem;
	font-family:fontawesome;
	margin-right:.5rem;
}

#ot-sdk-btn.ot-sdk-show-settings, #ot-sdk-btn.optanon-show-settings{
	border: none !important;
	color: #000 !important;
	background-color: #ffffff !important;
}

#ot-sdk-btn.ot-sdk-show-settings:hover, #ot-sdk-btn.optanon-show-settings:hover{
	background: none !important;
	color: #000 !important;
}

#footer address{
	color:#FFF;
	background:#333;
	font-size:1.2rem;
	padding-top:1rem;
}

/* copyright */
.copyright{
	color:#FFF;
	background:#333;
	font-size:1rem;
	padding-bottom:1rem;
}

/* --------------------------------------------------
pagetop
-------------------------------------------------- */

#pagetop a{
	color:#F8F9FA;
	display:block;
	width:100%;
	text-align:center;
	background:#f7f7f7;
	text-decoration:none;
	padding:.5rem 0;
	height:0;
	padding-top:25px;
	overflow:hidden;
	position:relative;
}

#pagetop a:before{
	font-size:2rem;
	position:absolute;
	left:50%;
	top:50%;
	margin-left:-1rem;
	margin-top:-1.5rem;
	color:#000;
  content: "\e807";
	font-family:'kumamoto';
}

/* --------------------------------------------------
wrapper inner 
-------------------------------------------------- */

.wrapper{
	max-width:1300px;
  margin: 0 auto;
	position:relative;
	overflow:hidden;
	padding:0 10px;
}
.inner{
	max-width:1300px;
  margin: 0 auto;
	position:relative;
	overflow:hidden;
}


/* --------------------------------------------------
display
-------------------------------------------------- */
.pc-hide{
	display:none;
}

@media screen and (max-width: 767px) {
	
	.pc-hide{
		display:block;
	}
		
}

/* --------------------------------------------------
title
-------------------------------------------------- */

/* ttl */
.ttl{
	font-size:3.5rem;
	background: url(../img/common/bg_ttl.jpg) no-repeat left center;
	background-size:cover;
	color:#FFF;
	padding:45px 0 45px 0;
	text-align:center;
	position:relative;
	font-weight:bold;
	letter-spacing:.2rem;
	text-shadow:black 1px 1px 2px, black -1px 1px 2px,black 1px -1px 2px, black -1px -1px 2px;
}
.ttl span{
	display:block;
}

.ttl-eventcalendar{
	padding:200px 0 200px 0;
	background: url(../img/common/bg_eventcalendar.jpg) no-repeat center center;
	background-size:cover;
}

.ttl-7attractions{
	padding:200px 0 200px 0;
	background: url(../img/common/bg_7attractions.jpg) no-repeat center center;
	background-size:cover;
}

.ttl-volunteers{
	padding:200px 0 200px 0;
	background: url(../img/common/bg_volunteers.jpg) no-repeat center center;
	background-size:cover;
}

.ttl-tourist{
	padding:200px 0 200px 0;
	background: url(../img/common/bg_tourist.jpg) no-repeat center center;
	background-size:cover;
}

.ttl-programs{
	padding:200px 0 200px 0;
	background: url(../img/common/bg_programs.jpg) no-repeat center center;
	background-size:cover;
}

.ttl-galleries{
	z-index:100;
	font-size:3.5rem;
	color:#FFF;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width:none;
	max-height:100%;
	max-width:150%;
	text-shadow:black 1px 1px 4px, black -1px 1px 2px,black 1px -1px 4px, black -1px -1px 2px;
}


@media screen and (max-width: 767px) {
	.ttl{
		font-size:2.5rem;
		padding:30px 0 30px 0;
	}
}

/* sttl */
.sttl{
	align-items: center;
	display: flex;
	letter-spacing:.2rem;
	font-size: 2.3rem;
	text-align: center;
	max-width:1300px;
	margin:0 auto;
	padding:20px 10px;
	position:relative;
	letter-spacing:.2rem;
}
.sttl::before,
.sttl::after {
	border-top: #E9E9E9 solid 1px;
	content: "";
	display: inline;
	flex-grow: 1;
}
.sttl::before {
	margin-right: 100px;
}
.sttl::after {
	margin-left: 100px;
}
.sttl span{
	display:block;
	background: rgb(255,255,255); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(255,252,252,1) 50%, rgba(255,248,204,1) 50%, rgba(255,248,204,1) 80%, rgba(255,252,252,1) 80%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(255,252,252,1) 50%,rgba(255,248,204,1) 50%,rgba(255,248,204,1) 80%,rgba(255,252,252,1) 80%,rgba(255,255,255,1) 100%);
	background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(255,252,252,1) 50%,rgba(255,248,204,1) 50%,rgba(255,248,204,1) 80%,rgba(255,252,252,1) 80%,rgba(255,255,255,1) 100%); 
	position:relative;
}
.sttl span::before,
.sttl span::after {
	position:absolute;
}
.sttl span::before{
  content: "\e805";
	font-family:'kumamoto';
	left:-30px;
}
.sttl span::after{
  content: "\e806";
	font-family:'kumamoto';
	right:-30px;
}

/* ttl-page */
.ttl-page{
	font-size:2rem;
	background:#E9E9E9;
	padding:10px 20px 10px 40px;
	margin-bottom:2rem;
	position:relative;
}
.ttl-page:before{
	content:"";
	left:0 ;
	top:50%;
	margin-top:-10px;
	width:8px;
	height:20px;
	background:#404040;
	position:absolute;
}

/* ttl-map */
.ttl-map {
	align-items: center;
	display: flex;
	letter-spacing:.2rem;
	font-size: 2.3rem;
	text-align: center;
	max-width:1300px;
	margin:0 auto;
	padding:20px 10px;
	position:relative;
}
.ttl-map::before,
.ttl-map::after{
	border-top: #FFF solid 1px;
	content: "";
	display: inline;
	flex-grow: 1;
}
.ttl-map::before {
	margin-right: 100px;
}
.ttl-map::after {
	margin-left: 100px;
}


/* --------------------------------------------------
text style
-------------------------------------------------- */

/* attn */
.attn{
	color:#F00;
}

/* note */
.note{
	border:#bfbdae solid 1px;
	padding:1rem;
}

/* form-description */
.form-description {
	margin: 10px 0;
}
.form-description dt{
	font-weight: bold;
	font-size: 1.7rem;
}

/* privacy-txt */
.privacy-txt {
	text-align: center;
}

/* complete-message */
.complete-message {
	margin-bottom: 60px;
	padding: 70px 30px 50px;
	text-align: center;
	background: #EEE;
}
.complete-message h3 {
	font-size: 2.5rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 40px;
}
.complete-message p {
	padding-bottom: 50px;
}


/* --------------------------------------------------
block
-------------------------------------------------- */

.pht{
	text-align:center;
}
.pht img{
	max-width:100%;
}

/* block-center */
.block-center .pht{
	display: block;
	text-align:center;
}

/* block-right */
.block-right{
	position:relative;
	overflow:hidden;
	margin-bottom:20px;
}
.block-right .pht{
	max-width:50%;
	float:right;
	margin-left:20px;
}
.block-right .item{
	max-width:46%;
	float:left;
	box-sizing:border-box;
}
.block-right .pht img{
	max-width:100%;
}

/* block-left */
.block-left{
	position:relative;
	overflow:hidden;
	margin-bottom:20px;
}
.block-left .pht{
	max-width:50%;
	float:left;
	margin-right:20px;
}
.block-left .item{
	max-width:46%;
	float:right;
	box-sizing:border-box;
}
.block-left .pht img{
	max-width:100%;
}

/* block-2col */
.block-2col{
	position:relative;
	overflow:hidden;
	margin-bottom:20px;
	margin-right:-1%;
}
.block-2col .pht{
	max-width:49%;
	margin-right:1%;
	float:left;
}

/* block-3col */
.block-3col{
	position:relative;
	overflow:hidden;
	margin-bottom:20px;
	margin-right:-2%;
}
.block-3col .pht{
	max-width:32%;
	margin-right:1%;
	float:left;
}

/* col-left col-right */
.col-left{
	float: left;
	padding-right: 3%;
	width: 50%;
}
.col-right {
	float:right;
	padding-left: 3%;
	width: 50%;
}

/* --------------------------------------------------
list
-------------------------------------------------- */

.list-3col .pht,
.list-4col .pht,
.list-5col .pht{
	z-index:-1;
	position: relative;
	width: 100%;
	padding-top:75%;
  overflow: hidden;
	background:	#fff;
	overflow:hidden;
	background:#F5F5F5;
}

.list-3col .pht img,
.list-4col .pht img,
.list-5col .pht img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width:100%;
	width: 100%;
	height: auto;
}


/* list-3col */
.list-3col{
	overflow:hidden;
	position:relative;
	margin:0 -20px;
	z-index:1;
	display: flex;
	flex-wrap: wrap;
}
.list-3col li{
	width:33.33%;
	float:left;
	padding:20px;
	box-sizing:border-box;
}

/* list-4col */
.list-4col{
	overflow:hidden;
	position:relative;
	margin:0 -20px;
	z-index:1;
	display: flex;
	flex-wrap: wrap;
}
.list-4col li{
	width:25%;
	float:left;
	padding:20px;
	box-sizing:border-box;
}

/* list-5col */
.list-5col{
	overflow:hidden;
	position:relative;
	margin:0 -20px;
	z-index:1;
	display: flex;
	flex-wrap: wrap;
}
.list-5col li{
	width:20%;
	float:left;
	padding:20px;
	box-sizing:border-box;
}

/* --------------------------------------------------
spot-list
-------------------------------------------------- */

.spot-list{
	margin:20px 0;
}
.spot-list li{
	position: relative;
	display: flex;
	flex-flow: column;
}
.spot-list .icon-open,
.spot-list .icon-close{
	position:absolute;
	left:10px;
	top:0;
}
.spot-list .btn-icon-delete{
	position:absolute;
	right:10px;
	top:0;
	z-index:1;
}
.spot-list .spot-ttl{
	padding:.5rem 0;
}
.spot-list .spot-ttl a{
	text-decoration:underline;
	color:#333;
	font-weight:bold;
	display:block;
}
.spot-list .spot-date{
	display:inline-block;
	line-height:1.2;
	color:#999;
	font-size:1.3rem;
}
.spot-list .spot-icon{
	line-height:1.2;
	margin-bottom:.5rem;
}
.spot-list .spot-txt{
	margin-bottom:1rem;
	font-size:1.2rem;
	line-height:1.4;
}
.spot-list .btn-addfavorite a{
	min-width:0;
	font-size:1.4rem;
	padding:8px 10px;
}

/* --------------------------------------------------
photo-list
-------------------------------------------------- */

.photo-item a {
	display: block;
	position: relative;
}
.photo-item a img {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/* icon-rank */
.icon-rank1,
.icon-rank2,
.icon-rank3,
.icon-rank{
	position: absolute;
	top: 3%;
	left: 3%;
}
.photo-item .over-bg {
	background: rgba(0, 0, 0, 0.7);
	display: none;
	height: 100%;
	left: 0;
	overflow: hidden;
	position: absolute;
	top: 0;
	width: 100%;
}
.photo-item .over-txt {
	height: 100%;
	left: 0;
	padding: 0 10px;
	position: absolute;
	text-align: center;
	top: 45%;
	width: 95%;
}
.photo-item .over-txt span {
	color: #FFF;
	display: block;
	font-weight: bold;
	margin: 0 10px;
	line-height: 1;
}
.photo-item .over-txt span:after{
	content:"\f105";
	font-family:fontawesome;
	margin-left:1rem;
	font-size: 2rem;
}
.photo-item a:hover .over-bg {
	display: block;
}

/* --------------------------------------------------
photo-detail
-------------------------------------------------- */

/* icon-rank */
.icon-rank1,
.icon-rank2,
.icon-rank3,
.icon-rank{
	z-index:1;
}
.photo-detail figure {
	position: relative;
	background: #F3F3F3;
	text-align:center;
	margin-bottom: 10px;
}
.photo-detail figure img {
	max-width:100%;
}
.photo-detail .btn-detail a {
	text-align: right;
	display: block;
}
.photo-detail .btn-detail a:after{
	content:"\f105";
	font-family:fontawesome;
	margin-left:1rem;
}

/* --------------------------------------------------
post-content
-------------------------------------------------- */

/* ttl-post */
.ttl-post{
	line-height:1.4;
	font-size:2rem;
	margin-bottom:2rem;
	font-size:3rem;
	margin:1em 0;
}
.ttl-post span{
	margin-right:1rem;
}

@media screen and (max-width: 767px) {
	.ttl-post{
		font-size:2rem;
	}
}

/* eyecatch */
.eyecatch{
	position:relative;
}
.eyecatch .pht{
	z-index: -1;
	position: relative;
	width: 100%;
	padding-top:45%;
	overflow: hidden;
}
.eyecatch .pht img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: none;
	max-height:100%;
	max-width: 150%;
}

/* post-content */
.post-content{
	overflow:hidden;
	max-width:1200px;
	margin:0 auto;
}
.post-content .pht{
	display: table;
	width:100%;
	text-align:center;
}
.post-content .pht img{
	max-width:100%;
}
.post-content p{
	padding:1rem 0;
	max-width:800px;
	margin:0 auto;
}
.post-content .pht figcaption{
	display:block;
	font-size:1.1rem;
	padding:5px;
	line-height:1.2;
	color:#0b60a8;
}

/* post-date */
.post-date{
	display:block;
	text-align:right;
	padding:1rem;
}
.post-date:before{
	content:"\f040";
	font-family:fontawesome;
	margin-right:1rem;
}

/* icon-rank */
.spot-list .icon-rank1,
.spot-list .icon-rank2,
.spot-list .icon-rank3,
.spot-list .icon-rank{
	margin: 0 auto;
	margin-bottom:10px;
}

/* post-meta */
.post-meta{
	display:block;
	text-align:right;
	padding:1rem;
}
.post-meta .post-date{
	display: inline-block;
	text-align:right;
	padding:1rem;
}
.post-meta .category{
	display: inline-block;
	text-align:right;
	padding:1rem;
}


/* --------------------------------------------------
search-menu
-------------------------------------------------- */

.search-menu{
	background:#F5F5F5;
	margin-bottom:20px;
}
.search-menu h4{
	text-align:center;
	font-size:1.8rem;
	padding:10px;
	background:#E06F73;
	color:#FFF;
	cursor:pointer;
}
.search-menu h4:hover{
	opacity:0.9;
}
.search-menu h4:before{
	content:"\f0fe";
	font-family:fontawesome;
	margin-right:.5rem;
}
.search-menu h4.active:before{
	content:"\f146";
}

/* search-select */
.search-select{
	display:table-cell;
	padding:30px 10px 0 10px;
}
.search-select dl{
	width:100%;
	display:table;
	table-layout:fixed;
	margin-bottom:15px;
	padding-bottom:15px;
	border-bottom:#EBEBEB solid 1px;
}
.search-select dt{
	display:table-cell;
	width:15%;
	vertical-align:middle;
}
.search-select dd{
	display:table-cell;
	vertical-align:middle;
}
.search-select span{
	border:#DFDFDF solid 1px;
	background:#FFF;
	display:inline-block;
	line-height:1;
	padding:5px 15px;
	border-radius:20px;
	cursor:pointer;
	margin:.2rem;
	vertical-align:middle;
}
.search-select span.active{
	border:#666666 solid 1px;
	background:#666666;
	color:#FFF;
}
.search-select .keyword input{
	padding:1rem;
	width:80%;
	border-radius:5px;
	border:#CCC solid 1px;
}
.search-select .period input{
	padding:1rem;
	width: 30%;
	margin: 0 7px 0 0;
	border-radius:5px;
	border:#CCC solid 1px;
}
.search-select .period a {
	display: inline-block;
	vertical-align: middle;
}
.search-select .period a i {
	color: #e06f73;
	font-size: 2rem;
	margin-right: 5px;
}

.search-select dt:before{
	font-family:'kumamoto';
	font-size:3rem;
	line-height:3rem;
	vertical-align:middle;
	margin-right:2rem;
}
.search-select .keyword dt:before{
	content: "\e800";
}
.search-select .area dt:before{
	content: "\e801";
}
.search-select .category dt:before{
	content: "\e802";
}
.search-select .season dt:before{
	content: "\e803";
}
.search-select .genre dt:before{
	content: "\e804";
}
.search-select .period dt:before{
	content: "\e900";
}

/* --------------------------------------------------
search-calendar
-------------------------------------------------- */

.search-calendar{
	display:table-cell;
	padding:0 10px;
}

/* calendar-menu */
.calendar-menu{
	text-align:center;
	padding:5px 15px;
	background:#404040;
	color:#FFF;
	font-size:2rem;
	border-radius: 5px 5px 0 0 ;
}
.calendar-menu p{
	display: inline;
	font-size:1.7rem;
}
.calendar-menu .prev a{
	color:#FFF;
	float:left;
	display:inline-block;
	font-size:2rem;
}
.calendar-menu .next a{
	color:#FFF;
	float:right;
	display:inline-block;
	font-size:2rem;
}

/* table-calender */
.table-calender{
	min-width:280px;
	background:#FFF;
	table-layout:fixed;
	border-radius: 0 0 5px 5px;
	overflow:hidden;
}
.table-calender tr{
	border-bottom:#DFDFDF solid 1px;
	border-left:#FFF solid 8px;
	border-right:#FFF solid 8px;
}
.table-calender tr:last-of-type{
	border-bottom:none;
}
.table-calender th{
	text-align:center;
	padding:.5rem;
}
.table-calender td{
	text-align:center;
	padding:.5rem;
}
.table-calender .sun{
	color:#D33236;
}
.table-calender .sat{
	color:#1b63a0;
}
.table-calender a{
	text-decoration:underline;
}
.table-calender .sun a{
	color:#D33236;
}
.table-calender .sat a{
	color:#1b63a0;
}
.table-calender .current{
	background:#F5F5F5;
}

/* --------------------------------------------------
ac-menu
-------------------------------------------------- */

/*.ac-menu .ac-head{
	cursor:pointer;
}
.ac-menu .ac-box{
	display:none;
}
*/

/* --------------------------------------------------
info-area
-------------------------------------------------- */

.info-area{
	overflow:hidden;
	position:relative;
	padding-top:30px;
	padding-bottom:50px;
}
.info-area .spot-ttl {
	font-size:4rem;
	font-weight: bold;
	margin-bottom:20px;
	line-height:1.2;
}
.info-area .spot-ttl a{
	color:#333;
	text-decoration: underline;
}
.info-area .spot-icon {
	margin-bottom:20px;
}
.info-area .spot-icon span{
	font-size: 1.5rem;
	padding:5px 10px;
}
.info-area .spot-txt{
	padding-bottom:30px;
}
.info-area .spot-date{
	font-size: 2rem;
	font-weight:bold;
	margin-bottom:20px;
	display:block;
}
.info-area .pht{
	position: relative;
	width: 100%;
	overflow:hidden;
	z-index:-1;
	text-align:center;
	background:#F5F5F5;
}
.info-area .pht:before{
	content:"";
	display: block;
	padding-top: 75%;
}
.info-area .pht .frame{
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}
.info-area .pht img{
	max-width:100%;
	min-height:100%;
}
.info-area .icon-rank1{
	margin:20px auto;
}

/* slider-pro */
#js-spot-slider.slider-pro.sp-horizontal{
	margin-bottom:30px;
}
.col-2 #js-spot-slider.slider-pro.sp-horizontal{
	margin-bottom:0;
}

/* --------------------------------------------------
data-area
-------------------------------------------------- */

.data-area{
	padding-bottom:50px;
}
.data-area .table-data {
	border-collapse: collapse;
}
.data-area .table-data tr {
	border-bottom: 5px solid #FFF;
}
.data-area .table-data th {
	font-weight: bold;
	padding: 14px 10px;
	white-space: nowrap;
	background:#F6F6F6;
	width:20%;
	text-align:center;
}
.data-area .table-data td {
	padding: 14px 10px;
	word-break: break-all;
}
.data-area .list-pict li{
	display: inline-block;
	margin-bottom:3px;
}

/* --------------------------------------------------
 map-detail
-------------------------------------------------- */

.map-detail{
	background: #FAE7E7 none repeat scroll 0 0;
	margin-bottom: 20px;
	padding-bottom:50px;
}

/* map-area-table */
.map-area-table {
	border: 1px solid #dcdbd7;
	display: table;
	width:100%;
	margin:2% 0;
}

/* map-area-list */
.map-area-list {
	background: #fff none repeat scroll 0 0;
	height: 400px;
	overflow-y: scroll;
	width:100%;
	min-width:300px;
}
.map-area-list ul {
	width: 100%;
	padding:15px;
	box-sizing:border-box;
}
.map-area-list li {
	border-bottom: 1px dashed #CDCDCD;
	display:table;
	table-layout: fixed;
	padding: 10px 0;
	width:100%;
}
.map-area-list li .pht{
	width:50%;
	float:left;
	padding-right:10px;
	box-sizing:border-box;
}
.map-area-list li .frame {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 69.7%;
	overflow: hidden;
	vertical-align:top;
}
.map-area-list li .frame img {
	position: absolute;
	top: -200%;
	bottom: -200%;
	left: -200%;
	right: -200%;
	margin: auto;
	width: auto;
	height: auto;
	max-height: 100%;
	max-width: 100%;
}
.map-area-list li .spot-txt{
	width:50%;
	float:right;
	vertical-align:top;
	font-size:1.2rem;
}
.map-area-list li p{
	display:table-cell;
	vertical-align: middle;
}
.map-area-list li p:nth-of-type(2){
	width:100%;
	padding-left:10px;
}
.map-area-list li p a{
	text-align:left;
}
.map-detail .map-area-list li p:nth-of-type(2){
	padding-left:45px;
}
/* --------------------------------------------------
 map-list
-------------------------------------------------- */

/* map-list */
.map-list{
	margin-top:-20px;
	padding-bottom:20px;
}
.map-list .map-area-list{
	background:#F5F3F1;
	height:630px;
}
.map-list .map-area-list li{
	background:#FFF;
	border:2px solid #BFBDAE;
	margin-bottom:10px;
	padding:10px;
	box-sizing:border-box;
}
.map-list .map-area-inner:nth-of-type(2){
	margin-top:10px;
}
.map-list .map-area-list .paging{
	background:#F5F3F1;
	padding: 20px 10px 0 10px;
}
.map-list .map-area-list .paging a,
.map-list .map-area-list .paging .current{
	padding: 8px;
}
.map-list .filter-content{
	border:2px solid #BFBDAE;
	max-width:1300px;
	margin:20px auto 0 auto;
}

/* --------------------------------------------------
map
-------------------------------------------------- */

/* map-area-google */
.map-area-google {
	display: table-cell;
	height: 400px;
	vertical-align: top;
	width: 80%;
}
#map {
	height: 400px;
	overflow: hidden;
	position: relative;
	width: 100%;
}
.map-list #map{
	height:630px;
}

/* info-window */
.info-window {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	width: 160px;
	top: 0;
	left: 0;
}
.info-window .icon-number{
	float: left;
}
.info-window .img-thumb {
	clear: both;
	text-align: center;
	margin: 10px 0;
}
.info-window .img-thumb img {
	max-width: 120px;
	max-height: 100px;
}
.info-window .spot-ttl {
	vertical-align: middle;
	padding: 10px 0;
	line-height: 1.2;
	font-size: 1.4rem;
	margin-left: 40px;
	font-weight: bold;
}
.info-window .spot-add {
	margin-top: 5px;
	font-size: 1.2rem;
}
.info-window .btn-addfavorite a{
	font-size: 1.2rem;
	min-width: 0;
	padding: 5px 0px;
}


/* --------------------------------------------------
module
-------------------------------------------------- */

/* bnr-area */
.bnr-area{
	text-align:center;
	margin-bottom:30px;
}
.bnr-area img{
	max-width:100%;
}

/* conditions */
.conditions{
	background:#E9E9E9;
	position:relative;
	overflow: hidden;
	padding:10px;
	margin-bottom:20px;
	margin-top:1em;
}
.conditions .btn-delete{
	float:right;
}
.conditions dl{
	width:80%;
	float:left;
}
.conditions dt{
	display: inline;
	vertical-align:middle;
	margin-right:1rem;
}
.conditions dd{
	display: inline-block;
}
.conditions dd a{
	border:#D0D0D0 solid 1px;
	background:#D0D0D0;
	display:inline-block;
	line-height:1;
	padding:5px 15px;
	border-radius:20px;
	cursor:pointer;
	margin:.2rem;
	vertical-align:middle;
	color:#272727;
}
.conditions dd a:before{
	content:"\f00d";
	font-family:fontawesome;
	margin-right:.5rem;
}
.conditions dd span{
	border:#D0D0D0 solid 1px;
	background:#D0D0D0;
	display:inline-block;
	line-height:1;
	padding:5px 15px;
	border-radius:20px;
	cursor:pointer;
	margin:.2rem;
	vertical-align:middle;
	color:#272727;
}

/* tab-btn */
.tab-btn{
	position:relative;
	overflow:hidden;
	border-top:#98957C solid 2px;
	border-bottom:#98957C solid 2px;
	margin-top:-20px;
	margin-bottom:20px;
}
.tab-btn li{
	text-align:center;
	float:left;
	width:50%;
}
.tab-btn li a{
	display:block;
	padding:15px 0;
	font-size:2.2rem;
	background:#FFF;
	color:#98957C;
	border-right:#98957C solid 2px;
}
.tab-btn li a:hover{
	color:#fff;
	background:#98957C;
	opacity:1;
}
.tab-btn li:last-of-type a{
	border-right:none;
}
.tab-btn .selected a{
	background:#98957C;
	color:#FFF;
}
.tab-btn .list:before{
	content:"\f00a";
	font-family:fontawesome;
	margin-right:1rem;
}
.tab-btn .map:before{
	content:"\f279";
	font-family:fontawesome;
	margin-right:1rem;
}
.tab-btn .addplan:before{
	content:"\f067";
	font-family:fontawesome;
	margin-right:1rem;
}
.tab-btn .listplan:before{
	content:"\f0ca";
	font-family:fontawesome;
	margin-right:1rem;
}

/* tab-bcontent */
.tab-bcontent{
	background:#F5F5F5;
	position: relative;
	margin-bottom:-20px;
}

/* paging */
.paging{
	padding:20px 0;
	text-align:right;
	clear:both;
	position:relative;
	overflow: hidden;
}
.paging .paging-sort{
	float:left;
	margin-right:1rem;
}
.paging .paging-sort select{
	padding:5px 10px;
	line-height:1;
	vertical-align:middle;
}
.paging .paging-result{
	float:left;
	display:inline-block;
	line-height:2;
	vertical-align:middle;
}
.paging span{
	display:inline-block;
	vertical-align:middle;
	margin-bottom:.5rem;
}
.paging a{
	line-height:1;
	letter-spacing:normal;
	display:inline-block;
	padding:1rem 1.2rem;
	text-decoration:none;
	color:#272727;
	border:#d2d2d2 solid 1px;
	background:#FFF;
}
.paging a:hover{
	opacity:1;
	color:#FFF;
	background:#404040;
	border:#37211F solid 1px;
}
.paging .current{
	line-height:1;
	letter-spacing:normal;
	display:inline-block;
	padding:1rem 1.2rem;
	text-decoration:none;
	color:#FFF;
	border:#404040 solid 1px;
	background:#404040;
}

/* breadCrumbs */
.breadCrumbs{
	display:block;
	width:100%;
	font-size:1.4rem;
	text-decoration:none;
	margin:.5em 0;
}
.breadCrumbs ul{
	max-width:1300px;
	margin:0 auto;
	padding:0 10px;
}
.breadCrumbs li{
	display:inline-block;
	margin-right:1rem;
}
.breadCrumbs li::after{
	content:">";
	margin-left:1.5rem;
}
.breadCrumbs li:last-of-type::after{
	content:none;
	margin-left:none;
}


/* page-menu */
.page-menu{
	max-width:1300px;
	margin:0 auto;
	text-align:right;
	padding:.5em 10px;
}
.page-menu p{
	display:inline-block;
	margin-left:5px;
	margin-bottom:5px;
}

/* link-list */
.link-list{
	border-top:#eef0f1 solid 1px;
	border-bottom:#eef0f1 solid 1px;
	padding:1rem;
}
.link-list li{
	padding:1rem 0;
	line-height:1.2;
}
.link-list li:before{
	content:"\f0c1";
	font-family:fontawesome;
	margin-right:1rem;
	color:#bea770;
}

/* related-file related-link */
.related-file,
.related-link{
	line-height:1.2;
	border-top:#eef0f1 solid 1px;
	border-bottom:#eef0f1 solid 1px;
	margin-bottom:-1px;
}
.related-file:before{
	content:"\f019";
	font-family:fontawesome;
	margin-right:1rem;
	color:#096;
}
.related-link:before{
	content:"\f0c1";
	font-family:fontawesome;
	margin-right:1rem;
	color:#bea770;
}

/* filter-content */
.filter-content {
	background: #fff none repeat scroll 0 0;
	border-right: 1px solid #dcdbd7;
	border-left: 1px solid #dcdbd7;
	border-bottom: 1px solid #dcdbd7;
	display:table;
	width:100%
}
.filter-content h5{
	background-color: #fff;
	border-right: 1px solid #dcdbd7;
	font-size: 1.4rem;
	width: 100px;
	display:table-cell;
	vertical-align:middle;
	text-align:center;
	padding:10px;
}
.filter-content .filter-list {
	font-size: 1.4rem;
	padding: 10px 10px 5px;
	display:table-cell;
	padding:15px 20px 20px 20px;
}
.filter-content .filter-list li{
	display:inline-block;
	padding-top:5px;
	padding-right:5px;
}
.filter-content .filter-list li.pin-etc{
	display:block
}
.filter-content .filter-list li .img-pin{
	margin-right:5px;
	vertical-align:middle;
}
.filter-list .search-select{
	padding:0;
}


/* --------------------------------------------------
btn
-------------------------------------------------- */

.btn-area{
	display:table;
	table-layout:fixed;
	width:100%;
	text-align: center;
	padding:20px 0;
}
.btn-area-1col{
	padding:20px 0;
}
.btn-area-sp{
	display:none;
	text-align: center;
	padding:20px 0;
}

.btn-print a,
.btn-ranking a,
.btn-myplan a,
.btn-favorite a,
.btn-publish a{
	color:#000;
	text-decoration:none;
	display:inline-block;
	vertical-align: middle;
	padding:5px 20px;
	border:#000 solid 2px;
}
.btn-print a:hover,
.btn-ranking a:hover,
.btn-myplan a:hover,
.btn-favorite a:hover,
.btn-publish a:hover{
	background:#000;
	color:#FFF;
}


/* btn-print */
.btn-print a:before{
	content:"\f02f";
	font-family:fontawesome;
	margin-right:.5rem;
}
/* btn-ranking */
.btn-ranking a:before{
	content:"\f006";
	font-family:fontawesome;
	margin-right:.5rem;
}
/* btn-myplan */
.btn-myplan a:before{
	content:"\f08a";
	font-family:fontawesome;
	margin-right:.5rem;
}
/* btn-favorite */
.btn-favorite a:before{
	content:"\f097";
	font-family:fontawesome;
	margin-right:.5rem;
}
/* btn-publish */
.btn-publish a:before{
	content:"\f298";
	font-family:fontawesome;
	margin-right:.5rem;
}

/* btn-clear btn-back */
.btn-area .btn-clear,
.btn-area .btn-back{
	display:table-cell;
	width:50%;
	text-align:right;
	float:left;
}
.btn-clear,
.btn-back{
	text-align:center;
	padding-bottom:10px;
}
.btn-clear a,
.btn-back a{
	margin: 0 1rem;
	display: inline-block;
	text-align:center;
	min-width:230px;
	font-size:2rem;
	color:#FFF;
	background:#808080;
	text-decoration:none;
	vertical-align: middle;
	padding:8px 30px;
	border-radius:5px;
	box-shadow: 0 5px #666;
}
.btn-clear a:before{
	content:"\f056";
	font-family:fontawesome;
	margin-right:1rem;
	margin-left:-.5rem;
}
.btn-back a:before{
	content:"\f053";
	font-family:fontawesome;
	margin-right:1rem;
	margin-left:-.5rem;
}

/* btn-search btn-enter  */
.btn-area .btn-search,
.btn-area .btn-enter{
	display:table-cell;
	width:50%;
	text-align:left;
	float:right;
}
.btn-search,
.btn-enter{
	text-align:center;
	padding-bottom:10px;
}
.btn-search a,
.btn-enter a{
	margin: 0 1rem;
	display: inline-block;
	text-align:center;
	min-width:230px;
	font-size:2rem;
	color:#FFF;
	background:#518CBC;
	text-decoration:none;
	vertical-align: middle;
	padding:8px 30px;
	border-radius:5px;
	box-shadow: 0 5px #427CAC;
}
.btn-search a:before{
	content:"\f002";
	font-family:fontawesome;
	margin-right:1rem;
	margin-left:-.5rem;
}

/* btn-calender btn-download */
.btn-calender,
.btn-download{
	display:inline-block;
}
.btn-calender a,
.btn-download a{
	min-width:200px;
	text-align:center;
	display:inline-block;
	font-size:1.5rem;
	display:block;
	color:#FFF;
	background:#518CBC;
	text-decoration:none;
	vertical-align: middle;
	padding:8px 30px;
	border-radius:5px;
	box-shadow: 0 5px #427CAC;
}
.btn-calender a:before{
	content:"\f073";
	font-family:fontawesome;
	margin-right:.5rem;
}
.btn-download a:before{
	content:"\f019";
	font-family:fontawesome;
	margin-right:.5rem;
}

/* btn-clear btn-back */
.btn-area .btn-next{
	display:table-cell;
	width:50%;
	text-align:right;
	float:left;
}
.btn-next{
	text-align:center;
	padding-bottom:10px;
}
.btn-next a{
	margin: 0 1rem;
	display: inline-block;
	text-align:center;
	min-width:230px;
	font-size:2rem;
	color:#FFF;
	background:#518CBC;
	text-decoration:none;
	vertical-align: middle;
	padding:8px 30px;
	border-radius:5px;
	box-shadow: 0 5px #427CAC;
}
.btn-next a:after{
	content:"\f054";
	font-family:fontawesome;
	padding-left:2rem;
	margin-left:-.5rem;
}

/* btn-addfavorite */
.btn-addfavorite{
	display:block;
	margin-bottom:10px;
	display: flex;
	flex-flow: column;
	justify-content: flex-end;
	height:100%;
}
.btn-addfavorite a:before{
	content:"\f004";
	font-family:fontawesome;
	margin-right:.5rem;
}

a.favorite-add-btn{
	min-width:200px;
	text-align:center;
	display:inline-block;
	font-size:2rem;
	display:block;
	color:#FFF;
	background:#E48F92;
	text-decoration:none;
	vertical-align: middle;
	padding:8px 30px;
	border-radius:5px;
	box-shadow: 0 5px #E07C7E;
}

a.favorite-remove-btn{
	min-width:200px;
	text-align:center;
	display:inline-block;
	font-size:2rem;
	display:block;
	color:#777;
	background:#ccc;
	text-decoration:none;
	vertical-align: middle;
	padding:8px 30px;
	border-radius:5px;
	box-shadow: 0 5px #b7b7b7;
}

/* btn-openmap */
.btn-openmap{
	display:block;
	margin-bottom:10px;
}
.btn-openmap a{
	min-width:200px;
	text-align:center;
	display:inline-block;
	display:block;
	color:#fff;
	background:#808080;
	text-decoration:none;
	vertical-align: middle;
	padding:8px 30px;
	border-radius:5px;
	box-shadow: 0 5px #666;
}
.btn-openmap a:before{
	content:"\f041";
	font-family:fontawesome;
	margin-right:.5rem;
}

/* btn-postback */
.btn-postback{
	margin:50px 0;
	text-align:center;
}
.btn-postback a{
	color:#000;
	text-decoration:none;
	display:inline-block;
	vertical-align: middle;
	padding:5px 30px;
	border:#000 solid 2px;
}
.btn-postback a:before{
	content:"\f0d9";
	font-family:fontawesome;
	margin-right:2rem;
}
.btn-postback a:hover{
	background:#000;
	color:#FFF;
}

/* btn-postmore */
.btn-postmore{
	margin:1em 0;
	text-align:center;
}
.btn-postmore a{
	color:#fff;
	text-decoration:none;
	display:inline-block;
	vertical-align: middle;
	padding:.5em 3em;
	min-width:200px;
	background:#E60012;
}
.btn-postmore a:hover{
	background:#000;
	color:#FFF;
}

/* btn-viewmore */
.btn-viewmore{
	margin:1em 0;
	text-align:center;
}
.btn-viewmore a{
	color:#fff;
	text-decoration:none;
	display:inline-block;
	vertical-align: middle;
	padding:.5em 3em;
	min-width:200px;
	background:#E60012;
}
.btn-viewmore a:hover{
	background:#000;
	color:#FFF;
}

/* btn-delete */
.btn-delete a{
	display:inline-block;
	line-height:1;
	padding:5px 15px;
	border-radius:20px;
	cursor:pointer;
	margin:.2rem;
	vertical-align:middle;
	border:#404040 solid 1px;
	background:#404040;
	color:#FFF;
}
.btn-delete a:before{
	content:"\f00d";
	font-family:fontawesome;
	margin-right:1rem;
}

/* btn-delete */
.btn-icon-delete a{
	display:block;
	width:40px;
	color:#FFF;
	height:40px;
	background:#D9D9D9;
	border-radius:20px;
	line-height:35px;
	text-align:center;
	font-size:3rem;
	box-shadow: 0 5px #B7B7B7;
}

/* btn-delete */
.btn-close{
	text-align:center;
}
.btn-close a{
	display:block;
	text-align:center;
	line-height:1;
	padding:8px 30px;
	cursor:pointer;
	vertical-align:middle;
	background:#666666;
	color:#FFF;
}
.btn-close a:before{
	content:"\f00d";
	font-family:fontawesome;
	margin-right:1rem;
}

/* btn-keysearch */
.btn-keysearch{
	display: inline-block;
	margin-top: 5px;
	color: #fff;
}
.btn-keysearch a{
	vertical-align: middle;
	background-color: #E06F73;
	border-radius: 3px;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	margin: 0 3px;
	line-height:1;
	padding: 15px 20px;
	text-decoration: none;
}
.btn-keysearch a::before {
	content: "";
	font-family: fontawesome;
	margin-left: -0.5rem;
	margin-right: .5rem;
}
 
/* form-btn */
.form-btn,
.form-btn-delete {
	display: inline-block;
	margin-top: 5px;
	color: #fff;
	vertical-align: middle;
}
.form-btn a:link {
	background-color: #E06F73;
}
.form-btn-delete a:link {
	background-color: #B4B4B4;
}
.form-btn a:link, 
.form-btn-delete a:link {
	border-radius: 3px;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	margin: 0 3px 3px;
	padding: 2px 8px;
	text-decoration: none;
}
.form-btn a:visited, 
.form-btn a:hover,
.form-btn-delete a:visited, 
.form-btn-delete a:hover {
	color: #fff;
}

/* --------------------------------------------------
icon
-------------------------------------------------- */

/* icon-new */
.icon-new{
	font-size:1.2rem;
	line-height:1;
	padding:2px 5px;
	display:inline-block;
	background:#c80000;
	color:#FFF;
	font-weight:bold;
	margin-right:5px;
	vertical-align:middle;
}

/* icon-area */
.icon-area{
	font-size:1.2rem;
	line-height:1;
	padding:2px 5px;
	display:inline-block;
	color:#FFF;
	margin:0 3px 3px 0 ;
	vertical-align:middle;
	background:#666;
}

/* icon-gen */
.icon-gen{
	font-size:1.2rem;
	line-height:1;
	padding:2px 5px;
	display:inline-block;
	color:#FFF;
	margin:0 3px 3px 0 ;
	vertical-align:middle;
}

/* icon-cat */
.icon-cat,
.icon-cat01,
.icon-cat02,
.icon-cat03,
.icon-cat04,
.icon-cat05,
.icon-cat06,
.icon-cat07,
.icon-cat08,
.icon-cat09,
.icon-cat10{
	font-size:1.2rem;
	line-height:1;
	padding:2px 5px;
	display:inline-block;
	color:#FFF;
	font-weight:bold;
	margin:0 3px 0 0 ;
	vertical-align:middle;
}
.icon-cat01{
	background:#549BAF;
}
.icon-cat02{
	background:#D1B15D;
}
.icon-cat03{
	background:#ABBD64;
}
.icon-cat04{
	background:#C07F75;
}
.icon-cat05{
	background:#B55F8F;
}
.icon-cat06{
	background:#8186AB;
}
.icon-cat07{
	background:#6FB696;
}
.icon-cat08{
	background:#72AFBF;
}
.icon-cat09{
	background:#5595B4;
}
.icon-cat10{
	background:#CC9966;
}

/* icon-open */
.icon-open,
.icon-close{
	display:block;
	color:#FFF;
	width:50px;
	height:50px;
	line-height:50px;
	text-align:center;
	border-radius:25px;
	z-index:2;
}
.icon-open{
	background:#E06F73;
}
.icon-close{
	background:#96B3E9;
}

/* icon-rank */
.icon-rank1,
.icon-rank2,
.icon-rank3,
.icon-rank{
	display:block;
	width:50px;
	height:50px;
	line-height:50px;
	text-align:center;
	vertical-align:middle;
	font-size:2.5rem;
	color:#FFF;
	font-weight:bold;
}
.icon-rank1 {
	background:#BFA026;
}
.icon-rank2 {
	background:#5B5E6A;
}
.icon-rank3 {
	background:#795246;
}
.icon-rank {
	background:rgba(0,0,0,.7);
}

/* icon-number */
.icon-number{
	border-radius:50%;
	box-sizing: content-box;
	width:30px;
	line-height:30px;
	max-height:30px;
	text-align:center;
	line-height:30px;
	display:block;
	font-size:1.8rem;
	font-weight:bold;
}


/* --------------------------------------------------
animation for PC
-------------------------------------------------- */

@media screen and (min-width: 1080px) {
	
	/* --------------------------------------------------
	js-style
	-------------------------------------------------- */
	
	.fx-col-in li{
		opacity:0;
	}
	
	.fx-in,
	.fx-in02,
	.fx-in03,
	.fx-in04,
	.fx-in05,
	.fx-down,
	.fx-up,
	.fx-left,
	.fx-right{
		visibility:hidden;
	}

}

/* --------------------------------------------------
animate
-------------------------------------------------- */


.fadeIn {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:2s;
 -ms-animation-duration:2s;
 animation-duration:2s;
 -webkit-animation-name: fadeIn;
 animation-name: fadeIn;
 visibility: visible !important;
}
@-webkit-keyframes fadeIn {
 0% { opacity: 0;}
 100% { opacity: 1;}
}
@keyframes fadeIn {
 0% { opacity: 0;}
 100% { opacity: 1;}
}

.fadeIn02 {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:2s;
 -ms-animation-duration:2s;
 animation-duration:2s;
 -webkit-animation-name: fadeIn02;
 animation-name: fadeIn02;
 visibility: visible !important;
}
@-webkit-keyframes fadeIn02 {
 0% {
	 opacity: 0;
}
 50% {
	 opacity: 1;
	 transform: translate(0px, 0px) rotateZ(0deg);
}
 70% {
	 opacity: 1;
	 transform: translate(0px, 0px) rotateZ(100deg);
}
 100% {
	 opacity: 1;
	 transform: translate(0px, 0px) rotateZ(0deg);
} 
}
@keyframes fadeIn02 {
 0% {
	 opacity: 0;
}
 50% {
	 opacity: 1;
	 transform: translate(0px, 0px) rotateZ(0deg);
}
 65% {
	 opacity: 1;
	 transform: translate(0px, 0px) rotateZ(100deg);
}
 80% {
	 opacity: 1;
	 transform: translate(0px, 0px) rotateZ(-100deg);
}
 100% {
	 opacity: 1;
	 transform: translate(0px, 0px) rotateZ(0deg);
} 
}


.fadeInDown {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeInDown;
 animation-name: fadeInDown;
 visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(-20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(-20px); -ms-transform: translateY(-20px); transform: translateY(-20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}


.fadeInUp {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeInUp;
 animation-name: fadeInUp;
 visibility: visible !important;
}
@-webkit-keyframes fadeInUp {
 0% { opacity: 0; -webkit-transform: translateY(20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInUp {
 0% { opacity: 0; -webkit-transform: translateY(20px); -ms-transform: translateY(20px); transform: translateY(20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}


.fadeInLeft {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeInLeft;
 animation-name: fadeInLeft;
 visibility: visible !important;
}
@-webkit-keyframes fadeInLeft {
 0% { opacity: 0; -webkit-transform: translateX(50px); }
 100% { opacity: 1; -webkit-transform: translateX(0); }
}
@keyframes fadeInLeft {
 0% { opacity: 0; -webkit-transform: translateX(50px); -ms-transform: translateX(50px); transform: translateX(50px); }
 100% { opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }
}


.fadeInRight {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeInRight;
 animation-name: fadeInRight;
 visibility: visible !important;
}
@-webkit-keyframes fadeInRight {
 0% { opacity: 0; -webkit-transform: translateX(-20px); }
 100% { opacity: 1; -webkit-transform: translateX(0); }
}
@keyframes fadeInRight {
 0% { opacity: 0; -webkit-transform: translateX(-20px); -ms-transform: translateX(-20px); transform: translateX(-20px); }
 100% { opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }
}

.fx-swing {
		-moz-animation: swing linear 2s infinite;
		-moz-transform-origin: center -5px 0;
		-webkit-animation: swing linear 2s infinite;
		-webkit-transform-origin: center -5px 0;
		-ms-animation: swing linear 2s infinite;
		-ms-transform-origin: center -5px 0;
		-o-animation: swing linear 2s infinite;
		-o-transform-origin:center -5px 0;
		animation: swing linear 2s infinite;
		transform-origin: center 70% 0;
}

@-moz-keyframes swing { 
		0% { -moz-transform: rotate(0deg) }
		25% { -moz-transform: rotate(2deg); }
		50% { -moz-transform: rotate(0deg); }
		75% { -moz-transform: rotate(-2deg); }
		100% { -moz-transform: rotate(0deg); }
}
@-webkit-keyframes swing { 
		0% { -webkit-transform: rotate(0deg); }
		25% { -webkit-transform: rotate(2deg); }
		50% { -webkit-transform: rotate(0deg); }
		75% { -webkit-transform: rotate(-2deg); }
		100% { -webkit-transform: rotate(0deg); }
}    
@-o-keyframes swing { 
		0% { -o-transform: rotate(0deg); }
		25% { -o-transform: rotate(2deg); }
		50% { -o-transform: rotate(0deg); }
		75% { -o-transform: rotate(-2deg); }
		100% { -o-transform: rotate(0deg); }
}
@-ms-keyframes swing { 
		0% { -ms-transform: rotate(0deg); }
		25% { -ms-transform: rotate(2deg); }
		50% { -ms-transform: rotate(0deg); }
		75% { -ms-transform: rotate(-2deg); }
		100% { -ms-transform: rotate(0deg); }
}
@keyframes swing { 
		0% { transform: rotate(0deg); }
		25% { transform: rotate(2deg); }
		50% { transform: rotate(0deg); }
		75% { transform: rotate(-2deg); }
		100% { transform: rotate(0deg); }
}




@media screen and (max-width: 1080px) {

	body{
		font-size: 1.3rem;
	}
	/* --------------------------------------------------
	main
	-------------------------------------------------- */
	#main {
		width: auto;
		float:none;
		padding-left:0;
	}

	/* --------------------------------------------------
	list
	-------------------------------------------------- */


	
	/* list-3col */
	.list-3col{
		margin:0 ;
	}
	.list-3col li{
		padding:10px;
	}
	/* list-4col */
	.list-4col{
		margin:0 ;
	}
	.list-4col li{
		padding:10px;
	}
	/* list-5col */
	.list-5col{
		margin:0 ;
	}
	.list-5col li{
		padding:10px;
	}
	

	/* --------------------------------------------------
	spot-list
	-------------------------------------------------- */
	
	.spot-list .icon-open,
	.spot-list .icon-close{
		position:absolute;
		left:0;
		top:0;
	}
	.spot-list .btn-icon-delete{
		position:absolute;
		right:0;
		top:0;
	}

	/* --------------------------------------------------
	side
	-------------------------------------------------- */
	#side {
		width: auto;
		float:none;
	}
	.side-list h3{
		padding:10px;
	}
	.side-list li a{
		padding:10px;
	}

	/* --------------------------------------------------
	search-menu
	-------------------------------------------------- */
	
	/* search-select */
	.search-select dt{
		width:25%;
	}

	/* --------------------------------------------------
	map
	-------------------------------------------------- */
	
	.map-list .map-area-google{
		width: 70%;
	}

	/* map-iframe */
	.map-iframe {
		position: relative;
		padding-bottom: 75%;
		height: 0;
		overflow: hidden;
		margin-bottom:20px;
	}
	.map-iframe iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100% !important;
		height: 100% !important;
	}

	/* --------------------------------------------------
	module
	-------------------------------------------------- */
	/* bnr-area */
	.bnr-area{
		margin:0 10px 20px 10px;
	}
	/* page-menu */
	.page-menu .social{
		display:block;
		margin-bottom:1rem;
	}
	.page-menu .btn-print{
		display:none;
	}


	/* --------------------------------------------------
	btn
	-------------------------------------------------- */
	
	/* btn-postmore */
	.btn-postmore{
		margin:20px 0;
	}
	

}

@media screen and (max-width: 767px) {
	
		body{
			font-size: 1.1rem;
		}
		
		/* --------------------------------------------------
		form
		-------------------------------------------------- */
			
		textarea {
			font-size: 1.3rem;
		}
		 input::-webkit-input-placeholder {
		 font-size: 1.1rem;
		}
		 input:-moz-placeholder {
		 font-size: 1.1rem;
		}
		input[type="text"],
		input[type="tel"],
		input[type="email"] {
			vertical-align: middle;
			border: none;
			border: 1px solid #d1d1d1;
			padding: 5px;
			font-size: 1.1rem;
			line-height: 1.2;
		}
		.text-ss {
			width: 30%;
			margin: 5px 3px 5px 0;
		}
		input.text-s {
			width: 100%;
			margin: 5px 0;
			box-sizing: border-box;
		}
		.label-name {
			margin: 0 5px 0 0;
		}
		.text-s-sp-harf {
			width: 80%;
			margin: 10px 7px 10px 0;
		}
		input.text-m {
			width: 100%;
			margin: 5px 7px 5px 0;
		}
		input.text-l {
			width: 100%;
		}
	
		/* table-form */
		.table-form {
			margin-bottom: 15px;
		}
		.table-form th {
			width: 100%;
			display: block;
			border-bottom: none;
			padding: 5px 10px;
		}
		.table-form td {
			width: 100%;
			display: block;
			border-bottom: none;
			padding: 5px 10px;
		}
		.table-form th br {
			display: none;
		}
		
		/* form-caption */
		.form-caption {
			font-size: 1.1rem;
		}
	
		/* sp-block */
		.form-group .sp-block{
			display: block;
		}
	
		/* form-list */
		.form-list li {
			display: block;
			padding: 5px 0;
			margin: 0;
		}
	
		/* --------------------------------------------------
		footer
		-------------------------------------------------- */
		
		.f-logo{
			font-size:2rem;
		}
		
		/* f-linkt */
		.f-link a{
			padding:1rem;
			font-size:1.2rem;
		}
	
		/* --------------------------------------------------
		title
		-------------------------------------------------- */
		/* sttl */
		.sttl{
			display: block;
			font-size: 1.8rem;
			text-align: center;
			padding:20px 10px;
		}
		.sttl::before,
		.sttl::after {
			content: none;
		}
		.sttl span{
			display: inline-block;
		}
		
		/* ttl-page */
		.ttl-page{
			font-size:1.6rem;
			padding:10px 20px 10px 20px;
		}
	
		/* ttl-map */
		.ttl-map {
			letter-spacing:.2rem;
			font-size: 1.4rem;
			font-weight:bold;
			display:block;
		}
		.ttl-map::before,
		.ttl-map::after{
			content: none;
		}

		/* --------------------------------------------------
		text style
		-------------------------------------------------- */

		/* form-description */
		.form-description dt{
			font-size: 1.2rem;
		}
	
		/* complete-message */
		.complete-message {
			margin-bottom: 20px;
			padding: 20px 20px 0;
		}
		.complete-message h3 {
			font-size: 1.3rem;
			margin-bottom: 20px;
		}
		.complete-message p {
			padding-bottom: 20px;
		}


		/* --------------------------------------------------
		block
		-------------------------------------------------- */
	
		/* col-left col-right */
		.col-left {
			float: none;
			padding: 0;
			width: auto;
		}
		.col-right {
			float: none;
			padding: 0;
			width: auto;
		}

		/* block-right */
		.block-right .pht{
			max-width:100%;
			float:none;
			margin-left:0;
			margin-bottom:10px;
		}
		
		/* block-left */
		.block-left .pht{
			max-width:100%;
			float:none;
			margin-right:0;
			margin-bottom:10px;
		}
		/* block-item */
		.block-left .item{
			max-width:100%;
			float:none;
			margin-right:0;
			margin-bottom:10px;
		}
	
		/* --------------------------------------------------
		list
		-------------------------------------------------- */
	
		
		/* list-3col */
		.list-3col li{
			width:100%;
			padding:5px;
		}
		/* list-4col */
		.list-4col li{
			width:50%;
			padding:5px;
		}
		/* list-5col */
		.list-5col li{
			width:50%;
			padding:5px;
		}
	
		/* --------------------------------------------------
		spot-list
		-------------------------------------------------- */
		
		.spot-list .spot-date{
			font-size:1rem;
		}
		.spot-list .spot-txt{
			font-size:1rem;
		}
		.spot-list .btn-addfavorite a{
			font-size:1.2rem;
		}
		
		/* --------------------------------------------------
		photo-list
		-------------------------------------------------- */
		.photo-item .over-txt {
			display: none;
		}

		/* --------------------------------------------------
		btn
		-------------------------------------------------- */
		
		.btn-area-sp{
			display: block;
		}
		.btn-area {
			display:block;
			width:auto;
		}
		.btn-area a,
		.btn-area-sp a{
			font-size:1.5rem;
		}
	
		/* btn-search btn-enter  */
		.btn-area .btn-search,
		.btn-area .btn-enter,
		.btn-area .btn-clear,
		.btn-area .btn-back{
			display:block;
			width:auto;
			text-align: center;
			float:none;
		}
	
		.btn-search a,
		.btn-enter a,
		.btn-clear a,
		.btn-back a{
			display:block;
			width:auto;
			text-align: center;
			float:none;
			margin-bottom:1rem;
			font-size:1.5rem;
			min-width:0;
		}
		
		/* btn-addfavorite */
		.btn-addfavorite a{
			font-size:1.5rem;
		}
	
		/* --------------------------------------------------
		search-menu
		-------------------------------------------------- */
			
		.search-menu h4{
			font-size:1.5rem;
		}
		.search-menu .inner{
			display:none;
		}
		.search-menu h4:before{
			content:"\f146";
		}
		.search-menu h4.active:before{
			content:"\f0fe";
		}

		/* search-select */
		.search-select{
			display:block;
		}
		.search-select dl{
			width:auto;
			display:block;
			position:relative;
			overflow:hidden;
			padding-bottom:1rem;
			margin-bottom:1rem;
		}
		.search-select dt{
			display:block;
			width:auto;
		}
		.search-select dd{
			display:block;
			width:auto;
		}
		.search-select dd span{
			box-sizing:border-box;
			width:49%;
			float:left;
			display:block;
			padding:7px 0;
			text-align:center;
			margin:.5%;
		}
		.search-select .keyword input{
			width:90%;
			font-size: 3vmin;
		}
	
		/* --------------------------------------------------
		serch-calendar
		-------------------------------------------------- */
	
		/* table-calender */
		.table-calender{
			width:100%;
			table-layout:fixed;
		}
	
		/* --------------------------------------------------
		info-area
		-------------------------------------------------- */
	
		.info-area{
			padding-bottom:20px;
		}
		.info-area .spot-ttl  {
			font-size:2.5rem;
		}
		.info-area .spot-icon {
			margin-bottom: 10px;
		}
		.info-area .spot-icon span {
			font-size: 1.2rem;
			padding:2px 5px;
		}
		.info-area .spot-date {
			font-size: 1.2rem;
			margin-bottom: 10px;
		}
	
		/* slider-pro */
		#js-spot-slider.slider-pro.sp-horizontal{
			margin-bottom:10px;
		}
	
		/* --------------------------------------------------
		data-area
		-------------------------------------------------- */
	
		.data-area{
			padding-bottom:20px;
		}
		.map-area-list{
			display:none;
		}
	
		/* --------------------------------------------------
		 map-detail
		-------------------------------------------------- */
	
		.map-detail {
			padding:0 10px 10px 10px;
		}
	
		/* --------------------------------------------------
		 map-list
		-------------------------------------------------- */
	
		.map-list .map-area-table{
			border:none;
		}
		.map-list .map-area-google {
			width: 100%;
			padding:10px;
		}
		.map-list #map{
			height:300px;
		}
		.map-list .filter-content{
			margin:0 10px;
		}
	
		/* --------------------------------------------------
		map
		-------------------------------------------------- */
	
		#map,
		.map-area-google{
			height: 300px;
		}
	
		/* --------------------------------------------------
		module
		-------------------------------------------------- */
		
		/* conditions */
		.conditions{
			padding:10px;
		}
		.conditions .btn-delete{
			float:none;
			width:auto;
			text-align:center;
			padding-top:1rem;
		}
		.conditions dl{
			float:none;
			width:auto;
		}
		.conditions dt{
			display:  block;
			margin-right:0;
		}
		
		/* tab-btn */
		.tab-btn li a{
			font-size:1.5rem;
		}
	
		/* paging */
		.paging .paging-result{
			float:none;
			display:block;
			margin-bottom:1rem;
		}
		.paging .paging-sort{
			float:none;
			display:block;
		}
		
		/* breadCrumbs */	
		.breadCrumbs{
			font-size:1rem;
		}
		
		/* page-menu */
		.page-menu{
			padding:1rem 0;
		}
		.page-menu p{
			margin:5px;
			width:auto;
			display:block;
		}
		.page-menu p a{
			width:auto;
			display:block;
			text-align:center;
		}
	
		/* filter-content */
		.filter-content{
			display:block;
			padding: 10px;
			width:auto;
		}
		.filter-content h5{
			display:block;
			background-color: #f3f3f3;
			border-right: medium none;
			font-size: 1.4rem;
			padding: 5px 0;
			text-align: center;
			width: 100%;
		}
		.filter-content .filter-list {
			display:block;
			font-size: 1.2rem;
			padding: 10px;
		}
	
	
		/* --------------------------------------------------
		icon
		-------------------------------------------------- */
		
		/* icon-new */
		.icon-new{
			font-size:1rem;
		}
		/* icon-area */
		.icon-area{
			font-size:1rem;
		}
		/* icon-gen */
		.icon-gen{
			font-size:1rem;
		}
		/* icon-cat */
		.icon-cat,
		.icon-cat01,
		.icon-cat02,
		.icon-cat03,
		.icon-cat04,
		.icon-cat05,
		.icon-cat06,
		.icon-cat07,
		.icon-cat08,
		.icon-cat09,
		.icon-cat10{
			font-size:1rem;
		}
		
		/* icon-rank */
		.icon-rank1,
		.icon-rank2,
		.icon-rank3,
		.icon-rank{
			width: 40px;
			height: 25px;
			background-size:40px auto;
			line-height:30px;
			font-size:1.5rem;
		}
		.icon-rank1 {
			background-position: 0 0;
		}
		.icon-rank2 {
			background-position: 0 -27px;
		}
		.icon-rank3 {
			background-position: -1px -53px;
		}
		.icon-rank {
			background-position: 0 -80px;
		}

}