/* @import url('http://example.com/example_style.css'); */

/***********************************************/
/* CSS @imports must be at the top of the file */
/* Add them above this section                 */
/***********************************************/

/*****************************************/
/* TOP    */
/*****************************************/
@import url('https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&display=swap');
:root{--navy:#11284a;--red:#b82028;--gold:#e5b450;--cream:#fff8ed}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'BIZ UDPGothic','Yu Gothic',sans-serif;color:var(--navy)}.qs-top{position:relative;overflow:hidden;isolation:isolate;min-height:670px;padding:66px 24px 74px;text-align:center;background:radial-gradient(ellipse at 50% 14%,#fff 0%,#fffaf0 40%,#f9ebd1 100%)}.qs-top::before,.qs-top::after{content:'';position:absolute;width:440px;height:440px;z-index:-1;opacity:.85;border:28px double rgba(211,161,66,.24);border-radius:50%}.qs-top::before{left:-230px;bottom:-210px}.qs-top::after{right:-230px;top:-215px}.qs-top__spark{position:absolute;color:var(--gold);font-size:32px;opacity:.78}.qs-top__spark--one{left:10%;top:18%}.qs-top__spark--two{right:11%;top:33%}.qs-top__spark--three{left:15%;bottom:24%}.qs-top__inner{max-width:1110px;margin:auto}.qs-top__ribbon{display:inline-flex;align-items:center;gap:12px;background:var(--red);color:white;padding:14px 30px;border:2px solid #f5d57e;outline:5px solid rgba(184,32,40,.1);border-radius:3px;transform:rotate(-2deg);box-shadow:0 8px 22px #7b19192b;font-size:clamp(17px,2.1vw,27px);font-weight:700;letter-spacing:.06em}.qs-top__eyebrow{margin:26px 0 10px;letter-spacing:.14em;font-size:clamp(13px,1.6vw,17px);font-weight:700}.qs-top h1{margin:0;line-height:1.24;font-size:clamp(36px,5.4vw,74px);letter-spacing:.025em;font-weight:700}.qs-top h1 .qs-top__lead{display:block;font-size:clamp(25px,3.1vw,43px);margin-bottom:7px}.qs-top h1 .qs-top__num{color:var(--red);font-size:1.46em;text-shadow:3px 4px 0 #e9c66b}.qs-top__description{font-size:clamp(14px,1.5vw,18px);line-height:1.95;margin:24px auto 29px;max-width:790px}.qs-top__offers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:990px;margin:0 auto 30px}.qs-top__offer{position:relative;background:#fff;border:2px solid #e5be72;box-shadow:0 8px 0 #ebd2a1,0 12px 26px #77592d18;border-radius:16px;padding:21px 12px 19px}.qs-top__offer-label{font-size:13px;font-weight:700;letter-spacing:.04em}.qs-top__offer-title{margin:9px 0;font-size:clamp(17px,2.1vw,26px);font-weight:700}.qs-top__offer-value{color:var(--red);font-size:clamp(18px,2.4vw,32px);font-weight:700}.qs-top__offer:nth-child(2) .qs-top__offer-value{font-size:clamp(17px,2vw,25px)}.qs-top__pill{position:absolute;top:-13px;left:17px;background:var(--navy);color:white;border-radius:99px;font-size:12px;padding:4px 13px;font-weight:700}.qs-top__cta{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-width:310px;padding:19px 33px;background:linear-gradient(180deg,#c93135,#a91520);border:2px solid #f2ce77;border-radius:99px;color:white;text-decoration:none;font-weight:700;font-size:18px;box-shadow:0 7px 0 #7d1621,0 12px 26px #7d16212b;transition:transform .2s,box-shadow .2s}.qs-top__cta:hover{transform:translateY(3px);box-shadow:0 4px 0 #7d1621,0 8px 20px #7d16212b}.qs-top__note{font-size:12px;margin:23px 0 0;color:#576176}@media(max-width:720px){.qs-top{padding:56px 18px 65px;min-height:0}.qs-top__ribbon{padding:12px 17px}.qs-top__description br{display:none}.qs-top__offers{grid-template-columns:1fr;gap:20px;max-width:420px}.qs-top__offer{padding:19px}.qs-top__offer-title{margin:7px 0}.qs-top__cta{min-width:0;width:100%;max-width:420px}.qs-top__spark--one{left:3%}.qs-top__spark--two{right:4%}}

/*****************************************/
/* よくあるお悩み    */
/*****************************************/

@import url('https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&display=swap');

.qs-problems,
.qs-problems * {
  box-sizing: border-box;
}

.qs-problems {
  --qs-navy: #182f4b;
  --qs-red: #b52733;
  --qs-gold: #b38b4a;
  color: var(--qs-navy);
  font-family: 'BIZ UDPGothic', sans-serif;
  background: linear-gradient(180deg, #fffaf1 0%, #fff 48%, #fffaf2 100%);
  padding: 88px 24px 100px;
}

.qs-problems__inner {
  max-width: 1120px;
  margin: 0 auto;
}

.qs-problems__heading {
  text-align: center;
}

.qs-problems__eyebrow {
  color: var(--qs-gold);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .22em;
  margin: 0 0 20px;
}

.qs-problems__lead {
  color: #7b6240;
  font-size: 14px;
  font-weight: 700;
  margin: 0 0 16px;
}

.qs-problems__heading h2 {
  font-size: clamp(28px, 3.6vw, 44px);
  line-height: 1.52;
  letter-spacing: .02em;
  margin: 0;
  font-weight: 700;
}

.qs-problems__heading h2 em {
  font-style: normal;
  color: var(--qs-red);
  background: linear-gradient(transparent 78%, #f9dfbb 78%);
}

.qs-problems__intro {
  font-size: 15px;
  line-height: 2;
  color: #5e6875;
  margin: 25px 0 44px;
}

.qs-problems__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.qs-problems__card {
  min-width: 0;
  border: 1px solid #e6dfd3;
  border-radius: 16px;
  background: #fff;
  padding: 28px 30px 30px;
  box-shadow: 0 9px 26px rgba(20, 42, 70, .055);
  position: relative;
  overflow: hidden;
}

.qs-problems__card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, var(--qs-red), #e5b36d);
}

.qs-problems__card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
}

.qs-problems__number {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .1em;
  color: var(--qs-red);
}

.qs-problems__icon {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: #f9efe8;
  color: var(--qs-red);
  font-size: 24px;
  font-weight: 700;
}

.qs-problems__card h3 {
  margin: 0 0 14px;
  font-size: clamp(18px, 2vw, 22px);
  line-height: 1.6;
  font-weight: 700;
}

.qs-problems__card p {
  font-size: 14px;
  line-height: 1.95;
  color: #5e6875;
  margin: 0;
}

.qs-problems__card strong {
  color: var(--qs-navy);
  font-weight: 700;
}

.qs-problems__closing {
  margin-top: 42px;
  padding: 44px 32px 42px;
  border-radius: 18px;
  background: var(--qs-navy);
  color: #fff;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.qs-problems__closing-label {
  display: inline-block;
  color: #e7c78a;
  font-weight: 700;
  letter-spacing: .17em;
  font-size: 12px;
  margin-bottom: 12px;
}

.qs-problems__closing h3 {
  font-size: clamp(23px, 3vw, 32px);
  line-height: 1.6;
  margin: 0 0 14px;
  font-weight: 700;
}

.qs-problems__closing h3 span {
  color: #efc27a;
}

.qs-problems__closing p {
  max-width: 790px;
  margin: 0 auto 26px;
  color: #eef1f4;
  font-size: 14px;
  line-height: 2;
}

.qs-problems__cta {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 22px;
  padding: 17px 28px;
  background: #bd2938;
  color: #fff !important;
  text-decoration: none;
  border-radius: 40px;
  font-size: 14px;
  font-weight: 700;
  transition: transform .2s, background-color .2s;
}

.qs-problems__cta:hover {
  transform: translateY(-2px);
  background: #d13042;
}

.qs-problems__sp {
  display: none;
}

@media (max-width: 720px) {
  .qs-problems {
    padding: 64px 18px 72px;
  }

  .qs-problems__pc {
    display: none;
  }

  .qs-problems__intro {
    margin: 22px 0 30px;
    font-size: 14px;
  }

  .qs-problems__grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .qs-problems__card {
    padding: 24px 22px;
  }

  .qs-problems__card h3 {
    font-size: 19px;
  }

  .qs-problems__closing {
    margin-top: 30px;
    padding: 32px 20px;
  }

  .qs-problems__sp {
    display: block;
  }

  .qs-problems__cta {
    width: 100%;
    
    

@import url('https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&display=swap');

/* ==============================
   QUICK SCAN YEAR-END CAMPAIGN
   3つの特典セクション
============================== */

.qs-plans {
  --qs-navy: #182f4b;
  --qs-red: #b52733;
  --qs-gold: #b38b4a;

  width: 100%;
  padding: 90px 24px;
  background: #fffaf2;
  color: var(--qs-navy);
  font-family: "BIZ UDPGothic", sans-serif;
  line-height: 1.8;
}

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

.qs-plans__inner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

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

.qs-plans .qs-plans__heading {
  text-align: center;
  margin: 0 0 48px;
}

.qs-plans .qs-plans__eyebrow {
  margin: 0 0 15px;
  color: var(--qs-gold);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.16em;
}

.qs-plans .qs-plans__label {
  display: inline-block;
  margin-bottom: 20px;
  padding: 7px 24px;
  border-radius: 30px;
  background: var(--qs-red);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
}

.qs-plans .qs-plans__heading h2 {
  margin: 0;
  padding: 0;
  color: var(--qs-navy);
  font-family: inherit;
  font-size: clamp(26px, 3vw, 40px);
  font-weight: 700;
  line-height: 1.65;
  letter-spacing: 0.01em;
}

.qs-plans .qs-plans__heading h2 span {
  color: var(--qs-red);
}

.qs-plans .qs-plans__intro {
  max-width: 850px;
  margin: 22px auto 0;
  color: #606a76;
  font-size: 15px;
  line-height: 2;
}

/* ==============================
   カード全体
============================== */

.qs-plans .qs-plans__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  align-items: stretch;
  width: 100%;
}

.qs-plans .qs-plans__card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: #fff;
  border: 2px solid #e5d7c1;
  border-radius: 16px;
  box-shadow: 0 8px 25px rgba(24, 47, 75, 0.07);
}

.qs-plans .qs-plans__card--featured {
  border-color: var(--qs-gold);
  box-shadow: 0 10px 30px rgba(179, 139, 74, 0.16);
}

/* プラン名 */

.qs-plans .qs-plans__ribbon {
  display: block;
  width: 100%;
  padding: 12px 16px;
  background: var(--qs-navy);
  color: #fff;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
}

.qs-plans .qs-plans__card--featured .qs-plans__ribbon {
  background: #a67b3c;
}

.qs-plans .qs-plans__card-inner {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  width: 100%;
  padding: 26px 22px 24px;
}

.qs-plans .qs-plans__target {
  min-height: 42px;
  margin: 0 0 10px;
  color: #95703a;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.7;
  text-align: center;
}

.qs-plans .qs-plans__card h3 {
  min-height: 76px;
  margin: 0 0 20px;
  padding: 0;
  color: var(--qs-navy);
  font-family: inherit;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.7;
  text-align: center;
}

/* ==============================
   価格・特典表示
============================== */

.qs-plans .qs-plans__price-area {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 265px;
  padding: 20px 10px;
  background: #fff6e8;
  border-radius: 12px;
  text-align: center;
}

.qs-plans .qs-plans__price-label {
  margin: 0 0 8px;
  color: #626a75;
  font-size: 12px;
  font-weight: 700;
}

.qs-plans .qs-plans__old-price {
  margin: 0;
  color: #888;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.5;
  text-decoration: line-through;
}

.qs-plans .qs-plans__price-arrow {
  margin: 2px 0;
  color: var(--qs-gold);
  font-size: 23px;
  font-weight: 700;
  line-height: 1.3;
}

.qs-plans .qs-plans__new-price {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 3px;
  margin: 0 0 14px;
  color: var(--qs-red);
  font-size: 23px;
  font-weight: 700;
  line-height: 1.35;
  white-space: nowrap;
}

.qs-plans .qs-plans__new-price span {
  font-size: clamp(42px, 4vw, 58px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.04em;
}

.qs-plans .qs-plans__discount {
  display: inline-block;
  max-width: 100%;
  padding: 8px 15px;
  border-radius: 30px;
  background: var(--qs-red);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}

.qs-plans .qs-plans__bonus-list {
  margin: 0;
  color: var(--qs-navy);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}

.qs-plans .qs-plans__free {
  margin: 6px 0 12px;
  color: var(--qs-red);
  font-size: 48px;
  font-weight: 700;
  line-height: 1.3;
}

/* ==============================
   カード下部の説明
============================== */

.qs-plans .qs-plans__description {
  flex: 1;
  padding: 22px 0;
  color: #566170;
  font-size: 13px;
  line-height: 1.95;
}

.qs-plans .qs-plans__description p {
  margin: 0 0 12px;
  padding: 0;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
}

.qs-plans .qs-plans__description p:last-child {
  margin-bottom: 0;
}

.qs-plans .qs-plans__recommend {
  margin: auto 0 0;
  padding: 16px 0 0;
  border-top: 1px solid #e8e1d6;
  color: var(--qs-navy);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.75;
}

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

.qs-plans .qs-plans__bottom {
  margin-top: 55px;
  text-align: center;
}

.qs-plans .qs-plans__bottom-title {
  margin: 0 0 14px;
  color: var(--qs-navy);
  font-size: 27px;
  font-weight: 700;
  line-height: 1.6;
}

.qs-plans .qs-plans__bottom-text {
  margin: 0 0 25px;
  color: #5e6875;
  font-size: 14px;
  line-height: 1.9;
}

.qs-plans .qs-plans__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  max-width: 100%;
  padding: 18px 30px;
  border: 0;
  border-radius: 40px;
  background: var(--qs-red);
  color: #fff !important;
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  text-decoration: none !important;
  box-shadow: 0 6px 0 #831b27;
  transition: transform 0.2s, box-shadow 0.2s;
}

.qs-plans .qs-plans__cta:hover {
  transform: translateY(3px);
  box-shadow: 0 3px 0 #831b27;
  color: #fff !important;
}

.qs-plans .qs-plans__notes {
  margin: 28px 0 0;
  color: #737b85;
  font-size: 11px;
  line-height: 2;
}

/* ==============================
   タブレット
============================== */

@media (max-width: 1000px) {
  .qs-plans .qs-plans__grid {
    grid-template-columns: 1fr;
    max-width: 560px;
    margin: 0 auto;
    gap: 24px;
  }

  .qs-plans .qs-plans__target,
  .qs-plans .qs-plans__card h3 {
    min-height: 0;
  }

  .qs-plans .qs-plans__price-area {
    min-height: 235px;
  }

  .qs-plans .qs-plans__new-price span {
    font-size: 58px;
  }
}

/* ==============================
   スマートフォン
============================== */

@media (max-width: 600px) {
  .qs-plans {
    padding: 65px 18px 75px;
  }

  .qs-plans .qs-plans__heading {
    margin-bottom: 34px;
  }

  .qs-plans .qs-plans__heading h2 {
    font-size: 25px;
    line-height: 1.65;
  }

  .qs-plans .qs-plans__intro {
    margin-top: 20px;
    font-size: 13px;
  }

  .qs-plans .qs-plans__pc {
    display: none;
  }

  .qs-plans .qs-plans__card-inner {
    padding: 24px 20px;
  }

  .qs-plans .qs-plans__card h3 {
    font-size: 18px;
  }

  .qs-plans .qs-plans__new-price span {
    font-size: 52px;
  }

  .qs-plans .qs-plans__bottom {
    margin-top: 45px;
  }

  .qs-plans .qs-plans__bottom-title {
    font-size: 23px;
  }

  .qs-plans .qs-plans__cta {
    width: 100%;
    gap: 8px;
    padding: 16px 12px;
    font-size: 12px;
  }
}