/* pc */
@media screen and (min-width: 1181px) {
    .pc_only {}

    .sp_only {
        display: none;
    }
}

/* ipad */
@media screen and (max-width: 1180px) and (min-width: 820px) {
    .pc_only {
        display: none;
    }

    .sp_only {}

    .side_menu ul li a,
    .side_menu ul li span {
        padding-left: 20px;
        font-size: 16px;
        max-width: 100%;
        text-overflow: ellipsis;
        overflow: hidden;
        white-space: nowrap;
        padding-right: 10px;
    }

    select,
    textarea,
    input[type=text],
    input[type=number],
    input[type=date],
    input[type=time],
    input[type=email],
    input[type=tel],
    input[type=url],
    input[type=password],
    input[type=search],
    .input_dummy {
        padding: 0.75rem;
        font-size: 16px;
    }

    .side_menu .title-area {
        display: none;
    }

    form p.bold {
        font-size: 14px;
    }

    .cal_navi h1 {
        font-size: 18px;
    }

    div .calendar table {
        width: 100%;
    }

    div .calendar td span i {
        font-size: 12px;
    }

    div .calendar td span a {
        top: 3px;
        right: 2px;
    }

    div .calendar td span {
        font-size: 10px;
    }

    .table01 th {
        font-size: 13px;
        white-space: nowrap;
    }

    .table01 td {
        font-size: 13px;
    }

    .side_menu ul li a,
    .side_menu ul li span {
        font-size: 14px;
    }

    .toolbox .btn {
        height: 38px;
        padding: 5px 13px;
        font-size: 13px;
    }

    .toolbox select {
        height: 38px;
        padding: 0;
        min-width: 100px;
    }

    .btn {
        padding: 5px 13px;
        font-size: 13px;
    }

    div .table01 input[type="checkbox"] {
        zoom: 1.5;
    }
}

/* sp */
@media screen and (max-width: 820px) {
    .pc_only {
        display: none;
    }

    .sp_only {}

    form .flex {
        display: block;
        margin-bottom: 10px;
    }

    form p.bold {
        width: 100% !important;
        text-align: left;
        margin-bottom: 10px;
    }

    form {
        padding: 15px;
    }

    section .contents {
        padding: 10px;
    }

    form select,
    form input {
        width: 100% !important;
        margin-bottom: 10px;
    }

    form input[type=checkbox] {
        width: unset !important;
        margin-bottom: 0px;
    }

    form .mr20 {
        margin-right: 0 !important;
    }

    form .flex.w90p {
        width: 100% !important;
    }

    form li.w100 {
        width: 100% !important;
    }

    form .circle_btn {
        margin-top: 10px;
    }

    content {}

    .toolbox {
        padding-bottom: 0;
    }

    .toolbox .btn {
        font-size: 14px;
        margin-bottom: 10px;
    }

    .table03 {
        width: 100%;
        display: block;
    }

    .table03 tbody {
        display: block;
    }

    .table03 tr {
        display: block;
        margin: 0;
        padding: 0;
        text-align: left;
        width: unset;
        max-width: unset;
        min-width: unset;
    }

    .table03 tr td,
    .table03 tr th {
        display: block;
        margin: 0;
        text-align: left;
        width: 100% !important;
        max-width: unset;
        min-width: 100%;
        padding: 0;
        margin-bottom: 10px;
    }

    .table03 input {
        max-width: unset;
        width: 100% !important;
        min-width: 100%;
        margin: 0;
    }
}


@media screen and (max-width: 1200px) {
    section {
        width: calc(100vw - 220px);
    }

    .circle_btn {
        /*
        width: 40px;
        height: 40px;
        line-height: 38px;
        */
    }

    .circle_btn i {
        /*
        line-height: unset;
        */
    }

    /*---------------------
        タイトル
    ----------------------*/
    h1.title {
        height: 60px;
        line-height: 60px;
    }

    .title-area {
        /*
        height: 60px;
        */
    }

    .side_menu .title-area h1 {
        font-size: 20px;
    }

    /*---------------------
       side_manu 
    ----------------------*/
    .side_menu {
        width: 220px;
    }

    .side_menu ul {}

    .side_menu ul li {
        font-size: 20px;
        line-height: 50px;
    }

    .side_menu ul li a {}

    /*login*/
    .sns_login {
        display: block;
        width: 100%;
    }

    .sns_login a {
        width: 90%;
        margin: auto;
        margin-bottom: 10px;
    }

    .sns_login .line {
        padding: 5px 15px;
    }

    /*---------------------
        top画面
    ----------------------*/
    .top_glid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .top_glid .glid_item .btn.w60p {
        width: 100% !important;
    }

    .top_glid .glid_item {
        display: inline-block;
    }

    /*--------------------
        表テーブル１
    ----------------------*/
    .table01 input[type="checkbox"] {
        zoom: 2;
    }


}



@media screen and (max-width: 900px) {

    /*全体*/
    body {
        font-size: 16px;
    }

    section {
        width: 100%;
    }

    .side_menu {
        display: none;
    }


    /*--------------------
        imput
    ----------------------*/
    .input_box dd ul li {
        margin: 10px 20px 20px 20px;
    }

    .input_box dd input[type=checkbox],
    .input_box dd input[type=radio] {
        width: 1.25rem;
        height: 1.25rem;
    }

    .input_box dd .input_dummy span {
        top: 8%;
        right: 0.5rem;
    }

    .input_box dd .input_dummy span a {
        width: initial;
        padding: 0.5rem 1rem;
    }

    .calendar_schedule {
        height: calc(100vh - 550px);
    }
}

@media screen and (max-width: 600px) {

    .w600,
    .w550,
    .w500,
    .w450 {
        width: 100%;
    }

    /*---------------------
        top画面
    ----------------------*/
    .top_glid {
        grid-template-columns: repeat(1, 1fr);
    }

}