/*------------------------------
全体の設定
------------------------------*/
.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 40px;
    background: #fff;
}

/*------------------------------
基本の色設定
------------------------------*/
html,
body,
#map {
    /* set value except 100% to show attribution */
    height: 99.5%;
}

#map {
    position: relative;
    /* 子要素の位置を調整するために必要 */
    margin: 0;
}

/*------------------------------
凡例の色設定
------------------------------*/
.legend {
    position: absolute;
    bottom: 30px;
    right: 20px;
    z-index: 1000;
}

.legend-item {
    display: flex;
    align-items: center;
    background-color: rgba(238, 238, 238, 0.8);
    padding: 2px;
}

.legend-color {
    width: 20px;
    height: 20px;
    margin-right: 5px;
}

/* CSSカスタムプロパティを用いて各色を定義 */
/* 気象庁のカラースケールを採用 */
:root {
    --color-1: 145, 0, 83;
    --color-2: 255, 26, 26;
    --color-3: 255, 153, 0;
    --color-4: 255, 240, 0;
    --color-5: 255, 240, 180;
    --color-6: 255, 255, 240;
    --color-7: 238, 238, 255;
    --color-8: 206, 210, 243;
    --color-9: 69, 74, 119;
    --color-10: 36, 36, 80;
    --color-11: 0, 0, 56;
    --color-12: 0, 0, 0;
}

/* 凡例の色設定を効率的に定義 */
.legend-item:nth-child(1) .legend-color {
    background-color: rgba(var(--color-1), 0.5);
}

.legend-item:nth-child(2) .legend-color {
    background-color: rgba(var(--color-2), 0.5);
}

.legend-item:nth-child(3) .legend-color {
    background-color: rgba(var(--color-3), 0.5);
}

.legend-item:nth-child(4) .legend-color {
    background-color: rgba(var(--color-4), 0.5);
}

.legend-item:nth-child(5) .legend-color {
    background-color: rgba(var(--color-5), 0.5);
}

.legend-item:nth-child(6) .legend-color {
    background-color: rgba(var(--color-6), 0.5);
}

.legend-item:nth-child(7) .legend-color {
    background-color: rgba(var(--color-7), 0.5);
}

.legend-item:nth-child(8) .legend-color {
    background-color: rgba(var(--color-8), 0.5);
}

.legend-item:nth-child(9) .legend-color {
    background-color: rgba(var(--color-9), 0.5);
}

.legend-item:nth-child(10) .legend-color {
    background-color: rgba(var(--color-10), 0.5);
}

.legend-item:nth-child(11) .legend-color {
    background-color: rgba(var(--color-11), 0.5);
}

.legend-item:nth-child(12) .legend-color {
    background-color: rgba(var(--color-12), 0.5);
}

/*------------------------------
タイトルのcss
------------------------------*/
.map-title {
    position: absolute;
    top: -10px;
    left: 50px;
    z-index: 1000000;
    padding: 5px;
}

/*------------------------------
ハンバーガーメニューに関するCSS
------------------------------*/

/* チェックボックスは非表示に */
.drawer-hidden {
    display: none;
}

/* ハンバーガーアイコンの設置スペース */
.drawer-open {
    display: flex;
    height: 60px;
    width: 60px;
    justify-content: center;
    align-items: center;
    position: fixed;
    z-index: 100020;
    cursor: pointer;
    left: 0;
    top: -5px;
}

/* ハンバーガーメニューのアイコン */
.drawer-open span,
.drawer-open span:before,
.drawer-open span:after {
    content: '';
    display: block;
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background: #333;
    transition: 0.5s;
    position: absolute;
}

/* 三本線のうち一番上の棒の位置調整 */
.drawer-open span:before {
    bottom: 8px;
}

/* 三本線のうち一番下の棒の位置調整 */
.drawer-open span:after {
    top: 8px;
}

/* アイコンがクリックされたら真ん中の線を透明にする */
#drawer-check:checked~.drawer-open span {
    background: rgba(255, 255, 255, 0);
}

/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#drawer-check:checked~.drawer-open span::before {
    bottom: 0;
    transform: rotate(45deg);
}

#drawer-check:checked~.drawer-open span::after {
    top: 0;
    transform: rotate(-45deg);
}

/* メニューのデザイン*/
.drawer-content {
    width: 20%;
    height: 18%;
    position: fixed;
    top: 0;
    left: -100%;
    /* メニューを画面の外に飛ばす */
    z-index: 10001;
    background: white;
    transition: left 0.3s;
    overflow: auto;
}

/* アイコンがクリックされたらメニューを表示 */
#drawer-check:checked~.drawer-content {
    left: 0;
}