*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:'Hiragino Sans','Hiragino Kaku Gothic ProN','Noto Sans JP',sans-serif;line-height:1.6;color:#333;background:#f8fbff}:focus{outline:3px solid #0066cc;outline-offset:2px}.container{max-width:1200px;margin:0 auto;padding:0 20px}.header{background:linear-gradient(135deg,#0066cc 0%,#004499 100%);color:#fff;position:fixed;top:0;width:100%;z-index:1000;box-shadow:0 2px 10px rgba(0,102,204,0.2);transition:all 0.3s ease}.header-content{display:flex;justify-content:space-between;align-items:center;padding:15px 0}.company-name{font-size:1.8rem;font-weight:700;letter-spacing:0.05em}.nav-list{display:none;position:absolute;top:100%;left:0;width:100%;background:linear-gradient(135deg,#0066cc 0%,#004499 100%);flex-direction:column;padding:20px 0;box-shadow:0 5px 15px rgba(0,102,204,0.3);list-style:none}.nav-list.active{display:flex}.nav-list li{width:100%;text-align:center}.nav-list a{display:block;padding:15px 20px;border-radius:0;border-bottom:1px solid rgba(255,255,255,0.1);color:#fff;text-decoration:none;font-weight:500;transition:all 0.3s ease}.nav-list a:last-child{border-bottom:none}.nav-list a:hover,.nav-list a:focus{background:rgba(255,255,255,0.15)}.hamburger-btn{display:block;background:none;border:none;cursor:pointer;padding:10px;border-radius:5px;transition:background 0.3s ease}.hamburger-btn:hover,.hamburger-btn:focus{background:rgba(255,255,255,0.15)}.hamburger-line{display:block;width:25px;height:3px;background:#fff;margin:4px 0;border-radius:2px;transition:all 0.3s ease}.hamburger-btn.active .hamburger-line:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.hamburger-btn.active .hamburger-line:nth-child(2){opacity:0}.hamburger-btn.active .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}main{margin-top:80px}.section{padding:80px 0}.section-title{font-size:2.5rem;text-align:center;margin-bottom:50px;color:#0066cc;position:relative}.section-title::after{content:'';position:absolute;bottom:-10px;left:50%;width:60px;height:3px;background:linear-gradient(90deg,#0066cc,#87ceeb);transform:translateX(-50%)}.hero-section{background:linear-gradient(135deg,rgba(0,102,204,0.05) 0%,rgba(135,206,235,0.1) 100%);padding:100px 0;text-align:center}.hero-title{font-size:3rem;color:#0066cc;margin-bottom:20px;animation:fadeInUp 1s ease}.hero-subtitle{font-size:1.2rem;color:#666;margin-bottom:40px;animation:fadeInUp 1s ease 0.3s both}.hero-image{max-width:100%;height:auto;border-radius:15px;box-shadow:0 10px 30px rgba(0,102,204,0.2);animation:fadeInUp 1s ease 0.6s both;transition:transform 0.3s ease}.hero-image:hover{transform:scale(1.02)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.service-item{background:#fff;padding:30px;border-radius:15px;box-shadow:0 5px 20px rgba(0,102,204,0.1);transition:all 0.3s ease;border-left:4px solid #87ceeb}.service-item:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,102,204,0.2)}.service-title{font-size:1.5rem;color:#0066cc;margin-bottom:15px}.service-description{color:#666;line-height:1.8}.service-list{list-style:none;color:#666}.service-list li{position:relative;padding-left:20px;margin-bottom:8px}.service-list li::before{content:'✓';color:#0066cc;font-weight:bold;position:absolute;left:0}.company-info,.store-info{background:#fff;padding:40px;border-radius:15px;box-shadow:0 5px 20px rgba(0,102,204,0.1);margin-bottom:30px}.info-table,.hours-table{width:100%;border-collapse:collapse}.info-table th,.info-table td,.hours-table th,.hours-table td{padding:15px;border-bottom:1px solid #e6f2ff;text-align:left}.info-table th,.hours-table th{background:#f0f8ff;color:#0066cc;font-weight:600;width:30%}.store-name{font-size:2rem;color:#0066cc;margin-bottom:15px}.store-description{color:#666;line-height:1.8;margin-bottom:30px}.store-details{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:30px}.medical-info{display:grid;grid-template-columns:1fr 1fr;gap:30px}.medical-info h5{color:#0066cc;margin-bottom:15px;font-size:1.1rem}.medical-info ul{list-style:none}.medical-info li{padding:5px 0;color:#666;position:relative;padding-left:20px}.medical-info li::before{content:'●';color:#87ceeb;position:absolute;left:0}.payment-methods,.insurance-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px;list-style:none;margin-bottom:20px}.payment-methods li,.insurance-types li{background:#f0f8ff;padding:12px 20px;border-radius:8px;color:#333;position:relative;padding-left:40px}.payment-methods li::before,.insurance-types li::before{content:'✓';color:#0066cc;font-weight:bold;position:absolute;left:15px}.legal-details{margin-bottom:20px}.pdf-button{display:inline-block;background:linear-gradient(135deg,#0066cc,#004499);color:#fff;padding:15px 30px;text-decoration:none;border-radius:25px;font-weight:600;transition:all 0.3s ease;box-shadow:0 3px 15px rgba(0,102,204,0.3)}.pdf-button:hover,.pdf-button:focus{transform:translateY(-2px);box-shadow:0 5px 25px rgba(0,102,204,0.4);background:linear-gradient(135deg,#004499,#0066cc)}.news-container{display:grid;gap:20px}.news-item{background:#fff;padding:25px;border-radius:10px;box-shadow:0 3px 15px rgba(0,102,204,0.1);border-left:4px solid #87ceeb;transition:transform 0.3s ease}.news-item:hover{transform:translateX(5px)}.news-date{color:#0066cc;font-weight:600;font-size:0.9rem;margin-bottom:8px}.news-title{font-size:1.2rem;color:#333;margin-bottom:10px;font-weight:600}.news-content{color:#666;line-height:1.8}.recruit-content{text-align:center;background:#fff;padding:60px;border-radius:15px;box-shadow:0 5px 20px rgba(0,102,204,0.1)}.recruit-message{font-size:1.2rem;color:#666}.contact-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.contact-item{background:#fff;padding:30px;border-radius:15px;box-shadow:0 5px 20px rgba(0,102,204,0.1);border-top:4px solid #0066cc}.contact-item h3{color:#0066cc;margin-bottom:15px;font-size:1.3rem}.contact-item a{color:#0066cc;text-decoration:none}.contact-item a:hover,.contact-item a:focus{text-decoration:underline}.footer{background:#0066cc;color:#fff;text-align:center;padding:40px 0}.footer-text{opacity:0.9}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@media(max-width:768px){.header-content{flex-direction:row;gap:15px}.hamburger-btn{display:block}.nav-list{display:none;position:absolute;top:100%;left:0;width:100%;background:linear-gradient(135deg,#0066cc 0%,#004499 100%);flex-direction:column;padding:20px 0;box-shadow:0 5px 15px rgba(0,102,204,0.3)}.nav-list.active{display:flex}.nav-list li{width:100%;text-align:center}.nav-list a{display:block;padding:15px 20px;border-radius:0;border-bottom:1px solid rgba(255,255,255,0.1)}.nav-list a:last-child{border-bottom:none}.company-name{font-size:1.5rem}.hero-title{font-size:2rem}.section-title{font-size:2rem}.section{padding:50px 0}.store-details{grid-template-columns:1fr}.medical-info{grid-template-columns:1fr}.payment-methods,.insurance-types{grid-template-columns:1fr}.contact-info{grid-template-columns:1fr}}@media(max-width:480px){.container{padding:0 15px}.hero-section{padding:60px 0}.hero-title{font-size:1.8rem}.section{padding:40px 0}.service-item,.company-info,.store-info{padding:25px}.info-table th,.info-table td,.hours-table th,.hours-table td{padding:10px;font-size:0.9rem}.nav-list{gap:10px}.nav-list a{font-size:0.8rem;padding:5px 10px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}@media(prefers-color-scheme:dark){body{background:#1a1a1a;color:#e0e0e0}.section{color:#e0e0e0}.service-item,.company-info,.store-info,.contact-item,.news-item{background:#2d2d2d;color:#e0e0e0}.info-table th,.hours-table th{background:#1a365d;color:#87ceeb}.footer{background:#1a365d}}