@charset "UTF-8";


/* =========================================================
  COMMON
========================================================= */

main {
  overflow: hidden;
}

.page {
  width: 100%;
}

.image {
  display: block;
  max-width: 100%;
  height: auto;
}

.section__inner {
  width: calc(100% - 40px);
  max-width: 980px;
  margin: 0 auto;
}

a {
  -webkit-tap-highlight-color: transparent;
}


/* =========================================================
  KV
========================================================= */

.kv-area {
  position: relative;
  overflow: hidden;
  background: none;
}

.kv-area__inner {
  position: relative;
  width: 100%;
  /* max-width: 1180px; */
  margin: 0 auto;
  min-height: 0;
}


/* KV背景 */
.kv-area__bg {
  position: relative;
  width: 100%;
  z-index: 1;
}

.kv-area__bg img {
  display: block;
  width: 100%;
  height: auto;
}


/* KVメインタイトル */
.kv-area__title {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
  width: 79%;
  margin: 0;
  padding: 0;
}

.kv-area__title img {
  width: 100%;
}


/* KV人物 */
.kv-area__people {
  position: absolute;
  z-index: 4;
}

.kv-area__people--left {
  width: 167px;
  right: 90px;
  bottom: 272px;
}

.kv-area__people--right {
  width: 121px;
  left: 100px;
  bottom: 177px;
}


/* =========================================================
  FLOATING ENTRY
========================================================= */

.floating-entry {
  position: fixed;
  right: 0;
  top: 54%;
  transform: translateY(-50%);
  width: 180px;
  z-index: 50;
}

.floating-entry__anchor {
  display: block;
  transition: .3s cubic-bezier(.13, .78, .38, .98);
}

.floating-entry__anchor img {
  display: block;
  width: 100%;
  height: auto;
}


/* =========================================================
  RESULT
  10億円
========================================================= */

.result-area {
  position: relative;
  padding: 0 0 45px;
  overflow: visible;
}

.result-area .section__inner {
  position: relative;
  max-width: 980px;
  margin: 0 auto;
  padding: 0 20px;
  overflow: visible;
}

.result-area__main {
  position: relative;
  z-index: 1;
  width: 972px;
  margin: 0 auto;
}

.result-area__main img {
  display: block;
  width: 100%;
  height: auto;
}

.result-area__people {
  position: absolute;
  z-index: 3;
}

.result-area__people img {
  display: block;
  width: 100%;
  height: auto;
}

.result-area__people--left {
  width: 123px;
  left: 30px;
  top: -30px;
}

.result-area__people--right {
  width: 112px;
  right: -115px;
  top: 90px;
}


/* =========================================================
  CHANCE
========================================================= */

.chance-area {
  position: relative;
  padding: 10px 0 45px;
  background:
    url("../img/chance-bg.jpg")
    center top / cover
    no-repeat;
}

.chance-area__title {
  position: relative;
  z-index: 2;
  width: 84.5%;
  margin: -42px auto 30px;
}

.chance-area__title img {
  width: 100%;
}


/* Chance01 / Chance02 */
.chance-area__list {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 20px;
}

.chance-area__item {
  width: calc(50% - 10px);
  max-width: 482px;
}

.chance-area__item img {
  width: 100%;
}


/* 7.7万円 */
.chance-area__support {
  width: 100%;
  margin: 25px auto 0;
}

.chance-area__support img {
  width: 100%;
}


/* =========================================================
  PRESENT
========================================================= */

.present-area {
  position: relative;
  padding: 25px 0 65px;
  background:
    url("../img/chance-bg.jpg")
    center top / cover
    no-repeat;
}

.present-area__bg {
  display: none;
}

.present-area .section__inner {
  max-width: 980px;
}


/* 黄色枠 */
.present-area__box {
  position: relative;
  padding: 10px 20px 40px;
  background: #fff;
  border: 5px solid #ffe000;
  border-radius: 16px;
}


/* タイトル */
.present-area__title {
  width: 99%;
  margin: 0 auto ;
}

.present-area__title img {
  width: 100%;
}


/* 51.7万円 */
.present-area__subtitle {
  width: 97%;
  margin: 0 auto;
  position: relative;
  top: -55px;
}

.present-area__subtitle img {
  width: 100%;
}


/* キャンペーン概要 */
.present-area__heading {
  width: 32.5%;
  margin: 0 auto 40px;
}

.present-area__heading img {
  width: 100%;
}


/* Chance2列 */
.present-area__chance {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 35px;
}


.present-area__chance-item {
  width: calc(50% - 17.5px);
  text-align: center;
}

.present-area__chance-image {
  width: 100%;
}

.present-area__chance-image img {
  width: 100%;
}

.present-area__chance {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 35px;
}

.present-area__chance::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  background: #CECECE;
  transform: translateX(-50%);
}

.present-area__chance-item {
  position: relative;
  z-index: 1;
  width: calc(50% - 17.5px);
  text-align: center;
}


/* 詳しく見る */
.present-area__detail-button {
  width: 80%;
  margin: 18px auto 0;
}

.present-area__detail-button a {
  display: block;
  transition: opacity .3s ease;
}

.present-area__detail-button img {
  width: 100%;
}

/* =========================================================
  CASHBACK
========================================================= */

.cashback-area {
  padding: 0 0 65px;
  background: #fff;
}

.cashback-area .section__inner {
  max-width: 760px;
}


/* メインビジュアル */
.cashback-area__visual {
  width: 100%;
  margin: 0 auto;
}

.cashback-area__visual img {
  width: 100%;
}


/* タイトル */
.cashback-area__title {
  width: 620px;
  margin: 35px auto 0;
}

.cashback-area__title img {
  width: 100%;
}


/* 説明文 */
.cashback-area__text {
  margin-top: 20px;
  font-size: 1.2rem;
  line-height: 1.7;
  color: #111;
}


/* =========================================================
  詳しく見るボタン
========================================================= */

.cashback-area__detail-button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 64px;
  margin-top: 30px;
  padding: 0;
  border: 0;
  background: #d40032;
  color: #fff;
  font-family: inherit;
  font-size: 3rem;
  font-weight: 400;
  letter-spacing: .05em;
  cursor: pointer;
  transition: opacity .3s ease;
}


/* 右側矢印 */
.cashback-area__detail-arrow {
  position: absolute;
  top: 50%;
  right: 24px;
  width: 10px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform:
    translateY(-70%)
    rotate(45deg);
  transition: transform .3s ease;
}


/* 開いている時 */
.cashback-area__detail-button.is-open
.cashback-area__detail-arrow {
  transform:
    translateY(-25%)
    rotate(225deg);
}


/* =========================================================
  展開部分
========================================================= */

.cashback-detail {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows .45s ease;
}

.cashback-detail.is-open {
  grid-template-rows: 1fr;
}

.cashback-detail__inner {
  min-height: 0;
  overflow: hidden;
}

.cashback-detail__content {
  padding: 22px 25px 28px;
  background: #eee;
}
}


/* =========================================================
  キャンペーン概要
========================================================= */

.cashback-detail__heading {
  width: 100%;
  margin: 0 auto 25px;
}

.cashback-detail__heading img {
  width: 100%;
}


/* =========================================================
  各セクション
========================================================= */

.cashback-detail__section + .cashback-detail__section {
  margin-top: 25px;
}

.cashback-detail__title {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 5px 15px;
  background: #fff;
  font-size: 2.4rem;
  font-weight: 500;
  text-align: center;
  margin-top: 30px;
}

.cashback-detail__period {
  margin-top: 18px;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
}

.cashback-detail__note {
  /* margin-top: 5px; */
  font-size: 2rem;
  text-align: center;
  font-weight: 700;
}

.cashback-detail__lead {
  margin-top: 17px;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
}


/* =========================================================
  10万円 / 5万円
========================================================= */

.cashback-detail__cash-list {
  display: flex;
  justify-content: center;
  gap: 30px;
  margin-top: 18px;
}

.cashback-detail__cash-item {
  width: calc(50% - 15px);
}

.cashback-detail__cash-item img {
  width: 100%;
}


/* =========================================================
  適用条件
========================================================= */

.cashback-detail__conditions {
  margin-top: 18px;
  padding-left: 1.5em;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
}

.cashback-detail__conditions li + li {
  margin-top: 8px;
}


/* =========================================================
  注意書き
========================================================= */

.cashback-detail__notes {
  margin-top: 25px;
  font-size: 1.4rem;
  line-height: 1.6;
}

.cashback-detail__notes p {
  padding-left: 1em;
  text-indent: -1em;
}


/* =========================================================
  販売店
========================================================= */

.cashback-detail__store {
  width: 400px;
  margin: 30px auto 0;
}

.cashback-detail__store a {
  display: block;
  transition: transform .3s ease;
}

.cashback-detail__store img {
  width: 100%;
}


/* =========================================================
  閉じる
========================================================= */

.cashback-detail__close {
  display: block;
  width: 400px;
  margin: 50px auto 0;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.cashback-detail__close img {
  width: 100%;
}


/* =========================================================
  HOVER
========================================================= */

@media (hover: hover) and (pointer: fine) {

  .cashback-area__detail-button:hover {
    opacity: .8;
  }

  .cashback-detail__store a:hover {
    transform: translateY(-3px);
  }

  .cashback-detail__close:hover {
    opacity: .8;
  }

}


/* 注意書き */
.present-area__notes {
  max-width: 650px;
  margin: 50px auto 0;
  font-size: 1.6rem;
  line-height: 1.7;
  text-align: center;
  color: #222;
}

.present-area__notes p + p {
  margin-top: 3px;
}


/* 7.7万円 */
.present-area__support {
  width: 100%;
  margin: 30px auto 0;
}

.present-area__support img {
  width: 100%;
}


/* 応募CTA */
.present-area__cv {
  margin-top: 30px;
  text-align: center;
}

.present-area__cv-text {
  width: 422px;
  margin: 0 auto 13px;
}

.present-area__cv-text img {
  width: 100%;
}

.present-area__cv-button {
  width: 680px;
  margin: 0 auto;
}

.present-area__cv-button a {
  display: block;
  transition: transform .3s ease;
}

.present-area__cv-button img {
  width: 100%;
}


/* =========================================================
  OTHER CAMPAIGN
========================================================= */

.other-campaign {
  padding: 50px 0 35px;
  background: #fff;
}

.other-campaign__title {
  width: 100%;
  margin: 0 auto;
}

.other-campaign__title img {
  width: 100%;
}


/* =========================================================
  CASHBACK
========================================================= */

.cashback-area {
  padding: 0 0 65px;
  background: #fff;
}

.cashback-area .section__inner {
  max-width: 860px;
}


/* メインビジュアル */
.cashback-area__visual {
  width: 100%;
  margin: 0 auto;
}

.cashback-area__visual img {
  width: 100%;
}


/* 最大10万円 */
.cashback-area__title {
  width: 789px;
  margin: 35px auto 0;
}

.cashback-area__title img {
  width: 100%;
}


/* 説明文 */
.cashback-area__text {
  margin-top: 25px;
  font-size: 1.2rem;
  line-height: 1.7;
  color: #111;
}

.cashback-area__note {
  margin-top: 4px;
  font-size: 1.4rem;
}


/* 詳しく見る */
.cashback-area__detail {
  margin-top: 30px;
}

.cashback-area__detail-anchor {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 64px;
  background: #d00032;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  text-decoration: none;
  letter-spacing: .05em;
  transition: opacity .3s ease;
}

.cashback-area__detail-anchor::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 25px;
  width: 10px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: translateY(-70%) rotate(45deg);
}


/* 店舗・試乗予約 */
.cashback-area__buttons {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 30px;
  margin-top: 40px;
}

.cashback-area__button {
  width: calc(50% - 15px);
  text-align: center;
}

.cashback-area__button-title {
  margin-bottom: 12px;
}

.cashback-area__button-title img {
  width: auto;
  max-width: 100%;
  margin: 0 auto;
}

.cashback-area__button > a {
  display: block;
  transition: transform .3s ease;
}

.cashback-area__button > a img {
  width: 100%;
}


/* =========================================================
  BANNER
========================================================= */

.banner-area {
  padding: 0 0 80px;
  background: #fff;
}

.banner-area .section__inner {
  max-width: 860px;
}

.banner-area__image {
  width: 100%;
}

.banner-area__image a {
  display: block;
  transition: opacity .3s ease;
}

.banner-area__image img {
  width: 100%;
}


/* =========================================================
  FOOTNOTE
========================================================= */

.footnote {
  padding: 55px 0 50px;
  background-color: #484848;
  color: #fff;
}

.footnote_inner {
  width: calc(100% - 40px);
  max-width: 980px;
  margin: 0 auto;
}

.footnote-list__block + .footnote-list__block {
  margin-top: 2em;
}

.footnote-list__title {
  font-size: 1rem;
}

.footnote-list__item {
  font-size: 1rem;
  line-height: 1.7;
}


/* =========================================================
  PAGETOP
========================================================= */

.pagetop {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 20;
}

.pagetop_anchor {
  position: relative;
  display: block;
  width: 42px;
  height: 42px;
  background: #d50043;
}

.pagetop_anchor::before {
  content: "";
  position: absolute;
  top: 17px;
  left: 50%;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  transform: translateX(-50%) rotate(45deg);
}


/* =========================================================
  HOVER
========================================================= */

@media (hover: hover) and (pointer: fine) {

  .floating-entry__anchor:hover {
    transform: translateX(-4px);
    opacity: .9;
  }

  .present-area__cv-button a:hover,
  .cashback-area__button > a:hover {
    transform: translateY(-4px);
  }

  .present-area__detail-button a:hover,
  .cashback-area__detail-anchor:hover,
  .banner-area__image a:hover {
    opacity: .75;
  }

}

/* =========================================================
  TABLET
========================================================= */

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

  .kv-area__inner {
    max-width: 1000px;
  }

  .kv-area__title {
    width: 650px;
  }

  .kv-area__people--left {
    left: 25px;
  }

  .kv-area__people--right {
    right: 25px;
  }

  .result-area__main {
    width: 650px;
  }

  .result-area__people--left {
    left: 10px;
  }

  .result-area__people--right {
    right: 10px;
  }

}


/* =========================================================
  SPはindex_sp.css側
========================================================= */

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

  .floating-entry {
    display: none;
  }

}

/* =========================================================
  CHANCE01 MODAL
========================================================= */

.present-area__detail-trigger {
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}


/* モーダル全体 */
.chance01-modal,
.chance01-modal * {
  box-sizing: border-box;
}

.chance01-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;

  display: flex;
  align-items: flex-start;
  justify-content: center;

  padding: 30px 20px;

  overflow-y: auto;

  visibility: hidden;
  opacity: 0;
  pointer-events: none;

  transition:
    opacity .3s ease,
    visibility .3s ease;
}

.chance01-modal.is-open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}


/* 背景 */
.chance01-modal__overlay {
  position: fixed;
  inset: 0;

  background: rgba(0, 0, 0, .6);
}


/* 白いモーダル本体 */
.chance01-modal__box {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 860px;
  margin: auto;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 5px 25px rgba(0, 0, 0, .25);
  padding: 0 30px 40px;
}

.chance01-modal__content {
  width: 100%;
  padding: 35px 0px 30px;
}


/* 右上閉じる */
.chance01-modal__icon-close {
  position: absolute;
  top: -14px;
  right: -14px;
  z-index: 3;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 34px;
  height: 34px;

  padding: 0;
  border: 0;
  border-radius: 50%;

  background: #333;
  color: #fff;

  font-size: 24px;
  line-height: 1;

  cursor: pointer;
}


/* CHANCE01ラベル */
.chance01-modal__label {
  width: 288px;
  margin: -60px auto 20px;
}

.chance01-modal__label img {
  display: block;
  width: 100%;
  height: auto;
}


/* 33万円画像 */
.chance01-modal__main {
  width: 100%;
  max-width: 780px;
  margin: 0 auto 20px;
}

.chance01-modal__main img {
  display: block;
  width: 100%;
  height: auto;
}


.present-area__period {
  margin-top: 25px;

  font-size: 1.6rem;
  line-height: 1.6;

  text-align: center;
}

.present-area__period p {
  margin: 0;
}

.present-area__terms {
  display: inline-block;

  margin-top: 4px;

  color: #e60046;

  text-decoration: underline;
  font-size: 1.2rem;
}

.present-area__terms:hover {
  text-decoration: none;
}


/* 詳しくは販売会社まで */
.present-area__company-button {
  width: 360px;
  max-width: 100%;

  margin: 28px auto 0;
}

/* .present-area__company-button a {
  position: relative;

  display: flex;
  align-items: center;
  justify-content: center;

  min-height: 54px;
  padding: 10px 50px;

  background: #333;
  border-radius: 30px;

  color: #fff;

  font-size: 1.3rem;
  font-weight: 700;

  text-decoration: none;
} */

.present-area__company-arrow {
  position: absolute;
  top: 50%;
  right: 20px;

  transform: translateY(-50%);

  font-size: 2rem;
  font-weight: 400;
  line-height: 1;
}

.present-area__company-button {
  width: 43%;
  max-width: 100%;
  margin: 28px auto 0;
}

.present-area__company-button a {
  display: block;
}

.present-area__company-button img {
  display: block;
  width: 100%;
  height: auto;
}

/* =========================================================
  CTA
========================================================= */

.chance01-modal__entry {
  text-align: center;
}


/* 愛媛日産でご応募ください */
.chance01-modal__entry-text {
  width: 422px;
  max-width: 100%;
  margin: 0 auto 10px;
}

.chance01-modal__entry-text img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}


/* 応募ボタン */
.chance01-modal__entry-button {
  width: 680px;
  max-width: 100%;
  margin: 0 auto;
}

.chance01-modal__entry-button a {
  display: block;

  transition: transform .3s ease;
}

.chance01-modal__entry-button img {
  display: block;
  width: 100%;
  height: auto;
}


/* キャンペーン期間 */
.chance01-modal__period {
  margin-top: 15px;

  font-size: 1.6rem;
  line-height: 1.7;

  text-align: center;
}


/* キャンペーン規約 */
.chance01-modal__terms {
  display: inline-block;

  margin-top: 5px;

  color: #e60046;
  font-size: 1.2rem;

  text-decoration: underline;
}

.chance01-modal__terms:hover {
  text-decoration: none;
}


/* =========================================================
  SECTION
========================================================= */

.chance01-modal__section {
  margin-top: 28px;
}


/* 黒見出し */
/* .chance01-modal__heading {
  padding: 9px 15px;

  background: #333;
  color: #fff;

  font-size: 1.5rem;
  font-weight: 700;

  text-align: center;
} */


/* ピンク見出し */
.chance01-modal__title {
  margin-top: 15px;
  padding: 8px 15px;

  background: #ff3d7c;
  color: #fff;

  font-size: 2.4rem;
  font-weight: 400;

  text-align: center;
}


/* 本文 */
.chance01-modal__text {
  margin-top: 15px;

  font-size: 2rem;
  line-height: 1.8;

  color: #222;
}

.chance01-modal__text--center {
  text-align: center;
}


/* =========================================================
  賞品適用条件
========================================================= */

.chance01-modal__condition {
  margin-top: 20px;
}

.chance01-modal__condition-main {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.8;

  text-align: center;
}


/* =========================================================
  注意書き
========================================================= */

.chance01-modal__notes {
  margin-top: 12px;

  font-size: 1.4rem;
  line-height: 1.7;

  text-align: left;
}

.chance01-modal__notes p {
  padding-left: 1em;
  text-indent: -1em;
}

.chance01-modal__notes p + p {
  margin-top: 2px;
}

.chance01-modal__red {
  color: #e60046;
}


/* =========================================================
  キャンペーン変更注記
========================================================= */

.chance01-modal__change {
  margin-top: 30px;

  font-size: 1.2rem;
  font-weight: 700;

  text-align: center;
}


/* =========================================================
  下部CTA
========================================================= */

.chance01-modal__entry--bottom {
  margin-top: 35px;
}


/* =========================================================
  CLOSE
========================================================= */

.chance01-modal__close {
  display: block;

  width: 300px;
  max-width: 100%;

  margin: 25px auto 0;
  padding: 0;

  border: 0;
  background: transparent;

  cursor: pointer;
}

.chance01-modal__close img {
  display: block;
  width: 100%;
  height: auto;
}


/* =========================================================
  HOVER
========================================================= */

@media (hover: hover) and (pointer: fine) {

  .chance01-modal__entry-button a:hover {
    transform: translateY(-3px);
  }

  .chance01-modal__close:hover {
    opacity: .8;
  }

}


/* =========================================================
  MODAL OPEN
========================================================= */

body.is-modal-open {
  overflow: hidden;
}





/* =========================================================
  CHANCE02 MODAL
========================================================= */

.chance02-modal,
.chance02-modal * {
  box-sizing: border-box;
}

.chance02-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;

  display: flex;
  align-items: flex-start;
  justify-content: center;

  padding: 30px 20px;

  overflow-y: auto;

  visibility: hidden;
  opacity: 0;
  pointer-events: none;

  transition:
    opacity .3s ease,
    visibility .3s ease;
}

.chance02-modal.is-open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}


/* 背景 */
.chance02-modal__overlay {
  position: fixed;
  inset: 0;

  background: rgba(0, 0, 0, .6);
}


/* =========================================================
  白いモーダル本体
========================================================= */

.chance02-modal__box {
  position: relative;
  z-index: 1;

  width: 100%;
  max-width: 850px;
  margin: auto;

  padding: 0 30px 40px;

  background: #fff;
  border-radius: 10px;

  box-shadow: 0 5px 25px rgba(0, 0, 0, .25);
}

.chance02-modal__content {
  width: 100%;
  padding: 35px 0px 30px;
}


/* =========================================================
  右上閉じる
========================================================= */

.chance02-modal__icon-close {
  position: absolute;
  top: -14px;
  right: -14px;
  z-index: 3;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 34px;
  height: 34px;

  padding: 0;
  border: 0;
  border-radius: 50%;

  background: #333;
  color: #fff;

  font-size: 24px;
  line-height: 1;

  cursor: pointer;
}


/* =========================================================
  CHANCE02ラベル
========================================================= */

.chance02-modal__label {
  width: 288px;
  margin: -60px auto 20px;
}

.chance02-modal__label img {
  display: block;
  width: 100%;
  height: auto;
}


/* =========================================================
  11万円画像
========================================================= */

.chance02-modal__main {
  width: 100%;
  max-width: 860px;
  margin: 0 auto 20px;
}

.chance02-modal__main img {
  display: block;
  width: 100%;
  height: auto;
}


/* =========================================================
  CTA
========================================================= */

.chance02-modal__entry {
  text-align: center;
}


/* 愛媛日産でご応募ください */
.chance02-modal__entry-text {
  width: 422px;
  max-width: 100%;
  margin: 0 auto 10px;
}

.chance02-modal__entry-text img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}


/* 応募ボタン */
.chance02-modal__entry-button {
  width: 680px;
  max-width: 100%;
  margin: 0 auto;
}

.chance02-modal__entry-button a {
  display: block;
  transition: transform .3s ease;
}

.chance02-modal__entry-button img {
  display: block;
  width: 100%;
  height: auto;
}


/* =========================================================
  キャンペーン期間
========================================================= */

.chance02-modal__period {
  margin-top: 15px;

  font-size: 1.6rem;
  line-height: 1.7;

  text-align: center;
}


/* キャンペーン規約 */
.chance02-modal__terms {
  display: inline-block;

  margin-top: 5px;

  color: #e60046;
  font-size: 1.2rem;

  text-decoration: underline;
}

.chance02-modal__terms:hover {
  text-decoration: none;
}


/* =========================================================
  SECTION
========================================================= */

.chance02-modal__section {
  margin-top: 28px;
}


/* キャンペーン賞品について画像 */
.chance02-modal__heading {
  width: 100%;
  margin: 0;
  padding: 0;

  background: none;
}

.chance02-modal__heading picture {
  display: block;
  width: 100%;
}

.chance02-modal__heading img {
  display: block;
  width: 100%;
  height: auto;
}


/* =========================================================
  青見出し
========================================================= */

.chance02-modal__title {
  margin-top: 15px;
  padding: 8px 15px;

  background: #39b5e8;
  color: #fff;

  font-size: 2.4rem;
  font-weight: 400;

  text-align: center;
}


/* =========================================================
  本文
========================================================= */

.chance02-modal__text {
  margin-top: 15px;

  font-size: 2rem;
  line-height: 1.8;

  color: #222;
}

.chance02-modal__text--center {
  text-align: center;
}


/* =========================================================
  適用条件
========================================================= */

.chance02-modal__condition {
  margin-top: 20px;
}

.chance02-modal__condition-main {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.8;

  text-align: center;
}


/* =========================================================
  注意書き
========================================================= */

.chance02-modal__notes {
  margin-top: 12px;

  font-size: 1.4rem;
  line-height: 1.7;

  text-align: left;
}

.chance02-modal__notes p {
  padding-left: 1em;
  text-indent: -1em;
}

.chance02-modal__notes p + p {
  margin-top: 2px;
}


/* 赤注釈 */
.chance02-modal__red {
  color: #e60046;
}


/* =========================================================
  STEP
========================================================= */

.chance02-modal__steps {
  width: 100%;
  max-width: 700px;

  margin: 20px auto 0;
}

.chance02-modal__step {
  width: 100%;
}

.chance02-modal__step + .chance02-modal__step {
  margin-top: 12px;
}

.chance02-modal__step img {
  display: block;
  width: 100%;
  height: auto;
}


/* STEP下注釈 */
.chance02-modal__notes--step {
  max-width: 700px;
  margin: 15px auto 0;
  padding: 10px;

  background: #f6f6f6;
}


/* =========================================================
  キャンペーン変更注記
========================================================= */

.chance02-modal__change {
  margin-top: 30px;

  font-size: 1.2rem;
  font-weight: 700;

  text-align: center;
}


/* =========================================================
  下部CTA
========================================================= */

.chance02-modal__entry--bottom {
  margin-top: 35px;
}


/* =========================================================
  CLOSE
========================================================= */

.chance02-modal__close {
  display: block;

  width: 300px;
  max-width: 100%;

  margin: 25px auto 0;
  padding: 0;

  border: 0;
  background: transparent;

  cursor: pointer;
}

.chance02-modal__close img {
  display: block;
  width: 100%;
  height: auto;
}


/* =========================================================
  HOVER
========================================================= */

@media (hover: hover) and (pointer: fine) {

  .chance02-modal__entry-button a:hover {
    transform: translateY(-3px);
  }

  .chance02-modal__close:hover {
    opacity: .8;
  }

}


.chance02-modal__step {
  position: relative;
  width: 100%;
}



/* =========================================================
  CHANCE02 STEP 矢印
========================================================= */

.chance02-modal__step {
  position: relative;
  width: 100%;
}

/* STEP01〜04の下に矢印 */
.chance02-modal__step-arrow {
  display: flex;
  justify-content: center;
  gap: 0;
  margin: 10px 0 12px;
}

.chance02-modal__step-arrow span {
  display: none;
}

/* PCは真ん中の矢印1個だけ */
.chance02-modal__step-arrow span:nth-child(2) {
  display: block;
  width: 0;
  height: 0;

  border-left: 17px solid transparent;
  border-right: 17px solid transparent;
  border-top: 17px solid #c9efff;
}


.modal-terms {
  max-width: 890px;
  padding: 44px;
  background-color: #fff;
}

.present-notes {
  text-align: left;
}

.present-notes__title {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.4;
  margin-bottom: 20px;
}

.present-notes__heading {
  margin: 30px 0;
  text-align: center;
  position: relative;
}

.present-notes__heading:before {
  content: " ";
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  height: 1px;
  background: #000;
  z-index: 1;
}

.present-notes__heading-text {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  padding: 0 15px;
  margin: 0 20px;
  background: #fff;
  position: relative;
  z-index: 2;
}

.present-notes__subtitle {
  margin: 20px 0 5px;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
}

.present-notes__text {
  font-size: 12px;
  margin-bottom: 20px;
  line-height: 1.5;
}

.present-notes__dt {
  margin: 20px 0 5px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}

.present-notes__dd {
  font-size: 12px;
  margin-bottom: 20px;
  line-height: 1.5;
}

.present-notes__anchor {
  color: #1897e0;
  transition: .3s cubic-bezier(.13, .78, .38, .98);
}

.present-notes__anchor:hover {
  text-decoration: none;
}

.present-notes__close {
  width: 60px;
  height: 60px;
  position: absolute;
  right: 15px;
  top: 15px;

  text-indent: -1000px;

  background: url(../img/btn-modal_close.png) no-repeat center center;
  background-size: contain;

  cursor: pointer;
  overflow: hidden;

  transition: .3s cubic-bezier(.13, .78, .38, .98);
}

.present-notes .o-indent {
  display: inline-block;
  padding-left: 1em;
  text-indent: -1em;
}

.present-notes .o-indent-big {
  display: inline-block;
  padding-left: 1.25em;
  text-indent: -1.25em;
}

.present-notes .o-bold {
  font-weight: 700;
}

.present-notes .o-red {
  color: #c3092f;
}



.c-modal {
    max-width: 800px;
    padding: 60px 50px 44px;
}

.c-modal--terms {
  position: relative;
}

.c-modal--terms .c-modal__close {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 10;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 40px;
  height: 40px;
  padding: 0;

  border: none;
  border-radius: 50%;
  background: #02007f;
  cursor: pointer;
}

.c-modal--terms .c-modal__close::before,
.c-modal--terms .c-modal__close::after {
  content: "";
  position: absolute;
  width: 16px;
  height: 2px;
  background: #fff;
}

.c-modal--terms .c-modal__close::before {
  transform: rotate(45deg);
}

.c-modal--terms .c-modal__close::after {
  transform: rotate(-45deg);
}
