.nowrap {
  white-space: nowrap; }

#wrapper, #content {
  max-width: none;
  background-color: #fff; }

#content * {
  box-sizing: border-box; }

.top-visual_mv h2 {
  display: block;
  max-width: 1200px;
  margin: 0 auto;
  position: relative; }
  .top-visual_mv h2 img {
    width: 100%; }
  .top-visual_mv h2 .movie {
    display: flex;
    position: absolute;
    bottom: 20px;
    }
    .top-visual_mv h2 .movie a {
      display: block;
      width: 180px;
      margin: 0 10px 10px 0;
      text-decoration: none; }
      .top-visual_mv h2 .movie a:hover {
        opacity: 0.8; }
      .top-visual_mv h2 .movie a span {
        display: block;
        margin-top: 0.5em;
        font-size: 12px;
        text-align: center;
        color: #000; }
  .top-visual_mv h2 .box-GDA {
        position: absolute;
        top: 334px;
        left: 3px;
        width: 380px;
  }
  .top-visual_mv h2 .box-GDA img {
      display: block;
      width: 100%;
      height: auto!important;
  }    
  .top-visual_mv h2 .box-RJC {
    position: absolute;
    top: 140px;
    left: 0px;
    width: 400px;
  }
  .top-visual_mv h2 .box-RJC img {
      display: block;
      width: 100%;
      height: auto!important;
  }    

  .top-visual_mv h2 .box-CTJ {
    position: absolute;
    top: 215px;
    left: 3px;
    width: 252px;
  }
  .top-visual_mv h2 .box-CTJ img {
      display: block;
      width: 100%;
      height: auto!important;
  }    
  .top-visual_mv h2 .logo {
    position: absolute;
    top: 28px;
    width: 300px;
    height: 64px; }
    .top-visual_mv h2 .logo .ef-feature1 {
      min-height: 60px;
      }
  .top-visual_mv h2 .copy {
    position: absolute;
    top: 99px;
    width: 263px;}
    .top-visual_mv h2 .copy .ef-txt {
      top: 0;
      left: 0; }
  .top-visual_mv h2 .price {
    position: absolute;
    top: 423px;
    width: 238px; }
    .top-visual_mv h2 .price .ef-feature1 {
      min-height: 60px; }

  .top-visual_mv h2 .box-COTY {
    position: absolute;
    top: 173px;
    left: 3px;
    width: 335px;
  }
  .top-visual_mv h2 .box-COTY img {
      display: block;
      width: 100%;
      height: auto!important;
  }    
.top-visual_mv .is-animate .ef-border:after {
  background-color: #000; }

body.pc_mode .top-visual_mv {
  background: url(../images/top-visual_mv.jpg) no-repeat;
  background-size: cover;
  background-position: center; }

body.sp_mode .top-visual_mv {
  background: url(../images/top-visual_mv-sp.jpg) no-repeat;
  background-size: cover;
  background-position: center; }

.top-banners {
  background-color: #f3f3f3;
  padding: 20px 0; }
  .top-banners .top-banners_area {
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
    overflow: hidden; }
    .top-banners .top-banners_area ul {
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; }
      .top-banners .top-banners_area ul li {
        display: block;
        margin: 0 5px; }
        .top-banners .top-banners_area ul li:hover {
          opacity: 0.8; }
        .top-banners .top-banners_area ul li a {
          position: relative;
          display: block; }
          .top-banners .top-banners_area ul li a:after {
            content: "";
            display: block;
            position: absolute;
            top: 0;
            bottom: 0;
            right: 0;
            left: 0;
            width: 100%; }
        .top-banners .top-banners_area ul li.new a:after {
          background: transparent url(/lineup/share_cm/images/top_bnr_new.png) left top no-repeat; }
  .top-banners .top-banners_indicator {
    display: none; }

@media screen and (max-width: 767px) {
  .top-visual_mv h2 .movie {
    width: 33.3333%;
    left: auto;
    right: 10px;
    bottom: 0px;
    margin-bottom: 5px; }
    .top-visual_mv h2 .movie a {
      width: 100%; }
  .top-visual_mv h2 .box-GDA {
    width: 40%;
    position: absolute;
    top: 17%;
    left: 3%;
    right: 24%;
  }
  .top-visual_mv h2 .box-COTY {
    width: 40%;
    position: absolute;
    top: 14%;
    left: auto;
    right: 3%;
  }
  .top-visual_mv h2 .box-RJC {
    width: 26.7%;
    position: absolute;
    top: 4%;
    left: 3.1%;
  }
  .top-visual_mv h2 .box-RJC img {
    width: 100%;
  }
  .top-visual_mv h2 .box-CTJ {
    width: 39%;
    position: absolute;
    top: 5%;
    left: 32.1%;
  }
  .top-visual_mv h2 .box-CTJ img {
    width: 100%;
  }
  .top-visual_mv h2 .copy {
    position: absolute;
    top: 4%;
    width: 44%;
    left: 28%;
    right: 28%;
  }
  .top-visual_mv h2 .price_sp {
    position: absolute;
    bottom: 5%;
    width: 44%;
    left: 4.1%; }
    .top-visual_mv h2 .price_sp .ef-feature1 {
      min-height: 11.3095vw; }
  .top-banners .top-banners_area ul li {
    margin-left: 10px; }
    .top-banners .top-banners_area ul li:last-child {
      padding-right: 10px; }
  .top-banners {
    padding-bottom: 0; }
    .top-banners .top-banners_area ul {
      margin: 0 10px;
      display: table; }
      .top-banners .top-banners_area ul li {
        padding-right: 10px;
        display: table-cell; }
    .top-banners .top-banners_indicator {
      display: block;
      max-width: 160px;
      margin: 0 auto;
      padding: 15px; }
      .top-banners .top-banners_indicator ul {
        display: flex;
        flex-direction: row;
        justify-content: space-around; }
        .top-banners .top-banners_indicator ul a {
          display: block;
          text-decoration: none;
          color: #555;
          font-size: 15px; }
        .top-banners .top-banners_indicator ul li.active a {
          color: #e50007; }
      .index_catalog_pdf {
        display: block!important;
      }
  }

.recommend-car {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  background-color: #FFFFFF;
  padding: 30px 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap; }
  .recommend-car .recommend-car-info {
    width: 645px;
    padding-right: 30px;
    text-align: right;
    position: relative;
    border-right: 1px solid #ccc; }
    .recommend-car .recommend-car-info .plan-title {
      width: 430px;
      height: 32px;
      line-height: 32px;
      margin-left: auto; }
    .recommend-car .recommend-car-info .plan-explain {
      width: 340px; }
  .recommend-car .recommend-car-info2 {
    width: 412px;
    border-right: 1px solid #ccc;
    padding-right: 30px;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end; }
    .recommend-car .recommend-car-info2 .plan-explain {
      width: auto; }
      .recommend-car .recommend-car-info2 .plan-explain ul li {
        margin-bottom: 20px; }
      .recommend-car .recommend-car-info2 .plan-explain article {
        margin-bottom: 20px; }
    .recommend-car .recommend-car-info2 .txt-e {
      display: block;
      text-align: right;
      padding-top: 4px;
      line-height: 1.4; }
  .recommend-car .recommend-car-btn a {
    width: 140px;
    padding-left: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    font-size: 14px;
    font-weight: bold;
    text-decoration: none;
    color: #000; }
    .recommend-car .recommend-car-btn a span {
      display: inline-block;
      height: 30px;
      line-height: 30px;
      padding-right: 12px; }
  .recommend-car .recommend-car-btn .wrap_svg {
    width: 30px;
    height: auto; }
    .recommend-car .recommend-car-btn .wrap_svg img[src$=".svg"] {
      width: 100%; }
  .recommend-car .recommend-car-btn:hover {
    opacity: 0.8; }
  .recommend-car h3 {
    position: absolute;
    top: 0;
    left: 0; }
    .recommend-car h3 span {
      display: block;
      font-size: 16px;
      font-weight: bold;
      margin-bottom: 16px; }
    .recommend-car h3 p {
      font-size: 12px;
      text-align: left; }
  .recommend-car .plan-title {
    font-size: 13px;
    font-weight: bold;
    padding: 0 30px;
    background: #000 url(../images/bar-deco_wh.png) left bottom no-repeat;
    color: #fff;
    position: relative;
    margin-bottom: 30px; }
  .recommend-car .plan-picture {
    width: 262px;
    float: left; }
    .recommend-car .plan-picture img {
      width: 100%; }
  .recommend-car .plan-explain {
    float: right;
    text-align: left; }
    .recommend-car .plan-explain article {
      display: inline-block;
      border-bottom: 2px solid #000;
      margin-bottom: 20px;
      padding-bottom: 10px; }
    .recommend-car .plan-explain .txt-a {
      font-size: 15px; }
    .recommend-car .plan-explain .txt-b {
      font-weight: bold;
      font-size: 35px; }
    .recommend-car .plan-explain .txt-c {
      font-size: 20px; }
    .recommend-car .plan-explain .txt-d {
      font-size: 12px;
      letter-spacing: 0.1em; }
    .recommend-car .plan-explain .txt-e {
      font-size: 10px; }
    .recommend-car .plan-explain .txt-f {
      font-size: 25px; }
    .recommend-car .plan-explain .txt-g {
      font-size: 18px; }
  .recommend-car .jc08 {
    position: relative; }
    .recommend-car .jc08:before {
      content: "";
      position: absolute;
      width: 40px;
      height: 13px;
      display: block;
      background: url(../images/ico-jc08.png) no-repeat;
      background-size: 40px auto;
      top: -13px;
      left: 2px; }
  .recommend-car .wltc {
    position: relative; }
    .recommend-car .wltc:before {
      content: "";
      position: absolute;
      width: 40px;
      height: 13px;
      display: block;
      background: url(../images/ico-wltc.png) no-repeat;
      background-size: 40px auto;
      top: -13px;
      left: 2px; }
  .recommend-car .recommend-car-info3 {
    width: 100%;
    margin: 30px 0 0 0; }
    .recommend-car .recommend-car-info3 .box-wrap {
      position: relative; }
      .recommend-car .recommend-car-info3 .box-wrap::after {
        content: '';
        display: block;
        clear: both; }
      .recommend-car .recommend-car-info3 .box-wrap::before {
        content: '';
        display: block;
        width: 1px;
        height: 100%;
        position: absolute;
        left: 50%;
        top: 0;
        border-left: solid 1px #ccc; }
      .recommend-car .recommend-car-info3 .box-wrap .box-info {
        position: relative;
        width: 46.25%;
        float: right; }
        .recommend-car .recommend-car-info3 .box-wrap .box-info:first-child {
          float: left; }
        .recommend-car .recommend-car-info3 .box-wrap .box-info .box {
          display: flex;
          justify-content: space-between;
          align-items: flex-end;
          margin-bottom: 10px;
          padding-bottom: 6px;
          border-bottom: solid 2px #000; }
          .recommend-car .recommend-car-info3 .box-wrap .box-info .box p {
            font-size: 14px; }
            .recommend-car .recommend-car-info3 .box-wrap .box-info .box p .txt-b {
              font-weight: bold;
              font-size: 28px; }
            .recommend-car .recommend-car-info3 .box-wrap .box-info .box p .txt-c {
              font-size: 16px; }
          .recommend-car .recommend-car-info3 .box-wrap .box-info .box.sub-box {
            border-bottom: none;
            margin-bottom: 4px;
            padding-bottom: 0; }
            .recommend-car .recommend-car-info3 .box-wrap .box-info .box.sub-box p {
              font-size: 14px; }
              .recommend-car .recommend-car-info3 .box-wrap .box-info .box.sub-box p .txt-b {
                font-weight: bold;
                font-size: 24px; }
              .recommend-car .recommend-car-info3 .box-wrap .box-info .box.sub-box p .txt-c {
                font-size: 13px; }
    .recommend-car .recommend-car-info3 h3 {
      position: relative; }
      .recommend-car .recommend-car-info3 h3 span {
        margin-bottom: 10px; }
    .recommend-car .recommend-car-info3 ul.mod-notes > li {
      font-size: 10px; }

@media screen and (max-width: 767px) {
  .recommend-car {
    flex-direction: column;
    padding-bottom: 0; }
    .recommend-car .recommend-car-info,
    .recommend-car .recommend-car-info2 {
      width: 100%;
      padding-right: 0;
      text-align: left;
      border-right: 0;
      display: block; }
      .recommend-car .recommend-car-info .plan-title,
      .recommend-car .recommend-car-info2 .plan-title {
        float: right;
        width: 58%;
        height: auto;
        line-height: 1.3;
        font-size: 10px;
        padding: 5px;
        padding-left: 25px;
        margin-top: 3%; }
      .recommend-car .recommend-car-info .plan-picture,
      .recommend-car .recommend-car-info2 .plan-picture {
        float: left;
        width: 41%; }
        .recommend-car .recommend-car-info .plan-picture img,
        .recommend-car .recommend-car-info2 .plan-picture img {
          width: 100%; }
      .recommend-car .recommend-car-info .plan-explain,
      .recommend-car .recommend-car-info2 .plan-explain {
        float: none;
        width: auto;
        clear: both;
        text-align: center;
        padding: 0 0 10px;
        margin: 0 15px;
        border-bottom: 1px solid #ccc; }
        .recommend-car .recommend-car-info .plan-explain article,
        .recommend-car .recommend-car-info2 .plan-explain article {
          min-width: 50.1%; }
    .recommend-car .recommend-car-info2 .plan-explain {
      padding-top: 30px; }
    .recommend-car .recommend-car-btn a {
      width: auto;
      padding: 30px; }
    .recommend-car h3 {
      position: static;
      text-align: center;
      margin-bottom: 10px; }
      .recommend-car h3 span {
        font-size: 16px;
        font-weight: bold; }
      .recommend-car h3 p {
        text-align: center;
        font-size: 11px; }
    .recommend-car .recommend-car-info3 {
      margin: 0 0 0 0; }
      .recommend-car .recommend-car-info3 .box-wrap {
        display: block; }
        .recommend-car .recommend-car-info3 .box-wrap::before {
          display: none; }
        .recommend-car .recommend-car-info3 .box-wrap .box-info {
          width: auto;
          float: none;
          padding: 20px 0;
          margin: 0 15px;
          border-bottom: 1px solid #ccc; }
          .recommend-car .recommend-car-info3 .box-wrap .box-info:first-child {
            float: none; }
          .recommend-car .recommend-car-info3 .box-wrap .box-info .box {
            margin-bottom: 20px; }
            .recommend-car .recommend-car-info3 .box-wrap .box-info .box p {
              line-height: 1.25em;
              font-size: 12px; }
              .recommend-car .recommend-car-info3 .box-wrap .box-info .box p img {
                display: block;
                max-width: 50px;
                height: auto;
                margin-bottom: 6px; }
            .recommend-car .recommend-car-info3 .box-wrap .box-info .box.sub-box {
              margin-bottom: 10px; }
              .recommend-car .recommend-car-info3 .box-wrap .box-info .box.sub-box p {
                font-size: 12px; }
      .recommend-car .recommend-car-info3 h3 span {
        margin-bottom: 16px; } }

.top-feature {
  display: block;
  text-decoration: none;
  background: #000;
  min-height: 600px;
  margin-bottom: 5px;
  position: relative;
  overflow: hidden;
  transition: 1s linear; }
  .top-feature:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    background: #000 url(../images/top-visual_01.jpg) center center no-repeat;
    transition: all .6s;
    transform: scale(1); }
  .top-feature.feature-01:after {
    background: #000 url(../images/top-visual_01.jpg) center center no-repeat; }
  .top-feature.feature-02:after {
    background: #000 url(../images/top-visual_02.jpg) center center no-repeat; }
  .top-feature.feature-03:after {
    background: #000 url(../images/top-visual_03.jpg) center center no-repeat; }
  .top-feature.feature-04:after {
    background: #000 url(../images/top-visual_04.jpg) center center no-repeat; }
  .top-feature.feature-05:after {
    background: #000 url(../images/top-visual_05.jpg) center center no-repeat; }
  .top-feature:hover:after {
    transform: scale(1.1); }
  .top-feature.feature-01 .feature-head .ef-feature {
    margin-bottom: 50px; }

.top-feature-box {
  display: block;
  max-width: 1200px;
  min-height: 600px;
  margin: 0 auto;
  position: relative;
  z-index: 10; }
  .top-feature-box:before {
    transition: width .4s linear;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    background-color: #000;
    width: 21.8%;
    z-index: 1; }
  .top-feature-box article {
    width: 250px;
    padding-top: 100px; }
    .top-feature-box article .feature-txt {
      font-size: 16px;
      line-height: 2;
      color: #fff; }
  .top-feature-box .feature-btn {
    display: inline-block;
    position: absolute;
    z-index: 99;
    bottom: 120px;
    left: 5px;
    color: #FFFFFF; }
    .top-feature-box .feature-btn:after {
      content: "";
      display: block;
      width: 50px;
      height: 50px;
      background: url(../images/btn_detail_black2.svg) center center no-repeat;
      background-position: 0;
      background-size: 50px;
      position: absolute;
      right: -60px;
      top: -20px; }

@media screen and (max-width: 767px) {
  .top-feature {
    min-height: 0; }
    .top-feature.feature-01, .top-feature.feature-02, .top-feature.feature-03, .top-feature.feature-04, .top-feature.feature-05 {
      background-color: transparent;
      background-image: none; }
    .top-feature.feature-01 .feature-head .ef-feature {
      margin-bottom: 0; }
    .top-feature:after {
      content: none; }
  .top-feature-box {
    min-height: 0; }
    .top-feature-box:before {
      content: none; }
    .top-feature-box .sp_only img {
      width: 100%; }
    .top-feature-box picture img {
      width: 100%; }
    .top-feature-box article {
      background-color: #000;
      padding-top: 0;
      width: 100%; }
      .top-feature-box article .feature-txt {
        font-size: 12px;
        padding: 15px; }
    .top-feature-box .feature-01 .feature-txt {
      margin-top: 0; }
    .top-feature-box::after {
      left: auto;
      top: auto;
      bottom: 10%;
      right: 15px; }
    .top-feature-box .feature-btn {
      bottom: 20px !important;
      left: auto;
      right: 40px;
      font-size: 11px; }
      .top-feature-box .feature-btn:after {
        width: 40px;
        height: 40px;
        background-size: 40px;
        right: -40px;
        top: -15px; } }

.ef-feature1 {
  min-height: 40px;
  }

.ef-feature2 {
  min-height: 50px;
  margin-bottom: 10px; }

.feature-01 .ef-feature2 {
  min-height: 90px; }

.feature-02 .ef-feature2 {
  min-height: 108px; }

.feature-03 .ef-feature2 {
  min-height: 60px;
  margin-bottom: 20px; }

.feature-04 .ef-feature2 {
  min-height: 48px;}

.feature-05 .feature-head2 {
    margin: 20px 0 25px 0px;
}
.feature-05 .feature-head2 .ef-border, .feature-05 .feature-head2 .ef-border2, .feature-05 .feature-head2 .ef-border2 {
    min-height: 40px;
    margin-bottom: 10px;
}
.feature-05 .feature-head2 img {height: 40px; width: auto!important;}

@media screen and (max-width: 767px) {
  .ef-feature1 {
    min-height: 10.666666vw; }
  .ef-feature2 {
    min-height: 8vw;
    margin-bottom: 0; }
  .feature-01 .ef-feature2 {
    min-height: 8vw; }
  .feature-02 .ef-feature2,
  .feature-03 .ef-feature2 {
    min-height: 12vw; }
  .feature-03 .ef-feature2 {margin-bottom: 0px;}
  .feature-05 .feature-head2 {
      margin: 0px;
      padding: 10px 15px 44px 15px!important;
  }
  .feature-05 .feature-head2 .ef-border, .feature-05 .feature-head2 .ef-border2, .feature-05 .feature-head2 .ef-border2 {
      min-height: 30px;
  }
  .feature-05 .feature-head2 img {height: auto;width: 100%!important;}

}

/*# sourceMappingURL=style.css.map */

span.ef-txt2.note {
    font-size: 70%;
    margin-top: 20px;
}
.feature-02 .top-feature-box .feature-btn {bottom: 110px;}
@media screen and (max-width: 767px) {
  span.ef-txt2.note {
      margin-top: 5px;
  }
 .feature-02 .top-feature-box article .feature-txt {
    padding: 10px 15px 40px;
  }
}
/*.special_text_link i {border-bottom: 1px #ffffff solid;}*/
#carmodel-header .carmodel-header_wrapper .carmodelnav-section_main.v2 {width: 640px;}
.special_text_link {border-right: none!important;}
#carmodel-header .carmodel-header_wrapper .carmodelnav-section_main.v2 a span.boder_none {border-right: none;}
#carmodel-header .carmodel-header_wrapper .carmodelnav-section_main.v2 a.special_box {border: 2px #e50011 solid!important;}
#carmodel-header .carmodel-header_wrapper .carmodelnav-section_main.v2 .js-no-data {display: none;}


@media screen and (max-width: 767px) {
#carmodel-header .carmodel-header_wrapper .carmodelnav-section_main.v2 {
    width: auto;
    margin-left: 0;
}
.special_text_link {border-right: 2px #e50011 solid!important;}
}

/*   chat-banner  start  */
#content .chat-banner {
  bottom: 36px;
  position: fixed;
  right: 5px;
  transform: translateX(100%);
  transition: transform .4s ease;
  width: 330px;
  z-index: 10;
}
#content .chat-banner.is-active_chat{
  transform: translateX(0);
}
#content .chat-banner.is-active_chat .chat-banner-close {
  transform: translateX(0);
}
#content .chat-banner:not(.is-active_chat) .chat-banner-close {
  transform: translateX(-85px);
}
#content .chat-banner.is-active_chat .chat-banner-close {
    width: 20px;
    height: 20px;
    position: absolute;
    z-index: 2;
    top: -20px;
    right: 0px;
    left: auto;
    display: flex;
    align-items: center;
    cursor: pointer;
}
#content .chat-banner.is-active_chat .chat-banner-close span {
  position: absolute;
  top: 0px;
  right: 0px;
  width: 20px;
  height: 20px;
  cursor: pointer;
  background: url(../images/icon_close_gray.png) no-repeat left top;
  transform:rotate(-180deg);
  background-size: 20px auto;
}
#content .chat-banner .chat-banner-close {
  width: 80px;
  height: 100%;
  position: absolute;
  z-index: 2;
  top: 0px;
  left: 0px;
  display: flex;
  align-items: center;
  cursor: pointer;
}
#content .chat-banner .chat-banner-close span {
  /* background-image: url(../images/icon-chevron-left-white.svg); */
  background-image: url(../images/bnr_chat_open.png);
  background-size: 80px 80px;
  background-repeat: no-repeat;
  display: block;
  width: 80px;
  height: 80px;
  margin: 0 auto;
}
#content .chat-banner:not(.is-active_chat)  {
  right: 0px;
}
@media screen and (max-width: 767px) {
  #content .chat-banner {
    bottom: 110px;
    width: 70%;
  }
  #content .chat-banner img {
    width: 100%;
    height: auto;
  }
  #content .chat-banner .chat-banner-close {
    width: 70px;
  }
  #content .chat-banner .chat-banner-close span {
    width: 70px;
    height: 70px;
    background-size: 70px 70px;
  }
  #content .chat-banner:not(.is-active_chat) .chat-banner-close {
    transform: translateX(-75px);
  }
}
/*   chat-banner  end  */