*{margin:0;padding:0;box-sizing:border-box}body{font-family:"Noto Sans JP", sans-serif}#loader{position:fixed;inset:0;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;z-index:9999}.loader-text{font-family:"Montserrat", sans-serif;font-weight:900;font-size:4rem;letter-spacing:4px;text-align:center}.loader-bar{width:0;height:4px;background:#ff2f92;margin:20px auto 0;animation:load 3s forwards}@keyframes load{to{width:260px}}.header{position:fixed;top:0;width:100%;background:rgba(255,255,255,0.62);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,0.45);box-shadow:0 10px 30px rgba(0,0,0,0.1);transform:translateY(-100%);transition:0.4s ease;z-index:1000;pointer-events:auto}.header.active{transform:translateY(0)}.header *{pointer-events:auto}.header-inner{max-width:1100px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:15px 30px}nav{display:flex;align-items:center}nav a{margin:0 15px;text-decoration:none;color:#111;font-weight:600}.header-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:999px;margin-left:12px;margin-right:0;color:#111;font-family:"Montserrat", sans-serif;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;transition:transform 0.22s ease, box-shadow 0.22s ease, background-color 0.22s ease, color 0.22s ease}.header-cta i{font-size:0.95rem}.entry-btn{background:#57d5e1}.contact-btn{background:#b8ee45}.header-cta:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 8px 18px rgba(0,0,0,0.25)}.header-logo{width:120px}.menu-toggle{display:none}.mobile-menu,.mobile-menu-backdrop{display:none}.hero{height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;position:relative}.ink-bg{position:absolute;inset:0;background:radial-gradient(circle at 20% 30%, #f05 0%, transparent 40%),radial-gradient(circle at 80% 60%, #00e5ff 0%, transparent 40%),radial-gradient(circle at 50% 80%, #f90 0%, transparent 40%);background-color:#000;pointer-events:none}.ink-bg.animate{animation:ink-bg-fade 4s ease forwards}@keyframes ink-bg-fade{from{background-color:#000}to{background-color:#fff}}.hero-inner{position:relative;color:#fff;width:100%;max-width:1100px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center}.hero-logo{display:block;width:260px;margin-bottom:30px;filter:drop-shadow(0 5px 16px rgba(0,0,0,0.35))}#heroHeadline{font-size:3.2rem;font-family:"Montserrat", sans-serif;font-weight:900;text-shadow:0 2px 10px rgba(0,0,0,0.35);opacity:0;transform:translateY(40px)}h2{font-family:"Montserrat", sans-serif;font-weight:900;font-size:4rem;margin-bottom:40px}.section h3,.section p,.section li,.section .lead{font-family:"M PLUS Rounded 1c", "Noto Sans JP", sans-serif;font-weight:700;letter-spacing:0.01em}.section{position:relative;margin-top:-100px;padding:160px 40px 130px;clip-path:polygon(0 100px, 100% 0, 100% 100%, 0 100%)}section.section:nth-of-type(odd){clip-path:polygon(0 0, 100% 100px, 100% 100%, 0 100%)}section#about.section{margin-top:0;padding-top:120px;clip-path:none}.wrap{max-width:1100px;margin:auto}.yellow{background:#ffe600}.pink{background:#ff2f92;color:#fff}#strength{background:#1464d2;color:#fff}#recruit{background:linear-gradient(135deg, #1eb66e 0%, #15ab7a 45%, #2a8ec3 100%);color:#fff}#recruit h2,#recruit p{color:#fff}#recruit .recruit-copy{max-width:920px;margin:0 auto 32px}#recruit .recruit-copy p{font-size:1.1rem;line-height:1.95}#recruit .mission-card{max-width:920px;margin:0 auto;padding:34px 36px;border-radius:20px;background:rgba(255,255,255,0.14);border:1px solid rgba(255,255,255,0.3);box-shadow:0 20px 45px rgba(0,50,80,0.22);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}#recruit .mission-label{display:inline-flex;align-items:center;gap:10px;margin-bottom:14px;font-family:"Montserrat", sans-serif;font-weight:800;letter-spacing:0.04em}#recruit .mission-label .fa-sparkles{font-size:1.1rem}#recruit .mission-card p{font-size:1.03rem;line-height:2}#recruit .recruit-cta{max-width:920px;margin:32px auto 0;text-align:center}#recruit .recruit-cta p{font-size:1.04rem;margin-bottom:16px}#recruit .entry-button{display:inline-flex;align-items:center;justify-content:center;min-width:180px;padding:14px 28px;border-radius:999px;border:2px solid rgba(255,255,255,0.9);color:#fff;text-decoration:none;font-family:"Montserrat", sans-serif;font-weight:800;letter-spacing:0.05em;transition:0.25s ease;background:rgba(255,255,255,0.12)}#recruit .entry-button:hover{background:#fff;color:#148f7c}.grid-3{display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:60px;margin-top:60px}.card{background:#fff;padding:60px;border-radius:20px;box-shadow:0 30px 70px rgba(0,0,0,0.15)}.dark-card{background:#1a1a1a;color:#fff}.big-icon{font-size:3rem;margin-bottom:20px}#about .card-heading{display:flex;align-items:center;gap:14px;margin-bottom:16px}#about .card-heading .big-icon{margin-bottom:0;font-size:2.4rem}#about .card h3{margin:0;font-size:2rem;line-height:1.1}#strength .dark-card{background:rgba(255,255,255,0.92);color:#0f2f66;box-shadow:0 22px 48px rgba(0,25,70,0.2)}#strength .card-heading{display:flex;align-items:center;gap:12px;margin-bottom:14px}#strength .card-heading .big-icon{margin-bottom:0;font-size:2rem;color:#1d63cb}#strength .card h3{margin:0;font-size:1.9rem;line-height:1.1}#strength .card p{color:#21447a}.flow-vertical{position:relative;padding-left:60px;margin-top:100px}.flow-vertical::before{content:"";position:absolute;left:30px;top:0;bottom:0;width:3px;background:rgba(255,255,255,0.3)}.flow-step{position:relative;margin-bottom:120px;opacity:0;transform:translateX(-80px)}.step-number.premium{position:absolute;left:-10px;top:-20px;font-family:"Montserrat", sans-serif;font-weight:900;font-size:7rem;opacity:0.38}.footer{background:#111;color:#fff;padding:80px 40px 40px;font-family:"M PLUS Rounded 1c", "Noto Sans JP", sans-serif}.footer-inner{max-width:1200px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;gap:36px;align-items:start}.company-panel{padding:8px 0}.company-logo img{width:75%;max-width:340px;height:auto}.company-table{margin-top:30px;border-top:1px solid rgba(255,255,255,0.28)}.company-row{display:grid;grid-template-columns:140px 1fr;column-gap:24px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,0.28);font-size:0.95rem;line-height:1.7}.company-row dt{color:rgba(255,255,255,0.82);font-weight:600}.company-row dd{margin:0}.company-map{border:1px solid rgba(255,255,255,0.2);background:#000}.company-map iframe{width:100%;height:520px;border:0;display:block}.copyright{max-width:1200px;margin:26px auto 0;color:rgba(255,255,255,0.65);font-size:0.8rem;letter-spacing:0.04em}@media (max-width: 768px){#heroHeadline{font-size:1.4rem}h2{font-size:2.6rem}.section{margin-top:-60px;padding:170px 24px 120px;clip-path:polygon(0 60px, 100% 0, 100% 100%, 0 100%)}section.section:nth-of-type(odd){clip-path:polygon(0 0, 100% 60px, 100% 100%, 0 100%)}section#about.section{padding-top:120px;clip-path:none}.header-inner{padding:12px 16px}.header-logo{width:90px}nav{display:none}.menu-toggle{display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:42px;height:42px;border:0;background:transparent;cursor:pointer;z-index:1202}.menu-toggle .menu-bar{width:22px;height:2px;background:#1f2b47;border-radius:999px;transition:transform 0.25s ease, opacity 0.25s ease}.header.menu-open .menu-toggle .menu-bar:nth-child(1){transform:translateY(6px) rotate(45deg)}.header.menu-open .menu-toggle .menu-bar:nth-child(2){opacity:0}.header.menu-open .menu-toggle .menu-bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.mobile-menu-backdrop{display:block;position:fixed;inset:0;background:rgba(10,18,30,0.26);opacity:0;pointer-events:none;transition:opacity 0.25s ease;z-index:1198}.mobile-menu{display:block;position:fixed;top:0;right:0;width:88vw;max-width:360px;height:100vh;background:rgba(255,255,255,0.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-left:1px solid rgba(255,255,255,0.65);transform:translateX(100%);transition:transform 0.3s ease;z-index:1200}.mobile-menu-inner{padding:90px 22px 28px;display:flex;flex-direction:column;gap:18px}.mobile-menu a{color:#1f2b47;text-decoration:none;font-family:"Montserrat", sans-serif;font-weight:700;letter-spacing:0.02em}.mobile-menu-inner>a{display:block;padding-bottom:12px;border-bottom:1px solid rgba(31,43,71,0.22)}.mobile-menu-cta{margin-top:6px;display:grid;grid-template-columns:1fr;gap:10px}.mobile-menu-cta .header-cta{margin:0;justify-content:center;padding:10px 18px;font-size:0.9rem}.header.menu-open .mobile-menu{transform:translateX(0)}.header.menu-open .mobile-menu-backdrop{opacity:1;pointer-events:auto}.footer-inner{grid-template-columns:1fr;gap:24px}#about .card h3{font-size:1.7rem}#strength .card h3{font-size:1.55rem}#recruit .recruit-copy p{font-size:0.98rem;line-height:1.85}#recruit .mission-card{padding:24px 20px}#recruit .mission-card p{font-size:0.95rem;line-height:1.8}#recruit .recruit-cta p{font-size:0.95rem;line-height:1.8}#recruit .entry-button{min-width:150px;padding:12px 22px}.footer{padding:56px 20px 28px}.company-row{grid-template-columns:1fr;row-gap:4px;padding:12px 0}.company-map iframe{height:320px}}
