@charset "utf-8";

html {
   font-size: 10px;
}

body {
   background: #fff;
   color: #000;
   font-family: "yu-gothic-pr6n", sans-serif;
   font-size: 1.4rem;
   font-weight: 400;
   letter-spacing: 0.2em;
}

body.noscroll {
   overflow: hidden;
}

a {
   display: block;
   transition: 0.2s;
}

a:hover {
   opacity: 0.6;
   transition: 0.2s;
}

dt {
   font-weight: normal;
}

img {
   display: block;
   max-width: 100%;
   width: 100%;
}

*,
*::before,
*::after {
   box-sizing: border-box;
}

/* Remove default padding */

ul,
ol {
   padding: 0;
}

/* Remove default margin */

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
   margin: 0;
}

/* Set core root defaults */

html {
   scroll-behavior: smooth;
}

/* Set core body defaults */

body {
   text-rendering: optimizeSpeed;
}

/* Remove list styles on ul, ol elements with a class attribute */

ul,
ol {
   list-style: none;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
   -webkit-text-decoration-skip: ink;
   text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

img {
   display: block;
   max-width: 100%;
   width: 100%;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
   font: inherit;
}

/* フォームリセット */

input,
button,
select,
textarea {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   background: transparent;
   border: none;
   border-radius: 0;
   font: inherit;
   outline: none;
}

textarea {
   resize: vertical;
}

input[type=checkbox],
input[type=radio] {
   display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
   cursor: pointer;
}

select::-ms-expand {
   display: none;
}

/*
 * l-car-model
 * -------------------------------------------------------------
 */

.l-car-model {
   padding: 9.55rem 0 8.8rem;
}

/*
 * l-chassis-mfr
 * -------------------------------------------------------------
 */

.l-chassis-mfr {
   padding: 9.5rem 0 16rem;
}

/*
 * l-inner
 * -------------------------------------------------------------
 */

.l-inner {
   margin: auto;
   max-width: 121rem;
   padding: 0 3rem;
}

/*
 * l-main
 * -------------------------------------------------------------
 */

.l-main {
   margin-top: 12.5rem;
}

/*
 * l-top-news
 * -------------------------------------------------------------
 */

.l-top-news {
   padding: 0 0 9.45rem;
}

/*
 * c-hamburger
 * -------------------------------------------------------------
 */

.c-hamburger {
   height: 3rem;
   position: relative;
   width: 2.6rem;
}

.c-hamburger::after {
   bottom: -0.2rem;
   content: "menu";
   display: block;
   font-family: "Montserrat", sans-serif;
   font-size: 0.8rem;
   font-weight: bold;
   letter-spacing: 0.05em;
   line-height: 1;
   position: absolute;
   text-align: center;
   text-transform: uppercase;
   transition: 0.8s;
}

.c-hamburger.is-active::after {
   content: "close";
   transition: 0.8s;
}

.c-hamburger span {
   background: #000;
   bottom: 0;
   display: block;
   height: 0.25rem;
   left: 0;
   margin: 0 auto;
   position: absolute;
   right: 0;
   top: 0;
   transition: 0.3s;
   width: 100%;
}

.c-hamburger span:nth-child(1) {
   top: 0;
}

.c-hamburger span:nth-child(2) {
   top: 25%;
}

.c-hamburger span:nth-child(3) {
   top: 50%;
}

.c-hamburger.is-active span {
   transition: 0.3s;
}

.c-hamburger.is-active span:nth-child(1) {
   top: 25%;
   transform: rotate(45deg);
}

.c-hamburger.is-active span:nth-child(2) {
   opacity: 0;
   top: 51%;
}

.c-hamburger.is-active span:nth-child(3) {
   top: 25%;
   transform: rotate(-45deg);
}

/*
 * c-section-header
 * -------------------------------------------------------------
 */

.c-section-header {
   text-align: center;
}

.c-section-header__enttl {
   color: #B0B0B0;
   font-family: "Montserrat", sans-serif;
   font-size: 1.8rem;
   font-weight: 600;
   letter-spacing: 0.1em;
   text-transform: uppercase;
}

.c-section-header__jpttl {
   font-size: 2.4rem;
   font-weight: bold;
   margin-top: 1.5rem;
}

/*
 * u-br
 * -------------------------------------------------------------
 */

.u-br-sp {
   display: none;
}

/*
 * p-bottom-nav
 * -------------------------------------------------------------
 */

.p-bottom-nav__items {
   display: flex;
}

.p-bottom-nav__item {
   align-items: flex-start;
   aspect-ratio: 64/40;
   display: flex;
   flex-direction: column;
   height: 40rem;
   justify-content: center;
   padding: 0 4rem 2.8rem 7.5rem;
   position: relative;
   width: 33.3333%;
}

.p-bottom-nav__item:nth-child(1) {
   background: url(images/common/bottom-nav_img01.webp) no-repeat center;
   background-size: cover;
}

.p-bottom-nav__item:nth-child(2) {
   background: url(images/common/bottom-nav_img02.webp) no-repeat center;
   background-size: cover;
}

.p-bottom-nav__item:nth-child(3) {
   background: url(images/common/bottom-nav_img03.webp) no-repeat center;
   background-size: cover;
}

.p-bottom-nav__item::before {
   background: rgba(0, 0, 0, 0.4);
   content: "";
   display: block;
   height: 100%;
   left: 0;
   position: absolute;
   right: 0;
   top: 0;
   width: 100%;
}

.p-bottom-nav__ttl-wrap {
   position: relative;
   z-index: 10;
}

.p-bottom-nav__enttl {
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 4.2rem;
   font-weight: 600;
   letter-spacing: 0;
}

.p-bottom-nav__jattl {
   color: #fff;
   font-size: 1.9rem;
   font-weight: bold;
   margin-top: 3rem;
}

.p-bottom-nav__btn {
   background: url(images/common/btn_white.webp) no-repeat center;
   background-size: 100%;
   bottom: 2.8rem;
   height: 3.5rem;
   margin-left: auto;
   position: absolute;
   right: 4rem;
   width: 8.56rem;
   z-index: 10;
}

/*
 * p-car-model
 * -------------------------------------------------------------
 */

.p-car-model__items {
   display: flex;
   gap: 0 3.5rem;
   margin-top: 7rem;
}

.p-car-model__item {
   aspect-ratio: 259/185;
   background: #fff;
   border-radius: 0.4rem;
   box-shadow: 0.3rem 0.3rem 0.6rem rgba(0, 0, 0, 0.3019607843);
   max-width: 25.9rem;
   width: calc((100% - 10.5rem) / 4);
}

.p-car-model__link {
   align-items: center;
   display: flex;
   flex-direction: column;
   gap: 3rem 0;
   height: 100%;
   justify-content: center;
   width: 100%;
}

.p-car-model__item img {
   width: 13.3rem;
}

.p-car-model__ttl {
   font-size: 1.6rem;
   font-weight: bold;
   text-align: center;
}

/*
 * p-car
 * -------------------------------------------------------------
 */

.p-car__info {
   border: 0.1rem solid #E50038;
   border-radius: 0.85rem;
   margin-top: 3.4rem;
   max-width: 54.7rem;
   overflow: hidden;
}

.p-car__info-ttlwrap {
   background: #e50038;
   padding: 1.6rem;
   text-align: center;
}

.p-car__info-telwrap:nth-of-type(2) {
   margin-top: 2.5rem;
}

.p-car__info-ttl {
   color: #fff;
   font-size: 2.1rem;
   font-weight: bold;
}

.p-car__info-body {
   background: #fff;
   padding: 3.5rem 2.6rem 3.2rem;
   text-align: center;
}

.p-car__info-telwrap {
   align-items: center;
   display: flex;
   gap: 0 2.2rem;
}

.p-car__info-telwrap dt {
   color: #E50038;
   font-size: 2.1rem;
   font-weight: bold;
   text-align: center;
   width: 9.7rem;
}

.p-car__info-telwrap dd {
   align-items: center;
   display: flex;
}

.p-car__info-telwrap dd::before {
   background: url(images/car/tel.svg) no-repeat center;
   background-size: 100%;
   content: "";
   display: inline-block;
   height: 2.86rem;
   margin-right: 1.5rem;
   width: 2.86rem;
}

.p-car__info-tel {
   font-family: "Noto Sans JP", sans-serif;
   font-size: 4.4rem;
   font-weight: 700;
   letter-spacing: 0;
   line-height: 1;
}

.p-car__info-text {
   font-weight: bold;
   line-height: 1.57;
   margin-top: 2.5rem;
}

.p-car__info-contactwrap {
   background: #f0f0f0;
   margin: 3rem auto 0;
   max-width: 48.8rem;
   padding: 1.8rem;
}

.p-car__info-contact {
   align-items: center;
   display: flex;
   font-size: 2rem;
   font-weight: bold;
   justify-content: center;
   letter-spacing: 0.05em;
}

.p-car__info-contact::before {
   background: url(images/car/mail.svg) no-repeat center;
   background-size: 100%;
   content: "";
   display: inline-block;
   height: 2rem;
   margin-right: 3.1rem;
   width: 2.76rem;
}

.p-car__info-contact::after {
   background: url(images/car/btn_red.webp) no-repeat center;
   background-size: 100%;
   content: "";
   display: inline-block;
   height: 2.3rem;
   margin-left: 4.5rem;
   width: 6rem;
}

/*
 * p-chassis-mfr
 * -------------------------------------------------------------
 */

.p-chassis-mfr {
   background: #f1f1f1;
}

.p-chassis-mfr__items {
   display: flex;
   gap: 0 3.7rem;
   margin-top: 11.2rem;
}

.p-chassis-mfr__item {
   aspect-ratio: 259/112;
   background: #fff;
   border-radius: 0.3rem;
   box-shadow: 0.2rem 0.2rem 0.3rem rgba(0, 0, 0, 0.3019607843);
   max-width: 25.9rem;
   width: calc((100% - 11.5rem) / 4);
}

.p-chassis-mfr__link {
   align-items: center;
   display: grid;
   font-size: 1.8rem;
   font-weight: bold;
   height: 100%;
   justify-items: center;
   place-items: center;
   width: 100%;
}

/*
 * p-footer
 * -------------------------------------------------------------
 */

.p-footer__nav {
   display: flex;
   justify-content: flex-end;
   padding: 4.5rem 0 5rem;
   position: relative;
   right: 12rem;
}

.p-footer__nav-items {
   width: -moz-fit-content;
   width: fit-content;
}

.p-footer__nav-items:nth-child(1) {
   margin-right: 8.3rem;
}

.p-footer__nav-items:nth-child(2) {
   margin-right: 5.5rem;
}

.p-footer__nav-item a {
   font-size: 1.6rem;
   line-height: 2.625;
}

.p-footer__copyright {
   background: #e20038;
   color: #fff;
   font-size: 1.2rem;
   font-weight: bold;
   padding: 1.1rem 0 1.3rem;
   text-align: center;
}

/*
 * p-header
 * -------------------------------------------------------------
 */

.p-header {
   background: #fff;
   height: 12.5rem;
   left: 0;
   position: fixed;
   right: 0;
   top: 0;
   z-index: 100;
}

.p-header__inner {
   align-items: center;
   display: flex;
   height: 100%;
   justify-content: space-between;
   padding: 0 0 0 1.3rem;
}

.p-header__logo {
   width: 17.362rem;
}

/*
 * p-mv
 * -------------------------------------------------------------
 */

.p-mv {
   aspect-ratio: 1920/667;
   position: relative;
}

.p-mv__img {
   height: 100%;
}

.p-mv__inner {
   align-items: center;
   display: grid;
   height: 100%;
   justify-items: center;
   left: 50%;
   place-items: center;
   position: absolute;
   top: 50%;
   transform: translate(-50%, -50%);
   width: 100%;
}

.p-mv__ttl {
   color: #fff;
   font-family: "kozuka-mincho-pro", sans-serif;
   font-size: 4.8rem;
   font-weight: bold;
   letter-spacing: 0.1em;
}

/*
 * p-nav-sp
 * -------------------------------------------------------------
 */

.p-nav-sp {
   display: none;
}

.p-nav-sp__logo {
   width: 6rem;
}

/*
 * p-nav
 * -------------------------------------------------------------
 */

.p-nav {
   flex: 1;
}

.p-nav.is-active {
   opacity: 1;
   overflow: auto;
   transition: all 0.6s;
   visibility: visible;
   z-index: 10;
}

.p-nav__contact {
   align-items: center;
   display: flex;
   gap: 0 2.55rem;
   justify-content: flex-end;
}

.p-nav__contact-link::before {
   background: url(images/common/icon_mail.webp) no-repeat center;
   background-size: 100%;
   content: "";
   display: inline-block;
   height: 1.2rem;
   margin-right: 1.5rem;
   vertical-align: middle;
   width: 1.63rem;
}

.p-nav__contact-logo {
   width: 8.6rem;
}

.p-nav__items {
   display: flex;
   justify-content: flex-end;
   margin-top: 2rem;
}

.p-nav__item {
   border-right: 0.1rem solid #000;
   padding: 0 2.3rem;
}

.p-nav__item:first-child {
   padding-left: 0;
}

.p-nav__item:last-child {
   border-right: none;
   padding-right: 0;
}

.p-nav a {
   letter-spacing: 0.05em;
   text-transform: uppercase;
}

/*
 * p-news-list
 * -------------------------------------------------------------
 */

.p-news-list__item {
   align-items: center;
   border-bottom: 0.1rem solid #C9C9C9;
   display: flex;
   gap: 0 4.1rem;
   padding: 2.7rem 0 1.85rem;
}

.p-news-list__item:first-child {
   padding-top: 0;
}

.p-news-list__meta {
   align-items: center;
   display: flex;
   gap: 0 1.65rem;
}

.p-news-list__category {
   border: 0.1rem solid #B0B0B0;
   font-size: 1.2rem;
   padding: 0.8rem 1rem 0.9rem;
}

.p-news-list__date {
   font-family: "Montserrat", sans-serif;
   font-size: 1.2rem;
   font-weight: 600;
}

.p-news-list__body {
   display: flex;
   flex: 1;
}

.p-news-list__title {
   line-height: 1.5;
}

.p-news-list__btn {
   background: url(images/top/btn_red.webp) no-repeat center;
   background-size: 100%;
   height: 2.3rem;
   margin-left: auto;
   width: 5.9rem;
}

/*
 * p-search
 * -------------------------------------------------------------
 */

.p-search {
   background: #f1f1f1;
   height: 15rem;
}

.p-search__box {
   background: #fff;
   border-radius: 0.8rem;
   box-shadow: 0.5rem 0.5rem 0.8rem rgba(0, 0, 0, 0.3019607843);
   padding: 3rem 2.3rem 4rem;
   position: relative;
   top: -7.6rem;
   width: 100%;
}

.p-search__form {
   align-items: flex-end;
   display: flex;
   gap: 0 2rem;
}

.p-search__form-item {
   width: 29.1rem;
}

.p-search__form-item dd {
   margin-top: 1.6rem;
   position: relative;
}

.p-search__form-item dd::after {
   background: url(images/top/select.webp) no-repeat center;
   background-size: 100% 100%;
   content: "";
   cursor: pointer;
   display: inline-block;
   height: 1.35rem;
   position: absolute;
   right: 1.2rem;
   top: 50%;
   transform: translate(0, -50%);
   width: 0.81rem;
}

.p-search__select {
   background: #EFEFEF;
   height: 5rem;
   padding: 1.6rem 2rem 1.6rem 1.5rem;
   width: 100%;
}

select:invalid {
   color: #808080 !important;
}

select option {
   color: #000 !important;
}

select option:first-child {
   color: #808080 !important;
}

.p-search__btn {
   background: #e20038;
   color: #fff;
   font-size: 1.6rem;
   font-weight: bold;
   height: 5rem;
   padding: 1.6rem;
   text-align: center;
   width: 17.7rem;
}

/*
 * p-selling-head
 * -------------------------------------------------------------
 */

.p-selling-head {
   background: #fff;
   padding: 7rem 0 11.1rem;
}

.p-selling-head__items {
   display: flex;
   gap: 0 5.5rem;
   margin-top: 12rem;
}

.p-selling-head__body {
   flex: 1;
}

.p-selling-head__ttl {
   font-size: 1.6rem;
   font-weight: bold;
}

.p-selling-head__text {
   line-height: 1.5;
   margin-top: 2.5rem;
}

.p-selling-head__img {
   aspect-ratio: 515/248;
   width: 51.5rem;
}

.p-selling-head__img img {
   -o-object-fit: cover;
   height: 100%;
   object-fit: cover;
}

/*
 * p-top-news
 * -------------------------------------------------------------
 */

.p-top-news {
   background: #f1f1f1;
}

.p-top-news__body {
   margin-top: 3.8rem;
}

@media screen and (min-width: 1025px) {

   a[href^="tel:"] {
      pointer-events: none;
   }

}

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

   html {
      font-size: 0.67vw;
   }

}

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

   .p-bottom-nav__item {
      height: auto;
   }

}

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

   html {
      font-size: 2.666666666vw;
   }

   .l-inner {
      padding: 0 2rem;
   }

   .l-main {
      margin-top: 6.2rem;
   }

   .u-br-sp {
      display: block;
   }

   .p-bottom-nav__items {
      flex-direction: column;
   }

   .p-bottom-nav__item {
      aspect-ratio: 750/285;
      padding: 0 2.3rem 1.8rem 5.4rem;
      width: 100%;
   }

   .p-bottom-nav__ttl-wrap {
      left: 5.4rem;
      position: absolute;
      top: 6.25rem;
   }

   .p-bottom-nav__enttl {
      font-size: 2.1rem;
   }

   .p-bottom-nav__jattl {
      font-size: 1.2rem;
      margin-top: 1.1rem;
   }

   .p-bottom-nav__btn {
      bottom: 1.8rem;
      height: 1.75rem;
      right: 2.3rem;
      width: 4.28rem;
   }

   .p-footer__nav {
      flex-direction: column;
      flex-wrap: wrap;
      gap: 0 4.5rem;
      height: 26rem;
      justify-content: flex-start;
      padding: 4rem 1rem;
      right: 0;
   }

   .p-footer__nav-items:nth-child(1) {
      display: contents;
      margin: 0;
   }

   .p-footer__nav-items:nth-child(2) {
      display: contents;
      margin: 0;
   }

   .p-footer__nav-item a {
      font-size: 1.2rem;
      line-height: 2.94;
   }

   .p-footer__copyright {
      font-size: 1rem;
      line-height: 1.4;
      padding: 1rem 0 1.1rem;
   }

   .p-header {
      height: 6.2rem;
   }

   .p-header__inner {
      padding: 0 2.3rem 0 1.4rem;
   }

   .p-header__logo {
      width: 11.15rem;
   }

   .p-nav-sp {
      align-items: center;
      display: flex;
      gap: 0 1.2rem;
   }

   .p-nav {
      background: #efefef;
      display: flex;
      flex-direction: column;
      height: 100%;
      opacity: 0;
      padding: 3.1rem 2rem 8rem;
      position: fixed;
      right: 0;
      top: 6.2rem;
      transition: all 0.6s;
      visibility: hidden;
      width: 100%;
   }

   .p-nav__contact {
      display: block;
      order: 2;
      padding: 2rem 4rem 2rem 0.6rem;
   }

   .p-nav__contact-link::before {
      height: 2.2rem;
      width: 2.3rem;
   }

   .p-nav__contact-logo {
      display: none;
   }

   .p-nav__items {
      flex-direction: column;
      margin-top: 0;
   }

   .p-nav__item {
      border-bottom: 0.1rem solid #d9d9d9;
      border-right: none;
      padding: 2rem 4rem 2rem 0.6rem;
   }

   .p-nav__item:first-child {
      border-top: 0.1rem solid #d9d9d9;
   }

   .p-nav a {
      font-size: 1.8rem;
   }

   .p-nav__contact-link {
      align-items: center;
      display: flex;
   }

}


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