*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:60px}body{font-family:Noto Sans JP,sans-serif;color:#222;background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden;padding-top:60px;padding-bottom:68px}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}button{cursor:pointer;font-family:inherit;background:none;border:none}:root{--green:#3DA629;--green-d:#2B8A1A;--green-l:#e8f5e2;--line:#06c755;--dark:#111;--gray:#f4f4f2;--text:#333;--sub:#777;--white:#fff;--inner:1060px}.lp-header{position:fixed;top:0;left:0;right:0;z-index:300;height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#fff;border-bottom:1px solid #e8e8e8;transition:box-shadow .3s}.lp-header.scrolled{box-shadow:0 2px 16px rgba(0,0,0,.07)}.header-logo{display:flex;align-items:center}.header-logo-img{height:38px;width:auto;display:block;mix-blend-mode:multiply}.header-cta{display:inline-flex;align-items:center;gap:7px;background:var(--line);color:#fff;padding:9px 18px;border-radius:4px;font-size:12px;font-weight:700;transition:opacity .2s}.header-cta:hover{opacity:.88;color:#fff}.header-cta svg{width:14px;height:14px}.hero{position:relative;overflow:hidden;background:#111;line-height:0;height:75vh}.hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:160px;background:linear-gradient(180deg,transparent,#111);z-index:1;pointer-events:none}.hero-img-pc,.hero-slides{position:absolute;inset:0}.hero-img-pc{width:100%;height:100%;display:block;object-fit:cover;object-position:center 20%;opacity:0;transition:opacity 1.8s ease-in-out}.hero-img-pc.active{opacity:.92}.hero-img-sp{display:none;width:100%;height:100%;object-fit:cover;object-position:center top}@media(max-width:768px){.hero{height:calc(100svh - 60px)}.hero-slides{display:none}.hero-img-sp{display:block}}.hero-text-sec{background:#fff;margin-top:32px;padding:48px clamp(20px,5vw,72px) 64px}@media(max-width:768px){.hero-text-sec{margin-top:0;padding-top:32px}}.hero-text-sec h1{font-size:clamp(24px,4.5vw,56px);font-weight:900;line-height:1.25;color:var(--dark);letter-spacing:-.5px}.hero-text-sec h1 em{font-style:normal;color:var(--green)}.hero-text-sec .hero-sub{margin-top:16px;font-size:clamp(12px,1.5vw,15px);color:var(--sub);letter-spacing:.5px}.hero-scroll{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:4px;animation:scrollbounce 2s ease-in-out infinite}.hero-scroll span{font-family:Lato,sans-serif;font-size:8px;font-weight:700;letter-spacing:3px;color:rgba(255,255,255,.55);text-transform:uppercase}.hero-scroll svg{width:18px;height:18px;stroke:rgba(255,255,255,.55)}@keyframes scrollbounce{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(7px)}}.gallery-sec{overflow:hidden;background:#111;padding:0;line-height:0}.gallery-wrap{display:flex;width:max-content;animation:marquee 36s linear infinite}.gallery-wrap:hover{animation-play-state:paused}.gallery-wrap img{height:260px;width:auto;object-fit:cover;display:block;flex-shrink:0;margin-right:4px;opacity:.85;transition:opacity .3s}.gallery-wrap img:hover{opacity:1}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@media(max-width:768px){.gallery-wrap img{height:180px}}.inner{max-width:var(--inner);margin:0 auto;padding:0 24px}.sec{padding:88px 0}.sec.bg-gray{background:var(--gray)}.sec.bg-dark{background:var(--dark)}.sec-label{display:inline-block;font-family:Lato,sans-serif;font-size:10px;font-weight:900;letter-spacing:4px;text-transform:uppercase;color:var(--green);border-left:3px solid var(--green);padding-left:10px;margin-bottom:20px;line-height:1}.sec.bg-dark .sec-label{color:#9df06a;border-color:#9df06a}.message-sec{padding:80px 0 88px}.message-inner{max-width:var(--inner);margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1fr 1fr;grid-gap:64px;gap:64px;align-items:center}.message-text h2{font-size:clamp(28px,4vw,48px);font-weight:900;line-height:1.3;letter-spacing:-.5px;color:var(--dark);margin-bottom:28px}.message-text h2 span{color:var(--green)}.message-text p{font-size:15px;line-height:2;color:var(--sub);margin-bottom:32px}.btn-primary{display:inline-flex;align-items:center;gap:10px;background:var(--line);color:#fff;padding:16px 36px;border-radius:4px;font-size:14px;font-weight:700;transition:opacity .2s,transform .2s}.btn-primary:hover{opacity:.88;transform:translateY(-2px);color:#fff}.btn-primary svg{width:18px;height:18px}.message-photo{position:relative;border-radius:4px;overflow:hidden;aspect-ratio:4/3}.message-photo img{width:100%;height:100%;object-fit:cover}@media(max-width:860px){.message-inner{grid-template-columns:1fr}.message-photo{order:-1}}.numbers-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1px;gap:1px;background:#e0e0e0;border:1px solid #e0e0e0;border-radius:4px;overflow:hidden}.num-item{background:#fff;padding:44px 32px;text-align:center}.num-item .num{font-family:Lato,sans-serif;font-size:clamp(48px,7vw,80px);font-weight:900;line-height:1;color:var(--green);margin-bottom:10px;letter-spacing:-2px}.num-item .num span{font-size:.45em;letter-spacing:0}.num-item .num-label{font-size:13px;font-weight:700;color:var(--dark);margin-bottom:8px}.num-item .num-desc{font-size:12px;color:var(--sub);line-height:1.7}@media(max-width:640px){.numbers-grid{grid-template-columns:1fr}}.merit-list{display:flex;flex-direction:column;gap:0}.merit-item{display:grid;grid-template-columns:1fr 1fr;min-height:460px}.merit-item:nth-child(2n) .merit-photo{order:1}.merit-item:nth-child(2n) .merit-body{order:0}.merit-photo{position:relative;overflow:hidden;background:#eee}.merit-photo img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .6s ease}.merit-item:hover .merit-photo img{transform:scale(1.04)}.merit-num-bg{position:absolute;bottom:-16px;right:12px;font-family:Lato,sans-serif;font-size:120px;font-weight:900;color:rgba(0,0,0,.06);line-height:1;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.merit-body{display:flex;flex-direction:column;justify-content:center;padding:56px 52px;background:#fff}.merit-item:nth-child(2n) .merit-body{background:var(--gray)}.merit-body h3{font-size:clamp(20px,2.5vw,28px);font-weight:900;color:var(--dark);line-height:1.4;margin-bottom:20px;letter-spacing:-.3px}.merit-body p{font-size:14px;color:var(--sub);line-height:2}.merit-body .tag{margin-top:28px;display:inline-flex;align-items:center;gap:10px;background:var(--green);color:#fff;font-size:15px;font-weight:700;padding:12px 24px 12px 18px;border-radius:40px;letter-spacing:.5px;box-shadow:0 4px 12px rgba(61,166,41,.3)}.merit-body .tag:before{content:"";width:9px;height:9px;border-radius:50%;background:#fff;flex-shrink:0}@media(max-width:800px){.merit-item{grid-template-columns:1fr}.merit-item:nth-child(2n) .merit-photo{order:0}.merit-item:nth-child(2n) .merit-body{order:1}.merit-photo{min-height:260px}.merit-body{padding:36px 24px}}.compare-wrap{display:grid;grid-template-columns:1fr 80px 1fr;grid-gap:0;gap:0;align-items:stretch;margin-bottom:52px}.compare-side{border-radius:4px;overflow:hidden}.compare-side.other{background:#f9f9f9;border:1px solid #e8e8e8}.compare-side.espro{background:var(--green);color:#fff}.compare-top{padding:20px 28px;border-bottom:1px solid rgba(0,0,0,.07)}.compare-side.espro .compare-top{border-color:rgba(255,255,255,.15)}.compare-top .tag{font-size:10px;font-weight:700;letter-spacing:1px;color:var(--sub);text-transform:uppercase}.compare-side.espro .compare-top .tag{color:rgba(255,255,255,.65)}.compare-top h3{font-size:16px;font-weight:900;color:var(--dark);margin-top:4px}.compare-side.espro .compare-top h3{color:#fff}.compare-row{display:flex;justify-content:space-between;align-items:center;padding:16px 28px;border-bottom:1px solid rgba(0,0,0,.06)}.compare-side.espro .compare-row{border-color:rgba(255,255,255,.1)}.compare-row:last-child{border-bottom:none}.compare-row .cr-label{font-size:12px;color:#555;font-weight:500}.compare-side.espro .compare-row .cr-label{color:rgba(255,255,255,.9)}.compare-row .cr-val{font-family:Lato,sans-serif;font-size:22px;font-weight:900;color:var(--dark);letter-spacing:-1px}.compare-side.espro .compare-row .cr-val{color:#fff;font-size:26px}.compare-row .cr-val span{font-size:12px;letter-spacing:0;font-weight:700}.compare-vs{display:flex;align-items:center;justify-content:center;font-family:Lato,sans-serif;font-size:14px;font-weight:900;color:#bbb;letter-spacing:1px}.compare-note{font-size:11px;color:#bbb;margin-bottom:40px}.compare-cta,.compare-note{text-align:center}.compare-cta p{font-size:clamp(18px,3vw,26px);font-weight:900;color:var(--dark);margin-bottom:24px;line-height:1.5}.compare-cta p em{font-style:normal;color:var(--green)}@media(max-width:640px){.compare-wrap{grid-template-columns:1fr 32px 1fr}.compare-row,.compare-top{padding:10px}.compare-top h3{font-size:12px;line-height:1.4;word-break:break-all;overflow-wrap:break-word}.compare-top .tag{font-size:9px}.compare-row{flex-direction:column;align-items:flex-start;gap:2px}.compare-row .cr-label{font-size:10px}.compare-row .cr-val{font-size:14px;letter-spacing:0}.compare-side.espro .compare-row .cr-val{font-size:14px}.compare-vs{font-size:10px}}.line-cta-sec{padding:88px 24px;text-align:center;background:var(--dark);position:relative;overflow:hidden}.line-cta-sec:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(61,166,41,.15) 0,transparent 60%),radial-gradient(circle at 80% 50%,rgba(6,199,85,.1) 0,transparent 60%)}.line-cta-sec .inner{position:relative;z-index:1}.line-cta-sec .kicker{font-family:Lato,sans-serif;font-size:10px;font-weight:900;letter-spacing:4px;color:rgba(255,255,255,.4);text-transform:uppercase;margin-bottom:20px;display:block}.line-cta-sec h2{font-size:clamp(24px,4vw,42px);font-weight:900;color:#fff;line-height:1.4;margin-bottom:14px}.line-cta-sec p{font-size:14px;color:rgba(255,255,255,.6);line-height:1.9;margin-bottom:40px}.btn-line-lg{display:inline-flex;align-items:center;gap:12px;background:var(--line);color:#fff;padding:18px 48px;border-radius:4px;font-size:16px;font-weight:900;transition:opacity .2s,transform .2s;box-shadow:0 8px 32px rgba(6,199,85,.25)}.btn-line-lg:hover{opacity:.9;transform:translateY(-2px);color:#fff}.btn-line-lg svg{width:22px;height:22px}.recruit-table{width:100%;border-collapse:collapse;background:#fff}.recruit-table tr{border-bottom:1px solid #eee}.recruit-table tr:last-child{border-bottom:none}.recruit-table th{width:150px;padding:20px 24px;background:var(--gray);font-size:13px;font-weight:700;color:var(--dark);text-align:left;vertical-align:top;border-right:1px solid #e8e8e8}.recruit-table td{padding:20px 24px;font-size:14px;line-height:1.9;color:var(--sub)}.recruit-wrap{border:1px solid #e8e8e8;border-radius:4px;overflow:hidden}@media(max-width:600px){.recruit-table th{width:90px;font-size:12px;padding:14px 12px}.recruit-table td{padding:14px 12px;font-size:13px}}.faq-list{max-width:760px;margin:0 auto}.faq-item{border-bottom:1px solid #eee}.faq-q{display:flex;align-items:flex-start;gap:14px;padding:22px 0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.faq-q-mark{flex-shrink:0;font-family:Lato,sans-serif;font-size:12px;font-weight:900;letter-spacing:1px;color:var(--green);margin-top:2px;min-width:20px}.faq-qtxt{flex:1 1;font-size:15px;font-weight:700;color:var(--dark);line-height:1.55}.faq-arrow{flex-shrink:0;color:#ccc;margin-top:5px;transition:transform .3s}.faq-a{padding:0 0 22px 34px;font-size:14px;color:var(--sub);line-height:2}.apply-box{max-width:680px;margin:0 auto;background:#fff;border:1px solid #e8e8e8;border-radius:4px;padding:48px 44px}.apply-lead{font-size:14px;color:var(--sub);line-height:1.9;margin-bottom:32px;text-align:center}.apply-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.field label{display:block;font-size:12px;font-weight:700;color:var(--dark);margin-bottom:7px}.field label .req{background:var(--green);color:#fff;font-size:9px;padding:2px 7px;border-radius:2px;margin-left:5px}.field input,.field select,.field textarea{width:100%;padding:13px 14px;border:1px solid #ddd;border-radius:3px;font-size:14px;font-family:inherit;color:var(--dark);background:#fafafa;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(61,166,41,.1);background:#fff}.field textarea{height:110px;resize:vertical}.btn-submit{width:100%;padding:18px;background:var(--green);color:#fff;border-radius:4px;font-size:16px;font-weight:900;transition:opacity .2s,transform .2s;letter-spacing:.3px;border:none;cursor:pointer}.btn-submit:hover{opacity:.88;transform:translateY(-2px)}.btn-submit:disabled{opacity:.55;cursor:not-allowed;transform:none}.privacy{text-align:center;font-size:11px;color:#bbb;margin-top:12px;line-height:1.7}@media(max-width:600px){.apply-box{padding:32px 20px}.form-row{grid-template-columns:1fr}}.lp-footer{background:#111;padding:48px 24px;text-align:center}.lp-footer .f-logo{font-family:Lato,sans-serif;font-size:10px;font-weight:900;letter-spacing:3px;color:#fff;text-transform:uppercase;margin-bottom:4px}.lp-footer .f-logo-ja{font-size:12px;color:rgba(255,255,255,.4);margin-bottom:16px}.lp-footer .f-info{margin-bottom:20px;display:flex;flex-direction:column;gap:6px}.lp-footer .f-info p{font-size:11px;color:rgba(255,255,255,.45);display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.lp-footer .f-info p span{color:rgba(255,255,255,.25);font-size:10px;letter-spacing:.5px;white-space:nowrap}.lp-footer .f-copy{font-size:10px;color:rgba(255,255,255,.2)}.fixed-bar{position:fixed;bottom:0;left:0;right:0;z-index:999;background:var(--line);box-shadow:0 -3px 20px rgba(0,0,0,.12)}.fixed-bar a{display:flex;align-items:center;justify-content:center;gap:12px;color:#fff;padding:14px 20px;transition:opacity .2s}.fixed-bar a:hover{opacity:.9;color:#fff}.fixed-bar svg{width:20px;height:20px;flex-shrink:0}.bar-main{font-size:14px;font-weight:900}.bar-sub{font-size:10px;opacity:.8;display:block;margin-top:2px}