@charset "UTF-8";

/*
========================================

	service > its > iLis / iLis.css
    
========================================
*/

/*----------------------------------------
	switch layout
----------------------------------------*/

/*イントロダクションの画像*/

    .col-12.sub_page .switch02 section.introBox ul.bg-ta_its03 li:first-child {/*コンテンツごとに指定*/
        background-color:#81dbc0;
        background-image:
        repeating-linear-gradient( 150deg,rgba(255,255,255,0.1) 0px 240px,	transparent 240px 480px),
        repeating-linear-gradient( 30deg,rgba(82,200,213,0.5) 0px 240px,	transparent 240px 480px);
    }
    
@media (min-width: 768px) {

    .col-12.sub_page .switch02 section.introBox .thumb {/*コンテンツごとに指定*/
        height:48vw;
        background-size: contain;
        /*background-color:transparent*/
        transition: min-height 0.2s ease 0.1s;
    }

}/*@media end*/

@media (min-width: 992px) {
    
    .col-12.col-lg-9.sub_page .switch02 section.introBox .thumb {/*コンテンツごとに指定*/
        /*height:;*/
        background-size: cover;
        /*background-color: transparent;*/
        transition: min-height 0.2s ease;
    }

}/*@media end*/

@media (min-width: 1200px) {
    
    .col-12.sub_page .switch02 section.introBox ul.bg-ta_its03 li:first-child {
        background: transparent;
    }
    
    .col-12.sub_page .switch02 div.introBg {/*コンテンツごとに指定*/
        background-color:#f8fdfc;
        background-image:
        repeating-linear-gradient(150deg,rgba(129, 219, 192,0.3) 0 360px,transparent 360px 720px),
        repeating-linear-gradient(30deg,rgba(82,200,213,0.3) 0 360px,transparent 360px 720px);
        border-top:16px solid #fff;/*余白*/ 
    }
    
   .col-12.sub_page .switch02 section.introBox .thumb {/*コンテンツごとに指定*/
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
        height: auto;
        min-height: 480px;
        background-color: transparent;
    }
    
   .col-12.col-lg-9.sub_page .switch02 section.introBox .thumb {/*コンテンツごとに指定*/
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
        height: 100%;
        min-height: 600px;
        margin-top: 0;
        margin-bottom: 0;
    }

    .col-12.col-lg-9.sub_page section.introBox div.catchBox {
         background: transparent;
    }
    
    .col-12.sub_page section.introBox div.catchBox p.catch {/*コンテンツごとに指定・背景色に合わせる*/
        color: #02178C;
        text-shadow: 2px 2px 3px rgba(255,255,255,0.6);
    }
    
    .col-12.sub_page section.introBox div.catchBox p.lead {/*コンテンツごとに指定*/
        padding-left: 4px;
        font-size: 112.5%;
        font-weight: 400;
        color: #02178C  !important;
        text-shadow: 1px 1px 8px rgba(255,255,255,0.5);
    }
    
    .col-12.sub_page section.introBox div.catchBox p.lead span.large {/*コンテンツごとに指定*/
        text-shadow: 1px 1px 2px #25348e;
        color: #fff;
        font-weight: 500;
        background:rgba(0,0,153,0.6);/*#009*/
        padding:2px 8px 4px 8px;
        line-height: 1.75;
    }

    .col-12.col-lg-9.sub_page section.introBox div.catchBox p.lead {/*コンテンツごとに指定*/
        padding: 0;
        background: transparent;
        color: inherit !important;
        font-size: 100%;
        font-weight: 400;
        line-height: 1.8;
    }
    
    .col-12.col-lg-9.sub_page section.introBox div.catchBox p.lead span.large {/*コンテンツごとに指定*/
        text-shadow: none;
        color: inherit !important;
        font-weight: 400;
        background: transparent;
        padding: 0
    }
   
}/*@media end*/

@media (min-width: 1440px) {

   .col-12.sub_page .switch02 section.introBox .thumb {/*コンテンツごとに指定*/
        background-position: left center;
        background-size: contain;
        height: auto;
        min-height:480px;
    }
    
   .col-12.col-lg-9.sub_page .switch02 section.introBox .thumb {/*コンテンツごとに指定*/
        min-height: 580px;
    }

}/*@media end*/

@media (min-width: 1600px) {
    
    .sub_page section.introBox div.catchBox p.catch span.display-7 {font-size: 2.75rem;}/*44px=display-6*/
    .col-xl-10.sub_page section.introBox div.catchBox p.catch span.display-7 {font-size: 2.25rem;}/*36px=display-7*/

    }

    
}/*@media end*/

/*----------------------------------------
	contents
----------------------------------------*/

/*システム概要図*/

dl.system,
ul.system {
    padding: 1rem;
    border: 8px solid #fff !important; 
    background-color: #f6f6f6;
}

dl.system dd,
ul.system li {
    line-height: 1.25;
    padding: 0 0 0 0.5rem;
    margin:0 0 1rem -4px;
    border-left: 4px solid #adb5df;
    
    display: inline-block;
    min-width: 144px;
    padding-right: 1rem;
}

.system.Bl {background-color:#D8EFFF;}
.system.Bl01 {background-color:#D8EFFF;}
.system.Bl02 {background-color:#D8EFFF;}

.system.Pk {background-color:#ffd8ef;}
.system.Ye {background-color:#fff9bf;}
.system.Gr {background-color:#dcffd8;}
.system.Pp {background-color:#d8dcff;}
.system.Lg {background-color:#e5ffbf;}


 @media (min-width: 576px) {
     
    dl.system.Bl01 {/*背景にイラスト追加*/
        background:#D8EFFF url("/service/its/gCoas/img/bg_system01.png") no-repeat center bottom;
        background-size:144px;
    }

    dl.system.Bl02 {/*背景にイラスト追加*/
        background:#D8EFFF url("/service/its/gCoas/img/bg_system02.png") no-repeat center bottom;
        background-size:144px;
    }

}

 @media (min-width: 992px) {
     
    dl.system.Bl01 {/*背景にイラスト追加*/
        background:#D8EFFF url("/service/its/gCoas/img/bg_system01@2x.png") no-repeat left bottom;
        background-size:172px;
    }

    dl.system.Bl02 {/*背景にイラスト追加*/
        background:#D8EFFF url("/service/its/gCoas/img/bg_system02@2x.png") no-repeat right bottom;
        background-size:172px;
    }

}

 .num {
    width: 40px;
    height: 40px; 
    background-image: linear-gradient(-45deg, #64b3f4 0%, #c2e59c 100%);
    color: #fff;
    font-size: 1.5rem;
    font-weight: 400;
    font-family: "Times New Roman", Times, "serif";
    /*font-family: "Lucida Sans Unicode", "Lucida Grande", "sans-serif";*/
    line-height: 40px;
    text-align: center;
    border-radius: 50%;
}

p.label {
    display: inline-block;
    border-bottom: 3px solid #64b3f4;
    background: #fff;
    color: #4150a8;
    font-size: 1.125rem;
    font-weight: 600;

    min-width: 160px;
    height: 2.5rem;
    line-height: 2.25rem;
    text-align: center;
    margin-bottom: 0.75rem;
    
    position: relative;
}

div.item p.label,
div.solving p.label {
    padding-left: 1rem;
    width: 50%;
    max-width: 160px;
}

p.label .num,
p.label .mark {
    width: 40px;
    height: 40px;
    padding: 0;
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-15%, -10px);
    border-radius: 50%;
}

p.label .num {
    background-image: linear-gradient(-45deg, #64b3f4 0%, #c2e59c 100%);
}

p.label .mark {
    background-image: linear-gradient(135deg, #fff  0%, #5c6bc0  50%, #5c6bc0 100%);
}

/*フローチャート*/

div.item {
	position: relative;
	/*margin-bottom: 4px;
    border: 1px dotted #c33;*/
    height: 100%;
    padding:1.25rem 1rem 1rem 1rem;
    background: #2277C7;
}

div.item::after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -32px;
	border: 32px solid transparent;
	border-top: 24px solid #2277C7;
    z-index: 2;
}

div.solving {
    height: 100%;
    padding:2rem 10% 1rem 10%;
    /*background: #8cbae6;*/
    background-image: linear-gradient(-45deg, #DFEFFC 0%, #A7D4F5 100%);
}

div.item p,
div.solving p {/*flexCenter*/
    display: flex !important;
    justify-content: center !important;
    flex-direction: column !important;
    align-items: center !important;
    align-content: center !important;
    height: 100%;
}

div.item p {/*flexCenter*/

    align-items: center !important;
    color: #fff;

}


div.solving p {/*flexCenter*/
    align-items: start !important;
    font-weight: 700;
    line-height: 200%;
}
/*
div.item p,
div.solving p {
    padding: 0 1rem;
    text-align: center;
}
*/
    @media (min-width: 992px) {
        
        div.solving p {
            align-items: start !important;
        }

        p.label .num {
            width: 60px;
            height: 60px;
        }

        p.label .mark {
            width: 60px;
            height: 60px;
            padding: 4px;
        }
        
        div.item p.label,
        div.solving p.label {
            padding-left: 2rem;
            max-width: 180px;
        }
        
        .num {
            width: 64px;
            height: 64px; 
            font-size: 2.4rem;
            line-height: 64px;
        }
        
    }

    @media (min-width: 1200px) {

        div.solving p.label {
            padding-left: 2.75rem;
            width: 50%;
            margin-left: -1.5rem;
        }

        div.item::after {
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            left:100%;
            /*margin-left: -24px;*/
            margin-left: -4px;
            margin-top: -32px;
            border: 32px solid transparent;
            border-left: 24px solid #2277C7;
            z-index: 2;
        }
        
        div.item {
            padding:24px 4% 24px 8%;
        }
        
        div.solving {
            padding:24px 4% 24px 8%;
            background-image: linear-gradient(-45deg, #DFEFFC 0%, #A7D4F5 80%, #A7D4F5 100%);
        }

        div.item dl dd,
        div.solving dl dd {
            padding: 0;
            text-align: left;
        }

    }/*@media end*/

.table-striped tbody tr:nth-of-type(odd) {background-color: rgba(92,107,192,0.05); }

.table-striped th {background-color: rgba(92,107,192,0.15); }

.table-striped th,
.table-striped td {text-align: center;}

.cardBox p.dev {
    font-size:93.75%;
}

.cardBox a p.dev {
    margin: auto;
    padding: 0.25rem 0.5rem 0.5rem 0.75rem;
    text-align: center;
    transition: background 0.2s linear;
    background: rgba(92,107,192,0.1);
}

.cardBox li a:hover p.dev {
    /*background: #9de0e3;病院フロア背景色*/
    background: #b0e6e8;
    transition: background 0.2s linear;
}

.cardBox a p.dev span.icon.right::before {
    right: 0.25rem;
}

.cardBox .noLink .card-title {
    padding-left: 0.5rem;
    font-size: 112.5%;
}

.cardBox .noLink .card-title span.s_small {
    font-size: 75% !important;
}

.cardBox .noLink p.dev {
    text-align: right;
    padding-right: 0.5rem;
}

    @media (min-width: 576px) {

        .cardBox a p.dev {
            margin-right: 0;
            /*max-width: 280px;*/
        }

    }/*@media end*/

table.results th{}

table.results td.total {
    padding-bottom: 0;
    color: #5c6bc0;
    white-space: nowrap;
}

table.results td.total span {
    margin-left:0.25rem;
    margin-right: 0.25rem;
    font-size: 112.5%;
    line-height: 1.25rem;
    font-weight: 600;
}

table.results td.detail {
    padding-top: 0.25rem;
    word-break: keep-all;
}

@media (min-width: 992px) {
    
    table.results th{
        vertical-align: middle;
    }

    table.results th, 
    table.results td.total {
        text-align: center;
    }

    table.results td.total {
        padding-bottom: 0.5rem;
        vertical-align: middle;
    }
    
    table.results td.detail {
        padding-top:0.5rem;
        min-width: 75%;
    }
}

p.postit {
    font-size:calc(1.1rem + .25vw);/*display-10*/
    font-weight: 600 !important;
    margin: 0.5rem 0 0 0;
    padding: 0.5rem 1.5rem 0.6rem 1.5rem !important;
    text-align: center;
    line-height: 1.5;
    /*border: 2px solid #777;*/
    background-color: #fff;
    background-repeat: repeat-y;
    background-size: 2% 100%;
    background-position: 0 0;
    background-image: linear-gradient(#adb5df,#adb5df);
}

    @media (min-width: 576px) {
        
        p.postit {
            margin: 0.5rem 0 0 0.5rem;
            text-align: left;
            background-size: 3% 100%;
        }

    }/*@media end*/

    @media (min-width: 992px) {
        
        p.postit {
            font-size: 1.25rem;;/*display-10*/
            margin: 0.5rem auto 0 auto;
            padding: 0 0 0.1rem 0  !important;/*lg-flexCenterがある場合*/
            text-align: center;
            min-height: 3.5rem;
            max-width: none;
        }

    }/*@media end*/

    @media (min-width: 1200px) {
        
        p.postit {
            background-size: 3% 100%;
            max-width: none;
        }

    }/*@media end*/
