@charset "UTF-8";
@media (max-width: 1023px) {
    .menu-content ul .fa{
        width: 30px;
        text-align: center;
    }
    .download-period-conf-modal dt label{
        display:none;
    }
    #logout-form{
        padding:10px;
    }
    .min-height{
        min-height:calc(100vh - 55px);
    }
    .password_forget{
        margin:0!important;
        padding-top: 50px;
    }
    .password_forget .login-form-wrap{
        margin:40px 0!important;
    }
    .password_forget .ms-5{
        margin-left:0!important;
    }
    .password_forget_header{
        margin-top:0!important;
    }
    .container{
        min-width: 100%!important;
    }
    #main-content-wrap{
        width: 100%;
    }
    #main-content-wrap{
        margin-top: 118px;
    }
    #subtitle{
        height: 55px;
        position: fixed;
        width: 100%;
        z-index: 999;
    }
    #subtitle .subtitle{
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        margin:0!important;
    }
    .screen_container_wrap{
        min-width: 320px !important;
        padding-top: 0 !important;
    }
    /**
    *ヘッダー
    */
    #main-header{
        position: fixed;
        width: 100%;
        z-index: 999;
        margin-top: 55px;
        background-color: #FFF;
    }
    .heading-title{
        padding-top: 20px !important;
        padding-right: 13px;
    }
    .heading-title .col-md-2{
        width:100%;
    }
    .heading-title .col-md-2 img{
        width:200px!important;
    }
    .school_name{
        font-size: 21pt;
        margin-top: 16px;
        margin-bottom: 0;
    }
    .user-login-info{
        padding: 0 0.5rem 5px 0.5rem!important;
        font-size: 10pt;
    }
    /* サイドメニュー非表示 */
    .left-menu-sidebar{
        display: none;
    }
    /* ハンバーガーメニュー */
    .hamburger-menu{
        display: block;
    }
    .menu-btn {
        position: fixed;
        right: 0px;
        display: flex;
        height: 55px;
        width: 55px;
        justify-content: center;
        align-items: center;
        z-index: 90;
        background-color: #FFBCA6;
        /* border: #000 1px solid; */
    }
    .menu-btn span,
    .menu-btn span:before,
    .menu-btn span:after {
        content: '';
        display: block;
        height: 2px;
        width: 25px;
        border-radius: 3px;
        background-color: #000;
        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:checked ~ .menu-btn {
        background-color: initial;
        border: none;
    }
    
    .menu-content {
        width: 60%;
        height: 100%;
        position: fixed;
        top: 0;
        right: -100%;
        z-index: 80;
        background-color: #fff;
        transition: all 0.5s;/*アニメーション設定*/
    }
    .menu-content ul li {
        list-style: none;
        padding: 10px;
    }
    .menu-content ul{
        margin-top: 70px;
    }
    .menu-content ul li a {
        color:#000;
        text-decoration: none;
    }
    #menu-btn-check {
        display: none;
    }

    /**
    *連絡帳一覧 
    */
    .student-detail-page{
        padding: 20px 15px;
    }
    .sp_download{
        display:block!important;
    }
    .sp_download button{
        margin-left:0px!important;
    }
    #student_detail_form dl{
        display: block;
    }
    #student_detail_form dt {
	    float: left ;
	    clear: left ;
	    margin-right: 0.5em ;
	    width: 20%;
        text-align: right;
    }
    #student_detail_form dd {
	    float: left ;
	    margin-left: 1em ;
    }
    #student_detail_form .input_date_area{
        width: 50%;
    }
    #student_detail_form .input_search_btn_area{
        width: 70%;
    }
    #student_detail_form .student_detail_search_label{
        display: block;
    }
    #student_detail_form .public_date_area{
        width: 100%;
        text-align:center;
    }
    #student_detail_form .mb-20{
        margin:0;
    }
    dt.sp_date_area{
        clear:unset!important;
        width:15%!important;
    }
    dd.sp_date_area{
        width:25%!important;
    }
    .sp_search_area{
        width:80%;
        clear:both;
        float:unset!important;
        margin:0 auto!important;
        text-align:center!important;
    }
    .student_detail_search_btn_area{
        clear: both;
        float: none !important;
        text-align: center;
    }
    .custom_pagination .row .col-md-6{
        width: initial;
    }
    .custom_pagination .row{
        justify-content: space-between;
    }
    /* テーブル */
    .student_detail_pc_table{
        display: none;/* PC用連絡帳一覧テーブル　スマホ非表示 */
    } 
    #student_detail_sp_table{
        display: block;/* スマホ用連絡帳一覧テーブル　表示 */
    }
    #student_detail_sp_table a {
        color: #494949;
    }
    #student_detail_sp_table th{
        width: 8%;
    }
    #student_detail_sp_table td{
        width: 30%;
    }
    #student_detail_sp_table th,
    #student_detail_sp_table td{
        border: solid 1px #dadada;
    }

    /**
    *連絡帳詳細 
    */
    .student-detail-bycontact-page .contact_book_txt{
        margin-left: 3%;
    }
    .student-detail-bycontact-page p{
        margin-bottom: 3%;
    }
    .student-detail-bycontact-page .name_date_area{
        margin-top: 5%;
    }
    .student-detail-bycontact-page .contact_book_photo_area{
        display: block;
    }
    .student-detail-bycontact-page .contact_book_photo{
        margin: 0 auto 5% auto;
        display: block;
        width:100%;
    }

    /**
    *連絡帳作成
    */
    .student-list-page .contact_book_txt{
        margin-left: 3%;
    }
    .student-list-page p{
        margin-bottom: 3%;
    }
    .student-list-page .name_date_area{
        margin-top: 5%;
    }
    .student-list-page .contact_book_photo{
        margin: 0 auto 5% auto !important;
        display: block;
        width:100%;
    }
    #edit_btn_area,
    .save_preview_btn_area{
        text-align: center !important;
    }
    .student-list-page .search_btn_area{
        padding: 0;
    }
    .student-list-page .search_date_area{
        width: 60%;
    }
    .student-list-page .search_btn_area{
        width: 40%;
    }
    .guardian_contact_date_search_btn{
        margin-left: 5px;
    }
    .student-list-page .img_upload_btn{
        font-size: 8pt;
        padding: 10px 15px;
    }
    #first_photo_old_filename, 
    #second_photo_old_filename, 
    #third_photo_old_filename{
        font-size: 8pt !important;
        display: flex;
    }
    .edit_photo_delete{
        margin-left: 10px !important;
        font-size: 8pt !important;
        display: flex;
    }
    .first_photo_file_name,
    .second_photo_file_name,
    .third_photo_file_name{
        margin: 9px;
        font-size: 8pt;
    }
    #first_photo_old_filename, 
    #second_photo_old_filename, 
    #third_photo_old_filename{
        margin: 9px !important;
        font-size: 8pt;
    }
    .file-delete-btn-area .delete-btn{
        font-size: 8pt;
    }
    .student-list-page .modal-footer .col-4{
        width: 100%;
    }
    #old_student_photo_show_wrap{
        display: block;
    }
    /* .contact_from_school .school_contact_book_title{
        padding: 0;
    } */
    #new_contact_data_wrap #health_rdo_wrap .form-check-label{
        font-size: 10pt;
    }
    #new_contact_data_wrap #health_rdo_wrap{
        margin: 0 0 10px 5px;
    }
    #student_photo_upload_wrap .input-group,
    #edit_student_photo_upload_wrap .input-group{
        gap: 0px;
    }
    /* 一時保存確認メッセージ */
    .jconfirm-holder{
        width: 85%;
        margin: 0 auto;
    }
    .jconfirm .jconfirm-box div.jconfirm-content-pane .jconfirm-content{
        font-size: 10pt;
    }
    /* 確認モーダル */
    #previewModal{
        padding-top: 140px;
    }
    /**
    *sp用フォントサイズ
    */
    .fontsize-sp-10pt{
        font-size: 10pt;
    }
    .fontsize-sp-8pt{
        font-size: 8pt;
    }
    /* SP表示部分 */
    .sp_block{
        display: block;
    }
    .btn:hover,
    #edit_btn:hover,
    .student_detail_search_btn:hover{
        background-color: #FFBCA6 !important;
    }
    #preview_btn,
    #search_btn,
    #edit_btn,
    #temp_save_btn,
    .preview_modal_footer_btn,
    .confirm_alert_btn{
        font-size: 10pt !important;
    }
    /* アラートメッセージ */
    .alert-success {
        font-size: 16pt;
    }
    .sp_col-3{
        width:30%;
    }
    .sp_col-5{
        width:70%;
        word-wrap: break-word;
    }
    .sp_edit{
        text-align:right!important;
    }
    .jconfirm-box-container{
        width:50%;
    }
    .download-period-conf-modal .d-flex{
        display:block!important;
    }
}
@media (min-width: 768px) {
    .jconfirm-box-container{
        width:50%;
    }
}
@media (max-width: 767px) {
    .jconfirm-box-container{
        width:80%;
    }
}
@media (max-width: 575px) {
    .jconfirm-box-container{
        width:100%;
    }
}
@media (max-width: 594px) {
    .basic-info .d-flex{
        display:inline-block!important;
    }
    .basic-info .sp_flex{
        margin:10px 0;
    }
    .basic-info .sp_flex .d-flex{
        display:flex!important;
    }
    .basic-info input[type="text"],.basic-info input[type="password"]{
        width:100%!important;
    }
    .basic-info .ttl{
        display:block;
    }
}
@media (max-width: 630px) {
    dt.sp_date_area{
        clear:both!important;
    }
    dd.sp_date_area{
        width:75%!important;
    }
}