
    :root {
        --primary: #0a3f7d;
        --secondary: #00b2a3;
        --accent: #008c15;
        --text: #2e2c2c;
        --gray: #f4f4f4;
    }
    body { font-family: Meiryo, sans-serif; color: var(--text); line-height: 1.6; margin: 0; padding: 0; }
    h1, h2 { color: var(--primary); }
    #container { max-width: 1000px; margin: 0 auto; padding: 0 15px; }
    #header { padding: 20px 0; border-bottom: 3px solid var(--primary); }
    .logo-container { font-weight: bold; font-size: 1.5rem; color: var(--primary); display: flex; align-items: center; }
    #global-nav { background: var(--primary); margin-bottom: 20px; }
    #global-nav ul { list-style: none; margin: 0; padding: 0; display: flex; }
    #global-nav ul li a { color: #fff; padding: 15px 20px; display: block; text-decoration: none; }
    #global-nav ul li a:hover { background: var(--secondary); }
    .btn { display: inline-block; padding: 10px 20px; background: var(--secondary); color: white; text-decoration: none; border-radius: 5px; margin: 5px 0; }
    .card-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; }
    .pharmacy-card { border: 1px solid #ddd; padding: 15px; border-radius: 8px; }
    .map-placeholder { background: #e0f2f1; height: 300px; display: flex; align-items: center; justify-content: center; border: 2px dashed var(--secondary); margin: 20px 0; }
    footer { background: var(--primary); color: white; padding: 30px 0; margin-top: 40px; text-align: center; }
    .copyright { font-size: 0.8rem; padding: 10px; background: #000; color: white; text-align: center; }
    @media (min-width: 768px) { #container { display: grid; grid-template-columns: 1fr 250px; gap: 30px; } }
