.step_bar {
    position: relative;
    margin: 0 auto;
    width: 40%;
    max-width: 480px;
}
.progress {
    display: -ms-flexbox;
    display: flex;
    height: 5px;
    overflow: hidden;
    font-size: 0.75rem;
    background-color: #e9ecef;
    border-radius: .25rem;
    position: absolute;
    top: 17px;
    margin: 0 2%;
    width: 96%;
    z-index: 1;
}
.bg-info {
    background-color: #00D7E1!important;
}
.progress-bar-striped {
    background-image: linear-gradient(45deg,rgba(255,255,255,.3) 30%,transparent 30%,transparent 50%,rgba(255,255,255,.3) 50%,rgba(255,255,255,.3) 70%,transparent 70%,transparent);
    background-size: 1rem 1rem;
}
.step_container {
	position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    z-index: 2;
}
.step_container .disable .step_icon {
	background: #e9ecef;
}
.step_container .disable {
	color: #e9ecef;
}
.step {
    position: relative;
    width: auto;
	text-align: center;
	color: #00D7E1;
    font-size: 12px;
}
.step_icon {
    position: relative;
    margin: 0 auto 3px auto;
    width: 38px;
    height: 38px;
    background: #00D7E1;
    border-radius: 40px;
}
.step_mask {
    position: absolute;
    top: 13px;
    bottom: 13px;
    left: 13px;
    right: 13px;
    width: 12px;
    height: 12px;
    background: #fff;
    border-radius: 10px;
}
.carts_container {
    position: relative;
    margin: 10px auto 50px auto;
    padding: 10px 10px 10px 10px;
    width: 100%;
    background: #f9f9f9;
}
.carts_row {
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    font-size: 14px;
    align-items: flex-start;
    justify-content: space-between;
    padding: 20px 0;
    border-bottom: 1px solid #ddd;
}
.cart_group01 {
	position: relative;
    display: flex;
    flex-direction: row;
    align-items: baseline;
}
.cart_group02 {
	position: relative;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    width: calc( 100% - 170px);
}
.cart-check-input {
    position: relative !important;
    margin: 0px 8px 0 5px !important;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    background: #19B0C1;
	width: 16px;
}
.carts_btn {
	background: #19B0C1;
    border: 0;
    font-size: 14px;
}
.carts_btn:hover {
	opacity: 0.8;
	background: #19B0C1;
}
.carts_img {
    position: relative;
	margin-right: 10px;
    width: 145px;
    border-radius: 4px;
    overflow: hidden;
}
.carts_info {
	position: relative;
    margin-right: 20px;
    text-align: left;
    width: 55%;
}
.carts_info .name {
	margin-bottom: 10px;
}
.carts_info .name a {
	font-weight: bold;
    color: #333;
}
.carts_info .date {
    color: #444;
}
.carts_quantity {
	position: relative;
	margin-right: 20px;
	width: 20%;
}
.carts_price {
	position: relative;
	margin-right: 20px;
    color: #19B0C1;
	width: 20%;
}
.carts_edit {
	position: relative;
	width: 20px;
}
.carts_trash {
	position: relative;
	width: 20px;
	margin-left: 5px;
}
.btn_continueShopping {
    margin: 9px 0;
}
.btn_continueShopping a {
    color: #19B0C1;
    font-size: 16px;
    font-weight: 500;
    padding: 5px 0;
}
.total_checkout {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    width: 50%;
}
.cart_amount {
    color: #666;
    font-weight: bold;
}
.cart_amount span {
    color: #19B0C1;
}
.cart_amount b {
    color: #19B0C1;
    font-size: 24px;
}
.btn_checkout {
    position: relative;
    margin: 0 0 0 20px;
    width: 170px;
}
.btn_checkout a {
    display: block;
    padding: 6px;
    width: 100%;
    background: #3BEBBF;
    background-image: linear-gradient(90deg,#3bebc2 0,#00D7E1);
    text-align: center;
    color: #fff;
    font-size: 20px;
    border-radius: 4px;
    text-decoration: none;
}
.btn_checkout a:hover {
    background: #19B0C1;
}
.form_checkbox {
	position: relative;
    width: 26px;
	margin-right: 5px;
}
.p_outdate {
	background: #FF7D5A !important;
	color: #fff !important;
	padding: 1px 4px;
}
.detail_left {
    position: relative;
    padding: 0 0px 5px 10px;
    float: left;
    width: calc( 71% - 0px );
}
.detail_right {
    position: relative;
    padding: 0 10px 5px 10px;
    float: right;
    width: calc( 29% - 0px );
    max-width: 320px;
}
.detail_bookinfo {
	position: relative;
	margin-top: 17px;
    padding: 20px 10px 13px 10px;
    width: 100%;
    background: #19B0C1;
    border-radius: 4px;
    color: #fff;
    text-align: left;
    font-size: 14px;
}
.detail_bookinfo.smaller {
	position: fixed;
	width: calc( 29% - 20px );
    max-width: 300px;
    top: 100px;
	z-index: 9;
}
.bookinfo_name {
	position: absolute;
    top: -17px;
    left: 0;
    padding: 3px 10px;
    background: #fff;
    color: #19B0C1;
    border: 2px solid #19B0C1;
    border-radius: 4px;
	font-size: 16px;
}
.bookinfo_content {
    position: relative;
    max-height: 600px;
    overflow-y: scroll;
    background: #50c0cd;
    padding: 8px;
}
.bookinfo_p_name {
	position: relative;
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 10px;
	font-weight: 500;
}
.detail_bookinfo b {
	font-size: 20px;
    display: block;
}
.detail_bookinfo span {
	color: #aaedf4;
}
.bookinfo_detail {
	margin: 10px 0;
    color: #aaedf4;
    font-size: 14px;
}
.bookinfo_detail p {
	margin-bottom: 3px;
}
.bookinfo_detail_row {
	display: flex;
    flex-direction: row;
    justify-content: space-between;
    position: relative;
    padding: 3px 0;
    border-top: 1px dotted #aaedf4;
	color: #aaedf4;
}
.bookinfo_detail_row span {
	color: #e5fdff;
}
.detail_total {
	position: relative;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}
.detail_total b {
	display: contents;
    font-size: 16px;
	color: #fff;
}
.detail_bookinfo>.detail_total>span>b {
	font-size: 22px;
}
.detail_bookinfo button {
    width: 49%;
    border: 0;
    border-radius: 4px;
    padding: 10px;
    margin-top: 10px;
    color: #19B0C1;
}
.bookinfo_pcode {
	position: relative;
    display: flex;
    flex-direction: row;
    width: 100%;
}
.bookinfo_pcode .form_row {
	margin: 5px 0;
}
.bookinfo_pcode .form_row .custom-input {
    margin-left: 0;
    padding: 5px;
    width: 70%;
}
.btn_pcode {
    margin: 0 0 0 1px !important;
    padding: 5px !important;
    width: calc( 30% - 1px ) !important;
    background: #FFDA76;
    font-size: 16px;
}
.detail_bookinfo button:hover, .item_add:hover {
    opacity: 0.8;
}
.detail_part {
	position: relative;
    margin: 10px 0 20px 0;
    padding: 10px 15px;
    border-bottom: 0px;
    text-align: left;
    font-size: 14px;
    background: #fff;
}
.detail_part b {
	font-size: 20px
}
.cart_login {
	position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    width: 100%;
	align-items: center;
}
.cart_login .login_box {
	width: 50%;
    margin: 0;
    padding: 0;
}
.cart_login .login_box .btn_morelist {
	margin: 0 0 0 128px;
}
.login_box .form_row {
	margin-bottom: 10px;
}
.form_or {
	position: relative;
    margin: 0 10px;
    color: #999;
}
.btn_fb_login {
	background: #3a5695;
    color: #fff;
    border-radius: 4px;
    padding: 10px 20px;
	position: relative;
}
.login_other {
	
}
.order_general_details {
    position: relative;
    margin: 10px 0 20px 0;
    padding-bottom: 20px;
    background: #fff;
}
.order_general_title {
    position: relative;
    background: #19B0C1;
    color: #fff;
    text-align: left;
    padding: 10px 20px;
}
.order_general_details .form_row {
    padding: 10px 20px 0px 20px;
    margin-bottom: 0;
}
#orderdetails .card, #orderdetails2 .card, #orderdetails3 .card {
    border: 0;
    margin-bottom: 20px;
}
#orderdetails>.card>.card-header, #orderdetails2>.card>.card-header, #orderdetails3>.card>.card-header {
    border-radius: 0;
    margin-bottom: 0;
    border: 0;
    padding: 0 20px 2px 15px;
    border-left: 5px solid #00D7E1;
    background: #fff;
}
#orderdetails>.card>.card-header .btn-link, #orderdetails2>.card>.card-header .btn-link, #orderdetails3>.card>.card-header .btn-link {
    color: #19B0C1;
}
.detail_driver {
    padding: 10px 10px 1px 10px;
    background: #f5f5f5;
	margin: 10px 0 0 0;
}
.detail_driver .title {
    position: relative;margin: 0 10px 10px 10px;
}
#orderdetails .card .collapse, #orderdetails2 .card .collapse, #orderdetails3 .card .collapse {
    border-top: 1px dotted #ccc;
}
.add_driver {
	margin-left: 10px;
    background: #fff;
    border: 1px solid #ced4da;
}
.form_row label {
    margin-bottom: 0;
	width: 260px;
}
.car-type {
	margin-left: 10px;
}
.car-type label {
	margin-bottom: 0 !important;
    padding: 5px 15px !important;
	width: auto;
}
.btn-secondary {
    color: #fff;
    background-color: #ccc;
    border: 1px solid #f5f5f5;
}
.btn-secondary:not(:disabled):not(.disabled).active, .btn-secondary:not(:disabled):not(.disabled):active, .show>.btn-secondary.dropdown-toggle {
    color: #fff;
    background-color: #19B0C1;
    border-color: #f5f5f5;
}
.sub_header {
	position: relative;
    color: #fff;
    background: #00D7E1;
    padding: 5px 10px 5px 20px;
    width: fit-content;
    margin: 0 0 10px -20px;
}
.sub_header a {
	background: #FF7D5A;
    color: #fff;
    padding: 5px 5px;
    display: inline-block;
    position: absolute;
    top: 0;
    right: -45px;
    width: 44px;
}
.sub_header a:hover {
	text-decoration: none;
	opacity: 0.7;
}
.field50 {
	width: 50%;
}
.btn_nextstep {
    position: relative;
    margin: 0 0 0 20px;
    width: 170px;
    float: right;
}
.oderP {
	color: #333;
	width: 100% !important;
}
.previewTitle {
	margin: 0 10px 5px 0 !important;
    color: #999;
}
.order_general_details ul {
	margin: 10px 0;
    font-size: 12px;
    text-align: left;
    color: #666;
}
.payment_method {
	position: relative;
	display: flex;
	flex-direction: column;
	margin: 10px 20px;
}
.payment_method .form-check {
	text-align: left;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: baseline;
}
.payment_method .form-check input[type=checkbox], input[type=radio] {
    height: 40px;
}
.payment_method .form-check img {
    height: 50px;
    width: auto;
	margin-left: 10px;
}
.cart_btn_group {
	position: relative;
    margin: 0 -20px;
    width: calc( 100% + 20px);
    display: flex;
    justify-content: flex-end;
}
.order_result {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: baseline;
	padding: 80px 0;
}
.order-over-icon {
    position: relative;
    width: 8%;
    max-width: 80px;
}
.result_content {
	position: relative;
    margin-left: 20px;
    text-align: left;
}
.result_content h2 {
    color: #00d7e1;
    font-size: 28px;
    margin-bottom: 2px;
}
.result_content h3 {
    color: #C2C2C2;
    font-size: 28px;
    margin-bottom: 2px;
}
.result_content p {
	color: #666;
	font-size: 14px;
}
.cancel_btn {
	border: 0;
    background: #999;
    padding: 8px 20px;
}
.payagain_btn {
	border: 0;
	background: #00D7E1;
    background-image: linear-gradient(90deg,#3bebc2 0,#00D7E1);
	padding: 8px 20px;
}
.form_row {
    justify-content: space-between;
    align-items: center;
}
.item_counter {
    width: 106px;
    border-radius: 4px;
    border: 1px solid #ced4da;
    padding: 5px;
    background-color: #fff;
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: center;
    margin: 0 0 0 10px;
    align-items: center;
}
@media (max-width: 769px) {
    .step_bar {
        width: 50%;
        max-width: none;
    }
}
@media (max-width: 576px) {
    .step_bar {
        width: 80%;
        max-width: none;
    }
    .cart_group02 {
        flex-wrap: wrap;
        width: 70%;
        justify-content: flex-end;
    }
    .carts_info {
        margin-right: 0;
        width: 100%;
    }
    .carts_quantity {
        margin-right: 0px;
        width: 100%;
        text-align: left;
    }
    .carts_price {
        position: relative;
        margin: 0 0 10px 0;
        color: #19B0C1;
        width: 100%;
        text-align: right;
        font-weight: bold;
        font-size: 16px;
    }
    .total_checkout {
        width: 77%;
    }
    .cart_amount {
        color: #666;
        font-weight: bold;
        padding: 5px 0px;
    }
    .cart_amount b {
        font-size: 20px;
    }
    .btn_checkout {
        width: 120px;
        margin: 0 0 0 10px;
    }
    .btn_checkout a {
        font-size: 18px;
    }
	.p_outdate {
        font-size: 14px !important;
    }
	.detail_right {
        display: none;
    }
	.detail_left {
        position: relative;
        padding: 0 0px 5px 0px;
        float: none;
        width: 100%;
    }
	.detail_part {
        padding: 10px 10px;
    }
	.carts_edit, .carts_trash {
        width: 25px;
    }
	.carts_trash {
        margin-left: 15px;
    }
	.cart_login {
        flex-direction: column;
    }
	.cart_login .login_box {
        width: 100%;
    }
	.login_box .form_row {
        margin-bottom: 5px;
    }
	.cart_login .login_box .btn_morelist {
        margin: 0 0 0px 0;
        width: 100%;
    }
	.btn_fb_login {
        width: 100%;
        text-align: center;
    }
	.order_general_details .form_row {
        padding: 10px 10px 0px 10px;
        margin-bottom: 0;
    }
	.card-body {
        padding: 10px;
    }
	.order_general_details .form_row .select_cal, .card-body .form_row .select_cal {
        width: 100%;
    }
	.add_driver {
        margin-left: 0px;
        width: fit-content;
    }
	.car-type {
        margin-left: 0;
		width: 100%;
    }
	.car-type label {
        padding: 5px 10px !important;
        font-size: 14px;
    }
	.select_list {
        width: 100% !important;
    }
	.cart_btn_group {
        justify-content: center;
    }
	.order_result {
        flex-direction: column;
        padding: 80px 0;
    }
	.order-over-icon {
        margin: 0 auto;
        width: 17%;
        margin-bottom: 20px;
    }
	.result_content {
        text-align: center;
		margin: 0;
        width: 100%;
    }
	.p_edit .form_row {
        flex-direction: row;
    }
	.p_edit .form_row label {
        width: 40%;
    }
	.p_edit .form_row .select_list, .p_edit .form_row select, .p_edit .form_row .select_cal {
        width: 60% !important;
		min-width: auto;
    }
	.form_row {
        align-items: flex-start;
    }
	.form_row label {
        margin-bottom: 0;
        width: 100%;
    }
}