@charset "UTF-8";
/* ============================================================
   destyle.css v4.0.0 (MIT License) — doc/10_過去LP（リーフLP）と共通
   https://github.com/nicolas-cusan/destyle.css
   ============================================================ */
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; /* 2 */
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

html, body { margin: 0; padding: 0; }
body { font-family: "Noto Sans JP", sans-serif; color: #1C1C1C; -webkit-font-smoothing: antialiased; }
a { color: #D23A42; text-decoration: none; }
a:hover { opacity: 0.7; }

/* ============================================================
   共通ユーティリティ
   ============================================================ */
.l-page { background: #FFF3D6; }
.u-container { max-width: 1130px; margin: 0 auto; }
@media (max-width: 768px) {
  .u-container { max-width: 560px; }
}
.u-block-img { display: block; width: 100%; height: auto; }
.u-block-img-rounded { display: block; width: 100%; height: auto; border-radius: 10px; }
.u-contain-img { display: block; width: 100%; height: auto; object-fit: contain; }

/* ============================================================
   ヘッダー — doc/10_過去LP（リーフLP）の css/style.css をそのまま流用
   （rem指定はpx換算。html font-size:62.5%基準の1.4rem=14px等に対応）
   ============================================================ */
.l-header { width: 100%; background: #fff; }
.l-header__top {
  width: 100%; max-width: 1280px; height: 80px; margin: 0 auto;
  display: flex; justify-content: space-between; align-items: center;
}
.l-header__logo { display: inline-block; width: 110px; height: auto; }
.l-header__logo > img { width: 100%; height: auto; vertical-align: bottom; }
.l-header-shop { margin-right: 10px; margin-left: auto; }
.l-header-shop > a {
  display: flex; justify-content: center; align-items: center;
  width: 150px; height: 48px; border-radius: 5px; text-decoration: none;
  font-size: 14px; font-weight: 700; color: #fff; background-color: #c4002f;
}
.l-header-shop__icon { width: 14px; height: 14px; margin-right: .5em; fill: #fff; }
.l-header-shop.-large > a { width: 200px; font-size: 15px; }
.l-header-shop.-large > a > .l-header-shop__icon { width: 18px; height: 18px; }
.l-header-sp-button { display: none; }
.l-header-sp-button__shop > a {
  display: block; width: 50px; height: 48px; padding-top: 8px; box-sizing: border-box;
  letter-spacing: 0; text-align: center; font-size: 9px; font-weight: 500;
  color: #fff; border-radius: 4px; background-color: #c4002f;
}
.l-header-sp-button__icon-shop { width: 18px; height: 18px; fill: #fff; }
.l-header-sp-button__shop > a > span { display: block; }
@media (max-width: 1280px) {
  .l-header__top { padding-left: 20px; padding-right: 20px; box-sizing: border-box; }
}
@media (max-width: 767px) {
  .l-header { background-color: #fff; }
  .l-header__top { height: 60px; padding-left: 5px; padding-right: 5px; }
  .l-header__logo { width: 80px; }
  .l-header-shop { display: none; }
  .l-header-sp-button { display: flex; align-items: center; column-gap: 5px; }
}

/* ============================================================
   FV
   ============================================================ */
.p-fv { position: relative; overflow: hidden; background: #fff; }

/* ============================================================
   セクション2　キャッシュバックの説明
   ============================================================ */
.p-cashback { padding: 80px 20px; }
@media (max-width: 767px) {
  .p-cashback { padding-top: 56px; padding-bottom: 56px; }
}
.p-cashback__heading { text-align: center; margin-bottom: 48px; }
.p-cashback__title { font-size: 34px; font-weight: 800; line-height: 1.4; color: #1C1C1C; text-wrap: balance; }
@media (max-width: 767px) {
  .p-cashback__title { font-size: 20px; }
}
.p-cashback__bar { width: 88px; height: 6px; background: #D23A42; border-radius: 3px; margin: 18px auto 0; }
.p-cashback__cards {
  display: flex; gap: 24px; flex-wrap: wrap; align-items: stretch;
  flex-direction: column; max-width: 900px; margin: 0 auto;
}
.p-cashback__card {
  flex: 0 0 auto; background: #fff; border-radius: 14px; box-shadow: 0 6px 20px rgba(0,0,0,.08);
  overflow: hidden; display: flex; flex-direction: column;
}
.p-cashback__card-head {
  color: #fff; text-align: center; padding: 22px 24px;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0;
}
@media (max-width: 767px) {
  .p-cashback__card-head { padding-top: 16px; padding-bottom: 16px; }
}
.p-cashback__card-head--pop { background: #0B3E9A; }
.p-cashback__card-head--norikae { background: #D23A42; }
.p-cashback__badge {
  display: inline-flex; align-items: center; gap: 6px; background: #fff;
  border-radius: 9999px; padding: 5px 16px 6px; font-size: 14px; font-weight: 800; line-height: 1;
}
@media (max-width: 767px) {
  .p-cashback__badge { font-size: 12px; gap: 2px; align-items: baseline; }
}
.p-cashback__badge--pop { color: #0B3E9A; }
.p-cashback__badge--norikae { color: #D23A42; }
.p-cashback__badge-num { font-family: 'Roboto', 'Noto Sans JP', sans-serif; font-style: italic; font-size: 19px; line-height: 1; }
@media (max-width: 767px) {
  .p-cashback__badge-num { font-size: 14px; }
}
.p-cashback__card-title { font-size: 24px; font-weight: 800; line-height: 1.4; margin: 6px 0 0; }
@media (max-width: 767px) {
  .p-cashback__card-title { font-size: 16px; }
}
.p-cashback__card-body {
  padding: 28px 28px 32px; display: flex; flex-direction: column; gap: 20px;
  flex: 1; max-width: 820px; margin: 0 auto; box-sizing: border-box;
}
@media (max-width: 767px) {
  .p-cashback__card-body { padding-top: 20px; padding-bottom: 22px; }
}
.p-cashback__text { font-size: 16px; line-height: 1.9; text-wrap: pretty; }
@media (max-width: 767px) {
  .p-cashback__text { font-size: 14px; }
}
.p-cashback__note { font-size: 13px; line-height: 1.8; color: #5A5A5A; }
@media (max-width: 767px) {
  .p-cashback__note { font-size: 12px; }
}
.p-cashback__note--small { font-size: 13px; line-height: 1.7; color: #5A5A5A; }
@media (max-width: 767px) {
  .p-cashback__note--small { font-size: 12px; }
}

/* ============================================================
   セクション3　対象車種：グレードタブ
   ============================================================ */
.p-grade-tab {
  flex: 1; min-width: 120px; min-height: 76px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 8px; font-size: 18px; cursor: pointer;
  padding: 12px 16px; text-align: center; line-height: 1.35;
  word-break: keep-all; overflow-wrap: break-word;
  transition: all .2s; position: relative; box-sizing: border-box;
  font-family: 'Noto Sans JP', sans-serif;
  background: #fff; color: #0B3E9A; font-weight: 600;
  border: none; outline: none; appearance: none; -webkit-appearance: none;
}
.p-grade-tab.--active { background: #DCEBFA; color: #0B3E9A; font-weight: 700; }
.p-grade-tab.--active::after {
  content: ''; position: absolute; bottom: -13px; left: 50%; transform: translateX(-50%);
  width: 0; height: 0; border-left: 9px solid transparent; border-right: 9px solid transparent;
  border-top: 13px solid #DCEBFA;
}
.p-grade-tab:not(.--active):hover { background: #DCEBFA; transition: background .2s; }
@media (max-width: 768px) {
  .p-grade-tab {
    flex: 0 0 calc(50% - 5px); width: calc(50% - 5px); min-width: 0;
    min-height: 56px; font-size: 15px; padding: 10px 8px;
    word-break: normal; overflow-wrap: break-word;
  }
  .p-grade-tab.--active::after { display: none; }
}
@media (max-width: 480px) {
  .p-grade-tab { flex: 0 0 100%; width: 100%; }
}

/* Wキャッシュバック帯（集中線背景） */
.p-grade-wcashback {
  background: repeating-conic-gradient(from 0deg at 67% 50%, #FFF3B0 0deg 6deg, #FFE066 6deg 12deg);
  border-radius: 12px; padding: 22px; box-sizing: border-box;
}
@media (max-width: 767px) {
  .p-grade-wcashback {
    background: repeating-conic-gradient(from 0deg at 50% 88%, #FFF3B0 0deg 6deg, #FFE066 6deg 12deg);
  }
}

/* グレード情報 ＋ 車両写真の中段レイアウト */
.p-grade-mid { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.p-grade-mid-col { flex: 4 1 220px; display: flex; flex-direction: column; gap: 10px; justify-content: center; }
.p-grade-mid-photo {
  position: relative; flex: 6 1 300px; min-height: 200px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 10px; overflow: visible;
}
@media (max-width: 767px) {
  .p-grade-mid { flex-direction: column; }
  .p-grade-mid-col { flex: none; order: 2; }
  .p-grade-mid-photo { flex: none; min-height: 200px; order: 1; }
}

.p-grade-section {
  position: relative; padding: 80px 20px; background: #D6EEF7;
  background-image: repeating-linear-gradient(135deg, rgba(255,255,255,.35) 0 2px, transparent 2px 26px);
}
@media (max-width: 767px) {
  .p-grade-section { padding-top: 56px; padding-bottom: 56px; }
}
.p-grade-section__inner { position: relative; max-width: 1130px; margin: 0 auto; }
@media (max-width: 768px) {
  .p-grade-section__inner { max-width: 560px; }
}
.p-grade-section__heading { text-align: center; margin-bottom: 44px; }
.p-grade-section__title { font-size: 34px; font-weight: 800; line-height: 1.4; color: #1C1C1C; }
@media (max-width: 767px) {
  .p-grade-section__title { font-size: 20px; }
}
.p-grade-section__bar { width: 88px; height: 6px; border-radius: 3px; margin: 18px auto 24px; background-color: #0B3E9B; }
.p-grade-section__desc { font-size: 16px; line-height: 1.9; color: #1C1C1C; text-wrap: pretty; }
@media (max-width: 767px) {
  .p-grade-section__desc { font-size: 14px; }
}
.p-grade-section__note { max-width: 820px; margin: 14px auto 0; font-size: 13px; line-height: 1.8; color: #4A4A4A; text-align: left; text-wrap: pretty; }
@media (max-width: 767px) {
  .p-grade-section__note { font-size: 12px; }
}
.p-grade-section__footnote { margin-top: 32px; font-size: 13px; line-height: 1.7; color: #5A5A5A; }
@media (max-width: 767px) {
  .p-grade-section__footnote { font-size: 12px; }
}

.p-grade-list { display: flex; flex-direction: column; gap: 56px; }
.p-grade-item__title {
  display: flex; align-items: center; gap: 14px; font-size: 28px; font-weight: 800; color: #1C1C1C;
  margin-bottom: 16px; padding-bottom: 12px; border-bottom: 2px solid #AECDEA;
}
@media (max-width: 767px) {
  .p-grade-item__title { font-size: 18px; }
}
.p-grade-item__title-mark { display: inline-block; width: 7px; height: 1.05em; border-radius: 4px; background: #0B3E9A; }
.p-grade-item__body { border-radius: 20px; box-shadow: 0 8px 24px rgba(0,0,0,.1); overflow: visible; }
.p-grade-item__tabs { background: #0B3E9A; border-radius: 20px 20px 0 0; padding: 28px 32px 22px; }
@media (max-width: 767px) {
  .p-grade-item__tabs { padding: 20px; }
}
.p-grade-item__tabs-inner { display: flex; justify-content: center; align-items: flex-start; flex-wrap: wrap; gap: 10px; }
.p-grade-item__lower { background: #fff; border-radius: 0 0 20px 20px; padding: 36px; }
@media (max-width: 767px) {
  .p-grade-item__lower { padding: 20px; }
}
.p-grade-item__content { display: flex; flex-direction: column; gap: 10px; }
@media (max-width: 767px) {
  /* SP時の表示順：グレード情報＋車画像 → Wキャッシュバック → リース料金 → 補助金 */
  .p-grade-mid { order: 1; }
  .js-wcashback-wrap { order: 2; }
  .p-grade-item__lease-pic { order: 3; }
  .p-grade-item__subsidy-pic { order: 4; }
}
.p-grade-item__gradeimg-wrap { display: flex; align-items: center; justify-content: center; border-radius: 10px; overflow: hidden; }
.p-grade-item__subsidy-img { margin-top: 16px; }

.p-grade-badge {
  position: relative; display: inline-flex; align-self: flex-start; align-items: center; justify-content: center;
  gap: 8px; width: auto; background: #D0202E; border: 2px solid #FFD400; border-radius: 9px;
  padding: 9px 20px; box-sizing: border-box; overflow: hidden;
}
.p-grade-badge__text { display: flex; flex-direction: column; line-height: 1.3; text-align: center; }
.p-grade-badge__title { font-size: 13px; font-weight: 800; color: #fff; letter-spacing: .01em; }
@media (max-width: 767px) {
  .p-grade-badge__title { font-size: 12px; }
}
.p-grade-badge__highlight { color: #FFE066; }
.p-grade-badge__date { font-size: 12px; font-weight: 700; color: #FFE9A8; letter-spacing: .02em; margin-top: 1px; }

/* ============================================================
   セクション4　購入資金プレゼントキャンペーン
   ============================================================ */
.p-campaign { padding: 80px 20px; background: #fff; }
@media (max-width: 767px) {
  .p-campaign { padding-top: 56px; padding-bottom: 56px; }
}
.p-campaign__heading { text-align: center; margin-bottom: 44px; }
.p-campaign__title { font-size: 34px; font-weight: 800; line-height: 1.4; color: #1C1C1C; text-wrap: balance; }
@media (max-width: 767px) {
  .p-campaign__title { font-size: 20px; }
}
.p-campaign__bar { width: 88px; height: 6px; background: #D23A42; border-radius: 3px; margin: 18px auto 24px; }
.p-campaign__desc { font-size: 16px; line-height: 1.9; color: #1C1C1C; text-wrap: pretty; }
@media (max-width: 767px) {
  .p-campaign__desc { font-size: 14px; }
}
.p-campaign__cards { display: flex; gap: 24px; flex-wrap: wrap; margin-bottom: 32px; }
.p-campaign__card {
  position: relative; overflow: hidden; flex: 1 1 420px; border-radius: 18px;
  padding: 34px 28px 32px; text-align: center; color: #1C1C1C;
}
@media (max-width: 767px) {
  .p-campaign__card { padding-top: 24px; padding-bottom: 22px; }
}
.p-campaign__card--web { background: #FDF0E0; }
.p-campaign__card--visit { background: #FBE7E8; }
.p-campaign__card-title { position: relative; font-size: 26px; font-weight: 800; margin-bottom: 14px; }
@media (max-width: 767px) {
  .p-campaign__card-title { font-size: 17px; }
}
.p-campaign__card-title--web { color: #C56A12; }
.p-campaign__card-title--visit { color: #C0272D; }
.p-campaign__card-text { position: relative; font-size: 16px; font-weight: 700; margin-bottom: 14px; }
@media (max-width: 767px) {
  .p-campaign__card-text { font-size: 14px; }
}
.p-campaign__card-num {
  font-family: 'Roboto', 'Noto Sans JP', sans-serif; font-style: italic; font-size: 34px; font-weight: 800;
  letter-spacing: -.01em; vertical-align: -3px; margin: 0 5px 0 2px;
}
@media (max-width: 767px) {
  .p-campaign__card-num { font-size: 22px; }
}
.p-campaign__amount {
  position: relative; display: inline-flex; align-items: baseline; gap: 3px;
  background: #fff; border-radius: 10px; padding: 10px 30px;
}
.p-campaign__amount-num {
  font-family: 'Roboto', 'Noto Sans JP', sans-serif; font-style: italic; font-weight: 800; font-size: 56px;
  line-height: .9; color: #C0272D; letter-spacing: -.02em;
}
@media (max-width: 767px) {
  .p-campaign__amount-num { font-size: 32px; }
}
.p-campaign__amount-unit { font-size: 28px; font-weight: 800; color: #C0272D; }
@media (max-width: 767px) {
  .p-campaign__amount-unit { font-size: 18px; }
}
.p-campaign__amount-tax { font-size: 13px; font-weight: 700; color: #777; }
@media (max-width: 767px) {
  .p-campaign__amount-tax { font-size: 12px; }
}
.p-campaign__targets { font-size: 15px; line-height: 1.9; margin-bottom: 32px; }
@media (max-width: 767px) {
  .p-campaign__targets { font-size: 13px; }
}
.p-campaign__cta {
  position: relative; overflow: hidden; background: linear-gradient(135deg,#F4881B 0%,#E9720F 55%,#D9600A 100%);
  border-radius: 18px; padding: 80px 28px 84px; margin-bottom: 24px;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px;
}
@media (max-width: 767px) {
  .p-campaign__cta { padding-top: 40px; padding-bottom: 40px; }
}
.p-campaign__cta-circle { position: absolute; border-radius: 9999px; background: rgba(255,255,255,.16); }
.p-campaign__cta-circle--1 { top: -50px; right: -50px; width: 190px; height: 190px; }
.p-campaign__cta-circle--2 { bottom: -60px; left: -30px; width: 150px; height: 150px; background: rgba(255,255,255,.11); }
.p-campaign__cta-btn {
  position: relative; display: flex; justify-content: center; align-items: center; gap: 14px;
  width: 100%; max-width: 472px; height: 88px; background: #fff; border-radius: 8px;
  color: #D9600A; font-size: 22px; font-weight: 700; text-decoration: none;transition: opacity 0.2s;
}
@media (max-width: 767px) {
  .p-campaign__cta-btn { font-size: 16px; }
}
.p-campaign__cta-btn:hover { opacity: .85; }
.p-campaign__cta-arrow {
  display: flex; align-items: center; justify-content: center; width: 34px; height: 34px;
  border-radius: 9999px; background: #F4881B; flex-shrink: 0;
}
.p-campaign__note { font-size: 13px; line-height: 1.7; color: #5A5A5A; text-align: center; }
@media (max-width: 767px) {
  .p-campaign__note { font-size: 12px; }
}

/* ============================================================
   フッター注釈
   ============================================================ */
.p-disclaimer { padding: 40px 20px 56px; background-color: #E9E9E9; }
@media (max-width: 767px) {
  .p-disclaimer { padding-top: 28px; padding-bottom: 40px; }
}
.p-disclaimer__text { font-size: 12px; line-height: 1.8; color: #6b6b6b; }

/* ============================================================
   フッター — doc/10_過去LP（リーフLP）の css/style.css をそのまま流用
   （rem指定はpx換算。html font-size:62.5%基準の1.5rem=15px等に対応）
   ============================================================ */
.l-footer { position: relative; background-color: #222; color: #fff; padding-left: 20px; padding-right: 20px; }
.l-footer a { width: fit-content; }
.l-footer__container { padding-top: 64px; padding-bottom: 32px; }
@media (max-width: 767px) {
  .l-footer__container { padding-top: 32px; padding-bottom: 16px; }
}
.l-footer__company-info img { max-width: 200px; height: auto; margin-bottom: 24px; }
@media (max-width: 767px) {
  .l-footer__company-info img { max-width: 100px; height: auto; margin-bottom: 0; }
}
.l-footer__company-info p { font-size: 15px; letter-spacing: .4px; line-height: 1.92; padding-bottom: 10px; }
@media (max-width: 767px) {
  .l-footer__company-info p { font-size: 12px; line-height: 1.5; padding-bottom: 5px; }
}
.l-footer__company-info p:first-of-type { padding-top: 10px; }
.l-footer__company-info a { font-size: 15px; color: #fff; }
@media (max-width: 767px) {
  .l-footer__company-info a { font-size: 12px; margin-bottom: 20px; }
}
.l-footer__copy-right { text-align: center; font-size: 14px; letter-spacing: 0; line-height: 1.42; }
@media (max-width: 767px) {
  .l-footer__copy-right { font-size: 12px; }
}
.l-footer__copy-right .reproduction-prohibit { padding-top: 25px; padding-bottom: 10px; }
@media (max-width: 767px) {
  .l-footer__copy-right .reproduction-prohibit { padding-top: 40px; }
}
