@charset "UTF-8";

:root{
  --font-mincho:"Shippori Mincho","Hiragino Mincho ProN","Yu Mincho","Noto Serif JP",serif;
  --font-en:"Cormorant",Georgia,"Times New Roman",serif;
  --ink:#e8ecf4;
  --ink-soft:#b1b8cc;
  --gold:#c9a06a;
  --gold-l:#e8c898;
  --navy:#0f0f1f;
  --navy-mid:#1b1b29;
  --navy-soft:#2b2940;
  --gold-grad:linear-gradient(120deg,#f0d4a8 0%,#c9a06a 48%,#a07848 100%);
  --cta-grad:linear-gradient(180deg,#f0d4a8 0%,#c9a06a 42%,#a07848 100%);
  --line:#06c755;
  --lp-width:390px;
  --lp-vw:390px;
}

*{margin:0;padding:0;box-sizing:border-box}
html{
  -webkit-text-size-adjust:100%;
  background:#12121c;
}
body{
  width:var(--lp-width);
  max-width:var(--lp-width);
  margin:0 auto;
  overflow-x:hidden;
  font-family:var(--font-mincho);
  background:#080814;
  color:#fff;
  -webkit-font-smoothing:antialiased;
  line-height:1.6;
}
img{max-width:100%;height:auto;display:block}
button,a{font-family:inherit}
button{border:0;background:none;cursor:pointer}
ul{list-style:none}

.lp_wrap{
  width:100%;
  overflow:hidden;
  position:relative;
  background:linear-gradient(180deg,#1b1b29 0%,#0f0f1f 55%,#080814 100%);
  min-height:100dvh;
  box-shadow:0 0 24px rgba(0,0,0,.45);
}

/* ── Popup（白背景＋添付画像） ── */
.popup[hidden]{display:none}
.popup{
  position:fixed;
  top:0;
  bottom:0;
  left:50%;
  width:var(--lp-width);
  margin-left:calc(var(--lp-width) / -2);
  z-index:1000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:calc(20/750*var(--lp-vw));
  box-sizing:border-box;
}
.popup.is-open .popup__backdrop{animation:popupBackdropIn .45s ease forwards}
.popup.is-open .popup__dialog{animation:popupDialogIn .7s cubic-bezier(.18,1.1,.32,1) forwards}
.popup__backdrop{
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(6px);
  opacity:0;
}
.popup__dialog{
  position:relative;
  z-index:1;
  width:min(100%,calc(640/750*var(--lp-vw)));
  max-height:min(94dvh,960px);
  overflow:auto;
  border-radius:calc(18/750*var(--lp-vw));
  background:#fff;
  border:1px solid rgba(201,160,106,.35);
  box-shadow:
    0 0 0 1px rgba(201,160,106,.08),
    0 0 40px rgba(201,160,106,.18),
    0 24px 60px rgba(15,15,31,.18);
  opacity:0;
  transform:translateY(28px) scale(.86);
  transform-origin:center center;
  padding:calc(14/750*var(--lp-vw));
}
.popup__close{
  position:absolute;
  top:calc(18/750*var(--lp-vw));
  right:calc(18/750*var(--lp-vw));
  width:calc(44/750*var(--lp-vw));
  height:calc(44/750*var(--lp-vw));
  border-radius:50%;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(15,15,31,.16);
  z-index:3;
  box-shadow:0 4px 12px rgba(15,15,31,.12);
}
.popup__close::before,
.popup__close::after{
  content:"";
  position:absolute;
  top:50%;left:50%;
  width:46%;height:1.5px;
  background:rgba(15,15,31,.75);
}
.popup__close::before{transform:translate(-50%,-50%) rotate(45deg)}
.popup__close::after{transform:translate(-50%,-50%) rotate(-45deg)}
.popup__frame{
  position:relative;
  line-height:0;
  background:#fff;
  border-radius:calc(12/750*var(--lp-vw));
  overflow:hidden;
}
.popup__visual{
  width:100%;
  height:auto;
  display:block;
  border-radius:calc(12/750*var(--lp-vw));
}
/* 画像内の緑CTAに合わせたタップ領域 */
.popup__cta{
  position:absolute;
  left:6%;
  right:6%;
  bottom:2.8%;
  height:7.8%;
  z-index:2;
  padding:0;
  margin:0;
  width:auto;
  border-radius:999px;
  background:transparent;
  box-shadow:none;
  color:transparent;
  font-size:0;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.popup__cta-main,.popup__cta-sub{display:none}
@keyframes popupBackdropIn{from{opacity:0}to{opacity:1}}
@keyframes popupDialogIn{
  0%{opacity:0;transform:translateY(36px) scale(.82)}
  60%{opacity:1;transform:translateY(-6px) scale(1.03)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes pulseScale{
  0%,50%,100%{transform:scale(1)}
  25%,75%{transform:scale(1.04)}
}
@media (prefers-reduced-motion:reduce){
  .popup.is-open .popup__backdrop,
  .popup.is-open .popup__dialog{animation:none;opacity:1;transform:none}
  .btn--line{animation:none}
}

/* ── Screens ── */
.screens{position:relative}
.screen[hidden]{display:none}
.screen--quiz{
  position:relative;
  background:
    radial-gradient(ellipse at 18% 8%,rgba(201,160,106,.08) 0%,transparent 42%),
    radial-gradient(ellipse at 88% 70%,rgba(90,110,160,.1) 0%,transparent 48%),
    linear-gradient(180deg,#1b1b29 0%,#0f0f1f 50%,#080814 100%);
  min-height:100dvh;
  overflow:hidden;
}
/* 控えめな星（数を絞る） */
.screen--quiz::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background-image:
    radial-gradient(1.2px 1.2px at 12% 16%,rgba(255,255,255,.4),transparent),
    radial-gradient(1px 1px at 38% 10%,rgba(232,208,168,.3),transparent),
    radial-gradient(1.2px 1.2px at 72% 22%,rgba(255,255,255,.35),transparent),
    radial-gradient(1px 1px at 90% 14%,rgba(255,248,232,.3),transparent),
    radial-gradient(1px 1px at 8% 70%,rgba(255,255,255,.25),transparent),
    radial-gradient(1.2px 1.2px at 84% 68%,rgba(232,208,168,.28),transparent),
    radial-gradient(1px 1px at 56% 88%,rgba(255,255,255,.22),transparent),
    radial-gradient(1px 1px at 26% 92%,rgba(255,248,232,.22),transparent);
  opacity:.55;
}
.screen--result{
  background:linear-gradient(180deg,#080814 0%,#0f0f1f 36%,#1b1b29 100%);
}
.screen--result .result{
  opacity:0;
  transform:translateY(18px) scale(.97);
}
.screen--result.is-active .result{
  opacity:1;
  transform:none;
  transition:opacity .7s ease .1s,transform .7s cubic-bezier(.22,.8,.28,1) .1s;
}
.screen--result.is-active .result__card{
  animation:resultCardShine 1.4s ease .35s both;
}
@keyframes resultCardShine{
  0%{box-shadow:0 14px 36px rgba(0,0,0,.35),0 0 0 rgba(201,160,106,0)}
  40%{box-shadow:0 14px 36px rgba(0,0,0,.35),0 0 40px rgba(232,200,152,.55)}
  100%{box-shadow:0 14px 36px rgba(0,0,0,.35),0 0 0 rgba(201,160,106,0)}
}

/* Result reveal — sparkle transition */
.result-reveal{
  position:fixed;
  top:0;
  bottom:0;
  left:50%;
  width:var(--lp-width);
  margin-left:calc(var(--lp-width) / -2);
  z-index:1200;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
  overflow:hidden;
}
.result-reveal[hidden]{display:none}
.result-reveal__veil{
  position:absolute;
  inset:0;
  background:radial-gradient(ellipse at 50% 42%,rgba(40,32,20,.55) 0%,rgba(8,8,20,.92) 70%);
  opacity:0;
}
.result-reveal__flash{
  position:absolute;
  width:120%;
  max-width:420px;
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,240,210,.85) 0%,rgba(232,200,152,.35) 28%,rgba(201,160,106,0) 62%);
  opacity:0;
  transform:scale(.2);
}
.result-reveal__sparkles{
  position:absolute;
  inset:0;
  overflow:hidden;
}
.result-reveal__spark{
  position:absolute;
  left:var(--x);
  top:var(--y);
  margin:0;
  padding:0;
  opacity:0;
  color:var(--gold);
  font-size:var(--size);
  line-height:1;
  font-family:serif;
  font-weight:400;
  transform:translate(-50%,-50%) scale(0) rotate(var(--rot,0deg));
  animation:sparkTwinkle var(--dur) ease-out var(--delay) forwards;
  text-shadow:none;
  -webkit-text-stroke:0;
}
.result-reveal__label{
  position:relative;
  z-index:2;
  font-family:var(--font-en);
  font-size:clamp(22px,6.2vw,36px);
  font-weight:500;
  letter-spacing:.28em;
  color:var(--gold);
  text-indent:.28em;
  opacity:0;
  transform:translateY(8px);
  text-shadow:none;
}
.result-reveal.is-playing .result-reveal__veil{
  animation:revealVeil 1.35s ease forwards;
}
.result-reveal.is-playing .result-reveal__flash{
  animation:revealFlash 1.1s ease-out forwards;
}
.result-reveal.is-playing .result-reveal__label{
  animation:revealLabel 1.2s ease forwards;
}
@keyframes revealVeil{
  0%{opacity:0}
  15%{opacity:1}
  70%{opacity:1}
  100%{opacity:0}
}
@keyframes revealFlash{
  0%{opacity:0;transform:scale(.15)}
  25%{opacity:.95;transform:scale(1)}
  100%{opacity:0;transform:scale(1.55)}
}
@keyframes revealLabel{
  0%{opacity:0;transform:translateY(12px)}
  25%{opacity:1;transform:translateY(0)}
  70%{opacity:1}
  100%{opacity:0;transform:translateY(-6px)}
}
@keyframes sparkTwinkle{
  0%{opacity:0;transform:translate(-50%,-50%) scale(0) rotate(var(--rot,0deg))}
  18%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(var(--rot,0deg))}
  100%{opacity:0;transform:translate(-50%,-50%) scale(.4) translateY(var(--drift)) rotate(calc(var(--rot,0deg) + 40deg))}
}
@media (prefers-reduced-motion:reduce){
  .result-reveal,.screen--result .result,.screen--result.is-active .result,.screen--result.is-active .result__card{
    animation:none!important;
    transition:none!important;
    opacity:1!important;
    transform:none!important;
  }
}

/* FV strip — banner image */
.fv{
  position:relative;
  z-index:1;
  overflow:hidden;
  background:var(--navy);
  line-height:0;
  padding:0;
}
.fv__media{
  margin:0;
  line-height:0;
}
.fv__img{
  width:100%;
  height:auto;
  display:block;
  aspect-ratio:800/275;
  object-fit:cover;
  object-position:center;
}

/* Quiz body */
.quiz__body{
  position:relative;
  z-index:1;
  padding:calc(12/750*var(--lp-vw)) calc(28/750*var(--lp-vw)) calc(40/750*var(--lp-vw));
}
.quiz__box{
  background:rgba(22,22,36,.96);
  border-radius:calc(18/750*var(--lp-vw));
  padding:calc(28/750*var(--lp-vw)) calc(24/750*var(--lp-vw)) calc(32/750*var(--lp-vw));
  box-shadow:0 12px 36px rgba(0,0,0,.28);
  border:1px solid rgba(201,160,106,.35);
}
.quiz__progress{
  margin-bottom:calc(26/750*var(--lp-vw));
}
.quiz__progress-label{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:calc(12/750*var(--lp-vw));
  margin-bottom:calc(12/750*var(--lp-vw));
}
.quiz__progress-label-txt{
  font-family:var(--font-mincho);
  font-size:calc(22/750*var(--lp-vw));
  font-weight:600;
  letter-spacing:.12em;
  color:var(--gold);
}
.quiz__progress-count{
  font-family:var(--font-mincho);
  font-size:calc(18/750*var(--lp-vw));
  font-weight:600;
  letter-spacing:.08em;
  color:rgba(255,255,255,.7);
}
.quiz__progress-track{
  position:relative;
  height:calc(6/750*var(--lp-vw));
  margin:0 calc(8/750*var(--lp-vw)) calc(16/750*var(--lp-vw));
  border-radius:999px;
  background:#2a2a3a;
  overflow:hidden;
}
.quiz__progress-bar{
  height:100%;
  border-radius:inherit;
  background:var(--gold);
  transition:width .35s ease;
}
.quiz__steps{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin:0 calc(2/750*var(--lp-vw));
  padding:0;
  list-style:none;
}
.quiz__step{
  width:calc(44/750*var(--lp-vw));
  height:calc(44/750*var(--lp-vw));
  border-radius:50%;
  border:2px solid var(--gold);
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:var(--font-mincho);
  font-size:calc(22/750*var(--lp-vw));
  font-weight:600;
  letter-spacing:.06em;
  color:var(--gold);
  background:transparent;
  box-shadow:none;
  text-shadow:none;
}
.quiz__step span{
  font-family:inherit;
  font-weight:inherit;
  color:inherit;
  text-shadow:none;
}
.quiz__step.is-current{
  background:var(--gold);
  border-color:var(--gold);
  color:#1a1520;
  box-shadow:none;
}
.quiz__step.is-done{
  background:transparent;
  border-color:var(--gold);
  color:var(--gold);
}

.quiz__ask{
  display:flex;
  gap:calc(12/750*var(--lp-vw));
  align-items:flex-end;
  margin-bottom:calc(22/750*var(--lp-vw));
  min-height:calc(160/750*var(--lp-vw));
}
.quiz__chara-home{
  flex:0 0 calc(140/750*var(--lp-vw));
  width:calc(140/750*var(--lp-vw));
  min-height:calc(160/750*var(--lp-vw));
}
.quiz__chara-home.is-empty{
  /* キャラ移動後も枠の高さを維持 */
  visibility:hidden;
  pointer-events:none;
}
.quiz__chara{
  margin:0;
  border-radius:0;
  overflow:visible;
  background:transparent;
  border:none;
  line-height:0;
  width:100%;
  will-change:transform;
}
.quiz__chara img{
  width:100%;
  height:auto;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:bottom center;
  display:block;
  filter:drop-shadow(0 6px 14px rgba(0,0,0,.35));
}
.quiz__head{flex:1;min-width:0;padding-top:calc(4/750*var(--lp-vw));padding-bottom:calc(10/750*var(--lp-vw))}
.quiz__qno{
  font-family:var(--font-mincho);
  font-size:calc(22/750*var(--lp-vw));
  letter-spacing:.18em;
  color:var(--gold);
  font-weight:600;
  text-shadow:none;
}
.quiz__q{
  margin-top:calc(6/750*var(--lp-vw));
  font-size:calc(26/750*var(--lp-vw));
  font-weight:700;
  letter-spacing:.04em;
  line-height:1.4;
  color:#fff;
  white-space:nowrap;
}

.options{display:flex;flex-direction:column;gap:calc(12/750*var(--lp-vw))}
.option{
  display:flex;
  align-items:center;
  gap:calc(14/750*var(--lp-vw));
  padding:calc(20/750*var(--lp-vw)) calc(20/750*var(--lp-vw));
  border-radius:calc(12/750*var(--lp-vw));
  background:rgba(255,255,255,.04);
  border:1.5px solid rgba(255,255,255,.14);
  cursor:pointer;
  transition:border-color .2s,background .2s,box-shadow .2s;
  -webkit-tap-highlight-color:transparent;
}
.option:hover,
.option:focus-visible{
  border-color:rgba(201,160,106,.45);
  outline:none;
}
.option.is-selected{
  background:rgba(201,160,106,.14);
  border-color:var(--gold);
  box-shadow:0 6px 16px rgba(0,0,0,.25);
}
.option__radio{
  flex:0 0 calc(28/750*var(--lp-vw));
  width:calc(28/750*var(--lp-vw));
  height:calc(28/750*var(--lp-vw));
  border-radius:50%;
  border:1.5px solid rgba(255,255,255,.35);
  position:relative;
  background:rgba(15,15,31,.4);
}
.option.is-selected .option__radio{
  border-color:var(--gold);
  background:var(--gold-grad);
}
.option.is-selected .option__radio::after{
  content:"";
  position:absolute;
  inset:28%;
  border-radius:50%;
  background:#0f0f1f;
}
.option__label{
  flex:1;
  font-size:calc(26/750*var(--lp-vw));
  letter-spacing:.04em;
  line-height:1.45;
  color:#fff;
  font-weight:600;
}

.quiz__nav{
  display:flex;
  gap:calc(12/750*var(--lp-vw));
  margin-top:calc(24/750*var(--lp-vw));
  align-items:flex-end;
}
.quiz__nav-main{
  flex:1;
  display:flex;
  align-items:flex-end;
  gap:calc(8/750*var(--lp-vw));
  min-width:0;
}
.quiz__chara-slot{
  flex:0 0 auto;
  display:flex;
  align-items:flex-end;
  min-height:0;
}
.quiz__chara-slot:empty{display:none}
.quiz__chara-slot .quiz__chara{
  width:calc(108/750*var(--lp-vw));
  animation:charaArrive .55s cubic-bezier(.22,.8,.28,1);
}
@keyframes charaArrive{
  0%{filter:brightness(1.15)}
  100%{filter:brightness(1)}
}
.quiz__prev{
  flex:0 0 auto;
  padding:calc(18/750*var(--lp-vw)) calc(20/750*var(--lp-vw));
  font-size:calc(22/750*var(--lp-vw));
  letter-spacing:.06em;
  color:rgba(255,255,255,.78);
  border-radius:999px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.06);
}
.quiz__next{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:calc(8/750*var(--lp-vw));
  padding:calc(20/750*var(--lp-vw)) calc(16/750*var(--lp-vw));
  border-radius:999px;
  background:var(--cta-grad);
  color:#0f0f1f;
  font-weight:700;
  letter-spacing:.1em;
  box-shadow:0 8px 20px rgba(201,160,106,.3);
  opacity:.4;
  pointer-events:none;
  transition:opacity .2s,box-shadow .3s,transform .3s;
  min-width:0;
}
.quiz__next.is-ready{
  opacity:1;
  pointer-events:auto;
  box-shadow:0 10px 26px rgba(201,160,106,.45);
  animation:ctaPulse 1.8s ease-in-out infinite;
}
@keyframes ctaPulse{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.03)}
}
@media (prefers-reduced-motion:reduce){
  .quiz__next.is-ready{animation:none}
  .quiz__chara-slot .quiz__chara{animation:none}
}
.quiz__next-txt{font-size:calc(28/750*var(--lp-vw))}
.quiz__next-arrow-ico{width:calc(22/750*var(--lp-vw));height:calc(22/750*var(--lp-vw));display:block}

/* Result */
.result{padding-bottom:calc(40/750*var(--lp-vw))}
.result__head{
  position:relative;
  text-align:center;
  color:#fff;
  padding:calc(48/750*var(--lp-vw)) calc(28/750*var(--lp-vw)) calc(36/750*var(--lp-vw));
  background:
    radial-gradient(ellipse at 50% 0%,rgba(201,160,106,.16) 0%,transparent 55%),
    linear-gradient(180deg,#080814 0%,#0f0f1f 100%);
}
.result__eyebrow{
  font-family:var(--font-en);
  font-size:calc(20/750*var(--lp-vw));
  letter-spacing:.32em;
  color:var(--gold-l);
  font-weight:500;
}
.result__title{
  margin-top:calc(10/750*var(--lp-vw));
  font-size:calc(44/750*var(--lp-vw));
  font-weight:700;
  letter-spacing:.14em;
  color:transparent;
  background:var(--gold-grad);
  -webkit-background-clip:text;
  background-clip:text;
}
.result__thanks{
  margin-top:calc(10/750*var(--lp-vw));
  font-size:calc(24/750*var(--lp-vw));
  letter-spacing:.06em;
  color:rgba(255,255,255,.72);
}

.result__card{
  margin:0 calc(28/750*var(--lp-vw));
  padding:calc(24/750*var(--lp-vw)) calc(22/750*var(--lp-vw)) calc(18/750*var(--lp-vw));
  background:rgba(255,255,255,.05);
  border-radius:calc(18/750*var(--lp-vw));
  box-shadow:0 14px 36px rgba(0,0,0,.35);
  border:1px solid rgba(201,160,106,.3);
  text-align:left;
  backdrop-filter:blur(8px);
  display:flex;
  flex-direction:column;
  gap:calc(16/750*var(--lp-vw));
}
.result__card-head{
  width:100%;
  text-align:center;
}
.result__card-body{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(calc(110/750*var(--lp-vw)),30%);
  gap:calc(10/750*var(--lp-vw));
  align-items:end;
}
.result__card-chara{
  margin:0;
  line-height:0;
  align-self:end;
}
.result__card-chara img{
  width:100%;
  height:auto;
  display:block;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.35));
}
.result__type-label{
  font-size:calc(18/750*var(--lp-vw));
  letter-spacing:.2em;
  color:var(--gold-l);
  font-weight:600;
}
.result__type{
  margin-top:calc(10/750*var(--lp-vw));
  font-size:calc(32/750*var(--lp-vw));
  font-weight:700;
  letter-spacing:.08em;
  line-height:1.45;
  color:#fff;
}
.result__msg{
  margin-top:calc(14/750*var(--lp-vw));
  width:100%;
  font-size:calc(24/750*var(--lp-vw));
  line-height:1.8;
  letter-spacing:.04em;
  color:rgba(255,255,255,.82);
  text-align:left;
  text-align-last:left;
}
.result__points{
  margin:0;
  text-align:left;
  display:flex;
  flex-direction:column;
  gap:calc(8/750*var(--lp-vw));
  min-width:0;
}
.result__points li{
  position:relative;
  padding:calc(12/750*var(--lp-vw)) calc(10/750*var(--lp-vw)) calc(12/750*var(--lp-vw)) calc(34/750*var(--lp-vw));
  background:rgba(201,160,106,.1);
  border:1px solid rgba(201,160,106,.22);
  border-radius:calc(10/750*var(--lp-vw));
  font-size:calc(18/750*var(--lp-vw));
  letter-spacing:.02em;
  line-height:1.3;
  color:#fff;
  font-weight:600;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:clip;
}
.result__points li::before{
  content:"";
  position:absolute;
  left:calc(12/750*var(--lp-vw));
  top:50%;
  transform:translateY(-50%);
  width:calc(12/750*var(--lp-vw));
  height:calc(12/750*var(--lp-vw));
  border-radius:50%;
  background:var(--gold-grad);
}

.result__product{
  margin:calc(32/750*var(--lp-vw)) calc(28/750*var(--lp-vw)) 0;
  text-align:center;
  position:relative;
  padding:calc(28/750*var(--lp-vw)) calc(20/750*var(--lp-vw));
  background:
    radial-gradient(ellipse at 50% 20%,rgba(201,160,106,.14) 0%,transparent 55%),
    linear-gradient(180deg,#1b1b29 0%,#0f0f1f 100%);
  border-radius:calc(18/750*var(--lp-vw));
  overflow:hidden;
  border:1px solid rgba(201,160,106,.25);
}
.result__product img{
  position:relative;
  z-index:1;
  width:min(70%,calc(420/750*var(--lp-vw)));
  margin:0 auto;
  border-radius:calc(10/750*var(--lp-vw));
  border:1px solid rgba(201,160,106,.2);
}
.result__brand{
  position:relative;
  z-index:1;
  margin-top:calc(16/750*var(--lp-vw));
  font-size:calc(36/750*var(--lp-vw));
  letter-spacing:.4em;
  font-weight:700;
  padding-left:.4em;
  color:transparent;
  background:var(--gold-grad);
  -webkit-background-clip:text;
  background-clip:text;
}
.result__product-name{
  position:relative;
  z-index:1;
  margin-top:calc(6/750*var(--lp-vw));
  font-size:calc(22/750*var(--lp-vw));
  letter-spacing:.12em;
  color:rgba(255,255,255,.7);
}
.result__tagline{
  position:relative;
  z-index:1;
  margin-top:calc(12/750*var(--lp-vw));
  font-size:calc(26/750*var(--lp-vw));
  font-weight:700;
  letter-spacing:.08em;
  color:var(--gold-l);
}

/* ── Result: shared section head ── */
.r-sec-head{
  text-align:center;
  margin:0 0 calc(22/750*var(--lp-vw));
  padding:0 calc(8/750*var(--lp-vw));
}
.r-sec-head__en{
  font-family:var(--font-en);
  font-size:calc(20/750*var(--lp-vw));
  letter-spacing:.32em;
  color:var(--gold-l);
  font-weight:500;
}
.r-sec-head__ja{
  margin-top:calc(8/750*var(--lp-vw));
  font-size:calc(34/750*var(--lp-vw));
  font-weight:700;
  letter-spacing:.1em;
  color:#fff;
  line-height:1.45;
}
.r-sec-head__ja span{
  display:inline;
  font-size:.72em;
  font-weight:500;
  letter-spacing:.04em;
  color:rgba(255,255,255,.62);
  margin-left:.2em;
}

/* ── Result: product intro ── */
.r-product{
  margin-top:calc(40/750*var(--lp-vw));
  padding:0 calc(28/750*var(--lp-vw));
}
.r-product__intro{
  margin:0;
  border-radius:calc(14/750*var(--lp-vw));
  overflow:hidden;
  border:1px solid rgba(201,160,106,.25);
  background:#fff;
  line-height:0;
}
.r-product__intro img{width:100%;height:auto;display:block}
.r-product__impression{
  margin:calc(24/750*var(--lp-vw)) 0 0;
  border-radius:calc(14/750*var(--lp-vw));
  overflow:hidden;
  border:1px solid rgba(201,160,106,.22);
  line-height:0;
}
.r-product__impression img{width:100%}
.r-team{
  margin-top:calc(22/750*var(--lp-vw));
  padding:0;
  border-radius:calc(14/750*var(--lp-vw));
  overflow:hidden;
  border:1px solid rgba(201,160,106,.25);
  line-height:0;
  background:transparent;
  text-align:left;
}
.r-team--photo img{
  width:100%;
  height:auto;
  display:block;
}

/* ── Result: voice ── */
.r-voice{
  margin-top:calc(36/750*var(--lp-vw));
  padding:0 calc(28/750*var(--lp-vw));
}
.r-voice__list{
  display:flex;
  flex-direction:column;
  gap:calc(16/750*var(--lp-vw));
}
.r-voice__list li{
  border-radius:calc(12/750*var(--lp-vw));
  overflow:hidden;
  border:1px solid rgba(201,160,106,.2);
  background:#fff;
  line-height:0;
}
.r-voice__list img{width:100%}
.r-voice__note{
  margin-top:calc(14/750*var(--lp-vw));
  text-align:center;
  font-size:calc(18/750*var(--lp-vw));
  color:rgba(255,255,255,.5);
  letter-spacing:.02em;
}

.result__cta-wrap{
  margin:calc(24/750*var(--lp-vw)) calc(28/750*var(--lp-vw)) 0;
  text-align:center;
}
.btn--line{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:calc(14/750*var(--lp-vw));
  width:100%;
  padding:calc(24/750*var(--lp-vw)) calc(20/750*var(--lp-vw));
  border-radius:999px;
  background:var(--line);
  color:#fff;
  text-decoration:none;
  box-shadow:0 10px 24px rgba(6,199,85,.35);
  animation:pulseScale 4s infinite;
  font-family:"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",YuGothic,"Noto Sans JP",Meiryo,sans-serif;
  -webkit-font-smoothing:antialiased;
}
.btn__line-ico{width:calc(42/750*var(--lp-vw));height:calc(42/750*var(--lp-vw));flex-shrink:0}
.btn__line-txt{text-align:center;line-height:1.35}
.btn__main{
  display:block;
  margin-top:0;
  font-size:calc(30/750*var(--lp-vw));
  font-weight:800;
  letter-spacing:.04em;
  white-space:nowrap;
}
.result__redo{
  display:block;
  margin:calc(28/750*var(--lp-vw)) auto 0;
  font-size:calc(22/750*var(--lp-vw));
  letter-spacing:.08em;
  color:rgba(255,255,255,.7);
  text-decoration:underline;
  text-underline-offset:4px;
}

/* Footer */
.foot{
  margin-top:calc(36/750*var(--lp-vw));
  padding:calc(28/750*var(--lp-vw)) calc(28/750*var(--lp-vw)) calc(36/750*var(--lp-vw));
  background:#080814;
  color:rgba(255,255,255,.5);
  text-align:center;
  font-size:calc(18/750*var(--lp-vw));
  letter-spacing:.04em;
  line-height:1.8;
  border-top:1px solid rgba(255,255,255,.08);
}
.foot--quiz{margin:calc(28/750*var(--lp-vw)) calc(-28/750*var(--lp-vw)) calc(-40/750*var(--lp-vw))}
.foot__notes p+p{margin-top:calc(8/750*var(--lp-vw))}
