@charset "utf-8";

*{ box-sizing:border-box; }

button,label{ cursor:pointer; }
label{
    white-space:nowrap;
}

/* レスポンシブ
----------------------------------------------------------------------------- */
/* PCのみ表示 */
@media screen and (max-width: 811px) {
  .pc-only {
    display: none !important;
  }
}
/* SPのみ表示 */
@media screen and (min-width: 812px) {
  .sp-only {
    display: none !important;
  }
}

/* 分類：ローディング
----------------------------------------------------------------------------- */
.loading{
    position:fixed;
    width:100%;
    height:100vh;
    z-index:599999999;
    top:0;
    left:0;
    background-color: rgba(255,255,255,0.5);
}
.loading img{
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    margin:auto;
}

/* 分類：レイアウト
----------------------------------------------------------------------------- */
.inner{
    width:100%;
	max-width:1000px; /* 案件に応じてコンテンツ幅を指定 */
	margin:0 auto;
}
@media screen and (max-width:768px){
	.inner{
		width:100%; /* 案件に応じてコンテンツ幅を指定 */
	}
}

/* 分類：幅調整モジュール
----------------------------------------------------------------------------- */
.w3{ width:3% !important; }
.w4{ width:4% !important; }
.w5{ width:5% !important; }
.w7{ width:7% !important; }
.w10{ width:10% !important; }
.w15{ width:15% !important; }
.w20{ width:20% !important; }
.w25{ width:25% !important; }
.w30{ width:30% !important; }
.w35{ width:35% !important; }
.w40{ width:40% !important; }
.w45{ width:45% !important; }
.w50{ width:50% !important; }
.w55{ width:55% !important; }
.w60{ width:60% !important; }
.w65{ width:65% !important; }
.w70{ width:70% !important; }
.w75{ width:75% !important; }
.w80{ width:80% !important; }
.w85{ width:85% !important; }
.w90{ width:90% !important; }
.w95{ width:95% !important; }
.w100{ width:100% !important; }

/* 分類：文字色モジュール
----------------------------------------------------------------------------- */
.fc-red{
    color:#ed2e64 !important;
}
.fc-yellow{
    color:#FCCF3B !important;
}
.fc-green{
    color:#66cdaa !important;
}
.fc-black{
    color:#50505b !important;
}
.fc-orange{
    color:#facd46 !important;
}
.fc-white{
    color:#ffffff !important;
}

/* 分類：背景色モジュール
----------------------------------------------------------------------------- */
.bg-red{
    background-color:#ed2e64 !important;
}
.bg-gray{
    background-color: #f2f2f4 !important;
}
.bg-pink{
    background-color: #ff00ff !important;
}

/* 分類：カラムレイアウト
----------------------------------------------------------------------------- */
/* ２カラム */
.l-2col{
    display:table;
    width:100%;
}
.l-2col-L,
.l-2col-R{
    display:table-cell;
}

@media screen and (max-width: 768px) {
    .l-2col{
        display:block;
    }
    .l-2col-L,
    .l-2col-R{
        display:block;
        width:100%;
    }
}

/* 分類：displayモジュール
----------------------------------------------------------------------------- */
.disp-ib{
    display:inline-block !important;
}

/* 分類：ボタン
----------------------------------------------------------------------------- */

/* button共通 */
.btn-entry,
.btn-approve,
.btn-copy,
.btn-cancel,
.btn-edit,
.btn-submit,
.btn-normal,
.btn-light,
.btn-disabled,
.btn-shift,
.btn-change,
.btn-setting,
.btn-view{
    border:none;
    border-radius:5px;
    padding:7px;
    text-align:center;
    display:inline-block;
    margin:0 2.5px;
    text-decoration:none;
    color:#333;
    font-size:14px;
    font-family:inherit;
    min-width:60px;
    height:35px;
    vertical-align:middle;

    /* デフォルトカラー */
    background-color:#c8c6ce;
}
.btn-entry:before,
.btn-edit:before,
.btn-copy:before,
.btn-cancel:before,
.btn-approve:before,
.btn-shift:before,
.btn-change:before,
.btn-setting:before,
.btn-view:before{
    content:"";
    display:inline-block;
    margin-top:1px;
    margin-right:5px;
    height:20px;
    vertical-align:top;
    background-repeat:no-repeat;
    background-position:top center;
}
@media screen and (max-width: 1100px) {
    .btn-entry,
    .btn-approve,
    .btn-copy,
    .btn-cancel,
    .btn-edit,
    .btn-submit,
    .btn-normal,
    .btn-light,
    .btn-disabled,
    .btn-shift,
    .btn-change,
    .btn-setting,
    .btn-view{
        padding:5px;
        font-size:13px;
        min-width:70px;
        height:30px;
        margin-bottom:5px;
    }
    .btn-entry:before,
    .btn-edit:before,
    .btn-copy:before,
    .btn-cancel:before,
    .btn-approve:before,
    .btn-shift:before,
    .btn-change:before,
    .btn-setting:before,
    .btn-view:before{
        display:none;
    }
}

/* entry（チェック赤） */
.btn-entry{
    color:#fff;
    background-color:#ed2e64;
}
.btn-entry:before{
    background-image:url("/common/images/btn/icn_entry.png");
    width:21px;
}

/* approve（フラグ黒・承認用） */
.btn-approve{
    color:#fff;
    background-color:#50505b;
}
.btn-approve:before{
    background-image:url("/common/images/btn/icn_approve.png");
    width:17px;
}

/* edit（鉛筆グレー） */
.btn-edit{
    
}
.btn-edit:before{
    background-image:url("/common/images/btn/icn_edit.png");
    width:23px;
    height:21px;
}

/* copy（コピーグレー） */
.btn-copy{
    
}
.btn-copy:before{
    background-image:url("/common/images/btn/icn_copy.png");
    width:18px;
    height:21px;
}

/* cancel（×グレー） */
.btn-cancel{
    background-color:#e6e6e6;
}
.btn-cancel:before{
    background-image:url("/common/images/btn/icn_cancel.png");
    width:21px;
    height:21px;
}
/* normal（黒） */
.btn-normal{
    color:#fff;
    background-color:#50505b;
}

/* light（アイコンなしライトグレー） */
.btn-light{
    background-color:#e6e6e6;
}
/* disabled（操作不可） */
.btn-disabled{
    background-color:#e6e6e6;
    color:#999;
    pointer-events:none;
}
/* submit */
.btn-submit{
    color:#fff;
    background-color:#50505b;
}
/* submit 押下× */
.btn-submit.is-disabled{
    opacity:0.3;
}

/* 個：シフト作成ボタン */
.btn-shift{
    color:#fff;
    background-color:#ed2e64;
    font-weight:bold;
}
.btn-shift::before{
    background-image:url("/common/images/btn/icn_shift.png");
    width:16px;
    height:19px;
}
.btn-shift.is-loading{
    pointer-events:none;
    background-color:#c8c6ce;
    font-weight:normal;
    color:#555;
}
.btn-shift.is-loading::before{
    background-image:url("/common/images/btn/icn_loading.gif");
    width:20px;
    height:20px;
}

/* 個：シフト結果確認ボタン */
.btn-view{
    color:#fff;
    background-color:#ed2e64;
    margin-right:15px;
    font-weight:bold;
}
.btn-view::before{
    background-image:url("/common/images/btn/icn_view.png");
    width:17px;
    height:21px;
}
.btn-view.is-loading{
    pointer-events:none;
    background-color:#c8c6ce !important;
    font-weight:normal;
    color:#555;
}
/* 個：シフト描画切り替え */
.btn-change{
    color:#fff;
    background-color:#50505b;
}
.btn-change:before{
    background-image:url("/common/images/icn_calendar.png");
    width:17px;
}
.btn-setting{
    color:#fff;
    background-color:#50505b;
}
.btn-setting:before{
    background-image:url("/common/images/icn_setting.png");
    width:17px;
}

/* カラーピッカーボタン */
.btn-color{
    width:30px;
    height:30px;
    margin-right:5px;
    border:none;
    border-radius:15px;
}
.tbl-list .btn-color{
    width:15px;
    height:15px;
    margin-right:3px;
    border:none;
    border-radius:7.5px;
}

/* スタッフ選択ボタン */
.select-staff{
    padding:0 !important;
}

/* 一覧内スタッフ選択ボタン */
.select-staff-btn{
    border:none;
    background-color:transparent;
    font-family:inherit;
    width:100%;
    min-height:30px;
    text-align:left;
    box-shadow: 0px 2px 1px 1px #e0e0e0 inset;
    border-radius:5px;
    background-image: url(/common/images/icn_popup.png);
    background-repeat: no-repeat;
    background-size: 5px 10px;
    background-position: right 10px center;
    padding-right: 30px !important;
}

/* 分類：インプット系調整
----------------------------------------------------------------------------- */
input[type="text"],
input[type="date"],
input[type="time"],
input[type="password"],
input[type="number"],
select,
textarea{
    font-family:inherit;
    border:1px solid #ccc;
    border-radius:5px;
    padding:5px 10px;
    -webkit-appearance: none;
}

select{
    cursor:pointer;
    padding-right:30px !important;
    background-image:url("/common/images/icn_select.png");
    background-repeat:no-repeat;
    background-size:10px 5px;
    background-position:right 10px center;
}

textarea{
    width:100%;
    min-height:100px;
    resize:vertical;
}
@media screen and (max-width: 1100px) {
    input[type="text"],
    input[type="date"],
    input[type="time"],
    input[type="password"],
    input[type="number"],
    select,
    textarea{
        padding:5px;
    }
}

/* 分類：見出し
----------------------------------------------------------------------------- */
/* 大見出し */
.ttl-L{
    font-size:15px;
    font-weight:bold;
    border-left:3px solid #ed2e64;
    padding:3px 10px;
    margin-bottom:10px;
}
.ttl-L span{
    font-size:14px;
    padding-left:15px;
    color:#666;
    font-weight:normal !important;
}
/* 中見出し */
.ttl-M{
    font-size:15px;
    font-weight:bold;
    vertical-align:middle;
    margin-bottom:5px;
    color:#50505b;
}
.ttl-M::before{
    content:"";
    display:inline-block;
    width:15px;
    height:2px;
    background-color:#50505b;
    vertical-align:middle;
    margin-right:10px;
    margin-bottom:4px;
}

/* 分類：ラベル
----------------------------------------------------------------------------- */
/* ラベル共通 */
.lbl-S,
.lbl-M{
    display:inline-block;
    margin-right:5px;
    background-color:#eee;
    border-radius:5px;
    padding:2px 5px;
}
.lbl-S.is-checked,
.lbl-M.is-checked{
    background-color:#50505b;
    color:#fff;
}

/* 切り替え式ラベルセット（包括する要素にクラス指定） */
.lbl-change{
    padding:0
}
.lbl-change label{
    width:100%;
    /*display:none;*/
}
.lbl-change label input{
    position:absolute;
    z-index:-1;
    opacity:0;
}

/* 有効・無効チェックラベル */
.lbl-enabled{
    display:block;
    padding:3px 0;
    min-height:25px;
}

/* 分類：新着バッジ
----------------------------------------------------------------------------- */

/* 赤 */
.badge-red{
    position:absolute;
    right:-12px;
    top:0px;
    background-color:#ed2e64;
    color:#fff;
    display:inline-block;
    font-size:11px;
    min-width:20px;
    height:20px;
    line-height:20px;
    border-radius:10px;
}

/* 分類：優先度レートセット
----------------------------------------------------------------------------- */
.box-rate{
    display:inline-block;
}

/* ★ */
.box-rate .rate-1,
.box-rate .rate-2,
.box-rate .rate-3,
.box-rate .rate-4,
.box-rate .rate-5{
    border:none;
    background-color:transparent;
    color:#ccc;
    font-size:18px;
    padding:2px !important;
    outline:none;
    font-family:inherit;
}
.box-rate .rate-1.is-checked,
.box-rate .rate-2.is-checked,
.box-rate .rate-3.is-checked,
.box-rate .rate-4.is-checked,
.box-rate .rate-5.is-checked{
    color:#ffdc83;
}

/* 必須ボタン */
.rate-must{
    font-family:inherit;
    margin-left:10px;
    display:inline-block;
    padding:3px 8px;
    border-radius:12.5px;
    background-color:#50505b;
    color:#fff;
    border:none;
    font-size:13px;
    text-align:center;
}
.rate-must.is-checked{
    background-color:#ed2e64;
}

/* 手入力 */
.box-rate input[type="text"]{
    width:40px !important;
    min-height:25px !important;
    height:25px !important;
    text-align:center;
    margin-left:5px;
    border:1px solid #ccc !important;
    border-radius:5px !important;
}



/* 分類：一覧テーブル
----------------------------------------------------------------------------- */
.tbl-list{
    width:100%;
    margin-bottom:10px;
}
.tbl-list thead th,
.tbl-list thead td{
    text-align:center;
    padding:5px 10px;
    border-right:2px solid #fff;
    vertical-align:middle;
    font-size:13px;
}
.tbl-list thead th{
    background-color:#23232d;
    color:#fff;
}
.tbl-list thead td{
    background-color:#c8c6ce;
}
.tbl-list tbody th,
.tbl-list tbody td{
    border-right:2px solid #fff;
    vertical-align:middle;
}
.tbl-list tbody th{
    background-color:#f2f2f4;
}
.tbl-list tbody tr{
    border-bottom:1px solid #c8c6ce;
}
/* 変更行 */
.tbl-list tbody tr.is-submitted > th,
.tbl-list tbody tr.is-submitted > td{
    background-color:#f7f2df;
}

/* リスト内フォームパーツ調整 */
.tbl-list tbody input[type="text"],
.tbl-list tbody input[type="date"],
.tbl-list tbody input[type="time"],
.tbl-list tbody input[type="number"],
.tbl-list tbody select{
    border:none;
    box-shadow:0px 2px 1px 1px #e0e0e0 inset;
    width:100%;
    padding:5px;
    margin:1px;
    outline:none;
    vertical-align:middle;
    background-color:transparent;
    min-height:30px;
    position:relative;
}
.tbl-list tbody textarea{
    margin-bottom:0 !important;
    border:none;
    min-height:30px;
    height:30px;
    background-color:transparent;
}

/* ※一覧ボタン調整 */
.tbl-list tbody .btn-submit,
.tbl-list tbody .btn-normal,
.tbl-list tbody .btn-disabled,
.tbl-list tbody .btn-light{
    min-width:50px;
    height:25px;
    padding:0 5px;
    font-size:13px;
    line-height:25px;
}

/* ドラッガブルリスト */
.f-draggable tbody tr{
    cursor:move;
    background-color:#fff !important;
}

/* ソート可能テーブル */
.f-sort thead th{
    cursor:pointer;
}

/* 縦横フォーカス */
.tbl-list .is-focus,
.tbl-list .is-focus button{
    background-color:#EBF3FA;
}

/* SP対応 */
@media screen and (max-width: 768px) {
    .tbl-list{
        min-width:100% !important;
    }
    .tbl-list thead{
        display:none;
    }
    .tbl-list tbody th,
    .tbl-list tbody td{
        display:table;
        width:100% !important;
        border-bottom:1px solid #ccc;
        border-right:none;
    }
    .tbl-list tbody tr th:last-child,
    .tbl-list tbody tr td:last-child{
        border-bottom:none;
    }
    .tbl-list-L,
    .tbl-list-R{
        display:table-cell;
        vertical-align:middle;
        text-align:left;
        font-size:13px;
    }
    .tbl-list-L{
        width:25%;
        background-color:#f2f2f4;
        padding:5px;
    }
    .tbl-list-R{
        background-color:#fff;
        padding:2px 4px;
    }
    .tbl-list tbody tr th:first-child .tbl-list-L,
    .tbl-list tbody tr th:first-child .tbl-list-R,
    .tbl-list tbody tr td:first-child .tbl-list-L,
    .tbl-list tbody tr td:first-child .tbl-list-R{
        background-color:#23232d !important;
        color:#fff;
    }
}

/* 分類：編集テーブル
----------------------------------------------------------------------------- */
.tbl-edit{
    width:100%;
    margin-bottom:10px;
}
.tbl-edit tbody th,
.tbl-edit tbody td{
    padding:5px;
    position:relative;
}
.tbl-edit tbody th{
    color:#fff;
    width:200px;
    background-color:#23232d;
    border-top:1px solid #50505b;
    vertical-align:top;
}
.tbl-edit tbody td{
    border-top:1px solid #c8c6ce;
}
.tbl-edit tfoot td{
    text-align:center;
    padding:10px;
    background-color:#50505b;
}
/* ポップアップ用編集テーブル */
.is-popup .tbl-edit tbody th{
    width:150px;
}
.is-popup .tbl-edit tfoot td{
    position:fixed;
    left:0;
    bottom:0;
    z-index:8888;
    width:100%;
}

/* 分類：汎用テーブル
----------------------------------------------------------------------------- */
.tbl-normal{
    width:100%;
    margin-bottom:15px;
}
.tbl-normal th,
.tbl-normal td{
    border-right:2px solid #fff;
    padding:3px;
}
.tbl-normal thead th{
    color:#fff;
    background-color:#23232d;
}
.tbl-normal thead td{
    background-color:#c8c6ce;
}
.tbl-normal tr{
    border-bottom: 1px solid #c8c6ce;
}
.tbl-normal tbody th{
    background-color:#f2f2f4;
    color:#333;
    text-align:left;
}

/* 分類：カレンダー
----------------------------------------------------------------------------- */
.tbl-calendar{
    width:100%;
    table-layout:fixed;
}

/* 月名 */
.tbl-calendar-ttl{
    text-align:center;
    font-weight:bold;
    margin:0 0 5px;
}

/* カレンダー */
.tbl-calendar th,
.tbl-calendar td{
    border:1px solid #ddd;
    width:14px;
    vertical-align:middle;
}
.tbl-calendar td{
    background-color:#eee;
}
.tbl-calendar td .tbl-calendar-btn{
    border:none;
    display:block;
    width:100%;
    padding:5px 0;
    background-color:#fff;
    min-height:60px;
}

/* 曜日 */
.tbl-calendar thead th{
    background-color: #50505b;
    color:#fff;
    padding:3px;
}

.tbl-calendar .sun{
    color:#ed2e64 !important;
}
.tbl-calendar .sat{
    color:#045FB4 !important;
}

/* 日付 */
.tbl-calendar-date{
    margin-bottom:5px;
    font-size:13px;
    font-weight:bold;
}

/* 勤務記号 */
.tbl-calendar-mark{
    display:inline-block;
    border-radius:5px;
    text-align:center !important;
    padding:5px 2.5px;
    min-width:25px;
    max-width:35px;
    min-height:30px;
    white-space: nowrap;
    overflow:hidden;
    vertical-align:middle;
}
.modal .tbl-calendar-mark{
    max-width:500px;
}

/* 人数表示オプション */
.tbl-calendar-option{
    font-size:11px;
    padding-top:5px;
    color:#444;
    height:20px;
}
.tbl-calendar-option i{
    color:#c8c6ce;
    font-size:12px;
}

/* 分類：一覧・詳細テーブル共通オプション
----------------------------------------------------------------------------- */
/* 編集セルのハイライト */
.tbl-edit .is-changed,
.tbl-list .is-changed{
    background-color:#f7ecb0 !important;
}

table.table-clickable tr[data-href]{
  cursor: pointer;
}

/* 分類：切り替えタブ
----------------------------------------------------------------------------- */
.tab{
    margin:0 0 15px;
}

/* タブボタン */
.tab-select{
    margin:0 0 10px;
}
.tab-select ul{
    text-align:center;
    border-bottom:1px solid #c8c6ce;
}
.tab-select ul li{
    display:inline-block;
    margin:0 10px;
    position:relative;
}
.tab-select ul li button,
.tab-select ul li a{
    
    display:block;
    color:#333;
    text-decoration:none;
    font-family:inherit;
    border:none;
    background-color:transparent;
    padding:10px;
    position:relative;
    outline:none;
}
.tab-select ul li.is-active button:after,
.tab-select ul li.is-active a:after{
    content:"";
    position:absolute;
    width:100%;
    height:4px;
    left:0;
    bottom:-2px;
    background-color:#ed2e64;
}

/* 増減リスト
----------------------------------------------------------------------------- */
.list-add li{
    background-color:#f1f1f1;
    margin:0 0 5px;
    padding:5px;
    clear:both;
}
.list-add li.list-add-btn{
    background-color:#fff;
    text-align:center;
}
.list-add li input,
.list-add li select{
    margin-right:5px;
}

/* コピー元 */
.list-add-copy{
    display:none !important;
}

/* del btn */
.list-add li .list-add-del{
    float:right;
    width:30px;
    height:30px;
    border:none;
    color: #fff;
    
    background-color:#ed2e64;
    font-size:25px;
}

/* add btn */
.list-add li.list-add-btn{
    display:block;
    width:150px;
    margin:0 auto;
}
.list-add li.list-add-btn button{
    width:150px;
    background-color: #50505b;
    color:#fff;
    font-size:20px;
    border:none;
    height:30px;
    line-height:30px;
    font-weight:bold;
    vertical-align:middle;
}

/* アコーディオン
----------------------------------------------------------------------------- */
/* 開閉ボタン */
.accordion-L,
.accordion-M,
.accordion-S{
    width:100%;
    border:none;
    padding:5px 10px;
    text-align:left;
    font-family:inherit;
    font-size:14px;
    background-repeat:no-repeat;
    background-position:right 15px center;
}
.accordion-L{
    font-weight:bold;
    color:#fff;
    background-color:#50505b;
    padding:10px;
    border-left:4px solid #ed2e64;
    background-image:url("/common/images/icn_acc_l_close.png");
}
.accordion-L.is-close{
    background-image:url("/common/images/icn_acc_l_open.png");
}
.accordion-L span{
    font-size:12px;
    padding-left:15px;
    color:#bbb;
}
.accordion-M{
    font-weight:bold;
    background-color:#c8c6ce;
    border-bottom:1px solid #fff;
    background-image:url("/common/images/icn_acc_m_close.png");
}
.accordion-M.is-close{
    background-image:url("/common/images/icn_acc_m_open.png");
}
.accordion-S{
    background-color:#f2f2f4;
    border-bottom:1px solid #fff;
    background-image:url("/common/images/icn_acc_s_close.png");
}
.accordion-S.is-close{
    background-image:url("/common/images/icn_acc_s_open.png");
}

/* 開閉先 */
.accordion-tgt{
    padding:5px 0;
}
.accordion-tgt.is-close{
    display:none;
}


/* モーダル・ポップアップ
----------------------------------------------------------------------------- */
.modal{
    display:none;
}

/* ★全画面モーダル（.is-full） */
.modal.is-full{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100vh;
    background-color:rgba(0,0,0,0.3);
    z-index:999999;
}
.modal.is-full .modal-window{
    background-color:#fff;
    box-shadow:0px 0px 9px 0px rgba(120,120,120,0.57);
    width:80%;
    height:80vh;
    margin:auto;
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    overflow:auto;
}
.modal.is-full .modal-window-main{
    padding:10px 5px 0;
    height:calc(80vh - 50px);
    overflow:auto;
}
.modal.is-full .modal-window-btn{
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    background-color:#23232d;
    text-align:center;
    padding:5px 0;
}
@media screen and (max-width:768px){
    .modal.is-full .modal-window{
        width:calc(100% - 20px) !important;
    }
}

/* フルサイズモーダル（小） */
.modal.is-full .modal-window.is-S{
    height:30vh !important;
}
.modal.is-full .modal-window.is-S .modal-window-main{
    height:calc(30vh - 50px) !important;
}

/* フルサイズモーダル（中） */
.modal.is-full .modal-window.is-M{
    height:50vh !important;
}
.modal.is-full .modal-window.is-M .modal-window-main{
    height:calc(50vh - 50px) !important;
}

/* ★リスト内ポップアップ（.is-popup） */
.modal.is-popup{
    position:absolute;
    width:530px;
    height:300px;
    overflow-y:auto;
    background-color:#50505b !important;
    margin-top:10px;
    z-index:99999999;
}
.modal.is-popup .modal-window{
    width:100%;
    height:300px;
    margin:auto;
    background-color:transparent !important;
    padding:10px;
}
.modal.is-popup .modal-close{
    position:absolute;
    top:0;
    right:0;
    background-color:transparent;
    border:none;
    color:#fff;
    font-size:20px;
    font-weight:bold;
    width:30px;
    height:30px;
    display:inline-block;
}

/* 勤務記号選択ボックス
----------------------------------------------------------------------------- */
.box-marks{
    text-align:left;
}
.box-marks label{
    text-align:center;
    padding:8px 5px;
    border-radius:5px;
    margin:0 5px 5px 0;
    display:inline-block;
    position:relative;
    min-width:40px;
    height:40px;
    background-color:#f0f0f0; /* default */
    vertical-align:middle;
}
.modal .box-marks label{
    height:30px;
    padding:0 5px;
    line-height:30px;
    min-width:60px;
    overflow:hidden;
}
/* 勤務希望ボタン */
.box-marks label input[type="checkbox"],
.box-marks label input[type="radio"]{
    position:absolute;
    z-index:-1;
    opacity:0;
}
/* 未選択 */
.box-marks label.is-unchecked{
    opacity:0.4;
}

/* 分類：システムモーダル
----------------------------------------------------------------------------- */
.system-modal{
	position:relative;
}
.system-modal-box{
	width:400px;
	height:250px;
	background-color:rgba(0,0,0,0.9);
	border-radius:5px;
	color:#fff !important;
	position:fixed;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	z-index:8888;
	overflow:hidden;
	box-shadow:0px 0px 10px -1px rgba(0,0,0,0.6);
}

/* タイトル */
.system-modal-ttl{
	padding:5px 10px;
	text-align:center;
	font-weight:bold;
}
.system-modal .system-modal-ttl{
	color:#fff;
	background-color:#ed2e64;
}

/* メッセージ */
.system-modal-msg{
	padding:10px 10px 50px;
}

/* ボタン */
.system-modal-btn{
	text-align:center;
    position:absolute;
    bottom:10px;
    width:100%;
}
.system-modal-btn button{
	display:inline-block;
	border:none;
	padding:5px 15px;
    background-color:#ed2e64;
    color:#fff;
    border-radius:15px;
    width:80px;
    height:30px;
}

/* 個別パーツ */

/* 【ログイン】
----------------------------------------------------------------------------- */
.login{
    width:100%;
    height:100vh;
    position:relative;
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover;
    background-image:url("/common/images/login/bg_login_00.jpg");
}
.login.is-01{background-image:url("/common/images/login/bg_login_01.jpg");}
.login.is-02{background-image:url("/common/images/login/bg_login_02.jpg");}
.login.is-03{background-image:url("/common/images/login/bg_login_03.jpg");}
.login.is-04{background-image:url("/common/images/login/bg_login_04.jpg");}
.login.is-05{background-image:url("/common/images/login/bg_login_05.jpg");}
.login.is-06{background-image:url("/common/images/login/bg_login_06.jpg");}
.login.is-07{background-image:url("/common/images/login/bg_login_07.jpg");}
.login.is-08{background-image:url("/common/images/login/bg_login_08.jpg");}
.login.is-09{background-image:url("/common/images/login/bg_login_09.jpg");}
.login.is-10{background-image:url("/common/images/login/bg_login_10.jpg");}
.login.is-11{background-image:url("/common/images/login/bg_login_11.jpg");}
.login.is-12{background-image:url("/common/images/login/bg_login_12.jpg");}

.login-area{
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    display:table;
    color:#fff;
    padding:50px 20px;
    background-color:rgba(35,35,35,0.9);
}

.login-area .inner{
    display:table;
}

.login-area-logo,
.login-area-form{
    display:table-cell;
    vertical-align:middle;
}
.login-area-logo{
    width:20%;
}
.login-area-logo p{
    font-size:15px;
}
.login-area-logo h1{
    font-size:40px;
    letter-spacing:2px;
    font-weight:bold;
}

.login-area-form{
    width:80%;
    text-align:right;
}
.login-area-form input{
    height:30px;
    border-radius:15px;
    margin-right:15px;
}
.login-area-form i{
    font-size:18px;
    vertical-align:middle;
    margin-right:5px;
}
.login-area-form button{
    width:150px;
    display:inline-block;
    height:30px;
    line-height:30px;
    border:none;
    border-radius:15px;
    color:#fff;
    font-weight:bold;
    background-color:#ed2e64;
    font-size:15px;
    margin-left:10px;
}
@media screen and (max-width:768px){
    .login-area{
        display:block;
        padding:20px 10px;
    }
    .login-area-logo,
    .login-area-form{
        display:block;
    }
    .login-area-logo{
        width:100%;
        text-align:center;
    }
    .login-area-logo p{
        font-size:13px;
        display:inline-block;
    }
    .login-area-logo h1{
        font-size:25px;
        letter-spacing:1px;
        display:inline-block;
    }

    .login-area-form{
        width:100%;
        text-align:center;
    }
    .login-area-form input{
        margin-bottom:5px;
    }
}

/* ログイン画面専用掲示板 */
.login-board{
    color:#333;
    background-color:#fff;
    border-radius:5px;
    margin-top:10px;
    overflow:hidden;
}
.login-board-ttl{
    padding:10px;
    border-bottom:1px solid #bbb;
    font-size:17px;
    font-weight:bold;
}
.login-board-ttl i{
    color:#ed2e64;
    margin-right:5px;
}
.login-board-main{
    padding:10px;
    background-color:#f2f2f4;
    height:225px;
    overflow-y:scroll;
}
.login-board-main .box{
    background-color:#fff;
    border-radius:5px;
    margin-bottom:10px;
}
.login-board-main .box-ttl{
    padding:10px;
    font-size:16px;
    font-weight:bold;
    border-bottom:1px solid #ed2e64;
}
.login-board-main .box-ttl-date{
    float:right;
    font-weight:normal;
    color:#999;
    font-size:14px;
}
.login-board-main .box-txt{
    clear:both;
    padding:10px;
}
.login-board-main i{
    font-style: italic;
}
.login-board-main b{
    font-weight: 700;
}
@media screen and (max-width:768px){
    .login-board-main{
        padding:5px;
        height:150px;
    }
}

/* 掲示板テキスト装飾 */

.box-txt h1,
.menu-board-box-body h1,
.box-txt h2,
.menu-board-box-body h2,
.box-txt h3,
.menu-board-box-body h3,
.box-txt h4,
.menu-board-box-body h4{
    color: #111;
    background: 0 0;
    margin: 0!important;
    padding: 0!important;
    font-weight: 700;
}
.box-txt h1,
.menu-board-box-body h1{
    font-size: 32px!important;
    line-height: 38px!important;
    margin-bottom: 20px!important;
}
.box-txt h2,
.menu-board-box-body h2{
    font-size: 26px!important;
    line-height: 34px!important;
    margin-bottom: 15px!important;
}
.box-txt h3,
.menu-board-box-body h3{
    font-size: 22px!important;
    line-height: 28px!important;
    margin-bottom: 7px!important;
}
.box-txt h4,
.menu-board-box-body h4{
    font-size: 16px!important;
    line-height: 22px!important;
    margin-bottom: 7px!important;
}
.box-txt blockquote,
.menu-board-box-body blockquote,
.box-txt div,
.menu-board-box-body div,
.box-txt ol,
.menu-board-box-body ol,
.box-txt p,
.menu-board-box-body p,
.box-txt ul,
.menu-board-box-body ul{
    box-shadow: none!important;
    background: 0 0!important;
    margin: 0 0 15px!important;
    line-height: 1.4em!important;
    font-family: "Trebuchet MS",Helvetica,Verdana,sans-serif!important;
    font-size: 14px!important;
    border: none;
}
.box-txt blockquote,
.menu-board-box-body blockquote{
    margin-left: 32px!important;
    font-style: italic!important;
    color: #555;
}
.box-txt a,
.menu-board-box-body a{
    color:#15c!important;
    text-decoration:underline!important;
}
.box-txt hr,
.menu-board-box-body hr,
.box-txt iframe,
.menu-board-box-body iframe,
.box-txt object,
.menu-board-box-body object{
    margin-bottom:15px!important;
}
.box-txt hr,
.menu-board-box-body hr{
    display:block;
    height:1px;
    border:none;
    border-top:1px solid #CCC;
}
.box-txt ol,
.menu-board-box-body ol,
.box-txt ul,
.menu-board-box-body ul{
    padding-left:20px!important;
    border:none;
    margin:2px!important;
    padding:0 0 0 24px!important;
}
.box-txt ul,
.menu-board-box-body ul{
    list-style:disc;
}
.menu-board-box-body i{
    font-style: italic;
}
.menu-board-box-body b{
    font-weight: 700;
}


.box-txt h1,
.trumbowyg-reset-css h1,
.box-txt h2,
.trumbowyg-reset-css h2,
.box-txt h3,
.trumbowyg-reset-css h3,
.box-txt h4,
.trumbowyg-reset-css h4{
    color: #111;
    background: 0 0;
    margin: 0!important;
    padding: 0!important;
    font-weight: 700;
}
.box-txt h1,
.trumbowyg-reset-css h1{
    font-size: 32px!important;
    line-height: 38px!important;
    margin-bottom: 20px!important;
}
.box-txt h2,
.trumbowyg-reset-css h2{
    font-size: 26px!important;
    line-height: 34px!important;
    margin-bottom: 15px!important;
}
.box-txt h3,
.trumbowyg-reset-css h3{
    font-size: 22px!important;
    line-height: 28px!important;
    margin-bottom: 7px!important;
}
.box-txt h4,
.trumbowyg-reset-css h4{
    font-size: 16px!important;
    line-height: 22px!important;
    margin-bottom: 7px!important;
}
.box-txt blockquote,
.trumbowyg-reset-css blockquote,
.box-txt div,
.trumbowyg-reset-css div,
.box-txt ol,
.trumbowyg-reset-css ol,
.box-txt p,
.trumbowyg-reset-css p,
.box-txt ul,
.trumbowyg-reset-css ul{
    box-shadow: none!important;
    background: 0 0!important;
    margin: 0 0 15px!important;
    line-height: 1.4em!important;
    font-family: "Trebuchet MS",Helvetica,Verdana,sans-serif!important;
    font-size: 14px!important;
    border: none;
}
.box-txt blockquote,
.trumbowyg-reset-css blockquote{
    margin-left: 32px!important;
    font-style: italic!important;
    color: #555;
}
.box-txt a,
.trumbowyg-reset-css a{
    color:#15c!important;
    text-decoration:underline!important;
}
.box-txt hr,
.trumbowyg-reset-css hr,
.box-txt iframe,
.trumbowyg-reset-css iframe,
.box-txt object,
.trumbowyg-reset-css object{
    margin-bottom:15px!important;
}
.box-txt hr,
.trumbowyg-reset-css hr{
    display:block;
    height:1px;
    border:none;
    border-top:1px solid #CCC;
}
.box-txt ol,
.trumbowyg-reset-css ol,
.box-txt ul,
.trumbowyg-reset-css ul{
    padding-left:20px!important;
    border:none;
    margin:2px!important;
    padding:0 0 0 24px!important;
}
.box-txt ul,
.trumbowyg-reset-css ul{
    list-style:disc;
}
.trumbowyg-reset-css i{
    font-style: italic;
}
.trumbowyg-reset-css b{
    font-weight: 700;
}

.trumbowyg-reset-css{
    font-family: Times New Roman, "ＭＳ Ｐゴシック" !important;
}