@charset "UTF-8";

:root {
    --p-red: #d32f2f;
    --border-color: #cccccc;
}

/* 地図コンテナ */
.map-container {
    background: #fff;
    border: 1px solid var(--border-color);
    padding: 10px;
    margin-bottom: 20px;
}

.map-header {
    border-bottom: 2px solid var(--p-red);
    margin-bottom: 10px;
    padding-bottom: 5px;
}

.map-title { font-size: 18px; color: var(--p-red); margin: 0; font-weight: bold; }

.map-content {
    position: relative;
    width: 100%;
    background: #fff;
}

#pworld-map-layout {
    display: block;
    max-width: 800px;
    width: 100%;
    height: auto;
    margin: 0 auto;
}

.map-part { fill: #f0f0f0; stroke: #333; stroke-width: 1.5px; }
.map-text { font-size: 12px; fill: #000; text-anchor: middle; pointer-events: none; font-weight: 600; }

/* 地方色 */
.r-hokkaido .map-part { fill: #ffb3b3; }
.r-tohoku .map-part   { fill: #ffd9b3; }
.r-kanto .map-part    { fill: #b3d9ff; }
.r-chubu .map-part    { fill: #ffffb3; }
.r-kinki .map-part    { fill: #b3ffb3; }
.r-chugoku .map-part  { fill: #e6b3ff; }
.r-shikoku .map-part  { fill: #ffb3e6; }
.r-kyushu .map-part   { fill: #d9d9d9; }

.map-link:hover .map-part { fill: #d32f2f; }
.map-link:hover .map-text { fill: #fff; }

/* PC用検索窓 */
.map-updates {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 200px;
    background: rgba(255,255,255,0.9);
    border: 1px solid #ddd;
    z-index: 10;
}
.update-header { background: #eee; padding: 5px; font-size: 12px; font-weight: bold; }
.search-form-inner { padding: 10px; }
.search-input-group { display: flex; }
.search-input-group input { flex: 1; font-size: 12px; padding: 5px; border: 1px solid #ccc; }
.search-input-group button { background: var(--p-red); color: #fff; border: none; padding: 5px; font-size: 12px; }

/* モバイル用 */
.mobile-only { display: none; }
@media (max-width: 768px) {
    .pc-only { display: none !important; }
    .mobile-only { display: block; }
    .region-block { border: 1px solid #ddd; margin-bottom: 5px; }
    .region-label { background: #f9f9f9; padding: 8px; font-weight: bold; font-size: 14px; }
    .pref-links { display: grid; grid-template-columns: repeat(4, 1fr); }
    .pref-links a { padding: 10px; text-align: center; font-size: 12px; border: 1px solid #eee; color: #333; text-decoration: none; }
}