@charset "UTF-8";

/* -----------------------
    common initialize
--------------------------*/

html { margin:0; padding:0; }
body {
	font-family:'MINI Serif Regular', 'motoya w3';
	min-width:320px;
	margin:0;
	padding:0;
	background-color:#fff;
	font-size:16px;
}
p { line-height:160%; margin-bottom:1em; }
h1,h2,h3,h4 { line-height:110%; }

/* clearfix min for box elements */
header:before, header:after,
.inner:before, .inner:after,
.grid:before, .grid:after,
.box:before, .box:after,
ul:before, ul:after,
footer:before, footer:after { content:""; display:table; }

header:after,
.inner:after,
.grid:after,
.box:after,
ul:after,
footer:after { clear:both; }

header { border-top:none; border-bottom:4px solid #000; }

section.search-tools .dropdown {
	position:relative;
	width:310px;
	height:50px;
	box-sizing: border-box;
	border:1px solid #000;
	background-image:url(../images/area_select.png);
	background-repeat:no-repeat;
	background-position:95% center;
}
section.search-tools .dropdown span {
	display:inline-block;
	line-height:48px;
	width:100%;
}
section.search-tools .dropdown span a {
	display:inline-block;
	box-sizing:border-box;
	width:100%;
	padding-left:30px;
}

section.search-tools .dropdown span.default { display:inline-block; }
section.search-tools .dropdown span.opened { display:none; }
section.search-tools .dropdown.is-open span.default { display:none; }
section.search-tools .dropdown.is-open span.opened { display:inline-block; }

section.search-tools .dropdown ul {
	display:none;
	position:absolute;
	top:48px;
	left:-1px;
	width:100%;
	border:1px solid #000;
	background-color:#fff;
}
section.search-tools .dropdown.is-open ul {
	display:block;
	z-index:9;
	max-height: 200px;
	overflow: auto;
}

section.search-tools #dropdown1.is-open ul {
	display:block;
	z-index:10;
	max-height: 200px;
	overflow: auto;
}

section.search-tools .dropdown ul li {
	box-sizing:border-box;
	height:40px;

}
section.search-tools .dropdown ul li a {
	display:inline-block;
	box-sizing:border-box;
	width:100%;
	line-height:40px;
	padding-left:30px;
}
section.search-tools .dropdown ul li a:hover,
section.search-tools .dropdown ul li.checked a {
	background-color:#C1C2C3;
}

section .grid {  }
section .grid > figure > img { width:100%; }

section .grid.col2 > * { box-sizing:border-box; width:50%; float:left; }
section .grid.col2 > *:nth-child(2n) { float:right; }

section .grid.col3 > * { box-sizing:border-box; float:left; }
section .grid.col3 > *:nth-child(3n) { float:right; margin-right:0; }


/* width control */
section { width:100%;  }
header .inner,
section .inner { width:100%; min-width:980px; max-width:100%;  }

/* pages common */
header .inner,
section .inner { box-sizing:border-box; padding:0 30px; }
section .inner > *:last-child { margin-bottom:0; }
section .center { text-align:center; }
section.search-change { display:none; }
section .button { display:table; }
section .button > * { display:table-cell; vertical-align:middle; text-align:center; }
section .button.light { border:1px solid #000; }
section .button.light > * {
	background-image:url(/dealers/search/images/btn_bullet_def_pc.png);
	background-repeat:no-repeat;
	background-size:10px 16px;
	background-position:95% center;
	background-color:#fff;
	color:#000;
	transition:all .3s ease; }
section .button.light > *:hover {
	background-image:url(/dealers/search/images/btn_bullet_hov_pc.png);
	background-color:#000;
	color:#fff;
}
section .button.dark { border:1px solid #000; }
section .button.dark > * {
	background-image:url(/dealers/search/images/btn_bullet_def_pc.png);
	background-repeat:no-repeat;
	background-size:10px 16px;
	background-position:95% center;
	background-color:#000;
	color:#fff;
	transition:all .3s ease;
	border:0;
}
section .button.dark > *:hover {
	background-image:url(/dealers/search/images/btn_bullet_hov_pc.png);
	background-color:#fff;
	color:#000;
}


section .table { display:table; width:100%; }
section .t-row { display:table-row; }
section .t-cell { display:table-cell; }

section.headline { margin:40px 0; }
section.headline h1 { font-size:40px; margin-bottom:30px; }

section.search-tools .search-button{
	width:100%;
	height:100%;
}

section.search-tools { margin-bottom:60px; background-color:#fff; }
section.search-tools .input-area { border:2px solid #000; padding:30px; margin-bottom:30px; }
section.search-tools .area-select input,
section.search-tools .text-input input {
	font-family:'MINI Serif Regular', 'motoya w3';
	font-size:16px;
	box-sizing:border-box;
	border:1px solid #000;
	height:50px;
	margin-bottom:40px;
	padding-left:30px;
}
section.search-tools input.dealer-name { width:31.3%; margin-right:3%; float:left; }
section.search-tools input.keywords { width:100%; float:left; }
section.search-tools .area-select { margin-bottom:30px; }
section.search-tools .area-select > * { width:31.3%; margin-right:3%; }
section.search-tools .button { width:345px; height:50px; margin:0 auto; }
section.search-tools .filter-toggle { text-align:center; line-height:32px; }
section.search-tools .filter-toggle span {
	display:inline-block; padding-right:40px;
	background-repeat:no-repeat;
	background-size:24px 24px;
	background-position:right center;
}
section.search-tools .filter-toggle.is-open span {
	background-image:url(/dealers/search/images/filter_toggle_opened.png);
}
section.search-tools .filter-toggle.is-close span {
	background-image:url(/dealers/search/images/filter_toggle_closed.png);
}
section.search-tools .filter-items {
	/*visibility:hidden;
	height:0px;*/
	overflow:hidden;
	box-sizing:border-box;
	padding:20px 0;
}
section.search-tools .filter-items > * { width:31.3%; margin-right:3%; margin-bottom:15px; }
section.search-tools .filter-items label input { display:none; }
section.search-tools .filter-items label input:after {
	content:"";
	display:inline-block;
	width:20px;
	height:20px;
	margin-right:2px;
}
section.search-tools .filter-toggle.is-open + .filter-items { visibility:visible; height:auto; }

section.search-tools .filter-items label span.checkbox {
    width: 28px;
    height: 37px;
    /* line-height: 37px; */
    background-image: url(/dealers/search/images/search-tools_checkbox_default.jpg);
    background-repeat: no-repeat;
    background-position:left center;
}
@media screen and (max-width:767px){
  section.search-tools .filter-items label span.checkbox {
    background-position:left top;
  }
}
section.search-tools .filter-items label input:checked + span.checkbox {
    background-image: url(/dealers/search/images/search-tools_checkbox_checked.jpg);
}

section.search-tools .icon-detail li:nth-child(1) { width:16%; }
section.search-tools .icon-detail li:nth-child(2) { width:16%; }
section.search-tools .icon-detail li:nth-child(3) { width:16%; }
section.search-tools .icon-detail li:nth-child(4) { width:16%; }
section.search-tools .icon-detail li:nth-child(5) { width:16%; }
section.search-tools .icon-detail li:nth-child(6) { width:16%; }

section.search-result { margin-bottom:60px; min-height: 400px;}
section.search-result .view-control { margin-bottom:30px; }
section.search-result .view-control .finded-for { font-size:18px; float:left; }
section.search-result .view-control .view-select { float:right; }
section.search-result .view-select,
section.search-result .view-select > * { width:auto; }
section.search-result .view-select .head { display:inline-block; line-height:36px; font-size:12px; }
section.search-result .view-select .button { width:112px; height:36px; margin-left:2px;  }
section.search-result .view-select .button a { font-size:12px; background-color:#F0F0F0; }


/* ---------
 dualview ( default )
 -----------*/

section.search-result {
	min-height: 400px;
}

section.search-result .inner {
	display: none;
}

section.search-result:not([view-mode="detail"]):not([view-mode="map"]) .view-control .view-select .button.dual a { background-color:#000; color:#fff; }

/* detail pane */
section.search-result .result-view {  }
section.search-result .result-view .detail-pane { width:463px; vertical-align:top; }
section.search-result .result-view .detail-pane .detail-inner { overflow-y:scroll; padding-right:20px; }
section.search-result .result-view .detail-pane .dealer-box { border-top:1px dotted #000; padding:30px 0; }
section.search-result .dealer-name { font-size:18px; line-height:30px; display:inline-block; margin-bottom:10px; }
section.search-result .dealer-detail { font-size:13px; margin-bottom:20px; }
section.search-result .service-icons { margin-bottom:15px; }
section.search-result .service-icons li { float:left; margin-right:5px; }
section.search-result .service-icons li span {
	display:block;
	width:37px;
	height:37px;
	background-repeat:no-repeat;
	background-position:center;
	background-size:37px 37px;
}
section.search-result .service-icons li .showroom { background-image:url(/dealers/search/images/icon_showroom_pc.jpg); }
section.search-result .service-icons li .usedcar { background-image:url(/dealers/search/images/icon_usedcar_pc.jpg); }
section.search-result .service-icons li .services { background-image:url(/dealers/search/images/icon_services_pc.jpg); }
section.search-result .service-icons li .wifi { background-image:url(/dealers/search/images/icon_wifi_pc.jpg); }
section.search-result .service-icons li .genius { background-image:url(/dealers/search/images/icon_genius_pc.jpg); }
section.search-result .service-icons li .bodyshop { background-image:url(/dealers/search/images/icon_bodyshop.svg); }
section.search-result .social-icons { margin-bottom:20px; }
section.search-result .social-icons li { float:left; margin-right:15px; }
section.search-result .social-icons li a {
	box-sizing:border-box;
	display:block;
	width:47px;
	height:47px;
	background-color:#000;
	background-repeat:no-repeat;
	background-position:top center;
	background-size:cover;
	border:#000 solid 1px;
	border-radius:7px;
	cursor:pointer;
	transition: background-color .3s ease;
}
section.search-result .social-icons li a:hover {
	background-color:#fff;
	background-position:bottom center;
}
section.search-result .social-icons li .facebook { background-image:url(/dealers/search/images/icon_social_facebook.svg); }
section.search-result .social-icons li .twitter { background-image:url(/dealers/search/images/icon_social_twitter.svg); }
section.search-result .social-icons li .instagram { background-image:url(/dealers/search/images/icon_social_instagram.svg); }
section.search-result .social-icons li .line { background-image:url(/dealers/search/images/icon_social_line.svg); }
section.search-result .dealer-box .buttons .button { height:40px; width:48.5%; }

/* map pane */
section.search-result .result-view .map-pane { height:100%; padding-left:20px; position:relative; }
section.search-result .result-view .map-pane iframe { min-height:860px; }
section.search-result .result-view .detail-pane.for-maps { display:none; }
section.search-result .finded-for .nohits { display:none; }



section.search-result[view-mode="dual"] .result-view .map-pane .service-icons{display:none;}
section.search-result[view-mode="dual"] .result-view .map-pane .dealer-name{margin-bottom:0;}
section.search-result[view-mode="dual"] .result-view .map-pane .dealer-detail li{display:none;}
section.search-result[view-mode="dual"] .result-view .map-pane .dealer-detail{min-width:120px;}
section.search-result[view-mode="dual"] .result-view .map-pane .dealer-thumbnail{}
section.search-result[view-mode="dual"] .result-view .map-pane .social-icons{display:none;}
section.search-result[view-mode="dual"] .result-view .map-pane .buttons .button{width:48%}



/* ---------
 detail view
-----------*/

section.search-result[view-mode="detail"] .result-view .detail-pane { width:100%; }
section.search-result[view-mode="detail"] .result-view .detail-pane .detail-inner { overflow: auto; }
section.search-result[view-mode="detail"] .result-view .map-pane { display:none; }
section.search-result[view-mode="detail"] .view-control .view-select .button.detail a { background-color:#000; color:#fff; }
section.search-result[view-mode="detail"] .result-view .dealer-box .left-group { float:left; }
section.search-result[view-mode="detail"] .result-view .dealer-box .right-group { float:right; width:320px; }
section.search-result[view-mode="detail"] .result-view .dealer-box .dealer-detail { margin-bottom:0; }
section.search-result[view-mode="detail"] .result-view .map-pane .dealer-thumbnail{display:none;}

/* ---------
 map view
-----------*/

section.search-result[view-mode="map"] .detail-pane { display:none; }
section.search-result[view-mode="map"] .map-pane { width:100%; padding-left:0; }
section.search-result[view-mode="map"] .view-control .view-select .button.map a { background-color:#000; color:#fff; }
section.search-result[view-mode="map"] .result-view .map-pane .dealer-thumbnail{display:none;}
section.search-result[view-mode="map"] .result-view .map-pane .buttons .button{width:48%}
section.search-result[view-mode="map"] .service-icons { margin-bottom:10px; }
section.search-result[view-mode="map"] .dealer-detail { margin-bottom:10px; }
section.search-result[view-mode="map"] .social-icons { margin-bottom:15px; }

/* ---------
 no-hit
-----------*/

section.search-result[view-mode="no-hit"] .finded-for .hits { display:none; }
section.search-result[view-mode="no-hit"] .finded-for .nohits { display:block; }
section.search-result[view-mode="no-hit"] .result-view { display:none; }
section.search-result[view-mode="no-hit"] .view-select { display:none; }



/* -------------------------
	  for mobile
---------------------------- */
@media screen and (max-width:767px){
	body { font-size:12px; }

	header .inner,
	section .inner { width:100%; min-width:0px; }

	/*section .grid[class*="col"] > * { float:none; width:auto; }*/
	section .inner { padding:20px; }
	section .sp-nobr br { display:none; }

	/*section.search-change { display:block; }*/
	section.search-change { display: none; }
	section.search-change .button { height:45px; width:100%; }
	section.search-change .button a { padding:0 15px; }

	section.headline { margin:20px 0; }
	section.headline h1 { font-size:30px; margin-bottom:20px; }

	/*section.search-tools { position:fixed; display:none; top:90px; }*/
	section.search-tools { margin-bottom: 0; }
	section.search-tools .area-select { margin-bottom:0; }
	section.search-tools .input-area { border:1px solid #000; padding:20px; }
	section.search-tools .input-area .dropdown { width:auto; float:none; margin-right:0; margin-bottom:10px;  }
	section.search-tools .input-area .text-input { width:auto; float:none; margin-right:0; margin-bottom:10px;  }

	section.search-tools .filter-select .filter-toggle { display:none; }
	section.search-tools .filter-select .filter-items > * { width:48.5%; margin-right:0; float:left; }
	section.search-tools .filter-select .filter-items > *:nth-child(2n) { float:right; }

	section.search-tools .acc_panel { max-height: 230px; }

	section.search-tools .button { width:100%; }
	section.search-tools .icon-detail { display:none; }

	section.search-result { margin-bottom:30px; }
	section.search-result .view-control.grid > * { float:none; width:100%; }
	section.search-result .view-control .view-select { margin-bottom:30px; padding-bottom:30px; border-bottom:1px dotted #000; }
	section.search-result .view-control .view-select > .grid { float:left; }
	section.search-result .view-control .view-select .head { line-height:25px; }
	section.search-result .view-control .view-select .button { width:92px; height:25px; }
	section.search-result .view-control li.button.dual { display:none; }
	section.search-result .view-control .finded-for { font-size:14px; }

	section.search-result .dealer-name { font-size:14px; }
	section.search-result .dealer-detail { font-size:12px; }

	section.search-result .social-icons { margin-bottom:15px; }
	section.search-result .social-icons li { float:left; margin-right:10px; }
	section.search-result .social-icons li a { width:37px; height:37px; border-radius:5px; }
	/* ---------
	 sp default
	----------- */
	section.search-result .result-view .detail-pane { width:100%; }
	section.search-result .result-view .map-pane { display:none; }
	section.search-result .result-view .detail-pane.for-maps { display:none; }

	section.search-result .result-view .detail-pane .detail-inner { overflow: auto; padding-right:0; }

	section.search-result .result-view .dealer-box .left-group { float:none !important; }
	section.search-result .result-view .dealer-box .right-group { float:none !important; width:auto !important; }
	section.search-result .result-view .dealer-box .dealer-detail { margin-bottom:15px !important; }


	/* ---------
	 map view
	----------- */
	section.search-result[view-mode="map"] .detail-pane { display:none; }
	section.search-result[view-mode="map"] .map-pane { display:block; width:100%; height:340px; padding-left:0; }
	section.search-result[view-mode="map"] .detail-pane.for-maps { display:block; }
	section.search-result[view-mode="map"] .detail-pane.for-maps .dealer-box { border-top:none; border-bottom:1px dotted #000; }
	section.search-result[view-mode="map"] .view-control .view-select .button.map a { background-color:#000; color:#fff; }

	section.search-result[view-mode="map"] .view-control .view-select { border-bottom:none; padding-bottom:0; margin-bottom:0; }
	section.search-result[view-mode="map"] .view-control .finded-for { display:none; }

	#map {
		margin-bottom: 10px;
	}

}
