:root{--nash-navy: #0f172a;--nash-orange: #f97316;--nash-white: #f8fafc;--nash-gray: #64748b}body{margin:0;font-family:Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;background-color:var(--nash-white);color:var(--nash-navy)}:root{--nash-navy: #0f172a;--nash-navy-gradient: linear-gradient(180deg, #0f172a 0%, #1e293b 100%);--nash-orange: #f97316;--nash-white: #f8fafc;--nash-gray: #64748b}body{margin:0;font-family:Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;background-color:var(--nash-white);color:var(--nash-navy);overflow-y:scroll}.header{position:fixed;top:0;left:0;width:100%;height:60px;background-color:var(--nash-navy);display:flex;justify-content:space-between;align-items:center;padding:0 20px;box-sizing:border-box;z-index:1000;box-shadow:0 2px 5px #0003}.header-logo a{color:var(--nash-white);font-size:1.5rem;font-weight:700;text-decoration:none}.header-nav{display:flex;gap:20px;align-items:center}.nav-link{color:var(--nash-white);text-decoration:none;font-weight:700;transition:color .3s;font-size:.9rem;position:relative}.nav-link:hover{color:var(--nash-orange)}.nav-link:not(:last-child):after{content:"";position:absolute;top:50%;right:-10px;transform:translateY(-50%);width:1px;height:14px;background-color:#fff6}.hero-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden;color:var(--nash-white);padding:60px 20px;min-height:calc(100vh - 60px);box-sizing:border-box}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-2}.hero-bg-image{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;transition:opacity 1s ease-in-out}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000;opacity:.5;z-index:-1}.hero-content{position:relative;z-index:1}.hero-sub-copy{color:var(--nash-orange);font-weight:700;letter-spacing:2px;margin-bottom:10px}.hero-main-copy{font-size:3rem;line-height:1.2;margin-bottom:20px;font-weight:900}.highlight{color:var(--nash-orange)}.hero-description{font-size:1.1rem;line-height:1.8;color:#bfdbfe;margin-bottom:40px}.hero-buttons{display:flex;gap:20px;justify-content:center}.btn-primary{background-color:var(--nash-orange);color:#fff;border:none;padding:12px 30px;font-size:1rem;font-weight:700;border-radius:50px;cursor:pointer;transition:opacity .3s}.btn-primary:hover{opacity:.8}.btn-secondary{background-color:transparent;border:2px solid var(--nash-white);color:var(--nash-white);padding:12px 30px;font-size:1rem;font-weight:700;border-radius:50px;cursor:pointer}@media(max-width:768px){.hero-main-copy{font-size:2rem}.hero-buttons{flex-direction:column;gap:15px}.header-nav{gap:14px}.nav-link:not(:last-child):after{right:-7px}.nav-link{font-size:.8rem}}.section-container{padding:80px 20px;max-width:1000px;margin:0 auto;text-align:center}.section-title{font-size:2.5rem;color:var(--nash-navy);margin-bottom:10px;border-bottom:3px solid var(--nash-orange);display:inline-block;padding-bottom:5px}.section-subtitle{color:var(--nash-gray);margin-bottom:40px;font-weight:700}.grid-container,.members-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:20px;text-align:left}.card,.member-card{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;border:1px solid #e2e8f0}.card h3,.member-card h3{color:var(--nash-navy);margin-top:0;margin-bottom:10px}.card p{color:#475569;line-height:1.6}.about-text{line-height:2;font-size:1.1rem;color:#333;margin-bottom:30px;text-align:left}.about-image-box{background-color:#e2e8f0;height:200px;display:flex;align-items:center;justify-content:center;border-radius:10px;color:#64748b;font-weight:700;margin-top:30px}.role{font-weight:700;color:var(--nash-orange);margin-bottom:10px}.comment{font-style:italic;color:#555;margin-bottom:15px}.tags{display:flex;flex-wrap:wrap;gap:5px}.tag{background-color:#f1f5f9;padding:4px 8px;border-radius:4px;font-size:.8em;color:var(--nash-gray)}.history-list ul{list-style:none;padding:0;max-width:600px;margin:0 auto;text-align:left}.history-item{padding:15px 0;border-bottom:1px solid #e2e8f0;display:flex;gap:20px;align-items:baseline}.history-date{font-weight:700;color:var(--nash-orange);min-width:80px}.history-content{color:var(--nash-navy)}.page-container{padding:80px 20px;max-width:800px;margin:0 auto;min-height:calc(100vh - 210px);box-sizing:border-box;text-align:center;display:flex;flex-direction:column;align-items:center}.contact-form-placeholder{margin:20px 0;background-color:#f8f9fa;padding:40px;border-radius:10px;box-shadow:inset 0 0 10px #0000000d;border:1px solid #e2e8f0;width:100%;max-width:500px;box-sizing:border-box}@media(max-width:768px){.page-container{padding:80px 15px}.contact-form-placeholder{padding:25px 15px;width:100%}.section-title{font-size:2rem}}.footer{background-color:var(--nash-navy);color:var(--nash-white);padding:40px 20px;text-align:center;margin-top:auto}.footer-content{max-width:1000px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.footer-links a{color:#bfdbfe;text-decoration:none;margin:0 10px;transition:color .3s}.footer-links a:hover{color:var(--nash-orange)}.copyright{font-size:.8rem;color:#64748b;margin-top:20px;border-top:1px solid #334155;padding-top:20px}.map-container{width:100%;max-width:800px;margin:0 auto;overflow:hidden;border-radius:10px;box-shadow:0 4px 10px #0000001a}.map-container iframe{vertical-align:bottom}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fadeInUp .5s ease-out forwards}.calendar-container{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;overflow:hidden;max-width:900px;margin:0 auto}.calendar-header{display:grid;grid-template-columns:repeat(7,1fr);background:var(--nash-navy);color:var(--nash-white);text-align:center;font-weight:700}.calendar-day-name{padding:10px 0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid #e2e8f0;border-left:1px solid #e2e8f0}.calendar-cell{min-height:100px;background:#fff;border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;padding:5px;display:flex;flex-direction:column}.calendar-cell.empty{background:#f8fafc}.calendar-cell.has-event{background:#fffbeb}.calendar-date{font-weight:700;color:var(--nash-navy);margin-bottom:5px;font-size:.9rem}.calendar-date.day-saturday,.calendar-date.day-saturday .date-number,.calendar-date.day-saturday .date-day-of-week{color:#2563eb}.calendar-date.day-sunday,.calendar-date.day-sunday .date-number,.calendar-date.day-sunday .date-day-of-week{color:#dc2626}@media(max-width:768px){.calendar-cell.has-event.day-sunday{border-left:4px solid #f87171}.calendar-cell.has-event.day-saturday{border-left:4px solid #60a5fa}}.date-day-of-week{display:none}.calendar-event{font-size:.8rem;font-weight:600;background:linear-gradient(135deg,#ffedd5,#fed7aa);color:#9a3412;padding:8px;border-radius:8px;margin-top:4px;margin-bottom:4px;word-break:break-word;line-height:1.4;box-shadow:0 2px 4px #ea580c26;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:block}.calendar-event:hover{background:linear-gradient(135deg,#fed7aa,#fdba74);transform:translateY(-4px) scale(1.02);box-shadow:0 6px 12px #ea580c40;color:#7c2d12}.event-time{font-size:.7rem;color:#c2410c;margin-bottom:2px;font-weight:500;display:flex;align-items:center;gap:2px}.event-title{font-weight:700}@media(max-width:768px){.calendar-header{display:none}.calendar-grid{display:flex;flex-direction:column;border:none;gap:15px;padding:10px;background:#f8fafc}.calendar-cell{border:none;background:none;min-height:auto;padding:0}.calendar-cell.empty{display:none}.calendar-cell:not(.has-event){display:none}.calendar-cell.has-event{background:#fff;border-radius:12px;padding:15px;box-shadow:0 4px 6px #0000000d;display:flex;flex-direction:column;border-left:4px solid var(--nash-orange)}.calendar-date{font-size:1.2rem;color:var(--nash-orange);border-bottom:2px dashed #e2e8f0;padding-bottom:8px;margin-bottom:12px;display:flex;align-items:baseline}.date-day-of-week{display:inline-block;margin-left:8px;font-size:.9rem;color:var(--nash-gray);font-weight:400}.calendar-event{font-size:1rem;padding:12px;border-radius:8px;margin:0}}
