.lani-life-path{font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:#16364b;font-synthesis:none}
.lani-life-path,.lani-life-path *{box-sizing:border-box}
.lani-life-path *{box-sizing:border-box}
.lani-life-path button,.lani-life-path input{font:inherit}
.lani-life-path a{color:#075d91}
.lani-life-path button{cursor:pointer}
.lani-life-path a:focus-visible,.lani-life-path button:focus-visible,.lani-life-path input:focus-visible{outline:3px solid #d99e34;outline-offset:3px}
.lani-life-path .hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,440px);gap:40px;align-items:center;padding:43px 46px;border:1px solid #d3e5eb;border-radius:25px;background:radial-gradient(circle at 15% 15%,#e7f5fb 0,transparent 36%),linear-gradient(120deg,#f6fbff,#f9f8ef);box-shadow:0 16px 45px #1f617010}
.lani-life-path .eyebrow{color:#16729a;font-size:11px;font-weight:800;letter-spacing:.16em;margin:0 0 12px}
.lani-life-path .hero h1{font-size:clamp(32px,3.8vw,48px);line-height:1.25;letter-spacing:.035em;margin:0 0 18px}
.lani-life-path .lead{font-size:19px;line-height:1.75;font-weight:600;margin:0 0 17px}
.lani-life-path .hero-note{font-size:13px;color:#526d79;line-height:1.8;margin:0}
.lani-life-path .hero-note strong{color:#086a8e}
.lani-life-path .number-strip{display:flex;gap:7px;flex-wrap:wrap;margin-top:27px}
.lani-life-path .number-strip span{display:grid;place-items:center;min-width:36px;height:36px;padding:0 7px;border:1px solid #bad8e2;border-radius:9px;background:#fff;color:#1b718e;font:700 19px Georgia,serif}
.lani-life-path .number-strip .master{border-color:#dfc494;background:#fff8e9;color:#9a6c2c}
.lani-life-path .tool{background:#fff;border:1px solid #d2e3e8;border-radius:19px;padding:25px;box-shadow:0 10px 30px #174a5b14}
.lani-life-path .tool h2{font-size:20px;margin:0 0 8px}
.lani-life-path .tool-intro{color:#526b78;font-size:13px;line-height:1.7;margin:0 0 21px}
.lani-life-path .fields{border:0;padding:0;margin:0;display:grid;grid-template-columns:1.45fr .9fr .9fr;gap:10px}
.lani-life-path .fields legend{font-size:13px;font-weight:800;margin-bottom:10px}
.lani-life-path .fields label span{display:block;color:#426171;font-size:12px;font-weight:700;margin-bottom:6px}
.lani-life-path .fields input{width:100%;height:54px;border:1px solid #c2d7df;border-radius:10px;background:#fcfefe;padding:0 12px;font-size:17px;color:#143c53}
.lani-life-path .fields input::placeholder{color:#9baeb7}
.lani-life-path .submit{width:100%;height:55px;border:0;border-radius:11px;background:#086f96;color:#fff;font-size:16px;font-weight:800;margin-top:22px;box-shadow:0 8px 18px #0d658b30}
.lani-life-path .submit:hover{background:#075d7e}
.lani-life-path .privacy{font-size:11px;color:#607985;line-height:1.6;margin:11px 0 0}
.lani-life-path .error{margin:14px 0 0;padding:10px 12px;border-radius:8px;background:#fff0f0;color:#a1212c;font-size:13px}
.lani-life-path .error:empty{display:none}
.lani-life-path .result{margin-top:22px;border:1px solid #b9d7e2;border-radius:20px;background:#fff;padding:30px 35px;box-shadow:0 9px 28px #1b66700b}
.lani-life-path .result[hidden]{display:none}
.lani-life-path .result-heading{font-size:12px;letter-spacing:.1em;font-weight:800;color:#137091;margin:0 0 10px}
.lani-life-path .result-main{display:flex;align-items:center;gap:24px}
.lani-life-path .result-number{display:grid;place-items:center;min-width:104px;height:104px;padding:0 12px;border-radius:22px;background:#0b7197;color:#fff;font:700 55px Georgia,serif}
.lani-life-path .result h2{font-size:23px;margin:0 0 6px}
.lani-life-path .result p{line-height:1.75}
.lani-life-path .result-summary{margin:0;color:#466575;font-size:14px}
.lani-life-path .formula{border-top:1px solid #dcebef;margin-top:21px;padding-top:18px}
.lani-life-path .formula h3{font-size:15px;margin:0 0 7px}
.lani-life-path .formula ol{margin:0;padding-left:22px;line-height:1.8;color:#355466;font-size:14px}
.lani-life-path .result-tip{font-size:12px;color:#617985;margin:12px 0 0}
.lani-life-path .below{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:25px;margin-top:27px;align-items:start}
.lani-life-path .stack{display:grid;gap:22px}
.lani-life-path .panel,.lani-life-path .side-card{background:#fff;border:1px solid #dce8ec;border-radius:18px;padding:29px 32px}
.lani-life-path .panel h2{font-size:22px;margin:0 0 16px}
.lani-life-path .panel p,.lani-life-path .panel li{font-size:14px;line-height:1.9;color:#415f6e}
.lani-life-path .panel p:last-child{margin-bottom:0}
.lani-life-path .example{border-left:4px solid #1d8ca8;background:#f1f9fb;padding:15px 19px;border-radius:0 9px 9px 0;font-variant-numeric:tabular-nums}
.lani-life-path .example p{margin:3px 0}
.lani-life-path .faq h3{font-size:15px;margin:21px 0 5px}
.lani-life-path .faq h3:first-of-type{margin-top:0}
.lani-life-path .faq p{margin:0}
.lani-life-path .side-card{background:#edf8fb}
.lani-life-path .side-card h2{font-size:17px;margin:0 0 8px}
.lani-life-path .side-card p{font-size:13px;line-height:1.8;color:#526d7c}
.lani-life-path .side-card a{font-size:13px;font-weight:800}
.lani-life-path .side-card ul{padding-left:20px;font-size:13px;line-height:2}
@media(max-width:900px){.lani-life-path .hero{grid-template-columns:1fr;gap:25px;padding:35px}
.lani-life-path .below{grid-template-columns:1fr}
.lani-life-path .side-card{order:2}}
@media(max-width:560px){.lani-life-path .hero{padding:25px 18px;border-radius:17px;gap:22px}
.lani-life-path .hero h1{font-size:32px}
.lani-life-path .lead{font-size:16px}
.lani-life-path .number-strip{margin-top:19px}
.lani-life-path .number-strip span{min-width:31px;height:31px;font-size:16px}
.lani-life-path .tool{padding:21px 15px}
.lani-life-path .fields{gap:7px}
.lani-life-path .fields input{height:52px;padding:0 7px;font-size:16px}
.lani-life-path .result{padding:22px 17px}
.lani-life-path .result-main{gap:14px}
.lani-life-path .result-number{min-width:83px;height:83px;font-size:43px;border-radius:16px}
.lani-life-path .result h2{font-size:18px}
.lani-life-path .panel,.lani-life-path .side-card{padding:23px 20px}
.lani-life-path .below{gap:16px;margin-top:16px}
.lani-life-path .stack{gap:16px}}
