.inner.pinpoint {
    gap: 10px;
}

.supplement {
    font-size: 15px;
    font-weight: 700;
    line-height: 1em;
    color: #148612;
}

.leaflet-tile-pane {
    z-index: 1000;
}

.leaflet-marker-pane {
    z-index: 10000;
}

/*------------------------------------------
MAP基本
------------------------------------------*/
.map {
    margin-left: 0;
    margin-right: 0;
    position: relative;
}

.map .map-box {
    position: relative;
}

.map .map-box .info-weather.area {
    position: absolute;
    top: 50%;
    left: 50%;
}

/* マップ：日付 時刻 */
.map-box .time {
    position: absolute;
    background: rgba(0, 0, 0, 0.5);
    top: 5px;
    left: 5px;
}

.map-box .time * {
    font-size: 1.2rem;
    font-weight: bold;
    color: #fff;
    line-height: 100%;
    padding: 5px;
}


/* gps panel */
.map_gps_pannel {
    position: absolute;
    width: 60px;
    height: 60px;
    bottom: 10px;
    left: 18px;
    z-index: 899;
}

.map_gps_btn {
    background-image: url('https://weathernews.jp/s/ski/img/btn_gps.png');
    background-repeat: no-repeat;
    background-size: 40px 40px;
    width: 40px;
    height: 40px;
}

.map_gps_txt {
    font-size: 13px;
    font-weight: 700;
    line-height: 1em;
    width: 100%;
    text-align: left;
    text-shadow: #fff 1px 1px 0, #fff -1px -1px 0, #fff -1px 1px 0, #fff 1px -1px 0, #fff 0px 1px 0, #fff 0-1px 0, #fff -1px 0 0, #fff 1px 0 0;
}

.gps_working_btn,
.loading {
    opacity: 0.3;
}

.gps_working_txt {
    font-weight: bold;
    color: #00f;
}

/* type panel */
.map_type_pannel {
    display: inline;
    position: absolute;
    width: 125px;
    bottom: 40px;
    right: 5px;
    z-index: 899;
    text-align: center;
}

.toggle_tab {
    display: inline-block;
    width: 50%;
    cursor: pointer
}

#radar_type {
    width: 32px;
    vertical-align: bottom;
    border-radius: 50%;
    box-shadow: 2px 2px 2px #666666;
    padding: 2px;
    border: solid 2px #fff;
}

#radar_type.nowcast {
    background-color: #CEF6D8;
}

#radar_type.ameyuki {
    background-color: #E3CEF6;
}

#radar_type_txt {
    font-size: 13px;
    font-weight: 700;
    line-height: 1.3em;
    width: 100%;
    text-shadow: #fff 1px 1px 0, #fff -1px -1px 0, #fff -1px 1px 0, #fff 1px -1px 0, #fff 0px 1px 0, #fff 0-1px 0, #fff -1px 0 0, #fff 1px 0 0;
}

/* under map panel */
.under_map_panel1 {
    background: #333;
    text-align: center;
    height: 35px;
    width: 100%;
    padding-top: 10px;
}

#radar_legend {
    margin-top: 1px;
    max-height: 31px;
    max-width: 100%
}

.btn-tm {
    width: 45px;
    height: 28px;
    padding-top: 3px;
    box-sizing: border-box;
    border: solid 1px #fff;
    border-radius: 8px;
    overflow: hidden;
    background: #0c419a;
}

#btn_tm_left.disabled,
#btn_tm_right.disabled {
    color: #9F9F9F;
    background: #051A3E;
    font-weight: 300;
}

#btn_prev {
    position: relative;
    left: 5px;
    width: 0px;
    height: 0px;
    border: 10px solid;
    border-color: transparent #fff transparent transparent;
}

#btn_next {
    position: relative;
    left: 18px;
    width: 0px;
    height: 0px;
    border: 10px solid;
    border-color: transparent transparent transparent #fff;
}

#btn_tm_left.disabled #btn_prev {
    position: relative;
    left: 5px;
    width: 0px;
    height: 0px;
    border: 10px solid;
    border-color: transparent #424242 transparent transparent;
}

#btn_tm_right.disabled #btn_next {
    position: relative;
    left: 18px;
    width: 0px;
    height: 0px;
    border: 10px solid;
    border-color: transparent transparent transparent #424242;
}

.under_map_panel2 {
    background: #333;
    text-align: center;
    width: 100%;
    padding-top: 5px;
    padding-bottom: 5px;
}

ul.item-list {
    width: 100%;
    overflow: hidden;
}

ul.item-list li {
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    margin: 0 1px;
}

#range_left {
    color: #fff;
    font-size: 12px;
    padding-right: 9px;
    line-height: 2em;
}

#range_right {
    color: #ffa500;
    font-size: 12px;
    padding-left: 5px;
    line-height: 2em;
}

#tm_position .ui-slider-handle {
    width: 17px;
    height: 20px;
    margin-top: -5px;
    background: #fff;
}

/* .inner {
    padding: 10px;
} */

.btn.--blue {
    background-color: #3569C0;
}

.btn {
    width: 100%;
    max-width: 375px;
    margin-left: auto;
    margin-right: auto;
    background-color: #d1e2ff;
    border-radius: 4px;
}

.btn>* {
    display: block;
    color: #0c419a;
    text-align: center;
    font-weight: 600;
    line-height: 1em;
    padding: 10px 0;
    position: relative;
}

.btn>*:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: .35em solid transparent;
    border-left-color: #0c419c;
    border-right: 0;
    position: absolute;
    top: 50%;
    right: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.btn.--blue>* {
    color: #fff;
}

.btn.--blue>*:after {
    border-left-color: #fff;
}


/*スライダーの色を実況と予想で変化させるための処理*/
#tm_position.ui-slider {
    background: linear-gradient(90deg, gray 0%, gray 100%, orange 0%, orange 0%);
    border: 0px
}

/*#tm_position.ui-slider{background:linear-gradient(90deg,gray 0%,gray 50%,orange 50%,orange 100%);border:0px}*/

.map_bottom_text {
    width: 100%;
    position: absolute;
    bottom: 16px;
    z-index: 899;
}

#radar_tm {
    width: 65px;
    line-height: 1.4em;
    background-color: rgba(0, 0, 0, 0.5);
    border-radius: 15px;
    text-align: center;
    font-weight: bold;
    font-size: 16px;
    margin: 0 auto;
    z-index: 10;
}

#radar_tm.obs {
    color: #fff;
}

#radar_tm.fcst {
    color: #ffa500;
}

/*レンダリングのエッジをぼかさない様に*/
img.tiled-radar {
    -ms-interpolation-mode: nearest-neighbor;
    /* IE8+ */
    image-rendering: -webkit-optimize-contrast;
    /* Safari (WebKit) */
    image-rendering: -moz-crisp-edges;
    /* Firefox (Gecko) */
    image-rendering: -o-crisp-edges;
    /* Opera 12.x */
    image-rendering: pixelated;
    /* Chrome 41+, Opera 29+ (CSS4) */
}

.leaflet-tile-pane {
    z-index: 1000;
}

.leaflet-marker-pane {
    z-index: 10000;
}

#areaHeader {
    -webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .15);
    padding: 10px;
    background-color: #fff;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .15)
}

#areaHeader .inner {
    max-height: 28px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: center;
    -ms-flex-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: space-between
}

@media screen and (min-width: 915px) {
    #areaHeader {
        position: relative;
        margin-top: 5px
    }

    #areaHeader:before {
        display: block;
        position: absolute;
        top: -5px;
        left: 0;
        width: 100%;
        height: 5px;
        content: ""
    }

    #areaHeader .inner {
        max-width: 915px;
        margin-right: auto;
        margin-left: auto
    }
}

#areaTop {
    max-width: 990px;
    margin-right: auto;
    margin-left: auto;
    padding: 10px 10px
}

#areaTop>:not(:last-child) {
    margin-bottom: 15px
}

@media screen and (min-width: 830px) {
    #areaTop {
        padding: 20px 0
    }
}

.prevPankuzu {
    position: relative;
    /* padding-left: 67px */
}

.buttonPrev {
    -webkit-transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0;
    width: 57px;
    transform: translateY(-50%)
}

.buttonPrev>* {
    -webkit-box-shadow: 0 3px 2px 0 rgba(0, 0, 0, .3);
    display: inline-block;
    padding: 5px;
    border-radius: 100px;
    background-color: #fff;
    box-shadow: 0 3px 2px 0 rgba(0, 0, 0, .3);
    line-height: 1em
}

.buttonPrev>:before {
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 5px;
    border-radius: 100px;
    background-color: #ff4c43;
    vertical-align: middle;
    content: ""
}

.buttonPrev>:after {
    -webkit-transform: translateY(-50%) rotate(45deg);
    display: block;
    z-index: 2;
    position: absolute;
    top: 50%;
    left: 11px;
    width: 6px;
    height: 6px;
    transform: translateY(-50%) rotate(45deg);
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    content: ''
}

.buttonPrev .text {
    font-size: 13px;
    font-weight: 600;
    vertical-align: middle
}

.panKuzuList {
    -ms-overflow-style: none;
    scrollbar-width: none;
    overflow-x: scroll;
    font-size: 0px;
    white-space: nowrap
}

.panKuzuList::-webkit-scrollbar {
    display: block;
    height: 6px
}

.panKuzuList::-webkit-scrollbar-track {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(244, 114, 149, 0)), color-stop(50%, rgba(244, 114, 149, 0)), color-stop(51%, rgba(244, 114, 149, 0)));
    background: linear-gradient(to bottom, rgba(244, 114, 149, 0) 0, rgba(244, 114, 149, 0) 50%, rgba(244, 114, 149, 0) 51%)
}

.panKuzuList::-webkit-scrollbar-thumb {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(244, 114, 149, 0)), color-stop(50%, rgba(244, 114, 149, 0)), color-stop(51%, #f47295));
    background: linear-gradient(to bottom, rgba(244, 114, 149, 0) 0, rgba(244, 114, 149, 0) 50%, #ff4c43 51%)
}

.panKuzuList__item {
    display: inline-block;
    position: relative;
    font-size: 14px;
    line-height: 14px;
    vertical-align: middle
}

.panKuzuList__item>* {
    font-size: 12px
}

.panKuzuList__item a {
    color: #ff4c43;
    font-weight: 600;
    text-decoration: underline
}

.panKuzuList__item:not(:last-child) {
    padding-right: 30px
}

.panKuzuList__item:not(:last-child):after {
    -webkit-transform: translateY(-50%);
    display: block;
    position: absolute;
    top: 50%;
    right: 12px;
    width: 0;
    height: 0;
    transform: translateY(-50%);
    border: .3em solid transparent;
    border-right: none;
    border-left: .45em solid #ff4c43;
    content: ''
}

@media screen and (max-width: 770px) {
    .pc {
        display: none !important;
    }
}

@media screen and (min-width: 770px) {
    .sp {
        display: none !important;
    }
}

/* マップの凡例 */
.map-legend {
        position: absolute;
        bottom: 16px;
        left: 10px;
        background-color: rgba(255, 255, 255, 0.9);
        padding: 5px;
        border-radius: 4px;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
        z-index: 450;
}

.legend-item {
        display: flex;
        align-items: center;
        height: 14px;
        font-size: 14px;
}

.legend-item:last-child {
        margin-bottom: 0;
}

.legend-marker {
        display: inline-block;
        width: 12px;
        height: 12px;
        margin-right: 8px;
        border-radius: 2px;
        border: 1px solid black;
}

.legend-label {
        color: #333;
        font-size: 12px;
}

.bg-caution { background-color: #89D26D; }
.bg-warning { background-color: #FAF500; }
.bg-severe { background-color: #FFAA00; }
.bg-danger { background-color: #FF2800; }
.bg-extreme { background-color: #6C008C; }
