var/cache/dev/twig/5e/5e5c3113f9b41fb713d774a515f2c1af1044ded03994d0316524bb5012307768.php line 53

Open in your IDE?
  1. <?php
  2. use Twig\Environment;
  3. use Twig\Error\LoaderError;
  4. use Twig\Error\RuntimeError;
  5. use Twig\Extension\SandboxExtension;
  6. use Twig\Markup;
  7. use Twig\Sandbox\SecurityError;
  8. use Twig\Sandbox\SecurityNotAllowedTagError;
  9. use Twig\Sandbox\SecurityNotAllowedFilterError;
  10. use Twig\Sandbox\SecurityNotAllowedFunctionError;
  11. use Twig\Source;
  12. use Twig\Template;
  13. /* Product/list.twig */
  14. class __TwigTemplate_2540083cd6d312e1063499d94ad38e033494c7a31043c32ede75cc0607468d8c extends \Eccube\Twig\Template
  15. {
  16.     private $source;
  17.     private $macros = [];
  18.     public function __construct(Environment $env)
  19.     {
  20.         parent::__construct($env);
  21.         $this->source $this->getSourceContext();
  22.         $this->blocks = [
  23.             'stylesheet' => [$this'block_stylesheet'],
  24.             'javascript' => [$this'block_javascript'],
  25.             'main' => [$this'block_main'],
  26.         ];
  27.     }
  28.     protected function doGetParent(array $context)
  29.     {
  30.         // line 11
  31.         return "default_frame.twig";
  32.     }
  33.     protected function doDisplay(array $context, array $blocks = [])
  34.     {
  35.         $macros $this->macros;
  36.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  37.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""Product/list.twig"));
  38.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  39.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""Product/list.twig"));
  40.         // line 13
  41.         $context["body_class"] = "product_page";
  42.         // line 11
  43.         $this->parent $this->loadTemplate("default_frame.twig""Product/list.twig"11);
  44.         $this->parent->display($contextarray_merge($this->blocks$blocks));
  45.         
  46.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
  47.         
  48.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
  49.     }
  50.     // line 15
  51.     public function block_stylesheet($context, array $blocks = [])
  52.     {
  53.         $macros $this->macros;
  54.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  55.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""stylesheet"));
  56.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  57.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""stylesheet"));
  58.         // line 16
  59.         echo "    <link rel=\"stylesheet\" href=\"/html/plugins/ion-rangeslider/css/ion.rangeSlider.min.css\">
  60.     <style>
  61.         /* ============================================
  62.            サイドバー付き 2カラムレイアウト
  63.         ============================================ */
  64.         .ec-productListLayout {
  65.             display: flex;
  66.             gap: 32px;
  67.             align-items: flex-start;
  68.         }
  69.         /* ============================================
  70.            サイドバー(フィルターパネル)
  71.         ============================================ */
  72.         .ec-filterSidebar {
  73.             position: static;
  74.             margin: 20px;
  75.             width: 240px;
  76.             flex-shrink: 0;
  77.         }
  78. \t\t.ec-searchnavRole {
  79. \t\t\tmargin-left: calc((100% - 1130px - 280px) / 2);
  80. \t\t}
  81. \t\t.ec-shelfRole {
  82. \t\t\tmargin-left: calc((100% - 1130px - 280px) / 2);
  83. \t\t}
  84. \t\t.ec-pagerRole {
  85. \t\t\tmargin-left: calc((100% - 1130px - 280px) / 2);
  86. \t\t}
  87.         .ec-filterSidebar__section {
  88.             background: #fff;
  89.             border: 1px solid #e8e8e8;
  90.             border-radius: 6px;
  91.             padding: 18px 16px;
  92.             margin-bottom: 16px;
  93.         }
  94.         .ec-filterSidebar__heading {
  95.             font-size: 13px;
  96.             font-weight: bold;
  97.             color: #222;
  98.             margin: 0 0 12px;
  99.             padding-bottom: 10px;
  100.             border-bottom: 2px solid #222;
  101.             letter-spacing: 0.05em;
  102.         }
  103.         /* カテゴリリスト */
  104.         .ec-filterSidebar__categoryList,
  105.         .ec-filterSidebar__categoryList ul {
  106.             list-style: none;
  107.             padding: 0;
  108.             margin: 0;
  109.         }
  110.         .ec-filterSidebar__categoryList li a {
  111.             display: block;
  112.             padding: 6px 8px;
  113.             font-size: 13px;
  114.             color: #444;
  115.             text-decoration: none;
  116.             border-radius: 4px;
  117.             transition: background 0.15s, color 0.15s;
  118.         }
  119.         .ec-filterSidebar__categoryList li a:hover {
  120.             background: #f5f5f5;
  121.             color: #222;
  122.         }
  123.         .ec-filterSidebar__categoryList li.is-active > a {
  124.             font-weight: bold;
  125.             color: #c00;
  126.             background: #fff5f5;
  127.         }
  128.         /* サブカテゴリ */
  129.         .ec-filterSidebar__categoryList ul {
  130.             padding-left: 12px;
  131.             margin-top: 2px;
  132.         }
  133.         .ec-filterSidebar__categoryList ul li a {
  134.             font-size: 12px;
  135.             color: #666;
  136.             padding: 4px 8px;
  137.         }
  138.         /* メーカーリスト */
  139.         .ec-filterSidebar__makerList {
  140.             list-style: none;
  141.             padding: 0;
  142.             margin: 0;
  143.         }
  144.         .ec-filterSidebar__makerList li {
  145.             border-bottom: 1px solid #f0f0f0;
  146.         }
  147.         .ec-filterSidebar__makerList li:last-child {
  148.             border-bottom: none;
  149.         }
  150.         .ec-filterSidebar__makerList li a {
  151.             display: flex;
  152.             align-items: center;
  153.             gap: 6px;
  154.             padding: 7px 6px;
  155.             font-size: 13px;
  156.             color: #444;
  157.             text-decoration: none;
  158.             transition: color 0.15s;
  159.         }
  160.         .ec-filterSidebar__makerList li a:hover {
  161.             color: #c00;
  162.         }
  163.         .ec-filterSidebar__makerList li.is-active a {
  164.             font-weight: bold;
  165.             color: #c00;
  166.         }
  167.         .ec-filterSidebar__makerList li.is-active a::before {
  168.             content: \"✓\";
  169.             font-size: 11px;
  170.             color: #c00;
  171.         }
  172.         /* 価格帯フィルター */
  173.         .ec-filterSidebar__priceDisplay {
  174.             text-align: center;
  175.             font-size: 13px;
  176.             color: #333;
  177.             margin-bottom: 12px;
  178.             font-weight: bold;
  179.         }
  180.         .ec-filterSidebar__priceDisplay span {
  181.             color: #c00;
  182.         }
  183.         .ec-filterSidebar__priceSliderWrap {
  184.             padding: 0 4px;
  185.             margin-bottom: 16px;
  186.         }
  187.         .ec-filterSidebar__priceApply {
  188.             display: block;
  189.             width: 100%;
  190.             padding: 8px;
  191.             background: #222;
  192.             color: #fff;
  193.             border: none;
  194.             border-radius: 4px;
  195.             font-size: 13px;
  196.             cursor: pointer;
  197.             text-align: center;
  198.             transition: background 0.2s;
  199.         }
  200.         .ec-filterSidebar__priceApply:hover {
  201.             background: #444;
  202.         }
  203.         .ec-filterSidebar__pricePreset {
  204.             list-style: none;
  205.             padding: 0;
  206.             margin: 10px 0 0;
  207.         }
  208.         .ec-filterSidebar__pricePreset li a {
  209.             display: block;
  210.             padding: 5px 6px;
  211.             font-size: 12px;
  212.             color: #666;
  213.             text-decoration: none;
  214.             border-radius: 4px;
  215.             transition: background 0.15s;
  216.         }
  217.         .ec-filterSidebar__pricePreset li a:hover {
  218.             background: #f5f5f5;
  219.             color: #333;
  220.         }
  221.         /* 絞り込みリセット */
  222.         .ec-filterSidebar__reset a {
  223.             display: block;
  224.             text-align: center;
  225.             padding: 8px;
  226.             font-size: 12px;
  227.             color: #888;
  228.             text-decoration: underline;
  229.             border: 1px solid #ddd;
  230.             border-radius: 4px;
  231.             transition: color 0.15s, border-color 0.15s;
  232.         }
  233.         .ec-filterSidebar__reset a:hover {
  234.             color: #c00;
  235.             border-color: #c00;
  236.         }
  237.         /* 現在の絞り込み条件バッジ */
  238.         .ec-filterActive {
  239.             display: flex;
  240.             flex-wrap: wrap;
  241.             gap: 6px;
  242.             margin-bottom: 12px;
  243.             padding: 10px 12px;
  244.             background: #f9f9f9;
  245.             border: 1px solid #e8e8e8;
  246.             border-radius: 6px;
  247.         }
  248.         .ec-filterActive__label {
  249.             font-size: 11px;
  250.             color: #888;
  251.             align-self: center;
  252.             margin-right: 4px;
  253.         }
  254.         .ec-filterActive__tag {
  255.             display: inline-flex;
  256.             align-items: center;
  257.             gap: 4px;
  258.             padding: 3px 8px;
  259.             background: #222;
  260.             color: #fff;
  261.             border-radius: 20px;
  262.             font-size: 11px;
  263.         }
  264.         .ec-filterActive__tag a {
  265.             color: #aaa;
  266.             text-decoration: none;
  267.             font-size: 12px;
  268.             line-height: 1;
  269.         }
  270.         .ec-filterActive__tag a:hover {
  271.             color: #fff;
  272.         }
  273.         /* メインコンテンツ側 */
  274.         .ec-productListMain {
  275.             flex: 1;
  276.             min-width: 0;
  277.         }
  278.         /* ion-rangeslider カスタマイズ */
  279.         .irs--flat .irs-bar {
  280.             background-color: #222;
  281.         }
  282.         .irs--flat .irs-handle > i:first-child {
  283.             background-color: #222;
  284.         }
  285.         .irs--flat .irs-from,
  286.         .irs--flat .irs-to,
  287.         .irs--flat .irs-single {
  288.             background-color: #222;
  289.             font-size: 11px;
  290.         }
  291.         /* モバイル対応 */
  292.         @media (max-width: 767px) {
  293.             .ec-productListLayout {
  294.                 flex-direction: column;
  295.             }
  296.             .ec-filterSidebar {
  297.             \tposition: static;
  298.                 width: 100%;
  299.             }
  300.             .ec-filterSidebar__section {
  301.                 margin-bottom: 10px;
  302.             }
  303.             /* モバイルではアコーディオン形式 */
  304.             .ec-filterSidebar__body {
  305.                 display: none;
  306.             }
  307.             .ec-filterSidebar__body.is-open {
  308.                 display: block;
  309.             }
  310.             .ec-filterSidebar__heading {
  311.                 cursor: pointer;
  312.                 display: flex;
  313.                 justify-content: space-between;
  314.                 align-items: center;
  315.                 margin-bottom: 0;
  316.                 padding-bottom: 0;
  317.                 border-bottom: none;
  318.             }
  319.             .ec-filterSidebar__heading.is-open {
  320.                 margin-bottom: 12px;
  321.                 padding-bottom: 10px;
  322.                 border-bottom: 2px solid #222;
  323.             }
  324.             .ec-filterSidebar__heading::after {
  325.                 content: \"▼\";
  326.                 font-size: 10px;
  327.                 color: #888;
  328.                 transition: transform 0.2s;
  329.             }
  330.             .ec-filterSidebar__heading.is-open::after {
  331.                 transform: rotate(180deg);
  332.             }
  333.         }
  334.     </style>
  335. ";
  336.         
  337.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
  338.         
  339.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
  340.     }
  341.     // line 341
  342.     public function block_javascript($context, array $blocks = [])
  343.     {
  344.         $macros $this->macros;
  345.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  346.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""javascript"));
  347.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  348.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""javascript"));
  349.         // line 342
  350.         echo "    <script>
  351.         eccube.productsClassCategories = {
  352.             ";
  353.         // line 344
  354.         $context['_parent'] = $context;
  355.         $context['_seq'] = twig_ensure_traversable((isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'344$this->source); })()));
  356.         $context['loop'] = [
  357.           'parent' => $context['_parent'],
  358.           'index0' => 0,
  359.           'index'  => 1,
  360.           'first'  => true,
  361.         ];
  362.         if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  363.             $length count($context['_seq']);
  364.             $context['loop']['revindex0'] = $length 1;
  365.             $context['loop']['revindex'] = $length;
  366.             $context['loop']['length'] = $length;
  367.             $context['loop']['last'] = === $length;
  368.         }
  369.         foreach ($context['_seq'] as $context["_key"] => $context["Product"]) {
  370.             // line 345
  371.             echo "            \"";
  372.             echo twig_escape_filter($this->envtwig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse345), "js"), "html"nulltrue);
  373.             echo "\": ";
  374.             echo $this->extensions['Eccube\Twig\Extension\EccubeExtension']->getClassCategoriesAsJson($context["Product"]);
  375.             if ((twig_get_attribute($this->env$this->source$context["loop"], "last", [], "any"falsefalsefalse345) == false)) {
  376.                 echo ", ";
  377.             }
  378.             // line 346
  379.             echo "            ";
  380.             ++$context['loop']['index0'];
  381.             ++$context['loop']['index'];
  382.             $context['loop']['first'] = false;
  383.             if (isset($context['loop']['length'])) {
  384.                 --$context['loop']['revindex0'];
  385.                 --$context['loop']['revindex'];
  386.                 $context['loop']['last'] = === $context['loop']['revindex0'];
  387.             }
  388.         }
  389.         $_parent $context['_parent'];
  390.         unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Product'], $context['_parent'], $context['loop']);
  391.         $context array_intersect_key($context$_parent) + $_parent;
  392.         // line 347
  393.         echo "        };
  394.         \$(function() {
  395.             // 表示件数を変更
  396.             \$('.disp-number').change(function() {
  397.                 var dispNumber = \$(this).val();
  398.                 \$('#disp_number').val(dispNumber);
  399.                 \$('#pageno').val(1);
  400.                 \$(\"#form1\").submit();
  401.             });
  402.             // 並び順を変更
  403.             \$('.order-by').change(function() {
  404.                 var orderBy = \$(this).val();
  405.                 \$('#orderby').val(orderBy);
  406.                 \$('#pageno').val(1);
  407.                 \$(\"#form1\").submit();
  408.             });
  409.             // ==============================
  410.             // 価格帯スライダー(ion-rangeslider)
  411.             // ==============================
  412.             var priceMin = parseInt('";
  413.         // line 370
  414.         ((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'370$this->source); })()), "request", [], "any"falsefalsefalse370), "query", [], "any"falsefalsefalse370), "get", [=> "price_min"], "method"falsefalsefalse370)) ? (print (twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'370$this->source); })()), "request", [], "any"falsefalsefalse370), "query", [], "any"falsefalsefalse370), "get", [=> "price_min"], "method"falsefalsefalse370), "html"nulltrue))) : (print (0)));
  415.         echo "') || 0;
  416.             var priceMax = parseInt('";
  417.         // line 371
  418.         ((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'371$this->source); })()), "request", [], "any"falsefalsefalse371), "query", [], "any"falsefalsefalse371), "get", [=> "price_max"], "method"falsefalsefalse371)) ? (print (twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'371$this->source); })()), "request", [], "any"falsefalsefalse371), "query", [], "any"falsefalsefalse371), "get", [=> "price_max"], "method"falsefalsefalse371), "html"nulltrue))) : (print (5000000)));
  419.         echo "') || 5000000;
  420.             \$(\"#price-range-slider\").ionRangeSlider({
  421.                 type: \"double\",
  422.                 min: 0,
  423.                 max: 5000000,
  424.                 from: priceMin,
  425.                 to: priceMax,
  426.                 step: 10000,
  427.                 prettify_enabled: true,
  428.                 prettify_separator: \",\",
  429.                 postfix: \"円\",
  430.                 onFinish: function(data) {
  431.                     \$('#price_min_val').val(data.from);
  432.                     \$('#price_max_val').val(data.to);
  433.                     // 表示更新
  434.                     \$('#price-display-min').text(Number(data.from).toLocaleString());
  435.                     \$('#price-display-max').text(Number(data.to).toLocaleString());
  436.                 }
  437.             });
  438.             // 価格フォーム送信
  439.             \$('#price-filter-apply').on('click', function() {
  440.                 var min = \$('#price_min_val').val();
  441.                 var max = \$('#price_max_val').val();
  442.                 var url = new URL(window.location.href);
  443.                 url.searchParams.set('price_min', min);
  444.                 url.searchParams.set('price_max', max);
  445.                 url.searchParams.delete('pageno');
  446.                 window.location.href = url.toString();
  447.             });
  448.             // モバイル:アコーディオン
  449.             \$('.ec-filterSidebar__heading').on('click', function() {
  450.                 if (\$(window).width() <= 767) {
  451.                     \$(this).toggleClass('is-open');
  452.                     \$(this).next('.ec-filterSidebar__body').toggleClass('is-open');
  453.                 }
  454.             });
  455.         });
  456.         \$('.ec-modal-wrap').on('click', function(e) {
  457.             e.stopPropagation();
  458.         });
  459.         \$('.ec-modal-overlay, .ec-modal, .ec-modal-close, .ec-inlineBtn--cancel').on('click', function() {
  460.             \$('.ec-modal').hide()
  461.         });
  462. \t    // 価格プリセットのクイック適用
  463. \t    function applyPrice(min, max) {
  464. \t        var url = new URL(window.location.href);
  465. \t        url.searchParams.set('price_min', min);
  466. \t        url.searchParams.set('price_max', max);
  467. \t        url.searchParams.delete('pageno');
  468. \t        window.location.href = url.toString();
  469. \t    }
  470.     </script>
  471.     <script src=\"/html/plugins/ion-rangeslider/js/ion.rangeSlider.min.js\"></script>
  472. ";
  473.         
  474.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
  475.         
  476.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
  477.     }
  478.     // line 432
  479.     public function block_main($context, array $blocks = [])
  480.     {
  481.         $macros $this->macros;
  482.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  483.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->enter($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""main"));
  484.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  485.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""main"));
  486.         // line 433
  487.         echo "
  488.         ";
  489.         // line 435
  490.         $context["hasFilter"] = (((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'435$this->source); })()), "request", [], "any"falsefalsefalse435), "query", [], "any"falsefalsefalse435), "get", [=> "category_id"], "method"falsefalsefalse435) || twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'435$this->source); })()), "request", [], "any"falsefalsefalse435), "query", [], "any"falsefalsefalse435), "get", [=> "maker_id"], "method"falsefalsefalse435)) || twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'435$this->source); })()), "request", [], "any"falsefalsefalse435), "query", [], "any"falsefalsefalse435), "get", [=> "price_min"], "method"falsefalsefalse435)) || twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'435$this->source); })()), "request", [], "any"falsefalsefalse435), "query", [], "any"falsefalsefalse435), "get", [=> "price_max"], "method"falsefalsefalse435));
  491.         // line 436
  492.         echo "
  493.         ";
  494.         // line 440
  495.         echo "        <div class=\"ec-productListLayout\">
  496.             ";
  497.         // line 443
  498.         echo "            <aside class=\"ec-filterSidebar\">
  499.                 ";
  500.         // line 445
  501.         echo "                <div class=\"ec-filterSidebar__section\">
  502.                     <h3 class=\"ec-filterSidebar__heading\">価格帯</h3>
  503.                     <div class=\"ec-filterSidebar__body is-open\">
  504.                         <div class=\"ec-filterSidebar__priceDisplay\">
  505.                             <span id=\"price-display-min\">";
  506.         // line 449
  507.         ((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'449$this->source); })()), "request", [], "any"falsefalsefalse449), "query", [], "any"falsefalsefalse449), "get", [=> "price_min"], "method"falsefalsefalse449)) ? (print (twig_escape_filter($this->envtwig_number_format_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'449$this->source); })()), "request", [], "any"falsefalsefalse449), "query", [], "any"falsefalsefalse449), "get", [=> "price_min"], "method"falsefalsefalse449)), "html"nulltrue))) : (print ("0")));
  508.         echo "</span>円
  509.                             〜
  510.                             <span id=\"price-display-max\">";
  511.         // line 451
  512.         ((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'451$this->source); })()), "request", [], "any"falsefalsefalse451), "query", [], "any"falsefalsefalse451), "get", [=> "price_max"], "method"falsefalsefalse451)) ? (print (twig_escape_filter($this->envtwig_number_format_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'451$this->source); })()), "request", [], "any"falsefalsefalse451), "query", [], "any"falsefalsefalse451), "get", [=> "price_max"], "method"falsefalsefalse451)), "html"nulltrue))) : (print ("5,000,000")));
  513.         echo "</span>円
  514.                         </div>
  515.                         <div class=\"ec-filterSidebar__priceSliderWrap\">
  516.                             <input type=\"text\" id=\"price-range-slider\" style=\"display:none;\">
  517.                             <input type=\"hidden\" id=\"price_min_val\" value=\"";
  518.         // line 455
  519.         ((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'455$this->source); })()), "request", [], "any"falsefalsefalse455), "query", [], "any"falsefalsefalse455), "get", [=> "price_min"], "method"falsefalsefalse455)) ? (print (twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'455$this->source); })()), "request", [], "any"falsefalsefalse455), "query", [], "any"falsefalsefalse455), "get", [=> "price_min"], "method"falsefalsefalse455), "html"nulltrue))) : (print (0)));
  520.         echo "\">
  521.                             <input type=\"hidden\" id=\"price_max_val\" value=\"";
  522.         // line 456
  523.         ((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'456$this->source); })()), "request", [], "any"falsefalsefalse456), "query", [], "any"falsefalsefalse456), "get", [=> "price_max"], "method"falsefalsefalse456)) ? (print (twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'456$this->source); })()), "request", [], "any"falsefalsefalse456), "query", [], "any"falsefalsefalse456), "get", [=> "price_max"], "method"falsefalsefalse456), "html"nulltrue))) : (print (5000000)));
  524.         echo "\">
  525.                         </div>
  526.                         <button id=\"price-filter-apply\" class=\"ec-filterSidebar__priceApply\">この価格帯で絞り込む</button>
  527.                         <ul class=\"ec-filterSidebar__pricePreset\">
  528.                             <li><a href=\"javascript:void(0);\" onclick=\"applyPrice(0, 300000)\">〜30万円</a></li>
  529.                             <li><a href=\"javascript:void(0);\" onclick=\"applyPrice(300000, 600000)\">30万円〜60万円</a></li>
  530.                             <li><a href=\"javascript:void(0);\" onclick=\"applyPrice(600000, 1000000)\">60万円〜100万円</a></li>
  531.                             <li><a href=\"javascript:void(0);\" onclick=\"applyPrice(1000000, 5000000)\">100万円〜</a></li>
  532.                         </ul>
  533.                     </div>
  534.                 </div>
  535.                 ";
  536.         // line 471
  537.         echo "                <div class=\"ec-filterSidebar__section\">
  538.                     <h3 class=\"ec-filterSidebar__heading\">ブランド</h3>
  539.                     <div class=\"ec-filterSidebar__body is-open\">
  540.                         <ul class=\"ec-filterSidebar__makerList\">
  541.                             ";
  542.         // line 475
  543.         if (array_key_exists("Makers"$context)) {
  544.             // line 476
  545.             echo "                                ";
  546.             $context['_parent'] = $context;
  547.             $context['_seq'] = twig_ensure_traversable((isset($context["Makers"]) || array_key_exists("Makers"$context) ? $context["Makers"] : (function () { throw new RuntimeError('Variable "Makers" does not exist.'476$this->source); })()));
  548.             foreach ($context['_seq'] as $context["_key"] => $context["MakerItem"]) {
  549.                 // line 477
  550.                 echo "                                    <li class=\"";
  551.                 echo ((( !(null === (isset($context["Maker"]) || array_key_exists("Maker"$context) ? $context["Maker"] : (function () { throw new RuntimeError('Variable "Maker" does not exist.'477$this->source); })())) && (twig_get_attribute($this->env$this->source, (isset($context["Maker"]) || array_key_exists("Maker"$context) ? $context["Maker"] : (function () { throw new RuntimeError('Variable "Maker" does not exist.'477$this->source); })()), "id", [], "any"falsefalsefalse477) == twig_get_attribute($this->env$this->source$context["MakerItem"], "id", [], "any"falsefalsefalse477)))) ? ("is-active") : (""));
  552.                 echo "\">
  553.                                         <a href=\"";
  554.                 // line 478
  555.                 echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  556.                 echo "?maker_id=";
  557.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["MakerItem"], "id", [], "any"falsefalsefalse478), "html"nulltrue);
  558.                 if (twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'478$this->source); })()), "request", [], "any"falsefalsefalse478), "query", [], "any"falsefalsefalse478), "get", [=> "category_id"], "method"falsefalsefalse478)) {
  559.                     echo "&category_id=";
  560.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'478$this->source); })()), "request", [], "any"falsefalsefalse478), "query", [], "any"falsefalsefalse478), "get", [=> "category_id"], "method"falsefalsefalse478), "html"nulltrue);
  561.                 }
  562.                 echo "\">
  563.                                             ";
  564.                 // line 479
  565.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["MakerItem"], "name", [], "any"falsefalsefalse479), "html"nulltrue);
  566.                 echo "
  567.                                         </a>
  568.                                     </li>
  569.                                 ";
  570.             }
  571.             $_parent $context['_parent'];
  572.             unset($context['_seq'], $context['_iterated'], $context['_key'], $context['MakerItem'], $context['_parent'], $context['loop']);
  573.             $context array_intersect_key($context$_parent) + $_parent;
  574.             // line 483
  575.             echo "                            ";
  576.         } else {
  577.             // line 484
  578.             echo "                                ";
  579.             // line 485
  580.             echo "                                ";
  581.             $context["makerList"] = [=> ["id" => 1"name" => "LIXIL"], => ["id" => 2"name" => "YKK AP"], => ["id" => 3"name" => "三協アルミ"], => ["id" => 4"name" => "四国化成"], => ["id" => 5"name" => "タカショー"], => ["id" => 6"name" => "ユニソン"], => ["id" => 7"name" => "エスビック"], => ["id" => 8"name" => "パナソニック"], => ["id" => 9"name" => "イナバ"], => ["id" => 10"name" => "ヨドコウ"], 10 => ["id" => 13"name" => "タクボ"]];
  582.             // line 498
  583.             echo "                                ";
  584.             $context['_parent'] = $context;
  585.             $context['_seq'] = twig_ensure_traversable((isset($context["makerList"]) || array_key_exists("makerList"$context) ? $context["makerList"] : (function () { throw new RuntimeError('Variable "makerList" does not exist.'498$this->source); })()));
  586.             foreach ($context['_seq'] as $context["_key"] => $context["maker"]) {
  587.                 // line 499
  588.                 echo "                                    <li class=\"";
  589.                 echo ((( !(null === (isset($context["Maker"]) || array_key_exists("Maker"$context) ? $context["Maker"] : (function () { throw new RuntimeError('Variable "Maker" does not exist.'499$this->source); })())) && (twig_get_attribute($this->env$this->source, (isset($context["Maker"]) || array_key_exists("Maker"$context) ? $context["Maker"] : (function () { throw new RuntimeError('Variable "Maker" does not exist.'499$this->source); })()), "id", [], "any"falsefalsefalse499) == twig_get_attribute($this->env$this->source$context["maker"], "id", [], "any"falsefalsefalse499)))) ? ("is-active") : (""));
  590.                 echo "\">
  591.                                         <a href=\"";
  592.                 // line 500
  593.                 echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  594.                 echo "?maker_id=";
  595.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["maker"], "id", [], "any"falsefalsefalse500), "html"nulltrue);
  596.                 if (twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'500$this->source); })()), "request", [], "any"falsefalsefalse500), "query", [], "any"falsefalsefalse500), "get", [=> "category_id"], "method"falsefalsefalse500)) {
  597.                     echo "&category_id=";
  598.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'500$this->source); })()), "request", [], "any"falsefalsefalse500), "query", [], "any"falsefalsefalse500), "get", [=> "category_id"], "method"falsefalsefalse500), "html"nulltrue);
  599.                 }
  600.                 echo "\">
  601.                                             ";
  602.                 // line 501
  603.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["maker"], "name", [], "any"falsefalsefalse501), "html"nulltrue);
  604.                 echo "
  605.                                         </a>
  606.                                     </li>
  607.                                 ";
  608.             }
  609.             $_parent $context['_parent'];
  610.             unset($context['_seq'], $context['_iterated'], $context['_key'], $context['maker'], $context['_parent'], $context['loop']);
  611.             $context array_intersect_key($context$_parent) + $_parent;
  612.             // line 505
  613.             echo "                            ";
  614.         }
  615.         // line 506
  616.         echo "                        </ul>
  617.                     </div>
  618.                 </div>
  619.                 ";
  620.         // line 510
  621.         echo "                <div class=\"ec-filterSidebar__section\">
  622.                     <h3 class=\"ec-filterSidebar__heading\">カテゴリ</h3>
  623.                     <div class=\"ec-filterSidebar__body is-open\">
  624.                         ";
  625.         // line 513
  626.         $context["categoryList"] = [=> ["id" => 7"name" => "カーポート・車庫""children" => []], => ["id" => 16"name" => "ガレージ・倉庫""children" => []], => ["id" => 8"name" => "サイクルポート・駐輪場""children" => []], => ["id" => 9"name" => "ゲート""children" => [=> ["id" => 30"name" => "跳ね上げ式ゲート"], => ["id" => 29"name" => "伸縮ゲート"], => ["id" => 31"name" => "ガレージシャッター"]]], => ["id" => 12"name" => "テラス""children" => [=> ["id" => 33"name" => "テラス囲い"], => ["id" => 32"name" => "テラス屋根"]]], => ["id" => 19"name" => "ベランダ・バルコニー""children" => [=> ["id" => 35"name" => "ベランダ・バルコニー屋根"], => ["id" => 34"name" => "ベランダ・バルコニー"]]], => ["id" => 18"name" => "オーニング・日よけ""children" => []], => ["id" => 11"name" => "ウッドデッキ""children" => [=> ["id" => 37"name" => "タイルデッキ"], => ["id" => 36"name" => "ウッドデッキ"]]], => ["id" => 14"name" => "フェンス・柵""children" => []], => ["id" => 25"name" => "門扉""children" => []], 10 => ["id" => 13"name" => "ポスト・門柱宅配ボックス""children" => []], 11 => ["id" => 15"name" => "物置・収納・屋外倉庫""children" => []], 12 => ["id" => 20"name" => "ガーデンファニチャー""children" => []], 13 => ["id" => 22"name" => "人工芝""children" => []], 14 => ["id" => 17"name" => "内窓・二重窓""children" => []], 15 => ["id" => 26"name" => "その他""children" => [=> ["id" => 38"name" => "パーゴラ"], => ["id" => 39"name" => "立水栓・ガーデンシンク"], => ["id" => 40"name" => "手すり"], => ["id" => 10"name" => "ストックヤード"], => ["id" => 27"name" => "ゴミステーション"], => ["id" => 42"name" => "面格子・窓格子"], => ["id" => 41"name" => "窓シャッター"], => ["id" => 43"name" => "玄関ドア"], => ["id" => 28"name" => "石材"], => ["id" => 44"name" => "照明"], 10 => ["id" => 21"name" => "DIY材料"]]]];
  627.         // line 556
  628.         echo "                        <ul class=\"ec-filterSidebar__categoryList\">
  629.                             <li class=\"";
  630.         // line 557
  631.         echo (((twig_test_empty(twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'557$this->source); })()), "request", [], "any"falsefalsefalse557), "query", [], "any"falsefalsefalse557), "get", [=> "category_id"], "method"falsefalsefalse557)) && (null === (isset($context["Maker"]) || array_key_exists("Maker"$context) ? $context["Maker"] : (function () { throw new RuntimeError('Variable "Maker" does not exist.'557$this->source); })())))) ? ("is-active") : (""));
  632.         echo "\">
  633.                                 <a href=\"";
  634.         // line 558
  635.         echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  636.         echo "\">すべて</a>
  637.                             </li>
  638.                             ";
  639.         // line 560
  640.         $context['_parent'] = $context;
  641.         $context['_seq'] = twig_ensure_traversable((isset($context["categoryList"]) || array_key_exists("categoryList"$context) ? $context["categoryList"] : (function () { throw new RuntimeError('Variable "categoryList" does not exist.'560$this->source); })()));
  642.         foreach ($context['_seq'] as $context["_key"] => $context["cat"]) {
  643.             // line 561
  644.             echo "                                <li class=\"";
  645.             echo (((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'561$this->source); })()), "request", [], "any"falsefalsefalse561), "query", [], "any"falsefalsefalse561), "get", [=> "category_id"], "method"falsefalsefalse561) == twig_get_attribute($this->env$this->source$context["cat"], "id", [], "any"falsefalsefalse561))) ? ("is-active") : (""));
  646.             echo "\">
  647.                                     <a href=\"";
  648.             // line 562
  649.             echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  650.             echo "?category_id=";
  651.             echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["cat"], "id", [], "any"falsefalsefalse562), "html"nulltrue);
  652.             if (twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'562$this->source); })()), "request", [], "any"falsefalsefalse562), "query", [], "any"falsefalsefalse562), "get", [=> "maker_id"], "method"falsefalsefalse562)) {
  653.                 echo "&maker_id=";
  654.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'562$this->source); })()), "request", [], "any"falsefalsefalse562), "query", [], "any"falsefalsefalse562), "get", [=> "maker_id"], "method"falsefalsefalse562), "html"nulltrue);
  655.             }
  656.             echo "\">
  657.                                         ";
  658.             // line 563
  659.             echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["cat"], "name", [], "any"falsefalsefalse563), "html"nulltrue);
  660.             echo "
  661.                                     </a>
  662.                                     ";
  663.             // line 565
  664.             if ((twig_length_filter($this->envtwig_get_attribute($this->env$this->source$context["cat"], "children", [], "any"falsefalsefalse565)) > 0)) {
  665.                 // line 566
  666.                 echo "                                        <ul>
  667.                                             ";
  668.                 // line 567
  669.                 $context['_parent'] = $context;
  670.                 $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->source$context["cat"], "children", [], "any"falsefalsefalse567));
  671.                 foreach ($context['_seq'] as $context["_key"] => $context["child"]) {
  672.                     // line 568
  673.                     echo "                                                <li class=\"";
  674.                     echo (((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'568$this->source); })()), "request", [], "any"falsefalsefalse568), "query", [], "any"falsefalsefalse568), "get", [=> "category_id"], "method"falsefalsefalse568) == twig_get_attribute($this->env$this->source$context["child"], "id", [], "any"falsefalsefalse568))) ? ("is-active") : (""));
  675.                     echo "\">
  676.                                                     <a href=\"";
  677.                     // line 569
  678.                     echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  679.                     echo "?category_id=";
  680.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["child"], "id", [], "any"falsefalsefalse569), "html"nulltrue);
  681.                     if (twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'569$this->source); })()), "request", [], "any"falsefalsefalse569), "query", [], "any"falsefalsefalse569), "get", [=> "maker_id"], "method"falsefalsefalse569)) {
  682.                         echo "&maker_id=";
  683.                         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'569$this->source); })()), "request", [], "any"falsefalsefalse569), "query", [], "any"falsefalsefalse569), "get", [=> "maker_id"], "method"falsefalsefalse569), "html"nulltrue);
  684.                     }
  685.                     echo "\">
  686.                                                         ";
  687.                     // line 570
  688.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["child"], "name", [], "any"falsefalsefalse570), "html"nulltrue);
  689.                     echo "
  690.                                                     </a>
  691.                                                 </li>
  692.                                             ";
  693.                 }
  694.                 $_parent $context['_parent'];
  695.                 unset($context['_seq'], $context['_iterated'], $context['_key'], $context['child'], $context['_parent'], $context['loop']);
  696.                 $context array_intersect_key($context$_parent) + $_parent;
  697.                 // line 574
  698.                 echo "                                        </ul>
  699.                                     ";
  700.             }
  701.             // line 576
  702.             echo "                                </li>
  703.                             ";
  704.         }
  705.         $_parent $context['_parent'];
  706.         unset($context['_seq'], $context['_iterated'], $context['_key'], $context['cat'], $context['_parent'], $context['loop']);
  707.         $context array_intersect_key($context$_parent) + $_parent;
  708.         // line 578
  709.         echo "                        </ul>
  710.                     </div>
  711.                 </div>
  712.                 ";
  713.         // line 583
  714.         echo "                ";
  715.         if ((isset($context["hasFilter"]) || array_key_exists("hasFilter"$context) ? $context["hasFilter"] : (function () { throw new RuntimeError('Variable "hasFilter" does not exist.'583$this->source); })())) {
  716.             // line 584
  717.             echo "                    <div class=\"ec-filterSidebar__reset\">
  718.                         <a href=\"";
  719.             // line 585
  720.             echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  721.             echo "\">絞り込みをすべてリセット</a>
  722.                     </div>
  723.                 ";
  724.         }
  725.         // line 588
  726.         echo "
  727.             </aside>
  728.             ";
  729.         // line 591
  730.         echo "
  731.             ";
  732.         // line 593
  733.         echo "            <div class=\"ec-productListMain\">
  734.     ";
  735.         // line 594
  736.         if ((twig_length_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'594$this->source); })()), "category_id", [], "any"falsefalsefalse594), "vars", [], "any"falsefalsefalse594), "errors", [], "any"falsefalsefalse594)) > 0)) {
  737.             // line 595
  738.             echo "        <div class=\"ec-searchnavRole\">
  739.             <p class=\"errormsg text-danger\">";
  740.             // line 596
  741.             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("ご指定のカテゴリは存在しません"), "html"nulltrue);
  742.             echo "</p>
  743.         </div>
  744.     ";
  745.         } else {
  746.             // line 599
  747.             echo "        ";
  748.             // line 600
  749.             echo "        <div class=\"ec-searchnavRole\">
  750.             <form name=\"form1\" id=\"form1\" method=\"get\" action=\"?\">
  751.                 ";
  752.             // line 602
  753.             $context['_parent'] = $context;
  754.             $context['_seq'] = twig_ensure_traversable((isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'602$this->source); })()));
  755.             foreach ($context['_seq'] as $context["_key"] => $context["item"]) {
  756.                 // line 603
  757.                 echo "                    <input type=\"hidden\" id=\"";
  758.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse603), "id", [], "any"falsefalsefalse603), "html"nulltrue);
  759.                 echo "\"
  760.                            name=\"";
  761.                 // line 604
  762.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse604), "full_name", [], "any"falsefalsefalse604), "html"nulltrue);
  763.                 echo "\"
  764.                            ";
  765.                 // line 605
  766.                 if ( !twig_test_empty(twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse605), "value", [], "any"falsefalsefalse605))) {
  767.                     echo "value=\"";
  768.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source$context["item"], "vars", [], "any"falsefalsefalse605), "value", [], "any"falsefalsefalse605), "html"nulltrue);
  769.                     echo "\" ";
  770.                 }
  771.                 echo "/>
  772.                 ";
  773.             }
  774.             $_parent $context['_parent'];
  775.             unset($context['_seq'], $context['_iterated'], $context['_key'], $context['item'], $context['_parent'], $context['loop']);
  776.             $context array_intersect_key($context$_parent) + $_parent;
  777.             // line 607
  778.             echo "            </form>
  779.             ";
  780.             // line 610
  781.             echo "            <div class=\"ec-searchnavRole__topicpath\">
  782.                 <ol class=\"ec-topicpath\">
  783.                     <li class=\"ec-topicpath__item\"><a href=\"";
  784.             // line 612
  785.             echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  786.             echo "\">";
  787.             echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("全て"), "html"nulltrue);
  788.             echo "</a></li>
  789.                     ";
  790.             // line 613
  791.             if ( !(null === (isset($context["Category"]) || array_key_exists("Category"$context) ? $context["Category"] : (function () { throw new RuntimeError('Variable "Category" does not exist.'613$this->source); })()))) {
  792.                 // line 614
  793.                 echo "                        ";
  794.                 $context['_parent'] = $context;
  795.                 $context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env$this->source, (isset($context["Category"]) || array_key_exists("Category"$context) ? $context["Category"] : (function () { throw new RuntimeError('Variable "Category" does not exist.'614$this->source); })()), "path", [], "any"falsefalsefalse614));
  796.                 $context['loop'] = [
  797.                   'parent' => $context['_parent'],
  798.                   'index0' => 0,
  799.                   'index'  => 1,
  800.                   'first'  => true,
  801.                 ];
  802.                 if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  803.                     $length count($context['_seq']);
  804.                     $context['loop']['revindex0'] = $length 1;
  805.                     $context['loop']['revindex'] = $length;
  806.                     $context['loop']['length'] = $length;
  807.                     $context['loop']['last'] = === $length;
  808.                 }
  809.                 foreach ($context['_seq'] as $context["_key"] => $context["Path"]) {
  810.                     // line 615
  811.                     echo "                            <li class=\"ec-topicpath__divider\">|</li>
  812.                             <li class=\"ec-topicpath__item";
  813.                     // line 616
  814.                     if (twig_get_attribute($this->env$this->source$context["loop"], "last", [], "any"falsefalsefalse616)) {
  815.                         echo "--active";
  816.                     }
  817.                     echo "\">
  818.                                 <a href=\"";
  819.                     // line 617
  820.                     echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  821.                     echo "?category_id=";
  822.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Path"], "id", [], "any"falsefalsefalse617), "html"nulltrue);
  823.                     echo "\">";
  824.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Path"], "name", [], "any"falsefalsefalse617), "html"nulltrue);
  825.                     echo "</a>
  826.                             </li>
  827.                         ";
  828.                     ++$context['loop']['index0'];
  829.                     ++$context['loop']['index'];
  830.                     $context['loop']['first'] = false;
  831.                     if (isset($context['loop']['length'])) {
  832.                         --$context['loop']['revindex0'];
  833.                         --$context['loop']['revindex'];
  834.                         $context['loop']['last'] = === $context['loop']['revindex0'];
  835.                     }
  836.                 }
  837.                 $_parent $context['_parent'];
  838.                 unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Path'], $context['_parent'], $context['loop']);
  839.                 $context array_intersect_key($context$_parent) + $_parent;
  840.                 // line 620
  841.                 echo "                    ";
  842.             }
  843.             // line 621
  844.             echo "                    ";
  845.             if ( !(null === (isset($context["Maker"]) || array_key_exists("Maker"$context) ? $context["Maker"] : (function () { throw new RuntimeError('Variable "Maker" does not exist.'621$this->source); })()))) {
  846.                 // line 622
  847.                 echo "                        <li class=\"ec-topicpath__divider\">|</li>
  848.                         <li class=\"ec-topicpath__item--active\">
  849.                             <a href=\"";
  850.                 // line 624
  851.                 echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  852.                 echo "?maker_id=";
  853.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["Maker"]) || array_key_exists("Maker"$context) ? $context["Maker"] : (function () { throw new RuntimeError('Variable "Maker" does not exist.'624$this->source); })()), "id", [], "any"falsefalsefalse624), "html"nulltrue);
  854.                 echo "\">";
  855.                 echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["Maker"]) || array_key_exists("Maker"$context) ? $context["Maker"] : (function () { throw new RuntimeError('Variable "Maker" does not exist.'624$this->source); })()), "name", [], "any"falsefalsefalse624), "html"nulltrue);
  856.                 echo "</a>
  857.                         </li>
  858.                     ";
  859.             }
  860.             // line 627
  861.             echo "                    ";
  862.             if ((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'627$this->source); })()), "vars", [], "any"falsefalsefalse627), "value", [], "any"falsefalsefalse627) && twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'627$this->source); })()), "vars", [], "any"falsefalsefalse627), "value", [], "any"falsefalsefalse627), "name", [], "any"falsefalsefalse627))) {
  863.                 // line 628
  864.                 echo "                        <li class=\"ec-topicpath__divider\">|</li>
  865.                         <li class=\"ec-topicpath__item\">";
  866.                 // line 629
  867.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("「%name%」の検索結果", ["%name%" => twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'629$this->source); })()), "vars", [], "any"falsefalsefalse629), "value", [], "any"falsefalsefalse629), "name", [], "any"falsefalsefalse629)]), "html"nulltrue);
  868.                 echo "</li>
  869.                     ";
  870.             }
  871.             // line 631
  872.             echo "                </ol>
  873.             </div>
  874.         ";
  875.             // line 637
  876.             echo "        ";
  877.             if ((isset($context["hasFilter"]) || array_key_exists("hasFilter"$context) ? $context["hasFilter"] : (function () { throw new RuntimeError('Variable "hasFilter" does not exist.'637$this->source); })())) {
  878.                 // line 638
  879.                 echo "            <div class=\"ec-filterActive\">
  880.                 <span class=\"ec-filterActive__label\">絞り込み中:</span>
  881.                 ";
  882.                 // line 640
  883.                 if ( !(null === (isset($context["Category"]) || array_key_exists("Category"$context) ? $context["Category"] : (function () { throw new RuntimeError('Variable "Category" does not exist.'640$this->source); })()))) {
  884.                     // line 641
  885.                     echo "                    ";
  886.                     $context["removeCategoryParam"] = ("category_id=" twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'641$this->source); })()), "request", [], "any"falsefalsefalse641), "query", [], "any"falsefalsefalse641), "get", [=> "category_id"], "method"falsefalsefalse641));
  887.                     // line 642
  888.                     echo "                    <span class=\"ec-filterActive__tag\">
  889.                         ";
  890.                     // line 643
  891.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["Category"]) || array_key_exists("Category"$context) ? $context["Category"] : (function () { throw new RuntimeError('Variable "Category" does not exist.'643$this->source); })()), "name", [], "any"falsefalsefalse643), "html"nulltrue);
  892.                     echo "
  893.                         <a href=\"";
  894.                     // line 644
  895.                     echo twig_escape_filter($this->envtwig_replace_filter(twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'644$this->source); })()), "request", [], "any"falsefalsefalse644), "uri", [], "any"falsefalsefalse644), [(isset($context["removeCategoryParam"]) || array_key_exists("removeCategoryParam"$context) ? $context["removeCategoryParam"] : (function () { throw new RuntimeError('Variable "removeCategoryParam" does not exist.'644$this->source); })()) => ""]), "html"nulltrue);
  896.                     echo "\" title=\"解除\">✕</a>
  897.                     </span>
  898.                 ";
  899.                 }
  900.                 // line 647
  901.                 echo "                ";
  902.                 if ( !(null === (isset($context["Maker"]) || array_key_exists("Maker"$context) ? $context["Maker"] : (function () { throw new RuntimeError('Variable "Maker" does not exist.'647$this->source); })()))) {
  903.                     // line 648
  904.                     echo "                    <span class=\"ec-filterActive__tag\">
  905.                         ";
  906.                     // line 649
  907.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["Maker"]) || array_key_exists("Maker"$context) ? $context["Maker"] : (function () { throw new RuntimeError('Variable "Maker" does not exist.'649$this->source); })()), "name", [], "any"falsefalsefalse649), "html"nulltrue);
  908.                     echo "
  909.                         <a href=\"";
  910.                     // line 650
  911.                     echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
  912.                     if (twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'650$this->source); })()), "request", [], "any"falsefalsefalse650), "query", [], "any"falsefalsefalse650), "get", [=> "category_id"], "method"falsefalsefalse650)) {
  913.                         echo "?category_id=";
  914.                         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'650$this->source); })()), "request", [], "any"falsefalsefalse650), "query", [], "any"falsefalsefalse650), "get", [=> "category_id"], "method"falsefalsefalse650), "html"nulltrue);
  915.                     }
  916.                     echo "\" title=\"解除\">✕</a>
  917.                     </span>
  918.                 ";
  919.                 }
  920.                 // line 653
  921.                 echo "                ";
  922.                 if ((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'653$this->source); })()), "request", [], "any"falsefalsefalse653), "query", [], "any"falsefalsefalse653), "get", [=> "price_min"], "method"falsefalsefalse653) || twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'653$this->source); })()), "request", [], "any"falsefalsefalse653), "query", [], "any"falsefalsefalse653), "get", [=> "price_max"], "method"falsefalsefalse653))) {
  923.                     // line 654
  924.                     echo "                    <span class=\"ec-filterActive__tag\">
  925.                         ";
  926.                     // line 655
  927.                     if (twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'655$this->source); })()), "request", [], "any"falsefalsefalse655), "query", [], "any"falsefalsefalse655), "get", [=> "price_min"], "method"falsefalsefalse655)) {
  928.                         echo twig_escape_filter($this->envtwig_number_format_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'655$this->source); })()), "request", [], "any"falsefalsefalse655), "query", [], "any"falsefalsefalse655), "get", [=> "price_min"], "method"falsefalsefalse655)), "html"nulltrue);
  929.                         echo "円";
  930.                     } else {
  931.                         echo "0円";
  932.                     }
  933.                     // line 656
  934.                     echo "                        〜
  935.                         ";
  936.                     // line 657
  937.                     if (twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'657$this->source); })()), "request", [], "any"falsefalsefalse657), "query", [], "any"falsefalsefalse657), "get", [=> "price_max"], "method"falsefalsefalse657)) {
  938.                         echo twig_escape_filter($this->envtwig_number_format_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'657$this->source); })()), "request", [], "any"falsefalsefalse657), "query", [], "any"falsefalsefalse657), "get", [=> "price_max"], "method"falsefalsefalse657)), "html"nulltrue);
  939.                         echo "円";
  940.                     } else {
  941.                         echo "上限なし";
  942.                     }
  943.                     // line 658
  944.                     echo "                        <a href=\"javascript:void(0);\" onclick=\"
  945.                             var url = new URL(window.location.href);
  946.                             url.searchParams.delete('price_min');
  947.                             url.searchParams.delete('price_max');
  948.                             window.location.href = url.toString();
  949.                         \" title=\"解除\">✕</a>
  950.                     </span>
  951.                 ";
  952.                 }
  953.                 // line 666
  954.                 echo "            </div>
  955.         ";
  956.             }
  957.             // line 668
  958.             echo "
  959.             ";
  960.             // line 670
  961.             echo "            <div class=\"ec-searchnavRole__infos\">
  962.                 <div class=\"ec-searchnavRole__counter\">
  963.                     ";
  964.             // line 672
  965.             if ((twig_get_attribute($this->env$this->source, (isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'672$this->source); })()), "totalItemCount", [], "any"falsefalsefalse672) > 0)) {
  966.                 // line 673
  967.                 echo "                        ";
  968.                 echo $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("<span class=\"ec-font-bold\">%count%件</span><span>の商品が見つかりました</span>", ["%count%" => twig_get_attribute($this->env$this->source, (isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'673$this->source); })()), "totalItemCount", [], "any"falsefalsefalse673)]);
  969.                 echo "
  970.                     ";
  971.             } else {
  972.                 // line 675
  973.                 echo "                        <span>";
  974.                 echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("お探しの商品は見つかりませんでした"), "html"nulltrue);
  975.                 echo "</span>
  976.                     ";
  977.             }
  978.             // line 677
  979.             echo "                </div>
  980.                 ";
  981.             // line 678
  982.             if ((twig_get_attribute($this->env$this->source, (isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'678$this->source); })()), "totalItemCount", [], "any"falsefalsefalse678) > 0)) {
  983.                 // line 679
  984.                 echo "                    <div class=\"ec-searchnavRole__actions\">
  985.                         <div class=\"ec-select\">
  986.                             ";
  987.                 // line 681
  988.                 echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'681$this->source); })()), "disp_number", [], "any"falsefalsefalse681), 'widget', ["id" => """attr" => ["class" => "disp-number"]]);
  989.                 echo "
  990.                             ";
  991.                 // line 682
  992.                 echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["search_form"]) || array_key_exists("search_form"$context) ? $context["search_form"] : (function () { throw new RuntimeError('Variable "search_form" does not exist.'682$this->source); })()), "orderby", [], "any"falsefalsefalse682), 'widget', ["id" => """attr" => ["class" => "order-by"]]);
  993.                 echo "
  994.                         </div>
  995.                     </div>
  996.                 ";
  997.             }
  998.             // line 686
  999.             echo "            </div>
  1000.         </div>
  1001.                 ";
  1002.             // line 690
  1003.             if ((twig_get_attribute($this->env$this->source, (isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'690$this->source); })()), "totalItemCount", [], "any"falsefalsefalse690) > 0)) {
  1004.                 // line 691
  1005.                 echo "                    <div class=\"ec-shelfRole\">
  1006.                         <ul class=\"ec-shelfGrid\">
  1007.                             ";
  1008.                 // line 693
  1009.                 $context['_parent'] = $context;
  1010.                 $context['_seq'] = twig_ensure_traversable((isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'693$this->source); })()));
  1011.                 $context['loop'] = [
  1012.                   'parent' => $context['_parent'],
  1013.                   'index0' => 0,
  1014.                   'index'  => 1,
  1015.                   'first'  => true,
  1016.                 ];
  1017.                 if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
  1018.                     $length count($context['_seq']);
  1019.                     $context['loop']['revindex0'] = $length 1;
  1020.                     $context['loop']['revindex'] = $length;
  1021.                     $context['loop']['length'] = $length;
  1022.                     $context['loop']['last'] = === $length;
  1023.                 }
  1024.                 foreach ($context['_seq'] as $context["_key"] => $context["Product"]) {
  1025.                     // line 694
  1026.                     echo "                                <li class=\"ec-shelfGrid__item\">
  1027.                                     ";
  1028.                     // line 695
  1029.                     if (twig_get_attribute($this->env$this->source, (isset($context["BaseInfo"]) || array_key_exists("BaseInfo"$context) ? $context["BaseInfo"] : (function () { throw new RuntimeError('Variable "BaseInfo" does not exist.'695$this->source); })()), "option_favorite_product", [], "any"falsefalsefalse695)) {
  1030.                         // line 696
  1031.                         echo "                                        <div style=\"position:relative;top:29px;left:220px;\">
  1032.                                             <form action=\"";
  1033.                         // line 697
  1034.                         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_add_favorite", ["id" => twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse697)]), "html"nulltrue);
  1035.                         echo "\" method=\"post\">
  1036.                                                 <button type=\"submit\" id=\"favorite\" class=\"favorite\">&#9825;</button>
  1037.                                             </form>
  1038.                                         </div>
  1039.                                     ";
  1040.                     }
  1041.                     // line 702
  1042.                     echo "                                    <a href=\"";
  1043.                     echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_detail", ["id" => twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse702)]), "html"nulltrue);
  1044.                     echo "\">
  1045.                                         <p class=\"ec-shelfGrid__item-image\">
  1046.                                             <img src=\"";
  1047.                     // line 704
  1048.                     echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($this->extensions['Eccube\Twig\Extension\EccubeExtension']->getNoImageProduct(twig_get_attribute($this->env$this->source$context["Product"], "main_list_image", [], "any"falsefalsefalse704)), "save_image"), "html"nulltrue);
  1049.                     echo "\" alt=\"";
  1050.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "name", [], "any"falsefalsefalse704), "html"nulltrue);
  1051.                     echo "\" ";
  1052.                     if ((twig_get_attribute($this->env$this->source$context["loop"], "index", [], "any"falsefalsefalse704) > 5)) {
  1053.                         echo " loading=\"lazy\"";
  1054.                     }
  1055.                     echo ">
  1056.                                         </p>
  1057.                                         <h5><strong>";
  1058.                     // line 706
  1059.                     echo twig_escape_filter($this->env$this->extensions['Plugin\ProductField\Twig\Extension\EccubeExtension']->getProduct_field(twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse706), "related_keyword"), "html"nulltrue);
  1060.                     echo "</strong></h5>
  1061.                                         <p class=\"price02-default\">
  1062.                                             ";
  1063.                     // line 708
  1064.                     if (twig_get_attribute($this->env$this->source$context["Product"], "hasProductClass", [], "any"falsefalsefalse708)) {
  1065.                         // line 709
  1066.                         echo "                                                ";
  1067.                         if ((twig_get_attribute($this->env$this->source$context["Product"], "getPrice02Min", [], "any"falsefalsefalse709) == twig_get_attribute($this->env$this->source$context["Product"], "getPrice02Max", [], "any"falsefalsefalse709))) {
  1068.                             // line 710
  1069.                             echo "                                                    ";
  1070.                             echo twig_escape_filter($this->envtwig_number_format_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMin", [], "any"falsefalsefalse710)), "html"nulltrue);
  1071.                             echo "円
  1072.                                                 ";
  1073.                         } else {
  1074.                             // line 712
  1075.                             echo "                                                    ";
  1076.                             echo twig_escape_filter($this->envtwig_number_format_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMin", [], "any"falsefalsefalse712)), "html"nulltrue);
  1077.                             echo "円  ~ ";
  1078.                             echo twig_escape_filter($this->envtwig_number_format_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMax", [], "any"falsefalsefalse712)), "html"nulltrue);
  1079.                             echo "円
  1080.                                                 ";
  1081.                         }
  1082.                         // line 714
  1083.                         echo "                                            ";
  1084.                     } else {
  1085.                         // line 715
  1086.                         echo "                                                ";
  1087.                         echo twig_escape_filter($this->envtwig_number_format_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "getPrice02IncTaxMin", [], "any"falsefalsefalse715)), "html"nulltrue);
  1088.                         echo "円 ~
  1089.                                             ";
  1090.                     }
  1091.                     // line 717
  1092.                     echo "                                        </p>
  1093.                                     </a>
  1094.                                     ";
  1095.                     // line 720
  1096.                     if (twig_get_attribute($this->env$this->source$context["Product"], "stock_find", [], "any"falsefalsefalse720)) {
  1097.                         // line 721
  1098.                         echo "                                        ";
  1099.                         $context["form"] = twig_get_attribute($this->env$this->source, (isset($context["forms"]) || array_key_exists("forms"$context) ? $context["forms"] : (function () { throw new RuntimeError('Variable "forms" does not exist.'721$this->source); })()), twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse721), [], "array"falsefalsefalse721);
  1100.                         // line 722
  1101.                         echo "                                        <form name=\"form";
  1102.                         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse722), "html"nulltrue);
  1103.                         echo "\" id=\"productForm";
  1104.                         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse722), "html"nulltrue);
  1105.                         echo "\" action=\"";
  1106.                         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_detail", ["id" => twig_get_attribute($this->env$this->source$context["Product"], "id", [], "any"falsefalsefalse722)]), "html"nulltrue);
  1107.                         echo "\" method=\"get\">
  1108.                                             <div class=\"ec-productRole__actions\">
  1109.                                                 ";
  1110.                         // line 724
  1111.                         if (twig_get_attribute($this->env$this->source, ($context["form"] ?? null), "classcategory_id1", [], "any"truetruefalse724)) {
  1112.                             // line 725
  1113.                             echo "                                                    <div class=\"ec-select\">
  1114.                                                         ";
  1115.                             // line 726
  1116.                             echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["form"]) || array_key_exists("form"$context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.'726$this->source); })()), "classcategory_id1", [], "any"falsefalsefalse726), 'widget');
  1117.                             echo "
  1118.                                                         ";
  1119.                             // line 727
  1120.                             echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["form"]) || array_key_exists("form"$context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.'727$this->source); })()), "classcategory_id1", [], "any"falsefalsefalse727), 'errors');
  1121.                             echo "
  1122.                                                     </div>
  1123.                                                     ";
  1124.                             // line 729
  1125.                             if (twig_get_attribute($this->env$this->source, ($context["form"] ?? null), "classcategory_id2", [], "any"truetruefalse729)) {
  1126.                                 // line 730
  1127.                                 echo "                                                        <div class=\"ec-select\">
  1128.                                                             ";
  1129.                                 // line 731
  1130.                                 echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["form"]) || array_key_exists("form"$context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.'731$this->source); })()), "classcategory_id2", [], "any"falsefalsefalse731), 'widget');
  1131.                                 echo "
  1132.                                                             ";
  1133.                                 // line 732
  1134.                                 echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["form"]) || array_key_exists("form"$context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.'732$this->source); })()), "classcategory_id2", [], "any"falsefalsefalse732), 'errors');
  1135.                                 echo "
  1136.                                                         </div>
  1137.                                                     ";
  1138.                             }
  1139.                             // line 735
  1140.                             echo "                                                ";
  1141.                         }
  1142.                         // line 736
  1143.                         echo "                                                <div class=\"ec-numberInput\" style=\"display:none;\"><span>";
  1144.                         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("数量"), "html"nulltrue);
  1145.                         echo "</span>
  1146.                                                     ";
  1147.                         // line 737
  1148.                         echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock(twig_get_attribute($this->env$this->source, (isset($context["form"]) || array_key_exists("form"$context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.'737$this->source); })()), "quantity", [], "any"falsefalsefalse737), 'errors');
  1149.                         echo "
  1150.                                                 </div>
  1151.                                             </div>
  1152.                                             <div class=\"ec-productRole__btn\">
  1153.                                                 <button class=\"ec-blockBtn--action\">
  1154.                                                     ";
  1155.                         // line 742
  1156.                         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("お見積もり詳細はこちら"), "html"nulltrue);
  1157.                         echo "
  1158.                                                 </button>
  1159.                                             </div>
  1160.                                         </form>
  1161.                                     ";
  1162.                     } else {
  1163.                         // line 747
  1164.                         echo "                                        <div class=\"ec-productRole__btn\">
  1165.                                             <button type=\"button\" class=\"ec-blockBtn--action\" disabled=\"disabled\">
  1166.                                                 ";
  1167.                         // line 749
  1168.                         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("ただいま品切れ中です。"), "html"nulltrue);
  1169.                         echo "
  1170.                                             </button>
  1171.                                         </div>
  1172.                                     ";
  1173.                     }
  1174.                     // line 753
  1175.                     echo "                                </li>
  1176.                             ";
  1177.                     ++$context['loop']['index0'];
  1178.                     ++$context['loop']['index'];
  1179.                     $context['loop']['first'] = false;
  1180.                     if (isset($context['loop']['length'])) {
  1181.                         --$context['loop']['revindex0'];
  1182.                         --$context['loop']['revindex'];
  1183.                         $context['loop']['last'] = === $context['loop']['revindex0'];
  1184.                     }
  1185.                 }
  1186.                 $_parent $context['_parent'];
  1187.                 unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Product'], $context['_parent'], $context['loop']);
  1188.                 $context array_intersect_key($context$_parent) + $_parent;
  1189.                 // line 755
  1190.                 echo "                        </ul>
  1191.                     </div>
  1192.                     <div class=\"ec-pagerRole\">
  1193.                         ";
  1194.                 // line 758
  1195.                 $this->loadTemplate("pager.twig""Product/list.twig"758)->display(twig_array_merge($context, ["pages" => twig_get_attribute($this->env$this->source, (isset($context["pagination"]) || array_key_exists("pagination"$context) ? $context["pagination"] : (function () { throw new RuntimeError('Variable "pagination" does not exist.'758$this->source); })()), "paginationData", [], "any"falsefalsefalse758)]));
  1196.                 // line 759
  1197.                 echo "                    </div>
  1198.                 ";
  1199.             }
  1200.             // line 761
  1201.             echo "            </div>
  1202.             ";
  1203.             // line 763
  1204.             echo "
  1205.         </div>
  1206.         ";
  1207.             // line 766
  1208.             echo "
  1209.     ";
  1210.         }
  1211.         
  1212.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
  1213.         
  1214.         $__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e->leave($__internal_085b0142806202599c7fe3b329164a92397d8978207a37e79d70b8c52599e33e_prof);
  1215.     }
  1216.     public function getTemplateName()
  1217.     {
  1218.         return "Product/list.twig";
  1219.     }
  1220.     public function isTraitable()
  1221.     {
  1222.         return false;
  1223.     }
  1224.     public function getDebugInfo()
  1225.     {
  1226.         return array (  1299 => 766,  1295 => 763,  1292 => 761,  1288 => 759,  1286 => 758,  1281 => 755,  1266 => 753,  1259 => 749,  1255 => 747,  1247 => 742,  1239 => 737,  1234 => 736,  1231 => 735,  1225 => 732,  1221 => 731,  1218 => 730,  1216 => 729,  1211 => 727,  1207 => 726,  1204 => 725,  1202 => 724,  1192 => 722,  1189 => 721,  1187 => 720,  1182 => 717,  1176 => 715,  1173 => 714,  1165 => 712,  1159 => 710,  1156 => 709,  1154 => 708,  1149 => 706,  1138 => 704,  1132 => 702,  1124 => 697,  1121 => 696,  1119 => 695,  1116 => 694,  1099 => 693,  1095 => 691,  1093 => 690,  1087 => 686,  1080 => 682,  1076 => 681,  1072 => 679,  1070 => 678,  1067 => 677,  1061 => 675,  1055 => 673,  1053 => 672,  1049 => 670,  1046 => 668,  1042 => 666,  1032 => 658,  1025 => 657,  1022 => 656,  1015 => 655,  1012 => 654,  1009 => 653,  999 => 650,  995 => 649,  992 => 648,  989 => 647,  983 => 644,  979 => 643,  976 => 642,  973 => 641,  971 => 640,  967 => 638,  964 => 637,  959 => 631,  954 => 629,  951 => 628,  948 => 627,  938 => 624,  934 => 622,  931 => 621,  928 => 620,  907 => 617,  901 => 616,  898 => 615,  880 => 614,  878 => 613,  872 => 612,  868 => 610,  864 => 607,  852 => 605,  848 => 604,  843 => 603,  839 => 602,  835 => 600,  833 => 599,  827 => 596,  824 => 595,  822 => 594,  819 => 593,  816 => 591,  812 => 588,  806 => 585,  803 => 584,  800 => 583,  794 => 578,  787 => 576,  783 => 574,  773 => 570,  763 => 569,  758 => 568,  754 => 567,  751 => 566,  749 => 565,  744 => 563,  734 => 562,  729 => 561,  725 => 560,  720 => 558,  716 => 557,  713 => 556,  711 => 513,  706 => 510,  701 => 506,  698 => 505,  688 => 501,  678 => 500,  673 => 499,  668 => 498,  665 => 485,  663 => 484,  660 => 483,  650 => 479,  640 => 478,  635 => 477,  630 => 476,  628 => 475,  622 => 471,  605 => 456,  601 => 455,  594 => 451,  589 => 449,  583 => 445,  580 => 443,  576 => 440,  573 => 436,  571 => 435,  567 => 433,  557 => 432,  487 => 371,  483 => 370,  458 => 347,  444 => 346,  436 => 345,  419 => 344,  415 => 342,  405 => 341,  73 => 16,  63 => 15,  52 => 11,  50 => 13,  37 => 11,);
  1227.     }
  1228.     public function getSourceContext()
  1229.     {
  1230.         return new Source("{#
  1231. This file is part of EC-CUBE
  1232. Copyright(c) EC-CUBE CO.,LTD. All Rights Reserved.
  1233. http://www.ec-cube.co.jp/
  1234. For the full copyright and license information, please view the LICENSE
  1235. file that was distributed with this source code.
  1236. #}
  1237. {% extends 'default_frame.twig' %}
  1238. {% set body_class = 'product_page' %}
  1239. {% block stylesheet %}
  1240.     <link rel=\"stylesheet\" href=\"/html/plugins/ion-rangeslider/css/ion.rangeSlider.min.css\">
  1241.     <style>
  1242.         /* ============================================
  1243.            サイドバー付き 2カラムレイアウト
  1244.         ============================================ */
  1245.         .ec-productListLayout {
  1246.             display: flex;
  1247.             gap: 32px;
  1248.             align-items: flex-start;
  1249.         }
  1250.         /* ============================================
  1251.            サイドバー(フィルターパネル)
  1252.         ============================================ */
  1253.         .ec-filterSidebar {
  1254.             position: static;
  1255.             margin: 20px;
  1256.             width: 240px;
  1257.             flex-shrink: 0;
  1258.         }
  1259. \t\t.ec-searchnavRole {
  1260. \t\t\tmargin-left: calc((100% - 1130px - 280px) / 2);
  1261. \t\t}
  1262. \t\t.ec-shelfRole {
  1263. \t\t\tmargin-left: calc((100% - 1130px - 280px) / 2);
  1264. \t\t}
  1265. \t\t.ec-pagerRole {
  1266. \t\t\tmargin-left: calc((100% - 1130px - 280px) / 2);
  1267. \t\t}
  1268.         .ec-filterSidebar__section {
  1269.             background: #fff;
  1270.             border: 1px solid #e8e8e8;
  1271.             border-radius: 6px;
  1272.             padding: 18px 16px;
  1273.             margin-bottom: 16px;
  1274.         }
  1275.         .ec-filterSidebar__heading {
  1276.             font-size: 13px;
  1277.             font-weight: bold;
  1278.             color: #222;
  1279.             margin: 0 0 12px;
  1280.             padding-bottom: 10px;
  1281.             border-bottom: 2px solid #222;
  1282.             letter-spacing: 0.05em;
  1283.         }
  1284.         /* カテゴリリスト */
  1285.         .ec-filterSidebar__categoryList,
  1286.         .ec-filterSidebar__categoryList ul {
  1287.             list-style: none;
  1288.             padding: 0;
  1289.             margin: 0;
  1290.         }
  1291.         .ec-filterSidebar__categoryList li a {
  1292.             display: block;
  1293.             padding: 6px 8px;
  1294.             font-size: 13px;
  1295.             color: #444;
  1296.             text-decoration: none;
  1297.             border-radius: 4px;
  1298.             transition: background 0.15s, color 0.15s;
  1299.         }
  1300.         .ec-filterSidebar__categoryList li a:hover {
  1301.             background: #f5f5f5;
  1302.             color: #222;
  1303.         }
  1304.         .ec-filterSidebar__categoryList li.is-active > a {
  1305.             font-weight: bold;
  1306.             color: #c00;
  1307.             background: #fff5f5;
  1308.         }
  1309.         /* サブカテゴリ */
  1310.         .ec-filterSidebar__categoryList ul {
  1311.             padding-left: 12px;
  1312.             margin-top: 2px;
  1313.         }
  1314.         .ec-filterSidebar__categoryList ul li a {
  1315.             font-size: 12px;
  1316.             color: #666;
  1317.             padding: 4px 8px;
  1318.         }
  1319.         /* メーカーリスト */
  1320.         .ec-filterSidebar__makerList {
  1321.             list-style: none;
  1322.             padding: 0;
  1323.             margin: 0;
  1324.         }
  1325.         .ec-filterSidebar__makerList li {
  1326.             border-bottom: 1px solid #f0f0f0;
  1327.         }
  1328.         .ec-filterSidebar__makerList li:last-child {
  1329.             border-bottom: none;
  1330.         }
  1331.         .ec-filterSidebar__makerList li a {
  1332.             display: flex;
  1333.             align-items: center;
  1334.             gap: 6px;
  1335.             padding: 7px 6px;
  1336.             font-size: 13px;
  1337.             color: #444;
  1338.             text-decoration: none;
  1339.             transition: color 0.15s;
  1340.         }
  1341.         .ec-filterSidebar__makerList li a:hover {
  1342.             color: #c00;
  1343.         }
  1344.         .ec-filterSidebar__makerList li.is-active a {
  1345.             font-weight: bold;
  1346.             color: #c00;
  1347.         }
  1348.         .ec-filterSidebar__makerList li.is-active a::before {
  1349.             content: \"✓\";
  1350.             font-size: 11px;
  1351.             color: #c00;
  1352.         }
  1353.         /* 価格帯フィルター */
  1354.         .ec-filterSidebar__priceDisplay {
  1355.             text-align: center;
  1356.             font-size: 13px;
  1357.             color: #333;
  1358.             margin-bottom: 12px;
  1359.             font-weight: bold;
  1360.         }
  1361.         .ec-filterSidebar__priceDisplay span {
  1362.             color: #c00;
  1363.         }
  1364.         .ec-filterSidebar__priceSliderWrap {
  1365.             padding: 0 4px;
  1366.             margin-bottom: 16px;
  1367.         }
  1368.         .ec-filterSidebar__priceApply {
  1369.             display: block;
  1370.             width: 100%;
  1371.             padding: 8px;
  1372.             background: #222;
  1373.             color: #fff;
  1374.             border: none;
  1375.             border-radius: 4px;
  1376.             font-size: 13px;
  1377.             cursor: pointer;
  1378.             text-align: center;
  1379.             transition: background 0.2s;
  1380.         }
  1381.         .ec-filterSidebar__priceApply:hover {
  1382.             background: #444;
  1383.         }
  1384.         .ec-filterSidebar__pricePreset {
  1385.             list-style: none;
  1386.             padding: 0;
  1387.             margin: 10px 0 0;
  1388.         }
  1389.         .ec-filterSidebar__pricePreset li a {
  1390.             display: block;
  1391.             padding: 5px 6px;
  1392.             font-size: 12px;
  1393.             color: #666;
  1394.             text-decoration: none;
  1395.             border-radius: 4px;
  1396.             transition: background 0.15s;
  1397.         }
  1398.         .ec-filterSidebar__pricePreset li a:hover {
  1399.             background: #f5f5f5;
  1400.             color: #333;
  1401.         }
  1402.         /* 絞り込みリセット */
  1403.         .ec-filterSidebar__reset a {
  1404.             display: block;
  1405.             text-align: center;
  1406.             padding: 8px;
  1407.             font-size: 12px;
  1408.             color: #888;
  1409.             text-decoration: underline;
  1410.             border: 1px solid #ddd;
  1411.             border-radius: 4px;
  1412.             transition: color 0.15s, border-color 0.15s;
  1413.         }
  1414.         .ec-filterSidebar__reset a:hover {
  1415.             color: #c00;
  1416.             border-color: #c00;
  1417.         }
  1418.         /* 現在の絞り込み条件バッジ */
  1419.         .ec-filterActive {
  1420.             display: flex;
  1421.             flex-wrap: wrap;
  1422.             gap: 6px;
  1423.             margin-bottom: 12px;
  1424.             padding: 10px 12px;
  1425.             background: #f9f9f9;
  1426.             border: 1px solid #e8e8e8;
  1427.             border-radius: 6px;
  1428.         }
  1429.         .ec-filterActive__label {
  1430.             font-size: 11px;
  1431.             color: #888;
  1432.             align-self: center;
  1433.             margin-right: 4px;
  1434.         }
  1435.         .ec-filterActive__tag {
  1436.             display: inline-flex;
  1437.             align-items: center;
  1438.             gap: 4px;
  1439.             padding: 3px 8px;
  1440.             background: #222;
  1441.             color: #fff;
  1442.             border-radius: 20px;
  1443.             font-size: 11px;
  1444.         }
  1445.         .ec-filterActive__tag a {
  1446.             color: #aaa;
  1447.             text-decoration: none;
  1448.             font-size: 12px;
  1449.             line-height: 1;
  1450.         }
  1451.         .ec-filterActive__tag a:hover {
  1452.             color: #fff;
  1453.         }
  1454.         /* メインコンテンツ側 */
  1455.         .ec-productListMain {
  1456.             flex: 1;
  1457.             min-width: 0;
  1458.         }
  1459.         /* ion-rangeslider カスタマイズ */
  1460.         .irs--flat .irs-bar {
  1461.             background-color: #222;
  1462.         }
  1463.         .irs--flat .irs-handle > i:first-child {
  1464.             background-color: #222;
  1465.         }
  1466.         .irs--flat .irs-from,
  1467.         .irs--flat .irs-to,
  1468.         .irs--flat .irs-single {
  1469.             background-color: #222;
  1470.             font-size: 11px;
  1471.         }
  1472.         /* モバイル対応 */
  1473.         @media (max-width: 767px) {
  1474.             .ec-productListLayout {
  1475.                 flex-direction: column;
  1476.             }
  1477.             .ec-filterSidebar {
  1478.             \tposition: static;
  1479.                 width: 100%;
  1480.             }
  1481.             .ec-filterSidebar__section {
  1482.                 margin-bottom: 10px;
  1483.             }
  1484.             /* モバイルではアコーディオン形式 */
  1485.             .ec-filterSidebar__body {
  1486.                 display: none;
  1487.             }
  1488.             .ec-filterSidebar__body.is-open {
  1489.                 display: block;
  1490.             }
  1491.             .ec-filterSidebar__heading {
  1492.                 cursor: pointer;
  1493.                 display: flex;
  1494.                 justify-content: space-between;
  1495.                 align-items: center;
  1496.                 margin-bottom: 0;
  1497.                 padding-bottom: 0;
  1498.                 border-bottom: none;
  1499.             }
  1500.             .ec-filterSidebar__heading.is-open {
  1501.                 margin-bottom: 12px;
  1502.                 padding-bottom: 10px;
  1503.                 border-bottom: 2px solid #222;
  1504.             }
  1505.             .ec-filterSidebar__heading::after {
  1506.                 content: \"▼\";
  1507.                 font-size: 10px;
  1508.                 color: #888;
  1509.                 transition: transform 0.2s;
  1510.             }
  1511.             .ec-filterSidebar__heading.is-open::after {
  1512.                 transform: rotate(180deg);
  1513.             }
  1514.         }
  1515.     </style>
  1516. {% endblock %}
  1517. {% block javascript %}
  1518.     <script>
  1519.         eccube.productsClassCategories = {
  1520.             {% for Product in pagination %}
  1521.             \"{{ Product.id|escape('js') }}\": {{ class_categories_as_json(Product)|raw }}{% if loop.last == false %}, {% endif %}
  1522.             {% endfor %}
  1523.         };
  1524.         \$(function() {
  1525.             // 表示件数を変更
  1526.             \$('.disp-number').change(function() {
  1527.                 var dispNumber = \$(this).val();
  1528.                 \$('#disp_number').val(dispNumber);
  1529.                 \$('#pageno').val(1);
  1530.                 \$(\"#form1\").submit();
  1531.             });
  1532.             // 並び順を変更
  1533.             \$('.order-by').change(function() {
  1534.                 var orderBy = \$(this).val();
  1535.                 \$('#orderby').val(orderBy);
  1536.                 \$('#pageno').val(1);
  1537.                 \$(\"#form1\").submit();
  1538.             });
  1539.             // ==============================
  1540.             // 価格帯スライダー(ion-rangeslider)
  1541.             // ==============================
  1542.             var priceMin = parseInt('{{ app.request.query.get(\"price_min\") ?: 0 }}') || 0;
  1543.             var priceMax = parseInt('{{ app.request.query.get(\"price_max\") ?: 5000000 }}') || 5000000;
  1544.             \$(\"#price-range-slider\").ionRangeSlider({
  1545.                 type: \"double\",
  1546.                 min: 0,
  1547.                 max: 5000000,
  1548.                 from: priceMin,
  1549.                 to: priceMax,
  1550.                 step: 10000,
  1551.                 prettify_enabled: true,
  1552.                 prettify_separator: \",\",
  1553.                 postfix: \"円\",
  1554.                 onFinish: function(data) {
  1555.                     \$('#price_min_val').val(data.from);
  1556.                     \$('#price_max_val').val(data.to);
  1557.                     // 表示更新
  1558.                     \$('#price-display-min').text(Number(data.from).toLocaleString());
  1559.                     \$('#price-display-max').text(Number(data.to).toLocaleString());
  1560.                 }
  1561.             });
  1562.             // 価格フォーム送信
  1563.             \$('#price-filter-apply').on('click', function() {
  1564.                 var min = \$('#price_min_val').val();
  1565.                 var max = \$('#price_max_val').val();
  1566.                 var url = new URL(window.location.href);
  1567.                 url.searchParams.set('price_min', min);
  1568.                 url.searchParams.set('price_max', max);
  1569.                 url.searchParams.delete('pageno');
  1570.                 window.location.href = url.toString();
  1571.             });
  1572.             // モバイル:アコーディオン
  1573.             \$('.ec-filterSidebar__heading').on('click', function() {
  1574.                 if (\$(window).width() <= 767) {
  1575.                     \$(this).toggleClass('is-open');
  1576.                     \$(this).next('.ec-filterSidebar__body').toggleClass('is-open');
  1577.                 }
  1578.             });
  1579.         });
  1580.         \$('.ec-modal-wrap').on('click', function(e) {
  1581.             e.stopPropagation();
  1582.         });
  1583.         \$('.ec-modal-overlay, .ec-modal, .ec-modal-close, .ec-inlineBtn--cancel').on('click', function() {
  1584.             \$('.ec-modal').hide()
  1585.         });
  1586. \t    // 価格プリセットのクイック適用
  1587. \t    function applyPrice(min, max) {
  1588. \t        var url = new URL(window.location.href);
  1589. \t        url.searchParams.set('price_min', min);
  1590. \t        url.searchParams.set('price_max', max);
  1591. \t        url.searchParams.delete('pageno');
  1592. \t        window.location.href = url.toString();
  1593. \t    }
  1594.     </script>
  1595.     <script src=\"/html/plugins/ion-rangeslider/js/ion.rangeSlider.min.js\"></script>
  1596. {% endblock %}
  1597. {% block main %}
  1598.         {% set hasFilter = app.request.query.get('category_id') or app.request.query.get('maker_id') or app.request.query.get('price_min') or app.request.query.get('price_max') %}
  1599.         {# ==============================
  1600.            2カラムレイアウト本体
  1601.         ============================== #}
  1602.         <div class=\"ec-productListLayout\">
  1603.             {# ===== サイドバー(左カラム)===== #}
  1604.             <aside class=\"ec-filterSidebar\">
  1605.                 {# ----- 価格帯 ----- #}
  1606.                 <div class=\"ec-filterSidebar__section\">
  1607.                     <h3 class=\"ec-filterSidebar__heading\">価格帯</h3>
  1608.                     <div class=\"ec-filterSidebar__body is-open\">
  1609.                         <div class=\"ec-filterSidebar__priceDisplay\">
  1610.                             <span id=\"price-display-min\">{{ app.request.query.get('price_min') ? app.request.query.get('price_min')|number_format : '0' }}</span>円
  1611.                             〜
  1612.                             <span id=\"price-display-max\">{{ app.request.query.get('price_max') ? app.request.query.get('price_max')|number_format : '5,000,000' }}</span>円
  1613.                         </div>
  1614.                         <div class=\"ec-filterSidebar__priceSliderWrap\">
  1615.                             <input type=\"text\" id=\"price-range-slider\" style=\"display:none;\">
  1616.                             <input type=\"hidden\" id=\"price_min_val\" value=\"{{ app.request.query.get('price_min') ?: 0 }}\">
  1617.                             <input type=\"hidden\" id=\"price_max_val\" value=\"{{ app.request.query.get('price_max') ?: 5000000 }}\">
  1618.                         </div>
  1619.                         <button id=\"price-filter-apply\" class=\"ec-filterSidebar__priceApply\">この価格帯で絞り込む</button>
  1620.                         <ul class=\"ec-filterSidebar__pricePreset\">
  1621.                             <li><a href=\"javascript:void(0);\" onclick=\"applyPrice(0, 300000)\">〜30万円</a></li>
  1622.                             <li><a href=\"javascript:void(0);\" onclick=\"applyPrice(300000, 600000)\">30万円〜60万円</a></li>
  1623.                             <li><a href=\"javascript:void(0);\" onclick=\"applyPrice(600000, 1000000)\">60万円〜100万円</a></li>
  1624.                             <li><a href=\"javascript:void(0);\" onclick=\"applyPrice(1000000, 5000000)\">100万円〜</a></li>
  1625.                         </ul>
  1626.                     </div>
  1627.                 </div>
  1628.                 {# ----- メーカー(ブランド)----- #}
  1629.                 <div class=\"ec-filterSidebar__section\">
  1630.                     <h3 class=\"ec-filterSidebar__heading\">ブランド</h3>
  1631.                     <div class=\"ec-filterSidebar__body is-open\">
  1632.                         <ul class=\"ec-filterSidebar__makerList\">
  1633.                             {% if Makers is defined %}
  1634.                                 {% for MakerItem in Makers %}
  1635.                                     <li class=\"{{ Maker is not null and Maker.id == MakerItem.id ? 'is-active' : '' }}\">
  1636.                                         <a href=\"{{ url('product_list') }}?maker_id={{ MakerItem.id }}{% if app.request.query.get('category_id') %}&category_id={{ app.request.query.get('category_id') }}{% endif %}\">
  1637.                                             {{ MakerItem.name }}
  1638.                                         </a>
  1639.                                     </li>
  1640.                                 {% endfor %}
  1641.                             {% else %}
  1642.                                 {# Makersがコントローラから渡されない場合は静的リストで対応 #}
  1643.                                 {% set makerList = [
  1644.                                     {id: 1,  name: 'LIXIL'},
  1645.                                     {id: 2,  name: 'YKK AP'},
  1646.                                     {id: 3,  name: '三協アルミ'},
  1647.                                     {id: 4,  name: '四国化成'},
  1648.                                     {id: 5,  name: 'タカショー'},
  1649.                                     {id: 6,  name: 'ユニソン'},
  1650.                                     {id: 7,  name: 'エスビック'},
  1651.                                     {id: 8,  name: 'パナソニック'},
  1652.                                     {id: 9,  name: 'イナバ'},
  1653.                                     {id: 10, name: 'ヨドコウ'},
  1654.                                     {id: 13, name: 'タクボ'}
  1655.                                 ] %}
  1656.                                 {% for maker in makerList %}
  1657.                                     <li class=\"{{ Maker is not null and Maker.id == maker.id ? 'is-active' : '' }}\">
  1658.                                         <a href=\"{{ url('product_list') }}?maker_id={{ maker.id }}{% if app.request.query.get('category_id') %}&category_id={{ app.request.query.get('category_id') }}{% endif %}\">
  1659.                                             {{ maker.name }}
  1660.                                         </a>
  1661.                                     </li>
  1662.                                 {% endfor %}
  1663.                             {% endif %}
  1664.                         </ul>
  1665.                     </div>
  1666.                 </div>
  1667.                 {# ----- カテゴリ ----- #}
  1668.                 <div class=\"ec-filterSidebar__section\">
  1669.                     <h3 class=\"ec-filterSidebar__heading\">カテゴリ</h3>
  1670.                     <div class=\"ec-filterSidebar__body is-open\">
  1671.                         {% set categoryList = [
  1672.                             {id: 7,  name: 'カーポート・車庫',         children: []},
  1673.                             {id: 16, name: 'ガレージ・倉庫',           children: []},
  1674.                             {id: 8,  name: 'サイクルポート・駐輪場',   children: []},
  1675.                             {id: 9,  name: 'ゲート',                   children: [
  1676.                                 {id: 30, name: '跳ね上げ式ゲート'},
  1677.                                 {id: 29, name: '伸縮ゲート'},
  1678.                                 {id: 31, name: 'ガレージシャッター'}
  1679.                             ]},
  1680.                             {id: 12, name: 'テラス',                   children: [
  1681.                                 {id: 33, name: 'テラス囲い'},
  1682.                                 {id: 32, name: 'テラス屋根'}
  1683.                             ]},
  1684.                             {id: 19, name: 'ベランダ・バルコニー',     children: [
  1685.                                 {id: 35, name: 'ベランダ・バルコニー屋根'},
  1686.                                 {id: 34, name: 'ベランダ・バルコニー'}
  1687.                             ]},
  1688.                             {id: 18, name: 'オーニング・日よけ',       children: []},
  1689.                             {id: 11, name: 'ウッドデッキ',             children: [
  1690.                                 {id: 37, name: 'タイルデッキ'},
  1691.                                 {id: 36, name: 'ウッドデッキ'}
  1692.                             ]},
  1693.                             {id: 14, name: 'フェンス・柵',             children: []},
  1694.                             {id: 25, name: '門扉',                     children: []},
  1695.                             {id: 13, name: 'ポスト・門柱宅配ボックス', children: []},
  1696.                             {id: 15, name: '物置・収納・屋外倉庫',     children: []},
  1697.                             {id: 20, name: 'ガーデンファニチャー',     children: []},
  1698.                             {id: 22, name: '人工芝',                   children: []},
  1699.                             {id: 17, name: '内窓・二重窓',             children: []},
  1700.                             {id: 26, name: 'その他',                   children: [
  1701.                                 {id: 38, name: 'パーゴラ'},
  1702.                                 {id: 39, name: '立水栓・ガーデンシンク'},
  1703.                                 {id: 40, name: '手すり'},
  1704.                                 {id: 10, name: 'ストックヤード'},
  1705.                                 {id: 27, name: 'ゴミステーション'},
  1706.                                 {id: 42, name: '面格子・窓格子'},
  1707.                                 {id: 41, name: '窓シャッター'},
  1708.                                 {id: 43, name: '玄関ドア'},
  1709.                                 {id: 28, name: '石材'},
  1710.                                 {id: 44, name: '照明'},
  1711.                                 {id: 21, name: 'DIY材料'}
  1712.                             ]}
  1713.                         ] %}
  1714.                         <ul class=\"ec-filterSidebar__categoryList\">
  1715.                             <li class=\"{{ app.request.query.get('category_id') is empty and Maker is null ? 'is-active' : '' }}\">
  1716.                                 <a href=\"{{ url('product_list') }}\">すべて</a>
  1717.                             </li>
  1718.                             {% for cat in categoryList %}
  1719.                                 <li class=\"{{ app.request.query.get('category_id') == cat.id ? 'is-active' : '' }}\">
  1720.                                     <a href=\"{{ url('product_list') }}?category_id={{ cat.id }}{% if app.request.query.get('maker_id') %}&maker_id={{ app.request.query.get('maker_id') }}{% endif %}\">
  1721.                                         {{ cat.name }}
  1722.                                     </a>
  1723.                                     {% if cat.children|length > 0 %}
  1724.                                         <ul>
  1725.                                             {% for child in cat.children %}
  1726.                                                 <li class=\"{{ app.request.query.get('category_id') == child.id ? 'is-active' : '' }}\">
  1727.                                                     <a href=\"{{ url('product_list') }}?category_id={{ child.id }}{% if app.request.query.get('maker_id') %}&maker_id={{ app.request.query.get('maker_id') }}{% endif %}\">
  1728.                                                         {{ child.name }}
  1729.                                                     </a>
  1730.                                                 </li>
  1731.                                             {% endfor %}
  1732.                                         </ul>
  1733.                                     {% endif %}
  1734.                                 </li>
  1735.                             {% endfor %}
  1736.                         </ul>
  1737.                     </div>
  1738.                 </div>
  1739.                 {# ----- リセット ----- #}
  1740.                 {% if hasFilter %}
  1741.                     <div class=\"ec-filterSidebar__reset\">
  1742.                         <a href=\"{{ url('product_list') }}\">絞り込みをすべてリセット</a>
  1743.                     </div>
  1744.                 {% endif %}
  1745.             </aside>
  1746.             {# / サイドバー #}
  1747.             {# ===== 商品一覧(右カラム)===== #}
  1748.             <div class=\"ec-productListMain\">
  1749.     {% if search_form.category_id.vars.errors|length > 0 %}
  1750.         <div class=\"ec-searchnavRole\">
  1751.             <p class=\"errormsg text-danger\">{{ 'ご指定のカテゴリは存在しません'|trans }}</p>
  1752.         </div>
  1753.     {% else %}
  1754.         {# 検索フォーム(hidden) #}
  1755.         <div class=\"ec-searchnavRole\">
  1756.             <form name=\"form1\" id=\"form1\" method=\"get\" action=\"?\">
  1757.                 {% for item in search_form %}
  1758.                     <input type=\"hidden\" id=\"{{ item.vars.id }}\"
  1759.                            name=\"{{ item.vars.full_name }}\"
  1760.                            {% if item.vars.value is not empty %}value=\"{{ item.vars.value }}\" {% endif %}/>
  1761.                 {% endfor %}
  1762.             </form>
  1763.             {# パンくずリスト #}
  1764.             <div class=\"ec-searchnavRole__topicpath\">
  1765.                 <ol class=\"ec-topicpath\">
  1766.                     <li class=\"ec-topicpath__item\"><a href=\"{{ url('product_list') }}\">{{ '全て'|trans }}</a></li>
  1767.                     {% if Category is not null %}
  1768.                         {% for Path in Category.path %}
  1769.                             <li class=\"ec-topicpath__divider\">|</li>
  1770.                             <li class=\"ec-topicpath__item{% if loop.last %}--active{% endif %}\">
  1771.                                 <a href=\"{{ url('product_list') }}?category_id={{ Path.id }}\">{{ Path.name }}</a>
  1772.                             </li>
  1773.                         {% endfor %}
  1774.                     {% endif %}
  1775.                     {% if Maker is not null %}
  1776.                         <li class=\"ec-topicpath__divider\">|</li>
  1777.                         <li class=\"ec-topicpath__item--active\">
  1778.                             <a href=\"{{ url('product_list') }}?maker_id={{ Maker.id }}\">{{ Maker.name }}</a>
  1779.                         </li>
  1780.                     {% endif %}
  1781.                     {% if search_form.vars.value and search_form.vars.value.name %}
  1782.                         <li class=\"ec-topicpath__divider\">|</li>
  1783.                         <li class=\"ec-topicpath__item\">{{ '「%name%」の検索結果'|trans({ '%name%': search_form.vars.value.name }) }}</li>
  1784.                     {% endif %}
  1785.                 </ol>
  1786.             </div>
  1787.         {# ==============================
  1788.            現在の絞り込み条件バッジ
  1789.         ============================== #}
  1790.         {% if hasFilter %}
  1791.             <div class=\"ec-filterActive\">
  1792.                 <span class=\"ec-filterActive__label\">絞り込み中:</span>
  1793.                 {% if Category is not null %}
  1794.                     {% set removeCategoryParam = 'category_id=' ~ app.request.query.get('category_id') %}
  1795.                     <span class=\"ec-filterActive__tag\">
  1796.                         {{ Category.name }}
  1797.                         <a href=\"{{ app.request.uri|replace({(removeCategoryParam): ''}) }}\" title=\"解除\">✕</a>
  1798.                     </span>
  1799.                 {% endif %}
  1800.                 {% if Maker is not null %}
  1801.                     <span class=\"ec-filterActive__tag\">
  1802.                         {{ Maker.name }}
  1803.                         <a href=\"{{ url('product_list') }}{% if app.request.query.get('category_id') %}?category_id={{ app.request.query.get('category_id') }}{% endif %}\" title=\"解除\">✕</a>
  1804.                     </span>
  1805.                 {% endif %}
  1806.                 {% if app.request.query.get('price_min') or app.request.query.get('price_max') %}
  1807.                     <span class=\"ec-filterActive__tag\">
  1808.                         {% if app.request.query.get('price_min') %}{{ app.request.query.get('price_min')|number_format }}円{% else %}0円{% endif %}
  1809.                         〜
  1810.                         {% if app.request.query.get('price_max') %}{{ app.request.query.get('price_max')|number_format }}円{% else %}上限なし{% endif %}
  1811.                         <a href=\"javascript:void(0);\" onclick=\"
  1812.                             var url = new URL(window.location.href);
  1813.                             url.searchParams.delete('price_min');
  1814.                             url.searchParams.delete('price_max');
  1815.                             window.location.href = url.toString();
  1816.                         \" title=\"解除\">✕</a>
  1817.                     </span>
  1818.                 {% endif %}
  1819.             </div>
  1820.         {% endif %}
  1821.             {# 件数・並び順 #}
  1822.             <div class=\"ec-searchnavRole__infos\">
  1823.                 <div class=\"ec-searchnavRole__counter\">
  1824.                     {% if pagination.totalItemCount > 0 %}
  1825.                         {{ '<span class=\"ec-font-bold\">%count%件</span><span>の商品が見つかりました</span>'|trans({ '%count%': pagination.totalItemCount })|raw }}
  1826.                     {% else %}
  1827.                         <span>{{ 'お探しの商品は見つかりませんでした'|trans }}</span>
  1828.                     {% endif %}
  1829.                 </div>
  1830.                 {% if pagination.totalItemCount > 0 %}
  1831.                     <div class=\"ec-searchnavRole__actions\">
  1832.                         <div class=\"ec-select\">
  1833.                             {{ form_widget(search_form.disp_number, {'id': '', 'attr': {'class': 'disp-number'}}) }}
  1834.                             {{ form_widget(search_form.orderby, {'id': '', 'attr': {'class': 'order-by'}}) }}
  1835.                         </div>
  1836.                     </div>
  1837.                 {% endif %}
  1838.             </div>
  1839.         </div>
  1840.                 {% if pagination.totalItemCount > 0 %}
  1841.                     <div class=\"ec-shelfRole\">
  1842.                         <ul class=\"ec-shelfGrid\">
  1843.                             {% for Product in pagination %}
  1844.                                 <li class=\"ec-shelfGrid__item\">
  1845.                                     {% if BaseInfo.option_favorite_product %}
  1846.                                         <div style=\"position:relative;top:29px;left:220px;\">
  1847.                                             <form action=\"{{ url('product_add_favorite', {id:Product.id}) }}\" method=\"post\">
  1848.                                                 <button type=\"submit\" id=\"favorite\" class=\"favorite\">&#9825;</button>
  1849.                                             </form>
  1850.                                         </div>
  1851.                                     {% endif %}
  1852.                                     <a href=\"{{ url('product_detail', {'id': Product.id}) }}\">
  1853.                                         <p class=\"ec-shelfGrid__item-image\">
  1854.                                             <img src=\"{{ asset(Product.main_list_image|no_image_product, 'save_image') }}\" alt=\"{{ Product.name }}\" {% if loop.index > 5 %} loading=\"lazy\"{% endif %}>
  1855.                                         </p>
  1856.                                         <h5><strong>{{ getProduct_field(Product.id,\"related_keyword\") }}</strong></h5>
  1857.                                         <p class=\"price02-default\">
  1858.                                             {% if Product.hasProductClass %}
  1859.                                                 {% if Product.getPrice02Min == Product.getPrice02Max %}
  1860.                                                     {{ Product.getPrice02IncTaxMin|number_format }}円
  1861.                                                 {% else %}
  1862.                                                     {{ Product.getPrice02IncTaxMin|number_format }}円  ~ {{ Product.getPrice02IncTaxMax|number_format }}円
  1863.                                                 {% endif %}
  1864.                                             {% else %}
  1865.                                                 {{ Product.getPrice02IncTaxMin|number_format }}円 ~
  1866.                                             {% endif %}
  1867.                                         </p>
  1868.                                     </a>
  1869.                                     {% if Product.stock_find %}
  1870.                                         {% set form = forms[Product.id] %}
  1871.                                         <form name=\"form{{ Product.id }}\" id=\"productForm{{ Product.id }}\" action=\"{{ url('product_detail', {id:Product.id}) }}\" method=\"get\">
  1872.                                             <div class=\"ec-productRole__actions\">
  1873.                                                 {% if form.classcategory_id1 is defined %}
  1874.                                                     <div class=\"ec-select\">
  1875.                                                         {{ form_widget(form.classcategory_id1) }}
  1876.                                                         {{ form_errors(form.classcategory_id1) }}
  1877.                                                     </div>
  1878.                                                     {% if form.classcategory_id2 is defined %}
  1879.                                                         <div class=\"ec-select\">
  1880.                                                             {{ form_widget(form.classcategory_id2) }}
  1881.                                                             {{ form_errors(form.classcategory_id2) }}
  1882.                                                         </div>
  1883.                                                     {% endif %}
  1884.                                                 {% endif %}
  1885.                                                 <div class=\"ec-numberInput\" style=\"display:none;\"><span>{{ '数量'|trans }}</span>
  1886.                                                     {{ form_errors(form.quantity) }}
  1887.                                                 </div>
  1888.                                             </div>
  1889.                                             <div class=\"ec-productRole__btn\">
  1890.                                                 <button class=\"ec-blockBtn--action\">
  1891.                                                     {{ 'お見積もり詳細はこちら'|trans }}
  1892.                                                 </button>
  1893.                                             </div>
  1894.                                         </form>
  1895.                                     {% else %}
  1896.                                         <div class=\"ec-productRole__btn\">
  1897.                                             <button type=\"button\" class=\"ec-blockBtn--action\" disabled=\"disabled\">
  1898.                                                 {{ 'ただいま品切れ中です。'|trans }}
  1899.                                             </button>
  1900.                                         </div>
  1901.                                     {% endif %}
  1902.                                 </li>
  1903.                             {% endfor %}
  1904.                         </ul>
  1905.                     </div>
  1906.                     <div class=\"ec-pagerRole\">
  1907.                         {% include \"pager.twig\" with {'pages': pagination.paginationData} %}
  1908.                     </div>
  1909.                 {% endif %}
  1910.             </div>
  1911.             {# / 商品一覧 #}
  1912.         </div>
  1913.         {# / ec-productListLayout #}
  1914.     {% endif %}
  1915. {% endblock %}
  1916. ""Product/list.twig""/home/xs538259/exterior-plus.jp/public_html/app/template/default/Product/list.twig");
  1917.     }
  1918. }