@charaset "shift_jis"; 

/* ============================= 共通 =============================  */

* { 
	padding: 0px;
	margin: 0px;
	box-sizing: border-box;
}

li { list-style-type: none;}


a { text-decoration:none; color: #333; overflow: hidden;}

a:hover {
	color:#F60;
}
.leadText{
	padding:8px 0;
	font-size:1.1em;
	line-height: 1.2em;
}
nav ul{
	display:flex;
}
nav ul li{
	text-align: center;
	width:50%;
	padding:12px 0;
}
nav ul li{
	border-right:1px dotted #666;
}
.ttl_h2{
	text-align: center;
	font-family: "Sawarabi Gothic";
	font-size:1.1em;
	margin:15px 0;
	padding:8px 0;
	border-top:2px solid #666;
	border-bottom:2px solid #666;
}
.ttl_h2 h2{
	font-size:1.5em;
	font-weight:normal;
	border-bottom:none!important;
}
.ttl_h2 span{
	font-family: 'Grand Hotel', cursive;
	font-size:2em;
	line-height: 1em
}
#searchPlan{
	margin-top:20px;
}
#searchPlan .searchBox{
	font-size:1.1em;
	width: 98%;
    margin: 8px auto;
    border: 1px solid #666;
    box-sizing: border-box;
}
#searchPlan .searchBox h3,#topics #select h3{
	background: #666;
    color: #fff!important;
    text-align: center;
    padding: 10px 0!important;
	margin:0!important;
	font-family: "Sawarabi Gothic";
	font-size:1.1em;
	font-weight:normal;
}

#searchPlan .searchBoxInner {
	padding:8px;
}
#searchPlan .searchBox #useDay01{
	float:left;
	margin-right:15px;
}
.searchBox img.ui-datepicker-trigger {
    width: 25px;
    height: auto;
    vertical-align: bottom;
	cursor:pointer;
}
.searchBox dt{float:left;clear:both;padding:5px 0; margin-right:10px;}
.searchBox dt.selectDateTtl{float:none;padding:5px 0 0;}
.searchBox dd{float:left;padding: 3px 0px 0px 10px;margin-bottom:5px;}
.searchBox dd.selectDate{padding: 0px 0px 0px 10px;}
.searchBox dt.keyword {
    margin-right: 4px!important;
}
.searchBox dd.inputKeyword{    padding: 3px 0px 0px 0px!important;}
.searchBox p.searchBtn{clear:both; width:200px;margin:8px auto 0;}
.searchBox p.searchBtn button{width:200px;background-color:#f90;border:none;padding:5px 0; color:#FFFFFF;cursor:pointer;font-weight:bold;border-radius:5px;font-size:1.5em;font-weight:bold;}
.searchBox p.searchBtn button i{margin-right:5px;}
.searchBox p.searchBtn button:hover{background-color:#CCC;}
.searchBox .search_keyword{border-top:#FFF 1px solid;padding-top:5px;}
.searchBox .search_keyword ul li{float:left;margin-right:8px;line-height:1.5em;margin-bottom: 3px;}
.searchBox .search_keyword ul li a{text-decoration:underline;}
.searchBox select,.searchBox input{padding:3px;max-width: 300px;}
.searchBox input.txt{width:250px;}
.searchBox dd.selectCategory select{width:190px;}
.searchBox dd.selectDate input{width:25px;}
.searchBox dd.selectDate input.year1{width:60px;}
.searchBox dd.selectDate span{float:left;margin-right:5px;font-size: 0.9em;}
.searchBox dd.selectDate img{vertical-align:middle;cursor:pointer;width:29px;height:29px;}
.searchBox dd.selectDate img:hover{opacity:0.8;}
#select {
	font-size:1.1em;
	background: #fff;
    margin: 12px auto;
	width:98%;
	border: 1px solid #666;
}

#select .selectInner{
	padding:8px;
	font-size:0.9em;
}
#select label{
	padding:0px 4px 2px;
	display: inline-block;
	cursor:pointer;
}

#select label.selected,#select label:hover {background-color: #f90;border-radius:3px;color: #fff;}
#select label input{
	margin-right:3px;
}
#select p{
	display:block;
	margin:5px;
	color: #039;
}

#planList {
	width:100%;
	display: flex;
    flex-wrap: wrap;
}
#planList .planDetail {
	width:49%;
	vertical-align:top;
	margin-right:5px;
	margin-bottom: 8px;
	border:1px #999 dotted;
	padding:8px;
	border-top:5px #006 solid;
}
#planList [class*="hidden-"] {display: none!important;}
#planList .planDetail:nth-child(2n) {
	margin-right:0px;
}
#planList .planDetail h3{
    font-size: 1.2em;
    padding: 5px 0 8px;
    box-sizing: border-box;
	line-height: 1.3em;
	color:#006;
}
#planList .planDetail.goto {
    border-top: 5px #c00 solid;
}
#planList .planDetail.goto h3 {
    color: #c00;
}
.planDetail ul{
	display:flex;
	margin-bottom:8px;
}
.planDetail li{
	border:1px solid #666;
	padding:5px 8px;
	margin-right:8px;
	font-size:1.1em;
}
.planDetail li:last-of-type{
	margin-right:0;
}
#planList .planDetail span.number{
	background:#333;
	color:#fff;
	padding:3px 8px;
	text-align: center;
}
#planList .planDetail .planImg{
	margin-bottom:8px;
}
#planList .planDetail .planImg img{
	width:100%;
	height:160px;
	object-fit: cover;
}
#planList .planDetail table{
	border-collapse: collapse;
	width: 100%;
	color:#000;
	margin-bottom:8px;
	font-size:0.9em;
}
#planList .planDetail table td{
	padding:5px;
	border: 1px solid #666;
	width:72%;
}
#planList .planDetail table th{
	width:28%;
	border: 1px solid #666;
	padding:5px;
	vertical-align:middle;
}
#planList .planDetail table span{
	font-size:1.2em;
	font-weight:bold;
	color:#c00;
}
#planList .planDetail .reserve{
	clear:both;
	width:80%;
	margin:0px auto;
	padding:12px 0;
	background:#FF9900;
	color:#FFFFFF!important;
	font-weight:bold;
	text-align:center;
	border-radius:5px;
	font-size:1.3em;
}

#planList .planDetail .reserve a:hover{
	background:#FFCC99;
}

.companyList li {
    background: url(/sp/module/img/special/arrow.png) right no-repeat;
    -webkit-background-size: 18px 69px !important;
    -moz-background-size: 39px 69px !important;
    -o-background-size: 39px 69px !important;
    border-bottom: 1px solid #dbdbdb;
    font-size:1.1em;
    line-height: 1.3em;
}
.companyList li:last-child {
    border-bottom: none;
}
.companyList li a {
    display: block;
    padding: 10px 10px 10px 0;
    text-decoration: none;
    color:#333;
}
.companyList li h3{
	font-size:1.3em!important;
	color:#000!important;
	margin-bottom:8px;
	font-family: "Sawarabi Gothic";
}
.companyList li p{
	padding-right:10px;
}
.companyList li .photobox {
    float: left;
    width: 105px;
    margin-right: 10px;
}

.companyList li .photobox img {
    width: 100%;
    height: 80px;
}
.com_link {
    display: inline-block;
    width: 45%;
    margin: 0 15px;
}
.acMenu{
	width:90%;
	margin:8px auto;
}
.acMenuTrigger, .companyList li .com_link a{
    text-align: center;
    background: #eee;
    padding: 8px 0;
    border: 1px solid #666;
    cursor: pointer;
    position: relative;
    width: 45%;
    display: inline-block;
    vertical-align: top;
}
.companyList li .com_link a {
    width: 100%;
}
.acMenuTrigger.active{
	border:none;
}
.commentInner{
	display:none;
	background:#eee;
	padding:8px;
	font-size:0.9em;
}
.commentInner p{
	background: #fff;
    margin: 8px auto;
    border: 1px solid #666;
    border-radius: 50px;
    text-align: center;
    width: 60%;
}
.commentInner blockquote{
	padding:5px;
	border-bottom:1px dotted #666;
}

.acMenuTrigger::after,.companyList li .com_link a::after{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto;
    content: "";
    vertical-align: middle;   
    width: 10px;
    height: 10px;
    border-bottom: 2px solid #666;
    border-left: 2px solid #666;
    -webkit-transform: translate(0, 0) rotate(-45deg);
    transform: translate(0px, 0px) rotate(-45deg);
}
.acMenuTrigger.active::after{
    border-right: 2px solid #666;
    border-top: 2px solid #666;
    border-bottom: none;
    border-left: none;
}
#spot{
	display:flex;
	flex-wrap:wrap;
}
#spot a {
    text-decoration: none;
    flex: 0 0 47%;
    margin: 5px;
    border: 1px solid #666;
    position: relative;
}

#spot dl dt{
	font-family: 'Satisfy', cursive;
	font-size:1.4em;
	color:#fff;
	top: 33%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	position:absolute;
	-webkit-text-shadow: 0px 0px 8px #333;
  	-moz-text-shadow: 0px 0px 8px #333;
  	text-shadow: 0px 0px 8px #333;
}
#spot dl dd{
	line-height:1.2em;
}
#spot dl .spot_txt{
	margin: 8px;
}
#spot img{
	    height: 142px;
    width: 100%;
    object-fit: cover;
}
@media (min-width: 788px) {
#spot a {
    text-decoration: none;
    flex: 0 0 31.5%;
    margin: 5px;
    border: 1px solid #666;
    position: relative;
}
}
/*** default.cssから移植 ***/

a:link{color:#069;}
a:visited{color:#036;}
a:hover{color:#39c;}

	.faq dt {
	  margin-top: 25px;
	  font-weight: bold;
	}
	.faq dd {
	  margin: 10px 0 0;
	}
	/* 疑似要素でQとAを表示 */
	.faq dt:before,
	.faq dd:before  {
	  display: inline-block;
	  margin-right: 5px;
	  width: 25px;
	  height: 25px;
	  line-height: 25px;
	  text-align: center;
	  color: #FFF;
	  font-weight: normal;
	  border-radius: 50%;
	  font-size: 22px;
	}
	.faq dt:before {
	  content: 'Q';
	  background-color: #87CEFA;
	}
	.faq dd:before {
	  content: 'A';
	  background-color: #FF8C00;
	}
/*PCで無効*/
.pc_hid{
    display: none;
}
.sp_hid{
	display: block;
}

/*スマートフォンで有効*/
@media screen and (max-width:768px) {
    .pc_hid{
        display: block;
    }
	.sp_hid{
		display: none;
	}
	#planList .planDetail table {
		width: 100%;
	}	
}
h2.ttl {
    font-size: 16px;
    padding: 3px 5px px;
    border-bottom: solid 4px #ac6b0c;
}
.shien .right_cate {
    width: calc(100% - 200px);
    float: left;
    margin: 5px 0 0 0px;
}