@charset "utf-8";
/**
 * 共通(style.css)
 *
 * @see     2022/11  新規作成
 * @version 1.0.0
 */
 /*=============================================================================*
 * 全体
 *=============================================================================*/
 html {
	color:                 #000000;
	font-family:           'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
    padding:               0;
    margin:                0;
}
body {
    color:                 #000000;
	font-family:           'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
    padding:               0;
    margin:                0;
}
input, select, textarea {
	color:                 #000000;
	font-family:           'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
}
table {
    width               : 100%;
}

input:disabled {
    background-color:      transparent!important;
    color:                 black      !important;
}
.ui-widget-overlay {
    opacity:0.3;
}

/*サイトシール*/
#ss_gmo_globalsign_secured_site_seal {
    width:100px;
    height:50px;
/*    background-color: red;*/
}
#ss_gmo_globalsign_img {
    cursor:pointer;
    border:0;
    width:100%;
    margin-top: -10px;
}
 /*=============================================================================*
 * 色
 *=============================================================================*/
/* ヘッダー・フッター */
.nav_title {
    background-color:       #e3f2fd !important;
}
.navbar-brand {
    color:                  rgba(0,0,0,.9) !important;
}
/*要素が少なくスクロール不要*/
.footer_content {
    color:                  #000000;
    font-size:                0.8rem;
    padding-top:              0.5rem;
    padding-bottom:           0.5rem;
    background-color:         #e3f2fd;
    width:                    100%;
    text-align:               center;
}

/*=============================================================================*
 * ボタン（各HTMLで共通して使用するもの）
 *=============================================================================*/
button, select {
    text-transform          : none;
}
button, input, optgroup, select, textarea {
    margin                  : 0;
    font-family             : inherit;
    font-size               : inherit;
    line-height             : inherit;
}
button {
    border-radius           : 0;
}
.btn {
    display                 : inline-block;
    margin-bottom           : 0;
    font-weight             : 400;
    text-align              : center;
    white-space             : nowrap;
    vertical-align          : middle;
    -ms-touch-action        : manipulation;
    touch-action            : manipulation;
    cursor                  : pointer;
    background-image        : none;
    border                  : 1px solid transparent;
    padding                 : 6px 12px;
    font-size               : 1rem;
    line-height             : 1.42857143;
    border-radius           : 4px;
    -webkit-user-select     : none;
    -moz-user-select        : none;
    -ms-user-select         : none;
    user-select             : none;
}
.btn {
    border-radius           : 3px;
    -webkit-box-shadow      : none;
    box-shadow              : none;
    border                  : 1px solid transparent;
}
.btn.focus, .btn:focus, .btn:hover {
    color                   : #333;
    text-decoration         : none;
}
.btn-block {
    display                 : block;
    width                   : 100%;
}
.btn-primary {
    color                   : #fff;
    background-color        : #0d6efd;
    border-color            : #0d6efd;
}
.btn-primary:hover, .btn-primary:active, .btn-primary.hover {
    background-color        : #367fa9;
}
.btn-primary:hover {
    color                   : #fff;
    background-color        : #0d6efd;
    border-color            : #0d6efd;
}
.btn:disabled {
    opacity                 : 0.5;
}

/* メインボタン */
.btn_main {
    background-color            : #0d6efd;
    color                       : #ffffff;
    border-color                : #0d6efd;
    width                       : 100%;
    padding                     : 5px;
    /*
    font-size                   : var(--font-size-base);
    */
    margin-top                  : 10px;
}
.btn_main:hover, .btn_main:active, .btn_main.hover {
    background-color            : #367fa9;
}
.btn_main:hover {
    color                       : #fff;
    background-color            : #0b5ed7;
    border-color                : #0a58ca;
}
.btn_return:hover {
    color                       : #fff;
    background-color            : #0d6efd;
    border-color                : #0d6efd;
}

/*戻るボタン*/
button.btn_return{
    background-color            : #ffffff;
    color                       : #6495ed;
    border                      : solid 2px #6495ed;
    width                       : 100%;
    padding                     : 5px;
}
.lnk_btn {
    text-decoration             :none;
}
/*=============================================================================*
 * リンク
 *=============================================================================*/
.lnk {
    display                     : block;
    margin-top                  : 20px;
    color                       : var(--color-link);
    font-size                   : var(--font-size-s);
    text-decoration             : underline !important;
}
.lnk_disabled {
    opacity                     : 0.5;
}
/*=============================================================================*
 * アイコン画像
 *=============================================================================*/
/* 入力エラー */
.img_error {
    width                       : 20px;
}
/* 子画面閉じる */
.edit_close {
    width                       : 30px;
}

.img_icon {
    width                       : 30px;
}
/*=============================================================================*
 * メイン
 *=============================================================================*/
body {
    margin                      : 0;
    /* font-family: var(--bs-font-sans-serif); */
    font-size                   : 1rem;
    font-weight                 : 400;
    line-height                 : 1.5;
    color                       : #212529;
    background-color            : #fff;
    -webkit-text-size-adjust    : 100%;
    -webkit-tap-highlight-color : transparent;
}
.navbar {
    padding-top                 : 0.2rem;
    padding-bottom              : 0.3rem;
    font-size                   : 1rem;
}
.navbar {
    /*
    position: relative;
    */
    display                     : flex;
    flex-wrap                   : wrap;
    align-items                 : center;
    justify-content             : space-between;
}
.navbar-light .navbar-brand {
    color                       : rgba(0,0,0,.9);
}
.navbar-brand {
    padding-top                 : .3125rem;
    padding-bottom              : .3125rem;
    margin-right                : 1rem;
    font-size                   : 1.25rem;
    text-decoration             : none;
    white-space                 : nowrap;
}
*, ::after, ::before {
    box-sizing                  : border-box;
}

.container, .container-fluid {
    width                       : 100%;
    padding-right               : var(--bs-gutter-x,.75rem);
    padding-left                : var(--bs-gutter-x,.75rem);
    margin-right                : auto;
    margin-left                 : auto;
}
.container-fluid {
    display             : flex;
    flex-wrap           : inherit;
    align-items         : center;
    justify-content     : space-between;
}
.container, .container-sm {
    max-width           : 540px;
}
div.blk_input {
    padding             : 2%;
    position            : relative;
}
p {
    margin-top          : 0;
    margin-bottom       : 1rem;
}
p {
    display             : block;
    margin-block-start  : 1em;
    margin-block-end    : 1em;
    margin-inline-start : 0px;
    margin-inline-end   : 0px;
}
.title{
    font-size           : 20px;
    border-bottom       : dotted 2px #87CEFA;
}

.main_div {
    margin-top          : 3rem;
    margin-bottom       : 6rem;
    overflow            : auto;
}

.edit_div {
    height              : 100%;

}

.fixing-base .fixing-box{
    position            : fixed;

}
.fixed-top {
    position            : fixed;
    top                 : 0;
    right               : 0;
    left                : 0;
    z-index             : 1030;
}

label {
    display             : inline-block;
    max-width           : 100%;
    margin-bottom       : 5px;
    font-weight         : 700;
}

/*=============================================================================*
 * 入力用
 *=============================================================================*/
/* メッセージ */
div.error_message {
    color               : #ff0000;
    text-align          : left;
    font-weight         : bold;
    /*
    line-height:16px;
    */
}
/*注釈*/
div.help_msg {
    text-align          : left;
    font-size           : 0.8rem;
    color               : red;
    white-space         : normal;
}
/*パスワード変更注釈*/
div.password_msg{
    font-size           : 14px;
}
/*基本の入退館注釈*/
div.kihon_msg{
    font-size           : 15px;
}
div.end_day{
    font-size           : 13px;
}
div.div_indent {
    text-indent         : 2rem;
}
/*=============================================================================*
 * input
 *=============================================================================*/
/*テキストボックス・テキストエリア・セレクトボックス*/
text, .other, .lesson_time , .comment, .jido_shosai {
    width               : 90%;
 }
select.taikan_hoho, input.taikan_hoho{
    width               : 41%;
}
/*パスワード、メールアドレス入力のinput*/
input.cd {
    ime-mode            : disabled
}
.col_title {
    display             : table-cell;
}
.col_indent_1 {
    margin-left         : 0.8rem;
}
.col_indent_2 {
    margin-left         : 2rem;
}
/*.ｆorm-control{
    width: 180px;
}
*/
.label_checkbox {
    margin-right        : 5px;
    font-weight         : normal;
}
.label_radio {
    margin-right        : 5px;
    font-weight         : normal;
}

input::placeholder {
    font-size           : 0.9rem;
}
/*=============================================================================*
 * ログイン
 *=============================================================================*/
.has-feedback .form-control {
    padding-right       : 42.5px;
}
.form-group {
    margin-top          : 15px;
    margin-bottom       : 15px;
}
.form-control {
    border-radius       : 0;
    box-shadow          : none;
    border-color        : #d2d6de;
}
.form-control {
    display             : block;
    width               : 100%;
    height              : 34px;
    padding             : 6px 12px;
    font-size           : 14px;
    line-height         : 1.42857143;
    color               : #555;
    background-color    : #fff;
    background-image    : none;
    border              : 1px solid #ccc;
    border-radius       : 4px;
}
.form-control {
    display             : block;
    width               : 100%;
    padding             : .375rem .75rem;
    font-size           : 1rem;
    font-weight         : 400;
    line-height         : 1.5;
    color               : #212529;
    background-color    : #fff;
    background-clip     : padding-box;
    border              : 1px solid #ced4da;
    -webkit-appearance  : none;
    -moz-appearance     : none;
    appearance          : none;
    border-radius       : .25rem;
    transition          : border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.row {
    margin-right        : -15px;
    margin-left         : -15px;
}
.col-xs-12 {
    width               : 100%;
}
 /* @media (max-width: 768px) */
.login-box, .register-box {
    width               : 100%;
    margin-top          : 20px;
}
.login-box-body, .register-box-body {
    background          : #fff;
    padding             : 20px;
    border-top          : 0;
    color               : #666;
}
.login-box-msg, .register-box-msg {
    margin              : 0;
    text-align          : center;
    padding             : 0 20px 20px 20px;
}
.label_show {
    margin-top          : 3px;
    font-weight         : normal;
}
.bg-red, .callout.callout-danger, .alert-danger, .alert-error, .label-danger, .modal-danger .modal-body {
    background-color    : #dd4b39 !important;
    color               : white;
    padding             : 1px 10px;
}
/* リダイレクト時メッセージ */
.bg-blue, .alert-complete, .label-complete {
    background-color    : var(--color-msg_complete) !important;
    color               : white;
    padding             : 1px 10px;
}
.login-page {
    overflow-y          : hidden;
}
/*------------------------------*
 * メッセージ部
 *------------------------------*/
ul.error, ul.complete {
    padding             : 0;
    list-style          : none;
    white-space         : normal;
}

/*=============================================================================*
 * メニューボタン（ハンバーガーメニュー）
 *=============================================================================*/
/*メニュー表示時のスクロール制御*/
#main_div{
    overscroll-behavior : auto;
    overflow            : auto;
    inset               : 0;
}

/*アイコンクリック前*/
.menu-btn {
    position            : fixed;
    top                 : 10px;
    right               : 10px;
    display             : flex;
    height              : 30px;
    width               : 30px;
    justify-content     : center;
    align-items         : center;
    background-color    : #e3f2fd;
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
    content             : '';
    display             : block;
    height              : 3px;
    width               : 25px;
    border-radius       : 3px;
    background-color    : #0d6efd;
    position            : absolute;
}
.menu-btn span:before {
    bottom              : 8px;
}
.menu-btn span:after {
    top                 : 8px;
}
/*アイコンクリック後*/
#menu-btn-check:checked ~ .menu-btn span {
    background-color    : rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
}
#menu-btn-check:checked ~ .menu-btn span::before {
    bottom              : 0;
    transform           : rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
    top                 : 0;
    transform           : rotate(-45deg);
}
#menu-btn-check {
    display             : none;
}

/*メニュー内容*/
.menu-content {
    position            : fixed;
    background-color    : #3584bb;
    transition          : all 0.5s;/*アニメーション設定*/
    inset               : 0 0 0 100%;
}
.menu-content ul {
    margin-top          : 45px;
    padding             : 0px 10px 0;
    overflow            : auto;
    -webkit-overflow-scrolling : touch;
    height              : calc(100vh - 45px);
}
.menu-content ul li {
    border-bottom       : solid 1px #ffffff;
    list-style          : none;
    padding             : 8px 0px;
    overflow            : auto;
    -webkit-overflow-scrolling : touch;

}
.menu-content ul li a {
    display             : block;
    width               : 100%;
    font-size           : 15px;
    box-sizing          : border-box;
    color               :#ffffff !important;
    text-decoration     : none;
    padding             : 8px 0px;
    position            : relative;
}
.menu-content .menu-text {
    color               :#ffffff !important;
    padding             : 5px 0px 12px 0px;
}
.menu-content ol {
    padding-left        : 20px;
}
.menu-content .menu-content-child {
    padding             : 0px !important;
    border-bottom       : none;
}
.menu-content .menu_logout {
    border-bottom       : none !important;
}
.menu-content .menu_footer {
    border-bottom       : none !important;
}
.menu_footer_content {
    color               :#ffffff !important;
    font-size           : 0.8rem;
    padding-top         : 0.5rem;
    padding-bottom      : 0.5rem;
}

.menu-content ul li a:hover {
    color               : #c3ba49 !important;
}
.menu-content ul li a:active {
    color               : #c3ba49 !important;
}
#menu-btn-check:checked ~ .menu-content {
    left               : 50%;
}
@media screen and (max-width: 750px) {
    #menu-btn-check:checked ~ .menu-content {
        left               : 0;
    }
}

.menu-overlay {
    display:               none;
    position:              fixed;
    top:                   0;
    left:                  0;
    background-color:    rgba(0, 0, 0, 0.5);
    width:                 100%;
    height:                100%;
    z-index:               80;
}
/*=============================================================================*
 * マイページ（トップページ）
 *=============================================================================*/
.mypage_torokuzumi{
	font-size           : 14px;
    display             : flex;
    padding             : 15px;
    border-bottom       : 1px solid #000;
    list-style-type     : none;
}
.mypage{
    list-style-type     : none;
    padding-left        : 0px;
}
.mypage_day{
    white-space         : nowrap;
    width               : 60px; 
}
.mypage_day_info{
    margin-left         : 15px;
}
.mypage_msg{
    left               : 20px;
    text-align         : right;
    font-size          : 0.8rem;
}
.no-data{
    text-align         : center;
}
.board_link{
    text-decoration    : none;
}
/*見出しデザイン*/
.koumoku{
    padding            : 1rem 2rem;
    border-left        : 3px solid #0d6efd;
    background-color   : #f0f8ff;
}

/*=============================================================================*
 * 連絡帳・連絡帳詳細
 *=============================================================================*/
.renraku_main {
    margin-top              : 3rem;
}
.renraku_search_div {
    overflow                : auto;
    inset                   : 0;
}
.renraku_cond_div {
    margin-top              : 8px;
}
.renraku_list_div {
    margin-top              : 5px;
    white-space             : normal;
    height                  : calc(100vh - 210px);
    overflow-x              : hidden;
    overflow-y              : auto;
    border-bottom           : var(--border-table);
}
/*ボタン*/
button.btn_renrakutyo {
    background-color        : #0d6efd;
    color                   : #ffffff;
    padding                 : 0;
    width                   : 28px;
    height                  : 28px;
}
table.renraku_tbl {
    border-spacing          : 0 !important;
    table-layout            : fixed;
    width                   : 100%;
}
table.renraku_tbl td {
    padding                 : 5px 5px;
}
table.renraku_tbl th {
    font-size               : 15px;
    text-align              : center;
    background-color        : #e3f2fd;
    z-index                 : 1;
}

/*連絡帳*/
.renraku_cond_div table {
    table-layout            : fixed;
}
.renraku_cond_div table td.current_ym {
    width: 50%;
}
.month{
    font-size               : 20px;
    font-weight             : bold;
    text-align              : center;
}
.name{
    font-size               : 1rem;
    margin-top              : 20px;
    margin-bottom           :  5px;
}
.before_month{
    float                   : left;
    font-weight             : bold;
}
.after_month{
    float                   : right;
    font-weight             : bold;
}
.col_day{
    width                   : 2rem;
}
.col_week{
    width                   : 2rem;
}
.col_way{
    width                   : 100%;
}
.col_icon{
    width                   : 2.5rem;
}
.day{
    text-align              : center;
    height                  : 40px !important;
}
.week{
    text-align              : center;
}
.way{
    width                   : 43.5rem;
    text-align              : left;
}
.icon{
    text-align              : center;
    padding                 : 8px 0 2px 0!important;
}
#holiday{
    background-color        : #b0c4de;
}
#closed{
    background-color        : #ffdab9;
}
.saturday {
    background-color        : #b0c4de;
}
.sunday {
    background-color        : #ffdab9;
}
.closed {
    background-color        : #dcdcdc;
}

/*アイコン透過*/
.opacity{
    opacity                 : 0.3;
}
/* リンク */
.lnk_edit {
    cursor                  : pointer;
}

/*連絡帳詳細*/
.sub_window_div {
    margin-top              : 0;
    margin-bottom           : 2rem;
    padding-left            : 5px;
    padding-right           : 5px;
}

select.out_type, input.out_type {
    width                   : 100%;
}

.blk_time {
    margin-bottom           : 5px;
}

/*入退館時刻のセレクトボックス*/
.nyutaikan_time {
    margin-left             : 15px;
}
.nyutaikan {
    width                   : 25%;
}

/* 中抜け時刻のセレクトボックス */
.esc_nyutaikan_time {
    margin-left             : 10px;
}

.bold {
    font-weight             : bold;
}
.blk_kaikan_comment {
    margin-top              : 1em;
    border                  : dashed;
    background-color        : #ffc0cb;
    padding-top             : 0px !important;
}
.img_kaikan_comment {
    width                   : 25px;
}
.kaikan_comment {
    padding-top             : 10px;
}
/*=============================================================================*
 * 基本の入館・退館時刻設定
 *=============================================================================*/
.kihon_btn_container {
    display                 : table;
    width: 100%;
}
.kihon{
    padding                 : 0.7rem 0.4rem;
    border-left             : 3px solid #0d6efd;
    background-color        : #f0f8ff;
    font-size               : 1.1rem;
}
.kihon_week {
    display                 : table-cell;
}
button.kihon_btn{
    padding                 : 10px;
    margin                  : 10px 3px;
    width                   : 40px;
}
.kihon_set {
    display                 : block;
    text-align              : center;
    font-size               : 0.8rem;
    margin                  : 0 3px;
    width                   : 40px;
}
button.kihon_btn_school {
    background-color        : #7b68ee;
    border                  : solid 2px #7b68ee;
    color                   : #ffffff;
}
button.kihon_btn_close {
    background-color        : #ff69b4;
    border                  : solid 2px #ff69b4;
    color                   : #ffffff;
}
button.kihon_btn_dmy {
    opacity: 0;
}
/*=============================================================================*
 * 入退館通知
 *=============================================================================*/
/*お知らせ一覧*/
.attend_info_list {
    padding-left       : 10px;
    margin-top         : 15px;
    margin-bottom      : -5px;
    white-space        : normal;
}
#nodata_msg{
    margin-top         : 15px;
    margin-bottom      : -13px;
    text-align         : center;
    font-size          : 17px;      
}
.datetime{
    margin-right       : 15px;
}
.child_nm{
    margin-right       : 15px;
}
.attend_calendar {
    margin-top          : 1em;
}
/*=============================================================================*
 * お知らせ
 *=============================================================================*/
div.news_info{
    display            : flex;
    flex-direction     : column;
    flex-wrap          : nowrap;
    align-content      : space-around;
    justify-content    : center;
    align-items        : flex-start;
}
div.news_title{
    display            : flex;
    flex-direction     : row;
    align-items        : center;
    justify-content    : space-between;
    width              : 100%;
    overflow-wrap      : break-word;
}
div#news_text{
    overflow-wrap      : break-word;
}
div#d_news_url{
    overflow-wrap      : break-word;
}
/*お知らせ背景色*/
.news_info {
    background-color   : #b0c4de;
    color              : #000000;
    margin-top         : 25px;
}
.news_emg{
    background-color   : #f6bfbc;
}
/*お知らせ一覧*/
.news_info_list {
    padding-left       : 10px;
    margin-top         : 6px;
    margin-bottom      : -4px;
}
.kaikan_nm{
    font-size          : 13px;
    width              : 100%; 
}
/*ページ番号*/
.pagination{
    margin-left        : -28px;
}
.text-muted{
    display            : none;
}
.d-sm-none{
    display            : none;
}
.page-item{
    display            : block;
    list-style         : none;
    float              : left;
    margin-top         : 19px;
    margin-bottom      : 25px;
    width              : 29px;
    height             : 20px;
    font-weight        : bold;
    font-size          : 18px;
}
/*お知らせ詳細のタイトル*/
#news_info_head{
    margin-top         : 15px;
    margin-bottom      : 20px;
    padding            : 0.8em 0;/*上下の余白*/
    border-top         : solid 3px #6495ed;/*上線*/
    border-bottom      : solid 3px #6495ed;/*下線*/
}

/*=============================================================================*
 * 掲示板
 *=============================================================================*/
div.board_info{
    display            : flex;
    flex-direction     : column;
    flex-wrap          : nowrap;
    align-content      : space-around;
    justify-content    : center;
    align-items        : flex-start;
}
div.board_title{
    display            : flex;
    flex-direction     : row;
    align-items        : center;
    justify-content    : space-between;
    width              : 100%;
    overflow-wrap      : break-word;
}
div#board_text{
    overflow-wrap      : break-word;
}
div#d_board_url{
    overflow-wrap      : break-word;
}
/*掲示板背景色*/
.board_info {
    background-color   : #b0c4de;
    color              : #000000;
    margin-top         : 25px;
}
.board_emg{
    background-color   : #f6bfbc;
}
/*掲示板一覧*/
.board_info_list {
    padding-top        : 3px;
    padding-left       : 10px;
    margin-top         : 6px;
    margin-bottom      : -4px;
}
/*ページ番号*/
.pagination{
    margin-left        : -28px;
}
.text-muted{
    display            : none;
}
.d-sm-none{
    display            : none;
}
.page-item{
    display            : block;
    list-style         : none;
    float              : left;
    margin-top         : 19px;
    margin-bottom      : 25px;
    width              : 29px;
    height             : 20px;
    font-weight        : bold;
    font-size          : 18px;
}
/*掲示板詳細のタイトル*/
#board_info_head{
    margin-top         : -10px;
    margin-bottom      : 20px;
    padding            : 0.8em 0;/*上下の余白*/
    border-top         : solid 3px #6495ed;/*上線*/
    border-bottom      : solid 3px #6495ed;/*下線*/
}

/*=============================================================================*
 * 設定
 *=============================================================================*/
.btn_setup {
    background-color        : #b0c4de;
    color                   : #000000;
    margin-bottom           : 1.2rem;
}
/*=============================================================================*
 * 児童情報設定
 *=============================================================================*/
.jido_msg{
    font-size               :17px;
    color                   : red;
}
.jido_shosai_check{
    text-indent             : 1rem;
}
.child_name{
    text-indent             : 2rem;
}
.name_sei, .name_mei {
    width                   : 49%;
}
ul.child_info {
    list-style              : none;
}
ul.child_info li {
    margin-top              : 7px;
}
#btn_child_add {
    margin-bottom           : 15px;
}
.child_info {
    margin-top              : -5px;
}
.btn_child_edit{
    width                   : 85%;
    margin-left             : 8%;
    margin-bottom           : 15px;
}
/*=============================================================================*
 * 保護者情報設定
 *=============================================================================*/
/*保護者情報編集*/
.tel {
    width                   : 5rem;
}
.mail_address {
    width                   : 90%;
}
.hogosya_entry{
    position                : relative;
    left                    : 50px;
}
.hogosya_entry_msg{
    color                   : red;
}
.hogosya_edit{
    position                : relative;
    left                    : 50px;
}
.hogosya_joho_msg{
    color                   : red;
    white-space             :  normal;
}
.msg_info {
    white-space             : normal;
}
.msg_check {
    font-size               : 1.3rem;
}
.set_attend_mail_msg{
    white-space             : normal;
}
/*=============================================================================*
 * エラーページ
 *=============================================================================*/
div.errpage_div {
    margin-top          : 50px;
    padding             : 1px 10px;
    text-align          : center;
}
a.errpage_href {
    text-decoration     : none;

}
/*=============================================================================*
 * 子画面
 *=============================================================================*/
 .edit-div {
    display:               none;
    position:              fixed;
    overflow:              scroll;
    top:                   2px;
    width:                 99.8%;
    /*
    left:                  20px;
    height:                95%;
    */
    left:                  0.1%;
    height:                calc(100vh - 5px);
    background-color:    #fffafa;
    border-radius:         5px;
    padding:               10px 10px 100px 10px;
}
.search-child-div {
    display:               none;
    position:              fixed;
    overflow:              scroll;
    top:                   5px;
    left:                  20px;
    width:                 90%;
    height:                95%;
    background-color:    #fffafa;
    border-radius:         5px;
    z-index:               90;
    padding:               10px 20px 10px 20px;
}
.overlay {
    display:               none;
    position:              fixed;
    top:                   0;
    left:                  0;
    background-color:    rgba(0, 0, 0, 0.5);
    width:                 100%;
    height:                100%;
    z-index:               80;
}
.sp-overlay{ 
    position:              fixed;
    top:                   0;
    z-index:               100;
    width:                 100%;
    height:                100%;
    display:               none;
    background:          rgba(0,0,0,0.6);
}
.div-spinner {
    height:                100%;
    display:               flex;
    justify-content:       center;
    align-items:           center;  
}
.sp-spinner {
    width:                 40px;
    height:                40px;
    border:                4px #ddd solid;
    border-top:            4px #2e93e6 solid;
    border-radius:         50%;
    animation:             sp-anime 0.8s infinite linear;
}
@keyframes sp-anime {
    100% { 
        transform: rotate(360deg); 
    }
}

div.close-btn-div {
    text-align:            right;
    width:                 98%;
}

/*=============================================================================*
 * sticky関連
 *=============================================================================*/
.sticky {
    position:              sticky;
    top:                   0;
}
.sticky_table {
    border-collapse:       separate;
    border-right:          var(--border-table);
}
.sticky_table tr td:first-of-type {
    border-left:           var(--border-table);
}
.sticky_table thead th {
    position:              -webkit-sticky; /* 縦スクロール時に固定する */
    position:              sticky;         /* 縦スクロール時に固定する */
    /* white-space:           nowrap;         高さが変わらないよう改行させない */
}
.sticky_table thead tr:nth-child(1) th {
    border-top:             var(--border-table);
    border-bottom:          var(--border-table);
    border-left:            var(--border-table);
    top:                    -0.5px;              /* 1行目の高さ固定(0) */
    height:                 40px;
}
.sticky_table thead tr:nth-child(2) th {
    border-bottom:          var(--border-table);
    border-left:            var(--border-table);
    top:                    39.5px;           /* 2行目の高さ固定(1行目の高さの位置) */
    height:                 42px;
}
.sticky_table thead tr:nth-child(3) th {
    border-bottom:         var(--border-table);
    border-left:           var(--border-table);
    top:                   39px;           /* 3行目の高さ固定(2行目の高さの位置) */
}
.sticky_table tbody td {
    border-bottom:         var(--border-table);
    border-left:           var(--border-table);
}
.sticky_table .fixed_c01 {                 /* 横スクロール固定(1列目) */
    left:                  0;
    position:              -webkit-sticky;
    position:              sticky;
}
.sticky_table .fixed_c02 {                 /* 横スクロール固定(2列目) */
    left:                  77px;
    position:              -webkit-sticky;
    position:              sticky;
}
.sticky_table .fixed_c03 {                 /* 横スクロール固定(3列目) */
    left:                  122px;
    position:              -webkit-sticky;
    position:              sticky;
}
.sticky_table .fixed_c04 {                 /* 横スクロール固定(4列目) */
    left:                  203px;
    position:              -webkit-sticky;
    position:              sticky;
}
.sticky_table .fixed_c05 {                 /* 横スクロール固定(5列目) */
    border-right:          var(--border-table);
    left:                  284px;
    position:              -webkit-sticky;
    position:              sticky;
}
.sticky_table .fixed_next {
    border-left:           none!important;
}
.border_bottom {
    border-bottom:         var(--border-table);
}
.border_left {
    border-left:           var(--border-table);
}
.border_right {
    border-right:          var(--border-table)!important;
}
.border_none_bottom {
    border-bottom:         none!important;
}
.border_none_left {
    border-left:           none!important;
}
.border_none_right {
    border-right:          none!important;
}

#mail_dmy {
    display:none !important;
}

.dmy {
    /*
    display:none !important;
    */
    width:0px;
    height:0px;
    border:none;
}