*{margin:0;padding:0;box-sizing:border-box}:root{--primary-orange:#FF9500;--primary-blue:#0066CC;--primary-green:#00A86B;--bg-cream:#FFF9F0;--bg-light:#FFFFFF;--text-dark:#333333;--text-gray:#666666;--accent-red:#FF3B30;--shadow:rgba(0, 0, 0, 0.1)}body{font-family:'Noto Sans JP',sans-serif;color:var(--text-dark);background:var(--bg-cream);line-height:1.7;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:0 20px}header.site-header{background:var(--bg-light);box-shadow:0 2px 10px var(--shadow);position:sticky;top:0;z-index:1000;animation:slideDown 0.6s ease-out}@keyframes slideDown{from{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}nav{display:flex;justify-content:space-between;align-items:center;padding:20px 0}.header-wrapper{display:flex;justify-content:space-between;align-items:center}.logo{font-family:'M PLUS Rounded 1c',sans-serif;font-size:28px;font-weight:900;background:linear-gradient(135deg,var(--primary-orange),var(--primary-blue),var(--primary-green));-webkit-background-clip:text;-webkit-text-fill-color:#fff0;background-clip:text;letter-spacing:-1px;text-decoration:none}.logo-link{text-decoration:none;display:inline-block;transition:transform 0.3s ease;flex-shrink:0}.logo-link:hover{transform:scale(1.05)}.logo-link svg{vertical-align:middle;display:block}.nav-links{display:flex;gap:30px;list-style:none;margin:0;padding:0;align-items:center}.nav-links a{color:var(--text-dark);text-decoration:none;font-weight:500;transition:all 0.3s ease;position:relative}.nav-links a::after{content:'';position:absolute;bottom:-5px;left:0;width:0;height:3px;background:var(--primary-blue);transition:width 0.3s ease}.nav-links a:hover::after{width:100%}.cta-nav{background:var(--primary-blue);color:white!important;padding:10px 20px;border-radius:25px;font-weight:700}.cta-nav::after{display:none}.cta-nav:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgb(0 102 204 / .3)}.hamburger{display:none;flex-direction:column;justify-content:space-around;width:35px;height:30px;background:#fff0;border:none;cursor:pointer;padding:0;z-index:1001;position:relative}.hamburger span{width:35px;height:4px;background:#333;border-radius:3px;transition:all 0.3s ease;display:block}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(8px,-8px)}#menu-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgb(0 0 0 / .5);z-index:999;display:none}#menu-overlay.active{display:block}@media (min-width:769px){.nav-links li.mobile-only{display:none!important}}.hero{padding:80px 0 100px;text-align:center;position:relative;overflow:hidden}.hero::before{content:'';position:absolute;top:-50%;left:-10%;width:500px;height:500px;background:radial-gradient(circle,rgb(255 149 0 / .15),transparent);border-radius:50%;animation:float 20s infinite ease-in-out}.hero::after{content:'';position:absolute;bottom:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,rgb(0 102 204 / .15),transparent);border-radius:50%;animation:float 25s infinite ease-in-out reverse}@keyframes float{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(30px,-30px) scale(1.1)}}.hero-content{position:relative;z-index:1}.hero h1{font-family:'M PLUS Rounded 1c',sans-serif;font-size:56px;font-weight:900;margin-bottom:20px;line-height:1.2;animation:fadeInUp 0.8s ease-out 0.2s both}.hero .subtitle{font-size:24px;color:var(--text-gray);margin-bottom:15px;font-weight:500;animation:fadeInUp 0.8s ease-out 0.4s both}.hero .description{font-size:18px;color:var(--text-gray);margin-bottom:40px;animation:fadeInUp 0.8s ease-out 0.6s both}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-buttons{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;animation:fadeInUp 0.8s ease-out 0.8s both}.btn{padding:16px 40px;font-size:18px;font-weight:700;border-radius:30px;text-decoration:none;transition:all 0.3s ease;display:inline-block;font-family:'M PLUS Rounded 1c',sans-serif}.btn-primary{background:linear-gradient(135deg,var(--primary-orange),var(--primary-blue));color:#fff;box-shadow:0 4px 15px rgb(0 102 204 / .3)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgb(0 102 204 / .4)}.btn-secondary{background:#fff;color:var(--primary-blue);border:2px solid var(--primary-blue)}.btn-secondary:hover{background:var(--primary-blue);color:#fff;transform:translateY(-3px)}.grade-section{padding:80px 0;background:var(--bg-light)}.section-title{font-family:'M PLUS Rounded 1c',sans-serif;font-size:42px;font-weight:900;text-align:center;margin-bottom:60px}.grade-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:30px;margin-bottom:40px}.grade-card{background:#fff;border-radius:20px;padding:40px 30px;text-align:center;transition:all 0.4s ease;cursor:pointer;position:relative;overflow:hidden;box-shadow:0 4px 20px rgb(0 0 0 / .08);text-decoration:none}.grade-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:5px;transition:height 0.4s ease}.grade-card.elementary::before{background:var(--primary-orange)}.grade-card.junior::before{background:var(--primary-blue)}.grade-card.high::before{background:var(--primary-green)}.grade-card:hover::before{height:100%;opacity:.05}.grade-card:hover{transform:translateY(-10px);box-shadow:0 12px 40px rgb(0 0 0 / .15)}.grade-icon{font-size:64px;margin-bottom:20px;display:block}.grade-card h3{font-family:'M PLUS Rounded 1c',sans-serif;font-size:28px;font-weight:700;margin-bottom:15px}.grade-card.elementary h3{color:var(--primary-orange)}.grade-card.junior h3{color:var(--primary-blue)}.grade-card.high h3{color:var(--primary-green)}.grade-card p{color:var(--text-gray);line-height:1.8}.parent-teacher-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-top:30px}.parent-teacher-card{background:linear-gradient(135deg,#F8F9FA,#E9ECEF);border-radius:15px;padding:30px;text-align:center;transition:all 0.3s ease;cursor:pointer;text-decoration:none;display:block}.parent-teacher-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px rgb(0 0 0 / .1)}.parent-teacher-card h4{font-family:'M PLUS Rounded 1c',sans-serif;font-size:22px;font-weight:700;margin-bottom:10px;color:var(--text-dark)}.popular-section{padding:80px 0;background:var(--bg-cream)}.popular-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:25px}.popular-item{background:#fff;border-radius:15px;padding:25px;transition:all 0.3s ease;cursor:pointer;border-left:4px solid #fff0}.popular-item:nth-child(1){border-left-color:var(--primary-orange)}.popular-item:nth-child(2){border-left-color:var(--primary-blue)}.popular-item:nth-child(3){border-left-color:var(--primary-green)}.popular-item:nth-child(4){border-left-color:var(--accent-red)}.popular-item:nth-child(5){border-left-color:var(--primary-orange)}.popular-item:hover{transform:translateX(5px);box-shadow:0 5px 20px rgb(0 0 0 / .1)}.popular-item h4{font-family:'M PLUS Rounded 1c',sans-serif;font-size:18px;font-weight:700;margin-bottom:8px}.popular-item p{color:var(--text-gray);font-size:14px}.tools-section{padding:80px 0;background:var(--bg-light)}.tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px}.tool-card{background:linear-gradient(135deg,#667EEA 0%,#764BA2 100%);border-radius:20px;padding:40px 30px;text-align:center;color:#fff;transition:all 0.4s ease;cursor:pointer;position:relative;overflow:hidden;text-decoration:none;display:block}.tool-card:nth-child(2){background:linear-gradient(135deg,#F093FB 0%,#F5576C 100%)}.tool-card:nth-child(3){background:linear-gradient(135deg,#4FACFE 0%,#00F2FE 100%)}.tool-card:nth-child(4){background:linear-gradient(135deg,#43E97B 0%,#38F9D7 100%)}.tool-card::before{content:'';position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgb(255 255 255 / .2),transparent);transition:transform 0.6s ease}.tool-card:hover::before{transform:translate(-25%,-25%)}.tool-card:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 15px 40px rgb(0 0 0 / .2)}.tool-icon{font-size:48px;margin-bottom:20px}.tool-card h4{font-family:'M PLUS Rounded 1c',sans-serif;font-size:22px;font-weight:700;margin-bottom:10px}.cta-section{padding:100px 0;background:linear-gradient(135deg,var(--primary-blue),var(--primary-green));color:#fff;text-align:center;position:relative;overflow:hidden}.cta-section::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="2" fill="white" opacity="0.1"/></svg>');opacity:.3}.cta-content{position:relative;z-index:1}.cta-section h2{font-family:'M PLUS Rounded 1c',sans-serif;font-size:42px;font-weight:900;margin-bottom:20px}.cta-section p{font-size:20px;margin-bottom:40px;opacity:.95}.cta-features{display:flex;justify-content:center;gap:40px;margin-bottom:40px;flex-wrap:wrap}.cta-feature{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:500}.btn-white{background:#fff;color:var(--primary-blue);padding:18px 50px;font-size:20px}.btn-white:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgb(255 255 255 / .3)}.stats-section{padding:80px 0;background:var(--bg-cream)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;text-align:center}.stat-item{animation:fadeInUp 0.8s ease-out both}.stat-number{font-family:'M PLUS Rounded 1c',sans-serif;font-size:56px;font-weight:900;background:linear-gradient(135deg,var(--primary-orange),var(--primary-blue));-webkit-background-clip:text;-webkit-text-fill-color:#fff0;margin-bottom:10px}.stat-label{font-size:18px;color:var(--text-gray);font-weight:500}footer.site-footer{background:#2C3E50;color:#fff;padding:60px 0 30px}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px;margin-bottom:40px}.footer-section h5{font-family:'M PLUS Rounded 1c',sans-serif;font-size:18px;font-weight:700;margin-bottom:20px}.footer-section ul{list-style:none}.footer-section a{color:rgb(255 255 255 / .8);text-decoration:none;display:block;margin-bottom:10px;transition:all 0.3s ease}.footer-section a:hover{color:#fff;transform:translateX(5px)}.footer-bottom{text-align:center;padding-top:30px;border-top:1px solid rgb(255 255 255 / .1);color:rgb(255 255 255 / .6)}.content-area{padding:80px 0}.entry-content{max-width:800px;margin:0 auto;padding:40px;background:#fff;border-radius:15px;box-shadow:0 4px 20px rgb(0 0 0 / .08)}.entry-title{font-family:'M PLUS Rounded 1c',sans-serif;font-size:36px;font-weight:900;margin-bottom:20px;color:var(--text-dark)}.entry-content p{margin-bottom:20px}.entry-content h2{font-family:'M PLUS Rounded 1c',sans-serif;font-size:28px;font-weight:700;margin:40px 0 20px;color:var(--primary-blue)}.entry-content h3{font-family:'M PLUS Rounded 1c',sans-serif;font-size:24px;font-weight:700;margin:30px 0 15px;color:var(--text-dark)}.fade-in{opacity:0;transform:translateY(30px);animation:fadeInUp 0.8s ease-out forwards}.fade-in-delay-1{animation-delay:0.2s}.fade-in-delay-2{animation-delay:0.4s}.fade-in-delay-3{animation-delay:0.6s}@media (max-width:768px){.hamburger{display:flex!important}.header-wrapper{width:100%}.logo-link svg{width:280px!important;height:auto!important}.nav-links{position:fixed!important;top:0!important;right:-100%!important;width:280px!important;height:100vh!important;background:white!important;flex-direction:column!important;padding:80px 20px 20px!important;box-shadow:-2px 0 10px rgb(0 0 0 / .1)!important;transition:right 0.3s ease!important;z-index:1000!important;overflow-y:auto!important;gap:0!important}.nav-links.active{right:0!important}.nav-links li{margin:0!important;padding:0!important;border-bottom:1px solid #f0f0f0!important;width:100%!important}.nav-links li:last-child{border-bottom:none!important}.nav-links li a{display:block!important;padding:15px 10px!important;font-size:16px!important;color:#333!important;text-decoration:none!important}.nav-links li a::after{display:none!important}.nav-links li a:hover{background:#f5f5f5!important;border-radius:8px!important}.nav-links li a.cta-nav{background:linear-gradient(135deg,#FF9500,#0066CC)!important;color:white!important;text-align:center!important;padding:15px 20px!important;border-radius:30px!important;margin:10px!important}.nav-links li a.cta-nav:hover{transform:translateY(-2px)!important;box-shadow:0 4px 15px rgb(0 102 204 / .3)!important}.nav-links li.mobile-only{display:block!important}.nav-links li.mobile-only:first-of-type{margin-top:5px!important;border-top:2px solid #e0e0e0!important;padding-top:5px!important}.hero h1{font-size:36px}.hero .subtitle{font-size:18px}.hero .description{font-size:16px}.section-title{font-size:32px}.grade-cards{grid-template-columns:1fr}.cta-section h2{font-size:32px}.cta-features{flex-direction:column;gap:15px}}@media (max-width:480px){.container{padding:0 12px!important}.logo-link svg{width:260px!important}.nav-links{width:250px!important}.hero{padding:40px 0 60px!important}.hero h1{font-size:28px!important;line-height:1.3!important;margin-bottom:15px!important}.hero .subtitle{font-size:16px!important;margin-bottom:10px!important}.hero .description{font-size:14px!important;margin-bottom:30px!important}.section-title{font-size:24px!important;margin-bottom:30px!important;line-height:1.4!important}.entry-content{padding:20px 15px!important}.entry-title{font-size:24px!important;line-height:1.4!important}.entry-content h2{font-size:20px!important;margin:30px 0 15px!important;line-height:1.4!important}.entry-content h3{font-size:18px!important;margin:25px 0 12px!important;line-height:1.4!important}.entry-content p{font-size:15px!important;line-height:1.8!important;margin-bottom:15px!important}.grade-card{padding:25px 20px!important}.grade-card h3{font-size:22px!important}.btn{padding:14px 30px!important;font-size:16px!important}.cta-section{padding:60px 0!important}.cta-section h2{font-size:24px!important;line-height:1.4!important}.cta-section p{font-size:16px!important}}.case-ticker-section{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:80px 0;margin:80px 0;overflow:hidden;position:relative}.case-ticker-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><defs><pattern id="grid" width="100" height="100" patternUnits="userSpaceOnUse"><path d="M 100 0 L 0 0 0 100" fill="none" stroke="rgba(255,255,255,0.05)" stroke-width="1"/></pattern></defs><rect width="100%" height="100%" fill="url(%23grid)"/></svg>');opacity:.3}.case-ticker-section .container{position:relative;z-index:1}.case-ticker-section .section-title{text-align:center;font-size:36px;font-weight:900;color:#fff;margin-bottom:15px;text-shadow:2px 2px 4px rgb(0 0 0 / .2)}.case-ticker-section .section-title .icon{font-size:42px;margin-right:10px}.case-ticker-section .section-description{text-align:center;font-size:16px;color:rgb(255 255 255 / .9);margin-bottom:50px}.ticker-wrapper{position:relative;overflow:hidden;padding:20px 0;margin:0 -20px}.ticker-track{display:flex;gap:30px;animation:ticker-scroll 60s linear infinite;width:fit-content}@keyframes ticker-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.ticker-track:hover{animation-play-state:paused}.ticker-item{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:10px;text-decoration:none;transition:transform 0.3s ease,opacity 0.3s ease;cursor:pointer}.ticker-item:hover{transform:scale(1.1)}.ticker-image{width:320px;height:180px;border-radius:15px;overflow:hidden;box-shadow:0 8px 25px rgb(0 0 0 / .3);background:#1a1a2e;transition:box-shadow 0.3s ease}.ticker-item:hover .ticker-image{box-shadow:0 12px 40px rgb(0 0 0 / .4)}.ticker-image img{width:100%;height:100%;object-fit:cover;display:block}.ticker-image .no-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);font-size:60px}.ticker-info{display:flex;flex-direction:column;align-items:center;gap:5px;max-width:320px}.ticker-year{font-size:18px;font-weight:700;color:gold;text-shadow:1px 1px 2px rgb(0 0 0 / .3)}.ticker-title{font-size:14px;font-weight:700;color:#fff;text-align:center;line-height:1.4;text-shadow:1px 1px 2px rgb(0 0 0 / .3)}.ticker-category{font-size:11px;font-weight:500;color:rgb(255 255 255 / .8);background:rgb(255 255 255 / .2);padding:3px 10px;border-radius:12px;backdrop-filter:blur(10px)}.ticker-footer{text-align:center;margin-top:50px}.view-all-btn{display:inline-block;padding:15px 40px;background:#fff;color:#667eea;font-size:16px;font-weight:700;text-decoration:none;border-radius:50px;box-shadow:0 8px 25px rgb(0 0 0 / .2);transition:all 0.3s ease}.view-all-btn:hover{background:gold;color:#333;transform:translateY(-3px);box-shadow:0 12px 35px rgb(0 0 0 / .3)}.no-cases{text-align:center;color:rgb(255 255 255 / .8);font-size:16px;padding:40px}@media (max-width:1023px){.case-ticker-section{padding:60px 0;margin:60px 0}.case-ticker-section .section-title{font-size:30px}.case-ticker-section .section-title .icon{font-size:36px}.ticker-track{gap:25px;animation-duration:50s}.ticker-image{width:256px;height:144px}.ticker-info{max-width:256px}.ticker-year{font-size:16px}.ticker-title{font-size:13px}.ticker-image .no-image{font-size:50px}}@media (max-width:767px){.case-ticker-section{padding:50px 0;margin:50px 0}.case-ticker-section .section-title{font-size:24px}.case-ticker-section .section-title .icon{font-size:28px;display:block;margin:0 0 10px 0}.case-ticker-section .section-description{font-size:14px;margin-bottom:40px}.ticker-track{gap:20px;animation-duration:40s}.ticker-image{width:192px;height:108px;border-radius:10px}.ticker-info{max-width:192px}.ticker-year{font-size:13px}.ticker-title{font-size:11px}.ticker-category{font-size:9px;padding:2px 6px}.ticker-image .no-image{font-size:35px}.ticker-footer{margin-top:40px}.view-all-btn{padding:12px 30px;font-size:14px}}.cases-hero{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);padding:80px 20px 100px;text-align:center;position:relative;overflow:hidden}.cases-hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgb(255 59 48 / .1) 0%,transparent 50%),radial-gradient(circle at 80% 50%,rgb(102 126 234 / .15) 0%,transparent 50%);pointer-events:none}.cases-hero::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg"><circle cx="30" cy="30" r="1" fill="rgba(255,255,255,0.08)"/></svg>') repeat;pointer-events:none}.cases-hero-inner{position:relative;z-index:1;max-width:700px;margin:0 auto}.cases-hero-badge{display:inline-block;background:rgb(255 59 48 / .2);border:1px solid rgb(255 59 48 / .4);color:#FF6B6B;padding:8px 24px;border-radius:30px;font-size:13px;font-weight:700;letter-spacing:3px;margin-bottom:25px}.cases-hero-title{font-family:'M PLUS Rounded 1c',sans-serif;font-size:48px;font-weight:900;color:#fff;margin-bottom:15px;letter-spacing:-1px}.cases-hero-subtitle{font-size:20px;font-weight:700;color:rgb(255 255 255 / .85);margin-bottom:15px}.cases-hero-desc{font-size:15px;color:rgb(255 255 255 / .55);line-height:1.9}.cases-tabs-wrapper{position:relative;margin-top:-30px;margin-bottom:50px;z-index:2}.cases-tabs{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;background:#fff;padding:20px 25px;border-radius:20px;box-shadow:0 10px 40px rgb(0 0 0 / .1)}.cases-tab{padding:10px 22px;border:2px solid #E0E0E0;background:#fff;color:#666;border-radius:25px;font-size:14px;font-weight:700;cursor:pointer;transition:all 0.3s ease;white-space:nowrap}.cases-tab:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgb(0 0 0 / .1)}.cases-tab.active,.cases-tab[data-category="all"].active{background:#FF3B30;border-color:#FF3B30;color:#fff}.cases-tab[data-category="flame"].active{background:#FF9500;border-color:#FF9500;color:#fff}.cases-tab[data-category="fake"].active{background:#5856D6;border-color:#5856D6;color:#fff}.cases-tab[data-category="bullying"].active{background:#AF52DE;border-color:#AF52DE;color:#fff}.cases-tab[data-category="privacy"].active{background:#06C;border-color:#06C;color:#fff}.cases-tab[data-category="fraud"].active{background:#34C759;border-color:#34C759;color:#fff}.cases-tab[data-category="crime"].active{background:#333;border-color:#333;color:#fff}.cases-year-header{display:flex;align-items:center;gap:15px;margin:50px 0 25px;padding-bottom:15px;border-bottom:3px solid #E8E8E8}.cases-year-header:first-child{margin-top:0}.cases-year-label{font-family:'M PLUS Rounded 1c',sans-serif;font-size:36px;font-weight:900;color:#222}.cases-year-count{background:#F0F0F0;color:#888;padding:4px 14px;border-radius:20px;font-size:13px;font-weight:700}.cases-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:25px;margin-bottom:20px}.case-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 15px rgb(0 0 0 / .06);transition:all 0.35s ease;text-decoration:none;display:flex;flex-direction:column;border:1px solid #F0F0F0}.case-card:hover{transform:translateY(-6px);box-shadow:0 12px 35px rgb(0 0 0 / .12);border-color:var(--card-color,#ddd)}.case-card-image{position:relative;width:100%;height:180px;overflow:hidden;background:#f5f5f5}.case-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.4s ease}.case-card:hover .case-card-image img{transform:scale(1.05)}.case-card-no-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:50px;opacity:.3}.case-card-badge{position:absolute;top:12px;left:12px;color:#fff;padding:5px 14px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:.5px}.case-card-body{padding:22px;flex:1;display:flex;flex-direction:column}.case-card-date{font-size:13px;color:#999;margin-bottom:8px}.case-card-title{font-family:'M PLUS Rounded 1c',sans-serif;font-size:18px;font-weight:700;color:#222;line-height:1.5;margin-bottom:10px}.case-card-excerpt{font-size:14px;color:#777;line-height:1.7;margin-bottom:15px;flex:1}.case-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.case-card-grades{display:flex;gap:6px;flex-wrap:wrap}.case-card-grade{color:#fff;padding:3px 10px;border-radius:10px;font-size:11px;font-weight:700}.case-card-link{font-size:13px;font-weight:700;color:var(--card-color,#0066CC);white-space:nowrap}.case-card:hover .case-card-link{text-decoration:underline}.cases-empty{text-align:center;padding:80px 20px;background:#F8F9FA;border-radius:20px;margin:30px 0}.cases-empty-icon{font-size:60px;display:block;margin-bottom:15px}.cases-empty p{font-size:18px;color:#999}.cases-stats{margin:80px 0 60px;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);border-radius:24px;padding:60px 30px;text-align:center;position:relative;overflow:hidden}.cases-stats::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgb(102 126 234 / .15),transparent 60%);pointer-events:none}.cases-stats-inner{position:relative;z-index:1}.cases-stats-number{font-family:'M PLUS Rounded 1c',sans-serif;font-size:72px;font-weight:900;color:#fff;line-height:1;margin-bottom:5px}.cases-stats-number::after{content:' 件';font-size:28px;font-weight:700;opacity:.7}.cases-stats-label{font-size:18px;font-weight:700;color:rgb(255 255 255 / .7);margin-bottom:12px}.cases-stats-desc{font-size:14px;color:rgb(255 255 255 / .45)}@media (max-width:768px){.cases-hero{padding:50px 20px 70px}.cases-hero-title{font-size:32px}.cases-hero-subtitle{font-size:17px}.cases-hero-desc{font-size:14px}.cases-tabs{padding:15px;gap:8px}.cases-tab{padding:8px 16px;font-size:13px}.cases-year-label{font-size:28px}.cases-grid{grid-template-columns:1fr;gap:20px}.case-card-image{height:160px}.case-card-body{padding:18px}.case-card-title{font-size:17px}.cases-stats{padding:40px 20px;margin:50px 0 40px}.cases-stats-number{font-size:52px}}@media (max-width:480px){.cases-hero{padding:40px 15px 60px}.cases-hero-title{font-size:26px}.cases-hero-badge{font-size:11px;padding:6px 18px}.cases-tab{padding:7px 14px;font-size:12px}.case-card-image{height:140px}}.page-section{margin-bottom:40px;padding:30px;background:#fff;border-radius:15px}.page-section h2{font-family:'M PLUS Rounded 1c',sans-serif;font-size:28px;font-weight:700;color:var(--primary-blue);margin-bottom:20px}.page-section h3{font-family:'M PLUS Rounded 1c',sans-serif;font-size:22px;font-weight:700;color:var(--text-dark);margin:30px 0 15px;padding-left:15px;border-left:4px solid var(--primary-blue)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px;margin:20px 0}.card{background:#F8F9FA;border-radius:12px;padding:25px;border-top:4px solid var(--primary-blue);transition:transform 0.3s ease,box-shadow 0.3s ease}.card:hover{transform:translateY(-3px);box-shadow:0 5px 20px rgb(0 0 0 / .1)}.card.orange{border-top-color:var(--primary-orange)}.card.green{border-top-color:var(--primary-green)}.card h4{font-family:'M PLUS Rounded 1c',sans-serif;font-size:18px;font-weight:700;margin-bottom:10px;color:var(--text-dark)}.card p{color:var(--text-gray);line-height:1.7}.two-column{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;margin:20px 0}.column-box{background:#F8F9FA;border-radius:12px;padding:25px}.column-box h4{font-family:'M PLUS Rounded 1c',sans-serif;font-size:18px;font-weight:700;margin-bottom:12px;color:var(--text-dark)}.column-box ul{padding-left:20px;color:var(--text-gray)}.column-box li{margin-bottom:8px;line-height:1.7}.info-box{background:#E3F2FD;border-left:5px solid var(--primary-blue);border-radius:8px;padding:25px;margin:20px 0}.info-box.orange{background:#FFF3E0;border-left-color:var(--primary-orange)}.info-box.green{background:#E8F5E9;border-left-color:var(--primary-green)}.info-box.red{background:#FFEBEE;border-left-color:var(--accent-red)}.info-box h4{font-family:'M PLUS Rounded 1c',sans-serif;font-size:18px;font-weight:700;margin-bottom:12px;color:var(--text-dark)}.info-box ul{padding-left:20px;color:#555}.info-box li{margin-bottom:8px;line-height:1.7}.warning-box{background:#FFF8E1;border:2px solid #FFC107;border-radius:8px;padding:20px 25px;margin:20px 0}.warning-box p{color:#555;line-height:1.7}.step-guide{display:flex;flex-direction:column;gap:15px;margin:20px 0}.step-item{background:#F8F9FA;border-radius:12px;padding:25px;border-left:5px solid var(--primary-blue);position:relative}.step-item h4{font-family:'M PLUS Rounded 1c',sans-serif;font-size:18px;font-weight:700;margin-bottom:10px;color:var(--primary-blue)}.step-item p{color:var(--text-gray);line-height:1.8}.faq-item{margin-bottom:15px;border:1px solid #E0E0E0;border-radius:10px;overflow:hidden}.faq-question{background:#F8F9FA;padding:18px 25px;font-weight:700;color:var(--text-dark);cursor:pointer}.faq-question::before{content:'Q. ';color:var(--primary-blue);font-weight:900}.faq-answer{padding:18px 25px;background:#fff;color:var(--text-gray);line-height:1.8}.faq-answer ul{padding-left:20px;margin-top:10px}.faq-answer li{margin-bottom:8px}.text-orange{color:var(--primary-orange);font-weight:700}.text-blue{color:var(--primary-blue);font-weight:700}.text-green{color:var(--primary-green);font-weight:700}.styled-table{width:100%;border-collapse:collapse;margin:20px 0;font-size:16px;border-radius:10px;overflow:hidden}.styled-table thead th{background:var(--primary-blue);color:#fff;padding:15px;text-align:left;font-weight:700}.styled-table tbody td{padding:15px;border-bottom:1px solid #E0E0E0}.styled-table tbody tr:nth-child(even){background:#F8F9FA}.btn-large{display:inline-block;padding:16px 40px;font-size:18px;font-weight:700;border-radius:30px;text-decoration:none;background:linear-gradient(135deg,var(--primary-orange),var(--primary-blue));color:#fff;transition:all 0.3s ease;box-shadow:0 4px 15px rgb(0 102 204 / .3)}.btn-large:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgb(0 102 204 / .4)}.btn-outline{display:inline-block;padding:12px 30px;font-size:16px;font-weight:700;border-radius:25px;text-decoration:none;background:#fff;color:var(--primary-blue);border:2px solid var(--primary-blue);transition:all 0.3s ease}.btn-outline:hover{background:var(--primary-blue);color:#fff;transform:translateY(-2px)}.spacer-medium{height:40px}.spacer-large{height:60px}.contact-box{margin:20px 0}.contact-item{padding:10px 0;font-size:16px;color:var(--text-dark)}.card [style*="display: flex"][style*="flex-wrap: wrap"] span,.column-box [style*="display: flex"][style*="flex-wrap: wrap"] span{white-space:nowrap}@media (max-width:768px){.page-section{padding:20px 15px}.page-section h2{font-size:22px}.page-section h3{font-size:18px}.card-grid{grid-template-columns:1fr;gap:15px}.two-column{grid-template-columns:1fr;gap:15px}.card{padding:20px 15px}.column-box{padding:20px 15px}.info-box{padding:18px 15px}.warning-box{padding:15px}.step-item{padding:20px 15px}.faq-question{padding:15px}.faq-answer{padding:15px}.card>div[style*="border-radius: 12px"],.column-box>div[style*="border-radius: 12px"]{padding:16px 12px!important}.card a[download],.column-box a[download]{display:block!important;text-align:center!important;padding:12px 20px!important;font-size:14px!important}.btn-large{padding:14px 30px;font-size:16px}.btn-outline{padding:10px 24px;font-size:14px}.styled-table{font-size:14px}.styled-table thead th,.styled-table tbody td{padding:10px 8px}}@media (max-width:480px){.page-section{padding:15px 12px;margin-bottom:25px}.page-section h2{font-size:20px}.card{padding:15px 12px}.column-box{padding:15px 12px}.spacer-medium{height:25px}.spacer-large{height:35px}}@media (hover:none){.ticker-item:active{transform:scale(1.05)}.ticker-track:hover{animation-play-state:running}}@media (prefers-reduced-motion:reduce){.ticker-track{animation:none}.ticker-item:hover{transform:none}}.home header.site-header,.home .hero::before,.home .hero::after,.home .hero h1,.home .hero .subtitle,.home .hero .description,.home .hero-buttons,.home .fade-in,.home .fade-in-delay-1,.home .fade-in-delay-2,.home .fade-in-delay-3{animation:none!important}.hero{min-height:300px}