.wp_cart_clear_float{
clear:both;
}

.shopping_cart{
padding: 5px;
}
.shopping_cart img{
border:none;
box-shadow: none;
}
.shopping_cart input{
width:auto !important;
margin: 0;
}
.shopping_cart input[type="number"]{
max-width:5em !important;
text-align:center;
}
div.shopping_cart table{
border: none;    
}
div.shopping_cart tr td, div.shopping_cart tr th{
padding:2px 1px;
border: none;
}
div.shopping_cart tr th{
font-weight: bold;    
}
div.shopping_cart tr, div.shopping_cart th{
border: none;    
}
.shopping_cart .wspsc_cart_item_name_th{
text-align: left;
}
.shopping_cart .wspsc_cart_qty_th, .shopping_cart .wspsc_cart_price_th{
text-align: center;
}
.shopping_cart .wp_cart_item_thumbnail{
margin-right: 10px;
}
.shopping_cart .wp_cart_item_thumbnail img{
max-width: 10em;
float: left;
}

.wp_cart_remove_item_form input[type="image"]{
border: none;
cursor: pointer;
}
.wp-cart-button-form input{
width: auto !important;
}
.wp_cart_checkout_button{
cursor: pointer;    
}
.wp_cart_checkout_button:hover{
/* opacity:0.7; */
box-shadow: inset 0 0 100px 100px rgba(0, 0, 0, 0.05);
}

.wp_cart_button:hover{
opacity:0.7;
}
.wp_cart_button_wrapper{
padding: 1.25em 2.375em;
}
.wp_cart_button_wrapper .one_day_per_price{
display: flex;
align-items: center;
justify-content: space-between;
border-radius: 0.5em;
background-color: #fff;
margin: 1em 0;
padding: 0 1em;
}

.wpspsc_error_message{
color:red !important;
font-weight:bold;
}
.wpspsc_success_message{
color:green !important;
font-weight:bold;
}

/* product box display specific CSS */
.wp_cart_product_display_box{
border: 1px solid #E8E5DC;
box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.2);
margin-bottom: 25px;
padding-bottom: 5px;
width:300px;
}
.wp_cart_product_thumbnail img{
max-width:100%;
}
.wp_cart_product_display_bottom{
padding:10px 15px;	
}
.wp_cart_product_name{
color: #525351;
font-size: 16px;
font-weight: bold;
line-height: 20px;
margin: 0 0 10px 0;
text-transform:uppercase;
}
.wp_cart_product_description{
font-style:italic;
}
.wp_cart_product_price{
color: #525351;
display: block;
font-size: 22px;
font-weight: bold;
line-height: 24px;
margin: 0;
padding: 10px 10px 10px 0;
}
/* end of product display specific CSS */

/* Compact cart css */
.wpsps_compact_cart{
font-family:helvetica;	
background-color:#DDDDDD;
border:1px solid #CCCCCC;
max-width: 240px;
min-width: 200px;
padding: 10px 7px;
margin:5px 0;
}
.wpsps_compact_cart_container{
padding-left: 15px;
font-size: 14px;
}
.wpsps_compact_cart_price{
color: #6A872D;
font-weight: bold;
}
.wpsps_compact_cart_co_btn{
background-color: #A3A3A3 !important;
color: #162636 !important;
font-size: 14px !important;
font-weight:normal !important;
margin-left: 10px !important;
padding: 5px 7px !important;
text-decoration: none !important;
width:auto !important;
height:auto !important;
}
/* End of compact cart css */
/* Compact cart 2 css */
.wspsc_compact_cart2{
background-color:#b4d613;
border:1px solid #92B002;
max-width: 140px;
min-width: 140px;
padding: 2px 2px;
margin:10px 0;
}
.wspsc_compact_cart2_container{
background: url('images/shopping_cart_icon_2.png') 6px 6px no-repeat;
padding-left: 40px;
}
.wspsc_compact_cart2_inside{
background: #262626;
display: block;
color: #FFFFFF;
font-size: 14px;
text-align: center;
cursor: pointer;
padding: 3px 0;
}
.wspsc_compact_cart2_view_cart_link {
color: #FFFFFF !important;
text-decoration: none;
}
.wspsc_compact_cart2_view_cart_link:hover {
color: #FFFFFF !important;
text-decoration: none;
}
/* End of compact cart 2 css */

/* block editor related styles */
.wspsc_block_description_text{
    font-size: smaller !important;
    color: #6c757d !important;
}

/* calendar css */
.calendar_area{
margin: 1em 0;
}
.reserve_time{
display: flex;
}
.calendar_area .calendar_back_time{
margin: 0 0 0 1em;
}
.calendar_button{
padding: 1em;
width: fit-content;
border-radius: 0.5rem;
background-color: #eb6100;
display: flex;
align-items: center;
color: white;
}
.calendar_button img{
margin-right: 1em;
}
.calendar_button_disabled{
background-color: gray;
}
.wp_cart_variation_name{
    margin: 1em 0;
}
.number_of_passengers_input{
    margin: 0 2em;
    font-size: 1em;
    padding: 0.5em 0;
    text-align: center;
}
.wp_cart_variation1_select{
    margin: 0 2em;
    -webkit-appearance: menulist-button;
    font-size: 1em;
    padding: 0.5em 0;
    border-radius: 0.2em;
    width: fit-content;
}

/* calendar css end */

/* airport car thumbnail start */
.airport_car_thumbnail{
display: flex;
justify-content: space-between;
align-items: flex-end;
}
.max_number{
display: flex;
justify-content: space-around;
}
.max_number div{
display: flex;
align-items: center;
}
.car_thumbnail_max_number{
display: none;
align-items: center;
}
.car_thumbnail_max_number>img{
    width: 100%;
}
@media screen and (max-width: 870px) {
    .airport_car_thumbnail>div{
        flex: 5;
        flex-shrink: 0;
    }
    .airport_car_thumbnail>div.car_thumbnail_max_number{
        flex: 3;
    }
}
/* airport car thumbnail end */

.submit_button{
text-align: right;
}
.wspsc_add_cart_submit{
padding: 1em;
border-radius: 0.5rem;
border: unset;
background-color: #eb6100;
margin: 1em;
font-size: large;
font-weight: bold;
color: white;
}

.attention_content_title{
font-size: larger;
font-weight: bold;
}
.attention_content{
height: 15em;
line-height: 2em;
border: 1px solid;
margin: 1em 0;
padding: 0 1em;
border-radius: 0.5em;
overflow-y: scroll;
/*スクロールバー非表示（IE・Edge）*/
/* -ms-overflow-style: none; */
/*スクロールバー非表示（Firefox）*/
/* scrollbar-width: none; */
}
/*スクロールバー非表示（Chrome・Safari）*/
.attention_content::-webkit-scrollbar{
    /* display:none; */
}
.attention_content ul{
padding: 0 1em;
}
.attention_content li ul{
list-style-type: none;
padding: 0 1em;
}

.wspsc_cart_item_qty{
font-size: 1em;
padding: 0.5em 0;
margin: 1em;
text-align: center;
}


/* pop up style */

/* 行程详细popup */
.tour_popup {
display: none;
height: 100vh;
width: 100%;
background: grey;
opacity: 1;
position: fixed;
top: 0;
left: 0;
}
.tour_content {
background: #fff;
padding: 30px;
width: 50%;
height: 50%;
overflow-y: scroll;
/*スクロールバー非表示（IE・Edge）*/
-ms-overflow-style: none;
/*スクロールバー非表示（Firefox）*/
scrollbar-width: none;
border-radius: 0.5em;
}
/*スクロールバー非表示（Chrome・Safari）*/
.tour_content::-webkit-scrollbar{
    display:none;
}
.tour_content_show {
display: flex;
justify-content: center;
align-items: center;
}
#show_tour_popup{
height: 4em;
/* transform: translateY(-5em); */
margin: 0 2em;
font-size: larger;
background: linear-gradient(to top,#f9f4e5,rgba(249, 244, 230, 0.9));
line-height: 4em;
font-weight: bold;
text-decoration: underline;
}

#close {
display: block;
position: relative;
width: 2em;
height: 2em;
border-radius: 50%;  /* 丸みの度合い */
background: #333; /* ボタンの背景色 */
float: right;
}

#close::before, #close::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 3px;
height: 1.5em;
background: #fff; /* バツ印の色 */
}

#close::before {
transform: translate(-50%,-50%) rotate(45deg);
}

#close::after {
transform: translate(-50%,-50%) rotate(-45deg);
}

/* 确认取消popup */
.confirm_cancel_popup {
display: none;
height: 85vh;
width: 100%;
max-width: 100% !important;
/* background: grey; */
opacity: 1;
position: fixed;
top: 0;
left: 0;
}
@media screen and (max-width: 768px) {
    .confirm_cancel_content{
        width: 70%;
    }
}
.confirm_cancel_content {
background: #fff;
/* background: grey; */
padding: 30px;
width: fit-content;
height: fit-content;
text-align: center;
font-size: larger;
border-radius: 0.5em;
border: solid 1px;
}
.confirm_cancel_content .cancel_instructions{
margin-top: 0.5em;
color: red;
font-size: medium;
}
.cancel_confirm_content_show {
display: flex;
justify-content: center;
align-items: center;
}
.confirm_cancel_button{
margin-top: 1em;
display: flex;
justify-content: center;
}
.confirm_cancel_button button{
padding: 0.5em 1em;
border-radius: 0.5em;
border: none;
margin: 0 1.5em;
}
.confirm_cancel_button #confirm_cancel_y{
    /* background-color:#eb6100; */
}
.confirm_cancel_button #confirm_cancel_n{
    /* background-color: rgb(246, 61, 55); */
}
/* pop up style end */

/* right detail info */
.detail_info{
    overflow-y: scroll;
}
.detail_info_subtitle{
font-weight: bold;
}
.detail_info_title{
font-size: larger;
font-weight: bold;
margin: 1em 0;
}
.detail_info_fake_button{
border: 1px solid;
width: fit-content;
border-radius: 0.2em;
padding: 0.2rem;
margin: 0.5em 1em;
}
.detail_info ul {
/* list-style-type: none; */
}
.detail_info ul li{
margin: 0.5em 0;
}
.detail_info .trip_name{
font-weight: 700; 
}
/* right detail info end */

.total_price_area{
margin: 1em 0;
font-size: x-large;
font-weight: bold;
}

/* shop cart style */
.cart_content{
    display: flex;
}
.cart_content .cart_item_area{
    width: 100%;
}
.cart_item{
    padding: 0.5em 1em;
    margin: 2em 0;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
    border-radius: 0.5em;
}

.wp_cart_item_info{
    display: flex;
    justify-content: space-between;
    padding: 1em 5em;
}

.cart_item_price_area{
    border-top: solid 1px rgba(0, 0, 0, 0.25);
    display: flex;
    justify-content: space-between;
    padding: 1em 5em;
}
.wspsc_remove_item_td{
    display: flex;
}
.wspsc_remove_item_td form{
    margin-right: 1em;
}
.wp_cart_item_info_item_name{
    display: flex;
}
.wp_cart_item_name{
    font-weight: bold;
    font-size: large;
}
.wp_cart_item_introduction{
    margin-top: 0.5em;
}
.checkout_button_area{
    display: flex;
    flex-direction: column;
    padding: 0.5em 1em;
    margin: 2em 0 0 1em;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
    border-radius: 0.5em;
    height: fit-content;
}
.checkout_button_area .credit_cart_submit{
    margin-top: 0.5em;
}
.checkout_button_area .wspsc_stripe_btn{
    height: 35px;
    min-height: 35px;
    max-height: 55px;
    border: none;
    border-radius: 4px;
    background: #ffc439;
    color: #111;
}
.checkout_button_area .total_price{
    font-weight: bold;
}
.checkout_button_area .check_out_title{
    padding: 1em 0;
    font-weight: bold;
}
/* shop cart style end */

/* error message style */
.error_message{
margin-bottom: 1em;
width: fit-content;
border-radius: 0.5rem;
color: red;
}

/* error message style end */
.address_text{
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
width: 15em; 
}
.user_information{
border: 1px solid;
margin: 1em 0;
padding: 1em;
border-radius: 0.5em;
}
.user_information .attention_content_title{
margin: 0 0 1em 0;
}
.user_information input{
height: 2em;
}
.user_information span{
color: red;
}

/* order history style */
.order_history_area{
padding: 2em;
}
.order_history_table{
width: 100%;
border-collapse: collapse;
}
.order_history_table th{
text-align: left;
height: 2em;
font-size: larger;
border-bottom: 1px solid #bbb;
}
.order_history_table td{
height: 2em;
border-bottom: 1px solid #bbb;
}
/* order history style end */

@media screen and (max-width:768px){
    main.wp-block-group > .entry-content > h3,.order_history_area{
        padding: 0 var(--wp--preset--spacing--40);
    }
    .order_history_area{
        margin: 1em 0 1em !important;
    }
    
    .order_history_table{
        table-layout: fixed;
    }
    .order_history_table th{
        font-size: 1em;
    }
}

/* shopping cart start */
@media screen and (max-width:768px){
    .shopping_cart{
        overflow: hidden;
        /* width: 100%; */
        padding: 1em;
        box-sizing: border-box;
    }
    #pinfo{
        margin-top: 1em;
        display: block;
    }
    .shopping_cart .wpsc_cart_title{
        font-size: 2em;
        margin: 0 0 !important;
    }
    .shopping_cart .cart_content{
        width: 100%;
        flex-direction: column;
    }
    .shopping_cart .cart_content .cart_item{
        box-sizing: border-box;
        padding: 1em;
        margin: 1em 0;
        overflow: hidden;
        box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
    }
    .cart_item_price_area{
        padding: 1em 0 0;
    }
    .wp_cart_item_info{
        padding: 0;
        flex-direction: column;
        margin-bottom: .5em;
    }
    .wp_cart_item_info_item_name{
        margin-bottom: .5em;
    }
    .wp_cart_item_info_item_name>div:nth-child(2){
        flex: 2;
        flex-shrink: 0;
        overflow: hidden;
    }
    .wp_cart_item_thumbnail{
        flex: 1;
        flex-shrink: 0;
        overflow: hidden;
    }
    .wp_cart_item_thumbnail>img{
        float: none !important;
        width: 100%;
        max-width: 100%;
    }
    .checkout_button_area{
        margin: 0;
    }
}