        .ec-progress {
          margin: 0 auto;
          padding: 8px 0 16px;
          display: table;
          table-layout: fixed;
          width: 100%;
          max-width: 600px;
          list-style: none;
        }

        .ec-progress .ec-progress__item {
          display: table-cell;
          position: relative;
          font-size: 14px;
          text-align: center;
          font-weight: bold;
          z-index: 10;
        }

        /* 各ステップ間の横線 */
        .ec-progress .ec-progress__item:after {
          content: "";
          position: absolute;
          display: block;
          background: #525263;
          width: 100%;
          height: 0.25em;
          top: 1.25em;
          left: 50%;
          z-index: -1;
        }

        /* 最後のステップは横線なし */
        .ec-progress .ec-progress__item:last-child:after {
          display: none;
        }

        .ec-progress .ec-progress__number {
          line-height: 30px;
          width: 30px;
          height: 30px;
          margin-bottom: 5px;
          font-size: 12px;
          background: #525263;
          color: #fff;
          top: 0;
          left: 18px;
          display: inline-block;
          text-align: center;
          vertical-align: middle;
          border-radius: 50%;
        }

        .ec-progress .ec-progress__label {
          font-size: 12px;
        }

        /* 完了済みステップ */
        .ec-progress .is-complete .ec-progress__number {
          background: #1258DA;
        }

        .ec-progress .is-complete .ec-progress__label {
          color: #1258DA;
        }

        /* ===== カートページ内のラッパー ===== */
        .ec-cartRole .ec-cartRole__progress {
          width: 100%;
          text-align: center;
        }

        /* ===== PC（768px以上） ===== */
        @media only screen and (min-width: 768px) {
          .ec-progress {
            margin-bottom: 50px;
            padding: 0;
          }

          .ec-progress .ec-progress__number {
            line-height: 42px;
            width: 42px;
            height: 42px;
            font-size: 20px;
          }
        }