*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--tiffany: #81D8D0;--tiffany-dark: #5BBFB7;--tiffany-light: #B8EBE7;--tiffany-pale: #EAF9F8;--white: #FFFFFF;--off-white: #F7FFFE;--gray-100: #F4F4F4;--gray-400: #9CA3AF;--gray-600: #4B5563;--gray-900: #111827;--font-sans: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--radius: 12px;--shadow-sm: 0 2px 8px rgba(0,0,0,.06);--shadow-md: 0 8px 32px rgba(0,0,0,.1);--shadow-lg: 0 20px 60px rgba(0,0,0,.14);--transition: .25s ease}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);color:var(--gray-900);background:var(--white);line-height:1.7;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:100%;max-width:1100px;margin:0 auto;padding:0 24px}.section-tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--tiffany-dark);background:var(--tiffany-pale);padding:4px 14px;border-radius:99px;margin-bottom:12px}.section-title{font-size:clamp(1.5rem,3vw,2.1rem);font-weight:800;line-height:1.25;letter-spacing:-.02em;color:var(--gray-900);margin-bottom:16px}.section-lead{font-size:.95rem;color:var(--gray-600);max-width:560px}section{padding:88px 0}#header{position:fixed;top:0;left:0;right:0;z-index:100;background:#ffffffeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(129,216,208,.2);transition:box-shadow var(--transition)}#header.scrolled{box-shadow:var(--shadow-sm)}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:68px}.nav-logo{display:flex;align-items:center;gap:10px}.nav-logo-icon{width:36px;height:36px;background:var(--tiffany);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;overflow:hidden}.nav-logo-img{width:100%;height:100%;object-fit:contain;mix-blend-mode:lighten;filter:contrast(1.7) brightness(1.2)}.nav-logo-text{font-size:1rem;font-weight:800;letter-spacing:-.01em;line-height:1.2}.nav-logo-text span{color:var(--tiffany-dark)}.nav-links{display:flex;align-items:center;gap:8px;list-style:none;padding:0;margin:0}.nav-links li{display:flex;align-items:center}.nav-links a{font-size:.85rem;font-weight:600;color:var(--gray-600);padding:8px 14px;border-radius:8px;transition:color var(--transition),background var(--transition)}.nav-links a:hover{color:var(--gray-900);background:var(--tiffany-pale)}.nav-cta{background:var(--tiffany)!important;color:var(--gray-900)!important;padding:9px 20px!important;border-radius:99px!important;font-weight:700!important;transition:background var(--transition),transform var(--transition)!important}.nav-cta:hover{background:var(--tiffany-dark)!important;transform:translateY(-1px)}.nav-hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;background:none;border:none;cursor:pointer;padding:6px;border-radius:8px;transition:background var(--transition)}.nav-hamburger:hover{background:var(--tiffany-pale)}.nav-hamburger span{display:block;width:22px;height:2px;background:var(--gray-900);border-radius:2px;transition:transform var(--transition),opacity var(--transition)}.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-hamburger.open span:nth-child(2){opacity:0}.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-mobile{display:none;flex-direction:column;gap:4px;padding:16px 24px 20px;border-top:1px solid var(--tiffany-light);background:var(--white)}.nav-mobile.open{display:flex}.nav-mobile a{font-size:.9rem;font-weight:600;color:var(--gray-600);padding:12px 16px;border-radius:10px;transition:color var(--transition),background var(--transition)}.nav-mobile a:hover{color:var(--gray-900);background:var(--tiffany-pale)}.nav-mobile .nav-cta-mobile{margin-top:8px;background:var(--tiffany);color:var(--gray-900)!important;text-align:center;padding:14px!important;border-radius:12px!important;font-weight:700!important}#hero{min-height:100svh;padding-top:68px;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(135deg,#f7fffeeb,#eaf9f8e6 60%,#b8ebe7e6),url(https://images.unsplash.com/photo-1546519638-68e109498ffc?w=1920&q=80&auto=format&fit=crop) center/cover no-repeat}.hero-bg-circle{position:absolute;border-radius:50%;pointer-events:none}.hero-bg-circle-1{width:600px;height:600px;background:radial-gradient(circle,var(--tiffany-light) 0%,transparent 70%);top:-100px;right:-150px;opacity:.6}.hero-bg-circle-2{width:400px;height:400px;background:radial-gradient(circle,var(--tiffany) 0%,transparent 70%);bottom:-80px;left:-100px;opacity:.25}.hero-inner{display:flex;flex-direction:column;gap:48px;align-items:center;text-align:center;position:relative;z-index:1;padding:60px 0}.hero-visual{order:1;width:100%}.hero-content{order:2;max-width:720px}.hero-tag,.hero-actions,.hero-stats{justify-content:center}.hero-desc{margin-left:auto;margin-right:auto}.hero-tag{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--tiffany-dark);margin-bottom:20px}.hero-tag:before{content:none}.hero-title{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:900;line-height:1.15;letter-spacing:-.03em;margin-bottom:20px}.hero-title .accent{color:var(--tiffany-dark)}.hero-desc{font-size:1rem;color:var(--gray-600);margin-bottom:36px;max-width:440px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--tiffany);color:var(--gray-900);font-size:.9rem;font-weight:700;padding:14px 28px;border-radius:99px;border:none;cursor:pointer;transition:background var(--transition),transform var(--transition),box-shadow var(--transition);box-shadow:0 4px 20px #81d8d066}.btn-primary:hover{background:var(--tiffany-dark);transform:translateY(-2px);box-shadow:0 8px 28px #81d8d080}.btn-secondary{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--gray-600);font-size:.9rem;font-weight:600;padding:14px 24px;border-radius:99px;border:1.5px solid var(--gray-400);cursor:pointer;transition:border-color var(--transition),color var(--transition),transform var(--transition)}.btn-secondary:hover{border-color:var(--tiffany-dark);color:var(--gray-900);transform:translateY(-2px)}.hero-visual{display:flex;justify-content:center;align-items:center}.hero-card{width:100%;max-width:100%;height:280px;padding:0;background:linear-gradient(135deg,var(--gray-900) 0%,#1a2e2e 100%);border-radius:28px;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.hero-logo{position:absolute;height:140%;width:auto;max-width:none;top:-8%;left:50%;transform:translate(-50%);display:block;mix-blend-mode:lighten;filter:contrast(1.6) brightness(1.15)}.hero-card-ball{font-size:6rem;filter:drop-shadow(0 8px 24px rgba(0,0,0,.15))}.hero-card-label{font-size:1.1rem;font-weight:800;color:var(--white);letter-spacing:.04em;text-shadow:0 2px 8px rgba(0,0,0,.1)}.hero-card:before{content:none}.hero-card:after{content:none}.hero-stats{display:flex;gap:24px;margin-top:40px}.stat{text-align:left}.stat-num{font-size:1.6rem;font-weight:900;color:var(--tiffany-dark);line-height:1}.stat-label{font-size:.75rem;color:var(--gray-400);margin-top:4px}#about{background:var(--white)}.about-header{text-align:center;margin-bottom:56px}.about-header .section-lead{margin-left:auto;margin-right:auto}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.about-card{background:linear-gradient(180deg,var(--white) 0%,var(--tiffany-pale) 100%);border:1px solid var(--tiffany-light);border-radius:20px;padding:36px 32px;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition),transform var(--transition)}.about-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.about-card-icon{font-size:2rem;width:56px;height:56px;background:var(--white);border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:var(--shadow-sm)}.about-card-label{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--tiffany-dark);margin-bottom:4px}.about-card-title{font-size:1.25rem;font-weight:800;margin-bottom:12px}.about-card-text{font-size:.88rem;color:var(--gray-600);line-height:1.8;margin-bottom:16px}.about-card-text strong{color:var(--tiffany-dark);font-weight:700}.about-card-list{list-style:none;display:flex;flex-direction:column;gap:8px}.about-card-list li{font-size:.82rem;color:var(--gray-600);padding-left:22px;position:relative}.about-card-list li:before{content:"✓";position:absolute;left:0;color:var(--tiffany-dark);font-weight:900}.mission-block{margin-top:18px;padding-top:18px;border-top:1px solid var(--tiffany-light)}.mission-block:first-of-type{margin-top:8px;padding-top:0;border-top:none}.mission-subtitle{font-size:.95rem;font-weight:800;color:var(--tiffany-dark);margin-bottom:8px;display:inline-flex;align-items:center;gap:8px}.mission-subtitle:before{content:"";width:6px;height:18px;background:var(--tiffany);border-radius:3px}.mission-text{font-size:.88rem;color:var(--gray-600);line-height:1.8}.coach-list{display:flex;flex-direction:column;gap:16px}.coach{display:flex;gap:14px;align-items:flex-start;padding:14px;background:var(--white);border-radius:12px;border:1px solid var(--gray-100)}.coach-avatar{width:44px;height:44px;background:linear-gradient(135deg,var(--tiffany) 0%,var(--tiffany-dark) 100%);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:800;flex-shrink:0;letter-spacing:0}.coach-name{font-size:.9rem;font-weight:700;margin-bottom:3px}.coach-name span{font-size:.72rem;font-weight:600;color:var(--tiffany-dark);background:var(--tiffany-pale);padding:2px 8px;border-radius:99px;margin-left:6px}.coach-bio{font-size:.78rem;color:var(--gray-600);line-height:1.6}#scrimmage{background:var(--white)}.scrimmage-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-top:56px}.scrimmage-visual{background:linear-gradient(135deg,var(--tiffany-pale),var(--tiffany-light));border-radius:var(--radius);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;font-size:5rem;box-shadow:var(--shadow-md)}.info-card-list{display:flex;flex-direction:column;gap:16px}.info-card{background:var(--gray-100);border-radius:var(--radius);padding:20px 24px;display:flex;gap:16px;align-items:flex-start;transition:box-shadow var(--transition),transform var(--transition)}.info-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.info-card-icon{font-size:1.5rem;flex-shrink:0;width:44px;height:44px;background:var(--white);border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}.info-card-title{font-size:.9rem;font-weight:700;margin-bottom:4px}.info-card-text{font-size:.82rem;color:var(--gray-600);line-height:1.6}#family{background:var(--tiffany-pale)}.family-header{margin-bottom:48px}.family-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.family-card{background:var(--white);border-radius:20px;padding:32px 24px;text-align:center;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition),transform var(--transition)}.family-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.family-card-icon{width:64px;height:64px;background:var(--tiffany-pale);border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin:0 auto 16px}.family-card-title{font-size:1rem;font-weight:700;margin-bottom:8px}.family-card-text{font-size:.82rem;color:var(--gray-600);line-height:1.7}.family-card-link{display:inline-flex;align-items:center;gap:6px;margin-top:16px;font-size:.82rem;font-weight:700;color:var(--tiffany-dark);transition:gap var(--transition)}.family-card-link:hover{gap:10px}#schedule{background:var(--white)}.schedule-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:40px;flex-wrap:wrap;gap:16px}.schedule-list{display:flex;flex-direction:column;gap:12px}.schedule-item{display:grid;grid-template-columns:90px 1fr auto;gap:20px;align-items:center;background:var(--gray-100);border-radius:var(--radius);padding:18px 24px;border-left:4px solid transparent;transition:border-color var(--transition),box-shadow var(--transition)}.schedule-item:hover{border-left-color:var(--tiffany);box-shadow:var(--shadow-sm)}.schedule-item.game{border-left-color:var(--tiffany);background:var(--tiffany-pale)}.schedule-date{text-align:center}.schedule-date-day{font-size:1.4rem;font-weight:900;line-height:1}.schedule-date-month{font-size:.72rem;color:var(--gray-400);font-weight:600;text-transform:uppercase;margin-top:2px}.schedule-date-dow{font-size:.78rem;font-weight:700;color:var(--gray-600);margin-top:2px}.schedule-date-dow.sat{color:#2563eb}.schedule-date-dow.sun{color:#dc2626}.schedule-info-title{font-size:.92rem;font-weight:700;margin-bottom:4px}.schedule-info-meta{font-size:.78rem;color:var(--gray-600);display:flex;gap:12px;flex-wrap:wrap}.schedule-badge{display:inline-block;font-size:.7rem;font-weight:700;padding:4px 12px;border-radius:99px;white-space:nowrap}.schedule-badge.match{background:var(--tiffany);color:var(--gray-900)}.schedule-badge.practice{background:var(--gray-600);color:var(--white)}.schedule-badge.rest{background:#e5e7eb;color:#6b7280}.schedule-badge.event{background:#fde68a;color:#92400e}#instagram{background:var(--tiffany-pale)}.instagram-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px;flex-wrap:wrap;gap:20px}.instagram-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.ig-post{aspect-ratio:1;background:var(--white);border-radius:14px;position:relative;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition)}.ig-post:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.ig-img{width:100%;height:100%;background:linear-gradient(135deg,var(--tiffany-light),var(--tiffany));display:flex;align-items:center;justify-content:center;font-size:3rem}.ig-overlay{position:absolute;inset:0;background:#00000073;color:var(--white);display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;opacity:0;transition:opacity var(--transition)}.ig-post:hover .ig-overlay{opacity:1}#contact{background:linear-gradient(135deg,var(--gray-900) 0%,#1a2e2e 100%);color:var(--white);text-align:center;padding:100px 0}#contact .section-tag{background:#81d8d026;color:var(--tiffany-light)}#contact .section-title{color:var(--white)}#contact .section-lead{color:#ffffffa6;margin:0 auto 48px}.contact-box{background:#ffffff0f;border:1px solid rgba(129,216,208,.2);border-radius:24px;padding:56px 48px;max-width:600px;margin:0 auto;backdrop-filter:blur(8px)}.contact-icon{font-size:3rem;margin-bottom:20px}.contact-box-title{font-size:1.3rem;font-weight:800;margin-bottom:12px}.contact-box-text{font-size:.88rem;color:#fff9;margin-bottom:32px;line-height:1.8}.btn-contact{display:inline-flex;align-items:center;gap:10px;background:var(--tiffany);color:var(--gray-900);font-size:1rem;font-weight:800;padding:18px 40px;border-radius:99px;border:none;cursor:pointer;transition:background var(--transition),transform var(--transition),box-shadow var(--transition);box-shadow:0 8px 32px #81d8d059}.btn-contact:hover{background:var(--tiffany-light);transform:translateY(-3px);box-shadow:0 14px 40px #81d8d073}.contact-note{font-size:.78rem;color:#fff6;margin-top:20px}#footer{background:var(--gray-900);color:#ffffff80;padding:36px 0;border-top:1px solid rgba(255,255,255,.06)}.footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.footer-logo{font-size:.9rem;font-weight:700;color:#ffffffb3}.footer-copy{font-size:.75rem}.footer-links{display:flex;gap:20px}.footer-links a{font-size:.78rem;transition:color var(--transition)}.footer-links a:hover{color:var(--tiffany)}.scroll-indicator{position:absolute;bottom:32px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--gray-400);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.scroll-dot{width:24px;height:40px;border:2px solid var(--gray-400);border-radius:99px;position:relative}.scroll-dot:after{content:"";width:4px;height:8px;background:var(--tiffany-dark);border-radius:99px;position:absolute;top:5px;left:50%;transform:translate(-50%);animation:scrollDot 1.8s ease-in-out infinite}@keyframes scrollDot{0%,to{transform:translate(-50%) translateY(0);opacity:1}80%{transform:translate(-50%) translateY(14px);opacity:0}}@media (max-width: 900px){.hero-inner{gap:32px}.hero-card{min-height:220px;padding:40px 20px;border-radius:20px}.hero-card-ball{font-size:4rem}.scrimmage-grid{grid-template-columns:1fr;gap:32px}.about-grid{grid-template-columns:1fr}.instagram-grid{grid-template-columns:repeat(3,1fr)}.family-cards{grid-template-columns:1fr 1fr}.schedule-item{grid-template-columns:70px 1fr;grid-template-rows:auto auto}.schedule-badge{grid-column:2}.contact-box{padding:40px 28px}}@media (max-width: 640px){section{padding:64px 0}.nav-links{display:none}.nav-hamburger{display:flex}.family-cards{grid-template-columns:1fr}.instagram-grid{grid-template-columns:repeat(2,1fr)}.ig-img{font-size:2.2rem}.about-card{padding:28px 22px}.schedule-item{grid-template-columns:1fr;gap:10px}.schedule-date{display:flex;align-items:baseline;gap:8px;text-align:left}.footer-inner{flex-direction:column;text-align:center}.contact-box{padding:32px 20px}}@media (max-width: 400px){.hero-title{font-size:1.9rem}.btn-primary,.btn-secondary{width:100%;justify-content:center}}#programs{background:var(--tiffany-pale)}.family-sublist{display:flex;flex-direction:column;gap:12px;margin-top:8px}.family-subitem{display:flex;gap:12px;align-items:flex-start;padding:14px;background:var(--white);border-radius:12px;border:1px solid var(--gray-100)}.family-subitem-icon{font-size:1.6rem;width:40px;height:40px;background:var(--tiffany-pale);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.family-subitem-title{font-size:.9rem;font-weight:700;margin-bottom:3px}.family-subitem-text{font-size:.78rem;color:var(--gray-600);line-height:1.6}img.ig-img{width:100%;height:100%;object-fit:cover;display:block;background:var(--tiffany-pale)}.modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.modal-backdrop{position:absolute;inset:0;background:#1118278c;backdrop-filter:blur(4px);animation:fadeIn .25s ease}.modal-panel{position:relative;background:var(--white);border-radius:20px;max-width:540px;width:100%;max-height:90vh;overflow-y:auto;padding:36px 32px 28px;box-shadow:var(--shadow-lg);animation:slideUp .3s cubic-bezier(.2,.8,.2,1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:14px;right:14px;width:36px;height:36px;border:none;background:var(--gray-100);border-radius:50%;font-size:1.4rem;color:var(--gray-600);cursor:pointer;transition:background var(--transition)}.modal-close:hover{background:var(--tiffany-pale);color:var(--tiffany-dark)}.modal-title{font-size:1.2rem;font-weight:800;margin-bottom:6px}.modal-desc{font-size:.82rem;color:var(--gray-600);margin-bottom:22px}.contact-form{display:flex;flex-direction:column;gap:14px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field>span{font-size:.8rem;font-weight:700;color:var(--gray-900);display:flex;align-items:center;gap:8px}.form-field em{font-style:normal;font-size:.68rem;color:#fff;background:var(--tiffany-dark);padding:2px 8px;border-radius:99px;font-weight:700}.form-field input,.form-field select,.form-field textarea{font-family:inherit;font-size:.92rem;padding:12px 14px;border:1.5px solid var(--gray-100);border-radius:10px;background:var(--off-white);transition:border-color var(--transition),background var(--transition);color:var(--gray-900)}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--tiffany);background:var(--white)}.form-field textarea{resize:vertical;min-height:110px}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}.form-actions .btn-primary,.form-actions .btn-secondary{font-size:.9rem;padding:12px 22px}.form-note{font-size:.72rem;color:var(--gray-400);text-align:center;margin-top:4px}@media (max-width: 480px){.modal-panel{padding:28px 20px 20px;border-radius:16px}.form-actions{flex-direction:column-reverse}.form-actions .btn-primary,.form-actions .btn-secondary{width:100%;justify-content:center}}
