@charset "utf-8";

/*========================================================

診療時間表：１

=========================================================*/
.time-table-1{
}
.time-table-1 table{
    width: 100%;
    border-collapse:separate;
    border-spacing: 0;
}

/*
見出し要素
---------------------------------------------------------*/
.time-table-1 table th{
    text-align: center;
    background: #084e33;
    width: 10%;
    padding: 1.2rem 0;
}
.time-table-1 table th:first-child{
    width: 35%;
}
.time-table-1 table th{
    color: #fff;
    line-height: 1;
}

/*
データ要素
---------------------------------------------------------*/
.time-table-1 table td{
    text-align: center;
    width: 10%;
    padding: 1.5rem 0;
    vertical-align: middle;
}
/*記号*/
.time-table-1 table td{
    font-weight: bold;
    color: #a8814f;
    line-height: 1;
}
/*時刻のテキスト*/
.time-table-1 table td:first-child{
    font-weight: bold;
    color: #805b30;
    line-height: 1;
}

/*
ボーダー
---------------------------------------------------------*/
/*見出し*/
.time-table-1 table th{
    border-left: 1px solid rgba(255, 255, 255, 0.5);
}
/*見出し：両サイドは背景色に*/
.time-table-1 table th:first-child{
    border-left: 1px solid #50320e;
}
.time-table-1 table th:last-child{
    border-right: 1px solid #50320e;
}
/*データ*/
.time-table-1 table td{
    border-left: 1px solid #c3ac91;
    border-bottom: 1px solid #c3ac91;
}
.time-table-1 table td:last-child{
    border-right:1px solid #c3ac91;
}

/*
角丸
---------------------------------------------------------*/
.time-table-1 table tr:first-child th:first-child{
    border-radius: 6px 0 0 0;
}
.time-table-1 table tr:first-child th:last-child{
    border-radius: 0 6px 0 0;
}
.time-table-1 table tr:last-child td:first-child {
    border-radius: 0 0 0 6px;
}
.time-table-1 table tr:last-child td:last-child {
    border-radius: 0 0 6px 0;
}

/*
レスポンシブ
---------------------------------------------------------*/
@media screen and (max-width: 375px) {
    .time-table-1 table {
        font-size: 1.2rem;
    }
    .time-table-1 table th {
        padding: 8px 0;
    }
    .time-table-1 table td {
        padding: 8px 0;
    }
}

/*========================================================

診療時間表：２

=========================================================*/

/*---------------------------------------------------------*/
/*診療時間表*/
.time-table-2{
}
.time-table-2 table{
    margin-top: 0rem;
    width: 100%;
    border-collapse:separate;
    border-spacing: 0;
    text-align: center;
    background: rgba(255, 255, 255, 0.07);
}
.time-table-2 table th{
    line-height: 1;
    vertical-align: middle;
    background: rgba(255, 255, 255, 0.05);
}
.time-table-2 table td{
    line-height: 1.5;
    vertical-align: middle;
}
.time-table-2 table tr th:nth-child(1) {
    width: 40%;
}
.time-table-2 table tr th:nth-child(n+2) {
    width: 0;
}
.time-table-2 table tr:nth-child(1) th{
    padding: 10px 0;
}
.time-table-2 table tr:nth-child(2) td{
    padding: 15px 0;
}
.time-table-2 table tr:nth-child(3) td{
    padding: 15px 0;
}
/*角丸----------------------*/
.time-table-2 table tr:nth-child(2) td:first-child{
    border-radius: .3rem 0 0 0  ;
}
.time-table-2 table tr:nth-child(2) td:last-child{
    border-radius: 0 .3rem 0 0 ;
}
.time-table-2 table tr:nth-child(3) td:first-child{
    border-radius: 0 0 0 .3rem ;
}
.time-table-2 table tr:nth-child(3) td:last-child{
    border-radius: 0 0 .3rem 0 ;
}
/*罫線----------------------*/
.time-table-2 table tr:nth-child(2) td{
    border-bottom: solid rgba(255, 255, 255, 0.1) 1px;
}

/*----------------------*/

.time-table-2 table td:nth-child(1) .text1{
    line-height: 1;
    font-size: 16px;
    margin-bottom: 0px
}
.time-table-2 table td:nth-child(1) .text2{
    line-height: 1;
    font-size: 14px;

}

.time-table-2 table td:nth-child(n+2){
    font-size: .7em;
}

@media print,screen and (max-width: 375px)  {
    .time-table-2 table td:nth-child(1) .text1{
        line-height: 1;
        font-size: 14px;
        margin-bottom: 5px
    }
    .time-table-2 table td:nth-child(1) .text2{
        font-size: 12px;
        margin-bottom: 0
    }
    .time-table-2 table tr:nth-child(2) td{
        padding: 7px 0;
    }
    .time-table-2 table tr:nth-child(3) td{
        padding: 7px 0;
    }
}
/*========================================================

診療時間表：３

=========================================================*/

/*---------------------------------------------------------*/
/*診療時間表*/
.time-table-3 table{
    margin-top: 0rem;
    width: 100%;
    border-collapse:separate;
    border-spacing: 0;
    text-align: center;
}
.time-table-3 table th{
    line-height: 1;
    vertical-align: middle;
    color: #343434;
    font-size: 14px;
    font-weight: bold;

}
.time-table-3 table td{
    line-height: 1.5;
    vertical-align: middle;
    width: 10%;
}
.time-table-3 table tr th:nth-child(1) {
    width: 35%;
    background: #c2e4fb;
    color: #003d75;
}
.time-table-3 table tr th:nth-child(n+2) {
    width: 0;
    background: #d9f0ff;
    color: #003d75;
}
.time-table-3 table tr:nth-child(1) th{
    padding: 5px 0;
    
}
.time-table-3 table tr:nth-child(2) td{
    padding: 10px 0;
    
}
.time-table-3 table tr:nth-child(3) td{
    padding: 10px 0;
}
/*角丸----------------------*/
.time-table-3 table tr:nth-child(1) th:first-child{
    border-radius: 5px 0 0 0  ;
}
.time-table-3 table tr:nth-child(1) th:last-child{
    border-radius: 0 15px 0 0 ;
}
.time-table-3 table tr:nth-child(3) td:first-child{
    border-radius: 0 0 0 5px;
}
.time-table-3 table tr:nth-child(3) td:last-child{
    border-radius: 0 0 5px 0 ;
}
.time-table-3.type2 table tr:nth-child(2) td:first-child{
    border-radius: 0 0 0 5px;
}
.time-table-3.type2 table tr:nth-child(2) td:last-child{
    border-radius: 0 0 5px 0px;
}
/*罫線----------------------*/
.time-table-3 table tr th:nth-child(n+2){
    border-right: solid rgba(0, 0, 0, 0.08) 1px;
}
.time-table-3 table tr:nth-child(2) td{
    border-top: solid rgba(0, 0, 0, 0.08) 1px;
    border-bottom: solid rgba(0, 0, 0, 0.08) 1px;
    border-right: solid rgba(0, 0, 0, 0.08) 1px;
}
.time-table-3 table tr th:last-child,
.time-table-3 table tr:nth-child(2) td:first-child,
.time-table-3 table tr:nth-child(2) td:last-child{
    border-right: none;
}
.time-table-3 table tr:nth-child(3) td{
    border-right: solid rgba(0, 0, 0, 0.08) 1px;
}
.time-table-3 table tr:nth-child(3) td:first-child,
.time-table-3 table tr:nth-child(3) td:last-child{
    border-right: none;
}
.time-table-3.type2 table tr:nth-child(2) td{
    border-bottom: none;
}

/*----------------------*/
.time-table-3 table td:nth-child(1){
    line-height: 1;
    margin-bottom: 0px;
    background: #c2e4fb;
    color: #003d75;
/*    border-right: none;*/
}
.time-table-3 table td:nth-child(1) .text1{
    line-height: 1;
    font-size: 18px;
    margin-bottom: 0px;
    font-weight: bold;
}
.time-table-3 table td:nth-child(1) .text2{
    line-height: 1;
    font-size: 14px;
}

.time-table-3 table td:nth-child(n+2){
    font-size: 1em;
    background: #d9f0ff;
    color: #0054bc;
    font-weight: bold;
}

@media print,screen and (max-width: 375px)  {
    .time-table-3 table td:nth-child(1) .text1{
        line-height: 1;
        font-size: 14px;
        margin-bottom: 5px
    }
    .time-table-3 table td:nth-child(1) .text2{
        font-size: 12px;
        margin-bottom: 0
    }
    .time-table-3 table tr:nth-child(2) td{
        padding: 7px 0;
    }
    .time-table-3 table tr:nth-child(3) td{
        padding: 7px 0;
    }
}

/*========================================================

会社概要

=========================================================*/

/*---------------------------------------------------------*/
/*会社概要*/
.table2 table{
    margin-top: 1rem;
    width: 100%;
    border-collapse:separate;
    border-spacing: 0;
}

.table2 table th{
    min-width: 0rem;
    width: 10.5rem;
    text-align: left;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    background-color: #e6f4f7;
    padding: 1.5rem 1.5rem;
    line-height: 1.5;
    vertical-align: middle;
}

.table2 table td{
    border-bottom: 3px solid #fff;
    background-image: linear-gradient(90deg, #e6f4f7, #fff 100%);
    padding: 1.5rem 1.5rem;
    line-height: 1.5;
    vertical-align: middle;
}

/*---------------------------------------------------------*/
@media screen and (max-width: 500px) {
    .table2 table th,.table2 table td{
        font-size: 1.4rem;
        padding: 1.5rem 1rem;
    }
    .table2 table th{
        width: 8rem;
    }

    .table2 table th{
        border-right: 1px solid #fff;
        border-bottom: 1px solid #fff;
    }
    .table2 table td{
        border-bottom: 1px solid #fff;

    }
}
/*---------------------------------------------------------*/
/*データ*/
.table3 table{
    margin-top: 1rem;
    width: 100%;
    border-collapse:separate;
    border-spacing: 0;
}

.table3 table th{
    min-width: 0rem;
    width: 12rem;
    text-align: left;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    background-color: #f8f3e5;
    padding: 1.5rem 1rem;
    line-height: 1.5;
    vertical-align: middle;
}

.table3 table td{
    border-bottom: 3px solid #fff;
    background-color: #f8f3e5;
    padding: 1.5rem 1.5rem;
    line-height: 1.5;
    vertical-align: middle;
}

/*---------------------------------------------------------*/
@media screen and (max-width: 500px) {
    .table3 table th,.table3 table td{
        font-size: 1.4rem;
        padding: 1.5rem 1rem;
    }
    .table3 table th{
        width: 8rem;
    }

    .table3 table th{
        border-right: 1px solid #fff;
        border-bottom: 1px solid #fff;
    }
    .table3 table td{
        border-bottom: 1px solid #fff;

    }
}
/*========================================================

料金表

=========================================================*/
.table4 {
    overflow-x: scroll;
}
.table4-ctr .caption{
    font-size: 11px;
    text-align: right;
    margin-top: 4px;
    margin-bottom: 0;
    line-height: 1;
    color: #696969;
}
.table4 table{
    border-collapse: collapse;
    white-space: wrap;
    width: 100%;
}
.table4 table th{
    text-align: center;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    border-left: none;
    border-right: 1px solid #ddd;
    padding: 5px 10px;
    line-height: 1.3;
    font-size: 13px;
    color: #464646;
    font-weight: bold;
    vertical-align: middle;
/*    background-color: #fff;*/
}
.table4 table th:last-child{
    border-right: 1px solid #cddd;
}
.table4 table td{
    text-align: left;
    border-top: none;
    border-bottom: 1px solid #ddd;
    border-left: none;
    border-right: 1px solid #ddd;
    padding: 10px 10px;
    line-height: 1.3;
    vertical-align: middle;
    background-color: #f7f7f7;
}
.table4 table th:nth-child(1){
    min-width: 200px;
    position:sticky;
    left:0;
    background-color: #fff0df;
}
.table4 table th:nth-child(2){
    min-width: 300px;
    background-color: #f7f7f7;
}
.table4 table th:nth-child(3){
    min-width: 120px;
    background-color: #f7f7f7;
}
.table4 table td:last-child{
    border-right: 1px solid #cddd;
}
.table4 table tr td:nth-child(1){
    position:sticky;
    left:0;
    background-color: #fff0df;
}
.table4 table tr:nth-child(1){
    position:sticky;
    left:0;
}
/*========================================================

料金表2

=========================================================*/
.table5 {
    overflow-x: scroll;
}
.table5-ctr .caption{
    font-size: 11px;
    text-align: right;
    margin-top: 4px;
    margin-bottom: 0;
    line-height: 1;
    color: #696969;
}
.table5 table{
    border-collapse: collapse;
    white-space: wrap;
/*    width: 100%;*/
}
.table5 table th{
    text-align: center;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;;
    border-right: 1px solid #ddd;
    padding: 5px 10px;
    line-height: 1.3;
    font-size: 13px;
    color: #464646;
    font-weight: bold;
    vertical-align: middle;
    /*    background-color: #fff;*/
}
.table5 table th:last-child{
    border-right: 1px solid #cddd;
}
.table5 table td{
    text-align: left;
    border-top: none;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;;
    border-right: 1px solid #ddd;
    padding: 10px 10px;
    line-height: 1.3;
    vertical-align: middle;
    background-color: #f7f7f7;
}
.table5 table th:nth-child(1){
/*    min-width: 200px;*/
/*
    position:sticky;
    left:0;
*/
    background-color: #fff0df;
}
/* ↓ Add 240111 iwa ↓ */
.table5 table th:nth-child(1).minw{
   min-width: 200px;
}
/* ↑ Add 240111 iwa ↑ */
.table5 table th:nth-child(2){
/*    min-width: 300px;*/
    background-color: #f7f7f7;
}
.table5 table th:nth-child(3){
/*    min-width: 120px;*/
    background-color: #f7f7f7;
}
.table5 table td:last-child{
    border-right: 1px solid #cddd;
}
.table5 table tr td:nth-child(1){
    position:sticky;
    left:0;
    background-color: #fff0df;
}
.table5 table tr:nth-child(1){
    position:sticky;
    left:0;
}
/* ↓ Add 240111 iwa ↓ */
@media print,screen and (max-width: 630px)  {
    .table5 table th:nth-child(1).minw{
        min-width: 120px;
    }
}
/* ↑ Add 240111 iwa ↑ */


/*========================================================

基本診療科の施設基準表 Add 240325 iwa

=========================================================*/
.table6 {
    overflow-x: scroll;
}
.table6-ctr .caption{
    font-size: 11px;
    text-align: right;
    margin-top: 4px;
    margin-bottom: 0;
    line-height: 1;
    color: #696969;
}
.table6 table{
    border-collapse: collapse;
    white-space: wrap;
    width: 100%;
}
.table6 table th{
    text-align: center;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    border-left: none;
    border-right: 1px solid #ddd;
    padding: 5px 10px;
    line-height: 1.3;
    font-size: 13px;
    color: #464646;
    font-weight: bold;
    vertical-align: middle;
/*    background-color: #fff;*/
}
.table6 table th:first-child{
    border-left: 1px solid #cddd;
}
.table6 table td{
    text-align: left;
    border-top: none;
    border-bottom: 1px solid #ddd;
    border-left: none;
    border-right: 1px solid #ddd;
    padding: 10px 10px;
    line-height: 1.3;
    vertical-align: middle;
    background-color: #f7f7f7;
}
.table6 table th:nth-child(1){
    min-width: 120px;
    position:sticky;
    left:0;
    /* background-color: #fff0df; */
    background-color: #f7f7f7;
}
.table6 table th:nth-child(2){
    min-width: 360px;
    background-color: #f7f7f7;
}
.table6 table th:nth-child(3){
    min-width: 120px;
    background-color: #f7f7f7;
}
.table6 table th:nth-child(4){
    min-width: 160px;
    background-color: #f7f7f7;
}
.table6 table td:first-child{
    border-left: 1px solid #cddd;
}
.table6 table tr td:nth-child(1){
    position:sticky;
    left:0;
    /* background-color: #fff0df; */
    background-color: #f7f7f7;
}
.table6 table tr:nth-child(1){
    position:sticky;
    left:0;
}


/*========================================================

診療カレンダー

=========================================================*/

/*カレンダー
-----------------------------------------------------------*/
.calendar table{
    margin-top: 0rem;
    width: 100%;
    border-collapse:separate;
    border-spacing: 0;
    text-align: center;
}
.calendar table th{
    line-height: 1;
    vertical-align: middle;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    padding: 5px 0;
    background: #767676;
    width: 14.3%;
}
.calendar table td{
    line-height: 1.5;
    vertical-align: middle;
    color: #606060;
    font-size: 18px;
    font-weight: bold;
    padding: 5px 0;
    background: #fff;
}
/*角丸
-----------------------------------------------------------*/
.calendar table tr:nth-child(1) th:first-child{
    border-radius: 4px 0 0 0  ;
}
.calendar table tr:nth-child(1) th:last-child{
    border-radius: 0 4px 0 0  ;
}
.calendar table tr:last-child td:first-child{
    border-radius: 0 0 0 4px  ;
}
.calendar table tr:last-child td:last-child{
    border-radius: 0 0 4px 0  ;
}
/*罫線
-----------------------------------------------------------*/
.calendar table tr th,.calendar table tr td{
    border-top: solid rgba(0, 0, 0, 0.2) 1px;
}
.calendar table tr:last-child td{
    border-bottom: solid rgba(0, 0, 0, 0.2) 1px;
}
.calendar table tr th,.calendar table td{
    border-left: solid rgba(0, 0, 0, 0.2) 1px;
}
.calendar table tr th:last-child,.calendar table td:last-child{
    border-right: solid rgba(0, 0, 0, 0.2) 1px;
}
/*テキスト
-----------------------------------------------------------*/
.calendar table td div{
    font-size: 14px;
    height: 20px;
    font-weight: bold;
}
@media print,screen and (max-width: 375px)  {
    .calendar table td div{
        font-size: 12px;
        height: 15px;
    }
}
/*補足エリア
-----------------------------------------------------------*/
.calendar-foot{
    font-weight: bold;
    display: flex;
    flex-wrap: wrap;
}
.calendar-foot .item{
    display: inline-block;
    padding: 0.5em;
    border: solid rgba(0, 0, 0, 0.2) 1px;
    font-weight: bold;
    margin: 0 0.5em 0.5em 0;
    border-radius: 4px;
}

/*タイプ別の装飾
-----------------------------------------------------------*/
/*タイプ：日付なし
---------------------------------------*/
.calendar table td.type-00{
    background-color: #efefef;
}
/*タイプ：休診日
---------------------------------------*/
.calendar table td.type-01,
.calendar-foot .type-01{
    background-color: #ffe1e1;
}
.calendar table td.type-01 div::before,
.calendar-foot .type-01{
    color: #ff1515;
    content: "休診";
}
/*タイプ：善郎
---------------------------------------*/
.calendar table td.type-02,
.calendar-foot .type-02{
    background-color: #fff;
}
.calendar table td.type-02 div::before,
.calendar-foot .type-02{
    color: #d9842e;
    content: "善郎";
}
/*タイプ：浩一郎
---------------------------------------*/
.calendar table td.type-03,
.calendar-foot .type-03{
    background-color: #fff;
}
.calendar table td.type-03 div::before,
.calendar-foot .type-03{
    color: #1090ff;
    content: "浩一郎";
}
/*タイプ：２人
---------------------------------------*/
.calendar table td.type-04,
.calendar-foot .type-04{
    background-color: #fff;
}
.calendar table td.type-04 div::before,
.calendar-foot .type-04{
    color: #11b924;
    content: "二人";
}
/*タイプ：その他
---------------------------------------*/
.calendar table td.type-05,
.calendar-foot .type-05{
    background-color: #ddceff;
}
.calendar table td.type-05 div::before,
.calendar-foot .type-05{
    color: #8000c4;
    content: "その他";
}