/*
Theme Name: Welcart Basic Child
Description: Welcart Basic Child Theme
Author: Collne Inc
Template: welcart_basic
Version: 1.0.0
*/






/*---- base ---*/

#content {
	padding: 0 0 60px!important;	
}

input[type="button"],
input[type="submit"] {
    font-family: "Noto Sans JP";
}

@media screen and (max-width: 768px) {

    #content {
        padding: 0 0 30px!important;	
    }

}





/*---- itempage ---*/

#itempage {
    overflow: hidden;
}

#img-box {
    box-sizing: border-box;
    padding: 0 50px 20px 0;
    width: 45%!important;
}

#img-box .itemimg img {
    border: #ddd 1px solid;
}

.item-name {
    border-bottom: #ddd 1px solid;
    font-size: 1.3rem;
    letter-spacing: 0.05rem;
    line-height: 1.6;
    margin: 0 0 30px;
    padding: 0 0 20px;
}

.item-description {
    margin-bottom: 0!important;
}

.item-info {
	padding-top: 0!important;
}

.item_custom_field {
    border: none!important;
    border-top: #ddd 1px solid!important;
    font-size: 0.9rem;
    line-height: 1.8;
    margin: 0 0 30px!important;
    width: 100%;
}

.item_custom_field tr {
    border-bottom: #ddd 1px solid;
}

.item_custom_field th,
.item_custom_field td {
    background: none!important;
    border: none!important;
    padding: 5px;
}

.zaikostatus {
    float: none!important;
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 0.05rem;
    line-height: 1.8;
    padding: 10px 0 0;
    text-align: right!important;
}

.item-option {
	border: none!important;
    display: inline-block;
	margin-bottom: 15px!important;
	padding: 0!important;
    vertical-align: baseline;
}

.item-option-dd {
    display: inline-block;
    padding: 0 0 0 5px;
}

.item-option .iopt_select {
    height: 40px;
	padding: .357143em 25px .357143em 10px;
    border-radius: 3px;
    border: #ccc 1px solid;
}

.c-box .quantity {
    padding: 0 15px 0 20px;
}

.c-box .quantity .skuquantity {
    margin: 0 0 0 5px!important;
}

.field {
    padding: 0 0 20px!important;
}

.field_price {
    color: #1265CB;
    font-size: 1.7rem!important;
    font-weight: 400!important;
}

.field_price em {
    color: #1265CB!important;
    font-size: 1rem!important;
}

@media screen and (max-width: 768px) {

    #img-box {
        padding: 0;
        width: 100%!important;
    }

    .c-box .quantity {
        padding: 0 0 10px 10px;
    }

    .c-box .cart-button {
        display: block!important;
    }
    
    .c-box .skubutton {
        display: block!important;
        width: 100%;
    }
}





/*---- usccart_navi ---*/

div.cart_navi {
    padding: 0 0 20px;
}

div.cart_navi li {
    font-size: 1rem!important;
	padding: 0 0 0 20px!important;
    width: 20%!important;
}

div.cart_navi li:first-child {
	padding: 0 0 0 10px!important;
    width: calc(20% - 10px)!important;
}

div.cart_navi li:last-child {
	padding: 0 0 0 10px!important;
    width: calc(20% + 10px)!important;
}

div.cart_navi li:before {
	margin: 0 -10px 0 0!important;
}

div.cart_navi li:after {
	margin: -20px -10px 0 auto!important;
}

div.cart_navi li:last-child:before,
div.cart_navi li:last-child:after {
	display: none;
}

@media screen and (max-width: 768px) {

    div.cart_navi {
        display: none;
    }

}





/*---- cart ---*/

.upbutton em {
    color: #333;
}

.confiem_notice {
    color: orangered;
    font-size: 0.95rem!important;
    line-height: 1.6!important;
    padding: 0 0 35px!important;
}

@media screen and (max-width: 768px) {

    .upbutton {
        overflow: hidden;
        text-align: left!important;
    }

    .upbutton em {
        font-size: 0.85rem;
        float: left;
        line-height: 1.5;
        width: calc(100% - 100px);
    }

    .upbutton input {
        box-sizing: border-box;
        float: right;
        margin-top: 5px;
        width: 90px;
    }

    .confiem_notice {
        padding: 0 0 5px!important;
    }

}





/*---- cart_table ---*/

#cart_table {
    border: none!important;
    width: 100%!important;
    margin: 25px 0 30px;
}

#cart_table thead th {
    border: none!important;
    border-right: #fff 1px solid!important;
    font-size: 0.85rem;
    line-height: 1.4;
    padding: 5px 0;
    vertical-align: middle;
}

#cart_table thead th.subtotal .tax {
    display: block;
    font-size: 0.65rem;
}

#cart_table thead th:nth-child(1),
#cart_table tbody td:nth-child(1) {
    display: none!important;
}

#info-confirm #cart_table thead th:nth-child(7),
#info-confirm #cart_table tbody td:nth-child(7) {
    display: none!important;
}

#cart_table tbody td {
    border: none!important;
    border-bottom: #ddd 1px solid!important;
    padding: 20px 10px;
}

#cart_table  tbody td.productname {
    line-height: 1.6;
}

#cart_table  tbody td.thumbnail {
    width: 90px;
}

#cart_table  tbody td.thumbnail img {
    border: #ddd 1px solid;
    box-sizing: border-box;
    display: block;
    height: auto;
    padding: 4px;
    width: 100%;
}

#cart_table  tbody td.unitprice,
#cart_table  tbody td.subtotal {
    text-align: center;
}

@media screen and (max-width: 768px) {

    #cart_table {
        margin: 15px 0 30px;
        display: block;
        width: 100%;
    }

    #cart_table thead {
        display: none;
    }

    #cart_table tbody,
    #cart_table tbody tr,
    #cart_table tbody th,
    #cart_table tbody td{
        border: none!important;
        display: block;
        padding: 0;
        width: 100%!important;
    }

    #cart_table tbody td:nth-child(2) {
        display: block!important;
    }

    #cart_table tbody tr {
        border: 1px solid #bbb!important;
        box-sizing: border-box;
        margin: 0 0 20px;
        padding: 15px;
        position: relative;
        text-align: right;
    }

    #cart_table  tbody td.thumbnail {
        float: left;
        margin: 0 10px 0 0;
        width: 70px!important;
    }

    #cart_table  tbody td.productname {
        font-size: 0.9rem;
        font-weight: 700;
        padding: 0 0 10px;
    }

    #cart_table  tbody td.unitprice {
        clear: both;
    }

    #cart_table  tbody td.unitprice,
    #cart_table  tbody td.quantity {
        display: inline-block!important;
        vertical-align: baseline;
        width: auto!important;
    }

    #cart_table  tbody td.unitprice,
    #cart_table  tbody td.quantity {
        font-size: 0.85rem;
        padding: 0 0 15px 15px;
    }

    #cart_table  tbody td.subtotal {
        font-size: 1.1rem;
        font-weight: 700;
        text-align: right;
        padding: 0 0 5px 15px;
    }

    #cart_table  tbody td.unitprice::before {
        content: "単価：";
    }

    #cart_table  tbody td.quantity::before {
        content: "数量：";
    }

    #cart_table  tbody td.subtotal::before {
        content: "金額（税別）： ";
        font-size: 0.8rem;
    }
    
    #cart_table  tbody td.action {
        bottom: 16px;
        left: 16px;
        position: absolute;
    }

    #cart_table  tbody td.action .delButton {
        font-size: 0.9rem!important;
        padding: 5px 10px!important;
    }
    
}





/*---- cart_price ---*/

#cart_price {
    margin: 0 0 0 auto;
    max-width: 270px;
}

#cart_price dt {
    float: left;
    padding: 0 0 0 10px;
}

#cart_price dt.total {
    float: left;
    padding: 5px 0 0 10px;
}

#cart_price dd {
    border-bottom: #ddd 1px solid;
    margin: 0 0 15px;
    padding: 0 10px 15px 100px;
    text-align: right;
}

#cart_price dd.total {
    font-size: 1.4rem;
    font-weight: 700;
}

@media screen and (max-width: 768px) {
}





/*---- customer-info ---*/

#customer-info h5 {
    line-height: 1.6;
    padding: 20px 0 15px;
}

.customer_form td {
    padding: 15px 20px!important;
}

.customer_form #zipcode_row input {
    margin: 0 10px 0 0!important;
}

.settlement_form {
    font-family: "Noto Sans JP";
    font-size: 0.95rem;
    line-height: 1.5;
}

.settlement_form th {
    white-space: nowrap;
}

.settlement_form td input,
.settlement_form td select {
    margin: 0 10px 0 0;
}

.settlement_form td#cardno {
    margin: 0 10px 10px 0;
}

@media screen and (max-width: 768px) {

    .customer_form {
        border: #ddd 1px solid!important;
        border-bottom: none!important;
        font-size: 0.95rem;
        line-height: 1.5;
        margin: 0 0 20px;
    }

    .customer_form tr {
        border-bottom: #ddd 1px solid;
        margin: 0;
        padding: 0;
    }

    .customer_form th {
        background: #f5f5f5!important;
        margin: 0;
        padding: 15px!important;
    }

    .customer_form td {
        padding: 15px!important;
    }

    .customer_form #name_row td,
    .customer_form #furikana_row td {
        box-sizing: border-box;
        padding: 15px 0 15px 15px!important;
        width: 50%!important;
    }

    .customer_form #name_row td:nth-child(3),
    .customer_form #furikana_row td:nth-child(3) {
        padding: 15px 15px 15px 0!important;
    }

    .customer_form #loginmail,
    .customer_form #mailaddress1,
    .customer_form #mailaddress2 {
        box-sizing: border-box;
        width: 100%!important;
    }

    .customer_form #zipcode_row input,
    .customer_form #tel_row input,
    .customer_form #fax_row input,
    .customer_form #address1_row input,
    .customer_form #address2_row input,
    .customer_form #address3_row input {
        box-sizing: border-box;
        width: 100%;
        display: block;
        margin: 0 0 10px!important;
    }
    
    input[name="customer[password1]"],
    input[name="customer[password2]"] {
        margin: 0 0 10px;
    }

    .settlement_form td input {
        display: block;
        margin: 0 0 10px;
    }

}





/*---- customer-info ---*/

#confirm_table {
    margin: 0 0 40px;
}

#confirm_table th,
#confirm_table td {
    padding: 15px 20px;
}

#confirm_table .ttl td {
    background: none!important;
    border: none;
    font-size: 1.2rem;
    padding: 50px 0 20px;
}

@media screen and (max-width: 768px) {

    #confirm_table {
        font-size: 0.9rem;
    }

    #confirm_table th {
        padding: 15px;
        white-space: nowrap;
    }

    #confirm_table td {
        padding: 15px;
        line-height: 1.6;
    }

}





/*---- customer-info ---*/

#cart_completion {
    padding: 0 0 50px!important;
}





/*---- memberpages ---*/

#memberinfo h3 {
    font-size: 1.2rem;
    line-height: 1.6;
    padding: 0 0 10px;
}

#memberinfo .currency_code {
    display: none;
}

#memberinfo .history-area {
    max-height: none;
    margin-bottom: 50px;
    padding: 0;
    overflow-y: auto;
    border-top: none;
    border-bottom: 1px none;	
}

#memberpages .customer_form {
    margin: 0 0 30px;
}

@media screen and (max-width: 768px) {

    #memberpages .member_submenu {
        margin: 0 0 50px;
    }

    #memberinfo .history-area {
        margin-bottom: 20px;
    }

}





/*---- memberpages ---*/

#newmember .header_explanation {
    font-size: 0.95rem;
    line-height: 1.8;
}





/*---- loginbox ---*/

.loginbox {
    padding: 0!important;
}

.loginbox .submit {
    text-align: center!important;
}

.loginbox #nav {
    text-align: center!important;
}

.loginbox p {
    padding: 0 0 10px;
}

#member_login,
input[name="changepassword"] {
    box-sizing: border-box;
    width: 100%;
}

.new-entry {
    background: none!important;
    border: #ccc 1px solid;
    margin: 60px 0 0!important;
    padding: 30px 20px 20px!important;
    text-align: center;
}

.new-entry h2 {
    font-size: 1.1rem;
    color: #1265CB;
    padding: 0 0 5px;
}

.new-entry a {
    background: #1265CB!important;
}

.error_message {
    box-sizing: border-box;
    line-height: 1.6;
    font-size: 0.95rem;
    padding: 0 0 20px;
    width: 100%!important;
}