:root{--primary-color:#ff6b00;--secondary-color:#4a90e2;--dark-color:#333333;--gray-color:#666666;--light-gray:#f8f9fa;--primary-light:#fff4eb}*{margin:0;padding:0;box-sizing:border-box}body{font-family:"Noto Sans JP",sans-serif;color:var(--dark-color);line-height:1.6;background-color:#fff;padding-bottom:70px}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 15px}.section-title{text-align:center;margin-bottom:30px}.section-title h2{font-size:24px;font-weight:700;margin-bottom:8px;color:var(--dark-color)}.section-title p{font-size:14px;color:var(--gray-color)}.btn{display:inline-block;padding:12px 25px;border-radius:50px;text-decoration:none;font-weight:500;transition:all 0.3s ease;text-align:center}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-secondary{background-color:#fff0;border:2px solid var(--primary-color);color:var(--primary-color)}.btn:hover{opacity:.9;transform:translateY(-2px)}.highlight{color:var(--primary-color);font-weight:700}.price-highlight{color:var(--primary-color);font-size:1.2em;font-weight:700}header{box-shadow:0 2px 10px rgb(0 0 0 / .1);position:fixed;top:0;left:0;right:0;z-index:100;background:#fff}.header-container h1{background:#fff}.container .wp-block-heading{padding:10px}.header-sme-font-size{color:var(--dark-color)!important;font-family:"Noto Sans JP",sans-serif;font-weight:700;background:#fff}.header-container{display:flex;justify-content:space-between;align-items:center}.header-left{display:flex;align-items:center}.logo{max-width:180px;height:auto}.header-contact a{display:inline-block;margin-left:10px;text-decoration:none;color:var(--primary-color);font-weight:700;font-size:14px}.school-selector{position:relative;display:inline-block;margin-right:15px}.current-school{display:flex;align-items:center;cursor:pointer;padding:5px 10px;background-color:var(--primary-light);border-radius:5px;font-size:12px;color:var(--primary-color);font-weight:500}.current-school i{margin-left:5px}.school-dropdown{position:absolute;top:100%;left:0;background-color:#fff;box-shadow:0 5px 15px rgb(0 0 0 / .1);border-radius:5px;padding:10px 0;width:150px;z-index:101;display:none}.school-dropdown.active{display:block}.school-dropdown a{display:block;padding:8px 15px;text-decoration:none;color:var(--dark-color);font-size:12px;transition:all 0.2s ease}.school-dropdown a:hover{background-color:var(--primary-light);color:var(--primary-color)}a{color:inherit;text-decoration:none}a:visited,a:hover,a:active,a:focus{color:inherit}.hamburger-menu{display:block;cursor:pointer;font-size:24px;color:var(--primary-color)}.menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgb(0 0 0 / .7);z-index:999;display:none}.menu-content{position:fixed;top:0;right:-300px;width:250px;height:100%;background-color:#fff;z-index:1000;padding:50px 20px 20px;transition:right 0.3s ease;overflow-y:auto}.menu-content.active{right:0}.close-menu{position:absolute;top:15px;right:15px;font-size:24px;cursor:pointer;color:var(--dark-color)}.nav-menu{list-style:none}.nav-menu li{margin-bottom:15px}.nav-menu a{text-decoration:none;color:var(--dark-color);font-size:16px;font-weight:500;transition:color 0.3s ease}.nav-menu a:hover{color:var(--primary-color)}.main-content{padding-top:70px}.hero-area{padding:50px 0;background-color:var(--primary-light)}.hero-content{text-align:center;margin-bottom:30px}.hero-content h1{font-size:24px;font-weight:700;margin-bottom:15px;color:var(--dark-color)}.hero-content h2{font-size:18px;margin-bottom:15px;color:var(--dark-color)}.hero-content p{font-size:14px;margin-bottom:25px;color:var(--gray-color)}.hero-buttons{display:flex;flex-direction:column;gap:15px}.hero-image img{max-width:100%;height:auto;border-radius:10px;box-shadow:0 5px 15px rgb(0 0 0 / .1)}.accordion{margin-top:15px}.accordion-header{color:inherit;padding:12px 15px;background-color:#f9f9f9;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-weight:500;border-radius:5px;font-size:14px;width:100%}.accordion-content{max-height:0;overflow:hidden;transition:max-height 0.3s ease}.accordion.active .accordion-content{max-height:1000px;padding:15px}.toggle-icon{transition:transform 0.3s ease}.accordion.active .toggle-icon{transform:rotate(45deg)}.features-area{padding:50px 0}.features-container{display:flex;flex-direction:column;gap:30px}.feature-box{padding:20px;border-radius:10px;box-shadow:0 5px 15px rgb(0 0 0 / .05);transition:all 0.3s ease;background-color:#fff}.feature-icon{margin-bottom:15px;text-align:center;font-size:40px;color:var(--primary-color)}.feature-box h3{font-size:16px;font-weight:700;margin-bottom:10px;text-align:center;color:var(--dark-color)}.feature-box p{font-size:14px;color:var(--gray-color);margin-bottom:15px}.feature-list{padding-left:20px;margin-bottom:0}.feature-list li{margin-bottom:10px;font-size:14px;color:var(--gray-color);list-style:disc}.pricing-area{padding:50px 0;background-color:var(--light-gray)}.pricing-container{display:flex;flex-direction:column;gap:30px}.pricing-box{border-radius:10px;overflow:hidden;box-shadow:0 5px 15px rgb(0 0 0 / .05);background-color:#fff;transition:all 0.3s ease;position:relative}.pricing-header{padding:20px;text-align:center}.pricing-box .pricing-header{background-color:var(--primary-color);color:#fff}.pricing-box.featured .pricing-header{background-color:var(--secondary-color)}.pricing-header h3{font-size:18px;font-weight:700;margin-bottom:8px}.price{font-size:16px}.price span{font-size:28px;font-weight:700}.pricing-body{padding:20px}.pricing-body ul{list-style:none;padding:0;margin-bottom:20px}.pricing-body ul li{margin-bottom:10px;padding-left:20px;position:relative;font-size:14px;color:var(--gray-color)}.pricing-body ul li::before{content:"✓";position:absolute;left:0;color:var(--primary-color);font-weight:700}.pricing-badge{position:absolute;top:10px;right:10px;background-color:#fff;color:var(--secondary-color);padding:5px 10px;border-radius:15px;font-size:12px;font-weight:700}.pricing-cta{text-align:center}.admission-fee{margin-top:30px;text-align:center;font-size:14px}.note{font-size:12px;color:var(--gray-color);margin-top:5px}.comparison-area{padding:50px 0}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.comparison-table{width:100%;border-collapse:collapse;margin-bottom:30px;min-width:650px}.comparison-table th,.comparison-table td{padding:10px 8px;border:1px solid #ddd;text-align:center;font-size:13px}.comparison-table th{background-color:var(--light-gray);font-weight:700}.comparison-table th.highlight{background-color:var(--primary-light)}.comparison-table td.highlight{color:var(--primary-color);font-weight:700}.case-studies-area{padding:50px 0;background-color:var(--light-gray)}.case-study-box.active .toggle-icon{transform:rotate(45deg);transition:transform 0.3s ease}.case-content{max-height:0;overflow:hidden;opacity:0;transition:max-height 0.5s ease,opacity 0.5s ease}.case-content.open{max-height:2000px;opacity:1}.tabs{margin-bottom:30px}.hidden{display:none!important}.tab-nav{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:20px;border-bottom:1px solid #ddd}.tab-btn{padding:10px 15px;background:none;border:none;border-bottom:3px solid #fff0;cursor:pointer;white-space:nowrap;font-weight:500;font-size:14px;color:var(--gray-color);transition:all 0.3s ease}.tab-btn.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.tab-pane{display:none}.tab-pane.active{display:block}.case-study-box{padding:20px;background-color:#fff;border-radius:10px;box-shadow:0 5px 15px rgb(0 0 0 / .05);margin-bottom:20px}.case-meta{margin-bottom:15px}.case-grade,.case-subject{display:inline-block;padding:4px 10px;margin-right:8px;margin-bottom:5px;border-radius:15px;font-size:12px;font-weight:500}.case-grade{background-color:var(--secondary-color);color:#fff}.case-subject{background-color:var(--primary-color);color:#fff}.case-study-box h3{font-size:16px;font-weight:700;margin-bottom:15px;color:var(--dark-color)}.case-content{display:flex;flex-direction:column;gap:20px}.flex-container{display:flex;justify-content:space-between;margin-top:15px}.tab-case-img{width:50%;object-fit:cover;border-radius:10px}.case-detail{display:flex;flex-direction:column;gap:15px}.case-problem,.case-approach{margin-bottom:10px}.case-problem h4,.case-approach h4,.case-result h4{font-size:15px;font-weight:700;margin-bottom:8px;color:var(--dark-color)}.case-problem ul,.case-approach ul{padding-left:20px;margin-bottom:0}.case-problem li,.case-approach li{margin-bottom:6px;font-size:13px;color:var(--gray-color)}.result-graph{margin-bottom:15px}.result-item{margin-bottom:15px}.subject{font-weight:700;margin-bottom:4px;font-size:14px}.score-bar{position:relative;height:24px;background-color:#f5f5f5;border-radius:12px;overflow:hidden}.before,.after{position:absolute;height:100%;display:flex;align-items:center;padding:0 8px;color:#fff;font-size:11px;font-weight:700}.before{background-color:#aaa;border-radius:12px 0 0 12px;z-index:1}.after{background-color:var(--primary-color);border-radius:12px;z-index:2}.improvement{text-align:right;color:var(--primary-color);font-weight:700;font-size:13px;margin-top:4px}.testimonials{display:flex;flex-direction:column;gap:20px}.testimonial{padding:20px;background-color:#fff;border-radius:10px;box-shadow:0 5px 15px rgb(0 0 0 / .05)}.testimonial-content{font-style:italic;margin-bottom:10px}.testimonial-content p{margin-bottom:0;color:var(--gray-color);font-size:14px}.testimonial-author{text-align:right}.testimonial-author .name{font-weight:500;font-size:13px}.cta-container{text-align:center;margin-top:30px}.cta-container p{font-size:16px;margin-bottom:15px}.teachers-area{padding:50px 0}.teacher-box{display:flex;flex-direction:column;padding:20px;background-color:#fff;border-radius:10px;box-shadow:0 5px 15px rgb(0 0 0 / .05)}.teacher-image{margin-bottom:20px;text-align:center}.teacher-image img{width:180px;height:180px;object-fit:cover;border-radius:10px;box-shadow:0 5px 15px rgb(0 0 0 / .1)}.teacher-info h3{font-size:18px;font-weight:700;margin-bottom:15px;color:var(--dark-color);text-align:center}.teacher-message{font-style:italic;padding:15px;background-color:var(--primary-light);border-radius:5px;font-size:14px;margin-top:15px}.faq-area{padding:50px 0;background-color:var(--light-gray)}.faq-container{max-width:800px;margin:0 auto}.faq-item{margin-bottom:15px;background-color:#fff;border-radius:5px;overflow:hidden;box-shadow:0 3px 10px rgb(0 0 0 / .03)}.faq-question{padding:15px;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.faq-question h3{font-size:15px;font-weight:700;margin:0;color:var(--dark-color)}.faq-answer{font-size:14px;max-height:0;overflow:hidden;transition:all 0.3s ease}.faq-item.active .faq-answer{padding:0 15px 15px;max-height:1000px}.blog-area{padding:50px 0}.blog-container{display:flex;flex-direction:column;gap:20px}.blog-card{display:flex;flex-direction:row;gap:1.5rem;align-items:flex-start;border-radius:10px;overflow:hidden;box-shadow:0 5px 15px rgb(0 0 0 / .05);transition:all 0.3s ease;background-color:#fff;width:100%}.blog-image{flex:0 0 300px}.blog-image img{width:100%;height:auto;border-radius:8px}.blog-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgb(0 0 0 / .1)}.blog-card-link{display:block;width:100%}.blog-content{flex:1}.blog-image img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s ease}.blog-card:hover .blog-image img{transform:scale(1.1)}.blog-content{padding:15px}.blog-date{font-size:12px;color:var(--gray-color);margin-bottom:8px}.blog-content h3{font-size:15px;font-weight:700;margin-bottom:8px;color:var(--dark-color)}.blog-content p{font-size:13px;color:var(--gray-color);margin-bottom:12px}.read-more{font-size:13px;font-weight:500;color:var(--primary-color);text-decoration:none}.blog-more{text-align:center;margin-top:25px}.blog-article{max-width:800px;margin:0 auto;padding:2em 1em;background:#fff;border-radius:8px}.blog-title{font-size:2em;margin-bottom:.3em}.blog-meta{color:#666;font-size:.9em;margin-bottom:1.5em}.blog-featured-image img{width:100%;height:auto;border-radius:8px;margin-bottom:1.5em}.blog-body{line-height:1.8;font-size:1.1em}.blog-list{display:flex;flex-direction:column;gap:30px}.blog-card-list{display:flex;flex-direction:row;gap:1.5rem;background:#fff;box-shadow:0 5px 15px rgb(0 0 0 / .05);border-radius:10px;overflow:hidden;transition:all 0.3s ease}.blog-card-list:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgb(0 0 0 / .1)}.blog-card-list a{display:flex;flex-direction:row;width:100%}.blog-image-list{flex:0 0 200px;overflow:hidden}.blog-image-list img{width:100%;height:100%;object-fit:cover;border-radius:8px 0 0 8px;transition:transform 0.3s ease}.blog-card-list:hover .blog-image-list img{transform:scale(1.05)}.blog-content-list{flex:1;padding:1rem}.blog-meta-list{font-size:13px;color:var(--gray-color);margin-bottom:6px}.blog-title-list{font-size:18px;font-weight:700;margin-bottom:10px;color:var(--dark-color)}.blog-content-list p{font-size:14px;color:var(--gray-color);margin-bottom:0}.access-area{padding:50px 0;background-color:var(--light-gray)}.access-img{width:100%;object-fit:cover;margin-bottom:20px}.access-container{display:flex;flex-direction:column;gap:20px}.access-map{border-radius:10px;overflow:hidden;box-shadow:0 5px 15px rgb(0 0 0 / .05)}.access-info{display:flex;flex-direction:column;gap:15px}.address,.access-details,.opening-hours{background-color:#fff;padding:15px;border-radius:10px;box-shadow:0 5px 15px rgb(0 0 0 / .05)}.access-info h3{font-size:16px;font-weight:700;margin-bottom:10px;color:var(--dark-color)}.access-info p,.access-info li{font-size:13px;color:var(--gray-color);margin-bottom:6px}.access-info ul{padding-left:0;margin-bottom:0}.contact-area{padding:50px 0}.contact-container{display:flex;flex-direction:column;gap:25px}.contact-method{margin-bottom:20px;padding:15px;background-color:#fff;border-radius:10px;box-shadow:0 5px 15px rgb(0 0 0 / .05)}.contact-method h3{font-size:16px;font-weight:700;margin-bottom:10px;color:var(--dark-color)}.phone-number{font-size:20px;font-weight:700;color:var(--primary-color);margin-bottom:8px}.email{font-size:16px;color:var(--primary-color);margin-bottom:8px;word-break:break-all}.line-qr{text-align:center;margin-top:12px}.line-qr img{max-width:120px;height:auto}.privacy-area{padding:50px 0;background-color:var(--light-gray)}.privacy-content{background-color:#fff;padding:20px;border-radius:10px;box-shadow:0 5px 15px rgb(0 0 0 / .05)}.privacy-content h3{font-size:18px;font-weight:700;margin-bottom:15px;color:var(--dark-color)}.privacy-accordion-item{margin-bottom:15px}.privacy-accordion-header{padding:12px 15px;background-color:#f9f9f9;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-weight:700;border-radius:5px;font-size:15px}.privacy-accordion-content{max-height:0;overflow:hidden;transition:max-height 0.3s ease}.privacy-accordion-item.active .privacy-accordion-content{max-height:1450px;padding:15px}.privacy-accordion-content h4{font-size:16px;font-weight:700;margin:15px 0 10px;color:var(--dark-color)}.privacy-accordion-content h4:first-child{margin-top:0}.privacy-accordion-content p{font-size:14px;color:var(--gray-color);margin-bottom:15px}.privacy-accordion-content ul{padding-left:20px;margin-bottom:15px}.privacy-accordion-content li{font-size:14px;color:var(--gray-color);margin-bottom:8px}.float-menu{position:fixed;bottom:0;left:0;right:0;z-index:999;background-color:#fff;box-shadow:0 -2px 10px rgb(0 0 0 / .1);display:flex;justify-content:space-between}.float-menu-item{flex:1;text-align:center;padding:8px 0;border-right:1px solid #eee}.float-menu-item:last-child{border-right:none}.float-menu-item a{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--dark-color);font-size:10px}.float-menu-icon{font-size:20px;margin-bottom:3px;color:var(--primary-color)}.float-menu-cta{background-color:var(--primary-color)}.float-menu-cta a{color:#fff}.float-menu-cta .float-menu-icon{color:#fff}.cta-footer .inner a:first-child{background-color:var(--secondary-color)!important}footer{background-color:var(--dark-color);color:#fff;padding:30px 0;font-size:12px;height:200px}.footer-container{text-align:center}.footer-links{margin-bottom:15px}.footer-links a{color:#fff;text-decoration:none;margin:0 10px}.footer-copy{color:#aaa}@media (min-width:768px){body{padding-bottom:0}.hero-content{text-align:left}.hero-content h1{font-size:32px}.hero-content h2{font-size:24px}.hero-buttons{flex-direction:row}.features-container{flex-direction:row;flex-wrap:wrap}.feature-box{flex:1;min-width:300px}.pricing-container{flex-direction:row}.contact-container{flex-direction:row}.blog-container{flex-direction:row;flex-wrap:wrap}.blog-card{flex:1;min-width:300px}.float-menu{display:none}.header-contact{display:flex;align-items:center}.hamburger-menu{display:none}}@media (max-width:768px){.main-content{padding-top:50px}.header-contact .tel-link{display:none}.flex-container{flex-direction:column}.tab-case-img{width:100%}.comparison-table{min-width:0}.comparison-table thead{display:none}.comparison-table tr{display:block;border:1px solid #ccc;margin-bottom:1rem;padding:1rem;background-color:#fff}.comparison-table td{display:flex;justify-content:space-between;padding:.5rem 0;border:none;border-bottom:1px solid #eee}.comparison-table td:first-child{font-weight:700;display:block;padding-bottom:.8rem}.comparison-table td:not(:first-child)::before{content:attr(data-label);font-weight:700;margin-right:1rem}.comparison-table td:not(:first-child){display:flex;justify-content:space-between}footer{height:140px}.blog-container{flex-direction:column}.blog-card{flex-direction:column;gap:0}.blog-image{flex:none;width:100%}.blog-card-list a{flex-direction:column}}