*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Hiragino Sans','Hiragino Kaku Gothic ProN','Yu Gothic','Meiryo',sans-serif;line-height:1.6;color:#333;background:#fefefe}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
.header{background:linear-gradient(135deg,#ff8c00 0%,#ff6600 100%);color:white;padding:1rem 0;position:fixed;top:0;width:100%;z-index:1000;box-shadow:0 2px 10px rgba(0,0,0,0.1)}
.header .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap}
.logo{font-size:1.5rem;font-weight:bold;text-shadow:1px 1px 2px rgba(0,0,0,0.3);white-space:nowrap;flex-shrink:0}
.nav{flex-shrink:1;min-width:0}
.nav ul{display:flex;list-style:none;gap:1.5rem;flex-wrap:nowrap}
.nav a{color:white;text-decoration:none;font-weight:500;transition:all 0.3s ease;padding:0.5rem 0.8rem;border-radius:20px;font-size:0.9rem;white-space:nowrap}
.nav a:hover{background:rgba(255,255,255,0.2);transform:translateY(-2px)}
main{margin-top:80px}
.section-title{font-size:2.5rem;text-align:center;margin-bottom:3rem;color:#ff6600;position:relative;padding-bottom:1rem}
.section-title::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:80px;height:4px;background:linear-gradient(90deg,#ff8c00,#ff6600);border-radius:2px}
.hero{background:linear-gradient(135deg,#fff5e6 0%,#ffe4b3 100%);padding:5rem 0;text-align:center}
.hero-title-wrapper{display:flex;align-items:flex-start;justify-content:center;gap:1rem;margin-bottom:1.5rem}
.hero-sun{width:130px;height:auto;margin-top:-25px}
.hero-title{font-size:3rem;color:#ff6600;margin-bottom:0;animation:fadeInUp 1s ease}
.hero-text{font-size:1.2rem;color:#666;margin-bottom:3rem;animation:fadeInUp 1s ease 0.3s both}
.hero-images{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap}
.hero-image{width:300px;height:200px;object-fit:cover;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,0.2);transition:transform 0.3s ease}
.hero-image:hover{transform:scale(1.05)}
.services{padding:5rem 0;background:#f9f9f9}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}
.service-item{background:white;padding:2rem;border-radius:15px;box-shadow:0 5px 20px rgba(0,0,0,0.1);transition:all 0.3s ease;border-left:5px solid #ff6600}
.service-item:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,0.15)}
.service-item h3{color:#ff6600;margin-bottom:1rem;font-size:1.3rem}
.company,.store,.news,.recruitment,.contact{padding:5rem 0}
.info-table,.hours-table{width:100%;border-collapse:collapse;margin-bottom:2rem;background:white;border-radius:10px;overflow:hidden;box-shadow:0 5px 15px rgba(0,0,0,0.1)}
.info-table th,.info-table td,.hours-table th,.hours-table td{padding:1rem;text-align:left;border-bottom:1px solid #eee}
.info-table th,.hours-table th{background:#ff6600;color:white;font-weight:bold;width:30%}
.store{background:#f9f9f9}
.store-card{background:white;padding:3rem;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,0.1)}
.store-card h3{color:#ff6600;margin-bottom:2rem;font-size:1.8rem;text-align:center}
.store-images{display:flex;gap:2rem;justify-content:center;margin-bottom:2rem;flex-wrap:wrap}
.store-image{width:400px;height:267px;object-fit:cover;border-radius:15px;box-shadow:0 5px 20px rgba(0,0,0,0.15);transition:transform 0.3s ease}
.store-image:hover{transform:scale(1.05)}
.store-card h4{color:#ff6600;margin:2rem 0 1rem;border-left:4px solid #ff6600;padding-left:1rem}
.pdf-btn{display:inline-block;background:linear-gradient(135deg,#ff8c00,#ff6600);color:white;padding:1rem 2rem;text-decoration:none;border-radius:30px;margin-top:2rem;font-weight:bold;transition:all 0.3s ease;box-shadow:0 5px 15px rgba(255,102,0,0.3)}
.pdf-btn:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(255,102,0,0.4)}
.news-list{display:grid;gap:1.5rem}
.news-item{background:white;padding:2rem;border-radius:15px;box-shadow:0 5px 15px rgba(0,0,0,0.1);border-left:5px solid #ff6600}
.news-date{color:#ff6600;font-weight:bold;margin-bottom:0.5rem}
.news-title{font-size:1.2rem;margin-bottom:1rem;color:#333}
.recruitment{background:#f9f9f9;text-align:center}
.recruitment-text{font-size:1.2rem;color:#666}
.contact{background:linear-gradient(135deg,#fff5e6 0%,#ffe4b3 100%)}
.contact-info{text-align:center;background:white;padding:3rem;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,0.1)}
.contact-info h3{color:#ff6600;margin-bottom:1rem;font-size:1.5rem}
.contact-info p{margin-bottom:1rem;font-size:1.1rem}
.footer{background:#333;color:white;text-align:center;padding:2rem 0}
@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes gentleFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media (max-width:900px){
.nav ul{gap:1rem}
.nav a{padding:0.5rem 0.6rem;font-size:0.85rem}
}
@media (max-width:768px){
.header .container{flex-direction:column;gap:0.5rem;padding:0.5rem 20px}
.header{padding:0.5rem 0}
.logo{font-size:1.3rem}
.nav ul{flex-wrap:wrap;justify-content:center;gap:0.8rem}
.hero-title-wrapper{flex-direction:column;gap:1rem}
.hero-sun{width:100px;height:auto}
.hero-title{font-size:2rem}
.hero-images{flex-direction:column;align-items:center}
.hero-image{width:280px}
.services-grid{grid-template-columns:1fr}
.section-title{font-size:2rem}
.store-card{padding:2rem}
.store-images{flex-direction:column;align-items:center}
.store-image{width:350px;height:233px}
.info-table th,.info-table td,.hours-table th,.hours-table td{padding:0.5rem;font-size:0.9rem}
}
@media (max-width:480px){
.container{padding:0 15px}
.hero{padding:3rem 0}
.hero-sun{width:85px;height:auto}
.hero-title{font-size:1.8rem}
.hero-image{width:250px;height:150px}
.service-item{padding:1.5rem}
.store-card{padding:1.5rem}
.store-image{width:300px;height:200px}
.contact-info{padding:2rem}
}