﻿:root {
    --theme-color: #007bff;
    --border-stroke: 1px;
    --color-error: #EE1E28;
}

.p-l-0 a{
    padding-left: 0px;
}
.border {
    border: var(--border-stroke) solid var(--theme-color);
    border-radius: 0.25rem;
}
.nav-icon {
    vertical-align: middle;
    margin-right: 5px;
}
.nav-sidebar > .nav-item .nav-icon {
    font-size: 1.8rem;
}
/*------Custom Input File-----*/
.v-file {
    display: block;
    margin-bottom: 10px;
}
    .v-file .f-input {
        position: relative;
        display: flex;
    }
        .v-file .f-input .f-content {
            justify-content: center;
            align-items: center;
            display: flex;
            width: 100%;
            height: 100%;
            min-height: 250px;
            position: inherit;
        }
        .v-file .f-input label {
            position: absolute;
            color: #BDBDBD;
        }
        .v-file .f-input .f-content img{
            max-width: 100%;
            width: auto;
            height: auto;
            object-fit: contain;
        }
    .v-file .custom-file-input {
        position: absolute;
        height: 100%;
    }
img.fit-content {
    max-width: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
}
.custom-file-label::after {
    content: "ファイルを選択" !important;
    color: #fff !important;
    background-color: #007bff !important;
    border-color: #007bff !important;
    box-shadow: none !important;
}
/*------Custom Input File-----*/
/*------Custom Radio button-----*/
.f-radio input[type="radio"] {
    display: none;
}

.f-radio label {
    vertical-align: middle;
    display: inline-block;
    position: relative;
    cursor: pointer;
    padding-left: 24px;
    line-height: 20px;
}

    .f-radio label:before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        width: 20px;
        height: 20px;
        border: var(--border-stroke) solid #9E9E9E;
        border-radius: 100%;
    }

.f-radio input[type="radio"]:checked + label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 20px;
    height: 20px;
    border: var(--border-stroke) solid var(--theme-color);
    border-radius: 100%;
}

.f-radio input[type="radio"]:checked + label:after {
    content: '';
    width: 12px;
    height: 12px;
    background: var(--theme-color);
    position: absolute;
    top: 4px;
    left: 4px;
    border-radius: 100%;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

.f-radio input[type="radio"]:not(:checked) + label:after {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
}

.f-radio input[type="radio"]:checked + label:after {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}
/*------Custom Radio button-----*/

/*------Custom Table view-----*/
table {
    background: #FFF !important;
    table-layout: fixed;
}
table thead tr.header {
    text-align: center;
    background: #007bff;
    color: #FFF;
}
    table thead tr.header th {
        background-color: #007bff !important;
    }
    table tbody tr td {
        word-wrap: break-word;
    }

/*------Custom Table view-----*/
.j-center {
    justify-content: center;
    align-items: center;
}
.j-right {
    justify-content: end;
}
.j-center-v {
    align-items: center;
}
.t-right {
    text-align:end;
}
.f-right {
    float: right;
}
.t-center {
    text-align: center;
}
.dashed_div {
    background: #FAFAFA;
    border-radius: 5px;
    border: 5px dashed #BDBDBD;
    padding: 3px;
    width: 100%;
}

.card-title {
    font-weight: 700!important;
}
    .card-title.c-grey {
        color: #616161;
    }
.hide {
    opacity: 0 !important;
}
.m-0 {
    margin:0px !important;
}
textarea.b-resize {
    resize: none;
}
.t-nowrap {
    white-space: nowrap;
}
.page-link.selected {
    background: #E3F2FD;
}
a.disabled {
    pointer-events: none;
    background: #E0E0E0;
}

.control-middle {
    display: flex;
    align-items: center;
}

.field-validation-error {
    color: #dc3545;
}

.field-validation-error {
    font-size: 80% !important;
}

.input-validation-error {
    border: 1px solid #ff0000 !important;
    background-color: #ffeeee !important;
}

select[readonly]{
    pointer-events: none;
}

#ui-datepicker-div {
    z-index: 2 !important;
}
.table.table-head-fixed thead tr:nth-child(2) th {
    position: sticky;
    top: 49px;
}

button.href-view {
    border: none;
    background: none;
    color: #007bff;
    text-decoration: underline;
}
