Index: /branches/version-2_11-dev/data/class/SC_CartSession.php
===================================================================
--- /branches/version-2_11-dev/data/class/SC_CartSession.php	(revision 21247)
+++ /branches/version-2_11-dev/data/class/SC_CartSession.php	(revision 21252)
@@ -524,13 +524,4 @@
             $item =& $items[$key];
             $product =& $item['productsClass'];
-
-            /*
-             * 配送業者のチェック
-             */
-            $arrDeliv = SC_Helper_Purchase_Ex::getDeliv($productTypeId);
-            if (SC_Utils_Ex::isBlank($arrDeliv)) {
-                $tpl_message .= "※「" . $product['name'] . "」はまだ配送の準備ができておりません。恐れ入りますがお問い合わせページよりお問い合わせください。\n";
-            }
-
             /*
              * 表示/非表示商品のチェック
@@ -539,19 +530,29 @@
                 $this->delProduct($item['cart_no'], $productTypeId);
                 $tpl_message .= "※ 現時点で販売していない商品が含まれておりました。該当商品をカートから削除しました。\n";
-            }
-
-            /*
-             * 商品購入制限数, 在庫数のチェック
-             */
-            $limit = $objProduct->getBuyLimit($product);
-            if (!is_null($limit) && $item['quantity'] > $limit) {
-                if ($limit > 0) {
-                    $this->setProductValue($item['id'], 'quantity', $limit, $productTypeId);
-                    $this->setProductValue($item['id'], 'total_inctax', SC_Helper_DB_Ex::sfCalcIncTax($item['price']) * $limit, $productTypeId);
-                    $tpl_message .= "※「" . $product['name'] . "」は販売制限(または在庫が不足)しております。一度に数量{$limit}以上の購入はできません。\n";
-                } else {
+            } else {
+
+                /*
+                 * 配送業者のチェック
+                 */
+                $arrDeliv = SC_Helper_Purchase_Ex::getDeliv($productTypeId);
+                if (SC_Utils_Ex::isBlank($arrDeliv)) {
+                    $tpl_message .= "※「" . $product['name'] . "」はまだ配送の準備ができておりません。恐れ入りますがお問い合わせページよりお問い合わせください。\n";
                     $this->delProduct($item['cart_no'], $productTypeId);
-                    $tpl_message .= "※「" . $product['name'] . "」は売り切れました。\n";
-                    continue;
+                }
+
+                /*
+                 * 商品購入制限数, 在庫数のチェック
+                 */
+                $limit = $objProduct->getBuyLimit($product);
+                if (!is_null($limit) && $item['quantity'] > $limit) {
+                    if ($limit > 0) {
+                        $this->setProductValue($item['id'], 'quantity', $limit, $productTypeId);
+                        $this->setProductValue($item['id'], 'total_inctax', SC_Helper_DB_Ex::sfCalcIncTax($item['price']) * $limit, $productTypeId);
+                        $tpl_message .= "※「" . $product['name'] . "」は販売制限(または在庫が不足)しております。一度に数量{$limit}以上の購入はできません。\n";
+                    } else {
+                        $this->delProduct($item['cart_no'], $productTypeId);
+                        $tpl_message .= "※「" . $product['name'] . "」は売り切れました。\n";
+                        continue;
+                    }
                 }
             }
Index: /branches/version-2_11-dev/data/class/pages/cart/LC_Page_Cart.php
===================================================================
--- /branches/version-2_11-dev/data/class/pages/cart/LC_Page_Cart.php	(revision 21062)
+++ /branches/version-2_11-dev/data/class/pages/cart/LC_Page_Cart.php	(revision 21252)
@@ -132,5 +132,6 @@
         $this->arrInfo = SC_Helper_DB_Ex::sfGetBasisData();
         $totalIncTax = 0;
-        foreach ($this->cartKeys as $key) {
+        foreach (array_keys($this->cartKeys) as $index) {
+            $key = $this->cartKeys[$index];
             // カート集計処理
             $this->tpl_message = $objCartSess->checkProducts($key);
@@ -148,4 +149,7 @@
             // 送料無料までの金額を計算
             $this->tpl_deliv_free[$key] = $this->arrInfo['free_rule'] - $this->tpl_total_inctax[$key];
+            if (SC_Utils_Ex::isBlank($key)) {
+                unset($this->cartKeys[$index]);
+            }
         }
 
