:root{--primary-color:#40e0d0;--primary-dark:#20b2aa;--primary-light:#7fffd4;--secondary-color:#f0f8ff;--text-color:#333;--text-light:#666;--white:#fff;--grey-light:#f5f5f5;--grey:#e0e0e0;--grey-dark:#9e9e9e;--black:#000;--success:#4caf50;--error:#f44336;--warning:#ffc107;--box-shadow:0 4px 6px rgba(0,0,0,.1);--border-radius:8px;--transition:all .3s ease;--font-jp:'Hiragino Kaku Gothic Pro' , 'メイリオ' , Meiryo , sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{font-family: var(--font-jp);line-height:1.6;color:var(--text-color);background-color:var(--white);overflow-x:hidden}a{color:var(--primary-dark);text-decoration:none;transition:var(--transition)}a:hover{color:var(--primary-color)}img{max-width:100%;height:auto;display:block}ul{list-style:none}.container{max-width:1200px;margin:0 auto;padding:0 20px}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.3;margin-bottom:1rem}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}p{margin-bottom:1.5rem}.btn{display:inline-block;background-color:var(--primary-color);color:var(--white);padding:.8rem 1.5rem;border:none;border-radius:var(--border-radius);font-weight:600;cursor:pointer;transition:var(--transition);text-align:center;font-family: var(--font-jp)}.btn:hover{background-color:var(--primary-dark);color:var(--white);transform:translateY(-2px);box-shadow:var(--box-shadow)}.btn-outline{background-color:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}.btn-outline:hover{background-color:var(--primary-color);color:var(--white)}.btn-small{padding:.5rem 1rem;font-size:.875rem}.btn-full{width:100%;display:block}header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background-color:var(--white);box-shadow:0 2px 5px rgba(0,0,0,.1);position:relative;z-index:100}.logo-container{display:flex;align-items:center}.logo{width:50px;height:50px;border-radius:50%;object-fit:cover;margin-right:1rem}.logo-small{width:40px;height:40px;border-radius:50%;object-fit:cover;margin-right:.5rem}header h1{font-size:1.5rem;margin-bottom:0;color:var(--primary-dark)}nav ul{display:flex}nav li{margin-left:2rem}nav a{color:var(--text-color);font-weight:600;position:relative}nav a:hover{color:var(--primary-color)}nav a::after{content:'';position:absolute;bottom:-5px;left:0;width:0;height:2px;background-color:var(--primary-color);transition:var(--transition)}nav a:hover::after,nav a.active::after{width:100%}nav a.active{color:var(--primary-color)}.hero{background-color:var(--secondary-color);padding:4rem 2rem;margin-bottom:3rem}.hero-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;flex-direction:row-reverse}.hero-image{width:50%;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.hero-text{width:50%;padding-right:2rem}.hero h2{margin-bottom:1.5rem;color:var(--primary-dark)}.hero p{margin-bottom:2rem;font-size:1.1rem}.features{padding:3rem 2rem;background-color:var(--white)}.features h2{text-align:center;margin-bottom:2.5rem;color:var(--primary-dark)}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.feature-item{text-align:center;padding:1.5rem;border-radius:var(--border-radius);transition:var(--transition);background-color:var(--white);box-shadow:0 2px 10px rgba(0,0,0,.05)}.feature-item:hover{transform:translateY(-5px);box-shadow:var(--box-shadow)}.feature-image{width:100%;height:200px;object-fit:cover;border-radius:var(--border-radius);margin-bottom:1.5rem}.feature-item h3{color:var(--primary-dark);margin-bottom:1rem}.latest-posts{padding:3rem 2rem;background-color:var(--secondary-color)}.latest-posts h2{text-align:center;margin-bottom:2.5rem;color:var(--primary-dark)}.post-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.post-card{background-color:var(--white);border-radius:var(--border-radius);overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.05);transition:var(--transition)}.post-card:hover{transform:translateY(-5px);box-shadow:var(--box-shadow)}.post-image{width:100%;height:200px;object-fit:cover}.post-card h3{padding:1rem 1.5rem .5rem;font-size:1.25rem;color:var(--primary-dark)}.post-card p{padding:0 1.5rem 1rem;color:var(--text-light)}.read-more{display:inline-block;padding:0 1.5rem 1.5rem;color:var(--primary-color);font-weight:600}.read-more:hover{color:var(--primary-dark)}.view-all{text-align:center;margin-top:2rem}.blog-header{background-color:var(--secondary-color);padding:3rem 2rem;text-align:center;margin-bottom:3rem}.blog-header h2{color:var(--primary-dark);margin-bottom:1rem}.blog-posts{padding:0 2rem 3rem}.blog-grid{display:grid;grid-template-columns:1fr;gap:2rem;max-width:900px;margin:0 auto}.blog-card{display:flex;background-color:var(--white);border-radius:var(--border-radius);overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.05);transition:var(--transition)}.blog-card:hover{transform:translateY(-3px);box-shadow:var(--box-shadow)}.blog-image{width:35%;object-fit:cover}.blog-content{width:65%;padding:1.5rem}.blog-card h3{margin-bottom:.5rem;color:var(--primary-dark);font-size:1.5rem}.blog-meta{display:flex;flex-wrap:wrap;margin-bottom:1rem;color:var(--grey-dark);font-size:.875rem}.blog-date,.blog-category{margin-right:1.5rem}.newsletter{padding:3rem 2rem;background-color:var(--primary-light);text-align:center}.newsletter h2{color:var(--primary-dark);margin-bottom:1rem}.newsletter p{max-width:600px;margin:0 auto 1.5rem}.newsletter-form{display:flex;max-width:500px;margin:0 auto}.newsletter-form input{flex:1;padding:.8rem 1rem;border:2px solid var(--white);border-radius:var(--border-radius) 0 0 var(--border-radius);font-family: var(--font-jp)}.newsletter-form button{border-radius:0 var(--border-radius) var(--border-radius) 0}.product-header{background-color:var(--secondary-color);padding:3rem 2rem;text-align:center;margin-bottom:2rem}.product-header h2{color:var(--primary-dark);margin-bottom:1rem}.product-categories{padding:0 2rem 1.5rem}.category-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:2rem}.category-btn{background-color:var(--grey-light);padding:.5rem 1.5rem;border-radius:var(--border-radius);border:none;cursor:pointer;transition:var(--transition);font-family: var(--font-jp)}.category-btn:hover,.category-btn.active{background-color:var(--primary-color);color:var(--white)}.products{padding:0 2rem 3rem}.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.product-item{background-color:var(--white);border-radius:var(--border-radius);overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.05);transition:var(--transition);display:flex;flex-direction:column}.product-item:hover{transform:translateY(-5px);box-shadow:var(--box-shadow)}.product-image{width:100%;height:250px;object-fit:cover}.product-content{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column}.product-item h3{color:var(--primary-dark);margin-bottom:.5rem}.product-description{color:var(--text-light);margin-bottom:1.5rem}.product-price{font-weight:700;font-size:1.25rem;margin-bottom:1.5rem;color:var(--primary-dark)}.product-actions{display:flex;gap:1rem;margin-top:auto}.product-actions .btn{flex:1;padding:.7rem;font-size:.9rem}.product-benefits{padding:3rem 2rem;background-color:var(--secondary-color)}.product-benefits h2{text-align:center;margin-bottom:2.5rem;color:var(--primary-dark)}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.benefit-item{text-align:center;padding:2rem;background-color:var(--white);border-radius:var(--border-radius);box-shadow:0 2px 10px rgba(0,0,0,.05);transition:var(--transition)}.benefit-item:hover{transform:translateY(-3px);box-shadow:var(--box-shadow)}.benefit-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;background-color:var(--primary-light);color:var(--primary-dark);margin-bottom:1.5rem}.benefit-item h3{color:var(--primary-dark);margin-bottom:1rem}.testimonials{padding:3rem 2rem;background-color:var(--white)}.testimonials h2{text-align:center;margin-bottom:2.5rem;color:var(--primary-dark)}.testimonial-slider{max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:2rem}.testimonial-item{background-color:var(--secondary-color);padding:2rem;border-radius:var(--border-radius);box-shadow:0 2px 10px rgba(0,0,0,.05);position:relative}.testimonial-item::before{content:'"';position:absolute;top:1rem;left:1.5rem;font-size:4rem;line-height:1;color:var(--primary-light);opacity:.5;font-family:serif}.testimonial-content{position:relative;z-index:1}.testimonial-content p{margin-bottom:1.5rem;font-style:italic}.author-name{font-weight:700;margin-bottom:.25rem;color:var(--primary-dark)}.author-location{color:var(--grey-dark);font-size:.875rem}.about-header{background-color:var(--secondary-color);padding:3rem 2rem;text-align:center;margin-bottom:3rem}.about-header h2{color:var(--primary-dark);margin-bottom:1rem}.about-mission{padding:0 2rem 3rem}.mission-content{display:flex;flex-wrap:wrap;align-items:center;max-width:1200px;margin:0 auto}.mission-image,.mission-text{width:100%}.mission-image{margin-bottom:2rem}.mission-image img{width:100%;border-radius:var(--border-radius);box-shadow:var(--box-shadow)}.mission-text h3{color:var(--primary-dark);margin:1.5rem 0 1rem}.mission-text ul{list-style:disc;padding-left:1.5rem;margin-bottom:1.5rem}.about-history{padding:3rem 2rem;background-color:var(--secondary-color)}.about-history h2{text-align:center;margin-bottom:2.5rem;color:var(--primary-dark)}.timeline{max-width:800px;margin:0 auto;position:relative}.timeline::after{content:'';position:absolute;top:0;bottom:0;left:50px;width:2px;background-color:var(--primary-color)}.timeline-item{position:relative;margin-bottom:2rem;padding-left:100px}.timeline-year{position:absolute;left:0;top:0;background-color:var(--primary-color);color:var(--white);width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;z-index:1;box-shadow:0 0 0 5px var(--white)}.timeline-content{background-color:var(--white);padding:1.5rem;border-radius:var(--border-radius);box-shadow:0 2px 10px rgba(0,0,0,.05)}.timeline-content h3{color:var(--primary-dark);margin-bottom:.5rem}.team-section{padding:3rem 2rem;background-color:var(--white)}.team-section h2{text-align:center;margin-bottom:1rem;color:var(--primary-dark)}.team-section>p{text-align:center;max-width:800px;margin:0 auto 2.5rem}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.team-card{background-color:var(--white);border-radius:var(--border-radius);overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.05);transition:var(--transition);text-align:center}.team-card:hover{transform:translateY(-5px);box-shadow:var(--box-shadow)}.team-card img{width:100%;height:250px;object-fit:cover}.team-card h3{margin:1rem 0 .25rem;color:var(--primary-dark);padding:0 1rem}.team-card p{padding:0 1rem 1rem;margin-bottom:0}.team-card p:first-of-type{font-weight:700;color:var(--primary-color);margin-bottom:.75rem}.values-section{padding:3rem 2rem;background-color:var(--secondary-color)}.values-section h2{text-align:center;margin-bottom:2.5rem;color:var(--primary-dark)}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.value-item{background-color:var(--white);padding:2rem;border-radius:var(--border-radius);box-shadow:0 2px 10px rgba(0,0,0,.05);text-align:center;transition:var(--transition)}.value-item:hover{transform:translateY(-3px);box-shadow:var(--box-shadow)}.value-icon{display:inline-flex;align-items:center;justify-content:center;width:70px;height:70px;border-radius:50%;background-color:var(--primary-light);color:var(--primary-dark);margin-bottom:1.5rem}.value-item h3{color:var(--primary-dark);margin-bottom:1rem}.certification-section{padding:3rem 2rem;background-color:var(--white)}.certification-section h2{text-align:center;margin-bottom:2.5rem;color:var(--primary-dark)}.certification-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.certification-item{text-align:center;padding:1.5rem;background-color:var(--secondary-color);border-radius:var(--border-radius);transition:var(--transition)}.certification-item:hover{transform:translateY(-3px);box-shadow:var(--box-shadow)}.certification-image{width:150px;height:150px;object-fit:contain;margin:0 auto 1.5rem;border-radius:var(--border-radius);background-color:var(--white);padding:1.5rem}.certification-item h3{color:var(--primary-dark);margin-bottom:.5rem}.contact-header{background-color:var(--secondary-color);padding:3rem 2rem;text-align:center;margin-bottom:3rem}.contact-header h2{color:var(--primary-dark);margin-bottom:1rem}.contact-grid{padding:0 2rem 3rem}.contact-grid .container{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:1200px;margin:0 auto}.contact-info h3,.contact-form-container h3{color:var(--primary-dark);margin-bottom:1.5rem}.info-item{display:flex;margin-bottom:1.5rem}.info-icon{margin-right:1rem;color:var(--primary-color)}.info-text h4{font-size:1.1rem;margin-bottom:.25rem;color:var(--text-color)}.social-links h4{margin-top:2rem;margin-bottom:1rem}.social-icons{display:flex;gap:1rem}.social-icons a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:var(--primary-light);color:var(--primary-dark);transition:var(--transition)}.social-icons a:hover{background-color:var(--primary-color);color:var(--white);transform:translateY(-2px)}.contact-form{background-color:var(--white);padding:2rem;border-radius:var(--border-radius);box-shadow:0 2px 10px rgba(0,0,0,.05)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600}.form-group input,.form-group textarea{width:100%;padding:.8rem 1rem;border:1px solid var(--grey);border-radius:var(--border-radius);font-family: var(--font-jp);transition:var(--transition)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(64,224,208,.25)}.checkbox-group{display:flex;align-items:flex-start}.checkbox-group input{width:auto;margin-right:.5rem;margin-top:.3rem}.required{color:var(--error)}.map-section{padding:0 2rem 3rem}.map-section h3{text-align:center;color:var(--primary-dark);margin-bottom:1.5rem}.map-container{max-width:1000px;margin:0 auto;border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow)}.map-image{width:100%;height:auto;display:block}.faq-section{padding:3rem 2rem;background-color:var(--secondary-color)}.faq-section h3{text-align:center;color:var(--primary-dark);margin-bottom:2rem}.faq-container{max-width:800px;margin:0 auto}.faq-item{background-color:var(--white);border-radius:var(--border-radius);margin-bottom:1rem;overflow:hidden}.faq-question{padding:1.5rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.faq-question h4{margin-bottom:0;font-size:1.1rem;color:var(--text-color)}.faq-toggle{font-size:1.5rem;color:var(--primary-color);font-weight:700}.faq-answer{padding:0 1.5rem 1.5rem;display:none}.faq-item.active .faq-answer{display:block}.faq-item.active .faq-toggle{transform:rotate(45deg)}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:1000;align-items:center;justify-content:center}.modal.show{display:flex}.modal-content{background-color:var(--white);padding:2rem;border-radius:var(--border-radius);max-width:500px;width:90%;text-align:center;position:relative}.close-modal{position:absolute;top:1rem;right:1rem;font-size:1.5rem;cursor:pointer;color:var(--grey-dark)}.modal h3{color:var(--primary-dark);margin-bottom:1rem}.modal-close-btn{margin-top:1.5rem}.post-content{max-width:800px;margin:0 auto;padding:2rem}.post-header{margin-bottom:2rem}.post-header h2{color:var(--primary-dark);margin-bottom:1rem}.post-meta{display:flex;flex-wrap:wrap;gap:1.5rem;color:var(--grey-dark);font-size:.9rem}.post-image{margin-bottom:2rem;border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow)}.post-body h3{color:var(--primary-dark);margin:2rem 0 1rem}.post-body h4{color:var(--text-color);margin:1.5rem 0 1rem}.post-body ul,.post-body ol{margin-bottom:1.5rem;padding-left:1.5rem}.post-body ul{list-style:disc}.post-body ol{list-style:decimal}.post-body li{margin-bottom:.5rem}.post-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:2rem 0}.tag{background-color:var(--primary-light);color:var(--primary-dark);padding:.3rem .8rem;border-radius:20px;font-size:.875rem}.post-share{margin-bottom:3rem}.post-share h4{margin-bottom:1rem;font-size:1.1rem}.share-buttons{display:flex;gap:1rem}.share-buttons a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:var(--primary-light);color:var(--primary-dark);transition:var(--transition)}.share-buttons a:hover{background-color:var(--primary-color);color:var(--white)}.related-posts{margin:3rem 0}.related-posts h3{text-align:center;color:var(--primary-dark);margin-bottom:1.5rem}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.related-post{background-color:var(--white);border-radius:var(--border-radius);overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.05);transition:var(--transition)}.related-post:hover{transform:translateY(-3px);box-shadow:var(--box-shadow)}.related-image{width:100%;height:150px;object-fit:cover}.related-post h4{padding:1rem 1rem .5rem;font-size:1rem}.related-post .read-more{padding:0 1rem 1rem;display:inline-block}.post-nav{display:flex;justify-content:space-between;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--grey)}.post-nav a{color:var(--primary-dark);font-weight:600}.post-nav a:hover{color:var(--primary-color)}.calculator{padding:3rem 2rem;background-color:var(--secondary-color);text-align:center}.calculator h2{color:var(--primary-dark);margin-bottom:1rem}.calculator>p{max-width:600px;margin:0 auto 2rem}.calculator-container{max-width:800px;margin:0 auto;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;background-color:var(--white);padding:2rem;border-radius:var(--border-radius);box-shadow:0 2px 10px rgba(0,0,0,.05)}.calculator-form{width:100%;max-width:400px}.calculator-result{width:100%;max-width:300px;display:flex;flex-direction:column;justify-content:center;background-color:var(--primary-light);padding:2rem;border-radius:var(--border-radius)}.calculator-result h3{color:var(--primary-dark);margin-bottom:1rem}#saving-result{font-weight:700;font-size:1.5rem;color:var(--primary-dark)}.cookie-consent{position:fixed;bottom:0;left:0;width:100%;background-color:var(--white);box-shadow:0 -2px 10px rgba(0,0,0,.1);z-index:999;padding:1rem 2rem;display:none}.cookie-consent.show{display:block}.cookie-content{max-width:1200px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.cookie-content p{margin-bottom:1rem;flex:1 1 100%}.cookie-buttons{display:flex;gap:1rem;margin-bottom:1rem}.cookie-link{font-size:.875rem;margin-bottom:1rem}footer{background-color:var(--primary-dark);color:var(--white);padding:3rem 2rem 1rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.footer-logo{display:flex;align-items:center;margin-bottom:1rem}.footer-logo p{margin-bottom:0}footer h4{color:var(--white);margin-bottom:1rem;font-size:1.2rem}.footer-links ul,.footer-legal ul{list-style:none}footer a{color:var(--secondary-color);display:inline-block;margin-bottom:.5rem}footer a:hover{color:var(--white);text-decoration:underline}.footer-social{display:flex;justify-content:center;gap:1.5rem;margin:2rem 0}.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:rgba(255,255,255,.1);color:var(--white);transition:var(--transition)}.footer-social a:hover{background-color:var(--white);color:var(--primary-dark);transform:translateY(-3px)}.footer-bottom{text-align:center;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.footer-bottom p{margin-bottom:0;font-size:.875rem}@media (max-width:992px){h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}.hero-content{flex-direction:column}.hero-image,.hero-text{width:100%}.hero-text{padding-right:0;margin-top:2rem}.contact-grid .container{grid-template-columns:1fr}.mission-content{flex-direction:column}.related-grid{grid-template-columns:1fr}.timeline::after{left:30px}.timeline-year{width:60px;height:60px;font-size:.9rem}.timeline-item{padding-left:70px}}@media (max-width:768px){header{flex-direction:column}nav{margin-top:1rem}nav ul{flex-wrap:wrap;justify-content:center}nav li{margin:.5rem 1rem}.blog-card{flex-direction:column}.blog-image,.blog-content{width:100%}.newsletter-form{flex-direction:column}.newsletter-form input{border-radius:var(--border-radius);margin-bottom:1rem}.newsletter-form button{border-radius:var(--border-radius);width:100%}}@media (max-width:480px){.cookie-content{flex-direction:column;align-items:flex-start}}