@charset "UTF-8";

/* サイト名に英語が含まれていて、字が細くなってしまうので */
.login-logo, .register-logo {
    font-weight: 400;
}

/* ロゴが四角形のため */
.login-logo a img {
    border-radius: 50%;
}

.navbar-light .navbar-nav .nav-link {
    color: #ffffff!important;
}

.preloader {
    background-color: rgba(244, 246, 249, 0.8);
}

.content-header {
    padding-bottom: 0!important;
}

.content-header h4 {
    margin-bottom: 0;
}

/*.breadcrumb-item {*/
/*    font-size: 14px;*/
/*}*/

/*td {*/
/*    font-size: 14px;*/
/*}*/

.table td, .table th {
    vertical-align: middle;
    word-break: break-all;
}

.table th {
    white-space: nowrap;
}

.card.card-row .card-body {
    height: calc(100% - (12px + (1.8rem * 1.2) + 0.5rem));
    overflow-y: auto;
}

.top-info-list {
    margin-bottom: 0;
    padding-inline-start: 0;
    margin-block-end: 0;
    list-style: none;
}

@media (max-width: 768px) {
    .card-body {
        padding: 20px;
    }
}

@media (max-width: 768px) {
    .table-responsive table th,
    .table-responsive table td {
        /*white-space: nowrap;*/
        max-width: 500px;
    }

    .timeline>div>.timeline-item>.time {
        float: unset;
    }
}

.timeline {
    margin: unset!important;
}

.custom-control-label {
    cursor: pointer;
    /*box-sizing: border-box;*/
}

.custom-control-label:hover {
    /*border-bottom: 1px solid #007bff;*/
    box-shadow: 0 1px 0 0 #007bff;
}

.page-top {
    position: fixed;
    bottom: 0;
    right: 20px;
    font-size: 38px;
    margin: 0;
    width: 50px;
}

.page-top a {
    background: #6e6e6e;
    text-decoration: none;
    color: #fff;
    text-align: center;
    display: block;
    border-radius: 10px;
}

.page-top a:hover {
    background: #9b9b9b;
}

@media (max-width: 768px) {
    .toc-area {
        display: none;
    }
}

.toc-area {
    position: sticky;
    top: 4rem;
    height: 100%;
}

.toc-list {
    padding-inline-start: 0;
    height: 550px;
    overflow-y: auto;
}

.toc-list li {
    list-style: none;
    position: relative;
}

.toc-list li.top-title {
    margin-left: 0;
    font-weight: bold;
}

.toc-list li a:hover {
    text-decoration: underline;
}

.swal2-container.swal2-grow-row>.swal2-modal {
    flex: unset!important;
    width: auto;
    min-width: 30%;
}

/*.toc-list li a {*/
/*    padding: 8px 0 8px ;*/
/*    display: block;*/
/*}*/

.article-index {
    border-left: solid 1px #e0e0e0;
    padding-inline-start: 0;
    margin-left: 15px;
}

.article-index li {
    margin: 0;
    list-style: none;
    position: relative;
}

.article-index li a:hover {
    text-decoration: underline;
}

.article-index li a {
    padding: 6px 0 6px 0;
    display: block;
    margin-left: 15px;
    font-size: 14px;
}

