@charset "UTF-8";

*,*:before,*:after{ box-sizing: border-box;}
body {min-width: 1200px; margin: 0; padding: 0; color: #333; font-family: "Noto Sans JP", "メイリオ", "Meiryo", Helvetica, Arial, sans-serif; font-size: 16px; line-height: 1.5; background-color: #fff; -webkit-text-size-adjust: 100%;}
img{ max-width: 100%; height: auto; vertical-align: bottom;}
a{ color: #2075AF; text-decoration: underline;}
a:hover{  text-decoration: none;}
ul,ol{  list-style: none; margin: 0; padding: 0;}
h1,h2,h3,h4,h5,h6,p{  margin: 0;}

/* parts */
.u-pc-only{ display: block;}
.u-sp-only{ display: none;}
.cont-reservbtn{ display: block; width: 480px; margin: 0 auto; background: #fff; text-align: center; box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.4); border-radius: 8px;}
.cont-reservbtn img{ transition: opacity .5s;}
.cont-reservbtn:hover img{  opacity: 0.6;}
.marker{background: linear-gradient(transparent 60%, #ffff00 60%); padding: 0 8px;}

/* header */
header{ padding: 24px 0 16px; text-align: center;}

/* メインビジュアル */
.main-visual{ position: relative; background: url(/campaign/azuma-nissan-flat7/img/pc-main-bg.webp) no-repeat center top; background-size: cover; height: 840px; box-sizing: border-box; padding-top: 20px;}
.main-logo{ margin-bottom: 16px;}
h1{ text-align: center;}
.main-visual .month-campaign{ margin: 0 auto 14px; display: block; width: 1080px; background: #fff; box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);}
.main-visual .month-campaign img{ transition: opacity .5s;}
.main-visual .month-campaign:hover img{  opacity: 0.7;}

/* モーダル */
.modal{ display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 1000; justify-content: center; align-items: center;}
.modal__bg{ background: rgba(0,0,0,0.8); position: fixed; top: 0; left: 0; right: 0; bottom: 0;}
.modal__content{ position: relative; max-width: 1080px; width: 80%; z-index: 1; max-height: 90vh; max-height: 90dvh; display: flex; flex-direction: column;}
.modal__content picture{ flex: 1; min-height: 0; overflow-y: auto;}
.modal__content img{ display: block; margin: 0 auto; width: 100%; height: auto;}
a.js-modal-close{ display: inline-block; position: relative; font-size: 18px; text-align: center; color: #fff; border: 1px solid #fff; border-radius: 50px; padding: 16px 48px 16px 70px; margin: 24px auto 0; text-decoration: none; transition: all .5s; background: rgba(0,0,0,0.4); line-height: 1;}
a.js-modal-close:before, a.js-modal-close:after{  content: ""; display: block; width: 20px; height: 2px; background: #fff; position: absolute; top: 50%; left: 24px; transform: translateY(-50%) rotate(45deg);}
a.js-modal-close:after{  transform: translateY(-50%) rotate(-45deg);}
a.js-modal-close:hover{ background-color: rgba(255, 255, 255, 0.2);}

/* お悩みを解決 */
.worry-mindclarifier{ background: url(/campaign/azuma-nissan-flat7/img/pc-worry-mindclarifier-bghead.svg) no-repeat left -2px /contain, url(/campaign/azuma-nissan-flat7/img/pc-worry-mindclarifier-bgfoot.svg) no-repeat left 0 bottom -1px / contain, #008BEF; padding: 100px 0 13%;}
.worry-mindclarifier h2{ margin-bottom: 48px;}
.worry-mindclarifier h3{ margin-bottom: 16px;}
.worry-mindclarifier p{ font-size: 18px; color: #fff; margin-bottom: 56px; font-weight: 500; line-height: 1.7;}

/* 4つのポイント */
.features-point{ padding: 24px 0 72px;}
.features-point h2{ margin-bottom: 48px;}
.features-point-list{ display: flex; justify-content: center; gap: 40px 2%; flex-wrap: wrap; width: 1080px; margin: 0 auto 48px;}
.features-point-list .point1clm{ width: 100%;}
.features-point-list dt{  margin-bottom: 16px; font-size: 40px; color: #008BEF; font-weight: 900;}
.features-point-list dt .marker{  padding: 0 2px;}
.features-point-list dt img{  display: inline-block; width: 56px; margin-right: 8px;}
.features-point-list dt .tax{ font-size: 18px;}
.features-point-list dd p{  font-size: 18px; font-weight: bold; color: #101841; margin-bottom: 32px;}
.features-point-list .point2clm{  width: calc(96% / 2); flex: 1;}
.features-point-list .point2clm:nth-of-type(3){border-left: 1px solid #E6E6E6;}
.features-point-list .point2clm dt{  font-size: 32px; line-height: 1.3;}
.features-point-list .point2clm dt img{ display: block; margin: 0 auto 5px;}
.features-point-list .point2clm dd p{  font-size: 15px;}
.features-point-list .point2clm dd div{display: block; margin: 0 auto;}
.features-point-list .point2clm dd img{display: block; margin: 0 auto;}
.features-point-list .point1{ border-bottom: 1px solid #E6E6E6; padding-bottom: 24px;}
.features-point-list .point1 dd div{  display: flex; justify-content: center; margin: 0 auto 16px; gap: 24px;}
.features-point-list .point4{ border-top: 1px solid #E6E6E6; padding-top: 56px;}
.features-point-list .point4 dd div{  display: flex; justify-content: space-between; margin: 0 auto 10px; width: 1080px;}
.features-point-list .attention{  font-size: 12px; color: #777;}
.features-point-list .attention li{ display: inline-block;}
.features-point-list .point4 .attention li{text-align: left;}
.features-point-list .point1 dt{ background: url(/campaign/azuma-nissan-flat7/img/point-subttl1.webp) no-repeat left center; background-size: 56px; display: inline-block; padding-left: 64px;}
.features-point-list .point4 dt{ background: url(/campaign/azuma-nissan-flat7/img/point-subttl4.webp) no-repeat left center; background-size: 56px; display: inline-block; padding-left: 64px;}
.features-point-list .point2clm.point2 dt{ background: url(/campaign/azuma-nissan-flat7/img/point-subttl2.webp) no-repeat top center; background-size: 56px; line-height: 1.3; padding: 96px 0 16px;}
  .features-point-list .point2clm.point3 dt{ background: url(/campaign/azuma-nissan-flat7/img/point-subttl3.webp) no-repeat top center; background-size: 56px; line-height: 1.3; padding-top: 72px;}

/* それだけじゃない！ */
.features-trust{ background: url(/campaign/azuma-nissan-flat7/img/features-trust-bg.webp) repeat left top; padding: 64px 0 182px;}
.features-trust h2{ margin-bottom: 48px;}
.features-trust-list{ width: 1080px; margin: 0 auto;}
.features-trust dl{ background: #fff; border-radius: 16px; padding: 24px 16px; display: flex; align-items: center; justify-content: flex-start; min-height: 140px; gap: 0 40px; position: relative;}
.features-trust dl:first-of-type:before{ content: url(/campaign/azuma-nissan-flat7/img/features-trust-top.webp); display: block; position: absolute; top: -34px; left: -30px;}
.features-trust dl:last-of-type:before{ content: url(/campaign/azuma-nissan-flat7/img/features-trust-btm.webp); display: block; position: absolute; bottom: -187px; right: -10px;}
.features-trust dl:not(:last-of-type){ margin-bottom: 24px;}
.features-trust dt{width: 25%; color: #003B82; font-weight: 900; font-size: 24px;}
.features-trust dd{ text-align: left; font-weight: bold; font-size: 20px; color: #101841; flex-grow: 1;}
.features-trust dd small{ display: block; margin-top: 8px; font-size: 13px;}

/* 頭金0円 */
.no-initial-cost{ background: url(/campaign/azuma-nissan-flat7/img/campaign-info-bg.webp) repeat left top; padding: 80px 0;}
.no-initial-cost h2{ font-size: 48px; font-weight: 900; color: #101841; margin-bottom: 32px;}
.no-initial-cost img{ margin-bottom: 24px;}
.no-initial-cost ul{  width: 440px; text-align: left; margin: 0 auto; font-size: 13px;}

/* カルーセル共通 */
.lifestyle-recommend-car h2{ color: #fff; font-size: 32px; font-weight: bold; margin-bottom: 0; text-align: center; padding: 10px 0;}
.slider-container{ padding-bottom: 64px;}
.slider{ display: flex; overflow-x: auto; padding: 40px 0 32px; position: relative;}
.slider .slick-list{margin-bottom: 16px;}
.slider li.slick-slide{ width: 400px; box-sizing: border-box; padding: 24px 0 0; background: #fff; border-radius: 8px; margin-right: 24px;}
.slider li h3{ color: #333; font-size: 20px; text-align: center; margin-bottom: 16px; font-weight: bold;}
.slider h3 span{ color: #fff; font-size: 14px; font-weight: bold; padding: 4px 16px 3px; border-radius: 8px; display: inline-block; margin-right: 8px; vertical-align: bottom;}
.slider li img{ display: block; margin: 0 auto;}
.recomend-car-summary{ border-radius: 0 0 8px 8px; padding: 40px 24px; position: relative; margin-top:48px; color: #fff;}
.summary-year-plan{ color: #fff; font-size: 18px; font-weight: bold; position: absolute; top: -20px; left: 0; right: 0; margin: 0 auto; padding:8px 24px; border-radius: 50px; width: 60%;}
.monthly-fee{ display: flex; justify-content: center; gap: 0 16px; align-items: center; margin-bottom: 24px;}
.monthly-fee dt{  border: 2px solid; border-radius: 5px; padding: 4px 16px; font-weight: bold; font-size: 14px;}
.monthly-fee dd span{ font-size: 56px;font-weight: bold; padding-right: 4px; line-height: 1;}
.recomend-car-summary dd span{ font-family: 'Akrobat Black', sans-serif;}
.color-dark{ background-color: rgba(0, 0, 0, 0.2);}
.price-summary{ display: flex; justify-content: center; gap: 0 16px; align-items: center;}
.price-summary dl{ width: 48%;}
.price-summary dt{ font-size: 14px; text-align: center; padding: 4px 0; font-weight: bold; margin-bottom: 8px;}
.price-summary dd{ font-size: 12px;}
.price-summary dd span{ font-size: 28px; font-weight: bold; padding-right: 4px; line-height: 1; font-family: 'Akrobat SemiBold', sans-serif;}
.slick-arrow{ width: 56px; height: 56px; border-radius: 50%; display: flex; justify-content: center; align-items: center; position: absolute; top: 45%; transform: translateY(-45%); z-index: 100; filter: drop-shadow(0px 0px 6px rgba(0,0,0,0.5)); cursor: pointer; transition: all .5s;}
.slick-arrow img{ width: 13px;}
.slick-prev{ left: 5%; transform: translateY(-45%) rotate(180deg);}
.slick-next{ right: 5%;}
.slick-dots{ display: flex !important; justify-content: center; gap: 8px; margin: 16px 0 0;}
.slick-dots li{ display: inline-block;}
.slick-dots button{ color: transparent; width: 12px; height: 12px; border-radius: 50%; background: #fff; padding: 0; border: none;}
.slider-contact-btn{  display: block;}

/* カルーセル：通勤通学 */
.recomend-car-commuting{ background-color: #FFE1E1;}
.color-pnk{ background-color: #ED4343;}
.recomend-car-commuting .slick-dots .slick-active button{ background: #ED4343;}
.recomend-car-commuting .slick-arrow{ background: #ED4343;}
.recomend-car-commuting .slick-arrow:hover{ background: #ff8585;}

/* カルーセル：セカンドカー */
.recomend-car-family{ background-color: #F3E2BE;}
.color-orng{ background-color: #E6A210;}
.recomend-car-family .slick-dots .slick-active button{ background: #E6A210;}
.recomend-car-family .slick-arrow{ background: #E6A210;}
.recomend-car-family .slick-arrow:hover{ background: #ffbf4d;}

/* カルーセル：アウトドア */
.recomend-car-outdoor{ background-color: #E0EFD9;}
.color-grn{ background-color: #5EAA3B;}
.recomend-car-outdoor .slick-dots .slick-active button{ background: #5EAA3B;}
.recomend-car-outdoor .slick-arrow{ background: #5EAA3B;}
.recomend-car-outdoor .slick-arrow:hover{ background: #8BC34A;}

/* キャンペーン情報 */
.campaign-info{ background: url(/campaign/azuma-nissan-flat7/img/campaign-info-bg.webp) repeat left top; padding: 80px 0;}
.campaign-info-container{ width: 1080px; margin: 0 auto; text-align: center; display: flex; align-items: center; justify-content: center;}
.campaign-info-container h2{ margin-right: 40px; width: 340px;}
.campaign-info-container a{ width: 640px; box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4); transition: opacity 0.5s;}
.campaign-info-container a:hover{ opacity: 0.7; transition: opacity 0.5s;}

/* 全車種取り扱い */
.car-inventory{ background: #FF7272; padding: 96px 0 72px; margin-bottom: 80px; border-radius: 16px;}
.car-inventory h2{ display: inline-block; color: #ED4343; background: #fff; border-radius: 50px; font-size: 40px; font-weight: 900; padding: 10px 40px; margin-bottom: 24px;}
.car-inventory h3{ margin-bottom: 24px;}
.car-inventory-card{  width: 1080px; margin: 0 auto; background: #fff; border-radius: 16px; display: flex; justify-content: space-between; align-items: center; padding: 40px 40px 32px;}
.car-inventory-card:last-of-type{ padding: 24px 64px 16px; margin-bottom: 64px;}
.car-inventory-text p{  font-size: 16px; font-weight: bold; color: #330000; line-height: 1.7 ; margin-bottom: 8px;}
.car-inventory-card small{ font-size: 14px;}
.car-inventory-plus{  font-size: 56px; font-weight: 900; color: #fff;}
.car-inventory-btn{ box-shadow: 0 0px 5px rgba(0, 0, 0, 0.4); border-radius: 8px; display: inline-block;}
.car-inventory-btn:hover{ opacity: 0.8; transition: opacity 0.5s;}

/* お客様の声 */
.customer-voice{ width: 1080px; margin: 0 auto 80px;}
.customer-voice h2{ margin-bottom: 32px; font-size: 24px; font-weight: 900; color: #101841; text-align: center;}
.customer-voice h2 img{ display: block; width: 220px; margin: 4px auto 0;}
.customer-voice ul{ display: flex; gap: 16px; justify-content: space-between; flex-wrap: wrap;}
.customer-voice li{ box-shadow: 0 0px 5px rgba(0, 0, 0, 0.2); border-radius: 8px; overflow: hidden;}

/* 混雑する時間帯 */
.busy-hours{  width: 1080px; margin: 0 auto 80px; text-align: center; padding: 56px 48px 64px; background: #003B82; border-radius: 16px; color: #fff;}
.busy-hours span{ display: inline-block; font-size: 16px; background: #fff; color: #003B82; font-weight: 900; padding: 4px 16px 3px; border-radius: 50px; margin-bottom: 8px;}
.busy-hours h2{ font-size: 40px; font-weight: 900; color: #FFF946;}
.busy-hours p{ font-size: 16px; margin-bottom: 40px;}
.busy-hours-image{ max-width: 768px; margin: 0 auto 64px;}
.busy-hours-btn p{ margin-bottom: 16px;}

/* FAQ */
.faq{ text-align: left; width: 1080px; margin: 0 auto 80px;}
.faq h2{ text-align: center; width: 240px; margin: 0 auto 32px;}
.faq dl{  border-bottom: 1px solid #DDEDF9;}
.faq dl:first-of-type{ border-top: 1px solid #DDEDF9;}
.faq dl span{ padding-right: 8px; display: inline-block;}
.faq dt{ font-size: 16px; cursor: pointer; position: relative; padding: 16px 0; display: flex; align-items: baseline;}
.faq dt:after{  content:""; display:block; width:8px; height:8px; border-top: #003B82 2px solid; border-right: #003B82 2px solid; transform: rotate(135deg); position:absolute; right: 2%; top: 0; bottom: 15%; margin: auto;}
.faq dt.toggle-open:after{  transform: rotate(-45deg); bottom: 0px;}
.faq dt span{ font-weight: bold; font-family: 'Akrobat Black', sans-serif; font-size: 20px; color: #003B82; display: inline-block;}
.faq dd{  padding-bottom: 16px; display: flex; align-items: baseline; width: 95%;}
.faq dd span{ font-weight: bold; font-family: 'Akrobat Black', sans-serif; font-size: 20px; color: #DF0011;}

/* 店舗情報 */
.store-list{ background: #008BEF; padding: 56px 0 72px; margin-bottom: 24px;}
.store-list h2{ text-align: center; color: #fff; margin: 0 auto 48px; width: 248px;}
.store-list .store-list-items{ width: 1080px; margin: 0 auto 64px; display: flex; justify-content: space-between; gap: 32px; flex-wrap: nowrap; box-sizing: border-box;}
.store-list li{ width: calc(100% / 3); color: #fff; text-align: left;}
.store-list h3{ color: #FFF946; font-size: 20px; font-weight: bold; margin-bottom: 8px;}
.store-list address{ font-style: normal; margin-bottom: 12px;}
.store-list address dl{ display: flex; align-items: baseline; gap: 0 8px; margin-bottom: 8px;}
.store-list address dt{ font-size: 14px; width: 80px; text-align: center; font-weight: bold; color: #fff; border: 1px solid #fff; border-radius: 4px; padding: 2px 8px; line-height: 1.6; flex-shrink: 0;}
.store-list address dl:last-of-type dt:last-of-type{ width: 60px; margin-left: 16px;}
.store-list address dd{ font-size: 16px; line-height: 1.8;}
.store-map{ border-radius: 8px; overflow: hidden;}
.store-map iframe{ display: block; width: 100%; height: 250px; border: 0;}

/* 外部リンクバナー */
.external-links{ background: #008BEF; margin-top: 40px;}
.external-links h4{ color: #FFF946; font-size: 20px; font-weight: bold; margin-bottom: 16px; position: relative; display: inline-block;}
.external-links h4:before, .external-links h4:after{  content: ""; display: block; width: 22px; height: 2px; background: #FFF946; transform: rotate(60deg); transform-origin: 0% 50%; position: absolute; top: 7px; left: -12px;}
.external-links h4:after{  transform: rotate(-60deg); transform-origin: 100% 50%; right: -12px; left: auto;}
.external-links ul{ width: 1080px; display: flex; justify-content: center; gap: 16px; margin: 0 auto;}
.external-links li{ width: 320px; box-shadow: 0 0px 5px rgba(0, 0, 0, 0.4); border-radius: 8px; overflow: hidden;}
.external-links a{ display: flex; align-items: center; justify-content: center; width: 100%; padding: 16px 24px; background: #fff; color: #008BEF; font-size: 20px; font-weight: bold; text-decoration: none; border-radius: 8px; transition: opacity .5s;}
.external-links a:hover{ opacity: 0.8;}

/* フッター */
footer{ text-align: center; padding: 0 0 24px; font-size: 12px; color: #999;}

/* 追従ボタン */
.fixed-contact-btn{ position: fixed; bottom: 0; left: 0; width: 100%; background: rgba(255,255,255,0.8); padding: 16px 0; z-index: 999; transition: opacity .3s, visibility .3s;}
.fixed-contact-btn a{ background: #fff;}
.fixed-contact-btn.is-hidden{ opacity: 0; visibility: hidden;}


/********* Responsive *********/ 
@media screen and (max-width: 767px) {
  
  /* 共通 */
  body{ min-width: auto; overflow-x: hidden;}
  header{ padding: 8px 0;}
  header img { width: 75%;}

  /* parts */
  .u-pc-only{ display: none;}
  .u-sp-only{ display: block;}
  .cont-reservbtn{ display: block; width: 100%; margin: 0 auto; background: none; text-align: center; box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.4);}
  .cont-reservbtn img{ transition: inherit;}
  .cont-reservbtn:hover img{  opacity: 1;}
  .attention{ margin: 0 auto;}
  .attention li{ font-size: 12px; padding-left: 1em; text-indent: -1em; text-align: left;}

  /* ヘッダ */
  header a{ width: 160px;}

  /* メインビジュアル */
  .main-visual{ background: url(/campaign/azuma-nissan-flat7/img/sp-main-bg.webp) no-repeat center top,#007DDB; background-size: cover; padding: 24px 0; height: auto;}
  .main-logo{ width: 45%; margin: 0 auto 10px;}
  h1{ width: 92%; margin: 0 auto 16px;}
  .main-visual .month-campaign{ width: 85%; margin: 0 auto 10px; box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.4);}
  .main-visual .contact-btn{  width: 85%; margin: 0 auto;}

  /* モーダル */
  .modal{ overflow: hidden;}
  .modal__content{ width: 90%; max-width: 400px; max-height: 80vh; max-height: 80dvh; display: flex; flex-direction: column;}
  .modal__content picture{ flex: 1; min-height: 0; overflow-y: auto;}
  a.js-modal-close{ padding: 16px 48px 16px 70px;}

  /* 悩みを解決 */
  .worry-mindclarifier{ padding: 70px 5% 18%; background-position: left top -2px, left bottom -1px;}
  .worry-mindclarifier h2{ width: 90%; margin: 0 auto 32px;}
  .worry-mindclarifier h3{ width: 100%; margin: 0 auto 16px;}
  .worry-mindclarifier p{ font-size: 1em; margin: 0 auto 40px; text-align: left; width: 96%;}
  .worry-mindclarifier p br{ display: none;}

  /* 4つのポイント */
  .features-point{ padding: 16px 4% 40px;}
  .features-point h2{ width: 90%; margin: 0 auto 32px;}
  .features-point-list{ width: 100%; margin: 0 auto 32px; gap: 40px 0;}
  .features-point-list dt{ font-size: 23px; text-align: left; margin: 0 auto 16px; padding-left: 64px; line-height: 1.3; display: inline-block;}
  .features-point-list dt img{ width: 48px; margin-right: 0; flex-shrink: 0;}
  .features-point-list dd p{ font-size: 15px; margin-bottom: 16px;}
  .features-point-list dd div{ width: 96%;}
  .features-point-list .point1{ padding-bottom: 40px;}
  .features-point-list .point1 dt{ background-position: left center; line-height: 1.3; padding: 0 0 0 64px;}
  .features-point-list .point4 dt{ background-position: left center; line-height: 1.3; padding: 0 0 0 64px;}
  .features-point-list .point1 dd div{ display: block;}
  .features-point-list .point1 dd div img:first-of-type{ margin-bottom: 10px;}
  .features-point-list .attention li{ display: block; text-align: left; padding-left: 1em; text-indent: -1em;}
  .features-point-list .point2clm.point2 dt{ background-size: 56px; background-position: left center; line-height: 1.3; padding: 0 0 0 64px;}
  .features-point-list .point2clm.point3 dt{ background-size: 56px; line-height: 1.3; background-position: left center; padding: 0 0 0 64px;}
  .features-point-list .point2clm{ width: 100%; flex: inherit; border-bottom: 1px solid #e6e6e6; padding-bottom: 40px;}
  .features-point-list .point2clm dt{ font-size: 24px; line-height: 1.3;}
  .features-point-list .point2clm dt img{ width: 40px; margin: 0 auto 5px;}
  .features-point-list .point2clm dd p{ font-size: 15px;}
  .features-point-list .point2clm dd div{ display: block; margin: 0 auto;}
  .features-point-list .point2clm dd img{ width: 100%; max-width: inherit;}
  .features-point-list .point2clm:nth-of-type(3){ border-left: none;}
  .features-point-list .point2clm.point2 dd img{ max-width: inherit;}
  .features-point-list .point4{ border: none; padding: 0;}
  .features-point-list .point4 dd div{ flex-wrap: wrap; width: 100%; gap: 10px 0;}
  .features-point-list .point4 dd div img{ width: calc(98% / 2);}
  .point-contact-btn{ display: block; width: 85%; margin: 0 auto;}
  
  /* それだけじゃない！ */
  .features-trust{padding: 40px 4% 30%; position: relative;}
  .features-trust:after{ content: ""; background: url(/campaign/azuma-nissan-flat7/img/sp-features-trust-btm.webp) no-repeat center bottom / contain; position: absolute; bottom: 0; right: 3%; width: 38%; height: 17%;}
  .features-trust h2{ margin: 0 auto 24px; width: 90%;}
  .features-trust-list{ width: 100%; margin: 0 auto;}
  .features-trust dl{ display: block; text-align: center; gap: 16px; background: none; min-height: auto; padding: 0;}
  .features-trust dl:not(:last-of-type){ margin-bottom: 40px;}
  .features-trust dl:before,.features-trust dl:first-of-type:before,.features-trust dl:last-of-type:before{ content: ""; background: url(/campaign/azuma-nissan-flat7/img/features-trust-top.webp) no-repeat left top / 30px; position: absolute; top: -17px; left: 2%; width: 30px; height: 34px;}
  .features-trust dt{ width: 100%; font-size: 24px; border-radius: 50px; padding: 6px 0; margin-bottom: 8px; background: #fff;}
  .features-trust dd{ width: 100%; font-size: 15px; color: #fff; text-align: center;}
  .features-trust dd small{ display: block; margin-top: 8px;}

  /* 全車種取り扱い */
  .car-inventory{ padding: 48px 5% 32px; margin-bottom: 48px;}
  .car-inventory h2{ font-size: 20px; padding: 8px 24px;}
  .car-inventory h3{ width: 85%; margin: 0 auto 16px;}
  .car-inventory-card{ width: 100%; flex-direction: column; gap: 16px; padding: 0; border-radius: 8px; background: none;}
  .car-inventory-card:last-of-type{  margin-bottom: 32px; padding: 0;}
  .car-inventory-text p{ font-size: 14px; color: #fff; margin-bottom: 0;}
  .car-inventory-card small{ font-size: 12px; color: #fff; text-align: left; text-indent: -1em; padding-left: 1em;}
  .car-inventory-card img{ width: 100%;}
  .car-inventory-plus{ font-size: 40px; margin: 12px 0;}
  .car-inventory-btn{ width: 100%; text-align: center;}
  .car-inventory-card:last-of-type .car-inventory-visual{ border-radius: 8px; background: #fff;}

  /* 頭金0円 */
  .no-initial-cost{ padding: 40px 4% 32px;}
  .no-initial-cost h2{ font-size: 23px; padding: 8px 0; margin-bottom: 16px;}
  .no-initial-cost .no-initial-cost-image{ width: 80%; margin: 0 auto 16px;}
  .no-initial-cost img{ margin-bottom: 0;}
  .no-initial-cost ul{ width: 92%; margin: 0 auto; font-size: 12px; text-indent: -1em; padding-left: 1em; text-align: left;}

  /* カルーセル共通 */
  .lifestyle-recommend-car h2{ font-size: 24px; padding: 8px 0;}
  .slider-container{ padding-bottom: 40px;}
  .slider-container:not(:last-of-type){ margin-bottom: 10px;}
  .slider{ padding: 24px 0 16px;}
  .slider li.slick-slide{ width: 300px; padding: 16px 0 0; margin-right: 16px;}
  .slider .slick-list{ margin-bottom: 0;}
  .slider li h4{ font-size: 16px; margin-bottom: 12px;}
  .slider h4 span{ font-size: 12px; padding: 1px 10px 2px; margin-right: 4px; border-radius: 3px;}
  .recomend-car-summary{ padding: 32px 16px; margin-top: 36px;}
  .summary-year-plan{ font-size: 18px; padding: 6px 24px; top: -16px; width: 75%;}
  .monthly-fee{ gap: 0 8px; margin-bottom: 16px;}
  .monthly-fee dt{ padding: 3px 10px; font-size: 12px;}
  .monthly-fee dd span{ font-size: 48px;}
  .monthly-fee dd{ font-size: 14px;}
  .price-summary{ gap: 0 8px;}
  .price-summary dt{ font-size: 12px; padding: 3px 0; margin-bottom: 4px;}
  .price-summary dd{ font-size: 11px;}
  .price-summary dd span{ font-size: 22px;}
  .slick-arrow{ width: 48px; height: 48px; top: 50%; transform: translateY(-50%);}
  .slick-arrow img{ width: 10px;}
  .slick-prev{ left: 5%; transform: translateY(-50%) rotate(180deg);}
  .slick-next{ right: 5%;}
  .slick-dots{ gap: 6px; margin: 8px 0 0;}
  .slick-dots button{ width: 10px; height: 10px;}
  
  .slider-contact-btn{  width: 85%;}

  /* キャンペーン情報 */
  .campaign-info{ padding: 40px 5% 48px;}
  .campaign-info-container{ flex-direction: column; gap: 16px; width: 100%;}
  .campaign-info-container h2{ margin: 0;}
  .campaign-info-container a{ width: 100%;}

  /* お客様の声 */
  .customer-voice{ width: 100%;margin: 0 0 48px;}
  .customer-voice h2{ font-size: 16px; margin-bottom: 24px; font-weight: 900; color: #101841;}
  .customer-voice h2 img{ width: 50%;}
  .customer-voice ul{ flex-direction: column; gap: 16px; width: 94%; margin: 0 auto;}

  /* 混雑します */
  .busy-hours{  width: 100%; padding: 48px 3%; border-radius: 0; margin-bottom: 48px;}
  .busy-hours h2{ font-size: 32px;}
  .busy-hours p{  font-size: 14px; margin-bottom: 24px;}
  .busy-hours-image{ margin: 0 auto 40px; width: 96%;}
  .busy-hours-btn{  width: 85%; margin: 0 auto;}
  .busy-hours-btn p{ width: 80%; margin: 0 auto 8px; text-align: center;}

  /* faq */
  .faq{ width: 94%; margin: 0 auto 48px;}
  .faq h2{  width: 200px;}
  .faq dt{ padding: 12px 8% 12px 0;}
  .faq dd{ padding-right: 8%;}

  /* ストア */
  .store-list{ padding: 32px 3% 48px; width: 100%; box-sizing: border-box;}
  .store-list h2 img{ width: 248px;}
  .store-list .store-list-items{  width: 100%; flex-direction: column; gap: 40px; margin-bottom: 32px;}
  .store-list li{ width: 100%;}
  .store-map iframe{ height: 180px;}
  .external-links{ padding: 0; margin-top: 24px; width: 100%;}
  .external-links h4{ font-size: 16px;}
  .external-links h4:before, .external-links h4:after{ top: inherit; bottom: 16px;}
  .external-links ul{ gap: 12px; padding: 0; width: 100%;}
  .external-links li{ width: calc(98% / 2);}
  .external-links li a{ padding: 18px 8px; font-size: 18px;}

  /* 追従ボタン */
  .fixed-contact-btn{ padding: 10px 4%; width: 100%;}

  /* ボタン横並び */
  .contact_btnlst{ width: 90%; gap: 12px; display: flex; flex-direction: column; margin: 0 auto;}
  .contact_btnlst li{ width: 100%;}
  .contact_btnlst li a{ padding: 15px 0; font-size: 18px;}
  .busy-hours .contact_btnlst{ width: 94%; margin: 0 auto;}
  .fixed-contact-btn .u-pc-only{ display: none;}
  .fixed-contact-btn .contact_btnlst.u-sp-only{ display: flex; flex-direction: row; width: 100%; gap: 0 2%;}
  .main-visual .u-sp-only{  display: flex; flex-direction: column; width: 85%;}
  .fixed-contact-btn .contact_btnlst li{ width: calc(98% / 3);}
  .fixed-contact-btn .contact_btnlst li a{  font-size: 16px;}
}

@media screen and (min-width: 481px) and (max-width: 767px) {
  .month-campaign{ top: 16%; width: 88%; display: none;}
  .fixed-contact-btn a{ max-width: 320px; border-radius: 16px;}
}