*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{margin:0;padding:0}ul,ol{list-style:none}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto;display:block}.logo img,.logo-img,.header .logo img,.header img.logo-img{max-width:none!important}button{border:none;background:none;cursor:pointer;font-family:inherit}table{border-collapse:collapse;width:100%}:root{--primary-color: #ce722a;--primary-dark: #a55b22;--primary-vivid: #e37d2e;--text-color: #333333;--bg-color: #ffffff;--bg-secondary: rgba(0, 0, 0, .05);--border-color: #e0e0e0;--shadow: 0 2px 8px rgba(0, 0, 0, .1);--shadow-hover: 0 4px 12px rgba(0, 0, 0, .15);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;--font-size-base: 16px;--line-height-base: 1.6;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 3rem;--spacing-xl: 4rem;--breakpoint-mobile: 599px;--breakpoint-tablet: 782px}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--text-color);background-color:var(--bg-color)}h1{font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:var(--spacing-md)}h2{font-size:2rem;font-weight:700;line-height:1.3;margin-bottom:var(--spacing-sm)}h3{font-size:1.5rem;font-weight:700;line-height:1.4;margin-bottom:var(--spacing-sm)}h4{font-size:1.25rem;font-weight:700;margin-bottom:var(--spacing-xs)}p{margin-bottom:var(--spacing-sm)}.container{max-width:1200px;margin:0 auto;margin-top:var(--spacing-xl);padding:0 var(--spacing-sm)}.header{background-color:var(--bg-color);box-shadow:var(--shadow);position:sticky;top:0;z-index:1000}.header-inner{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;max-width:1600px;margin:0 auto;gap:var(--spacing-md)}.logo{display:flex;align-items:center;flex-shrink:0;height:auto}.logo a{display:flex;align-items:center;text-decoration:none;height:100%;width:100%}.header .logo-img,.header img.logo-img,.logo .logo-img,.logo img[class*=logo],.logo-img{height:72px!important;width:auto!important;max-width:none!important;min-width:168px!important;object-fit:contain!important;transform:scale(1)!important;transform-origin:left center!important}.nav{display:flex;gap:var(--spacing-md);align-items:center;flex:1;justify-content:flex-end}.nav-list{display:flex;gap:.5rem;flex-wrap:nowrap;white-space:nowrap;list-style:none;margin:0;padding:0;align-items:center}.nav-list li{display:flex;align-items:center}.nav-link{padding:var(--spacing-xs) .5rem;color:#333;transition:color .3s;font-family:Lato,Noto Sans JP,ヒラギノ角ゴ ProN,Hiragino Kaku Gothic ProN,メイリオ,Meiryo,ＭＳ Ｐゴシック,MS PGothic,sans-serif;font-weight:700;font-size:14px;line-height:20px;white-space:nowrap;display:flex;align-items:center;gap:.25rem}.nav-link:hover{color:var(--primary-color)}.nav-item-with-submenu{position:relative}.submenu-arrow{font-size:.7rem;transition:transform .3s}.nav-item-with-submenu:hover .submenu-arrow{transform:rotate(180deg)}.nav-submenu{position:absolute;top:100%;left:0;background-color:var(--bg-color);box-shadow:0 4px 6px #0000001a;border-radius:4px;list-style:none;margin:0;padding:var(--spacing-xs) 0;width:max-content;opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .3s,visibility .3s,transform .3s;z-index:1000;margin-top:var(--spacing-xs)}.nav-item-with-submenu:hover .nav-submenu,.nav-submenu.active{opacity:1;visibility:visible;transform:translateY(0)}.nav-submenu-link{display:block;padding:var(--spacing-sm) var(--spacing-md);color:var(--text-color);text-decoration:none;transition:background-color .3s,color .3s;font-size:.9rem;white-space:nowrap;box-sizing:border-box}.nav-submenu-link:hover{background-color:var(--primary-color);color:#fff}.language-switcher{position:relative}.language-btn{padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--bg-secondary);border-radius:4px;font-size:.9rem;display:flex;align-items:center;gap:.5rem}.language-menu{position:absolute;top:100%;right:0;background-color:var(--bg-color);box-shadow:var(--shadow);border-radius:4px;margin-top:.5rem;min-width:150px;display:none}.language-menu.active{display:block}.language-menu a,.language-menu button{display:block;width:100%;padding:var(--spacing-xs) var(--spacing-sm);transition:background-color .3s;text-align:left;border:none;background:none;cursor:pointer;font-family:inherit;font-size:inherit;color:inherit}.language-menu a:hover,.language-menu button:hover{background-color:var(--bg-secondary)}.mobile-menu-btn{display:none;flex-direction:column;gap:4px;padding:var(--spacing-xs)}.mobile-menu-btn span{width:25px;height:2px;background-color:var(--text-color);transition:all .3s}.hero{position:relative;height:500px;overflow:hidden}.hero-slider{position:relative;width:100%;height:100%}.hero-slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity 1s ease-in-out}.hero-slide.active{opacity:1}.hero-slide img{width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.7),transparent);padding:var(--spacing-lg);color:#fff}.hero-controls{position:absolute;bottom:var(--spacing-md);left:50%;transform:translate(-50%);display:flex;gap:var(--spacing-xs)}.hero-dot{width:12px;height:12px;border-radius:50%;background-color:#ffffff80;cursor:pointer;transition:background-color .3s}.hero-dot.active{background-color:var(--primary-color)}.main-content{padding:var(--spacing-xl) 0}.section{margin-bottom:var(--spacing-xl)}.section-title{text-align:center;color:var(--primary-color);margin-bottom:var(--spacing-lg)}.card{background-color:var(--bg-color);border-radius:8px;padding:var(--spacing-md);box-shadow:var(--shadow);transition:box-shadow .3s}.card:hover{box-shadow:var(--shadow-hover)}.btn{display:inline-block;padding:var(--spacing-xs) var(--spacing-md);background-color:var(--primary-color);color:#fff;border-radius:4px;transition:background-color .3s;font-weight:500}.btn:hover{background-color:var(--primary-dark)}.btn-secondary{background-color:var(--bg-secondary);color:var(--text-color)}.btn-secondary:hover{background-color:var(--border-color)}.table-wrapper{overflow-x:auto;margin:var(--spacing-md) 0}table{width:100%;border-collapse:collapse;background-color:var(--bg-color)}th,td{padding:var(--spacing-sm);text-align:left;border-bottom:1px solid var(--border-color)}th{background-color:var(--bg-secondary);font-weight:700}tr:hover{background-color:var(--bg-secondary)}.footer{background-color:var(--bg-color);color:var(--text-color);padding:var(--spacing-lg) 0;margin-top:var(--spacing-xl)}.footer-inner{max-width:1200px;margin:0 auto;padding:0 var(--spacing-sm)}.footer-nav{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.footer-nav-list{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.footer-nav-link{color:var(--text-color);text-decoration:none;padding:var(--spacing-xs) var(--spacing-sm);transition:color .3s;font-size:.95rem}.footer-nav-link:hover{color:var(--primary-color)}.footer-nav-item-with-submenu{position:relative}.footer-nav-submenu{position:absolute;bottom:100%;left:0;background-color:var(--bg-color);box-shadow:0 -4px 6px #0000001a;border-radius:4px;list-style:none;margin:0;padding:var(--spacing-xs) 0;min-width:200px;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .3s,visibility .3s,transform .3s;z-index:1000;margin-bottom:var(--spacing-xs);white-space:nowrap}.footer-nav-item-with-submenu:hover .footer-nav-submenu{opacity:1;visibility:visible;transform:translateY(0)}.footer-nav-submenu-link{display:block;padding:var(--spacing-sm) var(--spacing-md);color:var(--text-color);text-decoration:none;transition:background-color .3s,color .3s;font-size:.9rem}.footer-nav-submenu-link:hover{background-color:var(--primary-color);color:#fff}.footer-nav-separator{color:var(--border-color);padding:0 var(--spacing-xs);-webkit-user-select:none;user-select:none}.footer-content{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg);margin-bottom:var(--spacing-md);flex-wrap:wrap}.footer-left{flex:1;min-width:300px}.footer-logo-section{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.footer-logo{height:120px;width:auto}.footer-school-name{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.school-name-line{font-size:.85rem;font-weight:700;color:#c9a843;letter-spacing:.05em;line-height:1.3;display:flex;align-items:center;gap:.25rem}.cherry-blossom{font-size:1.2rem}.footer-contact-info{margin-bottom:var(--spacing-md)}.footer-contact-info p{color:var(--text-color);margin-bottom:var(--spacing-xs);font-size:.95rem;line-height:1.6}.footer-social{display:flex;gap:var(--spacing-xs)}.social-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:var(--primary-color);border-radius:50%;transition:background-color .3s;text-decoration:none}.social-icon:hover{background-color:var(--primary-dark)}.social-icon svg{width:20px;height:20px}.footer-right{display:flex;align-items:center}.footer-section h3{color:var(--primary-color);margin-bottom:var(--spacing-sm)}.footer-section p,.footer-section a{color:#fffc;margin-bottom:var(--spacing-xs)}.footer-section a:hover{color:var(--primary-color)}.footer-bottom{text-align:center;padding-top:var(--spacing-md);border-top:1px solid var(--border-color);color:#0009}.announcement-section{background-color:var(--primary-color);color:#fff;padding:var(--spacing-lg);margin:var(--spacing-xl) 0;border-radius:8px}.announcement-section h2{color:#fff;margin-bottom:var(--spacing-md)}.announcement-list{list-style:disc;padding-left:var(--spacing-md)}.announcement-list li{margin-bottom:var(--spacing-xs)}.recruitment-section{position:relative;margin:var(--spacing-xl) 0;min-height:500px;border-radius:16px;overflow:hidden}.recruitment-background{position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(/assets/images/1900x900-002.jpg);background-size:cover;background-position:center;filter:blur(8px);transform:scale(1.1)}.recruitment-overlay{position:relative;background-color:#ffffffd9;padding:var(--spacing-xl);margin:var(--spacing-md);border-radius:16px;text-align:center;z-index:1}.recruitment-title{font-size:2.5rem;font-weight:700;color:#333;margin-bottom:var(--spacing-xs)}.recruitment-subtitle{font-size:1.2rem;font-weight:400;color:#333;margin-bottom:var(--spacing-md);letter-spacing:.1em}.recruitment-text-primary{font-size:1.3rem;color:var(--primary-color);margin-bottom:var(--spacing-sm);font-weight:500;line-height:1.8}.recruitment-text-secondary{font-size:1rem;color:#333;margin-bottom:var(--spacing-xs);line-height:1.6}.btn-recruitment{background-color:var(--primary-color);color:#fff;padding:var(--spacing-sm) var(--spacing-lg);border-radius:8px;margin-top:var(--spacing-md);font-size:1.1rem;font-weight:500;transition:background-color .3s}.btn-recruitment:hover{background-color:var(--primary-dark);color:#fff}.news-section{margin:var(--spacing-xl) 0}.news-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-md)}.news-item{background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;padding:var(--spacing-md);transition:box-shadow .3s}.news-item:hover{box-shadow:var(--shadow)}.news-date{color:var(--primary-color);font-size:.9rem;margin-bottom:var(--spacing-xs)}.news-title{font-weight:700;margin-bottom:var(--spacing-xs)}.form-group{margin-bottom:var(--spacing-md)}.form-label{display:block;margin-bottom:var(--spacing-xs);font-weight:500}.form-input,.form-textarea,.form-select{width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:4px;font-family:inherit;font-size:inherit}.form-textarea{min-height:150px;resize:vertical}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #ce722a1a}.form-message{padding:var(--spacing-md);border-radius:4px;margin-bottom:var(--spacing-md)}.form-message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.form-message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.btn:disabled{opacity:.6;cursor:not-allowed}.btn.loading{position:relative;color:transparent}.btn.loading:after{content:"";position:absolute;width:16px;height:16px;top:50%;left:50%;margin-left:-8px;margin-top:-8px;border:2px solid #ffffff;border-radius:50%;border-top-color:transparent;animation:spinner .6s linear infinite}@keyframes spinner{to{transform:rotate(360deg)}}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-top:var(--spacing-md)}.contact-map{width:100%;height:600px;border-radius:8px;overflow:hidden}.contact-map iframe{width:100%;height:100%;border:0}.contact-info{display:flex;flex-direction:column;gap:var(--spacing-md)}.contact-item{display:flex;align-items:flex-start;gap:var(--spacing-sm)}.contact-item-icon{flex-shrink:0;width:24px;height:24px;margin-top:2px}.contact-item-content{flex:1}.contact-item h3{font-size:1.25rem;margin-bottom:var(--spacing-xs);font-weight:600}.contact-item p{margin-bottom:var(--spacing-xs);line-height:1.6}.contact-item ul{list-style:none;padding:0;margin:0}.contact-item li{margin-bottom:var(--spacing-xs);line-height:1.6}.contact-button{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--primary-color);color:#fff;text-decoration:none;border-radius:4px;font-weight:500;transition:background-color .3s;margin-top:var(--spacing-xs)}.contact-button:hover{background-color:var(--primary-dark)}.contact-button svg{width:20px;height:20px;fill:currentColor}.contact-button-text{display:block;font-size:.9rem;margin-top:4px;opacity:.9}@media (max-width: 768px){.contact-layout{grid-template-columns:1fr}.contact-map{height:400px}}.text-center{text-align:center}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.container .section .education-layout{display:grid;grid-template-columns:1fr 2fr;gap:var(--spacing-lg);align-items:start;margin-top:var(--spacing-md)}.container .section .education-image{position:sticky;top:var(--spacing-md)}.container .section .education-image img{width:100%;height:auto;border-radius:8px;object-fit:cover;display:block}.container .section .education-content{display:block}.container .section .education-content h2{margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm)}.container .section .education-content h2:first-child{margin-top:0}.container .section .section-title{font-size:1.8rem}@media screen and (max-width: 768px){.container .section .education-layout{grid-template-columns:1fr;gap:var(--spacing-md)}.container .section .education-image{position:static}}@media screen and (min-width: 769px){.container .section .education-layout{display:grid!important;grid-template-columns:1fr 2fr!important}}@media (max-width: 599px){h1{font-size:1.75rem}h2{font-size:1.5rem}.header-inner{flex-wrap:wrap}.nav{order:3;width:100%;display:none}.nav.active{display:block}.nav-list{flex-direction:column;gap:0}.nav-link{display:block;padding:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.nav-submenu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;margin:0;padding-left:var(--spacing-md);background-color:#0000000d}.nav-submenu-link{padding:var(--spacing-xs) var(--spacing-sm);font-size:.85rem}.mobile-menu-btn{display:flex}.hero{height:300px}.hero-language-switcher{bottom:var(--spacing-xs);right:var(--spacing-xs)}.container{padding:0 var(--spacing-xs)}.news-list{grid-template-columns:1fr}.footer-content{flex-direction:column}.footer-left{width:100%}.footer-right{width:100%;justify-content:center}.footer-logo-section{flex-direction:column;align-items:flex-start}.school-name-line{font-size:.75rem}.footer-nav-list{gap:.25rem}.footer-nav-link{font-size:.85rem;padding:var(--spacing-xs) .5rem}.footer-nav-separator{padding:0 .25rem}table{font-size:.9rem}th,td{padding:var(--spacing-xs)}.table-mobile-stack{display:block}.table-mobile-stack thead{display:none}.table-mobile-stack tr{display:block;margin-bottom:var(--spacing-sm);border:1px solid var(--border-color);border-radius:4px;padding:var(--spacing-sm)}.table-mobile-stack td{display:block;text-align:right;padding:var(--spacing-xs) 0;border-bottom:none}.table-mobile-stack td:before{content:attr(data-label) ": ";float:left;font-weight:700}.recruitment-section{min-height:400px;margin:var(--spacing-md) 0}.recruitment-overlay{padding:var(--spacing-md);margin:var(--spacing-sm)}.recruitment-title{font-size:1.8rem}.recruitment-subtitle{font-size:1rem}.recruitment-text-primary{font-size:1.1rem}.recruitment-text-secondary{font-size:.9rem}}@media (min-width: 600px) and (max-width: 781px){h1{font-size:2rem}h2{font-size:1.75rem}.hero{height:400px}.news-list{grid-template-columns:repeat(2,1fr)}.recruitment-section{min-height:450px}.recruitment-overlay{padding:var(--spacing-lg)}.recruitment-title{font-size:2.2rem}.recruitment-text-primary{font-size:1.2rem}}@media (min-width: 782px){.hero{height:500px}.news-list{grid-template-columns:repeat(3,1fr)}.nav-list{gap:.75rem}.nav-link{padding:var(--spacing-xs) .75rem}}.header .logo-img,.header img.logo-img,.logo .logo-img,.logo img[class*=logo],.logo img[src*=saitama],.logo-img{height:72px!important;width:auto!important;max-width:none!important;min-width:168px!important;object-fit:contain!important;transform:scale(1)!important;transform-origin:left center!important;display:block!important}.logo{min-height:auto!important;display:flex!important;align-items:center!important;padding:0!important}.logo a{height:auto!important;width:auto!important;display:flex!important;align-items:center!important;padding:0!important}.header-inner{min-height:auto!important;padding:.75rem 1.5rem!important;align-items:center!important}@media (max-width: 768px){.header .logo-img,.header img.logo-img,.logo .logo-img,.logo img[class*=logo],.logo img[src*=saitama],.logo-img{height:60px!important;min-width:144px!important;transform:scale(1)!important}.logo{min-height:auto!important}.header-inner{min-height:auto!important;padding:.75rem 1rem!important}}.app{min-height:100vh;display:flex;flex-direction:column}
