@charset "utf-8";

#route_contents{
	display: none;
	z-index: 40;
	position: relative;
	width: 450px;
	height: auto;
	top: 0px;
	background-color: #fff;
	border-top: 1px solid #a0a0a0;
}

@media screen and (max-width: 480px) {
	#route_contents{
		width: 100%;
	}
}

#route_contents main{
	height: auto;
	overflow: auto;
	position: relative;
} 

/*===== 検索フォーム =====*/
.map_input_area{
	padding: 15px;
	display: flex;
	align-items: center;
}

.map_input_area.destination{
	padding: 15px;
}

#transit_item_list{
	padding: 15px;
}

@media screen and (max-height: 600px) {
    .map_input_area.destination{
        padding: 20px 15px 15px 15px;
    }
}

.map_input_area.transit{
	padding-top: 0px;
}

.form_search_route{
	background-color: #e8eae9;
	width: 67%;
	height: 35px;
	border: 2px solid #85817f;
	border-radius: 10px;
}

.form_search_route input{
	vertical-align: middle;
	height: 35px;
	box-sizing: border-box;
	background-color: transparent;
}

#route_search,
#route_search_02,
#route_search_03{
	border: none;
	width: calc(100% - 65px);
	padding-left: 10px;
	font-size: 100%;
}

#route_search_sub,
#route_search_sub_02,
#route_search_sub_03{
	border: none;
	width: calc(100% - 30px);
	padding-left: 10px;
	font-size: 100%;
}

#route_clear,
#route_clear_sub,
#route_clear_02,
#route_clear_sub_02,
#route_clear_03,
#route_clear_sub_03
{
	width: 24px;
	border: none;
	background-image: url(../img/ja/icon/serch_window_ic_serch.svg);
	background-position: left;
	background-size: 24px 24px;
	background-repeat: no-repeat;
	margin: 0 0 0 5px;
}

#submit_route_search,
#submit_route_search_02,
#submit_route_search_03{
	width: 24px;
	border: none;
	background-image: url(../img/ja/icon/serch_window_ic_serch.svg);
	background-position: left;
	background-size: 24px 24px;
	background-repeat: no-repeat;
	margin: 0 0 0 5px;
}

#route_exchange_btn {
	width: 40px;
	height: auto;
	position: absolute;
	right: 0;
	transform: translate(-50%, -50%);
}

/*===== 検索選択肢エリア =====*/
.search_cat_area{
	padding: 0;
}

.search_cat_area ul{
	list-style: none;
	padding: 0;
	margin: 0;
}

.search_cat_area ul li{
	padding: 7px 10px;
	border-bottom: 1px solid #bababa;
	position: relative;
}

.search_cat_area ul li:after{
	content: '';
	display: inline-block;
	width: 8px;
	height: 12px;
	background-image: url(../img/ja/icon/Root_Select_List_Sl_ic.svg);
	background-size: contain;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
}

.search_cat_area ul li.list_here:after{
	background-image: none;
}

.search_cat_area ul li:last-child{
	border-bottom: none;
}

.search_cat_area span{
	vertical-align: middle;
	margin: 0 0 0 10px;
}

.search_cat_area #route_small_text{
	margin: 0 0 0 0px;
}

@media screen and (max-width: 320px) {
	.search_cat_area #route_small_text{
		font-size: 50%;
	}
	.search_cat_area ul li.list_here{
		padding: 7px; /* 画面が小さいため、右の余白を0に設定 */
	}

	.map_input_area.destination{
		padding: 70px 15px 15px 15px;
	}
}

@media screen and (max-width: 360px) {
	.search_cat_area #route_small_text{
		font-size: 50%;
	}
}

@media screen and (min-width:361px) and ( max-width:409px) {
	.search_cat_area #route_small_text{
		font-size: 80%;
	}
}

ul.departure_list,
ul.destination_list {
	border-top: 2px solid #85817f;
	border-bottom: 2px solid #85817f;
}

ul.departure_list.list_show,
ul.destination_list.list_show,
ul.transit_list.list_show{
	display: block;
}

ul.departure_list.list_hide,
ul.destination_list.list_hide,
ul.transit_list.list_hide{
	display: none;
}

/*===== 経由地リスト =====*/
.transit_item {
	display: flex;
    align-items: center;
	margin: 0 0 5px 0;
}

.transit_item_number {
	font-size: 90%;
}

.transit_item_name {
	width: 70%;
	height: 35px;
	border: 2px solid #85817f;
	border-radius: 10px;
	margin: 0 0 0 5px;
}

.transit_item_name input {
	border: none;
    width: calc(100% - 10px);
    padding-left: 5px;
    font-size: 100%;
	vertical-align: middle;
	height: 35px;
	box-sizing: border-box;
	background-color: transparent;
	pointer-events: none;
}

.delete_transit_item {
	margin: 0 0 0 5px;
}

/*===== ルートを表示 =====*/
.showroute_area{
	display: none;
    position: relative;
    width: 100%;
    text-align: center;
	margin: 15px 0;
}

.showroute_ar_btn {
	margin: 15px 0 0 0;
}

/*===== 画像サイズ設定 =====*/
.search_cat_icon{
	width: 104px;
	height: auto;
}

.showroute_btn{
	width: 55%;
	height: auto;
}

.showroute_ar_btn{
	width: 55%;
	height: auto;
}