@charset "UTF-8";
/* ===================================================================
CSS information
 URL：/systems/cart/*
 説明：カート画面CSS
=================================================================== */
/* 共通のh3 */
section.cart h3 {
    margin: 0 0 30px 0;
}
/* レイアウト編集の枠 */
section.cart .layout_content {
    margin: 0 0 30px 0;
}

/*----------------------------------------------------
    カート画面のステップ
    URL：/systems/cart/*
----------------------------------------------------*/
#in2cart_flow_navi {
    margin: 10px 0 30px;
    overflow: hidden;
    clear: both;
}
#in2cart_flow_navi ul {
    overflow: hidden;
}
#in2cart_flow_navi ul li {
    float: left;
    width: 22%;
    text-align: center;
    font-size: 1.2em;
    padding: 10px 0;
    color: #ccc;
}
#in2cart_flow_navi ul li.arrow {
    padding: 0;
}
#in2cart_flow_navi ul li span {
    font-size: 0.7em;
    background-color: #ccc;
    border-radius: 50px;
    color: #ffffff;
    padding: 0 5px;
    margin: 0 auto;
    display: block;
    width: 60px;
}
#in2cart_flow_navi ul li.active {
    color: #434343;
    font-weight: bold;
    border-top: 1px solid #434343;
    border-bottom: 1px solid #434343;
}
#in2cart_flow_navi ul li.active a {
    color: #014996;
}
#in2cart_flow_navi ul li.active span {
    background-color: #434343;
}
#in2cart_flow_navi ul li.active i {
    color: #434343;
}
/*完了*/
#in2cart_flow_navi ul li.success {
    background-color: #ffffff;
    color: #014996;
    font-weight: bold;
    border-top: 1px solid #222;
    border-bottom: 1px solid #222;
}
#in2cart_flow_navi ul li.success a {
    color: #1d3994;
    display: block;
}
#in2cart_flow_navi ul li.success a:hover {
    text-decoration: underline;
}
#in2cart_flow_navi ul li.success span {
    background-color: #1d3994;
}
/*未完了*/
#in2cart_flow_navi ul li.arrow {
    color: #434343;
    background-color: #ffffff;
    width: 4%;
    border: none;
}
#in2cart_flow_navi ul li.arrow i {
    line-height: 70px;
    font-size: 1.5em;
    color: #000;
}
#in2cart_flow_navi ul li.not {
    background-color: #ffffff;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
#in2cart_flow_navi ul li.success i,
#in2cart_flow_navi ul li.active i,
#in2cart_flow_navi ul li.not i {
    margin: 0 5px 0 0;
}

/*----------------------------------------------------
    カート画面
    URL：/systems/cart/
----------------------------------------------------*/
/* タイトル */
.cart-top h3 span {
    font-size: 1rem;
    float: right;
    position: relative;
    top: 10px;
}
/*カートが空の場合*/
.cart-top .no-cart-message {
    border: 3px solid #ccc;
    border-radius: 5px;
    padding: 20% 0;
    margin: 20px 0 0 0;
    text-align: center;
    font-weight: bold;
}
/* 同梱チェック */
.cart-top .combine-message {
    margin: 0 0 10px 0;
}
.cart-top .combine-check {
    margin: 0 0 20px 0;
}
.cart-top .combine-check p {
    margin: 0 0 60px 17px;
}
.cart-top .combine-check label {
    font-weight: bold;
}
.cart-top .combine-check label input[type="checkbox"] {
    margin: 0 5px 0 0;
    position: relative;
    top: -1px;
}
.cart-top .combine-check label span {
    color: #d4145a;
    font-weight: bold;
}
/* 商品代金合計 */
.cart-top .cart_total_box {
    overflow: hidden;
    background-color: #fcf9e1;
    margin: 10px 0 0 0;
    padding: 10px;
}
.cart-top .cart_total_box dl {
    overflow: hidden;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    float: right;
    clear: both;
}
.cart-top .cart_total_box dl dt {
    font-size: 1rem;
    width: 180px;
}
.cart-top .cart_total_box dl dd {
    width: 185px;
    text-align: right;
}
.cart-top .cart_total_box dl.total dt {
    font-weight: bold;
    font-size: 1.2rem;
}
.cart-top .cart_total_box dl.total dd {
    font-size: 1.5rem;
    color: #c03061;
}
/* メインのカートレイアウト */
.cart-top .cart_box_gawa {
    padding: 30px 0;
    border-bottom: 1px solid #cccccc;
}
.cart-top .cart_box_gawa:last-child {
    border-bottom: none;
    margin: 0 0 60px 0;
}
.cart-top .cart_box_gawa.combine:first-child {
    border-top: 1px solid #cccccc;
}
.cart-top .cart_box_mini .menu {
    text-align: right;
    margin: 0 0 10px 0;
}
.cart-top .cart_box_mini .menu a {
    margin: 0 10px 0 0;
}
.cart-top .cart_box_mini .menu a:last-child {
    margin-right: 0;
}
.cart-top .cart_box_mini .item-no {
    display: block;
    padding: 3px 10px;
    color: #222222;
    background-color: #c0c0c0;
    border-radius: 5px;
    width: 100px;
    text-align: center;
    margin: 0 0 10px 0;
}
.cart-top .cart_box_mini {
    display: flex;
    justify-content: space-between;
    position: relative;
}
/* カート商品にエラーがある場合 */
.cart-top .cart_box_mini .item-error {
    border: 3px dashed #dd2727;
    background-color: #ffe6e6;
    margin: 0 0 20px 0;
    padding: 10px;
    display: block;
}
/* サムネイル画像 */
.cart-top .cart_box_mini .cart_box_item {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 68%;
}

.cart-top .cart_box_mini .cart_box_item .detail {
    width: 400px;
}

.cart-top .cart_box_mini .cart_box_item .image {
    width: 120px;
    height: 120px;
    margin: 0 20px 0 0;
    padding: 10px;
    background-color: #eeeeee;
}
.cart-top .cart_box_mini .cart_box_item .image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.cart-top .cart_box_mini .cart_box_item .detail-image {
    width: 70%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* 在庫(在庫数30以下) */
.cart-top .cart_box_mini .cart_box_item .stock.warning {
    color: red;
}
/* 同梱で料金が変わっている場合 */
.cart-top .cart_box_mini .change-price {
    color: red;
}
/* 商品名(キャンセルの場合) ※各種共通 */
.cart-top span.cart_item_cancel {
    background-color: #bc0edb;
    color: #ffffff;
    border-radius: 5px;
    padding: 1px 15px;
    font-size: 0.9rem;
    margin: 0 10px 0 0;
}
/* 料金 */
.cart-top .cart_box_price {
    text-align: right;
    width: 32%;
}
.cart-top .cart_box_price dl {
    overflow: hidden;
}
.cart-top .cart_box_price dt {
    float: left;
    width: 70%;
    text-align: left;
}
.cart-top .cart_box_price dd {
    float: left;
    width: 30%;
    text-align: right;
}

/* 
品名
--------------------------------- */
/* 品名 */
.cart-top .product_name_box {
    margin: 0 0 20px 0;
}
.cart-top .product_name_box .error-box {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.cart-top .product_name_box .error-box .message {
    color: red;
    font-weight: bold;
    font-size: 1rem;
}

/* 
月締め会員の「お見積書」と「ご購入手続きへ」のボタンレイアウト
--------------------------------- */
.cart-top .btn-payment-month-box {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin: 20px 0 0 0;
}
@media screen and (max-width: 480px) {
    .cart-top .btn-payment-month-box .buy .btn {
        padding: 5px 10px;
        font-size: 1rem;
    }
}
@media screen and (min-width: 600px) and (max-width: 1024px) {
    .cart-top .btn-payment-month-box {
        /* 「お見積書」を下に配置したいため、「お見積書」と「ご購入手続きへ」位置を逆にする */
        flex-direction: column-reverse;
    }
    .cart-top .btn-payment-month-box .buy {
        margin: 0 0 10px 0;
    }
}

/*----------------------------------------------------
    カートSTEP1
    URL：/systems/cart_step1/
----------------------------------------------------*/
#form_step1_login {
    margin: 0 0 20px 0;
}
#form_step1_login input[type="checkbox"] {
    margin: 0 10px 1px 0;
}
#form_step1_login .auto_login {
    text-align: center;
}

/*----------------------------------------------------
    カートSTEP2配送先
    URL：/systems/cart_step2/
----------------------------------------------------*/
.cart-step2 .address-content {
    margin: 0 0 60px 0;
}
/* エラー文章 */
.cart-step2 .address-content .error {
    color: red;
}
/* 配送方法 */
.cart-step2 .delivery-method-box {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 30px 0;
}
.cart-step2 .delivery-method-box dl {
    width: 50%;
}
.cart-step2 .delivery-method-box dl {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.cart-step2 .delivery-method-box dl dt {
    width: 20%;
}
.cart-step2 .delivery-method-box dl dd {
    width: 80%;
    padding: 0 20px 0 0;
}
/* 左側、住所（枠） */
.cart-step2 .address-box {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #cccccc;
    border-left: 1px solid #cccccc;
    border-right: 1px solid #cccccc;
}
.cart-step2 .address-box:last-child {
    border-bottom: 1px solid #cccccc;
}
.cart-step2 .address-box > div {
    width: 50%;
    padding: 20px;
}
/* 住所（お届け先と荷主） */
.cart-step2 .address-box .address-list .title {
    margin: 0 10px 10px 0;
}
.cart-step2 .address-box .address-list .text {
    padding: 10px;
    background-color: #f3f3f3;
    border-radius: 5px;
    margin: 0 0 20px 0;
}
/* 右側、内訳 */
.cart-step2 .address-box .number-list .title {
    padding: 0 10px 10px 10px;
    border-bottom: 1px solid #cccccc;
    margin: 0 0 10px 0;
}
/* 右側、品名と数量 */
.cart-step2 .address-box .number-list .inner {
    border-bottom: 1px solid #cccccc;
    padding: 10px 0;
}
/* 商品No */
.cart-step2 .address-box .number-list .item-no {
    display: block;
    padding: 3px 10px;
    color: #222222;
    background-color: #c0c0c0;
    border-radius: 5px;
    width: 100px;
    text-align: center;
    margin: 10px 0 0 0;
}
.cart-step2 .address-box .number-list dl {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.cart-step2 .address-box .number-list dl.product-name {
    margin: 0 0 10px 0;
}
.cart-step2 .address-box .number-list dl dt {
    width: 15%;
    padding: 0 0 0 10px;
}
.cart-step2 .address-box .number-list dl dd {
    width: 85%;
}
.cart-step2 .address-box .number-list dl dd input[type="tel"] {
    width: 80px;
}
/* 品名 */
.cart-step2 .address-box .number-list dl.product-name dd span {
    margin: 0 10px 0 0;
}
/* お届け先を追加ボタン */
.cart-step2 .add-delivery-box {
    display: block;
    background-color: #e4e4e4;
    text-align: center;
    padding: 20px 0;
    margin: 30px 0 30px 0;
    width: 50%;
    color: #222222;
    font-size: 1.3rem;
}
.cart-step2 .add-delivery-box:hover {
    opacity: 0.7;
    text-decoration: none;
}
/* 「次へ」のサブミットボタンの制御 */
#step2_form #btnSubmit.disabled {
    cursor: not-allowed;
    background-color: #c0c0c0;
}

/* 
商品詳細のモーダル
-------------- */
#modalItemDetailBody .inner {
    padding: 10px;
    background-color: #f3f3f3;
    border-radius: 5px;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
}
#modalItemDetailBody .inner .item {
    width: 65%;
}
#modalItemDetailBody .inner .price {
    width: 35%;
}
#modalItemDetailBody .inner .price dl {
    /* overflow: hidden; */
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
#modalItemDetailBody .inner .price dl dt {
    text-align: left;
    width: 65%;
}
#modalItemDetailBody .inner .price dl dd {
    text-align: right;
    width: 35%;
}
.download_link p {
    padding: 10px;
    border: 1px dashed #cccccc;
    margin: 10px 0 0 0;
}
.download_link p a {
    color: #036eb8;
}
.download_link p a.delete {
    margin: 0 0 0 10px;
}

/* 荷主のモーダル */
.modaal_body .shipper_list {
    margin: 20px 0;
    overflow: hidden;
}
.modaal_body .shipper_list dt {
    float: left;
}
.modaal_body .shipper_list dt input[type="radio"] {
    position: relative;
    top: -2px;
    margin: 0;
    z-index: 10;
}
.modaal_body .shipper_list dd {
    text-align: left;
    padding-left: 1.5rem;
}
.modaal_body .shipper_list dd label {
    cursor: pointer;
}
.modaal_body .shipper_list dd .dd_other a {
    margin: 0 0 0 10px;
    color: #036eb8;
}

/* カード形式のお届け先 */
.delivery_card_list {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
.delivery_card_list .delivery_card {
    width: 32.5%;
    margin: 0 10px 10px 0;
}
.delivery_card_list .delivery_card:nth-child(3n) {
    margin-right: 0;
}
.delivery_card {
    width: 100%;
    border-radius: 5px;
    background-color: #f3f3f3;
    padding: 10px;
    text-align: left;
}
.delivery_card .address {
    overflow: hidden;
}
.delivery_card .address .inner {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* 新規追加 */
.delivery_card.regist {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
    align-items: center; /* 縦方向中央揃え */
    -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
    justify-content: center; /* 横方向中央揃え */
    cursor: pointer;
}
.delivery_card.regist:hover {
    opacity: 0.7;
}
.delivery_card.regist i {
    margin: 0 10px 0 0;
}

/* ボタン */
.delivery_card .menu .btn_box {
    margin: 10px 0 0 0;
}
.delivery_card .button_default {
    font-weight: normal;
}
.delivery_card .button_delete {
    font-weight: normal;
    margin: 6px 0 0 0;
}
.btn-delivery {
    background: #c03061;
    color: #ffffff !important;
    padding: 10px 0;
    border-radius: 3px;
    width: 100%;
    margin: 10px 0 0 0;
    display: block;
    text-align: center;
}
.btn-delivery:hover {
    opacity: 0.7;
    text-decoration: none;
}
.btn-delivery.select {
    background-color: #c4c4c4;
    color: #747474 !important;
    cursor: not-allowed;
}

/*----------------------------------------------------
	カートSTEP3支払方法&商品情報
    URL：/systems/cart_step3/
----------------------------------------------------*/
.step3ItemBox h3 a {
    font-size: 1.2rem;
    margin: 0 0 0 10px;
}
.step3ItemBox .item_detail_layout {
    margin: 0 0 60px 0;
}
.payment_box {
    margin: 10px 0 20px 0;
}
#cart_confirm_payment_method dt div.cash_delivery-error {
    padding-left: 1.5rem;
}
#cart_confirm_payment_method dt {
    padding: 20px 10px 0 10px;
}
#cart_confirm_payment_method dt input {
    margin: 0 10px 0 0;
    position: relative;
    top: -2px;
}
#cart_confirm_payment_method dd {
    padding: 5px 10px 20px 34px;
    border-bottom: 1px dashed #ccc;
}
#cart_confirm_payment_method dd:last-child {
    border-bottom: none;
}
#cart_confirm_payment_method dt label,
#cart_confirm_payment_method dd label {
    cursor: pointer;
}
#cart_confirm_payment_method dt.bk-gray > label {
    cursor: not-allowed;
}
#cart_confirm_payment_method dd label img {
    max-width: 100%;
}
.payment_method_box {
    display: none;
    margin: 10px 0 0 0;
}
/* ヤマトのクレジット系で利用 */
#cart_confirm_payment_method dd table td {
    background-color: #ffffff;
}

/* 選択している支払方法 */
#cart_confirm_payment_method dt.on,
#cart_confirm_payment_method dd.on {
    background-color: #f3f3f3;
}

/*代引き手数料のラベル*/
.lbl_cash_delivery {
    margin: 0 0 10px 0;
    height: 20px;
    line-height: 20px;
}
.lbl_cash_delivery input[type="radio"] {
    margin: 0 10px 4px 0;
    vertical-align: middle;
}

/* ---------------- */
/* ヤマトWebコレクト、リピーター決済 */
/* ---------------- */
/* お預かり情報で決済の場合 */
.payment_method_box .payment_card {
    font-weight: bold;
    padding: 5px;
    background-color: #f2f2f2;
    display: inline-block;
}
.payment_method_box .payment_card .repeater_secure_code {
    font-weight: bold;
    margin: 5px 0 0 0;
}
.payment_method_box .payment_card .repeater_secure_code input {
    width: 120px;
}
/* ZEUSクレジットの3Dセキュア用情報表示欄 */
#\33 dscontainer {
    height: 500px;
}

/*----------------------------------------------------
    商品詳細
    URL：/systems/cart_step+/
    URL：/mypages/+
----------------------------------------------------*/
.item_detail_layout {
    margin: 0 0 20px 0;
    background-color: #f3f3f3;
    padding: 30px 10px;
    border-radius: 5px;
}
/* 商品No */
.item_detail_layout .detail_box .item_box .item-no {
    display: block;
    padding: 3px 10px;
    color: #222222;
    background-color: #c0c0c0;
    border-radius: 5px;
    width: 100px;
    text-align: center;
    margin: 0 0 10px 0;
}
/* マイページ、注文履歴の場合の該当商品 */
.item_detail_layout.my-order {
    background-color: #ffeedd;
}
.item_detail_layout.my-order .icon-my-order {
    background-color: #f57c00;
    text-align: center;
    font-weight: bold;
    padding: 10px 0;
    margin: 0 0 20px 0;
    border-radius: 5px;
}
/* 商品情報 */
.item_detail_layout > .detail_box {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
.item_detail_layout > .detail_box .item_box {
    width: 66%;
}
/* 商品No */
.item_detail_layout > .detail_box .item_box .item-no {
    display: block;
    padding: 3px 10px;
    color: #222222;
    background-color: #c0c0c0;
    border-radius: 5px;
    width: 100px;
    text-align: center;
    margin: 0 0 10px 0;
}
/* 商品情報(取消の場合) */
.item_detail_layout > .detail_box.cancel {
    color: #cccccc;
}
/* 物販画像 */
.item_detail_layout .item_box {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    width: 70%;
}
.item_detail_layout .item_box .image {
    width: 120px;
    height: 120px;
    margin: 0 20px 0 0;
    padding: 10px;
    background-color: #eeeeee;
}
.item_detail_layout .item_box .image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.item_detail_layout .item_box .detail-image {
    width: 66%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* 在庫 */
.item_detail_layout .item_box .stock {
    display: inline-block;
    margin: 0 0 0 10px;
}
/* 在庫(在庫数30以下) */
.item_detail_layout .item_box .stock.warning {
    color: red;
}

/* 料金情報 */
.item_detail_layout > .detail_box .price_box {
    width: 33%;
}
.item_detail_layout > .detail_box .price_box .price_list li {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
.item_detail_layout > .detail_box .price_box .price_list li .title {
    width: 65%;
    text-align: left;
    display: block;
}
.item_detail_layout > .detail_box .price_box .price_list li .detail {
    width: 35%;
    text-align: right;
    display: block;
}

/* ODサムネイル */
.item_detail_layout > .detail_box .price_box .thumbnail_box {
    width: 80px;
    float: right;
}

/* お届け先詳細のリンク */
/* .item_detail_layout > .detail_box .price_box .detail_link {
    text-align: right;
    margin: 10px 0 0 0;
}
.item_detail_layout > .detail_box .price_box .detail_link a {
    color: #036eb8;
} */

/* ポイント利用 */
.cart_point_box label {
    background-color: #696969;
    color: #ffffff;
    padding: 1px 5px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 0.9rem;
}
.cart_point_box label.on {
    background-color: #1787e4;
}
.cart_point_box label input[type="checkbox"] {
    margin: 0 10px 0 0;
    position: relative;
    top: -1px;
}
.cart_point_box .input_box {
    display: none;
    padding: 15px 0;
}
.cart_point_box .input_box input[type="number"] {
    width: 120px;
}
.cart_point_box .input_box .available {
    font-size: 0.8rem;
}

/* 獲得するポイント */
.cart_acquisition_point {
    text-align: right;
    font-size: 0.8rem;
    margin: 0 0 20px 0;
}

/* お届け先モーダル */
.cart_delivery_boxs h3 {
    border-bottom: 1px solid #c1c0c0;
    font-size: 1.2em;
    margin: 30px 0;
    text-align: left;
}
/* お届け先モーダル、お届け先（配送方法、納品日、納品時間） */
/* .cart_delivery_boxs .delivery_box {
    margin: 30px 0 0 0;
} */
.cart_delivery_boxs .delivery_box dl {
    overflow: hidden;
    margin: 0 0 10px 0;
}
.cart_delivery_boxs .delivery_box dt {
    float: left;
    width: 120px;
    text-align: left;
}
.cart_delivery_boxs .delivery_box dd {
    float: left;
}
/* 別途CSVリンク */
.cart_delivery_boxs .delivery_box dd .csv_link a {
    color: #036eb8;
    margin: 0 0 0 10px;
}
.cart_delivery_boxs p.sub_title {
    text-align: left;
}
.cart_delivery_boxs .delivery_flex {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
.cart_delivery_boxs .delivery_flex .wrap {
    width: 31%;
    margin: 0 30px 0 0;
}
.cart_delivery_boxs .delivery_flex .wrap:nth-child(3n) {
    margin-right: 0;
}
.cart_delivery_boxs .delivery_flex .wrap .text {
    text-align: left;
    padding: 10px;
    background-color: #f3f3f3;
    border-radius: 5px;
}
.cart_delivery_boxs .delivery_flex .wrap .more {
    display: block;
}
.cart_delivery_boxs .delivery_flex .wrap .text a {
    color: #036eb8;
    display: block;
}

/* 見積書のボタンボックス */
.step3_estimate_btn_box {
    margin: 10px 0 30px 0;
    text-align: right;
}

/* ---------------- */
/* 見積書モーダル */
/* ---------------- */
.modaal_body.estimate_box .error_message {
    display: none;
}
/* 説明文章 */
.modaal_body.estimate_box .text p {
    margin: 0 0 10px 0;
}
/* 入力項目 */
.modaal_body.estimate_box .form {
    width: 600px;
    margin: 0 auto 20px auto;
}
.modaal_body.estimate_box .form .atena textarea {
    min-height: 150px;
}
.modaal_body.estimate_box .form .atena_address {
    margin: 10px 0 0 0;
}
.modaal_body.estimate_box .form .atena_address dl {
    margin: 0 0 10px 0;
}
.modaal_body.estimate_box .form .atena_address dl dt {
    float: left;
    margin: 0 10px 0 0;
    position: relative;
    top: 5px;
    width: 110px;
    text-align: left;
}
.modaal_body.estimate_box .form .atena_address dl input {
    width: 80%;
}
.modaal_body.estimate_box .form .atena_address dl input.half {
    width: 39.5%;
}

/* ---------------- */
/* STEP3（B2B）、依頼者 */
/* ---------------- */
.step3_applicant_box {
    margin: 0 0 60px 0;
}
.step3_applicant_box dl dt {
    float: left;
    margin: 0 10px 0 0;
    position: relative;
    top: 6px;
}
.step3_applicant_box .addres_box {
    margin: 0 0 20px 0;
    padding: 0 0 20px 0;
    border-bottom: 1px solid #cccccc;
}
.step3_applicant_box .addres_box .column {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 20px 0;
}
.step3_applicant_box .addres_box .column .wrap {
    width: 50%;
}
/* 氏名、電話 */
.step3_applicant_box .addres_box .column .wrap .dl_name input[type="text"] {
    width: 40%;
}
.step3_applicant_box .addres_box .column .wrap .dl_tel input[type="text"] {
    width: 68%;
}
/* メールアドレス */
.step3_applicant_box .dl_email input[type="text"] {
    width: 33%;
}
/* 稟議書 */
.step3_applicant_box .dl_file dt {
    top: 13px;
}
/* 自由欄 */
.step3_applicant_box .other_box {
    margin: 20px 0 0 0;
}

/*----------------------------------------------------
    b2b、承認画面
    URL：/systems/approval/?qid=*
----------------------------------------------------*/
.approval_box .info {
    text-align: center;
}
.approval_box .user {
    overflow: hidden;
}
.approval_box .user li {
    float: left;
    margin: 0 30px 10px 0;
}
.approval_box .user li span:after {
    content: "：";
}
.approval_box .user li:last-child {
    margin-right: 0;
}
.approval_box .reason_box {
    width: 70%;
    margin: 30px auto 50px auto;
    text-align: center;
}
.approval_box .reason_box dt {
    float: left;
    position: relative;
    top: 5px;
}
.approval_box .reason_box dd select {
    width: 300px;
    margin: 0 0 0 30px;
}
.approval_box textarea {
    display: none;
    margin: 20px 0 0 0;
}

/* 稟議書、その他 */
.approval_box .other {
    margin: 20px 0 0 0;
}
.approval_box .other dt {
    font-weight: bold;
    margin: 0 0 5px 0;
}
.approval_box .other dd {
    padding: 30px 10px;
    background-color: #f3f3f3;
    border-radius: 5px;
}
/* 総合計 */
.approval_box .total-price-list {
    text-align: right;
}
.approval_box .total-price-list li .title {
    width: 220px;
    text-align: right;
    display: inline-block;
}
.approval_box .total-price-list li .detail {
    width: 150px;
    text-align: right;
    display: inline-block;
}
.approval_box .total-price-list li.total {
    font-weight: bold;
}
.approval_box .total-price-list li.total .detail {
    font-size: 1.5rem;
    color: #bf003f;
}

/*----------------------------------------------------
    入稿画面
    URL：/systems/cart_step4/
----------------------------------------------------*/
/* 商品情報 */
.cart-step4 .item-wrapper {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
.cart-step4 .item-wrapper .item_detail_layout {
    width: 50%;
}
/* 物販の場合は横幅いっぱに広げる */
.cart-step4 .item-wrapper .item_detail_layout.full {
    width: 100%;
}
.cart-step4 .item-wrapper .item_detail_layout .item_box {
    width: 100%;
}
.cart-step4 .item-wrapper .schedule-date-box {
    width: 50%;
    padding: 30px 10px;
}
.cart-step4 .item-wrapper .schedule-date-box .title a {
    color: #222222;
}
.cart-step4 .item-wrapper .schedule-date-box .date-limit {
    font-size: 1.5rem;
    color: #d4145a;
    font-weight: bold;
}
.cart-step4 .item-wrapper .schedule-date-box .shipping-date {
    margin: 20px 0 0 0;
}
.cart-step4 .item-wrapper .schedule-date-box .shipping-date a {
    margin: 0 0 0 20px;
}
/* 支払方法名 */
.cart-step4 .paymentMethod {
    margin: 0 0 30px 0;
}
/* 依頼者 */
.cart-step4 .request-user-box {
    margin: 0 0 30px 0;
}
.cart-step4 .info {
    overflow: hidden;
}
.cart-step4 .info dt {
    width: 25%;
    float: left;
    padding: 5px;
}
.cart-step4 .info dd {
    width: 75%;
    float: left;
    padding: 5px;
}

/* 
入稿レイアウト
マイページでも共通の為「cartStep4」では括らない
--------------------------- */
.draft_layout {
    margin: 0 0 60px 0;
}
.draft_layout .draft_content {
    display: none;
    margin: 30px 0 0 0;
}
.draft_layout .draft_type .help {
    margin: 0 0 0 5px;
}
.draft_layout .draft_type .help a {
    color: #222222;
}

/* 入稿種別 */
.draft_layout .draft_type dt {
    float: left;
    margin: 0 10px 0 0;
    position: relative;
    top: 4px;
}
.draft_layout .draft_type dd select {
    width: 330px;
}

/* ファイルアップロード */
.draft_layout .draft_upload .number_list {
    margin: 10px 0 0 0;
}
.draft_layout .draft_upload .number_list li {
    padding: 10px 0;
    border-bottom: 1px dashed #cccccc;
}
.draft_layout .draft_upload .number_list li input[type="text"] {
    width: 400px;
    margin: 0 40px 0 0;
}
.draft_layout .draft_upload .number_list li i {
    margin-right: 5px;
}

/* 外部ストレージ */
.draft_layout .draft_outside {
    border-top: 1px dashed #cccccc;
    border-bottom: 1px dashed #cccccc;
    padding: 20px 0;
}
.draft_layout .draft_outside ul {
    overflow: hidden;
}
.draft_layout .draft_outside ul li {
    float: left;
    margin: 0 20px 0 0;
}
.draft_layout .draft_outside ul li:first-child input {
    width: 500px;
}
.draft_layout .draft_outside ul li:last-child {
    margin-right: 0;
}
.draft_layout .draft_outside ul li:last-child input {
    width: 200px;
}

/* その他 */
.draft_layout .draft_other {
    border-top: 1px dashed #cccccc;
    border-bottom: 1px dashed #cccccc;
    padding: 20px 0;
}

/* 再入稿時のデータ不要メッセージ */
.draft_reorder_message {
    border: 3px dotted #dd2727;
    background-color: #ffe6e6;
    padding: 10px;
    margin: 0 0 20px 0;
}

/* 入稿なしメッセージ */
.nodraft_message {
    border: 3px dotted #dd2727;
    background-color: #ffe6e6;
    padding: 10px;
    margin: 0 0 60px 0;
}

/*----------------------------------------------------
    料金の合計欄
----------------------------------------------------*/
.total-price-box {
    margin: 0 0 10px auto;
    width: 350px;
}
.total-price-box li.point .cart_point_box {
    margin: 0 0 0 auto;
}
.total-price-box li {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
.total-price-box li .title {
    width: 48%;
    display: block;
    text-align: left;
}
.total-price-box li .detail {
    width: 52%;
    display: block;
    text-align: right;
}
.total-price-box li.total .title {
    font-size: 1.3rem;
    font-weight: bold;
}
.total-price-box li.total .detail {
    font-weight: bold;
    font-size: 1.5rem;
    color: #bf003f;
}
