*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;line-height:1.6;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}h1,h2,h3,h4,h5,h6{line-height:1.2}img{height:auto;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit}::selection{background:#4caf5033;color:#2e7d32}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#4caf50,#2e7d32);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#2e7d32}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.header{background:linear-gradient(135deg,#fff,#f8f9fa);box-shadow:0 2px 10px #00000014;position:-webkit-sticky;position:sticky;top:0;transition:all .3s ease;z-index:1000}.header-container{margin:0 auto;max-width:1200px;padding:0 20px}.header-content{align-items:center;display:flex;justify-content:space-between;padding:1rem 0}.logo{display:flex;flex-direction:column;text-decoration:none;transition:transform .3s ease}.logo:hover{transform:translateY(-2px)}.logo h1{color:#2c3e50;font-size:1.5rem;font-weight:700;letter-spacing:.05em;margin:0}.logo-subtitle{color:#6c757d;font-size:.75rem;font-weight:400;margin-top:2px}.nav-menu{align-items:center;display:flex;gap:2rem}.nav-link{border-radius:8px;color:#495057;font-size:.95rem;font-weight:500;padding:.5rem 1rem;position:relative;text-decoration:none;transition:all .3s ease}.nav-link:after{background:linear-gradient(90deg,#4caf50,#2e7d32);bottom:-2px;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);transition:width .3s ease;width:0}.nav-link:hover{background-color:#4caf5014;color:#2e7d32}.nav-link:hover:after{width:80%}.nav-link-active{background-color:#4caf501a;color:#2e7d32}.nav-link-active:after{width:80%}.menu-toggle{background:none;border:none;color:#495057;cursor:pointer;display:none;padding:.5rem;transition:color .3s ease}.menu-toggle:hover{color:#2e7d32}@media (max-width:768px){.header-content{position:relative}.logo h1{font-size:1.25rem}.menu-toggle{display:block}.nav-menu{background:#fff;border-radius:0 0 8px 8px;box-shadow:0 4px 6px #0000001a;flex-direction:column;gap:.5rem;left:0;opacity:0;padding:1rem;position:absolute;right:0;top:100%;transform:translateY(-100%);transition:all .3s ease;visibility:hidden}.nav-menu-open{opacity:1;transform:translateY(0);visibility:visible}.nav-link{text-align:center;width:100%}}.footer{background:linear-gradient(135deg,#2c3e50,#34495e);color:#fff;margin-top:auto;padding:3rem 0 1rem}.footer-container{margin:0 auto;max-width:1200px;padding:0 20px}.footer-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.footer-section h3{color:#4caf50;font-size:1.5rem;margin-bottom:1rem}.footer-section h4{color:#81c784;font-size:1.1rem;margin-bottom:1rem}.footer-section p{color:#ecf0f1;line-height:1.6;margin-bottom:1rem}.footer-nav{display:flex;flex-direction:column;gap:.5rem}.footer-nav a{color:#ecf0f1;padding:.25rem 0;text-decoration:none;transition:all .3s ease}.footer-nav a:hover{color:#4caf50;transform:translateX(5px)}.contact-button{background:linear-gradient(135deg,#4caf50,#2e7d32);border-radius:25px;color:#fff;display:inline-block;font-weight:500;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s ease}.contact-button:hover{box-shadow:0 5px 15px #4caf5066;transform:translateY(-2px)}.footer-bottom{border-top:1px solid #ffffff1a;padding-top:1.5rem;text-align:center}.footer-bottom p{color:#bdc3c7;font-size:.9rem}@media (max-width:768px){.footer-content{grid-template-columns:1fr;text-align:center}.footer-nav{align-items:center}.footer-nav a:hover{transform:none}}.home{width:100%}.hero-section{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;min-height:70vh;overflow:hidden;padding:4rem 2rem;position:relative}.hero-content{margin:0 auto;max-width:1200px;position:relative;z-index:2}.hero-content h1{color:#2c3e50;font-size:clamp(2rem,5vw,3.5rem);font-weight:700;line-height:1.2;margin-bottom:1.5rem}.hero-subtitle{color:#546e7a;font-size:clamp(1rem,2vw,1.25rem);line-height:1.6;margin-bottom:2rem}.hero-buttons{display:flex;flex-wrap:wrap;gap:1rem}.btn{align-items:center;border-radius:50px;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.875rem 2rem;text-decoration:none;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#4caf50,#2e7d32);box-shadow:0 4px 15px #4caf504d;color:#fff}.btn-primary:hover{box-shadow:0 6px 20px #4caf5066;transform:translateY(-2px)}.btn-secondary{background:#fff;border:2px solid #4caf50;color:#2e7d32}.btn-secondary:hover{background:#4caf501a;transform:translateY(-2px)}.btn-large{font-size:1.1rem;padding:1rem 2.5rem}.animated-bg{animation:float 20s ease-in-out infinite;background:radial-gradient(circle,#4caf501a 0,#0000 70%);height:600px;position:absolute;right:-10%;top:-50%;width:600px}@keyframes float{0%,to{transform:translate(0) rotate(0deg)}33%{transform:translate(30px,-30px) rotate(120deg)}66%{transform:translate(-20px,20px) rotate(240deg)}}.services-section{background:#f8f9fa;padding:5rem 0}.services-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.service-card{background:#fff;border-radius:16px;box-shadow:0 5px 20px #00000014;cursor:pointer;padding:2rem;text-align:center;transition:all .3s ease}.service-card:hover{box-shadow:0 10px 30px #00000026}.service-icon{color:#4caf50;margin-bottom:1rem}.service-card h3{color:#2c3e50;font-size:1.25rem;margin-bottom:.75rem}.service-card p{color:#6c757d;line-height:1.6}.news-section{padding:5rem 0}.news-item{align-items:center;background:#fff;border-left:4px solid #4caf50;border-radius:8px;box-shadow:0 2px 10px #0000000d;display:flex;gap:2rem;padding:1.5rem;transition:all .3s ease}.news-item:hover{box-shadow:0 4px 15px #0000001a;transform:translateX(5px)}.news-date{color:#4caf50;font-weight:600;white-space:nowrap}.news-content{color:#495057}.projects-section{background:#f8f9fa;padding:5rem 0}.projects-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-card{background:#fff;border-radius:12px;box-shadow:0 3px 15px #00000014;cursor:pointer;padding:1.5rem;transition:all .3s ease}.project-card:hover{box-shadow:0 5px 20px #00000026}.project-header{margin-bottom:.75rem}.project-industry{background:linear-gradient(135deg,#4caf50,#2e7d32);border-radius:20px;color:#fff;display:inline-block;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.project-card h4{color:#2c3e50;font-size:1.1rem;margin-bottom:.5rem}.project-tech{color:#6c757d;font-size:.9rem;line-height:1.4}.cta-section{background:linear-gradient(135deg,#2c3e50,#34495e);color:#fff;padding:5rem 0;text-align:center}.cta-content h2{font-size:clamp(1.5rem,4vw,2.5rem);margin-bottom:1rem}.cta-content p{font-size:1.1rem;margin-bottom:2rem;opacity:.9}@media (max-width:768px){.hero-section{min-height:60vh;padding:3rem 1rem}.btn,.hero-buttons{justify-content:center}.btn{width:100%}.services-grid{grid-template-columns:1fr}.news-item{align-items:flex-start;flex-direction:column;gap:.5rem}.projects-grid{grid-template-columns:1fr}}.company{min-height:100vh;padding-bottom:3rem}.company-intro{background:#f8f9fa;padding:4rem 0}.company-details{padding:4rem 0}.info-grid{display:flex;justify-content:center}.info-card{background:#fff;border-radius:16px;box-shadow:0 5px 20px #00000014;max-width:600px;padding:2.5rem;width:100%}.info-icon{color:#4caf50;height:48px;margin-bottom:1.5rem;width:48px}.info-content h3{color:#2c3e50;font-size:1.5rem;margin-bottom:1.5rem}.info-content dl{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:120px 1fr}.info-content dt{color:#495057;font-weight:600}.info-content dd{color:#6c757d;margin:0}.company-values{background:#f8f9fa;padding:4rem 0}.values-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.value-card{background:#fff;border-radius:16px;box-shadow:0 5px 20px #00000014;cursor:pointer;padding:2rem;text-align:center;transition:all .3s ease}.value-card:hover{box-shadow:0 10px 30px #00000026}.value-icon{color:#4caf50;display:flex;justify-content:center;margin-bottom:1rem}.value-card h3{color:#2c3e50;font-size:1.25rem;margin-bottom:1rem}.value-card p{color:#6c757d;line-height:1.6}@media (max-width:768px){.page-header{padding:3rem 1rem 2rem}.info-content dl{grid-template-columns:1fr}.info-content dt{font-size:.9rem;margin-top:.5rem}.info-content dt:first-child{margin-top:0}.values-grid{grid-template-columns:1fr}}.business{min-height:100vh;padding-bottom:3rem}.business-intro{background:#f8f9fa;padding:4rem 0}.services-detail{padding:4rem 0}.services-list{display:flex;flex-direction:column;gap:2rem}.service-item{background:#fff;border-radius:16px;box-shadow:0 5px 20px #00000014;display:flex;gap:2rem;padding:2rem;transition:all .3s ease}.service-item:hover{box-shadow:0 10px 30px #00000026;transform:translateY(-5px)}.service-icon-wrapper{align-items:center;background:linear-gradient(135deg,#4caf501a,#2e7d321a);border-radius:16px;color:#4caf50;display:flex;flex-shrink:0;height:80px;justify-content:center;width:80px}.service-content{flex:1 1}.service-content h3{color:#2c3e50;font-size:1.5rem;margin-bottom:1rem}.service-content p{color:#6c757d;line-height:1.6;margin-bottom:1rem}.feature-list{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));list-style:none;margin:0;padding:0}.feature-list li{color:#495057;font-size:.95rem;padding-left:1.5rem;position:relative}.feature-list li:before{color:#4caf50;content:"✓";font-weight:700;left:0;position:absolute}.business-flow{background:#f8f9fa;padding:4rem 0}.flow-steps{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin:0 auto;max-width:1000px}.flow-step{background:#fff;border-radius:16px;box-shadow:0 5px 20px #00000014;flex:1 1;min-width:180px;padding:2rem 1.5rem;text-align:center;transition:all .3s ease}.flow-step:hover{box-shadow:0 10px 30px #00000026;transform:translateY(-5px)}.flow-step h4{color:#2c3e50;font-size:1.1rem;margin-bottom:.5rem}.flow-step p{color:#6c757d;font-size:.9rem;line-height:1.4}.flow-arrow{color:#4caf50;font-size:2rem;font-weight:700}@media (max-width:768px){.page-header{padding:3rem 1rem 2rem}.service-item{flex-direction:column;text-align:center}.service-icon-wrapper{margin:0 auto}.feature-list{grid-template-columns:1fr}.flow-steps{flex-direction:column}.flow-arrow{transform:rotate(90deg)}}.contact{min-height:100vh;padding-bottom:3rem}.contact-content{padding:4rem 0}.contact-intro{margin-bottom:3rem;text-align:center}.contact-intro h2{color:#2c3e50;font-size:clamp(1.5rem,3vw,2rem);margin-bottom:1rem}.contact-intro p{color:#6c757d;font-size:1.1rem;line-height:1.8;margin:0 auto;max-width:700px}.contact-grid{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:1fr 2fr}.contact-info h3{color:#2c3e50;font-size:1.5rem;margin-bottom:2rem}.info-item{background:#f8f9fa;border-radius:12px;display:flex;gap:1rem;margin-bottom:2rem;padding:1.5rem;transition:all .3s ease}.info-item:hover{box-shadow:0 5px 15px #0000001a;transform:translateX(5px)}.info-icon{align-items:center;background:linear-gradient(135deg,#4caf50,#2e7d32);border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:50px;justify-content:center;width:50px}.info-text h4{color:#2c3e50;font-size:1.1rem;margin-bottom:.5rem}.info-text p{color:#495057;margin:0}.info-text .sub-text{color:#6c757d;font-size:.9rem;margin-top:.25rem}.contact-form-wrapper{background:#fff;border-radius:16px;box-shadow:0 5px 20px #00000014;padding:2.5rem}.contact-form-wrapper h3{color:#2c3e50;font-size:1.5rem;margin-bottom:2rem}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column}.form-group label{color:#495057;font-size:.95rem;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group textarea{border:2px solid #e9ecef;border-radius:8px;font-family:inherit;font-size:1rem;padding:.75rem 1rem;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a;outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:#adb5bd}.submit-button{align-items:center;align-self:flex-start;background:linear-gradient(135deg,#4caf50,#2e7d32);border:none;border-radius:50px;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:.5rem;justify-content:center;padding:1rem 2rem;transition:all .3s ease}.submit-button:hover{box-shadow:0 6px 20px #4caf5066;transform:translateY(-2px)}.submit-button:active{transform:translateY(0)}@media (max-width:968px){.contact-grid{gap:2rem;grid-template-columns:1fr}.contact-info{order:2}.contact-form-wrapper{order:1}}@media (max-width:640px){.page-header{padding:3rem 1rem 2rem}.contact-form-wrapper{padding:1.5rem}.form-row{grid-template-columns:1fr}.submit-button{width:100%}}.recruit{min-height:100vh;padding-bottom:3rem}.page-header{background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff;padding:5rem 2rem 3rem;text-align:center}.page-header h1{font-size:clamp(2rem,4vw,3rem);margin-bottom:.5rem}.page-header p{font-size:1.1rem;opacity:.9}.recruit-intro{background:#f8f9fa;padding:4rem 0}.intro-content{margin:0 auto;max-width:800px;text-align:center}.intro-content h2{color:#2c3e50;font-size:clamp(1.5rem,3vw,2rem);margin-bottom:1.5rem}.intro-content p{color:#6c757d;font-size:1.1rem;line-height:1.8}.container{margin:0 auto;max-width:1200px;padding:0 2rem}.section-title{color:#2c3e50;font-size:clamp(1.75rem,3vw,2.5rem);margin-bottom:3rem;padding-bottom:1rem;position:relative;text-align:center}.section-title:after{background:linear-gradient(90deg,#4caf50,#2e7d32);border-radius:2px;bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.benefits-section{padding:4rem 0}.benefits-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.benefit-card{background:#fff;border-radius:16px;box-shadow:0 5px 20px #00000014;cursor:pointer;padding:2rem;text-align:center;transition:all .3s ease}.benefit-card:hover{box-shadow:0 10px 30px #00000026}.benefit-icon{color:#4caf50;display:flex;justify-content:center;margin-bottom:1rem}.benefit-card h3{color:#2c3e50;font-size:1.25rem;margin-bottom:.75rem}.benefit-card p{color:#6c757d;font-size:.95rem;line-height:1.6}.positions-section{background:#f8f9fa;padding:4rem 0}.positions-list{display:flex;flex-direction:column;gap:2rem}.position-card{background:#fff;border-radius:16px;box-shadow:0 5px 20px #00000014;padding:2rem;transition:all .3s ease}.position-card:hover{box-shadow:0 10px 30px #00000026;transform:translateY(-5px)}.position-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.position-header h3{color:#2c3e50;font-size:1.5rem;margin:0}.position-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{border-radius:20px;font-size:.85rem;font-weight:500;padding:.25rem .75rem}.tag-type{background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff}.tag-location{background:#e3f2fd;color:#1976d2}.position-description{color:#6c757d;line-height:1.6;margin-bottom:1.5rem}.requirements{margin-bottom:1.5rem}.requirements h4{color:#495057;font-size:1.1rem;margin-bottom:.75rem}.requirements ul{list-style:none;margin:0;padding:0}.requirements li{color:#6c757d;line-height:1.5;margin-bottom:.5rem;padding-left:1.5rem;position:relative}.requirements li:before{color:#4caf50;content:"✓";font-weight:700;left:0;position:absolute}.apply-button{background:linear-gradient(135deg,#4caf50,#2e7d32);border:none;border-radius:50px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .3s ease}.apply-button:hover{box-shadow:0 5px 15px #4caf5066;transform:translateY(-2px)}.recruit-process{padding:4rem 0}.process-steps{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin:0 auto;max-width:1000px}.process-step{background:#fff;border-radius:16px;box-shadow:0 5px 20px #00000014;flex:1 1;min-width:180px;padding:2rem 1.5rem;text-align:center;transition:all .3s ease}.process-step:hover{box-shadow:0 10px 30px #00000026;transform:translateY(-5px)}.step-number{align-items:center;background:linear-gradient(135deg,#4caf50,#2e7d32);border-radius:50%;color:#fff;display:flex;font-size:1.5rem;font-weight:700;height:50px;justify-content:center;margin:0 auto 1rem;width:50px}.process-step h4{color:#2c3e50;font-size:1.1rem;margin-bottom:.5rem}.process-step p{color:#6c757d;font-size:.9rem;line-height:1.4}.process-arrow{color:#4caf50;font-size:2rem;font-weight:700}@media (max-width:768px){.page-header{padding:3rem 1rem 2rem}.benefits-grid{grid-template-columns:1fr}.position-header{align-items:flex-start}.position-header,.process-steps{flex-direction:column}.process-arrow{transform:rotate(90deg)}}.App{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1;width:100%}.loading-container{align-items:center;display:flex;justify-content:center;min-height:60vh}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#4caf50;height:50px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;padding:2rem;text-align:center}.error-container h2{color:#dc3545;margin-bottom:1rem}.error-container p{color:#6c757d;margin-bottom:2rem}.error-container button{background:linear-gradient(135deg,#4caf50,#2e7d32);border:none;border-radius:50px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .3s ease}.error-container button:hover{box-shadow:0 5px 15px #4caf5066;transform:translateY(-2px)}@media (max-width:768px){.main-content{padding-top:0}}
/*# sourceMappingURL=main.6b3eaf59.css.map*/