*{margin:0;padding:0;box-sizing:border-box}html{font-family:Noto Sans JP,sans-serif;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f1419);min-height:100vh}body{min-height:100vh;display:flex;flex-direction:column;color:#fff}.container{max-width:1200px;margin:0 auto;padding:0 20px;flex:1}.header{text-align:center;padding:60px 0 40px;background:linear-gradient(180deg,rgba(139,69,19,.3) 0%,transparent 100%)}.header h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:700;color:#fff;text-shadow:3px 3px 6px rgba(0,0,0,.7);margin-bottom:10px}.subtitle{font-size:1.2rem;color:#f0f0f0;margin-bottom:30px;text-shadow:2px 2px 4px rgba(0,0,0,.6)}.notice{background:#ff6b6b1a;border:2px solid rgba(255,107,107,.3);border-radius:12px;padding:20px;margin:20px auto 40px;max-width:800px;backdrop-filter:blur(10px)}.notice h3{color:#ff6b6b;margin-bottom:10px;font-size:1.3rem}.notice p{line-height:1.6;color:#ccc}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;padding:40px 0}.card{background:linear-gradient(145deg,#ffffff0d,#ffffff05);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:30px;text-align:center;transition:all .3s ease;backdrop-filter:blur(20px);cursor:pointer;position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s}.card:hover:before{left:100%}.card:hover{transform:translateY(-10px) scale(1.02);border-color:#ff6b6b;box-shadow:0 20px 40px #ff6b6b4d}.card h3{font-size:1.8rem;margin-bottom:15px;color:#fff;font-weight:500}.card p{color:#bbb;line-height:1.5}.part-list{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-top:20px}.part-btn{background:linear-gradient(45deg,#ff6b6b,#ee5a24);color:#fff;border:none;padding:10px 20px;border-radius:25px;cursor:pointer;transition:all .3s ease;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-block}.part-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #ee5a2466;background:linear-gradient(45deg,#ee5a24,#ff6b6b)}.part-btn.inactive{background:linear-gradient(45deg,#666,#888);color:#ccc}.part-btn.inactive:hover{background:linear-gradient(45deg,#777,#999);box-shadow:0 8px 20px #8888884d}.back-btn{display:inline-block;margin:20px 0;padding:12px 24px;background:#ffffff1a;color:#fff;text-decoration:none;border-radius:8px;border:1px solid rgba(255,255,255,.2);transition:all .3s ease}.back-btn:hover{background:#fff3;transform:translateY(-2px)}.image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin:40px 0}@media (min-width: 1024px){.image-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.image-grid{grid-template-columns:1fr}}.image-card{background:#ffffff0d;border-radius:12px;padding:15px;transition:all .3s ease;cursor:pointer}.image-card:hover{transform:scale(1.02);box-shadow:0 10px 30px #0000004d}.image-card img{width:100%;height:auto;border-radius:8px;border:2px solid rgba(255,255,255,.1)}.no-image{background:#ff6b6b1a;border:2px dashed rgba(255,107,107,.3);border-radius:12px;padding:40px 20px;text-align:center;color:#ff6b6b;font-size:1.1rem}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#000000e6;backdrop-filter:blur(10px)}.modal.show{display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{max-width:90%;max-height:90%;border-radius:12px;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}.modal img{max-width:100%;max-height:100%;width:auto;height:auto;display:block;object-fit:contain}.close{position:absolute;top:15px;right:25px;color:#fff;font-size:35px;font-weight:700;cursor:pointer;z-index:1001;background:#00000080;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.close:hover{background:#ff6b6bcc;transform:scale(1.1)}.footer{background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 100%);padding:40px 0;margin-top:60px;border-top:1px solid rgba(255,255,255,.1)}.fight-image-container{text-align:center;margin-bottom:30px}.fight-image{max-width:200px;height:auto;opacity:.8;transition:all .3s ease;border-radius:8px}.fight-image:hover{opacity:1;transform:scale(1.05)}@media (max-width: 768px){.fight-image{max-width:150px}}.footer-content{text-align:center;max-width:1200px;margin:0 auto;padding:0 20px}.footer p{color:#bbb;margin-bottom:10px;font-size:.9rem}.fade-in{animation:fadeInUp .6s ease forwards;opacity:0;transform:translateY(30px)}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}.fingering-chart-section{margin:40px 0 60px;text-align:center}.fingering-chart-section h2{font-size:2rem;color:#fff;margin-bottom:30px;text-shadow:2px 2px 4px rgba(0,0,0,.6)}.fingering-chart-container{background:#fffffff2;border-radius:16px;padding:30px;max-width:800px;margin:0 auto;box-shadow:0 20px 40px #0000004d;backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2)}.fingering-chart-image{width:100%;height:auto;border-radius:12px;box-shadow:0 10px 30px #0003;transition:transform .3s ease}.fingering-chart-image:hover{transform:scale(1.02);cursor:pointer}@media (max-width: 768px){.fingering-chart-container{margin:0 10px;padding:20px}.fingering-chart-section h2{font-size:1.5rem}}
