
/* v84 apply follow design */
.nn-apply{
  background:
    radial-gradient(circle at 80% 7%, rgba(230,0,35,.12), transparent 25rem),
    linear-gradient(180deg,#fff 0%,#f8fafc 48%,#fff 100%)!important;
}
.nn-apply-top{
  display:block!important;
  margin-bottom:18px!important;
}
.nn-step-card{display:none!important}
.nn-apply-hero{
  min-height:260px;
  border-radius:34px!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,245,247,.92)),
    radial-gradient(circle at 92% 30%,#ffcbd6 0,#fff5f6 34%,#fff 70%)!important;
  border:1px solid #ffd8df!important;
  padding:38px!important;
  box-shadow:0 24px 64px rgba(16,24,40,.10)!important;
}
.nn-apply-kicker{
  border:0!important;
  background:#fff!important;
  color:#e60023!important;
  box-shadow:0 14px 30px rgba(230,0,35,.10)!important;
}
.nn-apply-hero h1{
  max-width:720px!important;
  font-size:clamp(34px,5vw,64px)!important;
  line-height:1.02!important;
  letter-spacing:-.075em!important;
}
.nn-apply-hero p{
  max-width:660px!important;
  font-size:1.02rem!important;
}
.nn-apply-follow-v84{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:20px 0 24px;
}
.nn-apply-follow-v84:before{
  content:"";
  position:absolute;
  left:7%;
  right:7%;
  top:31px;
  height:4px;
  border-radius:999px;
  background:#ffe0e6;
  z-index:0;
}
.nn-apply-follow-v84 div{
  position:relative;
  z-index:1;
  background:#fff;
  border:1px solid #e8edf3;
  border-radius:24px;
  padding:18px 16px 16px;
  box-shadow:0 16px 42px rgba(16,24,40,.075);
  text-align:center;
  min-height:126px;
}
.nn-apply-follow-v84 div.is-current{
  border-color:#ffb8c2;
  background:linear-gradient(180deg,#fff7f8,#fff);
  box-shadow:0 20px 52px rgba(230,0,35,.13);
}
.nn-apply-follow-v84 b{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:999px;
  background:#fff1f3;
  color:#e60023;
  border:1px solid #ffd0d8;
  font-weight:950;
  margin:0 auto 10px;
}
.nn-apply-follow-v84 div.is-current b{
  background:#e60023;
  color:#fff;
  border-color:#e60023;
  box-shadow:0 14px 30px rgba(230,0,35,.25);
}
.nn-apply-follow-v84 strong{
  display:block;
  color:#101828;
  font-weight:950;
  letter-spacing:-.02em;
}
.nn-apply-follow-v84 span{
  display:block;
  color:#667085;
  font-size:.82rem;
  font-weight:750;
  margin-top:6px;
  line-height:1.45;
}
.nn-form-grid{
  align-items:start!important;
}
.nn-panel{
  border-radius:30px!important;
  box-shadow:0 22px 58px rgba(16,24,40,.09)!important;
}
.nn-panel-head{
  border-bottom:1px solid #edf1f6;
  padding-bottom:14px;
}
.nn-product-inner,.nn-plan-inner{
  border-radius:26px!important;
}
.nn-product-card.is-selected .nn-product-inner,.nn-plan-card.is-selected .nn-plan-inner{
  border-color:#e60023!important;
  box-shadow:0 0 0 5px rgba(230,0,35,.10),0 24px 54px rgba(230,0,35,.12)!important;
}
.nn-summary{
  border-radius:30px!important;
  overflow:hidden;
}
.nn-summary:before{
  content:"申込内容";
  display:block;
  margin:-22px -22px 16px;
  padding:18px 22px;
  background:#101828;
  color:#fff;
  font-weight:950;
}
.nn-summary-title{
  display:none!important;
}
.nn-primary{
  background:linear-gradient(135deg,#e60023,#bd001c)!important;
}
@media(max-width:991.98px){
  .nn-apply-hero{padding:28px!important;min-height:auto}
  .nn-apply-follow-v84{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .nn-apply-follow-v84:before{display:none}
}
@media(max-width:575.98px){
  .nn-apply-follow-v84{
    grid-template-columns:1fr;
    gap:10px;
  }
  .nn-apply-follow-v84 div{
    display:grid;
    grid-template-columns:48px 1fr;
    text-align:left;
    column-gap:12px;
    min-height:auto;
    padding:14px;
  }
  .nn-apply-follow-v84 b{
    grid-row:1 / span 2;
    margin:0;
  }
  .nn-apply-follow-v84 strong{align-self:end}
  .nn-apply-follow-v84 span{margin-top:2px}
  .nn-apply-hero h1{font-size:2.15rem!important}
}
