.page_header_container_shadow{
  margin-bottom: 0;
}
.page_header {
  margin-bottom: 0;
}
/********end reset********/
/*--------------------------------------
    hero
--------------------------------------*/
.index_hero {
  width: 100%;
  height: 420px;
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
  background: #f2f2f2;
}
.index_hero .freeword_search {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: 249px;
  width: 750px;
  z-index: 4;
  display: flex;
  align-items: center;
}
.index_hero_text{
  color: #fff;
  position: absolute;
  left: 0;
  top: 157px;
  width: 100%;
  z-index: 4;
  text-align: center;
  font-size: 39px;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.6);
  font-weight: bold;
  
}
.index_hero_movie_wrapper{
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  z-index: 3;
}
video.index_hero_movie{
  position: absolute;
  top: -100%;
  left: -100%;
  right: -100%;
  bottom: -100%;
  margin: auto;
  min-width: 100%;
  min-height: 420px;
  width: auto;
  height: auto;
  z-index: 1;
}
.index_hero_overlay{
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: url(/img/top2017/index_movie_overlay.png);
  z-index: 2;
}
.freeword_search .title_container {
  background: url(/img/top2017/hero_form_title_bg.png) no-repeat;
  background-size: 245px 60px;
  width: 245px;
  height: 60px;
  position: relative;
}
.freeword_search .title_container .title {
  position: absolute;
  left: 0;
  top: 0;
  width: 235px;
  height: 33px;
  line-height: 33px;
  color: #fff;
  font-weight: bold;
  text-align: center;
  font-size: 1.8rem;
}
.freeword_search .title_container .num {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 235px;
  height: 26px;
  line-height: 26px;
  color: #fff;
  font-weight: bold;
  text-align: center;
  font-size: 1.4rem;
}
.freeword_search .title_container .num .s {
  font-size: 1.2rem;
}
.freeword_search .form {
  display: flex;
}
.freeword_search .input_wrapper {
  background: rgba(255,255,255,.95);
  width: 450px;
  height: 60px;
  border-radius: 5px 0 0 5px;
  margin-left: -10px;
  border: 1px solid #eee;
  border-right: none;
  box-sizing: border-box;
  position: relative;
}
.freeword_search .input_wrapper input {
  display: block;
  box-sizing: border-box;
  font-size: 1.8rem;
  width: 448px;
  height: 100%;
  padding: 0 2rem;
  background: transparent;
  border: none;
  outline: none;
  box-shadow: none;
}
.freeword_search .submit {
  display: block;
  height: 60px;
  width: 60px;
  background: #666;
  border: none;
  outline: none;
  cursor: pointer;
  border-radius: 0 5px 5px 0;
  border-left: none;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}
.freeword_search .submit:hover {
  background: #999;
}
.freeword_search .submit .text {
  position: absolute;
  top: -200px;
  display: block;
}
.freeword_search .submit .fa-search {
  color: #fff;
  font-size: 27px;
}
.freeword_search .btn_detail_search {
  position: absolute;
  top: 14px;
  left: calc(100% + 25px);
  /*add 2018.8.7*/
  display: none;
}
.freeword_search .btn_detail_search a {
  display: block;
  padding: 9px;
  background: #FBFBFB;
  color: #666;
  font-size: 1.3rem;
  text-decoration: none;
  white-space: nowrap;
  border-radius: 2px;
  border: 1px solid #eee;
}
.freeword_search .btn_detail_search a:hover {
  background: #f2f2f2;
}

/*--------------------------------------
    freeword_search_model_suggest
--------------------------------------*/
.freeword_search_model_suggest{
  display: none;
  position: absolute;
  left: 0;
  top: calc(100% + 2px);
}
.freeword_search_model_suggest .list{
  display: flex;
  flex-wrap: wrap;
  width: 520px;
}
.freeword_search_model_suggest .list li {
  display: flex;
  width: 170px;
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
.freeword_search_model_suggest .list li:nth-child(3n + 1) {
  border-left: 1px solid #ddd;
}
.freeword_search_model_suggest .list li a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  padding: .7em;
  color: inherit;
  background: #fff;
}
.freeword_search_model_suggest .list li a:hover {
  text-decoration: none;
  background: #f2f2f2;
}
.freeword_search_model_suggest .list li .maker_name {
  display: block;
  margin-bottom: .5em;
  font-size: 1rem;
}
.freeword_search_model_suggest .list li .model_name {
  display: block;
  font-size: 1.2rem;
  font-weight: bold;
}

/*--------------------------------------
    personal_contents
--------------------------------------*/
.personal_contents {
  display: flex;
  border: 4px solid #e5e5e5;
  box-sizing: border-box;
}
.personal_contents .box {
  width: 33.333%;
}
.personal_contents .box:not(:last-child) {
  border-right: 4px solid #e5e5e5;
}
.personal_contents .title_container {
  background: #F6F6F6;
  padding: 10px 15px;
  display: flex;
  justify-content: space-between;
}
.personal_contents .contents {
  padding: 15px;
  display: table;
  width: 100%;
  min-height: 154px;
  box-sizing: border-box;
}
.personal_contents .zero_text {
  display: table-cell;
  font-size: 1.2rem;
  line-height: 1.6;
  color: #999;
  text-align: center;
  vertical-align: middle;
}
.personal_contents .car_list:not(:last-child) {
  margin-bottom: 10px;
}
.personal_contents .car_list a {
  display: block;
  color: #333;
  text-decoration: none;
}
.personal_contents .car_list a:hover {
  opacity: .7;
}
.personal_contents .car_list dl {
  display: flex;
  align-content: center;
  /*IE11*/
  width:298px;
}
.personal_contents .car_list dt {
  margin-right: 10px;
}
.personal_contents .car_list dd {
  font-size: 1.2rem;
  line-height: 1.2;
  font-weight: bold;
}
.personal_contents .car_list img {
  width: 75px;
  height: 57px;
}
.personal_contents .search_list li {
  width: 295px;
  border-bottom: 1px solid #eee;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 1.2rem;
  font-weight: bold;
  padding: .75em 0;
}
/*--------------------------------------
    easy_search
--------------------------------------*/
.easy_search{
  border: 1px solid #E5E5E5;
  border-radius: 6px;
  display: flex;
  min-height: 200px;
}
.easy_search__item_step{
  width: 200px;
  padding: 1.2em .6em 1.2em 1.2em;
  position: relative;
  margin-right: 40px;
  display: flex;
  flex-direction: column;
}
.easy_search__item_step::before {
  position: absolute;
  content: '';
  width: 45px;
  height: 100%;
  background: url(/img/top2017/easysearch_arrow.png) no-repeat center right/cover;
  top: 0;
  bottom: 0;
  left: 100%;
  margin: auto;
}
.easy_search__item_step .easy_search__item_step__title{
  text-align: center;
  margin-bottom: .8em;
}
.easy_search__item_step .easy_search__item_step__title .step{
  color: #A30000;
  font-size: 1.4rem;
  margin-right: .6em;
}
.easy_search__item_step .easy_search__item_step__title .step .step__num{
  font-size: 2rem;
  font-weight: bold;
}
.easy_search__item_step .easy_search__item_step__image{
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.easy_search__item_step .easy_search__item_step__image img{
  width: 74px;
  height: 60px;
}
.easy_search__item_step .easy_search__item_step__form select{
  width: 100%;
  font-size: 1.2rem;
  padding: 6px 34px 6px 6px;
  height: auto;
}

.easy_search__item_step .easy_search__item_step__form .slider_val_wrapper{
  display: flex;
  justify-content: space-between;
  margin-bottom: .4em;
}
.easy_search__item_step .easy_search__item_step__form .slider_val_wrapper .slider_val_input{
  padding: 0;
  font-size: 1.2rem;
  width: 8em;
  height: auto;
  border: none;
}
.easy_search__item_step .easy_search__item_step__form .slider_val_wrapper .slider_val_input:last-child{
  text-align: right;
}
.easy_search__item_step .easy_search__item_step__form .formslider_wrapper{
  height: 26px;
  padding: 0;
}
/* form slider overwrite css */
.formslider {
	height: 6px;
	position: relative;
	background:#ccc;
  top:10px;
  max-width: 80%;
  margin:0 auto;
}
.formslider .ui-state-default, .formslider .ui-widget-content .ui-state-default, .formslider .ui-widget-header .ui-state-default, .formslider.ui-widget-content {
	border: none;
}
.formslider .ui-corner-all, .formslider.ui-corner-all {
	border-radius:0;
}
.formslider .ui-widget-header {
	border: none;
}
.formslider .ui-slider-handle {
	cursor: default;
	position: absolute;
	z-index: 2;
  width:24px;
  height: 24px;
  background: #fff;
  border:1px solid #ccc;
  border-radius: 50%;
	margin-left: -13px;
	bottom:-10px;
}
.formslider .ui-slider-range {
	height: 100%;
	top: 0;
	display: block;
	position: absolute;
	z-index: 1;
	background:#666;
}
/* form slider overwrite css end. */
.easy_search__item_button{
  flex: 1;
  /* background: green; */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.easy_search__item_button .easy_search__item_button__carnum{
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: .6em;
}
.easy_search__item_button .easy_search__item_button__carnum .easy_search__item_button__carnum__title{
  font-weight: normal;
}
.easy_search__item_button .easy_search__item_button__carnum .easy_search__item_button__carnum__num{
  font-size: 1.6rem;
}
.easy_search__item_button .btn {
  display: inline-block;
  padding: 11px 12px;
  margin-bottom: 0;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.1;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  border: 2px solid transparent;
  border-radius: 4px;
  box-sizing: border-box;
  width: 150px;
  color: #fff;
  background: #3f68f6;
  border-bottom-color: #122d8c;
}
.easy_search__item_button .btn:hover {
  text-decoration: none;
	opacity: 0.8;
}
.easy_search__item_button .btn.inactive{
  opacity: .6;
  pointer-events: none;
}
/*--------------------------------------
    section_maker
--------------------------------------*/
.title_link_container {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.section_maker .maker_list_container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.section_maker .maker_list {
  width: 480px;
}
.section_maker .maker_list .box_container {
  display: flex;
  flex-wrap: wrap;
}
.section_maker .maker_list .box {
  position: relative;
  width: 20%;
}
.section_maker .maker_list .box:nth-child(-n+5) {
  margin-bottom: 2em;
}
.section_maker .maker_list .box .name {
  text-align: center;
}
.section_maker .maker_list .box .name a {
  display: block;
  height: 95px;
  color: #333;
  font-size: 1.2rem;
  text-decoration: none;
  margin-bottom: 5px;
  line-height: 1.1;
}
.section_maker .maker_list .box .name a:hover {
  opacity: .7;
}
.section_maker .maker_list .box .name img {
  display: block;
  margin: 0 auto 13px;
}
.section_maker .maker_list .btn_dummy {
  width: 70px;
  height: 19px;
  box-sizing: border-box;
  line-height: 17px;
  background: #eee;
  border-radius: 2px;
  margin: 0 auto;
  cursor: default;
  text-align: center;
}
.section_maker .maker_list .popular_cars:hover .btn_dummy {
  background: #fff;
}
.section_maker .maker_list .btn_dummy:after {
  content: "\f107";
  font-family: FontAwesome;
  color: #bbb;
}
.section_maker .maker_list .popular_cars .list {
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s linear 0.2s, opacity 0.2s linear;
  position: absolute;
  z-index: 1;
  left: 0;
  top: 100%;
  z-index: 2;
  background: #fff;
  box-shadow: 0 1px 5px rgba(0,0,0,.15);
  padding: 20px 10px 10px 20px;
  width: 560px;
  box-sizing: border-box;
}
.section_maker .maker_list.import .popular_cars .list {
  left: auto;
  right: 0;
  padding: 20px 10px 10px 20px;
}
.section_maker .maker_list .popular_cars:hover .list {
  visibility: visible;
  opacity: 1;
  transition-delay: 0.25s;
}
.popular_cars .title_popular {
  font-size: 1.2rem;
  margin-bottom: .5em;
}
.popular_cars .list ul {
  display: flex;
  flex-wrap: wrap;
}
.popular_cars .list li {
  width: 33.3%;
  margin-bottom: 10px;
  box-sizing: border-box;
}
.popular_cars .list li a {
  text-decoration: none;
  display: table;
  width: 100%;
}
.popular_cars .list li a:hover {
  opacity: .7;
}
.popular_cars .list li a img {
  display: table-cell;
  width: 65px;
  height: 50px;
  padding-right: 7px;
}
.popular_cars .list li a .text {
  display: table-cell;
  width: 100%;
  vertical-align: middle;
  padding-right: 10px;
  font-size: 1.2rem;
  line-height: 1.1;
}
/*--------------------------------------
    section_bodytype
--------------------------------------*/
.car_bodytype_list {
  display: flex;
  flex-wrap: wrap;
}
.car_bodytype_list li {
  margin-right: 17px;
}
.car_bodytype_list li:nth-child(8n) {
  margin-right: 0;
}
.car_bodytype_list li:nth-child(-n+8) {
  margin-bottom: 17px;
}
.car_bodytype_list li a {
  display: block;
  width: 110px;
  height: 100px;
  background: #fff;
  box-sizing: border-box;
  border: 1px solid #f2f2f2;
  text-align: center;
  text-decoration: none;
  padding-top: 10px;
}
.car_bodytype_list li a .text {
  margin-top: 10px;
  display: block;
  color: #333;
  font-weight: bold;
  font-size: 1.2rem;
  line-height: 1.1;
}
.car_bodytype_list li a:hover img, .car_bodytype_list li a:hover .text {
  opacity: .7;
}
/*--------------------------------------
    section_area
--------------------------------------*/
.section_area{
  width: 50%;
}
.area_link_list {
  display: flex;
  flex-wrap: wrap;
}
.area_link_list .box {
  position: relative;
  margin-right: 10px;
}
.area_link_list .box:first-child {
  margin-bottom: 10px;
}
.area_link_list .box .link_container {
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s linear 0.2s, opacity 0.2s linear;
  position: absolute;
  z-index: 1;
  left: 0;
  top: 100%;
  z-index: 2;
  background: #fff;
  box-shadow: 0 1px 5px rgba(0,0,0,.15);
  padding: 20px 20px 7px 20px;
  width: 320px;
  box-sizing: border-box;
}
.area_link_list .box:hover .link_container {
  visibility: visible;
  opacity: 1;
  transition-delay: 0.15s;
}
.area_link_list .box .area_title {
  position: relative;
  background: #f2f2f2;
  border: 1px solid #ccc;
  padding: .7em 1em;
  border-radius: 2px;
  color: #666;
  font-weight: bold;
  cursor: default;
}
.area_link_list .box:hover .area_title {
  background: #fff;
  border: 1px solid #fff;
}
.area_link_list .box .link_container li {
  display: inline-block;
  margin-right: 18px;
  margin-bottom: 13px;
}
.area_link_list .box .link_container .city_title {
  font-size: 1.2rem;
  margin-bottom: .7em;
}
/*--------------------------------------
    section_area_carshop
--------------------------------------*/
.section_area_carshop {
  display: flex;
}
.section_area, .section_carshop {
  width: 50%;
}
input[type="text"], input[type="number"], input[type="tel"], input[type="email"], input[type="password"], textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none;
  outline: none;
  max-width: 100%;
  box-sizing: border-box;
  box-shadow: none;
  color: #333;
  font-family: inherit;
  font-size: 1.6rem;
  border: 1px solid #ccc;
  background-color: #F8F8F8;
  padding: 8px;
  height: 40px;
  border-radius: 2px;
}
textarea {
  height: auto;
}
input:focus, textarea:focus, select:focus {
  background-color: #ecf9ff;
}
select {
  padding: 8px 34px 8px 8px;
  background-image: url(/img/form/select_arrow_new.png);
  background-repeat: no-repeat;
  background-position: right center;
}
select::-ms-expand {
 display: none;
}
.btn_submit_toppage {
  display: inline-block;
  height: 40px;
  width: 40px;
  background: #666;
  border: none;
  outline: none;
  cursor: pointer;
  border-radius: 2px;
  position: relative;
  overflow: hidden;
}
.btn_submit_toppage:hover {
  background: #999;
}
.btn_submit_toppage .text {
  position: absolute;
  top: -200px;
  display: block;
}
.btn_submit_toppage .fa-search {
  color: #fff;
  font-size: 18px;
}
/*--------------------------------------
    section_carshop
--------------------------------------*/
.search_carshop_container {
  display: flex;
  align-items: center;
}
.search_carshop_container .title {
  border: 2px solid #666;
  padding: 5px 7px;
  background: #fff;
  color: #aaa;
  white-space: nowrap;
  cursor: pointer;
  font-size: 1.2rem;
  font-weight: normal;
}
.search_carshop_container .title.active {
  background: #666;
  color: #fff;
}
.search_carshop_container .title.code {
  order: 2;
  margin-right: 15px;
}
.search_carshop_container .title.freeword {
  order: 1;
  border-right: none;
}
.search_carshop_container .form.freeword {
  order: 3;
}
.search_carshop_container .form.code {
  order: 4;
  display: none;
}
/*--------------------------------------
    section_spec
--------------------------------------*/
.section_spec{
  display: flex;
}
.section_spec > *{
  width: 200px;
}
.section_spec > *:not(:last-child){
  margin-right: 50px;
}
.spec_link_list li:not(:last-child){
  margin-bottom: .8em;
}
.spec_link_list a{
  display: block;
  border: 1px solid #ddd;
  border-radius: 4px;
  text-align: center;
  padding: 7px 10px;
  color: #666;
  background: #fff;
}
.spec_link_list a:hover{
  text-decoration:none;
	background: #f2f2f2;
}
/*--------------------------------------
    feature_link_list
--------------------------------------*/
.feature_link_list{
  display: flex;
  justify-content: space-between;
  margin-bottom: 1em;
}
.feature_link_list > *:not(:last-child){
  margin-right: .8em;
}
.feature_link_list li{
  display: flex;
  flex: 1;
}
.feature_link_list a{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border: 1px solid #ddd;
  border-radius:4px;
	text-align:center;
	padding: .7em;
  color:#666;
  font-size: 1.2rem;
  white-space: nowrap;
	background: #fff;
}
.feature_link_list a:hover {
	text-decoration:none;
	background: #f2f2f2;
}
.feature_link_list a::before {
  content: "";
  width: 35px;
  height: 24px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  margin-right: .5em;
}
.feature_link_list a.smallcar::before {
  background-image: url(/img/top2017/directsearch_smallcar.png);
}
.feature_link_list a.unused::before {
  background-image: url(/img/top2017/directsearch_unused.png);
}
.feature_link_list a.vintage::before {
  background-image: url(/img/top2017/directsearch_vintage.png);
}
.feature_link_list a.supercar::before {
  background-image: url(/img/top2017/directsearch_supercar.png);
}
.feature_link_list a.welfare::before {
  background-image: url(/img/top2017/directsearch_welfare.png);
}
.feature_link_list a.camper::before {
  background-image: url(/img/top2017/directsearch_camper.png);
}

/*--------------------------------------
    search_history_list
--------------------------------------*/
.search_history_list{
  display: flex;
  margin-top: 1em;
  font-size: 1.2rem;
}
.search_history_list dt{
  margin-right: .3em;
  white-space: nowrap;
}
.search_history_list dt:after{
  content: "：";
}
.search_history_list dd{
  font-weight: bold;
}
.search_history_list dd.shop_name{
  overflow: hidden;
  white-space: nowrap;
  max-width:20em;
  text-overflow: ellipsis;
  margin-right: 2em;
}
/*--------------------------------------
    feature_container
--------------------------------------*/
.feature_container {
  display: flex;
}
.nintei_usedcar, .egs_usedcar {
  position: relative;
}
.nintei_usedcar {
  margin-right: 20px;
}
.nintei_usedcar a.link_block, .egs_usedcar a.link_block {
  display: block;
  border: 1px solid #ddd;
  width: 490px;
  height: 120px;
  padding: 15px 15px 15px 120px;
  box-sizing: border-box;
  color: #333;
  text-decoration: none;
}
.nintei_usedcar a.link_block:hover, .egs_usedcar a.link_block:hover {
  opacity: .7;
}
.nintei_usedcar a.link_block {
  background: url(/img/top2017/img_nintei.png) no-repeat 10px center;
}
.egs_usedcar a.link_block {
  background: url(/img/top2017/img_egs.png) no-repeat 10px center;
}
.nintei_usedcar a.link_block p, .egs_usedcar a.link_block p {
  line-height: 1.2;
}
.nintei_usedcar a.link_about, .egs_usedcar a.link_about {
  position: absolute;
  right: 15px;
  bottom: 15px;
  font-size: 1.2rem;
  font-weight: bold;
}
/*--------------------------------------
    dealer_link_list
--------------------------------------*/
.dealer_link_list{
  display: flex;
  flex-wrap: wrap;
}
.dealer_link_list li {
  width: 25%;
  margin: 5px 0;
}
.dealer_link_list a {
  display: block;
  margin: 0 auto;
  background: url(/img/carsearch/dealer/btn_dealer_bg.png) no-repeat;
  width: 201px;
  /* height: 88px; */
  position: relative;
  text-align: center;
  line-height: 75px;
  text-decoration: none;
}
.dealer_link_list a::after {
  content: "";
	position: absolute;
	left: 17px;
	top: 2px;
	display: none;
	width: 166px;
	height: 59px;
	background: url(/img/carsearch/dealer/btn_dealer_light.png) no-repeat;
}
.dealer_link_list a:hover::after {
	display: block;
}

/*--------------------------------------
    ranking
--------------------------------------*/
.bg_section {
  background: #f2f2f2;
  padding: 3em 0;
}
.overall_ranking {
  display: flex;
  flex-wrap: wrap;
}
.overall_ranking .box {
  position: relative;
  text-align: center;
}
.overall_ranking .box .no {
  position: absolute;
  left: 10px;
  top: 10px;
}
.overall_ranking .box a {
  text-decoration: none;
}
.overall_ranking .box a:hover {
  opacity: .7;
}
.overall_ranking .box .text {
  display: block;
  font-weight: bold;
  text-align: left;
  margin: 1rem 0 2rem 4rem;
}
.overall_ranking .box dd {
  display: flex;
}
.overall_ranking .box .spec {
  text-align: left;
  height: 92px;
  width: 93px;
  margin-top: .5rem;
}
.overall_ranking .box .spec dt,
.overall_ranking .box .spec dd .s {
  color: #333;
  font-size: 1.2rem;
  line-height: 1.6rem;
  margin-bottom: .5rem;
}
.overall_ranking .box .spec dd {
  color: #333;
  font-size: 1.8rem;
  line-height: 1.6rem;
  font-weight: bold;
  margin-bottom: 2rem;
}
.overall_ranking .box.no_4 .spec dd,
.overall_ranking .box.no_5 .spec dd,
.overall_ranking .box.no_6 .spec dd,
.overall_ranking .box.no_7 .spec dd {
  font-size: 1.6rem;
  margin-bottom: .5rem;
}
.overall_ranking .no_1, .overall_ranking .no_2, .overall_ranking .no_3 {
  width: 320px;
  padding: 10px;
  box-sizing: border-box;
  background: #fff;
  margin-bottom: 1.5em;
}
.overall_ranking .no_1 .no, .overall_ranking .no_2 .no, .overall_ranking .no_3 .no {
  width: 30px;
  height: 30px;
  line-height: 26px;
  box-sizing: border-box;
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  font-size: 1.6rem;
  text-align: center;
}
.overall_ranking .no_1 .no {
  background: #e48204;
  border: 2px solid #feb500;
}
.overall_ranking .no_2 .no {
  background: #6c7e8a;
  border: 2px solid #9ba8b2;
}
.overall_ranking .no_3 .no {
  background: #b24816;
  border: 2px solid #d5773b;
}
.overall_ranking .no_4 .no, .overall_ranking .no_5 .no, .overall_ranking .no_6 .no, .overall_ranking .no_7 .no {
  width: 22px;
  height: 22px;
  line-height: 22px;
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  font-size: 1.4rem;
  text-align: center;
  background: #999;
}
.overall_ranking .no_1 img, .overall_ranking .no_2 img, .overall_ranking .no_3 img {
  width: 190px;
  height: 142px;
  margin-right: 1rem;
}
.overall_ranking .no_1, .overall_ranking .no_2 {
  margin-right: 20px;
}
.overall_ranking .no_4, .overall_ranking .no_5, .overall_ranking .no_6, .overall_ranking .no_7 {
  width: 235px;
  padding: 10px;
  box-sizing: border-box;
  background: #fff;
  margin-bottom: 1.5em;
}
.overall_ranking .no_4 img, .overall_ranking .no_5 img, .overall_ranking .no_6 img, .overall_ranking .no_7 img {
  width: 120px;
  height: 90px;
  margin-right: 1rem;
}
.overall_ranking .no_4, .overall_ranking .no_5, .overall_ranking .no_6 {
  margin-right: 20px;
}
.bodytype_ranking_container {
  display: flex;
  flex-wrap: wrap;
}
.bodytype_ranking_container .box {
  width: 490px;
  padding: 15px;
  box-sizing: border-box;
  background: #fff;
}
.bodytype_ranking_container .box:nth-child(odd) {
  margin-right: 20px;
}
.bodytype_ranking_container .box:nth-last-child(n+3) {
  margin-bottom: 10px;
}
.bodytype_ranking_container .box dl {
  display: table;
  width: 100%;
  table-layout: fixed;
  line-height: 1.2;
}
.bodytype_ranking_container .box dt {
  display: table-cell;
  width: 1.7em;
}
.bodytype_ranking_container .box dd {
  display: table-cell;
  padding-right: 2em;
  word-wrap: break-word;
}
.bodytype_ranking_container .box dt:after {
  content: ".";
}
/*--------------------------------------
    popular_keyword_list
--------------------------------------*/
.popular_keyword_list {
  letter-spacing: -.4em;
}
.popular_keyword_list li {
  display: inline-block;
  letter-spacing: normal;
}
.popular_keyword_list li a {
  display: block;
  margin-right: 10px;
  margin-bottom: 10px;
  background: #f2f2f2;
  border: 1px solid #ccc;
  padding: .7em 1em;
  border-radius: 2px;
  font-size: 1.2rem;
  color: #666;
  text-decoration: none;
}
.popular_keyword_list li a:hover {
  background: #fff;
  color: #999;
}
/*--------------------------------------
    section_usedcar_purchase
--------------------------------------*/
.purchase_step {
  display: flex;
}
.purchase_step .step {
  border: 4px solid #e5e5e5;
  border-right: none;
  background: #fff;
  width: 255px;
  box-sizing: border-box;
}
.purchase_step dl:nth-child(3) {
  border-right: 4px solid #e5e5e5;
}
.purchase_step .step dt {
  background: #fff5f4;
  box-sizing: border-box;
  padding: 7px 15px;
}
.purchase_step .step dt .num {
  display: inline-block;
  width: 22px;
  height: 22px;
  line-height: 22px;
  text-align: center;
  color: #fff;
  background: #900;
  border-radius: 50%;
  margin-right: .3em;
}
.purchase_step .step dt .text {
  font-weight: bold;
  color: #333;
}
.purchase_step .step dd, .purchase_step .after dd {
  min-height: 105px;
  box-sizing: border-box;
  padding: 15px;
  font-size: 1.2rem;
  line-height: 1.3;
  position: relative;
}
.purchase_step .step dd .link, .purchase_step .after dd .link {
  position: absolute;
  right: 15px;
  bottom: 11px;
}
.purchase_step .step dd .link a, .purchase_step .after dd .link a {
  margin-left: .8em;
}
.purchase_step .after {
  background: #fff;
  width: 25%;
  width: 220px;
  margin-left: 15px;
  box-sizing: border-box;
}
.purchase_step .after dt {
  font-weight: bold;
  color: #333;
  border-top: 4px solid #fff;
  height: 22px;
  line-height: 22px;
  padding: 7px 15px;
}
/*--------------------------------------
    qa_list
--------------------------------------*/
.qa_list .qa_list__item{
  border: 20px solid #F2F2F2;
  padding: 1.5em;
}
.qa_list .qa_list__item:not(:last-child){
  margin-bottom: 1em;
}
.qa_list .qa_list__item .qa_list__item__q{
  display: flex;
  align-items: center;
  margin-bottom: 1em;
}
.qa_list .qa_list__item .qa_list__item__q .text{
  flex: 1;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.2;
  color: #333;
}
.qa_list .qa_list__item .qa_list__item__q::before{
  content: "";
  width: 25px;
  height: 25px;
  background: url(/img/top2017/icon_q.svg) no-repeat center / contain;
  margin-right: 1em;
}
.qa_list .qa_list__item  .qa_list__item__a{
  background: url(/img/top2017/icon_a.svg) no-repeat left .5em /25px 25px;
  padding-left: calc(25px + .5em);
  line-height: 1.6;
  margin-bottom: 1em;
}
.qa_list .qa_list__item  .qa_list__item__readmore{
  text-align: right;
}

/*--------------------------------------
    online_concierge
--------------------------------------*/
.external_site_list{
  display: flex;
  justify-content: space-between;
}
.external_site_list a{
  width: 320px;
  height: 74px;
}
.external_site_list a:hover img{
	top:-75px;
}

/*--------------------------------------
    online_concierge
--------------------------------------*/
.banner_online_concierge {
  position: relative;
}
.banner_online_concierge .text {
  position: absolute;
  left: 154px;
  top: 75px;
  font-size: 1.2rem;
  line-height: 1.6;
}
.banner_online_concierge .text .link {
  display: block;
  text-align: right;
}
.banner_online_concierge .cta {
  position: absolute;
  right: 42px;
  top: 24px;
}
.banner_online_concierge a.btn_mail {
  display: inline-block;
  width: 250px;
  height: 40px;
  line-height: 40px;
  background: #de7a74;
  color: #fff;
  text-decoration: none;
  font-size: 1.6rem;
  border-bottom: 3px solid #BB4B48;
  border-radius: 3px;
}
.banner_online_concierge a:hover.btn_mail {
  background: #de8a85;
}
.banner_online_concierge a.btn_mail img {
  vertical-align: -2px;
}
/*--------------------------------------
    osusume_contents
--------------------------------------*/
.osusume_contents {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.osusume_contents .box {
  position: relative;
  width: 480px;
  box-sizing: border-box;
  font-size: 1.2rem;
  line-height: 1.5;
  padding-left: 80px;
  min-height: 63px;
  margin-bottom: 1.5em;
}
.osusume_contents .box a:hover img {
  opacity: .7;
}
.osusume_contents .box .title {
  margin-bottom: .3em;
}
.osusume_contents .box figure {
  position: absolute;
  left: 0;
  top: 0;
}
.osusume_contents .box .link_app {
  display: block;
  margin-top: .5em;
}
.osusume_contents.s .box {
  padding-left: 65px;
  min-height: 44px;
  margin-bottom: 1em;
}

/*--------------------------------------
    reviewstore
--------------------------------------*/
.reviewstore {
  display: flex;
}
.reviewstore li {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 23.5rem;
  border: 1px solid #ddd;
  padding: 2rem 2rem 1.5rem;
  background: #fff;
  border-radius: 6px;
}
.reviewstore li:not(:last-child) {
  margin-right: 2rem;
}
.reviewstore li h3 {
  font-size: 1.4rem;
  line-height: 1.9rem;
  flex-grow: 1;
}
.reviewstore li .reviewtotal {
  padding: 2rem 0;
}
.reviewstore li .reviewtext {
  font-size: 1.2rem;
  line-height: 2.1rem;
  height: 15rem;
}
.reviewstore li .date {
  position: absolute;
  right: 2rem;
  bottom: 1.5rem;
  font-size: 1.2rem;
  line-height: 2.1rem;
  text-align: right;
}
.reviewstore li .review_star {
  display: inline-block;
  width: 73px;
  height: 14px;
  overflow: hidden;
  position: relative;
  margin-right: 10px;
  margin-bottom: -1.5px;
}
.reviewstore li .review_star img {
  height: 65px;
}
.reviewstore li .review_star.rating_0_0 img {
  position:absolute;
  top: 0;
  left: -73px;
}
.reviewstore li .review_star.rating_0_5 img {
  position:absolute;
  top:-26px;
  left:-59px;
}
.reviewstore li .review_star.rating_1_0 img {
  position:absolute;
  top:0;
  left:-59px;
}
.reviewstore li .review_star.rating_1_5 img {
  position:absolute;
  top:-26px;
  left:-44px;
}
.reviewstore li .review_star.rating_2_0 img {
  position:absolute;
  top:0;
  left:-44px;
}
.reviewstore li .review_star.rating_2_5 img {
  position:absolute;
  top:-26px;
  left:-30px;
}
.reviewstore li .review_star.rating_3_0 img {
  position:absolute;
  top:0;
  left:-30px;
}
.reviewstore li .review_star.rating_3_5 img {
  position:absolute;
  top:-26px;
  left:-15px;
}
.reviewstore li .review_star.rating_4_0 img {
  position:absolute;
  top:0;
  left:-15px;
}
.reviewstore li .review_star.rating_4_5 img {
  position:absolute;
  top:-26px;
  left:0;
}
.reviewstore li .review_star.rating_5_0 img {
  position:absolute;
  top:0;
  left:0;
}
.reviewstore li .rating_num {
  color: #a30000;
  font-weight: bold;
  font-size: 1.4rem;
}

/*--------------------------------------
    featured_shop
--------------------------------------*/
.featured_shop {
  display: flex;
  justify-content: space-between;
}
.featured_shop .box {
  width: 320px;
  background: #fff;
}
.featured_shop .box .image {
  margin-bottom: 1em;
}
.featured_shop .box .image a:hover {
  opacity: .7;
}
.featured_shop .box .image img {
  width: 320px;
  height: auto;
}
.featured_shop .box .name {
  text-align: center;
  line-height: 1.2;
  padding: 0 15px;
  margin-bottom: 1em;
}
.featured_shop .box .name .pref {
  background: #f18700;
  color: #fff;
  font-size: 1.2rem;
  padding: 4px;
  margin-right: .5em;
}
.featured_shop .box .name a {
  font-size: 1.4rem;
  font-weight: bold;
}
.featured_shop .box .description {
  padding: 0 15px 15px 15px;
  font-size: 1.1rem;
  line-height: 1.7;
}
.link_symphony {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.2rem;
  line-height: 1.3;
}
.link_symphony .text, .link_symphony .link {
  margin-left: 1em;
}
.link_symphony .text {
  color: #999;
}
/*--------------------------------------
    kaitori
--------------------------------------*/
.kaitori_car_list {
  display: flex;
  justify-content: space-between;
}
.kaitori_car_list .box {
  width: 200px;
  text-align: center;
}
.kaitori_car_list .box .image {
  margin-bottom: .5em;
}
.kaitori_car_list .box .image a:hover {
  opacity: .7;
}
.kaitori_car_list .box .name {
  font-weight: bold;
  font-size: 1.6rem;
  margin-bottom: .5em;
}
.kaitori_car_list .box .name span {
  font-size: 1.2rem;
}
.kaitori_car_list .box .button a {
  display: inline-block;
  width: 130px;
  height: 28px;
  line-height: 28px;
  background: #c00;
  border-left: 1px solid #c00;
  border-top: 1px solid #c00;
  border-right: 1px solid #c00;
  border-bottom: 2px solid #820108;
  color: #fff;
  font-weight: bold;
  font-size: 1.2rem;
  border-radius: 2px;
  text-decoration: none;
}
.kaitori_car_list .box .button a:hover {
  border-left: 1px solid #820108;
  border-top: 1px solid #820108;
  border-right: 1px solid #820108;
  background: #fff;
  color: #c00;
}
.haisha_container {
  background: #fff5f4;
  padding: 15px;
}
.haisha_container .contents {
  display: flex;
}
.haisha_container .contents p {
  font-size: 1.2rem;
  line-height: 1.5;
  margin-right: 15px;
}
.haisha_container .contents .link {
  margin-right: 15px;
}
.haisha_container .contents .link a {
  display: inline-block;
  padding: .9em;
  border: 1px solid #e5e5e5;
  background: #fff;
  border-radius: 2px;
  font-size: 1.2rem;
  font-weight: bold;
  text-decoration: none;
}
.haisha_container .contents .link a:hover {
  background: rgba(255,255,255,.7);
}
/*--------------------------------------
    banner_container
--------------------------------------*/
.banner_container {
  display: flex;
  padding-left: 22px;
}
.banner_container .square_container img {
  width: 160px;
  height: 160px;
}
.banner_container .banner_list {
  display: flex;
  flex-wrap: wrap;
}
.banner_container .banner_list li {
  margin-left: 16px;
}
.banner_container a:hover {
  opacity: .7;
}
/*--------------------------------------
    site_summary
--------------------------------------*/
.site_summary {
  font-size: 1.2rem;
  line-height: 1.5;
}
/*--------------------------------------
    SNS carousel
--------------------------------------*/
.sns_carousel {
  position: relative;
}
.sns_carousel .bxslider .list {
  width: 220px !important;
  position: relative;
}
.sns_carousel .bxslider .list .title a:hover {
  text-decoration: none;
  opacity: .7;
}
.sns_carousel .bxslider .list .title img {
  max-width: 100%;
  height: auto;
}
.sns_carousel .bxslider .list .title .text {
  display: block;
  font-size: 1.2rem;
  line-height: 1.2;
  font-weight: bold;
  margin: .5em 0 .5em;
}
.sns_carousel .bxslider .list .description {
  font-size: 1.1rem;
  color: #999;
  line-height: 1.3;
  margin-bottom: .5em;
}
.sns_carousel .bxslider .list .user {
  text-align: right;
  font-size: 1.1rem;
  line-height: 1.2;
}
.sns_carousel .bxslider .list .user a {
  color: #999;
}
/** RESET AND LAYOUT
===================================*/
.sns_carousel .bx-wrapper {
  position: relative;
  padding: 0;/**zoom: 1;*/
}
/** THEME
===================================*/
.sns_carousel .bx-wrapper .bx-viewport {
  /*fix other elements on the page moving (on Chrome)*/
  -webkit-transform: translatez(0);
  -moz-transform: translatez(0);
  -ms-transform: translatez(0);
  -o-transform: translatez(0);
  transform: translatez(0);
}
.sns_carousel .bx-wrapper .bx-pager, .bx-wrapper .bx-controls-auto {
  position: absolute;
  bottom: -30px;
  width: 100%;
}
/* LOADER */
.sns_carousel .bx-wrapper .bx-loading {
  min-height: 50px;
  background: url(/img/top2017/bx_loader.gif) center center no-repeat #fff;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000;
}
/* DIRECTION CONTROLS (NEXT / PREV) */
.sns_carousel .bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 41px;
  outline: 0;
  width: 24px;
  height: 80px;
  box-sizing: border-box;
  text-indent: -9999px;
  z-index: 2;
  border: 1px solid #eee;
  background: #fff;
  text-decoration: none;
}
.sns_carousel .bx-wrapper .bx-controls-direction a:hover {
  background: #f2f2f2;
}
.sns_carousel .bx-wrapper .bx-controls-direction a.disabled {
  display: none;
}
.sns_carousel .bx-wrapper .bx-prev:before, .sns_carousel .bx-wrapper .bx-next:before {
  position: absolute;
  display: block;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 24px;
  height: 24px;
  line-height: 24px;
  text-align: center;
  font-family: FontAwesome;
  font-size: 2.5rem;
  color: #999;
  text-indent: 0;
}
.sns_carousel .bx-wrapper .bx-prev {
  left: -30px;
}
.sns_carousel .bx-wrapper .bx-prev:before {
  content: "\f104";
}
.sns_carousel .bx-wrapper .bx-next {
  right: -30px;
}
.sns_carousel .bx-wrapper .bx-next:before {
  content: "\f105";
}
/*--------------------------------------
    SBI banner
--------------------------------------*/
.sbi_banner_container{
  margin-left: auto;
  margin-right: auto;
  position: relative;
  width: 680px;
}
.sbi_banner_container .banner_sbi {
  width: 680px;
  height: 110px;
}
.sbi_banner_container .banner_sbi:hover img {
  opacity: 0.8;
}
.sbi_banner_container .link_sbi_solicitation {
  position: absolute;
  bottom:10px;
  left: 10px;
}
.sbi_banner_container .link_sbi_solicitation  a {
  font-weight:bold;
  font-size:1rem;
  color:#888;
}