@charset "UTF-8";

@media screen and (min-width: 769px) {
  /* ----注文方法指定画面---- */
  .page-method {
    margin-bottom: 0 !important;
  }
  
  .block-order-method--contents {
    display: flex;
    flex-direction: column;
  }
  
  .block-order-method--orderer {
    order: 1;
    margin: 0 0 60px;
  }

  .block-order-method h2 {
    font-size: 24px;
    padding: 0 0 12px;
  }
  
  .block-order-method--orderer-name {
    padding: 0;
  }

  .block-order-method dt {
    font-weight: bold;
  }
  
  .block-order-method--procedure-container {
    margin: 0;
  }

  .block-order-method--sales-append-container {
    padding: 0 10px 0 10px;
  }

  .block-order-method--dest-item,
  .block-order-method--dest-add {
    padding: 10px 0;
  }

  .block-order-method--promotion,
  .block-order-method--point-use,
  .block-order-method--payment-method,
  .block-order-method--coupon,
  .block-order-method--delivery-service,
  .block-order-method--date-spec,
  .block-order-method--time-spec,
  .block-order-method--regular-content,
  .block-regular-cycle--deliv_date {
    padding: 0 0 10px 0;
    border: none;
  }

  #method_point,
  #method_promotion,
  #method_coupon,
  #method_pay,
  #method_date,
  #method_salesappend_ {
    scroll-margin-top: 72px;
  }

  /* ご注文主 */
  .block-order-method--host-content .form-group,
  .block-order-method--dest-input .form-group {
    padding: 0;
  }

  .block-order-method--name .form-control,
  .block-order-method--kana .form-control {
    display: flex;
    flex-wrap: wrap;
    row-gap: 5px;
  }

  .block-order-method--name .block-order-method--value-label,
  .block-order-method--kana .block-order-method--value-label {
    display: inline-block;
    width: 60px;
    text-align: center;
  }

  .block-order-method--name input,
  .block-order-method--kana input {
    max-width: 200px;
  }

  /* お届け先 */
  .block-order-method--dest {
    order: 2;
  }
  
  .block-order-method--dest-item-nickname {
    font-weight: bold;
  }

  .block-order-method--dest-title-salesinclude {
    font-size: 16px;
    font-weight: bold;
  }
  
  .block-order-method--dest-item-title input {
    margin-right: 10px;
  }
  
  .btn.btn-default.block-order-method--delivery-address-add-btn {
    width: 232px;
  }

  /* お支払い情報 */
  .block-order-method--payment {
    order: 4;
    margin: 0 0 60px;
  }
  
  .block-order-method--current-point {
    margin: 0 0 10px 0;
  }

  .block-order-method--current-point-num {
    font-weight: bold;
  }

  .block-order-method--point-use-select {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 5px 20px;
    column-gap: 33px;
    border: 1px solid var(--responsive-sys-border-color-gray-secondary);
  }

  .block-order-method--point-use-select > li > label {
    margin: 0;
  }

  .block-order-method--coupon-content > input {
    margin: 0 14px 0 0;  
  }
  
  .block-order-method--coupon-content {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  
  .block-order-method--coupon-content p {
    width: 100%;
  }
  
  .btn.btn-default.block-order-method--coupon-available-btn {
    width: 270px;
    margin: 0;
  }

  /* 配送情報 */
  .block-order-method--delivery-datetime {
    order: 5;
    margin: 0 0 60px;
  }
  
  .block-order-method--date-spec,
  .block-order-method--time-spec {
    display: flex;
    align-items: center;
  }

  .block-order-method--date-spec.hidden,
  .block-order-method--time-spec-content.hidden {
    display: none;
  }

  .block-order-method--date-spec-title,
  .block-order-method--time-spec-title {
    width: 160px;
    margin: 0;
  }

  .block-order-method--date-spec-content,
  .block-order-method--time-spec-content {
    display: contents;
  }

  .block-order-method--date-spec-content > p,
  .block-order-method--time-spec-content > p {
    grid-column: 2 / 3;
  }

  .block-order-method--date-spec-content .help-block,
  .block-order-method--time-spec-content .help-block {
    margin: 0 0 0 15px;
  }

  .block-order-method--date-spec-content .form-error,
  .block-order-method--time-spec-content .form-error {
    grid-column: 1 / -1;  
    grid-row: 1 / 2;
  }

  .btn.block-order-method--next-btn {
    width: 280px;
  }

  /* 商品情報 */
  .block-order-method--goods {
    order: 3;
    margin: 0 0 60px;
  }
  
  .block-order-method--goods-list li {
    padding: 30px 0 40px;
  }
  
  .block-order-method--goods-item-detail {
    display: block;
    overflow: hidden;
  }
  
  .block-order-method--goods-item-image {
    float: left;
    width: 200px;
    margin: 0 40px 0 0;
  }

  .block-order-method--goods-item-image figure {
    width: 200px;
    height: 200px;
  }
  
  .block-order-method--goods-info {
    float: left;
    width: 900px;
  }
  
  .block-order-method--goods-name {
    margin: 0 0 15px;
  }
  
  .block-order-method-embroidery-setting {
    float: left;
    width: 645px;
    margin: 25px 0 0;
  }
  
  .block-order-method-embroidery-setting dd {
    font-size: 14px;
  }

  /* ラッピング・メッセージカード */
  .block-order-method--wrapping-list,
  .block-order-method--message-card-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }

  .block-order-method--wrapping-item,
  .block-order-method--message-card-item {
    display: inline-block;
    margin: 0 10px 10px 0;
    vertical-align: top;
    width: 150px;
  }

  .block-order-method--wrapping-price,
  .block-order-method--message-card-price {
    display: block;
  }

  .block-order-method--message-card-input {
    display: flex;
    align-items: center;
    gap: 16px;
  }

  .block-order-method--message-card-input dt {
    width: 120px;
    flex-shrink: 0;
  }

  .block-order-method--message-card-input dd {
    margin-left: 4em;
  }

  .block-order-method--message-card-input-textarea {
    width: 90%;
  }

  /* 注文拡張・注文明細拡張 */
  .block-order-method--sales-append-content .form-control input[type="text"],
  .block-order-method--sales-append-content .form-control select,
  .block-order-method--sales-detail-append-item .form-control input[type="text"],
  .block-order-method--sales-detail-append-item .form-control select {
    display: inline-block;
    width: 100%;
  }

  .block-order-method--sales-append-content .form-control select[name^="yy_"],
  .block-order-method--sales-append-content .form-control select[name^="mm_"],
  .block-order-method--sales-append-content .form-control select[name^="dd_"] {
    width: auto;
  }

  /* 定期明細追加 */
  .block-order-method--regular-add-list-detail {
    padding: 20px 10px;
    border-top: 1px solid var(--responsive-sys-border-color-gray-secondary);
    border-right: 1px solid var(--responsive-sys-border-color-gray-secondary);
    border-left: 1px solid var(--responsive-sys-border-color-gray-secondary);
    background: #fff;
  }

  .block-order-method--regular-add-list--list {
    display: grid;
    grid-template-columns: minmax(30%, 250px) minmax(40%, 335px);
    grid-template-rows: 1.5em auto;
    align-content: start;
    column-gap: 5px;
  }

  .block-order-method--regular-add-list--list dt {
    grid-row: 1 / 2;
  }

  .block-order-method--regular-add-list--list dd:first-of-type {
    grid-row: 2 / 3;
    padding: 0 0 0 25px;
  }

  .block-order-method--regular-add-list--list .block-order-method--regular-add-info {
    grid-row: 1 / 3;
    padding: 0;
    font-weight: bold;
  }

  /* ---- 商品購入規約 ---- */
  .block-goods-agreement .action-buttons {
    flex-direction: row-reverse;
  }

  /* ---- 注文内容確認(通常フロー) ---- */

  /* 画面内共通設定 */
  
  .block-order-estimate {
    padding: 0;
  }

  .block-order-estimate--container {
    display: grid;
    grid-template-columns: 1fr 274px;
    grid-template-rows: max-content auto;
    column-gap: 36px;
    row-gap: 20px;
  }

  .block-order-estimate--agreebody {
    font-size: inherit;
  }
  
  .block-order-estimate h2 {
    font-size: 24px;
    letter-spacing: 1.5px;
    padding: 0 0 15px;
    margin: 0 0 15px;
  }
  
  .block-order-estimate h2.block-order-estimate--dest-title,
  .block-order-estimate h2.block-order-estimate--orderer-title {
    font-size: 18px;
    padding: 0 0 10px;
  }

  /* 注文内容確認右サイドエリア */

  .block-order-estimate--side-area {
    display: block;
    grid-column: 2/3;
    grid-row: 1/-1;
  }

  .block-order-estimate--procedure {
    display: block;
    position: sticky;
    top: 115px;
    bottom: unset;
    left: unset;
    width: unset;
    padding: 20px;
    border: solid 1px #DDD;
    border-radius: 5px;
    background: #F8F8F8;
  }

  /* レイアウト詳細設定 */

  .block-order-estimate--commit {
    margin: 0;
    padding: 0;
  }

  .block-order-estimate--commit .action-buttons {
    margin: 0;
  }

  .block-order-estimate--commit .action-buttons .action {
    width: 100%;
  }

  .block-order-estimate--commit .action-buttons .action .btn {
    width: 100%;
    font-size: 15px;
    padding: 14px 10px;
  }

  .block-order-estimate--commit .action-buttons .action .btn-disable {
    width: 100%;
    font-size: 14px;
    font-weight: bold;
  }

  .block-order-estimate--commit .btn.block-order-estimate--return-agree {
    width: 100%;
    font-size: 12px;
    letter-spacing: 0;
    margin: 6px 0 0;
    padding: 8px 10px;
  }
  
  .block-order-estimate--agree-terms {
    font-size: 14px;
    font-weight: bold;
    margin: 12px 0;
    letter-spacing: 0;
  }
  
  .block-order-estimate--sales-delivery-comment {
    font-size: 14px;
    margin: 0 0 8px;
  }

  .block-order-estimate--entry {
    padding: 15px;
    margin: 20px 0 0;
    background: #FFF;
  }
  
  .block-order-estimate--entry-customer-message {
    margin: 8px 0 15px;
  }

  .block-order-estimate--pwd-label {
    margin: 0 0 5px
  }
  
  .block-order-estimate--mailnews-checkbox {
    font-size: 13px;
    font-feature-settings: 'palt';
  }
  
  .block-order-estimate--summary {
    margin: 0;
    padding: 0;
  }

  .block-order-estimate--price-head {
    background: #FFF;
    border: 1px solid #DDD;
    border-radius: 5px;
    padding: 12px 10px;
    margin: 10px -5px 8px;
    font-weight: bold;
  }

  .block-order-estimate--price-items dt,
  .block-order-estimate--price-items dd {
    width: auto;
    padding: 0;
  }

  .block-order-estimate--price-head dl {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 0;
    padding: 0;
    margin: 0 0 5px;
    letter-spacing: 0;
    font-feature-settings: 'palt';
  }
  
  .block-order-estimate--price-head dl:last-child {
    margin: 0;
  }
  
  .block-order-estimate--price-head dt {
    font-size: 13px;
  }

  .block-order-estimate--total dd {
    display: flex;
    align-items: baseline;
    font-size: 11px;
  }
  
  .block-order-estimate--total-price {
    font-size: 20px;
  }
  
  .block-order-estimate--point-add-message {
    font-size: 14px;
    margin: 0 0 15px;
  }

  .block-order-estimate--summary-content {
    border: none;
    background: transparent;
  }

  .block-order-estimate--point-add-num {
    font-size: 16px;
  }

  .block-order-estimate--promotion-novelty-content {
    font-size: 14px;
    letter-spacing: 0;
    margin: 10px -5px;
  }

  .block-order-estimate--side-area .fieldset-vertical div.block-order-estimate--mailnews {
    flex-direction: column;
    padding: 0;
    border: 0;
  }
  
  .block-order-estimate--subtotal {
    border-top: 2px dashed #DDD;
    margin: 13px 0 0;
    padding: 15px 0 0;
  }
  
  .block-order-estimate--price-items > dl {
    font-size: 14px;
    margin: 0 0 3px;
  }
  
  .block-order-estimate--price-items > dl:last-child {
    margin: 0;
  }

  /* ノベルティエリア */

  .block-order-estimate--novelty {
    grid-column: 1/2;
    grid-row: 1/2;
  }

  .block-order-estimate--novelty-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 10px;
  }

  /* 注文内容確認内容 */

  .block-order-estimate--content {
    display: flex;
    grid-column: 1/2;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .block-order-estimate--content > div {
    position: relative;
    width: 100%;
  }

  /* ブロック設定 */

  .block-order-estimate--orderer-content,
  .block-order-estimate--dest-content,
  .block-order-estimate--discount-info .block-order-estimate--point,
  .block-order-estimate--discount-info .block-order-estimate--promotion-code,
  .block-order-estimate--discount-info .block-order-estimate--coupon {
    display: block;
    width: 425px;
    padding: 0 0 20px 0;
  }
  
  .block-order-estimate--date-spec,
  .block-order-estimate--time-spec {
    position: relative;
    display: block;
    width: 425px;
    margin: 0 0 5px;
  }

  .block-order-estimate--date-spec h3,
  .block-order-estimate--time-spec h3 {
    font-size: 18px;
  }
  
  .block-order-estimate--date-spec h3 sup,
  .block-order-estimate--time-spec h3 sup {
    font-size: inherit;
  }

  .block-order-estimate--discount-info .block-order-estimate--promotion {
    padding: 0 0 20px 0;
    width: 425px;
  }
  
  .block-order-estimate--promotion-apply-message-list li:not(:last-child) {
    margin: 0 0 10px;
  }
  
  .block-order-estimate--discount-period {
    font-size: 14px;
    margin: 5px 0 0;
  }

  .block-order-estimate--date-spec-content,
  .block-order-estimate--method-pay-content {
    border: none;
  }

  .block-order-estimate--method-pay-content,
  .block-order-estimate--regular-cycle-content {
    padding-right: 0;
    padding-left: 0;
    border: none;
  }
  
  .block-order-estimate--confirmation-message .help-block {
    margin: 0;
    width: 100%;
  }

  /* ボタン位置設定 */
  
  .btn.btn-default.block-order-estimate--change-btn {
    position: absolute;
    top: -5px;
    right: 0;
    font-weight: 500;
  }

  .block-order-estimate--orderer-content .block-order-estimate--change-btn {
    top: -38px;
  }

  .block-order-estimate--dest .block-order-estimate--salesinclude-btn,
  .block-order-estimate--dest .block-order--amazonpay-btn {
    position: static;
  }

  .block-order-estimate--method-pay-content .block-order-estimate--change-btn {
    top: 14px;
  }

  .block-order-estimate--regular-cycle-confirmation .block-order-estimate--change-btn {
    top: 22px;
  }

  /* レイアウト詳細設定 */

  /* お届け先設定 */

  .block-order-estimate--dest {
  }

  .block-order-estimate--dest-content {
    display: contents;
  }

  .block-order-estimate--dest-btn-content {
    display: flex;
    grid-column: 2/3;
    grid-row: 1/2;
    flex-wrap: wrap;
    align-items: start;
    justify-content: end;
    gap: 5px;
    padding: 0 10px 10px 0;
  }

  /* ご注文者様 */

  .block-order-estimate--orderer-mail {
    word-wrap: break-word;
  }

  /* ディスカウント情報 */

  .block-order-estimate--discount-info {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
  }

  .block-order-estimate--promotion-code-message {
    padding: 0 0 20px 0;
  }

  .block-order-estimate--coupon-apply-message {
    padding-left: 0;
  }
  
.block-order-estimate--method-pay .block-order-estimate--discount-info h3,
  .block-order-estimate--method h3 {
    font-size: 18px;
    letter-spacing: 1.5px;
    padding: 0 0 10px;
    margin: 0 0 15px;
    border-bottom: 1px solid #707070;
  }

  /* 支払情報 */
  .block-order-estimate--method-pay-content {
    display: block;
    width: 425px;
  }
  
  .block-order-estimate--method-pay-content:has(.block-order-estimate--pay-detail) {
    width: 100%;
    margin-top: 40px;
  }
  
  .block-order-estimate--method-pay {
    display: flex;
    flex-wrap: wrap;
  }

  .block-order-estimate--pay-input {
    margin: 10px 0;
  }

  .block-order-estimate--pay-selectcard .form-control {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
  }

  .block-order-estimate--pay-detail.fieldset-vertical .form-group {
    display: block;
    border-top: none;
    background-color: #f9f9f9;
  }

  .pane-order-contents .block-order-estimate--pay-detail.fieldset-vertical .form-group {
    background-color: #fff;
  }
  
  .block-order-estimate--pay-detail.fieldset-vertical .form-label {
    padding: 15px 15px 12px;
  }
  
  .block-order-estimate--pay-detail.fieldset-vertical .form-control {
    padding: 0 15px 15px;
    margin: 0;
  }
  
  .block-order-estimate--pay-detail.fieldset-vertical .block-order-estimate--pay-selectcard .form-control {
    padding: 15px 15px 7px;
  }
  
  .block-order-estimate--pay-detail.fieldset-vertical .help-block {
    margin: 10px 0 0;
  }

  .block-order-estimate--method-pay-content .form-label {
    padding: 15px;
  }
  
  .block-order-estimate--method-pay-content .form-control {
    padding: 0 15px 15px;
    margin: 0;
  }

  .block-order-estimate--creditcard-newaddress-message,
  .block-order-estimate--creditcard-forceinput-message {
    padding-top: 0;
  }
  
  .block-order-estimate--pay-detail.fieldset-vertical .block-order-estimate--pay-savecard .form-control {
    padding-top: 15px;
  }

  /* AmazonPay紐づけ */

  .block-order-estimate--amazonpay-loginform .block-order-estimate--amazonpay-register {
    border: none;
  }

  /* 定期購入お届けサイクル */

  .block-order-estimate--regular-cycle {
    width: 80%;
  }

  .block-order-estimate--regular-cycle > li {
    padding: 0;
  }

  .block-order-estimate--regular-cycle > li > span {
    padding: 10px 10px;
  }

  .block-order-estimate--regular-cycle > li > span:first-of-type {
    width: 29%;
    background-color: #999;
    color: white;
    font-weight: bold;
  }

  .block-order-estimate--regular-cycle > li > span:last-of-type {
    text-align: left;
  }

  .block-order-estimate--prev-expected-dt {
    margin-top: 15px;
    padding: 5px;
  }

  .block-order-estimate--next-expected-dt {
    padding: 0 5px;
  }

  .block-order-estimate--prev-expected-dt > span,
  .block-order-estimate--next-expected-dt > span {
    width: unset;
    margin-right: 10px;
  }

  /* 配送情報 */

  .block-order-estimate--date-spec-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .block-order-estimate--regular-add-btn {
    right: auto;
    left: 10px;
    margin-top: 5px;
  }

  /* ご注文商品 */
  
  .block-order-estimate--goods-total {
    display: flex;
    font-size: 18px;
    font-weight: bold;
    margin: 20px 0;
  }
  
  .block-order-estimate--goods-list {
    border-top: 1px solid #DDD;
  }

  .block-order-estimate--goods-list .block-order-estimate--goods-item {
    display: block;
    padding: 30px 0 !important;
    overflow: hidden;
  }

  .block-order-estimate--goods-item .block-order-estimate--goods-item-image {
    float: left;
    width: 200px;
    margin: 0 40px 20px 0;
  }

  .block-order-estimate--goods-item .block-order-estimate--goods-item-image figure {
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
  }

  .block-order-estimate--goods-item .block-order-estimate--goods-description {
    float: left;
    width: 600px;
    margin: 0 0 20px;
  }

  .block-order-estimate--goods-description > div,
  .block-order-estimate--goods-description > span,
  .block-order-estimate--goods-description > p {
    width: 100%;
  }

  .block-order-estimate--goods-description .block-icon {
    margin: 0 0 10px;
  }
  
  .block-order-estimate--goods-qty {
    font-weight: normal;
  }
  
  .block-order-estimate--goods-qty-value {
    font-size: 16px;
  }
  
  .block-order-estimate--goods-embroidery-setting {
    float: left;
    width: 645px;
    margin: -8px 0 20px;
  }
  
  .block-order-estimate--goods-embroidery-setting dd {
    font-size: 14px;
  }
  
  .block-order-estimate--point-not-applicable {
    text-align: left;
    margin: 5px 0 0;
  }
  
  .block-order-estimate--goods-item:has(.block-order-estimate--goods-embroidery-setting) .block-order-estimate--point-not-applicable {
    float: right;
    width: 645px;
    margin: -4px 0 10px;
  }
  
  .block-order-estimate--goods-item:not(:has(.block-order-estimate--goods-embroidery-setting)) .block-order-estimate--point-not-applicable {
    display: none;
  }

  .block-order-estimate--goods-price-area {
    padding: 10px 20px;
  }
  
  .block-order-estimate--on-sales-off-percent {
    margin: 0 10px 0 0;
  }
  
  .block-order-estimate--goods-price-num {
    font-size: 14px;
    margin: 0 15px 0 0;
  }
  
  .block-order-estimate--goods-embroidery-price {
    display: flex;
    font-size: 14px;
  }
  
  .block-order-estimate--goods-price-subtotal {
    margin-left: auto;
  }
  
  .block-order-estimate--goods-price {
    width: auto;
    margin: 0;
  }
  
  .block-order-estimate--goods-price-subtotal dd {
    font-size: 20px;
  }
  
  .block-order-estimate--goods-price-subtotal dd span,
  .block-order-estimate--goods-price-subtotal dd:after {
    font-size: 14px;
  }

  .block-order-estimate--goods-description .block-order-estimate--goods-price {
    flex-grow: 1;
    order: -1;
    width: auto;
    text-align: right;
  }

  .block-order-estimate--goods-item-sales-period,
  .block-order-estimate--goods-refill-info--goods-sales-period {
    display: none;
  }

  .block-order-estimate--goods-refill-info {
    width: 100%;
    margin-bottom: 16px;
    padding-left: 44px;
  }

  .block-order-estimate--goods-refill-info--goods-description {
    font-size: inherit;
  }

  .block-order-estimate--goods-refill-info--goods-image {
    width: 25%;
  }

  .block-order-estimate--goods-refill-info--goods-image > figure {
    width: auto;
    min-width: 120px;
    max-width: 150px;
    height: auto;
    aspect-ratio: 1/1;
  }

  .block-order-estimate--goods-refill-info--goods-image > figure > img {
    width: 80%;
    height: auto;
    aspect-ratio: 1/1;
  }

  /* ラッピング・メッセージカード */
  .block-order-estimate--wrapping-content,
  .block-order-estimate--message-card-content {
    padding: 20px;
    border: 1px solid var(--responsive-sys-border-color-gray-tertiary);
  }

  .block-order-estimate--wrapping-item,
  .block-order-estimate--message-card-item {
    display: grid;
    grid-template-columns: 200px auto;
    padding: 0;
  }

  .block-order-estimate--wrapping-title-frame,
  .block-order-estimate--message-card-title-frame {
    grid-column-start: 1;
    grid-column-end: 2;
    grid-row-start: 1;
    justify-self: left;
    margin-bottom: 20px;
  }

  .block-order-estimate--wrapping-change-frame,
  .block-order-estimate--message-card-change-frame {
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row-start: 1;
    justify-self: right;
    margin-bottom: 20px;
  }

  .block-order-estimate--wrapping-image-frame,
  .block-order-estimate--message-card-image-frame {
    grid-column-start: 1;
    grid-row-start: 2;
    grid-row-end: 4;
    justify-self: center;
  }

  .block-order-estimate--wrapping-info-frame,
  .block-order-estimate--message-card-info-frame {
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row-start: 2;
  }

  .block-order-estimate--message-card-input-frame {
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row-start: 3;
  }

  .block-order-estimate--wrapping-change-frame .block-order-estimate--change-btn,
  .block-order-estimate--message-card-change-frame .block-order-estimate--change-btn {
    margin: 0;
  }

  .block-order-estimate--wrapping-image,
  .block-order-estimate--message-card-image {
    background: #f5f5f5;
    width: 200px;
    height: 200px;
  }

  .block-order-estimate--wrapping-info {
    float: left;
  }

  .block-order-estimate--wrapping-price,
  .block-order-estimate--message-card-price {
    text-align: right;
    float: right;
  }

  /* その他 */

  .block-order-estimate--sales-append {
    padding: 20px;
  }

  .block-order-estimate--sales-append .block-order-estimate--confirmation-title {
    padding-left: 0;
  }

  .block-order-estimate--sales-append-content {
    padding: 0;
  }

  .block-order-estimate--sales-append-list tbody th {
    width: 30%;
    border-bottom: 1px solid var(--responsive-sys-border-color-gray-secondary);
    background-color: #999;
    vertical-align: top;
  }

  /* コンテンツの表示場所設定 */

  .block-order-estimate--content .block-order-estimate--dest {
    order: -15;
    width: 425px;
  }

  .block-order-estimate--content .block-order-estimate--orderer {
    order: -10;
    width: 425px;
  }

  .block-order-estimate--discount-info {
    order: -5;
  }

  .block-order-estimate--content .block-order-estimate--regular-cycle-confirmation {
    order: 75;
  }

  .block-order-estimate--content .block-order-estimate--date-spec-confirmation {
    order: 80;
  }

  .block-order-estimate--content .block-order-estimate--goods {
    order: 85;
  }

  .block-order-estimate--sales-append {
    order: 90;
  }

  .block-order-estimate--content .block-order-estimate--amazonpay {
    order: 95;
  }

  .block-order-estimate--content .block-order-estimate--comment {
    order: 100;
  }

  /* お届け先の変更(ダイアログ) */

  .block-order-estimate--address-frame {
    max-width: 768px;
    margin-right: auto;
    margin-left: auto;
  }

  .block-order-estimate--dest-address-container {
    padding: 18px 18px 36px 18px;
  }

  .block-order-estimate--dest-address-container > h2 {
    margin: -18px -18px 18px -18px;
  }

  .block-order-estimate--dest-address-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 18px;
  }

  .block-order-estimate--dest-address-list > div {
    margin: 0;
  }

  .block-order-estimate--dest-address-item-register-form {
    grid-column: 1 / -1;
  }

  .block-order-estimate--dest-address-item-register-input-form .form-group {
    padding: 0;
  }

  .block-order-estimate--dest-address-item-register-input-form .action-buttons {
    text-align: center;
  }

  .block-order-estimate--dest-address-item-register-input-form .action-buttons .action {
    display: inline;
    margin: 0 10px;
  }

  .block-order-estimate--dest-address-item-register-input-form .action-buttons .action .btn {
    padding: 8px;
  }

  .block-order-estimate--dest-address-name .form-control,
  .block-order-estimate--dest-address-kana .form-control {
    display: flex;
    flex-wrap: wrap;
    row-gap: 5px;
  }

  .block-order-estimate--dest-address-name .form-error,
  .block-order-estimate--dest-address-kana .form-error {
    width: 100%;
  }

  .block-order-estimate--value-label {
    display: inline-block;
    width: 60px;
    text-align: center;
  }

  /* 定期明細追加確認画面 */

  /* 画面内共通設定 */

  .block-order-regular-add-confirm--container {
    display: grid;
    grid-template-columns: 1fr minmax(300px, 350px);
    grid-template-rows: max-content auto;
    gap: 20px;
  }

  /* 定期明細追加確認右サイドエリア */

  .block-order-regular-add-confirm--side-area {
    display: block;
    grid-column: 2/3;
    grid-row: 1/-1;
  }

  .block-order-regular-add-confirm--side-contents {
    position: sticky;
    top: 82px;
    bottom: unset;
    left: unset;
    width: unset;
    margin: 0 0 20px 0;
    padding: 4px;
    border: solid 1px var(--responsive-sys-border-color-gray-secondary);
  }

  .block-order-regular-add-confirm--procedure-container {
    padding: 14px;
    background: #fffce4;
  }

  .block-order-regular-add-confirm--commit .action-buttons {
    margin: 0;
  }

  .block-order-regular-add-confirm--commit .action-buttons .action {
    width: 100%;
  }

  .block-order-regular-add-confirm--commit .action-buttons .action .btn {
    width: 100%;
    font-weight: bold;
  }

  .block-order-regular-add-confirm--commit .block-order-regular-add-confirm--return-agree {
    width: 100%;
  }

  .block-order-regular-add-confirm--entry-customer {
    border: none;
  }

  .block-order-regular-add-confirm--return-agree {
    margin: 5px 0 5px 0;
  }

  /* 定期明細追加確認左サイドエリア */

  .block-order-regular-add-confirm--content {
    display: flex;
    grid-column: 1/2;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 0 20px 0;
    padding: 20px;
    border: solid 1px var(--responsive-sys-border-color-gray-secondary);
  }

  /* ブロック設定 */

  .block-order-regular-add-confirm--content > div {
    width: 100%;
    margin-bottom: 20px;
  }

  .block-order-estimate--delivery-summary,
  .block-order-regular-add-confirm--orderer-content,
  .block-order-regular-add-confirm--method-pay-content,
  .block-order-regular-add-confirm--regular-cycle-content {
    padding: 0;
    border: none;
  }

  /* ボタン位置設定 */

  .block-order-regular-add-confirm--regular-cycle-confirmation .block-order-regular-add-confirm--change-btn {
    top: 12px;
  }

  /* タイトル設定 */

  .block-order-regular-add-confirm--delivery-summary .block-order-regular-add-confirm--delivery-summary-title,
  .block-order-regular-add-confirm--orderer .block-order-regular-add-confirm--orderer-title,
  .block-order-regular-add-confirm--method-pay .block-order-regular-add-confirm--method-pay-title {
    margin: 0;
    padding: 4px 0;
    font-size: 16px;
    font-weight: bold;
  }

  .block-order-regular-add-confirm--regular-cycle-confirmation .block-order-regular-add-confirm--regular-cycle-title,
  .block-order-regular-add-confirm--goods .block-order-regular-add-confirm--goods-title {
    margin: 12px 0;
    padding: 0;
    color: #333;
    font-size: 20px;
    font-weight: bold;
  }

  /* レイアウト詳細設定 */

  /* お届け先 */

  .block-order-estimate--delivery-name {
    font-weight: normal;
  }

  /* お支払い情報 */
  .block-order-regular-add-confirm--method {
    padding: 0;
  }

  .block-order-regular-add-confirm--method > span:first-child {
    display: none;
  }

  .block-order-regular-add-confirm--method > span:last-child {
    text-align: left;
  }

  /* お届けサイクル */

  .block-order-regular-add-confirm--regular-cycle {
    width: 80%;
    border-bottom: 1px solid #ddd;
  }

  .block-order-regular-add-confirm--regular-cycle > li {
    padding: 0;
  }

  .block-order-regular-add-confirm--regular-cycle > li > span {
    padding: 10px 10px;
  }

  .block-order-regular-add-confirm--regular-cycle > li > span:first-of-type {
    width: 29%;
    background-color: #999;
    color: white;
    font-weight: bold;
  }

  .block-order-regular-add-confirm--regular-cycle > li > span:last-of-type {
    text-align: left;
  }

  .block-order-regular-add-confirm--next-expected-dt {
    margin-top: 15px;
    padding: 5px;
    border: none;
  }

  .block-order-regular-add-confirm--next-expected-dt > span {
    width: auto;
    margin-right: 10px;
  }

  .block-order-regular-add-confirm--regular-cycle-info {
    margin: 0 0 0 5px;
    text-align: left;
  }

  .block-order-regular-add-confirm--regular-cycle-info a {
    display: inline-block;
    margin: 5px 0 0 0;
  }

  /* お届け商品 */

  .block-order-regular-add-confirm--goods .block-icon {
    margin: 0;
  }

  .block-order-regular-add-confirm--goods-item {
    display: grid;
    grid-template-columns: auto 1fr;
  }

  .block-order-regular-add-confirm--goods-item > div {
    grid-column: 1/-1;
  }

  .block-order-regular-add-confirm--goods-item .block-order-regular-add-confirm--goods-item-image {
    grid-column: 1/2;
  }

  .block-order-regular-add-confirm--goods-item .block-order-regular-add-confirm--goods-description {
    grid-column: 2/3;
  }

  .block-order-regular-add-confirm--goods-description {
    display: grid;
    grid-auto-flow: row dense;
    grid-column: 2/3;
    grid-template-columns: 1fr auto;
    grid-template-rows: max-content auto;
    align-content: flex-start;
    column-gap: 5px;
  }

  .block-order-regular-add-confirm--goods-description > div,
  .block-order-regular-add-confirm--goods-description > span {
    grid-column: 1/2;
  }

  .block-order-regular-add-confirm--goods-description .block-order-regular-add-confirm--goods-price {
    grid-column: 2/3;
    grid-row: 1/-1;
    text-align: right;
  }

  .block-order-regular-add-confirm--goods-item-sales-period {
    display: flex;
  }

  .block-order-regular-add-confirm--goods-list {
    margin: 0 0 20px 0;
    padding: 20px;
  }

  .block-order-regular-add-confirm--goods-list li {
    border-bottom: none;
  }

  .block-order-regular-add-confirm--goods-content {
    border-bottom: solid 1px var(--responsive-sys-border-color-gray-secondary);
  }

  /* コンテンツの表示場所設定 */

  .block-order-regular-add-confirm--content .block-order-regular-add-confirm--delivery-summary {
    order: -15;
    width: 50%;
  }

  .block-order-regular-add-confirm--content .block-order-regular-add-confirm--orderer {
    order: -10;
    width: 50%;
  }

  .block-order-regular-add-confirm--content .block-order-regular-add-confirm--method-pay {
    order: -5;
  }

  /* ----買い物かご画面---- */
  
  .block-cart--body {
    display: flex;
    flex-wrap: wrap;
    flex-direction:  row-reverse;
    padding: 0;
  }
  
  .block-cart--subtotal-container {
    width: 100%;
    margin-top: 50px;
  }
  
  .block-cart--subtotal-container .block-cart--subtotal {
    font-size: 24px;
  }
  
  .block-cart--subtotal-container .block-cart--subtotal-inner {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 0 0 20px;
  }
    
  .block-cart--subtotal-container .block-cart--subtotal-price,
  .block-cart--promotion-discount-price,
  .block-cart--subtotal-container .block-cart--subtotal-price span,
  .block-cart--promotion-discount-price span {
    font-size: 24px;
  }
  
  .block-cart--subtotal-container .block-cart--update {
    margin: 0;
    cursor: pointer;
  }
  
  .block-cart--rule-container:not(:has(+block-cart--subtotal-container)) {
    margin: 0 0 50px;
  }
  
  .block-cart--rule {
    border-bottom: #999 1px solid;
    background-color: transparent;
    font-size: 26px;
    font-weight: normal;
  }

  .block-cart--procedure-container-wrapper {
    position: relative;
    width: 275px;
    z-index: 10;
  }
  
  .block-cart-ship-schedule-message {
    width: 275px;
    font-weight: bold;
    text-align: center;
    padding: 8px 10px;
    margin: 0 0 10px;
  }
  
  .block-promotion-message--content {
    font-size: 14px;
    padding: 16px 18px;
    margin: 0 0 10px;
  }

  .block-cart--promotion-criteria-list-container .promotion-criteria-list-message {
    text-align: start;
  }

  .block-cart--form-post {
    display: flex;
    flex-direction: row-reverse;
  }

  .block-cart--contents {
    width: 890px;
    margin: 0 35px 0 0;
    border: 0;
    text-align: right;
  }
    
  .block-cart--goods-list {
    text-align: left;
    border-top: 1px solid #DDD;
  }
  
  .block-cart--procedure-container-menu {
    position: sticky;
    top: 115px;
  }

  .block-cart--procedure {
    margin: 0;
    padding: 20px;
    border: 1px solid #DDD;
    border-radius: 5px;
  }

  .block-cart--procedure-container .action-buttons {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 0;
  }

  .block-cart--procedure-container .action-buttons .action:first-child,
  .block-cart--procedure-container .action-buttons .action:last-child {
    padding: 0;
  }

  .block-cart--order .block-cart--order-btn,
  .block-cart--order .block-cart--order-btn-gift {
    width: 100%;
    padding: 10px 0;
    font-weight: bold;
    text-align: center;
  }

  .block-cart--procedure-container .action-buttons .action .btn {
    font-size: 20px;
  }

  .block-cart--order-button-description {
    font-size: 13px;
    text-align: center;
    margin: 0 -10px 10px;
    font-feature-settings: 'palt';
  }
  
  .btn.block-cart--order-modal-btn {
    width: 100%;
    margin: 0 0 10px;
  }
  
  .block-cart--order-gift-message {
    font-size: 13px;
  }
  
  .block-cart--order-subtotal {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 12px 0 0;
    padding: 15px 0 0;
    border-top: 2px dashed #DDD;
    font-weight: bold;
    font-size: 14px;
    line-height: 1.4;
  }
  
  .block-cart--order-subtotal dd {
    font-feature-settings: 'palt';
  }
  
  .block-cart--order-subtotal dd span {
    font-size: 20px;
  }
  
  .block-cart-order-modal--contents {
    width: 824px;
    padding: 50px 57px 60px;
  }
  
  .block-cart-order-modal--title {
    font-size: 20px;
    margin: 0 0 35px;
  }
  
  .block-cart-order-modal-items {
    display: flex;
    justify-content: space-between;
  }
  
  .block-cart-order-modal-item {
    width: 345px;
    margin: 0;
  }
    
  .block-cart-order-modal-item--btn input.btn {
    letter-spacing: 1px;
  }
  
  .block-cart-order-modal-item--btn:after {
    right: 20px;
  }
  
  .normal .block-cart-order-modal-item--list {
    background-size: 84px;
    background-position: top 5px center;
    padding: 105px 0 0;
  }
  
  .gift .block-cart-order-modal-item--list {
    background-size: 190px;
    background-position: top 5px center;
    padding: 105px 0 0;
  }
  
  .normal .block-cart-order-modal-item--list li:not(:last-child) {
    margin: 0 0 18px;
  }
  
  .gift .block-cart-order-modal-item--list li:not(:last-child) {
    margin: 0 0 10px;
  }

  /* 買い物かご商品一覧 */

  .block-cart--goods-list li.block-cart--item-list {
    position: relative;
    display: block;
    overflow: hidden;
  }

  .block-cart--goods-list-link {
    display: flex;
    flex-grow: 1;
  }

  .block-cart--goods-list-image {
    float: left;
    width: 200px;
    border-radius: 10px;
    margin: 0 40px 15px 0;
  }

  .block-cart--goods-list-image figure {
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
  }

  .block-cart--goods-list-image figure img {
    height: auto;
    aspect-ratio: 1/1;
  }
  
  .block-cart--goods-list-image .block-goods-favorite {
    display: none;
  }
  
  .block-cart--goods-list-item-comment {
    float: left;
    padding: 0 240px 0 0;
  }

  .block-cart--goods-list-item-container {
    float: left;
    padding: 0 240px 0 0;
  }

  .block-cart--goods-list-item-sales-info + .block-cart--goods-list-item-price-info {
    width: 100%;
  }

  .block-cart--goods-list .block-goods-price--on-sales-off-percent {
    padding-top: 3px;
  }

  .block-cart--goods-list-item .block-cart--goods-list-item-price-info {
    flex-grow: 1;
    order: -1;
    width: auto;
    text-align: right;
  }

  .block-cart--goods-list-item-price {
    font-size: 14px;
  }

  .block-cart--goods-list-item-input {
    display: flex;
    align-items: center;
    padding: 15px 20px;
    clear: both;
    width: 100%;
  }

  .block-cart--goods-list-item-price-info {
    display: flex;
    gap: 10px;
    margin: 0 15px 0 0;
  }
  
  .block-cart--goods-list-item-embroidery-charge {
    display: flex;
    font-size: 14px;
    margin-right: auto;
  }
  
  .block-cart--goods-list-item-subtotal {
    display: flex;
    align-items: baseline;
  }
  
  .block-cart--goods-list-item-subtotal dd {
    font-size: 20px;
  }
  
  .block-cart--goods-list-item-subtotal dd span {
    font-size: 14px;
  }
  
  .block-cart--goods-embroidery-setting {
    float: left;
    width: 645px;
    padding: 20px;
    margin: 20px 0 15px;
  }
  
  .block-cart--goods-embroidery-setting--contents {
    font-size: 14px;
  }
  
  .block-cart--goods-list-item-qty {
    position: absolute;
    top: 30px;
    right: 0;
    display: flex;
    align-items: center;
    gap: 20px;
  }
  
  .block-cart--goods-list-item-qty dt {
    font-weight: bold;
  }
  
  .block-cart--goods-list-item-qty-btn.inactive {
    background: #F2F2F2;
  }
  
  input.block-cart--goods-list-item-qty-input {
    padding: 0;
    text-align: center;
  }
  
  .block-cart--goods-list-item-delete {
    position: absolute;
    top: 90px;
    right: 0;
    width: auto;
    margin: 0;
  }
  
  .block-cart--goods-list-item-delete:before,
  .block-cart--goods-list-item-delete:after {
    top: 14px;
  }
  
  .btn.block-cart--goods-list-item-delete-btn:hover {
    border-color: #FFF;
    opacity: 1;
  }

  /* ---- 注文完了(通常・ギフトフロー共通) ---- */

  .block-order-complete h1 {
    margin: 0 0 20px;
  }

  .block-order-complete--rules {
    margin: 10px 0 20px;
    padding: 0;
    text-align: left;
  }

  .block-order-complete--customerentry-header {
    margin: 0 0 24px;
  }

  .block-order-complete--customerentry {
    margin: 20px 0;
    padding: 0;
  }

  .block-order-complete--customerentry-form .action-buttons {
    margin-top: 20px;
  }

  .block-order-complete--customerentry-btn {
    margin: 0;
    padding: 4px 10px;
  }

  .block-order-complete--cart p {
    font-size: 18px;
  }

  .block-order-complete--home {
    margin: 20px auto;
    padding: 0;
  }

  /* ---- 注文内容確認(ギフトフロー) ---- */
  
  .block-order-gift-confirmation {
    padding: 0;
  }
  
  .block-order-gift-confirmation--order-items {
    margin: 0 0 60px;
  }

  .block-order-gift-confirmation--header {
    margin: 0 -10px 0;
    text-align: center;
  }

  /* タイトル設定 */

  .block-order-gift-confirmation h2 {
    font-size: 24px;
    letter-spacing: 1.5px;
    padding: 0 0 15px;
    margin: 0 0 15px;
  }

  .block-order-gift-confirmation--discount-title,
  .block-order-gift-confirmation--novelty-header,
  .block-order-gift-confirmation--order-item-header,
  .block-order-gift-confirmation--shipping-header,
  .block-order-gift-confirmation--method-pay-title,
  .block-order-gift-confirmation--destination-address-header,
  .block-order-gift-confirmation--other-header {
    margin: 0 0 15px;
  }

  /* ノベルティ */
  
  .block-order-gift-confirmation--promotion-novelty {
    margin: 0 0 60px;
  }

  .block-order-gift-confirmation--novelty-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  }
  
  /* ディスカウント情報 */
  
  .block-order-gift-confirmation--discount {
    margin: 0 0 60px;
  }
  
  .block-order-gift-confirmation--discount-period {
    font-size: 14px;
  }

  /* ご注文の商品 */

  .block-order-gift-confirmation--order-item-wrapper {
    display: flex;
    gap: 20px;
  }

  .block-order-gift-confirmation--order-item-info {
    width: 65%;
  }

  .block-order-gift-confirmation--order-item-detail-table .block-order-gift-confirmation--item-name {
    padding: 0;
  }

  .block-order-gift-confirmation--item-wrapper > div {
    padding: 10px;
  }

  .block-order-gift-confirmation--item-image {
    border-right: 1px solid var(--responsive-sys-border-color-gray-primary);
  }

  .block-order-gift-confirmation--order-summary {
    width: 35%;
  }

  .block-order-gift-confirmation--item-wrapper {
    display: flex;
    gap: 10px;
  }

  .block-order-gift-confirmation--order-summary {
    width: 100%;
  }
  
  .block-order-gift-confirmation--order-summary-table {
    position: relative;
    width: 100%;
  }

  .block-order-gift-confirmation--order-summary-table th {
    width: 700px !important;
    background: none;
    padding: 20px 0;
  }
  
  .block-order-gift-confirmation--order-summary-table .block-order-gift-confirmation--total th {
    font-size: 18px;
  }
  
  .block-order-gift-confirmation--order-summary-table .block-order-gift-confirmation--total td span {
    font-size: 17px;
  }

  .block-order-gift-confirmation--order-summary-table td {
    width: 500px;
    padding: 20px 300px 20px 0;
  }
  
  .block-order-gift-confirmation--order-summary-message {
    position: absolute;
    right: 0;
    bottom: 16px;
    letter-spacing: 0;
  }
  
  .block-order-gift-confirmation--order-summary-message td {
    padding: 0;
    background: none;
  }

  /* 配送情報 */
  
  .block-order-gift-confirmation--shipping {
    margin: 0 0 60px;
  }

  .block-order-gift-confirmation--shipping-container {
    display: flex;
    gap: 10px;
    width: 100%;
  }

  .block-order-gift-confirmation--shipping-address {
    width: 65%;
  }

  .block-order-gift-confirmation--ordered-item-info {
    width: 35%;
  }

  .block-order-gift-confirmation--shipping-address table > tbody {
    display: flex;
  }

  .block-order-gift-confirmation--shipping-address table > tbody tr {
    display: contents;
  }

  .block-order-gift-confirmation--shipping-address table > tbody th {
    display: flex;
    align-items: center;
    border: none;
    border-right: 1px solid var(--responsive-sys-border-color-gray-primary);
  }

  .block-order-gift-confirmation--shipping-address table > tbody td {
    width: 100%;
    border: none;
  }

  .block-order-gift-confirmation--ordered-item-table tbody th {
    width: 50%;
    white-space: inherit;
  }

  .block-order-gift-confirmation--ordered-item-table td {
    text-align: left;
  }

  /* お届け先 */
  
  .block-order-gift-confirmation--destination-address-info-item {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    margin: 0 0 80px !important;
  }
  
  .block-order-gift-confirmation--destination-address-info-item:last-child {
    margin: 0 !important;
  }
  
  .block-order-gift-confirmation--destination-address-info {
    margin: 0 0 60px;
  }
  
  .block-order-gift-confirmation h2.block-order-gift-confirmation--destination-address-header {
    margin: 0 0 20px;
  }
  
  .block-order-gift-confirmation--destination-name {
    width: 100%;
    font-size: 18px;
    padding: 13px 17px;
    margin: 0 0 20px;
  }
  
  .block-order-gift-confirmation--destination-address {
    margin: 0;
  }
  
  .block-order-gift-confirmation--destination-price {
    width: 345px;
    margin: 0 0 0 20px;
    padding: 0 0 10px;
    flex-shrink: 0;
  }
  
  .block-order-gift-confirmation--destination-price dt {
    font-size: 18px;
  }
  
  .block-order-gift-confirmation--destination-price dd {
    font-size: 22px;
  }
  
  .block-order-gift-confirmation--destination-price dd span {
    font-size: 17px;
  }
  
  .block-order-gift-confirmation--delivery-items {
    width: 100%;
    margin: 20px 0 0;
  }
  
  .block-order-gift-confirmation--sending-item-detail-table {
    display: flex;
    flex-wrap: wrap;
    margin: 40px 0 0;
    border: 0;
  }
  
  .block-order-gift-confirmation--sending-item-detail-table {
    border-left: 1px solid #DDD;
  }
  .block-order-gift-confirmation--sending-item-detail-table dl {
    display: block;
    border: 1px solid #DDD;
    border-left: 0;
  }
  
  .block-order-gift-confirmation--sending-item-detail-table dl.block-order-gift-confirmation--sending-item-name {
    width: 403px;
  }
  
  .block-order-gift-confirmation--sending-item-detail-table dl.block-order-gift-confirmation--sending-item-qty {
    width: 85px;
  }
  
  .block-order-gift-confirmation--sending-item-detail-table dl.block-order-gift-confirmation--sending-item-price {
    width: 215px;
  }
  
  .block-order-gift-confirmation--sending-item-detail-table dl.block-order-gift-confirmation--sending-item-comment {
    width: 500px;
  }
  
  .block-order-gift-confirmation--sending-item-detail-table dl.block-order-gift-confirmation--sending-item-embroidery-setting {
    width: 487px;
  }
  
  .block-order-gift-confirmation--sending-item-detail-table dl.block-order-gift-confirmation--sending-item-embroidery-charge {
    width: 215px;
    margin-top: -1px;
  }
    
  .block-order-gift-confirmation--sending-item-detail-table dl.block-order-gift-confirmation--sending-item-noshi-charge {
    flex: 1;
    margin-top: -1px;
    border: 1px solid #DDD;
  }
  
  .block-order-gift-confirmation--sending-item-detail-table dl.block-order-gift-confirmation--sending-item-noshi-info {
    flex: 1;
    margin-top: -1px;
    border: 1px solid #DDD;
  }
    
  .block-order-gift-confirmation--sending-item-detail-table dt {
    width: 100%;
    border-right: 0;
    border-bottom: 1px solid #DDD;
    padding: 20px;
  }
  
  .block-order-gift-confirmation--sending-item-detail-table dd {
    width: 100%;
    padding: 20px;
  }
  
  .block-order-gift-confirmation--sending-item-name-inner {
    gap: 17px;
  }
  
  .block-order-gift-confirmation--sending-item-name figure {
    width: 120px;
    height: 120px;
  }
  
  .block-order-gift-confirmation--sending-item-noshi-detail {
    width: 600px;
    margin: 40px 0 0;
    padding: 26px 30px;
  }
  
  .block-order-gift-confirmation--sending-item-noshi-detail-setting dt {
    font-size: 18px;
  }
  
  .block-order-gift-confirmation--sending-item-noshi-detail-charge {
    margin: 15px 0 0;
    padding: 15px 0 0;
  }

  /* お支払い情報 */
  
  .block-order-gift-confirmation--method-pay {
    margin: 0 0 60px;
  }

  .block-order-estimate--pay-selectcard .form-control {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
  }

  .block-order-gift-confirmation--method > h3 {
    margin: 0;
    border: none;
  }

  .block-order-gift-confirmation--order-comment {
    margin: 0 0 60px;
  }
  
  .block-order-gift-confirmation--order-comment-message {
    padding: 20px;
    margin: 0 0 60px;
  }

  /* その他 */

  .block-order-gift-confirmation--other-detail th {
    color: unset;
  }

  .block-order-gift-confirmation--actions {
    display: block;
    margin: 60px 0 0;
  }
  
  .btn.block-order-estimate--commit-btn-staff {
    padding: 0;
    width: 100%;
    pointer-events: none;
    margin: 0 0 20px;
  }
  
  .btn.block-order-estimate--gift-order-btn {
    width: 320px;
    padding: 13px 0;
  }
  
  .block-order-gift-confirmation--back {
    margin: 20px 0 0;
  }
  
  .block-order-gift-confirmation--return-agree .btn.btn-default {
    width: 320px;
  }
  
  .block-order-gift-confirmation--agree-terms {
    font-size: 14px;
    letter-spacing: 1px;
  }
  
  .block-order-gift-confirmation--order-terms-link {
    cursor: pointer;
  }
  
  .block-order-gift-confirmation--order-terms-link:hover {
    text-decoration: none;
  }

  .block-order-gift-confirmation--sales-delivery-comment {
    width: 820px;
    margin: 0 auto;
    font-size: 16px;
  }

  /* ----配送先の選択---- */
  
  .block-order-gift-select {
    padding: 0;
  }
  
  .block-order-gift-select--text {
    font-size: 16px;
    padding: 16px 20px;
    margin: 0 0 40px;
  }
  
  .block-order-gift-select--text-caution {
    margin: 10px 0 0;
  }
  
  .block-order-gift-select--text-caution li {
    font-size: 14px;
    text-indent: -14px;
    padding: 0 0 0 14px;
  }

  .block-order-gift-dest--header {
    margin: 0 0 20px;
  }

  .block-order-gift-dest--list-title,
  .block-order-gift-dest--method-sender-title {
    display: flex;
    align-items: baseline;
    border-bottom: 1px solid #221815;
    padding: 0 0 15px;
  }
  
  .block-order-gift-dest h2 {
    font-size: 24px;
    margin: 0;
    order: 1;
  }
  
  .block-order-gift-dest--comment {
    order: 2;
    font-size: 16px;
    margin: 0 0 0 15px;
  }
  
  .block-order-gift-dest--list {
    margin: 0 0 60px;
  }
  
  .block-order-gift-dest--list-body {
    border: 0;
    margin: 0;
  }
  
  .block-order-gift-dest--method-sender-container,
  .block-order-gift-dest--address-item {
    padding: 28px 0;
  }
  
  .block-order-gift-dest--method-sender-container {
    border: 0;
    margin: 0;
    padding-bottom: 0;
  }

  .block-order-gift-dest--address-new {
    order: 3;
    margin: 0 0 0 auto;
  }
  
  .block-order-gift-dest--check-all {
    margin: 20px 0 0;
  }
  
  .block-order-gift-dest--list .block-order-gift-dest--check-all label {
    font-size: 14px;
    cursor: pointer;
  }

  .block-order-gift-dest--list-body .form-error {
    margin: 0 0 10px 0;
  }

  .block-order-gift-dest--method-sender-info {
    margin-top: 0;
    padding: 0 0 10px;
  }

  .block-order-gift-dest--method-sender-info address {
    margin-left: 0;
  }

  .block-order-gift-dest--method-sender-change {
    position: relative;
    padding: 10px 16px;
    min-height: 62px;
  }
  
  .block-order-gift-dest--method-sender-change label {
    margin: 8px 0 0;
  }

  .block-order-gift-dest--method-sender-input {
    margin: 40px 24px 30px;
  }

  .block-order-gift-dest--method-sender-input .form-group {
    padding: 0;
  }
  
  .block-order-gift-dest--method-sender-input .form-group:first-child {
    border-top: 0;
  }
  
  .block-order-gift-dest--method-sender-input .form-group:last-child {
    border-bottom: 0 !important;
  }

  .block-order-gift-dest--name .form-control,
  .block-order-gift-dest--kana .form-control {
    display: flex;
    flex-wrap: wrap;
    row-gap: 5px;
    text-align: center;
  }
  
  .block-order-gift-dest--method-sender-input .form-label {
    align-items: flex-start;
    justify-content: space-between;
    border: 0;
    border-right: 1px solid #DDD;
    padding: 20px;
    width: 288px;
    flex-basis: auto;
  }
  
  .block-order-gift-dest--method-sender-input .form-label label {
    margin: 0;
  }
  
  .block-order-gift-dest--method-sender-input.fieldset-vertical .form-control {
    border: 0;
    padding: 12px 40px;
  }

  .block-order-gift-dest--value-label {
    display: inline-block;
    width: 60px;
  }

  .block-order-gift--dest-address-name-sei > input,
  .block-order-gift--dest-address-name-mei > input,
  .block-order-gift--dest-address-kana-sei > input,
  .block-order-gift--dest-address-kana-mei > input {
    max-width: 200px;
  }

  .block-order-gift-dest--method-sender-input .help-block {
    width: 100%;
    text-align: left;
  }
  
  .block-order-gift-dest--method-sender-btn {
    position: absolute;
    top: 10px;
    right: 15px;
    gap: 10px;
    padding: 0;
    margin: 0;
  }

  .btn.btn-default.block-order-gift-dest--address-copy-btn {
    width: 250px;
    padding: 10px 0 8px;
  }
  
  .btn.btn-default.block-order-gift-dest--address-clear-btn {
    width: 115px;
    flex: none;
  }
  
  .btn.block-order-gift-dest--next-btn {
    width: 280px;
    padding: 13px 10px;
  }

  /* ----配送先商品の追加---- */
  
  .block-order-gift-select--payment {
    padding: 0 0 60px;
    margin: 0 0 60px;
  }
  
  .block-order-gift-select--delivery-dest {
    margin: 0 0 60px;
  }

  .block-order-gift-select--header {
    margin: 0 0 20px;
  }

  .block-order-gift-select h2 {
    margin: 0 0 20px;
    padding: 0 0 15px;
    font-size: 24px;
    font-weight: bold;
    border-bottom: 1px solid #221815;
  }
    
  .btn.block-order-gift-select--next-btn {
    width: 280px;
    padding: 13px 0;
  }
  
  .block-order-gift-select--back-link:hover {
    text-decoration: none;
  }
  
  .block-order-gift-select--sender {
    margin: 0 0 60px;
  }

  .block-order-gift-select--sender-info {
    margin: 0 0 5px 0;
  }

  .block-order-gift-select--sender-info p {
    font-weight: normal;
  }

  .block-order-gift-select--delivery-dest-add {
    text-align: right;
    justify-content: flex-end;
    margin: 0 0 60px;
  }
    
  .block-order-gift-select--delivery-dest-add select {
    flex: none;
    min-width: 230px;
  }
  
  .btn.btn-default.block-order-gift-select--delivery-dest-add-btn {
    font-size: 15px;
    width: 200px;
    padding: 9px 0;
    margin: 0 0 0 15px;
  }
  
  .block-order-gift-select--delivery-dest-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .block-order-gift-select--delivery-dest-address {
    margin: 0 0 30px;
  }
  
  .block-order-gift-select--delivery-dest-delete {
    top: -2px;
  }
  
  .block-order-gift-select--delivery-dest-delete:before,
  .block-order-gift-select--delivery-dest-delete:after {
    top: 21px;
    left: 36px;
  }
  
  .btn.btn-default.block-order-gift-select--delivery-dest-delete-btn {
    width: 204px;
    font-size: 15px;
    padding: 9px 0 9px 20px;
  }
  
  .block-order-gift-select--delivery-dest-head {
    font-size: 18px;
  }
  
  .block-order-gift-select--delivery-dest-noshi-all {
    width: 425px;
  }
  
  .btn.block-order-gift-select--delivery-dest-noshi-all-btn {
    width: 300px;
    margin: 0 0 10px auto;
  }
  
  .block-order-gift-select--delivery-dest-noshi-all-note li {
    font-size: 14px;
    text-indent: -14px;
    padding: 0 0 0 14px;
    margin: 0 0 5px;
  }
  
  .block-order-gift-select--delivery-dest-noshi-all-note li:last-child {
    margin: 0;
  }

  .block-order-gift-select--sales-detail-append-body .form-control select {
    width: 100%;
  }

  .block-order-gift-select--delivery-dest-goods-select .block-order-gift-select--delivery-dest-goods {
    margin: 0 0 40px;
  }

  .block-order-gift-select--delivery-dest-goods-message {
    font-size: 18px;
    margin: 0 0 20px;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-list-head {
    display: flex;
    border: 1px solid #DDD;
    border-bottom: 0;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-list-head-item {
    border-right: 1px solid #DDD;
    background: #F8F8F8;
    padding: 20px;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-list-head-item:nth-child(1) {
    width: 48px;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-list-head-item:nth-child(2) {
    width: 450px;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-list-head-item:nth-child(3) {
    width: 510px;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-list-head-item:nth-child(4) {
    width: 190px;
    border-right: 0;
  }

  .block-order-gift-select--delivery-dest-goods-content-info {
    display: flex;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-info > dl {
    display: block;
    border-right: 1px solid #DDD;
    border-bottom: 0;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-info > dl.block-order-gift-select--delivery-dest-goods-name {
    width: 400px;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-info > dl.block-order-gift-select--delivery-dest-goods-embroidery-setting {
    width: 358px;
    padding: 0;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-info > dl.block-order-gift-select--delivery-dest-goods-noshi-info {
    width: 300px;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-info > dl.block-order-gift-select--delivery-dest-goods-sales-qty {
    width: 140px;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-info > dl > dt {
    width: 100%;
    border-right: 0;
    border-bottom: 1px solid #DDD;
    padding: 20px;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-info > dl > dd {
    padding: 20px;
    width: 100%;
    height: calc(100% - 64px);
  }
  
  .block-order-gift-select--delivery-dest-goods-content-info > dl.block-order-gift-select--delivery-dest-goods-sales-qty > dd {
    height: auto;
  }
  
  .block-order-gift-select--delivery-dest-goods-sales-qty dd:has(.block-order-gift-select--delivery-dest-goods-sales-qty-input) p {
    flex-shrink: 0;
  }
  
  .block-order-gift-select--delivery-dest-goods-img {
    display: block;
    overflow: hidden;
  }
  
  .block-order-gift-select--delivery-dest-goods-name figure {
    float: left;
    border-radius: 10px;
    margin: 0 17px 0 0;
  }
    
  .block-order-gift-select--delivery-dest-goods-img > p {
    float: left;
    width: 220px;
  }
  
  .block-order-gift-select--delivery-dest-goods-variation {
    float: left;
    width: 220px;
    margin: 10px 0 0;
  }
  
  .block-order-gift-select--delivery-dest-goods-embroidery-setting dd p {
    font-size: 14px;
  }
  
  .block-order-gift-select--delivery-dest-goods-added {
    width: 100%;
  }
  
  .btn.btn-secondary.block-order-gift-select--delivery-dest-goods-noshi-btn {
    padding: 12px 42px;
    border-radius: 40px;
  }

  .block-order-gift-select--delivery-dest-goods-content-list .block-order-gift-select--delivery-dest-goods-checkbox {
    width: 48px;
    background: #FFF;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-inner {
    display: flex;
  }
  
  .block-order-gift-select--delivery-dest-goods-name {
    gap: 15px;
    width: 450px;
    border-right: 1px solid #DDD;
    border-bottom: 0;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-item:has(.block-order-gift-select--delivery-dest-goods-checkbox) .block-order-gift-select--delivery-dest-goods-name,
  .block-order-gift-select--delivery-dest-goods-content-item:has(.block-order-gift-select--delivery-dest-goods-checkbox) .block-order-gift-select--delivery-dest-goods-embroidery-setting {
    padding: 20px;
  }
  
  .block-order-gift-select--delivery-dest-goods-embroidery-setting {
    width: 510px;
    padding: 20px;
    border-right: 1px solid #DDD;
    border-bottom: 0;
  }
  
  .block-order-gift-select--delivery-dest-goods-qty {
    width: 190px;
    padding: 20px;
    justify-content: center;
  }
  
  .btn.block-order-gift-select--delivery-dest-goods-checked-add-btn {
    width: 280px;
    padding: 13px 0;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-list .block-order-gift-select--delivery-dest-goods-qty-header {
    width: 70px;
  }

  .block-order-gift-select--delivery-dest-goods-content-list th,
  .block-order-gift-select--delivery-dest-goods-content-list td {
    padding: 5px;
  }

  .block-order-gift-select--delivery-dest-goods-qty input[type="number"] {
    width: auto;
    padding: 0 2px 0 0;
  }

  .block-order-gift-select--delivery-dest-goods-name > td {
    display: flex;
    gap: 10px;
    border: none;
  }

  .block-order-gift-select--delivery-dest-goods-name figure {
    width: 120px;
    height: 120px;
  }
  
  .block-order-gift-select--delivery-dest-goods-img > .block-goods-child {
    display: block;
    float: left;
    width: 220px;
  }
  
  .block-order-gift-select--delivery-dest-goods-img .block-goods-child--name {
    font-size: 14px;
    text-indent: -14px;
    padding: 0 0 0 14px;
  }
  
  .block-order-gift-select--delivery-dest-goods-content-info > dl > dd > .block-goods-child {
    display: none;
  }
  
  .block-goods-child--name {
    font-size: 16px;
    text-indent: -16px;
    padding: 0 0 0 16px;
  }

  .block-order-gift-select--delivery-dest-total table {
    width: auto;
    margin-left: auto;
    border: none;
  }

  .block-order-gift-select--delivery-dest-total table tbody {
    display: flex;
  }

  .block-order-gift-select--delivery-dest-total table th {
    width: auto;
    white-space: nowrap;
  }

  .block-order-gift-select--delivery-dest-total br {
    display: none;
  }

  .block-order-gift-select--delivery-dest-total-price-calc {
    padding-left: 10px;
    float: unset;
  }

  .block-order-gift-select--delivery-dest-goods-noshi-massage {
    margin: 0 0 10px;
  }
  

  
  .block-order-gift-select--delivery-date-content {
    display: flex;
    align-items: center;
    gap: 5px;
    margin: 0 0 60px;
  }
  
  .block-order-gift-select--delivery-date h3 {
    font-weight: normal;
    margin: 0;
  }
  
  .block-order-gift-select--payment h3 {
    font-size: 18px;
    margin: 0 0 10px;
  }

  .block-order-gift-select--coupon-available-btn {
    margin: 0 0 0 14px;
  }

  .block-order-gift-select--coupon-content a,
  .block-order-gift-select--promotion-content input {
    margin-top: 0;
  }

  .block-order-gift-select--coupon-content .form-error,
  .block-order-gift-select--promotion-content .form-error {
    width: 100%;
  }
  
  .block-order-gift-select--method,
  .block-order-gift-select--point-payment,
  .block-order-gift-select--promotion {
    margin: 0 0 30px;
  }

  .block-order-gift-select--method-list li:not(:last-child) {
    margin: 0 0 10px;
  }

  .block-order-gift-select--sales-append-content .constraint {
    min-width: 40px;
  }

  .block-order-gift-select--sales-append-content .form-control {
    flex-shrink: 2;
    margin: 0;
  }

  .block-order-gift-select--sales-append-textbox input,
  .block-order-gift-select--sales-append-select select {
    width: 100%;
  }
  
  .block-order-gift-select--coupon-content {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  
  .block-order-gift-select--coupon-text {
    width: 100%;
  }
  
  .block-order-gift-select--promotion-content input,
  .block-order-gift-select--coupon-content input {
    width: 392px;
  }
  
  .btn.btn-default.block-order-gift-select--coupon-available-btn {
    margin: 0 0 0 20px;
  }
  
  .block-order-gift-select--delivery-dest-goods-select:has(.btn.btn-default.block-order-gift-select--delivery-dest-goods-all-delete-btn) {
    width: 100%;
  }
  
  .block-order-gift-select-not-set-modal--contents {
    width: 600px;
    text-align: center;
    padding: 80px 0;
  }
  
  .btn.btn-default.block-order-gift-select-not-set-modal--btn {
    width: 280px;
    margin: 0 auto 35px;
  }
  
  .block-order-gift-select-not-set-modal--back {
    cursor: pointer;
  }
  
  .block-order-gift-select-not-set-modal--back:hover {
    text-decoration: none;
  }

  /* ----のし・ラッピング設定---- */

  .block-order-gift-noshi--title {
    margin: 0 0 20px;
    padding: 15px 0 0;
    color: #333;
    font-size: 24px;
    font-weight: bold;
  }

  .block-order-gift-noshi h2,
  .block-order-gift-noshi h3 {
    margin: 40px 0 20px;
  }

  .block-order-gift-noshi img {
    vertical-align: baseline;
  }

  .block-order-gift-noshi--section h3 {
    font-size: 16px;
  }

  .block-order-gift-noshi--paper-select,
  .block-order-gift-noshi--nameprint-select,
  .block-order-gift-noshi--covertype-select,
  .block-order-gift-noshi--wrap-select,
  .block-order-gift-noshi--message-select,
  .block-order-gift-noshi--bag-select {
    gap: 20px 18px;
  }

  .block-order-gift-noshi--paper-select li,
  .block-order-gift-noshi--nameprint-select li,
  .block-order-gift-noshi--covertype-select li,
  .block-order-gift-noshi--wrap-select li,
  .block-order-gift-noshi--message-select li,
  .block-order-gift-noshi--bag-select li {
    width: 185px;
  }

  .block-order-gift-noshi--paper-item-price,
  .block-order-gift-noshi--wrap-item-price,
  .block-order-gift-noshi--bag-item-price,
  .block-order-gift-noshi--message-item-price  {
    padding: 0 0 0 23px;
  }
  
  .block-order-gift-noshi--covertype-item-price {
    padding: 0 0 0 23px;
  }

  .block-order-gift-noshi--sender {
    padding: 0;
  }

  .block-order-gift-noshi--goods {
    margin: 20px 0 40px;
  }

  .block-order-gift-noshi--nameprint-input,
  .block-order-gift-noshi--nameprint-input tbody th {
    width: auto;
  }

  .block-order-gift-noshi--nameprint-input {
    border-bottom: none;
  }

  .block-order-gift-noshi--nameprint-input td {
    display: flex;
    align-items: center;
    border: none;
    border-bottom: 1px solid var(--responsive-sys-border-color-gray-primary);
  }

  .block-order-gift-noshi--nameprint-input input {
    margin-bottom: 0;
  }

  .block-order-gift-noshi--bag-input {
    font-weight: unset;
  }

  .block-order-gift-noshi--setting-message {
    text-align: center;
    margin: 60px 0 30px;
    padding: 50px 0 0;
  }
  
  .btn.block-order-gift-noshi--setting-btn {
    width: 300px;
    padding: 13px 0;
  }
  
  .btn.block-order-gift-noshi--setting-all-btn {
    width: 300px;
    padding: 13px 0;
  }
  
  .btn.btn-default.block-order-gift-noshi--back-btn {
    min-width: unset;
  }
  
  .btn.btn-default.block-order-gift-noshi--back-btn:hover {
    text-decoration: none;
  }

  .block-order-gift-noshi--setting-all-btn {
    margin-bottom: 20px;
  }
  
  .block-order-gift-select--delivery-dest-goods-noshi-all {
    width: 100%;
    margin: 60px 0 0;
  }
  
  .block-order-gift-select--delivery-dest-goods-noshi-all-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  
  .block-order-gift-select--delivery-dest-goods-noshi-all-title h3 {
    font-size: 24px;
  }
  
  .btn.btn-default.block-order-gift-select--delivery-dest-goods-noshi-all-btn {
    width: 262px;
    padding: 9px 0;
  }
  
  .block-order-gift-select--delivery-dest-goods-noshi-all .block-order-gift-select--delivery-dest-goods-noshi-all-contents dt {
    width: auto;
    padding: 0 20px 0 0;
  }  
}
