@charset "UTF-8";

/* =========================================================
 .search-heading
========================================================= */

.search-heading {
	display: flex;
	align-items: flex-end;
	margin: 0 0 1em;
}

@media screen and (max-width: 767px) {
	.search-heading {
		display: block;
	}
}

.search-heading h2 {
	font-size: 37px;
	color: #45b035;
}

@media screen and (max-width: 767px) {
	.search-heading h2 {
		font-size: 27px;
	}
}

.search-heading p {
	font-size: 18px;
	padding: 0 0 0.5em 1em;
}

@media screen and (max-width: 767px) {
	.search-heading p {
		font-size: 18px;
		padding: 0 0 0.5em 0;
	}
}

.search-heading02 {
	display: flex;
	align-items: flex-end;
	margin: 2.5em 0 0.5em;
}

@media screen and (max-width: 767px) {
	.search-heading02 {
		display: block;
		margin: 1.5em 0 0.5em;
	}
}

.search-heading02 h2 {
	font-size: 30px;
	color: #45b035;
}

@media screen and (max-width: 767px) {
	.search-heading02 h2 {
		font-size: 24px;
	}
}

.search-heading02 p {
	font-size: 18px;
	padding: 0 0 0.15em 1em;
}

@media screen and (max-width: 767px) {
	.search-heading02 p {
		font-size: 13px;
		padding: 0 0 0.15em 0;
	}
}

/* =========================================================
 #front .heading01
========================================================= */

.search-nav {
	margin: 0 0 40px;
}

@media screen and (max-width: 767px) {
	.search-nav {
		display: none;
	}
}

.search-nav ul {
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #727171;
	border-left: 1px solid #727171;
}

.search-nav ul li {
	width: 33.33333%;
	border-right: 1px solid #727171;
	border-bottom: 1px solid #727171;
}

.search-nav ul li a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 68px;
	color: #231815;
	text-decoration: none;
}

.search-nav ul li a .icon {
	margin: 0 1em 0 0;
}

/* =========================================================
 .searchTableType01 table
========================================================= */

@media screen and (max-width: 767px) {
	.searchTableType01 {
		margin: 0 -8px;
	}
}

.searchTableType01 table {
	width: 100%;
	border-top: 1px solid #dbdbdb;
	font-size: 13px;
	text-align: left;
}

.searchTableType01 th,
.searchTableType01 td {
	padding: 16px 16px;
	border-bottom: 1px solid #dbdbdb;
	font-weight: normal;
	vertical-align: middle;
}

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

	.searchTableType01 th,
	.searchTableType01 td {
		display: block;
		width: 100%;
	}
}

.searchTableType01 th {
	width: 210px;
	font-size: 14px;
	font-weight: bold;
	background-color: #f5f5f5;
}

@media screen and (max-width: 767px) {
	.searchTableType01 th {
		width: 100%;
		padding: 16px 16px;
	}
}

.searchTableType01 td {
	max-width: 500px;
}

@media screen and (max-width: 767px) {
	.searchTableType01 td {
		display: block;
		width: 100%;
		padding: 0;
	}
}

/* =========================================================
 .checkboxList
========================================================= */
.checkboxList {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: -8px 0 0;
}

@media screen and (max-width: 767px) {
	.checkboxList {
		display: block;
		margin: 0;
	}
}

.checkboxList.free {
	margin: -8px 0 0 -24px;
}

@media screen and (max-width: 767px) {
	.checkboxList.free {
		margin: -1px 0 0;
	}
}

.checkboxList li {
	margin: 8px 0 0;
}

@media screen and (max-width: 767px) {
	.checkboxList li {
		border-bottom: 1px solid #dbdbdb;
		padding: 10px 16px;
		margin: 0;
	}

	.checkboxList li:last-child {
		border-bottom: none;
	}
}

@media screen and (max-width: 767px) {
	.checkboxList.free {
		border-top: 1px solid #dbdbdb;
	}
}

.checkboxList.free li {
	margin: 8px 0 0 24px;
}

@media screen and (max-width: 767px) {
	.checkboxList.free li {
		margin: 0;
	}
}


.checkboxList.col4 li {
	width: 25%;
}

.checkboxList.col3 li {
	width: 33.333333%;
}

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

	.checkboxList.col4 li,
	.checkboxList.col3 li {
		width: 100%;
	}
}

@media screen and (max-width: 767px) {
	.checkboxList.sp_col2 {
		display: flex;
	}

	.checkboxList.sp_col2 li {
		width: 50%;
	}

	.checkboxList.sp_col2 li:nth-child(2n + 1):nth-last-child(2) {
		border-bottom: none !important;
	}

	.checkboxList.sp_col2 li:nth-of-type(odd) {
		border-right: 1px solid #dbdbdb;
	}
}


/* =========================================================
 .searchWrap01
========================================================= */

.searchWrapBox01 {
	width: 100%;
	border: 1px solid #dbdbdb;
	font-size: 13px;
	text-align: left;
	padding: 24px;
}


/* =========================================================
 .sphidden
========================================================= */
/* JGS Delete Style
@media screen and (max-width: 767px) {
	.sphidden {
		display: none;
	}
}
 --------- */


/* =========================================================
 .addFieldWrap
========================================================= */

.commuting_search_header {
	margin: 0 0 1em;
}

.commuting_search_header .headline {
	font-size: 18px;
	color: #45b035;
}

@media screen and (max-width: 767px) {
	.addFieldWrap {
		padding: 16px;
	}
}

.addFieldBlock {
	position: relative;
	padding: 16px;
	margin: 0 0 8px;
	border: 1px solid #ccc;
}


.addFieldBlock .closebtnWrap {
	cursor: pointer;
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	padding: 0 12px;
	color: #fff;
	background-color: #727171;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.addFieldBlock .closebtnWrap {
		padding: 0 16px;
	}
}

.addFieldBlock .closebtnWrap:hover {
	opacity: .9;
}

.addFieldWrap #add_btn {
	cursor: pointer;
	display: block;
	width: 100%;
	padding: 12px 0;
	margin: 8px 0 0;
	text-align: center;
	font-size: 16px;
	color: #fff;
	background-color: #45b035;
}


.commuting_search {
	display: flex;
}

@media screen and (max-width: 767px) {
	.commuting_search {
		display: block;
	}
}

.commuting_search .headline {
	margin: 0 0 .3em;
}


.commuting_search .field {
	display: flex;
	align-items: center;
}

.commuting_search .field .text {
	white-space: nowrap;
	padding: 0 0 0 .5em;
}

.commuting_search .station_name {
	margin: 0 1em 0 0;
}

/* JGS Add Style */
.commuting_search .time_required select {
	width: 7.5em;
	padding: 11px 5px !important;
	font-size: 16px;
}
/* --------- */

@media screen and (max-width: 767px) {
	/* JGS Change Style（selectを追加） */
	.commuting_search input, .commuting_search .time_required select {
		font-size: 14px !important;
		padding: 6px !important;
		margin: 0 0 16px;
		max-width: 70%;
	}
	/* --------- */

	/* JGS Add Style */
	.commuting_search .time_required select {
		margin: 0;
		max-width: 100%;
	}
	/* --------- */
}

.commuting_search .time_required input {
	width: 6.5em;
}

/* =========================================================
 JGS Add Style
========================================================= */
#localArea, .localCitySection, .localLineSection {
	display: none;
}

.search-operation {
	padding-top: 8px;
	text-align: center;
}

.search-operation .resultNum {
    font-size: 20px;
    margin-bottom: 5px;
}

.search-operation .resultNum span {
	color: #FF6600;
	font-size: 24px;
	/* takken change Style */
	font-weight:bold;
}


#map_content {
	border: 1px solid #dbdbdb;
	position: relative;
	width: 800px;
	margin: 0 auto;
}

#map_content #map {
	width: 100%;
	height: 500px;
}

#map_search_box {
	width: 200px;
	height: 30px;
	top: 10px !important;
	left: 12px !important;
	font-size: 14px;
}