@charset "UTF-8";

/*-----------------------------------------------------------------------------* search_box */

#search_box{
  background: #fff;
  max-width: 1024px;
  width: 95%;
  margin: 0 auto;
  overflow: hidden;
}
#search_box_ttl{
  font-size: 16px;
  padding: 20px 0;
  border-bottom: 1px solid rgba(27,8,21,0.2);
  text-align: center;
  line-height: 1;
  margin: 0;
}
.search_box_list{
  float: left;
  width: 60%;
}
.search_box_list a{
  position: relative;
  display: inline-block;
  float: left;
  width: 33.333%;
  text-align: center;
  line-height: 130px;
}
.search_box_list a:after{
  content: "";
  position: absolute;
  top: 20%;
  right: 0;
  border-right: 1px solid #553c9c;
  width: 1px;
  height: 60%;
}
.search_box_list a img{
  display: inline-block;
  vertical-align: middle;
}
.search_box_list a p{
  display: inline-block;
  color: #553c9c;
  font-size: 17px;
}
.search_overlay{
}
#search_nearby{
}
#search_area{
}
#search_feature{
}
.search_box_form{
  float: left;
  width: 40%;
  padding: 56px 3% 0;
  box-sizing: border-box;
}
#search_box_keyword{
}
#search_box_textbox{
  border: 1px solid #553c9c;
  border-radius: 5px;
  font-size: 16px;
  padding: 12px;
  box-sizing: border-box;
  width: 78%;
  margin-right: 2%;
  float: left;
}
#search_box_btn{
  background: #553c9c;
  color: #fff;
  font-size: 15px;
  padding: 8px 0;
  border-radius: 100px;
  cursor: pointer;
  width: 20%;
  float: left;
  margin-top: 2px;
}

@media screen and (max-width:810px) {

  .search_box_list a img{
    height: 60px;
  }
  .search_box_list a p{
    font-size: 14px;
  }

}@media screen and (max-width:767px) {

  #search_box{
    padding: 5%;
    box-sizing: border-box;
  }
  #search_box_ttl{
    font-size: 12px;
    border: none;
    padding: 20px 0 10px;
  }
  .search_box_list{
    display: inline-block;
    float: none;
    width: 100%;
    border: 1px solid #553c9c;
    border-radius: 3px;
  }
  .search_box_list a{
    line-height: 0;
    padding: 5% 0;
  }
  .search_box_list a:after{
  }
  .search_box_list a:last-child:after{
    display: none;
  }
  .search_box_list a img{
    display: block;
    margin: 0 auto;
  }
  .search_box_list a p{
  }
  .search_overlay{
  }
  #search_nearby{
  }
  #search_area{
  }
  #search_feature{
  }
  .search_box_form{
    float: none;
    width: 100%;
    padding: 4% 0 0;
  }
  #search_box_keyword{
  }
  #search_box_textbox{
  }
  #search_box_btn{
  }

}


/*-----------------------------------------------------------------------------* searchform */

.search_form_overalay {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  position: relative;
}
.search_form_overalay.on{
  padding: 10%;
  height: auto;
  opacity: 1;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 100;
  text-align: center;
  width: 100%;
  border: none;
  box-sizing: border-box;
}
.search_form_overalay .bg{
  background: rgba(71,69,84,0.9);
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom:0 ;
  display: none;
}
.search_form_overalay.on .bg{
  display: block;
}
.searchform_base{
	background: #fff;
	display: block;
	padding: 0 0 50px;
	position: absolute;
	left: 0;
	top: 50%;
	right: 0;
	width: 90%;
	height: auto;
	margin: auto;
	max-width: 1100px;
	box-sizing: border-box;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	max-height: 90%;
	overflow-y: auto;
}
.search_form_overalay .btn_close{
  background: none;
  box-shadow: none;
  right: 0;
}
.search_form_overalay .btn_close span:after, .search_form_overalay .btn_close span:before{
}
.search_form_overalay .btn_close span:after{
}
.search_form_overalay .btn_close span:before{
}
.searchform_ttl{
	display: block;
	font-size: 15px;
	font-weight: bold;
	padding: 20px 0 10px;
	border-bottom: 1px solid rgba(65,56,86,0.2);
}
.cat-arearch {
  display: block;
  font-weight: bold;
}
.search_form_overalay .searchform_content{
	padding: 5% 10% 2%;
}
.search_form_overalay .searchform_content:after{
	content: "";
	display: block;
	clear: both;
}
.searchform_content_box1{
	float: left;
  width: 47%;
  text-align: left;
}
.searchform_content_box2{
	float: right;
  width: 47%;
  text-align: left;
}
.searchform_content_box1 .searchform_kw_content{
	margin: 0 0 2em;
}
.searchform_kw_content input[type="text"]{
  border: 1px solid #553c9c;
  border-radius: 5px;
  font-size: 16px;
  padding: 10px;
  width: 100%;
  margin-right: 6px;
  box-sizing: border-box;
}
.searchform_area_content{
}
.searchform_area_body{
}
.searchform_feature_content{
}
.searchform_feature_body{
	display: block;
}

/* area */
.search_form_overalay[data-tar="area"] .searchform_base{
	max-width: 800px;
}
.search_form_overalay[data-tar="area"] .searchform_content_box1{
}

@media only screen and (min-width: 768px) {

	.search_form_overalay[data-tar="area"] .searchform_content_box1{
		width: auto;
		padding: 0 40% 0 0;
		margin: 0;
		float: none;
		box-sizing: border-box;
		background: url("../images/searchArea_list_img.png") right center no-repeat;
		background-size: auto 300px;
	}
	.search_form_overalay[data-tar="area"] .search_areas_under{
		right: -170%;
	}

}

.search_form_overalay[data-tar="area"] .searchform_content_box2{
	display: none;
}
.search_form_overalay[data-tar="area"] .searchform_kw_content{
	display: none;
}
.search_form_overalay[data-tar="area"] .searchform_kw_content{
	display: none;
}

/* tokutyo */
.search_form_overalay[data-tar="tokutyo"] .searchform_base{
}
.search_form_overalay[data-tar="tokutyo"] .searchform_content_box2{
}
.search_form_overalay[data-tar="tokutyo"] .searchform_content_box1{
}
.search_form_overalay[data-tar="tokutyo"] .searchform_kw_content{
}

.cat-search{
	margin: 0 0 10px;
}
.searchform_content label{
	display: inline-block;
	font-size: 13px;
	border: 1px solid #553c9c;
	padding: 10px;
	border-radius: 8px;
	margin: 0 4px 10px;
	line-height: 1;
	cursor: pointer;
	box-sizing: border-box;
	max-width: 100%;
	overflow: hidden;
	position: relative;
	background: #fff;
}
.searchform_content label span{
	line-height: 0.8;
}

.searchform_content label.on{
	background: rgba(85,60,156,0.1);
}
.searchform_content label.cashback_checkbox{
	background: #ffffff;
	border: 1px solid #968209;	
}
.searchform_content label.cashback_checkbox.on{
	background: #f7f2c7;
	border: 1px solid #968209;	
}

.searchform_content input[type="checkbox"]{
	display: none;
}
.searchform_content .checkbox + .checkbox_icon {
  position: relative;
  vertical-align: top;
  display: inline-block;
  background: rgba(65,56,86,0.2);
  width: 13px;
  height: 13px;
  border-radius: 3px;
  margin-left: 5px;
}
.searchform_content .checkbox:checked + .checkbox_icon:before {
	content: "";
	position: absolute;
	top: 1px;
	left: 2px;
	background: url("../images/icon_check.png") no-repeat;
	background-size: 12px 9px;
	width: 12px;
	height: 9px;
}
.search_form_overalay .search_btn{
	text-align: center;
  margin: 0 auto;
  background: #553c9c;
  color: #fff;
  width: 275px;
  padding: 13px 0;
  border-radius: 100px;	font-size:16px;
	letter-spacing: 4px;
	cursor: pointer;
	transition: 0.3s;
}
.search_form_overalay .search_btn:hover{
	opacity: 0.7;
}

.search_areas{
	
}
.search_areas:after{
	content: "";
	display: block;
	clear: both;
}
.parent_area{
	position: relative;
	width: 49%;
	float: left;
	margin: 0 2% 2% 0;
}
.parent_area:nth-child(even){
	margin: 0 0 2%;
	
}
.searchform_content .parent_area_cat{
	width: 100%;
	margin: 0 auto;
	padding: 25px 10px;
}

.search_areas_under{
	display: none;
	position: absolute;
	left: 20%;
	top: 10%;
	right: -220%;
	max-height: 300px;
	background: #f1efef;
	z-index: 1;
	border: #33294a1f 1px solid;
	border-radius: 2px 6px 6px 6px;
	padding: 20px;
	box-shadow: 0 3px 10px rgba(0,0,0,0.06);
	overflow: scroll;
}
.search_form_overalay[data-tar="area"] .search_areas_under{
}
.search_form_overalay[data-tar="area"] .search_areas_under{
}

.parent_area.on .search_areas_under{
	display: block;
}
.search_areas_under .under_title{
	display: inline-block;
	padding: 0;
	margin: 0;
	min-width: 60px;
}
.search_areas_under label{
	background: #fff;
	border: none;
	font-size: 13px;
	padding: 8px;
	vertical-align: top;
}
.search_areas_child_wrap{
	display: block;
}
.search_areas_child_cat{
	display: inline-block;
	vertical-align: top;
	font-size: 13px;
	margin: 0;
	padding: 0;
	text-align: center;
	font-weight: normal;
}
.search_areas_childs{
}
.searchform_content .searchform_area_content .parent_area_cat .checklabel{
	font-size: 15px;
	line-height: 1;
}
.searchform_content .searchform_area_content .parent_area_cat .checkbox + .checkbox_icon {
  position: absolute;
  vertical-align: top;
  display: inline-block;
  float: right;
  background: rgba(65,56,86,0.2);
  width: 18px;
  height: 18px;
  border-radius: 3px;
  margin: 0 5px;
  right: 10px;
  top: 50%;
  margin-top: -9px;
}
.searchform_content .searchform_area_content .parent_area_cat .checkbox:checked + .checkbox_icon:before {
	content: "";
	position: absolute;
	top: 0;
	left: 2px;
	background: url("../images/icon_check.png") no-repeat;
	background-size: 100% auto;
	width: 20px;
	height: 15px;
}
.searchform_content .btn_ok{
	text-align: center;
	margin: 0 auto;
	background: #553c9c;
	color: #fff;
	max-width: 275px;
	width: 90%;
	padding: 13px 0;
	border-radius: 100px;
	font-size: 16px;
	letter-spacing: 4px;
	cursor: pointer;
	transition: 0.3s;
	position: fixed;
	display: none;
	bottom: 2em;
	z-index: 2;
	left: 0;
	right: 0;
}
.searchform_content .btn_ok:hover{
  color: #fff;
  opacity: 1;
  background: #7a5dcc;
}

@media only screen and (min-width: 768px) {

	.search_areas_child_wrap{
		position: relative;
		margin: 5px;
	}

	.search_areas_child_cat{
		position:absolute;
		left: 0;
		top: 0;
		width: 55px;
		text-align: left;
	}
	.search_areas_childs{
		padding-left: 55px;
	}
	.search_areas_under[data-slug="osaka"] .search_areas_child_cat{
		width: 80px;
	}
	.search_areas_under[data-slug="osaka"] .search_areas_childs{
		padding-left: 80px;
	}

}@media only screen and (max-width: 767px) {
	.search_shiborikomi{
		width: auto;
		margin-top: 10px;
	}

	/*中身を非表示にしておく*/
	.search_form_overalay {
		height: 0;
		padding: 0px;
		overflow: hidden;
		opacity: 0;
		transition: 0.8s;
		text-align: left;
	}

	/*クリックで中身表示*/
	.search_form_overalay.on{
		padding: 0;
		opacity: 1;
		background: none;
		z-index: 10000000;
	}

	.searchform_base{
    background: rgba(255, 254, 253, 0.96);
    max-height: none;
    top: 0;
    bottom: 0;
    -webkit-transform: none;
    transform: none;
    width: auto;
    padding: 0 0 4em;
	}
	.searchform_content_box1{
		float: none;
		width: auto;
	}
	.searchform_content_box2{
		float: none;
		width: auto;
	}
	.search_form_overalay .btn_close{
	left: 0;
	right: auto;
	}
	.search_form_overalay .btn_close span:after, .search_form_overalay .btn_close span:before {
	}
	.search_form_overalay .btn_close span:after {
	}
	.search_form_overalay .btn_close span:before {
	}
	.searchform_ttl{
	}
	.cat-arearch {
	}
	.search_form_overalay .searchform_content{
    width: 86%;
    padding: 2.5em 0 0;
    margin: 0 auto;
	}
	.searchform_area_content{
		margin: 0 0 2em;
	}
	.searchform_area_body{
	}
	.searchform_feature_content{
		margin: 0 0 2em;
	}
	.searchform_feature_body{
	}

	.hidden_show label.on{
	}
	input[type="checkbox"]{
	}
	.checkbox + .checkbox_icon {
	}
	.checkbox:checked + .checkbox_icon:before {
	}
	.search_areas_under{
		display: none;
		position: fixed;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		max-height: none;
		border :none;
		border-radius: 0;
		padding: 3em 20px;
		box-shadow: none;
		overflow: scroll;
		box-sizing: border-box;
	}
	.parent_area.on .search_areas_under{
		padding-bottom: 100px;
	}
	.search_areas_under .under_title{
		display: block;
		padding: 8px 0;
		margin: 0 0 20px;
		min-width:0;
		text-align: center;
		background: #555;
		border-radius: 6px;
		color: #f1efef;
	}
	.search_areas_under label{
		background: #fff;
		border: none;
		font-size: 14px;
		padding: 12px;
		vertical-align: top;
	}
	.search_areas_child_wrap{
		display: block;
	}
	.search_areas_child_cat{
		display: block;
		font-size: 13px;
		margin-right: 10px;
		padding: 8px 0;
		text-align: left;
		opacity: 0.5;
		font-weight: bold;
	}
	.searchform_content .searchform_area_content .parent_area_cat .checkbox + .checkbox_icon {
		margin-right: 0;
	}
	.searchform_content .btn_ok{
		display: block;
	}

}
