@charset "utf-8";


:root {
    --link-color1: #0a6ed9;
    --link-color1: #306FBB;
    --header-color1: #432e22;
    --text-color1: #333;

    --theme-color1: #039359;
    --bs-pagination-active-bg: #3c73d2;
}


html {
    /* scroll-behavior: smooth; */
    font-size: 1rem;
    /*font-size: 0.9rem;*/
}


/*body*/

body {
    font-weight: 400;
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    color: #333;
    font-feature-settings: "palt";
    /*padding-top: 60px;*/
    padding-top: 56px;
    padding-top: 64px;
    font-family: 'Roboto', 'Noto Sans JP', sans-serif;
}

:target::before {
    content: "";
    display: block;
    height: 90px;
    margin-top: -90px;
}

b,
strong {
    font-weight: 500;
}

a {
    text-decoration: none;
    background-color: transparent;
    color: #007bff;
}

a:hover {
    color: transparent;
    background-color: transparent;
}

.border,
.img-thumbnail {
    /*border-width: 2px !important;*/
}


body input {
    font-family: 'Roboto', 'Noto Sans JP', sans-serif;
    font-weight: 300;
}

label > button {
    display: none;
}

.link {
    display: none;
}


label {
    font-weight: 600;
}



/* alert */

.bg-gray {
    background-color: #E7EBED !important;
}

.alert.alert-secondary.bg-gray {
    border: none;
    padding-bottom: 0.25rem;
    padding: 0.5rem 0.75rem;
}

.alert.alert-secondary .input-group > .input-group-append button {
    border-radius: 0.25rem !important;
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

.alert.alert-secondary form .form-group {
    margin-top: 0.5rem;
    margin-bottom: 1rem;
}

.alert.alert-secondary form .form-group:last-child {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}


/* bg color */

.bg-disease {
    background-color: #BFD9ED !important;
}

.bg-drug {
    background-color: #FDEBC5 !important;
}

.bg-dna {
    background-color: #d4edda !important;
}


.bg-beige1 {
    background-color: #f7f7f2 !important;
}

.bg-beige2 {
    background-color: #FAF8F0 !important;
}

.bg-green1 {
    background-color: #E9F3ED !important;
}

.bg-yellow1 {
    background-color: #fff8e7 !important;
}

.bg-gray1 {
    background-color: #f7f8f9 !important;
}

.bg-gray2 {
    background-color: #f3f4f6 !important;
}

.bg-white {
    background-color: #fff !important;
}

.dropdown-menu {
    margin: 0;
    box-shadow: 0 2px 16px 0 rgba(0, 0, 0, 0.2);
    /* box-shadow: 0 2px 16px 0 rgba(0,0,0,0.2); */
    /* box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); */
    /* border: 1px solid #e3e6f0; */
    border: 0px solid transparent;
}

.disable_link {
    color: gray;
}



/* main */

main h2 + hr {
    margin-top: 0.5rem;
}

main th br,
main td br,
main .card br,
main .alert br {
    display: block;
}



/* link icon*/

main a[target^="_blank"]:after,
footer a[target^="_blank"]:after {
    margin: 0 .3em;
    content: url(../images/blank_icon.png);
}

main .card a.stretched-link[target^="_blank"]:after,
main section a.noicon[target^="_blank"]:after {
    margin: 0;
    content: none;
}

main section a[href*=".pdf"] {
    /*background: none;*/
    padding-right: 0;
}

main section a[href*=".pdf"]:after {
    content: "\f1c1";
    font-family: "Font Awesome 6 Free";
    font-weight: 500;
    margin: 0 .3em;
    color: #c82333;
}

main section a[href*=".xls"]:after,
main section a[href*=".xlsx"]:after {
    content: "\f1c3";
    font-family: "Font Awesome 6 Free";
    font-weight: 500;
    margin: 0 .3em;
    color: #218838;
}

main section a[href*=".doc"]:after,
main section a[href*=".docx"]:after {
    content: "\f1c2";
    font-family: "Font Awesome 6 Free";
    font-weight: 500;
    margin: 0 .3em;
    color: #0069d9;
}

main a.noicon:before,
main a.noicon:after {
    content: none;
}



/* nav */

.bg-dark {
    /*background-color: #1a4172 !important;
    background-color: #039359 !important;*/

    background-color: var(--theme-color1) !important;
    /*min-height: 56px;
    min-height: 64px;*/
}

body#green .bg-dark {
    background-color: #00736D !important;
}

header {
    /*height: 64px;*/
    display: block;
}

.navbar {
    --bs-navbar-padding-y: 0.75rem;
}

nav.fixed-top {
    min-height: 64px;
    /*min-height: 56px;*/
}

nav.fixed-top .nav-link {
    font-weight: 500;
    /*font-weight: 400;*/
    color: rgba(255, 255, 255, 1);
    color: rgba(255, 255, 255, 0.85);
    /*transition: all 0.2s ease;*/
}

nav.fixed-top .nav-link:focus,
nav.fixed-top .nav-link:hover {
    color: #fff;
}

nav.fixed-top .nav-link {
    padding-top: 0.2rem;
    padding-bottom: 0;
}

.navbar-brand {
    margin-right: 5.5rem;
    margin-right: 0;
}

body a.navbar-brand {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-weight: 600;
}

body .navbar .update {
    color: #fff;
    font-size: 0.9rem;
    font-weight: 400;
    margin-left: 1rem;
}



/* main*/

main {
    padding: 30px;
    padding: 40px 30px;
    padding: 50px 30px;
}

main a {
    /*color: #306fbb;*/
    font-weight: 500;
}

main a:hover {
    color: #CC0033;
    /*text-decoration: underline;*/
    /*transition: all 0.4s ease;*/
}



/*  tab */

.nav-tabs-result {
    font-weight: 500;
}

.nav-tabs-result .nav-link {
    color: var(--link-color1);
}



/*  btn */

.btn-primary {
    color: #fff;
    background-color: #3c73d2;
    border-color: #4582EC;
    /*background-color: #2c7be5;
    border-color: #2c7be5;*/
}


.btn-primary:hover {
    color: #fff;
    background-color: #1954b9;
    border-color: #0062cc;
}

.btn-rounded {
    border-radius: 9999px;
}

main .btn {
    font-weight: 500;
    transition: all 0.3s ease;
    /*box-shadow: 0 2px 0 rgba(0, 0, 0, .2);*/
}

main h1 .btn {
    box-shadow: none;
    font-weight: 500;
}

main table .btn,
main .alert .btn,
main .card .btn,
main .order-box .btn {
    box-shadow: none;
}

.form-control[readonly] {
    /*background-color: #fff;
    opacity: 1;
    line-height: 1.6;*/
    background-color: #fff;
    font-size: 0.9rem;
}



/* header */

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 600;
}

h1 small {
    color: #605f5f;
    font-size: medium;
    font-size: 1.5rem;
    font-weight: normal;
    margin-left: 0.5rem;
}

main h1,
main .h1 {
    font-style: normal;
    font-size: 2rem;
    font-size: 1.9rem;
    /* font-weight: 600; */
    margin-bottom: 1.5rem;
    margin-bottom: 1.0rem;

    font-style: normal;
    font-weight: 500 !important;
}

main .h2,
main h2 {
    font-size: 1.25rem;
    font-size: 1.25rem;
    font-size: 1.5rem;
    /* border-bottom: 2px solid rgba(0, 0, 0, .1); */
    /* margin-bottom: .75rem; */
    padding: 0;
    /*font-family: "Noto Sans JP", sans-serif;*/
    font-style: normal;
    /* font-weight: 400 !important;*/
}



/* breadcrumb */

.col-bread {
    margin-bottom: 1.5rem;
    margin-top: 1.5rem;
    margin: 0;
    margin-top: 1rem;
}

ol.breadcrumb {
    padding-left: 0;
    background-color: transparent;
    font-size: 0.9375rem;
    font-size: 0.875rem;
}

ol.breadcrumb a {
    font-weight: 600;
    font-weight: 500;
}

.breadcrumb-item.current-item {
    /*color: #6c757d;*/
}

.breadcrumb-item + .breadcrumb-item::before {
    content: ">";
    font-family: monospace;
    font-family: 'Font Awesome 6 Free';
    content: "\f105";
    font-weight: 900;
    color: #bfbfbf;
}

ol.breadcrumb li {
    max-width: 620px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}



/* link */

ol.breadcrumb a,
.post p a,
.post ul a,
.post ol a,
.post table a {
    /*text-decoration: none;
    color: #306FBB;*/
    font-weight: 500;
    /*transition: all 0.4s ease;*/
}



/* post-content */

.post {
    margin-bottom: 3rem;
}

.post a:hover {
    /*color: #CC0033;
    text-decoration: underline;
    transition: all 0.3s ease;*/
}

.post h2 {
    font-size: 1.75rem;
    font-size: 1.5rem;
    /*font-size: 1.625rem;*/
    margin-bottom: 1rem;
    padding: 14px 26px;
    padding: 14px 10px 14px 26px;

    background-color: #e4f3e8;
    position: relative;
    line-height: normal;
}

.post h2::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 8px;
    height: 100%;
    /*background: #1e5799;*/
    background-color: #ECF4F6;
    background: linear-gradient(to bottom, var(--theme-color1) 0%, var(--theme-color1) 0%, var(--theme-color1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#1e5799', endColorstr='#4971bc', GradientType=0);
}


.post .post-content h3 {
    font-size: 1.25rem;
    border-bottom: 1px #d0d0d0 solid;
    border-bottom: 1px #d7d7d7 solid;
    margin-bottom: 1rem;
    padding-bottom: 0.2rem;
    padding-top: 0.2rem;
    font-weight: 600;
    font-feature-settings: normal;

    color: var(--theme-color1);
    font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
    border-bottom-style: dotted !important;
}

.post .post-content p,
.post .post-content ul,
.post .post-content ol {
    margin-bottom: 1.5rem;
    font-size: 0.9375rem;
    line-height: 1.65;
    letter-spacing: 0.03rem;
}

.post .post-content ul ul,
.post .post-content ol ol,
.post .post-content table.table table.table {
    margin-bottom: 0;
    margin-bottom: 0.25rem;
}

body:lang(ja) .post .post-content p {
    text-align: justify;
    word-wrap: break-word;
}


.post .post-content p {
    margin-left: 0.25rem;
}



/* table */

.post .post-content table a {
    transition: none;
    word-break: break-all;
}

.post .post-content table.table {
    /*border: 1px solid #ffffff;*/
    margin-bottom: 2rem;
    color: #333 !important;
}

.table > :not(caption) > * > * {
    color: #333 !important;
}

.post .post-content table.table th,
.post .post-content table.table td {
    /*border: 1px solid #ffffff;
    background-color: #F1F1F1;*/
    border: 1px #d7d7d7 solid;
    background-color: #F9F9F9;

    font-size: 0.9rem;
    font-size: 0.9375rem;
    padding: 0.3rem;

    background-color: rgba(0, 0, 0, .025);
    border: 1px solid rgba(0, 0, 0, .125);
    /*vertical-align: middle;
    text-align: center;*/
}

.post .post-content table.table th {
    background-color: #f2f2f2;
    /*text-align: center;*/
    font-weight: 500;
    vertical-align: middle;
    white-space: nowrap;
    width: 25%;
    width: 20%;
}


.post .post-content .table-responsive table.table {
    margin-bottom: 0;
}

.post .post-content .table-responsive {
    margin-bottom: 2rem;
}



/* テーブル内リスト */
.post .post-content table.table ul {
    margin-bottom: 0;
}



/* 検索結果一覧 */
.alert-result {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
    padding-top: 0.75rem;
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
    padding-top: 0.75rem;
    /*background-color: #F8F6F2;
    background-color: #F7F7F2;
    background-color: #F6F1E9;*/
    /*background-color: #f2f2f2;*/
    background-color: #f3f3ec;
    border: none !important;
    border: none !important;
    transition: all 0.3s ease;
    /* color: #333;*/

    /*border-color: #EAEAEA !important;*/
}

.alert-result a,
.alert-result a:hover {
    color: #333;
    color: #495057;
}

.alert-result:hover {
    /*opacity: 0.65;*/
    background-color: #f0e5d2;
    background-color: #e4f3e8;
    box-shadow: 0 2px 4px rgb(126 142 177 / 12%);
}

.alert-result .badge {
    font-size: 0.875rem;
    font-weight: 400;
    padding-bottom: 0.25em;
    padding-top: 0.45em;

    padding-bottom: 0.35em;
    padding-top: 0.55em;
    border-radius: 9999px;
    padding-left: 1rem;
    padding-right: 1rem;
    min-width: 7em;
    /*margin-right: 0.3rem;*/
}

.result-no {
    white-space: nowrap;
    font-size: 1rem;
    font-weight: 500;
    padding-right: 1rem;
}

.result-info {
    flex: 1;
}

.result-disease.badge {
    margin-right: 0;
}

.alert-result .result-disease {
    background-color: #6f6f6f !important;
    white-space: normal;
    text-align: left;
}

.alert-result .badge-pre {
    background-color: #0095d9;
}

.alert-result .badge-open {
    background-color: #02a37e;
}

.alert-result .badge-cancel {
    background-color: #d99d00;
}

.alert-result .badge-close {
    background-color: #dc3545;
}

.result-header {
    margin-bottom: 0.5rem;
    margin-bottom: 0.25rem;
}

.result-status {}

.result-jrct {
    /*display: none;*/
}

.result-disease {
    /*font-size: 1.125rem;
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0.25rem;*/
}

.result-title {
    font-size: 0.9rem;
    font-size: 1rem;
    margin-bottom: 0.25rem;
}

.result-footer {
    border-top: 1px dotted #d0d0d0;
    /*margin-top: 0.5rem;*/
    padding-top: 0.5rem;
}

.result-area {
    font-size: 0.9rem;
    margin-right: 0.75rem;
}

.result-age {
    font-size: 0.9rem;
    margin-right: 0.75rem;
}

.result-gender {
    font-size: 0.9rem;
    margin-right: 0.75rem;
}

.fa-user-clock {
    display: none;
}

.post .post-content .result-pagination ul.pagination {
    line-height: 1.5;
    letter-spacing: normal;
}

.result-setting {
    background-color: #f7f7f2;
    /*background-color: #f3f3ec;*/
    background-color: #f2f2f2;
}



/* 治験詳細情報 */

.alert-result-detail .result-title {
    font-size: 1.75rem;
    font-size: 1.5rem;
    font-weight: 600 !important;
}

.alert-result-detail:hover {
    /*background-color: #f2f2f2;*/
    background-color: #f3f3ec;
    box-shadow: none;
}

h2 .result-status {
    font-size: 1rem;
    font-weight: 500;
    /*margin-bottom: 0.25rem;*/
}

h2 .result-jrct {
    font-size: 0.9rem;
    font-size: 1rem;
    font-weight: 400;
}

.result-update {
    font-size: 1rem;
    margin-bottom: 2.5rem;
}

.fs-09 {
    font-size: 0.9rem !important;
}

.result-map {
    border: 1px solid rgba(0, 0, 0, .125);
}



/* modal */

.modal-header {
    background-color: #039359;
    color: #fff;
}

.modal-header h1.modal-title {
    font-weight: 600 !important;
}

.modal-content {
    background-color: #f2f2f2;
}

.modal-header .btn-close {
    filter: var(--bs-btn-close-white-filter);
}



/* pagination */

.active > .page-link,
.page-link.active {
    background-color: #3c73d2;
    border-color: #4582EC;
}


/*===================================================*/
/* pc */
/*===================================================*/

@media (min-width:769px) {


    /* breadcrumb */
    .col-bread {
        margin-top: 1.5rem;
        margin-top: 1rem;
        margin-bottom: 0.75rem;
        margin-bottom: 1.5rem;
    }

    ol.breadcrumb {
        padding-left: 0;
        background-color: transparent;
        font-size: 0.9375rem;
        font-size: 0.875rem;
    }


    /* post-content */

    .post .post-content {
        margin-bottom: 4rem;
    }

    .post h2 {
        font-size: 1.75rem;
        margin-bottom: 2.5rem;
        padding: 14px 26px;
        padding-right: 14px;
        /*margin-bottom: 1rem;*/
    }

    .post .post-content h3 {
        font-size: 1.25rem;
        font-size: 1.375rem;
        border-bottom: 1px #d0d0d0 dotted;
        margin-bottom: 1rem;
        padding-bottom: 0.2rem;
        padding-top: 0.2rem;
        font-weight: 600;
        font-feature-settings: normal;
    }

    .post .post-content p,
    .post .post-content ul,
    .post .post-content ol {
        margin-bottom: 1.5rem;
        font-size: 0.9375rem;
        line-height: 1.65;
        letter-spacing: 0.03rem;
        line-height: 1.8;
    }

    .post .post-content p {
        font-size: 1rem;
        line-height: 2;
        line-height: 1.8;
    }

    .post .post-content p {
        margin-left: 0.25rem;
    }

    .post .post-content table.table th,
    .post .post-content table.table td {
        /*line-height: 1.8;*/
        padding: 0.5rem;
    }


    /* left menu */
    aside h2.title {
        padding: 0;
        margin: 0;
        display: block;
        color: #494949;
        text-decoration: none;
        position: relative;
        padding: 0 0 30px 0;
        /* border-top: 2px solid #1bb6b6;*/
        border-top: 2px solid var(--theme-color1);
        /*border-bottom: 1px solid #cccccc;*/
        padding: 15px 0.75rem;
        font-size: 1.5rem;
        font-weight: 600;
        line-height: normal;
    }

    aside ul.list-group li.list-group-item:first-child {
        border-radius: 0;
    }

    aside ul.list-group li {
        position: relative;
        display: block;
        color: #333333;
        padding: 0;
        /*transition: all 0.2s ease;*/
        border-left: none;
        border-right: none;
        /*border-bottom: 1px solid #cccccc;*/
        /*border-radius: 0;*/
    }

    aside ul.list-group li a {
        display: block;
        color: #333333;
        font-weight: 500;
        padding: 0.75rem 0.75rem;
        transition: all 0.2s ease;
    }

    /* left menu hover */
    aside ul.list-group li:focus a,
    aside ul.list-group li:hover a {
        /* color: #856404; */
        /*background-color: #84b9e9;
        background-color: #a1c7e9;*/
        background-color: #ecf0f8;
        background-color: #edf5f6;
        cursor: pointer;
        padding-left: 0.95rem;
    }

    aside ul.list-group li.current {
        /* color: #856404; */
        /*background-color: #84b9e9;
        background-color: #a1c7e9;*/
        background-color: #ecf0f8;
        background-color: #edf5f6;
    }

    aside .col-form-label {
        padding-bottom: 0.125rem;
        /* padding-bottom: 0; */
        padding-top: 0.125rem;
        padding-top: 0.15rem;
        /* padding-top: 0;*/
    }
}



/* badge */

main .table .badge {
    font-size: 0.8rem;

}



/* map */

svg {
    display: block;
    /*max-width: 400px;*/
    margin: 0 auto;
}

.maps {
    transition: all ease .3s;
    cursor: pointer;
    stroke-width: 4px;
}

.hokkaido.maps a path,
.tohoku.maps a rect {
    fill: #8886DA;
    /*fill: #7479C2;*/
}

.tohoku.maps a path,
.tohoku.maps a rect {
    fill: #619FEB;
    /*fill: #4488D3;*/
}

.kanto.maps a path,
.kanto.maps a rect {
    fill: #32BECA;
}

.kinki.maps a path,
.kinki.maps a rect {
    fill: #B0B72F;
    fill: #ccd340;
}

.toukai3.maps a path,
.toukai3.maps a rect {
    fill: #4AB969;
}

.chugoku.maps a path,
.chugoku.maps a rect {
    fill: #EF9F27;
    fill: #e9c350;
}

.shikoku.maps a path,
.shikoku.maps a rect {
    fill: #9dce3b;
    fill: #D08F68;
    fill: #cc9370;
}

.kyushu.maps a path,
.kyushu.maps a rect {
    fill: #FD9FAB;
    /*fill: #FF7575;*/
}

.maps.active a path,
.maps.active a rect {
    opacity: 0.65;
}

.maps.maps-white a path,
.maps.maps-white a rect {
    /*fill: #fff;
    stroke: #dee2e6;
    stroke-width: 4px;*/
}

:root {
    --grade-color: 255, 143, 148;
    --grade-color: 241, 114, 123;

}

.maps.grade0 a path,
.maps.grade0 a rect {
    fill: rgba(var(--grade-color), 0);
    stroke: #dee2e6;
    stroke-width: 4px;
}

.maps.grade0 a {
    pointer-events: none;
    cursor: default;
    /*color: inherit;
    text-decoration: none;*/
}

.maps.grade25 a path,
.maps.grade25 a rect {
    fill: rgba(var(--grade-color), 0.3);
}

.maps.grade50 a path,
.maps.grade50 a rect {
    fill: rgba(var(--grade-color), 0.50);
}

.maps.grade75 a path,
.maps.grade75 a rect {
    fill: rgba(var(--grade-color), 0.75);
}

.maps.grade80 a path,
.maps.grade80 a rect {
    fill: rgba(var(--grade-color), 0.8);
}

.maps.grade100 a path,
.maps.grade100 a rect {
    fill: rgba(var(--grade-color), 1.0);
}

.map-text {
    font-family: 'Roboto', 'Noto Sans JP', sans-serif;
    font-size: 60px;
    font-weight: 600;
    fill: #fff;
    text-anchor: middle;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}

.grade0 .map-text {
    fill: #a8a9a8;
    fill: #333;
    text-shadow: none;
}

.grade25 .map-text,
.grade50 .map-text,
.grade75 .map-text,
.grade100 .map-text {
    fill: #333;
    text-shadow: none;
    /*text-shadow: 1px 1px 2px rgb(255 255 255);*/
}


/* etc */

::placeholder {
    color: #a2a2a2 !important;
    font-weight: 300 !important;
}

.text-danger {
    /*color: #0067b6;*/
}

div.alert.alert-secondary ul.pagination.pagination-abc {
    margin-bottom: 0
}



/* width */

.w-5 {
    width: 5%;
}

.w-10 {
    width: 10%;
}

.w-15 {
    width: 15%;
}

.w-20 {
    width: 20%;
}

.w-25 {
    width: 25%;
}

.w-30 {
    width: 30%;
}

.w-35 {
    width: 35%;
}

.w-40 {
    width: 40%;
}

.w-45 {
    width: 45%;
}


/* footer */

footer {
    font-size: 16px;
    font-size: 1rem;
    font-size: 0.9rem;
    font-size: 0.875rem;
    font-weight: 400;
    background-color: #f3f4f6;
}

footer div.container {}

footer a {
    font-weight: 500;
}

footer a:hover {
    color: #CC0033;
    text-decoration: underline;
    transition: all 0.4s ease;
}

footer span {
    display: block;
}

footer div.footer-logo,
footer div.footer-logo img {
    /*width: 150px;*/
    height: 80px;
    mix-blend-mode: multiply;
}

footer div.copyright-text {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 500;
}

footer div.footer-logo a[target^="_blank"]:after {
    content: none;
    margin: 0
}



/* back-top button */

.back-top i {
    font-size: 12px;
    color: #ffffff;
    margin: 0 !important;
    display: block;
}

.back-top {
    width: 40px;
    height: 40px;
    line-height: 40px;
    padding: 13px 14px !important;
    position: fixed !important;
    bottom: 25px;
    right: 25px;
    border-radius: 3px;
    display: block;
    text-align: center;
    z-index: 9998;
    /*visibility: hidden;*/
    opacity: 0;
    /*transform: translateY(50%);*/
    transition: all 0.3s ease-in-out;
    background-color: #333;
    transition: all 0.4s ease-in-out 0s;

}

a.back-top:hover {
    text-decoration: none;
    background: #666;
}


#main-banner {
    min-height: 85px;
}

.main-banner-image {
    display: none;
}

/* モバイル用のスタイル */
@media (max-width: 991.98px) {
    .data-source-mobile {
        display: block;
    }

    .data-source-pc {
        display: none;
    }
}

/* PC用のスタイル */
@media (min-width: 992px) {
    .data-source-mobile {
        display: none;
    }

    .data-source-pc {
        display: flex;
    }
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
    #main-banner {
        height: 123px;
    }

    .result-jrct {
        display: block;
    }

    .navbar-brand {
        margin-right: 0;
    }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
    #main-banner {
        height: 163px;
    }

    .result-jrct {
        display: block;
    }

    .navbar-brand {
        margin-right: 0;
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
    #main-banner {
        height: 163px;
    }

    nav.fixed-top {
        min-height: 56px;
    }

    .navbar-brand {
        margin-right: 5.5rem;
        margin-right: 3rem;
    }
}

/* Extra large devices (large desktops, 1000px and up) */
@media (min-width: 1000px) {
    #main-banner {
        height: 218px;
    }

    nav .d-xl-inline-block {
        display: inline-block !important;
    }
}

/* Extra large devices (large desktops, 1150px and up) */
@media (min-width: 1150px) {
    nav .d-xl-inline-block {
        display: inline-block !important;
    }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    #main-banner {
        height: 250px;
    }

    .navbar-brand {
        margin-right: 5.5rem;
        margin-right: 3rem;
    }
}

/* autocomplete */

ul.ui-autocomplete {
    list-style-type: none !important;
    /* リストの●ポチを消す */
    padding: 0 !important;
    margin: 0 !important;
    max-height: 200px !important;
    /* 最大高さを設定 */
    overflow-y: auto !important;
    /* 縦方向のスクロールを有効に */
    z-index: 9999 !important;
    /* 他の要素より前面に表示 */
    background-color: white;
    /* 背景色を白に設定 */
    position: absolute !important;
    /* 絶対位置に設定 */
    border: 1px solid #ccc !important;
    /* 全体に枠線を追加 */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1) !important;
    /* 影を追加 */
}

.ui-menu-item {
    padding: 8px 12px !important;
    /* パディングを設定 */
    cursor: pointer !important;
    position: relative !important;
    /* 相対位置に変更 */
    color: black !important;
    /* 文字色を黒に設定 */
}

.ui-menu-item:hover {
    background-color: #f0f0f0 !important;
    /* ホバー時の背景色を設定 */
}

.ui-menu-item:has(.ui-state-active) {
    background-color: #f0f0f0 !important;
    /* キーボード選択時の背景色を設定 */
}

.ui-helper-hidden-accessible {
    display: none !important;
    /* ホバー時の背景色を設定 */
}

section.privacy-policy ol li {
    position: relative;
    list-style-type: none;
}

section.privacy-policy ol li:before {
    position: absolute;
    right: calc(100% + 0.5rem);
    /* 0.5remは連番とテキストとの余白 */
    content: "("counter(list-item) ")";
}

section.privacy-policy p {
    text-indent: 1em;
}
