.top_plan_bus{
	margin: 50px auto 0;
}


input{
  display: none;
}
.bl_3daysSearchBlock{
  margin-bottom: 60px;
}
.bl_3daysSearchBlock_inner{
  width: 82.9%;
  max-width: 1160px;
  margin-left: auto;
  margin-right: auto;
}
.bl_3daysSearchBlock_ttl{
  text-align: center;
  margin: 55px 0;
}
.bl_3daysSearchBlock_ttl_main{
  font-size: 27px;
  color: #0073aa;
  margin-bottom: 15px;
  font-weight: bold;
  font-family: "Josefin Sans" , "NotoSansCJKjp-Jxck", "Noto Sans CJK JP" , "Noto Sans" , "Noto Sans Japanese" ,"Helvetica Neue", "Meiryo" , "メイリオ", "YuGothic", "游ゴシック",sans-serif;
}
.bl_3daysSearchBlock_ttl_sub{
  font-size: 16px;
  color: #0073aa;
}
.el_searchResult{
  text-align: center;
  color: #FFA088;
  font-weight: bold;
  margin-bottom: 50px;
}
.js_target{
  display: none;
}
.js_target.js_selected{
  display: block;
}
.bl_selectBlock_check{
  display: inline-block;
  border:1px solid #666;
}
.bl_selectBlock_check.style_4ch{
  border:1px solid #961F5D;
  background-color:#961F5D;
  color: #fff;
}
.bl_selectBlock_check.style_2ch{
  border:1px solid #339999;
  background-color:#339999;
  color: #fff;
}
.bl_selectBlock_check.style_c{
  border:1px solid #4A93D0;
  background-color:#4A93D0;
  color: #fff;
}

.bl_selectBlock_check label{
  padding: 16px;
  font-size: 1.6rem;
  display: block;

}

.bl_selectBlock_check input[type=checkbox]:checked + label{
  display: block;
  background-color: var(--lightgray);
  border-radius: 4px;
}
.bl_selectBlock_check input[type="checkbox"]:checked + label.style_4ch{
  background-color:#961F5D;
}

.bl_selectBlock input{
}
.bl_selectBlock_check label .el_checkbox{
  position: relative;
  top: 4px;
  left: -4px;
  width: 18px;
  height: 18px;
  display: inline-block;
  margin-right: 5px;
  margin: -3px 0 0 9px;
  border: 1px solid #ccc;
  background-color: #f8f8f8;
}

.bl_selectBlock_check input[type=checkbox]:checked + label .el_checkbox:after{
  content: "";
  display: block;
  position: absolute;
  top: -4px;
  left: 4px;
  width: 6px;
  height: 12px;
  transform: rotate(40deg);
  /* border-bottom: 3px solid var(--green);
  border-right: 3px solid var(--green);
  accent-color: var(--green); */
  border-bottom: 3px solid #333;
  border-right: 3px solid #333;
  accent-color: #333;
}

.bl_selectBlock_check input[type=checkbox]:checked + label .el_checkbox.style_4ch:after{
  border-bottom: 3px solid #961F5D;
  border-right: 3px solid #961F5D;
}

.el_searchResult{
  margin-bottom: 50px;
}
.bl_selectBlock{
	/* border: 1px solid #DDD; */
	border-top: none;
	/* padding: 30px 50px 0; */
	box-sizing: border-box;
	font-size: 14px;

}
.bl_selectBlock_wrapper_wrapper{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	/* flex-wrap: wrap; */
	align-items: center;
	/* margin-bottom: 20px; */
	/*
	border-bottom: 1px solid #efefef;
	*/
}
.bl_selectBlock_wrapper_wrapper + .bl_selectBlock_wrapper_wrapper{
	margin: 20px 0 0;
}
.bl_selectBlock_check label{
  cursor: pointer;
}
.bl_selectBlock_ttl{
  width: 270px;
  color: #333;
  /* margin-bottom: 20px; */
  font-weight: 500;
  font-size: 1.7rem;
}
.bl_selectBlock_content{
  display: flex;
  width: 100%;
}

.bl_selectBlock_release{
  text-align: center;
  color: #fff;
  background-color: #C0C0C0;
  padding: 10px 0;
  font-weight: bold;
  width: 200px;
  float: right;
}

.bl_selectBlock_release i{
	margin-right: 5px;
}

.bl_searchResultBlock{
  font-size: 14px;
}
.bl_searchResultBlock_item{
  box-sizing: border-box;
}
.bl_selectBlock_check{
  display: inline-block;
  margin-right: 10px;
  display: inline-block;
  /* margin-bottom: 15px; */
  width: calc(100% / 4);
  border-radius: 4px;
}
.bl_selectBlock_check:last-child{
  margin-right: 0;
}

.js_release{
  cursor: pointer;
}

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

	.top_plan_bus{
		margin: 30px 0 0;
	}


	.bl_selectBlock{
		/* padding: 20px 15px 0 15px; */
		margin-bottom: 0;
		font-size: 15px;
	}

	.bl_selectBlock_wrapper_wrapper{
    flex-wrap: wrap;
		margin-bottom: 10px;
	}

	.bl_selectBlock_ttl{
		width: 100%;
		margin-bottom: 10px;
		font-size: 1.6rem;
	}
	.bl_selectBlock_content{
    flex-wrap: wrap;
    gap: 10px;
		width: 100%;
	}

	.bl_selectBlock_check{
		margin: 0 0 2%;
		width: calc((100% / 2) - 5px);
	}
	.bl_selectBlock_check label{
		padding: 10px;
		width: auto;
		display: block;
		height: auto;
    line-height: 1.5;
	}
	.bl_selectBlock_check input[type=checkbox]:checked + label{
		padding: 10px;
	}

}
