.cart_tax {
    font-size:14px;
}

.cart .sub_main_box {
    width: 1058px;
}

.cart setcion.main_sec {
    padding-bottom: 100px;
}

.cart_step_wrap {
    display: flex;
    align-items: flex-start;
    width: 780px;
    margin: auto;
    margin-bottom: 24px;
    justify-content: space-between;
    position: relative;
}

.cart_step_num {
    margin: auto;
    width: 42px;
    height: 42px;
    background: #CCCCCC;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    margin-bottom: 8px;
}

.cart_step_item {
    text-align: center;
    width: 88px;
    position:relative;
}

.cart_step_text {
    font-size: 12px;
    font-weight: bold;
    color: #163962;
}

.cart_step_item.active .cart_step_num {
    background: #163962;
}

.cart_step_wrap:before {
    content: "";
    width: calc(100% - 80px);
    height: 2px;
    background: #CCCCCC;
    position: absolute;
    top: 20px;
    left: 41px;
}

.cart_total_text {
    text-align: center;
    font-size: 16px;
    margin-bottom: 64px;
    font-weight: 500;
}

.cart_total_text span {
    font-weight: bold;
}

.cart_main {
    width: 100%;
    margin: auto;
    margin-bottom: 70px;
}

.cart_staff_order_wrap {
    margin-bottom: 37px;
}

.cart_staff_order_wrap:last-child {
    margin-bottom: 0;
}

.cso_name {
    font-size: 16px;
    font-weight: bold;
    position: relative;
    margin-bottom: 12px;
    margin-left:15px;
}

.cso_name:before {
    content: "";
    border: 6px solid transparent;
    border-top: 10px solid #333;
    position: absolute;
    top: 5px;
    left: -15px;
    bottom: 0;
    margin: auto;
}

table.cso_table {
    width: 100%;
    margin-bottom: 21px;
}

table.cso_table thead tr {
    background: #F3F3F3;
    text-align: center;
}

table.cso_table thead th {
    padding: 18px 0;
    font-size: 14px;
    font-weight: bold;
    color: #525263;
}

table.cso_table thead th:nth-child(1) {
    width: 66px;
}

table.cso_table thead th:nth-child(2) {
    width: 498px;
}

table.cso_table thead th:nth-child(3) {
    width: 138px;
}

table.cso_table thead th:nth-child(4) {
    width: 138px;
}

img.delete_img {
    width: 16px;
}

img.csoi_img {
    margin-right: 10px;
    object-fit: contain;
    width: 90px;
    height: 90px;
    padding: 10px;
}

table.cso_table tbody td:nth-child(2) {
    display: flex;
    align-items: center;
}

.csoi_title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 12px;
}

.csoi_jan {
    color: #525263;
    font-size: 12px;
}

.csoi_num {
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 11px;
}

.csoi_count_wrap {
    display: flex;
    width: 70px;
    justify-content: space-between;
    margin: auto;
}

img.csoi_btn {
    width: 30px;
}

table.cso_table tbody td {
    vertical-align: middle;
    text-align: center;
    padding: 8px 0;
}

.csoi_box {
    text-align: left;
}

.csoi_price {
    font-size: 16px;
    font-weight: 500;
    text-align: right;
    padding-right: 8px;
}

table.cso_table tbody tr {
    border-bottom: 1px dotted #CCCCCC;
}

.cart_footer_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cart_total_price_wrap {
    display: flex;
    align-items: center;
}

.ec-cartRole .ec-blockBtn--action {
    margin-bottom: 0;
}

.cso_total_price_wrap {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.cso_total_price_title {
    font-size: 16px;
    font-weight: bold;
    margin-right: 30px;
}

.cso_total_price {
    font-size: 24px;
    font-weight: bold;
    color: #D83A42;
}

.cart_btn_wrap {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.buy_more {
    padding: 15px 0;
    width: 250px;
    margin-right: 15px;
    height: auto;
    line-height: normal;
}

.checkout {
    padding: 15px 0;
    width: 250px;
    height: auto;
    line-height: normal;
}

/* confirm */
.confirm_main {
    margin-top: 60px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.confirm_content_wrap {
    width: 696px;
}

.confirm_content_box {
    margin-bottom: 35px;
}

h3.confirm_h3 {
    font-size: 20px;
    font-weight: bold;
    padding: 8px 12px;
    background: #F3F3F3;
    margin-bottom: 20px;
    color: #525263;
}

.confirm_text {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 6px;
}

.confirm_staff_order_wrap {
    padding-top: 20px;
    padding-bottom: 15px;
}

.ccso_name {
    font-size: 16px;
    font-weight: bold;
    position: relative;
    margin-bottom: 24px;
    padding-left: 18px;
}

.ccso_name:before {
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    bottom: 0;
    margin: auto;
    border: 6px solid transparent;
    border-top: 10px solid #333;
}

.ccso_content {
    display: flex;
    align-items: center;
}

img.ccso_img {
    width: 100px;
    margin-right: 35px;
}

.ccso_title {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 8px;
}

.ccso_price_wrap {
    font-size: 16px;
    font-weight: 500;
}

.ec-orderRole__summary.confirm_checkout_wrap,.confirm_checkout_wrap {
    width: 330px;
    padding: 16px;
    background: #F3F3F3;
    box-sizing: border-box;
}

.ec-orderAccount .ec-rectHeading h2 {
    margin-top: 0;
}

.cc_head {
    border-bottom: 1px dotted #CCCCCC;
    margin-bottom: 10px;
}

.cc_price_wrap {
    margin-bottom: 10px;
}

.cc_price_wrap {
    display: flex;
    justify-content: space-between;
}

.ccp_title {
    font-size: 16px;
    font-weight: 500;
}

.ccp_price {
    font-size: 16px;
    color: #525263;
    font-family: 游ゴシック;
}

.cc_price_wrap:nth-child(3) .ccp_price {
    color: #333333;
    font-family: 'Noto Sans JP';
}

.cc_body {
    text-align: right;
    margin-bottom: 30px;
}

.ccb_total_price1 {
    margin-bottom: 6px;
    font-size: 14px;
    font-weight: bold;
}

.ccb_total_price1 span {
    font-size: 24px;
    margin-left: 10px;
    margin-right: 6px;
}

.ccb_total_tax {
    font-family: 游ゴシック;
    margin-bottom: 20px;
    font-size: 16px;
    font-weight: 500;
    color: #525263;
}

.ccb_total_price2 {
    margin-top:15px;
    margin-bottom: 30px;
    font-size: 14px;
    font-weight: bold;
}

.ccb_total_price2 span {
    font-size: 24px;
    margin-left: 10px;
    margin-right: 6px;
    color: #D83A42;
}

.cc_end {
    width: 100%;
    margin-bottom: 12px;
    padding: 16px 0;
}

.cc_back {
    width: 100%;
    padding: 16px 0;
}

/* complete */
.complete_main {
    margin-top: 60px;
}

h2.h2_2 {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 35px;
}

.complete_main p {
    font-size: 14px;
    width: 548px;
    margin: auto;
    margin-bottom: 60px;
    text-align: center;
}

.complete_num {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 30px;
}

.complete_main {
    margin-top: 60px;
    text-align: center;
}

a.comp_btn {
    width: 182px;
    margin: auto;
}

.ec-blockBtn--action:hover,.ec-blockBtn--action:active,.ec-blockBtn--action:focus,.ec-blockBtn--action:active:focus  {
    color: #fff;
    background: #082D59;
    border: 1px solid #082D59;
    opacity: 0.8;
    box-shadow:none;
}

.ec-blockBtn--cancel:hover,.ec-blockBtn--cancel:active,.ec-blockBtn--cancel:focus,.ec-blockBtn--cancel:active:focus {
    background: #082D59;
    border: 1px solid #082D59;
    color: #fff;
    box-shadow:none;
    opacity:0.8;
}

label.ec_oo_radio_label {
    display: block;
    margin-bottom: 10px;
}

.ec_oo_radio_label span {
    margin-left: 10px;
}