@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css");


body {
    overflow-x: hidden !important;

    Font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif !important;
    line-height: 1.65 !important;
    letter-spacing: 0.01em !important;
    text-align: justify !important;
}

main {
    margin-top: 30px;
}


.card-title-rule {
    border-left: 10px solid #BF0D1C;
    padding-left: 10px;
}

thead,
tbody,
tfoot,
tr,
td,
th {
    border-color: inherit;
    border-style: solid;
    border-width: 1px;
    border-color: #042136;
}

.mx-auto {
    overflow: hidden;
}

.footer-txt {
    font-size: 1.0rem;
    text-align: left;
    padding-left: 120px;
}

.bg-dark {
    --bs-bg-opacity: 1;
    background-color: #163965 !important;
}

.btn-spc {
    margin-bottom: 4px;
    margin-right: 5px;
}

/* 
.btn_width {
    width: 12rem;
}

.btn_width_type {
    width: 18rem;
}

.btn_width_ken {
    width: 8rem;
} */

.btn_50 {
    width: 4rem;
}

.search_spc {
    margin-top: 40px;
}

.kensu {
    font-size: 0.7rem;
}




.bd-placeholder-img {
    margin-top: 40px;
}

.txt-80 {
    font-size: 0.8rem;
}


/* --------- テーブル　　背景色 & hover --------- start */

.tbl_gname {
    background-color: #b8ddf7 !important;
    color: #000 !important;
}

.tbl_gname:hover {
    cursor: pointer;
}

.tbl_date {
    background-color: #b8ddf7 !important;
    color: #000 !important;
}

.tbl_info {

    background-color: #f3f3f6 !important;

}

.tbl_head {
    background-color: #cfcece !important;
}

.tbl_head_type {
    background-color: #cfcece !important;
    width: 20%;
}

.tbl_head_dark {
    background-color: #495057 !important;
    color: #fff !important;
    text-align: center !important;
}

/*** 廃院名 ***/
.tbl_gname_end {
    background: rgb(200, 197, 197) !important;
    color: #000 !important;
}

/*** 病院検索で、技術が終了している場合 **/
.tbl_end_contents_tech {
    background: rgb(200, 197, 197) !important;
    color: #000 !important;
}

.tbl_end_contents_tech:hover {
    cursor: pointer;
}

/*** 終了　適用期間 ***/
.tbl_end_date {
    background: rgb(200, 197, 197) !important;
}

.tbl_end {
    background: #BF0D1C !important;
    opacity: 0.6;
    color: white !important;
    text-align: center;
}

/* --------- テーブル　　背景色 & hover --------- end */


.gmap_iframe {
    margin-top: 20px;
    aspect-ratio: 16 / 9;
    /* max-width: 1000px; */
    width: 100%;
    height: auto;
    padding: 10px;
}


.card-text-sub {
    font-size: 1rem;
}

body {
    Font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif !important;
    line-height: 1.65 !important;
    letter-spacing: 0.01em !important;
    text-align: justify !important;
}

.footer {
    background: #333;
    color: #fff;

    padding-top: 2rem;
    padding-bottom: 2rem;

}

a {
    color: #b68f0e;
    text-decoration: none;

}

.white-link {
    color: #fff;
}

/*
.card-title {
     border-left: 10px solid #BF0D1C;
     padding-left: 10px; 
}
*/

.card-title.search_title {
    /* border-left: 10px solid #BF0D1C; */
    background: #F8E4EA;
    padding: 20px;
}

table span {
    font-size: 0.9rem !important;
}

.rule_item_number {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    text-decoration-line: underline;
}

.check {
    position: relative;
    color: black;
    /*    background: #d0ecff;*/
    background: #e9ecef;
    line-height: 1.4;
    padding: 0.25em 0.5em;
    margin: 2em 0 0.5em;
    border-radius: 0 5px 5px 5px;
}


.card {
    background: #f3f5f7 !important;
    border: 0px !important
}

.input-submit {
    background: #042136;
    color: #fff;
}

button {
    border-radius: 10 !important;
}

button.btn.btn-primary {
    /*    background: #DBE9F9;
    color: #000;
*/
    background: #0e75bf;
    color: #fff;
}

button.btn.btn-primary.active {

    background: #0b5e99 !important;
    color: #fff;
}


button.btn.btn-outline-primary {
    /*    background: #DBE9F9;
    color: #000;
*/
    background: #0e75bf;
    color: #fff;
}

button.btn.btn-primary.normal {
    background: #3281DD;
    color: #FFF;
}

/* 
.view_all {
    background: #BFB00D;
    color: black;
    border-color: #BFB00D;
}

.view_all:hover {
    background: #9d900b;
    color: black;
    border-color: #9d900b;
} */

.end-comment {
    display: flexz;
    align-items: flex-end !important;    /* 下揃え */
    line-height: 0%;
    margin-bottom: 8px;
}

.btn_syuryo {
    background: #BF0D1C !important;
    opacity: 0.6;
    color: #FFF;

    height: 25px;
    padding: 0px;
    margin-top: 0px;
    vertical-align: middle;
}

.equal_pref {
    display: flex;
    justify-content: space-between;
}

.link_footer {
    color: #FFF !important;
    font-size: 0.9rem;
}

.nav-tabs {
    margin-right: 2px;
    margin-left: 2px;
}

.navbar-brand {
    padding-right: 20%;
    padding-bottom: 0px;
    margin-bottom: 0px;
}

.nav-tabs .nav-link {

    border: 1px solid #ccc !important;
    border-bottom: 5px solid #ccc !important;
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
    background: #cfcece !important;
    font-size: 0.8rem !important;
    color: #000;

    padding-left: 10px;
    padding-right: 10px;
}

.nav-tabs .nav-link.active {

    color: #FFF !important;
    background: #C81535 !important;
    border-bottom: 5px solid #C81535 !important;

}


.navbar {
    background: #FFF !important;
    border-bottom: 5px solid #1F4090;
}

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


.navbar-toggler {
    color: #163965 !important;
}


.card {
    background: #FFF !important;
    border: 0px !important
}


.button-container {
    /* display: flex; */
    /* justify-content: space-between; */
    flex-wrap: nowrap;
    overflow: hidden;
    padding: 10px;
}

.button-container button {
    flex: 1;
    margin: 5px;
    font-size: 1rem;
    overflow: hidden;

}

.button-container-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 5px;
    padding: 5px;
    overflow: hidden;
}

.button-container-grid button {
    font-size: 1rem;
    background-color: #FFF;

    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 2px;
    padding-right: 2px;

}

.button-container-grid-type {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5px;
    overflow: hidden;

    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 2px;
    padding-right: 2px;
}

.button-container-grid-type button {
    font-size: 1rem;
    padding: 5px;
    background-color: #FFF;

    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 2px;
    padding-right: 2px;
}

.button-container-grid-ken {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    /* gap: 3px; */
    column-gap: 5px;
    row-gap: 10px;
    padding: 3px;
    overflow: hidden;
}

.button-container-grid-ken button {
    font-size: 1rem;
    padding: 3px;

}


.mx-auto {
    display: flex;
}

.usage_box {
    /*    background: #f3f5f7 !important;
    font-size: 1.0rem;
*/
    background: #fff !important;
    font-size: 0.8rem;
}

.footer .col-md-2 {
    margin: 0px !important;
}


.button-container {
    text-align: left;
    row-gap: 10px;
}

.nav-fill .nav-item .nav-link,
.nav-justified .nav-item .nav-link {
    width: unset;
}

.nav-justified>.nav-link,
.nav-justified .nav-item {
    margin-right: 3px;
}

.phps {
    margin-top: 50px;
}

.nav-end {
    margin-left: -2px;
    margin-right: -2px;
}

.nav-end-table {
    margin-top: -15px;
}

table {

    border-color: #495057 !important;
}

h6 {

    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem;
}


.tab-sm {
    display: none;
}

.rule_div {
    margin-top: 50px;

}

.rule-a {
    display: flex;
    height: 40px;
    align-items: flex-start;
}

@media (width <=768px) {
    main {
        padding-left: 10px;
        padding-right: 10px;
        font-size: 1rem !important;

        overflow: hidden;

    }

    .img_footer {
        padding-left: 20px;
        padding-top: 30px;
    }

    /*
    .footer-txt {
        font-size: 0.8rem;
    }
*/
    .nav_item {
        margin-left: 0px !important;
    }

    .card-body {
        padding-left: 3px !important;
        padding-right: 3px !important;
    }

    .button-container {
        padding: 3px;
        row-gap: 10px;

    }

    .button-container-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        column-gap: 5px;
        row-gap: 10px;
        padding: 2px;
        overflow: hidden;
    }

    .button-container-grid button {
        font-size: 1rem !important;
        margin: 2px;
    }

    .button-container-grid-type {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        column-gap: 5px;
        row-gap: 10px;
        padding: 2px;
        overflow: hidden;
    }

    .button-container-grid-type button {
        font-size: 1rem !important;
        margin: 2px;
    }

    .button-container-grid-ken {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        /* gap: 2px; */
        padding: 2px;
        overflow: hidden;
    }

    .button-container-grid-ken button {
        font-size: 1rem;
        padding: 2px;

    }

    .button-container button {
        font-size: 1rem !important;
        row-gap: 10px;
        column-gap: 5px;
    }

    .kensu {
        font-size: 0.7rem;
    }

    /*
    .tbl_date {
        font-size: 0.7rem !important;
    }
*/
    .card {
        background: #fff !important;

    }


    .navbar {
        background: #FFF !important;
        height: 80px;
        border-bottom: 5px solid #1F4090;
    }

    .md-flex {
        display: block;
    }

    .md-justify-between {
        justify-content: space-between;
    }

    .copyright {
        text-align: left;
    }

    .mx-auto {
        display: block;
    }

    .img_banner {
        display: flex;
        flex-direction: row;

        margin-top: 10px !important;
        margin-bottom: 10px !important;
    }

    .side_banner {
        display: none;
    }

    .low_banner {
        margin-top: 15px;
        margin-bottom: 20px;
    }

    .phps {
        margin-top: 60px;
    }


    .img-fluid {
        margin-bottom: 10px;
        width: 220px !important;

    }

    .check {
        line-height: 1.8;
    }

    .end-comment {
        margin-bottom: 25px;
    }


    /* 
    .tab-text {
        font-size: 0.7rem;
    } */

    /* 
    .container-fluid .navbar-brand .img-fluid {
        width: 172px !important;
        height: 31.03px !important;
    } */

    .tab-lg {
        display: none;
    }

    .tab-sm {
        display: block;
        font-size: 1.2rem;
    }

}

@media (768px<width <1200px) {


    main {
        padding-left: 20px;
        padding-right: 20px;
        margin-top: -30px;

    }

    .img_footer {
        padding-left: 20px;
    }

    .nav_item {
        position: relative;
        top: 10px;
        right: 40px;
        margin: 0px;
        height: 30px;
        width: 240px;
        border-left: gray;
        border-left-style: solid;
        /* border-right: gray;
            border-right-style: solid; */
        text-align: center;
        padding-bottom: 0px;
        padding-top: 0px;
        padding-left: 0px !important;
        padding-right: 0px !important;
        border-width: 1px;
        font-size: 0.8rem;
    }

    .nav_item_lefter {
        border-right: gray;
        border-right-style: solid;
        border-right-width: 1px;
    }

    .button-container-grid button {
        font-size: 0.8rem !important;
        margin: 1px;
    }

    .button-container-grid-type button {
        font-size: 0.7rem !important;
        margin: 1px;
    }


    .button-container-grid-ken {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        /* gap: 2px; */
        padding: 2px;
        overflow: hidden;
    }

    .button-container-grid-ken button {
        font-size: 1rem;
        padding: 2px;
    }

    .card {
        background: #fff !important;
    }

    .img_banner {
        width: 180px;
        display: flex;
        flex-direction: column;

        margin: 10px;
    }

    .side_banner {

        float: left;
        margin-top: 70px !important;
    }

    .low_banner {
        display: none;
    }

    .phps {
        margin-top: 120px;
    }


    .tab-text {
        font-size: 1.2rem;
    }


    .navbar-brand {
        padding-right: 5%;
        padding-bottom: 0px;
        margin-bottom: 0px;
    }


    .tab-lg {
        display: block;
    }

    .tab-sm {
        display: none;
    }

    .rule_div {
        margin-top: 100px;

    }

    .bd-placeholder-img {
        margin-top: 80px;
    }
    
    
}


@media (min-width: 1200px) {
    main {
        max-width: 1200px;
        padding-left: 20px;
        padding-right: 20px;

    }

    .container-fluid {
        max-width: 1200px;
        position: center;
        height: 70px;
        display: flex;
        justify-content: space-between;
    }

    .column {
        flex: 1;
        padding: 10px;
    }

    .column:not(:last-child) {
        border-right: 2px solid black;
        /* 列の間に線を引く */
    }

    .img_footer {
        padding-left: 20px;
    }

    .nav_item {
        position: relative;
        top: 10px;
        right: 40px;
        margin: 0px;
        height: 30px;
        width: 300px;
        border-left: gray;
        border-left-style: solid;
        /* border-right: gray;
        border-right-style: solid; */
        text-align: center;
        padding-bottom: 0px;
        padding-top: 0px;
        padding-left: 50px;
        padding-right: 50px;
        border-width: 1px;
    }

    .nav_item_lefter {
        border-right: gray;
        border-right-style: solid;
        border-right-width: 1px;
    }

    .navbar {
        padding-bottom: 0px;
    }


    .img_banner {
        width: 235px;
        display: flex;
        flex-direction: column;

        margin: 10px !important;

    }

    .side_banner {

        float: left;
        margin-top: 70px !important;
    }


    .low_banner {
        display: none;
    }

    .footer {
        /* max-width: 1200px; */
        padding-left: 20px !important;
        padding-right: 20px !important;

    }

    .tab-text {
        font-size: 1.2rem;
    }

    h6 {
        font-size: 1.2rem;
    }

    .img-fluid {
        margin-bottom: 10px;
        width: 266px !important;
        height: 48px !important;
    }

}