/* Only enqueued for the LINE root. No web fonts or animation libraries. */
body.inheritance-active .fv { height:656px; }
body.inheritance-active .line-contact-band { background:#fff; padding:26px 16px; border-block:1px solid #dfecd5; color:#354c78; }
.line-contact-inner { max-width:1160px; margin:auto; display:grid; grid-template-columns:minmax(0,1fr); gap:15px; align-items:center; }
.line-copy { text-align:center; }
.line-copy .line-intro { font-family:var(--font-sans); font-size:15px; font-weight:500; margin-bottom:8px; }
body.inheritance-active .line-copy h2 { font-family:var(--font-sans); font-size:clamp(16px,4.6vw,25px); font-weight:700; line-height:1.5; white-space:nowrap; }
.line-action { text-align:center; min-width:0; padding-bottom:5px; }
body.inheritance-active .line-html-button,
body.inheritance-active .line-sticky .line-html-button {
  position:relative; display:grid; grid-template-columns:52.052px minmax(0,1fr) 14px; align-items:center; gap:12px;
  width:100%; max-width:490px; min-height:0; margin:0 auto; padding:8px 18px;
  background:#00ad58; border:0; border-radius:12px; box-shadow:0 5px 0 #008747;
  font-family:var(--font-sans); font-weight:700; color:#fff; line-height:1.3; white-space:normal; text-decoration:none;
  transition:background-color .18s; transform:none;
}
body.inheritance-active .line-html-button:hover { background:#009f50; }
body.inheritance-active .line-html-button .line-logo { width:52.052px; height:52px; max-width:none; margin:0; object-fit:contain; }
.line-html-copy { display:flex; min-width:0; flex-direction:column; align-items:center; gap:7px; }
.line-html-free { display:inline-block; background:#fff; border-radius:99px; padding:4px 14px; color:#354c78; font-size:13px; font-weight:700; line-height:1.3; white-space:nowrap; }
.line-html-label { font-size:clamp(18px,5.65vw,25px); font-weight:700; line-height:1.3; white-space:nowrap; }
.line-chevron { display:block; color:#fff; font-size:34px; font-weight:400; line-height:1; }
.phone-secondary { grid-column:1/-1; display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:8px 10px; border-top:1px solid #dce7d4; padding-top:20px; color:#354c78; }
.phone-secondary>span { flex-basis:100%; text-align:center; font-size:13px; }
body.inheritance-active .phone-secondary>a { padding:3px 0; border-bottom:1px solid #354c78; color:#354c78; font-size:22px; font-weight:600; line-height:1.3; }
.phone-secondary small { font-size:11px; color:#526173; }
.flow-line-action { max-width:490px; margin:10px 0; min-width:0; padding-bottom:5px; }
.flow-line-action+.phone-secondary { max-width:490px; margin-top:14px; }
body.inheritance-active .line-sticky { height:auto; padding:10px 12px calc(8px + env(safe-area-inset-bottom)); background:#fff; border-top:1px solid #dce5df; box-shadow:0 -4px 20px #1d382313; z-index:80; }
.line-sticky-inner { width:min(1060px,100%); margin:auto; display:grid; grid-template-columns:minmax(0,1fr); gap:9px; justify-content:center; }
body.inheritance-active .sticky-phone { text-align:center; padding:4px 0; color:#354c78; font-size:12px; font-weight:500; line-height:1.5; white-space:nowrap; }
.sticky-phone span { text-decoration:underline; text-underline-offset:3px; margin-left:4px; }
.sticky-phone small { font-size:10px; margin-left:8px; color:#526173; }
.line-sticky[aria-hidden=true] { visibility:hidden; pointer-events:none!important; transform:none; transition:none; }
.line-sticky[aria-hidden=false] { visibility:visible; pointer-events:auto; transform:none; transition:none; opacity:1; }
[data-lp-variant="line"] a:focus-visible { outline:3px solid #2459a6; outline-offset:5px; }
.line-sheen { position:absolute; inset:0; overflow:hidden; border-radius:inherit; pointer-events:none; }
.line-sheen::after { content:''; position:absolute; inset-block:0; left:0; width:48%; background:linear-gradient(105deg,transparent 5%,rgb(255 255 255 / .05) 25%,rgb(255 255 255 / .34) 50%,rgb(255 255 255 / .05) 75%,transparent 95%); transform:translateX(-110%); opacity:0; }
.line-html-button.is-inview .line-sheen::after { animation:line-sheen-pass 4.8s ease-in-out 3; animation-delay:.7s; }
@keyframes line-sheen-pass { 0%,5% { transform:translateX(-110%); opacity:0; } 8% { opacity:1; } 26% { transform:translateX(220%); opacity:1; } 30%,100% { transform:translateX(220%); opacity:0; } }
@media(max-width:359px) {
  body.inheritance-active .line-html-button,body.inheritance-active .line-sticky .line-html-button { grid-template-columns:44.2442px minmax(0,1fr) 12px; gap:6px; padding:8px 12px; }
  body.inheritance-active .line-html-button .line-logo { width:44.2442px; height:44.2px; }
  .line-html-label { font-size:18px; } .line-html-free { font-size:12px; padding:4px 10px; }
  .line-chevron { font-size:28px; }
  body.inheritance-active .sticky-phone { font-size:11px; } .sticky-phone small { font-size:9px; margin-left:5px; }
}
@media(min-width:431px) and (max-width:767px) { body.inheritance-active .line-copy h2 { font-size:24px; } }
@media(min-width:541px) { body.inheritance-active .fv { height:674px; } }
@media(min-width:768px) {
  body.inheritance-active .line-contact-band { padding:30px 32px; }
  .line-contact-inner { grid-template-columns:1fr 1.12fr; gap:24px 35px; }
  .line-copy { text-align:left; } .line-copy .line-intro { font-size:18px; }
  body.inheritance-active .line-copy h2 { font-size:25px; }
  body.inheritance-active .line-html-button,body.inheritance-active .line-sticky .line-html-button { gap:18px; padding:10px 24px; }
  .line-html-label { font-size:28px; } .line-html-free { font-size:16px; padding:4px 18px; } .line-html-copy { gap:9px; }
  .phone-secondary { gap:8px 16px; } .phone-secondary>span { flex-basis:auto; font-size:14px; } .phone-secondary small { font-size:12px; }
  .line-sticky-inner { display:flex; gap:28px; }
  body.inheritance-active .sticky-phone { font-size:14px; } .sticky-phone span,.sticky-phone small { display:block; margin:3px 0 0; }
}
@media(min-width:768px) and (max-width:1023px) { .line-contact-inner { grid-template-columns:minmax(0,1fr); } .line-copy { text-align:center; } }
@media(prefers-reduced-motion:reduce) { .line-html-button.is-inview .line-sheen::after { animation:none!important; opacity:0; } }
