/* Japan Map Component Styles - Based on https://web.contempo.jp/weblog/tips/post-7652 */

#jp_map {
    width: 100%;
    max-width: 800px;
    max-height: 640px;
    position: relative;
    list-style-type: none;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
    overflow: hidden;
}

#jp_map::before {
    content: '';
    display: block;
    padding: 80% 0 0;
}

#jp_map ul,
#jp_map li {
    display: block;
    list-style: none;
    margin: 0;
    padding: 0;
}

#jp_map ul {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

#jp_map a {
    display: block;
    font-weight: normal;
    text-decoration: none;
    color: #333;
    text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px;
    box-sizing: border-box;
    border: solid #fff 2px;
    float: none;
    font-size: 14px;
    line-height: 1;
    padding: 6px 0;
    text-align: center;
    position: absolute;
    margin: 0;
    pointer-events: auto;
}

#jp_map a:hover {
    opacity: .85;
    text-decoration: none;
}

#jp_map a span {
    display: block;
    margin: 0 auto;
    padding: 0;
    line-height: 1.1em;
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

/* 地域別の背景色 */
#jp_map .region-hokkaido a,
#jp_map .region-tohoku a {
    background-color: #759ef4;
}

#jp_map .region-kanto a {
    background-color: #7ecfea;
}

#jp_map .region-chubu a {
    background-color: #7cdc92;
}

#jp_map .region-kinki a {
    background-color: #ffe966;
}

#jp_map .region-chugoku a {
    background-color: #ffcc66;
}

#jp_map .region-shikoku a {
    background-color: #ffbb9c;
}

#jp_map .region-kyushu a {
    background-color: #ffbdbd;
}

/* 都道府県のデフォルトサイズ */
#jp_map li a {
    height: 12%;
    width: 7%;
}

/* 北海道地方 */
#jp_map li.hokkaido a {
    top: 0;
    left: 81%;
    height: 20%;
    width: 21%;
}

/* 東北地方 */
#jp_map li.aomori a {
    top: 21%;
    left: 79%;
    height: 8%;
    width: 19%;
}

#jp_map li.iwate a {
    top: 29%;
    left: 89.5%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.akita a {
    top: 29%;
    left: 79%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.miyagi a {
    top: 37%;
    left: 89.5%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.yamagata a {
    top: 37%;
    left: 79%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.fukushima a {
    top: 45%;
    left: 93%;
    height: 18%;
}

/* 関東地方 */
#jp_map li.ibaraki a {
    top: 63%;
    left: 93%;
    height: 18%;
}

#jp_map li.tochigi a {
    top: 57%;
    left: 86%;
}

#jp_map li.gunma a {
    top: 57%;
    left: 79%;
}

#jp_map li.saitama a {
    top: 69%;
    left: 86%;
}

#jp_map li.chiba a {
    top: 81%;
    left: 93%;
    height: 17%;
}

#jp_map li.tokyo a {
    top: 81%;
    left: 86%;
}

#jp_map li.kanagawa a {
    top: 81%;
    left: 79%;
}

/* 中部地方 */
#jp_map li.niigata a {
    top: 45%;
    left: 79%;
    width: 14%;
}

#jp_map li.toyama a {
    top: 45%;
    left: 72%;
}

#jp_map li.ishikawa a {
    top: 45%;
    left: 65%;
    height: 17%;
}

#jp_map li.fukui a {
    top: 50%;
    left: 58%;
}

#jp_map li.yamanashi a {
    top: 69%;
    left: 79%;
}

#jp_map li.nagano a {
    top: 57%;
    left: 72%;
    height: 24%;
}

#jp_map li.gifu a {
    top: 62%;
    left: 65%;
    height: 19%;
}

#jp_map li.shizuoka a {
    top: 81%;
    left: 72%;
}

#jp_map li.aichi a {
    top: 81%;
    left: 65%;
}

/* 近畿地方 */
#jp_map li.mie a {
    top: 86%;
    left: 58%;
}

#jp_map li.shiga a {
    top: 62%;
    left: 58%;
}

#jp_map li.kyoto a {
    top: 56%;
    left: 51%;
    height: 18%;
}

#jp_map li.osaka a {
    top: 74%;
    left: 51%;
}

#jp_map li.hyogo a {
    top: 53%;
    left: 44%;
    height: 24%;
}

#jp_map li.nara a {
    top: 74%;
    left: 58%;
}

#jp_map li.wakayama a {
    top: 86%;
    left: 51%;
}

/* 中国地方 */
#jp_map li.tottori a {
    top: 53%;
    left: 37%;
}

#jp_map li.shimane a {
    top: 53%;
    left: 30%;
}

#jp_map li.okayama a {
    top: 65%;
    left: 37%;
}

#jp_map li.hiroshima a {
    top: 65%;
    left: 30%;
}

#jp_map li.yamaguchi a {
    top: 59%;
    left: 23%;
}

/* 四国地方 */
#jp_map li.tokushima a {
    top: 89.5%;
    left: 36.5%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.kagawa a {
    top: 81.5%;
    left: 36.5%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.ehime a {
    top: 81.5%;
    left: 26%;
    height: 8%;
    width: 10.5%;
}

#jp_map li.kochi a {
    top: 89.5%;
    left: 26%;
    height: 8%;
    width: 10.5%;
}

/* 九州地方 */
#jp_map li.fukuoka a {
    top: 55%;
    left: 15%;
}

#jp_map li.saga a {
    top: 55%;
    left: 8%;
}

#jp_map li.nagasaki a {
    top: 55%;
    left: 1%;
    height: 16%;
}

#jp_map li.kumamoto a {
    top: 67%;
    left: 8%;
}

#jp_map li.oita a {
    top: 67%;
    left: 15%;
}

#jp_map li.miyazaki a {
    top: 79%;
    left: 15%;
}

#jp_map li.kagoshima a {
    top: 79%;
    left: 8%;
}

#jp_map li.okinawa a {
    top: 88%;
    left: 0;
}

/* レスポンシブ対応 */
@media screen and (max-width:782px) {
    #jp_map {
        margin: 16px 0 0;
    }

    #jp_map::before {
        padding: 100% 0 0;
    }

    #jp_map li a {
        font-size: 12px;
        border-width: 1px;
    }

    #jp_map a {
        text-shadow: #fff 1px 0px, #fff -1px 0px, #fff 0px -1px, #fff 1px -1px, #fff -1px -1px, #fff 0px 1px, #fff 1px 1px, #fff -1px 1px;
        border-width: 1px;
        font-size: 12px;
    }

    #jp_map li.tokushima a,
    #jp_map li.kochi a {
        top: 88%;
    }

    #jp_map li.kagawa a,
    #jp_map li.ehime a {
        top: 80%;
    }
}

@media screen and (max-width:480px) {
    #jp_map li a {
        font-size: 11px;
    }
}
