.jpmap {
    position: relative;
    width: 100%;
    font-family: Arial, Helvetica, sans-serif;
}

#japan_map {
    width: 100%;
    max-width: 700px;
    height: auto;
    margin: 0 auto;
    display: block;
}

#japan_map #hokkaido {
    fill: #FF7E7C;
}

#japan_map #tohoku {
    fill: #FFFF69;
}

#japan_map #kanto {
    fill: #85FC8F;
}

#japan_map #chubu {
    fill: #93EFFF;
}

#japan_map #kansai {
    fill: #D291FF;
}

#japan_map #chugoku {
    fill: #FFD980;
}

#japan_map #shikoku {
    fill: #A0AAFF;
}

#japan_map #kyushu {
    fill: #FFABF0;
}

#japan_map #okinawa {
    fill: #FFABF0;
}

#japan_map #line {
    fill: none;
    stroke: #0f0f0f;
    stroke-width: 2;
}

.region-label {
    font-size: 16px;
    font-weight: bold;
    fill: #333;
    text-anchor: middle;        /* 横中央 */
    dominant-baseline: middle;  /* 縦中央 */
    pointer-events: none;       /* hover/clickを邪魔しない */
    user-select: none;
}

#japan_map .region:hover {
    opacity: 0.7;
    cursor: pointer;
}

.jpmap-overlay {
    font-family: Arial, Helvetica, sans-serif;
    position: absolute;
    top: 12px;
    left: 12px;
    width: min(260px, 45%);
    padding: 12px;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(0,0,0,0.08);
    border-radius: 2px;
    z-index: 10;
    font-size: 16px;
    text-align: left;
}

/* 地方ごとのクラス */
.jpmap-overlay.is-hokkaido, #regionInfoTable.is-hokkaido td { background: #FF7E7C; }
.jpmap-overlay.is-tohoku, #regionInfoTable.is-tohoku td { background: #FFFF69; }
.jpmap-overlay.is-kanto, #regionInfoTable.is-kanto td { background: #85FC8F; }
.jpmap-overlay.is-chubu, #regionInfoTable.is-chubu td { background: #93EFFF; }
.jpmap-overlay.is-kansai, #regionInfoTable.is-kansai td { background: #D291FF; }
.jpmap-overlay.is-chugoku, #regionInfoTable.is-chugoku td { background: #FFD980; }
.jpmap-overlay.is-shikoku, #regionInfoTable.is-shikoku td { background: #A0AAFF; }
.jpmap-overlay.is-kyushu, #regionInfoTable.is-kyushu td { background: #FFABF0; }
.jpmap-overlay.is-okinawa, #regionInfoTable.is-okinawa td { background: #FFABF0; }

.jpmap-overlay #overlayGdp {
    margin: 0;
    font-size: 18px;
    font-weight: bold;
}

.region-detail {
    padding-top: 50px;
}

#regionInfoTable {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #ccc;
}

#regionInfoTable th {
    width: 30%;
    padding: 10px;
    background-color: #fff;
    color: #333;
    text-align: right;
    font-size: 16px;
    font-weight: bold;
    border-right: 1px solid #ccc;
}

#regionInfoTable td {
    width: 70%;
    padding: 10px;
    color: #333;
    text-align: left;
    font-size: 16px;
    padding: 10px;
    border: none;
}
