
body{margin:0;background:#ffffff}
.np{--ink:#2e2a2b;--ink2:#5e5758;--line:#ebe5d9;--y:#ffc604;--ysoft:#fff4cc;--cream:#fbf8f1;--navy:#1d1b2e;--float:0 1px 2px rgba(46,42,43,.05),0 16px 40px rgba(46,42,43,.09);--hover:0 2px 6px rgba(46,42,43,.08),0 24px 56px rgba(46,42,43,.13);color:var(--ink);background:#fff;font-family:'Plus Jakarta Sans','Noto Sans JP','Noto Sans KR',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.np *{box-sizing:border-box}
.np a{color:inherit}
.np :focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:10px}
.np :lang(ja){font-family:'Noto Sans JP','Plus Jakarta Sans',sans-serif}
.np :lang(ko){font-family:'Noto Sans KR','Plus Jakarta Sans',sans-serif;word-break:keep-all}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px}
.h2{margin:0;font-size:42px;line-height:1.18;font-weight:700;letter-spacing:-0.02em;text-wrap:balance}
.sub{margin:0;font-size:17px;line-height:1.7;color:var(--ink2)}
.btn{height:50px;padding:0 24px;display:inline-flex;align-items:center;gap:10px;border-radius:999px;font-size:15px;font-weight:600;text-decoration:none;transition:background-color .25s,box-shadow .25s,filter .25s}
.np .b-y{background:var(--y);color:var(--ink)}.np .b-y:hover{filter:brightness(.95)}
.np .b-ink{background:var(--ink);color:#fff}.np .b-ink:hover{background:#000}
.np .b-line{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}.np .b-line:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}
.navl{text-decoration:none;font-size:14px;font-weight:500;color:var(--ink2)}.navl:hover{color:var(--ink)}
.card{background:#fff;border-radius:24px;box-shadow:var(--float)}
.lift{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}.lift:hover{transform:translateY(-4px);box-shadow:var(--hover)}
.photo{background:#fff4cc center/cover no-repeat}
.dot{border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.more{font-size:15px;font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px}
.np details summary{cursor:pointer;list-style:none}.np details summary::-webkit-details-marker{display:none}
.np details[open] .chev{transform:rotate(180deg)}.chev{transition:transform .3s}
.field{display:flex;flex-direction:column;gap:6px;flex:1 1 180px;min-width:0}
.field label{font-size:12px;font-weight:700;color:var(--ink2)}
.field select,.field input{height:48px;border:1px solid var(--line);border-radius:14px;padding:0 14px;font-family:inherit;font-size:15px;color:var(--ink);background:#fff}
@keyframes up{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
.in{animation:up .8s cubic-bezier(.2,.7,.2,1) both}.in2{animation-delay:.12s}.in3{animation-delay:.24s}.in4{animation-delay:.36s}
@supports (animation-timeline: view()){.rv{animation:up linear both;animation-timeline:view();animation-range:entry 0% cover 25%}}
.show-m{display:none}
.np [role=group] button{white-space:nowrap}
@media (max-width:900px){
.wrap{padding:0 20px}.h2{font-size:30px}
.hide-m{display:none!important}.show-m{display:flex!important}
[role=group] button{padding:0 9px!important;min-width:0!important;font-size:12px!important}
.np header img{height:24px!important}.np header .wrap{gap:12px!important}
.stepbar{display:none}
}
@media (prefers-reduced-motion: reduce){.in,.rv{animation:none!important}.lift,.btn{transition:none}}
.ew:lang(ja) :is(h1,h2,h3,h4,p), .np:lang(ja) :is(h1,h2,h3,h4,p){word-break:auto-phrase;line-break:strict} .ew:lang(ko) :is(h1,h2,h3,h4,p), .np:lang(ko) :is(h1,h2,h3,h4,p){word-break:keep-all}
