html,
body {
    height: 100%;
    font-size: 16px;
    animation: fadeIn .8s normal;
    background-color: #edf4f9;
    line-height: 1.8;

}

@keyframes fadeIn {
    /*animation-nameで設定した値を書く*/

    0% {
        opacity: 0
    }

    /*アニメーション開始時は不透明度0%*/

    100% {
        opacity: 1
    }

    /*アニメーション終了時は不透明度100%*/

}

button img,
button svg{
    width: 60px;
    height: 60px;
    margin:0px auto 0px auto;
}

.button-box{
    font-size: 2.5vw;
    height: 100%;
}

.button-box button{
    height: 100%;
}

.map-wrap {
    position: relative;
    width: 100%;
    height: 100vh; /* 必要に応じて調整 */
    overflow: hidden;
}


        #map {
            height: 100%;
            width: 100%
        }

        .control {
            position: fixed;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 100px;
            /* background: #eee; */
            background-color: orange;
            z-index: 1100;
            box-shadow: 0 0 2px 1px #aaa;
        }


        .corss-box {
            position: relative;
            width: 100%;
            height: 50%;
        }

        #corss_mark {
            position: absolute;
            width: 50px;
            height: 50px;
            left: 50%;
            top: 50%;
            margin-left: -25px;
            margin-top: -25px;
            pointer-events: none;
        }

        #houi {
            position: fixed;
            z-index: 1000;
            width: 100px;
            height: 100px;
            background-color: white;
            border-radius: 50%;
            left: 10px;
            top: 10px;
            pointer-events: none;
            box-shadow: 0 0 1px 1px #aaa;
        }

        #houi.hw{
            background-image: url('../images/direction_base.svg');
        }
        #houi.ck{
            background-image: url('../images/direction_base_checker.svg');
        }

        #distance{
            position: absolute;
            width: 100px;
            top: 100px;
            text-align: right;
            width: 100px;
        }

        #bearing{
            position: absolute;
            width: 100px;
            height: 100px;
            top: 0px;
            left: 0;
        }

        #bearing_text{
            position: absolute;
            width: 100px;
            left: 150px;
            text-align: right;
        }


        .custom-map-control-button {
            background-color: #fff;
            border: 0;
            border-radius: 5px;
            box-shadow: 0 1px 4px -1px rgba(0, 0, 0, 0.3);
            margin: 10px;
            padding: 10px;
            font: 400 18px Roboto, Arial, sans-serif;
            overflow: hidden;
            height: 50px;
            cursor: pointer;
            width: 50px;
        }

        .search-box{
            background-color: #f5f5f5;
            padding: 10px 10px;
            position: absolute;
            /* bottom: 0; */
            top: -80px;
            transition: .5s;
            width: 100%;
            z-index: 1500;
            box-shadow: 0 0 1px 1px #aaa;
        }

        .search-box input{
            border-radius: 10px;
            width: 90%;
        }

        .search-box.active{
            top: 0px;
            /* bottom: 100px; */
        }

        #cross_mark{
            width: 40px;
            height: 40px;
            position: absolute;
            top: 50%;
            left:50%;
            margin-left: -20px;
            margin-top: -20px;
            z-index: 1000;
        }

        #jisa{
            position: fixed;
            top: -120px;
            left: 50%;
            transition: .5s;
            width: 150px;
            margin-left: -75px;
        }

        #jisa.active{
            top:10px;
        }

        table.table{
            width: 100%;
            background-color: white;
            border-radius: 10px;
            box-shadow: 0 1px 4px -1px rgba(0, 0, 0, 0.3);

        }

        table.table td{
            padding: 5px 10px;

        }

        table.table tr:nth-child(2) td{
            border-bottom: 1px solid #aaa;
            border-top: 1px solid #aaa;
        }

        #display_line.active,
        #time.active,
        #search.active,
        #henkaku.active
        {
            background-color: #ffc653;
        }


        #jisa_calc{
            position: absolute;
            background-color: white;
            border-radius: 10px;
            box-shadow: 0 1px 4px -1px rgba(0, 0, 0, 0.3);
            /* max-width: 350px; */
            width: 90%;
            left:5%;
            padding: 25px;
            z-index:1000;
            transition: .5s;
            bottom:  -120vh;
        }

        #jisa_calc.active{
            bottom: 120px;            
        }

        #jisa_calc select{
            border-radius: 5px;
            padding: 5px 30px 5px 15px!important;
            margin-right: 5px !important;
        }

        option{
            padding: 10px;
        }

.btn{
    border-radius: 5px;
    background-color: #eee;
    box-shadow: 0 1px 4px -1px rgba(0, 0, 0, 0.3);
    padding: 5px 10px;
    border:1px solid #ccc;
}

.jisa_calc_table td{
    width: 200px;
    padding: 10px;
    border-bottom: 1px solid #e5e5e5;
}

.gm-control-active{
    /* top: -10px !important; */
}

#search_button{
    min-width: 50px;
    padding: 5px 10px;
    background-color: white;
    border-radius: 10px;
    margin-left: 5px;
}

.start_btn{
    position: absolute;
    width: 200px;
    text-align: center;
    height: 30px;
    line-height: 30;
    margin-left: -100px;
    margin-top: -15px;
    left: 50%;
    top: 50%;
    z-index: 3000;
}

.user-control-btn{
    position: absolute;
    bottom: 100px;
    right: 0;
    background-color: #aaa;
    padding: 20px;
    color:white;
    /* width: 220px; */

}

.user-control-btn a{
    display: inline-block;
    width: 100%;
    height: 100%;
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
}

.user-table.table th,
.user-table.table td{
    padding: 15px;
    text-align: center;
}

.user-table thead th{
    background-color: #bbddf6;
}

select#continue_flag_select{
    padding: 5px 20px;
    width: 200px;
}

.error.text-danger{
    font-weight: bold;
    color:#a00;
}

.login-title{
    font-weight: bold;
    font-size: 1.2rem;
}

button a{
    width: 100%;
    height: 100%;
}

#myTable_filter{
    padding-bottom: 10px !important;
}

.dataTables_length#myTable_length select{
    padding-right: 30px;
}

table.dataTable thead>tr>th.sorting:before,
table.dataTable thead>tr>th.sorting:after{
    right:4px !important;
}

table.dataTable{
    font-size: 12px;
}

.cross-mark-box{
    position: relative;
}

.houi-mark{
    width:15px;
    height:15px;
    background:rgba(0,0,0.1);
}
.mark1{
    position: absolute;
    z-index: 100;
}

@media screen and (max-width: 375px){
    
    #jisa{
        margin-left: -38px;
    }
    
}


.search-box #history-list {
    display: none;
}

.search-box.active #history-list {
    display: block;
}

#history-list li{
    list-style-type: none;
    border-bottom:1px solid #ddd;
    padding: 5px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.list-close{
    width: 25px;
    text-align: center;
}

#history-list li span{
    display: inline-block;
    width: 100%;
}
