/** W3C **/
body {
/*
    font-size: 10pt;
*/
}


/** Bootstrap **/
h1 {
    font-size: 1.5rem;
    font-weight: bold;
    margin-top: 0.5rem;
}
.bg-primary {
    background-color: #892a2a !important;
}
.btn-danger {
    --bs-btn-color: #fff;
    --bs-btn-bg: #bf2231; /* #dc3545 */
    --bs-btn-border-color: #dc3545;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #bb2d3b;
    --bs-btn-hover-border-color: #b02a37;
    --bs-btn-focus-shadow-rgb: 225,83,97;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #b02a37;
    --bs-btn-active-border-color: #a52834;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #dc3545;
    --bs-btn-disabled-border-color: #dc3545;
}
.btn-info {
    --bs-btn-color: #000;
    --bs-btn-bg: #b7e2eb; /* #0dcaf0 */
    --bs-btn-border-color: #0dcaf0;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #31d2f2;
    --bs-btn-hover-border-color: #25cff2;
    --bs-btn-focus-shadow-rgb: 11,172,204;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #3dd5f3;
    --bs-btn-active-border-color: #25cff2;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: #0dcaf0;
    --bs-btn-disabled-border-color: #0dcaf0;
}
.nav-tabs {
    border-bottom-color: #666;
}
.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
    border-color: #666 #666 #fff;
}
.nav-tabs .nav-link,
.nav-tabs .nav-link {
    border-color: #e9ecef #e9ecef #666;
}
.nav-tabs .nav-link:focus,
.nav-tabs .nav-link:hover {
    border-color: #0056b3 #0056b3 #0056b3;
}

.flash {
    position: absolute;
    z-index: 999;
    width: 100%;
    left: 0;
    top: 0;
    margin: 0;
    padding: 8px;
}
.flash span {
    color: #999;
    cursor: pointer;
}
.flash .inner {
    width: 100%;
    opacity: 0.95;
    box-shadow: 2px 2px 8px #999;
    left: 0;
    padding: 16px 8px 12px;
    border: 1px solid #333;
    font-weight: bold;
}


/* paginate */
.page_block {
    overflow: hidden;
    margin: 4px 0;
}
.page_block .count {
    padding: 6px 12px;
    display: inline-block;
}
.page_block .pagination {
    float: right;
    margin: 0;
}
.pagination>li>a,
.pagination>li>span {
    border: none;
    padding: 0 0.5rem;
}
.pagination>.active>a,
.pagination>.active>a:focus,
.pagination>.active>a:hover,
.pagination>.active>span,
.pagination>.active>span:focus,
.pagination>.active>span:hover {
    background-color: inherit;
    color: #337ab7;
    font-weight: bold;
}


/* OpenLayers */
.ol-popup {
    position: absolute;
    background-color: white;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
    padding: 15px;
    border-radius: 10px;
    border: 1px solid #cccccc;
    bottom: 12px;
    left: -50px;
    min-width: 280px;
}
.ol-popup:after,
.ol-popup:before {
    top: 100%;
    border: solid transparent;
    content: ' ';
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}
.ol-popup:after {
    border-top-color: white;
    border-width: 10px;
    left: 48px;
    margin-left: -10px;
}
.ol-popup:before {
    border-top-color: #cccccc;
    border-width: 11px;
    left: 48px;
    margin-left: -11px;
}
.ol-popup-closer {
    text-decoration: none;
    position: absolute;
    top: 2px;
    right: 8px;
    color: #000;
}
.ol-popup-closer:after {
    content: '✖';
}
#popup-content {
    font-size: 0.75rem;
}
#popup-content h3 {
    color: #000;
    margin: 0 0 0.25rem;
    padding: 0;
    font-size: 1rem;
    border-top: none;
    border-bottom: 1px solid #000;
}
#popup-content table {
    margin-bottom: 0.25rem;
}
#popup-content th {
    font-size: 0.75rem;
    padding-left: 0;
}


/* 調整 */
.container {
    padding-left: 32px;
    padding-right: 32px;
}