*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','メイリオ',Meiryo,sans-serif;line-height:1.6;color:#333;background-color:#f8f9fa}.container{max-width:1200px;margin:0 auto;padding:0 20px}.navbar{background-color:#fff;box-shadow:0 2px 10px rgba(0,0,0,.1);position:fixed;top:0;width:100%;z-index:1000}.nav-container{display:flex;justify-content:space-between;align-items:center;padding:1rem 20px;max-width:1200px;margin:0 auto}.nav-logo{display:flex;align-items:center;font-size:1.5rem;font-weight:bold;color:#1e3a8a}.logo{width:40px;height:40px;margin-right:10px;border-radius:5px}.nav-menu{display:flex;list-style:none;gap:2rem}.nav-menu a{text-decoration:none;color:#333;font-weight:500;transition:color .3s ease}.nav-menu a:hover,.nav-menu a.active{color:#dc2626}.hero{background:linear-gradient(135deg,#1e3a8a 0%,#3b82f6 100%);color:#fff;padding:120px 0 80px;margin-top:70px}.hero-container{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.hero-content h1{font-size:3rem;margin-bottom:1rem;font-weight:700}.hero-content p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.cta-button{display:inline-block;background-color:#dc2626;color:#fff;padding:15px 30px;text-decoration:none;border-radius:8px;font-weight:600;font-size:1.1rem;transition:all .3s ease;border:none;cursor:pointer}.cta-button:hover{background-color:#b91c1c;transform:translateY(-2px);box-shadow:0 5px 15px rgba(220,38,38,.4)}.hero-image img{width:100%;height:auto;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.3)}.services{padding:80px 0;background-color:#fff}.services h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#1e3a8a}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.service-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.1);transition:transform .3s ease , box-shadow .3s ease;border-left:4px solid #dc2626}.service-card:hover{transform:translateY(-5px);box-shadow:0 10px 40px rgba(0,0,0,.15)}.service-card h3{color:#1e3a8a;margin-bottom:1rem;font-size:1.3rem}.pricing{padding:80px 0;background-color:#f8f9fa}.pricing h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#1e3a8a}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:800px;margin:0 auto}.pricing-card{background:#fff;padding:3rem 2rem;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.1);text-align:center;transition:transform .3s ease}.pricing-card.featured{border:3px solid #dc2626;transform:scale(1.05)}.pricing-card:hover{transform:translateY(-5px)}.pricing-card.featured:hover{transform:scale(1.05) translateY(-5px)}.price{font-size:2.5rem;font-weight:bold;color:#dc2626;margin:1rem 0}.why-choose-us{padding:80px 0;background:#fff}.why-choose-us h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#1e3a8a}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.feature{text-align:center;padding:2rem}.feature h3{font-size:1.5rem;margin-bottom:1rem;color:#1e3a8a}.testimonials{padding:80px 0;background-color:#f8f9fa}.testimonials h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#1e3a8a}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.testimonial{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.1);position:relative}.testimonial:before{content:'"';font-size:4rem;color:#dc2626;position:absolute;top:-10px;left:20px;font-family:serif}.testimonial cite{display:block;text-align:right;margin-top:1rem;font-weight:600;color:#1e3a8a}.faq{padding:80px 0;background:#fff}.faq h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#1e3a8a}.faq-list{max-width:800px;margin:0 auto}.faq-item{margin-bottom:2rem;background:#f8f9fa;padding:2rem;border-radius:12px;border-left:4px solid #dc2626}.faq-item h3{color:#1e3a8a;margin-bottom:1rem;font-size:1.2rem}.footer{background:#1e3a8a;color:#fff;padding:60px 0 20px}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem;margin-bottom:2rem}.footer-section h3,.footer-section h4{margin-bottom:1rem;color:#60a5fa}.footer-section p{margin-bottom:.5rem;opacity:.9}.social-links{display:flex;gap:1rem;margin-top:1rem}.social-links a{color:#60a5fa;transition:color .3s ease}.social-links a:hover{color:#fff}.footer-bottom{border-top:1px solid #374151;padding-top:2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-links{display:flex;gap:2rem;flex-wrap:wrap}.footer-links a{color:#60a5fa;text-decoration:none;transition:color .3s ease}.footer-links a:hover{color:#fff}.page-header{background:linear-gradient(135deg,#1e3a8a 0%,#3b82f6 100%);color:#fff;padding:120px 0 80px;margin-top:70px;text-align:center}.page-header h1{font-size:3rem;margin-bottom:1rem}.page-header p{font-size:1.2rem;opacity:.9}.services-detail{padding:80px 0}.service-detail{display:grid;grid-template-columns:1fr 2fr;gap:3rem;margin-bottom:4rem;background:#fff;padding:3rem;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.1)}.service-detail:nth-child(even) {grid-template-columns:2fr 1fr}.service-detail:nth-child(even) .service-content {order:-1}.service-detail img{width:100%;height:300px;object-fit:cover;border-radius:8px}.service-content h2{color:#1e3a8a;margin-bottom:1rem;font-size:2rem}.service-content ul{margin:2rem 0;padding-left:1.5rem}.service-content li{margin-bottom:.5rem}.price-tag{display:inline-block;background:#dc2626;color:#fff;padding:.5rem 1rem;border-radius:20px;font-weight:600;margin-top:1rem}.cta-section{background:linear-gradient(135deg,#1e3a8a 0%,#3b82f6 100%);color:#fff;padding:80px 0;text-align:center}.cta-section h2{font-size:2.5rem;margin-bottom:1rem}.cta-section p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.about-content{padding:80px 0}.about-intro{display:grid;grid-template-columns:2fr 1fr;gap:3rem;margin-bottom:4rem;align-items:center}.about-text h2{color:#1e3a8a;font-size:2.5rem;margin-bottom:2rem}.about-text p{margin-bottom:1.5rem;font-size:1.1rem;line-height:1.8}.about-image img{width:100%;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.2)}.values-section{margin-bottom:4rem}.values-section h2{text-align:center;color:#1e3a8a;font-size:2.5rem;margin-bottom:3rem}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.value-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.1);text-align:center}.value-card h3{color:#1e3a8a;margin-bottom:1rem;font-size:1.3rem}.team-section{margin-bottom:4rem}.team-section h2{text-align:center;color:#1e3a8a;font-size:2.5rem;margin-bottom:3rem}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.team-member{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.1);text-align:center}.team-member img{border-radius:50%;margin-bottom:1rem;box-shadow:0 5px 15px rgba(0,0,0,.2)}.team-member h3{color:#1e3a8a;margin-bottom:.5rem}.team-member p:first-of-type{color:#dc2626;font-weight:600;margin-bottom:1rem}.stats-section{background:#f8f9fa;padding:4rem 2rem;border-radius:12px;margin-bottom:4rem}.stats-section h2{text-align:center;color:#1e3a8a;font-size:2.5rem;margin-bottom:3rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.stat-card{text-align:center}.stat-card h3{font-size:3rem;color:#dc2626;margin-bottom:.5rem}.stat-card p{font-size:1.2rem;color:#1e3a8a}.office-info{background:#fff;padding:3rem;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.1)}.office-info h2{color:#1e3a8a;font-size:2.5rem;margin-bottom:2rem}.office-details{display:grid;grid-template-columns:2fr 1fr;gap:3rem;align-items:start}.office-text h3{color:#1e3a8a;margin:2rem 0 1rem 0;font-size:1.3rem}.office-text h3:first-child{margin-top:0}.office-text p{margin-bottom:1rem;line-height:1.8}.office-image img{width:100%;border-radius:8px;box-shadow:0 5px 15px rgba(0,0,0,.2)}.blog-posts{padding:80px 0}.posts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.post-card{background:#fff;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.1);overflow:hidden;transition:transform .3s ease}.post-card:hover{transform:translateY(-5px)}.post-card img{width:100%;height:200px;object-fit:cover}.post-content{padding:2rem}.post-content h2 a{color:#1e3a8a;text-decoration:none;font-size:1.3rem;line-height:1.4}.post-content h2 a:hover{color:#dc2626}.post-meta{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0;font-size:.9rem;color:#666}.post-content p{margin-bottom:1rem;line-height:1.6}.read-more{color:#dc2626;text-decoration:none;font-weight:600;transition:color .3s ease}.read-more:hover{color:#b91c1c}.newsletter-signup{background:linear-gradient(135deg,#1e3a8a 0%,#3b82f6 100%);color:#fff;padding:80px 0}.newsletter-content{text-align:center;max-width:600px;margin:0 auto}.newsletter-content h2{font-size:2.5rem;margin-bottom:1rem}.newsletter-content p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.newsletter-form{display:flex;gap:1rem;margin-bottom:1rem}.newsletter-form input{flex:1;padding:12px;border:none;border-radius:6px;font-size:1rem}.newsletter-form button{padding:12px 24px;background:#dc2626;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:background .3s ease}.newsletter-form button:hover{background:#b91c1c}.newsletter-note{font-size:.9rem;opacity:.8}.contact-section{padding:80px 0}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.contact-info h2{color:#1e3a8a;font-size:2.5rem;margin-bottom:2rem}.contact-methods{margin-top:3rem}.contact-method{display:flex;align-items:flex-start;gap:1rem;margin-bottom:2rem}.method-icon{font-size:1.5rem;width:40px;height:40px;background:#dc2626;color:#fff;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.method-info h3{color:#1e3a8a;margin-bottom:.5rem}.form-container{background:#fff;padding:3rem;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.1)}.form-container h2{color:#1e3a8a;margin-bottom:2rem;font-size:2rem}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group label{margin-bottom:.5rem;font-weight:600;color:#374151}.required{color:#dc2626}.form-group input,.form-group select,.form-group textarea{padding:12px;border:2px solid #e5e7eb;border-radius:6px;font-size:1rem;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.radio-group{display:flex;gap:1rem;flex-wrap:wrap}.radio-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.radio-label input[type="radio"]{display:none}.radio-custom{width:20px;height:20px;border:2px solid #e5e7eb;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.radio-label input[type="radio"]:checked+.radio-custom{border-color:#3b82f6;background:#3b82f6}.radio-label input[type="radio"]:checked+.radio-custom::after{content:'';width:8px;height:8px;background:#fff;border-radius:50%}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-label input[type="checkbox"]{display:none}.checkbox-custom{width:20px;height:20px;border:2px solid #e5e7eb;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;flex-shrink:0}.checkbox-label input[type="checkbox"]:checked+.checkbox-custom{border-color:#3b82f6;background:#3b82f6}.checkbox-label input[type="checkbox"]:checked+.checkbox-custom::after{content:'✓';color:#fff;font-weight:bold;font-size:.8rem}.submit-btn{padding:15px 30px;background:#dc2626;color:#fff;border:none;border-radius:6px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;position:relative}.submit-btn:hover{background:#b91c1c;transform:translateY(-2px)}.submit-btn:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.consultation-info{background:#f8f9fa;padding:60px 0}.consultation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.consultation-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.1);text-align:center}.consultation-card h3{color:#1e3a8a;margin-bottom:1rem;font-size:1.3rem}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);animation:fadeIn .3s ease}@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}.modal-content{background-color:#fff;margin:10% auto;padding:0;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.3);max-width:500px;width:90%;animation:slideIn .3s ease}@keyframes slideIn {
    from { transform: translateY(-50px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}.modal-header{padding:2rem 2rem 1rem;display:flex;justify-content:space-between;align-items:flex-start}.modal-header h2{color:#1e3a8a;margin:0;font-size:1.5rem}.close-modal{background:none;border:none;font-size:2rem;cursor:pointer;color:#6b7280;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .3s ease}.close-modal:hover{background-color:#f3f4f6}.modal-body{padding:0 2rem 2rem}.modal-contact-info{background:#f8f9fa;padding:1rem;border-radius:8px;margin-top:1rem;text-align:center}.modal-contact-info p{margin:.5rem 0}.cookie-consent{position:fixed;bottom:0;left:0;right:0;background:#1e3a8a;color:#fff;padding:1rem 0;z-index:1000;box-shadow:0 -2px 10px rgba(0,0,0,.2);transform:translateY(100%);transition:transform .3s ease}.cookie-consent.show{transform:translateY(0)}.cookie-content{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.cookie-content p{margin:0;flex:1;min-width:200px}.cookie-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.cookie-buttons button{padding:.5rem 1rem;border:1px solid #60a5fa;background:transparent;color:#60a5fa;border-radius:4px;cursor:pointer;transition:all .3s ease;font-size:.9rem}.cookie-buttons button:hover{background:#60a5fa;color:#1e3a8a}.cookie-buttons button:first-child{background:#60a5fa;color:#1e3a8a}.cookie-buttons button:first-child:hover{background:#3b82f6;color:#fff}.cookie-content a{color:#60a5fa;text-decoration:underline}.cookie-content a:hover{color:#fff}.post-article{margin-top:70px}.post-header{background:linear-gradient(135deg,#1e3a8a 0%,#3b82f6 100%);color:#fff;padding:2rem 0}.breadcrumb{margin-bottom:2rem;font-size:.9rem}.breadcrumb a{color:#60a5fa;text-decoration:none}.breadcrumb a:hover{color:#fff}.post-header h1{font-size:3rem;margin-bottom:1rem;line-height:1.2}.post-meta{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:2rem;font-size:.9rem;opacity:.9}.post-featured-image{width:100%;max-height:400px;object-fit:cover;border-radius:12px;margin-top:2rem;box-shadow:0 10px 30px rgba(0,0,0,.3)}.post-content{padding:4rem 0}.content-wrapper{display:grid;grid-template-columns:2fr 1fr;gap:4rem}.post-text{max-width:none}.post-text .lead{font-size:1.3rem;line-height:1.6;color:#374151;margin-bottom:2rem;font-weight:500}.post-text h2{color:#1e3a8a;font-size:2rem;margin:3rem 0 1.5rem 0;line-height:1.3}.post-text h3{color:#1e3a8a;font-size:1.5rem;margin:2rem 0 1rem 0}.post-text h4{color:#374151;font-size:1.2rem;margin:1.5rem 0 1rem 0}.post-text p{margin-bottom:1.5rem;line-height:1.8}.post-text ul,.post-text ol{margin:1.5rem 0;padding-left:2rem}.post-text li{margin-bottom:.5rem;line-height:1.6}.info-box,.warning-box,.tip-box,.example-box,.checklist-box,.timeline-box,.cta-box{background:#f8f9fa;border-left:4px solid #3b82f6;padding:2rem;margin:2rem 0;border-radius:0 8px 8px 0}.warning-box{background:#fef2f2;border-left-color:#dc2626}.tip-box{background:#f0fdf4;border-left-color:#16a34a}.example-box{background:#fffbeb;border-left-color:#d97706}.cta-box{background:linear-gradient(135deg,#1e3a8a 0%,#3b82f6 100%);color:#fff;border-left:none;text-align:center}.info-box h4,.warning-box h4,.tip-box h4,.example-box h4,.checklist-box h4,.timeline-box h4,.cta-box h3{margin-bottom:1rem;font-size:1.2rem}.cta-box h3{color:#fff;font-size:1.5rem}.post-sidebar{background:#f8f9fa;padding:2rem;border-radius:12px;height:fit-content;position:sticky;top:100px}.author-info{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid #e5e7eb}.author-info img{width:80px;height:80px;border-radius:50%;margin-bottom:1rem;box-shadow:0 5px 15px rgba(0,0,0,.2)}.author-info h3{color:#1e3a8a;margin-bottom:.5rem}.author-info p:first-of-type{color:#dc2626;font-weight:600;margin-bottom:1rem}.related-posts{margin-bottom:3rem}.related-posts h3{color:#1e3a8a;margin-bottom:1rem;font-size:1.2rem}.related-posts ul{list-style:none;padding:0}.related-posts li{margin-bottom:.5rem}.related-posts a{color:#374151;text-decoration:none;font-size:.9rem;line-height:1.4;transition:color .3s ease}.related-posts a:hover{color:#dc2626}.contact-cta{background:#fff;padding:2rem;border-radius:8px;text-align:center;box-shadow:0 5px 15px rgba(0,0,0,.1)}.contact-cta h3{color:#1e3a8a;margin-bottom:1rem}.btn-secondary{display:inline-block;background:#dc2626;color:#fff;padding:.75rem 1.5rem;text-decoration:none;border-radius:6px;font-weight:600;transition:all .3s ease;font-size:.9rem}.btn-secondary:hover{background:#b91c1c;transform:translateY(-1px)}@media (max-width:768px){.nav-container{flex-direction:column;gap:1rem}.nav-menu{flex-direction:column;gap:1rem;text-align:center}.hero-container{grid-template-columns:1fr;text-align:center}.hero-content h1{font-size:2rem}.services-grid{grid-template-columns:1fr}.service-detail{grid-template-columns:1fr}.service-detail:nth-child(even) {grid-template-columns:1fr}.service-detail:nth-child(even) .service-content {order:0}.about-intro{grid-template-columns:1fr}.team-grid{grid-template-columns:1fr}.office-details{grid-template-columns:1fr}.contact-content{grid-template-columns:1fr;gap:2rem}.form-row{grid-template-columns:1fr}.newsletter-form{flex-direction:column}.footer-bottom{flex-direction:column;text-align:center}.cookie-content{flex-direction:column;text-align:center;gap:1rem}.content-wrapper{grid-template-columns:1fr}.post-sidebar{position:static;margin-top:2rem}.page-header h1{font-size:2rem}.post-header h1{font-size:2rem}}@media (max-width:480px){.container{padding:0 15px}.hero-content h1{font-size:1.8rem}.page-header h1{font-size:1.8rem}.post-header h1{font-size:1.8rem}.services h2,.pricing h2,.why-choose-us h2,.testimonials h2,.faq h2{font-size:2rem}.pricing-card.featured{transform:none}.pricing-card.featured:hover{transform:translateY(-5px)}.form-container{padding:2rem 1.5rem}.modal-content{margin:5% auto;width:95%}}