:root{--forest:#153e33;--deep:#10382e;--leaf:#289e60;--leaf-dark:#147b4c;--lime:#caff8b;--paper:#fffdf6;--cream:#f9f9eb;--mist:#f1f7ec;--line:#d8e6d8;--muted:#637c72;--round:'Zen Maru Gothic','Noto Sans JP',sans-serif;--sans:'DM Sans','Noto Sans JP',sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:91px}
body{margin:0;background:var(--paper);color:var(--forest);font-family:var(--sans);-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}button,input{font:inherit}button{cursor:pointer}
img{display:block;max-width:100%}svg{display:block}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}
.icon{display:inline-block;width:1.25em;height:1.25em;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;flex:none}
.container{width:min(1200px,calc(100% - 84px));margin-inline:auto}
.skip-link{position:fixed;left:16px;top:-100px;z-index:999;padding:13px 18px;background:white;color:var(--forest);border:2px solid var(--leaf)}.skip-link:focus{top:16px}
:focus-visible{outline:3px solid #6acb73;outline-offset:4px}
::selection{background:#d5fb99;color:var(--forest)}
.top-offer{min-height:35px;background:var(--forest);color:#e6ffcd;display:flex;align-items:center;justify-content:center;gap:14px;text-align:center;font-size:10px;letter-spacing:.025em;padding:6px 15px}.top-offer strong{font-size:11px}.offer-spark{color:#caff8b;font-size:13px}
.header{position:sticky;top:0;z-index:100;background:#fffef8f2;border-bottom:1px solid #dfe8d9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.header-inner{height:83px;display:flex;justify-content:space-between;align-items:center;gap:24px}
.brand{display:flex;align-items:center;gap:11px;width:max-content;flex:none}.brand>img{width:49px;height:49px;border:2px solid #ccebbb;border-radius:50%;box-shadow:0 4px 13px #236b3b13}.brand strong{font-family:var(--round);font-size:23px;font-weight:900;letter-spacing:-.08em;line-height:1}.brand strong span{color:#319f5b}.brand small{display:block;font-size:9px;letter-spacing:.04em;color:#71937b;margin-top:7px;font-weight:700}
.nav{display:flex;align-items:center;gap:28px}.nav>a:not(.nav-cta){font-size:12px;font-weight:800;color:#577265;transition:color .2s;white-space:nowrap}.nav>a:not(.nav-cta):hover{color:var(--leaf)}.nav-cta{background:var(--forest);border-radius:100px;color:white;padding:14px 20px;font-size:11px;font-weight:800;display:inline-flex;align-items:center;gap:14px;white-space:nowrap;transition:transform .2s,background .2s}.nav-cta:hover{background:var(--leaf);transform:translateY(-2px)}.mobile-menu{display:none}
.button{display:inline-flex;justify-content:center;align-items:center;gap:20px;min-height:67px;padding:0 33px;border:0;border-radius:100px;font-size:14px;font-weight:900;white-space:nowrap;transition:transform .25s,box-shadow .25s,background .25s}.button:hover{transform:translateY(-3px)}.button .icon{font-size:17px}.button-green{background:#209b5b;color:#fff;box-shadow:0 16px 27px #2b925439}.button-green:hover{background:#187d4a;box-shadow:0 19px 31px #2b925452}.button-dark{background:var(--forest);color:white;box-shadow:0 12px 23px #245b3d36}.button-dark:hover{background:#266d45}

/* Hero: warm brand-forward art direction. */
.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 87% 28%,#f0f9d3 0,#f8faed 34%,transparent 66%),linear-gradient(111deg,#fffdf5,#f6f9ec)}
.hero::before{content:'';position:absolute;left:-190px;bottom:-260px;width:520px;height:520px;border:1px solid #8ccf692c;border-radius:50%;box-shadow:0 0 0 80px #9acf5911,0 0 0 166px #9acf5907}
.hero-sunburst{position:absolute;pointer-events:none;right:-130px;top:-80px;width:760px;height:760px;border-radius:50%;background:repeating-conic-gradient(from 0deg,#7ab86e12 0deg 8deg,transparent 8deg 17deg);mask-image:radial-gradient(circle,transparent 0 27%,#000 71%,transparent 74%);opacity:.7}
.hero-layout{min-height:740px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:22px;position:relative;z-index:1}
.hero-copy{padding:69px 0 86px;position:relative;z-index:4}.pill-label{margin:0 0 25px;display:inline-flex;align-items:center;gap:9px;background:white;color:#438552;border:1px solid #daeccb;border-radius:100px;padding:10px 15px;font:800 10px var(--sans);letter-spacing:.075em;box-shadow:0 10px 22px #2c6f3a0b}.pill-label>span:last-child{color:#8fa390;letter-spacing:.01em}.pill-dot{width:7px;height:7px;border-radius:50%;background:#48c879;box-shadow:0 0 0 4px #4ec77d18}
.hero h1{font-family:var(--round);font-size:clamp(42px,4.25vw,62px);line-height:1.46;letter-spacing:-.078em;font-weight:900;margin:0 0 22px;white-space:nowrap}.hero-marker{color:#208e57;position:relative}.hero-marker::after{content:'';position:absolute;left:1%;right:1%;bottom:-7px;height:13px;border:solid #bcde70;border-width:5px 0 0;border-radius:70%;transform:rotate(-1deg);z-index:-1}
.hero-lead{font-family:var(--round);font-size:22px;line-height:1.8;font-weight:900;letter-spacing:-.045em;margin:0 0 17px}.hero-description{font-size:13px;line-height:2.12;color:#607b6f;max-width:540px;margin:0 0 28px;font-weight:600}
.hero-ticket{display:flex;align-items:center;gap:20px;width:max-content;max-width:100%;background:white;border:1px solid #d8e9cd;border-radius:15px;padding:15px 20px 14px 20px;box-shadow:0 14px 28px #225e3914;position:relative;overflow:hidden}.hero-ticket::before{content:'';position:absolute;left:0;top:0;bottom:0;width:6px;background:#71be5e}.ticket-left{display:flex;flex-direction:column;gap:6px}.ticket-left span{font-size:9px;font-weight:900;color:#45a15c}.ticket-left strong{font-size:12px;font-weight:800}.ticket-left s{color:#8da098;text-decoration-color:#d68d80;text-decoration-thickness:2px;font-size:15px}.ticket-arrow{font-size:22px;color:#93bb8f}.ticket-price{display:flex;align-items:baseline;gap:6px}.ticket-price small{font-size:10px;color:#618e6e;font-weight:900}.ticket-price strong{font:800 36px var(--sans);color:#219d5e;letter-spacing:-.07em}.ticket-price strong span{font:900 13px var(--round);padding-left:2px}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:30px}.link-text{font-size:12px;font-weight:900;display:inline-flex;align-items:center;gap:9px;border-bottom:1px solid #80a990;padding-bottom:4px;color:#32684b}.link-text:hover{color:#199553}.link-text span{font-size:19px}.hero-assurance{display:flex;align-items:center;gap:5px;margin-top:19px;color:#71947c;font-size:10px;font-weight:700}.hero-assurance .icon{color:#39ab69}.hero-assurance span{color:#b6c6b7}
.hero-art{position:relative;height:620px;min-width:0}.hero-orbit{position:absolute;border-radius:50%;border:1px dashed #5da76e56}.orbit-out{width:525px;height:525px;left:0;top:62px}.orbit-in{width:420px;height:420px;left:53px;top:115px;border-style:solid;border-color:#9acf7966;background:radial-gradient(circle,#e5f7cf,#dff0bb 56%,#e2f6cf 70%)}
.mascot-platform{position:absolute;z-index:2;left:84px;top:146px;width:350px;height:350px;border-radius:50%;filter:drop-shadow(0 22px 25px #70965f35);animation:bob 6s ease-in-out infinite}.mascot-platform>img{width:100%;height:100%;border-radius:50%;object-fit:cover;mix-blend-mode:multiply}.mascot-shadow{position:absolute;bottom:-13px;left:20%;right:20%;height:15px;border-radius:50%;background:#609b5735;filter:blur(8px);z-index:-1}
.hero-art-tag{position:absolute;left:33px;top:42px;z-index:3;font:800 9px var(--sans);letter-spacing:.17em;color:#85ae80}.hero-art-tag span{font-size:17px;color:#5ba860;margin-left:8px}
.bird-speech{position:absolute;right:-18px;top:110px;z-index:4;display:flex;flex-direction:column;background:white;border:1px solid #c6e6b5;border-radius:20px 20px 20px 4px;padding:17px 21px;box-shadow:0 15px 35px #287b3b20;transform:rotate(6deg);font-family:var(--round);color:#37764b}.bird-speech span{font-size:11px;font-weight:700}.bird-speech strong{font-size:15px;font-weight:900;margin-top:2px}
.float-card{z-index:5;position:absolute;display:flex;align-items:center;gap:12px;background:#fff;box-shadow:0 18px 50px #1e66432a;border:1px solid #d9ebd2;border-radius:18px;color:#315849}.morning-card{width:277px;padding:17px;bottom:85px;left:-30px;transform:rotate(-4deg)}.float-icon{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:13px;background:#daf5da;color:#22975b}.float-icon .icon{width:24px;height:24px}.morning-card small,.match-card small{display:block;font:800 8px var(--sans);letter-spacing:.06em;color:#84b493;margin-bottom:5px}.morning-card strong{display:block;font:900 13px var(--round);letter-spacing:-.035em}.morning-card span{display:block;font-size:9px;color:#80a18d;margin-top:5px}
.match-card{right:-17px;bottom:42px;padding:14px 16px;width:294px;transform:rotate(5deg)}.match-stamp{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none;width:56px;height:56px;border-radius:50%;background:#ebf9df;border:2px solid #62bd76;color:#299b59;font:900 23px var(--sans);letter-spacing:-.055em}.match-stamp small{font-size:7px;letter-spacing:0;margin:0}.match-card strong{font:900 12px var(--round);white-space:nowrap}.check-circle{margin-left:auto;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#2bb66d;color:white}.check-circle .icon{width:14px;height:14px}.hero-art-note{position:absolute;bottom:2px;right:0;font-size:8px;color:#96a999}.hero-bottom{display:flex;align-items:center;justify-content:space-between;height:67px;border-top:1px solid #cbe2c7;position:relative;z-index:3;font-size:10px;font-weight:800;color:#8dac91}.scroll-cue{font:800 9px var(--sans);letter-spacing:.14em}.scroll-cue span{font-size:18px;margin-left:10px;color:#359867}

/* Quick anchors to the value proposition. */
.facts-band{background:#1b7f51;color:#f2ffeb}.facts-grid{display:grid;grid-template-columns:repeat(3,1fr)}.fact{min-height:133px;display:flex;align-items:center;justify-content:center;gap:18px;position:relative}.fact:not(:last-child)::after{content:'';height:55px;width:1px;position:absolute;right:0;background:#ffffff45}.fact-icon{display:grid;place-items:center;width:47px;height:47px;border-radius:15px;background:#ffffff21;color:#d6ffa6}.fact-icon .icon{width:25px;height:25px}.fact strong{display:block;font-family:var(--round);font-size:24px;font-weight:900;line-height:1.3}.fact strong span{font:800 42px var(--sans);letter-spacing:-.065em}.fact small{display:block;color:#cbefcf;font-size:10px;font-weight:700;margin-top:4px}

.section{padding-block:120px}.section-kicker{display:block;margin-bottom:17px;color:#31955b;font:800 11px var(--sans);letter-spacing:.17em}.section h2{font:900 clamp(32px,3.25vw,48px)/1.5 var(--round);letter-spacing:-.06em;margin:0 0 17px}.section h2 em{font-style:normal;color:#22965c}.section-intro>p{font-size:13px;line-height:2;color:var(--muted);margin:0}.section-intro{margin-bottom:52px}

.story{background:#fffef9}.story-intro{text-align:center}.comparison{display:grid;grid-template-columns:1fr 140px 1fr;align-items:center;gap:0}.comparison-before,.comparison-after{min-height:385px;border-radius:28px;padding:41px 39px;position:relative;overflow:hidden}.comparison-before{background:#fff5ef;border:1px solid #f2dcd2}.comparison-after{background:#e9f8e9;border:1px solid #c6e6c5}.comparison-label{display:inline-flex;align-items:center;gap:12px;font:800 10px var(--sans);letter-spacing:.15em;color:#c18c7f}.comparison-label span{letter-spacing:0;font:800 12px var(--round)}.comparison-after .comparison-label{color:#248a5e}.comparison ul{list-style:none;display:grid;gap:24px;margin:33px 0 30px;padding:0}.comparison li{display:flex;align-items:center;gap:13px;font-size:14px;font-weight:800;line-height:1.7}.comparison-before li>span{display:grid;place-items:center;width:27px;height:27px;flex:none;background:#f7dcd2;color:#be8679;border-radius:50%;font:800 10px var(--sans)}.comparison-after li>.icon{width:25px;height:25px;flex:none;color:#38a96a;stroke-width:3}.comparison p{margin:0;color:#a17e72;font-size:11px;font-weight:800}.comparison-after p{color:#3d9168}.comparison-center{display:grid;place-content:center;gap:8px;text-align:center;z-index:4;justify-items:center}.comparison-center img{width:98px;height:98px;object-fit:cover;border-radius:50%;box-shadow:0 0 0 10px #fffef9,0 12px 33px #3c8f4b24}.comparison-center span{background:var(--forest);color:white;font-size:10px;font-weight:900;padding:8px 12px;border-radius:100px;white-space:nowrap}

.mechanism{background:#153e33;color:#f5ffef;position:relative;overflow:hidden}.mechanism::after{content:'';position:absolute;width:600px;height:600px;right:-300px;top:-200px;border:1px solid #a7e29e1c;border-radius:50%;box-shadow:0 0 0 80px #a7e29e08,0 0 0 170px #a7e29e08}.mechanism-layout{display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;gap:78px;position:relative;z-index:1}.mechanism .section-kicker{color:#a8e2a2}.mechanism h2 em{color:#caff8b}.mechanism-lead{color:#e2fdcd!important;font:900 18px var(--round)!important}.mechanism-copy>p{font-size:12px;line-height:2.2;color:#bfd3c7;margin:0 0 17px}.mechanism-tags{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0 33px}.mechanism-tags span{font-size:10px;color:#cfebd5;border:1px solid #759a7e77;background:#ffffff0b;padding:9px 13px;border-radius:100px;font-weight:800}.underlink{display:inline-flex;align-items:center;gap:14px;font-size:12px;color:#c7f5b1;font-weight:900;border-bottom:1px solid #96c9a4;padding-bottom:8px}.underlink .icon{width:16px;height:16px}
.mechanism-visual{min-height:490px;position:relative;display:flex;align-items:center;justify-content:space-between;padding:46px 2px 80px;gap:9px}.ai-card{width:190px;height:275px;flex:none;padding:27px 18px 17px;border-radius:25px;background:#f8fff4;color:var(--forest);display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 22px 45px #0003;transform:rotate(-4deg)}.person-ai{transform:rotate(4deg);background:#e7f7dc}.ai-card-icon{display:grid;place-items:center;width:76px;height:76px;background:#d9eae4;border-radius:50%;color:#328e64;margin-bottom:17px}.ai-card-icon .icon{width:33px;height:33px}.ai-card-icon.mascot-ai{background:white;border:2px solid #c9e6a6}.mascot-ai img{width:65px;height:65px;border-radius:50%;object-fit:cover}.ai-card small{font:800 9px var(--sans);letter-spacing:.14em;color:#83aa90}.ai-card strong{font:900 17px var(--round);margin-top:4px}.ai-card p{font:700 11px/1.6 var(--round);color:#739182;margin:20px 0 0}.ai-exchange{z-index:2;position:relative;flex:1;min-width:115px;height:150px;border-radius:50%;background:#caf48b;color:#1b6239;border:9px solid #407453;display:flex;align-items:center;justify-content:center;flex-direction:column;box-shadow:0 0 0 14px #97d18017,0 15px 37px #0003}.ai-exchange::before,.ai-exchange::after{content:'';position:absolute;height:2px;width:40px;top:50%;background:#a7dd9c}.ai-exchange::before{right:100%}.ai-exchange::after{left:100%}.ai-exchange span{font:800 8px var(--sans);letter-spacing:.14em}.ai-exchange strong{font:900 24px/1.1 var(--round);margin:8px 0}.ai-exchange small{font-size:8px;font-weight:900}.ai-match-result{position:absolute;bottom:41px;left:13%;right:13%;background:#fff;color:var(--forest);border-radius:18px;padding:14px 22px;display:flex;align-items:center;gap:13px;box-shadow:0 15px 40px #001b1735}.result-check{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:50%;background:#2aad69;color:white;font-size:19px}.ai-match-result small{display:block;color:#7aad89;font:800 8px var(--sans);letter-spacing:.1em}.ai-match-result strong{display:block;font:900 14px var(--round);margin-top:4px}.visual-note{position:absolute;bottom:7px;right:0;color:#8db09a;font-size:8px}

.experience{background:#eff7ec}.experience-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:40px}.experience-heading p{font-size:13px;color:var(--muted);line-height:1.9;margin:0}.sample-sticker{display:grid;place-content:center;width:103px;height:103px;background:#cbef8c;color:#367e46;font:800 12px/1.3 var(--sans);letter-spacing:.05em;border-radius:50%;text-align:center;transform:rotate(14deg);box-shadow:0 8px 0 #a4d766}.sample-sticker span{font-size:22px}
.experience-board{display:grid;grid-template-columns:370px 1fr;border:1px solid #d0e5d0;border-radius:25px;overflow:hidden;background:#fff;box-shadow:0 30px 70px #1c68321e;min-height:490px}.experience-sidebar{background:#174c3b;color:white;padding:30px 23px}.board-brand{display:flex;align-items:center;gap:10px}.board-brand img{width:42px;height:42px;border-radius:50%;border:2px solid #9ed98a}.board-brand>span{font:900 19px var(--round)}.board-brand small{display:block;font:800 8px var(--sans);letter-spacing:.16em;color:#a8d9a6;margin-top:5px}.experience-sidebar>p{font-size:10px;color:#adceaf;margin:33px 0 13px;font-weight:800;letter-spacing:.05em}.candidate-selectors{display:grid;gap:10px}.candidate-option{width:100%;padding:18px 11px;display:flex;align-items:center;gap:11px;border:1px solid #ffffff26;background:#ffffff09;color:#edfcec;border-radius:12px;text-align:left;transition:background .2s,border-color .2s,transform .2s}.candidate-option:hover{background:#ffffff19;transform:translateX(2px)}.candidate-option.is-active{background:#ddfac8;color:#225b3b;border-color:#b5e79f;box-shadow:0 10px 20px #082c2529}.candidate-count{font:800 11px var(--sans);color:#89c69b}.candidate-option.is-active .candidate-count{color:#4da065}.candidate-option>span:nth-child(2){font:900 12px var(--round);flex:1;line-height:1.4}.candidate-option small{display:block;color:#9db9a5;font:700 9px var(--sans);margin-top:6px}.candidate-option.is-active small{color:#76a584}.candidate-option b{font:800 22px var(--sans);color:#b8e6bb}.candidate-option.is-active b{color:#2b9a5c}.board-hint{display:block;margin-top:24px;color:#a2c0ad;font-size:9px;line-height:1.6}
.experience-detail{padding:35px 42px 22px;display:flex;flex-direction:column;min-width:0}.detail-top{display:flex;justify-content:space-between;gap:13px;font:800 9px var(--sans);letter-spacing:.09em;color:#76a289}.detail-top span:first-child{display:flex;align-items:center;gap:8px}.live-dot{width:7px;height:7px;background:#39b66a;border-radius:50%;box-shadow:0 0 0 4px #a4e7ba50}.detail-main{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:34px 0 23px}.detail-eyebrow{font:800 9px var(--sans);letter-spacing:.13em;color:#58aa70}.detail-main h3{font:900 26px var(--round);letter-spacing:-.055em;margin:9px 0 11px}.detail-main p{font-size:11px;color:#698a76;line-height:1.9;margin:0;max-width:410px}.detail-score{width:105px;height:105px;flex:none;border-radius:50%;border:4px solid #53b879;background:#f2fcee;color:#2a9d61;display:flex;justify-content:center;align-items:center;flex-direction:column}.detail-score strong{font:800 42px var(--sans);line-height:1}.detail-score span{font:800 8px var(--sans);letter-spacing:.05em;margin-top:6px}.recommendation{background:#f2faef;padding:22px 26px;border-left:4px solid #73c473;border-radius:4px 15px 15px 4px}.recommendation-label{display:flex;align-items:center;gap:9px;color:#328f59;font:900 11px var(--round)}.recommendation-label .icon{width:18px;height:18px}.recommendation p{font-size:12px;line-height:1.95;color:#426e53;font-weight:700;margin:10px 0 0}.detail-conditions{display:grid;grid-template-columns:repeat(3,1fr);margin:24px 0 18px}.detail-conditions>div{padding:0 15px;border-right:1px solid #e4eee3}.detail-conditions>div:first-child{padding-left:0}.detail-conditions>div:last-child{border:0}.detail-conditions small{display:block;color:#8dad93;font-size:9px;font-weight:800}.detail-conditions strong{display:block;font:900 13px var(--round);margin-top:7px}.detail-bottom{margin-top:auto;border-top:1px solid #e5ede4;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;font-weight:700;color:#77a384}.detail-bottom>span:first-child{display:flex;align-items:center;gap:5px}.detail-bottom .icon{color:#30aa63}.detail-bottom>span:last-child{font:800 8px var(--sans);letter-spacing:.12em;color:#adc8ac}.experience-disclaimer{font-size:9px;color:#73907e;line-height:1.8;margin:18px 0 0}

.steps{background:#fffef9}.steps-line{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;position:relative}.steps-line::before{content:'';position:absolute;top:43px;left:8%;right:8%;height:2px;border-top:2px dashed #b9d7bc}.step{position:relative;z-index:1;padding:0 14px 15px}.step-icon{display:grid;place-items:center;width:86px;height:86px;border-radius:27px;background:#ebf7e7;color:#309a61;margin:0 auto 25px;border:1px solid #cae6c5;box-shadow:0 8px 0 #dcedd5}.step:nth-child(2n) .step-icon{background:#f5f8d8}.step-icon .icon{width:36px;height:36px}.step b{font:800 11px var(--sans);letter-spacing:.1em;color:#43ac6b}.step h3{font:900 17px var(--round);letter-spacing:-.05em;margin:8px 0 12px}.step p{font-size:11px;color:#6b8674;line-height:1.9;margin:0}.step-note{display:flex;align-items:center;gap:13px;margin-top:52px;background:#f3f8ee;border:1px solid #d7e6d4;border-radius:13px;padding:17px 23px;color:#729079;font-size:10px;line-height:1.8;font-weight:700}.step-note .icon{color:#38ac69;width:24px;height:24px}

.price{background:linear-gradient(125deg,#f4f8e6 0,#e6f3de 100%);overflow:hidden}.price-layout{display:grid;grid-template-columns:1fr 460px;align-items:center;gap:10%}.price-copy>p{font-size:13px;line-height:2;color:var(--muted);max-width:430px;margin:0 0 30px}.price-point{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:800;margin:15px 0;color:#40694e}.price-point .icon{width:20px;height:20px;color:#2dad65;stroke-width:3}.salary-calc{margin-top:35px;max-width:450px;background:#ffffffc4;border:1px solid #d3e7d0;border-radius:17px;padding:25px 27px;box-shadow:0 14px 40px #387f4310}.calc-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:11px;font-weight:800}.calc-heading span{font-size:10px;color:#65936e}.calc-heading output{color:#209c56;font:900 14px var(--round);margin-left:5px}.salary-calc input{width:100%;accent-color:#259f5c;cursor:pointer;margin:22px 0 2px}.calc-scale{display:flex;justify-content:space-between;color:#93aa96;font-size:9px;font-weight:700}.calc-result{display:flex;align-items:baseline;gap:13px;padding-top:17px;border-top:1px solid #e2eee0;margin-top:18px}.calc-result small{font-size:11px;color:#6a8c72;font-weight:800}.calc-result strong{font:800 32px var(--sans);letter-spacing:-.05em;color:#168e50}.salary-calc p{font-size:9px;line-height:1.7;color:#95aa99;margin:8px 0 0}
.coupon-card{position:relative;z-index:1;background:#d2fa9b;border:3px solid #1c754d;border-radius:28px;padding:42px 45px 39px;box-shadow:20px 24px 0 #316f4d1d,0 22px 55px #36774419;overflow:visible}.coupon-card::before{content:'';position:absolute;z-index:-1;right:-190px;top:-180px;width:390px;height:390px;border-radius:50%;background:#e9ffd038}.coupon-top{display:flex;align-items:center;justify-content:center;gap:17px;color:#447b4c;font-size:11px;font-weight:900;background:#edffd7;border-radius:100px;padding:12px}.coupon-star{font-size:18px;color:#399459}.coupon-title{text-align:center;font:900 48px/1.42 var(--round);letter-spacing:-.07em;margin:26px 0}.coupon-old{text-align:center;font-size:12px;font-weight:800;color:#5b8d61}.coupon-old s{font-size:25px;color:#638d67;text-decoration-color:#dc8e85;text-decoration-thickness:3px;margin-left:8px}.coupon-now{text-align:center;display:flex;align-items:baseline;justify-content:center;gap:6px}.coupon-now small{font-size:13px;font-weight:900}.coupon-now strong{font:800 109px var(--sans);letter-spacing:-.10em;color:#126b47;line-height:1.22}.coupon-now span{font-size:15px;font-weight:900}.coupon-divider{height:1px;border-top:2px dashed #7aac6c;margin:22px 0}.coupon-card>p{text-align:center;font-size:12px;font-weight:800;color:#427c50;margin:0 0 24px}.coupon-card>p strong{font:800 22px var(--sans);color:#166b48;margin-left:6px}.coupon-card .button{width:100%;min-height:61px;padding:0 12px;font-size:13px}.coupon-note{display:block;color:#56845c;font-size:9px;line-height:1.8;text-align:center;margin:15px 0 0}.coupon-tear{position:absolute;right:-17px;top:50%;width:31px;height:31px;border-radius:50%;border:3px solid #1c754d;background:#eaf6e1}

.faq{background:#fffdf5}.faq-layout{display:grid;grid-template-columns:.42fr .58fr;gap:9%}.faq-heading{position:relative}.faq-mascot{margin-top:42px;display:flex;align-items:center;gap:13px}.faq-mascot img{border-radius:50%;width:114px;height:114px;border:2px solid #d6e9b4}.faq-mascot span{background:#eff9e2;padding:11px 14px;border-radius:100px 100px 100px 5px;color:#467d53;font:900 11px var(--round);transform:rotate(-7deg)}.faq-items{border-top:1px solid #d6e5d4}.faq details{border-bottom:1px solid #d6e5d4}.faq summary{list-style:none;display:flex;align-items:center;gap:12px;cursor:pointer;padding:25px 0;font:900 14px/1.6 var(--round)}.faq summary::-webkit-details-marker{display:none}.faq summary>span{font:800 20px var(--sans);color:#2aa45e}.faq summary>b{margin-left:auto;font:500 25px var(--sans);color:#59a975;transition:transform .2s}.faq details[open] summary>b{transform:rotate(45deg)}.faq details p{font-size:12px;line-height:2;color:#6a8574;margin:-7px 34px 25px 34px}

.closing{background:radial-gradient(circle at 50% 22%,#369967 0,#1e754b 43%,#175a3d 100%);color:#f4fff0;text-align:center;position:relative;overflow:hidden}.closing::before,.closing::after{content:'';width:450px;height:450px;border-radius:50%;border:1px solid #d5ffb81e;position:absolute;top:-220px}.closing::before{left:-150px;box-shadow:0 0 0 90px #d6ffa80d}.closing::after{right:-150px;box-shadow:0 0 0 90px #d6ffa80d}.closing-inner{padding:100px 0 112px;position:relative;z-index:1}.closing-doodles{position:absolute;left:9%;top:20%;color:#bcf6a36e;letter-spacing:55px;font-size:26px;transform:rotate(-18deg)}.closing-bird{width:132px;height:132px;margin:0 auto 22px;border-radius:50%;background:white;border:5px solid #d4f6a6;box-shadow:0 0 0 10px #daffc321,0 22px 42px #073a2833;overflow:hidden}.closing-bird img{width:100%;height:100%;object-fit:cover}.closing-kicker{font:800 10px var(--sans);letter-spacing:.18em;color:#cbf7bf}.closing h2{font:900 clamp(37px,4.5vw,61px)/1.45 var(--round);letter-spacing:-.065em;margin:18px 0}.closing h2 em{font-style:normal;color:#dbffa6}.closing p{font-size:14px;color:#d4ecdb;line-height:1.9;margin:0 0 24px}.closing-offer{width:max-content;max-width:100%;display:flex;align-items:center;justify-content:center;gap:12px;margin:0 auto 24px;border:1px solid #c6edb980;border-radius:100px;background:#ffffff19;padding:12px 23px;font-size:12px;font-weight:800}.closing-offer s{color:#c2d9bf}.closing-offer>span{color:#ccf4b5}.closing-offer strong{font:900 22px var(--sans);color:#e2ffb5}.closing-button{background:#d7ff9f;color:#1d5c3b;min-width:330px;box-shadow:0 18px 37px #0a3a2b54}.closing-button:hover{background:#e7ffbf}.closing-inner>small{display:block;color:#b6d7bf;font-size:9px;margin-top:20px}
.footer{background:#fffef8}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:38px 0;border-bottom:1px solid #e0e9df}.footer .brand strong{font-size:20px}.footer .brand img{width:42px;height:42px}.footer nav{display:flex;gap:29px;flex-wrap:wrap}.footer nav a{font-size:11px;color:#708779;font-weight:800}.footer nav a:hover{color:#238e56}.footer-bottom{display:flex;justify-content:space-between;gap:45px;padding:20px 0 32px;color:#98aa9a;font-size:9px;line-height:1.8}.footer-bottom p{max-width:740px;margin:0}.footer-bottom span{white-space:nowrap}.mobile-sticky-cta{display:none}
@keyframes bob{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(1deg)}}

@media(max-width:1180px){.container{width:min(1080px,calc(100% - 56px))}.nav{gap:17px}.hero-layout{grid-template-columns:1.07fr .93fr}.hero h1{font-size:clamp(40px,4.4vw,54px)}.hero-art{transform:scale(.88);transform-origin:center}.mechanism-layout{gap:40px}.price-layout{gap:6%;grid-template-columns:1fr 430px}.ai-card{width:168px}.ai-exchange{height:130px}}
@media(max-width:970px){.container{width:min(700px,calc(100% - 44px))}.header-inner{height:74px}.nav{display:none;position:absolute;left:0;right:0;top:100%;padding:20px 26px 27px;background:#fffef7;box-shadow:0 16px 30px #143d2b21;flex-direction:column;align-items:stretch;gap:0}.header.menu-open .nav{display:flex}.nav>a:not(.nav-cta){padding:14px 0;border-bottom:1px solid #e3eee2}.nav-cta{justify-content:center;margin-top:17px}.mobile-menu{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;border:1px solid #d8e9d3;background:#f3f9ee;color:#227b4b}.mobile-menu .icon{width:22px;height:22px}.menu-close{display:none}.header.menu-open .menu-open{display:none}.header.menu-open .menu-close{display:block}
.hero-layout{display:flex;flex-direction:column;min-height:auto;gap:0}.hero-copy{text-align:center;padding:79px 0 15px}.hero h1{font-size:clamp(42px,6.7vw,60px)}.hero-description{margin-inline:auto}.hero-ticket{margin-inline:auto}.hero-actions{justify-content:center}.hero-assurance{justify-content:center}.hero-art{width:580px;max-width:100%;height:575px;transform:scale(.93);transform-origin:top center}.hero-bottom{height:60px}
.facts-grid{max-width:700px}.fact{gap:8px}.fact strong{font-size:18px}.fact strong span{font-size:32px}.fact-icon{width:37px;height:37px}.fact-icon .icon{width:19px;height:19px}.fact small{font-size:9px}
.section{padding-block:93px}.comparison{grid-template-columns:1fr 98px 1fr}.comparison-before,.comparison-after{padding:30px 23px}.comparison li{font-size:12px}.comparison-center img{width:78px;height:78px}.mechanism-layout{grid-template-columns:1fr;gap:25px}.mechanism-copy{max-width:620px}.mechanism-visual{max-width:600px;margin-inline:auto;width:100%}.experience-board{grid-template-columns:290px 1fr}.experience-sidebar{padding:26px 17px}.candidate-option>span:nth-child(2){font-size:11px}.experience-detail{padding:28px 22px 20px}.detail-main h3{font-size:21px}.detail-score{width:83px;height:83px}.detail-score strong{font-size:32px}.steps-line{grid-template-columns:repeat(3,1fr);row-gap:30px}.steps-line::before{display:none}.step-icon{margin-inline:0}.price-layout{grid-template-columns:1fr;gap:40px}.price-copy>p,.salary-calc{max-width:100%}.coupon-card{max-width:490px;margin-inline:auto;width:100%}.faq-layout{grid-template-columns:1fr;gap:25px}.faq-mascot{display:none}}
@media(max-width:600px){.container{width:calc(100% - 36px)}.top-offer{gap:6px;font-size:8px;min-height:31px}.top-offer strong{font-size:9px}.offer-spark{font-size:9px}.header-inner{height:67px}.brand{gap:7px}.brand>img{width:39px;height:39px}.brand strong{font-size:18px}.brand small{font-size:7px;margin-top:5px;letter-spacing:-.02em}.hero-copy{padding:61px 0 10px}.pill-label{font-size:9px;padding:9px 12px;margin-bottom:21px}.pill-label>span:last-child{display:none}.hero h1{font-size:clamp(32px,8vw,43px);line-height:1.55}.hero-marker::after{bottom:0;height:8px;border-top-width:3px}.hero-lead{font-size:16px}.hero-description{font-size:11px;line-height:2;margin-bottom:21px}.hero-ticket{gap:9px;padding:12px 13px;width:100%;justify-content:center}.ticket-left span{font-size:7px}.ticket-left strong{font-size:9px}.ticket-left s{font-size:12px}.ticket-arrow{font-size:17px}.ticket-price small{font-size:8px}.ticket-price strong{font-size:28px}.ticket-price strong span{font-size:11px}.hero-actions{flex-direction:column;gap:18px;margin-top:26px}.hero-actions .button{width:100%;min-height:59px;font-size:12px}.hero-assurance{font-size:8px;line-height:1.8;flex-wrap:wrap}.hero-art{width:340px;height:387px;transform:none;margin:0 auto;overflow:visible}.orbit-out{width:330px;height:330px;left:3px;top:28px}.orbit-in{width:265px;height:265px;left:35px;top:58px}.mascot-platform{width:250px;height:250px;left:45px;top:66px}.hero-art-tag{left:2px;top:14px;font-size:7px}.bird-speech{top:38px;right:-10px;padding:10px 11px;border-radius:15px 15px 15px 3px}.bird-speech span{font-size:8px}.bird-speech strong{font-size:10px}.float-card{gap:8px;border-radius:13px}.morning-card{width:225px;bottom:49px;left:-5px;padding:10px;transform:rotate(-3deg)}.float-icon{width:33px;height:33px;border-radius:8px}.float-icon .icon{width:19px;height:19px}.morning-card small{font-size:6px;margin-bottom:3px}.morning-card strong{font-size:10px}.morning-card span{font-size:7px;margin-top:3px}.match-card{width:236px;bottom:2px;right:-8px;padding:9px 10px}.match-stamp{width:40px;height:40px;font-size:17px}.match-stamp small{font-size:5px}.match-card strong{font-size:9px}.match-card small{font-size:6px;margin-bottom:4px}.check-circle{width:18px;height:18px}.check-circle .icon{width:10px;height:10px}.hero-art-note{font-size:7px;bottom:-22px;right:5px}.hero-bottom{height:58px}.hero-bottom>span:first-child{display:none}.scroll-cue{margin-left:auto;font-size:8px}
.facts-grid{grid-template-columns:repeat(3,1fr)}.fact{min-height:106px;gap:5px;flex-direction:column;text-align:center}.fact-icon{width:28px;height:28px;border-radius:9px}.fact-icon .icon{width:15px;height:15px}.fact strong{font-size:13px}.fact strong span{font-size:26px}.fact small{font-size:7px}.fact:not(:last-child)::after{height:54px}
.section{padding-block:75px}.section h2{font-size:clamp(28px,7vw,37px)}.section-kicker{font-size:9px}.section-intro{margin-bottom:29px}.section-intro>p{font-size:11px}
.comparison{grid-template-columns:1fr;gap:0}.comparison-before,.comparison-after{min-height:auto;padding:27px 25px;border-radius:19px}.comparison ul{gap:17px;margin:22px 0}.comparison li{font-size:12px}.comparison-center{height:94px}.comparison-center img{width:68px;height:68px;box-shadow:0 0 0 6px #fffef9,0 8px 20px #3c8f4b24}.comparison-center span{font-size:8px;padding:5px 9px;transform:translateY(-9px)}
.mechanism-layout{gap:10px}.mechanism-copy>p{font-size:11px}.mechanism-lead{font-size:15px!important}.mechanism-tags{gap:5px}.mechanism-tags span{font-size:9px;padding:7px 9px}.mechanism-visual{min-height:335px;gap:3px;padding:26px 0 60px}.ai-card{width:110px;height:182px;padding:16px 5px;border-radius:14px}.ai-card-icon{width:47px;height:47px;margin-bottom:9px}.ai-card-icon .icon{width:24px;height:24px}.mascot-ai img{width:42px;height:42px}.ai-card small{font-size:6px}.ai-card strong{font-size:10px}.ai-card p{font-size:8px;margin-top:12px}.ai-exchange{min-width:85px;height:95px;border-width:5px}.ai-exchange::before,.ai-exchange::after{width:12px}.ai-exchange span,.ai-exchange small{font-size:6px}.ai-exchange strong{font-size:16px;margin:5px 0}.ai-match-result{bottom:31px;left:2%;right:2%;padding:10px 12px;border-radius:12px;gap:9px}.result-check{width:28px;height:28px;font-size:13px}.ai-match-result small{font-size:7px}.ai-match-result strong{font-size:10px}.visual-note{font-size:7px;bottom:4px}
.experience-heading{align-items:flex-start;margin-bottom:25px}.experience-heading p{font-size:11px}.sample-sticker{width:65px;height:65px;font-size:8px;flex:none;box-shadow:0 5px 0 #a4d766}.sample-sticker span{font-size:13px}.experience-board{grid-template-columns:1fr;border-radius:18px}.experience-sidebar{padding:23px}.experience-sidebar>p{margin:19px 0 10px}.candidate-selectors{grid-template-columns:1fr;gap:7px}.candidate-option{padding:12px 11px}.candidate-option>span:nth-child(2){font-size:11px}.candidate-option small{font-size:8px}.board-hint{margin-top:10px}.experience-detail{padding:27px 19px 19px}.detail-top{font-size:8px}.detail-main{gap:7px;margin:24px 0 20px}.detail-main h3{font-size:20px}.detail-main p{font-size:10px}.detail-score{width:70px;height:70px;border-width:3px}.detail-score strong{font-size:28px}.detail-score span{font-size:6px}.recommendation{padding:17px}.recommendation p{font-size:10px}.detail-conditions{margin:21px 0 17px}.detail-conditions>div{padding-inline:9px}.detail-conditions small{font-size:8px}.detail-conditions strong{font-size:10px}.detail-bottom{font-size:9px}.detail-bottom>span:last-child{display:none}.experience-disclaimer{font-size:8px}
.steps-line{grid-template-columns:1fr;gap:17px}.step{display:grid;grid-template-columns:65px 1fr;column-gap:17px;align-items:center;padding:0 0 15px;border-bottom:1px solid #e3ebe0}.step-icon{width:58px;height:58px;border-radius:17px;grid-row:1/4;grid-column:1;margin:0}.step-icon .icon{width:27px;height:27px}.step b{grid-column:2;font-size:9px}.step h3{grid-column:2;font-size:15px;margin:1px 0}.step p{grid-column:2;font-size:10px}.step-note{margin-top:28px;padding:14px;font-size:9px}
.price-layout{gap:32px}.price-copy>p{font-size:11px}.price-point{font-size:11px}.salary-calc{padding:20px}.calc-heading{font-size:10px}.calc-heading span{font-size:9px}.calc-result strong{font-size:27px}.coupon-card{padding:28px 24px 31px;border-radius:21px}.coupon-top{font-size:9px;padding:9px}.coupon-title{font-size:37px;margin:22px 0}.coupon-old s{font-size:20px}.coupon-now strong{font-size:82px}.coupon-now small{font-size:10px}.coupon-card .button{font-size:12px;min-height:58px}.coupon-tear{width:24px;height:24px;right:-13px}
.faq summary{font-size:12px;gap:8px;padding:22px 0}.faq details p{font-size:11px;margin-left:24px;margin-right:6px}
.closing-inner{padding:75px 0 92px}.closing-bird{width:105px;height:105px}.closing h2{font-size:38px}.closing p{font-size:12px}.closing-offer{gap:6px;padding:10px 12px;font-size:9px;white-space:nowrap}.closing-offer strong{font-size:19px}.closing-button{width:100%;min-width:0;min-height:61px;font-size:12px}.closing-inner>small{font-size:8px}.closing-doodles{font-size:17px;letter-spacing:25px;top:14%;left:-5%}
.footer-main{flex-direction:column;align-items:flex-start;gap:22px}.footer nav{gap:16px}.footer nav a{font-size:10px}.footer-bottom{flex-direction:column;gap:8px;padding-bottom:110px}.footer-bottom span{font-size:9px}
.mobile-sticky-cta{display:block;position:fixed;z-index:95;left:0;right:0;bottom:0;background:#fffef8f0;border-top:1px solid #d4e8d0;padding:10px 16px max(10px,env(safe-area-inset-bottom));box-shadow:0 -12px 30px #2e70401a;backdrop-filter:blur(16px)}.mobile-sticky-cta a{display:flex;align-items:center;justify-content:center;gap:13px;min-height:49px;background:#209d5d;color:white;border-radius:100px;font-size:12px;font-weight:900}.mobile-sticky-cta .icon{width:16px;height:16px}
}
@media(max-width:350px){.hero h1{font-size:30px}.hero-art{transform:scale(.9);transform-origin:top center;margin-bottom:-30px}.ticket-price strong{font-size:24px}.ai-card{width:100px}.ai-exchange{min-width:75px}.closing-offer{font-size:8px}.brand small{font-size:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mascot-platform{animation:none}*,*::before,*::after{transition:none!important}}

/* Replay control shared by the animated two-AI hero. */
.hero-motion-replay{position:absolute;z-index:8;right:2px;top:35px;border:1px solid #cbe5c4;background:#ffffffd9;color:#3a8b61;border-radius:100px;padding:7px 12px;font:800 9px var(--sans);letter-spacing:.1em;cursor:pointer;display:flex;align-items:center;gap:6px;box-shadow:0 9px 22px #1f6c3d14;transition:background .2s,border-color .2s,transform .2s}
.hero-motion-replay:hover{background:white;border-color:#8fcc8b;transform:translateY(-2px)}
.hero-motion-replay:focus-visible{outline:3px solid #1fa26b;outline-offset:3px}
.hero-motion-replay span{font-size:17px;line-height:.7}
.hero-motion-replay:disabled{opacity:.45;cursor:default;transform:none}
.hero-motion-replay[hidden]{display:none!important}

/* Hero concept: two friendly AI personas compare expectations, then pass to a human. */
.hero-art-ai{height:620px;transform:none;isolation:isolate;--hero-match-progress:0%}
.hero-ai-orbit{position:absolute;pointer-events:none;border-radius:50%;left:50%;transform:translateX(-50%);z-index:-1}
.hero-ai-orbit-outer{top:50px;width:530px;height:530px;border:1px dashed #70ac8e66}
.hero-ai-orbit-inner{top:106px;width:414px;height:414px;background:radial-gradient(circle at 50% 47%,#e8f8d3 0,#e8f5d0a0 54%,#dcefb286 100%);border:1px solid #b5dba6}
.hero-ai-heading{position:absolute;top:42px;left:8px;display:flex;align-items:center;gap:8px;color:#578f75;font:900 10px var(--sans);letter-spacing:.13em}
.hero-ai-dot{width:8px;height:8px;border-radius:50%;background:#35b47c;box-shadow:0 0 0 5px #36b47823}
.hero-ai-subtitle{font:900 10px var(--round);color:#799c86;letter-spacing:0}
.hero-art-ai .hero-motion-replay{top:34px;right:0}
.hero-ai-pair{position:absolute;top:142px;left:0;width:100%;display:grid;grid-template-columns:minmax(0,1fr) 82px minmax(0,1fr);gap:8px;align-items:center;z-index:3}
.hero-agent{min-width:0;height:231px;border:1px solid #d1e6d4;border-radius:25px;padding:19px 5px 14px;background:#fffffff0;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 19px 37px #2a70441c;transition:border-color 1s ease,box-shadow 1s ease}
.hero-agent-candidate{background:#f4ffe6ee;border-color:#c6e5b4}
.hero-agent-label{font:900 10px/1.5 var(--round);color:#2a895f;text-align:center;margin-bottom:13px;min-height:30px;display:grid;place-items:center}
.hero-agent-candidate .hero-agent-label{color:#508e3b}
.hero-bird-avatar{position:relative;width:108px;height:108px;margin-bottom:14px;border-radius:50%;border:3px solid #9bd9bb;box-shadow:0 8px 22px #45966b24;background:#f5fee9;transition:transform 1.25s cubic-bezier(.2,.8,.2,1),border-color .8s,box-shadow .8s;will-change:transform}
.hero-bird-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%;animation:heroBirdFlutter 2.5s ease-in-out infinite;transform-origin:center 60%}
.hero-agent-company .hero-bird-avatar img{transform:scaleX(-1);animation-name:heroBirdFlutterMirrored}
.hero-agent-candidate .hero-bird-avatar{border-color:#bfde8b;background:#f3fbc8}
.hero-agent-candidate .hero-bird-avatar img{animation-delay:-1.2s}
.hero-bird-ring{position:absolute;inset:-9px;border:2px dashed #a2d7af;border-radius:50%;opacity:.65;animation:heroBirdRing 5s linear infinite;pointer-events:none}
.hero-agent-candidate .hero-bird-ring{border-color:#b9d992;animation-direction:reverse}
.hero-bird-badge{position:absolute;right:-9px;bottom:0;width:35px;height:35px;border-radius:11px;background:white;color:#35986b;border:2px solid #cae6d1;display:grid;place-items:center;box-shadow:0 4px 10px #21654523}
.hero-agent-candidate .hero-bird-badge{color:#75ad35;border-color:#d3eab2}
.hero-bird-badge .icon{width:19px;height:19px}
.hero-art-ai.is-company-active .hero-agent-company .hero-bird-avatar{transform:translateX(14px) rotate(6deg);box-shadow:0 11px 28px #4aac773b}
.hero-art-ai.is-candidate-active .hero-agent-candidate .hero-bird-avatar{transform:translateX(-14px) rotate(-6deg);box-shadow:0 11px 28px #7fad4e47}
.hero-art-ai.is-matching .hero-agent-company .hero-bird-avatar,.hero-art-ai.is-finished .hero-agent-company .hero-bird-avatar{transform:translateX(23px) rotate(9deg) scale(1.06)}
.hero-art-ai.is-matching .hero-agent-candidate .hero-bird-avatar,.hero-art-ai.is-finished .hero-agent-candidate .hero-bird-avatar{transform:translateX(-23px) rotate(-9deg) scale(1.06)}
.hero-art-ai.is-matching .hero-bird-avatar,.hero-art-ai.is-finished .hero-bird-avatar{border-color:#5cc487;box-shadow:0 0 0 8px #90dca32e,0 12px 27px #40a4694c}
.hero-art-ai.is-finished .hero-agent{border-color:#9ed5a7;box-shadow:0 17px 32px #26975e28}
.hero-agent strong{font:900 13px/1.4 var(--round);color:#184a37;margin-bottom:6px;white-space:nowrap}
.hero-agent small{font:700 9px/1.5 var(--round);color:#6b8d78;white-space:nowrap}
.hero-ai-bridge{height:160px;position:relative;display:grid;place-items:center}
.hero-ai-core{position:relative;z-index:2;width:81px;height:81px;background:#d4f99f;border:3px solid #71c886;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 0 8px #68c79c22,0 0 0 18px #6bc49b10,0 10px 20px #569e7330;color:#1b8359}
.hero-ai-core .icon{width:32px;height:32px;stroke-width:1.7}.hero-ai-core span{font:900 9px var(--sans);letter-spacing:.06em;margin-top:2px}
.hero-ai-core{transition:background .7s,border-color .7s,box-shadow .7s,transform .7s}.hero-core-check{display:none}.hero-art-ai.is-finished .hero-core-spark{display:none}.hero-art-ai.is-finished .hero-core-check{display:block}.hero-art-ai.is-matching .hero-ai-core{transform:scale(1.13);box-shadow:0 0 0 12px #68c79c26,0 0 0 26px #6bc49b14,0 10px 20px #569e7330}
.hero-ai-meeting{position:absolute;top:-23px;left:50%;transform:translate(-50%,10px) scale(.7);opacity:0;color:#238f5b;font:1000 13px var(--sans);letter-spacing:.09em;text-shadow:0 2px 0 #fff;transition:opacity .55s,transform .55s;white-space:nowrap}
.hero-art-ai.is-finished .hero-ai-meeting{opacity:1;transform:translate(-50%,0) scale(1)}
.hero-signal{position:absolute;top:50%;width:42px;height:3px;background:#79c894;z-index:1}
.hero-signal::after{content:'';position:absolute;top:-4px;left:0;width:10px;height:10px;border-radius:50%;background:#29bd84;box-shadow:0 0 0 5px #68c99a25}
.hero-signal-left{right:52px}.hero-signal-right{left:52px}
.hero-signal-left::after{animation:heroSignalInLeft 1.8s linear infinite}
.hero-signal-right::after{animation:heroSignalInRight 1.8s linear infinite}
.hero-ai-spark{position:absolute;color:#63bb78;font-size:15px;animation:heroSparkle 2.4s ease-in-out infinite}.spark-one{top:13px;left:10px}.spark-two{bottom:11px;right:4px;animation-delay:1.1s}
.hero-match-process{position:absolute;top:403px;left:38px;right:38px;z-index:4;background:#ffffffec;border:1px solid #cbe3cd;border-radius:17px;padding:15px 19px 16px;box-shadow:0 12px 25px #427b4c1c}
.hero-match-row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px}
.hero-process-indicator{display:inline-flex;align-items:center;gap:7px;font:900 10px var(--round);color:#2e9262}
.hero-process-pulse{width:8px;height:8px;background:#3fb987;border-radius:50%;box-shadow:0 0 0 4px #3fb9871d;animation:heroPulse 2.2s ease-in-out infinite}
#hero-match-counter{font:900 9px var(--sans);color:#789c8b;letter-spacing:.08em}
.hero-match-process>strong{display:block;min-height:20px;font:900 14px/1.4 var(--round);color:#225842;transition:opacity .3s ease}
.hero-match-track{height:7px;border-radius:20px;background:#deedd9;margin-top:12px;overflow:hidden}
.hero-match-progress{display:block;height:100%;width:var(--hero-match-progress);border-radius:20px;background:linear-gradient(90deg,#49b98b,#94d25f);transition:width 1.3s ease}
.hero-art-ai.is-swapping .hero-match-process>strong{opacity:.4}
.hero-match-outcome{position:absolute;top:529px;left:55px;right:55px;min-height:58px;display:flex;align-items:center;gap:12px;z-index:5;background:#ddf8c6;border:1px solid #a1d58c;border-radius:15px;padding:10px 16px;box-shadow:0 11px 24px #4b8a5020;opacity:0;transform:translateY(13px) scale(.96);transition:opacity .55s ease,transform .55s ease}
.hero-art-ai.is-finished .hero-match-outcome{opacity:1;transform:translateY(0) scale(1)}
.hero-outcome-icon{display:grid;place-items:center;flex:none;width:37px;height:37px;border-radius:50%;background:#2cad72;color:white}
.hero-outcome-icon .icon{width:21px;height:21px}
.hero-match-outcome small{display:block;color:#4f9670;font:800 9px var(--round);margin-bottom:3px}
.hero-match-outcome strong{font:900 13px/1.4 var(--round);color:#1c6343}
.hero-outcome-arrow{font-size:23px;color:#2e9c68;margin-left:auto}
.hero-mascot-guide{position:absolute;top:83px;right:0;z-index:4;display:flex;align-items:center;transform:rotate(5deg)}
.hero-mascot-guide span{background:white;border:1px solid #cce7bb;border-radius:11px 11px 11px 3px;padding:8px 12px;color:#528863;font:900 9px/1.35 var(--round);box-shadow:0 8px 15px #3d84331b}
.hero-art-ai .hero-art-note{position:absolute;bottom:3px;left:0;right:0;text-align:center;font:700 8px var(--round);color:#8ba894}
.hero-art-ai.is-finished .hero-ai-core{background:#a9edb9;border-color:#4dbb80}
.hero-art-ai.is-finished .hero-signal::after{animation:none;left:16px}
@keyframes heroAgentFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes heroBirdFlutter{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-7px) rotate(3deg)}}
@keyframes heroBirdFlutterMirrored{0%,100%{transform:scaleX(-1) translateY(0) rotate(-3deg)}50%{transform:scaleX(-1) translateY(-7px) rotate(3deg)}}
@keyframes heroBirdRing{to{transform:rotate(360deg)}}
@keyframes heroSignalInLeft{0%{left:0}100%{left:32px}}
@keyframes heroSignalInRight{0%{left:32px}100%{left:0}}
@keyframes heroSparkle{0%,100%{opacity:.25;transform:scale(.7)}50%{opacity:1;transform:scale(1.15)}}
@keyframes heroPulse{0%,100%{box-shadow:0 0 0 3px #3fb9871d}50%{box-shadow:0 0 0 8px #3fb98712}}
@media(max-width:1180px){.hero-art-ai{transform:scale(.92);transform-origin:center}}
@media(max-width:970px){.hero-art-ai{width:580px;height:620px;max-width:100%;transform:none;margin-inline:auto}}
@media(max-width:600px){
 .hero-art-ai{width:340px;height:458px;transform:none;margin-top:18px}
 .hero-ai-orbit-outer{top:38px;width:325px;height:325px}.hero-ai-orbit-inner{top:80px;width:248px;height:248px}
 .hero-ai-heading{top:18px;left:0;font-size:7px;gap:5px}.hero-ai-dot{width:6px;height:6px;box-shadow:0 0 0 3px #36b47823}.hero-ai-subtitle{font-size:8px}
 .hero-art-ai .hero-motion-replay{top:9px;right:0}
 .hero-ai-pair{top:93px;grid-template-columns:minmax(0,1fr) 59px minmax(0,1fr);gap:4px}
 .hero-agent{height:164px;border-radius:17px;padding:12px 4px 10px}
 .hero-agent-label{font-size:8px;margin-bottom:10px;min-height:26px}
 .hero-bird-avatar{width:70px;height:70px;border-width:2px;margin-bottom:10px}
 .hero-bird-ring{inset:-6px;border-width:1px}
 .hero-bird-badge{width:25px;height:25px;right:-7px;bottom:-3px;border-radius:8px}.hero-bird-badge .icon{width:14px;height:14px}
 .hero-art-ai.is-company-active .hero-agent-company .hero-bird-avatar{transform:translateX(6px) rotate(6deg)}
 .hero-art-ai.is-candidate-active .hero-agent-candidate .hero-bird-avatar{transform:translateX(-6px) rotate(-6deg)}
 .hero-art-ai.is-matching .hero-agent-company .hero-bird-avatar,.hero-art-ai.is-finished .hero-agent-company .hero-bird-avatar{transform:translateX(10px) rotate(9deg) scale(1.04)}
 .hero-art-ai.is-matching .hero-agent-candidate .hero-bird-avatar,.hero-art-ai.is-finished .hero-agent-candidate .hero-bird-avatar{transform:translateX(-10px) rotate(-9deg) scale(1.04)}
 .hero-agent strong{font-size:10px}.hero-agent small{font-size:7px}
 .hero-ai-bridge{height:100px}.hero-ai-core{width:59px;height:59px;border-width:2px;box-shadow:0 0 0 5px #68c79c22,0 0 0 10px #6bc49b10}.hero-ai-core .icon{width:25px;height:25px}.hero-ai-core span{font-size:7px}
 .hero-signal{width:19px;height:2px}.hero-signal-left{right:37px}.hero-signal-right{left:37px}.hero-signal::after{width:7px;height:7px;top:-3px}
 .hero-mascot-guide{top:48px;right:0}.hero-mascot-guide span{font-size:7px;padding:7px;border-radius:7px}
 .hero-match-process{top:278px;left:5px;right:5px;border-radius:12px;padding:11px 13px 12px}
 .hero-match-row{margin-bottom:7px}.hero-process-indicator{font-size:9px}.hero-match-process>strong{font-size:11px;min-height:16px}.hero-match-track{margin-top:10px;height:6px}
 .hero-match-outcome{top:375px;left:9px;right:9px;min-height:56px;padding:8px 11px;gap:8px}
 .hero-outcome-icon{width:32px;height:32px}.hero-outcome-icon .icon{width:18px;height:18px}.hero-match-outcome small{font-size:8px}.hero-match-outcome strong{font-size:11px}.hero-outcome-arrow{font-size:19px}
 .hero-art-ai .hero-art-note{font-size:7px;bottom:1px}
}
@media(max-width:350px){.hero-art-ai{transform:scale(.9);transform-origin:top center;margin-bottom:-40px}}
@media(prefers-reduced-motion:reduce){
 .hero-bird-avatar img,.hero-bird-ring,.hero-signal::after,.hero-ai-spark,.hero-process-pulse{animation:none!important}
 .hero-bird-avatar,.hero-match-progress,.hero-match-outcome,.hero-match-process>strong{transition:none!important}
}

/* How-it-works: a small Hachidori leads the eye through five steps. */
.steps .section-intro{margin-bottom:30px}
.steps-motion-head{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:42px;margin-bottom:24px;padding:0 14px}
.steps-motion-caption{display:inline-flex;align-items:center;gap:10px;color:#518f6d;font:800 10px/1.5 var(--sans);letter-spacing:.04em}
.steps-motion-caption strong{font:900 13px/1.5 var(--round);color:#205a40;letter-spacing:0}
.steps-motion-dot{display:block;flex:none;width:9px;height:9px;border-radius:50%;background:#43b881;box-shadow:0 0 0 5px #51c39420;animation:heroPulse 2.2s ease-in-out infinite}
.steps-motion-replay{border:1px solid #badcc0;background:#f4fbef;border-radius:100px;padding:10px 14px;color:#37885d;font:900 10px var(--round);white-space:nowrap;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.steps-motion-replay:hover{background:#e5f7d9;border-color:#7cc894;transform:translateY(-2px)}
.steps-motion-replay:focus-visible{outline:3px solid #2a9b6c;outline-offset:3px}
.steps-motion-replay:disabled{opacity:.5;cursor:default;transform:none}
.steps-motion-replay[hidden]{display:none}
.steps-line{--steps-progress:0%}
.steps-line::before{left:10%;right:10%;border-color:#b9d7bc}
.steps-flow-line{position:absolute;top:43px;left:10%;right:10%;height:3px;z-index:1;pointer-events:none}
.steps-flow-fill{position:absolute;left:0;top:0;width:var(--steps-progress);height:100%;background:linear-gradient(90deg,#48bd89,#8ad75b);border-radius:10px;box-shadow:0 0 11px #65c98a65;transition:width 1.45s cubic-bezier(.22,.8,.25,1)}
.steps-flow-bird{position:absolute;top:50%;left:var(--steps-progress);z-index:2;display:block;width:36px;height:36px;border-radius:50%;background:#fff;border:2px solid #99d5a6;box-shadow:0 3px 12px #319c6d3d;transform:translate(-50%,-50%);transition:left 1.45s cubic-bezier(.22,.8,.25,1)}
.steps-flow-bird img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;animation:stepsBirdTilt 2s ease-in-out infinite}
.steps-line .step{z-index:2;transition:opacity .5s ease,transform .65s ease}
.steps-line .step-icon{position:relative;z-index:3;transition:background .6s,border-color .6s,box-shadow .6s,transform .6s}
.steps-line.is-playing .step:not(.is-current):not(.is-complete){opacity:.6}
.steps-line .step.is-current{opacity:1;transform:translateY(-5px)}
.steps-line .step.is-current .step-icon{background:#e0fbc3;border-color:#72c77c;box-shadow:0 0 0 8px #8edb872f,0 11px 0 #cee8be;transform:scale(1.07)}
.steps-line .step.is-current h3{color:#258b57}
.steps-line .step.is-complete{opacity:1}
.steps-line .step.is-complete .step-icon{border-color:#7bc990;box-shadow:0 8px 0 #d1efcb}
.steps-line.is-done .step{opacity:1}
@keyframes stepsBirdTilt{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}
@media(max-width:970px){
 .steps-line{grid-template-columns:1fr;row-gap:21px}
 .steps-line::before{display:block;top:29px;bottom:34px;left:33px;right:auto;height:auto;width:0;border-top:0;border-left:2px dashed #b9d7bc}
 .steps-flow-line{top:29px;bottom:34px;left:32px;right:auto;width:3px;height:auto}
 .steps-flow-fill{width:100%;height:var(--steps-progress);transition:height 1.45s cubic-bezier(.22,.8,.25,1)}
 .steps-flow-bird{left:50%;top:var(--steps-progress);width:29px;height:29px;transition:top 1.45s cubic-bezier(.22,.8,.25,1)}
 .steps-line .step{display:grid;grid-template-columns:76px minmax(0,1fr);column-gap:19px;align-items:center;padding:0 0 16px;border-bottom:1px solid #e3ebe0}
 .steps-line .step-icon{grid-row:1/4;grid-column:1;width:66px;height:66px;margin:0;border-radius:20px}
 .steps-line .step-icon .icon{width:28px;height:28px}
 .steps-line .step b,.steps-line .step h3,.steps-line .step p{grid-column:2}
 .steps-line .step h3{margin:4px 0 5px}
 .steps-line .step.is-current{transform:translateX(5px)}
}
@media(max-width:600px){
 .steps-motion-head{padding:0;align-items:flex-start;gap:8px;margin-bottom:20px}
 .steps-motion-caption{flex-wrap:wrap;gap:6px;font-size:8px;max-width:215px}
 .steps-motion-caption strong{font-size:10px;width:100%;margin-left:15px}
 .steps-motion-replay{font-size:8px;padding:8px 10px}
 .steps-line .step{grid-template-columns:70px minmax(0,1fr);gap:0 12px}
 .steps-line .step-icon{width:58px;height:58px;border-radius:17px}
 .steps-line .step.is-current .step-icon{box-shadow:0 0 0 5px #8edb872f,0 8px 0 #cee8be}
 .steps-line::before{left:29px}.steps-flow-line{left:28px}
}
@media(prefers-reduced-motion:reduce){
 .steps-motion-dot,.steps-flow-bird img{animation:none!important}
 .steps-flow-fill,.steps-flow-bird,.steps-line .step,.steps-line .step-icon{transition:none!important}
}

/* 採用Before/After：ハチドリが左右の課題と解決策を見渡す */
.comparison-center img{animation:comparisonBirdLookAround 6.4s ease-in-out infinite;transform-origin:center center;will-change:transform}
@keyframes comparisonBirdLookAround{
 0%,15%,85%,100%{transform:translateY(0) scaleX(1)}
 26%,63%{transform:translateY(-6px) scaleX(-1)}
 74%{transform:translateY(-3px) scaleX(1)}
}
@media(prefers-reduced-motion:reduce){.comparison-center img{animation:none!important}}

/* 0次面接：企業と求職者の入力から推薦までを順に見せる */
.mechanism-explainer{min-height:500px;padding-top:64px;padding-bottom:90px;--signal-distance:36px}
.mechanism-motion-head{position:absolute;top:1px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#c9ebbb;font-size:10px;font-weight:900;z-index:5}
.mechanism-motion-head>span{display:inline-flex;align-items:center;gap:7px}
.mechanism-motion-dot{width:7px;height:7px;border-radius:50%;background:#b6fa80;box-shadow:0 0 0 4px #b6fa8019}
.mechanism-replay{font:800 9px var(--round);color:#dcf7ce;background:#ffffff11;border:1px solid #b7e2b65b;padding:7px 11px;border-radius:100px;cursor:pointer;transition:background .2s}
.mechanism-replay:hover,.mechanism-replay:focus-visible{background:#ffffff27}
.mechanism-explainer .ai-card{position:relative;transition:transform .55s ease,box-shadow .55s ease,filter .55s ease}
.mechanism-explainer .ai-card-step{font:900 9px var(--round);letter-spacing:.035em;color:#2c8d61;margin-bottom:11px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.mechanism-explainer .person-ai .ai-card-step{color:#569345}
.mechanism-explainer .ai-card-icon{margin-bottom:12px}
.mechanism-explainer .ai-card small{letter-spacing:0;font:800 10px var(--round);color:#6b9982}
.mechanism-explainer .ai-card strong{font-size:17px;line-height:1.45}
.mechanism-explainer .ai-card p{margin-top:12px;line-height:1.65}
.mechanism-explainer .ai-exchange{flex:0 0 144px;min-width:0;height:144px;border-radius:50%;border-width:7px;box-shadow:0 0 0 12px #97d1801c,0 13px 30px #0002;transition:box-shadow .45s,background .45s,transform .45s}
.mechanism-explainer .ai-exchange::before,.mechanism-explainer .ai-exchange::after{width:36px}
.mechanism-explainer .ai-exchange strong{font-size:22px}
.mechanism-explainer .exchange-signal{position:absolute;width:11px;height:11px;top:calc(50% - 5px);border-radius:50%;background:#e5ffa8;box-shadow:0 0 0 5px #d6ff9a36;opacity:0;z-index:3;pointer-events:none}
.mechanism-explainer .signal-company{left:calc(-1 * var(--signal-distance))}
.mechanism-explainer .signal-candidate{right:calc(-1 * var(--signal-distance))}
.mechanism-motion-status{position:absolute;top:36px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:9px;white-space:nowrap;font:800 9px var(--round);color:#c8ecbe}
.mechanism-motion-status span{border:1px solid #9fdf95a1;color:#d6ffbe;border-radius:100px;padding:4px 6px;font:800 8px var(--sans)}
.mechanism-motion-status strong{font-weight:800}
.mechanism-explainer .ai-match-result{transition:transform .5s ease,box-shadow .5s ease,opacity .5s ease}
.mechanism-explainer .ai-match-result small{font:800 9px var(--round);letter-spacing:0}
.mechanism-explainer .ai-match-result strong{font-size:15px}
.mechanism-explainer.is-input .ai-card{filter:brightness(1.04);box-shadow:0 20px 48px #5aba7e5c}
.mechanism-explainer.is-input .company-ai{transform:rotate(-2deg) translateY(-8px)}
.mechanism-explainer.is-input .person-ai{transform:rotate(2deg) translateY(-8px)}
.mechanism-explainer.is-checking .ai-exchange{background:#d9ffa6;box-shadow:0 0 0 15px #a7f88f35,0 0 0 28px #b6ef7e1c,0 14px 35px #0002;animation:mechanismCorePulse 1.6s ease-in-out infinite}
.mechanism-explainer.is-checking .signal-company{animation:mechanismSignalInLeft 1.2s linear infinite}
.mechanism-explainer.is-checking .signal-candidate{animation:mechanismSignalInRight 1.2s linear infinite}
.mechanism-explainer.is-result .ai-match-result{transform:translateY(-4px) scale(1.025);box-shadow:0 20px 45px #63be7252}
.mechanism-explainer.is-result .result-check{animation:mechanismCheckPop .75s ease-out both}
@keyframes mechanismCorePulse{0%,100%{transform:scale(1)}50%{transform:scale(1.065)}}
@keyframes mechanismSignalInLeft{0%{opacity:0;transform:translateX(0)}20%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translateX(var(--signal-distance))}}
@keyframes mechanismSignalInRight{0%{opacity:0;transform:translateX(0)}20%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translateX(calc(-1 * var(--signal-distance)))}}
@keyframes mechanismCheckPop{0%{transform:scale(.75)}65%{transform:scale(1.13)}100%{transform:scale(1)}}
@media(max-width:1180px){.mechanism-explainer .ai-exchange{flex-basis:135px;height:135px}}
@media(max-width:600px){
 .mechanism-explainer{min-height:385px;padding:54px 0 86px;--signal-distance:12px}
 .mechanism-motion-head{top:0;font-size:8px}
 .mechanism-replay{font-size:7px;padding:6px 8px}
 .mechanism-motion-status{top:35px;font-size:7px;gap:5px}
 .mechanism-motion-status span{font-size:7px;padding:3px 5px}
 .mechanism-explainer .ai-card{width:110px;height:182px;padding:12px 5px 14px}
 .mechanism-explainer .ai-card-step{font-size:7px;margin-bottom:6px}
 .mechanism-explainer .ai-card-icon{margin-bottom:5px}
 .mechanism-explainer .ai-card small{font-size:7px}
 .mechanism-explainer .ai-card strong{font-size:10px}
 .mechanism-explainer .ai-card p{font-size:8px;margin-top:8px}
 .mechanism-explainer .ai-exchange{flex-basis:85px;min-width:0;height:95px;border-width:5px}
 .mechanism-explainer .ai-exchange::before,.mechanism-explainer .ai-exchange::after{width:12px}
 .mechanism-explainer .ai-exchange strong{font-size:16px}
 .mechanism-explainer .ai-match-result small{font-size:7px}
 .mechanism-explainer .ai-match-result strong{font-size:10px}
 .mechanism-explainer .exchange-signal{width:7px;height:7px;top:calc(50% - 3px)}
}
@media(prefers-reduced-motion:reduce){
 .mechanism-explainer .ai-card,.mechanism-explainer .ai-exchange,.mechanism-explainer .ai-match-result{transition:none!important;animation:none!important}
 .mechanism-explainer .exchange-signal,.mechanism-explainer .result-check{animation:none!important}
}

/* 最終メッセージ：視線をハチドリ→見出し→登録ボタンへ誘導 */
.closing{background:radial-gradient(circle at 50% 15%,#348f61 0,#1d744c 45%,#13553a 100%)}
.closing-inner{padding-top:104px;padding-bottom:118px}
.closing-visual{position:relative;width:188px;height:184px;margin:0 auto 17px;display:grid;place-items:center;isolation:isolate}
.closing-visual::before{content:'';position:absolute;inset:1px;border:1px dashed #c5f6a58a;border-radius:50%;animation:closingHaloOrbit 22s linear infinite}
.closing-visual::after{content:'';position:absolute;inset:15px;border-radius:50%;background:#caff8723;box-shadow:0 0 0 13px #caff870b;z-index:-1;animation:closingHaloGlow 4.8s ease-in-out infinite}
.closing-visual .closing-bird{position:relative;z-index:2;width:140px;height:140px;margin:0;border:5px solid #e2ffb4;box-shadow:0 0 0 10px #daffc324,0 18px 40px #073a283d;animation:closingBirdFloat 4.8s ease-in-out infinite}
.closing-visual .closing-bird img{animation:closingBirdGreeting 6.4s ease-in-out infinite;transform-origin:center 65%}
.closing-spark{position:absolute;z-index:3;color:#e1ff9a;font-size:25px;line-height:1;filter:drop-shadow(0 0 9px #d9ff8f70);animation:closingSparkTwinkle 3.4s ease-in-out infinite}
.closing-spark-left{left:3px;top:42px}
.closing-spark-right{right:1px;bottom:45px;font-size:29px;animation-delay:1.35s}
.closing-kicker{display:inline-block;font-size:12px;font-weight:900;letter-spacing:.17em;color:#e0ffd1;background:#ffffff12;border:1px solid #e6ffd53b;border-radius:100px;padding:10px 18px}
.closing h2{font-size:clamp(41px,4.9vw,66px);line-height:1.37;margin:25px 0 23px;text-wrap:balance}
.closing h2 span,.closing h2 em{display:block}
.closing h2 em{color:#e1ffa7;text-shadow:0 3px 22px #0a492c33}
.closing .closing-description{max-width:760px;margin:0 auto 29px;font-size:clamp(14px,1.45vw,17px);line-height:1.95;color:#efffeb;font-weight:700}
.closing-offer{background:#ffffff22;border-color:#e2ffc1a6;color:#f9fff5;box-shadow:0 10px 25px #0b482b24}
.closing-offer s{color:#d5eacf}.closing-offer strong{color:#eaffbc}
.closing-button{box-shadow:0 14px 40px #07382368;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.closing-button:hover{transform:translateY(-3px);box-shadow:0 20px 46px #07382380}
.closing-inner>small{color:#d5e8d7;font-size:10px;line-height:1.8}
.closing-doodles{animation:closingDoodlesDrift 10s ease-in-out infinite alternate;pointer-events:none}
@keyframes closingHaloOrbit{to{transform:rotate(360deg)}}
@keyframes closingHaloGlow{0%,100%{opacity:.65;transform:scale(.97)}50%{opacity:1;transform:scale(1.055)}}
@keyframes closingBirdFloat{0%,100%{transform:translateY(2px)}50%{transform:translateY(-10px)}}
@keyframes closingBirdGreeting{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}
@keyframes closingSparkTwinkle{0%,100%{opacity:.45;transform:scale(.85) rotate(-12deg)}50%{opacity:1;transform:scale(1.15) rotate(12deg)}}
@keyframes closingDoodlesDrift{from{opacity:.5;translate:0 0}to{opacity:.95;translate:10px -12px}}
/* JSが使える場合だけ、スクロールに合わせてテキストを順に表示 */
.closing.has-motion .closing-visual,.closing.has-motion .closing-kicker,.closing.has-motion h2,.closing.has-motion .closing-description,.closing.has-motion .closing-offer,.closing.has-motion .closing-button,.closing.has-motion .closing-inner>small{opacity:0;transform:translateY(22px);transition:opacity .72s ease,transform .72s cubic-bezier(.22,.76,.22,1)}
.closing.has-motion.is-visible .closing-visual,.closing.has-motion.is-visible .closing-kicker,.closing.has-motion.is-visible h2,.closing.has-motion.is-visible .closing-description,.closing.has-motion.is-visible .closing-offer,.closing.has-motion.is-visible .closing-button,.closing.has-motion.is-visible .closing-inner>small{opacity:1;transform:translateY(0)}
.closing.has-motion.is-visible .closing-kicker{transition-delay:.14s}
.closing.has-motion.is-visible h2{transition-delay:.25s}
.closing.has-motion.is-visible .closing-description{transition-delay:.39s}
.closing.has-motion.is-visible .closing-offer{transition-delay:.53s}
.closing.has-motion.is-visible .closing-button{transition-delay:.63s}
.closing.has-motion.is-visible .closing-inner>small{transition-delay:.71s}
.closing.has-motion.is-visible .closing-button:hover{transform:translateY(-3px)}
@media(max-width:600px){
 .closing-inner{padding:78px 0 95px}
 .closing-visual{width:151px;height:150px;margin-bottom:13px}
 .closing-visual .closing-bird{width:113px;height:113px;border-width:4px}
 .closing-spark-left{top:35px}.closing-spark-right{bottom:33px}
 .closing-kicker{font-size:8px;letter-spacing:.12em;padding:8px 12px}
 .closing h2{font-size:clamp(35px,9.6vw,43px);line-height:1.42;margin:21px 0 18px}
 .closing .closing-description{font-size:13px;line-height:1.9;margin-bottom:24px}
 .closing-offer{flex-wrap:wrap;white-space:normal;gap:6px 9px;border-radius:18px;padding:10px 14px}
 .closing-inner>small{font-size:9px}
}
@media(prefers-reduced-motion:reduce){
 .closing-visual::before,.closing-visual::after,.closing-bird,.closing-bird img,.closing-spark,.closing-doodles{animation:none!important}
 .closing.has-motion .closing-visual,.closing.has-motion .closing-kicker,.closing.has-motion h2,.closing.has-motion .closing-description,.closing.has-motion .closing-offer,.closing.has-motion .closing-button,.closing.has-motion .closing-inner>small{opacity:1!important;transform:none!important;transition:none!important}
}

/* 候補者一覧の操作デモ：選択から推薦理由への視線誘導 */
.experience-demo-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 15px;padding:0 3px}
.experience-demo-caption{display:flex;align-items:center;gap:10px;color:#347e55;font-size:11px;font-weight:800;line-height:1.6}
.experience-demo-caption strong{font:900 11px var(--sans);color:#298f58;border:1px solid #9ed7ad;border-radius:100px;padding:5px 9px;white-space:nowrap}
.experience-demo-dot{width:9px;height:9px;border-radius:50%;background:#39b86a;box-shadow:0 0 0 5px #a8e8b43b;flex:none}
.experience-demo-replay{border:1px solid #a6d4b0;background:#fffef8;border-radius:100px;padding:9px 13px;color:#2f8c57;font:900 10px var(--round);cursor:pointer;white-space:nowrap;transition:background .2s,transform .2s}
.experience-demo-replay:hover,.experience-demo-replay:focus-visible{background:#dbf6d7;transform:translateY(-1px)}
.experience-demo-replay:disabled{opacity:.57;cursor:default;transform:none}
.experience-step-tag{display:inline-flex;align-items:center;justify-content:center;padding:5px 8px;border-radius:100px;border:1px solid #9ed5ac;color:#267b50;background:#e8f8e5;font:900 9px var(--sans);letter-spacing:.06em;white-space:nowrap}
.experience-sidebar>p{display:flex;align-items:center;gap:9px;color:#efffee;font-size:12px;letter-spacing:0;margin-top:29px;margin-bottom:14px}
.experience-sidebar .experience-step-tag{background:#ddfac8;color:#215a3f;border-color:#b5dfab}
.candidate-option{cursor:pointer;position:relative;min-height:73px;transition:background .24s,border-color .24s,transform .24s,box-shadow .24s}
.candidate-option:focus-visible{outline:3px solid #ceff9a;outline-offset:3px}
.candidate-option.is-active{border-color:#89d887;box-shadow:0 0 0 3px #95e8956e,0 12px 25px #082c2529}
.candidate-option.is-active::after{content:'✓';position:absolute;top:-8px;right:-8px;width:19px;height:19px;border-radius:50%;background:#2ca66b;color:#fff;display:grid;place-items:center;font:800 11px var(--sans);box-shadow:0 4px 12px #0b4c3338}
.experience-board.is-demoing .candidate-option.is-demo-focus{animation:experienceFocusPulse 1.45s ease-in-out infinite}
.board-hint{color:#c3e7c9;font-size:10px;font-weight:700}
.experience-detail-guide{display:flex;align-items:center;gap:9px;margin-top:21px;color:#2e8255;font:900 11px var(--round)}
.experience-detail .detail-main{margin-top:25px}
.experience-detail .detail-eyebrow{font-family:var(--round);font-size:11px;letter-spacing:.04em}
.experience-detail .detail-main h3{color:#173f31}
.experience-detail .detail-main p{color:#51735f;font-size:12px}
.experience-detail .detail-score{border-color:#3ab671;box-shadow:0 0 0 6px #e5f9e8}
.experience-detail .detail-score span{font-family:var(--round);font-size:9px;letter-spacing:0}
.experience-detail .recommendation{background:#eff9ee;border-left-width:5px;border-left-color:#4db97a}
.experience-detail .recommendation p{color:#365f48;font-size:12px}
.experience-detail .detail-conditions small{color:#6b9981}
.experience-detail .detail-main,.experience-detail .recommendation,.experience-detail .detail-conditions{opacity:1;transform:translateY(0);transition:opacity .2s ease,transform .2s ease}
.experience-board.is-switching .detail-main,.experience-board.is-switching .recommendation,.experience-board.is-switching .detail-conditions{opacity:.22;transform:translateY(9px)}
.experience-board.is-demoing .detail-score{animation:experienceScoreBreath 2.4s ease-in-out infinite}
@keyframes experienceFocusPulse{0%,100%{box-shadow:0 0 0 3px #95e8956e,0 12px 25px #082c2529}50%{box-shadow:0 0 0 8px #95e89546,0 14px 29px #082c253d}}
@keyframes experienceScoreBreath{0%,100%{box-shadow:0 0 0 6px #e5f9e8;transform:scale(1)}50%{box-shadow:0 0 0 11px #b6eacb68;transform:scale(1.035)}}
@media(max-width:600px){
 .experience-demo-head{flex-wrap:wrap;gap:9px;margin-bottom:13px}
 .experience-demo-caption{font-size:9px;gap:7px;flex:1 1 100%}
 .experience-demo-caption strong{font-size:9px;padding:4px 7px}
 .experience-demo-replay{font-size:9px;padding:7px 11px;margin-left:auto}
 .experience-sidebar>p{font-size:10px;gap:7px;margin:19px 0 12px}
 .experience-step-tag{font-size:8px;padding:4px 7px}
 .candidate-option{min-height:62px}
 .board-hint{font-size:9px}
 .experience-detail-guide{font-size:10px;margin-top:17px}
 .experience-detail .detail-main{margin-top:19px}
 .experience-detail .detail-eyebrow{font-size:9px}
 .experience-detail .detail-main p{font-size:10px}
 .experience-detail .detail-score span{font-size:7px}
 .experience-detail .recommendation p{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
 .experience-board.is-demoing .candidate-option,.experience-board.is-demoing .detail-score{animation:none!important}
 .experience-detail .detail-main,.experience-detail .recommendation,.experience-detail .detail-conditions{transition:none!important}
}

.footer-bottom .footer-company{display:block;margin-top:11px;white-space:normal;color:#738f7d;font-weight:700;line-height:1.85}
.footer-bottom .footer-copyright{white-space:normal;line-height:1.85}

/* 5ステップが動き終わったら、担当する人とAIを色分けして表示 */
.steps-line .step-owner{display:inline-flex;align-items:center;gap:7px;max-width:max-content;margin-top:15px;border:1px solid;border-radius:100px;padding:6px 11px 6px 7px;font:900 10px/1.3 var(--round);opacity:1;transform:translateY(0);transition:opacity .55s ease,transform .55s ease}
.steps-line .owner-symbol,.steps-role-key .owner-symbol{display:grid;place-items:center;flex:none;min-width:25px;height:25px;padding:0 3px;border-radius:50%;font:900 10px var(--sans)}
.step-owner.owner-ai,.steps-role-key.owner-ai{color:#176f50;background:#e6f7e9;border-color:#9bdabc}
.step-owner.owner-ai .owner-symbol,.steps-role-key.owner-ai .owner-symbol{background:#2d9e6e;color:white}
.step-owner.owner-human,.steps-role-key.owner-human{color:#8f5d36;background:#fff4e4;border-color:#edccaa}
.step-owner.owner-human .owner-symbol,.steps-role-key.owner-human .owner-symbol{background:#be8959;color:white}
.steps-line.is-awaiting .step-owner,.steps-line.is-playing .step-owner{opacity:0;transform:translateY(11px);transition-delay:0s}
.steps-line.is-done .step:nth-child(2) .step-owner{transition-delay:.08s}
.steps-line.is-done .step:nth-child(3) .step-owner{transition-delay:.2s}
.steps-line.is-done .step:nth-child(4) .step-owner{transition-delay:.32s}
.steps-line.is-done .step:nth-child(5) .step-owner{transition-delay:.44s}
.steps-line.is-done .step:nth-child(6) .step-owner{transition-delay:.56s}
.steps-role-summary{display:flex;justify-content:center;gap:14px;margin:26px auto 0;max-height:160px;opacity:1;overflow:hidden;transform:translateY(0);transition:opacity .65s ease .45s,transform .65s ease .45s,max-height .6s ease,margin .6s ease}
.steps-role-key{display:flex;align-items:center;gap:9px;border:1px solid;border-radius:17px;padding:12px 16px;min-width:0}
.steps-role-key strong{font:900 12px var(--round);white-space:nowrap}
.steps-role-key>span:last-child{font:700 10px/1.6 var(--round)}
.steps-line.is-awaiting + .steps-role-summary,.steps-line.is-playing + .steps-role-summary{opacity:0;max-height:0;margin-top:0;transform:translateY(12px);transition-delay:0s}
.steps-role-summary + .step-note{margin-top:28px}
@media(max-width:970px){
 .steps-line .step-owner{grid-column:2;margin-top:8px}
 .steps-role-summary{flex-wrap:wrap;justify-content:stretch}
 .steps-role-key{flex:1 1 250px}
}
@media(max-width:600px){
 .steps-line .step-owner{font-size:9px;padding:5px 10px 5px 6px}
 .steps-line .owner-symbol,.steps-role-key .owner-symbol{min-width:22px;height:22px;font-size:9px}
 .steps-role-summary{gap:10px;margin-top:18px}
 .steps-role-key{padding:10px 12px;border-radius:13px;gap:8px;flex-basis:100%}
 .steps-role-key strong{font-size:11px}
 .steps-role-key>span:last-child{font-size:9px}
 .steps-role-summary + .step-note{margin-top:20px}
}
@media(prefers-reduced-motion:reduce){
 .steps-line .step-owner,.steps-role-summary{opacity:1!important;transform:none!important;transition:none!important}
}

/* Pricing: free early-registration benefit without an oversized coupon poster. */
.price-layout{grid-template-columns:minmax(0,1fr) minmax(0,395px);gap:6.5%;align-items:center}
.price-copy>p{max-width:490px;color:#526d5d;font-weight:600}
.coupon-card{justify-self:end;width:100%;max-width:395px;padding:27px 30px 25px;border:2px solid #338d59;border-radius:25px;background:linear-gradient(145deg,#e4ffb2 0%,#d3f99e 100%);box-shadow:12px 15px 0 #377b5020,0 18px 45px #2f704b1a;overflow:hidden}
.coupon-card::before{right:-125px;top:-122px;width:245px;height:245px;background:#f5ffd845}
.coupon-top{display:flex;justify-content:center;gap:10px;padding:9px 13px;background:#f4ffdf;color:#2c7548;border:1px solid #cbeca8;font-size:11px;letter-spacing:.025em}
.coupon-star{font-size:13px}
.coupon-title{margin:20px 0 0;text-align:center;font:900 19px/1.5 var(--round);letter-spacing:-.035em;color:#255d3d}
.coupon-now{display:flex;justify-content:center;align-items:baseline;gap:8px;margin-top:-4px;color:#126b47}
.coupon-now strong{font:900 97px/1.2 var(--sans);letter-spacing:-.085em;color:#126b47}
.coupon-now>span{display:flex;align-items:baseline;gap:3px;font:900 31px var(--round);white-space:nowrap}
.coupon-now>span small{font:800 14px var(--sans);color:#36754c}
.coupon-old{font-size:12px;font-weight:800;color:#527e59}
.coupon-old s{font-size:19px;margin:0 5px;color:#588a60;text-decoration-color:#c88d80}
.coupon-divider{margin:20px 0 15px;border-top:1px dashed #7bb780}
.coupon-card>p{font:800 12px var(--round);color:#356a48;margin:0 0 20px}
.coupon-card>p strong{font-size:19px;margin-left:5px;color:#126b47}
.coupon-card .button{min-height:54px;font-size:12px;gap:11px}
.coupon-note{font-size:10px;line-height:1.65;color:#58795c;margin-top:14px}
@media(max-width:970px){
 .price-layout{grid-template-columns:minmax(0,1fr);gap:30px}
 .coupon-card{justify-self:center;max-width:395px}
}
@media(max-width:600px){
 .coupon-card{padding:22px 20px 23px;border-radius:22px}
 .coupon-top{font-size:10px;padding:8px 11px;gap:7px}
 .coupon-title{font-size:17px;margin-top:17px}
 .coupon-now strong{font-size:87px}
 .coupon-now>span{font-size:28px}
 .coupon-now>span small{font-size:12px}
 .coupon-old{font-size:11px}
 .coupon-old s{font-size:16px}
 .coupon-card>p{font-size:11px}
 .coupon-card>p strong{font-size:18px}
 .coupon-card .button{font-size:12px;min-height:55px}
 .coupon-note{font-size:9px}
}

/* Single coupon card refinement: strong price contrast and a clear call to action. */
.coupon-card{background:linear-gradient(145deg,#defeaa 0%,#cefa95 100%);border-color:#2c8855;box-shadow:9px 11px 0 #326f5020,0 22px 42px #225d3f1a}
.coupon-top{width:max-content;max-width:100%;margin-inline:auto;padding:9px 17px;background:#176747;border-color:#176747;color:#f5ffe7;box-shadow:0 6px 14px #125b3a18}
.coupon-star{color:#d4fa91}
.coupon-title{margin:21px 0 14px;color:#20553c;font-size:19px}
.coupon-price-panel{position:relative;padding:15px 12px 12px;border-radius:19px;border:1px solid #cae8b3;background:#fffef6;box-shadow:0 8px 20px #32744810;text-align:center}
.coupon-price-panel .coupon-old{font:800 12px var(--round);color:#64806a}
.coupon-price-panel .coupon-old s{font-size:17px;color:#738d75}
.coupon-price-panel .coupon-now{margin-top:-4px;gap:6px}
.coupon-price-panel .coupon-now strong{font-size:94px;line-height:1.08;color:#13804f}
.coupon-price-panel .coupon-now>span{font-size:27px;color:#13804f}
.coupon-free-caption{display:inline-block;margin:0 auto 3px;padding:5px 14px;border-radius:100px;background:#e8fbd7;color:#297c4e;font:900 11px var(--round)}
.coupon-divider{margin:17px 0 13px}
.coupon-card>p{margin-bottom:18px;color:#2e6949}
.coupon-card .button{display:flex;justify-content:space-between;gap:10px;padding:9px 10px 9px 22px;min-height:60px;border:2px solid #155a40;border-radius:100px;background:#155b40;color:white;font-size:13px;box-shadow:0 11px 24px #164c3650;animation:couponCtaGlow 3.4s ease-in-out infinite}
.coupon-card .button:hover{background:#0f714b;box-shadow:0 16px 28px #164c3668;transform:translateY(-3px)}
.coupon-cta-arrow{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:50%;background:#d6ff9d;color:#145c3b;transition:transform .22s ease,background .22s ease}
.coupon-cta-arrow .icon{width:19px;height:19px}
.coupon-card .button:hover .coupon-cta-arrow{transform:translateX(3px);background:#f0ffc8}
.coupon-card .button:focus-visible{outline:3px solid #0a7651;outline-offset:5px}
.coupon-note{margin-top:16px}
@keyframes couponCtaGlow{0%,100%{box-shadow:0 11px 24px #164c3650}50%{box-shadow:0 11px 24px #164c3650,0 0 0 6px #ffffff50}}
@media(max-width:600px){
 .coupon-top{padding:8px 12px;font-size:9px}
 .coupon-title{font-size:17px;margin-top:17px;margin-bottom:12px}
 .coupon-price-panel{padding:13px 9px 11px;border-radius:16px}
 .coupon-price-panel .coupon-now strong{font-size:83px}
 .coupon-price-panel .coupon-now>span{font-size:24px}
 .coupon-free-caption{font-size:10px}
 .coupon-card .button{padding:7px 8px 7px 16px;min-height:58px;font-size:11px}
 .coupon-cta-arrow{width:35px;height:35px}
}
@media(prefers-reduced-motion:reduce){
 .coupon-card .button{animation:none!important}
 .coupon-cta-arrow{transition:none!important}
}
