<?php
use Twig\Environment;
use Twig\Error\LoaderError;
use Twig\Error\RuntimeError;
use Twig\Extension\SandboxExtension;
use Twig\Markup;
use Twig\Sandbox\SecurityError;
use Twig\Sandbox\SecurityNotAllowedTagError;
use Twig\Sandbox\SecurityNotAllowedFilterError;
use Twig\Sandbox\SecurityNotAllowedFunctionError;
use Twig\Source;
use Twig\Template;
/* Product/detail.twig */
class __TwigTemplate_3e4f6e32b5f87d6b9a1de0102999e44e extends \Eccube\Twig\Template
{
private $source;
private $macros = [];
public function __construct(Environment $env)
{
parent::__construct($env);
$this->source = $this->getSourceContext();
$this->blocks = [
'stylesheet' => [$this, 'block_stylesheet'],
'javascript' => [$this, 'block_javascript'],
'main' => [$this, 'block_main'],
];
}
protected function doGetParent(array $context)
{
// line 11
return "default_frame.twig";
}
protected function doDisplay(array $context, array $blocks = [])
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "Product/detail.twig"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "Product/detail.twig"));
// line 13
$context["body_class"] = "product_page";
// line 11
$this->parent = $this->loadTemplate("default_frame.twig", "Product/detail.twig", 11);
$this->parent->display($context, array_merge($this->blocks, $blocks));
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
}
// line 15
public function block_stylesheet($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheet"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheet"));
// line 16
echo " <style>
.ec-modal {
display: none;
position: fixed;
top: 0;
left: 0;
z-index: 99999;
width: 100%;
height: 100%;
}
.ec-modal.small {
width: 30%;
}
.ec-modal.full {
width: 100%;
height: 100%;
}
.ec-modal .ec-modal-overlay {
display: flex;
justify-content: center;
align-items: center;
background-color: rgba(0, 0, 0, 0.3);
width: 100%;
height: 100%;
}
.ec-modal .ec-modal-wrap {
position: relative;
border-radius: 6px;
border: 0px;
background-color: #fff;
width: 50%;
margin: 20px;
padding: 40px 5px;
}
.ec-modal .ec-modal-close {
cursor: pointer;
position: absolute;
right: 20px;
top: 10px;
font-size: 20px;
height: 30px;
width: 20px;
}
.ec-modal .ec-modal-close:hover {
color: #4b5361;
}
.ec-modal .ec-modal-box {
text-align: center;
}
.ec-modal .ec-role {
margin-top: 20px;
}
.slick-slider {
margin-bottom: 30px;
}
.slick-dots {
position: absolute;
bottom: -45px;
display: block;
width: 100%;
padding: 0;
list-style: none;
text-align: center;
}
.slick-dots li {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
margin: 0 5px;
padding: 0;
cursor: pointer;
}
.slick-dots li button {
font-size: 0;
line-height: 0;
display: block;
width: 20px;
height: 20px;
padding: 5px;
cursor: pointer;
color: transparent;
border: 0;
outline: none;
background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
opacity: 1;
}
.slick-dots li button:before {
content: \" \";
line-height: 20px;
position: absolute;
top: 0;
left: 0;
width: 12px;
height: 12px;
text-align: center;
opacity: .25;
background-color: black;
border-radius: 50%;
}
.slick-dots li.slick-active button:before {
opacity: .75;
background-color: black;
}
.slick-dots li button.thumbnail img {
width: 0;
height: 0;
}
.ec-numberInput {
display: none;
}
.ec-blockBtn--cancel {
display: inline-block;
margin-bottom: 0;
font-weight: bold;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 0.875rem;
border-radius: 1.42857142;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
padding: 10px 16px;
text-decoration: none;
color: #fff;
background-color: #F8C4CF;
border-color: #F8C4CF;
display: block;
width: 330px;
height: 56px;
line-height: 56px;
padding-top: 0;
padding-bottom: 0;
border-radius: 6px;
}
.ec-blockBtn--cancel:hover {
opacity: 0.7;
background-color: #F8C4CF;
border-color: #F8C4CF;
}
.ec-blockBtn--action-detail {
display: inline-block;
margin-bottom: 0;
font-weight: bold;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 0.875rem;
border-radius: 1.42857142;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
padding: 10px 16px;
text-decoration: none;
color: #fff;
background-color: #d5a770;
border-color: #d5a770;
display: block;
width: 330px;
height: 56px;
line-height: 56px;
padding-top: 0;
padding-bottom: 0;
border-radius: 6px;
}
.ec-blockBtn--action-detail:hover {
background-color: #d5a770;
border-color: #d5a770;
opacity: 0.7;
}
.ec-blockBtn--action {
display: inline-block;
margin-bottom: 0;
font-weight: bold;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 0.875rem;
border-radius: 1.42857142;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
padding: 10px 16px;
text-decoration: none;
color: #fff;
background-color: #F8C4CF;
border-color: #F8C4CF;
display: block;
width: 330px;
height: 56px;
line-height: 56px;
padding-top: 0;
padding-bottom: 0;
border-radius: 6px;
}
.ec-productRole__description_icon_car {
margin-top: 7%;
padding-top: 7%;
border-top: 1px dotted #ccc;
display: flex;
}
.ec-productRole__description_icon_present {
margin-top: 7%;
display: flex;
}
.item_desc_icon {
width: 25%;
}
.item_desc {
width: 75%;
padding-top: 0.5%;
font-weight: bold;
}
.item_desc_present {
width: 75%;
padding-top: 4%;
font-weight: bold;
}
.product-detail-artist-icon {
display: flex;
}
.box26 {
position: relative;
margin: 2em 0;
padding: 0.5em 1em;
border: solid 3px #d5a770;
border-radius: 8px;
}
.box26 .box-title {
position: absolute;
display: inline-block;
top: -13px;
left: 10px;
padding: 0 9px;
line-height: 1;
font-size: 19px;
background: #FFF;
color: #d5a770;
font-weight: bold;
}
.box26 h3 {
margin: 0;
padding: 0;
}
.product-detail-artist-icon {
margin-left: -15px;
}
.mr-10 {
margin-right: 10px;
}
a.btn-sns {
font-size: 25px;
line-height: 40px;
width: 40px;
height: 40px;
padding: 1px 2px;
margin-left: 30px;
letter-spacing: 0;
color: #fff;
border-radius: 50%;
}
a.btn-sns:hover {
color: #fff;
}
a.btn-sns--twitter {
background: #1da1f2;
}
.product-detail-artist-link{
padding-top: 20px;
}
.product-detail-artist-link a:hover{
color: #d5a770;
border-bottom: 1px solid #d5a770;
}
.product-detail-artist-link a {
color: black;
border-bottom: 1px solid black;
font-weight: bold;
font-size: 15px;
}
/* 768以下の時 */
@media screen and (max-width: 767px) {
.ec-productRole__description {
display: none;
}
.product-detail-artist-photo {
visibility:hidden
}
.artist-name-size {
width: 500px;
}
.ec-grid2__cell_introduce {
margin: 10% 15% 0;
width: auto;
}
.ec-productRole__profile {
width: auto;
padding: 5%;
text-align: center;
}
.ec-blockBtn--action {
display: inline-block;
margin-bottom: 0;
font-weight: bold;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 0.875rem;
border-radius: 1.42857142;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
padding: 10px 16px;
text-decoration: none;
color: #fff;
background-color: #d5a770;
border-color: #d5a770;
display: block;
width: 230px;
height: 56px;
line-height: 56px;
padding-top: 0;
padding-bottom: 0;
}
.ec-blockBtn--action-detail {
display: inline-block;
margin-bottom: 0;
font-weight: bold;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 0.875rem;
border-radius: 1.42857142;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
padding: 10px 16px;
text-decoration: none;
color: #fff;
background-color: #d5a770;
border-color: #d5a770;
display: block;
width: 230px;
height: 56px;
line-height: 56px;
padding-top: 0;
padding-bottom: 0;
}
.ec-blockBtn--cancel {
display: inline-block;
margin-bottom: 0;
font-weight: bold;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 0.875rem;
border-radius: 1.42857142;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
padding: 10px 16px;
text-decoration: none;
color: #fff;
background-color: #525263;
border-color: #525263;
display: block;
width: 230px;
height: 56px;
line-height: 56px;
padding-top: 0;
padding-bottom: 0;
}
.ec-blockBtn--cancel:hover {
opacity: 0.7;
background-color: #525263;
border-color: #525263;
}
.social-media-title {
display: none;
}
}
/* 570以下の時 */
@media screen and (max-width: 570px) {
.ec-grid2__cell_introduce {
margin: 10% 5% 0;
width: auto;
}
}
</style>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
}
// line 493
public function block_javascript($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascript"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascript"));
// line 494
echo "\t<script>
\t\$(function () {
\t\t\$('#js-slider-4').slick({
\t\t\tarrows: true, // 前・次のボタンを表示する
\t\t\tspeed: 500, // スライドさせるスピード(ミリ秒)
\t\t\tslidesToShow: 4, // 表示させるスライド数
\t\t\tcenterMode: true, // slidesToShowが奇数のとき、現在のスライドを中央に表示する
\t\t\tvariableWidth: true, // スライド幅の自動計算を無効化
\t\t});
\t});
\t</script>
<script>
eccube.classCategories = ";
// line 506
echo $this->extensions['Eccube\Twig\Extension\EccubeExtension']->getClassCategoriesAsJson((isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 506, $this->source); })()));
echo ";
// 規格2に選択肢を割り当てる。
function fnSetClassCategories(form, classcat_id2_selected) {
var \$form = \$(form);
var product_id = \$form.find('input[name=product_id]').val();
var \$sele1 = \$form.find('select[name=classcategory_id1]');
var \$sele2 = \$form.find('select[name=classcategory_id2]');
eccube.setClassCategories(\$form, product_id, \$sele1, \$sele2, classcat_id2_selected);
}
";
// line 517
if (twig_get_attribute($this->env, $this->source, ($context["form"] ?? null), "classcategory_id2", [], "any", true, true, false, 517)) {
// line 518
echo " fnSetClassCategories(
\$('#form1'), ";
// line 519
echo json_encode(twig_get_attribute($this->env, $this->source, twig_get_attribute($this->env, $this->source, 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.', 519, $this->source); })()), "classcategory_id2", [], "any", false, false, false, 519), "vars", [], "any", false, false, false, 519), "value", [], "any", false, false, false, 519));
echo "
);
";
} elseif (twig_get_attribute($this->env, $this->source, // line 521
($context["form"] ?? null), "classcategory_id1", [], "any", true, true, false, 521)) {
// line 522
echo " eccube.checkStock(\$('#form1'), ";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 522, $this->source); })()), "id", [], "any", false, false, false, 522), "html", null, true);
echo ", ";
echo json_encode(twig_get_attribute($this->env, $this->source, twig_get_attribute($this->env, $this->source, 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.', 522, $this->source); })()), "classcategory_id1", [], "any", false, false, false, 522), "vars", [], "any", false, false, false, 522), "value", [], "any", false, false, false, 522));
echo ", null);
";
}
// line 524
echo " </script>
<script>
\$(function() {
// bfcache無効化
\$(window).bind('pageshow', function(event) {
if (event.originalEvent.persisted) {
location.reload(true);
}
});
// Core Web Vital の Cumulative Layout Shift(CLS)対策のため
// img タグに width, height が付与されている.
// 630px 未満の画面サイズでは縦横比が壊れるための対策
// see https://github.com/EC-CUBE/ec-cube/pull/5023
\$('.ec-grid2__cell').hide();
var removeSize = function () {
\$('.slide-item').height('');
\$('.slide-item img')
.removeAttr('width')
.removeAttr('height')
.removeAttr('style');
};
var slickInitial = function(slick) {
\$('.ec-grid2__cell').fadeIn(1500);
var baseHeight = \$(slick.target).height();
var baseWidth = \$(slick.target).width();
var rate = baseWidth / baseHeight;
\$('.slide-item').height(baseHeight * rate); // 余白を削除する
// transform を使用することでCLSの影響を受けないようにする
\$('.slide-item img')
.css(
{
'transform-origin': 'top left',
'transform': 'scaleY(' + rate + ')',
'transition': 'transform .1s'
}
);
// 正しいサイズに近くなったら属性を解除する
setTimeout(removeSize, 500);
};
\$('.item_visual').on('init', slickInitial);
// リサイズ時は CLS の影響を受けないため属性を解除する
\$(window).resize(removeSize);
\$('.item_visual').slick({
dots: false,
arrows: false,
responsive: [{
breakpoint: 768,
settings: {
dots: true
}
}]
});
\$('.slideThumb').on('click', function() {
var index = \$(this).attr('data-index');
\$('.item_visual').slick('slickGoTo', index, false);
})
});
</script>
<script>
\$(function() {
\$('.add-cart').on('click', function(event) {
";
// line 588
if (twig_get_attribute($this->env, $this->source, ($context["form"] ?? null), "classcategory_id1", [], "any", true, true, false, 588)) {
// line 589
echo " // 規格1フォームの必須チェック
if (\$('#classcategory_id1').val() == '__unselected' || \$('#classcategory_id1').val() == '') {
\$('#classcategory_id1')[0].setCustomValidity('";
// line 591
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("項目が選択されていません"), "html", null, true);
echo "');
return true;
} else {
\$('#classcategory_id1')[0].setCustomValidity('');
}
";
}
// line 597
echo "
";
// line 598
if (twig_get_attribute($this->env, $this->source, ($context["form"] ?? null), "classcategory_id2", [], "any", true, true, false, 598)) {
// line 599
echo " // 規格2フォームの必須チェック
if (\$('#classcategory_id2').val() == '__unselected' || \$('#classcategory_id2').val() == '') {
\$('#classcategory_id2')[0].setCustomValidity('";
// line 601
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("項目が選択されていません"), "html", null, true);
echo "');
return true;
} else {
\$('#classcategory_id2')[0].setCustomValidity('');
}
";
}
// line 607
echo "
// 個数フォームのチェック
if (\$('#quantity').val() < 1) {
\$('#quantity')[0].setCustomValidity('";
// line 610
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("1以上で入力してください。"), "html", null, true);
echo "');
return true;
} else {
\$('#quantity')[0].setCustomValidity('');
}
event.preventDefault();
\$form = \$('#form1');
\$.ajax({
url: \$form.attr('action'),
type: \$form.attr('method'),
data: \$form.serialize(),
dataType: 'json',
beforeSend: function(xhr, settings) {
// Buttonを無効にする
\$('.add-cart').prop('disabled', true);
}
}).done(function(data) {
// レスポンス内のメッセージをalertで表示
\$.each(data.messages, function() {
\$('#ec-modal-header').html(this);
});
\$('.ec-modal').show()
// カートブロックを更新する
\$.ajax({
url: \"";
// line 637
echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("block_cart");
echo "\",
type: 'GET',
dataType: 'html'
}).done(function(html) {
\$('.ec-headerRole__cart').html(html);
});
}).fail(function(data) {
alert('";
// line 644
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートへの追加に失敗しました。"), "html", null, true);
echo "');
}).always(function(data) {
// Buttonを有効にする
\$('.add-cart').prop('disabled', false);
});
});
});
\$('.ec-modal-wrap').on('click', function(e) {
// モーダル内の処理は外側にバブリングさせない
e.stopPropagation();
});
\$('.ec-modal-overlay, .ec-modal, .ec-modal-close, .ec-inlineBtn--cancel').on('click', function() {
\$('.ec-modal').hide()
});
</script>
<script type=\"application/ld+json\">
{
\"@context\": \"https://schema.org/\",
\"@type\": \"Product\",
\"name\": \"";
// line 664
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 664, $this->source); })()), "name", [], "any", false, false, false, 664), "html", null, true);
echo "\",
\"image\": [
";
// line 666
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 666, $this->source); })()), "ProductImage", [], "any", false, false, false, 666));
$context['_iterated'] = false;
$context['loop'] = [
'parent' => $context['_parent'],
'index0' => 0,
'index' => 1,
'first' => true,
];
if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
$length = count($context['_seq']);
$context['loop']['revindex0'] = $length - 1;
$context['loop']['revindex'] = $length;
$context['loop']['length'] = $length;
$context['loop']['last'] = 1 === $length;
}
foreach ($context['_seq'] as $context["_key"] => $context["img"]) {
// line 667
echo " \"";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, twig_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.', 667, $this->source); })()), "request", [], "any", false, false, false, 667), "schemeAndHttpHost", [], "any", false, false, false, 667), "html", null, true);
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($context["img"], "save_image"), "html", null, true);
echo "\"";
if ( !twig_get_attribute($this->env, $this->source, $context["loop"], "last", [], "any", false, false, false, 667)) {
echo ",";
}
// line 668
echo "
";
$context['_iterated'] = true;
++$context['loop']['index0'];
++$context['loop']['index'];
$context['loop']['first'] = false;
if (isset($context['loop']['length'])) {
--$context['loop']['revindex0'];
--$context['loop']['revindex'];
$context['loop']['last'] = 0 === $context['loop']['revindex0'];
}
}
if (!$context['_iterated']) {
// line 670
echo " \"";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, twig_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.', 670, $this->source); })()), "request", [], "any", false, false, false, 670), "schemeAndHttpHost", [], "any", false, false, false, 670), "html", null, true);
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($this->extensions['Eccube\Twig\Extension\EccubeExtension']->getNoImageProduct(""), "save_image"), "html", null, true);
echo "\"
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['img'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 672
echo " ],
\"description\": \"";
// line 673
echo twig_escape_filter($this->env, twig_slice($this->env, twig_replace_filter(((twig_get_attribute($this->env, $this->source, ($context["Product"] ?? null), "description_list", [], "any", true, true, false, 673)) ? (_twig_default_filter(twig_get_attribute($this->env, $this->source, ($context["Product"] ?? null), "description_list", [], "any", false, false, false, 673), twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 673, $this->source); })()), "description_detail", [], "any", false, false, false, 673))) : (twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 673, $this->source); })()), "description_detail", [], "any", false, false, false, 673))), ["
" => "", "
" => ""]), 0, 300), "html", null, true);
echo "\",
";
// line 674
if (twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 674, $this->source); })()), "code_min", [], "any", false, false, false, 674)) {
// line 675
echo " \"sku\": \"";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 675, $this->source); })()), "code_min", [], "any", false, false, false, 675), "html", null, true);
echo "\",
";
}
// line 677
echo " \"offers\": {
\"@type\": \"Offer\",
\"url\": \"";
// line 679
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_detail", ["id" => twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 679, $this->source); })()), "id", [], "any", false, false, false, 679)]), "html", null, true);
echo "\",
\"priceCurrency\": \"";
// line 680
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["eccube_config"]) || array_key_exists("eccube_config", $context) ? $context["eccube_config"] : (function () { throw new RuntimeError('Variable "eccube_config" does not exist.', 680, $this->source); })()), "currency", [], "any", false, false, false, 680), "html", null, true);
echo "\",
\"price\": ";
// line 681
((twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 681, $this->source); })()), "getPrice02IncTaxMin", [], "any", false, false, false, 681)) ? (print (twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 681, $this->source); })()), "getPrice02IncTaxMin", [], "any", false, false, false, 681), "html", null, true))) : (print (0)));
echo ",
\"availability\": \"";
// line 682
echo ((twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 682, $this->source); })()), "stock_find", [], "any", false, false, false, 682)) ? ("InStock") : ("OutOfStock"));
echo "\"
}
}
</script>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
}
// line 688
public function block_main($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "main"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "main"));
// line 689
echo " <div class=\"ec-productRole\">
<div class=\"ec-grid2\">
<div class=\"ec-grid2__cell\">
<div class=\"ec-sliderItemRole\">
<div class=\"item_visual\">
";
// line 695
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 695, $this->source); })()), "ProductImage", [], "any", false, false, false, 695));
$context['_iterated'] = false;
$context['loop'] = [
'parent' => $context['_parent'],
'index0' => 0,
'index' => 1,
'first' => true,
];
if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
$length = count($context['_seq']);
$context['loop']['revindex0'] = $length - 1;
$context['loop']['revindex'] = $length;
$context['loop']['length'] = $length;
$context['loop']['last'] = 1 === $length;
}
foreach ($context['_seq'] as $context["_key"] => $context["ProductImage"]) {
// line 696
echo " <div class=\"slide-item\"><img src=\"";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($context["ProductImage"], "save_image"), "html", null, true);
echo "\" alt=\"";
((twig_get_attribute($this->env, $this->source, $context["loop"], "first", [], "any", false, false, false, 696)) ? (print (twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 696, $this->source); })()), "name", [], "any", false, false, false, 696), "html", null, true))) : (print ("")));
echo "\" height=\"550\"";
if ((twig_get_attribute($this->env, $this->source, $context["loop"], "index", [], "any", false, false, false, 696) > 1)) {
echo " loading=\"lazy\"";
}
echo "></div>
";
$context['_iterated'] = true;
++$context['loop']['index0'];
++$context['loop']['index'];
$context['loop']['first'] = false;
if (isset($context['loop']['length'])) {
--$context['loop']['revindex0'];
--$context['loop']['revindex'];
$context['loop']['last'] = 0 === $context['loop']['revindex0'];
}
}
if (!$context['_iterated']) {
// line 698
echo " <div class=\"slide-item\"><img src=\"";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($this->extensions['Eccube\Twig\Extension\EccubeExtension']->getNoImageProduct(""), "save_image"), "html", null, true);
echo "\" alt=\"";
((twig_get_attribute($this->env, $this->source, $context["loop"], "first", [], "any", false, false, false, 698)) ? (print (twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 698, $this->source); })()), "name", [], "any", false, false, false, 698), "html", null, true))) : (print ("")));
echo "\" width=\"550\" height=\"550\"></div>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['ProductImage'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 700
echo " </div>
<div class=\"item_nav\">
";
// line 702
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 702, $this->source); })()), "ProductImage", [], "any", false, false, false, 702));
$context['loop'] = [
'parent' => $context['_parent'],
'index0' => 0,
'index' => 1,
'first' => true,
];
if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
$length = count($context['_seq']);
$context['loop']['revindex0'] = $length - 1;
$context['loop']['revindex'] = $length;
$context['loop']['length'] = $length;
$context['loop']['last'] = 1 === $length;
}
foreach ($context['_seq'] as $context["_key"] => $context["ProductImage"]) {
// line 703
echo " <div class=\"slideThumb\" data-index=\"";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["loop"], "index0", [], "any", false, false, false, 703), "html", null, true);
echo "\"><img src=\"";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($context["ProductImage"], "save_image"), "html", null, true);
echo "\" alt=\"\" width=\"133\" height=\"133\" loading=\"lazy\"></div>
";
++$context['loop']['index0'];
++$context['loop']['index'];
$context['loop']['first'] = false;
if (isset($context['loop']['length'])) {
--$context['loop']['revindex0'];
--$context['loop']['revindex'];
$context['loop']['last'] = 0 === $context['loop']['revindex0'];
}
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['ProductImage'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 705
echo " </div>
</div>
<div class=\"product-detail-artDetail\">
<div class=\"flex\">
<i class=\"fa-solid fa-palette fa-2x fontawesome-size\"></i><h2 class=\"fontweight-bold\">作品紹介<h2>
</div>
<div class=\"product-detail-title-description\">
";
// line 712
if (twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 712, $this->source); })()), "getDescriptionDetail", [], "any", false, false, false, 712)) {
// line 713
echo " <p>";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 713, $this->source); })()), "getDescriptionDetail", [], "any", false, false, false, 713), "html", null, true);
echo "</p>
";
}
// line 715
echo " </div>
</div>
\t\t\t\t<div class=\"hr-bold\"></div>
";
// line 720
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable((isset($context["artists"]) || array_key_exists("artists", $context) ? $context["artists"] : (function () { throw new RuntimeError('Variable "artists" does not exist.', 720, $this->source); })()));
foreach ($context['_seq'] as $context["_key"] => $context["artist"]) {
// line 721
echo " ";
if ((twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 721, $this->source); })()), "getArtistId", [], "any", false, false, false, 721) == twig_get_attribute($this->env, $this->source, $context["artist"], "id", [], "any", false, false, false, 721))) {
// line 722
echo "\t\t\t\t<div class=\"product-detail-artist\">
\t\t\t\t\t<div class=\"product-detail-artist-description\">
\t\t\t\t\t\t<div class=\"flex\">
\t\t\t\t\t\t\t<i class=\"fa-solid fa-pen-nib fa-2x fontawesome-size\"></i>
<h2 class=\"fontweight-bold artist-name-size\">";
// line 726
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["artist"], "name", [], "any", false, false, false, 726), "html", null, true);
echo "</h2>
<div class=\"product-detail-artist-photo\">
<img src=\"";
// line 728
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["artist"], "image", [], "any", false, false, false, 728)), "user_data"), "html", null, true);
echo "\" alt=artist.name class='hidden'>
</div>
\t\t\t\t\t\t</div>
\t\t\t\t\t\t<div class=\"product-detail-artist-desc\">
<p>« ";
// line 732
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["artist"], "getDescription", [], "any", false, false, false, 732), "html", null, true);
echo " »</p>
\t\t\t\t\t\t</div>
\t\t\t\t\t\t<div class=\"hr\"></div>
";
// line 737
if ((twig_get_attribute($this->env, $this->source, $context["artist"], "twitter", [], "any", false, false, false, 737) != null)) {
// line 738
echo " <h3 class=\"fontweight-bold social-media-title\">アーティストのソーシャルメディア<h3>
\t\t\t\t\t\t<div class=\"product-detail-artist-icon\">
<div>
<a href='";
// line 741
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["artist"], "twitter", [], "any", false, false, false, 741), "html", null, true);
echo "' class=\"btn btn-sns btn-sns--twitter\"><i class=\"fa-brands fa-twitter\" style=\"color: white;\" onMouseOver=\"this.style.color='#d5a770'\" onMouseOut=\"this.style.color='white'\"></i></a>
</div>
\t\t\t\t\t\t</div>
";
}
// line 745
echo "
<div class=\"product-detail-artist-link\">
<a href=\"/artists/detail/";
// line 747
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["artist"], "id", [], "any", false, false, false, 747), "html", null, true);
echo "\">";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["artist"], "name", [], "any", false, false, false, 747), "html", null, true);
echo "の作品を閲覧</a>
</div>
\t\t\t\t\t</div>
\t\t\t\t</div>
";
}
// line 752
echo " ";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['artist'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 753
echo " </div>
<div class=\"ec-grid2__cell_introduce\">
<div class=\"ec-productRole__profile\">
";
// line 757
echo " <div class=\"ec-productRole__title\">
<h2 class=\"ec-headingTitle\">";
// line 758
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 758, $this->source); })()), "name", [], "any", false, false, false, 758), "html", null, true);
echo "</h2>
</div>
\t\t\t\t\t";
// line 761
echo " <div class=\"ec-productRole__title_flex\">
";
// line 762
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable((isset($context["artists"]) || array_key_exists("artists", $context) ? $context["artists"] : (function () { throw new RuntimeError('Variable "artists" does not exist.', 762, $this->source); })()));
foreach ($context['_seq'] as $context["_key"] => $context["artist"]) {
// line 763
echo " ";
if ((twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 763, $this->source); })()), "getArtistId", [], "any", false, false, false, 763) == twig_get_attribute($this->env, $this->source, $context["artist"], "id", [], "any", false, false, false, 763))) {
// line 764
echo " <div><a href=\"/artists/detail/";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["artist"], "id", [], "any", false, false, false, 764), "html", null, true);
echo "\">";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["artist"], "name", [], "any", false, false, false, 764), "html", null, true);
echo ", </a></div>
<div class=\"ml-5\">
";
// line 767
echo " ";
if ((twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 767, $this->source); })()), "getArtistId", [], "any", false, false, false, 767) == twig_get_attribute($this->env, $this->source, $context["artist"], "id", [], "any", false, false, false, 767))) {
// line 768
echo " <p>";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["artist"], "address", [], "any", false, false, false, 768), "html", null, true);
echo "</p>
";
}
// line 770
echo " </div>
";
}
// line 772
echo " ";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['artist'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 773
echo " </div>
\t\t\t\t\t";
// line 775
echo " ";
if ( !(null === twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 775, $this->source); })()), "getProductionTechnique", [], "any", false, false, false, 775))) {
// line 776
echo " <div class=\"ec-productRole__title mt-10\">
<p>";
// line 777
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 777, $this->source); })()), "getProductionTechnique", [], "any", false, false, false, 777), "html", null, true);
echo "</p>
</div>
";
}
// line 780
echo "\t\t\t\t\t";
// line 781
echo " ";
if ( !(null === twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 781, $this->source); })()), "getProductionSizeVertical", [], "any", false, false, false, 781))) {
// line 782
echo " <div class=\"ec-productRole__title\">
<div><p>";
// line 783
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 783, $this->source); })()), "getProductionSizeVertical", [], "any", false, false, false, 783), "html", null, true);
echo " x ";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 783, $this->source); })()), "getProductionSizeWidth", [], "any", false, false, false, 783), "html", null, true);
echo " cm</p></div>
</div>
";
}
// line 786
echo "\t\t\t\t\t";
// line 787
echo " <ul class=\"ec-productRole__tags\">
";
// line 788
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 788, $this->source); })()), "Tags", [], "any", false, false, false, 788));
foreach ($context['_seq'] as $context["_key"] => $context["Tag"]) {
// line 789
echo " <li class=\"ec-productRole__tag tag_";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["Tag"], "id", [], "any", false, false, false, 789), "html", null, true);
echo "\">";
echo twig_escape_filter($this->env, $context["Tag"], "html", null, true);
echo "</li>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Tag'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 791
echo " </ul>
";
// line 793
echo " ";
// line 809
echo " ";
// line 810
echo " <div class=\"ec-productRole__price\">
";
// line 811
if (twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 811, $this->source); })()), "hasProductClass", [], "any", false, false, false, 811)) {
// line 812
if ((twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 812, $this->source); })()), "getPrice02IncTaxMin", [], "any", false, false, false, 812) == twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 812, $this->source); })()), "getPrice02IncTaxMax", [], "any", false, false, false, 812))) {
// line 813
echo " <div class=\"ec-price\">
\t\t\t\t\t\t\t\t <span class=\"ec-productRole__priceRegularPrice\">";
// line 814
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("価格"), "html", null, true);
echo "</span>
<span class=\"ec-price__price price02-default\">";
// line 815
echo twig_escape_filter($this->env, $this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 815, $this->source); })()), "getPrice02IncTaxMin", [], "any", false, false, false, 815)), "html", null, true);
echo "</span>
<span class=\"ec-price__tax\">";
// line 816
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("税込"), "html", null, true);
echo "</span>
</div>
";
} else {
// line 819
echo " <div class=\"ec-price\">
\t\t\t\t\t\t\t\t\t<span class=\"ec-productRole__priceRegularPrice\">";
// line 820
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("価格"), "html", null, true);
echo "</span>
<span class=\"ec-price__price price02-default\">";
// line 821
echo twig_escape_filter($this->env, $this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 821, $this->source); })()), "getPrice02IncTaxMin", [], "any", false, false, false, 821)), "html", null, true);
echo " ~ ";
echo twig_escape_filter($this->env, $this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 821, $this->source); })()), "getPrice02IncTaxMax", [], "any", false, false, false, 821)), "html", null, true);
echo "</span>
<span class=\"ec-price__tax\">";
// line 822
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("税込"), "html", null, true);
echo "</span>
</div>
";
}
// line 825
echo " ";
} else {
// line 826
echo " <div class=\"ec-price\">
\t\t\t\t\t\t\t <span class=\"ec-productRole__priceRegularPrice\">";
// line 827
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("価格"), "html", null, true);
echo "</span>
<span class=\"ec-price__price\">";
// line 828
echo twig_escape_filter($this->env, $this->extensions['Eccube\Twig\Extension\EccubeExtension']->getPriceFilter(twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 828, $this->source); })()), "getPrice02IncTaxMin", [], "any", false, false, false, 828)), "html", null, true);
echo "</span>
<span class=\"ec-price__tax\">";
// line 829
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("税込"), "html", null, true);
echo "</span>
</div>
";
}
// line 832
echo " </div>
";
// line 834
echo " ";
if (array_key_exists("maker_id", $context)) {
// line 835
echo " <div class=\"ec-productRole__code\">
";
// line 836
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("店舗"), "html", null, true);
echo ": <span>";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $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.', 836, $this->source); })()), ((isset($context["maker_id"]) || array_key_exists("maker_id", $context) ? $context["maker_id"] : (function () { throw new RuntimeError('Variable "maker_id" does not exist.', 836, $this->source); })()) - 1), [], "array", false, false, false, 836), "name", [], "any", false, false, false, 836), "html", null, true);
echo "</span>
</div>
";
}
// line 839
echo " ";
// line 840
echo " ";
if ( !twig_test_empty(twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 840, $this->source); })()), "code_min", [], "any", false, false, false, 840))) {
// line 841
echo " <div class=\"ec-productRole__code\">
";
// line 842
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("商品コード"), "html", null, true);
echo ": <span class=\"product-code-default\">";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 842, $this->source); })()), "code_min", [], "any", false, false, false, 842), "html", null, true);
if ((twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 842, $this->source); })()), "code_min", [], "any", false, false, false, 842) != twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 842, $this->source); })()), "code_max", [], "any", false, false, false, 842))) {
echo " ~ ";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 842, $this->source); })()), "code_max", [], "any", false, false, false, 842), "html", null, true);
}
echo "</span>
</div>
";
}
// line 845
echo " ";
// line 846
echo " ";
if ( !twig_test_empty(twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 846, $this->source); })()), "ProductCategories", [], "any", false, false, false, 846))) {
// line 847
echo " <div class=\"ec-productRole__category\">
<div class=\"fontWeightBold\">";
// line 848
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("関連カテゴリ"), "html", null, true);
echo "</div>
";
// line 849
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 849, $this->source); })()), "ProductCategories", [], "any", false, false, false, 849));
foreach ($context['_seq'] as $context["_key"] => $context["ProductCategory"]) {
// line 850
echo " <ul>
<li>
";
// line 852
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable(twig_get_attribute($this->env, $this->source, twig_get_attribute($this->env, $this->source, $context["ProductCategory"], "Category", [], "any", false, false, false, 852), "path", [], "any", false, false, false, 852));
$context['loop'] = [
'parent' => $context['_parent'],
'index0' => 0,
'index' => 1,
'first' => true,
];
if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
$length = count($context['_seq']);
$context['loop']['revindex0'] = $length - 1;
$context['loop']['revindex'] = $length;
$context['loop']['length'] = $length;
$context['loop']['last'] = 1 === $length;
}
foreach ($context['_seq'] as $context["_key"] => $context["Category"]) {
// line 853
echo " <a href=\"";
echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_list");
echo "?category_id=";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["Category"], "id", [], "any", false, false, false, 853), "html", null, true);
echo "\">";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["Category"], "name", [], "any", false, false, false, 853), "html", null, true);
echo "</a>";
if ((twig_get_attribute($this->env, $this->source, $context["loop"], "last", [], "any", false, false, false, 853) == false)) {
// line 854
echo " <span></span>";
}
++$context['loop']['index0'];
++$context['loop']['index'];
$context['loop']['first'] = false;
if (isset($context['loop']['length'])) {
--$context['loop']['revindex0'];
--$context['loop']['revindex'];
$context['loop']['last'] = 0 === $context['loop']['revindex0'];
}
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['Category'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 856
echo " </li>
</ul>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['ProductCategory'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 859
echo " </div>
";
}
// line 861
echo " <form action=\"";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("product_add_cart", ["id" => twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 861, $this->source); })()), "id", [], "any", false, false, false, 861)]), "html", null, true);
echo "\" method=\"post\" id=\"form1\" name=\"form1\">
";
// line 862
if (twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 862, $this->source); })()), "stock_find", [], "any", false, false, false, 862)) {
// line 863
echo " <div class=\"ec-productRole__actions\">
";
// line 864
if (twig_get_attribute($this->env, $this->source, ($context["form"] ?? null), "classcategory_id1", [], "any", true, true, false, 864)) {
// line 865
echo " <div class=\"ec-select\">
";
// line 866
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.', 866, $this->source); })()), "classcategory_id1", [], "any", false, false, false, 866), 'row');
echo "
";
// line 867
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.', 867, $this->source); })()), "classcategory_id1", [], "any", false, false, false, 867), 'errors');
echo "
</div>
";
// line 869
if (twig_get_attribute($this->env, $this->source, ($context["form"] ?? null), "classcategory_id2", [], "any", true, true, false, 869)) {
// line 870
echo " <div class=\"ec-select\">
";
// line 871
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.', 871, $this->source); })()), "classcategory_id2", [], "any", false, false, false, 871), 'row');
echo "
";
// line 872
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.', 872, $this->source); })()), "classcategory_id2", [], "any", false, false, false, 872), 'errors');
echo "
</div>
";
}
// line 875
echo " ";
}
// line 876
echo " <div class=\"ec-numberInput\"><span>";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("数量"), "html", null, true);
echo "</span>
";
// line 877
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.', 877, $this->source); })()), "quantity", [], "any", false, false, false, 877), 'widget');
echo "
";
// line 878
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.', 878, $this->source); })()), "quantity", [], "any", false, false, false, 878), 'errors');
echo "
</div>
<div class=\"ec-numberInput\"><span>";
// line 880
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("メーカーID"), "html", null, true);
echo "</span>
";
// line 881
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.', 881, $this->source); })()), "maker_id", [], "any", false, false, false, 881), 'widget');
echo "
";
// line 882
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.', 882, $this->source); })()), "maker_id", [], "any", false, false, false, 882), 'errors');
echo "
</div>
";
// line 884
if (array_key_exists("maker_id", $context)) {
// line 885
echo " <div class=\"ec-numberInput\"><span>";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("メーカーID"), "html", null, true);
echo "</span>
<input type=\"number\" id=\"maker_id\" name=\"maker_id\" required=\"required\" value=\"";
// line 886
echo twig_escape_filter($this->env, (isset($context["maker_id"]) || array_key_exists("maker_id", $context) ? $context["maker_id"] : (function () { throw new RuntimeError('Variable "maker_id" does not exist.', 886, $this->source); })()), "html", null, true);
echo "\" class=\"form-control\">
</div>
";
} else {
// line 889
echo " <div class=\"ec-numberInput\"><span>";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("メーカーID"), "html", null, true);
echo "</span>
";
// line 890
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable((isset($context["productHistory"]) || array_key_exists("productHistory", $context) ? $context["productHistory"] : (function () { throw new RuntimeError('Variable "productHistory" does not exist.', 890, $this->source); })()));
foreach ($context['_seq'] as $context["_key"] => $context["cookie"]) {
// line 891
echo " <input type=\"number\" id=\"maker_id\" name=\"maker_id\" required=\"required\" value=\"";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["cookie"], "id", [], "any", false, false, false, 891), "html", null, true);
echo "\" class=\"form-control\">
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['cookie'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 893
echo " </div>
";
}
// line 895
echo " </div>
<div class=\"ec-productRole__btn\">
<button type=\"submit\" class=\"ec-blockBtn--action-detail add-cart\">
";
// line 898
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートに入れる"), "html", null, true);
echo "
</button>
</div>
";
} else {
// line 902
echo " <div class=\"ec-productRole__btn\">
<button type=\"button\" class=\"ec-blockBtn--action\" disabled=\"disabled\">
";
// line 904
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("ただいま品切れ中です。"), "html", null, true);
echo "
</button>
</div>
";
}
// line 908
echo "
";
// line 909
echo $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock((isset($context["form"]) || array_key_exists("form", $context) ? $context["form"] : (function () { throw new RuntimeError('Variable "form" does not exist.', 909, $this->source); })()), 'rest');
echo "
</form>
<div class=\"ec-modal\">
<div class=\"ec-modal-overlay\">
<div class=\"ec-modal-wrap\">
<span class=\"ec-modal-close\"><span class=\"ec-icon\"><img src=\"";
// line 914
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/icon/cross-dark.svg"), "html", null, true);
echo "\" alt=\"\"/></span></span>
<div id=\"ec-modal-header\" class=\"text-center\">";
// line 915
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートに追加しました。"), "html", null, true);
echo "</div>
<div class=\"ec-modal-box\">
<div class=\"ec-role\">
<span class=\"ec-inlineBtn--cancel\">";
// line 918
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("お買い物を続ける"), "html", null, true);
echo "</span>
<a href=\"";
// line 919
echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getUrl("cart");
echo "\" class=\"ec-inlineBtn--action mt-5per\">";
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("カートへ進む"), "html", null, true);
echo "</a>
</div>
</div>
</div>
</div>
</div>
";
// line 925
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.', 925, $this->source); })()), "option_favorite_product", [], "any", false, false, false, 925)) {
// line 926
echo " <form action=\"";
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, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 926, $this->source); })()), "id", [], "any", false, false, false, 926)]), "html", null, true);
echo "\" method=\"post\">
<div class=\"ec-productRole__btn\">
";
// line 928
if (((isset($context["is_favorite"]) || array_key_exists("is_favorite", $context) ? $context["is_favorite"] : (function () { throw new RuntimeError('Variable "is_favorite" does not exist.', 928, $this->source); })()) == false)) {
// line 929
echo " <button type=\"submit\" id=\"favorite\" class=\"ec-blockBtn--cancel\">
<i class=\"ec-headerNav__itemIcon fas fa-heart fa-fw\"></i>";
// line 930
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("お気に入りに追加"), "html", null, true);
echo "
</button>
";
} else {
// line 933
echo " <button type=\"submit\" id=\"favorite\" class=\"ec-blockBtn--cancel\"
disabled=\"disabled\">";
// line 934
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("お気に入りに追加済です。"), "html", null, true);
echo "
</button>
";
}
// line 937
echo " </div>
</form>
";
}
// line 940
echo " <div class=\"ec-productRole__description\">
";
// line 941
echo twig_nl2br(twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 941, $this->source); })()), "description_detail", [], "any", false, false, false, 941));
echo "
</div>
<div class=\"ec-productRole__description_icon_car\">
<div class='item_desc_icon'><i class=\"fa-solid fa-truck fa-3x\" style=\"color: #d5a770;\"></i></div>
<div class='item_desc'>お届けの目安は<br />ご購入から7日前後</div>
</div>
<div class=\"ec-productRole__description_icon_present\">
<div class='item_desc_icon'><i class=\"fa-solid fa-gift fa-3x\" style=\"color: #d5a770;\"></i></div>
<div class='item_desc_present'>返品無料</div>
</div>
</div>
</div>
</div>
";
// line 954
if (twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 954, $this->source); })()), "freearea", [], "any", false, false, false, 954)) {
// line 955
echo " <div class=\"ec-productRole__description\">
";
// line 956
echo twig_include($this->env, $context, twig_template_from_string($this->env, twig_get_attribute($this->env, $this->source, (isset($context["Product"]) || array_key_exists("Product", $context) ? $context["Product"] : (function () { throw new RuntimeError('Variable "Product" does not exist.', 956, $this->source); })()), "freearea", [], "any", false, false, false, 956)));
echo "
</div>
";
}
// line 959
echo " </div>
\t";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
}
public function getTemplateName()
{
return "Product/detail.twig";
}
public function isTraitable()
{
return false;
}
public function getDebugInfo()
{
return array ( 1592 => 959, 1586 => 956, 1583 => 955, 1581 => 954, 1565 => 941, 1562 => 940, 1557 => 937, 1551 => 934, 1548 => 933, 1542 => 930, 1539 => 929, 1537 => 928, 1531 => 926, 1529 => 925, 1518 => 919, 1514 => 918, 1508 => 915, 1504 => 914, 1496 => 909, 1493 => 908, 1486 => 904, 1482 => 902, 1475 => 898, 1470 => 895, 1466 => 893, 1457 => 891, 1453 => 890, 1448 => 889, 1442 => 886, 1437 => 885, 1435 => 884, 1430 => 882, 1426 => 881, 1422 => 880, 1417 => 878, 1413 => 877, 1408 => 876, 1405 => 875, 1399 => 872, 1395 => 871, 1392 => 870, 1390 => 869, 1385 => 867, 1381 => 866, 1378 => 865, 1376 => 864, 1373 => 863, 1371 => 862, 1366 => 861, 1362 => 859, 1354 => 856, 1339 => 854, 1330 => 853, 1313 => 852, 1309 => 850, 1305 => 849, 1301 => 848, 1298 => 847, 1295 => 846, 1293 => 845, 1281 => 842, 1278 => 841, 1275 => 840, 1273 => 839, 1265 => 836, 1262 => 835, 1259 => 834, 1256 => 832, 1250 => 829, 1246 => 828, 1242 => 827, 1239 => 826, 1236 => 825, 1230 => 822, 1224 => 821, 1220 => 820, 1217 => 819, 1211 => 816, 1207 => 815, 1203 => 814, 1200 => 813, 1198 => 812, 1196 => 811, 1193 => 810, 1191 => 809, 1189 => 793, 1186 => 791, 1175 => 789, 1171 => 788, 1168 => 787, 1166 => 786, 1158 => 783, 1155 => 782, 1152 => 781, 1150 => 780, 1144 => 777, 1141 => 776, 1138 => 775, 1135 => 773, 1129 => 772, 1125 => 770, 1119 => 768, 1116 => 767, 1108 => 764, 1105 => 763, 1101 => 762, 1098 => 761, 1093 => 758, 1090 => 757, 1085 => 753, 1079 => 752, 1069 => 747, 1065 => 745, 1058 => 741, 1053 => 738, 1051 => 737, 1043 => 732, 1036 => 728, 1031 => 726, 1025 => 722, 1022 => 721, 1018 => 720, 1011 => 715, 1005 => 713, 1003 => 712, 994 => 705, 975 => 703, 958 => 702, 954 => 700, 943 => 698, 921 => 696, 903 => 695, 895 => 689, 885 => 688, 870 => 682, 866 => 681, 862 => 680, 858 => 679, 854 => 677, 848 => 675, 846 => 674, 841 => 673, 838 => 672, 828 => 670, 814 => 668, 806 => 667, 788 => 666, 783 => 664, 760 => 644, 750 => 637, 720 => 610, 715 => 607, 706 => 601, 702 => 599, 700 => 598, 697 => 597, 688 => 591, 684 => 589, 682 => 588, 616 => 524, 608 => 522, 606 => 521, 601 => 519, 598 => 518, 596 => 517, 582 => 506, 568 => 494, 558 => 493, 73 => 16, 63 => 15, 52 => 11, 50 => 13, 37 => 11,);
}
public function getSourceContext()
{
return new Source("{#
This file is part of EC-CUBE
Copyright(c) EC-CUBE CO.,LTD. All Rights Reserved.
http://www.ec-cube.co.jp/
For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
#}
{% extends 'default_frame.twig' %}
{% set body_class = 'product_page' %}
{% block stylesheet %}
<style>
.ec-modal {
display: none;
position: fixed;
top: 0;
left: 0;
z-index: 99999;
width: 100%;
height: 100%;
}
.ec-modal.small {
width: 30%;
}
.ec-modal.full {
width: 100%;
height: 100%;
}
.ec-modal .ec-modal-overlay {
display: flex;
justify-content: center;
align-items: center;
background-color: rgba(0, 0, 0, 0.3);
width: 100%;
height: 100%;
}
.ec-modal .ec-modal-wrap {
position: relative;
border-radius: 6px;
border: 0px;
background-color: #fff;
width: 50%;
margin: 20px;
padding: 40px 5px;
}
.ec-modal .ec-modal-close {
cursor: pointer;
position: absolute;
right: 20px;
top: 10px;
font-size: 20px;
height: 30px;
width: 20px;
}
.ec-modal .ec-modal-close:hover {
color: #4b5361;
}
.ec-modal .ec-modal-box {
text-align: center;
}
.ec-modal .ec-role {
margin-top: 20px;
}
.slick-slider {
margin-bottom: 30px;
}
.slick-dots {
position: absolute;
bottom: -45px;
display: block;
width: 100%;
padding: 0;
list-style: none;
text-align: center;
}
.slick-dots li {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
margin: 0 5px;
padding: 0;
cursor: pointer;
}
.slick-dots li button {
font-size: 0;
line-height: 0;
display: block;
width: 20px;
height: 20px;
padding: 5px;
cursor: pointer;
color: transparent;
border: 0;
outline: none;
background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
opacity: 1;
}
.slick-dots li button:before {
content: \" \";
line-height: 20px;
position: absolute;
top: 0;
left: 0;
width: 12px;
height: 12px;
text-align: center;
opacity: .25;
background-color: black;
border-radius: 50%;
}
.slick-dots li.slick-active button:before {
opacity: .75;
background-color: black;
}
.slick-dots li button.thumbnail img {
width: 0;
height: 0;
}
.ec-numberInput {
display: none;
}
.ec-blockBtn--cancel {
display: inline-block;
margin-bottom: 0;
font-weight: bold;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 0.875rem;
border-radius: 1.42857142;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
padding: 10px 16px;
text-decoration: none;
color: #fff;
background-color: #F8C4CF;
border-color: #F8C4CF;
display: block;
width: 330px;
height: 56px;
line-height: 56px;
padding-top: 0;
padding-bottom: 0;
border-radius: 6px;
}
.ec-blockBtn--cancel:hover {
opacity: 0.7;
background-color: #F8C4CF;
border-color: #F8C4CF;
}
.ec-blockBtn--action-detail {
display: inline-block;
margin-bottom: 0;
font-weight: bold;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 0.875rem;
border-radius: 1.42857142;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
padding: 10px 16px;
text-decoration: none;
color: #fff;
background-color: #d5a770;
border-color: #d5a770;
display: block;
width: 330px;
height: 56px;
line-height: 56px;
padding-top: 0;
padding-bottom: 0;
border-radius: 6px;
}
.ec-blockBtn--action-detail:hover {
background-color: #d5a770;
border-color: #d5a770;
opacity: 0.7;
}
.ec-blockBtn--action {
display: inline-block;
margin-bottom: 0;
font-weight: bold;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 0.875rem;
border-radius: 1.42857142;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
padding: 10px 16px;
text-decoration: none;
color: #fff;
background-color: #F8C4CF;
border-color: #F8C4CF;
display: block;
width: 330px;
height: 56px;
line-height: 56px;
padding-top: 0;
padding-bottom: 0;
border-radius: 6px;
}
.ec-productRole__description_icon_car {
margin-top: 7%;
padding-top: 7%;
border-top: 1px dotted #ccc;
display: flex;
}
.ec-productRole__description_icon_present {
margin-top: 7%;
display: flex;
}
.item_desc_icon {
width: 25%;
}
.item_desc {
width: 75%;
padding-top: 0.5%;
font-weight: bold;
}
.item_desc_present {
width: 75%;
padding-top: 4%;
font-weight: bold;
}
.product-detail-artist-icon {
display: flex;
}
.box26 {
position: relative;
margin: 2em 0;
padding: 0.5em 1em;
border: solid 3px #d5a770;
border-radius: 8px;
}
.box26 .box-title {
position: absolute;
display: inline-block;
top: -13px;
left: 10px;
padding: 0 9px;
line-height: 1;
font-size: 19px;
background: #FFF;
color: #d5a770;
font-weight: bold;
}
.box26 h3 {
margin: 0;
padding: 0;
}
.product-detail-artist-icon {
margin-left: -15px;
}
.mr-10 {
margin-right: 10px;
}
a.btn-sns {
font-size: 25px;
line-height: 40px;
width: 40px;
height: 40px;
padding: 1px 2px;
margin-left: 30px;
letter-spacing: 0;
color: #fff;
border-radius: 50%;
}
a.btn-sns:hover {
color: #fff;
}
a.btn-sns--twitter {
background: #1da1f2;
}
.product-detail-artist-link{
padding-top: 20px;
}
.product-detail-artist-link a:hover{
color: #d5a770;
border-bottom: 1px solid #d5a770;
}
.product-detail-artist-link a {
color: black;
border-bottom: 1px solid black;
font-weight: bold;
font-size: 15px;
}
/* 768以下の時 */
@media screen and (max-width: 767px) {
.ec-productRole__description {
display: none;
}
.product-detail-artist-photo {
visibility:hidden
}
.artist-name-size {
width: 500px;
}
.ec-grid2__cell_introduce {
margin: 10% 15% 0;
width: auto;
}
.ec-productRole__profile {
width: auto;
padding: 5%;
text-align: center;
}
.ec-blockBtn--action {
display: inline-block;
margin-bottom: 0;
font-weight: bold;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 0.875rem;
border-radius: 1.42857142;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
padding: 10px 16px;
text-decoration: none;
color: #fff;
background-color: #d5a770;
border-color: #d5a770;
display: block;
width: 230px;
height: 56px;
line-height: 56px;
padding-top: 0;
padding-bottom: 0;
}
.ec-blockBtn--action-detail {
display: inline-block;
margin-bottom: 0;
font-weight: bold;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 0.875rem;
border-radius: 1.42857142;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
padding: 10px 16px;
text-decoration: none;
color: #fff;
background-color: #d5a770;
border-color: #d5a770;
display: block;
width: 230px;
height: 56px;
line-height: 56px;
padding-top: 0;
padding-bottom: 0;
}
.ec-blockBtn--cancel {
display: inline-block;
margin-bottom: 0;
font-weight: bold;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 0.875rem;
border-radius: 1.42857142;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
padding: 10px 16px;
text-decoration: none;
color: #fff;
background-color: #525263;
border-color: #525263;
display: block;
width: 230px;
height: 56px;
line-height: 56px;
padding-top: 0;
padding-bottom: 0;
}
.ec-blockBtn--cancel:hover {
opacity: 0.7;
background-color: #525263;
border-color: #525263;
}
.social-media-title {
display: none;
}
}
/* 570以下の時 */
@media screen and (max-width: 570px) {
.ec-grid2__cell_introduce {
margin: 10% 5% 0;
width: auto;
}
}
</style>
{% endblock %}
{% block javascript %}
\t<script>
\t\$(function () {
\t\t\$('#js-slider-4').slick({
\t\t\tarrows: true, // 前・次のボタンを表示する
\t\t\tspeed: 500, // スライドさせるスピード(ミリ秒)
\t\t\tslidesToShow: 4, // 表示させるスライド数
\t\t\tcenterMode: true, // slidesToShowが奇数のとき、現在のスライドを中央に表示する
\t\t\tvariableWidth: true, // スライド幅の自動計算を無効化
\t\t});
\t});
\t</script>
<script>
eccube.classCategories = {{ class_categories_as_json(Product)|raw }};
// 規格2に選択肢を割り当てる。
function fnSetClassCategories(form, classcat_id2_selected) {
var \$form = \$(form);
var product_id = \$form.find('input[name=product_id]').val();
var \$sele1 = \$form.find('select[name=classcategory_id1]');
var \$sele2 = \$form.find('select[name=classcategory_id2]');
eccube.setClassCategories(\$form, product_id, \$sele1, \$sele2, classcat_id2_selected);
}
{% if form.classcategory_id2 is defined %}
fnSetClassCategories(
\$('#form1'), {{ form.classcategory_id2.vars.value|json_encode|raw }}
);
{% elseif form.classcategory_id1 is defined %}
eccube.checkStock(\$('#form1'), {{ Product.id }}, {{ form.classcategory_id1.vars.value|json_encode|raw }}, null);
{% endif %}
</script>
<script>
\$(function() {
// bfcache無効化
\$(window).bind('pageshow', function(event) {
if (event.originalEvent.persisted) {
location.reload(true);
}
});
// Core Web Vital の Cumulative Layout Shift(CLS)対策のため
// img タグに width, height が付与されている.
// 630px 未満の画面サイズでは縦横比が壊れるための対策
// see https://github.com/EC-CUBE/ec-cube/pull/5023
\$('.ec-grid2__cell').hide();
var removeSize = function () {
\$('.slide-item').height('');
\$('.slide-item img')
.removeAttr('width')
.removeAttr('height')
.removeAttr('style');
};
var slickInitial = function(slick) {
\$('.ec-grid2__cell').fadeIn(1500);
var baseHeight = \$(slick.target).height();
var baseWidth = \$(slick.target).width();
var rate = baseWidth / baseHeight;
\$('.slide-item').height(baseHeight * rate); // 余白を削除する
// transform を使用することでCLSの影響を受けないようにする
\$('.slide-item img')
.css(
{
'transform-origin': 'top left',
'transform': 'scaleY(' + rate + ')',
'transition': 'transform .1s'
}
);
// 正しいサイズに近くなったら属性を解除する
setTimeout(removeSize, 500);
};
\$('.item_visual').on('init', slickInitial);
// リサイズ時は CLS の影響を受けないため属性を解除する
\$(window).resize(removeSize);
\$('.item_visual').slick({
dots: false,
arrows: false,
responsive: [{
breakpoint: 768,
settings: {
dots: true
}
}]
});
\$('.slideThumb').on('click', function() {
var index = \$(this).attr('data-index');
\$('.item_visual').slick('slickGoTo', index, false);
})
});
</script>
<script>
\$(function() {
\$('.add-cart').on('click', function(event) {
{% if form.classcategory_id1 is defined %}
// 規格1フォームの必須チェック
if (\$('#classcategory_id1').val() == '__unselected' || \$('#classcategory_id1').val() == '') {
\$('#classcategory_id1')[0].setCustomValidity('{{ '項目が選択されていません'|trans }}');
return true;
} else {
\$('#classcategory_id1')[0].setCustomValidity('');
}
{% endif %}
{% if form.classcategory_id2 is defined %}
// 規格2フォームの必須チェック
if (\$('#classcategory_id2').val() == '__unselected' || \$('#classcategory_id2').val() == '') {
\$('#classcategory_id2')[0].setCustomValidity('{{ '項目が選択されていません'|trans }}');
return true;
} else {
\$('#classcategory_id2')[0].setCustomValidity('');
}
{% endif %}
// 個数フォームのチェック
if (\$('#quantity').val() < 1) {
\$('#quantity')[0].setCustomValidity('{{ '1以上で入力してください。'|trans }}');
return true;
} else {
\$('#quantity')[0].setCustomValidity('');
}
event.preventDefault();
\$form = \$('#form1');
\$.ajax({
url: \$form.attr('action'),
type: \$form.attr('method'),
data: \$form.serialize(),
dataType: 'json',
beforeSend: function(xhr, settings) {
// Buttonを無効にする
\$('.add-cart').prop('disabled', true);
}
}).done(function(data) {
// レスポンス内のメッセージをalertで表示
\$.each(data.messages, function() {
\$('#ec-modal-header').html(this);
});
\$('.ec-modal').show()
// カートブロックを更新する
\$.ajax({
url: \"{{ url('block_cart') }}\",
type: 'GET',
dataType: 'html'
}).done(function(html) {
\$('.ec-headerRole__cart').html(html);
});
}).fail(function(data) {
alert('{{ 'カートへの追加に失敗しました。'|trans }}');
}).always(function(data) {
// Buttonを有効にする
\$('.add-cart').prop('disabled', false);
});
});
});
\$('.ec-modal-wrap').on('click', function(e) {
// モーダル内の処理は外側にバブリングさせない
e.stopPropagation();
});
\$('.ec-modal-overlay, .ec-modal, .ec-modal-close, .ec-inlineBtn--cancel').on('click', function() {
\$('.ec-modal').hide()
});
</script>
<script type=\"application/ld+json\">
{
\"@context\": \"https://schema.org/\",
\"@type\": \"Product\",
\"name\": \"{{ Product.name }}\",
\"image\": [
{% for img in Product.ProductImage %}
\"{{ app.request.schemeAndHttpHost }}{{ asset(img, 'save_image') }}\"{% if not loop.last %},{% endif %}
{% else %}
\"{{ app.request.schemeAndHttpHost }}{{ asset(''|no_image_product, 'save_image') }}\"
{% endfor %}
],
\"description\": \"{{ Product.description_list | default(Product.description_detail) | replace({'\\n': '', '\\r': ''}) | slice(0,300) }}\",
{% if Product.code_min %}
\"sku\": \"{{ Product.code_min }}\",
{% endif %}
\"offers\": {
\"@type\": \"Offer\",
\"url\": \"{{ url('product_detail', {'id': Product.id}) }}\",
\"priceCurrency\": \"{{ eccube_config.currency }}\",
\"price\": {{ Product.getPrice02IncTaxMin ? Product.getPrice02IncTaxMin : 0}},
\"availability\": \"{{ Product.stock_find ? \"InStock\" : \"OutOfStock\" }}\"
}
}
</script>
{% endblock %}
{% block main %}
<div class=\"ec-productRole\">
<div class=\"ec-grid2\">
<div class=\"ec-grid2__cell\">
<div class=\"ec-sliderItemRole\">
<div class=\"item_visual\">
{% for ProductImage in Product.ProductImage %}
<div class=\"slide-item\"><img src=\"{{ asset(ProductImage, 'save_image') }}\" alt=\"{{ loop.first ? Product.name : '' }}\" height=\"550\"{% if loop.index > 1 %} loading=\"lazy\"{% endif %}></div>
{% else %}
<div class=\"slide-item\"><img src=\"{{ asset(''|no_image_product, 'save_image') }}\" alt=\"{{ loop.first ? Product.name : '' }}\" width=\"550\" height=\"550\"></div>
{% endfor %}
</div>
<div class=\"item_nav\">
{% for ProductImage in Product.ProductImage %}
<div class=\"slideThumb\" data-index=\"{{ loop.index0 }}\"><img src=\"{{ asset(ProductImage, 'save_image') }}\" alt=\"\" width=\"133\" height=\"133\" loading=\"lazy\"></div>
{% endfor %}
</div>
</div>
<div class=\"product-detail-artDetail\">
<div class=\"flex\">
<i class=\"fa-solid fa-palette fa-2x fontawesome-size\"></i><h2 class=\"fontweight-bold\">作品紹介<h2>
</div>
<div class=\"product-detail-title-description\">
{% if Product.getDescriptionDetail %}
<p>{{ Product.getDescriptionDetail }}</p>
{% endif %}
</div>
</div>
\t\t\t\t<div class=\"hr-bold\"></div>
{% for artist in artists %}
{% if Product.getArtistId == artist.id %}
\t\t\t\t<div class=\"product-detail-artist\">
\t\t\t\t\t<div class=\"product-detail-artist-description\">
\t\t\t\t\t\t<div class=\"flex\">
\t\t\t\t\t\t\t<i class=\"fa-solid fa-pen-nib fa-2x fontawesome-size\"></i>
<h2 class=\"fontweight-bold artist-name-size\">{{ artist.name }}</h2>
<div class=\"product-detail-artist-photo\">
<img src=\"{{ asset(artist.image |no_image_product, 'user_data') }}\" alt=artist.name class='hidden'>
</div>
\t\t\t\t\t\t</div>
\t\t\t\t\t\t<div class=\"product-detail-artist-desc\">
<p>« {{ artist.getDescription }} »</p>
\t\t\t\t\t\t</div>
\t\t\t\t\t\t<div class=\"hr\"></div>
{% if artist.twitter != null %}
<h3 class=\"fontweight-bold social-media-title\">アーティストのソーシャルメディア<h3>
\t\t\t\t\t\t<div class=\"product-detail-artist-icon\">
<div>
<a href='{{artist.twitter}}' class=\"btn btn-sns btn-sns--twitter\"><i class=\"fa-brands fa-twitter\" style=\"color: white;\" onMouseOver=\"this.style.color='#d5a770'\" onMouseOut=\"this.style.color='white'\"></i></a>
</div>
\t\t\t\t\t\t</div>
{% endif %}
<div class=\"product-detail-artist-link\">
<a href=\"/artists/detail/{{ artist.id }}\">{{ artist.name }}の作品を閲覧</a>
</div>
\t\t\t\t\t</div>
\t\t\t\t</div>
{% endif %}
{% endfor %}
</div>
<div class=\"ec-grid2__cell_introduce\">
<div class=\"ec-productRole__profile\">
{# 商品名 #}
<div class=\"ec-productRole__title\">
<h2 class=\"ec-headingTitle\">{{ Product.name }}</h2>
</div>
\t\t\t\t\t{# アーティスト名とリンク #}
<div class=\"ec-productRole__title_flex\">
{% for artist in artists %}
{% if Product.getArtistId == artist.id %}
<div><a href=\"/artists/detail/{{ artist.id }}\">{{ artist.name }}, </a></div>
<div class=\"ml-5\">
{# アーティストの出身地 #}
{% if Product.getArtistId == artist.id %}
<p>{{ artist.address }}</p>
{% endif %}
</div>
{% endif %}
{% endfor %}
</div>
\t\t\t\t\t{# 絵が何で描かれたか #}
{% if Product.getProductionTechnique is not null %}
<div class=\"ec-productRole__title mt-10\">
<p>{{ Product.getProductionTechnique }}</p>
</div>
{% endif %}
\t\t\t\t\t{# 絵のサイズ #}
{% if Product.getProductionSizeVertical is not null %}
<div class=\"ec-productRole__title\">
<div><p>{{ Product.getProductionSizeVertical }} x {{ Product.getProductionSizeWidth}} cm</p></div>
</div>
{% endif %}
\t\t\t\t\t{# タグ #}
<ul class=\"ec-productRole__tags\">
{% for Tag in Product.Tags %}
<li class=\"ec-productRole__tag tag_{{ Tag.id }}\">{{ Tag }}</li>
{% endfor %}
</ul>
{# 通常価格 #}
{# {% if Product.hasProductClass -%}
<div class=\"ec-productRole__priceRegular\">
{% if Product.getPrice01Min is not null and Product.getPrice01IncTaxMin == Product.getPrice01IncTaxMax %}
<span class=\"ec-productRole__priceRegularPrice\">{{ '通常価格'|trans }}:<span class=\"price01-default\">{{ Product.getPrice01IncTaxMin|price }}</span></span>
<span class=\"ec-productRole__priceRegularTax\">{{ '税込'|trans }}</span>
{% elseif Product.getPrice01Min is not null and Product.getPrice01Max is not null %}
<span class=\"ec-productRole__priceRegularPrice\">{{ '通常価格'|trans }}:<span class=\"price01-default\">{{ Product.getPrice01IncTaxMin|price }}~ {{ Product.getPrice01IncTaxMax|price }}</span></span>
<span class=\"ec-productRole__priceRegularTax\">{{ '税込'|trans }}</span>
{% endif %}
</div>
{% else %}
{% if Product.getPrice01Max is not null %}
<span class=\"ec-productRole__priceRegularPrice\">{{ '通常価格'|trans }}:{{ Product.getPrice01IncTaxMin|price }}</span>
<span class=\"ec-productRole__priceRegularTax\">{{ '税込'|trans }}</span>
{% endif %}
{% endif %} #}
{# 販売価格 #}
<div class=\"ec-productRole__price\">
{% if Product.hasProductClass -%}
{% if Product.getPrice02IncTaxMin == Product.getPrice02IncTaxMax %}
<div class=\"ec-price\">
\t\t\t\t\t\t\t\t <span class=\"ec-productRole__priceRegularPrice\">{{ '価格'|trans }}</span>
<span class=\"ec-price__price price02-default\">{{ Product.getPrice02IncTaxMin|price }}</span>
<span class=\"ec-price__tax\">{{ '税込'|trans }}</span>
</div>
{% else %}
<div class=\"ec-price\">
\t\t\t\t\t\t\t\t\t<span class=\"ec-productRole__priceRegularPrice\">{{ '価格'|trans }}</span>
<span class=\"ec-price__price price02-default\">{{ Product.getPrice02IncTaxMin|price }} ~ {{ Product.getPrice02IncTaxMax|price }}</span>
<span class=\"ec-price__tax\">{{ '税込'|trans }}</span>
</div>
{% endif %}
{% else %}
<div class=\"ec-price\">
\t\t\t\t\t\t\t <span class=\"ec-productRole__priceRegularPrice\">{{ '価格'|trans }}</span>
<span class=\"ec-price__price\">{{ Product.getPrice02IncTaxMin|price }}</span>
<span class=\"ec-price__tax\">{{ '税込'|trans }}</span>
</div>
{% endif %}
</div>
{# メーカー #}
{% if maker_id is defined %}
<div class=\"ec-productRole__code\">
{{ '店舗'|trans }}: <span>{{ maker[maker_id - 1].name }}</span>
</div>
{% endif %}
{# 商品コード #}
{% if Product.code_min is not empty %}
<div class=\"ec-productRole__code\">
{{ '商品コード'|trans }}: <span class=\"product-code-default\">{{ Product.code_min }}{% if Product.code_min != Product.code_max %} ~ {{ Product.code_max }}{% endif %}</span>
</div>
{% endif %}
{# 関連カテゴリ #}
{% if Product.ProductCategories is not empty %}
<div class=\"ec-productRole__category\">
<div class=\"fontWeightBold\">{{ '関連カテゴリ'|trans }}</div>
{% for ProductCategory in Product.ProductCategories %}
<ul>
<li>
{% for Category in ProductCategory.Category.path %}
<a href=\"{{ url('product_list') }}?category_id={{ Category.id }}\">{{ Category.name }}</a> {%- if loop.last == false %}
<span></span>{% endif -%}
{% endfor %}
</li>
</ul>
{% endfor %}
</div>
{% endif %}
<form action=\"{{ url('product_add_cart', {id:Product.id}) }}\" method=\"post\" id=\"form1\" name=\"form1\">
{% if Product.stock_find %}
<div class=\"ec-productRole__actions\">
{% if form.classcategory_id1 is defined %}
<div class=\"ec-select\">
{{ form_row(form.classcategory_id1) }}
{{ form_errors(form.classcategory_id1) }}
</div>
{% if form.classcategory_id2 is defined %}
<div class=\"ec-select\">
{{ form_row(form.classcategory_id2) }}
{{ form_errors(form.classcategory_id2) }}
</div>
{% endif %}
{% endif %}
<div class=\"ec-numberInput\"><span>{{ '数量'|trans }}</span>
{{ form_widget(form.quantity) }}
{{ form_errors(form.quantity) }}
</div>
<div class=\"ec-numberInput\"><span>{{ 'メーカーID'|trans }}</span>
{{ form_widget(form.maker_id) }}
{{ form_errors(form.maker_id) }}
</div>
{% if maker_id is defined %}
<div class=\"ec-numberInput\"><span>{{ 'メーカーID'|trans }}</span>
<input type=\"number\" id=\"maker_id\" name=\"maker_id\" required=\"required\" value=\"{{ maker_id }}\" class=\"form-control\">
</div>
{% else %}
<div class=\"ec-numberInput\"><span>{{ 'メーカーID'|trans }}</span>
{% for cookie in productHistory %}
<input type=\"number\" id=\"maker_id\" name=\"maker_id\" required=\"required\" value=\"{{ cookie.id }}\" class=\"form-control\">
{% endfor %}
</div>
{% endif %}
</div>
<div class=\"ec-productRole__btn\">
<button type=\"submit\" class=\"ec-blockBtn--action-detail add-cart\">
{{ 'カートに入れる'|trans }}
</button>
</div>
{% else %}
<div class=\"ec-productRole__btn\">
<button type=\"button\" class=\"ec-blockBtn--action\" disabled=\"disabled\">
{{ 'ただいま品切れ中です。'|trans }}
</button>
</div>
{% endif %}
{{ form_rest(form) }}
</form>
<div class=\"ec-modal\">
<div class=\"ec-modal-overlay\">
<div class=\"ec-modal-wrap\">
<span class=\"ec-modal-close\"><span class=\"ec-icon\"><img src=\"{{ asset('assets/icon/cross-dark.svg') }}\" alt=\"\"/></span></span>
<div id=\"ec-modal-header\" class=\"text-center\">{{ 'カートに追加しました。'|trans }}</div>
<div class=\"ec-modal-box\">
<div class=\"ec-role\">
<span class=\"ec-inlineBtn--cancel\">{{ 'お買い物を続ける'|trans }}</span>
<a href=\"{{ url('cart') }}\" class=\"ec-inlineBtn--action mt-5per\">{{ 'カートへ進む'|trans }}</a>
</div>
</div>
</div>
</div>
</div>
{% if BaseInfo.option_favorite_product %}
<form action=\"{{ url('product_add_favorite', {id:Product.id}) }}\" method=\"post\">
<div class=\"ec-productRole__btn\">
{% if is_favorite == false %}
<button type=\"submit\" id=\"favorite\" class=\"ec-blockBtn--cancel\">
<i class=\"ec-headerNav__itemIcon fas fa-heart fa-fw\"></i>{{ 'お気に入りに追加'|trans }}
</button>
{% else %}
<button type=\"submit\" id=\"favorite\" class=\"ec-blockBtn--cancel\"
disabled=\"disabled\">{{ 'お気に入りに追加済です。'|trans }}
</button>
{% endif %}
</div>
</form>
{% endif %}
<div class=\"ec-productRole__description\">
{{ Product.description_detail|raw|nl2br }}
</div>
<div class=\"ec-productRole__description_icon_car\">
<div class='item_desc_icon'><i class=\"fa-solid fa-truck fa-3x\" style=\"color: #d5a770;\"></i></div>
<div class='item_desc'>お届けの目安は<br />ご購入から7日前後</div>
</div>
<div class=\"ec-productRole__description_icon_present\">
<div class='item_desc_icon'><i class=\"fa-solid fa-gift fa-3x\" style=\"color: #d5a770;\"></i></div>
<div class='item_desc_present'>返品無料</div>
</div>
</div>
</div>
</div>
{% if Product.freearea %}
<div class=\"ec-productRole__description\">
{{ include(template_from_string(Product.freearea)) }}
</div>
{% endif %}
</div>
\t{# <ul class=\"slider-2\" id=\"js-slider-4\">
{% for product in products %}
{% for artist in artists %}
{% if product.getArtistId == artist.id %}
{% if product.getArtistId == artist.id %}
<li>
<div class=\"ec-newItemRole__listItem\">
<a href=\"{{ url('product_detail', {'id': product.id}) }}\" class=\"text-decoration\">
{% for productImage in product.ProductImage %}
<div class=\"slide-item\"><img src=\"{{ asset(productImage, 'save_image') }}\" /></div>
{% endfor %}
<p class=\"ec-newItemRole__listItemTitle fontWeightBold\">{{ product.name|trans }}</p>
<p class=\"ec-newItemRole__listItemPrice fontWeightBold\">¥{{ product.getPrice02IncTaxMax|trans }}(税込)</p>
</a>
</div>
</li>
{% endif %}
{% endif %}
{% endfor %}
{% endfor %}
\t</ul> #}
{% endblock %}", "Product/detail.twig", "/home/xs230941/tas-lab.net/public_html/app/template/default/Product/detail.twig");
}
}