*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Helvetica Neue',Arial,'Hiragino Sans','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;line-height:1.6;color:#333;overflow-x:hidden}.header{position:fixed;top:0;width:100%;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);box-shadow:0 2px 20px rgba(0,0,0,.1);z-index:1000;transition:all .3s ease}.nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 5%;max-width:1200px;margin:0 auto}.logo{display:flex;align-items:center;gap:.5rem;font-size:1.8rem;font-weight:700;color:#333;text-decoration:none}.custom-logo-link{display:inline-block;line-height:1}.custom-logo{height:40px;width:auto;max-width:200px;transition:all .3s ease}.custom-logo:hover{transform:scale(1.05)}.site-title{font-size:1.3rem;font-weight:600;color:#333;background-clip:text;white-space:nowrap;transition:all .3s ease}.logo-text{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-links{display:flex;list-style:none;gap:2rem;margin:0}.nav-links li{margin:0}.nav-links a{text-decoration:none;color:#333;font-weight:500;transition:color .3s ease;position:relative}.nav-links a:hover{color:#667eea}.nav-links a:after{content:'';position:absolute;width:0;height:2px;bottom:-5px;left:0;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);transition:width .3s ease}.nav-links a:hover:after{width:100%}.hero{height:100vh;background:linear-gradient(135deg,rgba(102,126,234,.85) 0%,rgba(118,75,162,.85) 100%),url('https://images.unsplash.com/photo-1639762681485-074b7f938ba0?ixlib=rb-4.0.3&auto=format&fit=crop&w=1920&q=80');background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;position:relative;overflow:hidden}.hero:before{content:'';position:absolute;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,rgba(120,119,198,.3) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,119,198,.3) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(120,219,255,.2) 0%,transparent 50%);animation:float 20s ease-in-out infinite}.hero:after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M30 30c0-11.046-8.954-20-20-20s-20 8.954-20 20 8.954 20 20 20 20-8.954 20-20zm0 0c0 11.046 8.954 20 20 20s20-8.954 20-20-8.954-20-20-20-20 8.954-20 20z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") repeat;animation:slide 30s linear infinite}.hero-content{z-index:3;position:relative;max-width:800px;padding:2rem}.hero h1{font-size:4rem;font-weight:300;margin-bottom:1rem;opacity:0;animation:slideUp 1s ease .5s forwards;text-shadow:2px 2px 4px rgba(0,0,0,.3);letter-spacing:2px}.hero .tagline{font-size:1.5rem;margin-bottom:2rem;opacity:0;animation:slideUp 1s ease .8s forwards;text-shadow:1px 1px 2px rgba(0,0,0,.3);line-height:1.8}.cta-button{display:inline-block;padding:1rem 2rem;background:rgba(255,255,255,.2);border:2px solid #fff;color:#fff;text-decoration:none;border-radius:50px;font-weight:600;transition:all .3s ease;opacity:0;animation:slideUp 1s ease 1.1s forwards}.cta-button:hover{background:#fff;color:#667eea;transform:translateY(-3px);box-shadow:0 10px 30px rgba(0,0,0,.2)}@keyframes slideUp{from{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,100%{transform:translateY(0px) rotate(0deg)}50%{transform:translateY(-20px) rotate(180deg)}}@keyframes slide{0%{transform:translateX(0)}100%{transform:translateX(60px)}}.services{padding:5rem 5%;max-width:1200px;margin:0 auto}.section-title{text-align:center;font-size:2.5rem;margin-bottom:3rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-top:3rem}.service-card{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 10px 40px rgba(0,0,0,.1);transition:all .3s ease;position:relative;overflow:hidden}.service-card:before{content:'';position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.service-card:hover{transform:translateY(-10px);box-shadow:0 20px 60px rgba(0,0,0,.15)}.service-icon{width:60px;height:60px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;font-size:1.5rem;color:#fff}.service-image{width:100%;height:200px;margin-bottom:1rem;border-radius:10px;overflow:hidden}.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.service-card:hover .service-image img{transform:scale(1.05)}.service-card h3{font-size:1.3rem;margin-bottom:1rem;color:#333}.service-card p{color:#666;line-height:1.7}.company-info-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;max-width:600px;margin:0 auto}.company-info-item{display:flex;align-items:flex-start;padding:1rem 0;border-bottom:1px solid #e0e0e0}.company-info-item:last-child{border-bottom:none}.info-label{flex:0 0 120px;font-weight:600;color:#333;background:#f8f9fa;padding:.5rem 1rem;border-radius:5px;margin-right:1rem;font-size:.9rem}.info-value{flex:1;color:#555;line-height:1.6;padding:.5rem 0}.access-section{padding:5rem 5%;background:#f8f9fa}.access-content{max-width:1200px;margin:0 auto}.access-section .section-title{color:#333;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:center;margin-bottom:3rem}.office-info{display:grid;grid-template-columns:1fr 2fr;gap:3rem;align-items:start}.office-details{background:#fff;padding:2rem;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,.1)}.office-details h3{font-size:1.5rem;color:#333;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:2px solid #667eea}.office-address p{margin-bottom:.8rem;color:#555;line-height:1.6}.office-address p:first-child{font-weight:600;color:#333}.office-map{border-radius:15px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.1)}.office-map iframe{border-radius:15px}@media (max-width:768px){.company-info-item{flex-direction:column;gap:.5rem}.info-label{flex:none;width:fit-content;margin-right:0}.office-info{grid-template-columns:1fr;gap:2rem}.office-details{padding:1.5rem}.office-map iframe{height:250px}}.contact-section{padding:5rem 5%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff}.contact-content{max-width:800px;margin:0 auto;text-align:center}.contact-section .section-title{color:#fff;background:0 0;-webkit-text-fill-color:#fff}.contact-section .about-text{color:rgba(255,255,255,.9)}.contact-form-container{background:rgba(255,255,255,.1);border-radius:20px;padding:2rem;backdrop-filter:blur(10px);margin-top:2rem}.wpcf7-form{display:grid;gap:1rem}.wpcf7-form-control{width:100%;padding:1rem;border:none;border-radius:10px;font-size:1rem;background:rgba(255,255,255,.9);color:#333}.wpcf7-form-control:focus{outline:none;box-shadow:0 0 0 3px rgba(255,255,255,.3)}.wpcf7-submit{background:#fff;color:#667eea;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;padding:1rem 2rem;border-radius:50px}.wpcf7-submit:hover{background:#f8f9fa;transform:translateY(-2px);box-shadow:0 5px 15px rgba(0,0,0,.2)}.footer{background:#2c3e50;color:#fff;padding:3rem 5%;text-align:center}.footer-content{max-width:1200px;margin:0 auto}.footer h3{margin-bottom:1rem;font-size:1.5rem}.footer p{color:#bdc3c7;line-height:1.6}.footer-info{margin-top:2rem;padding-top:2rem;border-top:1px solid #34495e}@media (max-width:768px){.nav-links{display:none}.hero h1{font-size:2.5rem}.hero .tagline{font-size:1.2rem}.services{padding:3rem 5%}.services-grid{grid-template-columns:1fr;gap:1.5rem}}.fade-in{opacity:0;transform:translateY(50px);transition:all .8s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.support-section{padding:8rem 5% 5rem;background:linear-gradient(135deg,#f8f9fa 0%,#fff 100%);min-height:80vh}.support-content{max-width:1000px;margin:0 auto}.support-section .section-title{text-align:center;font-size:2.5rem;margin-bottom:1rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.support-section .about-text{text-align:center;font-size:1.1rem;color:#666;margin-bottom:3rem}.download-section{margin-bottom:4rem}.download-card{background:#fff;border-radius:20px;padding:3rem;box-shadow:0 15px 50px rgba(0,0,0,.1);text-align:center;position:relative;overflow:hidden}.download-card:before{content:'';position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.download-icon{font-size:4rem;margin-bottom:1.5rem}.download-card h3{font-size:1.8rem;color:#333;margin-bottom:1rem}.download-description{color:#666;line-height:1.7;margin-bottom:2rem;font-size:1.1rem}.download-info{background:#f8f9fa;border-radius:10px;padding:1.5rem;margin:2rem 0;text-align:left}.info-item{display:flex;align-items:center;margin-bottom:.8rem}.info-item:last-child{margin-bottom:0}.info-label{flex:0 0 120px;font-weight:600;color:#333}.info-value{color:#555}.download-button{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:1rem 2.5rem;border-radius:50px;text-decoration:none;font-weight:600;font-size:1.1rem;transition:all .3s ease;box-shadow:0 5px 20px rgba(102,126,234,.3)}.download-button:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(102,126,234,.4);color:#fff}.download-icon-btn{font-size:1.2rem}.download-note{margin-top:1rem;color:#888}.support-steps{background:#fff;border-radius:20px;padding:3rem;margin-bottom:3rem;box-shadow:0 10px 40px rgba(0,0,0,.08)}.support-steps h3{text-align:center;font-size:1.8rem;color:#333;margin-bottom:2rem}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.step-item{text-align:center;padding:1.5rem;border-radius:15px;background:#f8f9fa;transition:all .3s ease}.step-item:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,.1)}.step-number{width:50px;height:50px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;margin:0 auto 1rem}.step-item h4{color:#333;margin-bottom:.8rem;font-size:1.2rem}.step-item p{color:#666;line-height:1.6}.support-notice{background:#fff3cd;border:1px solid #ffeaa7;border-radius:15px;padding:2rem;margin-bottom:3rem}.support-notice h3{color:#856404;margin-bottom:1rem;font-size:1.3rem}.support-notice ul{list-style:none;padding:0}.support-notice li{color:#856404;margin-bottom:.8rem;padding-left:1.5rem;position:relative}.support-notice li:before{content:'•';position:absolute;left:0;color:#ffc107;font-weight:700}.support-contact{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border-radius:20px;padding:2.5rem;text-align:center}.support-contact h3{margin-bottom:2rem;font-size:1.8rem}.contact-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.contact-item{background:rgba(255,255,255,.1);border-radius:10px;padding:1rem;backdrop-filter:blur(10px)}.contact-label{display:block;font-size:.9rem;opacity:.8;margin-bottom:.3rem}.contact-value{display:block;font-weight:600;font-size:1.1rem}@media (max-width:768px){.support-section{padding:6rem 5% 3rem}.download-card{padding:2rem}.support-steps{padding:2rem}.steps-grid{grid-template-columns:1fr}.info-item{flex-direction:column;align-items:flex-start;gap:.3rem}.info-label{flex:none}.contact-info{grid-template-columns:1fr}}