/* データ数表示 */
.row-count {
    font-size: 1.3rem;
    left: 13px;
}

/* 汎用 新規追加ボタン */
.btn-add {
    color: var(--main-color);
    border-color: var(--main-color);
    padding: 0.3rem 0.6rem;
}

/* 契約一覧 レイアウト */
#terms_btn_list,
#termsFlexGridForm {
    width: 90.74%;
    margin: 0 auto;
}

/* 契約新規作成 / レイアウト */
.terms_heading_title,
#terms_form {
    max-width: 616px;
    width: 100%;
}

.terms_heading_area {
    position: relative;
}

.terms_heading_title {
    font-weight: bold;
    font-size: 18px;
}

.terms_heading_area .common_close_button {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-51%);
}

/* 契約新規作成、契約詳細 / フォーム */
.form-group-title {
    font-size: 11px;
    margin-bottom: 0.2rem;
}

.form-group-text {
    font-size: 0.9rem;
}

.form-group-img {
    text-align: center;
}

.form-group-title {
    font-size: 12px;
    margin-bottom: 0.2rem;
}

.form-group-label,
.form-group-required,
.form-group-alert {
    display: inline-block;
}

.form-group-label {
    margin-right: 4px;
    margin-bottom: 0.2rem;
}

.form-group-required {
    margin-right: 8px;
}

.form-group-alert {
    margin-right: 8px;
}

.terms-require .form-control {
    border-color: #df6b6d;
}

.terms-require .dropify-wrapper {
    border-color: #df6b6d;
}

#form_group_terms_type .form-group-enter {
    margin-top: -0.15rem;
}

#form_group_terms_type .form-group-enter label {
    font-size: 14px;
}

.alert-required {
    font-size: 11px;
    color: #df6b6d;
}

.terms-required-icon {
    font-size: 10px;
    color: #fff;
    background-color: #df6b6d;
    padding: 1px 4px 0 3px;
    position: relative;
    top: -1px;
}

.form-group-alert {
    display: none;
}

.terms-require .form-group-alert {
    display: inline-block;
}

/* 添付ローディング */
.loading_file {
    display: none;
    width: 100%;
    padding: 20px;
    position: relative;
}

.term_progress {
    width: 85%;
    height: 30px;
}

@media (max-width: 450px) {
    .term_progress {
        width: 70%;
    }
}

progress {
    appearance: none;
    border: none;
    background-color: #efefef;
}

::-webkit-progress-bar {
    background-color: #efefef;
}

/* バーの進捗率の表示を変える */
::-moz-progress-bar {
    background-color: #19a2aa;
}

::-webkit-progress-value {
    background-color: #19a2aa;
}

.termProgressCount {
    font-size: 12px;
    padding: 5px;
    position: absolute;
}

.term_stop_btn {
    padding: 0;
    background-color: transparent;
    border: 0;
    appearance: none;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background-image: url('/img/common/c_cross_gy.png');
    background-repeat: no-repeat;
    background-position: center;
    float: right;
}

.term_stop_btn:hover {
    background-color: #efefef;
}

/* 契約同意画面 */

/* -> 初期表示は消えている */
#terms_disagree_btn,
#terms_agree_btn {
    display: none;
}

.modal-completion-pc {
    position: fixed;
    right: -10%;
    bottom: -15%;
    z-index: 1050;
    display: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
    outline: 0;
    margin: 0;

    /* background-color: aqua; */
}

.modal-completion-sp {
    position: fixed;
    right: -13%;
    bottom: -15%;
    z-index: 1050;
    display: none;
    width: 90%;
    height: 100%;
    overflow: hidden;
    outline: 0;
    margin: 0;
}

.modal-content-completion-pc {
    margin: 0;
    position: relative;
    display: flex;
    flex-direction: column;
    width: 240px;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgb(0 0 0 / 20%);
    border-radius: 0.3rem;
    outline: 0;

    /* background-color: blue; */
}

.modal-content-completion-sp {
    margin: 0;
    position: absolute;
    display: flex;
    flex-direction: column;
    width: 220px;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgb(0 0 0 / 20%);
    border-radius: 0.3rem;
    outline: 0;
}

.modal-body {
    position: relative;
    flex: 1 1 auto;
    padding: 1rem;
    border-radius: 0.3rem;
}

.contents {
    display: flex;
    margin-top: 15px;
}

.completion {
    margin-left: 15px;
    line-height: 30px;
}

.modal-footer-border {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 0.75rem;
    border-top: 1px solid;
    border-color: var(--form-border-color);
    border-bottom-right-radius: calc(0.3rem - 1px);
    border-bottom-left-radius: calc(0.3rem - 1px);
    justify-content: center;
}

.delete-icon {
    background: transparent url('../img/delete-icon.png') 0% 0% no-repeat
        padding-box;
    position: absolute;
    top: 10px;
    right: 10px;
    height: 12px;
    width: 12px;
    opacity: 1;
    border: 0;
}

.check-icon {
    height: 30px;
    width: 30px;
    line-height: 79px;
    background: transparent url('../img/completion-icon.png') 0% 0% no-repeat
        padding-box;
}

/* 送信履歴 */
#form_group_sendlist {
    width: 385px;
}

.sendlist {
    width: 100%;
    max-width: 324px;
}

.sendlist {
    font-size: 12px;
    border-radius: 0.25rem;
    padding: 0;
    margin: 0;
}

.sendlist-item {
    background-color: #fff;
    border: 1px solid rgb(0 0 0 / 12.5%);
    display: flex;
    justify-content: center;
}

.sendlist-item + .sendlist-item {
    border-top-width: 0;
}

.sendlist-item:first-child {
    border-top-right-radius: inherit;
    border-top-left-radius: inherit;
}

.sendlist-item:last-child {
    border-bottom-right-radius: inherit;
    border-bottom-left-radius: inherit;
}

.sendlist-cell {
    text-align: center;
    padding: 0.75rem 6px;
}

.sendlist-cell.state {
    width: 20%;
    font-size: 10px;
    font-weight: bold;
    color: brown;
}

.sendlist-cell.user {
    width: 28%;
    text-align: left;
}

.sendlist-cell.date {
    width: 28%;
}

.sendlist-cell.resend {
    width: 24%;
}

.sendlist-cell .resend-btn {
    color: var(--main-color);
    text-decoration: underline;
    display: block;
    text-align: center;
    border: none;
    background-color: transparent;
    line-height: 1.2;
}

.sendlist-cell .resend-btn:disabled {
    color: #e6e6e6;
}

/* 送信モーダル */
.multiselect-option.dropdown-item.person label {
    background: url('/img/common/list_user_solid.png') 4px 6px no-repeat;
    background-size: auto 55%;
    padding-top: 3px;
    padding-left: 1.25rem;
    margin-left: 0.2rem;
}

.multiselect-option.dropdown-item.group label {
    background: url('/img/common/list_user_friends_solid.png') 3px 9px no-repeat;
    background-size: auto 40%;
    padding-top: 3px;
    padding-left: 1.25rem;
    margin-left: 0.2rem;
}

.multiselect-option.dropdown-item {
    padding: 0 1rem;
    font-size: 90%;
}

.multiselect-option.dropdown-item:last-child {
    margin-bottom: 0.5rem;
}

.multiselect-container {
    width: 80%;
}

/* ライブラリ カスタマイズ */

/* wijimo flexGrid ...アクティブ行色変更 */
.wj-state-multi-selected,
.wj-state-selected {
    background-color: #e6f3f4 !important;
    color: #000 !important;
}

/* wijimo flexGrid ...行ヘッダ チェックボックス上下中央寄せ */
.wj-cell label,
.wj-cell label span,
.wj-cell label input[type='checkbox'] {
    position: absolute;
    top: 50% !important;
    transform: translateY(-50%);
}

.wj-cells .wj-cell:not(.no-padding) .wj-cell-inr {
    padding: 18px 24px;
}

.wj-cells .wj-cell.vertical {
    display: flex;
    align-items: center;
}

.wj-cells .wj-cell.vertical-multi .wj-cell-inr {
    height: 54px;
}

.wj-cell .wj-cell-inr {
    overflow: hidden;
    width: 100%;
}

.wj-cell.wj-align-left:not(.wj-header) {
    text-align: left;
}

#file_thum_tag img {
    border: 1px solid #e6e6e6;
    object-fit: cover;
    width: auto;
}

#terms_thum img {
    border: 1px solid #e6e6e6;
}

#terms_body {
    border: 1px solid #e6e6e6;
}

/* dropify ボーダーあしらい */
.dropify-wrapper {
    border: 1px dashed #ced4da;
    border-radius: 0.25rem;
}

/* tinymce ボーダーあしらい */
.tox-tinymce {
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
