@charset "UTF-8";
.clockpicker {
    z-index: 100000 !important;
    position: relative;
}


/* common ---------------------------------------*/

body {
    color: #333;
}

body .wrapper {
    background-color: rgba(89, 183, 211, 0.05);
    height: auto;
}

.main-panel {
    background: none;
}

.main-panel .content {
    min-height: calc(100vh - 77px);
    padding-bottom: 120px;
    background: url(../img/common/bg.png) no-repeat left bottom;
    background-size: 100%;
}


/* nav ---------------------------------------*/

.navbar .navbar-header {
    position: relative;
    background-color: #59B7D3;
    border-bottom: 2px solid #3B94AF;
    min-height: 52px;
}

.navbar-back {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 50px;
    height: 50px;
    background: url(../img/common/icon_home.png) no-repeat center center;
    background-size: 20px;
}

.navbar .navbar-brand {
    float: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin-top: 0;
    margin-bottom: 0;
    color: #fff;
    font-family: 'M PLUS 1p', sans-serif;
    font-weight: 800;
    font-size: 14px;
    white-space: nowrap;
}

.navbar .navbar-toggle {
    margin-top: 4px;
    margin-bottom: 4px;
    margin-right: 10px;
}

.navbar-toggle .icon-bar {
    width: 15px;
    height: 3px;
}

.navbar-toggle .icon-bar+.icon-bar {
    margin-top: 3px;
}

.sidebar {
    background-color: #59B7D3;
}

.sidebar .logo {
    background-color: #59B7D3;
    box-shadow: 0 0 0 transparent;
}

.logo a img {
    width: 100%;
    max-width: 72px;
}

.sidebar .sidebar-wrapper {
    background-color: #59B7D3;
    box-shadow: 0 0 0 transparent;
}

.sidebar .sidebar-wrapper>.nav li>a,
.off-canvas-sidebar .sidebar-wrapper>.nav li>a {
    opacity: 1;
}

.nav li .nav-link {
    position: relative;
    padding-left: 55px !important;
}

.nav-link p {
    color: #fff;
    font-size: 12px;
}

.nav-link::before {
    display: inline-block;
    content: '';
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
}

.nav-link-book::before {
    background: url('../img/common/icon_plans_white.png') no-repeat center center;
    background-size: 100%;
    width: 15px;
    height: 12.5px;
    left: 25px;
}

.nav-link-sche::before {
    background: url('../img/common/icon_bird_white.png') no-repeat center center;
    background-size: 100%;
    width: 16px;
    height: 13.5px;
    left: 24px;
}

.nav-link-prof::before {
    background: url('../img/common/icon_cloud.png') no-repeat center center;
    background-size: 100%;
    width: 16px;
    height: 10px;
    left: 24px;
}

.sidebar .user:after,
.sidebar[data-background-color="white"] .user:after,
.off-canvas-sidebar .user:after,
.off-canvas-sidebar[data-background-color="white"] .user:after {
    background: #fff;
}

.sidebar .logo:before,
.sidebar[data-background-color="white"] .logo:before,
.off-canvas-sidebar .logo:before,
.off-canvas-sidebar[data-background-color="white"] .logo:before {
    background: #fff;
}

.sidebar-wrapper .nav:first-of-type {
    position: relative;
    padding-bottom: 20px;
}

.sidebar-wrapper .nav:first-of-type::after {
    content: "";
    position: absolute;
    bottom: 0px;
    right: 15px;
    width: calc(100% - 30px);
    height: 1px;
    background-color: #fff;
}

.nav .btn-rotate-wrapper {
    text-align: center;
    margin-top: 20px;
}

.nav .btn-rotate-wrapper .btn-rotate {
    background: #fff;
    box-shadow: 0 2px 0 rgb(0 0 0 / 25%);
    border: none;
    color: #59B7D3 !important;
    padding: 8px 0 8px 0 !important;
    border-radius: 50px;
    text-align: center;
    font-size: 12px;
    height: 34px;
    width: 70%;
    display: inline-block;
}


/* login ---------------------------------------*/

.loginwrapper {
    background-color: #59B7D3 !important;
}

.register-page .login-header-text {
    max-width: 195px;
    margin: 0 auto;
    padding: 106px 0 58px;
}

.login-header-text img {
    max-width: 100%;
}

.loginbox {
    width: 100%;
    padding: 0 20px;
    max-width: 280px;
    margin: 0 auto;
    box-sizing: content-box;
}

.loginbox .control-label {
    color: #fff;
    text-shadow: 0 1px 0 rgba(0, 0, 0, 0.16);
    font-size: 12px;
    margin-bottom: 7px;
    text-align: left;
}

.loginbox .form-control {
    box-shadow: 0 -3px 0 rgba(0, 0, 0, 0.25);
    background-color: #FFF;
    font-weight: bold;
    font-size: 13px;
    padding: 8px 18px;
    height: 50px;
    border-radius: 10px;
}

.loginbox .form-control::placeholder {
    color: #C6C6C6;
}

.loginbox .form-control:focus {
    box-shadow: 0 3px 0 rgba(0, 0, 0, 0.25);
}

.loginbox-btn {
    margin-bottom: 28px;
}

.loginbox-btn .btn {
    display: block;
    background-color: #FFF;
    border-color: #FFF;
    box-shadow: 0 3px 0 rgba(0, 0, 0, 0.25);
    color: #59B7D3;
    font-size: 17px;
    padding: 11px 18px;
    border-radius: 25px;
}

.login-forget-password a {
    color: #FFF;
    font-weight: bold;
    text-decoration: underline;
    font-size: 13px;
}

.login-content {
    position: relative;
    padding-bottom: 50vw;
    overflow: hidden;
    min-height: 100vh;
}

.footer-login-animation {
    position: absolute;
    left: 0;
    bottom: 0;
}

.footer-login-animation-box {
    position: absolute;
    width: 100vw;
    overflow: hidden;
}

.footer-login-animation-box1 {
    left: 100%;
    bottom: 0;
    width: 55vw;
    transform: translate(82%, 0);
    z-index: 1;
    animation: fluffy1 12s ease infinite;
    animation-delay: 1s;
}

.footer-login-animation-box2 {
    left: 0;
    bottom: 0;
    width: 100vw;
    z-index: 2;
    animation: fluffy 8s ease infinite;
    animation-delay: 2s;
}

.footer-login-animation-box3 {
    left: 0;
    bottom: 0;
    width: 33.333vw;
    z-index: 3;
    animation: fluffy 10s ease infinite;
}

.footer-login-animation-box4 {
    left: 70%;
    bottom: 0;
    transform: translate(500%, 100%);
    width: 0;
    z-index: 0;
    transition: all 3.5s ease;
}

.footer-login-animation-box4.on {
    transform: translate(70%, 0);
    width: 46.4vw;
}

.footer-login-animation-box img {
    max-width: 100%;
}

.footer-login-animation-box1 img {}

.footer-login-animation-box2 img {}

.footer-login-animation-box3 img {}

.footer-login-animation-box4 img {}

@keyframes fluffy {
    0% {
        transform: translateY(0)
    }
    25% {
        transform: translateY(5px)
    }
    50% {
        transform: translateY(0)
    }
    75% {
        transform: translateY(5px)
    }
    100% {
        transform: translateY(0)
    }
}

@keyframes fluffy1 {
    0% {
        transform: translate(82%, 0);
    }
    25% {
        transform: translate(82%, 5px);
    }
    50% {
        transform: translate(82%, 0);
    }
    75% {
        transform: translate(82%, 5px);
    }
    100% {
        transform: translate(82%, 0);
    }
}


/* footer ---------------------------------------*/

.footer {
    background-color: #59B7D3;
}

.footer .copyright {
    color: #FFF;
    font-weight: bold;
    font-size: 11px;
    letter-spacing: 0.04em;
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 2px;
    padding-bottom: 2px;
}


/* font ---------------------------------------*/

.font-mplus-extra {
    font-family: 'M PLUS 1p', sans-serif;
    font-weight: 800;
}

.font-mplus-bold {
    font-family: 'M PLUS 1p', sans-serif;
    font-weight: 700;
}

.font-mplus {
    font-family: 'M PLUS 1p', sans-serif;
    font-weight: 500;
}

.font-noto {
    font-family: 'Noto Sans JP', sans-serif;
}

.font-bold {
    font-weight: bold;
}


/* margin ---------------------------------------*/

.mt-0 {
    margin-top: 0px !important;
}

.mt-5 {
    margin-top: 5px !important;
}

.mt-10 {
    margin-top: 10px !important;
}

.mt-15 {
    margin-top: 15px !important;
}

.mt-20 {
    margin-top: 20px !important;
}

.mt-25 {
    margin-top: 25px !important;
}

.mt-30 {
    margin-top: 30px !important;
}

.mt-35 {
    margin-top: 35px !important;
}

.mt-40 {
    margin-top: 40px !important;
}

.mt-45 {
    margin-top: 45px !important;
}

.mt-50 {
    margin-top: 50px !important;
}

.mt-55 {
    margin-top: 55px !important;
}

.mt-60 {
    margin-top: 60px !important;
}

.mt-65 {
    margin-top: 65px !important;
}

.mt-70 {
    margin-top: 70px !important;
}

.mt-75 {
    margin-top: 75px !important;
}

.mt-80 {
    margin-top: 80px !important;
}

.mt-85 {
    margin-top: 85px !important;
}

.mt-90 {
    margin-top: 90px !important;
}

.mt-95 {
    margin-top: 95px !important;
}

.mt-100 {
    margin-top: 100px !important;
}

.mb-0 {
    margin-bottom: 0px !important;
}

.mb-5 {
    margin-bottom: 5px !important;
}

.mb-10 {
    margin-bottom: 10px !important;
}

.mb-15 {
    margin-bottom: 15px !important;
}

.mb-20 {
    margin-bottom: 20px !important;
}

.mb-25 {
    margin-bottom: 25px !important;
}

.mb-30 {
    margin-bottom: 30px !important;
}

.mb-35 {
    margin-bottom: 35px !important;
}

.mb-40 {
    margin-bottom: 40px !important;
}

.mb-45 {
    margin-bottom: 45px !important;
}

.mb-50 {
    margin-bottom: 50px !important;
}

.mb-55 {
    margin-bottom: 55px !important;
}

.mb-60 {
    margin-bottom: 60px !important;
}

.mb-65 {
    margin-bottom: 65px !important;
}

.mb-70 {
    margin-bottom: 70px !important;
}

.mb-75 {
    margin-bottom: 75px !important;
}

.mb-80 {
    margin-bottom: 80px !important;
}

.mb-85 {
    margin-bottom: 85px !important;
}

.mb-90 {
    margin-bottom: 90px !important;
}

.mb-95 {
    margin-bottom: 95px !important;
}

.mb-100 {
    margin-bottom: 100px !important;
}

.mb-110 {
    margin-bottom: 110px !important;
}

.mb-120 {
    margin-bottom: 120px !important;
}

.mb-130 {
    margin-bottom: 130px !important;
}

.mb-140 {
    margin-bottom: 140px !important;
}


/* width ---------------------------------------*/

.wid-10per {
    width: 10% !important;
}

.wid-15per {
    width: 15% !important;
}

.wid-20per {
    width: 20% !important;
}

.wid-25per {
    width: 25% !important;
}

.wid-30per {
    width: 30% !important;
}

.wid-35per {
    width: 35% !important;
}

.wid-40per {
    width: 40% !important;
}

.wid-50per {
    width: 50% !important;
}

.wid-60per {
    width: 60% !important;
}

.wid-70per {
    width: 70% !important;
}

.wid-75per {
    width: 75% !important;
}

.wid-80per {
    width: 80% !important;
}

.wid-80per {
    width: 90% !important;
}

.wid-100per {
    width: 100% !important;
}


/* btn ---------------------------------------*/

.btn-big {
    height: 50px;
    padding: 15px 0;
}

.btn-blue {
    background: #59B7D3 !important;
    color: #fff !important;
    width: 100%;
    box-shadow: 0 2px 0 #3B94AF;
    border: none;
    border-radius: 50px;
}

.btn-skyblue {
    background: #fff !important;
    color: #59B7D3 !important;
    border: 2px solid #59B7D3 !important;
    border-radius: 50px;
    font-size: 12px;
    text-align: center;
    height: 40px;
    padding: 0;
}

.btn-yellow {
    background: #fff !important;
    color: #D69D31 !important;
    border: 2px solid #D69D31 !important;
    border-radius: 50px;
    font-size: 12px;
    text-align: center;
    height: 40px;
    padding: 0;
}

.btn-green {
    background: #79C947;
    box-shadow: 0 2px 0 #4A901E;
    border: none;
    color: #fff !important;
    padding: 15px 0;
    border-radius: 50px;
}

.btn-red {
    background: #D65D5D;
    box-shadow: 0 2px 0 #962828;
    border: none;
    color: #fff !important;
    padding: 15px 0;
    border-radius: 50px;
}

.btn-blue:hover,
.btn-yellow:hover,
.btn-green:hover {
    opacity: 0.7;
    border: none;
}

.btn-red:hover,
.btn-skyblue:hover {
    opacity: 0.7;
}

.btn-blue:hover {
    background: #59B7D3 !important;
}

.btn-skyblue:hover {
    background: #fff !important;
}

.btn-yellow:hover {
    background: #fff !important;
}

.btn-green:hover {
    background: #79C947 !important;
}

.btn-red:hover {
    background: #D65D5D !important;
}


/* select ---------------------------------------*/

select {
    -webkit-appearance: none;
    appearance: none;
}

select::-ms-expand {
    display: none;
}


/* text ---------------------------------------*/

.text-red {
    color: #D65D5D;
    font-size: 13px;
    font-weight: bold;
}

.text-blue {
    color: #59B7D3;
    font-size: 13px;
    font-weight: bold;
}

.text-annotation {
    font-size: 11px;
    font-weight: bold;
    color: #333;
}

.text-white {
    color: #fff;
    font-size: 15px;
}


/* alert ---------------------------------------*/

.alert-wrapper {
    padding-left: 20px;
    padding-right: 20px;
}

.alert.alert-with-icon {
    padding-left: 10px;
    padding-right: 55px;
    font-size: 11px;
    min-height: 48px;
}

.alert-info {
    background: url(../img/common/icon_receive.png) #478FA3 no-repeat;
    background-position: right 10px center;
    background-size: 34px;
    color: #FFF;
    box-shadow: 0 2px 0 #296474;
    border-radius: 10px;
    margin-bottom: 10px;
}

.alert-info.not-bg {
    background-color: transparent;
    color: #333;
    font-size: 13px;
    font-weight: bold;
    text-align: center;
    background: none;
    box-shadow: none;
}

.alert-warning {
    background: url(../img/common/icon_closing.png) #E2B257 no-repeat;
    background-position: right 10px center;
    background-size: 34px;
    color: #FFF;
    box-shadow: 0 2px 0 #B98D39;
    border-radius: 10px;
    margin-bottom: 10px;
}

.alert-warning.icon-bell {
    background: url(../img/common/icon_alert.png) #E2B257 no-repeat;
    background-position: right 10px center;
    background-size: 34px;
}

.alert-danger {
    background: url(../img/common/icon_schedule.png) #E56565 no-repeat;
    background-position: right 10px center;
    background-size: 34px;
    color: #FFF;
    box-shadow: 0 2px 0 #AF3838;
    border-radius: 10px;
    margin-bottom: 10px;
}


/*  message ---------------------------------------*/

.message {
    text-align: center;
    padding-top: 30px;
    padding-bottom: 32px;
}

.message p {
    font-size: 12px;
    color: #333;
}

.card.menucard {
    box-shadow: 0 2px 0 rgba(0, 0, 0, 0.25);
    border-radius: 50px;
    margin-bottom: 10px;
    background-color: #fff;
}

.menucard .card-content {
    padding-top: 7px;
    padding-bottom: 7px;
}

.menucard-text {
    color: #555;
    font-size: 15px;
    padding: 15px 30px 15px 60px;
    margin-top: 0;
    margin-bottom: 0;
    position: relative;
}

.menucard-text::after {
    display: block;
    content: '';
    background: url('../img/common/icon_arrow_bk.png') no-repeat center center;
    background-size: 100%;
    width: 8px;
    height: 12px;
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translate(0, -50%);
}

.menucard-text-book {
    background: url(../img/common/icon_bookmenu.png) no-repeat;
    background-position: left 10px center;
    background-size: 30px;
}

.menucard-text-schedule {
    background: url(../img/common/icon_schedulemenu.png) no-repeat;
    background-position: left 10px center;
    background-size: 30px;
}


/*  position ---------------------------------------*/

.position-sta {
    position: static !important;
}


/* select schedule ---------------------------------------*/

.select-schedule .btn-group>.btn:first-child {
    padding: 10px;
    color: #333333 !important;
    background-color: #fff;
    border-color: transparent;
    border-radius: 10px;
    box-shadow: 0 2px 0px rgb(0 0 0 / 25%);
}

.select-schedule .btn-group>.btn:first-child .caret {
    border-top-color: #333;
}

.select-schedule .bootstrap-select.btn-group .dropdown-toggle .filter-option {
    text-align: center;
    font-size: 15px;
}

.select-schedule .selectpicker span small {
    font-size: 11px;
}

.select-schedule .bootstrap-select.btn-group .dropdown-toggle .caret {
    right: 25px;
}


/* calendar ---------------------------------------*/

.calendar.card {
    box-shadow: none;
    background-color: transparent;
}

.calendar.card .card-header {
    padding: 15px 0px 0px;
}

.calendar.card .calendar-title::before {
    display: none;
}

.calendar.card .calendar-title {
    display: grid;
    grid-template-columns: 36px calc(100% - 72px) 36px;
    margin-bottom: 13px;
}

.calendar-wrapper .btn.btn-fill {
    background-color: #59B7D3;
    border: none;
}

.calendar-wrapper .btn-sm.btn-icon {
    width: 36px;
    height: 36px;
    box-shadow: 0 2px 0 #3B94AF;
    position: relative;
}

.calendar-wrapper .btn-sm.btn-icon-left {
    grid-column: 1 / 2;
}

.calendar-wrapper .btn-sm.btn-icon .ti-angle-left:before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    background: url(../img/book/icon_arrow_left.png) no-repeat center center;
    width: 11px;
    height: 17px;
    background-size: 100%;
    display: inline-block;
}

.calendar-wrapper .btn-sm.btn-icon-right {
    grid-column: 3 / 4;
}

.calendar-wrapper .btn-sm.btn-icon .ti-angle-right:before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    background: url(../img/book/icon_arrow_right.png) no-repeat center center;
    width: 11px;
    height: 17px;
    background-size: 100%;
    display: inline-block;
}

.calendar-wrapper .card-data {
    font-size: 21px;
    font-weight: bold;
    grid-column: 2 / 3;
}

.calendar-wrapper .card-data span {
    font-size: 13px;
    margin-right: 5px;
}

.calendar.card .card-content {
    box-shadow: 0 2px 2px rgb(204 197 185 / 50%);
    background-color: #FFFFFF;
    border-radius: 10px;
}

.calendar.card .card-content.not-bg {
    box-shadow: none;
    background-color: transparent;
}

.calendar-wrapper {
    padding-right: 20px;
    padding-left: 20px;
}

.calendar-wrapper .table>thead>tr>th {
    padding: 0px 11px 9px 11px;
    font-size: 11px;
    font-weight: bold;
}

.calendar-wrapper .table>thead>tr>th.text-saturday {
    color: #459AB4;
}

.calendar-wrapper .table>thead>tr>th.text-sunday {
    color: #D65D5D;
}

.calendar-wrapper td .h5 {
    margin-top: 1px;
    margin-bottom: 0;
}

.calendar-wrapper span.text-success,
.calendar-wrapper span.text-danger,
.calendar-wrapper span.text-pencil,
.calendar-wrapper span.text-check {
    color: #333;
    font-size: 9px;
    margin-left: 5px;
}

.calendar-wrapper span.text-success i,
.calendar-wrapper span.text-danger i,
.calendar-wrapper span.text-pencil i,
.calendar-wrapper span.text-check i {
    margin-right: 10px;
}

.calendar-wrapper span.text-success .ti-book:before,
.calendar-wrapper .text-success .ti-book:before {
    background: url(../img/book/icon_success.png) no-repeat center center;
    width: 20px;
    height: 15px;
    background-size: 100%;
    content: "";
    display: inline-block;
}

.calendar-wrapper span.text-danger .ti-book:before,
.calendar-wrapper .text-danger .ti-book:before {
    background: url(../img/book/icon_danger.png) no-repeat center center;
    width: 18px;
    height: 20px;
    background-size: 100%;
    content: "";
    display: inline-block;
}

.calendar-wrapper span.text-pencil .ti-book:before,
.calendar-wrapper .text-info .ti-pencil:before {
    background: url(../img/book/icon_pencil.png) no-repeat center center;
    width: 15px;
    height: 15px;
    background-size: 100%;
    content: "";
    display: inline-block;
}

.calendar-wrapper span.text-check .ti-book:before,
.calendar-wrapper .text-warning .ti-check:before {
    background: url(../img/book/icon_check.png) no-repeat center center;
    width: 15px;
    height: 15px;
    background-size: 100%;
    content: "";
    display: inline-block;
}


.calendar-time {
    width: 32px;
    margin: 0 auto;
}

.calendar-time-item {
    font-size: 10px;
    font-weight: bold;
    transform: scale(0.7);
    transform-origin: left center;
    display: block;
    position: relative;
    padding-left: 13px;
    margin-bottom: 0;
}

.calendar-time-item::before {
    display: block;
    position: absolute;
    content: '';
    top: 50%;
    transform: translate(0, -50%);
}

.calendar-time-item-going::before {
    left: 0px;
    background: url('../img/common/icon_bus.png') no-repeat center center;
    background-size: 100%;
    width: 7.6px;
    height: 4.4px;
}

.calendar-time-item-returning::before {
    left: 0px;
    background: url('../img/common/icon_home.png') no-repeat center center;
    background-size: 100%;
    width: 6px;
    height: 5.3px;
}

.calendar table th,
.calendar table td {
    width: 14.2%;
}

.calendar table td {
    padding: 12px 0 !important;
    vertical-align: top !important;
}

.calendar-nodata {
    background: #EAEAEA;
    width: 17px;
    height: 3px;
    margin: 11px auto 0;
}


/* panel ---------------------------------------*/

.panel-group {
    margin-bottom: 5px;
}

.panel-group .panel-title {
    text-align: center;
}

.panel-group .panel {
    background-color: transparent;
    border: none;
    border-bottom: 1px solid #478FA3;
    margin-top: 0;
    padding: 0;
    border-radius: 0;
}

.panel-group .panel-default .panel-heading {
    background-color: transparent;
}

.panel-group .panel-title span {
    font-size: 11px;
    margin-left: 10px;
}


/* schedule list ---------------------------------------*/

.card.schedule-list-wrapper {
    background: none;
    box-shadow: none;
}

.schedule-list-wrapper.card .card-header {
    margin-bottom: 13px;
}

.schedule-list-wrapper .card-content {
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 2px 0px rgb(0 0 0 / 25%);
}

.schedule-list-wrapper .form-group .control-label {
    color: #333;
    padding-left: 5px;
}

.schedule-list-wrapper .form-group .control-label::before {
    display: inline-block;
    content: '';
    vertical-align: middle;
}

.schedule-list-wrapper .form-group-data .control-label::before {
    background: url(../img/book/icon_time.png) no-repeat center center;
    background-size: 100%;
    margin-right: 10px;
    width: 14px;
    height: 14px;
}

.schedule-list-wrapper .form-group-going .control-label::before {
    background: url(../img/book/icon_bus.png) no-repeat center center;
    background-size: 100%;
    margin-right: 8px;
    width: 16px;
    height: 9px;
}

.schedule-list-wrapper .form-group-returning .control-label::before {
    background: url(../img/book/icon_home.png) no-repeat center center;
    background-size: 100%;
    margin-right: 10px;
    width: 14px;
    height: 12px;
}

.control-label-schedule-data {
    color: #333;
    text-align: right;
    border-top: 1px solid #CCCCCC;
    padding-top: 10px;
    font-weight: bold;
    font-size: 15px;
}


/* card yellow ---------------------------------------*/

.card-yellow {
    box-shadow: none;
    background-color: transparent;
}

.card-yellow .card-title::before {
    background: url(../img/book/icon_bird.png) no-repeat center center;
    background-size: 100%;
}

.card-yellow .card-content {
    padding: 0;
}

.card-yellow .card-inner {
    background-color: #F0E0BA;
    border-radius: 10px;
    box-shadow: 0 2px 0px #B49A5C;
    padding: 25px 10px 15px 15px;
}

.card-yellow .form-group {
    margin-bottom: 25px;
}

.card-yellow .form-group .control-label {
    margin-bottom: 7px;
}

.card-yellow .radio label {
    font-size: 13px;
    font-weight: bold;
}

.card-yellow .radio-inline+.radio-inline {
    margin-left: 40px;
}

.card-yellow .form-group-textarea {
    margin-bottom: 20px;
}

.card-yellow textarea.form-control {
    height: 125px;
    font-size: 11px;
    line-height: 1.8;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 -2px 0px rgb(0 0 0 / 25%);
}

.card-yellow .btn-danger {
    background: #fff;
    border: 2px solid #D69D31;
    font-size: 12px;
    color: #D69D31;
    padding: 9px 0;
    width: 80%;
}

.card-yellow .radio label::before {
    content: "";
    width: 19px;
    height: 19px;
    border-radius: 50%;
    border: none;
    font-size: 22px;
    position: absolute;
    left: 0;
    top: 0px;
    background: #fff;
    opacity: 1;
    box-shadow: 0 -1px 0px rgb(0 0 0 / 16%);
}

.card-yellow .radio input[type="radio"]:not(:disabled):hover+label::before {
    content: "";
    opacity: 1;
}

.card-yellow .radio label::after {
    content: "";
}

.card-yellow .radio input[type="radio"]:checked+label::after {
    content: "";
    width: 9px;
    height: 9px;
    border-radius: 50%;
    border: none;
    background: #B49A5C;
    left: -15px;
    top: 5px;
    position: absolute;
    margin-left: 0;
}


/* card  ---------------------------------------*/

.card-header .card-title {
    font-size: 15px;
    font-weight: bold;
    font-family: 'M PLUS 1p', sans-serif;
    color: #333333 !important;
    margin-bottom: 20px;
}

.card-header .card-title::before {
    display: inline-block;
    content: '';
    vertical-align: middle;
    margin-right: 10px;
}

.card-header .card-title-plans::before {
    background: url('../img/common/icon_plans.png') no-repeat center center;
    background-size: 100%;
    width: 18px;
    height: 15px;
}

.card-header .card-title-bird::before {
    background: url('../img/common/icon_bird.png') no-repeat center center;
    background-size: 100%;
    width: 20px;
    height: 17px;
}

.card {
    background-color: transparent;
    box-shadow: none;
}

.card-inner {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 2px 0px rgb(0 0 0 / 25%);
}

.card-content .category {
    color: #888888;
    font-size: 10px;
    line-height: 1.8;
}


/* card register ---------------------------------------*/

.card-register {
    background-color: transparent !important;
}

.card-register .card-content {
    background-color: #F0E0BA;
    box-shadow: 0 2px 0px #C6B281;
    border-radius: 10px;
}

.card[data-background-color="blue"] .card-content {
    background-color: #b8d8d8;
    box-shadow: 0 2px 0px #97BBC4;
    border-radius: 10px;
}

.card[data-background-color="brown"] .card-content {
    background-color: #F0E0BA;
    box-shadow: 0 2px 0px #B49A5C;
    border-radius: 10px;
}

.form-group .control-label {
    padding-bottom: 5px;
    padding-left: 0;
}

.form-group .control-content {
    border-top: 1px solid #CCCCCC;
    padding-top: 5px;
    padding-left: 0;
}

.form-group .control-label-register {
    font-size: 11px;
    font-weight: bold;
    padding-left: 15px;
    padding-bottom: 15px;
    color: #333;
}

.card-register .form-group .form-control {
    box-shadow: 0 -1px 0px rgb(0 0 0 / 25%);
    background-color: #fff;
    border-radius: 7px;
}


/* card footer ---------------------------------------*/

.card-footer.alert-wrapper {
    padding: 0 5px 15px;
}


/* modal ----------*/

.modal.in .modal-dialog.modal-check {
    transform: translate(0, 70%);
    margin: 0 20px;
    position: relative;
}

.modal.in .modal-dialog.modal-edit {
    transform: translate(0, 5px);
    margin: 0 20px;
    position: relative;
    padding: 30px 0;
}

.btn.btn-secondary {
    position: absolute;
    top: -15px;
    right: -15px;
    width: 36px;
    height: 36px;
    background: #59B7D3;
    z-index: 1051;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    box-shadow: 0 2px 0 #3B94AF;
}

.btn.btn-secondary .icon-cross {
    width: 17px;
    height: 17px;
    display: inline-block;
    background: url(../img/common/icon_cross.png) no-repeat center center;
    background-size: 100%;
}

.modal-dialog .modal-content {
    padding: 24px 20px 5px;
}

.modal-dialog .modal-header {
    border-bottom: 1px solid #478FA3;
    color: #3B94AF;
    text-align: center;
    padding: 0 15px 13px;
}

.modal-dialog .modal-header .modal-title {
    font-weight: bold;
    font-size: 15px;
}

.modal-dialog .modal-body {
    padding: 25px 0 0;
}

.modal-dialog .form-group {
    margin-bottom: 20px;
}

.modal-dialog .modal-body .card-content {
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 2px 0px rgb(0 0 0 / 25%);
}

.modal-dialog .modal-body .form-group .control-label {
    color: #333;
    padding-left: 5px;
}

.modal-dialog .modal-body .form-group .control-label::before {
    display: inline-block;
    content: '';
    vertical-align: middle;
}

.modal-dialog .modal-body .form-group-data .control-label::before {
    background: url(../img/book/icon_time.png) no-repeat center center;
    background-size: 100%;
    margin-right: 10px;
    width: 14px;
    height: 14px;
}

.modal-dialog .modal-body .form-group-going .control-label::before {
    background: url(../img/book/icon_bus.png) no-repeat center center;
    background-size: 100%;
    margin-right: 8px;
    width: 16px;
    height: 9px;
}

.modal-dialog .modal-body .form-group-returning .control-label::before {
    background: url(../img/book/icon_home.png) no-repeat center center;
    background-size: 100%;
    margin-right: 10px;
    width: 14px;
    height: 12px;
}

.modal-dialog .modal-body .form-group .col-sm-8 {
    font-weight: bold;
    font-size: 15px;
    padding-right: 0;
}

.modal-body-title-wrapper {
    border-bottom: 1px solid #707070;
    margin-bottom: 15px;
}

.modal-body-title {
    font-size: 11px;
}

.modal-body-title::before {
    display: inline-block;
    content: '';
    vertical-align: middle;
    margin-right: 10px;
}

.form-group-class .modal-body-title::before {
    background: url('../img/common/icon_plans.png') no-repeat center center;
    background-size: 100%;
    width: 14px;
    height: 12px;
}

.form-group-time .modal-body-title::before {
    background: url('../img/common/icon_time.png') no-repeat center center;
    background-size: 100%;
    width: 14px;
    height: 14px;
}

.form-group-attention .modal-body-title::before {
    background: url('../img/common/icon_contact.png') no-repeat center center;
    background-size: 100%;
    width: 17px;
    height: 15px;
}

.form-class {
    padding: 0;
}

.form-class .input-group {
    width: calc(100% - 30px);
    margin-left: 15px;
}

.modal-body .form-control {
    background: #fff;
    border: none;
    padding: 7px 0;
    font-size: 12px;
    font-weight: bold;
    color: #333333;
}

.modal-body select.form-control {
    background-image: url('../img/common/icon_select.png');
    background-position: right 15px center;
    background-repeat: no-repeat;
    background-size: 10px 8px;
}

.modal-body .form-control-place {
    border-bottom: 1px solid #DDDDDD;
}


/* modal footer ---------------------------------------*/

.modal-footer {
    text-align: center;
}

.modal-footer .btn+.btn {
    margin-left: 0;
}

.btn.btn-close-bottom {
    position: static;
    width: 170px;
    height: 34px;
    background: #fff;
    color: #59B7D3;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 30px auto 0px;
    box-shadow: 0 2px 0px rgb(0 0 0 / 25%);
}

@media screen and (min-width: 769px) {
    /* text ---------------------------------------*/
    .text-pc-center {
        text-align: center;
    }
    .text-pc-left {
        text-align: left;
    }
    /* margin ---------------------------------------*/
    .mt-pc-0 {
        margin-top: 0px !important;
    }
    .mt-pc-5 {
        margin-top: 5px !important;
    }
    .mt-pc-10 {
        margin-top: 10px !important;
    }
    .mt-pc-15 {
        margin-top: 15px !important;
    }
    .mt-pc-20 {
        margin-top: 20px !important;
    }
    .mt-pc-25 {
        margin-top: 25px !important;
    }
    .mt-pc-30 {
        margin-top: 30px !important;
    }
    .mt-pc-35 {
        margin-top: 35px !important;
    }
    .mt-pc-40 {
        margin-top: 40px !important;
    }
    .mt-pc-45 {
        margin-top: 45px !important;
    }
    .mt-pc-50 {
        margin-top: 50px !important;
    }
    .mt-pc-55 {
        margin-top: 55px !important;
    }
    .mt-pc-60 {
        margin-top: 60px !important;
    }
    .mt-pc-65 {
        margin-top: 65px !important;
    }
    .mt-pc-70 {
        margin-top: 70px !important;
    }
    .mt-pc-75 {
        margin-top: 75px !important;
    }
    .mt-pc-80 {
        margin-top: 80px !important;
    }
    .mt-pc-85 {
        margin-top: 85px !important;
    }
    .mt-pc-90 {
        margin-top: 90px !important;
    }
    .mt-pc-95 {
        margin-top: 95px !important;
    }
    .mt-pc-100 {
        margin-top: 100px !important;
    }
    .mb-pc-0 {
        margin-bottom: 0px !important;
    }
    .mb-pc-5 {
        margin-bottom: 5px !important;
    }
    .mb-pc-10 {
        margin-bottom: 10px !important;
    }
    .mb-pc-15 {
        margin-bottom: 15px !important;
    }
    .mb-pc-20 {
        margin-bottom: 20px !important;
    }
    .mb-pc-25 {
        margin-bottom: 25px !important;
    }
    .mb-pc-30 {
        margin-bottom: 30px !important;
    }
    .mb-pc-35 {
        margin-bottom: 35px !important;
    }
    .mb-pc-40 {
        margin-bottom: 40px !important;
    }
    .mb-pc-45 {
        margin-bottom: 45px !important;
    }
    .mb-pc-50 {
        margin-bottom: 50px !important;
    }
    .mb-pc-55 {
        margin-bottom: 55px !important;
    }
    .mb-pc-60 {
        margin-bottom: 60px !important;
    }
    .mb-pc-65 {
        margin-bottom: 65px !important;
    }
    .mb-pc-70 {
        margin-bottom: 70px !important;
    }
    .mb-pc-75 {
        margin-bottom: 75px !important;
    }
    .mb-pc-80 {
        margin-bottom: 80px !important;
    }
    .mb-pc-85 {
        margin-bottom: 85px !important;
    }
    .mb-pc-90 {
        margin-bottom: 90px !important;
    }
    .mb-pc-95 {
        margin-bottom: 95px !important;
    }
    .mb-pc-100 {
        margin-bottom: 100px !important;
    }
    /* width ---------------------------------------*/
    .wid-pc-100per {
        width: 100% !important;
    }
    .wid-pc-50per {
        width: 50% !important;
    }
    .wid-pc-400 {
        width: 400px !important;
    }
    .wid-pc-500 {
        width: 500px !important;
    }
    .wid-pc-600 {
        width: 600px !important;
    }
    .wid-pc-700 {
        width: 700px !important;
    }
    .wid-pc-800 {
        width: 800px !important;
    }
    .wid-pc-900 {
        width: 900px !important;
    }
    /* nav ---------------------------------------*/
    .sidebar-mini .sidebar .logo a.logo-mini {
        font-size: 10px;
        text-align: left;
        font-weight: bold;
        width: 100%;
        margin-left: 14px;
        color: #fff;
    }
    .nav .btn-rotate-wrapper .btn-rotate {
        width: 200px;
    }
    .navbar .navbar-brand {}
    body.sidebar-mini .font-mplus-extra {
        font-size: 10px;
        transition: 0.3s;
    }
    .logo a img {
        margin-left: 25px;
    }
    .nav-link::before {
        left: 30px;
    }
    .form-group .control-label-schedule {
        width: 30%;
        padding-bottom: 0;
    }
    .form-group .col-sm-10.control-label-schedule-data {
        width: 70%;
        border-top: none;
        padding-top: 0;
        margin-bottom: 5px;
    }
    .main-panel .content {
        padding-bottom: 200px;
        background: url(../img/common/bg_pc.png) repeat-x left bottom;
        background-size: 1280px;
    }
    .form-group .control-label {
        padding-bottom: 0;
    }
    .form-group .control-content {
        border-top: none;
        padding-top: 0;
        margin-bottom: 5px;
    }
    .modal-dialog {
        width: auto;
    }
    .modal-body-title-wrapper {
        border-bottom: none;
    }
}

@media screen and (min-width: 993px) {
    .navbar-back {
        display: none;
    }
    .navbar .navbar-header {
        background: none;
        border: none;
    }
    .navbar>.container .navbar-brand,
    .navbar>.container-fluid .navbar-brand {
        position: relative;
        left: 0;
        top: 0;
        transform: translate(0, 0);
        color: #555;
        font-size: 30px;
        margin-top: 15px
    }
    .nav .btn-rotate-wrapper {
        margin-top: 0;
    }
    .navbar-right {
        margin-right: 0;
    }
}
