From 02794a2f73e017688c1b07b0bd2c405b6bae96fa Mon Sep 17 00:00:00 2001 From: dakeyama Date: Thu, 6 Feb 2020 12:23:22 +0900 Subject: [PATCH 001/207] =?UTF-8?q?=E7=AE=A1=E7=90=86=E3=83=88=E3=83=83?= =?UTF-8?q?=E3=83=97=E3=81=AE=E5=A3=B2=E4=B8=8A=E9=87=91=E9=A1=8D=E9=9B=86?= =?UTF-8?q?=E8=A8=88=E3=82=92DateTime=E3=81=A7=E6=9B=B8=E3=81=8D=E7=9B=B4?= =?UTF-8?q?=E3=81=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controller/Admin/AdminController.php | 70 +++++++++---------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/src/Eccube/Controller/Admin/AdminController.php b/src/Eccube/Controller/Admin/AdminController.php index 5f952fd8269..84e785b91ff 100644 --- a/src/Eccube/Controller/Admin/AdminController.php +++ b/src/Eccube/Controller/Admin/AdminController.php @@ -445,7 +445,7 @@ protected function getOrderEachStatus(array $excludes) } /** - * @param $dateTime + * @param \DateTime $dateTime * * @return array|mixed * @@ -453,24 +453,23 @@ protected function getOrderEachStatus(array $excludes) */ protected function getSalesByDay($dateTime) { - // concat... for pgsql - // http://stackoverflow.com/questions/1091924/substr-does-not-work-with-datatype-timestamp-in-postgres-8-3 - $dql = 'SELECT - SUBSTRING(CONCAT(o.order_date, \'\'), 1, 10) AS order_day, - SUM(o.payment_total) AS order_amount, - COUNT(o) AS order_count - FROM - Eccube\Entity\Order o - WHERE - o.OrderStatus NOT IN (:excludes) - AND SUBSTRING(CONCAT(o.order_date, \'\'), 1, 10) = SUBSTRING(:targetDate, 1, 10) - GROUP BY - order_day'; + $dateTimeStart = clone $dateTime; + $dateTimeStart->setTime(0, 0, 0, 0); + + $dateTimeEnd = clone $dateTimeStart; + $dateTimeEnd->modify('+1 days'); - $q = $this->entityManager - ->createQuery($dql) + $qb = $this->orderRepository + ->createQueryBuilder('o') + ->select(' + SUM(o.payment_total) AS order_amount, + COUNT(o) AS order_count') ->setParameter(':excludes', $this->excludes) - ->setParameter(':targetDate', $dateTime); + ->setParameter(':targetDateStart', $dateTimeStart) + ->setParameter(':targetDateEnd', $dateTimeEnd) + ->andWhere(':targetDateStart <= o.order_date and o.order_date < :targetDateEnd') + ->andWhere('o.OrderStatus NOT IN (:excludes)'); + $q = $qb->getQuery(); $result = []; try { @@ -483,7 +482,7 @@ protected function getSalesByDay($dateTime) } /** - * @param $dateTime + * @param \DateTime $dateTime * * @return array|mixed * @@ -491,24 +490,25 @@ protected function getSalesByDay($dateTime) */ protected function getSalesByMonth($dateTime) { - // concat... for pgsql - // http://stackoverflow.com/questions/1091924/substr-does-not-work-with-datatype-timestamp-in-postgres-8-3 - $dql = 'SELECT - SUBSTRING(CONCAT(o.order_date, \'\'), 1, 7) AS order_month, - SUM(o.payment_total) AS order_amount, - COUNT(o) AS order_count - FROM - Eccube\Entity\Order o - WHERE - o.OrderStatus NOT IN (:excludes) - AND SUBSTRING(CONCAT(o.order_date, \'\'), 1, 7) = SUBSTRING(:targetDate, 1, 7) - GROUP BY - order_month'; - - $q = $this->entityManager - ->createQuery($dql) + $dateTimeStart = clone $dateTime; + $dateTimeStart->setTime(0, 0, 0, 0); + $dateTimeStart->modify('first day of this month'); + + $dateTimeEnd = clone $dateTime; + $dateTimeEnd->setTime(0, 0, 0, 0); + $dateTimeEnd->modify('first day of 1 month'); + + $qb = $this->orderRepository + ->createQueryBuilder('o') + ->select(' + SUM(o.payment_total) AS order_amount, + COUNT(o) AS order_count') ->setParameter(':excludes', $this->excludes) - ->setParameter(':targetDate', $dateTime); + ->setParameter(':targetDateStart', $dateTimeStart) + ->setParameter(':targetDateEnd', $dateTimeEnd) + ->andWhere(':targetDateStart <= o.order_date and o.order_date < :targetDateEnd') + ->andWhere('o.OrderStatus NOT IN (:excludes)'); + $q = $qb->getQuery(); $result = []; try { From 74de428134bcd568167c211d464cda92e1682acc Mon Sep 17 00:00:00 2001 From: katsunori-nakayama Date: Fri, 7 Feb 2020 12:09:43 +0900 Subject: [PATCH 002/207] =?UTF-8?q?=E3=83=A2=E3=83=BC=E3=83=80=E3=83=AB?= =?UTF-8?q?=E3=82=92=E9=96=8B=E3=81=8D=E6=AC=A1=E3=81=AE=E3=83=9A=E3=83=BC?= =?UTF-8?q?=E3=82=B8=E3=81=A7=E3=83=96=E3=83=A9=E3=82=A6=E3=82=B6=E3=83=90?= =?UTF-8?q?=E3=83=83=E3=82=AF=E3=82=92=E3=81=99=E3=82=8B=E3=81=A8=E3=80=81?= =?UTF-8?q?=E3=82=AA=E3=83=BC=E3=83=88=E3=82=B3=E3=83=B3=E3=83=97=E3=83=AA?= =?UTF-8?q?=E3=83=BC=E3=83=88=E3=81=AE=E5=BD=B1=E9=9F=BF=E3=81=A7=E3=83=A2?= =?UTF-8?q?=E3=83=BC=E3=83=80=E3=83=AB=E3=81=8C=E9=96=8B=E3=81=84=E3=81=9F?= =?UTF-8?q?=E3=81=BE=E3=81=BE=E3=81=AB=E3=81=AA=E3=81=A3=E3=81=A6=E3=81=84?= =?UTF-8?q?=E3=82=8B=E4=B8=8D=E5=85=B7=E5=90=88=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- html/template/default/assets/css/style.css | 101 ++++++---------- .../template/default/assets/css/style.css.map | 2 +- .../template/default/assets/css/style.min.css | 2 +- .../default/assets/css/style.min.css.map | 2 +- .../assets/scss/project/_13.4.cartModal.scss | 112 ++++++------------ .../template/default/Product/detail.twig | 12 +- .../template/default/Product/list.twig | 12 +- 7 files changed, 94 insertions(+), 149 deletions(-) diff --git a/html/template/default/assets/css/style.css b/html/template/default/assets/css/style.css index f65e198bac8..cd693fc15d0 100755 --- a/html/template/default/assets/css/style.css +++ b/html/template/default/assets/css/style.css @@ -5633,71 +5633,48 @@ ex [商品一覧、商品詳細](http://demo3.ec-cube.net/products/list) Styleguide 13.4 */ -.ec-modal .checkbox { - display: none; } - -.ec-modal .ec-modal-overlay { - opacity: 0; - transition: all 0.3s ease; - width: 100%; - height: 100%; +.ec-modal { + display: none; position: fixed; top: 0; left: 0; - z-index: -100; - transform: scale(1); - display: flex; - background-color: rgba(0, 0, 0, 0.3); } - -.ec-modal .ec-modal-wrap { - background-color: #fff; - border: 1px solid #333; - width: 90%; - margin: 20px; - padding: 40px 5px; - border-radius: 2px; - transition: all 0.5s ease; - align-self: center; } - .ec-modal .ec-modal-wrap .ec-modal-box { - text-align: center; } - .ec-modal .ec-modal-wrap .ec-modal-box div { - margin-top: 20px; } - .ec-modal .ec-modal-wrap.small { + z-index: 99999; + width: 100%; + height: 100%; } + .ec-modal.small { width: 30%; } - .ec-modal .ec-modal-wrap.full { + .ec-modal.full { width: 100%; height: 100%; } - -.ec-modal .ec-modal-overlay .ec-modal-close { - position: absolute; - right: 20px; - top: 10px; - font-size: 20px; - height: 30px; - width: 20px; } - .ec-modal .ec-modal-overlay .ec-modal-close:hover { + .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: 2px; + border: 1px solid #333; + background-color: #fff; + width: 90%; + margin: 20px; + padding: 40px 5px; } + .ec-modal .ec-modal-close { cursor: pointer; - color: #4b5361; } - -.ec-modal .ec-modal-overlay-close { - display: none; - width: 100%; - height: 100%; - position: fixed; - left: 0; - top: 0; } - -.ec-modal input:checked ~ .ec-modal-overlay { - transform: scale(1); - opacity: 1; - z-index: 9997; - overflow: auto; } - .ec-modal input:checked ~ .ec-modal-overlay .ec-modal-overlay-close { - display: block; } - -.ec-modal input:checked ~ .ec-modal-overlay .ec-modal-wrap { - transform: translateY(0); - z-index: 9999; } + 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; } /** メディアクエリ @@ -7818,10 +7795,10 @@ Styleguide 22.1 padding: 0 16px; } .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even) { padding: 0 16px; } - .ec-modal .ec-modal-wrap { - padding: 40px 10px; - width: 50%; - margin: 20px auto; } + .ec-modal .ec-modal-wrap { + padding: 40px 10px; + width: 50%; + margin: 20px auto; } .ec-productRole .ec-productRole__img { margin-right: 16px; margin-bottom: 0; } diff --git a/html/template/default/assets/css/style.css.map b/html/template/default/assets/css/style.css.map index 0a0c84b52e7..5f0228d92da 100644 --- a/html/template/default/assets/css/style.css.map +++ b/html/template/default/assets/css/style.css.map @@ -1 +1 @@ -{"version":3,"sources":["default/assets/scss/style.css","default/assets/scss/style.scss","default/assets/scss/mixins/_media.scss","default/assets/scss/component/_1.1.heading.scss","default/assets/scss/mixins/_variables.scss","default/assets/scss/component/_1.2.typo.scss","default/assets/scss/component/_1.3.list.scss","default/assets/scss/component/_2.1.buttonsize.scss","default/assets/scss/mixins/_btn.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_buttons.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_variables.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_tab-focus.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_vendor-prefixes.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_opacity.scss","default/assets/scss/component/_2.2.closebutton.scss","default/assets/scss/component/_2.3.otherbutton.scss","default/assets/scss/component/_3.1.inputText.scss","default/assets/scss/mixins/_forms.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_forms.scss","default/assets/scss/mixins/_projects.scss","default/assets/scss/component/_3.2.inputMisc.scss","default/assets/scss/component/_3.3.form.scss","default/assets/scss/component/_4.1.icon.scss","default/assets/scss/component/_5.1.grid.scss","default/assets/scss/component/_5.2.layout.scss","default/assets/scss/component/_6.1.login.scss","default/assets/scss/component/_7.1.itembanner.scss","default/assets/scss/component/_7.2.search.scss","default/assets/scss/mixins/_animation.scss","default/assets/scss/component/_7.3.cart.scss","default/assets/scss/mixins/_clearfix.scss","default/assets/scss/component/_8.1.info.scss","default/assets/scss/component/_9.1.mypage.scss","default/assets/scss/project/_11.1.role.scss","default/assets/scss/project/_11.2.header.scss","default/assets/scss/project/_11.3.footer.scss","default/assets/scss/project/_12.1.slider.scss","default/assets/scss/project/_12.2.eyecatch.scss","default/assets/scss/project/_12.3.button.scss","default/assets/scss/project/_12.4.heading.scss","default/assets/scss/project/_12.5.topics.scss","default/assets/scss/project/_12.6.newItem.scss","default/assets/scss/project/_12.7.category.scss","default/assets/scss/project/_12.8.news.scss","default/assets/scss/project/_13.1.searchnav.scss","default/assets/scss/project/_13.2.shelf.scss","default/assets/scss/project/_13.3.pager.scss","default/assets/scss/project/_13.4.cartModal.scss","default/assets/scss/project/_14.1.product.scss","default/assets/scss/project/_15.1.cart.scss","default/assets/scss/project/_15.2.order.scss","default/assets/scss/project/_16.1.history.scss","default/assets/scss/project/_16.2.historyDetail.scss","default/assets/scss/project/_17.1.address.scss","default/assets/scss/project/_18.1.password.scss","default/assets/scss/project/_19.1.register.scss","default/assets/scss/project/_19.2.contact.scss","default/assets/scss/project/_19.3.customer.scss","default/assets/scss/project/_20.1.404.scss","default/assets/scss/project/_21.1.withdraw.scss","default/assets/scss/project/_22.1.editComplete.scss"],"names":[],"mappings":"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rD7B,wBAAwB;ELahB,gBKZgB;ELkIhB,wEKjIsE;EAqC5E,kBAAkB,EAAA;ED7DtB;IEuBI,qBRsJoC;IQrJpC,UAAU;INWJ,kFMduD,EAAA;EN+C/D;IACE,WF2GiC;IE1GjC,UAAU,EAAA;EAEZ;IAA0B,WFwGS,EAAA;EEvGnC;IAAgC,WFuGG,EAAA;EMhLrC;ICkCI,SAAS;IACT,6BAA6B,EAAA;EDnCjC;;;;;;;;IC8CI,yBPjE+C;IOkE/C,UAAU,EAAA;ED/Cd;;;;;;;;ICoDI,mBPiJwC,EAAA;;AMrM5C;ECWE,cAAc;EACd,WAAW;EACX,YPsKyF;EOrKzF,iBP+C8B;EO9C9B,ePE4B;EOD5B,oBPamC;EOZnC,cPtCiD;EOuCjD,sBPwImC;EOvInC,sBAAsB;EACtB,sBP6ImC;EO5InC,kBPsD6B;EOrD7B,wBAAwB;ELahB,gBKZgB;ELkIhB,wEKjIsE;EAyC5E,kBAAkB,EAAA;EDjEtB;IEuBI,qBRsJoC;IQrJpC,UAAU;INWJ,kFMduD,EAAA;EN+C/D;IACE,WF2GiC;IE1GjC,UAAU,EAAA;EAEZ;IAA0B,WFwGS,EAAA;EEvGnC;IAAgC,WFuGG,EAAA;EMhLrC;ICkCI,SAAS;IACT,6BAA6B,EAAA;EDnCjC;;;;;;;;IC8CI,yBPjE+C;IOkE/C,UAAU,EAAA;ED/Cd;;;;;;;;ICoDI,mBPiJwC,EAAA;;AMrM5C;ECWE,cAAc;EACd,WAAW;EACX,YPsKyF;EOrKzF,iBP+C8B;EO9C9B,ePE4B;EOD5B,oBPamC;EOZnC,cPtCiD;EOuCjD,sBPwImC;EOvInC,sBAAsB;EACtB,sBP6ImC;EO5InC,kBPsD6B;EOrD7B,wBAAwB;ELahB,gBKZgB;ELkIhB,wEKjIsE;EA6C5E,kBAAkB,EAAA;EDrEtB;IEuBI,qBRsJoC;IQrJpC,UAAU;INWJ,kFMduD,EAAA;EN+C/D;IACE,WF2GiC;IE1GjC,UAAU,EAAA;EAEZ;IAA0B,WFwGS,EAAA;EEvGnC;IAAgC,WFuGG,EAAA;EMhLrC;ICkCI,SAAS;IACT,6BAA6B,EAAA;EDnCjC;;;;;;;;IC8CI,yBPjE+C;IOkE/C,UAAU,EAAA;ED/Cd;;;;;;;;ICoDI,mBPiJwC,EAAA;;AMrM5C;ECwEI,gBAAgB;EAChB,qBAAqB,EAAA;;ADzEzB;EAII,YAAY;EACZ,mBAAmB,EAAA;;AALvB;EAWI,YAAY;EACZ,iBAAiB,EAAA;;AAZrB;EAeI,gBAAgB,EAAA;;AAfpB;EAkBI,mBAAmB;EACnB,eAAe;EACf,iBAAiB;EACjB,cZ9CY,EAAA;;AYiDhB;EAEI,kBAAkB;EAClB,qBAAqB;EACrB,mBAAmB,EAAA;;AAIvB;EAEI,mBAAmB;EACnB,eAAe;EACf,iBAAiB;EACjB,cZ9DY,EAAA;;AYiEhB;EAEI,qBAAqB;EACrB,mBAAmB,EAAA;;AAIvB;;;;;;;;;;;;;;;;;ChBolDC;AgBlkDD;EAGI,qBAAqB;EACrB,UAAU;EACV,eAAe,EAAA;;AALnB;EAYI,cAAc,EAAA;;AAIlB;;;;;;;;;;;;;;;ChB8kDC;AgB9jDD;EAGI,qBAAqB;EACrB,WAAW;EACX,gBAAgB;EAChB,iBAAiB,EAAA;;AAGrB;;;;;;;;;;;;;;;;;;;;;;;ChBmlDC;AgB3jDD;EAEE,qBAAqB,EAAA;EAFvB;IAII,qBAAqB;IACjB,gBAAgB;IACpB,WAAW;IACP,cAAc;IAClB,eAAe,EAAA;EARnB;IAWI,qBAAqB;IACrB,oBAAoB;IACpB,gBAAe,EAAA;;AAGnB;EACE,qBAAqB;EACrB,iBAAiB;EACjB,mBAAmB;EACnB,wBAAwB;EACxB,cAAc,EAAA;EALhB;IAOI,qBAAqB;IACrB,iBAAiB;IACjB,WAAU;IACV,YAAW;IACX,mBAAmB;IACnB,kBAAkB;IAClB,eAAe;IACf,kBAAkB;IAClB,SAAS,EAAA;IAfb;MAiBM,UAAU;MACV,WAAW;MACX,kBAAkB;MAClB,SAAS;MACT,QAAQ,EAAA;EArBd;IAyBI,gBAAgB;IAChB,qBAAqB;IACrB,cAAc;IACd,mBAAmB,EAAA;;AAGvB;EACE,mBAAmB,EAAA;EADrB;IAGI,mBAAmB,EAAA;;AAGvB;;;;;;;;;;;;;;ChBmkDC;AgBpjDD;EAGI,eAAe;EACf,gBAAgB,EAAA;;AG5OpB;;EnBmyDE;AEhyDF;;;;EFqyDE;AgBryDF;;;;;;;;;;;ChBizDC;AgBlyDD;;;;;;;;;;;;;;;ChBkzDC;AgBlyDD;EJ0CU,sBKpEwB,EAAA;;AD0BlC;;;;;;;;ECpBI,eAAe;EACf,kBAAkB;EAClB,mBAAmB,EAAA;;ADkBvB;ECdI,cAAc,EAAA;;ADclB;ECTI,cAAc;EACd,WAAW,EAAA;;ADQf;;;;;;;;ECFI,YAAY,EAAA;;ADEhB;;;;;;;;;;;;;;;EL5BE,0CAA0C;EAC1C,oBAAoB,EAAA;;AK2BtB;ECWE,cAAc;EACd,WAAW;EACX,YPsKyF;EOrKzF,iBP+C8B;EO9C9B,ePE4B;EOD5B,oBPamC;EOZnC,cPtCiD;EOuCjD,sBPwImC;EOvInC,sBAAsB;EACtB,sBP6ImC;EO5InC,kBPsD6B;EOrD7B,wBAAwB;ELahB,gBKZgB;ELkIhB,wEKjIsE;EAqC5E,kBAAkB,EAAA;ED7DtB;IEuBI,qBRsJoC;IQrJpC,UAAU;INWJ,kFMduD,EAAA;EN+C/D;IACE,WF2GiC;IE1GjC,UAAU,EAAA;EAEZ;IAA0B,WFwGS,EAAA;EEvGnC;IAAgC,WFuGG,EAAA;EMhLrC;ICkCI,SAAS;IACT,6BAA6B,EAAA;EDnCjC;;;;;;;;IC8CI,yBPjE+C;IOkE/C,UAAU,EAAA;ED/Cd;;;;;;;;ICoDI,mBPiJwC,EAAA;;AMrM5C;ECWE,cAAc;EACd,WAAW;EACX,YPsKyF;EOrKzF,iBP+C8B;EO9C9B,ePE4B;EOD5B,oBPamC;EOZnC,cPtCiD;EOuCjD,sBPwImC;EOvInC,sBAAsB;EACtB,sBP6ImC;EO5InC,kBPsD6B;EOrD7B,wBAAwB;ELahB,gBKZgB;ELkIhB,wEKjIsE;EAyC5E,kBAAkB,EAAA;EDjEtB;IEuBI,qBRsJoC;IQrJpC,UAAU;INWJ,kFMduD,EAAA;EN+C/D;IACE,WF2GiC;IE1GjC,UAAU,EAAA;EAEZ;IAA0B,WFwGS,EAAA;EEvGnC;IAAgC,WFuGG,EAAA;EMhLrC;ICkCI,SAAS;IACT,6BAA6B,EAAA;EDnCjC;;;;;;;;IC8CI,yBPjE+C;IOkE/C,UAAU,EAAA;ED/Cd;;;;;;;;ICoDI,mBPiJwC,EAAA;;AMrM5C;ECWE,cAAc;EACd,WAAW;EA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","file":"default/assets/css/style.css","sourcesContent":["@charset \"UTF-8\";\n@import url(/node_modules/normalize.css/normalize.css);\nbody {\n font-family: Roboto, \"游ゴシック\", YuGothic, \"Yu Gothic\", \"ヒラギノ角ゴ ProN W3\", \"Hiragino Kaku Gothic ProN\", Arial, \"メイリオ\", Meiryo, sans-serif;\n color: #525263;\n transition: z-index 0ms 5.28455ms;\n background: #f6f6f6;\n margin: 0; }\n\na {\n text-decoration: none; }\n\npre {\n background-color: transparent;\n border: none;\n padding: 16px 0; }\n\np {\n -webkit-margin-before: 0;\n -webkit-margin-after: 0; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n見出し\n\nページ内で見出しとして機能する要素のスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.1\n*/\n/*\n見出し\n\n商品紹介等で利用される、一般的な見出しのスタイルです。\n\nex [商品詳細ページ 商品見出し部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-headingTitle マトリョーシカ\n\nStyleguide 1.1.1\n*/\n.ec-headingTitle {\n margin: 0 0 8px;\n font-size: 32px;\n font-weight: normal;\n color: #525263; }\n\n/*\nページヘッダ\n\n各種ページで用いられるページヘッダのデザインです。\n\nex [利用規約ページ ページヘッダ部](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-pageHeader\n h1 利用規約\n\nStyleguide 1.1.2\n*/\n.ec-pageHeader h1 {\n margin: 0 0 8px;\n border-bottom: 1px dotted #ccc;\n border-top: 1px solid #ccc;\n padding: 8px 0 12px;\n font-size: 16px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-pageHeader h1 {\n border-top: none;\n border-bottom: 1px solid #ccc;\n margin: 10px 16px 48px;\n padding: 8px;\n font-size: 32px;\n font-weight: bold; } }\n\n/*\nサブ見出し\n\n利用規約など、文字主体のページで用いられるサブ見出しです。\n\nex [利用規約ページ サブ見出し部分](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-heading 第1条 (会員)\n\nStyleguide 1.1.3\n*/\n.ec-heading {\n margin: 24px 0; }\n\n/*\nサブ見出し(太字)\n\n文字主体のページで用いられるサブ見出しの太字のスタイルです。\n\nex [プライバシーポリシー サブ見出し部分](http://demo3.ec-cube.net/help/privacy)\n\nMarkup:\n.ec-heading-bold 個人情報の定義\n\nStyleguide 1.1.4\n*/\n.ec-heading-bold {\n margin: 16px 0;\n font-size: 16px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-heading-bold {\n font-size: 18px; } }\n\n/*\n背景付き見出し\n\nマイページ注文履歴等で用いられる背景付きの見出しです。\n\nex [ご注文履歴詳細 背景付き見出し部分](http://demo3.ec-cube.net/mypage/history/1063)\n\nMarkup:\n.ec-rectHeading\n h2 配送情報\n.ec-rectHeading\n h2 お支払について\n\nStyleguide 1.1.5\n*/\n.ec-rectHeading h1, .ec-rectHeading h2, .ec-rectHeading h3,\n.ec-rectHeading h4, .ec-rectHeading h5, .ec-rectHeading h6 {\n background: #F3F3F3;\n padding: 8px 12px;\n font-size: 20px;\n font-weight: bold; }\n\n/*\nメッセージ見出し\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用される見出しのスタイルです。\n\nex [注文完了 ログイン後、カートに商品を入れ注文完了まで行う](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\n\nStyleguide 1.1.6\n*/\n.ec-reportHeading {\n width: 100%;\n border-top: 1px dotted #ccc;\n margin: 20px 0 30px;\n padding: 0;\n text-align: center;\n font-size: 24px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-reportHeading {\n border-top: 0;\n font-size: 32px; } }\n .ec-reportHeading h1, .ec-reportHeading h2, .ec-reportHeading h3,\n .ec-reportHeading h4, .ec-reportHeading h5, .ec-reportHeading h6, .ec-reportHeading p {\n font-weight: bold;\n font-size: 24px; }\n @media only screen and (min-width: 768px) {\n .ec-reportHeading h1, .ec-reportHeading h2, .ec-reportHeading h3,\n .ec-reportHeading h4, .ec-reportHeading h5, .ec-reportHeading h6, .ec-reportHeading p {\n font-size: 32px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n文字装飾\n\n文字装飾をするためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.2\n*/\n/*\nテキストリンク\n\nテキストリンクのスタイルです。\n\nMarkup:\na(href=\"#\").ec-link さくらのクラウド\n\nStyleguide 1.2.1\n*/\n.ec-link {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n .ec-link:hover {\n color: #33A8D0;\n text-decoration: none; }\n\n/*\nテキスト(太字)\n\nテキストを太くするためのスタイルです。\n\nMarkup:\np.ec-font-bold この季節にぴったりな商品をご用意しました\n\nStyleguide 1.2.2\n*/\n.ec-font-bold {\n font-weight: bold; }\n\n/*\nテキスト(グレー)\n\nテキストをグレーにするためのスタイルです。\n\nMarkup:\np.ec-color-grey 青色が美しい職人が仕上げた吹きガラス\n\nStyleguide 1.2.3\n*/\n.ec-color-grey {\n color: #9a947e; }\n\n/*\nテキスト(赤)\n\nテキストを赤にするためのスタイルです。\n\nMarkup:\np.ec-color-red ¥ 2,728 税込\np.ec-color-accent ¥ 2,728 税込\n\nStyleguide 1.2.4\n*/\n.ec-color-red {\n color: #DE5D50; }\n\n.ec-color-accent {\n color: #DE5D50; }\n\n/*\nフォントサイズ\n\nフォントサイズを指定するためのスタイルです。\n\nMarkup:\n.ec-font-size-1 さわやかな日差しが過ごしやすい季節\n.ec-font-size-2 さわやかな日差しが過ごしやすい季節\n.ec-font-size-3 さわやかな日差しが過ごしやすい季節\n.ec-font-size-4 さわやかな日差しが過ごしやすい季節\n.ec-font-size-5 さわやかな日差しが過ごしやすい季節\n.ec-font-size-6 さわやかな日差しが過ごしやすい季節\n\n\nStyleguide 1.2.5\n*/\n.ec-font-size-1 {\n font-size: 12px; }\n\n.ec-font-size-2 {\n font-size: 14px; }\n\n.ec-font-size-3 {\n font-size: 16px; }\n\n.ec-font-size-4 {\n font-size: 20px; }\n\n.ec-font-size-5 {\n font-size: 32px; }\n\n.ec-font-size-6 {\n font-size: 40px; }\n\n/*\nテキスト水平位置\n\nテキストをセンタリングするためのスタイルです。\n\nMarkup:\np.ec-text-ac さわやかな日差しが過ごしやすい季節\n\nStyleguide 1.2.6\n*/\n.ec-text-ac {\n text-align: center; }\n\n/*\n価格テキスト\n\n価格を表示するテキストです。\n\n価格文字にスペースを取るほか、税込み等の表示を小さくする効果もあります。\n\nspanを用いたインライン要素として利用します。\n\nMarkup:\ndiv(style=\"color:#DE5D50;font-size:28px\")\n span.ec-price\n span.ec-price__unit ¥\n span.ec-price__price 1,280\n span.ec-price__tax 税込\n\nStyleguide 1.2.7\n*/\n.ec-price .ec-price__unit {\n font-size: 18px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-price .ec-price__unit {\n font-size: 1em; } }\n\n.ec-price .ec-price__price {\n display: inline-block;\n padding: 0 .3em;\n font-size: 18px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-price .ec-price__price {\n font-size: 1em; } }\n\n.ec-price .ec-price__tax {\n font-size: 12px; }\n @media only screen and (min-width: 768px) {\n .ec-price .ec-price__tax {\n font-size: 0.57em; } }\n\n/*\nテキストの位置\n\nテキストや、入れ子にしたインライン要素を\n「左揃え」「中央揃え」「右揃え」に設定することができます。\n\nMarkup:\nh3 左揃え\np.text-left\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 中央揃え\np.text-center\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 右揃え\np.text-right\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\n\nStyleguide 1.2.8\n*/\n.text-left {\n text-align: left; }\n\n.text-center {\n text-align: center; }\n\n.text-right {\n text-align: right; }\n\n/*\nメッセージテキスト\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用されるテキストのスタイルです。\n\nex [注文完了 (ログイン後、カートに商品を入れ注文完了まで行う)](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\np.ec-reportDescription\n | ただいま、ご注文の確認メールをお送りさせていただきました。\n br\n | 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n br\n | 今後ともご愛顧賜りますようよろしくお願い申し上げます。\n\n\nStyleguide 1.2.9\n*/\n.ec-reportDescription {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px;\n line-height: 1.4; }\n\n/*\nテキスト下部のスペース\n\nテキストの下に余白を追加することができます。 .ec-para-normalで16pxの余白をつけることができます。\n\nMarkup:\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n\nStyleguide 1.2.10\n*/\n.ec-para-normal {\n margin-bottom: 16px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nリスト\n\nシンプルなリストを構成するためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.3\n*/\n/*\n水平定義リスト\n\nシンプルな定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 水平定義リスト部分](http://demo3.ec-cube.net/help/about)\n\nMarkup:\ndl.ec-definitions\n dt 店名\n dd EC-CUBE3 DEMO SHOP\ndl.ec-definitions\n dt 会社名\n dd EC-CUBE3\ndl.ec-definitions--soft\n dt 所在地\n dd 〒 550-0001\n\nStyleguide 1.3.1\n*/\n.ec-definitions, .ec-definitions--soft {\n margin: 5px 0;\n display: block; }\n .ec-definitions dt, .ec-definitions--soft dt, .ec-definitions dd, .ec-definitions--soft dd {\n display: inline-block;\n margin: 0; }\n .ec-definitions dt, .ec-definitions--soft dt {\n font-weight: bold; }\n\n.ec-definitions--soft dt {\n font-weight: normal; }\n\n/*\n下線つき定義リスト\n\n線が添えられた定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 下線つき定義リスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt 店名\n dd EC-CUBE3 DEMO SHOP\n dl\n dt 会社名\n dd EC-CUBE3\n dl\n dt 所在地\n dd 〒550 - 0001\n\nStyleguide 1.3.2\n*/\n.ec-borderedDefs {\n width: 100%;\n border-top: 1px dotted #ccc;\n margin-bottom: 16px; }\n .ec-borderedDefs dl {\n display: flex;\n border-bottom: 1px dotted #ccc;\n margin: 0;\n padding: 10px 0 0;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-borderedDefs dl {\n flex-wrap: nowrap;\n padding: 15px 0 4px; } }\n .ec-borderedDefs dt, .ec-borderedDefs dd {\n padding: 0; }\n .ec-borderedDefs dt {\n font-weight: normal;\n width: 100%;\n padding-top: 0; }\n @media only screen and (min-width: 768px) {\n .ec-borderedDefs dt {\n padding-top: 14px;\n width: 30%; } }\n .ec-borderedDefs dd {\n padding: 0;\n width: 100%;\n line-height: 2.5; }\n @media only screen and (min-width: 768px) {\n .ec-borderedDefs dd {\n width: 70%;\n line-height: 3; } }\n .ec-borderedDefs p {\n line-height: 1.4; }\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0; }\n .ec-list-chilled dt, .ec-list-chilled dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-list-chilled dt, .ec-list-chilled dd {\n padding: 16px 0; } }\n .ec-list-chilled dt {\n width: 30%; }\n .ec-list-chilled dd {\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-list-chilled dd {\n padding: 16px; } }\n\n/*\nボーダーリスト\n\n線が添えられたリストを表示します。\n\nex [当サイトについて ボーダーリスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\nul.ec-borderedList\n li: p lorem\n li: p lorem\n li: p lorem\n\n\nStyleguide 1.3.3\n*/\n.ec-borderedList {\n width: 100%;\n border-top: 0;\n list-style: none;\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-borderedList {\n border-top: 1px dotted #ccc; } }\n .ec-borderedList li {\n border-bottom: 1px dotted #ccc; }\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0; }\n .ec-list-chilled dt, .ec-list-chilled dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 16px 0; }\n .ec-list-chilled dt {\n width: 30%; }\n .ec-list-chilled dd {\n padding: 16px; }\n\n/*\nボタンサイズ\n\nボタンサイズを変更するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.1\n*/\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nex [トップページ ボタン部分](http://demo3.ec-cube.net/)\n\nMarkup:\n.ec-inlineBtn 住所検索\n.ec-inlineBtn--primary もっと見る\n.ec-inlineBtn--action カートに入れる\n.ec-inlineBtn--cancel キャンセル\n\nStyleguide 2.1.1\n*/\n.ec-inlineBtn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #525263;\n background-color: #F5F7F8;\n border-color: #ccc; }\n .ec-inlineBtn:focus, .ec-inlineBtn.focus, .ec-inlineBtn:active:focus, .ec-inlineBtn:active.focus, .ec-inlineBtn.active:focus, .ec-inlineBtn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn:hover, .ec-inlineBtn:focus, .ec-inlineBtn.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn:active, .ec-inlineBtn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn.disabled, .ec-inlineBtn[disabled],\n fieldset[disabled] .ec-inlineBtn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn:focus, .ec-inlineBtn.focus {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #8c8c8c; }\n .ec-inlineBtn:hover {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-inlineBtn:active, .ec-inlineBtn.active,\n .open > .ec-inlineBtn.dropdown-toggle {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-inlineBtn:active:hover, .ec-inlineBtn:active:focus, .ec-inlineBtn:active.focus, .ec-inlineBtn.active:hover, .ec-inlineBtn.active:focus, .ec-inlineBtn.active.focus,\n .open > .ec-inlineBtn.dropdown-toggle:hover,\n .open > .ec-inlineBtn.dropdown-toggle:focus,\n .open > .ec-inlineBtn.dropdown-toggle.focus {\n color: #525263;\n background-color: #c2ced4;\n border-color: #8c8c8c; }\n .ec-inlineBtn:active, .ec-inlineBtn.active,\n .open > .ec-inlineBtn.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn.disabled:hover, .ec-inlineBtn.disabled:focus, .ec-inlineBtn.disabled.focus, .ec-inlineBtn[disabled]:hover, .ec-inlineBtn[disabled]:focus, .ec-inlineBtn[disabled].focus,\n fieldset[disabled] .ec-inlineBtn:hover,\n fieldset[disabled] .ec-inlineBtn:focus,\n fieldset[disabled] .ec-inlineBtn.focus {\n background-color: #F5F7F8;\n border-color: #ccc; }\n .ec-inlineBtn .badge {\n color: #F5F7F8;\n background-color: #525263; }\n .ec-inlineBtn .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-inlineBtn--primary {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #5CB1B1;\n border-color: #5CB1B1; }\n .ec-inlineBtn--primary:focus, .ec-inlineBtn--primary.focus, .ec-inlineBtn--primary:active:focus, .ec-inlineBtn--primary:active.focus, .ec-inlineBtn--primary.active:focus, .ec-inlineBtn--primary.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--primary:hover, .ec-inlineBtn--primary:focus, .ec-inlineBtn--primary.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--primary:active, .ec-inlineBtn--primary.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--primary.disabled, .ec-inlineBtn--primary[disabled],\n fieldset[disabled] .ec-inlineBtn--primary {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--primary:focus, .ec-inlineBtn--primary.focus {\n color: #fff;\n background-color: #479393;\n border-color: #2e6060; }\n .ec-inlineBtn--primary:hover {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-inlineBtn--primary:active, .ec-inlineBtn--primary.active,\n .open > .ec-inlineBtn--primary.dropdown-toggle {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-inlineBtn--primary:active:hover, .ec-inlineBtn--primary:active:focus, .ec-inlineBtn--primary:active.focus, .ec-inlineBtn--primary.active:hover, .ec-inlineBtn--primary.active:focus, .ec-inlineBtn--primary.active.focus,\n .open > .ec-inlineBtn--primary.dropdown-toggle:hover,\n .open > .ec-inlineBtn--primary.dropdown-toggle:focus,\n .open > .ec-inlineBtn--primary.dropdown-toggle.focus {\n color: #fff;\n background-color: #3b7b7b;\n border-color: #2e6060; }\n .ec-inlineBtn--primary:active, .ec-inlineBtn--primary.active,\n .open > .ec-inlineBtn--primary.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--primary.disabled:hover, .ec-inlineBtn--primary.disabled:focus, .ec-inlineBtn--primary.disabled.focus, .ec-inlineBtn--primary[disabled]:hover, .ec-inlineBtn--primary[disabled]:focus, .ec-inlineBtn--primary[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--primary:hover,\n fieldset[disabled] .ec-inlineBtn--primary:focus,\n fieldset[disabled] .ec-inlineBtn--primary.focus {\n background-color: #5CB1B1;\n border-color: #5CB1B1; }\n .ec-inlineBtn--primary .badge {\n color: #5CB1B1;\n background-color: #fff; }\n .ec-inlineBtn--primary .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-inlineBtn--action {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #DE5D50;\n border-color: #DE5D50; }\n .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus, .ec-inlineBtn--action:active:focus, .ec-inlineBtn--action:active.focus, .ec-inlineBtn--action.active:focus, .ec-inlineBtn--action.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--action:hover, .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--action:active, .ec-inlineBtn--action.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--action.disabled, .ec-inlineBtn--action[disabled],\n fieldset[disabled] .ec-inlineBtn--action {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus {\n color: #fff;\n background-color: #d33828;\n border-color: #93271c; }\n .ec-inlineBtn--action:hover {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-inlineBtn--action:active, .ec-inlineBtn--action.active,\n .open > .ec-inlineBtn--action.dropdown-toggle {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-inlineBtn--action:active:hover, .ec-inlineBtn--action:active:focus, .ec-inlineBtn--action:active.focus, .ec-inlineBtn--action.active:hover, .ec-inlineBtn--action.active:focus, .ec-inlineBtn--action.active.focus,\n .open > .ec-inlineBtn--action.dropdown-toggle:hover,\n .open > .ec-inlineBtn--action.dropdown-toggle:focus,\n .open > .ec-inlineBtn--action.dropdown-toggle.focus {\n color: #fff;\n background-color: #b53022;\n border-color: #93271c; }\n .ec-inlineBtn--action:active, .ec-inlineBtn--action.active,\n .open > .ec-inlineBtn--action.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--action.disabled:hover, .ec-inlineBtn--action.disabled:focus, .ec-inlineBtn--action.disabled.focus, .ec-inlineBtn--action[disabled]:hover, .ec-inlineBtn--action[disabled]:focus, .ec-inlineBtn--action[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--action:hover,\n fieldset[disabled] .ec-inlineBtn--action:focus,\n fieldset[disabled] .ec-inlineBtn--action.focus {\n background-color: #DE5D50;\n border-color: #DE5D50; }\n .ec-inlineBtn--action .badge {\n color: #DE5D50;\n background-color: #fff; }\n .ec-inlineBtn--action .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-inlineBtn--cancel {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #525263;\n border-color: #525263; }\n .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus, .ec-inlineBtn--cancel:active:focus, .ec-inlineBtn--cancel:active.focus, .ec-inlineBtn--cancel.active:focus, .ec-inlineBtn--cancel.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--cancel:hover, .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--cancel.disabled, .ec-inlineBtn--cancel[disabled],\n fieldset[disabled] .ec-inlineBtn--cancel {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus {\n color: #fff;\n background-color: #3b3b47;\n border-color: #18181d; }\n .ec-inlineBtn--cancel:hover {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active,\n .open > .ec-inlineBtn--cancel.dropdown-toggle {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-inlineBtn--cancel:active:hover, .ec-inlineBtn--cancel:active:focus, .ec-inlineBtn--cancel:active.focus, .ec-inlineBtn--cancel.active:hover, .ec-inlineBtn--cancel.active:focus, .ec-inlineBtn--cancel.active.focus,\n .open > .ec-inlineBtn--cancel.dropdown-toggle:hover,\n .open > .ec-inlineBtn--cancel.dropdown-toggle:focus,\n .open > .ec-inlineBtn--cancel.dropdown-toggle.focus {\n color: #fff;\n background-color: #2b2b34;\n border-color: #18181d; }\n .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active,\n .open > .ec-inlineBtn--cancel.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--cancel.disabled:hover, .ec-inlineBtn--cancel.disabled:focus, .ec-inlineBtn--cancel.disabled.focus, .ec-inlineBtn--cancel[disabled]:hover, .ec-inlineBtn--cancel[disabled]:focus, .ec-inlineBtn--cancel[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--cancel:hover,\n fieldset[disabled] .ec-inlineBtn--cancel:focus,\n fieldset[disabled] .ec-inlineBtn--cancel.focus {\n background-color: #525263;\n border-color: #525263; }\n .ec-inlineBtn--cancel .badge {\n color: #525263;\n background-color: #fff; }\n .ec-inlineBtn--cancel .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n/*\nブロックボタン(全幅)\n\nボタンサイズは em で指定するため、テキストサイズの変更でボタンサイズを変更できます。\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\np: .ec-blockBtn 住所検索\np: .ec-blockBtn--primary もっと見る\np: .ec-blockBtn--action カートに入れる\np: .ec-blockBtn--cancel キャンセル\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #525263;\n background-color: #F5F7F8;\n border-color: #ccc;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn:focus, .ec-blockBtn.focus, .ec-blockBtn:active:focus, .ec-blockBtn:active.focus, .ec-blockBtn.active:focus, .ec-blockBtn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn:hover, .ec-blockBtn:focus, .ec-blockBtn.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn:active, .ec-blockBtn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn.disabled, .ec-blockBtn[disabled],\n fieldset[disabled] .ec-blockBtn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn:focus, .ec-blockBtn.focus {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #8c8c8c; }\n .ec-blockBtn:hover {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-blockBtn:active, .ec-blockBtn.active,\n .open > .ec-blockBtn.dropdown-toggle {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-blockBtn:active:hover, .ec-blockBtn:active:focus, .ec-blockBtn:active.focus, .ec-blockBtn.active:hover, .ec-blockBtn.active:focus, .ec-blockBtn.active.focus,\n .open > .ec-blockBtn.dropdown-toggle:hover,\n .open > .ec-blockBtn.dropdown-toggle:focus,\n .open > .ec-blockBtn.dropdown-toggle.focus {\n color: #525263;\n background-color: #c2ced4;\n border-color: #8c8c8c; }\n .ec-blockBtn:active, .ec-blockBtn.active,\n .open > .ec-blockBtn.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn.disabled:hover, .ec-blockBtn.disabled:focus, .ec-blockBtn.disabled.focus, .ec-blockBtn[disabled]:hover, .ec-blockBtn[disabled]:focus, .ec-blockBtn[disabled].focus,\n fieldset[disabled] .ec-blockBtn:hover,\n fieldset[disabled] .ec-blockBtn:focus,\n fieldset[disabled] .ec-blockBtn.focus {\n background-color: #F5F7F8;\n border-color: #ccc; }\n .ec-blockBtn .badge {\n color: #F5F7F8;\n background-color: #525263; }\n .ec-blockBtn .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-blockBtn--primary {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #5CB1B1;\n border-color: #5CB1B1;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--primary:focus, .ec-blockBtn--primary.focus, .ec-blockBtn--primary:active:focus, .ec-blockBtn--primary:active.focus, .ec-blockBtn--primary.active:focus, .ec-blockBtn--primary.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--primary:hover, .ec-blockBtn--primary:focus, .ec-blockBtn--primary.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--primary:active, .ec-blockBtn--primary.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--primary.disabled, .ec-blockBtn--primary[disabled],\n fieldset[disabled] .ec-blockBtn--primary {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--primary:focus, .ec-blockBtn--primary.focus {\n color: #fff;\n background-color: #479393;\n border-color: #2e6060; }\n .ec-blockBtn--primary:hover {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-blockBtn--primary:active, .ec-blockBtn--primary.active,\n .open > .ec-blockBtn--primary.dropdown-toggle {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-blockBtn--primary:active:hover, .ec-blockBtn--primary:active:focus, .ec-blockBtn--primary:active.focus, .ec-blockBtn--primary.active:hover, .ec-blockBtn--primary.active:focus, .ec-blockBtn--primary.active.focus,\n .open > .ec-blockBtn--primary.dropdown-toggle:hover,\n .open > .ec-blockBtn--primary.dropdown-toggle:focus,\n .open > .ec-blockBtn--primary.dropdown-toggle.focus {\n color: #fff;\n background-color: #3b7b7b;\n border-color: #2e6060; }\n .ec-blockBtn--primary:active, .ec-blockBtn--primary.active,\n .open > .ec-blockBtn--primary.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--primary.disabled:hover, .ec-blockBtn--primary.disabled:focus, .ec-blockBtn--primary.disabled.focus, .ec-blockBtn--primary[disabled]:hover, .ec-blockBtn--primary[disabled]:focus, .ec-blockBtn--primary[disabled].focus,\n fieldset[disabled] .ec-blockBtn--primary:hover,\n fieldset[disabled] .ec-blockBtn--primary:focus,\n fieldset[disabled] .ec-blockBtn--primary.focus {\n background-color: #5CB1B1;\n border-color: #5CB1B1; }\n .ec-blockBtn--primary .badge {\n color: #5CB1B1;\n background-color: #fff; }\n .ec-blockBtn--primary .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-blockBtn--action {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #DE5D50;\n border-color: #DE5D50;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--action:focus, .ec-blockBtn--action.focus, .ec-blockBtn--action:active:focus, .ec-blockBtn--action:active.focus, .ec-blockBtn--action.active:focus, .ec-blockBtn--action.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--action:hover, .ec-blockBtn--action:focus, .ec-blockBtn--action.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--action:active, .ec-blockBtn--action.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--action.disabled, .ec-blockBtn--action[disabled],\n fieldset[disabled] .ec-blockBtn--action {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--action:focus, .ec-blockBtn--action.focus {\n color: #fff;\n background-color: #d33828;\n border-color: #93271c; }\n .ec-blockBtn--action:hover {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-blockBtn--action:active, .ec-blockBtn--action.active,\n .open > .ec-blockBtn--action.dropdown-toggle {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-blockBtn--action:active:hover, .ec-blockBtn--action:active:focus, .ec-blockBtn--action:active.focus, .ec-blockBtn--action.active:hover, .ec-blockBtn--action.active:focus, .ec-blockBtn--action.active.focus,\n .open > .ec-blockBtn--action.dropdown-toggle:hover,\n .open > .ec-blockBtn--action.dropdown-toggle:focus,\n .open > .ec-blockBtn--action.dropdown-toggle.focus {\n color: #fff;\n background-color: #b53022;\n border-color: #93271c; }\n .ec-blockBtn--action:active, .ec-blockBtn--action.active,\n .open > .ec-blockBtn--action.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--action.disabled:hover, .ec-blockBtn--action.disabled:focus, .ec-blockBtn--action.disabled.focus, .ec-blockBtn--action[disabled]:hover, .ec-blockBtn--action[disabled]:focus, .ec-blockBtn--action[disabled].focus,\n fieldset[disabled] .ec-blockBtn--action:hover,\n fieldset[disabled] .ec-blockBtn--action:focus,\n fieldset[disabled] .ec-blockBtn--action.focus {\n background-color: #DE5D50;\n border-color: #DE5D50; }\n .ec-blockBtn--action .badge {\n color: #DE5D50;\n background-color: #fff; }\n .ec-blockBtn--action .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-blockBtn--cancel {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #525263;\n border-color: #525263;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--cancel:focus, .ec-blockBtn--cancel.focus, .ec-blockBtn--cancel:active:focus, .ec-blockBtn--cancel:active.focus, .ec-blockBtn--cancel.active:focus, .ec-blockBtn--cancel.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--cancel:hover, .ec-blockBtn--cancel:focus, .ec-blockBtn--cancel.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--cancel:active, .ec-blockBtn--cancel.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--cancel.disabled, .ec-blockBtn--cancel[disabled],\n fieldset[disabled] .ec-blockBtn--cancel {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--cancel:focus, .ec-blockBtn--cancel.focus {\n color: #fff;\n background-color: #3b3b47;\n border-color: #18181d; }\n .ec-blockBtn--cancel:hover {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-blockBtn--cancel:active, .ec-blockBtn--cancel.active,\n .open > .ec-blockBtn--cancel.dropdown-toggle {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-blockBtn--cancel:active:hover, .ec-blockBtn--cancel:active:focus, .ec-blockBtn--cancel:active.focus, .ec-blockBtn--cancel.active:hover, .ec-blockBtn--cancel.active:focus, .ec-blockBtn--cancel.active.focus,\n .open > .ec-blockBtn--cancel.dropdown-toggle:hover,\n .open > .ec-blockBtn--cancel.dropdown-toggle:focus,\n .open > .ec-blockBtn--cancel.dropdown-toggle.focus {\n color: #fff;\n background-color: #2b2b34;\n border-color: #18181d; }\n .ec-blockBtn--cancel:active, .ec-blockBtn--cancel.active,\n .open > .ec-blockBtn--cancel.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--cancel.disabled:hover, .ec-blockBtn--cancel.disabled:focus, .ec-blockBtn--cancel.disabled.focus, .ec-blockBtn--cancel[disabled]:hover, .ec-blockBtn--cancel[disabled]:focus, .ec-blockBtn--cancel[disabled].focus,\n fieldset[disabled] .ec-blockBtn--cancel:hover,\n fieldset[disabled] .ec-blockBtn--cancel:focus,\n fieldset[disabled] .ec-blockBtn--cancel.focus {\n background-color: #525263;\n border-color: #525263; }\n .ec-blockBtn--cancel .badge {\n color: #525263;\n background-color: #fff; }\n .ec-blockBtn--cancel .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n/*\nアイコンボタン\n\nSVGアイコンを用いたアイコンボタンです。\n\nsg-wrapper:\n
\n \n\nStyleguide 2.2\n*/\n/*\nアイコンボタン\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\na.ec-closeBtn\n .ec-icon\n img(src='/moc/icon/cross.svg', alt='close')\n\nStyleguide 2.2.1\n*/\n.ec-closeBtn {\n cursor: pointer; }\n .ec-closeBtn .ec-icon img {\n display: inline-block;\n margin-right: 5px;\n width: 1em;\n height: 1em;\n position: relative;\n top: -1px;\n vertical-align: middle; }\n\n/*\nアイコンボタン(○)\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\n\n\nex [お届け先編集画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\na.ec-closeBtn--circle\n .ec-icon\n img(src='/moc/icon/cross-white.svg', alt='close')\n\nStyleguide 2.2.2\n*/\n.ec-closeBtn--circle {\n display: block;\n border: 0 none;\n padding: 0;\n margin: 0;\n text-shadow: none;\n box-shadow: none;\n border-radius: 50%;\n background: #B8BEC4;\n cursor: pointer;\n width: 40px;\n min-width: 40px;\n max-width: 40px;\n height: 40px;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center; }\n .ec-closeBtn--circle .ec-icon img {\n display: block;\n margin-top: -.5em;\n margin-left: -.5em;\n width: 1em;\n height: 1em;\n position: absolute;\n top: 50%;\n left: 50%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nその他のボタン\n\n通常のボタンや、アイコンボタン以外のボタンを定義します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.3\n*/\n/*\nページトップボタン\n\nページトップボタンを表示します\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\n.ec-blockTopBtn\n\nStyleguide 2.3.1\n*/\n.ec-blockTopBtn {\n display: none;\n position: fixed;\n width: 120px;\n height: 40px;\n right: 0;\n bottom: 10px;\n cursor: pointer;\n color: #FFFFFF;\n text-align: center;\n line-height: 40px;\n opacity: 0.8;\n background-color: #9da3a9; }\n @media only screen and (min-width: 768px) {\n .ec-blockTopBtn {\n right: 30px;\n bottom: 30px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nフォーム部品(テキスト)\n\nテキストや数値の入力項目に関する要素を定義します。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 3.1\n*/\n/*\nフォーム\n\n`.ec-input` 要素は全ての入力項目に関する標準的なコンポーネントクラスです。\n\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-input\n input(type=\"number\")\np.ec-input\n textarea(rows=\"6\")\n\nStyleguide 3.1.1\n*/\n.ec-input input[type=\"search\"], .ec-halfInput input[type=\"search\"], .ec-numberInput input[type=\"search\"], .ec-zipInput input[type=\"search\"], .ec-telInput input[type=\"search\"], .ec-select input[type=\"search\"], .ec-birth input[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n\n.ec-input input[type=\"radio\"], .ec-halfInput input[type=\"radio\"], .ec-numberInput input[type=\"radio\"], .ec-zipInput input[type=\"radio\"], .ec-telInput input[type=\"radio\"], .ec-select input[type=\"radio\"], .ec-birth input[type=\"radio\"],\n.ec-input input[type=\"checkbox\"],\n.ec-halfInput input[type=\"checkbox\"],\n.ec-numberInput input[type=\"checkbox\"],\n.ec-zipInput input[type=\"checkbox\"],\n.ec-telInput input[type=\"checkbox\"],\n.ec-select input[type=\"checkbox\"],\n.ec-birth input[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal; }\n\n.ec-input input[type=\"file\"], .ec-halfInput input[type=\"file\"], .ec-numberInput input[type=\"file\"], .ec-zipInput input[type=\"file\"], .ec-telInput input[type=\"file\"], .ec-select input[type=\"file\"], .ec-birth input[type=\"file\"] {\n display: block; }\n\n.ec-input input[type=\"range\"], .ec-halfInput input[type=\"range\"], .ec-numberInput input[type=\"range\"], .ec-zipInput input[type=\"range\"], .ec-telInput input[type=\"range\"], .ec-select input[type=\"range\"], .ec-birth input[type=\"range\"] {\n display: block;\n width: 100%; }\n\n.ec-input select[multiple], .ec-halfInput select[multiple], .ec-numberInput select[multiple], .ec-zipInput select[multiple], .ec-telInput select[multiple], .ec-select select[multiple], .ec-birth select[multiple],\n.ec-input select[size],\n.ec-halfInput select[size],\n.ec-numberInput select[size],\n.ec-zipInput select[size],\n.ec-telInput select[size],\n.ec-select select[size],\n.ec-birth select[size] {\n height: auto; }\n\n.ec-input input[type=\"file\"]:focus, .ec-halfInput input[type=\"file\"]:focus, .ec-numberInput input[type=\"file\"]:focus, .ec-zipInput input[type=\"file\"]:focus, .ec-telInput input[type=\"file\"]:focus, .ec-select input[type=\"file\"]:focus, .ec-birth input[type=\"file\"]:focus,\n.ec-input input[type=\"radio\"]:focus,\n.ec-halfInput input[type=\"radio\"]:focus,\n.ec-numberInput input[type=\"radio\"]:focus,\n.ec-zipInput input[type=\"radio\"]:focus,\n.ec-telInput input[type=\"radio\"]:focus,\n.ec-select input[type=\"radio\"]:focus,\n.ec-birth input[type=\"radio\"]:focus,\n.ec-input input[type=\"checkbox\"]:focus,\n.ec-halfInput input[type=\"checkbox\"]:focus,\n.ec-numberInput input[type=\"checkbox\"]:focus,\n.ec-zipInput input[type=\"checkbox\"]:focus,\n.ec-telInput input[type=\"checkbox\"]:focus,\n.ec-select input[type=\"checkbox\"]:focus,\n.ec-birth input[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input input::-moz-placeholder, .ec-halfInput input::-moz-placeholder, .ec-numberInput input::-moz-placeholder, .ec-zipInput input::-moz-placeholder, .ec-telInput input::-moz-placeholder, .ec-select input::-moz-placeholder, .ec-birth input::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input input:-ms-input-placeholder, .ec-halfInput input:-ms-input-placeholder, .ec-numberInput input:-ms-input-placeholder, .ec-zipInput input:-ms-input-placeholder, .ec-telInput input:-ms-input-placeholder, .ec-select input:-ms-input-placeholder, .ec-birth input:-ms-input-placeholder {\n color: #999; }\n .ec-input input::-webkit-input-placeholder, .ec-halfInput input::-webkit-input-placeholder, .ec-numberInput input::-webkit-input-placeholder, .ec-zipInput input::-webkit-input-placeholder, .ec-telInput input::-webkit-input-placeholder, .ec-select input::-webkit-input-placeholder, .ec-birth input::-webkit-input-placeholder {\n color: #999; }\n .ec-input input::-ms-expand, .ec-halfInput input::-ms-expand, .ec-numberInput input::-ms-expand, .ec-zipInput input::-ms-expand, .ec-telInput input::-ms-expand, .ec-select input::-ms-expand, .ec-birth input::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled], .ec-input input[readonly], .ec-halfInput input[readonly], .ec-numberInput input[readonly], .ec-zipInput input[readonly], .ec-telInput input[readonly], .ec-select input[readonly], .ec-birth input[readonly],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n cursor: not-allowed; }\n\n.ec-input select, .ec-halfInput select, .ec-numberInput select, .ec-zipInput select, .ec-telInput select, .ec-select select, .ec-birth select {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input select:focus, .ec-halfInput select:focus, .ec-numberInput select:focus, .ec-zipInput select:focus, .ec-telInput select:focus, .ec-select select:focus, .ec-birth select:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input select::-moz-placeholder, .ec-halfInput select::-moz-placeholder, .ec-numberInput select::-moz-placeholder, .ec-zipInput select::-moz-placeholder, .ec-telInput select::-moz-placeholder, .ec-select select::-moz-placeholder, .ec-birth select::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input select:-ms-input-placeholder, .ec-halfInput select:-ms-input-placeholder, .ec-numberInput select:-ms-input-placeholder, .ec-zipInput select:-ms-input-placeholder, .ec-telInput select:-ms-input-placeholder, .ec-select select:-ms-input-placeholder, .ec-birth select:-ms-input-placeholder {\n color: #999; }\n .ec-input select::-webkit-input-placeholder, .ec-halfInput select::-webkit-input-placeholder, .ec-numberInput select::-webkit-input-placeholder, .ec-zipInput select::-webkit-input-placeholder, .ec-telInput select::-webkit-input-placeholder, .ec-select select::-webkit-input-placeholder, .ec-birth select::-webkit-input-placeholder {\n color: #999; }\n .ec-input select::-ms-expand, .ec-halfInput select::-ms-expand, .ec-numberInput select::-ms-expand, .ec-zipInput select::-ms-expand, .ec-telInput select::-ms-expand, .ec-select select::-ms-expand, .ec-birth select::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled], .ec-input select[readonly], .ec-halfInput select[readonly], .ec-numberInput select[readonly], .ec-zipInput select[readonly], .ec-telInput select[readonly], .ec-select select[readonly], .ec-birth select[readonly],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n cursor: not-allowed; }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input textarea::-moz-placeholder, .ec-halfInput textarea::-moz-placeholder, .ec-numberInput textarea::-moz-placeholder, .ec-zipInput textarea::-moz-placeholder, .ec-telInput textarea::-moz-placeholder, .ec-select textarea::-moz-placeholder, .ec-birth textarea::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input textarea:-ms-input-placeholder, .ec-halfInput textarea:-ms-input-placeholder, .ec-numberInput textarea:-ms-input-placeholder, .ec-zipInput textarea:-ms-input-placeholder, .ec-telInput textarea:-ms-input-placeholder, .ec-select textarea:-ms-input-placeholder, .ec-birth textarea:-ms-input-placeholder {\n color: #999; }\n .ec-input textarea::-webkit-input-placeholder, .ec-halfInput textarea::-webkit-input-placeholder, .ec-numberInput textarea::-webkit-input-placeholder, .ec-zipInput textarea::-webkit-input-placeholder, .ec-telInput textarea::-webkit-input-placeholder, .ec-select textarea::-webkit-input-placeholder, .ec-birth textarea::-webkit-input-placeholder {\n color: #999; }\n .ec-input textarea::-ms-expand, .ec-halfInput textarea::-ms-expand, .ec-numberInput textarea::-ms-expand, .ec-zipInput textarea::-ms-expand, .ec-telInput textarea::-ms-expand, .ec-select textarea::-ms-expand, .ec-birth textarea::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled], .ec-input textarea[readonly], .ec-halfInput textarea[readonly], .ec-numberInput textarea[readonly], .ec-zipInput textarea[readonly], .ec-telInput textarea[readonly], .ec-select textarea[readonly], .ec-birth textarea[readonly],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n cursor: not-allowed; }\n\n.ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus, .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n box-shadow: none;\n border-color: #3c8dbc; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n height: 40px;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n margin-bottom: 16px; } }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n height: auto;\n min-height: 100px; }\n\n.ec-input p, .ec-halfInput p, .ec-numberInput p, .ec-zipInput p, .ec-telInput p, .ec-select p, .ec-birth p {\n line-height: 1.4; }\n\n.ec-input .ec-errorMessage, .ec-halfInput .ec-errorMessage, .ec-numberInput .ec-errorMessage, .ec-zipInput .ec-errorMessage, .ec-telInput .ec-errorMessage, .ec-select .ec-errorMessage, .ec-birth .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-input input, .error.ec-halfInput input, .error.ec-numberInput input, .error.ec-zipInput input, .error.ec-telInput input, .error.ec-select input, .error.ec-birth input, .error.ec-input select, .error.ec-halfInput select, .error.ec-numberInput select, .error.ec-zipInput select, .error.ec-telInput select, .error.ec-select select, .error.ec-birth select {\n margin-bottom: 5px;\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n.ec-checkbox .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-checkbox input, .error.ec-checkbox label {\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n/*\nフォーム(text2つ)\n\n姓名など2つ入力させたい入力項目で使用します。\n\n入力フォームを半分で用意したいときにも利用可能です。\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-halfInput\n input(type=\"text\")\n input(type=\"text\")\np.ec-halfInput\n input(type=\"text\")\n\nStyleguide 3.1.2\n*/\n.ec-halfInput input[type='text'] {\n display: inline-block;\n width: 47%;\n margin-left: 2%; }\n @media only screen and (min-width: 768px) {\n .ec-halfInput input[type='text'] {\n margin-left: 15px;\n width: 45%; } }\n\n.ec-halfInput input[type='text']:first-child {\n margin-left: 0; }\n\n/*\n数量ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [商品詳細画面 数量ボタン部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-numberInput\n span 数量\n input(type=\"number\",value=\"0\")\n\nStyleguide 3.1.3\n*/\n.ec-numberInput input[type='number'] {\n display: inline-block;\n width: auto;\n max-width: 100px;\n text-align: right; }\n\n/*\n郵便番号フォーム\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 郵便番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-zipInput\n span 〒\n input(type=\"text\")\n.ec-zipInputHelp\n a(href=\"http://www.post.japanpost.jp/zipcode/\" target=\"_blank\")\n .ec-zipInputHelp__icon\n .ec-icon\n img(src='/moc/icon/question-white.svg', alt='')\n span 郵便番号検索\n.ec-zipAuto\n a.ec-inlineBtn 郵便番号から自動入力\n\nStyleguide 3.1.4\n*/\n.ec-zipInput {\n display: inline-block; }\n .ec-zipInput input {\n display: inline-block;\n text-align: left;\n width: auto;\n max-width: 8em;\n font-size: 16px; }\n .ec-zipInput span {\n display: inline-block;\n padding: 0 5px 0 3px;\n margin-left: 5px; }\n\n.ec-zipInputHelp {\n display: inline-block;\n margin-left: 10px;\n margin-bottom: 16px;\n vertical-align: baseline;\n line-height: 0; }\n .ec-zipInputHelp .ec-zipInputHelp__icon {\n display: inline-block;\n margin-top: -10px;\n width: 20px;\n height: 20px;\n background: #525263;\n border-radius: 50%;\n font-size: 13px;\n position: relative;\n top: -6px; }\n .ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img {\n width: 1em;\n height: 1em;\n position: relative;\n left: 3px;\n top: 3px; }\n .ec-zipInputHelp span {\n margin-left: 8px;\n display: inline-block;\n color: #0092C4;\n vertical-align: 3px; }\n\n.ec-zipAuto {\n margin-bottom: 16px; }\n .ec-zipAuto .ec-inlineBtn {\n font-weight: normal; }\n\n/*\n電話番号ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 電話番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-telInput\n input(type=\"text\")\n\nStyleguide 3.1.5\n*/\n.ec-telInput input {\n max-width: 10em;\n text-align: left; }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nフォーム部品(テキスト)\n\nテキストや数値の入力項目に関する要素を定義します。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 3.1\n*/\n/*\nフォーム\n\n`.ec-input` 要素は全ての入力項目に関する標準的なコンポーネントクラスです。\n\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-input\n input(type=\"number\")\np.ec-input\n textarea(rows=\"6\")\n\nStyleguide 3.1.1\n*/\n.ec-input input[type=\"search\"], .ec-halfInput input[type=\"search\"], .ec-numberInput input[type=\"search\"], .ec-zipInput input[type=\"search\"], .ec-telInput input[type=\"search\"], .ec-select input[type=\"search\"], .ec-birth input[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n\n.ec-input input[type=\"radio\"], .ec-halfInput input[type=\"radio\"], .ec-numberInput input[type=\"radio\"], .ec-zipInput input[type=\"radio\"], .ec-telInput input[type=\"radio\"], .ec-select input[type=\"radio\"], .ec-birth input[type=\"radio\"],\n.ec-input input[type=\"checkbox\"],\n.ec-halfInput input[type=\"checkbox\"],\n.ec-numberInput input[type=\"checkbox\"],\n.ec-zipInput input[type=\"checkbox\"],\n.ec-telInput input[type=\"checkbox\"],\n.ec-select input[type=\"checkbox\"],\n.ec-birth input[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal; }\n\n.ec-input input[type=\"file\"], .ec-halfInput input[type=\"file\"], .ec-numberInput input[type=\"file\"], .ec-zipInput input[type=\"file\"], .ec-telInput input[type=\"file\"], .ec-select input[type=\"file\"], .ec-birth input[type=\"file\"] {\n display: block; }\n\n.ec-input input[type=\"range\"], .ec-halfInput input[type=\"range\"], .ec-numberInput input[type=\"range\"], .ec-zipInput input[type=\"range\"], .ec-telInput input[type=\"range\"], .ec-select input[type=\"range\"], .ec-birth input[type=\"range\"] {\n display: block;\n width: 100%; }\n\n.ec-input select[multiple], .ec-halfInput select[multiple], .ec-numberInput select[multiple], .ec-zipInput select[multiple], .ec-telInput select[multiple], .ec-select select[multiple], .ec-birth select[multiple],\n.ec-input select[size],\n.ec-halfInput select[size],\n.ec-numberInput select[size],\n.ec-zipInput select[size],\n.ec-telInput select[size],\n.ec-select select[size],\n.ec-birth select[size] {\n height: auto; }\n\n.ec-input input[type=\"file\"]:focus, .ec-halfInput input[type=\"file\"]:focus, .ec-numberInput input[type=\"file\"]:focus, .ec-zipInput input[type=\"file\"]:focus, .ec-telInput input[type=\"file\"]:focus, .ec-select input[type=\"file\"]:focus, .ec-birth input[type=\"file\"]:focus,\n.ec-input input[type=\"radio\"]:focus,\n.ec-halfInput input[type=\"radio\"]:focus,\n.ec-numberInput input[type=\"radio\"]:focus,\n.ec-zipInput input[type=\"radio\"]:focus,\n.ec-telInput input[type=\"radio\"]:focus,\n.ec-select input[type=\"radio\"]:focus,\n.ec-birth input[type=\"radio\"]:focus,\n.ec-input input[type=\"checkbox\"]:focus,\n.ec-halfInput input[type=\"checkbox\"]:focus,\n.ec-numberInput input[type=\"checkbox\"]:focus,\n.ec-zipInput input[type=\"checkbox\"]:focus,\n.ec-telInput input[type=\"checkbox\"]:focus,\n.ec-select input[type=\"checkbox\"]:focus,\n.ec-birth input[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input input::-moz-placeholder, .ec-halfInput input::-moz-placeholder, .ec-numberInput input::-moz-placeholder, .ec-zipInput input::-moz-placeholder, .ec-telInput input::-moz-placeholder, .ec-select input::-moz-placeholder, .ec-birth input::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input input:-ms-input-placeholder, .ec-halfInput input:-ms-input-placeholder, .ec-numberInput input:-ms-input-placeholder, .ec-zipInput input:-ms-input-placeholder, .ec-telInput input:-ms-input-placeholder, .ec-select input:-ms-input-placeholder, .ec-birth input:-ms-input-placeholder {\n color: #999; }\n .ec-input input::-webkit-input-placeholder, .ec-halfInput input::-webkit-input-placeholder, .ec-numberInput input::-webkit-input-placeholder, .ec-zipInput input::-webkit-input-placeholder, .ec-telInput input::-webkit-input-placeholder, .ec-select input::-webkit-input-placeholder, .ec-birth input::-webkit-input-placeholder {\n color: #999; }\n .ec-input input::-ms-expand, .ec-halfInput input::-ms-expand, .ec-numberInput input::-ms-expand, .ec-zipInput input::-ms-expand, .ec-telInput input::-ms-expand, .ec-select input::-ms-expand, .ec-birth input::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled], .ec-input input[readonly], .ec-halfInput input[readonly], .ec-numberInput input[readonly], .ec-zipInput input[readonly], .ec-telInput input[readonly], .ec-select input[readonly], .ec-birth input[readonly],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n cursor: not-allowed; }\n\n.ec-input select, .ec-halfInput select, .ec-numberInput select, .ec-zipInput select, .ec-telInput select, .ec-select select, .ec-birth select {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input select:focus, .ec-halfInput select:focus, .ec-numberInput select:focus, .ec-zipInput select:focus, .ec-telInput select:focus, .ec-select select:focus, .ec-birth select:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input select::-moz-placeholder, .ec-halfInput select::-moz-placeholder, .ec-numberInput select::-moz-placeholder, .ec-zipInput select::-moz-placeholder, .ec-telInput select::-moz-placeholder, .ec-select select::-moz-placeholder, .ec-birth select::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input select:-ms-input-placeholder, .ec-halfInput select:-ms-input-placeholder, .ec-numberInput select:-ms-input-placeholder, .ec-zipInput select:-ms-input-placeholder, .ec-telInput select:-ms-input-placeholder, .ec-select select:-ms-input-placeholder, .ec-birth select:-ms-input-placeholder {\n color: #999; }\n .ec-input select::-webkit-input-placeholder, .ec-halfInput select::-webkit-input-placeholder, .ec-numberInput select::-webkit-input-placeholder, .ec-zipInput select::-webkit-input-placeholder, .ec-telInput select::-webkit-input-placeholder, .ec-select select::-webkit-input-placeholder, .ec-birth select::-webkit-input-placeholder {\n color: #999; }\n .ec-input select::-ms-expand, .ec-halfInput select::-ms-expand, .ec-numberInput select::-ms-expand, .ec-zipInput select::-ms-expand, .ec-telInput select::-ms-expand, .ec-select select::-ms-expand, .ec-birth select::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled], .ec-input select[readonly], .ec-halfInput select[readonly], .ec-numberInput select[readonly], .ec-zipInput select[readonly], .ec-telInput select[readonly], .ec-select select[readonly], .ec-birth select[readonly],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n cursor: not-allowed; }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input textarea::-moz-placeholder, .ec-halfInput textarea::-moz-placeholder, .ec-numberInput textarea::-moz-placeholder, .ec-zipInput textarea::-moz-placeholder, .ec-telInput textarea::-moz-placeholder, .ec-select textarea::-moz-placeholder, .ec-birth textarea::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input textarea:-ms-input-placeholder, .ec-halfInput textarea:-ms-input-placeholder, .ec-numberInput textarea:-ms-input-placeholder, .ec-zipInput textarea:-ms-input-placeholder, .ec-telInput textarea:-ms-input-placeholder, .ec-select textarea:-ms-input-placeholder, .ec-birth textarea:-ms-input-placeholder {\n color: #999; }\n .ec-input textarea::-webkit-input-placeholder, .ec-halfInput textarea::-webkit-input-placeholder, .ec-numberInput textarea::-webkit-input-placeholder, .ec-zipInput textarea::-webkit-input-placeholder, .ec-telInput textarea::-webkit-input-placeholder, .ec-select textarea::-webkit-input-placeholder, .ec-birth textarea::-webkit-input-placeholder {\n color: #999; }\n .ec-input textarea::-ms-expand, .ec-halfInput textarea::-ms-expand, .ec-numberInput textarea::-ms-expand, .ec-zipInput textarea::-ms-expand, .ec-telInput textarea::-ms-expand, .ec-select textarea::-ms-expand, .ec-birth textarea::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled], .ec-input textarea[readonly], .ec-halfInput textarea[readonly], .ec-numberInput textarea[readonly], .ec-zipInput textarea[readonly], .ec-telInput textarea[readonly], .ec-select textarea[readonly], .ec-birth textarea[readonly],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n cursor: not-allowed; }\n\n.ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus, .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n box-shadow: none;\n border-color: #3c8dbc; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n height: 40px;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n margin-bottom: 16px; } }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n height: auto;\n min-height: 100px; }\n\n.ec-input p, .ec-halfInput p, .ec-numberInput p, .ec-zipInput p, .ec-telInput p, .ec-select p, .ec-birth p {\n line-height: 1.4; }\n\n.ec-input .ec-errorMessage, .ec-halfInput .ec-errorMessage, .ec-numberInput .ec-errorMessage, .ec-zipInput .ec-errorMessage, .ec-telInput .ec-errorMessage, .ec-select .ec-errorMessage, .ec-birth .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-input input, .error.ec-halfInput input, .error.ec-numberInput input, .error.ec-zipInput input, .error.ec-telInput input, .error.ec-select input, .error.ec-birth input, .error.ec-input select, .error.ec-halfInput select, .error.ec-numberInput select, .error.ec-zipInput select, .error.ec-telInput select, .error.ec-select select, .error.ec-birth select {\n margin-bottom: 5px;\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n.ec-checkbox .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-checkbox input, .error.ec-checkbox label {\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n/*\nフォーム(text2つ)\n\n姓名など2つ入力させたい入力項目で使用します。\n\n入力フォームを半分で用意したいときにも利用可能です。\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-halfInput\n input(type=\"text\")\n input(type=\"text\")\np.ec-halfInput\n input(type=\"text\")\n\nStyleguide 3.1.2\n*/\n.ec-halfInput input[type='text'] {\n display: inline-block;\n width: 47%;\n margin-left: 2%; }\n @media only screen and (min-width: 768px) {\n .ec-halfInput input[type='text'] {\n margin-left: 15px;\n width: 45%; } }\n\n.ec-halfInput input[type='text']:first-child {\n margin-left: 0; }\n\n/*\n数量ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [商品詳細画面 数量ボタン部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-numberInput\n span 数量\n input(type=\"number\",value=\"0\")\n\nStyleguide 3.1.3\n*/\n.ec-numberInput input[type='number'] {\n display: inline-block;\n width: auto;\n max-width: 100px;\n text-align: right; }\n\n/*\n郵便番号フォーム\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 郵便番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-zipInput\n span 〒\n input(type=\"text\")\n.ec-zipInputHelp\n a(href=\"http://www.post.japanpost.jp/zipcode/\" target=\"_blank\")\n .ec-zipInputHelp__icon\n .ec-icon\n img(src='/moc/icon/question-white.svg', alt='')\n span 郵便番号検索\n.ec-zipAuto\n a.ec-inlineBtn 郵便番号から自動入力\n\nStyleguide 3.1.4\n*/\n.ec-zipInput {\n display: inline-block; }\n .ec-zipInput input {\n display: inline-block;\n text-align: left;\n width: auto;\n max-width: 8em;\n font-size: 16px; }\n .ec-zipInput span {\n display: inline-block;\n padding: 0 5px 0 3px;\n margin-left: 5px; }\n\n.ec-zipInputHelp {\n display: inline-block;\n margin-left: 10px;\n margin-bottom: 16px;\n vertical-align: baseline;\n line-height: 0; }\n .ec-zipInputHelp .ec-zipInputHelp__icon {\n display: inline-block;\n margin-top: -10px;\n width: 20px;\n height: 20px;\n background: #525263;\n border-radius: 50%;\n font-size: 13px;\n position: relative;\n top: -6px; }\n .ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img {\n width: 1em;\n height: 1em;\n position: relative;\n left: 3px;\n top: 3px; }\n .ec-zipInputHelp span {\n margin-left: 8px;\n display: inline-block;\n color: #0092C4;\n vertical-align: 3px; }\n\n.ec-zipAuto {\n margin-bottom: 16px; }\n .ec-zipAuto .ec-inlineBtn {\n font-weight: normal; }\n\n/*\n電話番号ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 電話番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-telInput\n input(type=\"text\")\n\nStyleguide 3.1.5\n*/\n.ec-telInput input {\n max-width: 10em;\n text-align: left; }\n\n/*\nフォーム部品(その他)\n\nフォーム部品でテキストの入力以外の動作要素を定義します。\n\nsg-wrapper:\n
\n \n\nStyleguide 3.2\n*/\n/*\nラジオ(水平)\n\n水平に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 性別選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-radio\n label\n input(type=\"radio\")\n span 男性\n label\n input(type=\"radio\")\n span 女性\n\nStyleguide 3.2.2\n*/\n.ec-radio label {\n margin-right: 20px; }\n\n.ec-radio input {\n margin-right: 10px;\n margin-bottom: 10px; }\n\n.ec-radio span {\n font-weight: normal; }\n\n/*\nラジオ(垂直)\n\n垂直に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [購入画面 お支払方法](http://demo3.ec-cube.net/shopping)\n\nMarkup:\n.ec-blockRadio\n label\n input(type=\"radio\")\n span 郵便振替\n label\n input(type=\"radio\")\n span 現金書留\n label\n input(type=\"radio\")\n span 銀行振込\n label\n input(type=\"radio\")\n span 代金引換\n\nStyleguide 3.2.3\n*/\n.ec-blockRadio label {\n display: block; }\n\n.ec-blockRadio span {\n padding-left: 10px;\n font-weight: normal; }\n\n/*\nセレクトボックス\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 都道府県選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-select\n select\n option 都道府県を選択\n option 北海道\n option 青森県\n option 岩手県\n option ...\n.ec-select\n select\n option 選択して下さい\n option 公務員\n option コンサルタント\n option コンピュータ関連技術職\n option コンピュータ関連以外の技術職\n option ...\n\nStyleguide 3.2.4\n*/\n.ec-selects {\n margin-bottom: 20px;\n border-bottom: 1px dotted #ccc; }\n\n.ec-select {\n margin-bottom: 16px; }\n .ec-select select {\n display: inline-block;\n width: auto;\n background-color: #f8f8f8;\n -webkit-appearance: menulist;\n -moz-appearance: menulist; }\n .ec-select select:focus {\n box-shadow: none; }\n .ec-select label {\n margin-right: 10px;\n font-weight: bold; }\n .ec-select label:nth-child(3) {\n margin-left: 10px;\n font-weight: bold; }\n\n.ec-select__delivery {\n display: block;\n margin-right: 16px; }\n @media only screen and (min-width: 768px) {\n .ec-select__delivery {\n display: inline-block; } }\n\n.ec-select__time {\n display: block; }\n @media only screen and (min-width: 768px) {\n .ec-select__time {\n display: inline-block; } }\n\n/*\n生年月日選択\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 生年月日選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-birth\n select\n option ----\n option 1960\n option 1961\n option 1962\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n\nStyleguide 3.2.5\n*/\n.ec-birth select {\n display: inline-block;\n width: auto;\n margin: 0 0 10px;\n background-color: #f8f8f8;\n -webkit-appearance: menulist;\n -moz-appearance: menulist; }\n .ec-birth select:focus {\n box-shadow: none; }\n @media only screen and (min-width: 768px) {\n .ec-birth select {\n margin: 0 8px 10px; } }\n\n.ec-birth span {\n margin-left: 5px; }\n\n/*\nチェックボックス (水平)\n\n水平に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 利用規約](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-checkbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.6\n*/\n.ec-checkbox label {\n display: inline-block; }\n\n.ec-checkbox input {\n margin-bottom: 10px; }\n\n.ec-checkbox span {\n font-weight: normal; }\n\n/*\nチェックボックス (垂直)\n\n垂直に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nMarkup:\n.ec-blockCheckbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.7\n*/\n.ec-blockCheckbox label {\n display: block; }\n\n.ec-blockCheckbox span {\n font-weight: normal; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nフォームラベル\n\nフォームのラベルに関する要素を定義します。\n\nsg-wrapper:\n
\n
\n
\n
\n \n
\n
\n
\n
\n\nStyleguide 3.3\n*/\n/*\nラベル\n\nフォーム要素で利用するラベル要素です。\n\nex [お問い合わせページ ラベル部分](http://demo3.ec-cube.net/contact)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.1\n*/\n.ec-label {\n display: inline-block;\n font-weight: bold;\n margin-bottom: 5px; }\n\n/*\n必須ラベル\n\n必須文字を表示するラベル要素です。\n\nex [お問い合わせページ 必須ラベル部分](http://demo3.ec-cube.net/contact)\n\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n span.ec-required 必須\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.2\n*/\n.ec-required {\n display: inline-block;\n margin-left: .8em;\n vertical-align: 2px;\n color: #DE5D50;\n font-size: 12px;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-required {\n margin-left: 1em; } }\n\n/*\nアイコン\n\nデフォルトテンプレートのアイコンは`.ec-icon`>`img`タグで使用することができます\n\nsg-wrapper:\n
\n \n\nMarkup:\ninclude /assets/tmpl/elements/4.1.icon.pug\ndiv(style=\"background-color: rgba(130,130,130,.15); padding: 20px;\")\n +icon-all\n\nStyleguide 4.1\n*/\n.ec-icon img {\n max-width: 80px;\n max-height: 80px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nグリッド\n\n画面を12分割し、グリッドレイアウトに対応するためのスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.1\n*/\n/*\n2分割グリッド\n\n画面 2分割の グリッドです。\nBootstrap の col-sm-6 相当のグリッドを提供します。\n\nMarkup:\n.ec-grid2\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 5.1.1\n*/\n.ec-grid2 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid2 {\n display: flex; } }\n .ec-grid2 .ec-grid2__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid2 .ec-grid2__cell {\n width: 50%; } }\n .ec-grid2 .ec-grid2__cell2 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid2 .ec-grid2__cell2 {\n width: 100%; } }\n\n/*\n3分割グリッド\n\n画面 3分割の グリッドです。\n\n\nMarkup:\n.ec-grid3\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n\nStyleguide 5.1.2\n*/\n.ec-grid3 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid3 {\n display: flex; } }\n .ec-grid3 .ec-grid3__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid3 .ec-grid3__cell {\n width: 33.33333%; } }\n .ec-grid3 .ec-grid3__cell2 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid3 .ec-grid3__cell2 {\n width: 66.66667%; } }\n .ec-grid3 .ec-grid3__cell3 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid3 .ec-grid3__cell3 {\n width: 100%; } }\n\n/*\n4分割グリッド\n\n画面 4分割の グリッドです。\n\n\nMarkup:\n.ec-grid4\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n\nStyleguide 5.1.3\n*/\n.ec-grid4 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid4 {\n display: flex; } }\n .ec-grid4 .ec-grid4__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid4 .ec-grid4__cell {\n width: 25%; } }\n\n/*\n6分割グリッド\n\n2つにまとめた cell2 や 3つをまとめた cell3 タグも使用可能です。\n\n\nMarkup:\n.ec-grid6\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n.ec-grid6\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n.ec-grid6\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n\nStyleguide 5.1.4\n*/\n.ec-grid6 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid6 {\n display: flex; } }\n .ec-grid6 .ec-grid6__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid6 .ec-grid6__cell {\n width: 16.66667%; } }\n .ec-grid6 .ec-grid6__cell2 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid6 .ec-grid6__cell2 {\n width: 33.33333%; } }\n .ec-grid6 .ec-grid6__cell3 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid6 .ec-grid6__cell3 {\n width: 50%; } }\n\n/*\n中央寄せグリッド 10/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の10グリッドです\n\nex [ご利用規約ページ 本文](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-off1Grid\n .ec-off1Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.5\n*/\n.ec-off1Grid {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off1Grid {\n display: block;\n margin: 0; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off1Grid {\n display: flex; } }\n .ec-off1Grid .ec-off1Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off1Grid .ec-off1Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 8.33333%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off1Grid .ec-off1Grid__cell {\n width: 83.33333%; } }\n\n/*\n中央寄せグリッド 8/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の8グリッドです\n\n\nMarkup:\n.ec-off2Grid\n .ec-off2Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.6\n*/\n.ec-off2Grid {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off2Grid {\n display: flex; } }\n .ec-off2Grid .ec-off2Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off2Grid .ec-off2Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 16.66667%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off2Grid .ec-off2Grid__cell {\n width: 66.66667%; } }\n\n/*\n中央寄せグリッド 6/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の6グリッドです\n\n\nMarkup:\n.ec-off3Grid\n .ec-off3Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.7\n*/\n.ec-off3Grid {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off3Grid {\n display: flex; } }\n .ec-off3Grid .ec-off3Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off3Grid .ec-off3Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 25%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off3Grid .ec-off3Grid__cell {\n width: 50%; } }\n\n/*\n中央寄せグリッド 4/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の4グリッドです\n\n\nMarkup:\n.ec-off4Grid\n .ec-off4Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\n\nStyleguide 5.1.8\n*/\n.ec-off4Grid {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off4Grid {\n display: flex; } }\n .ec-off4Grid .ec-off4Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off4Grid .ec-off4Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 33.33333%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off4Grid .ec-off4Grid__cell {\n width: 33.33333%; } }\n\n/*\nグリッドオプション\n\nグリッドのセルに対して「左寄せ」「中央寄せ」「右寄せ」のオプションを付与することができます。\n\nsg-wrapper:\n
\n \n\nStyleguide 5.1.9\n*/\n/*\nグリッドセルの左寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--left\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.10\n*/\n.ec-grid--left {\n justify-content: flex-start; }\n\n/*\nグリッドセルの右寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--right\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.11\n*/\n.ec-grid--right {\n justify-content: flex-end; }\n\n/*\nグリッドセルの中央寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--center\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.12\n*/\n.ec-grid--center {\n justify-content: center; }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nレイアウト\n\n様々なレイアウトを変更する為のスタイル群です。\n\nStyleguide 5.2\n*/\n/*\n画像レイアウト\n\n画像とテキストを水平に並べるレイアウトです。\n\n画像は20%で表示されます。\n\nex [注文履歴 ログイン後→注文履歴ボタンを押下](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-imageGrid\n .ec-imageGrid__img: img(src=\"http://demo3.ec-cube.net/upload/save_image/0701113537_559351f959620.jpeg\")\n .ec-imageGrid__content\n p.ec-font-bold ホーローマグ\n p ¥ 1,728 x 1\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.2.1\n*/\n.ec-imageGrid {\n display: table;\n border-top: 1px dotted #ccc;\n width: 100%; }\n .ec-imageGrid .ec-imageGrid__img {\n display: table-cell;\n padding: 10px;\n width: 100px; }\n @media only screen and (min-width: 768px) {\n .ec-imageGrid .ec-imageGrid__img {\n padding: 10px;\n width: 130px; } }\n .ec-imageGrid .ec-imageGrid__img img {\n width: 100%; }\n .ec-imageGrid .ec-imageGrid__content {\n vertical-align: middle;\n display: table-cell; }\n .ec-imageGrid .ec-imageGrid__content span {\n margin-left: 10px; }\n .ec-imageGrid .ec-imageGrid__content p {\n margin-bottom: 0; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nログイン\n\n主にログインフォームのスタイルを表示します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 6.1\n*/\n/*\nログインフォーム\n\nログインフォームを表示します。\n\nex [ログイン画面](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-login\n\n\nStyleguide 6.1.1\n*/\n.ec-login {\n margin: 0 0 20px;\n padding: 30px 13% 20px;\n height: auto;\n background: #F3F4F4;\n box-sizing: border-box; }\n @media only screen and (min-width: 768px) {\n .ec-login {\n margin: 0 16px;\n padding: 30px 13% 60px; } }\n .ec-login .ec-login__icon {\n text-align: center; }\n .ec-login .ec-icon {\n margin-bottom: 10px; }\n .ec-login .ec-icon img {\n width: 90px;\n height: 90px;\n display: inline-block; }\n .ec-login .ec-login__input {\n margin-bottom: 40px; }\n .ec-login .ec-login__input .ec-checkbox span {\n margin-left: 5px;\n font-weight: normal; }\n .ec-login .ec-login__actions {\n color: #fff; }\n .ec-login .ec-login__actions a {\n color: inherit;\n text-decoration: none; }\n .ec-login .ec-login__actions a:hover {\n text-decoration: none; }\n .ec-login .ec-login__link {\n margin-top: 5px;\n margin-left: 0; }\n @media only screen and (min-width: 768px) {\n .ec-login .ec-login__link {\n margin-left: 20px; } }\n .ec-login .ec-errorMessage {\n color: #DE5D50;\n margin-bottom: 20px; }\n\n/*\nゲスト購入\n\nゲスト購入ボタンとそのフォームを表示します。\n\nex [ゲスト購入画面](http://demo3.ec-cube.net/shopping/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-guest\nhoge\n\nStyleguide 6.1.2\n*/\n.ec-guest {\n display: table;\n margin: 0;\n padding: 13%;\n height: auto;\n box-sizing: border-box;\n background: #F3F4F4; }\n @media only screen and (min-width: 768px) {\n .ec-guest {\n height: 100%;\n margin: 0 16px; } }\n .ec-guest .ec-guest__inner {\n display: table-cell;\n vertical-align: middle;\n text-align: center; }\n .ec-guest .ec-guest__inner p {\n margin-bottom: 16px; }\n .ec-guest .ec-guest__actions {\n display: block;\n vertical-align: middle;\n text-align: center;\n color: #fff; }\n .ec-guest .ec-guest__actions a {\n color: inherit;\n text-decoration: none; }\n .ec-guest .ec-guest__actions a:hover {\n text-decoration: none; }\n .ec-guest .ec-guest__icon {\n font-size: 70px;\n text-align: center; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n商品掲載\n\nトップページに商品掲載するスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.1\n*/\n/*\n商品アイテム(商品紹介B)\n\n3項目横並びの商品アイテムを表示します。\n必要に応じて商品詳細や、キャッチコピーなどを添えることが出来ます。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayB\n\nStyleguide 7.1.1\n*/\n.ec-displayB {\n margin-bottom: 24px;\n display: flex;\n justify-content: space-between;\n flex-direction: column; }\n @media only screen and (min-width: 768px) {\n .ec-displayB {\n flex-direction: row; } }\n .ec-displayB .ec-displayB__cell {\n width: 100%;\n margin-bottom: 16px; }\n .ec-displayB .ec-displayB__cell a {\n color: inherit;\n text-decoration: none; }\n .ec-displayB .ec-displayB__cell a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-displayB .ec-displayB__cell {\n width: 31.4466%;\n margin-bottom: 0; } }\n .ec-displayB .ec-displayB__cell:hover {\n text-decoration: none; }\n .ec-displayB .ec-displayB__cell:hover img {\n opacity: .8; }\n .ec-displayB .ec-displayB__cell:hover a {\n text-decoration: none; }\n .ec-displayB .ec-displayB__img {\n margin-bottom: 15px; }\n .ec-displayB .ec-displayB__catch {\n margin-bottom: 15px;\n text-decoration: none;\n font-weight: bold;\n color: #9a947e; }\n .ec-displayB .ec-displayB__comment {\n margin-bottom: 14px;\n text-decoration: none;\n color: #525263;\n font-size: 14px; }\n .ec-displayB .ec-displayB__link {\n text-decoration: none;\n font-weight: bold;\n color: #9a947e; }\n\n/*\n商品アイテム(商品紹介C)\n\n4項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayC\np hoge\n\nStyleguide 7.1.2\n*/\n.ec-displayC {\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n margin-bottom: 24px; }\n .ec-displayC .ec-displayC__cell {\n width: 47%; }\n .ec-displayC .ec-displayC__cell a {\n color: inherit;\n text-decoration: none; }\n .ec-displayC .ec-displayC__cell a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-displayC .ec-displayC__cell {\n width: 22.8775%; } }\n .ec-displayC .ec-displayC__cell:hover a {\n text-decoration: none; }\n .ec-displayC .ec-displayC__cell:hover img {\n opacity: .8; }\n .ec-displayC .ec-displayC__img {\n display: block;\n width: 100%;\n margin-bottom: 15px; }\n .ec-displayC .ec-displayC__catch {\n display: block;\n width: 100%;\n font-weight: bold;\n color: #9a947e; }\n .ec-displayC .ec-displayC__title {\n display: block;\n width: 100%;\n color: #525263; }\n .ec-displayC .ec-displayC__price {\n display: block;\n width: 100%;\n font-weight: bold;\n color: #525263; }\n .ec-displayC .ec-displayC__price--sp {\n display: block;\n width: 100%;\n font-weight: bold;\n color: #DE5D50; }\n\n/*\n商品アイテム(商品紹介D)\n\n6項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayD\n\nStyleguide 7.1.3\n*/\n.ec-displayD {\n display: flex;\n justify-content: space-between;\n flex-wrap: wrap-reverse; }\n @media only screen and (min-width: 768px) {\n .ec-displayD {\n box-sizing: border-box;\n flex-wrap: nowrap; } }\n .ec-displayD .ec-displayD__cell {\n width: 30%;\n margin-bottom: 8px; }\n .ec-displayD .ec-displayD__cell a {\n color: inherit;\n text-decoration: none; }\n .ec-displayD .ec-displayD__cell a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-displayD .ec-displayD__cell {\n width: 14.3083%;\n margin-bottom: 16px; } }\n .ec-displayD .ec-displayD__cell:hover {\n text-decoration: none; }\n .ec-displayD .ec-displayD__cell:hover img {\n opacity: .8; }\n .ec-displayD .ec-displayD__img {\n display: block;\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n検索・一覧表示\n\n検索欄や、一覧表示に使用するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.2\n*/\n/*\nトピックパス\n\n検索結果で表示されるトピックパスのスタイルです。\n\nex [商品一覧ページ 横並びリスト部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-topicpath\n\nStyleguide 7.2.1\n*/\n.ec-topicpath {\n letter-spacing: -.4em;\n -webkit-margin-before: 0;\n -webkit-margin-after: 0;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n -webkit-padding-start: 0;\n border-top: 1px solid #ccc;\n border-bottom: 1px dotted #ccc;\n padding: 10px;\n list-style: none;\n overflow: hidden;\n font-size: 12px;\n color: #0092C4; }\n @media only screen and (min-width: 768px) {\n .ec-topicpath {\n padding: 30px 0 10px;\n border: 0;\n font-size: 16px; } }\n .ec-topicpath .ec-topicpath__item a {\n color: inherit;\n text-decoration: none; }\n .ec-topicpath .ec-topicpath__item a:hover {\n text-decoration: none; }\n .ec-topicpath .ec-topicpath__divider {\n color: #000; }\n .ec-topicpath .ec-topicpath__item,\n .ec-topicpath .ec-topicpath__divider,\n .ec-topicpath .ec-topicpath__item--active {\n display: inline-block;\n min-width: 16px;\n text-align: center;\n position: relative;\n letter-spacing: normal; }\n .ec-topicpath .ec-topicpath__item--active {\n font-weight: bold; }\n .ec-topicpath .ec-topicpath__item--active a {\n color: inherit;\n text-decoration: none; }\n .ec-topicpath .ec-topicpath__item--active a:hover {\n text-decoration: none; }\n\n/*\nページャ\n\n検索結果で表示される商品一覧のスタイルです。\n\nex [商品一覧ページ ページャ部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-pager\n\nStyleguide 7.2.2\n*/\n.ec-pager {\n list-style: none;\n list-style-type: none;\n margin: 0 auto;\n padding: 1em 0;\n text-align: center; }\n .ec-pager .ec-pager__item,\n .ec-pager .ec-pager__item--active {\n display: inline-block;\n min-width: 29px;\n padding: 0 3px 0 2px;\n text-align: center;\n position: relative; }\n .ec-pager .ec-pager__item a,\n .ec-pager .ec-pager__item--active a {\n color: inherit;\n text-decoration: none; }\n .ec-pager .ec-pager__item a:hover,\n .ec-pager .ec-pager__item--active a:hover {\n text-decoration: none; }\n .ec-pager .ec-pager__item a,\n .ec-pager .ec-pager__item--active a {\n color: inherit;\n display: block;\n line-height: 1.8;\n padding: 5px 1em;\n text-decoration: none; }\n .ec-pager .ec-pager__item a:hover,\n .ec-pager .ec-pager__item--active a:hover {\n color: inherit; }\n .ec-pager .ec-pager__item--active {\n background: #F3F3F3; }\n .ec-pager .ec-pager__item:hover {\n background: #F3F3F3; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n visibility: hidden; }\n 100% {\n opacity: 1;\n visibility: visible; } }\n\n@keyframes fadeOut {\n 0% {\n opacity: 1;\n visibility: visible; }\n 100% {\n opacity: 0;\n visibility: hidden; } }\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1; }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nカート\n\nショッピングカートに関するスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.3\n*/\n/*\nカートヘッダ\n\n購入完了までの手順や、現在の状態を表示します。\n\nul 要素を用いたリスト要素としてマークアップします。\n\nex [カートページ ヘッダ部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-progress\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.3.1\n*/\n.ec-progress {\n margin: 0 auto;\n padding: 8px 0 16px;\n display: table;\n table-layout: fixed;\n width: 100%;\n max-width: 600px;\n list-style: none; }\n @media only screen and (min-width: 768px) {\n .ec-progress {\n margin-bottom: 30px;\n padding: 0; } }\n .ec-progress .ec-progress__item {\n display: table-cell;\n position: relative;\n font-size: 14px;\n text-align: center;\n font-weight: bold;\n z-index: 10; }\n .ec-progress .ec-progress__item:after {\n content: '';\n position: absolute;\n display: block;\n background: #525263;\n width: 100%;\n height: 0.25em;\n top: 1.25em;\n left: 50%;\n margin-left: 1.5em\\9;\n z-index: -1; }\n .ec-progress .ec-progress__item:last-child:after {\n display: none; }\n .ec-progress .ec-progress__number {\n line-height: 30px;\n width: 30px;\n height: 30px;\n margin-bottom: 5px;\n font-size: 12px;\n background: #525263;\n color: #fff;\n top: 0;\n left: 18px;\n display: inline-block;\n text-align: center;\n vertical-align: middle;\n border-radius: 50%; }\n @media only screen and (min-width: 768px) {\n .ec-progress .ec-progress__number {\n line-height: 42px;\n width: 42px;\n height: 42px;\n font-size: 20px; } }\n .ec-progress .ec-progress__label {\n font-size: 12px; }\n .ec-progress .is-complete .ec-progress__number {\n background: #5CB1B1; }\n .ec-progress .is-complete .ec-progress__label {\n color: #5CB1B1; }\n\n/*\nカートナビゲーション\n\nカートナビゲーションを表示します。 カートに追加された商品の個数も表示します。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerCart\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.5\n*/\n@media only screen and (min-width: 768px) {\n .ec-cartNaviWrap {\n position: relative; } }\n\n.ec-cartNavi {\n display: inline-block;\n padding: 10px 0 0 20px;\n width: auto;\n color: black;\n background: transparent; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi {\n display: flex;\n justify-content: space-between;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 12px 17px 10px;\n width: auto;\n min-width: 140px;\n height: 44px;\n white-space: nowrap;\n cursor: pointer;\n background: #F8F8F8; } }\n .ec-cartNavi .ec-cartNavi__icon {\n display: inline-block;\n font-size: 20px;\n display: inline-block;\n opacity: 1;\n visibility: visible;\n animation: fadeIn 200ms linear 0s;\n position: relative; }\n .ec-cartNavi .ec-cartNavi__badge {\n display: inline-block;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 5px;\n height: 17px;\n font-size: 10px;\n line-height: 0.7;\n vertical-align: top;\n color: #fff;\n text-align: left;\n white-space: nowrap;\n background-color: #DE5D50;\n position: absolute;\n left: 60%;\n top: -10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi .ec-cartNavi__badge {\n display: inline-block;\n min-width: 17px;\n position: relative;\n left: 0;\n top: 0; } }\n .ec-cartNavi .ec-cartNavi__price {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi .ec-cartNavi__price {\n display: inline-block;\n font-size: 14px;\n font-weight: normal;\n vertical-align: middle; } }\n\n.ec-cartNavi.is-active .ec-cartNavi__icon:before {\n content: \"\\f00d\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900; }\n\n.ec-cartNavi.is-active .ec-cartNavi__badge {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi.is-active .ec-cartNavi__badge {\n display: none; } }\n\n/*\nカートナビゲーションのポップアップ(商品詳細)\n\nカートナビゲーションのポップアップを表示します。カートに追加された商品の詳細が表示されます。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:350px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='close')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n +b.ec-cartNaviIsset\n +e.cart\n +e.cartImage\n img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n +e.cartContent\n +e.cartContentTitle ミニテーブル\n +e.cartContentPrice ¥ 12,960\n +e.cartContentTax 税込\n +e.cartContentNumber 数量:1\n +e.action\n a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n a.ec-blockBtn.ec-cartNavi--cancel キャンセル\n\nStyleguide 7.3.6\n*/\n.ec-cartNaviIsset {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 20;\n position: absolute;\n right: 0; }\n @media only screen and (min-width: 768px) {\n .ec-cartNaviIsset {\n margin-top: 10px;\n min-width: 256px;\n max-width: 256px; }\n .ec-cartNaviIsset::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px; } }\n .ec-cartNaviIsset .ec-cartNaviIsset__cart {\n border-bottom: 1px solid #E8E8E8;\n margin-bottom: 16px;\n padding-bottom: 32px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cart:after {\n content: \" \";\n display: table; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cart:after {\n clear: both; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartImage {\n float: left;\n width: 45%; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartImage img {\n width: 100%; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContent {\n float: right;\n width: 55%;\n padding-left: 16px;\n text-align: left;\n box-sizing: border-box; }\n .ec-cartNaviIsset .ec-cartNaviIsset__action .ec-blockBtn--action {\n color: #fff;\n margin-bottom: 8px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentTitle {\n margin-bottom: 8px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentPrice {\n font-weight: bold; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentTax {\n display: inline-block;\n font-size: 12px;\n font-weight: normal;\n margin-left: 2px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentNumber {\n font-size: 14px; }\n\n.ec-cartNaviIsset.is-active {\n display: block; }\n\n/*\nカートナビゲーションのポップアップ(商品なし)\n\nカートナビゲーションのポップアップを表示します。商品が登録されていない場合の表示です。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:170px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='cart')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n .ec-cartNaviNull\n .ec-cartNaviNull__message\n p 現在カート内に\n br\n | 商品がございません。\n //+b.ec-cartNaviIsset\n // +e.cart\n // +e.cartImage\n // img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n // +e.cartContent\n // +e.cartContentTitle ミニテーブル\n // +e.cartContentPrice ¥ 12,960\n // +e.cartContentTax 税込\n // +e.cartContentNumber 数量:1\n // +e.action\n // a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n // a.ec-blockBtn キャンセル\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.7\n*/\n.ec-cartNaviNull {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 3;\n position: absolute;\n right: 0; }\n @media only screen and (min-width: 768px) {\n .ec-cartNaviNull {\n margin-top: 10px;\n min-width: 256px;\n max-width: 256px; }\n .ec-cartNaviNull::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px; } }\n .ec-cartNaviNull .ec-cartNaviNull__message {\n border: 1px solid #D9D9D9;\n padding: 16px 0;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n background-color: #F99; }\n .ec-cartNaviNull .ec-cartNaviNull__message p {\n margin: 0; }\n\n.ec-cartNaviNull.is-active {\n display: block; }\n\n/*\n総計\n\n会計時の合計金額、総計を表示します。\n\nex [カートページ 統計部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-totalBox\n\nStyleguide 7.3.8\n*/\n.ec-totalBox {\n background: #F3F3F3;\n padding: 16px;\n margin-bottom: 16px; }\n .ec-totalBox .ec-totalBox__spec {\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: space-between;\n justify-content: space-between;\n -ms-flex-pack: space-between;\n margin-bottom: 8px; }\n .ec-totalBox .ec-totalBox__spec dt {\n font-weight: normal;\n text-align: left; }\n .ec-totalBox .ec-totalBox__spec dd {\n text-align: right; }\n .ec-totalBox .ec-totalBox__spec .ec-totalBox .ec-totalBox__spec__specTotal {\n color: #DE5D50; }\n .ec-totalBox .ec-totalBox__total {\n border-top: 1px dotted #ccc;\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight: bold; }\n .ec-totalBox .ec-totalBox__paymentTotal {\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight: bold; }\n .ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__price,\n .ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__taxLabel {\n color: #DE5D50; }\n .ec-totalBox .ec-totalBox__price {\n margin-left: 16px;\n font-size: 16px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-totalBox .ec-totalBox__price {\n font-size: 24px; } }\n .ec-totalBox .ec-totalBox__taxLabel {\n margin-left: 8px;\n font-size: 12px; }\n @media only screen and (min-width: 768px) {\n .ec-totalBox .ec-totalBox__taxLabel {\n font-size: 14px; } }\n .ec-totalBox .ec-totalBox__taxRate {\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: flex-end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n margin-bottom: 8px;\n font-size: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-totalBox .ec-totalBox__taxRate {\n font-size: 12px; } }\n .ec-totalBox .ec-totalBox__taxRate dt {\n font-weight: normal;\n text-align: left;\n margin-right: 8px; }\n .ec-totalBox .ec-totalBox__taxRate dt::before {\n content: \"[ \"; }\n .ec-totalBox .ec-totalBox__taxRate dd {\n text-align: right; }\n .ec-totalBox .ec-totalBox__taxRate dd::after {\n content: \" ]\"; }\n .ec-totalBox .ec-totalBox__pointBlock {\n padding: 18px 20px 10px;\n margin-bottom: 10px;\n background: #fff; }\n .ec-totalBox .ec-totalBox__btn {\n color: #fff; }\n .ec-totalBox .ec-totalBox__btn a {\n color: inherit;\n text-decoration: none; }\n .ec-totalBox .ec-totalBox__btn a:hover {\n text-decoration: none; }\n .ec-totalBox .ec-totalBox__btn .ec-blockBtn--action {\n font-size: 16px;\n font-weight: bold; }\n .ec-totalBox .ec-totalBox__btn .ec-blockBtn--cancel {\n margin-top: 8px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nお知らせ\n\n新着情報やバナーなどの掲載項目を紹介していきます。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 8.1\n*/\n/*\n新着情報\n\n新着情報の掲載をします。\n\nex [トップページ 新着情報部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+ec-news\n\nStyleguide 8.1.1\n*/\n.ec-news {\n margin-bottom: 16px;\n background: #F8F8F8; }\n @media only screen and (min-width: 768px) {\n .ec-news {\n margin-right: 3%; } }\n @media only screen and (min-width: 768px) {\n .ec-news {\n margin-bottom: 32px; } }\n .ec-news .ec-news__title {\n font-weight: bold;\n padding: 8px;\n font-size: 16px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-news .ec-news__title {\n padding: 16px;\n text-align: left;\n font-size: 24px; } }\n .ec-news .ec-news__items {\n padding: 0;\n list-style: none;\n border-top: 1px dotted #ccc; }\n\n/*\n折りたたみ項目\n\n折りたたみ項目を掲載します。\n\nex [トップページ 折りたたみ項目部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+b.ec-news\n +e.title 新着情報\n +e.UL.items\n +e.LI.item\n +b.ec-newsline.is_active\n +e.info\n +e.date 2016/09/29\n +e.comment サイトオープンしました\n +e.close\n a.ec-closeBtn--circle\n span.ec-closeBtn--circle__icon\n .ec-icon\n img(src='/moc/icon/angle-down-white.svg', alt='')\n +e.description 一人暮らしからオフィスなどさまざまなシーンで あなたの生活をサポートするグッズをご家庭へお届けします!\n\nStyleguide 8.1.2\n*/\n.ec-newsline {\n display: flex;\n flex-wrap: wrap;\n overflow: hidden;\n padding: 0 16px; }\n .ec-newsline .ec-newsline__info {\n width: 100%;\n padding: 16px 0; }\n .ec-newsline .ec-newsline__info:after {\n content: \" \";\n display: table; }\n .ec-newsline .ec-newsline__info:after {\n clear: both; }\n .ec-newsline .ec-newsline__date {\n display: inline-block;\n margin-right: 10px;\n float: left; }\n .ec-newsline .ec-newsline__comment {\n display: inline-block;\n float: left; }\n .ec-newsline .ec-newsline__close {\n float: right;\n display: inline-block;\n text-align: right; }\n .ec-newsline .ec-newsline__close .ec-closeBtn--circle {\n display: inline-block;\n width: 25px;\n height: 25px;\n min-width: 25px;\n min-height: 25px; }\n .ec-newsline .ec-newsline__description {\n width: 100%;\n height: 0;\n transition: all .2s ease-out; }\n .ec-newsline.is_active .ec-newsline__description {\n height: auto;\n transition: all .2s ease-out;\n padding-bottom: 16px; }\n .ec-newsline.is_active .ec-icon img {\n transform: rotateX(180deg); }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nマイページ\n\nマイページで利用するためのスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 9.1\n*/\n/*\nマイページ\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist\n\nStyleguide 9.1.1\n*/\n.ec-navlistRole .ec-navlistRole__navlist {\n display: flex;\n flex-wrap: wrap;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 1px 0 0 1px;\n margin-bottom: 32px;\n padding: 0;\n list-style: none; }\n .ec-navlistRole .ec-navlistRole__navlist a {\n color: inherit;\n text-decoration: none; }\n .ec-navlistRole .ec-navlistRole__navlist a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-navlistRole .ec-navlistRole__navlist {\n flex-wrap: nowrap; } }\n\n.ec-navlistRole .ec-navlistRole__item {\n width: 50%;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 0 1px 1px 0;\n text-align: center;\n font-weight: bold; }\n .ec-navlistRole .ec-navlistRole__item a {\n padding: 16px;\n width: 100%;\n display: inline-block; }\n .ec-navlistRole .ec-navlistRole__item a:hover {\n background: #f5f7f8; }\n\n.ec-navlistRole .active a {\n color: #DE5D50; }\n\n/*\nマイページ(お気に入り機能無効)\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist_noFavorite\n\nStyleguide 9.1.2\n*/\n/*\nWelcome メッセージ\n\nマイページで表示するログイン名の表示コンポーネントです。\n\nex [マイページ メニューリスト下部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-welcomeMsg\n\nStyleguide 9.1.3\n*/\n.ec-welcomeMsg {\n margin-right: auto;\n margin-left: auto;\n padding-left: 16px;\n padding-right: 16px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n margin: 1em 0;\n padding-bottom: 32px;\n text-align: center;\n border-bottom: 1px dotted #ccc; }\n .ec-welcomeMsg:after {\n content: \" \";\n display: table; }\n .ec-welcomeMsg:after {\n clear: both; }\n .ec-welcomeMsg textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-welcomeMsg img {\n max-width: 100%; }\n .ec-welcomeMsg html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-welcomeMsg *,\n .ec-welcomeMsg *::before,\n .ec-welcomeMsg *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-welcomeMsg img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-welcomeMsg {\n padding-left: 26px;\n padding-right: 26px; } }\n\n/*\nお気に入り一覧\n\nお気に入り一覧で表示するアイテムの表示コンポーネントです。\n\nex [マイページ お気に入り一覧](http://demo3.ec-cube.net/mypage/favorite)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-favorite\n\nStyleguide 9.1.4\n*/\n.ec-favoriteRole .ec-favoriteRole__header {\n margin-bottom: 16px; }\n\n.ec-favoriteRole .ec-favoriteRole__itemList {\n display: flex;\n flex-wrap: wrap;\n padding: 0;\n list-style: none; }\n .ec-favoriteRole .ec-favoriteRole__itemList a {\n color: inherit;\n text-decoration: none; }\n .ec-favoriteRole .ec-favoriteRole__itemList a:hover {\n text-decoration: none; }\n\n.ec-favoriteRole .ec-favoriteRole__item {\n margin-bottom: 8px;\n width: 47.5%;\n position: relative;\n box-sizing: border-box;\n padding: 10px; }\n .ec-favoriteRole .ec-favoriteRole__item-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-favoriteRole .ec-favoriteRole__item-image {\n height: 250px; } }\n .ec-favoriteRole .ec-favoriteRole__item img {\n width: auto;\n max-height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-favoriteRole .ec-favoriteRole__item {\n width: 25%; } }\n .ec-favoriteRole .ec-favoriteRole__item .ec-closeBtn--circle {\n position: absolute;\n right: 10px;\n top: 10px; }\n .ec-favoriteRole .ec-favoriteRole__item .ec-closeBtn--circle .ec-icon img {\n width: 1em;\n height: 1em; }\n\n.ec-favoriteRole .ec-favoriteRole__itemThumb {\n display: block;\n height: auto;\n margin-bottom: 8px; }\n\n.ec-favoriteRole .ec-favoriteRole__itemTitle {\n margin-bottom: 2px; }\n\n.ec-favoriteRole .ec-favoriteRole__itemPrice {\n font-weight: bold;\n margin-bottom: 0; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n標準セクション\n\n通常のコンテナブロックです。\n\nex [商品詳細ページ コンテナ](http://demo3.ec-cube.net/products/detail/33)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-roleRole\n\nStyleguide 11.1\n*/\n.ec-role {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-role:after {\n content: \" \";\n display: table; }\n .ec-role:after {\n clear: both; }\n .ec-role textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-role img {\n max-width: 100%; }\n .ec-role html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-role *,\n .ec-role *::before,\n .ec-role *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-role img {\n width: 100%; }\n\n/*\nマイページセクション\n\nマイページ専用のコンテナブロックです。\n\nex [マイページ コンテナ](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-mypageRole\n\nStyleguide 11.1.2\n*/\n.ec-mypageRole {\n margin-right: auto;\n margin-left: auto;\n padding-left: 16px;\n padding-right: 16px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%; }\n .ec-mypageRole:after {\n content: \" \";\n display: table; }\n .ec-mypageRole:after {\n clear: both; }\n .ec-mypageRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-mypageRole img {\n max-width: 100%; }\n .ec-mypageRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-mypageRole *,\n .ec-mypageRole *::before,\n .ec-mypageRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-mypageRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-mypageRole {\n padding-left: 26px;\n padding-right: 26px; } }\n @media only screen and (min-width: 768px) {\n .ec-mypageRole .ec-pageHeader h1 {\n margin: 10px 0 48px;\n padding: 8px 0 18px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n visibility: hidden; }\n 100% {\n opacity: 1;\n visibility: visible; } }\n\n@keyframes fadeOut {\n 0% {\n opacity: 1;\n visibility: visible; }\n 100% {\n opacity: 0;\n visibility: hidden; } }\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1; }\n\n/*\nヘッダー\n\nヘッダー用のプロジェクトコンポーネントを提供します。\n\nex [トップページ ヘッダー](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+b.ec-layoutRole\n +e.header\n +ec-headerRole\n +ec-headerNaviRole\n +ec-categoryNaviRole\n\nStyleguide 11.2\n*/\n.ec-layoutRole {\n width: 100%;\n transition: transform 0.3s;\n background: #fff; }\n .ec-layoutRole .ec-layoutRole__contentTop {\n padding: 0; }\n .ec-layoutRole .ec-layoutRole__contents {\n margin-right: auto;\n margin-left: auto;\n width: 100%;\n max-width: 1150px;\n display: flex;\n flex-wrap: nowrap; }\n .ec-layoutRole .ec-layoutRole__main {\n width: 100%; }\n .ec-layoutRole .ec-layoutRole__mainWithColumn {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-layoutRole .ec-layoutRole__mainWithColumn {\n width: 75%; } }\n .ec-layoutRole .ec-layoutRole__mainBetweenColumn {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-layoutRole .ec-layoutRole__mainBetweenColumn {\n width: 50%; } }\n .ec-layoutRole .ec-layoutRole__left,\n .ec-layoutRole .ec-layoutRole__right {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-layoutRole .ec-layoutRole__left,\n .ec-layoutRole .ec-layoutRole__right {\n display: block;\n width: 25%; } }\n\n.ec-headerRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n padding-top: 15px;\n position: relative;\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n width: auto; }\n .ec-headerRole:after {\n content: \" \";\n display: table; }\n .ec-headerRole:after {\n clear: both; }\n .ec-headerRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-headerRole img {\n max-width: 100%; }\n .ec-headerRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-headerRole *,\n .ec-headerRole *::before,\n .ec-headerRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-headerRole img {\n width: 100%; }\n .ec-headerRole:after {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerRole:after {\n content: \" \";\n display: table; }\n .ec-headerRole:after {\n clear: both; } }\n .ec-headerRole::before {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerRole {\n width: 100%; }\n .ec-headerRole:after {\n content: \" \";\n display: table; }\n .ec-headerRole:after {\n clear: both; } }\n .ec-headerRole .ec-headerRole__title {\n width: 100%; }\n .ec-headerRole .ec-headerRole__navSP {\n display: block;\n position: absolute;\n top: 15px;\n width: 27%;\n right: 0;\n text-align: right; }\n @media only screen and (min-width: 768px) {\n .ec-headerRole .ec-headerRole__navSP {\n display: none; } }\n\n.ec-headerNaviRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-top: 15px; }\n .ec-headerNaviRole:after {\n content: \" \";\n display: table; }\n .ec-headerNaviRole:after {\n clear: both; }\n .ec-headerNaviRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-headerNaviRole img {\n max-width: 100%; }\n .ec-headerNaviRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-headerNaviRole *,\n .ec-headerNaviRole *::before,\n .ec-headerNaviRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-headerNaviRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-headerNaviRole {\n padding-bottom: 40px; } }\n .ec-headerNaviRole .ec-headerNaviRole__left {\n width: calc(100% / 3); }\n .ec-headerNaviRole .ec-headerNaviRole__search {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerNaviRole .ec-headerNaviRole__search {\n display: inline-block;\n margin-top: 10px; }\n .ec-headerNaviRole .ec-headerNaviRole__search a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__search a:hover {\n text-decoration: none; } }\n .ec-headerNaviRole .ec-headerNaviRole__navSP {\n display: block; }\n @media only screen and (min-width: 768px) {\n .ec-headerNaviRole .ec-headerNaviRole__navSP {\n display: none; }\n .ec-headerNaviRole .ec-headerNaviRole__navSP a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__navSP a:hover {\n text-decoration: none; } }\n .ec-headerNaviRole .ec-headerNaviRole__right {\n width: calc(100% * 2 / 3);\n display: flex;\n justify-content: flex-end;\n align-items: center; }\n .ec-headerNaviRole .ec-headerNaviRole__nav {\n display: inline-block; }\n .ec-headerNaviRole .ec-headerNaviRole__nav a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__nav a:hover {\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__cart {\n display: inline-block; }\n .ec-headerNaviRole .ec-headerNaviRole__cart a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__cart a:hover {\n text-decoration: none; }\n\n.ec-headerNavSP {\n display: block;\n cursor: pointer;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 10px;\n z-index: 1000; }\n .ec-headerNavSP .fas {\n vertical-align: top; }\n @media only screen and (min-width: 768px) {\n .ec-headerNavSP {\n display: none; } }\n\n.ec-headerNavSP.is-active {\n display: none; }\n\n/*\nヘッダー:タイトル\n\nヘッダー内で使用されるタイトルコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerTitle\n\nStyleguide 11.2.1\n*/\n.ec-headerTitle {\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%; }\n .ec-headerTitle textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-headerTitle img {\n max-width: 100%; }\n .ec-headerTitle html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-headerTitle *,\n .ec-headerTitle *::before,\n .ec-headerTitle *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-headerTitle img {\n width: 100%; }\n .ec-headerTitle .ec-headerTitle__title {\n text-align: center; }\n .ec-headerTitle .ec-headerTitle__title h1 {\n margin: 0;\n padding: 0; }\n .ec-headerTitle .ec-headerTitle__title a {\n display: inline-block;\n margin-bottom: 30px;\n text-decoration: none;\n font-size: 20px;\n font-weight: bold;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-headerTitle .ec-headerTitle__title a {\n font-size: 40px; } }\n .ec-headerTitle .ec-headerTitle__title a:hover {\n opacity: .8; }\n .ec-headerTitle .ec-headerTitle__subtitle {\n font-size: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-headerTitle .ec-headerTitle__subtitle {\n font-size: 16px;\n margin-bottom: 10px; } }\n .ec-headerTitle .ec-headerTitle__subtitle a {\n display: inline-block;\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n\n/*\nヘッダー:ユーザナビゲーション\n\nヘッダー内でユーザに関与するナビゲーションコンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__nav`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.3\n*/\n.ec-headerNav {\n text-align: right; }\n .ec-headerNav .ec-headerNav__item {\n margin-left: 0;\n display: inline-block;\n font-size: 28px; }\n .ec-headerNav .ec-headerNav__itemIcon {\n display: inline-block;\n margin-right: 10px;\n margin-left: 10px;\n font-size: 18px;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-headerNav .ec-headerNav__itemIcon {\n margin-right: 0;\n font-size: 20px; } }\n .ec-headerNav .ec-headerNav__itemLink {\n display: none;\n margin-right: 5px;\n font-size: 14px;\n vertical-align: middle;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-headerNav .ec-headerNav__itemLink {\n display: inline-block; } }\n\n/*\nヘッダー:検索ボックス\n\nヘッダー内で使用される商品検索コンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__search`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerSearch\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.4\n*/\n.ec-headerSearch:after {\n content: \" \";\n display: table; }\n\n.ec-headerSearch:after {\n clear: both; }\n\n.ec-headerSearch .ec-headerSearch__category {\n float: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__category {\n float: left;\n width: 43%; } }\n .ec-headerSearch .ec-headerSearch__category .ec-select {\n overflow: hidden;\n width: 100%;\n margin: 0;\n text-align: center; }\n .ec-headerSearch .ec-headerSearch__category .ec-select select {\n width: 100%;\n cursor: pointer;\n padding: 8px 24px 8px 8px;\n text-indent: 0.01px;\n text-overflow: ellipsis;\n border: none;\n outline: none;\n background: transparent;\n background-image: none;\n box-shadow: none;\n appearance: none;\n color: #fff; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__category .ec-select select {\n max-width: 165px;\n height: 36px; } }\n .ec-headerSearch .ec-headerSearch__category .ec-select select option {\n color: #000; }\n .ec-headerSearch .ec-headerSearch__category .ec-select select::-ms-expand {\n display: none; }\n .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {\n position: relative;\n border: 0;\n background: #000;\n color: #fff;\n border-top-right-radius: 10px;\n border-top-left-radius: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {\n border-top-right-radius: inherit;\n border-top-left-radius: 50px;\n border-bottom-left-radius: 50px; } }\n .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search::before {\n position: absolute;\n top: 0.8em;\n right: 0.4em;\n width: 0;\n height: 0;\n padding: 0;\n content: '';\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid #fff;\n pointer-events: none; }\n\n.ec-headerSearch .ec-headerSearch__keyword {\n position: relative;\n color: #525263;\n border: 1px solid #ccc;\n background-color: #f6f6f6;\n border-bottom-right-radius: 10px;\n border-bottom-left-radius: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__keyword {\n float: right;\n width: 57%;\n border-bottom-left-radius: inherit;\n border-top-right-radius: 50px;\n border-bottom-right-radius: 50px; } }\n .ec-headerSearch .ec-headerSearch__keyword input[type=\"search\"] {\n width: 100%;\n height: 34px;\n font-size: 1.2rem;\n border: 0 none;\n padding: 0.5em 50px 0.5em 1em;\n box-shadow: none;\n background: none;\n box-sizing: border-box;\n margin-bottom: 0; }\n .ec-headerSearch .ec-headerSearch__keyword .ec-icon {\n width: 22px;\n height: 22px; }\n\n.ec-headerSearch .ec-headerSearch__keywordBtn {\n border: 0;\n background: none;\n position: absolute;\n right: 5px;\n top: 50%;\n transform: translateY(-55%);\n display: block;\n white-space: nowrap;\n z-index: 1; }\n\n/*\nヘッダー:カテゴリナビ\n\nヘッダー内で使用されている商品のカテゴリ一覧として使用します。\n`li`の中に`ul > li`要素を入れることで、階層を深くする事ができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+ec-itemNav\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 11.2.5\n*/\n.ec-categoryNaviRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: none; }\n .ec-categoryNaviRole:after {\n content: \" \";\n display: table; }\n .ec-categoryNaviRole:after {\n clear: both; }\n .ec-categoryNaviRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-categoryNaviRole img {\n max-width: 100%; }\n .ec-categoryNaviRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-categoryNaviRole *,\n .ec-categoryNaviRole *::before,\n .ec-categoryNaviRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-categoryNaviRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-categoryNaviRole {\n display: block;\n width: 100%; }\n .ec-categoryNaviRole a {\n color: inherit;\n text-decoration: none; }\n .ec-categoryNaviRole a:hover {\n text-decoration: none; } }\n\n.ec-itemNav {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n text-align: center; }\n\n.ec-itemNav__nav {\n display: block;\n margin: 0 auto;\n padding: 0;\n width: auto;\n height: auto;\n list-style-type: none;\n text-align: center;\n vertical-align: bottom; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav {\n display: inline-block; } }\n\n.ec-itemNav__nav li {\n float: none;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: center;\n position: relative; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li {\n float: left;\n width: auto; } }\n\n.ec-itemNav__nav li a {\n display: block;\n border-bottom: 1px solid #E8E8E8;\n margin: 0;\n padding: 16px;\n height: auto;\n color: #2e3233;\n font-size: 16px;\n font-weight: bold;\n line-height: 20px;\n text-decoration: none;\n text-align: left;\n background: #fff;\n border-bottom: 1px solid #E8E8E8; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li a {\n text-align: center;\n border-bottom: none; } }\n\n.ec-itemNav__nav li ul {\n display: none;\n z-index: 0;\n margin: 0;\n padding: 0;\n min-width: 200px;\n list-style: none;\n position: static;\n top: 100%;\n left: 0; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul {\n display: block;\n z-index: 100;\n position: absolute; } }\n\n.ec-itemNav__nav li ul li {\n overflow: hidden;\n width: 100%;\n height: auto;\n transition: .3s; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul li {\n overflow: hidden;\n height: 0; } }\n\n.ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #E8E8E8;\n padding: 16px 22px 16px 16px;\n font-size: 16px;\n font-weight: bold;\n color: white;\n text-align: left;\n background: black; }\n\n.ec-itemNav__nav > li:hover > a {\n background: #fafafa; }\n\n.ec-itemNav__nav > li:hover li:hover > a {\n background: #333; }\n\n@media only screen and (min-width: 768px) {\n .ec-itemNav__nav > li:hover > ul > li {\n overflow: visible;\n height: auto; } }\n\n.ec-itemNav__nav li ul li ul {\n top: 0;\n left: 100%;\n width: auto; }\n\n@media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul li ul:before {\n content: \"\\f054\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n font-size: 12px;\n color: white;\n position: absolute;\n top: 19px;\n right: auto;\n left: -20px; } }\n\n@media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul li:hover > ul > li {\n overflow: visible;\n height: auto;\n width: auto; } }\n\n.ec-itemNav__nav li ul li ul li a {\n background: #7D7D7D; }\n\n.ec-itemNav__nav li:hover ul li ul li a:hover {\n background: #333; }\n\n/*\nヘッダー:SPヘッダー\n\nSP時のみ出現するヘッダーに関係するコンポーネントです。
\nex [トップページ](http://demo3.ec-cube.net/)画面サイズが768px以下に該当。
\n
\n`.ec-drawerRole`:SPのドロワー内の要素をwrapするコンポーネントです。
\n`.ec-headerSearch`、`.ec-headerNav`、`.ec-itemNav`は`.ec-drawerRole`の子要素にある場合、ドロワーに適したスタイルに変化します。

\n`.ec-overlayRole`:SPのドロワー出現時にz-indexがドロワー以下の要素に半透明の黒背景をかぶせるコンポーネントです。
\n\nStyleguide 11.2.6\n*/\n.ec-drawerRole {\n overflow-y: scroll;\n background: black;\n width: 260px;\n height: 100vh;\n transform: translateX(-300px);\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1;\n transition: z-index 0ms 1ms; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRole {\n display: none; } }\n .ec-drawerRole .ec-headerSearchArea {\n padding: 20px 10px;\n width: 100%;\n background: #F8F8F8; }\n .ec-drawerRole .ec-headerSearch {\n padding: 16px 8px 26px;\n background: #EBEBEB;\n color: #636378; }\n .ec-drawerRole .ec-headerSearch select {\n width: 100% !important; }\n .ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading {\n border-top: 1px solid #CCCCCC;\n border-bottom: 1px solid #CCCCCC;\n padding: 1em 10px;\n font-size: 16px;\n font-weight: bold;\n color: black;\n background: #F8F8F8; }\n .ec-drawerRole .ec-headerCategoryArea p {\n margin-top: 0;\n margin-bottom: 0; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li a {\n border-bottom: 1px solid #ccc;\n border-bottom: 1px solid #ccc;\n color: black;\n font-weight: normal;\n background: #f8f8f8; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #ccc;\n padding-left: 20px;\n font-weight: normal;\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav > li:hover > a {\n background: #f8f8f8; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav > li:hover li:hover > a {\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li ul li a {\n padding-left: 40px;\n color: black;\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li:hover ul li ul li a:hover {\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li ul li ul li a {\n padding-left: 60px;\n font-weight: normal; }\n .ec-drawerRole .ec-headerLinkArea {\n background: black; }\n .ec-drawerRole .ec-headerLinkArea .ec-headerLink__list {\n border-top: 1px solid #ccc; }\n .ec-drawerRole .ec-headerLinkArea .ec-headerLink__item {\n display: block;\n border-bottom: 1px solid #ccc;\n padding: 15px 20px;\n font-size: 16px;\n font-weight: bold;\n color: white; }\n .ec-drawerRole .ec-headerLinkArea .ec-headerLink__icon {\n display: inline-block;\n width: 28px;\n font-size: 17px; }\n\n.ec-drawerRoleClose {\n display: none;\n cursor: pointer;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 270px;\n z-index: 1000; }\n .ec-drawerRoleClose .fas {\n vertical-align: top; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRoleClose {\n display: none; } }\n\n.ec-drawerRole.is_active {\n display: block;\n transform: translateX(0);\n transition: all .3s;\n z-index: 100000; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRole.is_active {\n display: none; } }\n\n.ec-drawerRoleClose.is_active {\n display: inline-block;\n transition: all .3s; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRoleClose.is_active {\n display: none; } }\n\n.ec-overlayRole {\n position: fixed;\n width: 100%;\n height: 100vh;\n top: 0;\n left: 0;\n opacity: 0;\n background: transparent;\n transform: translateX(0);\n transition: all .3s;\n visibility: hidden; }\n @media only screen and (min-width: 768px) {\n .ec-overlayRole {\n display: none; } }\n\n.have_curtain .ec-overlayRole {\n display: block;\n opacity: 1;\n background: rgba(0, 0, 0, 0.5);\n visibility: visible; }\n @media only screen and (min-width: 768px) {\n .have_curtain .ec-overlayRole {\n display: none; } }\n\n/*\nヘッダー:test\n\ntest\n\nMarkup:\nspan.ec-itemAccordionParent test1\nul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test2\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test3\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test4\n\nStyleguide 11.2.7\n*/\n.ec-itemNavAccordion {\n display: none; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nフッター\n\n全ページで使用されるフッターのプロジェクトコンポーネントです。\n\nex [トップページ フッター](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerRole\n\nStyleguide 11.3\n*/\n.ec-footerRole {\n border-top: 1px solid #7d7d7d;\n margin-top: 30px;\n background: black; }\n @media only screen and (min-width: 768px) {\n .ec-footerRole {\n padding-top: 40px;\n margin-top: 100px; } }\n @media only screen and (min-width: 768px) {\n .ec-footerRole .ec-footerRole__inner {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-footerRole .ec-footerRole__inner:after {\n content: \" \";\n display: table; }\n .ec-footerRole .ec-footerRole__inner:after {\n clear: both; }\n .ec-footerRole .ec-footerRole__inner textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-footerRole .ec-footerRole__inner img {\n max-width: 100%; }\n .ec-footerRole .ec-footerRole__inner html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-footerRole .ec-footerRole__inner *,\n .ec-footerRole .ec-footerRole__inner *::before,\n .ec-footerRole .ec-footerRole__inner *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-footerRole .ec-footerRole__inner img {\n width: 100%; } }\n\n/*\nフッターナビ\n\nフッタープロジェクトで使用するナビゲーション用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.1\n*/\n.ec-footerNavi {\n padding: 0;\n color: white;\n list-style: none;\n text-align: center; }\n .ec-footerNavi .ec-footerNavi__link {\n display: block; }\n @media only screen and (min-width: 768px) {\n .ec-footerNavi .ec-footerNavi__link {\n display: inline-block; } }\n .ec-footerNavi .ec-footerNavi__link a {\n display: block;\n border-bottom: 1px solid #7d7d7d;\n padding: 15px 0;\n font-size: 14px;\n color: inherit;\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-footerNavi .ec-footerNavi__link a {\n display: inline-block;\n border-bottom: none;\n margin: 0 10px;\n padding: 0;\n text-decoration: underline; } }\n .ec-footerNavi .ec-footerNavi__link:hover a {\n opacity: .8;\n text-decoration: none; }\n\n/*\nフッタータイトル\n\nフッタープロジェクトで使用するタイトル用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerTitle\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.2\n*/\n.ec-footerTitle {\n padding: 40px 0 60px;\n text-align: center;\n color: white; }\n @media only screen and (min-width: 768px) {\n .ec-footerTitle {\n padding: 50px 0 80px; } }\n .ec-footerTitle .ec-footerTitle__logo {\n display: block;\n margin-bottom: 10px;\n font-weight: bold; }\n .ec-footerTitle .ec-footerTitle__logo a {\n color: inherit;\n text-decoration: none; }\n .ec-footerTitle .ec-footerTitle__logo a:hover {\n text-decoration: none; }\n .ec-footerTitle .ec-footerTitle__logo a {\n font-size: 22px;\n color: inherit; }\n @media only screen and (min-width: 768px) {\n .ec-footerTitle .ec-footerTitle__logo a {\n font-size: 24px; } }\n .ec-footerTitle .ec-footerTitle__logo:hover a {\n opacity: .8;\n text-decoration: none; }\n .ec-footerTitle .ec-footerTitle__copyright {\n font-size: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-footerTitle .ec-footerTitle__copyright {\n font-size: 12px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nトップページ\n\nトップページ スライド部に関する Project コンポーネントを定義します。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.1.slider.pug\n+ec-sliderRole\n\nStyleguide 12.1\n*/\n.ec-sliderRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n margin-bottom: 24px; }\n .ec-sliderRole:after {\n content: \" \";\n display: table; }\n .ec-sliderRole:after {\n clear: both; }\n .ec-sliderRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-sliderRole img {\n max-width: 100%; }\n .ec-sliderRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-sliderRole *,\n .ec-sliderRole *::before,\n .ec-sliderRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-sliderRole img {\n width: 100%; }\n .ec-sliderRole ul {\n padding: 0;\n list-style: none; }\n\n.ec-sliderItemRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n margin-bottom: 24px; }\n .ec-sliderItemRole:after {\n content: \" \";\n display: table; }\n .ec-sliderItemRole:after {\n clear: both; }\n .ec-sliderItemRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-sliderItemRole img {\n max-width: 100%; }\n .ec-sliderItemRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-sliderItemRole *,\n .ec-sliderItemRole *::before,\n .ec-sliderItemRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-sliderItemRole img {\n width: 100%; }\n .ec-sliderItemRole ul {\n padding: 0;\n list-style: none; }\n .ec-sliderItemRole .item_nav {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-sliderItemRole .item_nav {\n display: flex;\n justify-content: flex-start;\n flex-wrap: wrap;\n margin-bottom: 0; } }\n .ec-sliderItemRole .slideThumb {\n margin-bottom: 25px;\n width: 33%;\n opacity: .8;\n cursor: pointer; }\n .ec-sliderItemRole .slideThumb:focus {\n outline: none; }\n .ec-sliderItemRole .slideThumb:hover {\n opacity: 1; }\n .ec-sliderItemRole .slideThumb img {\n width: 80%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nアイキャッチ\n\nトップページ アイキャッチ部に関する Project コンポーネントを定義します。\n\nex [トップページスライダー直下 アイキャッチ部](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.2.eyecatch.pug\n+ec-eyecatchRole\n\nStyleguide 12.2\n*/\n.ec-eyecatchRole {\n display: flex;\n flex-wrap: wrap;\n margin-bottom: 40px; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole {\n flex-wrap: nowrap; } }\n .ec-eyecatchRole .ec-eyecatchRole__image {\n display: block;\n margin-bottom: 40px;\n width: 100%;\n height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__image {\n order: 2; } }\n .ec-eyecatchRole .ec-eyecatchRole__intro {\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__intro {\n padding-right: 5%;\n order: 1; } }\n .ec-eyecatchRole .ec-eyecatchRole__introEnTitle {\n margin-bottom: .8em;\n font-size: 16px;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__introEnTitle {\n margin-top: 45px; } }\n .ec-eyecatchRole .ec-eyecatchRole__introTitle {\n margin-bottom: .8em;\n font-size: 24px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__introTitle {\n margin-bottom: 1em;\n font-size: 26px; } }\n .ec-eyecatchRole .ec-eyecatchRole__introDescriptiron {\n margin-bottom: 20px;\n font-size: 16px;\n line-height: 2; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__introDescriptiron {\n margin-bottom: 30px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nボタン\n\nトップページで使用されているボタンのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.3\n*/\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nMarkup:\n.ec-inlineBtn--top more\n\nStyleguide 12.3.1\n*/\n.ec-inlineBtn--top {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:focus, .ec-inlineBtn--top.focus, .ec-inlineBtn--top:active:focus, .ec-inlineBtn--top:active.focus, .ec-inlineBtn--top.active:focus, .ec-inlineBtn--top.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--top:hover, .ec-inlineBtn--top:focus, .ec-inlineBtn--top.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--top:active, .ec-inlineBtn--top.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--top.disabled, .ec-inlineBtn--top[disabled],\n fieldset[disabled] .ec-inlineBtn--top {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--top:focus, .ec-inlineBtn--top.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:hover {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:active, .ec-inlineBtn--top.active,\n .open > .ec-inlineBtn--top.dropdown-toggle {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:active:hover, .ec-inlineBtn--top:active:focus, .ec-inlineBtn--top:active.focus, .ec-inlineBtn--top.active:hover, .ec-inlineBtn--top.active:focus, .ec-inlineBtn--top.active.focus,\n .open > .ec-inlineBtn--top.dropdown-toggle:hover,\n .open > .ec-inlineBtn--top.dropdown-toggle:focus,\n .open > .ec-inlineBtn--top.dropdown-toggle.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:active, .ec-inlineBtn--top.active,\n .open > .ec-inlineBtn--top.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--top.disabled:hover, .ec-inlineBtn--top.disabled:focus, .ec-inlineBtn--top.disabled.focus, .ec-inlineBtn--top[disabled]:hover, .ec-inlineBtn--top[disabled]:focus, .ec-inlineBtn--top[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--top:hover,\n fieldset[disabled] .ec-inlineBtn--top:focus,\n fieldset[disabled] .ec-inlineBtn--top.focus {\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top .badge {\n color: black;\n background-color: white; }\n .ec-inlineBtn--top .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n/*\nロングボタン(全幅)\n\nロングタイプのボタンです。\n\nMarkup:\n.ec-blockBtn--top 商品一覧へ\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn--top {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: white;\n background-color: black;\n border-color: black;\n display: block;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--top:focus, .ec-blockBtn--top.focus, .ec-blockBtn--top:active:focus, .ec-blockBtn--top:active.focus, .ec-blockBtn--top.active:focus, .ec-blockBtn--top.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--top:hover, .ec-blockBtn--top:focus, .ec-blockBtn--top.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--top:active, .ec-blockBtn--top.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--top.disabled, .ec-blockBtn--top[disabled],\n fieldset[disabled] .ec-blockBtn--top {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--top:focus, .ec-blockBtn--top.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:hover {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:active, .ec-blockBtn--top.active,\n .open > .ec-blockBtn--top.dropdown-toggle {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:active:hover, .ec-blockBtn--top:active:focus, .ec-blockBtn--top:active.focus, .ec-blockBtn--top.active:hover, .ec-blockBtn--top.active:focus, .ec-blockBtn--top.active.focus,\n .open > .ec-blockBtn--top.dropdown-toggle:hover,\n .open > .ec-blockBtn--top.dropdown-toggle:focus,\n .open > .ec-blockBtn--top.dropdown-toggle.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:active, .ec-blockBtn--top.active,\n .open > .ec-blockBtn--top.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--top.disabled:hover, .ec-blockBtn--top.disabled:focus, .ec-blockBtn--top.disabled.focus, .ec-blockBtn--top[disabled]:hover, .ec-blockBtn--top[disabled]:focus, .ec-blockBtn--top[disabled].focus,\n fieldset[disabled] .ec-blockBtn--top:hover,\n fieldset[disabled] .ec-blockBtn--top:focus,\n fieldset[disabled] .ec-blockBtn--top.focus {\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top .badge {\n color: black;\n background-color: white; }\n .ec-blockBtn--top .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n @media only screen and (min-width: 768px) {\n .ec-blockBtn--top {\n max-width: 260px; } }\n\n/*\n見出し\n\nトップページで使用されている見出しのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.4\n*/\n/*\n横並び見出し\n\n横並びの見出しです。\n\nMarkup:\n.ec-secHeading\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.1\n*/\n.ec-secHeading {\n margin-bottom: 15px;\n color: black; }\n .ec-secHeading .ec-secHeading__en {\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em; }\n .ec-secHeading .ec-secHeading__line {\n display: inline-block;\n margin: 0 20px;\n width: 1px;\n height: 14px;\n background: black; }\n .ec-secHeading .ec-secHeading__ja {\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px; }\n\n/*\n縦並び見出し\n\n縦並びの見出しです。\n\nMarkup:\n.ec-secHeading--tandem\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.2\n*/\n.ec-secHeading--tandem {\n margin-bottom: 15px;\n color: black;\n text-align: center; }\n .ec-secHeading--tandem .ec-secHeading__en {\n display: block;\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em; }\n .ec-secHeading--tandem .ec-secHeading__line {\n display: block;\n margin: 13px auto;\n width: 20px;\n height: 1px;\n background: black; }\n .ec-secHeading--tandem .ec-secHeading__ja {\n display: block;\n margin-bottom: 30px;\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nトピック(アイテム2列)\n\nトップページで使用されているトピックのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.5.1\n*/\n.ec-topicRole {\n padding: 40px 0;\n background: #F8F8F8; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole {\n padding: 60px 0; } }\n .ec-topicRole .ec-topicRole__list {\n display: flex;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole .ec-topicRole__list {\n flex-wrap: nowrap; } }\n .ec-topicRole .ec-topicRole__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole .ec-topicRole__listItem {\n width: calc(100% / 2); }\n .ec-topicRole .ec-topicRole__listItem:not(:last-of-type) {\n margin-right: 30px; } }\n .ec-topicRole .ec-topicRole__listItemTitle {\n margin-top: .5em;\n font-size: 14px;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole .ec-topicRole__listItemTitle {\n margin-top: 1em; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nカテゴリ(アイテム4列 スマホの時は2列)\n\nトップページで使用されているアイテムリストのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.6.1\n*/\n.ec-newItemRole {\n padding: 40px 0; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole {\n padding: 60px 0; } }\n .ec-newItemRole .ec-newItemRole__list {\n display: flex;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__list {\n flex-wrap: nowrap; } }\n .ec-newItemRole .ec-newItemRole__listItem {\n margin-bottom: 4%;\n width: 48%;\n height: auto; }\n .ec-newItemRole .ec-newItemRole__listItem:not(:first-child) a {\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__listItem {\n margin-bottom: 15px;\n width: calc(100% / 4); }\n .ec-newItemRole .ec-newItemRole__listItem:not(:last-of-type) {\n margin-right: 30px; } }\n .ec-newItemRole .ec-newItemRole__listItem:nth-child(odd) {\n margin-right: 4%; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__listItem:nth-child(odd) {\n margin-right: 30px; } }\n .ec-newItemRole .ec-newItemRole__listItemHeading {\n margin-top: calc(45% - 20px); }\n .ec-newItemRole .ec-newItemRole__listItemTitle {\n margin: 8px 0;\n font-size: 14px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__listItemTitle {\n margin: 20px 0 10px; } }\n .ec-newItemRole .ec-newItemRole__listItemPrice {\n font-size: 12px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nカテゴリ(アイテム3列)\n\nトップページで使用されているカテゴリのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.7.1\n*/\n.ec-categoryRole {\n padding: 40px 0;\n color: black;\n background: #F8F8F8; }\n @media only screen and (min-width: 768px) {\n .ec-categoryRole {\n padding: 60px 0; } }\n .ec-categoryRole .ec-categoryRole__list {\n display: flex;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-categoryRole .ec-categoryRole__list {\n flex-wrap: nowrap; } }\n .ec-categoryRole .ec-categoryRole__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto; }\n @media only screen and (min-width: 768px) {\n .ec-categoryRole .ec-categoryRole__listItem {\n width: calc(100% / 3); }\n .ec-categoryRole .ec-categoryRole__listItem:not(:last-of-type) {\n margin-right: 30px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n見出し\n\nトップページで使用されている新着情報のスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.8.1\n*/\n.ec-newsRole {\n padding: 40px 0 0; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole {\n padding: 60px 0 0; } }\n .ec-newsRole .ec-newsRole__news {\n box-sizing: border-box; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__news {\n border: 16px solid #F8F8F8;\n padding: 20px 30px; } }\n .ec-newsRole .ec-newsRole__newsItem {\n width: 100%; }\n .ec-newsRole .ec-newsRole__newsItem:not(:last-of-type) {\n border-bottom: 1px solid #ccc; }\n .ec-newsRole .ec-newsRole__newsItem:last-of-type {\n margin-bottom: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsItem:last-of-type {\n margin-bottom: 0; } }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsItem {\n padding: 20px 0; } }\n .ec-newsRole .ec-newsRole__newsHeading {\n cursor: pointer; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsHeading {\n display: flex; } }\n .ec-newsRole .ec-newsRole__newsDate {\n display: block;\n margin: 15px 0 5px;\n font-size: 12px;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsDate {\n display: inline-block;\n margin: 0;\n min-width: 120px;\n font-size: 14px; } }\n .ec-newsRole .ec-newsRole__newsColumn {\n display: flex; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsColumn {\n display: inline-flex;\n min-width: calc(100% - 120px); } }\n .ec-newsRole .ec-newsRole__newsTitle {\n display: inline-block;\n margin-bottom: 10px;\n width: 90%;\n font-size: 14px;\n font-weight: bold;\n color: #7D7D7D;\n line-height: 1.6; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsTitle {\n margin-bottom: 0;\n line-height: 1.8; } }\n .ec-newsRole .ec-newsRole__newsClose {\n display: inline-block;\n width: 10%;\n position: relative; }\n .ec-newsRole .ec-newsRole__newsCloseBtn {\n display: inline-block;\n margin-left: auto;\n border-radius: 50%;\n width: 20px;\n height: 20px;\n color: white;\n text-align: center;\n background: black;\n cursor: pointer;\n position: absolute;\n right: 5px; }\n .ec-newsRole .ec-newsRole__newsDescription {\n display: none;\n margin: 0 0 10px;\n font-size: 14px;\n line-height: 1.4;\n overflow: hidden; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsDescription {\n margin: 20px 0 0;\n line-height: 1.8; } }\n .ec-newsRole .ec-newsRole__newsDescription a {\n color: #0092C4; }\n .ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription {\n margin: 0 0 10px; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription {\n margin: 20px 0 0; } }\n .ec-newsRole__newsItem.is_active .ec-newsRole__newsCloseBtn i {\n display: inline-block;\n transform: rotateX(180deg) translateY(2px); }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n検索ラベル\n\n商品一覧 ヘッダー部 に関する Project コンポーネントを定義します。\n\nex [商品一覧 ヘッダー部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.1.searchnav.pug\n+ec-searchnavRole__topicpath\n+ec-searchnavRole__info\n\nStyleguide 13.1\n\n*/\n.ec-searchnavRole {\n margin-bottom: 0;\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-searchnavRole:after {\n content: \" \";\n display: table; }\n .ec-searchnavRole:after {\n clear: both; }\n .ec-searchnavRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-searchnavRole img {\n max-width: 100%; }\n .ec-searchnavRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-searchnavRole *,\n .ec-searchnavRole *::before,\n .ec-searchnavRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-searchnavRole img {\n width: 100%; } }\n .ec-searchnavRole .ec-searchnavRole__infos {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n border-top: 0;\n margin-bottom: 16px;\n padding-top: 5px;\n flex-direction: column; }\n .ec-searchnavRole .ec-searchnavRole__infos:after {\n content: \" \";\n display: table; }\n .ec-searchnavRole .ec-searchnavRole__infos:after {\n clear: both; }\n .ec-searchnavRole .ec-searchnavRole__infos textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-searchnavRole .ec-searchnavRole__infos img {\n max-width: 100%; }\n .ec-searchnavRole .ec-searchnavRole__infos html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-searchnavRole .ec-searchnavRole__infos *,\n .ec-searchnavRole .ec-searchnavRole__infos *::before,\n .ec-searchnavRole .ec-searchnavRole__infos *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-searchnavRole .ec-searchnavRole__infos img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole .ec-searchnavRole__infos {\n padding-left: 0;\n padding-right: 0;\n border-top: 1px solid #ccc;\n padding-top: 16px;\n flex-direction: row; } }\n .ec-searchnavRole .ec-searchnavRole__counter {\n margin-bottom: 16px;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole .ec-searchnavRole__counter {\n margin-bottom: 0;\n width: 50%; } }\n .ec-searchnavRole .ec-searchnavRole__actions {\n text-align: right;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole .ec-searchnavRole__actions {\n width: 50%; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n商品一覧\n\n商品一覧 に関する Project コンポーネントを定義します。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2\n\n*/\n.ec-shelfRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-shelfRole:after {\n content: \" \";\n display: table; }\n .ec-shelfRole:after {\n clear: both; }\n .ec-shelfRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-shelfRole img {\n max-width: 100%; }\n .ec-shelfRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-shelfRole *,\n .ec-shelfRole *::before,\n .ec-shelfRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-shelfRole img {\n width: 100%; }\n\n/*\n商品一覧グリッド\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2.1\n\n*/\n.ec-shelfGrid {\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none; }\n .ec-shelfGrid a {\n color: inherit;\n text-decoration: none; }\n .ec-shelfGrid a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid {\n margin-left: -16px;\n margin-right: -16px; } }\n .ec-shelfGrid .ec-shelfGrid__item {\n margin-bottom: 36px;\n width: 50%;\n display: flex;\n flex-direction: column; }\n .ec-shelfGrid .ec-shelfGrid__item-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item-image {\n height: 250px; } }\n .ec-shelfGrid .ec-shelfGrid__item img {\n width: auto;\n max-height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item {\n padding: 0 16px;\n width: 25%; } }\n .ec-shelfGrid .ec-shelfGrid__item .ec-productRole__btn {\n margin-top: auto;\n margin-bottom: 15px; }\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(odd) {\n padding-right: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(odd) {\n padding: 0 16px; } }\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {\n padding-left: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {\n padding: 0 16px; } }\n .ec-shelfGrid .ec-shelfGrid__title {\n margin-bottom: 7px; }\n .ec-shelfGrid .ec-shelfGrid__plice {\n font-weight: bold; }\n\n/*\n13.2.2 商品一覧グリッド(中央寄せ)\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n商品のあまりはセンタリングされ、中央に表示されます。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGridCenter\n\nStyleguide 13.2.2\n\n*/\n.ec-shelfGridCenter {\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n justify-content: center; }\n .ec-shelfGridCenter a {\n color: inherit;\n text-decoration: none; }\n .ec-shelfGridCenter a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter {\n margin-left: -16px;\n margin-right: -16px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item {\n margin-bottom: 36px;\n width: 50%; }\n .ec-shelfGridCenter .ec-shelfGridCenter__item-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item-image {\n height: 250px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item img {\n width: auto;\n max-height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item {\n padding: 0 16px;\n width: 25%; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item .ec-productRole__btn {\n margin-top: auto;\n padding-top: 1em; }\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(odd) {\n padding-right: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(odd) {\n padding: 0 16px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even) {\n padding-left: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even) {\n padding: 0 16px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__title {\n margin-bottom: 7px; }\n .ec-shelfGridCenter .ec-shelfGridCenter__plice {\n font-weight: bold; }\n\n/*\n商品一覧フッター\n\n商品一覧 フッター に関する Project コンポーネントを定義します。\n\nex [商品一覧 ページャ部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.3.pager.pug\n+ec-pagerRole\n\nStyleguide 13.3\n\n*/\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nカート追加モーダル\n\nカート追加モーダルに関する Project コンポーネントを定義します。\n\nex [商品一覧、商品詳細](http://demo3.ec-cube.net/products/list)\n\n+ec-modal\n\nStyleguide 13.4\n\n*/\n.ec-modal .checkbox {\n display: none; }\n\n.ec-modal .ec-modal-overlay {\n opacity: 0;\n transition: all 0.3s ease;\n width: 100%;\n height: 100%;\n position: fixed;\n top: 0;\n left: 0;\n z-index: -100;\n transform: scale(1);\n display: flex;\n background-color: rgba(0, 0, 0, 0.3); }\n\n.ec-modal .ec-modal-wrap {\n background-color: #fff;\n border: 1px solid #333;\n width: 90%;\n margin: 20px;\n padding: 40px 5px;\n border-radius: 2px;\n transition: all 0.5s ease;\n -ms-flex-item-align: center;\n align-self: center; }\n .ec-modal .ec-modal-wrap .ec-modal-box {\n text-align: center; }\n .ec-modal .ec-modal-wrap .ec-modal-box div {\n margin-top: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-modal .ec-modal-wrap {\n padding: 40px 10px;\n width: 50%;\n margin: 20px auto; } }\n .ec-modal .ec-modal-wrap.small {\n width: 30%; }\n .ec-modal .ec-modal-wrap.full {\n width: 100%;\n height: 100%; }\n\n.ec-modal .ec-modal-overlay .ec-modal-close {\n position: absolute;\n right: 20px;\n top: 10px;\n font-size: 20px;\n height: 30px;\n width: 20px; }\n .ec-modal .ec-modal-overlay .ec-modal-close:hover {\n cursor: pointer;\n color: #4b5361; }\n\n.ec-modal .ec-modal-overlay-close {\n display: none;\n width: 100%;\n height: 100%;\n position: fixed;\n left: 0;\n top: 0; }\n\n.ec-modal input:checked ~ .ec-modal-overlay {\n transform: scale(1);\n opacity: 1;\n z-index: 9997;\n overflow: auto; }\n .ec-modal input:checked ~ .ec-modal-overlay .ec-modal-overlay-close {\n display: block; }\n\n.ec-modal input:checked ~ .ec-modal-overlay .ec-modal-wrap {\n transform: translateY(0);\n z-index: 9999; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n商品詳細\n\n商品詳細ページに関する Project コンポーネントを定義します。\n\nex [商品詳細ページ](http://demo3.ec-cube.net/products/detail/18)\n\n\nMarkup:\ninclude /assets/tmpl/elements/14.1.product.pug\n+ec-productSimpleRole\n\nStyleguide 14.1\n*/\n.ec-productRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-productRole:after {\n content: \" \";\n display: table; }\n .ec-productRole:after {\n clear: both; }\n .ec-productRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-productRole img {\n max-width: 100%; }\n .ec-productRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-productRole *,\n .ec-productRole *::before,\n .ec-productRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-productRole img {\n width: 100%; }\n .ec-productRole .ec-productRole__img {\n margin-right: 0;\n margin-bottom: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__img {\n margin-right: 16px;\n margin-bottom: 0; } }\n .ec-productRole .ec-productRole__profile {\n margin-left: 0; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__profile {\n margin-left: 16px; } }\n .ec-productRole .ec-productRole__title .ec-headingTitle {\n font-size: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__title .ec-headingTitle {\n font-size: 32px; } }\n .ec-productRole .ec-productRole__tags {\n margin-top: 16px;\n padding: 0;\n padding-bottom: 16px;\n border-bottom: 1px dotted #ccc; }\n .ec-productRole .ec-productRole__tag {\n display: inline-block;\n padding: 2px 5px;\n list-style: none;\n font-size: 80%;\n color: #525263;\n border: solid 1px #D7DADD;\n border-radius: 3px;\n background-color: #F5F7F8; }\n .ec-productRole .ec-productRole__priceRegular {\n padding-top: 14px; }\n .ec-productRole .ec-productRole__priceRegularTax {\n margin-left: 5px;\n font-size: 10px; }\n .ec-productRole .ec-productRole__price {\n color: #DE5D50;\n font-size: 28px;\n padding: 0;\n border-bottom: 0; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__price {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc; } }\n .ec-productRole .ec-productRole__code {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc; }\n .ec-productRole .ec-productRole__category {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc; }\n .ec-productRole .ec-productRole__category a {\n color: #33A8D0; }\n .ec-productRole .ec-productRole__category ul {\n list-style: none;\n padding: 0;\n margin: 0; }\n .ec-productRole .ec-productRole__actions {\n padding: 14px 0; }\n .ec-productRole .ec-productRole__actions .ec-select select {\n height: 40px;\n max-width: 100%;\n min-width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__actions .ec-select select {\n min-width: 350px;\n max-width: 350px; } }\n .ec-productRole .ec-productRole__btn {\n width: 100%;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__btn {\n width: 60%;\n margin-bottom: 16px;\n min-width: 350px; } }\n .ec-productRole .ec-productRole__description {\n margin-bottom: 16px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nカート\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [カートページ](http://demo3.ec-cube.net/shopping)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartRole\n\nStyleguide 15.1\n\n*/\n.ec-cartRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end; }\n .ec-cartRole:after {\n content: \" \";\n display: table; }\n .ec-cartRole:after {\n clear: both; }\n .ec-cartRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-cartRole img {\n max-width: 100%; }\n .ec-cartRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-cartRole *,\n .ec-cartRole *::before,\n .ec-cartRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-cartRole img {\n width: 100%; }\n .ec-cartRole::before {\n display: none; }\n .ec-cartRole .ec-cartRole__progress {\n width: 100%;\n text-align: center; }\n .ec-cartRole .ec-cartRole__error {\n width: 100%;\n text-align: center; }\n .ec-cartRole .ec-cartRole__error .ec-alert-warning {\n max-width: 80%;\n display: inline-block; }\n .ec-cartRole .ec-cartRole__totalText {\n margin-bottom: 0;\n padding: 16px 0 6px;\n width: 100%;\n text-align: center;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__totalText {\n margin-bottom: 30px;\n padding: 0; } }\n .ec-cartRole .ec-cartRole__cart {\n margin: 0;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__cart {\n margin: 0 10%; } }\n .ec-cartRole .ec-cartRole__actions {\n text-align: right;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__actions {\n width: 20%;\n margin-right: 10%; } }\n .ec-cartRole .ec-cartRole__total {\n padding: 15px 0 30px;\n font-weight: bold;\n font-size: 16px; }\n .ec-cartRole .ec-cartRole__totalAmount {\n margin-left: 30px;\n color: #de5d50;\n font-size: 16px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__totalAmount {\n font-size: 24px; } }\n .ec-cartRole .ec-blockBtn--action {\n margin-bottom: 10px; }\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品をを表示するテーブル枠です。\n\nex [カートページ テーブル部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartTable\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 15.1.2\n*/\n.ec-cartTable {\n display: table;\n border-top: 1px dotted #ccc;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-cartTable {\n border-top: none; } }\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品を表示するテーブルのヘッダです。\nスマホでは非表示となります。\n\nex [カートページ カートテーブルヘッダ部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartHeader\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.3\n*/\n.ec-cartHeader {\n display: none;\n width: 100%;\n background: #F4F3F0; }\n @media only screen and (min-width: 768px) {\n .ec-cartHeader {\n display: table-row; } }\n .ec-cartHeader .ec-cartHeader__label {\n display: table-cell;\n padding: 16px;\n text-align: center;\n background: #F4F3F0;\n overflow-x: hidden;\n font-weight: bold; }\n\n.ec-cartCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-cartCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-cartCompleteRole:after {\n clear: both; }\n .ec-cartCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-cartCompleteRole img {\n max-width: 100%; }\n .ec-cartCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-cartCompleteRole *,\n .ec-cartCompleteRole *::before,\n .ec-cartCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-cartCompleteRole img {\n width: 100%; }\n\n/*\nカート内商品\n\nカート内のアイテムを表示するテーブル行です。\nスマホでは非表示となります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRow\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.4\n*/\n.ec-cartRow {\n display: table-row; }\n .ec-cartRow .ec-cartRow__delColumn {\n border-bottom: 1px dotted #ccc;\n text-align: center;\n display: table-cell;\n width: 14%;\n vertical-align: middle; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__delColumn {\n width: 8.3333333%; } }\n .ec-cartRow .ec-cartRow__delColumn .ec-icon img {\n width: 1.5em;\n height: 1.5em; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__delColumn .ec-icon img {\n width: 1em;\n height: 1em; } }\n .ec-cartRow .ec-cartRow__contentColumn {\n border-bottom: 1px dotted #ccc;\n padding: 10px 0;\n display: table; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__contentColumn {\n display: table-cell; } }\n .ec-cartRow .ec-cartRow__img {\n display: table-cell;\n width: 40%;\n vertical-align: middle;\n padding-right: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__img {\n display: inline-block;\n min-width: 80px;\n max-width: 100px;\n padding-right: 0; } }\n .ec-cartRow .ec-cartRow__summary {\n display: table-cell;\n margin-left: 5px;\n font-weight: bold;\n vertical-align: middle;\n width: 46%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__summary {\n display: inline-block;\n margin-left: 20px;\n vertical-align: middle; } }\n .ec-cartRow .ec-cartRow__summary .ec-cartRow__name {\n margin-bottom: 5px; }\n .ec-cartRow .ec-cartRow__summary .ec-cartRow__sutbtotalSP {\n display: block;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__summary .ec-cartRow__sutbtotalSP {\n display: none; } }\n .ec-cartRow .ec-cartRow__amountColumn {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n vertical-align: middle;\n text-align: center;\n width: 20%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn {\n width: 16.66666667%; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amount {\n display: none;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amount {\n display: block; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP {\n display: block;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP {\n display: none; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpDown {\n display: flex;\n justify-content: center; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpDown {\n display: block; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpButton {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpButton .ec-cartRow__amountUpButton__icon img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButton, .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButton .ec-cartRow__amountDownButton__icon img, .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled .ec-cartRow__amountDownButton__icon img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled {\n cursor: default; }\n .ec-cartRow .ec-cartRow__subtotalColumn {\n display: none;\n border-bottom: 1px dotted #ccc;\n text-align: right;\n width: 16.66666667%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__subtotalColumn {\n display: table-cell; } }\n\n/*\nカート内商品(商品が1の場合)\n\n商品が1の場合はカート商品を減らす「-」ボタンの無効化状態になります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRowOnly\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.5\n*/\n.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled {\n cursor: default; }\n\n/*\nアラート\n\nカート内の商品に問題があることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartRole\n .ec-cartRole__cart\n +ec-alert-warning\n\nStyleguide 15.1.6\n*/\n.ec-alert-warning {\n width: 100%;\n padding: 10px;\n text-align: center;\n background: #F99;\n margin-bottom: 20px; }\n .ec-alert-warning .ec-alert-warning__icon {\n display: inline-block;\n margin-right: 1rem;\n width: 20px;\n height: 20px;\n color: #fff;\n fill: #fff;\n vertical-align: top; }\n .ec-alert-warning .ec-alert-warning__text {\n display: inline-block;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n position: relative; }\n\n/*\nアラート(空)\n\nカートが空であることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-off3Grid\n .ec-off3Grid__cell\n +ec-alert-warningEnpty\n\nStyleguide 15.1.7\n*/\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n注文内容確認\n\nカート内 注文内容確認に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/shopping)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderRole\n\nStyleguide 15.2\n*/\n.ec-orderRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n flex-direction: column;\n margin-top: 0; }\n .ec-orderRole:after {\n content: \" \";\n display: table; }\n .ec-orderRole:after {\n clear: both; }\n .ec-orderRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-orderRole img {\n max-width: 100%; }\n .ec-orderRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-orderRole *,\n .ec-orderRole *::before,\n .ec-orderRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-orderRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole {\n margin-top: 20px;\n flex-direction: row; } }\n .ec-orderRole .ec-inlineBtn {\n font-weight: normal; }\n .ec-orderRole .ec-orderRole__detail {\n padding: 0;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole .ec-orderRole__detail {\n padding: 0 16px;\n width: 66.66666%; } }\n .ec-orderRole .ec-orderRole__summary {\n width: 100%; }\n .ec-orderRole .ec-orderRole__summary .ec-inlineBtn {\n display: inline-block; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole .ec-orderRole__summary {\n width: 33.33333%;\n padding: 0 16px; }\n .ec-orderRole .ec-orderRole__summary .ec-inlineBtn {\n display: none; } }\n .ec-orderRole .ec-borderedList {\n margin-bottom: 20px;\n border-top: 1px dotted #ccc; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole .ec-borderedList {\n border-top: none; } }\n\n/*\n注文履歴詳細 オーダ情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderInfo\n\nStyleguide 15.2.1\n*/\n.ec-orderOrder {\n margin-bottom: 30px; }\n .ec-orderOrder .ec-orderOrder__items {\n border-bottom: 1px dotted #ccc;\n border-top: 1px dotted #ccc; }\n\n/*\n注文履歴詳細 お客様情報\n\nマイページ 注文詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAccount\n\nStyleguide 15.2.2\n*/\n.ec-orderAccount {\n margin-bottom: 30px; }\n .ec-orderAccount p {\n margin-bottom: 0; }\n .ec-orderAccount:after {\n content: \" \";\n display: table; }\n .ec-orderAccount:after {\n clear: both; }\n .ec-orderAccount .ec-orderAccount__change {\n display: inline-block;\n margin-left: 10px;\n float: right; }\n .ec-orderAccount .ec-orderAccount__account {\n margin-bottom: 16px; }\n\n/*\n注文詳細 配送情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 配送情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderDelivery\n\nStyleguide 15.2.3\n*/\n.ec-orderDelivery .ec-orderDelivery__title {\n padding: 16px 0 17px;\n font-weight: bold;\n font-size: 18px;\n position: relative; }\n\n.ec-orderDelivery .ec-orderDelivery__change {\n display: inline-block;\n position: absolute;\n right: 0;\n top: 0; }\n\n.ec-orderDelivery .ec-orderDelivery__items {\n border-bottom: 1px dotted #ccc;\n border-top: 1px dotted #ccc; }\n\n.ec-orderDelivery .ec-orderDelivery__address {\n margin: 10px 0 18px; }\n .ec-orderDelivery .ec-orderDelivery__address p {\n margin: 0; }\n\n/*\n注文履歴詳細 支払情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 支払情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderPayment\n .ec-rectHeading\n h2 お支払方法\n p 支払方法: 郵便振替\n\nStyleguide 15.2.4\n*/\n/*\n注文履歴詳細 お問い合わせ\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ お問い合わせ(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderConfirm\n .ec-rectHeading\n h2 お問い合わせ\n p 記載なし\n\nStyleguide 15.2.5\n*/\n.ec-orderConfirm {\n margin-bottom: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-orderConfirm {\n margin-bottom: 0; } }\n .ec-orderConfirm .ec-input textarea, .ec-orderConfirm .ec-halfInput textarea, .ec-orderConfirm .ec-numberInput textarea, .ec-orderConfirm .ec-zipInput textarea, .ec-orderConfirm .ec-telInput textarea, .ec-orderConfirm .ec-select textarea, .ec-orderConfirm .ec-birth textarea {\n height: 96px; }\n\n/*\nお届け先の複数指定\n\nお届け先の複数指定に関するコンポーネントを定義します。\n\nex [マイページ お届け先の複数指定](http://demo3.ec-cube.net/shopping/shipping_multiple)\n(商品購入画面 → 「お届け先を追加する」を押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAddAddress\n\nStyleguide 15.2.6\n*/\n.ec-AddAddress {\n padding: 0 10px; }\n @media only screen and (min-width: 768px) {\n .ec-AddAddress {\n margin: 0 10%; } }\n .ec-AddAddress .ec-AddAddress__info {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px; }\n .ec-AddAddress .ec-AddAddress__add {\n border-top: 1px solid #f4f4f4;\n padding-top: 20px;\n margin-bottom: 20px; }\n .ec-AddAddress .ec-AddAddress__item {\n display: table;\n padding: 16px;\n background: #f4f4f4;\n margin-bottom: 16px; }\n .ec-AddAddress .ec-AddAddress__itemThumb {\n display: table-cell;\n min-width: 160px;\n width: 20%; }\n .ec-AddAddress .ec-AddAddress__itemThumb img {\n width: 100%; }\n .ec-AddAddress .ec-AddAddress__itemtContent {\n display: table-cell;\n vertical-align: middle;\n padding-left: 16px;\n font-size: 16px; }\n .ec-AddAddress .ec-AddAddress__itemtTitle {\n font-weight: bold;\n margin-bottom: 10px; }\n .ec-AddAddress .ec-AddAddress__itemtSize {\n margin-bottom: 10px; }\n .ec-AddAddress .ec-AddAddress__select {\n margin-bottom: 5px; }\n .ec-AddAddress .ec-AddAddress__selectAddress {\n display: inline-block; }\n .ec-AddAddress .ec-AddAddress__selectAddress label {\n font-size: 16px;\n font-weight: normal; }\n .ec-AddAddress .ec-AddAddress__selectAddress select {\n min-width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-AddAddress .ec-AddAddress__selectAddress select {\n min-width: 350px; } }\n .ec-AddAddress .ec-AddAddress__selectNumber {\n display: inline-block;\n margin-left: 30px; }\n .ec-AddAddress .ec-AddAddress__selectNumber label {\n font-size: 16px;\n font-weight: normal; }\n .ec-AddAddress .ec-AddAddress__selectNumber input {\n display: inline-block;\n margin-left: 10px;\n width: 80px; }\n .ec-AddAddress .ec-AddAddress__actions .ec-blockBtn--action {\n margin-bottom: 8px; }\n .ec-AddAddress .ec-AddAddress__new {\n margin-bottom: 20px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n注文履歴一覧\n\nマイページ 注文履歴部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole\n\nStyleguide 16.1\n*/\n.ec-historyRole .ec-historyRole__contents {\n padding-top: 1em;\n padding-bottom: 16px;\n border-top: 1px solid #ccc;\n display: flex;\n flex-direction: column;\n color: #525263; }\n @media only screen and (min-width: 768px) {\n .ec-historyRole .ec-historyRole__contents {\n flex-direction: row; } }\n\n.ec-historyRole .ec-historyRole__header {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-historyRole .ec-historyRole__header {\n width: 33.3333%; } }\n\n.ec-historyRole .ec-historyRole__detail {\n border-top: 1px dotted #ccc;\n width: 100%; }\n .ec-historyRole .ec-historyRole__detail .ec-imageGrid:nth-of-type(1) {\n border-top: none; }\n .ec-historyRole .ec-historyRole__detail .ec-historyRole__detailTitle {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold; }\n .ec-historyRole .ec-historyRole__detail .ec-historyRole__detailPrice {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-historyRole .ec-historyRole__detail {\n width: 66.6666%;\n border-top: none; } }\n\n/*\n注文履歴一覧 規格\n\nマイページ 注文履歴内アイテムの規格を定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole-option\n\nStyleguide 16.1.1\n*/\n.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailOption {\n display: inline-block;\n margin-bottom: 8px;\n margin-right: .5rem;\n font-size: 1.6rem; }\n\n.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailOption::after {\n display: inline-block;\n padding-left: .5rem;\n content: \"/\";\n font-weight: bold; }\n\n/*\n注文履歴一覧ヘッダ\n\n注文履歴一覧で使用するヘッダのコンポーネントを定義します。\n\nex [マイページ 注文履歴一覧ヘッダ](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyHeader\np hofe\n\nStyleguide 16.1.2\n*/\n.ec-historyListHeader .ec-historyListHeader__date {\n font-weight: bold;\n font-size: 16px; }\n @media only screen and (min-width: 768px) {\n .ec-historyListHeader .ec-historyListHeader__date {\n font-weight: bold;\n font-size: 20px; } }\n\n.ec-historyListHeader .ec-historyListHeader__action {\n margin: 16px 0; }\n .ec-historyListHeader .ec-historyListHeader__action a {\n font-size: 12px;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-historyListHeader .ec-historyListHeader__action a {\n font-size: 14px; } }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n注文履歴詳細\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailRole\n\nStyleguide 16.2\n*/\n/*\n注文履歴詳細 メール履歴\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMail\n\nStyleguide 16.2.5\n*/\n.ec-orderMails .ec-orderMails__item {\n padding-bottom: 10px;\n border-bottom: 1px dotted #ccc; }\n\n.ec-orderMails .ec-orderMails__time {\n margin: 0; }\n\n.ec-orderMails .ec-orderMails__body {\n display: none; }\n\n/*\n注文履歴詳細 メール履歴個別\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴個別](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMailHistory\n\nStyleguide 16.2.6\n*/\n.ec-orderMail {\n padding-bottom: 10px;\n border-bottom: 1px dotted #ccc;\n margin-bottom: 16px; }\n .ec-orderMail .ec-orderMail__time {\n margin: 0; }\n .ec-orderMail .ec-orderMail__body {\n display: none; }\n .ec-orderMail .ec-orderMail__time {\n margin-bottom: 4px; }\n .ec-orderMail .ec-orderMail__link {\n margin-bottom: 4px; }\n .ec-orderMail .ec-orderMail__link a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n .ec-orderMail .ec-orderMail__link a:hover {\n color: #33A8D0; }\n .ec-orderMail .ec-orderMail__close a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n .ec-orderMail .ec-orderMail__close a:hover {\n color: #33A8D0; }\n\n/*\n住所一覧\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [マイページ内 お届け先編集](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\ninclude /assets/tmpl/elements/17.1.address.pug\n+ec-addressList\n+ec-addressRole\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 17.1\n\n*/\n.ec-addressRole .ec-addressRole__item {\n border-top: 1px dotted #ccc; }\n\n.ec-addressRole .ec-addressRole__actions {\n margin-top: 32px;\n padding-bottom: 20px;\n border-bottom: 1px dotted #ccc; }\n\n.ec-addressList .ec-addressList__item {\n display: table;\n width: 100%;\n position: relative;\n border-bottom: 1px dotted #ccc; }\n\n.ec-addressList .ec-addressList__remove {\n vertical-align: middle;\n padding: 16px;\n text-align: center; }\n .ec-addressList .ec-addressList__remove .ec-icon img {\n width: 1em;\n height: 1em; }\n\n.ec-addressList .ec-addressList__address {\n display: table-cell;\n vertical-align: middle;\n padding: 16px;\n margin-right: 4em;\n width: 80%; }\n\n.ec-addressList .ec-addressList__action {\n position: relative;\n vertical-align: middle;\n text-align: right;\n top: 27px;\n padding-right: 10px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nパスワードリセット\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [パスワードリセット画面](http://demo3.ec-cube.net/forgot)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/18.1.password.pug\n+ec-passwordRole\n\nStyleguide 18.1\n\n*/\n.ec-forgotRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-forgotRole:after {\n content: \" \";\n display: table; }\n .ec-forgotRole:after {\n clear: both; }\n .ec-forgotRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-forgotRole img {\n max-width: 100%; }\n .ec-forgotRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-forgotRole *,\n .ec-forgotRole *::before,\n .ec-forgotRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-forgotRole img {\n width: 100%; }\n .ec-forgotRole .ec-forgotRole__intro {\n font-size: 16px; }\n .ec-forgotRole .ec-forgotRole__form {\n margin-bottom: 16px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n会員登録\n\n新規会員登録 に関する Project コンポーネントを定義します。\n\nex [新規会員登録画面 会員登録](http://demo3.ec-cube.net/entry)\n\nMarkup:\ninclude /assets/tmpl/elements/19.1.register.pug\n+ec-registerRole\n\nStyleguide 19.1\n\n*/\n.ec-registerRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-registerRole:after {\n content: \" \";\n display: table; }\n .ec-registerRole:after {\n clear: both; }\n .ec-registerRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-registerRole img {\n max-width: 100%; }\n .ec-registerRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-registerRole *,\n .ec-registerRole *::before,\n .ec-registerRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-registerRole img {\n width: 100%; }\n .ec-registerRole .ec-registerRole__actions {\n padding-top: 20px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-registerRole .ec-registerRole__actions {\n text-align: left; } }\n .ec-registerRole .ec-registerRole__actions p {\n margin-bottom: 16px; }\n .ec-registerRole .ec-blockBtn--action {\n margin-bottom: 16px; }\n\n.ec-registerCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-registerCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-registerCompleteRole:after {\n clear: both; }\n .ec-registerCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-registerCompleteRole img {\n max-width: 100%; }\n .ec-registerCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-registerCompleteRole *,\n .ec-registerCompleteRole *::before,\n .ec-registerCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-registerCompleteRole img {\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nお問い合わせ\n\nお問い合わせ に関する Project コンポーネントを定義します。\n\nex [お問い合わせ](http://demo3.ec-cube.net/contact)\n\nMarkup:\ninclude /assets/tmpl/elements/19.2.contact.pug\n+ec-contactRole\n\nStyleguide 19.2\n\n*/\n.ec-contactRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactRole:after {\n content: \" \";\n display: table; }\n .ec-contactRole:after {\n clear: both; }\n .ec-contactRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactRole img {\n max-width: 100%; }\n .ec-contactRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactRole *,\n .ec-contactRole *::before,\n .ec-contactRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactRole img {\n width: 100%; }\n .ec-contactRole .ec-contactRole__actions {\n padding-top: 20px; }\n .ec-contactRole p {\n margin: 16px 0; }\n\n.ec-contactConfirmRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactConfirmRole:after {\n content: \" \";\n display: table; }\n .ec-contactConfirmRole:after {\n clear: both; }\n .ec-contactConfirmRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactConfirmRole img {\n max-width: 100%; }\n .ec-contactConfirmRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactConfirmRole *,\n .ec-contactConfirmRole *::before,\n .ec-contactConfirmRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactConfirmRole img {\n width: 100%; }\n .ec-contactConfirmRole .ec-contactConfirmRole__actions {\n padding-top: 20px; }\n .ec-contactConfirmRole .ec-blockBtn--action {\n margin-bottom: 16px; }\n\n.ec-contactCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-contactCompleteRole:after {\n clear: both; }\n .ec-contactCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactCompleteRole img {\n max-width: 100%; }\n .ec-contactCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactCompleteRole *,\n .ec-contactCompleteRole *::before,\n .ec-contactCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactCompleteRole img {\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nお客様情報の入力\n\nログインせずゲストとして商品を購入する際の、お客様情報の入力 に関する Project コンポーネントを定義します。\n\nex [カートSTEP2 お客様情報の入力(ゲスト購入)](http://demo3.ec-cube.net/shopping/nonmember)\n\nMarkup:\ninclude /assets/tmpl/elements/19.3.customer.pug\n+ec-customerRole\nhoge\n\nStyleguide 19.3\n\n*/\n.ec-customerRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-customerRole:after {\n content: \" \";\n display: table; }\n .ec-customerRole:after {\n clear: both; }\n .ec-customerRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-customerRole img {\n max-width: 100%; }\n .ec-customerRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-customerRole *,\n .ec-customerRole *::before,\n .ec-customerRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-customerRole img {\n width: 100%; }\n .ec-customerRole .ec-customerRole__actions {\n padding-top: 20px; }\n .ec-customerRole .ec-blockBtn--action {\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-customerRole .ec-blockBtn--action {\n margin-bottom: 16px; } }\n\n.ec-contactConfirmRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactConfirmRole:after {\n content: \" \";\n display: table; }\n .ec-contactConfirmRole:after {\n clear: both; }\n .ec-contactConfirmRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactConfirmRole img {\n max-width: 100%; }\n .ec-contactConfirmRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactConfirmRole *,\n .ec-contactConfirmRole *::before,\n .ec-contactConfirmRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactConfirmRole img {\n width: 100%; }\n .ec-contactConfirmRole .ec-contactConfirmRole__actions {\n padding-top: 20px; }\n .ec-contactConfirmRole .ec-blockBtn--action {\n margin-bottom: 16px; }\n\n.ec-contactCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-contactCompleteRole:after {\n clear: both; }\n .ec-contactCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactCompleteRole img {\n max-width: 100%; }\n .ec-contactCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactCompleteRole *,\n .ec-contactCompleteRole *::before,\n .ec-contactCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactCompleteRole img {\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n visibility: hidden; }\n 100% {\n opacity: 1;\n visibility: visible; } }\n\n@keyframes fadeOut {\n 0% {\n opacity: 1;\n visibility: visible; }\n 100% {\n opacity: 0;\n visibility: hidden; } }\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1; }\n\n/*\n404ページ\n\n404 エラー画面で使用するページコンポーネントです。\n\nex [404エラー画面](http://demo3.ec-cube.net/404)\n\nMarkup:\ninclude /assets/tmpl/elements/20.1.404.pug\n+ec-404Role\n\nStyleguide 20.1\n\n*/\n.ec-404Role {\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n height: 100vh;\n background-color: #f2f2f2;\n text-align: center;\n box-sizing: border-box; }\n .ec-404Role textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-404Role img {\n max-width: 100%; }\n .ec-404Role html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-404Role *,\n .ec-404Role *::before,\n .ec-404Role *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-404Role img {\n width: 100%; }\n .ec-404Role .ec-404Role__icon img {\n width: 1em;\n height: 1em; }\n .ec-404Role .ec-404Role__title {\n font-weight: bold;\n font-size: 25px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n退会手続き\n\n退会手続きで使用するページコンポーネントです。\n\nex [退会手続き](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawRole\n\nStyleguide 21.1\n\n*/\n.ec-withdrawRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n text-align: center;\n padding: 0 16px; }\n .ec-withdrawRole:after {\n content: \" \";\n display: table; }\n .ec-withdrawRole:after {\n clear: both; }\n .ec-withdrawRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-withdrawRole img {\n max-width: 100%; }\n .ec-withdrawRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-withdrawRole *,\n .ec-withdrawRole *::before,\n .ec-withdrawRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-withdrawRole img {\n width: 100%; }\n .ec-withdrawRole .ec-withdrawRole__title {\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px; }\n .ec-withdrawRole .ec-withdrawRole__description {\n margin-bottom: 32px;\n font-size: 16px; }\n .ec-withdrawRole .ec-icon img {\n width: 100px;\n height: 100px; }\n\n/*\n退会手続き実行確認\n\n退会手続き実行確認で使用するページコンポーネントです。\n\nex [退会手続き 退会手続きへボタン→押下](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawConfirm\n\nStyleguide 21.1.2\n\n*/\n.ec-withdrawConfirmRole .ec-withdrawConfirmRole__cancel {\n margin-bottom: 20px; }\n\n.ec-withdrawConfirmRole .ec-withdrawConfirmRole__title {\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px; }\n\n.ec-withdrawConfirmRole .ec-withdrawConfirmRole__description {\n margin-bottom: 32px;\n font-size: 16px; }\n\n.ec-withdrawConfirmRole .ec-icon img {\n width: 100px;\n height: 100px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n会員情報編集完了\n\n会員情報編集完了で使用するページコンポーネントです。\n\nex [会員情報編集完了](http://demo3.ec-cube.net/mypage/change_complete)\n\nMarkup:\ninclude /assets/tmpl/elements/22.1.editComplete.pug\n+ec-userEditCompleteRole\n\nStyleguide 22.1\n\n*/\n.ec-userEditCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n text-align: center;\n padding: 0 16px; }\n .ec-userEditCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-userEditCompleteRole:after {\n clear: both; }\n .ec-userEditCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-userEditCompleteRole img {\n max-width: 100%; }\n .ec-userEditCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-userEditCompleteRole *,\n .ec-userEditCompleteRole *::before,\n .ec-userEditCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-userEditCompleteRole img {\n width: 100%; }\n .ec-userEditCompleteRole .ec-userEditCompleteRole__title {\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px; }\n @media only screen and (min-width: 768px) {\n .ec-userEditCompleteRole .ec-userEditCompleteRole__title {\n font-size: 32px; } }\n .ec-userEditCompleteRole .ec-userEditCompleteRole__description {\n margin-bottom: 32px;\n font-size: 16px; }\n","@import \"/node_modules/normalize.css/normalize.css\";\n\nbody {\n font-family: Roboto, \"游ゴシック\", YuGothic, \"Yu Gothic\", \"ヒラギノ角ゴ ProN W3\", \"Hiragino Kaku Gothic ProN\", Arial, \"メイリオ\", Meiryo, sans-serif;\n color:#525263;\n transition: z-index 0ms 5.28455ms;\n background: #f6f6f6;\n margin: 0;\n}\na {\n text-decoration: none;\n}\n\npre {\n background-color: transparent;\n border: none;\n padding: 16px 0;\n}\np {\n -webkit-margin-before: 0;\n -webkit-margin-after: 0;\n}\n@import \"component/1.1.heading\";\n@import \"component/1.2.typo\";\n@import \"component/1.3.list\";\n@import \"component/2.1.buttonsize\";\n@import \"component/2.2.closebutton.scss\";\n@import \"component/2.3.otherbutton\";\n@import \"component/3.1.inputText\";\n@import \"component/3.2.inputMisc\";\n@import \"component/3.3.form\";\n@import \"component/4.1.icon\";\n@import \"component/5.1.grid\";\n@import \"component/5.2.layout\";\n@import \"component/6.1.login\";\n@import \"component/7.1.itembanner\";\n@import \"component/7.2.search\";\n@import \"component/7.3.cart\";\n@import \"component/8.1.info\";\n@import \"component/8.2.banner\";\n@import \"component/9.1.mypage\";\n@import \"project/11.1.role\";\n@import \"project/11.2.header\";\n@import \"project/11.3.footer\";\n@import \"project/12.1.slider\";\n@import \"project/12.2.eyecatch\";\n@import \"project/12.3.button\";\n@import \"project/12.4.heading\";\n@import \"project/12.5.topics\";\n@import \"project/12.6.newItem\";\n@import \"project/12.7.category\";\n@import \"project/12.8.news\";\n@import \"project/13.1.searchnav\";\n@import \"project/13.2.shelf\";\n@import \"project/13.3.pager\";\n@import \"project/13.4.cartModal\";\n@import \"project/14.1.product\";\n@import \"project/15.1.cart\";\n@import \"project/15.2.order\";\n@import \"project/16.1.history\";\n@import \"project/16.2.historyDetail\";\n@import \"project/17.1.address\";\n@import \"project/18.1.password\";\n@import \"project/19.1.register\";\n@import \"project/19.2.contact\";\n@import \"project/19.3.customer\";\n@import \"project/20.1.404\";\n@import \"project/21.1.withdraw\";\n@import \"project/22.1.editComplete\";\n","@import \"./variables\";\n@import \"./clearfix\";\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n\n\n\n//@mixin media_tablet(){\n// @media only screen and (min-width: 768px) {\n// @content;\n// }\n//}\n\n@mixin media_desktop(){\n @media only screen and (min-width: 768px) {\n @content;\n }\n}\n\n//@mixin media_desktop2(){\n// @media only screen and (min-width: 768px) {\n// @content;\n// }\n//}\n//\n//@mixin media_desktop3(){\n// @media only screen and (min-width: 768px) {\n// @content;\n// }\n//}\n\n\n@mixin container(){\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n @include clearfix;\n @include commonStyle();\n width: 100%;\n max-width: 1130px;\n\n //@media (min-width: $desktop) {\n // width: 720 + 30px;\n //}\n //@media (min-width: $desktop2) {\n // width: 940 + 30px;\n //}\n //@media (min-width: $desktop3) {\n // width: 1140 + 30px;\n //}\n}\n@mixin mypageContainer(){\n margin-right: auto;\n margin-left: auto;\n padding-left: 16px;\n padding-right: 16px;\n box-sizing: border-box;\n @include clearfix;\n @include commonStyle();\n width: 100%;\n //max-width: 1130px;\n @include media_desktop {\n padding-left: 26px;\n padding-right: 26px;\n }\n}\n\n@mixin commonStyle(){\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n\n //a {\n //color: #0092C4;\n //color: #A092C4;\n //text-decoration: none;\n //cursor: pointer;\n //}\n //a:hover,\n //a:focus,\n //a:active { color: #33A8D0;text-decoration: none; outline: none;}\n\n\n textarea { /* for chrome fontsize bug */\n font-family: sans-serif;\n }\n\n //ul, ol {\n // list-style: none;\n // margin: 0; padding: 0;\n //}\n //dl, dt, dd, li{\n // margin: 0; padding: 0;\n //}\n img {\n max-width: 100%;\n }\n\n html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n }\n\n *,\n *::before,\n *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit;\n }\n\n img{\n width: 100%;\n }\n\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/variables\";\n/*\n見出し\n\nページ内で見出しとして機能する要素のスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.1\n*/\n\n/*\n見出し\n\n商品紹介等で利用される、一般的な見出しのスタイルです。\n\nex [商品詳細ページ 商品見出し部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-headingTitle マトリョーシカ\n\nStyleguide 1.1.1\n*/\n.ec-headingTitle{\n margin: 0 0 8px;\n font-size: 32px;\n font-weight: normal;\n color: #525263;\n}\n\n/*\nページヘッダ\n\n各種ページで用いられるページヘッダのデザインです。\n\nex [利用規約ページ ページヘッダ部](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-pageHeader\n h1 利用規約\n\nStyleguide 1.1.2\n*/\n.ec-pageHeader h1{\n margin: 0 0 8px;\n border-bottom: 1px dotted #ccc;\n border-top: 1px solid #ccc;\n padding: 8px 0 12px;\n font-size: 16px;\n font-weight: bold;\n @include media_desktop {\n border-top: none;\n border-bottom: 1px solid #ccc;\n margin: 10px 16px 48px;\n padding: 8px;\n font-size: 32px;\n font-weight: bold;\n }\n}\n\n\n/*\nサブ見出し\n\n利用規約など、文字主体のページで用いられるサブ見出しです。\n\nex [利用規約ページ サブ見出し部分](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-heading 第1条 (会員)\n\nStyleguide 1.1.3\n*/\n\n.ec-heading{\n margin: 24px 0;\n}\n\n\n\n/*\nサブ見出し(太字)\n\n文字主体のページで用いられるサブ見出しの太字のスタイルです。\n\nex [プライバシーポリシー サブ見出し部分](http://demo3.ec-cube.net/help/privacy)\n\nMarkup:\n.ec-heading-bold 個人情報の定義\n\nStyleguide 1.1.4\n*/\n\n.ec-heading-bold {\n margin: 16px 0;\n font-size: 16px;\n font-weight: bold;\n @include media_desktop {\n font-size: 18px;\n }\n}\n\n/*\n背景付き見出し\n\nマイページ注文履歴等で用いられる背景付きの見出しです。\n\nex [ご注文履歴詳細 背景付き見出し部分](http://demo3.ec-cube.net/mypage/history/1063)\n\nMarkup:\n.ec-rectHeading\n h2 配送情報\n.ec-rectHeading\n h2 お支払について\n\nStyleguide 1.1.5\n*/\n.ec-rectHeading{\n h1, h2, h3,\n h4, h5, h6{\n background: $clrGray;\n padding: 8px 12px;\n font-size: 20px;\n font-weight: bold;\n }\n\n}\n\n\n/*\nメッセージ見出し\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用される見出しのスタイルです。\n\nex [注文完了 ログイン後、カートに商品を入れ注文完了まで行う](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\n\nStyleguide 1.1.6\n*/\n.ec-reportHeading{\n width: 100%;\n border-top: 1px dotted #ccc;\n margin: 20px 0 30px;\n padding: 0;\n text-align: center;\n font-size: 24px;\n font-weight: bold;\n @include media_desktop {\n border-top: 0;\n font-size: 32px;\n }\n h1, h2, h3,\n h4, h5, h6,p {\n font-weight: bold;\n font-size: 24px;\n @include media_desktop {\n font-size: 32px;\n }\n }\n}\n","\n// MediaQuery\n$tablet: 480px;\n$desktop: 768px;\n$desktop2: 992px;\n$desktop3: 1200px;\n\n$font-size: 16px;\n\n$clrRed: #DE5D50;\n$clrRich: #9a947e;\n$clrGray: #F3F3F3;\n$clrRightGray: #B8BEC4;\n$clrExtraGray: #636378;\n$clrDarkGray:#525263;\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/variables\";\n","@import \"../mixins/media\";\n/*\n文字装飾\n\n文字装飾をするためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.2\n*/\n\n/*\nテキストリンク\n\nテキストリンクのスタイルです。\n\nMarkup:\na(href=\"#\").ec-link さくらのクラウド\n\nStyleguide 1.2.1\n*/\n.ec-link {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n &:hover {\n color: #33A8D0;\n text-decoration: none;\n }\n}\n\n/*\nテキスト(太字)\n\nテキストを太くするためのスタイルです。\n\nMarkup:\np.ec-font-bold この季節にぴったりな商品をご用意しました\n\nStyleguide 1.2.2\n*/\n\n.ec-font-bold {\n font-weight: bold;\n}\n\n/*\nテキスト(グレー)\n\nテキストをグレーにするためのスタイルです。\n\nMarkup:\np.ec-color-grey 青色が美しい職人が仕上げた吹きガラス\n\nStyleguide 1.2.3\n*/\n\n.ec-color-grey {\n color: #9a947e;\n}\n\n/*\nテキスト(赤)\n\nテキストを赤にするためのスタイルです。\n\nMarkup:\np.ec-color-red ¥ 2,728 税込\np.ec-color-accent ¥ 2,728 税込\n\nStyleguide 1.2.4\n*/\n\n.ec-color-red {\n color: #DE5D50;\n}\n\n.ec-color-accent {\n color: #DE5D50;\n}\n\n/*\nフォントサイズ\n\nフォントサイズを指定するためのスタイルです。\n\nMarkup:\n.ec-font-size-1 さわやかな日差しが過ごしやすい季節\n.ec-font-size-2 さわやかな日差しが過ごしやすい季節\n.ec-font-size-3 さわやかな日差しが過ごしやすい季節\n.ec-font-size-4 さわやかな日差しが過ごしやすい季節\n.ec-font-size-5 さわやかな日差しが過ごしやすい季節\n.ec-font-size-6 さわやかな日差しが過ごしやすい季節\n\n\nStyleguide 1.2.5\n*/\n\n.ec-font-size-1 {\n font-size: 12px;\n}\n\n.ec-font-size-2 {\n font-size: 14px;\n}\n\n.ec-font-size-3 {\n font-size: 16px;\n}\n\n.ec-font-size-4 {\n font-size: 20px;\n}\n\n.ec-font-size-5 {\n font-size: 32px;\n}\n\n.ec-font-size-6 {\n font-size: 40px;\n}\n\n/*\nテキスト水平位置\n\nテキストをセンタリングするためのスタイルです。\n\nMarkup:\np.ec-text-ac さわやかな日差しが過ごしやすい季節\n\nStyleguide 1.2.6\n*/\n\n.ec-text-ac {\n text-align: center;\n}\n\n/*\n価格テキスト\n\n価格を表示するテキストです。\n\n価格文字にスペースを取るほか、税込み等の表示を小さくする効果もあります。\n\nspanを用いたインライン要素として利用します。\n\nMarkup:\ndiv(style=\"color:#DE5D50;font-size:28px\")\n span.ec-price\n span.ec-price__unit ¥\n span.ec-price__price 1,280\n span.ec-price__tax 税込\n\nStyleguide 1.2.7\n*/\n.ec-price {\n & &__unit {\n font-size: 18px;\n font-weight: bold;\n @include media_desktop{\n font-size: 1em;\n }\n }\n & &__price {\n display: inline-block;\n padding: 0 .3em;\n font-size: 18px;\n font-weight: bold;\n @include media_desktop{\n font-size: 1em;\n }\n }\n & &__tax {\n font-size: 12px;\n @include media_desktop{\n font-size: 0.57em;\n }\n }\n\n}\n\n/*\nテキストの位置\n\nテキストや、入れ子にしたインライン要素を\n「左揃え」「中央揃え」「右揃え」に設定することができます。\n\nMarkup:\nh3 左揃え\np.text-left\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 中央揃え\np.text-center\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 右揃え\np.text-right\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\n\nStyleguide 1.2.8\n*/\n.text-left {\n text-align: left;\n}\n\n.text-center {\n text-align: center;\n}\n\n.text-right {\n text-align: right;\n}\n\n/*\nメッセージテキスト\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用されるテキストのスタイルです。\n\nex [注文完了 (ログイン後、カートに商品を入れ注文完了まで行う)](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\np.ec-reportDescription\n | ただいま、ご注文の確認メールをお送りさせていただきました。\n br\n | 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n br\n | 今後ともご愛顧賜りますようよろしくお願い申し上げます。\n\n\nStyleguide 1.2.9\n*/\n.ec-reportDescription {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px;\n line-height: 1.4;\n}\n\n/*\nテキスト下部のスペース\n\nテキストの下に余白を追加することができます。 .ec-para-normalで16pxの余白をつけることができます。\n\nMarkup:\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n\nStyleguide 1.2.10\n*/\n.ec-para-normal {\n margin-bottom: 16px;\n}\n","@import \"../mixins/media\";\n\n/*\nリスト\n\nシンプルなリストを構成するためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.3\n*/\n\n/*\n水平定義リスト\n\nシンプルな定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 水平定義リスト部分](http://demo3.ec-cube.net/help/about)\n\nMarkup:\ndl.ec-definitions\n dt 店名\n dd EC-CUBE3 DEMO SHOP\ndl.ec-definitions\n dt 会社名\n dd EC-CUBE3\ndl.ec-definitions--soft\n dt 所在地\n dd 〒 550-0001\n\nStyleguide 1.3.1\n*/\n.ec-definitions {\n margin: 5px 0;\n display: block;\n & dt, dd {\n display: inline-block;\n margin: 0;\n }\n & dt {\n font-weight: bold;\n }\n}\n\n.ec-definitions--soft {\n @extend .ec-definitions;\n & dt {\n font-weight: normal;\n }\n}\n\n/*\n下線つき定義リスト\n\n線が添えられた定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 下線つき定義リスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt 店名\n dd EC-CUBE3 DEMO SHOP\n dl\n dt 会社名\n dd EC-CUBE3\n dl\n dt 所在地\n dd 〒550 - 0001\n\nStyleguide 1.3.2\n*/\n\n.ec-borderedDefs {\n width: 100%;\n border-top: 1px dotted #ccc;\n margin-bottom:16px;\n dl {\n display: flex;\n border-bottom: 1px dotted #ccc;\n margin: 0;\n padding: 10px 0 0;\n flex-wrap: wrap;\n @include media_desktop {\n flex-wrap: nowrap;\n padding: 15px 0 4px;\n }\n }\n dt, dd {\n padding: 0;\n }\n\n dt {\n font-weight: normal;\n width: 100%;\n padding-top: 0;\n @include media_desktop {\n padding-top: 14px;\n width: 30%;\n }\n }\n\n dd {\n padding: 0;\n width: 100%;\n line-height: 2.5;\n @include media_desktop {\n width: 70%;\n //padding: 18px 16px;\n line-height: 3;\n }\n }\n p {\n line-height: 1.4;\n }\n}\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0;\n\n dt, dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 0;\n @include media_desktop {\n padding: 16px 0;\n }\n }\n\n dt {\n width: 30%;\n }\n\n dd {\n padding: 0;\n @include media_desktop {\n padding: 16px;\n }\n }\n}\n\n/*\nボーダーリスト\n\n線が添えられたリストを表示します。\n\nex [当サイトについて ボーダーリスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\nul.ec-borderedList\n li: p lorem\n li: p lorem\n li: p lorem\n\n\nStyleguide 1.3.3\n*/\n\n.ec-borderedList {\n width: 100%;\n border-top: 0;\n list-style: none;\n padding: 0;\n @include media_desktop {\n border-top: 1px dotted #ccc;\n }\n li {\n border-bottom: 1px dotted #ccc;\n }\n}\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0;\n\n dt, dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 16px 0;\n }\n\n dt {\n width: 30%;\n }\n\n dd {\n padding: 16px;\n }\n}\n","@import \"../mixins/btn\";\n/*\nボタンサイズ\n\nボタンサイズを変更するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.1\n*/\n\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nex [トップページ ボタン部分](http://demo3.ec-cube.net/)\n\nMarkup:\n.ec-inlineBtn 住所検索\n.ec-inlineBtn--primary もっと見る\n.ec-inlineBtn--action カートに入れる\n.ec-inlineBtn--cancel キャンセル\n\nStyleguide 2.1.1\n*/\n.ec-inlineBtn{\n @include btn-default;\n}\n.ec-inlineBtn--primary{\n @include btn-primary\n}\n.ec-inlineBtn--action{\n @include btn-action\n}\n.ec-inlineBtn--cancel{\n @include btn-cancel\n}\n\n/*\nブロックボタン(全幅)\n\nボタンサイズは em で指定するため、テキストサイズの変更でボタンサイズを変更できます。\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\np: .ec-blockBtn 住所検索\np: .ec-blockBtn--primary もっと見る\np: .ec-blockBtn--action カートに入れる\np: .ec-blockBtn--cancel キャンセル\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn{\n @include blockBtn-default;\n}\n.ec-blockBtn--primary{\n @include blockBtn-primary\n}\n.ec-blockBtn--action{\n @include blockBtn-action\n}\n.ec-blockBtn--cancel{\n @include blockBtn-cancel\n}\n","@import \"../mixins/variables\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/buttons\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/opacity\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/vendor-prefixes\";\n\n$padding-base-vertical: 6px !default;\n\n\n$btn-primary-bg: #5CB1B1;\n$btn-primary-color: #fff;\n$btn-action-bg: #DE5D50;\n$btn-action-color: #fff;\n$btn-cancel-bg: #525263;\n$btn-cancel-color: #fff;\n$btn-default-bg: #F5F7F8;\n$btn-default-color: #525263;\n\n$btn-border-radius-base: 0px;\n\n\n@mixin _btn($color, $background, $border){\n display: inline-block;\n margin-bottom: 0; // For input.btn\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n white-space: nowrap;\n @include button-size($padding-base-vertical, $padding-base-horizontal, $font-size-base, $line-height-base, $btn-border-radius-base);\n @include user-select(none);\n padding: 10px 16px;\n text-decoration: none;\n\n &,\n &:active,\n &.active {\n &:focus,\n &.focus {\n @include tab-focus;\n }\n }\n\n &:hover,\n &:focus,\n &.focus {\n color: $btn-default-color;\n text-decoration: none;\n }\n\n &:active,\n &.active {\n outline: 0;\n background-image: none;\n @include box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n cursor: $cursor-disabled;\n @include opacity(.65);\n @include box-shadow(none);\n }\n\n @include button-variant($color, $background, $border);\n // [converter] extracted a& to a.btn\n\n .ec-icon img {\n width: 1em;\n vertical-align: text-bottom;\n }\n}\n\n@mixin btn-default(){\n @include _btn($btn-default-color, $btn-default-bg, $btn-default-border)\n}\n@mixin btn-action(){\n @include _btn($btn-action-color, $btn-action-bg, $btn-action-bg)\n}\n@mixin btn-cancel(){\n @include _btn($btn-cancel-color, $btn-cancel-bg, $btn-cancel-bg)\n}\n@mixin btn-primary(){\n @include _btn($btn-primary-color, $btn-primary-bg, $btn-primary-bg)\n}\n\n@mixin blockBtn-default(){\n @include _btn($btn-default-color, $btn-default-bg, $btn-default-border);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n@mixin blockBtn-action(){\n @include _btn($btn-action-color, $btn-action-bg, $btn-action-bg);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n@mixin blockBtn-cancel(){\n @include _btn($btn-cancel-color, $btn-cancel-bg, $btn-cancel-bg);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n@mixin blockBtn-primary(){\n @include _btn($btn-primary-color, $btn-primary-bg, $btn-primary-bg);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n\n// User select\n// For selecting text on the page\n\n@mixin user-select($select) {\n -webkit-user-select: $select;\n -moz-user-select: $select;\n -ms-user-select: $select; // IE10+\n user-select: $select;\n}\n\n\n\n\n@mixin linkBtn{\n &.disabled,\n fieldset[disabled] & {\n pointer-events: none; // Future-proof disabling of clicks on `` elements\n }\n}\n","// Button variants\n//\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for all buttons\n\n@mixin button-variant($color, $background, $border) {\n color: $color;\n background-color: $background;\n border-color: $border;\n\n &:focus,\n &.focus {\n color: $color;\n background-color: darken($background, 10%);\n border-color: darken($border, 25%);\n }\n &:hover {\n color: $color;\n background-color: darken($background, 10%);\n border-color: darken($border, 12%);\n }\n &:active,\n &.active,\n .open > &.dropdown-toggle {\n color: $color;\n background-color: darken($background, 10%);\n border-color: darken($border, 12%);\n\n &:hover,\n &:focus,\n &.focus {\n color: $color;\n background-color: darken($background, 17%);\n border-color: darken($border, 25%);\n }\n }\n &:active,\n &.active,\n .open > &.dropdown-toggle {\n background-image: none;\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus,\n &.focus {\n background-color: $background;\n border-color: $border;\n }\n }\n\n .badge {\n color: $background;\n background-color: $color;\n }\n}\n\n// Button sizes\n@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {\n padding: $padding-vertical $padding-horizontal;\n font-size: $font-size;\n line-height: $line-height;\n border-radius: $border-radius;\n}\n","$bootstrap-sass-asset-helper: false !default;\n//\n// Variables\n// --------------------------------------------------\n\n\n//== Colors\n//\n//## Gray and brand colors for use across Bootstrap.\n\n$gray-base: #000 !default;\n$gray-darker: lighten($gray-base, 13.5%) !default; // #222\n$gray-dark: lighten($gray-base, 20%) !default; // #333\n$gray: lighten($gray-base, 33.5%) !default; // #555\n$gray-light: lighten($gray-base, 46.7%) !default; // #777\n$gray-lighter: lighten($gray-base, 93.5%) !default; // #eee\n\n$brand-primary: darken(#428bca, 6.5%) !default; // #337ab7\n$brand-success: #5cb85c !default;\n$brand-info: #5bc0de !default;\n$brand-warning: #f0ad4e !default;\n$brand-danger: #d9534f !default;\n\n\n//== Scaffolding\n//\n//## Settings for some of the most global styles.\n\n//** Background color for ``.\n$body-bg: #fff !default;\n//** Global text color on ``.\n$text-color: $gray-dark !default;\n\n//** Global textual link color.\n$link-color: $brand-primary !default;\n//** Link hover color set via `darken()` function.\n$link-hover-color: darken($link-color, 15%) !default;\n//** Link hover decoration.\n$link-hover-decoration: underline !default;\n\n\n//== Typography\n//\n//## Font, line-height, and color for body text, headings, and more.\n\n$font-family-sans-serif: \"Helvetica Neue\", Helvetica, Arial, sans-serif !default;\n$font-family-serif: Georgia, \"Times New Roman\", Times, serif !default;\n//** Default monospace fonts for ``, ``, and `
`.\n$font-family-monospace:   Menlo, Monaco, Consolas, \"Courier New\", monospace !default;\n$font-family-base:        $font-family-sans-serif !default;\n\n$font-size-base:          14px !default;\n$font-size-large:         ceil(($font-size-base * 1.25)) !default; // ~18px\n$font-size-small:         ceil(($font-size-base * 0.85)) !default; // ~12px\n\n$font-size-h1:            floor(($font-size-base * 2.6)) !default; // ~36px\n$font-size-h2:            floor(($font-size-base * 2.15)) !default; // ~30px\n$font-size-h3:            ceil(($font-size-base * 1.7)) !default; // ~24px\n$font-size-h4:            ceil(($font-size-base * 1.25)) !default; // ~18px\n$font-size-h5:            $font-size-base !default;\n$font-size-h6:            ceil(($font-size-base * 0.85)) !default; // ~12px\n\n//** Unit-less `line-height` for use in components like buttons.\n$line-height-base:        1.428571429 !default; // 20/14\n//** Computed \"line-height\" (`font-size` * `line-height`) for use with `margin`, `padding`, etc.\n$line-height-computed:    floor(($font-size-base * $line-height-base)) !default; // ~20px\n\n//** By default, this inherits from the ``.\n$headings-font-family:    inherit !default;\n$headings-font-weight:    500 !default;\n$headings-line-height:    1.1 !default;\n$headings-color:          inherit !default;\n\n\n//== Iconography\n//\n//## Specify custom location and filename of the included Glyphicons icon font. Useful for those including Bootstrap via Bower.\n\n//** Load fonts from this directory.\n\n// [converter] If $bootstrap-sass-asset-helper if used, provide path relative to the assets load path.\n// [converter] This is because some asset helpers, such as Sprockets, do not work with file-relative paths.\n$icon-font-path: if($bootstrap-sass-asset-helper, \"bootstrap/\", \"../fonts/bootstrap/\") !default;\n\n//** File name for all font files.\n$icon-font-name:          \"glyphicons-halflings-regular\" !default;\n//** Element ID within SVG icon file.\n$icon-font-svg-id:        \"glyphicons_halflingsregular\" !default;\n\n\n//== Components\n//\n//## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start).\n\n$padding-base-vertical:     6px !default;\n$padding-base-horizontal:   12px !default;\n\n$padding-large-vertical:    10px !default;\n$padding-large-horizontal:  16px !default;\n\n$padding-small-vertical:    5px !default;\n$padding-small-horizontal:  10px !default;\n\n$padding-xs-vertical:       1px !default;\n$padding-xs-horizontal:     5px !default;\n\n$line-height-large:         1.3333333 !default; // extra decimals for Win 8.1 Chrome\n$line-height-small:         1.5 !default;\n\n$border-radius-base:        4px !default;\n$border-radius-large:       6px !default;\n$border-radius-small:       3px !default;\n\n//** Global color for active items (e.g., navs or dropdowns).\n$component-active-color:    #fff !default;\n//** Global background color for active items (e.g., navs or dropdowns).\n$component-active-bg:       $brand-primary !default;\n\n//** Width of the `border` for generating carets that indicate dropdowns.\n$caret-width-base:          4px !default;\n//** Carets increase slightly in size for larger components.\n$caret-width-large:         5px !default;\n\n\n//== Tables\n//\n//## Customizes the `.table` component with basic values, each used across all table variations.\n\n//** Padding for ``s and ``s.\n$table-cell-padding:            8px !default;\n//** Padding for cells in `.table-condensed`.\n$table-condensed-cell-padding:  5px !default;\n\n//** Default background color used for all tables.\n$table-bg:                      transparent !default;\n//** Background color used for `.table-striped`.\n$table-bg-accent:               #f9f9f9 !default;\n//** Background color used for `.table-hover`.\n$table-bg-hover:                #f5f5f5 !default;\n$table-bg-active:               $table-bg-hover !default;\n\n//** Border color for table and cell borders.\n$table-border-color:            #ddd !default;\n\n\n//== Buttons\n//\n//## For each of Bootstrap's buttons, define text, background and border color.\n\n$btn-font-weight:                normal !default;\n\n$btn-default-color:              #333 !default;\n$btn-default-bg:                 #fff !default;\n$btn-default-border:             #ccc !default;\n\n$btn-primary-color:              #fff !default;\n$btn-primary-bg:                 $brand-primary !default;\n$btn-primary-border:             darken($btn-primary-bg, 5%) !default;\n\n$btn-success-color:              #fff !default;\n$btn-success-bg:                 $brand-success !default;\n$btn-success-border:             darken($btn-success-bg, 5%) !default;\n\n$btn-info-color:                 #fff !default;\n$btn-info-bg:                    $brand-info !default;\n$btn-info-border:                darken($btn-info-bg, 5%) !default;\n\n$btn-warning-color:              #fff !default;\n$btn-warning-bg:                 $brand-warning !default;\n$btn-warning-border:             darken($btn-warning-bg, 5%) !default;\n\n$btn-danger-color:               #fff !default;\n$btn-danger-bg:                  $brand-danger !default;\n$btn-danger-border:              darken($btn-danger-bg, 5%) !default;\n\n$btn-link-disabled-color:        $gray-light !default;\n\n// Allows for customizing button radius independently from global border radius\n$btn-border-radius-base:         $border-radius-base !default;\n$btn-border-radius-large:        $border-radius-large !default;\n$btn-border-radius-small:        $border-radius-small !default;\n\n\n//== Forms\n//\n//##\n\n//** `` background color\n$input-bg:                       #fff !default;\n//** `` background color\n$input-bg-disabled:              $gray-lighter !default;\n\n//** Text color for ``s\n$input-color:                    $gray !default;\n//** `` border color\n$input-border:                   #ccc !default;\n\n// TODO: Rename `$input-border-radius` to `$input-border-radius-base` in v4\n//** Default `.form-control` border radius\n// This has no effect on ``s in CSS.\n$input-border-radius:            $border-radius-base !default;\n//** Large `.form-control` border radius\n$input-border-radius-large:      $border-radius-large !default;\n//** Small `.form-control` border radius\n$input-border-radius-small:      $border-radius-small !default;\n\n//** Border color for inputs on focus\n$input-border-focus:             #66afe9 !default;\n\n//** Placeholder text color\n$input-color-placeholder:        #999 !default;\n\n//** Default `.form-control` height\n$input-height-base:              ($line-height-computed + ($padding-base-vertical * 2) + 2) !default;\n//** Large `.form-control` height\n$input-height-large:             (ceil($font-size-large * $line-height-large) + ($padding-large-vertical * 2) + 2) !default;\n//** Small `.form-control` height\n$input-height-small:             (floor($font-size-small * $line-height-small) + ($padding-small-vertical * 2) + 2) !default;\n\n//** `.form-group` margin\n$form-group-margin-bottom:       15px !default;\n\n$legend-color:                   $gray-dark !default;\n$legend-border-color:            #e5e5e5 !default;\n\n//** Background color for textual input addons\n$input-group-addon-bg:           $gray-lighter !default;\n//** Border color for textual input addons\n$input-group-addon-border-color: $input-border !default;\n\n//** Disabled cursor for form controls and buttons.\n$cursor-disabled:                not-allowed !default;\n\n\n//== Dropdowns\n//\n//## Dropdown menu container and contents.\n\n//** Background for the dropdown menu.\n$dropdown-bg:                    #fff !default;\n//** Dropdown menu `border-color`.\n$dropdown-border:                rgba(0,0,0,.15) !default;\n//** Dropdown menu `border-color` **for IE8**.\n$dropdown-fallback-border:       #ccc !default;\n//** Divider color for between dropdown items.\n$dropdown-divider-bg:            #e5e5e5 !default;\n\n//** Dropdown link text color.\n$dropdown-link-color:            $gray-dark !default;\n//** Hover color for dropdown links.\n$dropdown-link-hover-color:      darken($gray-dark, 5%) !default;\n//** Hover background for dropdown links.\n$dropdown-link-hover-bg:         #f5f5f5 !default;\n\n//** Active dropdown menu item text color.\n$dropdown-link-active-color:     $component-active-color !default;\n//** Active dropdown menu item background color.\n$dropdown-link-active-bg:        $component-active-bg !default;\n\n//** Disabled dropdown menu item background color.\n$dropdown-link-disabled-color:   $gray-light !default;\n\n//** Text color for headers within dropdown menus.\n$dropdown-header-color:          $gray-light !default;\n\n//** Deprecated `$dropdown-caret-color` as of v3.1.0\n$dropdown-caret-color:           #000 !default;\n\n\n//-- Z-index master list\n//\n// Warning: Avoid customizing these values. They're used for a bird's eye view\n// of components dependent on the z-axis and are designed to all work together.\n//\n// Note: These variables are not generated into the Customizer.\n\n$zindex-navbar:            1000 !default;\n$zindex-dropdown:          1000 !default;\n$zindex-popover:           1060 !default;\n$zindex-tooltip:           1070 !default;\n$zindex-navbar-fixed:      1030 !default;\n$zindex-modal-background:  1040 !default;\n$zindex-modal:             1050 !default;\n\n\n//== Media queries breakpoints\n//\n//## Define the breakpoints at which your layout will change, adapting to different screen sizes.\n\n// Extra small screen / phone\n//** Deprecated `$screen-xs` as of v3.0.1\n$screen-xs:                  480px !default;\n//** Deprecated `$screen-xs-min` as of v3.2.0\n$screen-xs-min:              $screen-xs !default;\n//** Deprecated `$screen-phone` as of v3.0.1\n$screen-phone:               $screen-xs-min !default;\n\n// Small screen / tablet\n//** Deprecated `$screen-sm` as of v3.0.1\n$screen-sm:                  768px !default;\n$screen-sm-min:              $screen-sm !default;\n//** Deprecated `$screen-tablet` as of v3.0.1\n$screen-tablet:              $screen-sm-min !default;\n\n// Medium screen / desktop\n//** Deprecated `$screen-md` as of v3.0.1\n$screen-md:                  992px !default;\n$screen-md-min:              $screen-md !default;\n//** Deprecated `$screen-desktop` as of v3.0.1\n$screen-desktop:             $screen-md-min !default;\n\n// Large screen / wide desktop\n//** Deprecated `$screen-lg` as of v3.0.1\n$screen-lg:                  1200px !default;\n$screen-lg-min:              $screen-lg !default;\n//** Deprecated `$screen-lg-desktop` as of v3.0.1\n$screen-lg-desktop:          $screen-lg-min !default;\n\n// So media queries don't overlap when required, provide a maximum\n$screen-xs-max:              ($screen-sm-min - 1) !default;\n$screen-sm-max:              ($screen-md-min - 1) !default;\n$screen-md-max:              ($screen-lg-min - 1) !default;\n\n\n//== Grid system\n//\n//## Define your custom responsive grid.\n\n//** Number of columns in the grid.\n$grid-columns:              12 !default;\n//** Padding between columns. Gets divided in half for the left and right.\n$grid-gutter-width:         30px !default;\n// Navbar collapse\n//** Point at which the navbar becomes uncollapsed.\n$grid-float-breakpoint:     $screen-sm-min !default;\n//** Point at which the navbar begins collapsing.\n$grid-float-breakpoint-max: ($grid-float-breakpoint - 1) !default;\n\n\n//== Container sizes\n//\n//## Define the maximum width of `.container` for different screen sizes.\n\n// Small screen / tablet\n$container-tablet:             (720px + $grid-gutter-width) !default;\n//** For `$screen-sm-min` and up.\n$container-sm:                 $container-tablet !default;\n\n// Medium screen / desktop\n$container-desktop:            (940px + $grid-gutter-width) !default;\n//** For `$screen-md-min` and up.\n$container-md:                 $container-desktop !default;\n\n// Large screen / wide desktop\n$container-large-desktop:      (1140px + $grid-gutter-width) !default;\n//** For `$screen-lg-min` and up.\n$container-lg:                 $container-large-desktop !default;\n\n\n//== Navbar\n//\n//##\n\n// Basics of a navbar\n$navbar-height:                    50px !default;\n$navbar-margin-bottom:             $line-height-computed !default;\n$navbar-border-radius:             $border-radius-base !default;\n$navbar-padding-horizontal:        floor(($grid-gutter-width / 2)) !default;\n$navbar-padding-vertical:          (($navbar-height - $line-height-computed) / 2) !default;\n$navbar-collapse-max-height:       340px !default;\n\n$navbar-default-color:             #777 !default;\n$navbar-default-bg:                #f8f8f8 !default;\n$navbar-default-border:            darken($navbar-default-bg, 6.5%) !default;\n\n// Navbar links\n$navbar-default-link-color:                #777 !default;\n$navbar-default-link-hover-color:          #333 !default;\n$navbar-default-link-hover-bg:             transparent !default;\n$navbar-default-link-active-color:         #555 !default;\n$navbar-default-link-active-bg:            darken($navbar-default-bg, 6.5%) !default;\n$navbar-default-link-disabled-color:       #ccc !default;\n$navbar-default-link-disabled-bg:          transparent !default;\n\n// Navbar brand label\n$navbar-default-brand-color:               $navbar-default-link-color !default;\n$navbar-default-brand-hover-color:         darken($navbar-default-brand-color, 10%) !default;\n$navbar-default-brand-hover-bg:            transparent !default;\n\n// Navbar toggle\n$navbar-default-toggle-hover-bg:           #ddd !default;\n$navbar-default-toggle-icon-bar-bg:        #888 !default;\n$navbar-default-toggle-border-color:       #ddd !default;\n\n\n//=== Inverted navbar\n// Reset inverted navbar basics\n$navbar-inverse-color:                      lighten($gray-light, 15%) !default;\n$navbar-inverse-bg:                         #222 !default;\n$navbar-inverse-border:                     darken($navbar-inverse-bg, 10%) !default;\n\n// Inverted navbar links\n$navbar-inverse-link-color:                 lighten($gray-light, 15%) !default;\n$navbar-inverse-link-hover-color:           #fff !default;\n$navbar-inverse-link-hover-bg:              transparent !default;\n$navbar-inverse-link-active-color:          $navbar-inverse-link-hover-color !default;\n$navbar-inverse-link-active-bg:             darken($navbar-inverse-bg, 10%) !default;\n$navbar-inverse-link-disabled-color:        #444 !default;\n$navbar-inverse-link-disabled-bg:           transparent !default;\n\n// Inverted navbar brand label\n$navbar-inverse-brand-color:                $navbar-inverse-link-color !default;\n$navbar-inverse-brand-hover-color:          #fff !default;\n$navbar-inverse-brand-hover-bg:             transparent !default;\n\n// Inverted navbar toggle\n$navbar-inverse-toggle-hover-bg:            #333 !default;\n$navbar-inverse-toggle-icon-bar-bg:         #fff !default;\n$navbar-inverse-toggle-border-color:        #333 !default;\n\n\n//== Navs\n//\n//##\n\n//=== Shared nav styles\n$nav-link-padding:                          10px 15px !default;\n$nav-link-hover-bg:                         $gray-lighter !default;\n\n$nav-disabled-link-color:                   $gray-light !default;\n$nav-disabled-link-hover-color:             $gray-light !default;\n\n//== Tabs\n$nav-tabs-border-color:                     #ddd !default;\n\n$nav-tabs-link-hover-border-color:          $gray-lighter !default;\n\n$nav-tabs-active-link-hover-bg:             $body-bg !default;\n$nav-tabs-active-link-hover-color:          $gray !default;\n$nav-tabs-active-link-hover-border-color:   #ddd !default;\n\n$nav-tabs-justified-link-border-color:            #ddd !default;\n$nav-tabs-justified-active-link-border-color:     $body-bg !default;\n\n//== Pills\n$nav-pills-border-radius:                   $border-radius-base !default;\n$nav-pills-active-link-hover-bg:            $component-active-bg !default;\n$nav-pills-active-link-hover-color:         $component-active-color !default;\n\n\n//== Pagination\n//\n//##\n\n$pagination-color:                     $link-color !default;\n$pagination-bg:                        #fff !default;\n$pagination-border:                    #ddd !default;\n\n$pagination-hover-color:               $link-hover-color !default;\n$pagination-hover-bg:                  $gray-lighter !default;\n$pagination-hover-border:              #ddd !default;\n\n$pagination-active-color:              #fff !default;\n$pagination-active-bg:                 $brand-primary !default;\n$pagination-active-border:             $brand-primary !default;\n\n$pagination-disabled-color:            $gray-light !default;\n$pagination-disabled-bg:               #fff !default;\n$pagination-disabled-border:           #ddd !default;\n\n\n//== Pager\n//\n//##\n\n$pager-bg:                             $pagination-bg !default;\n$pager-border:                         $pagination-border !default;\n$pager-border-radius:                  15px !default;\n\n$pager-hover-bg:                       $pagination-hover-bg !default;\n\n$pager-active-bg:                      $pagination-active-bg !default;\n$pager-active-color:                   $pagination-active-color !default;\n\n$pager-disabled-color:                 $pagination-disabled-color !default;\n\n\n//== Jumbotron\n//\n//##\n\n$jumbotron-padding:              30px !default;\n$jumbotron-color:                inherit !default;\n$jumbotron-bg:                   $gray-lighter !default;\n$jumbotron-heading-color:        inherit !default;\n$jumbotron-font-size:            ceil(($font-size-base * 1.5)) !default;\n$jumbotron-heading-font-size:    ceil(($font-size-base * 4.5)) !default;\n\n\n//== Form states and alerts\n//\n//## Define colors for form feedback states and, by default, alerts.\n\n$state-success-text:             #3c763d !default;\n$state-success-bg:               #dff0d8 !default;\n$state-success-border:           darken(adjust-hue($state-success-bg, -10), 5%) !default;\n\n$state-info-text:                #31708f !default;\n$state-info-bg:                  #d9edf7 !default;\n$state-info-border:              darken(adjust-hue($state-info-bg, -10), 7%) !default;\n\n$state-warning-text:             #8a6d3b !default;\n$state-warning-bg:               #fcf8e3 !default;\n$state-warning-border:           darken(adjust-hue($state-warning-bg, -10), 5%) !default;\n\n$state-danger-text:              #a94442 !default;\n$state-danger-bg:                #f2dede !default;\n$state-danger-border:            darken(adjust-hue($state-danger-bg, -10), 5%) !default;\n\n\n//== Tooltips\n//\n//##\n\n//** Tooltip max width\n$tooltip-max-width:           200px !default;\n//** Tooltip text color\n$tooltip-color:               #fff !default;\n//** Tooltip background color\n$tooltip-bg:                  #000 !default;\n$tooltip-opacity:             .9 !default;\n\n//** Tooltip arrow width\n$tooltip-arrow-width:         5px !default;\n//** Tooltip arrow color\n$tooltip-arrow-color:         $tooltip-bg !default;\n\n\n//== Popovers\n//\n//##\n\n//** Popover body background color\n$popover-bg:                          #fff !default;\n//** Popover maximum width\n$popover-max-width:                   276px !default;\n//** Popover border color\n$popover-border-color:                rgba(0,0,0,.2) !default;\n//** Popover fallback border color\n$popover-fallback-border-color:       #ccc !default;\n\n//** Popover title background color\n$popover-title-bg:                    darken($popover-bg, 3%) !default;\n\n//** Popover arrow width\n$popover-arrow-width:                 10px !default;\n//** Popover arrow color\n$popover-arrow-color:                 $popover-bg !default;\n\n//** Popover outer arrow width\n$popover-arrow-outer-width:           ($popover-arrow-width + 1) !default;\n//** Popover outer arrow color\n$popover-arrow-outer-color:           fade_in($popover-border-color, 0.05) !default;\n//** Popover outer arrow fallback color\n$popover-arrow-outer-fallback-color:  darken($popover-fallback-border-color, 20%) !default;\n\n\n//== Labels\n//\n//##\n\n//** Default label background color\n$label-default-bg:            $gray-light !default;\n//** Primary label background color\n$label-primary-bg:            $brand-primary !default;\n//** Success label background color\n$label-success-bg:            $brand-success !default;\n//** Info label background color\n$label-info-bg:               $brand-info !default;\n//** Warning label background color\n$label-warning-bg:            $brand-warning !default;\n//** Danger label background color\n$label-danger-bg:             $brand-danger !default;\n\n//** Default label text color\n$label-color:                 #fff !default;\n//** Default text color of a linked label\n$label-link-hover-color:      #fff !default;\n\n\n//== Modals\n//\n//##\n\n//** Padding applied to the modal body\n$modal-inner-padding:         15px !default;\n\n//** Padding applied to the modal title\n$modal-title-padding:         15px !default;\n//** Modal title line-height\n$modal-title-line-height:     $line-height-base !default;\n\n//** Background color of modal content area\n$modal-content-bg:                             #fff !default;\n//** Modal content border color\n$modal-content-border-color:                   rgba(0,0,0,.2) !default;\n//** Modal content border color **for IE8**\n$modal-content-fallback-border-color:          #999 !default;\n\n//** Modal backdrop background color\n$modal-backdrop-bg:           #000 !default;\n//** Modal backdrop opacity\n$modal-backdrop-opacity:      .5 !default;\n//** Modal header border color\n$modal-header-border-color:   #e5e5e5 !default;\n//** Modal footer border color\n$modal-footer-border-color:   $modal-header-border-color !default;\n\n$modal-lg:                    900px !default;\n$modal-md:                    600px !default;\n$modal-sm:                    300px !default;\n\n\n//== Alerts\n//\n//## Define alert colors, border radius, and padding.\n\n$alert-padding:               15px !default;\n$alert-border-radius:         $border-radius-base !default;\n$alert-link-font-weight:      bold !default;\n\n$alert-success-bg:            $state-success-bg !default;\n$alert-success-text:          $state-success-text !default;\n$alert-success-border:        $state-success-border !default;\n\n$alert-info-bg:               $state-info-bg !default;\n$alert-info-text:             $state-info-text !default;\n$alert-info-border:           $state-info-border !default;\n\n$alert-warning-bg:            $state-warning-bg !default;\n$alert-warning-text:          $state-warning-text !default;\n$alert-warning-border:        $state-warning-border !default;\n\n$alert-danger-bg:             $state-danger-bg !default;\n$alert-danger-text:           $state-danger-text !default;\n$alert-danger-border:         $state-danger-border !default;\n\n\n//== Progress bars\n//\n//##\n\n//** Background color of the whole progress component\n$progress-bg:                 #f5f5f5 !default;\n//** Progress bar text color\n$progress-bar-color:          #fff !default;\n//** Variable for setting rounded corners on progress bar.\n$progress-border-radius:      $border-radius-base !default;\n\n//** Default progress bar color\n$progress-bar-bg:             $brand-primary !default;\n//** Success progress bar color\n$progress-bar-success-bg:     $brand-success !default;\n//** Warning progress bar color\n$progress-bar-warning-bg:     $brand-warning !default;\n//** Danger progress bar color\n$progress-bar-danger-bg:      $brand-danger !default;\n//** Info progress bar color\n$progress-bar-info-bg:        $brand-info !default;\n\n\n//== List group\n//\n//##\n\n//** Background color on `.list-group-item`\n$list-group-bg:                 #fff !default;\n//** `.list-group-item` border color\n$list-group-border:             #ddd !default;\n//** List group border radius\n$list-group-border-radius:      $border-radius-base !default;\n\n//** Background color of single list items on hover\n$list-group-hover-bg:           #f5f5f5 !default;\n//** Text color of active list items\n$list-group-active-color:       $component-active-color !default;\n//** Background color of active list items\n$list-group-active-bg:          $component-active-bg !default;\n//** Border color of active list elements\n$list-group-active-border:      $list-group-active-bg !default;\n//** Text color for content within active list items\n$list-group-active-text-color:  lighten($list-group-active-bg, 40%) !default;\n\n//** Text color of disabled list items\n$list-group-disabled-color:      $gray-light !default;\n//** Background color of disabled list items\n$list-group-disabled-bg:         $gray-lighter !default;\n//** Text color for content within disabled list items\n$list-group-disabled-text-color: $list-group-disabled-color !default;\n\n$list-group-link-color:         #555 !default;\n$list-group-link-hover-color:   $list-group-link-color !default;\n$list-group-link-heading-color: #333 !default;\n\n\n//== Panels\n//\n//##\n\n$panel-bg:                    #fff !default;\n$panel-body-padding:          15px !default;\n$panel-heading-padding:       10px 15px !default;\n$panel-footer-padding:        $panel-heading-padding !default;\n$panel-border-radius:         $border-radius-base !default;\n\n//** Border color for elements within panels\n$panel-inner-border:          #ddd !default;\n$panel-footer-bg:             #f5f5f5 !default;\n\n$panel-default-text:          $gray-dark !default;\n$panel-default-border:        #ddd !default;\n$panel-default-heading-bg:    #f5f5f5 !default;\n\n$panel-primary-text:          #fff !default;\n$panel-primary-border:        $brand-primary !default;\n$panel-primary-heading-bg:    $brand-primary !default;\n\n$panel-success-text:          $state-success-text !default;\n$panel-success-border:        $state-success-border !default;\n$panel-success-heading-bg:    $state-success-bg !default;\n\n$panel-info-text:             $state-info-text !default;\n$panel-info-border:           $state-info-border !default;\n$panel-info-heading-bg:       $state-info-bg !default;\n\n$panel-warning-text:          $state-warning-text !default;\n$panel-warning-border:        $state-warning-border !default;\n$panel-warning-heading-bg:    $state-warning-bg !default;\n\n$panel-danger-text:           $state-danger-text !default;\n$panel-danger-border:         $state-danger-border !default;\n$panel-danger-heading-bg:     $state-danger-bg !default;\n\n\n//== Thumbnails\n//\n//##\n\n//** Padding around the thumbnail image\n$thumbnail-padding:           4px !default;\n//** Thumbnail background color\n$thumbnail-bg:                $body-bg !default;\n//** Thumbnail border color\n$thumbnail-border:            #ddd !default;\n//** Thumbnail border radius\n$thumbnail-border-radius:     $border-radius-base !default;\n\n//** Custom text color for thumbnail captions\n$thumbnail-caption-color:     $text-color !default;\n//** Padding around the thumbnail caption\n$thumbnail-caption-padding:   9px !default;\n\n\n//== Wells\n//\n//##\n\n$well-bg:                     #f5f5f5 !default;\n$well-border:                 darken($well-bg, 7%) !default;\n\n\n//== Badges\n//\n//##\n\n$badge-color:                 #fff !default;\n//** Linked badge text color on hover\n$badge-link-hover-color:      #fff !default;\n$badge-bg:                    $gray-light !default;\n\n//** Badge text color in active nav link\n$badge-active-color:          $link-color !default;\n//** Badge background color in active nav link\n$badge-active-bg:             #fff !default;\n\n$badge-font-weight:           bold !default;\n$badge-line-height:           1 !default;\n$badge-border-radius:         10px !default;\n\n\n//== Breadcrumbs\n//\n//##\n\n$breadcrumb-padding-vertical:   8px !default;\n$breadcrumb-padding-horizontal: 15px !default;\n//** Breadcrumb background color\n$breadcrumb-bg:                 #f5f5f5 !default;\n//** Breadcrumb text color\n$breadcrumb-color:              #ccc !default;\n//** Text color of current page in the breadcrumb\n$breadcrumb-active-color:       $gray-light !default;\n//** Textual separator for between breadcrumb elements\n$breadcrumb-separator:          \"/\" !default;\n\n\n//== Carousel\n//\n//##\n\n$carousel-text-shadow:                        0 1px 2px rgba(0,0,0,.6) !default;\n\n$carousel-control-color:                      #fff !default;\n$carousel-control-width:                      15% !default;\n$carousel-control-opacity:                    .5 !default;\n$carousel-control-font-size:                  20px !default;\n\n$carousel-indicator-active-bg:                #fff !default;\n$carousel-indicator-border-color:             #fff !default;\n\n$carousel-caption-color:                      #fff !default;\n\n\n//== Close\n//\n//##\n\n$close-font-weight:           bold !default;\n$close-color:                 #000 !default;\n$close-text-shadow:           0 1px 0 #fff !default;\n\n\n//== Code\n//\n//##\n\n$code-color:                  #c7254e !default;\n$code-bg:                     #f9f2f4 !default;\n\n$kbd-color:                   #fff !default;\n$kbd-bg:                      #333 !default;\n\n$pre-bg:                      #f5f5f5 !default;\n$pre-color:                   $gray-dark !default;\n$pre-border-color:            #ccc !default;\n$pre-scrollable-max-height:   340px !default;\n\n\n//== Type\n//\n//##\n\n//** Horizontal offset for forms and lists.\n$component-offset-horizontal: 180px !default;\n//** Text muted color\n$text-muted:                  $gray-light !default;\n//** Abbreviations and acronyms border color\n$abbr-border-color:           $gray-light !default;\n//** Headings small color\n$headings-small-color:        $gray-light !default;\n//** Blockquote small color\n$blockquote-small-color:      $gray-light !default;\n//** Blockquote font size\n$blockquote-font-size:        ($font-size-base * 1.25) !default;\n//** Blockquote border color\n$blockquote-border-color:     $gray-lighter !default;\n//** Page header border color\n$page-header-border-color:    $gray-lighter !default;\n//** Width of horizontal description list titles\n$dl-horizontal-offset:        $component-offset-horizontal !default;\n//** Point at which .dl-horizontal becomes horizontal\n$dl-horizontal-breakpoint:    $grid-float-breakpoint !default;\n//** Horizontal line color.\n$hr-border:                   $gray-lighter !default;\n","// WebKit-style focus\n\n@mixin tab-focus() {\n  // WebKit-specific. Other browsers will keep their default outline style.\n  // (Initially tried to also force default via `outline: initial`,\n  // but that seems to erroneously remove the outline in Firefox altogether.)\n  outline: 5px auto -webkit-focus-ring-color;\n  outline-offset: -2px;\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n@mixin animation($animation) {\n  -webkit-animation: $animation;\n       -o-animation: $animation;\n          animation: $animation;\n}\n@mixin animation-name($name) {\n  -webkit-animation-name: $name;\n          animation-name: $name;\n}\n@mixin animation-duration($duration) {\n  -webkit-animation-duration: $duration;\n          animation-duration: $duration;\n}\n@mixin animation-timing-function($timing-function) {\n  -webkit-animation-timing-function: $timing-function;\n          animation-timing-function: $timing-function;\n}\n@mixin animation-delay($delay) {\n  -webkit-animation-delay: $delay;\n          animation-delay: $delay;\n}\n@mixin animation-iteration-count($iteration-count) {\n  -webkit-animation-iteration-count: $iteration-count;\n          animation-iteration-count: $iteration-count;\n}\n@mixin animation-direction($direction) {\n  -webkit-animation-direction: $direction;\n          animation-direction: $direction;\n}\n@mixin animation-fill-mode($fill-mode) {\n  -webkit-animation-fill-mode: $fill-mode;\n          animation-fill-mode: $fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n@mixin backface-visibility($visibility) {\n  -webkit-backface-visibility: $visibility;\n     -moz-backface-visibility: $visibility;\n          backface-visibility: $visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n@mixin box-shadow($shadow...) {\n  -webkit-box-shadow: $shadow; // iOS <4.3 & Android <4.1\n          box-shadow: $shadow;\n}\n\n// Box sizing\n@mixin box-sizing($boxmodel) {\n  -webkit-box-sizing: $boxmodel;\n     -moz-box-sizing: $boxmodel;\n          box-sizing: $boxmodel;\n}\n\n// CSS3 Content Columns\n@mixin content-columns($column-count, $column-gap: $grid-gutter-width) {\n  -webkit-column-count: $column-count;\n     -moz-column-count: $column-count;\n          column-count: $column-count;\n  -webkit-column-gap: $column-gap;\n     -moz-column-gap: $column-gap;\n          column-gap: $column-gap;\n}\n\n// Optional hyphenation\n@mixin hyphens($mode: auto) {\n  word-wrap: break-word;\n  -webkit-hyphens: $mode;\n     -moz-hyphens: $mode;\n      -ms-hyphens: $mode; // IE10+\n       -o-hyphens: $mode;\n          hyphens: $mode;\n}\n\n// Placeholder text\n@mixin placeholder($color: $input-color-placeholder) {\n  // Firefox\n  &::-moz-placeholder {\n    color: $color;\n    opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n  }\n  &:-ms-input-placeholder { color: $color; } // Internet Explorer 10+\n  &::-webkit-input-placeholder  { color: $color; } // Safari and Chrome\n}\n\n// Transformations\n@mixin scale($ratio...) {\n  -webkit-transform: scale($ratio);\n      -ms-transform: scale($ratio); // IE9 only\n       -o-transform: scale($ratio);\n          transform: scale($ratio);\n}\n\n@mixin scaleX($ratio) {\n  -webkit-transform: scaleX($ratio);\n      -ms-transform: scaleX($ratio); // IE9 only\n       -o-transform: scaleX($ratio);\n          transform: scaleX($ratio);\n}\n@mixin scaleY($ratio) {\n  -webkit-transform: scaleY($ratio);\n      -ms-transform: scaleY($ratio); // IE9 only\n       -o-transform: scaleY($ratio);\n          transform: scaleY($ratio);\n}\n@mixin skew($x, $y) {\n  -webkit-transform: skewX($x) skewY($y);\n      -ms-transform: skewX($x) skewY($y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n       -o-transform: skewX($x) skewY($y);\n          transform: skewX($x) skewY($y);\n}\n@mixin translate($x, $y) {\n  -webkit-transform: translate($x, $y);\n      -ms-transform: translate($x, $y); // IE9 only\n       -o-transform: translate($x, $y);\n          transform: translate($x, $y);\n}\n@mixin translate3d($x, $y, $z) {\n  -webkit-transform: translate3d($x, $y, $z);\n          transform: translate3d($x, $y, $z);\n}\n@mixin rotate($degrees) {\n  -webkit-transform: rotate($degrees);\n      -ms-transform: rotate($degrees); // IE9 only\n       -o-transform: rotate($degrees);\n          transform: rotate($degrees);\n}\n@mixin rotateX($degrees) {\n  -webkit-transform: rotateX($degrees);\n      -ms-transform: rotateX($degrees); // IE9 only\n       -o-transform: rotateX($degrees);\n          transform: rotateX($degrees);\n}\n@mixin rotateY($degrees) {\n  -webkit-transform: rotateY($degrees);\n      -ms-transform: rotateY($degrees); // IE9 only\n       -o-transform: rotateY($degrees);\n          transform: rotateY($degrees);\n}\n@mixin perspective($perspective) {\n  -webkit-perspective: $perspective;\n     -moz-perspective: $perspective;\n          perspective: $perspective;\n}\n@mixin perspective-origin($perspective) {\n  -webkit-perspective-origin: $perspective;\n     -moz-perspective-origin: $perspective;\n          perspective-origin: $perspective;\n}\n@mixin transform-origin($origin) {\n  -webkit-transform-origin: $origin;\n     -moz-transform-origin: $origin;\n      -ms-transform-origin: $origin; // IE9 only\n          transform-origin: $origin;\n}\n\n\n// Transitions\n\n@mixin transition($transition...) {\n  -webkit-transition: $transition;\n       -o-transition: $transition;\n          transition: $transition;\n}\n@mixin transition-property($transition-property...) {\n  -webkit-transition-property: $transition-property;\n          transition-property: $transition-property;\n}\n@mixin transition-delay($transition-delay) {\n  -webkit-transition-delay: $transition-delay;\n          transition-delay: $transition-delay;\n}\n@mixin transition-duration($transition-duration...) {\n  -webkit-transition-duration: $transition-duration;\n          transition-duration: $transition-duration;\n}\n@mixin transition-timing-function($timing-function) {\n  -webkit-transition-timing-function: $timing-function;\n          transition-timing-function: $timing-function;\n}\n@mixin transition-transform($transition...) {\n  -webkit-transition: -webkit-transform $transition;\n     -moz-transition: -moz-transform $transition;\n       -o-transition: -o-transform $transition;\n          transition: transform $transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n@mixin user-select($select) {\n  -webkit-user-select: $select;\n     -moz-user-select: $select;\n      -ms-user-select: $select; // IE10+\n          user-select: $select;\n}\n","// Opacity\n\n@mixin opacity($opacity) {\n  opacity: $opacity;\n  // IE8 filter\n  $opacity-ie: ($opacity * 100);\n  filter: alpha(opacity=$opacity-ie);\n}\n","@import \"../mixins/variables\";\n/*\nアイコンボタン\n\nSVGアイコンを用いたアイコンボタンです。\n\nsg-wrapper:\n
\n \n\nStyleguide 2.2\n*/\n\n/*\nアイコンボタン\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\na.ec-closeBtn\n .ec-icon\n img(src='/moc/icon/cross.svg', alt='close')\n\nStyleguide 2.2.1\n*/\n.ec-closeBtn{\n cursor: pointer;\n .ec-icon {\n img {\n //overflow: hidden;\n display: inline-block;\n margin-right: 5px;\n width: 1em;\n height: 1em;\n position: relative;\n top: -1px;\n vertical-align: middle;\n }\n }\n}\n\n/*\nアイコンボタン(○)\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\n\n\nex [お届け先編集画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\na.ec-closeBtn--circle\n .ec-icon\n img(src='/moc/icon/cross-white.svg', alt='close')\n\nStyleguide 2.2.2\n*/\n\n.ec-closeBtn--circle{\n display: block;\n border: 0 none;\n padding: 0;\n margin: 0;\n text-shadow: none;\n box-shadow: none;\n border-radius: 50%;\n background: #B8BEC4;\n cursor: pointer;\n width: 40px;\n min-width: 40px;\n max-width: 40px;\n height: 40px;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n\n .ec-icon img{\n display: block;\n margin-top: -.5em;\n margin-left: -.5em;\n width: 1em;\n height: 1em;\n position: absolute;\n top: 50%;\n left: 50%;\n }\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/media\";\n@import \"../mixins/btn\";\n\n/*\nその他のボタン\n\n通常のボタンや、アイコンボタン以外のボタンを定義します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.3\n*/\n\n\n/*\nページトップボタン\n\nページトップボタンを表示します\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\n.ec-blockTopBtn\n\nStyleguide 2.3.1\n*/\n.ec-blockTopBtn{\n display: none;\n position: fixed;\n width:120px;\n height: 40px;\n right: 0;\n bottom: 10px;\n cursor: pointer;\n color: #FFFFFF;\n text-align: center;\n line-height: 40px;\n opacity: 0.8;\n background-color: #9da3a9;\n @include media_desktop {\n right:30px;\n bottom: 30px;\n }\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/forms\";\n@import \"../mixins/media\";\n/*\nフォーム部品(テキスト)\n\nテキストや数値の入力項目に関する要素を定義します。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 3.1\n*/\n\n\n\n/*\nフォーム\n\n`.ec-input` 要素は全ての入力項目に関する標準的なコンポーネントクラスです。\n\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-input\n input(type=\"number\")\np.ec-input\n textarea(rows=\"6\")\n\nStyleguide 3.1.1\n*/\n.ec-input{\n @include forms-reset;\n @include form-controls;\n input{\n height: 40px;\n margin-bottom: 10px;\n @include media_desktop {\n margin-bottom: 16px;\n }\n }\n textarea {\n height: auto;\n min-height: 100px;\n }\n p {\n line-height: 1.4;\n }\n .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: $clrRed;\n }\n}\n.error.ec-input {\n input,select{\n margin-bottom: 5px;\n border-color: #CF3F34;\n background: #FDF1F0;\n }\n}\n\n.ec-checkbox{\n .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: $clrRed;\n }\n}\n.error.ec-checkbox {\n input, label{\n border-color: #CF3F34;\n background: #FDF1F0;\n }\n}\n\n/*\nフォーム(text2つ)\n\n姓名など2つ入力させたい入力項目で使用します。\n\n入力フォームを半分で用意したいときにも利用可能です。\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-halfInput\n input(type=\"text\")\n input(type=\"text\")\np.ec-halfInput\n input(type=\"text\")\n\nStyleguide 3.1.2\n*/\n.ec-halfInput{\n @extend .ec-input;\n input[type='text']{\n display: inline-block;\n width: 47%;\n margin-left: 2%;\n @include media_desktop {\n margin-left: 15px;\n width: 45%;\n }\n }\n input[type='text']:first-child{\n margin-left: 0;\n }\n}\n\n/*\n数量ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [商品詳細画面 数量ボタン部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-numberInput\n span 数量\n input(type=\"number\",value=\"0\")\n\nStyleguide 3.1.3\n*/\n.ec-numberInput{\n @extend .ec-input;\n input[type='number']{\n display: inline-block;\n width: auto;\n max-width: 100px;\n text-align: right;\n }\n}\n/*\n郵便番号フォーム\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 郵便番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-zipInput\n span 〒\n input(type=\"text\")\n.ec-zipInputHelp\n a(href=\"http://www.post.japanpost.jp/zipcode/\" target=\"_blank\")\n .ec-zipInputHelp__icon\n .ec-icon\n img(src='/moc/icon/question-white.svg', alt='')\n span 郵便番号検索\n.ec-zipAuto\n a.ec-inlineBtn 郵便番号から自動入力\n\nStyleguide 3.1.4\n*/\n.ec-zipInput{\n @extend .ec-input;\n display: inline-block;\n input{\n display: inline-block;\n text-align: left;\n width: auto;\n max-width: 8em;\n font-size: 16px;\n }\n span{\n display: inline-block;\n padding: 0 5px 0 3px;\n margin-left:5px;\n }\n}\n.ec-zipInputHelp {\n display: inline-block;\n margin-left: 10px;\n margin-bottom: 16px;\n vertical-align: baseline;\n line-height: 0;\n .ec-zipInputHelp__icon {\n display: inline-block;\n margin-top: -10px;\n width:20px;\n height:20px;\n background: #525263;\n border-radius: 50%;\n font-size: 13px;\n position: relative;\n top: -6px;\n .ec-icon img{\n width: 1em;\n height: 1em;\n position: relative;\n left: 3px;\n top: 3px;\n }\n }\n span {\n margin-left: 8px;\n display: inline-block;\n color: #0092C4;\n vertical-align: 3px;\n }\n}\n.ec-zipAuto {\n margin-bottom: 16px;\n .ec-inlineBtn {\n font-weight: normal;\n }\n}\n/*\n電話番号ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 電話番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-telInput\n input(type=\"text\")\n\nStyleguide 3.1.5\n*/\n.ec-telInput{\n @extend .ec-input;\n input {\n max-width: 10em;\n text-align: left;\n }\n}\n","@import \"./variables\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/forms\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/vendor-prefixes\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n\n@mixin forms-reset{\n input[type=\"search\"] {\n @include box-sizing(border-box);\n }\n\n // Position radios and checkboxes better\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n }\n\n input[type=\"file\"] {\n display: block;\n }\n\n // Make range inputs behave like textual form controls\n input[type=\"range\"] {\n display: block;\n width: 100%;\n }\n\n // Make multiple select elements height not fixed\n select[multiple],\n select[size] {\n height: auto;\n }\n\n // Focus for file, radio, and checkbox\n input[type=\"file\"]:focus,\n input[type=\"radio\"]:focus,\n input[type=\"checkbox\"]:focus {\n @include tab-focus;\n }\n\n}\n\n@mixin _form-control{\n display: block;\n width: 100%;\n height: $input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: $padding-base-vertical $padding-base-horizontal;\n font-size: $font-size-base;\n line-height: $line-height-base;\n color: $input-color;\n background-color: $input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid $input-border;\n border-radius: $input-border-radius; // Note: This has no effect on s in CSS.\n -webkit-appearance: none;\n @include box-shadow(none);\n @include transition(border-color ease-in-out .15s, box-shadow ease-in-out .15s);\n\n // Customize the `:focus` state to imitate native WebKit styles.\n @include form-control-focus;\n\n // Placeholder\n @include placeholder;\n\n // Unstyle the caret on ``\n// element gets special love because it's special, and that's a fact!\n// [converter] $parent hack\n@mixin input-size($parent, $input-height, $padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {\n #{$parent} {\n height: $input-height;\n padding: $padding-vertical $padding-horizontal;\n font-size: $font-size;\n line-height: $line-height;\n border-radius: $border-radius;\n }\n\n select#{$parent} {\n height: $input-height;\n line-height: $input-height;\n }\n\n textarea#{$parent},\n select[multiple]#{$parent} {\n height: auto;\n }\n}\n","/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n\n@mixin borderTop(){\n border-top: 1px dotted #ccc;\n}\n\n@mixin borderBottom(){\n border-bottom: 1px dotted #ccc;\n}\n\n@mixin reset_link(){\n a{\n color: inherit;\n text-decoration: none;\n }\n a:hover{\n text-decoration: none;\n }\n}\n","@import \"../mixins/projects\";\n@import \"../mixins/forms\";\n@import \"./3.1.inputText\";\n/*\nフォーム部品(その他)\n\nフォーム部品でテキストの入力以外の動作要素を定義します。\n\nsg-wrapper:\n
\n \n\nStyleguide 3.2\n*/\n\n/*\nラジオ(水平)\n\n水平に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 性別選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-radio\n label\n input(type=\"radio\")\n span 男性\n label\n input(type=\"radio\")\n span 女性\n\nStyleguide 3.2.2\n*/\n.ec-radio{\n label{\n margin-right:20px;\n }\n input{\n margin-right: 10px;\n margin-bottom: 10px;\n }\n span{\n font-weight: normal;\n }\n\n}\n\n/*\nラジオ(垂直)\n\n垂直に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [購入画面 お支払方法](http://demo3.ec-cube.net/shopping)\n\nMarkup:\n.ec-blockRadio\n label\n input(type=\"radio\")\n span 郵便振替\n label\n input(type=\"radio\")\n span 現金書留\n label\n input(type=\"radio\")\n span 銀行振込\n label\n input(type=\"radio\")\n span 代金引換\n\nStyleguide 3.2.3\n*/\n.ec-blockRadio{\n label{\n display: block;\n }\n span {\n padding-left: 10px;\n font-weight: normal;\n }\n}\n/*\nセレクトボックス\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 都道府県選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-select\n select\n option 都道府県を選択\n option 北海道\n option 青森県\n option 岩手県\n option ...\n.ec-select\n select\n option 選択して下さい\n option 公務員\n option コンサルタント\n option コンピュータ関連技術職\n option コンピュータ関連以外の技術職\n option ...\n\nStyleguide 3.2.4\n*/\n.ec-selects {\n margin-bottom: 20px;\n @include borderBottom;\n}\n.ec-select{\n @extend .ec-input;\n margin-bottom: 16px;\n select{\n display: inline-block;\n width: auto;\n background-color: rgb(248, 248, 248);\n -webkit-appearance: menulist;\n -moz-appearance: menulist;\n &:focus {\n box-shadow: none;\n }\n }\n label{\n margin-right: 10px;\n font-weight: bold;\n }\n label:nth-child(3){\n margin-left: 10px;\n font-weight: bold;\n }\n}\n.ec-select__delivery {\n display: block;\n margin-right: 16px;\n @include media_desktop {\n display: inline-block;\n }\n}\n.ec-select__time {\n display: block;\n @include media_desktop {\n display: inline-block;\n }\n}\n\n/*\n生年月日選択\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 生年月日選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-birth\n select\n option ----\n option 1960\n option 1961\n option 1962\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n\nStyleguide 3.2.5\n*/\n.ec-birth{\n @extend .ec-input;\n select{\n display: inline-block;\n width: auto;\n margin: 0 0 10px;\n background-color: rgb(248, 248, 248);\n -webkit-appearance: menulist;\n -moz-appearance: menulist;\n &:focus {\n box-shadow: none;\n }\n @include media_desktop{\n margin: 0 8px 10px;\n }\n }\n span{\n margin-left:5px;\n }\n}\n\n/*\nチェックボックス (水平)\n\n水平に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 利用規約](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-checkbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.6\n*/\n.ec-checkbox{\n label{\n display: inline-block;\n }\n input{\n margin-bottom: 10px;\n }\n span{\n font-weight: normal;\n }\n\n}\n\n/*\nチェックボックス (垂直)\n\n垂直に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nMarkup:\n.ec-blockCheckbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.7\n*/\n.ec-blockCheckbox{\n label{\n display: block;\n }\n span {\n font-weight: normal;\n }\n}\n","@import \"../mixins/media\";\n/*\nフォームラベル\n\nフォームのラベルに関する要素を定義します。\n\nsg-wrapper:\n
\n
\n
\n
\n \n
\n
\n
\n
\n\nStyleguide 3.3\n*/\n\n/*\nラベル\n\nフォーム要素で利用するラベル要素です。\n\nex [お問い合わせページ ラベル部分](http://demo3.ec-cube.net/contact)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.1\n*/\n.ec-label{\n display: inline-block;\n font-weight: bold;\n margin-bottom: 5px;\n}\n\n/*\n必須ラベル\n\n必須文字を表示するラベル要素です。\n\nex [お問い合わせページ 必須ラベル部分](http://demo3.ec-cube.net/contact)\n\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n span.ec-required 必須\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.2\n*/\n\n.ec-required{\n display: inline-block;\n margin-left: .8em;\n vertical-align: 2px;\n color: #DE5D50;\n font-size: 12px;\n font-weight: normal;\n @include media_desktop {\n margin-left: 1em;\n }\n}\n","@import \"../mixins/variables\";\n/*\nアイコン\n\nデフォルトテンプレートのアイコンは`.ec-icon`>`img`タグで使用することができます\n\nsg-wrapper:\n
\n \n\nMarkup:\ninclude /assets/tmpl/elements/4.1.icon.pug\ndiv(style=\"background-color: rgba(130,130,130,.15); padding: 20px;\")\n +icon-all\n\nStyleguide 4.1\n*/\n.ec-icon img {\n max-width: 80px;\n max-height: 80px;\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/media\";\n\n@mixin row{\n display: block;\n margin: 0;\n @include media_desktop {\n display: flex;\n }\n}\n\n@mixin makeSmColumn($columns){\n position: relative;\n min-height: 1px;\n\n @media (min-width: $desktop) {\n width: percentage(($columns/ 12));\n }\n @include media_desktop{\n }\n\n}\n\n/*\nグリッド\n\n画面を12分割し、グリッドレイアウトに対応するためのスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.1\n*/\n\n/*\n2分割グリッド\n\n画面 2分割の グリッドです。\nBootstrap の col-sm-6 相当のグリッドを提供します。\n\nMarkup:\n.ec-grid2\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 5.1.1\n*/\n.ec-grid2{\n @include row;\n & &__cell{\n @include makeSmColumn(6);\n }\n & &__cell2{\n @include makeSmColumn(12);\n }\n}\n/*\n3分割グリッド\n\n画面 3分割の グリッドです。\n\n\nMarkup:\n.ec-grid3\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n\nStyleguide 5.1.2\n*/\n.ec-grid3{\n @include row;\n & &__cell{\n @include makeSmColumn(4);\n }\n & &__cell2 {\n @include makeSmColumn(8);\n }\n & &__cell3 {\n @include makeSmColumn(12);\n }\n}\n\n/*\n4分割グリッド\n\n画面 4分割の グリッドです。\n\n\nMarkup:\n.ec-grid4\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n\nStyleguide 5.1.3\n*/\n.ec-grid4{\n @include row;\n & &__cell{\n @include makeSmColumn(3);\n }\n}\n\n/*\n6分割グリッド\n\n2つにまとめた cell2 や 3つをまとめた cell3 タグも使用可能です。\n\n\nMarkup:\n.ec-grid6\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n.ec-grid6\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n.ec-grid6\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n\nStyleguide 5.1.4\n*/\n.ec-grid6{\n @include row;\n & &__cell{\n @include makeSmColumn(2);\n }\n & &__cell2{\n @include makeSmColumn(4);\n }\n & &__cell3{\n @include makeSmColumn(6);\n }\n}\n\n/*\n中央寄せグリッド 10/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の10グリッドです\n\nex [ご利用規約ページ 本文](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-off1Grid\n .ec-off1Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.5\n*/\n.ec-off1Grid{\n margin: 0;\n @include media_desktop {\n @include row;\n }\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(10);\n margin-left: percentage((1 / 12));\n }\n }\n}\n\n\n/*\n中央寄せグリッド 8/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の8グリッドです\n\n\nMarkup:\n.ec-off2Grid\n .ec-off2Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.6\n*/\n.ec-off2Grid{\n @include row;\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(8);\n margin-left: percentage((2 / 12));\n }\n }\n}\n/*\n中央寄せグリッド 6/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の6グリッドです\n\n\nMarkup:\n.ec-off3Grid\n .ec-off3Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.7\n*/\n.ec-off3Grid{\n @include row;\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(6);\n margin-left: percentage((3 / 12));\n }\n }\n}\n/*\n中央寄せグリッド 4/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の4グリッドです\n\n\nMarkup:\n.ec-off4Grid\n .ec-off4Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\n\nStyleguide 5.1.8\n*/\n.ec-off4Grid{\n @include row;\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(4);\n margin-left: percentage((4 / 12));\n }\n }\n}\n\n/*\nグリッドオプション\n\nグリッドのセルに対して「左寄せ」「中央寄せ」「右寄せ」のオプションを付与することができます。\n\nsg-wrapper:\n
\n \n\nStyleguide 5.1.9\n*/\n\n/*\nグリッドセルの左寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--left\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.10\n*/\n.ec-grid--left {\n justify-content: flex-start;\n}\n/*\nグリッドセルの右寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--right\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.11\n*/\n.ec-grid--right {\n justify-content: flex-end;\n}\n/*\nグリッドセルの中央寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--center\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.12\n*/\n.ec-grid--center {\n justify-content: center\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/projects\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/media\";\n\n@mixin row{\n margin-left: ceil((30px / -2));\n margin-right: floor((30px / -2));\n @include clearfix\n}\n\n@mixin makeSmColumn($columns){\n position: relative;\n min-height: 1px;\n padding-left: (30px / 2);\n padding-right: (30px / 2);\n\n @media (min-width: $desktop) {\n float: left;\n width: percentage(($columns/ 12));\n }\n}\n\n/*\nレイアウト\n\n様々なレイアウトを変更する為のスタイル群です。\n\nStyleguide 5.2\n*/\n\n/*\n画像レイアウト\n\n画像とテキストを水平に並べるレイアウトです。\n\n画像は20%で表示されます。\n\nex [注文履歴 ログイン後→注文履歴ボタンを押下](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-imageGrid\n .ec-imageGrid__img: img(src=\"http://demo3.ec-cube.net/upload/save_image/0701113537_559351f959620.jpeg\")\n .ec-imageGrid__content\n p.ec-font-bold ホーローマグ\n p ¥ 1,728 x 1\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.2.1\n*/\n.ec-imageGrid{\n display: table;\n @include borderTop;\n width: 100%;\n\n & &__img{\n display: table-cell;\n padding: 10px;\n width: 100px;\n\n @include media_desktop {\n padding: 10px;\n width: 130px;\n }\n\n img{\n width: 100%;\n }\n }\n & &__content{\n vertical-align: middle;\n display: table-cell;\n span {\n margin-left: 10px;\n }\n p {\n margin-bottom: 0;\n }\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\nログイン\n\n主にログインフォームのスタイルを表示します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 6.1\n*/\n\n/*\nログインフォーム\n\nログインフォームを表示します。\n\nex [ログイン画面](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-login\n\n\nStyleguide 6.1.1\n*/\n.ec-login{\n margin: 0 0 20px;\n padding: 30px 13% 20px;\n height: auto;\n background: #F3F4F4;\n box-sizing: border-box;\n @include media_desktop {\n margin: 0 16px;\n padding: 30px 13% 60px;\n }\n & &__icon {\n text-align: center;\n }\n .ec-icon{\n margin-bottom: 10px;\n img {\n width: 90px;\n height: 90px;\n display: inline-block;\n }\n }\n & &__input {\n margin-bottom: 40px;\n .ec-checkbox {\n span {\n margin-left: 5px;\n font-weight:normal;\n }\n }\n }\n & &__actions {\n color: #fff;\n @include reset_link();\n }\n & &__link {\n margin-top: 5px;\n margin-left: 0;\n @include media_desktop {\n margin-left: 20px;\n }\n }\n .ec-errorMessage {\n color: $clrRed;\n margin-bottom: 20px;\n }\n}\n\n/*\nゲスト購入\n\nゲスト購入ボタンとそのフォームを表示します。\n\nex [ゲスト購入画面](http://demo3.ec-cube.net/shopping/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-guest\nhoge\n\nStyleguide 6.1.2\n*/\n.ec-guest{\n display: table;\n margin: 0;\n padding: 13%;\n height: auto;\n box-sizing: border-box;\n background: #F3F4F4;\n\n @include media_desktop {\n height: 100%;\n margin: 0 16px;\n }\n & &__inner{\n display: table-cell;\n vertical-align: middle;\n text-align: center;\n p {\n margin-bottom: 16px;\n }\n }\n & &__actions {\n display: block;\n vertical-align: middle;\n text-align: center;\n color: #fff;\n @include reset_link();\n }\n & &__icon{\n font-size: 70px;\n text-align: center;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\n商品掲載\n\nトップページに商品掲載するスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.1\n*/\n\n/*\n商品アイテム(商品紹介B)\n\n3項目横並びの商品アイテムを表示します。\n必要に応じて商品詳細や、キャッチコピーなどを添えることが出来ます。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayB\n\nStyleguide 7.1.1\n*/\n.ec-displayB{\n margin-bottom: 24px;\n display: flex;\n justify-content: space-between;\n flex-direction:column;\n @include media_desktop {\n flex-direction:row;\n }\n & &__cell {\n width: 100%;\n margin-bottom: 16px;\n @include reset_link();\n @include media_desktop {\n width: 31.4466%;\n margin-bottom: 0;\n }\n &:hover {\n text-decoration: none;\n img{\n opacity: .8;\n }\n a {\n text-decoration: none;\n }\n }\n }\n & &__img {\n margin-bottom: 15px;\n }\n\n & &__catch{\n margin-bottom: 15px;\n text-decoration: none;\n font-weight: bold;\n color: #9a947e;\n }\n & &__comment {\n margin-bottom: 14px;\n text-decoration: none;\n color: #525263;\n font-size: 14px;\n }\n & &__link{\n text-decoration: none;\n font-weight: bold;\n color: #9a947e;\n }\n\n}\n\n/*\n商品アイテム(商品紹介C)\n\n4項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayC\np hoge\n\nStyleguide 7.1.2\n*/\n\n.ec-displayC{\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n margin-bottom: 24px;\n & &__cell{\n width: 47%;\n @include reset_link();\n @include media_desktop(){\n width: 22.8775%;\n }\n &:hover {\n a {\n text-decoration: none;\n }\n img{\n opacity: .8;\n }\n }\n }\n & &__img{\n display: block;\n width: 100%;\n margin-bottom: 15px;\n }\n & &__catch{\n display: block;\n width: 100%;\n font-weight: bold;\n color: #9a947e;\n }\n & &__title{\n display: block;\n width: 100%;\n color: #525263;\n }\n & &__price{\n display: block;\n width: 100%;\n font-weight: bold;\n color: #525263;\n }\n & &__price--sp{\n display: block;\n width: 100%;\n font-weight: bold;\n color: #DE5D50;\n }\n}\n\n\n/*\n商品アイテム(商品紹介D)\n\n6項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayD\n\nStyleguide 7.1.3\n*/\n\n.ec-displayD {\n display:flex;\n justify-content:space-between;\n flex-wrap:wrap-reverse;\n @include media_desktop(){\n box-sizing: border-box;\n flex-wrap:nowrap;\n }\n\n & &__cell{\n width: 30%;\n margin-bottom: 8px;\n @include reset_link();\n @include media_desktop(){\n width: 14.3083%;\n margin-bottom: 16px;\n }\n &:hover {\n text-decoration: none;\n img{\n opacity: .8;\n }\n }\n }\n & &__img{\n display: block;\n width: 100%;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/variables\";\n@import \"../mixins/projects\";\n\n@mixin pager(){\n}\n/*\n検索・一覧表示\n\n検索欄や、一覧表示に使用するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.2\n*/\n\n/*\nトピックパス\n\n検索結果で表示されるトピックパスのスタイルです。\n\nex [商品一覧ページ 横並びリスト部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-topicpath\n\nStyleguide 7.2.1\n*/\n.ec-topicpath{\n letter-spacing: -.4em;\n -webkit-margin-before: 0;\n -webkit-margin-after: 0;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n -webkit-padding-start: 0;\n border-top: 1px solid #ccc;\n border-bottom: 1px dotted #ccc;\n padding: 10px;\n list-style: none;\n overflow: hidden;\n font-size: 12px;\n color: #0092C4;\n @include media_desktop {\n padding: 30px 0 10px;\n border: 0;\n font-size: 16px;\n }\n\n & &__item {\n @include reset_link();\n }\n & &__divider{\n color: #000;\n }\n & &__item,\n & &__divider,\n & &__item--active{\n display: inline-block;\n min-width: 16px;\n text-align: center;\n position: relative;\n letter-spacing: normal;\n }\n & &__item--active{\n font-weight: bold;\n @include reset_link();\n }\n}\n\n/*\nページャ\n\n検索結果で表示される商品一覧のスタイルです。\n\nex [商品一覧ページ ページャ部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-pager\n\nStyleguide 7.2.2\n*/\n.ec-pager{\n list-style: none;\n list-style-type: none;\n margin: 0 auto;\n padding: 1em 0;\n text-align: center;\n & &__item,\n & &__item--active{\n display: inline-block;\n min-width: 29px;\n padding: 0 3px 0 2px;\n text-align: center;\n position: relative;\n @include reset_link();\n a{\n color: inherit;\n display: block;\n line-height: 1.8;\n padding: 5px 1em;\n text-decoration: none;\n }\n a:hover{\n color: inherit;\n }\n }\n & &__item--active {\n background: $clrGray;\n }\n & &__item:hover{\n background: $clrGray;\n }\n\n}\n","@import \"./variables\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/forms\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/vendor-prefixes\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n\n\n@keyframes fadeIn{\n 0%{\n opacity: 0;\n visibility: hidden;\n }\n 100%{\n opacity: 1;\n visibility: visible;\n }\n}\n\n@keyframes fadeOut{\n 0%{\n opacity: 1;\n visibility: visible;\n }\n 100%{\n opacity: 0;\n visibility: hidden;\n }\n}\n\n@mixin fadeIn($display:block,$time:150ms) {\n display: $display;\n opacity: 1;\n visibility: visible;\n animation: fadeIn $time linear 0s;\n}\n@mixin fadeOut($time:150ms) {\n opacity: 0;\n visibility:hidden;\n animation: fadeOut $time linear 0s;\n}\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1;\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/media\";\n@import \"../mixins/animation\";\n@import \"../mixins/projects\";\n/*\nカート\n\nショッピングカートに関するスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.3\n*/\n\n/*\nカートヘッダ\n\n購入完了までの手順や、現在の状態を表示します。\n\nul 要素を用いたリスト要素としてマークアップします。\n\nex [カートページ ヘッダ部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-progress\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.3.1\n*/\n.ec-progress{\n margin: 0 auto;\n padding: 8px 0 16px;\n display: table;\n table-layout: fixed;\n width: 100%;\n max-width: 600px;\n list-style: none;\n @include media_desktop {\n margin-bottom: 30px;\n padding: 0;\n }\n\n & &__item{\n display:table-cell;\n position: relative;\n font-size: 14px;\n text-align: center;\n font-weight: bold;\n z-index: 10;\n\n &:after {\n content: '';\n position: absolute;\n display: block;\n background: #525263;\n width: 100%;\n height: 0.25em;\n top: 1.25em;\n left: 50%;\n margin-left: 1.5em\\9;\n z-index: -1;\n }\n &:last-child:after {\n display: none;\n }\n }\n & &__number{\n line-height: 30px;\n width: 30px;\n height: 30px;\n margin-bottom: 5px;\n font-size: 12px;\n background: #525263;\n color: #fff;\n top: 0;\n left: 18px;\n display: inline-block;\n text-align: center;\n vertical-align: middle;\n border-radius: 50%;\n @include media_desktop(){\n line-height: 42px;\n width: 42px;\n height: 42px;\n font-size: 20px;\n }\n }\n & &__label {\n font-size: 12px;\n }\n .is-complete {\n .ec-progress__number {\n background: #5CB1B1;\n }\n .ec-progress__label {\n color: #5CB1B1;\n }\n }\n}\n\n\n\n/*\nカートナビゲーション\n\nカートナビゲーションを表示します。 カートに追加された商品の個数も表示します。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerCart\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.5\n*/\n.ec-cartNaviWrap{\n @include media_desktop {\n position: relative;\n }\n}\n.ec-cartNavi{\n display: inline-block;\n padding: 10px 0 0 20px;\n width: auto;\n color: black;\n background: transparent;\n @include media_desktop {\n display: flex;\n justify-content: space-between;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 12px 17px 10px;\n width: auto;\n min-width: 140px;\n height: 44px;\n white-space: nowrap;\n cursor: pointer;\n background: #F8F8F8;\n }\n\n & &__icon {\n display: inline-block;\n font-size: 20px;\n @include fadeIn(inline-block,200ms);\n position: relative;\n\n }\n & &__badge{\n display: inline-block;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 5px;\n height: 17px;\n font-size: 10px;\n line-height: 0.7;\n vertical-align: top;\n color: #fff;\n text-align: left;\n white-space: nowrap;\n background-color: #DE5D50;\n position: absolute;\n left: 60%;\n top: -10px;\n @include media_desktop {\n display: inline-block;\n min-width: 17px;\n position: relative;\n left: 0;\n top: 0;\n }\n }\n & &__price{\n display: none;\n\n @include media_desktop {\n display: inline-block;\n font-size: 14px;\n font-weight: normal;\n vertical-align: middle;\n }\n }\n}\n.ec-cartNavi.is-active {\n\n .ec-cartNavi__icon {\n &:before {\n content: \"\\f00d\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n }\n }\n .ec-cartNavi__badge{\n display: none;\n @include media_desktop {\n display: none;\n }\n\n }\n}\n\n\n/*\nカートナビゲーションのポップアップ(商品詳細)\n\nカートナビゲーションのポップアップを表示します。カートに追加された商品の詳細が表示されます。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:350px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='close')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n +b.ec-cartNaviIsset\n +e.cart\n +e.cartImage\n img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n +e.cartContent\n +e.cartContentTitle ミニテーブル\n +e.cartContentPrice ¥ 12,960\n +e.cartContentTax 税込\n +e.cartContentNumber 数量:1\n +e.action\n a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n a.ec-blockBtn.ec-cartNavi--cancel キャンセル\n\nStyleguide 7.3.6\n*/\n.ec-cartNaviIsset {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 20;\n position: absolute;\n right: 0;\n\n @include media_desktop {\n margin-top: 10px;\n min-width: 256px;\n max-width:256px;\n\n &::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px;\n\n }\n }\n\n\n\n & &__cart {\n @include clearfix;\n border-bottom: 1px solid #E8E8E8;\n margin-bottom: 16px;\n padding-bottom: 32px;\n }\n & &__cartImage {\n float: left;\n width: 45%;\n img {\n width: 100%;\n }\n }\n & &__cartContent {\n float: right;\n width: 55%;\n padding-left: 16px;\n text-align:left;\n box-sizing:border-box;\n }\n & &__action {\n .ec-blockBtn--action {\n color:#fff;\n margin-bottom: 8px;\n }\n }\n & &__cartContentTitle {\n margin-bottom: 8px;\n }\n & &__cartContentPrice {\n font-weight: bold;\n }\n & &__cartContentTax {\n display: inline-block;\n font-size: 12px;\n font-weight: normal;\n margin-left: 2px;\n }\n & &__cartContentNumber {\n font-size: 14px;\n }\n}\n\n.ec-cartNaviIsset.is-active {\n display: block;\n}\n\n\n\n/*\nカートナビゲーションのポップアップ(商品なし)\n\nカートナビゲーションのポップアップを表示します。商品が登録されていない場合の表示です。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:170px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='cart')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n .ec-cartNaviNull\n .ec-cartNaviNull__message\n p 現在カート内に\n br\n | 商品がございません。\n //+b.ec-cartNaviIsset\n // +e.cart\n // +e.cartImage\n // img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n // +e.cartContent\n // +e.cartContentTitle ミニテーブル\n // +e.cartContentPrice ¥ 12,960\n // +e.cartContentTax 税込\n // +e.cartContentNumber 数量:1\n // +e.action\n // a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n // a.ec-blockBtn キャンセル\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.7\n*/\n\n\n.ec-cartNaviNull {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 3;\n position: absolute;\n right: 0;\n\n @include media_desktop {\n margin-top: 10px;\n min-width: 256px;\n max-width:256px;\n\n &::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px;\n\n }\n }\n\n & &__message {\n border: 1px solid #D9D9D9;\n padding: 16px 0;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n background-color: #F99;\n p {\n margin: 0;\n }\n }\n}\n\n.ec-cartNaviNull.is-active {\n display: block;\n}\n\n\n\n/*\n総計\n\n会計時の合計金額、総計を表示します。\n\nex [カートページ 統計部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-totalBox\n\nStyleguide 7.3.8\n*/\n.ec-totalBox{\n background:#F3F3F3;\n padding: 16px;\n margin-bottom: 16px;\n & &__spec{\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: space-between;\n justify-content: space-between;\n -ms-flex-pack: space-between;\n margin-bottom:8px;\n dt{\n font-weight: normal;\n text-align: left;\n }\n dd{\n text-align: right;\n }\n & &__specTotal {\n color: $clrRed;\n }\n }\n & &__total{\n border-top: 1px dotted #ccc;\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight:bold;\n }\n & &__paymentTotal{\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight:bold;\n .ec-totalBox__price,\n .ec-totalBox__taxLabel{\n color: $clrRed;\n }\n }\n & &__price{\n margin-left: 16px;\n font-size: 16px;\n font-weight:bold;\n @include media_desktop {\n font-size: 24px;\n }\n }\n & &__taxLabel {\n margin-left: 8px;\n font-size: 12px;\n @include media_desktop {\n font-size: 14px;\n }\n }\n & &__taxRate {\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: flex-end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n margin-bottom:8px;\n font-size: 10px;\n @include media_desktop {\n font-size: 12px;\n }\n dt{\n font-weight: normal;\n text-align: left;\n margin-right: 8px;\n &::before {\n content: \"[ \";\n }\n }\n dd{\n text-align: right;\n &::after {\n content: \" ]\";\n }\n }\n }\n & &__pointBlock{\n padding: 18px 20px 10px;\n margin-bottom: 10px;\n background: #fff;\n }\n & &__btn {\n @include reset_link();\n color: #fff;\n .ec-blockBtn--action {\n font-size: 16px;\n font-weight: bold;\n }\n .ec-blockBtn--cancel {\n margin-top: 8px;\n }\n }\n}\n","// Clearfix\n//\n// For modern browsers\n// 1. The space content is one way to avoid an Opera bug when the\n// contenteditable attribute is included anywhere else in the document.\n// Otherwise it causes space to appear at the top and bottom of elements\n// that are clearfixed.\n// 2. The use of `table` rather than `block` is only necessary if using\n// `:before` to contain the top-margins of child elements.\n//\n// Source: http://nicolasgallagher.com/micro-clearfix-hack/\n\n@mixin clearfix() {\n //&:before, //to avoid flex effect\n &:after {\n content: \" \"; // 1\n display: table; // 2\n }\n &:after {\n clear: both;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n/*\nお知らせ\n\n新着情報やバナーなどの掲載項目を紹介していきます。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 8.1\n*/\n\n/*\n新着情報\n\n新着情報の掲載をします。\n\nex [トップページ 新着情報部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+ec-news\n\nStyleguide 8.1.1\n*/\n.ec-news {\n margin-bottom: 16px;\n background: #F8F8F8;\n @include media_desktop {\n margin-right: 3%;\n }\n @include media_desktop {\n margin-bottom: 32px;\n }\n & &__title{\n font-weight: bold;\n padding: 8px;\n font-size: 16px;\n text-align: center;\n @include media_desktop {\n padding: 16px;\n text-align: left;\n font-size: 24px;\n }\n }\n & &__items{\n padding: 0;\n list-style: none;\n border-top: 1px dotted #ccc;\n }\n}\n/*\n折りたたみ項目\n\n折りたたみ項目を掲載します。\n\nex [トップページ 折りたたみ項目部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+b.ec-news\n +e.title 新着情報\n +e.UL.items\n +e.LI.item\n +b.ec-newsline.is_active\n +e.info\n +e.date 2016/09/29\n +e.comment サイトオープンしました\n +e.close\n a.ec-closeBtn--circle\n span.ec-closeBtn--circle__icon\n .ec-icon\n img(src='/moc/icon/angle-down-white.svg', alt='')\n +e.description 一人暮らしからオフィスなどさまざまなシーンで あなたの生活をサポートするグッズをご家庭へお届けします!\n\nStyleguide 8.1.2\n*/\n.ec-newsline {\n display: flex;\n flex-wrap:wrap;\n overflow: hidden;\n padding: 0 16px;\n & &__info{\n width: 100%;\n padding: 16px 0;\n @include clearfix;\n }\n & &__date{\n display: inline-block;\n margin-right: 10px;\n float: left;\n }\n & &__comment{\n display: inline-block;\n float: left;\n }\n & &__close{\n float: right;\n display: inline-block;\n text-align: right;\n .ec-closeBtn--circle {\n display: inline-block;\n width: 25px;\n height: 25px;\n min-width: 25px;\n min-height: 25px;\n\n }\n }\n & &__description{\n width: 100%;\n height: 0;\n transition: all .2s ease-out;\n }\n\n &.is_active &__description{\n height: auto;\n transition: all .2s ease-out;\n padding-bottom: 16px;\n }\n &.is_active .ec-icon img {\n transform: rotateX(180deg);\n }\n}\n","@import \"../mixins/projects\";\n@import \"../mixins/variables\";\n@import \"../mixins/media\";\n/*\nマイページ\n\nマイページで利用するためのスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 9.1\n*/\n\n/*\nマイページ\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist\n\nStyleguide 9.1.1\n*/\n.ec-navlistRole{\n & &__navlist {\n @include reset_link;\n display: flex;\n flex-wrap: wrap;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 1px 0 0 1px;\n margin-bottom: 32px;\n padding: 0;\n list-style: none;\n @include media_desktop {\n flex-wrap: nowrap;\n }\n }\n\n & &__item{\n width: 50%;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 0 1px 1px 0;\n text-align: center;\n font-weight: bold;\n a {\n padding: 16px;\n width: 100%;\n display: inline-block;\n &:hover{\n background: #f5f7f8;\n }\n }\n }\n .active {\n a {\n color: #DE5D50;\n }\n }\n}\n\n/*\nマイページ(お気に入り機能無効)\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist_noFavorite\n\nStyleguide 9.1.2\n*/\n\n/*\nWelcome メッセージ\n\nマイページで表示するログイン名の表示コンポーネントです。\n\nex [マイページ メニューリスト下部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-welcomeMsg\n\nStyleguide 9.1.3\n*/\n.ec-welcomeMsg{\n @include mypageContainer;\n margin: 1em 0;\n padding-bottom: 32px;\n text-align: center;\n @include borderBottom;\n\n}\n\n/*\nお気に入り一覧\n\nお気に入り一覧で表示するアイテムの表示コンポーネントです。\n\nex [マイページ お気に入り一覧](http://demo3.ec-cube.net/mypage/favorite)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-favorite\n\nStyleguide 9.1.4\n*/\n.ec-favoriteRole{\n & &__header {\n margin-bottom: 16px;\n }\n & &__detail {\n }\n & &__itemList {\n @include reset_link;\n display: flex;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n }\n & &__item{\n margin-bottom: 8px;\n width: 47.5%;\n position: relative;\n box-sizing: border-box;\n padding: 10px;\n &-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center;\n @include media_desktop() {\n height: 250px;\n }\n }\n img{\n width: auto;\n max-height: 100%;\n }\n @include media_desktop(){\n width: 25%;\n }\n .ec-closeBtn--circle {\n position: absolute;\n right: 10px;\n top: 10px;\n .ec-icon img{\n width: 1em;\n height: 1em;\n }\n }\n }\n & &__itemThumb {\n display: block;\n height:auto;\n margin-bottom: 8px;\n }\n & &__itemTitle{\n margin-bottom: 2px;\n }\n & &__itemPrice{\n font-weight: bold;\n margin-bottom: 0;\n }\n\n}\n","@import \"../mixins/media\";\n\n/*\n標準セクション\n\n通常のコンテナブロックです。\n\nex [商品詳細ページ コンテナ](http://demo3.ec-cube.net/products/detail/33)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-roleRole\n\nStyleguide 11.1\n*/\n.ec-role{\n @include container;\n}\n\n/*\nマイページセクション\n\nマイページ専用のコンテナブロックです。\n\nex [マイページ コンテナ](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-mypageRole\n\nStyleguide 11.1.2\n*/\n.ec-mypageRole{\n @include mypageContainer;\n\n .ec-pageHeader h1{\n @include media_desktop {\n margin: 10px 0 48px;\n padding: 8px 0 18px;\n }\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/animation\";\n\n/*\nヘッダー\n\nヘッダー用のプロジェクトコンポーネントを提供します。\n\nex [トップページ ヘッダー](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+b.ec-layoutRole\n +e.header\n +ec-headerRole\n +ec-headerNaviRole\n +ec-categoryNaviRole\n\nStyleguide 11.2\n*/\n.ec-layoutRole {\n width: 100%;\n transition: transform 0.3s;\n background: #fff;\n & &__contentTop {\n padding: 0;\n }\n\n & &__contents {\n margin-right: auto;\n margin-left: auto;\n width: 100%;\n max-width: 1150px;\n display: flex;\n flex-wrap: nowrap;\n\n }\n & &__main {\n width: 100%;\n }\n & &__mainWithColumn {\n width: 100%;\n @include media_desktop() {\n width: 75%;\n }\n }\n & &__mainBetweenColumn {\n width: 100%;\n @include media_desktop() {\n width: 50%;\n }\n }\n & &__left,\n & &__right {\n display: none;\n @include media_desktop() {\n display: block;\n width: 25%;\n }\n }\n}\n\n\n.ec-headerRole {\n @include container;\n padding-top: 15px;\n position: relative;\n &:after {\n display: none;\n }\n @include media_desktop {\n @include clearfix;\n }\n &::before {\n display: none;\n }\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n width: auto;\n @include media_desktop {\n width: 100%;\n @include clearfix;\n }\n & &__title {\n width: 100%;\n }\n & &__navSP {\n display: block;\n position: absolute;\n top: 15px;\n width: 27%;\n right: 0;\n text-align: right;\n @include media_desktop {\n display: none;\n }\n }\n}\n\n.ec-headerNaviRole {\n @include container;\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-top: 15px;\n\n @include media_desktop {\n padding-bottom: 40px;\n }\n\n & &__left {\n width: calc(100% / 3);\n\n }\n\n & &__search {\n display: none;\n @include media_desktop() {\n display: inline-block;\n margin-top: 10px;\n @include reset_link;\n }\n }\n & &__navSP {\n display: block;\n @include media_desktop() {\n display: none;\n @include reset_link;\n }\n }\n\n & &__right {\n width: calc(100% * 2 / 3);\n display: flex;\n justify-content: flex-end;\n align-items: center;\n }\n\n & &__nav {\n display: inline-block;\n @include reset_link;\n }\n & &__cart {\n display: inline-block;\n @include reset_link;\n }\n}\n\n.ec-headerNavSP {\n display: block;\n cursor: pointer;\n //display: inline-block;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 10px;\n z-index: 1000;\n\n .fas {\n vertical-align: top;\n }\n\n @include media_desktop {\n display: none;\n }\n}\n.ec-headerNavSP.is-active {\n display: none;\n}\n\n/*\nヘッダー:タイトル\n\nヘッダー内で使用されるタイトルコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerTitle\n\nStyleguide 11.2.1\n*/\n.ec-headerTitle {\n @include commonStyle();\n & &__title {\n text-align: center;\n h1 {\n margin: 0;\n padding: 0;\n }\n a {\n display: inline-block;\n margin-bottom: 30px;\n text-decoration: none;\n font-size: 20px;\n\n @include media_desktop() {\n font-size: 40px;\n }\n font-weight: bold;\n color: black;\n\n &:hover {\n opacity: .8;\n }\n }\n }\n & &__subtitle {\n font-size: 10px;\n text-align: center;\n @include media_desktop() {\n font-size: 16px;\n margin-bottom: 10px;\n }\n a {\n display: inline-block;\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n }\n }\n}\n\n/*\nヘッダー:ユーザナビゲーション\n\nヘッダー内でユーザに関与するナビゲーションコンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__nav`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.3\n*/\n.ec-headerNav {\n text-align: right;\n & &__item {\n margin-left: 0;\n display: inline-block;\n font-size: 28px;\n }\n & &__itemIcon {\n display: inline-block;\n margin-right: 10px;\n margin-left: 10px;\n font-size: 18px;\n color: black;\n @include media_desktop {\n margin-right: 0;\n font-size: 20px;\n }\n }\n & &__itemLink {\n display: none;\n margin-right: 5px;\n font-size: 14px;\n vertical-align: middle;\n color: black;\n @include media_desktop {\n display: inline-block;\n }\n }\n}\n\n/*\nヘッダー:検索ボックス\n\nヘッダー内で使用される商品検索コンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__search`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerSearch\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.4\n*/\n.ec-headerSearch{\n @include clearfix;\n & &__category {\n float: none;\n @include media_desktop {\n float: left;\n width: 43%;\n }\n .ec-select {\n overflow: hidden;\n width: 100%;\n margin: 0;\n text-align: center;\n\n select {\n width: 100%;\n cursor: pointer;\n padding: 8px 24px 8px 8px;\n text-indent: 0.01px;\n text-overflow: ellipsis;\n border: none;\n outline: none;\n background: transparent;\n background-image: none;\n box-shadow: none;\n appearance: none;\n color: #fff;\n\n @include media_desktop {\n max-width: 165px;\n height: 36px;\n }\n\n option {\n color: #000;\n }\n\n &::-ms-expand {\n display: none;\n }\n }\n\n &.ec-select_search {\n position: relative;\n border: 0;\n background: #000;\n color: #fff;\n border-top-right-radius: 10px;\n border-top-left-radius: 10px;\n\n @include media_desktop {\n border-top-right-radius: inherit;\n border-top-left-radius: 50px;\n border-bottom-left-radius: 50px;\n }\n\n &::before {\n position: absolute;\n top: 0.8em;\n right: 0.4em;\n width: 0;\n height: 0;\n padding: 0;\n content: '';\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid #fff;\n pointer-events: none;\n }\n }\n }\n }\n & &__keyword{\n position: relative;\n color: $clrDarkGray;\n border: 1px solid #ccc;\n background-color: #f6f6f6;\n border-bottom-right-radius: 10px;\n border-bottom-left-radius: 10px;\n\n @include media_desktop {\n float: right;\n width: 57%;\n border-bottom-left-radius: inherit;\n border-top-right-radius: 50px;\n border-bottom-right-radius: 50px;\n }\n input[type=\"search\"]{\n width: 100%;\n height: 34px;\n font-size: 1.2rem;\n border: 0 none;\n padding: 0.5em 50px 0.5em 1em;\n box-shadow: none;\n background: none;\n box-sizing: border-box;\n margin-bottom: 0;\n }\n .ec-icon {\n width: 22px;\n height: 22px;\n }\n }\n & &__keywordBtn{\n border: 0;\n background: none;\n position: absolute;\n right: 5px;\n top: 50%;\n transform: translateY(-55%);\n display: block;\n white-space: nowrap;\n z-index: 1;\n }\n}\n\n/*\nヘッダー:カテゴリナビ\n\nヘッダー内で使用されている商品のカテゴリ一覧として使用します。\n`li`の中に`ul > li`要素を入れることで、階層を深くする事ができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+ec-itemNav\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 11.2.5\n*/\n.ec-categoryNaviRole {\n @include container;\n display: none;\n @include media_desktop() {\n display: block;\n width: 100%;\n @include reset_link;\n }\n}\n\n.ec-itemNav {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n text-align: center;\n}\n\n.ec-itemNav__nav {\n display: block;\n margin: 0 auto;\n padding: 0;\n width: auto;\n height: auto;\n list-style-type: none;\n text-align: center;\n vertical-align: bottom;\n @include media_desktop {\n display: inline-block;\n }\n}\n\n.ec-itemNav__nav li {\n float: none;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: center;\n position: relative;\n @include media_desktop {\n float: left;\n width: auto;\n }\n}\n\n.ec-itemNav__nav li a {\n display: block;\n border-bottom: 1px solid #E8E8E8;\n margin: 0;\n padding: 16px;\n height: auto;\n color: #2e3233;;\n font-size: 16px;\n font-weight: bold;\n line-height: 20px;\n text-decoration: none;\n text-align: left;\n background: #fff;\n border-bottom: 1px solid #E8E8E8;\n @include media_desktop {\n text-align: center;\n border-bottom: none;\n }\n}\n\n.ec-itemNav__nav li ul {\n display: none;\n z-index: 0;\n margin: 0;\n padding: 0;\n min-width: 200px;\n list-style: none;\n position: static;\n top: 100%;\n left: 0;\n @include media_desktop {\n display: block;\n z-index: 100;\n position: absolute;\n }\n}\n\n.ec-itemNav__nav li ul li {\n overflow: hidden;\n width: 100%;\n height: auto;\n transition: .3s;\n @include media_desktop {\n overflow: hidden;\n height: 0;\n }\n}\n\n.ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #E8E8E8;\n padding: 16px 22px 16px 16px;\n font-size: 16px;\n font-weight: bold;\n color: white;\n text-align: left;\n background: black;\n}\n\n.ec-itemNav__nav > li:hover > a {\n background: #fafafa;\n}\n\n.ec-itemNav__nav > li:hover li:hover > a {\n background: #333;\n}\n\n.ec-itemNav__nav > li:hover > ul > li {\n @include media_desktop {\n overflow: visible;\n height: auto;\n\n }\n}\n\n.ec-itemNav__nav li ul li ul {\n top: 0;\n left: 100%;\n width: auto;\n}\n\n.ec-itemNav__nav li ul li ul:before {\n @include media_desktop {\n content: \"\\f054\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n font-size: 12px;\n color: white;\n position: absolute;\n top: 19px;\n right: auto;\n left: -20px;\n }\n}\n\n.ec-itemNav__nav li ul li:hover > ul > li {\n @include media_desktop {\n overflow: visible;\n height: auto;\n width: auto;\n }\n}\n\n.ec-itemNav__nav li ul li ul li a {\n background: #7D7D7D\n}\n\n.ec-itemNav__nav li:hover ul li ul li a:hover {\n background: #333;\n}\n\n/*\nヘッダー:SPヘッダー\n\nSP時のみ出現するヘッダーに関係するコンポーネントです。
\nex [トップページ](http://demo3.ec-cube.net/)画面サイズが768px以下に該当。
\n
\n`.ec-drawerRole`:SPのドロワー内の要素をwrapするコンポーネントです。
\n`.ec-headerSearch`、`.ec-headerNav`、`.ec-itemNav`は`.ec-drawerRole`の子要素にある場合、ドロワーに適したスタイルに変化します。

\n`.ec-overlayRole`:SPのドロワー出現時にz-indexがドロワー以下の要素に半透明の黒背景をかぶせるコンポーネントです。
\n\nStyleguide 11.2.6\n*/\n\n.ec-drawerRole {\n overflow-y: scroll;\n background: black;\n width: 260px;\n height: 100vh;\n transform: translateX(-300px);\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1;\n transition: z-index 0ms 1ms;\n @include media_desktop() {\n display: none;\n }\n\n\n .ec-headerSearchArea {\n padding: 20px 10px;\n width: 100%;\n background: #F8F8F8;\n }\n\n .ec-headerSearch{\n padding: 16px 8px 26px;\n background: #EBEBEB;\n color: #636378;\n select{\n width: 100% !important;\n }\n }\n\n .ec-headerCategoryArea{\n .ec-headerCategoryArea__heading {\n border-top: 1px solid #CCCCCC;\n border-bottom: 1px solid #CCCCCC;\n padding: 1em 10px;\n font-size: 16px;\n font-weight: bold;\n color: black;\n background: #F8F8F8;\n }\n\n p {\n margin-top: 0;\n margin-bottom: 0;\n }\n\n .ec-itemNav__nav li a {\n border-bottom: 1px solid #ccc;\n border-bottom: 1px solid #ccc;\n color: black;\n font-weight: normal;\n background: #f8f8f8;\n }\n\n .ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #ccc;\n padding-left: 20px;\n font-weight: normal;\n background: white;\n }\n\n .ec-itemNav__nav > li:hover > a {\n background: #f8f8f8;\n }\n\n .ec-itemNav__nav > li:hover li:hover > a {\n background: white;\n }\n\n .ec-itemNav__nav li ul li ul li a {\n padding-left: 40px;\n color: black;\n background: white;\n }\n\n .ec-itemNav__nav li:hover ul li ul li a:hover {\n background: white;\n }\n\n .ec-itemNav__nav li ul li ul li ul li a{\n padding-left: 60px;\n font-weight: normal;\n }\n }\n .ec-headerLinkArea {\n background: black;\n\n .ec-headerLink__list {\n border-top: 1px solid #ccc;\n\n }\n\n .ec-headerLink__item {\n display: block;\n border-bottom: 1px solid #ccc;\n padding: 15px 20px;\n font-size: 16px;\n font-weight: bold;\n color: white;\n }\n .ec-headerLink__icon {\n display: inline-block;\n width: 28px;\n font-size: 17px;\n }\n\n\n\n }\n\n}\n\n.ec-drawerRoleClose {\n display: none;\n cursor: pointer;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 270px;\n z-index: 1000;\n\n .fas {\n vertical-align: top;\n }\n @include media_desktop {\n display: none;\n }\n\n}\n\n.ec-drawerRole.is_active {\n display: block;\n transform: translateX(0);\n transition: all .3s;\n z-index: 100000;\n\n @include media_desktop() {\n display: none;\n }\n}\n.ec-drawerRoleClose.is_active {\n display: inline-block;\n transition: all .3s;\n\n @include media_desktop {\n display: none;\n }\n}\n\n.ec-overlayRole {\n position: fixed;\n width: 100%;\n height: 100vh;\n top: 0;\n left: 0;\n opacity: 0;\n background: transparent;\n transform: translateX(0);\n transition: all .3s;\n visibility: hidden;\n\n @include media_desktop {\n display: none;\n }\n}\n\n.have_curtain .ec-overlayRole {\n display: block;\n opacity: 1;\n background: rgba(0, 0, 0, 0.5);\n visibility: visible;\n\n @include media_desktop {\n display: none;\n }\n}\n\n/*\nヘッダー:test\n\ntest\n\nMarkup:\nspan.ec-itemAccordionParent test1\nul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test2\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test3\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test4\n\nStyleguide 11.2.7\n*/\n\n.ec-itemNavAccordion {\n display: none;\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\nフッター\n\n全ページで使用されるフッターのプロジェクトコンポーネントです。\n\nex [トップページ フッター](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerRole\n\nStyleguide 11.3\n*/\n.ec-footerRole{\n border-top: 1px solid #7d7d7d;\n margin-top: 30px;\n background: black;\n\n @include media_desktop(){\n padding-top: 40px;\n margin-top: 100px;\n }\n & &__inner{\n @include media_desktop {\n @include container;\n }\n }\n}\n\n/*\nフッターナビ\n\nフッタープロジェクトで使用するナビゲーション用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.1\n*/\n.ec-footerNavi{\n padding: 0;\n color: white;\n list-style: none;\n text-align: center;\n\n & &__link{\n display: block;\n\n @include media_desktop {\n display: inline-block;\n }\n\n a{\n display: block;\n border-bottom: 1px solid #7d7d7d;\n padding: 15px 0;\n font-size: 14px;\n color: inherit;\n text-decoration: none;\n\n @include media_desktop {\n display: inline-block;\n border-bottom: none;\n margin: 0 10px;\n padding: 0;\n text-decoration: underline;\n }\n }\n &:hover {\n a {\n opacity: .8;\n text-decoration: none;\n }\n\n }\n\n }\n}\n\n/*\nフッタータイトル\n\nフッタープロジェクトで使用するタイトル用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerTitle\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.2\n*/\n.ec-footerTitle{\n padding: 40px 0 60px;\n text-align: center;\n color: white;\n\n @include media_desktop {\n padding: 50px 0 80px;\n }\n\n & &__logo{\n display: block;\n margin-bottom: 10px;\n font-weight: bold;\n @include reset_link();\n\n a{\n font-size: 22px;\n color: inherit;\n @include media_desktop {\n font-size: 24px;\n }\n\n }\n\n &:hover {\n a {\n opacity: .8;\n text-decoration: none;\n }\n }\n }\n & &__copyright{\n font-size: 10px;\n\n @include media_desktop {\n font-size: 12px;\n }\n }\n}\n","@import \"../mixins/media\";\n/*\nトップページ\n\nトップページ スライド部に関する Project コンポーネントを定義します。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.1.slider.pug\n+ec-sliderRole\n\nStyleguide 12.1\n*/\n.ec-sliderRole{\n @include container;\n margin-bottom: 24px;\n ul{\n padding: 0;\n list-style: none;\n }\n}\n.ec-sliderItemRole{\n @include container;\n margin-bottom: 24px;\n ul{\n padding: 0;\n list-style: none;\n }\n .item_nav {\n display: none;\n @include media_desktop {\n display: flex;\n justify-content: flex-start;\n flex-wrap: wrap;\n margin-bottom: 0;\n }\n\n }\n .slideThumb{\n margin-bottom: 25px;\n width: 33%;\n opacity: .8;\n cursor: pointer;\n\n &:focus {\n outline: none;\n }\n &:hover {\n opacity: 1;\n }\n img {\n width: 80%;\n }\n }\n}\n","@import \"../mixins/media\";\n\n/*\nアイキャッチ\n\nトップページ アイキャッチ部に関する Project コンポーネントを定義します。\n\nex [トップページスライダー直下 アイキャッチ部](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.2.eyecatch.pug\n+ec-eyecatchRole\n\nStyleguide 12.2\n*/\n.ec-eyecatchRole {\n display: flex;\n flex-wrap: wrap;\n margin-bottom: 40px;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n & &__image {\n display: block;\n margin-bottom: 40px;\n width: 100%;\n height: 100%;\n\n @include media_desktop {\n order: 2;\n }\n }\n\n & &__intro {\n color: black;\n\n @include media_desktop {\n padding-right: 5%;\n order: 1;\n }\n }\n & &__introEnTitle {\n margin-bottom: .8em;\n font-size: 16px;\n font-weight: normal;\n\n @include media_desktop {\n margin-top: 45px;\n }\n }\n & &__introTitle {\n margin-bottom: .8em;\n font-size: 24px;\n font-weight: bold;\n\n @include media_desktop {\n margin-bottom: 1em;\n font-size: 26px;\n }\n }\n & &__introDescriptiron {\n margin-bottom: 20px;\n font-size: 16px;\n line-height: 2;\n @include media_desktop {\n margin-bottom: 30px;\n }\n }\n\n}\n","@import \"../mixins/btn\";\n@import \"../mixins/media\";\n\n/*\nボタン\n\nトップページで使用されているボタンのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.3\n*/\n\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nMarkup:\n.ec-inlineBtn--top more\n\nStyleguide 12.3.1\n*/\n.ec-inlineBtn--top{\n @include _btn(white, black, black);\n}\n\n/*\nロングボタン(全幅)\n\nロングタイプのボタンです。\n\nMarkup:\n.ec-blockBtn--top 商品一覧へ\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn--top{\n @include _btn(white, black, black);\n display: block;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n\n @include media_desktop {\n max-width: 260px;\n }\n}\n","/*\n見出し\n\nトップページで使用されている見出しのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.4\n*/\n\n/*\n横並び見出し\n\n横並びの見出しです。\n\nMarkup:\n.ec-secHeading\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.1\n*/\n.ec-secHeading {\n margin-bottom: 15px;\n color: black;\n & &__en{\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em;\n }\n & &__line{\n display: inline-block;\n margin: 0 20px;\n width: 1px;\n height: 14px;\n background: black;\n }\n & &__ja{\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px;\n }\n}\n\n/*\n縦並び見出し\n\n縦並びの見出しです。\n\nMarkup:\n.ec-secHeading--tandem\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.2\n*/\n\n.ec-secHeading--tandem {\n margin-bottom: 15px;\n color: black;\n text-align: center;\n & .ec-secHeading__en{\n display: block;\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em;\n }\n & .ec-secHeading__line{\n display: block;\n margin: 13px auto;\n width: 20px;\n height: 1px;\n background: black;\n }\n & .ec-secHeading__ja{\n display: block;\n margin-bottom: 30px;\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\nトピック(アイテム2列)\n\nトップページで使用されているトピックのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.5.1\n*/\n\n.ec-topicRole {\n padding: 40px 0;\n background: #F8F8F8;\n\n @include media_desktop {\n padding: 60px 0;\n }\n\n & &__list {\n display: flex;\n flex-wrap: wrap;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n }\n & &__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto;\n\n @include media_desktop {\n width: calc(100% / 2);\n\n &:not(:last-of-type){\n margin-right: 30px;\n }\n }\n\n }\n & &__listItemTitle {\n margin-top: .5em;\n font-size: 14px;\n color: black;\n\n @include media_desktop {\n margin-top: 1em;\n }\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\nカテゴリ(アイテム4列 スマホの時は2列)\n\nトップページで使用されているアイテムリストのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.6.1\n*/\n\n.ec-newItemRole {\n padding: 40px 0;\n\n @include media_desktop {\n padding: 60px 0;\n }\n\n & &__list {\n display: flex;\n flex-wrap: wrap;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n }\n & &__listItem {\n margin-bottom: 4%;\n width: 48%;\n height: auto;\n\n &:not(:first-child){\n a {\n color: black;\n }\n }\n\n @include media_desktop {\n margin-bottom: 15px;\n width: calc(100% / 4);\n\n &:not(:last-of-type){\n margin-right: 30px;\n }\n }\n\n &:nth-child(odd){\n margin-right: 4%;\n\n @include media_desktop {\n margin-right: 30px;\n }\n }\n }\n & &__listItemHeading {\n margin-top: calc(45% - 20px);\n }\n & &__listItemTitle {\n margin: 8px 0;\n font-size: 14px;\n font-weight: bold;\n\n @include media_desktop {\n margin: 20px 0 10px;\n }\n }\n\n & &__listItemPrice {\n font-size: 12px;\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\nカテゴリ(アイテム3列)\n\nトップページで使用されているカテゴリのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.7.1\n*/\n\n.ec-categoryRole {\n padding: 40px 0;\n color: black;\n background: #F8F8F8;\n\n @include media_desktop {\n padding: 60px 0;\n }\n\n & &__list {\n display: flex;\n flex-wrap: wrap;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n }\n & &__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto;\n\n @include media_desktop {\n width: calc(100% / 3);\n\n &:not(:last-of-type){\n margin-right: 30px;\n }\n }\n\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\n見出し\n\nトップページで使用されている新着情報のスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.8.1\n*/\n\n.ec-newsRole {\n padding: 40px 0 0;\n\n @include media_desktop {\n padding: 60px 0 0;\n }\n\n & &__news {\n\n box-sizing: border-box;\n\n @include media_desktop {\n border: 16px solid #F8F8F8;\n padding: 20px 30px;\n }\n }\n & &__newsItem {\n width: 100%;\n\n &:not(:last-of-type){\n border-bottom: 1px solid #ccc;\n }\n\n &:last-of-type {\n margin-bottom: 20px;\n\n @include media_desktop {\n margin-bottom: 0;\n }\n }\n\n\n @include media_desktop {\n\n padding: 20px 0;\n }\n }\n & &__newsHeading {\n cursor: pointer;\n\n @include media_desktop {\n display: flex;\n }\n\n }\n & &__newsDate {\n display: block;\n margin: 15px 0 5px;\n font-size: 12px;\n color: black;\n\n @include media_desktop {\n display: inline-block;\n margin: 0;\n min-width: 120px;\n font-size: 14px;\n }\n\n }\n & &__newsColumn {\n display: flex;\n\n @include media_desktop {\n display: inline-flex;\n min-width: calc(100% - 120px);\n }\n }\n\n & &__newsTitle {\n display: inline-block;\n margin-bottom: 10px;\n width: 90%;\n font-size: 14px;\n font-weight: bold;\n color: #7D7D7D;\n line-height: 1.6;\n\n @include media_desktop {\n margin-bottom: 0;\n line-height: 1.8;\n }\n\n }\n & &__newsClose {\n display: inline-block;\n width: 10%;\n position: relative;\n\n }\n & &__newsCloseBtn {\n display: inline-block;\n margin-left: auto;\n border-radius: 50%;\n width: 20px;\n height: 20px;\n color: white;\n text-align: center;\n background: black;\n cursor: pointer;\n position: absolute;\n right: 5px;\n }\n & &__newsDescription {\n display: none;\n margin: 0 0 10px;\n font-size: 14px;\n line-height: 1.4;\n overflow: hidden;\n\n @include media_desktop {\n margin: 20px 0 0;\n line-height: 1.8;\n }\n\n a {\n color: #0092C4;\n }\n }\n &__newsItem.is_active &__newsDescription{\n margin: 0 0 10px;\n\n @include media_desktop {\n margin: 20px 0 0;\n }\n }\n &__newsItem.is_active &__newsCloseBtn i {\n display: inline-block;\n transform: rotateX(180deg) translateY(2px);\n\n }\n\n}\n","@import \"../mixins/media\";\n/*\n検索ラベル\n\n商品一覧 ヘッダー部 に関する Project コンポーネントを定義します。\n\nex [商品一覧 ヘッダー部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.1.searchnav.pug\n+ec-searchnavRole__topicpath\n+ec-searchnavRole__info\n\nStyleguide 13.1\n\n*/\n.ec-searchnavRole{\n margin-bottom: 0;\n padding: 0;\n @include media_desktop {\n @include container;\n }\n & &__infos{\n @include container;\n display: flex;\n border-top: 0;\n margin-bottom: 16px;\n padding-top: 5px;\n flex-direction:column;\n @include media_desktop {\n padding-left: 0;\n padding-right: 0;\n border-top: 1px solid #ccc;\n padding-top: 16px;\n flex-direction:row;\n }\n }\n\n & &__counter{\n margin-bottom: 16px;\n width: 100%;\n @include media_desktop {\n margin-bottom: 0;\n width: 50%;\n }\n }\n\n & &__actions{\n text-align: right;\n width: 100%;\n @include media_desktop {\n width: 50%;\n }\n }\n\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\n商品一覧\n\n商品一覧 に関する Project コンポーネントを定義します。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2\n\n*/\n.ec-shelfRole{\n @include container;\n}\n\n/*\n商品一覧グリッド\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2.1\n\n*/\n.ec-shelfGrid{\n @include reset_link;\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n\n @include media_desktop {\n margin-left: -16px;\n margin-right: -16px;\n }\n & &__item{\n margin-bottom: 36px;\n width: 50%;\n display: flex;\n flex-direction: column;\n &-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center;\n @include media_desktop() {\n height: 250px;\n }\n }\n img{\n width: auto;\n max-height: 100%;\n }\n @include media_desktop(){\n padding: 0 16px;\n width: 25%;\n }\n\n .ec-productRole__btn {\n margin-top: auto;\n margin-bottom: 15px;\n }\n }\n & &__item:nth-child(odd){\n padding-right: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__item:nth-child(even){\n padding-left: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__title {\n margin-bottom: 7px;\n }\n & &__plice {\n font-weight: bold;\n }\n}\n\n/*\n13.2.2 商品一覧グリッド(中央寄せ)\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n商品のあまりはセンタリングされ、中央に表示されます。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGridCenter\n\nStyleguide 13.2.2\n\n*/\n.ec-shelfGridCenter{\n @include reset_link;\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n justify-content: center;\n\n @include media_desktop {\n margin-left: -16px;\n margin-right: -16px;\n }\n & &__item{\n margin-bottom: 36px;\n width: 50%;\n &-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center;\n @include media_desktop() {\n height: 250px;\n }\n }\n img{\n width: auto;\n max-height: 100%;\n }\n @include media_desktop(){\n padding: 0 16px;\n width: 25%;\n }\n\n .ec-productRole__btn {\n margin-top: auto;\n padding-top: 1em;\n }\n }\n & &__item:nth-child(odd){\n padding-right: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__item:nth-child(even){\n padding-left: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__title {\n margin-bottom: 7px;\n }\n & &__plice {\n font-weight: bold;\n }\n}\n","\n/*\n商品一覧フッター\n\n商品一覧 フッター に関する Project コンポーネントを定義します。\n\nex [商品一覧 ページャ部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.3.pager.pug\n+ec-pagerRole\n\nStyleguide 13.3\n\n*/\n.ec-pagerRole{\n\n}\n","@import \"../mixins/media\";\n\n/*\nカート追加モーダル\n\nカート追加モーダルに関する Project コンポーネントを定義します。\n\nex [商品一覧、商品詳細](http://demo3.ec-cube.net/products/list)\n\n+ec-modal\n\nStyleguide 13.4\n\n*/\n\n.ec-modal {\n\n .checkbox {\n display: none;\n }\n\n .ec-modal-overlay {\n opacity: 0;\n transition: all 0.3s ease;\n width: 100%;\n height: 100%;\n position: fixed;\n top: 0;\n left: 0;\n z-index: -100;\n transform: scale(1);\n display: flex;\n background-color: rgba(0, 0, 0, 0.3);\n }\n\n .ec-modal-wrap {\n background-color: #fff;\n border: 1px solid #333;\n width: 90%;\n margin: 20px;\n padding: 40px 5px;\n border-radius: 2px;\n transition: all 0.5s ease;\n -ms-flex-item-align: center;\n align-self: center;\n\n .ec-modal-box {\n text-align: center;\n }\n\n .ec-modal-box div {\n margin-top: 20px;\n }\n\n @include media_desktop {\n & {\n padding: 40px 10px;\n width: 50%;\n margin: 20px auto;\n }\n }\n\n &.small {\n width: 30%;\n }\n\n &.full {\n width: 100%;\n height: 100%;\n }\n }\n\n .ec-modal-overlay {\n .ec-modal-close {\n position: absolute;\n right: 20px;\n top: 10px;\n font-size: 20px;\n height: 30px;\n width: 20px;\n\n &:hover {\n cursor: pointer;\n color: #4b5361;\n }\n }\n }\n\n .ec-modal-overlay-close {\n display: none;\n width: 100%;\n height: 100%;\n position: fixed;\n left: 0;\n top: 0;\n }\n\n input:checked {\n ~ .ec-modal-overlay {\n transform: scale(1);\n opacity: 1;\n z-index: 9997;\n overflow: auto;\n .ec-modal-overlay-close {\n display: block;\n }\n }\n\n ~ .ec-modal-overlay .ec-modal-wrap {\n transform: translateY(0);\n z-index: 9999;\n }\n }\n}\n","@import \"../mixins/media\";\n\n/*\n商品詳細\n\n商品詳細ページに関する Project コンポーネントを定義します。\n\nex [商品詳細ページ](http://demo3.ec-cube.net/products/detail/18)\n\n\nMarkup:\ninclude /assets/tmpl/elements/14.1.product.pug\n+ec-productSimpleRole\n\nStyleguide 14.1\n*/\n.ec-productRole {\n @include container;\n & &__img {\n margin-right: 0;\n margin-bottom: 20px;\n @include media_desktop {\n margin-right: 16px;\n margin-bottom: 0;\n }\n }\n & &__profile {\n margin-left: 0;\n @include media_desktop {\n margin-left: 16px;\n }\n }\n & &__title {\n .ec-headingTitle {\n font-size: 20px;\n @include media_desktop {\n font-size: 32px;\n }\n }\n }\n & &__tags {\n margin-top: 16px;\n padding: 0;\n padding-bottom: 16px;\n border-bottom: 1px dotted #ccc;\n }\n & &__tag {\n display: inline-block;\n padding: 2px 5px;\n list-style: none;\n font-size: 80%;\n color: #525263;\n border: solid 1px #D7DADD;\n border-radius: 3px;\n background-color: #F5F7F8;\n }\n & &__priceRegular {\n padding-top: 14px\n }\n & &__priceRegularTax {\n margin-left: 5px;\n font-size: 10px;\n }\n & &__price {\n color: #DE5D50;\n font-size: 28px;\n padding: 0;\n border-bottom: 0;\n @include media_desktop {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc;\n }\n }\n & &__code {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc;\n }\n & &__category {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc;\n a {\n color: #33A8D0;\n }\n ul {\n list-style: none;\n padding: 0;\n margin: 0;\n }\n }\n & &__actions {\n padding: 14px 0;\n .ec-select {\n select {\n height: 40px;\n max-width: 100%;\n min-width: 100%;\n @include media_desktop {\n min-width: 350px;\n max-width: 350px;\n }\n }\n }\n }\n & &__btn {\n width: 100%;\n margin-bottom: 10px;\n @include media_desktop {\n width: 60%;\n margin-bottom: 16px;\n min-width: 350px;\n }\n }\n & &__description {\n margin-bottom: 16px;\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n\n/*\nカート\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [カートページ](http://demo3.ec-cube.net/shopping)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartRole\n\nStyleguide 15.1\n\n*/\n.ec-cartRole{\n @include container;\n &::before{\n display: none;\n }\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end;\n\n & &__progress{\n width: 100%;\n text-align: center;\n }\n & &__error{\n width: 100%;\n text-align: center;\n .ec-alert-warning {\n max-width: 80%;\n display: inline-block;\n }\n }\n & &__totalText{\n margin-bottom: 0;\n padding: 16px 0 6px;\n width: 100%;\n text-align: center;\n font-weight: normal;\n @include media_desktop {\n margin-bottom: 30px;\n padding: 0;\n }\n }\n & &__cart{\n margin: 0;\n width: 100%;\n @include media_desktop {\n margin: 0 10%;\n }\n\n }\n & &__actions{\n text-align: right;\n width: 100%;\n @include media_desktop {\n width: 20%;\n margin-right: 10%;\n }\n }\n & &__total{\n padding: 15px 0 30px ;\n font-weight: bold;\n font-size: 16px;\n }\n & &__totalAmount{\n margin-left: 30px;\n color: #de5d50;\n font-size: 16px;\n @include media_desktop {\n font-size: 24px;\n }\n }\n\n .ec-blockBtn--action {\n margin-bottom: 10px;\n }\n}\n\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品をを表示するテーブル枠です。\n\nex [カートページ テーブル部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartTable\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 15.1.2\n*/\n.ec-cartTable{\n display: table;\n border-top: 1px dotted #ccc;\n width: 100%;\n @include media_desktop {\n border-top: none;\n }\n}\n\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品を表示するテーブルのヘッダです。\nスマホでは非表示となります。\n\nex [カートページ カートテーブルヘッダ部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartHeader\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.3\n*/\n.ec-cartHeader{\n display: none;\n width: 100%;\n background: #F4F3F0;\n @include media_desktop {\n display: table-row;\n }\n & &__label{\n display: table-cell;\n padding: 16px;\n text-align: center;\n background: #F4F3F0;\n overflow-x: hidden;\n font-weight: bold;\n }\n}\n.ec-cartCompleteRole {\n @include container;\n}\n/*\nカート内商品\n\nカート内のアイテムを表示するテーブル行です。\nスマホでは非表示となります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRow\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.4\n*/\n\n.ec-cartRow{\n display: table-row;\n & &__delColumn{\n border-bottom: 1px dotted #ccc;\n text-align: center;\n display: table-cell;\n width: 14%;\n vertical-align: middle;\n @include media_desktop{\n width: 8.3333333%;\n }\n .ec-icon {\n img {\n width: 1.5em;\n height: 1.5em;\n @include media_desktop {\n width: 1em;\n height: 1em;\n }\n }\n }\n }\n & &__contentColumn{\n border-bottom: 1px dotted #ccc;\n padding: 10px 0;\n display: table;\n @include media_desktop {\n display: table-cell;\n }\n }\n & &__img{\n display: table-cell;\n width: 40%;\n vertical-align: middle;\n padding-right: 10px;\n @include media_desktop {\n display: inline-block;\n min-width: 80px;\n max-width: 100px;\n padding-right: 0;\n }\n }\n & &__summary{\n display: table-cell;\n margin-left: 5px;\n font-weight: bold;\n vertical-align: middle;\n width: 46%;\n @include media_desktop {\n display: inline-block;\n margin-left: 20px;\n vertical-align: middle;\n }\n .ec-cartRow__name {\n margin-bottom: 5px;\n }\n .ec-cartRow__sutbtotalSP {\n display: block;\n font-weight: normal;\n @include media_desktop {\n display: none;\n }\n }\n }\n & &__amountColumn{\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n vertical-align: middle;\n text-align: center;\n width: 20%;\n @include media_desktop {\n width: 16.66666667%;\n }\n\n .ec-cartRow__amount {\n display: none;\n margin-bottom: 10px;\n @include media_desktop {\n display: block;\n }\n }\n .ec-cartRow__amountSP {\n display: block;\n margin-bottom: 10px;\n @include media_desktop {\n display: none;\n }\n }\n\n .ec-cartRow__amountUpDown {\n display: flex;\n justify-content: center;\n @include media_desktop {\n display: block;\n }\n }\n\n .ec-cartRow__amountUpButton {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff;\n\n\n .ec-cartRow__amountUpButton__icon {\n img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%;\n }\n }\n }\n .ec-cartRow__amountDownButton {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff;\n\n .ec-cartRow__amountDownButton__icon {\n img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%;\n }\n }\n }\n\n .ec-cartRow__amountDownButtonDisabled {\n @extend .ec-cartRow__amountDownButton;\n cursor: default;\n }\n }\n & &__subtotalColumn{\n display: none;\n border-bottom: 1px dotted #ccc;\n text-align: right;\n width: 16.66666667%;\n @include media_desktop {\n display: table-cell;\n }\n }\n}\n\n/*\nカート内商品(商品が1の場合)\n\n商品が1の場合はカート商品を減らす「-」ボタンの無効化状態になります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRowOnly\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.5\n*/\n\n.ec-cartRow{\n & &__amountColumn{\n .ec-cartRow__amountDownButtonDisabled {\n @extend .ec-cartRow__amountDownButton;\n cursor: default;\n }\n }\n}\n\n/*\nアラート\n\nカート内の商品に問題があることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartRole\n .ec-cartRole__cart\n +ec-alert-warning\n\nStyleguide 15.1.6\n*/\n\n.ec-alert-warning {\n width: 100%;\n padding: 10px;\n text-align: center;\n background: #F99;\n margin-bottom: 20px;\n\n\n & &__icon {\n display: inline-block;\n margin-right: 1rem;\n width: 20px;\n height: 20px;\n color: #fff;\n fill: #fff;\n vertical-align: top;\n }\n & &__text {\n display: inline-block;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n position: relative;\n }\n}\n\n\n\n\n/*\nアラート(空)\n\nカートが空であることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-off3Grid\n .ec-off3Grid__cell\n +ec-alert-warningEnpty\n\nStyleguide 15.1.7\n*/\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/projects\";\n/*\n注文内容確認\n\nカート内 注文内容確認に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/shopping)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderRole\n\nStyleguide 15.2\n*/\n.ec-orderRole{\n @include container;\n display: flex;\n flex-direction: column;\n margin-top: 0;\n @include media_desktop {\n margin-top: 20px;\n flex-direction: row;\n }\n .ec-inlineBtn {\n font-weight: normal;\n }\n & &__detail{\n padding: 0;\n width: 100%;\n @include media_desktop {\n padding: 0 16px;\n width: 66.66666%;\n }\n }\n & &__summary{\n width: 100%;\n .ec-inlineBtn {\n display: inline-block;\n }\n @include media_desktop {\n width: 33.33333%;\n padding: 0 16px;\n .ec-inlineBtn {\n display: none;\n }\n }\n }\n .ec-borderedList {\n margin-bottom: 20px;\n border-top: 1px dotted #ccc;\n @include media_desktop {\n border-top: none;\n }\n }\n\n}\n\n/*\n注文履歴詳細 オーダ情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderInfo\n\nStyleguide 15.2.1\n*/\n.ec-orderOrder{\n margin-bottom: 30px;\n & &__items{\n @include borderBottom;\n @include borderTop;\n }\n}\n\n/*\n注文履歴詳細 お客様情報\n\nマイページ 注文詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAccount\n\nStyleguide 15.2.2\n*/\n.ec-orderAccount{\n margin-bottom: 30px;\n p {\n margin-bottom: 0;\n }\n @include clearfix;\n & &__change{\n display: inline-block;\n margin-left: 10px;\n float: right;\n }\n & &__account {\n margin-bottom: 16px;\n }\n\n}\n\n\n/*\n注文詳細 配送情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 配送情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderDelivery\n\nStyleguide 15.2.3\n*/\n.ec-orderDelivery{\n & &__title{\n padding: 16px 0 17px;\n font-weight: bold;\n font-size: 18px;\n position: relative;\n }\n & &__change{\n display: inline-block;\n position: absolute;\n right: 0;\n top:0;\n }\n & &__items{\n @include borderBottom;\n @include borderTop;\n }\n & &__address{\n margin: 10px 0 18px ;\n p{\n margin:0;\n }\n }\n & &__edit{\n }\n\n}\n\n\n/*\n注文履歴詳細 支払情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 支払情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderPayment\n .ec-rectHeading\n h2 お支払方法\n p 支払方法: 郵便振替\n\nStyleguide 15.2.4\n*/\n.ec-orderPayment{\n\n}\n\n\n/*\n注文履歴詳細 お問い合わせ\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ お問い合わせ(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderConfirm\n .ec-rectHeading\n h2 お問い合わせ\n p 記載なし\n\nStyleguide 15.2.5\n*/\n.ec-orderConfirm{\n margin-bottom: 20px;\n @include media_desktop {\n margin-bottom: 0;\n }\n .ec-input {\n textarea {\n height: 96px;\n }\n }\n\n}\n\n\n/*\nお届け先の複数指定\n\nお届け先の複数指定に関するコンポーネントを定義します。\n\nex [マイページ お届け先の複数指定](http://demo3.ec-cube.net/shopping/shipping_multiple)\n(商品購入画面 → 「お届け先を追加する」を押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAddAddress\n\nStyleguide 15.2.6\n*/\n.ec-AddAddress {\n padding: 0 10px;\n @include media_desktop {\n margin: 0 10%;\n }\n\n & &__info {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px;\n }\n & &__add {\n border-top: 1px solid #f4f4f4;\n padding-top: 20px;\n margin-bottom: 20px;\n }\n & &__item {\n display: table;\n padding:16px;\n background: #f4f4f4;\n margin-bottom: 16px;\n }\n & &__itemThumb {\n display: table-cell;\n min-width: 160px;\n width: 20%;\n img {\n width: 100%;\n }\n }\n & &__itemtContent {\n display: table-cell;\n vertical-align: middle;\n padding-left: 16px;\n font-size:16px;\n }\n & &__itemtTitle {\n font-weight: bold;\n margin-bottom: 10px;\n }\n & &__itemtSize {\n margin-bottom: 10px;\n }\n & &__itemtPrice {\n\n }\n & &__itemtNumber {\n\n }\n & &__select {\n margin-bottom: 5px;\n }\n & &__selectAddress {\n display: inline-block;\n label {\n font-size: 16px;\n font-weight: normal;\n }\n select {\n min-width: 100%;\n @include media_desktop {\n min-width: 350px;\n }\n }\n }\n & &__selectNumber {\n display: inline-block;\n margin-left: 30px;\n label {\n font-size: 16px;\n font-weight: normal;\n }\n input {\n display: inline-block;\n margin-left: 10px;\n width: 80px;\n }\n }\n & &__actions {\n .ec-blockBtn--action {\n margin-bottom: 8px;\n }\n }\n & &__new {\n margin-bottom: 20px;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n\n/*\n注文履歴一覧\n\nマイページ 注文履歴部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole\n\nStyleguide 16.1\n*/\n.ec-historyRole{\n & &__contents{\n padding-top: 1em;\n padding-bottom: 16px;\n border-top: 1px solid #ccc;\n display: flex;\n flex-direction: column;\n color: #525263;\n @include media_desktop {\n flex-direction: row;\n }\n }\n & &__header{\n width: 100%;\n @include media_desktop {\n width: 33.3333%;\n }\n }\n & &__detail{\n @include borderTop;\n width: 100%;\n\n .ec-imageGrid:nth-of-type(1) {\n border-top: none;\n }\n\n .ec-historyRole__detailTitle {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold;\n }\n\n .ec-historyRole__detailPrice {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold;\n }\n\n @include media_desktop {\n width: 66.6666%;\n border-top: none;\n }\n }\n}\n\n/*\n注文履歴一覧 規格\n\nマイページ 注文履歴内アイテムの規格を定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole-option\n\nStyleguide 16.1.1\n*/\n\n.ec-historyRole{\n & &__detail {\n .ec-historyRole__detailOption {\n display: inline-block;\n margin-bottom: 8px;\n margin-right: .5rem;\n font-size: 1.6rem;\n }\n .ec-historyRole__detailOption::after {\n display: inline-block;\n padding-left: .5rem;\n content: \"/\";\n font-weight: bold;\n }\n }\n}\n\n/*\n注文履歴一覧ヘッダ\n\n注文履歴一覧で使用するヘッダのコンポーネントを定義します。\n\nex [マイページ 注文履歴一覧ヘッダ](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyHeader\np hofe\n\nStyleguide 16.1.2\n*/\n\n\n.ec-historyListHeader{\n & &__date{\n font-weight: bold;\n font-size: 16px;\n @include media_desktop {\n font-weight: bold;\n font-size: 20px;\n }\n }\n & &__action{\n margin : 16px 0;\n a {\n font-size: 12px;\n font-weight: normal;\n @include media_desktop {\n font-size: 14px;\n }\n }\n }\n}\n","@import \"../mixins/projects\";\n@import \"../mixins/media\";\n\n/*\n注文履歴詳細\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailRole\n\nStyleguide 16.2\n*/\n\n\n/*\n注文履歴詳細 メール履歴\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMail\n\nStyleguide 16.2.5\n*/\n.ec-orderMails{\n & &__item{\n padding-bottom: 10px;\n @include borderBottom();\n }\n & &__time{\n margin: 0;\n }\n & &__body{\n display: none;\n }\n}\n\n\n\n\n/*\n注文履歴詳細 メール履歴個別\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴個別](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMailHistory\n\nStyleguide 16.2.6\n*/\n.ec-orderMail{\n padding-bottom: 10px;\n @include borderBottom();\n margin-bottom: 16px;\n & &__time{\n margin: 0;\n }\n & &__body{\n display: none;\n }\n & &__time {\n margin-bottom: 4px;\n }\n & &__link {\n a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n }\n a:hover {\n color: #33A8D0;\n }\n margin-bottom: 4px;\n }\n & &__close{\n a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n }\n a:hover {\n color: #33A8D0;\n }\n }\n}\n","/*\n住所一覧\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [マイページ内 お届け先編集](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\ninclude /assets/tmpl/elements/17.1.address.pug\n+ec-addressList\n+ec-addressRole\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 17.1\n\n*/\n.ec-addressRole{\n & &__item{\n border-top: 1px dotted #ccc;\n }\n & &__actions{\n margin-top: 32px;\n padding-bottom:20px;\n border-bottom: 1px dotted #ccc;\n }\n}\n.ec-addressList{\n & &__item{\n display: table;\n width: 100%;\n position: relative;\n border-bottom: 1px dotted #ccc;\n }\n & &__remove{\n //display: table-cell;\n vertical-align: middle;\n padding: 16px;\n text-align: center;\n .ec-icon img {\n width: 1em;\n height: 1em;\n }\n }\n & &__address{\n display: table-cell;\n vertical-align: middle;\n padding: 16px;\n margin-right:4em;\n width: 80%;\n }\n & &__action{\n position: relative;\n vertical-align: middle;\n text-align: right;\n top: 27px;\n padding-right: 10px;\n }\n}\n","@import \"../mixins/media\";\n/*\nパスワードリセット\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [パスワードリセット画面](http://demo3.ec-cube.net/forgot)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/18.1.password.pug\n+ec-passwordRole\n\nStyleguide 18.1\n\n*/\n.ec-forgotRole{\n @include container;\n & &__intro {\n font-size: 16px;\n }\n & &__form {\n margin-bottom: 16px;\n }\n\n}\n","@import \"../mixins/media\";\n/*\n会員登録\n\n新規会員登録 に関する Project コンポーネントを定義します。\n\nex [新規会員登録画面 会員登録](http://demo3.ec-cube.net/entry)\n\nMarkup:\ninclude /assets/tmpl/elements/19.1.register.pug\n+ec-registerRole\n\nStyleguide 19.1\n\n*/\n.ec-registerRole{\n @include container;\n & &__actions {\n padding-top:20px;\n text-align: center;\n @include media_desktop {\n text-align: left;\n }\n p {\n margin-bottom: 16px;\n }\n }\n .ec-blockBtn--action {\n margin-bottom: 16px;\n }\n}\n.ec-registerCompleteRole {\n @include container;\n}\n","@import \"../mixins/media\";\n/*\nお問い合わせ\n\nお問い合わせ に関する Project コンポーネントを定義します。\n\nex [お問い合わせ](http://demo3.ec-cube.net/contact)\n\nMarkup:\ninclude /assets/tmpl/elements/19.2.contact.pug\n+ec-contactRole\n\nStyleguide 19.2\n\n*/\n.ec-contactRole{\n @include container;\n & &__actions {\n padding-top:20px;\n }\n p {\n margin:16px 0;\n }\n\n}\n.ec-contactConfirmRole {\n @include container;\n & &__actions {\n padding-top:20px;\n }\n .ec-blockBtn--action {\n margin-bottom: 16px;\n }\n}\n.ec-contactCompleteRole {\n @include container;\n}\n","@import \"../mixins/media\";\n/*\nお客様情報の入力\n\nログインせずゲストとして商品を購入する際の、お客様情報の入力 に関する Project コンポーネントを定義します。\n\nex [カートSTEP2 お客様情報の入力(ゲスト購入)](http://demo3.ec-cube.net/shopping/nonmember)\n\nMarkup:\ninclude /assets/tmpl/elements/19.3.customer.pug\n+ec-customerRole\nhoge\n\nStyleguide 19.3\n\n*/\n.ec-customerRole{\n @include container;\n & &__actions {\n padding-top:20px;\n }\n .ec-blockBtn--action {\n margin-bottom: 10px;\n @include media_desktop {\n margin-bottom: 16px;\n }\n }\n}\n\n.ec-contactConfirmRole {\n @include container;\n & &__actions {\n padding-top:20px;\n }\n .ec-blockBtn--action {\n margin-bottom: 16px;\n }\n}\n.ec-contactCompleteRole {\n @include container;\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/media\";\n@import \"../mixins/animation\";\n/*\n404ページ\n\n404 エラー画面で使用するページコンポーネントです。\n\nex [404エラー画面](http://demo3.ec-cube.net/404)\n\nMarkup:\ninclude /assets/tmpl/elements/20.1.404.pug\n+ec-404Role\n\nStyleguide 20.1\n\n*/\n.ec-404Role{\n @include commonStyle();\n width: 100%;\n height: 100vh;\n background-color: #f2f2f2;\n text-align: center;\n box-sizing: border-box;\n & &__icon{\n img {\n width: 1em;\n height: 1em;\n }\n }\n & &__title{\n font-weight: bold;\n font-size: 25px;\n }\n\n}\n","@import \"../mixins/media\";\n/*\n退会手続き\n\n退会手続きで使用するページコンポーネントです。\n\nex [退会手続き](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawRole\n\nStyleguide 21.1\n\n*/\n.ec-withdrawRole{\n @include container;\n text-align: center;\n padding: 0 16px;\n & &__title{\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px;\n }\n & &__description{\n margin-bottom: 32px;\n font-size: 16px;\n }\n .ec-icon {\n img {\n width: 100px;\n height: 100px;\n }\n }\n}/*\n退会手続き実行確認\n\n退会手続き実行確認で使用するページコンポーネントです。\n\nex [退会手続き 退会手続きへボタン→押下](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawConfirm\n\nStyleguide 21.1.2\n\n*/\n.ec-withdrawConfirmRole {\n & &__cancel {\n margin-bottom: 20px;\n }\n & &__title{\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px;\n }\n & &__description{\n margin-bottom: 32px;\n font-size: 16px;\n }\n .ec-icon {\n img {\n width: 100px;\n height: 100px;\n }\n }\n}\n","@import \"../mixins/media\";\n/*\n会員情報編集完了\n\n会員情報編集完了で使用するページコンポーネントです。\n\nex [会員情報編集完了](http://demo3.ec-cube.net/mypage/change_complete)\n\nMarkup:\ninclude /assets/tmpl/elements/22.1.editComplete.pug\n+ec-userEditCompleteRole\n\nStyleguide 22.1\n\n*/\n.ec-userEditCompleteRole{\n @include container;\n text-align: center;\n padding: 0 16px;\n & &__title{\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px;\n @include media_desktop(){\n font-size: 32px;\n }\n }\n & &__description{\n margin-bottom: 32px;\n font-size: 16px;\n }\n}\n"]} \ No newline at end of file +{"version":3,"sources":["default/assets/scss/style.css","default/assets/scss/style.scss","default/assets/scss/mixins/_media.scss","default/assets/scss/component/_1.1.heading.scss","default/assets/scss/mixins/_variables.scss","default/assets/scss/component/_1.2.typo.scss","default/assets/scss/component/_1.3.list.scss","default/assets/scss/component/_2.1.buttonsize.scss","default/assets/scss/mixins/_btn.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_buttons.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_variables.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_tab-focus.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_vendor-prefixes.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_opacity.scss","default/assets/scss/component/_2.2.closebutton.scss","default/assets/scss/component/_2.3.otherbutton.scss","default/assets/scss/component/_3.1.inputText.scss","default/assets/scss/mixins/_forms.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_forms.scss","default/assets/scss/mixins/_projects.scss","default/assets/scss/component/_3.2.inputMisc.scss","default/assets/scss/component/_3.3.form.scss","default/assets/scss/component/_4.1.icon.scss","default/assets/scss/component/_5.1.grid.scss","default/assets/scss/component/_5.2.layout.scss","default/assets/scss/component/_6.1.login.scss","default/assets/scss/component/_7.1.itembanner.scss","default/assets/scss/component/_7.2.search.scss","default/assets/scss/mixins/_animation.scss","default/assets/scss/component/_7.3.cart.scss","default/assets/scss/mixins/_clearfix.scss","default/assets/scss/component/_8.1.info.scss","default/assets/scss/component/_9.1.mypage.scss","default/assets/scss/project/_11.1.role.scss","default/assets/scss/project/_11.2.header.scss","default/assets/scss/project/_11.3.footer.scss","default/assets/scss/project/_12.1.slider.scss","default/assets/scss/project/_12.2.eyecatch.scss","default/assets/scss/project/_12.3.button.scss","default/assets/scss/project/_12.4.heading.scss","default/assets/scss/project/_12.5.topics.scss","default/assets/scss/project/_12.6.newItem.scss","default/assets/scss/project/_12.7.category.scss","default/assets/scss/project/_12.8.news.scss","default/assets/scss/project/_13.1.searchnav.scss","default/assets/scss/project/_13.2.shelf.scss","default/assets/scss/project/_13.3.pager.scss","default/assets/scss/project/_13.4.cartModal.scss","default/assets/scss/project/_14.1.product.scss","default/assets/scss/project/_15.1.cart.scss","default/assets/scss/project/_15.2.order.scss","default/assets/scss/project/_16.1.history.scss","default/assets/scss/project/_16.2.historyDetail.scss","default/assets/scss/project/_17.1.address.scss","default/assets/scss/project/_18.1.password.scss","default/assets/scss/project/_19.1.register.scss","default/assets/scss/project/_19.2.contact.scss","default/assets/scss/project/_19.3.customer.scss","default/assets/scss/project/_20.1.404.scss","default/assets/scss/project/_21.1.withdraw.scss","default/assets/scss/project/_22.1.editComplete.scss"],"names":[],"mappings":"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rD7B,wBAAwB;ELahB,gBKZgB;ELkIhB,wEKjIsE;EAqC5E,kBAAkB,EAAA;ED7DtB;IEuBI,qBRsJoC;IQrJpC,UAAU;INWJ,kFMduD,EAAA;EN+C/D;IACE,WF2GiC;IE1GjC,UAAU,EAAA;EAEZ;IAA0B,WFwGS,EAAA;EEvGnC;IAAgC,WFuGG,EAAA;EMhLrC;ICkCI,SAAS;IACT,6BAA6B,EAAA;EDnCjC;;;;;;;;IC8CI,yBPjE+C;IOkE/C,UAAU,EAAA;ED/Cd;;;;;;;;ICoDI,mBPiJwC,EAAA;;AMrM5C;ECWE,cAAc;EACd,WAAW;EACX,YPsKyF;EOrKzF,iBP+C8B;EO9C9B,ePE4B;EOD5B,oBPamC;EOZnC,cPtCiD;EOuCjD,sBPwImC;EOvInC,sBAAsB;EACtB,sBP6ImC;EO5InC,kBPsD6B;EOrD7B,wBAAwB;ELahB,gBKZgB;ELkIhB,wEKjIsE;EAyC5E,kBAAkB,EAAA;EDjEtB;IEuBI,qBRsJoC;IQrJpC,UAAU;INWJ,kFMduD,EAAA;EN+C/D;IACE,WF2GiC;IE1GjC,UAAU,EAAA;EAEZ;IAA0B,WFwGS,EAAA;EEvGnC;IAAgC,WFuGG,EAAA;EMhLrC;ICkCI,SAAS;IACT,6BAA6B,EAAA;EDnCjC;;;;;;;;IC8CI,yBPjE+C;IOkE/C,UAAU,EAAA;ED/Cd;;;;;;;;ICoDI,mBPiJwC,EAAA;;AMrM5C;ECWE,cAAc;EACd,WAAW;EACX,YPsKyF;EOrKzF,iBP+C8B;EO9C9B,ePE4B;EOD5B,oBPamC;EOZnC,cPtCiD;EOuCjD,sBPwImC;EOvInC,sBAAsB;EACtB,sBP6ImC;EO5InC,kBPsD6B;EOrD7B,wBAAwB;ELahB,gBKZgB;ELkIhB,wEKjIsE;EA6C5E,kBAAkB,EAAA;EDrEtB;IEuBI,qBRsJoC;IQrJpC,UAAU;INWJ,kFMduD,EAAA;EN+C/D;IACE,WF2GiC;IE1GjC,UAAU,EAAA;EAEZ;IAA0B,WFwGS,EAAA;EEvGnC;IAAgC,WFuGG,EAAA;EMhLrC;ICkCI,SAAS;IACT,6BAA6B,EAAA;EDnCjC;;;;;;;;IC8CI,yBPjE+C;IOkE/C,UAAU,EAAA;ED/Cd;;;;;;;;ICoDI,mBPiJwC,EAAA;;AMrM5C;ECwEI,gBAAgB;EAChB,qBAAqB,EAAA;;ADzEzB;EAII,YAAY;EACZ,mBAAmB,EAAA;;AALvB;EAWI,YAAY;EACZ,iBAAiB,EAAA;;AAZrB;EAeI,gBAAgB,EAAA;;AAfpB;EAkBI,mBAAmB;EACnB,eAAe;EACf,iBAAiB;EACjB,cZ9CY,EAAA;;AYiDhB;EAEI,kBAAkB;EAClB,qBAAqB;EACrB,mBAAmB,EAAA;;AAIvB;EAEI,mBAAmB;EACnB,eAAe;EACf,iBAAiB;EACjB,cZ9DY,EAAA;;AYiEhB;EAEI,qBAAqB;EACrB,mBAAmB,EAAA;;AAIvB;;;;;;;;;;;;;;;;;ChBolDC;AgBlkDD;EAGI,qBAAqB;EACrB,UAAU;EACV,eAAe,EAAA;;AALnB;EAYI,cAAc,EAAA;;AAIlB;;;;;;;;;;;;;;;ChB8kDC;AgB9jDD;EAGI,qBAAqB;EACrB,WAAW;EACX,gBAAgB;EAChB,iBAAiB,EAAA;;AAGrB;;;;;;;;;;;;;;;;;;;;;;;ChBmlDC;AgB3jDD;EAEE,qBAAqB,EAAA;EAFvB;IAII,qBAAqB;IACjB,gBAAgB;IACpB,WAAW;IACP,cAAc;IAClB,eAAe,EAAA;EARnB;IAWI,qBAAqB;IACrB,oBAAoB;IACpB,gBAAe,EAAA;;AAGnB;EACE,qBAAqB;EACrB,iBAAiB;EACjB,mBAAmB;EACnB,wBAAwB;EACxB,cAAc,EAAA;EALhB;IAOI,qBAAqB;IACrB,iBAAiB;IACjB,WAAU;IACV,YAAW;IACX,mBAAmB;IACnB,kBAAkB;IAClB,eAAe;IACf,kBAAkB;IAClB,SAAS,EAAA;IAfb;MAiBM,UAAU;MACV,WAAW;MACX,kBAAkB;MAClB,SAAS;MACT,QAAQ,EAAA;EArBd;IAyBI,gBAAgB;IAChB,qBAAqB;IACrB,cAAc;IACd,mBAAmB,EAAA;;AAGvB;EACE,mBAAmB,EAAA;EADrB;IAGI,mBAAmB,EAAA;;AAGvB;;;;;;;;;;;;;;ChBmkDC;AgBpjDD;EAGI,eAAe;EACf,gBAAgB,EAAA;;AG5OpB;;EnBmyDE;AEhyDF;;;;EFqyDE;AgBryDF;;;;;;;;;;;ChBizDC;AgBlyDD;;;;;;;;;;;;;;;ChBkzDC;AgBlyDD;EJ0CU,sBKpEwB,EAAA;;AD0BlC;;;;;;;;ECpBI,eAAe;EACf,kBAAkB;EAClB,mBAAmB,EAAA;;ADkBvB;ECdI,cAAc,EAAA;;ADclB;ECTI,cAAc;EACd,WAAW,EAAA;;ADQf;;;;;;;;ECFI,YAAY,EAAA;;ADEhB;;;;;;;;;;;;;;;EL5BE,0CAA0C;EAC1C,oBAAoB,EAAA;;AK2BtB;ECWE,cAAc;EACd,WAAW;EACX,YPsKyF;EOrKzF,iBP+C8B;EO9C9B,ePE4B;EOD5B,oBPamC;EOZnC,cPtCiD;EOuCjD,sBPwImC;EOvInC,sBAAsB;EACtB,sBP6ImC;EO5InC,kBPsD6B;EOrD7B,wBAAwB;ELahB,gBKZgB;ELkIhB,wEKjIsE;EAqC5E,kBAAkB,EAAA;ED7DtB;IEuBI,qBRsJoC;IQrJpC,UAAU;INWJ,kFMduD,EAAA;EN+C/D;IACE,WF2GiC;IE1GjC,UAAU,EAAA;EAEZ;IAA0B,WFwGS,EAAA;EEvGnC;IAAgC,WFuGG,EAAA;EMhLrC;ICkCI,SAAS;IACT,6BAA6B,EAAA;EDnCjC;;;;;;;;IC8CI,yBPjE+C;IOkE/C,UAAU,EAAA;ED/Cd;;;;;;;;ICoDI,mBPiJwC,EAAA;;AMrM5C;ECWE,cAAc;EACd,WAAW;EACX,YPsKyF;EOrKzF,iBP+C8B;EO9C9B,ePE4B;EOD5B,oBPamC;EOZnC,cPtCiD;EOuCjD,sBPwImC;EOvInC,sBAAsB;EACtB,sBP6ImC;EO5InC,kBPsD6B;EOrD7B,wBAAwB;ELahB,gBKZgB;ELkIhB,wEKjIsE;EAyC5E,kBAAkB,EAAA;EDjEtB;IEuBI,qBRsJoC;IQrJpC,UAAU;INWJ,kFMduD,EAAA;EN+C/D;IACE,WF2GiC;IE1GjC,UAAU,EAAA;EAEZ;IAA0B,WFwGS,EAAA;EEvGnC;IAAgC,WFuGG,EAAA;EMhLrC;ICkCI,SAAS;IACT,6BAA6B,EAAA;EDnCjC;;;;;;;;IC8CI,yBPjE+C;IOkE/C,UAAU,EAAA;ED/Cd;;;;;;;;ICoDI,mBPiJwC,EAAA;;AMrM5C;ECWE,cAAc;EACd,WAAW;EA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","file":"default/assets/css/style.css","sourcesContent":["@charset \"UTF-8\";\n@import url(/node_modules/normalize.css/normalize.css);\nbody {\n font-family: Roboto, \"游ゴシック\", YuGothic, \"Yu Gothic\", \"ヒラギノ角ゴ ProN W3\", \"Hiragino Kaku Gothic ProN\", Arial, \"メイリオ\", Meiryo, sans-serif;\n color: #525263;\n transition: z-index 0ms 5.28455ms;\n background: #f6f6f6;\n margin: 0; }\n\na {\n text-decoration: none; }\n\npre {\n background-color: transparent;\n border: none;\n padding: 16px 0; }\n\np {\n -webkit-margin-before: 0;\n -webkit-margin-after: 0; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n見出し\n\nページ内で見出しとして機能する要素のスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.1\n*/\n/*\n見出し\n\n商品紹介等で利用される、一般的な見出しのスタイルです。\n\nex [商品詳細ページ 商品見出し部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-headingTitle マトリョーシカ\n\nStyleguide 1.1.1\n*/\n.ec-headingTitle {\n margin: 0 0 8px;\n font-size: 32px;\n font-weight: normal;\n color: #525263; }\n\n/*\nページヘッダ\n\n各種ページで用いられるページヘッダのデザインです。\n\nex [利用規約ページ ページヘッダ部](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-pageHeader\n h1 利用規約\n\nStyleguide 1.1.2\n*/\n.ec-pageHeader h1 {\n margin: 0 0 8px;\n border-bottom: 1px dotted #ccc;\n border-top: 1px solid #ccc;\n padding: 8px 0 12px;\n font-size: 16px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-pageHeader h1 {\n border-top: none;\n border-bottom: 1px solid #ccc;\n margin: 10px 16px 48px;\n padding: 8px;\n font-size: 32px;\n font-weight: bold; } }\n\n/*\nサブ見出し\n\n利用規約など、文字主体のページで用いられるサブ見出しです。\n\nex [利用規約ページ サブ見出し部分](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-heading 第1条 (会員)\n\nStyleguide 1.1.3\n*/\n.ec-heading {\n margin: 24px 0; }\n\n/*\nサブ見出し(太字)\n\n文字主体のページで用いられるサブ見出しの太字のスタイルです。\n\nex [プライバシーポリシー サブ見出し部分](http://demo3.ec-cube.net/help/privacy)\n\nMarkup:\n.ec-heading-bold 個人情報の定義\n\nStyleguide 1.1.4\n*/\n.ec-heading-bold {\n margin: 16px 0;\n font-size: 16px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-heading-bold {\n font-size: 18px; } }\n\n/*\n背景付き見出し\n\nマイページ注文履歴等で用いられる背景付きの見出しです。\n\nex [ご注文履歴詳細 背景付き見出し部分](http://demo3.ec-cube.net/mypage/history/1063)\n\nMarkup:\n.ec-rectHeading\n h2 配送情報\n.ec-rectHeading\n h2 お支払について\n\nStyleguide 1.1.5\n*/\n.ec-rectHeading h1, .ec-rectHeading h2, .ec-rectHeading h3,\n.ec-rectHeading h4, .ec-rectHeading h5, .ec-rectHeading h6 {\n background: #F3F3F3;\n padding: 8px 12px;\n font-size: 20px;\n font-weight: bold; }\n\n/*\nメッセージ見出し\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用される見出しのスタイルです。\n\nex [注文完了 ログイン後、カートに商品を入れ注文完了まで行う](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\n\nStyleguide 1.1.6\n*/\n.ec-reportHeading {\n width: 100%;\n border-top: 1px dotted #ccc;\n margin: 20px 0 30px;\n padding: 0;\n text-align: center;\n font-size: 24px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-reportHeading {\n border-top: 0;\n font-size: 32px; } }\n .ec-reportHeading h1, .ec-reportHeading h2, .ec-reportHeading h3,\n .ec-reportHeading h4, .ec-reportHeading h5, .ec-reportHeading h6, .ec-reportHeading p {\n font-weight: bold;\n font-size: 24px; }\n @media only screen and (min-width: 768px) {\n .ec-reportHeading h1, .ec-reportHeading h2, .ec-reportHeading h3,\n .ec-reportHeading h4, .ec-reportHeading h5, .ec-reportHeading h6, .ec-reportHeading p {\n font-size: 32px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n文字装飾\n\n文字装飾をするためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.2\n*/\n/*\nテキストリンク\n\nテキストリンクのスタイルです。\n\nMarkup:\na(href=\"#\").ec-link さくらのクラウド\n\nStyleguide 1.2.1\n*/\n.ec-link {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n .ec-link:hover {\n color: #33A8D0;\n text-decoration: none; }\n\n/*\nテキスト(太字)\n\nテキストを太くするためのスタイルです。\n\nMarkup:\np.ec-font-bold この季節にぴったりな商品をご用意しました\n\nStyleguide 1.2.2\n*/\n.ec-font-bold {\n font-weight: bold; }\n\n/*\nテキスト(グレー)\n\nテキストをグレーにするためのスタイルです。\n\nMarkup:\np.ec-color-grey 青色が美しい職人が仕上げた吹きガラス\n\nStyleguide 1.2.3\n*/\n.ec-color-grey {\n color: #9a947e; }\n\n/*\nテキスト(赤)\n\nテキストを赤にするためのスタイルです。\n\nMarkup:\np.ec-color-red ¥ 2,728 税込\np.ec-color-accent ¥ 2,728 税込\n\nStyleguide 1.2.4\n*/\n.ec-color-red {\n color: #DE5D50; }\n\n.ec-color-accent {\n color: #DE5D50; }\n\n/*\nフォントサイズ\n\nフォントサイズを指定するためのスタイルです。\n\nMarkup:\n.ec-font-size-1 さわやかな日差しが過ごしやすい季節\n.ec-font-size-2 さわやかな日差しが過ごしやすい季節\n.ec-font-size-3 さわやかな日差しが過ごしやすい季節\n.ec-font-size-4 さわやかな日差しが過ごしやすい季節\n.ec-font-size-5 さわやかな日差しが過ごしやすい季節\n.ec-font-size-6 さわやかな日差しが過ごしやすい季節\n\n\nStyleguide 1.2.5\n*/\n.ec-font-size-1 {\n font-size: 12px; }\n\n.ec-font-size-2 {\n font-size: 14px; }\n\n.ec-font-size-3 {\n font-size: 16px; }\n\n.ec-font-size-4 {\n font-size: 20px; }\n\n.ec-font-size-5 {\n font-size: 32px; }\n\n.ec-font-size-6 {\n font-size: 40px; }\n\n/*\nテキスト水平位置\n\nテキストをセンタリングするためのスタイルです。\n\nMarkup:\np.ec-text-ac さわやかな日差しが過ごしやすい季節\n\nStyleguide 1.2.6\n*/\n.ec-text-ac {\n text-align: center; }\n\n/*\n価格テキスト\n\n価格を表示するテキストです。\n\n価格文字にスペースを取るほか、税込み等の表示を小さくする効果もあります。\n\nspanを用いたインライン要素として利用します。\n\nMarkup:\ndiv(style=\"color:#DE5D50;font-size:28px\")\n span.ec-price\n span.ec-price__unit ¥\n span.ec-price__price 1,280\n span.ec-price__tax 税込\n\nStyleguide 1.2.7\n*/\n.ec-price .ec-price__unit {\n font-size: 18px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-price .ec-price__unit {\n font-size: 1em; } }\n\n.ec-price .ec-price__price {\n display: inline-block;\n padding: 0 .3em;\n font-size: 18px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-price .ec-price__price {\n font-size: 1em; } }\n\n.ec-price .ec-price__tax {\n font-size: 12px; }\n @media only screen and (min-width: 768px) {\n .ec-price .ec-price__tax {\n font-size: 0.57em; } }\n\n/*\nテキストの位置\n\nテキストや、入れ子にしたインライン要素を\n「左揃え」「中央揃え」「右揃え」に設定することができます。\n\nMarkup:\nh3 左揃え\np.text-left\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 中央揃え\np.text-center\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 右揃え\np.text-right\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\n\nStyleguide 1.2.8\n*/\n.text-left {\n text-align: left; }\n\n.text-center {\n text-align: center; }\n\n.text-right {\n text-align: right; }\n\n/*\nメッセージテキスト\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用されるテキストのスタイルです。\n\nex [注文完了 (ログイン後、カートに商品を入れ注文完了まで行う)](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\np.ec-reportDescription\n | ただいま、ご注文の確認メールをお送りさせていただきました。\n br\n | 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n br\n | 今後ともご愛顧賜りますようよろしくお願い申し上げます。\n\n\nStyleguide 1.2.9\n*/\n.ec-reportDescription {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px;\n line-height: 1.4; }\n\n/*\nテキスト下部のスペース\n\nテキストの下に余白を追加することができます。 .ec-para-normalで16pxの余白をつけることができます。\n\nMarkup:\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n\nStyleguide 1.2.10\n*/\n.ec-para-normal {\n margin-bottom: 16px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nリスト\n\nシンプルなリストを構成するためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.3\n*/\n/*\n水平定義リスト\n\nシンプルな定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 水平定義リスト部分](http://demo3.ec-cube.net/help/about)\n\nMarkup:\ndl.ec-definitions\n dt 店名\n dd EC-CUBE3 DEMO SHOP\ndl.ec-definitions\n dt 会社名\n dd EC-CUBE3\ndl.ec-definitions--soft\n dt 所在地\n dd 〒 550-0001\n\nStyleguide 1.3.1\n*/\n.ec-definitions, .ec-definitions--soft {\n margin: 5px 0;\n display: block; }\n .ec-definitions dt, .ec-definitions--soft dt, .ec-definitions dd, .ec-definitions--soft dd {\n display: inline-block;\n margin: 0; }\n .ec-definitions dt, .ec-definitions--soft dt {\n font-weight: bold; }\n\n.ec-definitions--soft dt {\n font-weight: normal; }\n\n/*\n下線つき定義リスト\n\n線が添えられた定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 下線つき定義リスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt 店名\n dd EC-CUBE3 DEMO SHOP\n dl\n dt 会社名\n dd EC-CUBE3\n dl\n dt 所在地\n dd 〒550 - 0001\n\nStyleguide 1.3.2\n*/\n.ec-borderedDefs {\n width: 100%;\n border-top: 1px dotted #ccc;\n margin-bottom: 16px; }\n .ec-borderedDefs dl {\n display: flex;\n border-bottom: 1px dotted #ccc;\n margin: 0;\n padding: 10px 0 0;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-borderedDefs dl {\n flex-wrap: nowrap;\n padding: 15px 0 4px; } }\n .ec-borderedDefs dt, .ec-borderedDefs dd {\n padding: 0; }\n .ec-borderedDefs dt {\n font-weight: normal;\n width: 100%;\n padding-top: 0; }\n @media only screen and (min-width: 768px) {\n .ec-borderedDefs dt {\n padding-top: 14px;\n width: 30%; } }\n .ec-borderedDefs dd {\n padding: 0;\n width: 100%;\n line-height: 2.5; }\n @media only screen and (min-width: 768px) {\n .ec-borderedDefs dd {\n width: 70%;\n line-height: 3; } }\n .ec-borderedDefs p {\n line-height: 1.4; }\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0; }\n .ec-list-chilled dt, .ec-list-chilled dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-list-chilled dt, .ec-list-chilled dd {\n padding: 16px 0; } }\n .ec-list-chilled dt {\n width: 30%; }\n .ec-list-chilled dd {\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-list-chilled dd {\n padding: 16px; } }\n\n/*\nボーダーリスト\n\n線が添えられたリストを表示します。\n\nex [当サイトについて ボーダーリスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\nul.ec-borderedList\n li: p lorem\n li: p lorem\n li: p lorem\n\n\nStyleguide 1.3.3\n*/\n.ec-borderedList {\n width: 100%;\n border-top: 0;\n list-style: none;\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-borderedList {\n border-top: 1px dotted #ccc; } }\n .ec-borderedList li {\n border-bottom: 1px dotted #ccc; }\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0; }\n .ec-list-chilled dt, .ec-list-chilled dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 16px 0; }\n .ec-list-chilled dt {\n width: 30%; }\n .ec-list-chilled dd {\n padding: 16px; }\n\n/*\nボタンサイズ\n\nボタンサイズを変更するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.1\n*/\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nex [トップページ ボタン部分](http://demo3.ec-cube.net/)\n\nMarkup:\n.ec-inlineBtn 住所検索\n.ec-inlineBtn--primary もっと見る\n.ec-inlineBtn--action カートに入れる\n.ec-inlineBtn--cancel キャンセル\n\nStyleguide 2.1.1\n*/\n.ec-inlineBtn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #525263;\n background-color: #F5F7F8;\n border-color: #ccc; }\n .ec-inlineBtn:focus, .ec-inlineBtn.focus, .ec-inlineBtn:active:focus, .ec-inlineBtn:active.focus, .ec-inlineBtn.active:focus, .ec-inlineBtn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn:hover, .ec-inlineBtn:focus, .ec-inlineBtn.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn:active, .ec-inlineBtn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn.disabled, .ec-inlineBtn[disabled],\n fieldset[disabled] .ec-inlineBtn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn:focus, .ec-inlineBtn.focus {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #8c8c8c; }\n .ec-inlineBtn:hover {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-inlineBtn:active, .ec-inlineBtn.active,\n .open > .ec-inlineBtn.dropdown-toggle {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-inlineBtn:active:hover, .ec-inlineBtn:active:focus, .ec-inlineBtn:active.focus, .ec-inlineBtn.active:hover, .ec-inlineBtn.active:focus, .ec-inlineBtn.active.focus,\n .open > .ec-inlineBtn.dropdown-toggle:hover,\n .open > .ec-inlineBtn.dropdown-toggle:focus,\n .open > .ec-inlineBtn.dropdown-toggle.focus {\n color: #525263;\n background-color: #c2ced4;\n border-color: #8c8c8c; }\n .ec-inlineBtn:active, .ec-inlineBtn.active,\n .open > .ec-inlineBtn.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn.disabled:hover, .ec-inlineBtn.disabled:focus, .ec-inlineBtn.disabled.focus, .ec-inlineBtn[disabled]:hover, .ec-inlineBtn[disabled]:focus, .ec-inlineBtn[disabled].focus,\n fieldset[disabled] .ec-inlineBtn:hover,\n fieldset[disabled] .ec-inlineBtn:focus,\n fieldset[disabled] .ec-inlineBtn.focus {\n background-color: #F5F7F8;\n border-color: #ccc; }\n .ec-inlineBtn .badge {\n color: #F5F7F8;\n background-color: #525263; }\n .ec-inlineBtn .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-inlineBtn--primary {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #5CB1B1;\n border-color: #5CB1B1; }\n .ec-inlineBtn--primary:focus, .ec-inlineBtn--primary.focus, .ec-inlineBtn--primary:active:focus, .ec-inlineBtn--primary:active.focus, .ec-inlineBtn--primary.active:focus, .ec-inlineBtn--primary.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--primary:hover, .ec-inlineBtn--primary:focus, .ec-inlineBtn--primary.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--primary:active, .ec-inlineBtn--primary.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--primary.disabled, .ec-inlineBtn--primary[disabled],\n fieldset[disabled] .ec-inlineBtn--primary {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--primary:focus, .ec-inlineBtn--primary.focus {\n color: #fff;\n background-color: #479393;\n border-color: #2e6060; }\n .ec-inlineBtn--primary:hover {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-inlineBtn--primary:active, .ec-inlineBtn--primary.active,\n .open > .ec-inlineBtn--primary.dropdown-toggle {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-inlineBtn--primary:active:hover, .ec-inlineBtn--primary:active:focus, .ec-inlineBtn--primary:active.focus, .ec-inlineBtn--primary.active:hover, .ec-inlineBtn--primary.active:focus, .ec-inlineBtn--primary.active.focus,\n .open > .ec-inlineBtn--primary.dropdown-toggle:hover,\n .open > .ec-inlineBtn--primary.dropdown-toggle:focus,\n .open > .ec-inlineBtn--primary.dropdown-toggle.focus {\n color: #fff;\n background-color: #3b7b7b;\n border-color: #2e6060; }\n .ec-inlineBtn--primary:active, .ec-inlineBtn--primary.active,\n .open > .ec-inlineBtn--primary.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--primary.disabled:hover, .ec-inlineBtn--primary.disabled:focus, .ec-inlineBtn--primary.disabled.focus, .ec-inlineBtn--primary[disabled]:hover, .ec-inlineBtn--primary[disabled]:focus, .ec-inlineBtn--primary[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--primary:hover,\n fieldset[disabled] .ec-inlineBtn--primary:focus,\n fieldset[disabled] .ec-inlineBtn--primary.focus {\n background-color: #5CB1B1;\n border-color: #5CB1B1; }\n .ec-inlineBtn--primary .badge {\n color: #5CB1B1;\n background-color: #fff; }\n .ec-inlineBtn--primary .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-inlineBtn--action {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #DE5D50;\n border-color: #DE5D50; }\n .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus, .ec-inlineBtn--action:active:focus, .ec-inlineBtn--action:active.focus, .ec-inlineBtn--action.active:focus, .ec-inlineBtn--action.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--action:hover, .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--action:active, .ec-inlineBtn--action.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--action.disabled, .ec-inlineBtn--action[disabled],\n fieldset[disabled] .ec-inlineBtn--action {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus {\n color: #fff;\n background-color: #d33828;\n border-color: #93271c; }\n .ec-inlineBtn--action:hover {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-inlineBtn--action:active, .ec-inlineBtn--action.active,\n .open > .ec-inlineBtn--action.dropdown-toggle {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-inlineBtn--action:active:hover, .ec-inlineBtn--action:active:focus, .ec-inlineBtn--action:active.focus, .ec-inlineBtn--action.active:hover, .ec-inlineBtn--action.active:focus, .ec-inlineBtn--action.active.focus,\n .open > .ec-inlineBtn--action.dropdown-toggle:hover,\n .open > .ec-inlineBtn--action.dropdown-toggle:focus,\n .open > .ec-inlineBtn--action.dropdown-toggle.focus {\n color: #fff;\n background-color: #b53022;\n border-color: #93271c; }\n .ec-inlineBtn--action:active, .ec-inlineBtn--action.active,\n .open > .ec-inlineBtn--action.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--action.disabled:hover, .ec-inlineBtn--action.disabled:focus, .ec-inlineBtn--action.disabled.focus, .ec-inlineBtn--action[disabled]:hover, .ec-inlineBtn--action[disabled]:focus, .ec-inlineBtn--action[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--action:hover,\n fieldset[disabled] .ec-inlineBtn--action:focus,\n fieldset[disabled] .ec-inlineBtn--action.focus {\n background-color: #DE5D50;\n border-color: #DE5D50; }\n .ec-inlineBtn--action .badge {\n color: #DE5D50;\n background-color: #fff; }\n .ec-inlineBtn--action .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-inlineBtn--cancel {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #525263;\n border-color: #525263; }\n .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus, .ec-inlineBtn--cancel:active:focus, .ec-inlineBtn--cancel:active.focus, .ec-inlineBtn--cancel.active:focus, .ec-inlineBtn--cancel.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--cancel:hover, .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--cancel.disabled, .ec-inlineBtn--cancel[disabled],\n fieldset[disabled] .ec-inlineBtn--cancel {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus {\n color: #fff;\n background-color: #3b3b47;\n border-color: #18181d; }\n .ec-inlineBtn--cancel:hover {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active,\n .open > .ec-inlineBtn--cancel.dropdown-toggle {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-inlineBtn--cancel:active:hover, .ec-inlineBtn--cancel:active:focus, .ec-inlineBtn--cancel:active.focus, .ec-inlineBtn--cancel.active:hover, .ec-inlineBtn--cancel.active:focus, .ec-inlineBtn--cancel.active.focus,\n .open > .ec-inlineBtn--cancel.dropdown-toggle:hover,\n .open > .ec-inlineBtn--cancel.dropdown-toggle:focus,\n .open > .ec-inlineBtn--cancel.dropdown-toggle.focus {\n color: #fff;\n background-color: #2b2b34;\n border-color: #18181d; }\n .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active,\n .open > .ec-inlineBtn--cancel.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--cancel.disabled:hover, .ec-inlineBtn--cancel.disabled:focus, .ec-inlineBtn--cancel.disabled.focus, .ec-inlineBtn--cancel[disabled]:hover, .ec-inlineBtn--cancel[disabled]:focus, .ec-inlineBtn--cancel[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--cancel:hover,\n fieldset[disabled] .ec-inlineBtn--cancel:focus,\n fieldset[disabled] .ec-inlineBtn--cancel.focus {\n background-color: #525263;\n border-color: #525263; }\n .ec-inlineBtn--cancel .badge {\n color: #525263;\n background-color: #fff; }\n .ec-inlineBtn--cancel .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n/*\nブロックボタン(全幅)\n\nボタンサイズは em で指定するため、テキストサイズの変更でボタンサイズを変更できます。\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\np: .ec-blockBtn 住所検索\np: .ec-blockBtn--primary もっと見る\np: .ec-blockBtn--action カートに入れる\np: .ec-blockBtn--cancel キャンセル\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #525263;\n background-color: #F5F7F8;\n border-color: #ccc;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn:focus, .ec-blockBtn.focus, .ec-blockBtn:active:focus, .ec-blockBtn:active.focus, .ec-blockBtn.active:focus, .ec-blockBtn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn:hover, .ec-blockBtn:focus, .ec-blockBtn.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn:active, .ec-blockBtn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn.disabled, .ec-blockBtn[disabled],\n fieldset[disabled] .ec-blockBtn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn:focus, .ec-blockBtn.focus {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #8c8c8c; }\n .ec-blockBtn:hover {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-blockBtn:active, .ec-blockBtn.active,\n .open > .ec-blockBtn.dropdown-toggle {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-blockBtn:active:hover, .ec-blockBtn:active:focus, .ec-blockBtn:active.focus, .ec-blockBtn.active:hover, .ec-blockBtn.active:focus, .ec-blockBtn.active.focus,\n .open > .ec-blockBtn.dropdown-toggle:hover,\n .open > .ec-blockBtn.dropdown-toggle:focus,\n .open > .ec-blockBtn.dropdown-toggle.focus {\n color: #525263;\n background-color: #c2ced4;\n border-color: #8c8c8c; }\n .ec-blockBtn:active, .ec-blockBtn.active,\n .open > .ec-blockBtn.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn.disabled:hover, .ec-blockBtn.disabled:focus, .ec-blockBtn.disabled.focus, .ec-blockBtn[disabled]:hover, .ec-blockBtn[disabled]:focus, .ec-blockBtn[disabled].focus,\n fieldset[disabled] .ec-blockBtn:hover,\n fieldset[disabled] .ec-blockBtn:focus,\n fieldset[disabled] .ec-blockBtn.focus {\n background-color: #F5F7F8;\n border-color: #ccc; }\n .ec-blockBtn .badge {\n color: #F5F7F8;\n background-color: #525263; }\n .ec-blockBtn .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-blockBtn--primary {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #5CB1B1;\n border-color: #5CB1B1;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--primary:focus, .ec-blockBtn--primary.focus, .ec-blockBtn--primary:active:focus, .ec-blockBtn--primary:active.focus, .ec-blockBtn--primary.active:focus, .ec-blockBtn--primary.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--primary:hover, .ec-blockBtn--primary:focus, .ec-blockBtn--primary.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--primary:active, .ec-blockBtn--primary.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--primary.disabled, .ec-blockBtn--primary[disabled],\n fieldset[disabled] .ec-blockBtn--primary {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--primary:focus, .ec-blockBtn--primary.focus {\n color: #fff;\n background-color: #479393;\n border-color: #2e6060; }\n .ec-blockBtn--primary:hover {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-blockBtn--primary:active, .ec-blockBtn--primary.active,\n .open > .ec-blockBtn--primary.dropdown-toggle {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-blockBtn--primary:active:hover, .ec-blockBtn--primary:active:focus, .ec-blockBtn--primary:active.focus, .ec-blockBtn--primary.active:hover, .ec-blockBtn--primary.active:focus, .ec-blockBtn--primary.active.focus,\n .open > .ec-blockBtn--primary.dropdown-toggle:hover,\n .open > .ec-blockBtn--primary.dropdown-toggle:focus,\n .open > .ec-blockBtn--primary.dropdown-toggle.focus {\n color: #fff;\n background-color: #3b7b7b;\n border-color: #2e6060; }\n .ec-blockBtn--primary:active, .ec-blockBtn--primary.active,\n .open > .ec-blockBtn--primary.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--primary.disabled:hover, .ec-blockBtn--primary.disabled:focus, .ec-blockBtn--primary.disabled.focus, .ec-blockBtn--primary[disabled]:hover, .ec-blockBtn--primary[disabled]:focus, .ec-blockBtn--primary[disabled].focus,\n fieldset[disabled] .ec-blockBtn--primary:hover,\n fieldset[disabled] .ec-blockBtn--primary:focus,\n fieldset[disabled] .ec-blockBtn--primary.focus {\n background-color: #5CB1B1;\n border-color: #5CB1B1; }\n .ec-blockBtn--primary .badge {\n color: #5CB1B1;\n background-color: #fff; }\n .ec-blockBtn--primary .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-blockBtn--action {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #DE5D50;\n border-color: #DE5D50;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--action:focus, .ec-blockBtn--action.focus, .ec-blockBtn--action:active:focus, .ec-blockBtn--action:active.focus, .ec-blockBtn--action.active:focus, .ec-blockBtn--action.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--action:hover, .ec-blockBtn--action:focus, .ec-blockBtn--action.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--action:active, .ec-blockBtn--action.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--action.disabled, .ec-blockBtn--action[disabled],\n fieldset[disabled] .ec-blockBtn--action {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--action:focus, .ec-blockBtn--action.focus {\n color: #fff;\n background-color: #d33828;\n border-color: #93271c; }\n .ec-blockBtn--action:hover {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-blockBtn--action:active, .ec-blockBtn--action.active,\n .open > .ec-blockBtn--action.dropdown-toggle {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-blockBtn--action:active:hover, .ec-blockBtn--action:active:focus, .ec-blockBtn--action:active.focus, .ec-blockBtn--action.active:hover, .ec-blockBtn--action.active:focus, .ec-blockBtn--action.active.focus,\n .open > .ec-blockBtn--action.dropdown-toggle:hover,\n .open > .ec-blockBtn--action.dropdown-toggle:focus,\n .open > .ec-blockBtn--action.dropdown-toggle.focus {\n color: #fff;\n background-color: #b53022;\n border-color: #93271c; }\n .ec-blockBtn--action:active, .ec-blockBtn--action.active,\n .open > .ec-blockBtn--action.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--action.disabled:hover, .ec-blockBtn--action.disabled:focus, .ec-blockBtn--action.disabled.focus, .ec-blockBtn--action[disabled]:hover, .ec-blockBtn--action[disabled]:focus, .ec-blockBtn--action[disabled].focus,\n fieldset[disabled] .ec-blockBtn--action:hover,\n fieldset[disabled] .ec-blockBtn--action:focus,\n fieldset[disabled] .ec-blockBtn--action.focus {\n background-color: #DE5D50;\n border-color: #DE5D50; }\n .ec-blockBtn--action .badge {\n color: #DE5D50;\n background-color: #fff; }\n .ec-blockBtn--action .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-blockBtn--cancel {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #525263;\n border-color: #525263;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--cancel:focus, .ec-blockBtn--cancel.focus, .ec-blockBtn--cancel:active:focus, .ec-blockBtn--cancel:active.focus, .ec-blockBtn--cancel.active:focus, .ec-blockBtn--cancel.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--cancel:hover, .ec-blockBtn--cancel:focus, .ec-blockBtn--cancel.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--cancel:active, .ec-blockBtn--cancel.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--cancel.disabled, .ec-blockBtn--cancel[disabled],\n fieldset[disabled] .ec-blockBtn--cancel {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--cancel:focus, .ec-blockBtn--cancel.focus {\n color: #fff;\n background-color: #3b3b47;\n border-color: #18181d; }\n .ec-blockBtn--cancel:hover {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-blockBtn--cancel:active, .ec-blockBtn--cancel.active,\n .open > .ec-blockBtn--cancel.dropdown-toggle {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-blockBtn--cancel:active:hover, .ec-blockBtn--cancel:active:focus, .ec-blockBtn--cancel:active.focus, .ec-blockBtn--cancel.active:hover, .ec-blockBtn--cancel.active:focus, .ec-blockBtn--cancel.active.focus,\n .open > .ec-blockBtn--cancel.dropdown-toggle:hover,\n .open > .ec-blockBtn--cancel.dropdown-toggle:focus,\n .open > .ec-blockBtn--cancel.dropdown-toggle.focus {\n color: #fff;\n background-color: #2b2b34;\n border-color: #18181d; }\n .ec-blockBtn--cancel:active, .ec-blockBtn--cancel.active,\n .open > .ec-blockBtn--cancel.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--cancel.disabled:hover, .ec-blockBtn--cancel.disabled:focus, .ec-blockBtn--cancel.disabled.focus, .ec-blockBtn--cancel[disabled]:hover, .ec-blockBtn--cancel[disabled]:focus, .ec-blockBtn--cancel[disabled].focus,\n fieldset[disabled] .ec-blockBtn--cancel:hover,\n fieldset[disabled] .ec-blockBtn--cancel:focus,\n fieldset[disabled] .ec-blockBtn--cancel.focus {\n background-color: #525263;\n border-color: #525263; }\n .ec-blockBtn--cancel .badge {\n color: #525263;\n background-color: #fff; }\n .ec-blockBtn--cancel .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n/*\nアイコンボタン\n\nSVGアイコンを用いたアイコンボタンです。\n\nsg-wrapper:\n
\n \n\nStyleguide 2.2\n*/\n/*\nアイコンボタン\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\na.ec-closeBtn\n .ec-icon\n img(src='/moc/icon/cross.svg', alt='close')\n\nStyleguide 2.2.1\n*/\n.ec-closeBtn {\n cursor: pointer; }\n .ec-closeBtn .ec-icon img {\n display: inline-block;\n margin-right: 5px;\n width: 1em;\n height: 1em;\n position: relative;\n top: -1px;\n vertical-align: middle; }\n\n/*\nアイコンボタン(○)\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\n\n\nex [お届け先編集画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\na.ec-closeBtn--circle\n .ec-icon\n img(src='/moc/icon/cross-white.svg', alt='close')\n\nStyleguide 2.2.2\n*/\n.ec-closeBtn--circle {\n display: block;\n border: 0 none;\n padding: 0;\n margin: 0;\n text-shadow: none;\n box-shadow: none;\n border-radius: 50%;\n background: #B8BEC4;\n cursor: pointer;\n width: 40px;\n min-width: 40px;\n max-width: 40px;\n height: 40px;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center; }\n .ec-closeBtn--circle .ec-icon img {\n display: block;\n margin-top: -.5em;\n margin-left: -.5em;\n width: 1em;\n height: 1em;\n position: absolute;\n top: 50%;\n left: 50%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nその他のボタン\n\n通常のボタンや、アイコンボタン以外のボタンを定義します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.3\n*/\n/*\nページトップボタン\n\nページトップボタンを表示します\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\n.ec-blockTopBtn\n\nStyleguide 2.3.1\n*/\n.ec-blockTopBtn {\n display: none;\n position: fixed;\n width: 120px;\n height: 40px;\n right: 0;\n bottom: 10px;\n cursor: pointer;\n color: #FFFFFF;\n text-align: center;\n line-height: 40px;\n opacity: 0.8;\n background-color: #9da3a9; }\n @media only screen and (min-width: 768px) {\n .ec-blockTopBtn {\n right: 30px;\n bottom: 30px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nフォーム部品(テキスト)\n\nテキストや数値の入力項目に関する要素を定義します。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 3.1\n*/\n/*\nフォーム\n\n`.ec-input` 要素は全ての入力項目に関する標準的なコンポーネントクラスです。\n\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-input\n input(type=\"number\")\np.ec-input\n textarea(rows=\"6\")\n\nStyleguide 3.1.1\n*/\n.ec-input input[type=\"search\"], .ec-halfInput input[type=\"search\"], .ec-numberInput input[type=\"search\"], .ec-zipInput input[type=\"search\"], .ec-telInput input[type=\"search\"], .ec-select input[type=\"search\"], .ec-birth input[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n\n.ec-input input[type=\"radio\"], .ec-halfInput input[type=\"radio\"], .ec-numberInput input[type=\"radio\"], .ec-zipInput input[type=\"radio\"], .ec-telInput input[type=\"radio\"], .ec-select input[type=\"radio\"], .ec-birth input[type=\"radio\"],\n.ec-input input[type=\"checkbox\"],\n.ec-halfInput input[type=\"checkbox\"],\n.ec-numberInput input[type=\"checkbox\"],\n.ec-zipInput input[type=\"checkbox\"],\n.ec-telInput input[type=\"checkbox\"],\n.ec-select input[type=\"checkbox\"],\n.ec-birth input[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal; }\n\n.ec-input input[type=\"file\"], .ec-halfInput input[type=\"file\"], .ec-numberInput input[type=\"file\"], .ec-zipInput input[type=\"file\"], .ec-telInput input[type=\"file\"], .ec-select input[type=\"file\"], .ec-birth input[type=\"file\"] {\n display: block; }\n\n.ec-input input[type=\"range\"], .ec-halfInput input[type=\"range\"], .ec-numberInput input[type=\"range\"], .ec-zipInput input[type=\"range\"], .ec-telInput input[type=\"range\"], .ec-select input[type=\"range\"], .ec-birth input[type=\"range\"] {\n display: block;\n width: 100%; }\n\n.ec-input select[multiple], .ec-halfInput select[multiple], .ec-numberInput select[multiple], .ec-zipInput select[multiple], .ec-telInput select[multiple], .ec-select select[multiple], .ec-birth select[multiple],\n.ec-input select[size],\n.ec-halfInput select[size],\n.ec-numberInput select[size],\n.ec-zipInput select[size],\n.ec-telInput select[size],\n.ec-select select[size],\n.ec-birth select[size] {\n height: auto; }\n\n.ec-input input[type=\"file\"]:focus, .ec-halfInput input[type=\"file\"]:focus, .ec-numberInput input[type=\"file\"]:focus, .ec-zipInput input[type=\"file\"]:focus, .ec-telInput input[type=\"file\"]:focus, .ec-select input[type=\"file\"]:focus, .ec-birth input[type=\"file\"]:focus,\n.ec-input input[type=\"radio\"]:focus,\n.ec-halfInput input[type=\"radio\"]:focus,\n.ec-numberInput input[type=\"radio\"]:focus,\n.ec-zipInput input[type=\"radio\"]:focus,\n.ec-telInput input[type=\"radio\"]:focus,\n.ec-select input[type=\"radio\"]:focus,\n.ec-birth input[type=\"radio\"]:focus,\n.ec-input input[type=\"checkbox\"]:focus,\n.ec-halfInput input[type=\"checkbox\"]:focus,\n.ec-numberInput input[type=\"checkbox\"]:focus,\n.ec-zipInput input[type=\"checkbox\"]:focus,\n.ec-telInput input[type=\"checkbox\"]:focus,\n.ec-select input[type=\"checkbox\"]:focus,\n.ec-birth input[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input input::-moz-placeholder, .ec-halfInput input::-moz-placeholder, .ec-numberInput input::-moz-placeholder, .ec-zipInput input::-moz-placeholder, .ec-telInput input::-moz-placeholder, .ec-select input::-moz-placeholder, .ec-birth input::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input input:-ms-input-placeholder, .ec-halfInput input:-ms-input-placeholder, .ec-numberInput input:-ms-input-placeholder, .ec-zipInput input:-ms-input-placeholder, .ec-telInput input:-ms-input-placeholder, .ec-select input:-ms-input-placeholder, .ec-birth input:-ms-input-placeholder {\n color: #999; }\n .ec-input input::-webkit-input-placeholder, .ec-halfInput input::-webkit-input-placeholder, .ec-numberInput input::-webkit-input-placeholder, .ec-zipInput input::-webkit-input-placeholder, .ec-telInput input::-webkit-input-placeholder, .ec-select input::-webkit-input-placeholder, .ec-birth input::-webkit-input-placeholder {\n color: #999; }\n .ec-input input::-ms-expand, .ec-halfInput input::-ms-expand, .ec-numberInput input::-ms-expand, .ec-zipInput input::-ms-expand, .ec-telInput input::-ms-expand, .ec-select input::-ms-expand, .ec-birth input::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled], .ec-input input[readonly], .ec-halfInput input[readonly], .ec-numberInput input[readonly], .ec-zipInput input[readonly], .ec-telInput input[readonly], .ec-select input[readonly], .ec-birth input[readonly],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n cursor: not-allowed; }\n\n.ec-input select, .ec-halfInput select, .ec-numberInput select, .ec-zipInput select, .ec-telInput select, .ec-select select, .ec-birth select {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input select:focus, .ec-halfInput select:focus, .ec-numberInput select:focus, .ec-zipInput select:focus, .ec-telInput select:focus, .ec-select select:focus, .ec-birth select:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input select::-moz-placeholder, .ec-halfInput select::-moz-placeholder, .ec-numberInput select::-moz-placeholder, .ec-zipInput select::-moz-placeholder, .ec-telInput select::-moz-placeholder, .ec-select select::-moz-placeholder, .ec-birth select::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input select:-ms-input-placeholder, .ec-halfInput select:-ms-input-placeholder, .ec-numberInput select:-ms-input-placeholder, .ec-zipInput select:-ms-input-placeholder, .ec-telInput select:-ms-input-placeholder, .ec-select select:-ms-input-placeholder, .ec-birth select:-ms-input-placeholder {\n color: #999; }\n .ec-input select::-webkit-input-placeholder, .ec-halfInput select::-webkit-input-placeholder, .ec-numberInput select::-webkit-input-placeholder, .ec-zipInput select::-webkit-input-placeholder, .ec-telInput select::-webkit-input-placeholder, .ec-select select::-webkit-input-placeholder, .ec-birth select::-webkit-input-placeholder {\n color: #999; }\n .ec-input select::-ms-expand, .ec-halfInput select::-ms-expand, .ec-numberInput select::-ms-expand, .ec-zipInput select::-ms-expand, .ec-telInput select::-ms-expand, .ec-select select::-ms-expand, .ec-birth select::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled], .ec-input select[readonly], .ec-halfInput select[readonly], .ec-numberInput select[readonly], .ec-zipInput select[readonly], .ec-telInput select[readonly], .ec-select select[readonly], .ec-birth select[readonly],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n cursor: not-allowed; }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input textarea::-moz-placeholder, .ec-halfInput textarea::-moz-placeholder, .ec-numberInput textarea::-moz-placeholder, .ec-zipInput textarea::-moz-placeholder, .ec-telInput textarea::-moz-placeholder, .ec-select textarea::-moz-placeholder, .ec-birth textarea::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input textarea:-ms-input-placeholder, .ec-halfInput textarea:-ms-input-placeholder, .ec-numberInput textarea:-ms-input-placeholder, .ec-zipInput textarea:-ms-input-placeholder, .ec-telInput textarea:-ms-input-placeholder, .ec-select textarea:-ms-input-placeholder, .ec-birth textarea:-ms-input-placeholder {\n color: #999; }\n .ec-input textarea::-webkit-input-placeholder, .ec-halfInput textarea::-webkit-input-placeholder, .ec-numberInput textarea::-webkit-input-placeholder, .ec-zipInput textarea::-webkit-input-placeholder, .ec-telInput textarea::-webkit-input-placeholder, .ec-select textarea::-webkit-input-placeholder, .ec-birth textarea::-webkit-input-placeholder {\n color: #999; }\n .ec-input textarea::-ms-expand, .ec-halfInput textarea::-ms-expand, .ec-numberInput textarea::-ms-expand, .ec-zipInput textarea::-ms-expand, .ec-telInput textarea::-ms-expand, .ec-select textarea::-ms-expand, .ec-birth textarea::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled], .ec-input textarea[readonly], .ec-halfInput textarea[readonly], .ec-numberInput textarea[readonly], .ec-zipInput textarea[readonly], .ec-telInput textarea[readonly], .ec-select textarea[readonly], .ec-birth textarea[readonly],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n cursor: not-allowed; }\n\n.ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus, .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n box-shadow: none;\n border-color: #3c8dbc; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n height: 40px;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n margin-bottom: 16px; } }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n height: auto;\n min-height: 100px; }\n\n.ec-input p, .ec-halfInput p, .ec-numberInput p, .ec-zipInput p, .ec-telInput p, .ec-select p, .ec-birth p {\n line-height: 1.4; }\n\n.ec-input .ec-errorMessage, .ec-halfInput .ec-errorMessage, .ec-numberInput .ec-errorMessage, .ec-zipInput .ec-errorMessage, .ec-telInput .ec-errorMessage, .ec-select .ec-errorMessage, .ec-birth .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-input input, .error.ec-halfInput input, .error.ec-numberInput input, .error.ec-zipInput input, .error.ec-telInput input, .error.ec-select input, .error.ec-birth input, .error.ec-input select, .error.ec-halfInput select, .error.ec-numberInput select, .error.ec-zipInput select, .error.ec-telInput select, .error.ec-select select, .error.ec-birth select {\n margin-bottom: 5px;\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n.ec-checkbox .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-checkbox input, .error.ec-checkbox label {\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n/*\nフォーム(text2つ)\n\n姓名など2つ入力させたい入力項目で使用します。\n\n入力フォームを半分で用意したいときにも利用可能です。\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-halfInput\n input(type=\"text\")\n input(type=\"text\")\np.ec-halfInput\n input(type=\"text\")\n\nStyleguide 3.1.2\n*/\n.ec-halfInput input[type='text'] {\n display: inline-block;\n width: 47%;\n margin-left: 2%; }\n @media only screen and (min-width: 768px) {\n .ec-halfInput input[type='text'] {\n margin-left: 15px;\n width: 45%; } }\n\n.ec-halfInput input[type='text']:first-child {\n margin-left: 0; }\n\n/*\n数量ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [商品詳細画面 数量ボタン部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-numberInput\n span 数量\n input(type=\"number\",value=\"0\")\n\nStyleguide 3.1.3\n*/\n.ec-numberInput input[type='number'] {\n display: inline-block;\n width: auto;\n max-width: 100px;\n text-align: right; }\n\n/*\n郵便番号フォーム\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 郵便番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-zipInput\n span 〒\n input(type=\"text\")\n.ec-zipInputHelp\n a(href=\"http://www.post.japanpost.jp/zipcode/\" target=\"_blank\")\n .ec-zipInputHelp__icon\n .ec-icon\n img(src='/moc/icon/question-white.svg', alt='')\n span 郵便番号検索\n.ec-zipAuto\n a.ec-inlineBtn 郵便番号から自動入力\n\nStyleguide 3.1.4\n*/\n.ec-zipInput {\n display: inline-block; }\n .ec-zipInput input {\n display: inline-block;\n text-align: left;\n width: auto;\n max-width: 8em;\n font-size: 16px; }\n .ec-zipInput span {\n display: inline-block;\n padding: 0 5px 0 3px;\n margin-left: 5px; }\n\n.ec-zipInputHelp {\n display: inline-block;\n margin-left: 10px;\n margin-bottom: 16px;\n vertical-align: baseline;\n line-height: 0; }\n .ec-zipInputHelp .ec-zipInputHelp__icon {\n display: inline-block;\n margin-top: -10px;\n width: 20px;\n height: 20px;\n background: #525263;\n border-radius: 50%;\n font-size: 13px;\n position: relative;\n top: -6px; }\n .ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img {\n width: 1em;\n height: 1em;\n position: relative;\n left: 3px;\n top: 3px; }\n .ec-zipInputHelp span {\n margin-left: 8px;\n display: inline-block;\n color: #0092C4;\n vertical-align: 3px; }\n\n.ec-zipAuto {\n margin-bottom: 16px; }\n .ec-zipAuto .ec-inlineBtn {\n font-weight: normal; }\n\n/*\n電話番号ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 電話番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-telInput\n input(type=\"text\")\n\nStyleguide 3.1.5\n*/\n.ec-telInput input {\n max-width: 10em;\n text-align: left; }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nフォーム部品(テキスト)\n\nテキストや数値の入力項目に関する要素を定義します。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 3.1\n*/\n/*\nフォーム\n\n`.ec-input` 要素は全ての入力項目に関する標準的なコンポーネントクラスです。\n\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-input\n input(type=\"number\")\np.ec-input\n textarea(rows=\"6\")\n\nStyleguide 3.1.1\n*/\n.ec-input input[type=\"search\"], .ec-halfInput input[type=\"search\"], .ec-numberInput input[type=\"search\"], .ec-zipInput input[type=\"search\"], .ec-telInput input[type=\"search\"], .ec-select input[type=\"search\"], .ec-birth input[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n\n.ec-input input[type=\"radio\"], .ec-halfInput input[type=\"radio\"], .ec-numberInput input[type=\"radio\"], .ec-zipInput input[type=\"radio\"], .ec-telInput input[type=\"radio\"], .ec-select input[type=\"radio\"], .ec-birth input[type=\"radio\"],\n.ec-input input[type=\"checkbox\"],\n.ec-halfInput input[type=\"checkbox\"],\n.ec-numberInput input[type=\"checkbox\"],\n.ec-zipInput input[type=\"checkbox\"],\n.ec-telInput input[type=\"checkbox\"],\n.ec-select input[type=\"checkbox\"],\n.ec-birth input[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal; }\n\n.ec-input input[type=\"file\"], .ec-halfInput input[type=\"file\"], .ec-numberInput input[type=\"file\"], .ec-zipInput input[type=\"file\"], .ec-telInput input[type=\"file\"], .ec-select input[type=\"file\"], .ec-birth input[type=\"file\"] {\n display: block; }\n\n.ec-input input[type=\"range\"], .ec-halfInput input[type=\"range\"], .ec-numberInput input[type=\"range\"], .ec-zipInput input[type=\"range\"], .ec-telInput input[type=\"range\"], .ec-select input[type=\"range\"], .ec-birth input[type=\"range\"] {\n display: block;\n width: 100%; }\n\n.ec-input select[multiple], .ec-halfInput select[multiple], .ec-numberInput select[multiple], .ec-zipInput select[multiple], .ec-telInput select[multiple], .ec-select select[multiple], .ec-birth select[multiple],\n.ec-input select[size],\n.ec-halfInput select[size],\n.ec-numberInput select[size],\n.ec-zipInput select[size],\n.ec-telInput select[size],\n.ec-select select[size],\n.ec-birth select[size] {\n height: auto; }\n\n.ec-input input[type=\"file\"]:focus, .ec-halfInput input[type=\"file\"]:focus, .ec-numberInput input[type=\"file\"]:focus, .ec-zipInput input[type=\"file\"]:focus, .ec-telInput input[type=\"file\"]:focus, .ec-select input[type=\"file\"]:focus, .ec-birth input[type=\"file\"]:focus,\n.ec-input input[type=\"radio\"]:focus,\n.ec-halfInput input[type=\"radio\"]:focus,\n.ec-numberInput input[type=\"radio\"]:focus,\n.ec-zipInput input[type=\"radio\"]:focus,\n.ec-telInput input[type=\"radio\"]:focus,\n.ec-select input[type=\"radio\"]:focus,\n.ec-birth input[type=\"radio\"]:focus,\n.ec-input input[type=\"checkbox\"]:focus,\n.ec-halfInput input[type=\"checkbox\"]:focus,\n.ec-numberInput input[type=\"checkbox\"]:focus,\n.ec-zipInput input[type=\"checkbox\"]:focus,\n.ec-telInput input[type=\"checkbox\"]:focus,\n.ec-select input[type=\"checkbox\"]:focus,\n.ec-birth input[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input input::-moz-placeholder, .ec-halfInput input::-moz-placeholder, .ec-numberInput input::-moz-placeholder, .ec-zipInput input::-moz-placeholder, .ec-telInput input::-moz-placeholder, .ec-select input::-moz-placeholder, .ec-birth input::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input input:-ms-input-placeholder, .ec-halfInput input:-ms-input-placeholder, .ec-numberInput input:-ms-input-placeholder, .ec-zipInput input:-ms-input-placeholder, .ec-telInput input:-ms-input-placeholder, .ec-select input:-ms-input-placeholder, .ec-birth input:-ms-input-placeholder {\n color: #999; }\n .ec-input input::-webkit-input-placeholder, .ec-halfInput input::-webkit-input-placeholder, .ec-numberInput input::-webkit-input-placeholder, .ec-zipInput input::-webkit-input-placeholder, .ec-telInput input::-webkit-input-placeholder, .ec-select input::-webkit-input-placeholder, .ec-birth input::-webkit-input-placeholder {\n color: #999; }\n .ec-input input::-ms-expand, .ec-halfInput input::-ms-expand, .ec-numberInput input::-ms-expand, .ec-zipInput input::-ms-expand, .ec-telInput input::-ms-expand, .ec-select input::-ms-expand, .ec-birth input::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled], .ec-input input[readonly], .ec-halfInput input[readonly], .ec-numberInput input[readonly], .ec-zipInput input[readonly], .ec-telInput input[readonly], .ec-select input[readonly], .ec-birth input[readonly],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n cursor: not-allowed; }\n\n.ec-input select, .ec-halfInput select, .ec-numberInput select, .ec-zipInput select, .ec-telInput select, .ec-select select, .ec-birth select {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input select:focus, .ec-halfInput select:focus, .ec-numberInput select:focus, .ec-zipInput select:focus, .ec-telInput select:focus, .ec-select select:focus, .ec-birth select:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input select::-moz-placeholder, .ec-halfInput select::-moz-placeholder, .ec-numberInput select::-moz-placeholder, .ec-zipInput select::-moz-placeholder, .ec-telInput select::-moz-placeholder, .ec-select select::-moz-placeholder, .ec-birth select::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input select:-ms-input-placeholder, .ec-halfInput select:-ms-input-placeholder, .ec-numberInput select:-ms-input-placeholder, .ec-zipInput select:-ms-input-placeholder, .ec-telInput select:-ms-input-placeholder, .ec-select select:-ms-input-placeholder, .ec-birth select:-ms-input-placeholder {\n color: #999; }\n .ec-input select::-webkit-input-placeholder, .ec-halfInput select::-webkit-input-placeholder, .ec-numberInput select::-webkit-input-placeholder, .ec-zipInput select::-webkit-input-placeholder, .ec-telInput select::-webkit-input-placeholder, .ec-select select::-webkit-input-placeholder, .ec-birth select::-webkit-input-placeholder {\n color: #999; }\n .ec-input select::-ms-expand, .ec-halfInput select::-ms-expand, .ec-numberInput select::-ms-expand, .ec-zipInput select::-ms-expand, .ec-telInput select::-ms-expand, .ec-select select::-ms-expand, .ec-birth select::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled], .ec-input select[readonly], .ec-halfInput select[readonly], .ec-numberInput select[readonly], .ec-zipInput select[readonly], .ec-telInput select[readonly], .ec-select select[readonly], .ec-birth select[readonly],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n cursor: not-allowed; }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input textarea::-moz-placeholder, .ec-halfInput textarea::-moz-placeholder, .ec-numberInput textarea::-moz-placeholder, .ec-zipInput textarea::-moz-placeholder, .ec-telInput textarea::-moz-placeholder, .ec-select textarea::-moz-placeholder, .ec-birth textarea::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input textarea:-ms-input-placeholder, .ec-halfInput textarea:-ms-input-placeholder, .ec-numberInput textarea:-ms-input-placeholder, .ec-zipInput textarea:-ms-input-placeholder, .ec-telInput textarea:-ms-input-placeholder, .ec-select textarea:-ms-input-placeholder, .ec-birth textarea:-ms-input-placeholder {\n color: #999; }\n .ec-input textarea::-webkit-input-placeholder, .ec-halfInput textarea::-webkit-input-placeholder, .ec-numberInput textarea::-webkit-input-placeholder, .ec-zipInput textarea::-webkit-input-placeholder, .ec-telInput textarea::-webkit-input-placeholder, .ec-select textarea::-webkit-input-placeholder, .ec-birth textarea::-webkit-input-placeholder {\n color: #999; }\n .ec-input textarea::-ms-expand, .ec-halfInput textarea::-ms-expand, .ec-numberInput textarea::-ms-expand, .ec-zipInput textarea::-ms-expand, .ec-telInput textarea::-ms-expand, .ec-select textarea::-ms-expand, .ec-birth textarea::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled], .ec-input textarea[readonly], .ec-halfInput textarea[readonly], .ec-numberInput textarea[readonly], .ec-zipInput textarea[readonly], .ec-telInput textarea[readonly], .ec-select textarea[readonly], .ec-birth textarea[readonly],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n cursor: not-allowed; }\n\n.ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus, .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n box-shadow: none;\n border-color: #3c8dbc; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n height: 40px;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n margin-bottom: 16px; } }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n height: auto;\n min-height: 100px; }\n\n.ec-input p, .ec-halfInput p, .ec-numberInput p, .ec-zipInput p, .ec-telInput p, .ec-select p, .ec-birth p {\n line-height: 1.4; }\n\n.ec-input .ec-errorMessage, .ec-halfInput .ec-errorMessage, .ec-numberInput .ec-errorMessage, .ec-zipInput .ec-errorMessage, .ec-telInput .ec-errorMessage, .ec-select .ec-errorMessage, .ec-birth .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-input input, .error.ec-halfInput input, .error.ec-numberInput input, .error.ec-zipInput input, .error.ec-telInput input, .error.ec-select input, .error.ec-birth input, .error.ec-input select, .error.ec-halfInput select, .error.ec-numberInput select, .error.ec-zipInput select, .error.ec-telInput select, .error.ec-select select, .error.ec-birth select {\n margin-bottom: 5px;\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n.ec-checkbox .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-checkbox input, .error.ec-checkbox label {\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n/*\nフォーム(text2つ)\n\n姓名など2つ入力させたい入力項目で使用します。\n\n入力フォームを半分で用意したいときにも利用可能です。\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-halfInput\n input(type=\"text\")\n input(type=\"text\")\np.ec-halfInput\n input(type=\"text\")\n\nStyleguide 3.1.2\n*/\n.ec-halfInput input[type='text'] {\n display: inline-block;\n width: 47%;\n margin-left: 2%; }\n @media only screen and (min-width: 768px) {\n .ec-halfInput input[type='text'] {\n margin-left: 15px;\n width: 45%; } }\n\n.ec-halfInput input[type='text']:first-child {\n margin-left: 0; }\n\n/*\n数量ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [商品詳細画面 数量ボタン部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-numberInput\n span 数量\n input(type=\"number\",value=\"0\")\n\nStyleguide 3.1.3\n*/\n.ec-numberInput input[type='number'] {\n display: inline-block;\n width: auto;\n max-width: 100px;\n text-align: right; }\n\n/*\n郵便番号フォーム\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 郵便番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-zipInput\n span 〒\n input(type=\"text\")\n.ec-zipInputHelp\n a(href=\"http://www.post.japanpost.jp/zipcode/\" target=\"_blank\")\n .ec-zipInputHelp__icon\n .ec-icon\n img(src='/moc/icon/question-white.svg', alt='')\n span 郵便番号検索\n.ec-zipAuto\n a.ec-inlineBtn 郵便番号から自動入力\n\nStyleguide 3.1.4\n*/\n.ec-zipInput {\n display: inline-block; }\n .ec-zipInput input {\n display: inline-block;\n text-align: left;\n width: auto;\n max-width: 8em;\n font-size: 16px; }\n .ec-zipInput span {\n display: inline-block;\n padding: 0 5px 0 3px;\n margin-left: 5px; }\n\n.ec-zipInputHelp {\n display: inline-block;\n margin-left: 10px;\n margin-bottom: 16px;\n vertical-align: baseline;\n line-height: 0; }\n .ec-zipInputHelp .ec-zipInputHelp__icon {\n display: inline-block;\n margin-top: -10px;\n width: 20px;\n height: 20px;\n background: #525263;\n border-radius: 50%;\n font-size: 13px;\n position: relative;\n top: -6px; }\n .ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img {\n width: 1em;\n height: 1em;\n position: relative;\n left: 3px;\n top: 3px; }\n .ec-zipInputHelp span {\n margin-left: 8px;\n display: inline-block;\n color: #0092C4;\n vertical-align: 3px; }\n\n.ec-zipAuto {\n margin-bottom: 16px; }\n .ec-zipAuto .ec-inlineBtn {\n font-weight: normal; }\n\n/*\n電話番号ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 電話番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-telInput\n input(type=\"text\")\n\nStyleguide 3.1.5\n*/\n.ec-telInput input {\n max-width: 10em;\n text-align: left; }\n\n/*\nフォーム部品(その他)\n\nフォーム部品でテキストの入力以外の動作要素を定義します。\n\nsg-wrapper:\n
\n \n\nStyleguide 3.2\n*/\n/*\nラジオ(水平)\n\n水平に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 性別選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-radio\n label\n input(type=\"radio\")\n span 男性\n label\n input(type=\"radio\")\n span 女性\n\nStyleguide 3.2.2\n*/\n.ec-radio label {\n margin-right: 20px; }\n\n.ec-radio input {\n margin-right: 10px;\n margin-bottom: 10px; }\n\n.ec-radio span {\n font-weight: normal; }\n\n/*\nラジオ(垂直)\n\n垂直に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [購入画面 お支払方法](http://demo3.ec-cube.net/shopping)\n\nMarkup:\n.ec-blockRadio\n label\n input(type=\"radio\")\n span 郵便振替\n label\n input(type=\"radio\")\n span 現金書留\n label\n input(type=\"radio\")\n span 銀行振込\n label\n input(type=\"radio\")\n span 代金引換\n\nStyleguide 3.2.3\n*/\n.ec-blockRadio label {\n display: block; }\n\n.ec-blockRadio span {\n padding-left: 10px;\n font-weight: normal; }\n\n/*\nセレクトボックス\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 都道府県選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-select\n select\n option 都道府県を選択\n option 北海道\n option 青森県\n option 岩手県\n option ...\n.ec-select\n select\n option 選択して下さい\n option 公務員\n option コンサルタント\n option コンピュータ関連技術職\n option コンピュータ関連以外の技術職\n option ...\n\nStyleguide 3.2.4\n*/\n.ec-selects {\n margin-bottom: 20px;\n border-bottom: 1px dotted #ccc; }\n\n.ec-select {\n margin-bottom: 16px; }\n .ec-select select {\n display: inline-block;\n width: auto;\n background-color: #f8f8f8;\n -webkit-appearance: menulist;\n -moz-appearance: menulist; }\n .ec-select select:focus {\n box-shadow: none; }\n .ec-select label {\n margin-right: 10px;\n font-weight: bold; }\n .ec-select label:nth-child(3) {\n margin-left: 10px;\n font-weight: bold; }\n\n.ec-select__delivery {\n display: block;\n margin-right: 16px; }\n @media only screen and (min-width: 768px) {\n .ec-select__delivery {\n display: inline-block; } }\n\n.ec-select__time {\n display: block; }\n @media only screen and (min-width: 768px) {\n .ec-select__time {\n display: inline-block; } }\n\n/*\n生年月日選択\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 生年月日選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-birth\n select\n option ----\n option 1960\n option 1961\n option 1962\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n\nStyleguide 3.2.5\n*/\n.ec-birth select {\n display: inline-block;\n width: auto;\n margin: 0 0 10px;\n background-color: #f8f8f8;\n -webkit-appearance: menulist;\n -moz-appearance: menulist; }\n .ec-birth select:focus {\n box-shadow: none; }\n @media only screen and (min-width: 768px) {\n .ec-birth select {\n margin: 0 8px 10px; } }\n\n.ec-birth span {\n margin-left: 5px; }\n\n/*\nチェックボックス (水平)\n\n水平に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 利用規約](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-checkbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.6\n*/\n.ec-checkbox label {\n display: inline-block; }\n\n.ec-checkbox input {\n margin-bottom: 10px; }\n\n.ec-checkbox span {\n font-weight: normal; }\n\n/*\nチェックボックス (垂直)\n\n垂直に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nMarkup:\n.ec-blockCheckbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.7\n*/\n.ec-blockCheckbox label {\n display: block; }\n\n.ec-blockCheckbox span {\n font-weight: normal; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nフォームラベル\n\nフォームのラベルに関する要素を定義します。\n\nsg-wrapper:\n
\n
\n
\n
\n \n
\n
\n
\n
\n\nStyleguide 3.3\n*/\n/*\nラベル\n\nフォーム要素で利用するラベル要素です。\n\nex [お問い合わせページ ラベル部分](http://demo3.ec-cube.net/contact)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.1\n*/\n.ec-label {\n display: inline-block;\n font-weight: bold;\n margin-bottom: 5px; }\n\n/*\n必須ラベル\n\n必須文字を表示するラベル要素です。\n\nex [お問い合わせページ 必須ラベル部分](http://demo3.ec-cube.net/contact)\n\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n span.ec-required 必須\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.2\n*/\n.ec-required {\n display: inline-block;\n margin-left: .8em;\n vertical-align: 2px;\n color: #DE5D50;\n font-size: 12px;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-required {\n margin-left: 1em; } }\n\n/*\nアイコン\n\nデフォルトテンプレートのアイコンは`.ec-icon`>`img`タグで使用することができます\n\nsg-wrapper:\n
\n \n\nMarkup:\ninclude /assets/tmpl/elements/4.1.icon.pug\ndiv(style=\"background-color: rgba(130,130,130,.15); padding: 20px;\")\n +icon-all\n\nStyleguide 4.1\n*/\n.ec-icon img {\n max-width: 80px;\n max-height: 80px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nグリッド\n\n画面を12分割し、グリッドレイアウトに対応するためのスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.1\n*/\n/*\n2分割グリッド\n\n画面 2分割の グリッドです。\nBootstrap の col-sm-6 相当のグリッドを提供します。\n\nMarkup:\n.ec-grid2\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 5.1.1\n*/\n.ec-grid2 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid2 {\n display: flex; } }\n .ec-grid2 .ec-grid2__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid2 .ec-grid2__cell {\n width: 50%; } }\n .ec-grid2 .ec-grid2__cell2 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid2 .ec-grid2__cell2 {\n width: 100%; } }\n\n/*\n3分割グリッド\n\n画面 3分割の グリッドです。\n\n\nMarkup:\n.ec-grid3\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n\nStyleguide 5.1.2\n*/\n.ec-grid3 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid3 {\n display: flex; } }\n .ec-grid3 .ec-grid3__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid3 .ec-grid3__cell {\n width: 33.33333%; } }\n .ec-grid3 .ec-grid3__cell2 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid3 .ec-grid3__cell2 {\n width: 66.66667%; } }\n .ec-grid3 .ec-grid3__cell3 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid3 .ec-grid3__cell3 {\n width: 100%; } }\n\n/*\n4分割グリッド\n\n画面 4分割の グリッドです。\n\n\nMarkup:\n.ec-grid4\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n\nStyleguide 5.1.3\n*/\n.ec-grid4 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid4 {\n display: flex; } }\n .ec-grid4 .ec-grid4__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid4 .ec-grid4__cell {\n width: 25%; } }\n\n/*\n6分割グリッド\n\n2つにまとめた cell2 や 3つをまとめた cell3 タグも使用可能です。\n\n\nMarkup:\n.ec-grid6\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n.ec-grid6\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n.ec-grid6\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n\nStyleguide 5.1.4\n*/\n.ec-grid6 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid6 {\n display: flex; } }\n .ec-grid6 .ec-grid6__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid6 .ec-grid6__cell {\n width: 16.66667%; } }\n .ec-grid6 .ec-grid6__cell2 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid6 .ec-grid6__cell2 {\n width: 33.33333%; } }\n .ec-grid6 .ec-grid6__cell3 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid6 .ec-grid6__cell3 {\n width: 50%; } }\n\n/*\n中央寄せグリッド 10/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の10グリッドです\n\nex [ご利用規約ページ 本文](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-off1Grid\n .ec-off1Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.5\n*/\n.ec-off1Grid {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off1Grid {\n display: block;\n margin: 0; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off1Grid {\n display: flex; } }\n .ec-off1Grid .ec-off1Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off1Grid .ec-off1Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 8.33333%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off1Grid .ec-off1Grid__cell {\n width: 83.33333%; } }\n\n/*\n中央寄せグリッド 8/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の8グリッドです\n\n\nMarkup:\n.ec-off2Grid\n .ec-off2Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.6\n*/\n.ec-off2Grid {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off2Grid {\n display: flex; } }\n .ec-off2Grid .ec-off2Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off2Grid .ec-off2Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 16.66667%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off2Grid .ec-off2Grid__cell {\n width: 66.66667%; } }\n\n/*\n中央寄せグリッド 6/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の6グリッドです\n\n\nMarkup:\n.ec-off3Grid\n .ec-off3Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.7\n*/\n.ec-off3Grid {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off3Grid {\n display: flex; } }\n .ec-off3Grid .ec-off3Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off3Grid .ec-off3Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 25%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off3Grid .ec-off3Grid__cell {\n width: 50%; } }\n\n/*\n中央寄せグリッド 4/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の4グリッドです\n\n\nMarkup:\n.ec-off4Grid\n .ec-off4Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\n\nStyleguide 5.1.8\n*/\n.ec-off4Grid {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off4Grid {\n display: flex; } }\n .ec-off4Grid .ec-off4Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off4Grid .ec-off4Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 33.33333%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off4Grid .ec-off4Grid__cell {\n width: 33.33333%; } }\n\n/*\nグリッドオプション\n\nグリッドのセルに対して「左寄せ」「中央寄せ」「右寄せ」のオプションを付与することができます。\n\nsg-wrapper:\n
\n \n\nStyleguide 5.1.9\n*/\n/*\nグリッドセルの左寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--left\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.10\n*/\n.ec-grid--left {\n justify-content: flex-start; }\n\n/*\nグリッドセルの右寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--right\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.11\n*/\n.ec-grid--right {\n justify-content: flex-end; }\n\n/*\nグリッドセルの中央寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--center\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.12\n*/\n.ec-grid--center {\n justify-content: center; }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nレイアウト\n\n様々なレイアウトを変更する為のスタイル群です。\n\nStyleguide 5.2\n*/\n/*\n画像レイアウト\n\n画像とテキストを水平に並べるレイアウトです。\n\n画像は20%で表示されます。\n\nex [注文履歴 ログイン後→注文履歴ボタンを押下](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-imageGrid\n .ec-imageGrid__img: img(src=\"http://demo3.ec-cube.net/upload/save_image/0701113537_559351f959620.jpeg\")\n .ec-imageGrid__content\n p.ec-font-bold ホーローマグ\n p ¥ 1,728 x 1\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.2.1\n*/\n.ec-imageGrid {\n display: table;\n border-top: 1px dotted #ccc;\n width: 100%; }\n .ec-imageGrid .ec-imageGrid__img {\n display: table-cell;\n padding: 10px;\n width: 100px; }\n @media only screen and (min-width: 768px) {\n .ec-imageGrid .ec-imageGrid__img {\n padding: 10px;\n width: 130px; } }\n .ec-imageGrid .ec-imageGrid__img img {\n width: 100%; }\n .ec-imageGrid .ec-imageGrid__content {\n vertical-align: middle;\n display: table-cell; }\n .ec-imageGrid .ec-imageGrid__content span {\n margin-left: 10px; }\n .ec-imageGrid .ec-imageGrid__content p {\n margin-bottom: 0; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nログイン\n\n主にログインフォームのスタイルを表示します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 6.1\n*/\n/*\nログインフォーム\n\nログインフォームを表示します。\n\nex [ログイン画面](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-login\n\n\nStyleguide 6.1.1\n*/\n.ec-login {\n margin: 0 0 20px;\n padding: 30px 13% 20px;\n height: auto;\n background: #F3F4F4;\n box-sizing: border-box; }\n @media only screen and (min-width: 768px) {\n .ec-login {\n margin: 0 16px;\n padding: 30px 13% 60px; } }\n .ec-login .ec-login__icon {\n text-align: center; }\n .ec-login .ec-icon {\n margin-bottom: 10px; }\n .ec-login .ec-icon img {\n width: 90px;\n height: 90px;\n display: inline-block; }\n .ec-login .ec-login__input {\n margin-bottom: 40px; }\n .ec-login .ec-login__input .ec-checkbox span {\n margin-left: 5px;\n font-weight: normal; }\n .ec-login .ec-login__actions {\n color: #fff; }\n .ec-login .ec-login__actions a {\n color: inherit;\n text-decoration: none; }\n .ec-login .ec-login__actions a:hover {\n text-decoration: none; }\n .ec-login .ec-login__link {\n margin-top: 5px;\n margin-left: 0; }\n @media only screen and (min-width: 768px) {\n .ec-login .ec-login__link {\n margin-left: 20px; } }\n .ec-login .ec-errorMessage {\n color: #DE5D50;\n margin-bottom: 20px; }\n\n/*\nゲスト購入\n\nゲスト購入ボタンとそのフォームを表示します。\n\nex [ゲスト購入画面](http://demo3.ec-cube.net/shopping/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-guest\nhoge\n\nStyleguide 6.1.2\n*/\n.ec-guest {\n display: table;\n margin: 0;\n padding: 13%;\n height: auto;\n box-sizing: border-box;\n background: #F3F4F4; }\n @media only screen and (min-width: 768px) {\n .ec-guest {\n height: 100%;\n margin: 0 16px; } }\n .ec-guest .ec-guest__inner {\n display: table-cell;\n vertical-align: middle;\n text-align: center; }\n .ec-guest .ec-guest__inner p {\n margin-bottom: 16px; }\n .ec-guest .ec-guest__actions {\n display: block;\n vertical-align: middle;\n text-align: center;\n color: #fff; }\n .ec-guest .ec-guest__actions a {\n color: inherit;\n text-decoration: none; }\n .ec-guest .ec-guest__actions a:hover {\n text-decoration: none; }\n .ec-guest .ec-guest__icon {\n font-size: 70px;\n text-align: center; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n商品掲載\n\nトップページに商品掲載するスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.1\n*/\n/*\n商品アイテム(商品紹介B)\n\n3項目横並びの商品アイテムを表示します。\n必要に応じて商品詳細や、キャッチコピーなどを添えることが出来ます。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayB\n\nStyleguide 7.1.1\n*/\n.ec-displayB {\n margin-bottom: 24px;\n display: flex;\n justify-content: space-between;\n flex-direction: column; }\n @media only screen and (min-width: 768px) {\n .ec-displayB {\n flex-direction: row; } }\n .ec-displayB .ec-displayB__cell {\n width: 100%;\n margin-bottom: 16px; }\n .ec-displayB .ec-displayB__cell a {\n color: inherit;\n text-decoration: none; }\n .ec-displayB .ec-displayB__cell a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-displayB .ec-displayB__cell {\n width: 31.4466%;\n margin-bottom: 0; } }\n .ec-displayB .ec-displayB__cell:hover {\n text-decoration: none; }\n .ec-displayB .ec-displayB__cell:hover img {\n opacity: .8; }\n .ec-displayB .ec-displayB__cell:hover a {\n text-decoration: none; }\n .ec-displayB .ec-displayB__img {\n margin-bottom: 15px; }\n .ec-displayB .ec-displayB__catch {\n margin-bottom: 15px;\n text-decoration: none;\n font-weight: bold;\n color: #9a947e; }\n .ec-displayB .ec-displayB__comment {\n margin-bottom: 14px;\n text-decoration: none;\n color: #525263;\n font-size: 14px; }\n .ec-displayB .ec-displayB__link {\n text-decoration: none;\n font-weight: bold;\n color: #9a947e; }\n\n/*\n商品アイテム(商品紹介C)\n\n4項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayC\np hoge\n\nStyleguide 7.1.2\n*/\n.ec-displayC {\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n margin-bottom: 24px; }\n .ec-displayC .ec-displayC__cell {\n width: 47%; }\n .ec-displayC .ec-displayC__cell a {\n color: inherit;\n text-decoration: none; }\n .ec-displayC .ec-displayC__cell a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-displayC .ec-displayC__cell {\n width: 22.8775%; } }\n .ec-displayC .ec-displayC__cell:hover a {\n text-decoration: none; }\n .ec-displayC .ec-displayC__cell:hover img {\n opacity: .8; }\n .ec-displayC .ec-displayC__img {\n display: block;\n width: 100%;\n margin-bottom: 15px; }\n .ec-displayC .ec-displayC__catch {\n display: block;\n width: 100%;\n font-weight: bold;\n color: #9a947e; }\n .ec-displayC .ec-displayC__title {\n display: block;\n width: 100%;\n color: #525263; }\n .ec-displayC .ec-displayC__price {\n display: block;\n width: 100%;\n font-weight: bold;\n color: #525263; }\n .ec-displayC .ec-displayC__price--sp {\n display: block;\n width: 100%;\n font-weight: bold;\n color: #DE5D50; }\n\n/*\n商品アイテム(商品紹介D)\n\n6項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayD\n\nStyleguide 7.1.3\n*/\n.ec-displayD {\n display: flex;\n justify-content: space-between;\n flex-wrap: wrap-reverse; }\n @media only screen and (min-width: 768px) {\n .ec-displayD {\n box-sizing: border-box;\n flex-wrap: nowrap; } }\n .ec-displayD .ec-displayD__cell {\n width: 30%;\n margin-bottom: 8px; }\n .ec-displayD .ec-displayD__cell a {\n color: inherit;\n text-decoration: none; }\n .ec-displayD .ec-displayD__cell a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-displayD .ec-displayD__cell {\n width: 14.3083%;\n margin-bottom: 16px; } }\n .ec-displayD .ec-displayD__cell:hover {\n text-decoration: none; }\n .ec-displayD .ec-displayD__cell:hover img {\n opacity: .8; }\n .ec-displayD .ec-displayD__img {\n display: block;\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n検索・一覧表示\n\n検索欄や、一覧表示に使用するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.2\n*/\n/*\nトピックパス\n\n検索結果で表示されるトピックパスのスタイルです。\n\nex [商品一覧ページ 横並びリスト部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-topicpath\n\nStyleguide 7.2.1\n*/\n.ec-topicpath {\n letter-spacing: -.4em;\n -webkit-margin-before: 0;\n -webkit-margin-after: 0;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n -webkit-padding-start: 0;\n border-top: 1px solid #ccc;\n border-bottom: 1px dotted #ccc;\n padding: 10px;\n list-style: none;\n overflow: hidden;\n font-size: 12px;\n color: #0092C4; }\n @media only screen and (min-width: 768px) {\n .ec-topicpath {\n padding: 30px 0 10px;\n border: 0;\n font-size: 16px; } }\n .ec-topicpath .ec-topicpath__item a {\n color: inherit;\n text-decoration: none; }\n .ec-topicpath .ec-topicpath__item a:hover {\n text-decoration: none; }\n .ec-topicpath .ec-topicpath__divider {\n color: #000; }\n .ec-topicpath .ec-topicpath__item,\n .ec-topicpath .ec-topicpath__divider,\n .ec-topicpath .ec-topicpath__item--active {\n display: inline-block;\n min-width: 16px;\n text-align: center;\n position: relative;\n letter-spacing: normal; }\n .ec-topicpath .ec-topicpath__item--active {\n font-weight: bold; }\n .ec-topicpath .ec-topicpath__item--active a {\n color: inherit;\n text-decoration: none; }\n .ec-topicpath .ec-topicpath__item--active a:hover {\n text-decoration: none; }\n\n/*\nページャ\n\n検索結果で表示される商品一覧のスタイルです。\n\nex [商品一覧ページ ページャ部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-pager\n\nStyleguide 7.2.2\n*/\n.ec-pager {\n list-style: none;\n list-style-type: none;\n margin: 0 auto;\n padding: 1em 0;\n text-align: center; }\n .ec-pager .ec-pager__item,\n .ec-pager .ec-pager__item--active {\n display: inline-block;\n min-width: 29px;\n padding: 0 3px 0 2px;\n text-align: center;\n position: relative; }\n .ec-pager .ec-pager__item a,\n .ec-pager .ec-pager__item--active a {\n color: inherit;\n text-decoration: none; }\n .ec-pager .ec-pager__item a:hover,\n .ec-pager .ec-pager__item--active a:hover {\n text-decoration: none; }\n .ec-pager .ec-pager__item a,\n .ec-pager .ec-pager__item--active a {\n color: inherit;\n display: block;\n line-height: 1.8;\n padding: 5px 1em;\n text-decoration: none; }\n .ec-pager .ec-pager__item a:hover,\n .ec-pager .ec-pager__item--active a:hover {\n color: inherit; }\n .ec-pager .ec-pager__item--active {\n background: #F3F3F3; }\n .ec-pager .ec-pager__item:hover {\n background: #F3F3F3; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n visibility: hidden; }\n 100% {\n opacity: 1;\n visibility: visible; } }\n\n@keyframes fadeOut {\n 0% {\n opacity: 1;\n visibility: visible; }\n 100% {\n opacity: 0;\n visibility: hidden; } }\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1; }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nカート\n\nショッピングカートに関するスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.3\n*/\n/*\nカートヘッダ\n\n購入完了までの手順や、現在の状態を表示します。\n\nul 要素を用いたリスト要素としてマークアップします。\n\nex [カートページ ヘッダ部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-progress\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.3.1\n*/\n.ec-progress {\n margin: 0 auto;\n padding: 8px 0 16px;\n display: table;\n table-layout: fixed;\n width: 100%;\n max-width: 600px;\n list-style: none; }\n @media only screen and (min-width: 768px) {\n .ec-progress {\n margin-bottom: 30px;\n padding: 0; } }\n .ec-progress .ec-progress__item {\n display: table-cell;\n position: relative;\n font-size: 14px;\n text-align: center;\n font-weight: bold;\n z-index: 10; }\n .ec-progress .ec-progress__item:after {\n content: '';\n position: absolute;\n display: block;\n background: #525263;\n width: 100%;\n height: 0.25em;\n top: 1.25em;\n left: 50%;\n margin-left: 1.5em\\9;\n z-index: -1; }\n .ec-progress .ec-progress__item:last-child:after {\n display: none; }\n .ec-progress .ec-progress__number {\n line-height: 30px;\n width: 30px;\n height: 30px;\n margin-bottom: 5px;\n font-size: 12px;\n background: #525263;\n color: #fff;\n top: 0;\n left: 18px;\n display: inline-block;\n text-align: center;\n vertical-align: middle;\n border-radius: 50%; }\n @media only screen and (min-width: 768px) {\n .ec-progress .ec-progress__number {\n line-height: 42px;\n width: 42px;\n height: 42px;\n font-size: 20px; } }\n .ec-progress .ec-progress__label {\n font-size: 12px; }\n .ec-progress .is-complete .ec-progress__number {\n background: #5CB1B1; }\n .ec-progress .is-complete .ec-progress__label {\n color: #5CB1B1; }\n\n/*\nカートナビゲーション\n\nカートナビゲーションを表示します。 カートに追加された商品の個数も表示します。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerCart\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.5\n*/\n@media only screen and (min-width: 768px) {\n .ec-cartNaviWrap {\n position: relative; } }\n\n.ec-cartNavi {\n display: inline-block;\n padding: 10px 0 0 20px;\n width: auto;\n color: black;\n background: transparent; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi {\n display: flex;\n justify-content: space-between;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 12px 17px 10px;\n width: auto;\n min-width: 140px;\n height: 44px;\n white-space: nowrap;\n cursor: pointer;\n background: #F8F8F8; } }\n .ec-cartNavi .ec-cartNavi__icon {\n display: inline-block;\n font-size: 20px;\n display: inline-block;\n opacity: 1;\n visibility: visible;\n animation: fadeIn 200ms linear 0s;\n position: relative; }\n .ec-cartNavi .ec-cartNavi__badge {\n display: inline-block;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 5px;\n height: 17px;\n font-size: 10px;\n line-height: 0.7;\n vertical-align: top;\n color: #fff;\n text-align: left;\n white-space: nowrap;\n background-color: #DE5D50;\n position: absolute;\n left: 60%;\n top: -10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi .ec-cartNavi__badge {\n display: inline-block;\n min-width: 17px;\n position: relative;\n left: 0;\n top: 0; } }\n .ec-cartNavi .ec-cartNavi__price {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi .ec-cartNavi__price {\n display: inline-block;\n font-size: 14px;\n font-weight: normal;\n vertical-align: middle; } }\n\n.ec-cartNavi.is-active .ec-cartNavi__icon:before {\n content: \"\\f00d\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900; }\n\n.ec-cartNavi.is-active .ec-cartNavi__badge {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi.is-active .ec-cartNavi__badge {\n display: none; } }\n\n/*\nカートナビゲーションのポップアップ(商品詳細)\n\nカートナビゲーションのポップアップを表示します。カートに追加された商品の詳細が表示されます。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:350px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='close')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n +b.ec-cartNaviIsset\n +e.cart\n +e.cartImage\n img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n +e.cartContent\n +e.cartContentTitle ミニテーブル\n +e.cartContentPrice ¥ 12,960\n +e.cartContentTax 税込\n +e.cartContentNumber 数量:1\n +e.action\n a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n a.ec-blockBtn.ec-cartNavi--cancel キャンセル\n\nStyleguide 7.3.6\n*/\n.ec-cartNaviIsset {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 20;\n position: absolute;\n right: 0; }\n @media only screen and (min-width: 768px) {\n .ec-cartNaviIsset {\n margin-top: 10px;\n min-width: 256px;\n max-width: 256px; }\n .ec-cartNaviIsset::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px; } }\n .ec-cartNaviIsset .ec-cartNaviIsset__cart {\n border-bottom: 1px solid #E8E8E8;\n margin-bottom: 16px;\n padding-bottom: 32px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cart:after {\n content: \" \";\n display: table; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cart:after {\n clear: both; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartImage {\n float: left;\n width: 45%; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartImage img {\n width: 100%; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContent {\n float: right;\n width: 55%;\n padding-left: 16px;\n text-align: left;\n box-sizing: border-box; }\n .ec-cartNaviIsset .ec-cartNaviIsset__action .ec-blockBtn--action {\n color: #fff;\n margin-bottom: 8px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentTitle {\n margin-bottom: 8px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentPrice {\n font-weight: bold; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentTax {\n display: inline-block;\n font-size: 12px;\n font-weight: normal;\n margin-left: 2px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentNumber {\n font-size: 14px; }\n\n.ec-cartNaviIsset.is-active {\n display: block; }\n\n/*\nカートナビゲーションのポップアップ(商品なし)\n\nカートナビゲーションのポップアップを表示します。商品が登録されていない場合の表示です。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:170px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='cart')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n .ec-cartNaviNull\n .ec-cartNaviNull__message\n p 現在カート内に\n br\n | 商品がございません。\n //+b.ec-cartNaviIsset\n // +e.cart\n // +e.cartImage\n // img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n // +e.cartContent\n // +e.cartContentTitle ミニテーブル\n // +e.cartContentPrice ¥ 12,960\n // +e.cartContentTax 税込\n // +e.cartContentNumber 数量:1\n // +e.action\n // a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n // a.ec-blockBtn キャンセル\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.7\n*/\n.ec-cartNaviNull {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 3;\n position: absolute;\n right: 0; }\n @media only screen and (min-width: 768px) {\n .ec-cartNaviNull {\n margin-top: 10px;\n min-width: 256px;\n max-width: 256px; }\n .ec-cartNaviNull::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px; } }\n .ec-cartNaviNull .ec-cartNaviNull__message {\n border: 1px solid #D9D9D9;\n padding: 16px 0;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n background-color: #F99; }\n .ec-cartNaviNull .ec-cartNaviNull__message p {\n margin: 0; }\n\n.ec-cartNaviNull.is-active {\n display: block; }\n\n/*\n総計\n\n会計時の合計金額、総計を表示します。\n\nex [カートページ 統計部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-totalBox\n\nStyleguide 7.3.8\n*/\n.ec-totalBox {\n background: #F3F3F3;\n padding: 16px;\n margin-bottom: 16px; }\n .ec-totalBox .ec-totalBox__spec {\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: space-between;\n justify-content: space-between;\n -ms-flex-pack: space-between;\n margin-bottom: 8px; }\n .ec-totalBox .ec-totalBox__spec dt {\n font-weight: normal;\n text-align: left; }\n .ec-totalBox .ec-totalBox__spec dd {\n text-align: right; }\n .ec-totalBox .ec-totalBox__spec .ec-totalBox .ec-totalBox__spec__specTotal {\n color: #DE5D50; }\n .ec-totalBox .ec-totalBox__total {\n border-top: 1px dotted #ccc;\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight: bold; }\n .ec-totalBox .ec-totalBox__paymentTotal {\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight: bold; }\n .ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__price,\n .ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__taxLabel {\n color: #DE5D50; }\n .ec-totalBox .ec-totalBox__price {\n margin-left: 16px;\n font-size: 16px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-totalBox .ec-totalBox__price {\n font-size: 24px; } }\n .ec-totalBox .ec-totalBox__taxLabel {\n margin-left: 8px;\n font-size: 12px; }\n @media only screen and (min-width: 768px) {\n .ec-totalBox .ec-totalBox__taxLabel {\n font-size: 14px; } }\n .ec-totalBox .ec-totalBox__taxRate {\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: flex-end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n margin-bottom: 8px;\n font-size: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-totalBox .ec-totalBox__taxRate {\n font-size: 12px; } }\n .ec-totalBox .ec-totalBox__taxRate dt {\n font-weight: normal;\n text-align: left;\n margin-right: 8px; }\n .ec-totalBox .ec-totalBox__taxRate dt::before {\n content: \"[ \"; }\n .ec-totalBox .ec-totalBox__taxRate dd {\n text-align: right; }\n .ec-totalBox .ec-totalBox__taxRate dd::after {\n content: \" ]\"; }\n .ec-totalBox .ec-totalBox__pointBlock {\n padding: 18px 20px 10px;\n margin-bottom: 10px;\n background: #fff; }\n .ec-totalBox .ec-totalBox__btn {\n color: #fff; }\n .ec-totalBox .ec-totalBox__btn a {\n color: inherit;\n text-decoration: none; }\n .ec-totalBox .ec-totalBox__btn a:hover {\n text-decoration: none; }\n .ec-totalBox .ec-totalBox__btn .ec-blockBtn--action {\n font-size: 16px;\n font-weight: bold; }\n .ec-totalBox .ec-totalBox__btn .ec-blockBtn--cancel {\n margin-top: 8px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nお知らせ\n\n新着情報やバナーなどの掲載項目を紹介していきます。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 8.1\n*/\n/*\n新着情報\n\n新着情報の掲載をします。\n\nex [トップページ 新着情報部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+ec-news\n\nStyleguide 8.1.1\n*/\n.ec-news {\n margin-bottom: 16px;\n background: #F8F8F8; }\n @media only screen and (min-width: 768px) {\n .ec-news {\n margin-right: 3%; } }\n @media only screen and (min-width: 768px) {\n .ec-news {\n margin-bottom: 32px; } }\n .ec-news .ec-news__title {\n font-weight: bold;\n padding: 8px;\n font-size: 16px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-news .ec-news__title {\n padding: 16px;\n text-align: left;\n font-size: 24px; } }\n .ec-news .ec-news__items {\n padding: 0;\n list-style: none;\n border-top: 1px dotted #ccc; }\n\n/*\n折りたたみ項目\n\n折りたたみ項目を掲載します。\n\nex [トップページ 折りたたみ項目部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+b.ec-news\n +e.title 新着情報\n +e.UL.items\n +e.LI.item\n +b.ec-newsline.is_active\n +e.info\n +e.date 2016/09/29\n +e.comment サイトオープンしました\n +e.close\n a.ec-closeBtn--circle\n span.ec-closeBtn--circle__icon\n .ec-icon\n img(src='/moc/icon/angle-down-white.svg', alt='')\n +e.description 一人暮らしからオフィスなどさまざまなシーンで あなたの生活をサポートするグッズをご家庭へお届けします!\n\nStyleguide 8.1.2\n*/\n.ec-newsline {\n display: flex;\n flex-wrap: wrap;\n overflow: hidden;\n padding: 0 16px; }\n .ec-newsline .ec-newsline__info {\n width: 100%;\n padding: 16px 0; }\n .ec-newsline .ec-newsline__info:after {\n content: \" \";\n display: table; }\n .ec-newsline .ec-newsline__info:after {\n clear: both; }\n .ec-newsline .ec-newsline__date {\n display: inline-block;\n margin-right: 10px;\n float: left; }\n .ec-newsline .ec-newsline__comment {\n display: inline-block;\n float: left; }\n .ec-newsline .ec-newsline__close {\n float: right;\n display: inline-block;\n text-align: right; }\n .ec-newsline .ec-newsline__close .ec-closeBtn--circle {\n display: inline-block;\n width: 25px;\n height: 25px;\n min-width: 25px;\n min-height: 25px; }\n .ec-newsline .ec-newsline__description {\n width: 100%;\n height: 0;\n transition: all .2s ease-out; }\n .ec-newsline.is_active .ec-newsline__description {\n height: auto;\n transition: all .2s ease-out;\n padding-bottom: 16px; }\n .ec-newsline.is_active .ec-icon img {\n transform: rotateX(180deg); }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nマイページ\n\nマイページで利用するためのスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 9.1\n*/\n/*\nマイページ\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist\n\nStyleguide 9.1.1\n*/\n.ec-navlistRole .ec-navlistRole__navlist {\n display: flex;\n flex-wrap: wrap;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 1px 0 0 1px;\n margin-bottom: 32px;\n padding: 0;\n list-style: none; }\n .ec-navlistRole .ec-navlistRole__navlist a {\n color: inherit;\n text-decoration: none; }\n .ec-navlistRole .ec-navlistRole__navlist a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-navlistRole .ec-navlistRole__navlist {\n flex-wrap: nowrap; } }\n\n.ec-navlistRole .ec-navlistRole__item {\n width: 50%;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 0 1px 1px 0;\n text-align: center;\n font-weight: bold; }\n .ec-navlistRole .ec-navlistRole__item a {\n padding: 16px;\n width: 100%;\n display: inline-block; }\n .ec-navlistRole .ec-navlistRole__item a:hover {\n background: #f5f7f8; }\n\n.ec-navlistRole .active a {\n color: #DE5D50; }\n\n/*\nマイページ(お気に入り機能無効)\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist_noFavorite\n\nStyleguide 9.1.2\n*/\n/*\nWelcome メッセージ\n\nマイページで表示するログイン名の表示コンポーネントです。\n\nex [マイページ メニューリスト下部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-welcomeMsg\n\nStyleguide 9.1.3\n*/\n.ec-welcomeMsg {\n margin-right: auto;\n margin-left: auto;\n padding-left: 16px;\n padding-right: 16px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n margin: 1em 0;\n padding-bottom: 32px;\n text-align: center;\n border-bottom: 1px dotted #ccc; }\n .ec-welcomeMsg:after {\n content: \" \";\n display: table; }\n .ec-welcomeMsg:after {\n clear: both; }\n .ec-welcomeMsg textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-welcomeMsg img {\n max-width: 100%; }\n .ec-welcomeMsg html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-welcomeMsg *,\n .ec-welcomeMsg *::before,\n .ec-welcomeMsg *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-welcomeMsg img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-welcomeMsg {\n padding-left: 26px;\n padding-right: 26px; } }\n\n/*\nお気に入り一覧\n\nお気に入り一覧で表示するアイテムの表示コンポーネントです。\n\nex [マイページ お気に入り一覧](http://demo3.ec-cube.net/mypage/favorite)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-favorite\n\nStyleguide 9.1.4\n*/\n.ec-favoriteRole .ec-favoriteRole__header {\n margin-bottom: 16px; }\n\n.ec-favoriteRole .ec-favoriteRole__itemList {\n display: flex;\n flex-wrap: wrap;\n padding: 0;\n list-style: none; }\n .ec-favoriteRole .ec-favoriteRole__itemList a {\n color: inherit;\n text-decoration: none; }\n .ec-favoriteRole .ec-favoriteRole__itemList a:hover {\n text-decoration: none; }\n\n.ec-favoriteRole .ec-favoriteRole__item {\n margin-bottom: 8px;\n width: 47.5%;\n position: relative;\n box-sizing: border-box;\n padding: 10px; }\n .ec-favoriteRole .ec-favoriteRole__item-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-favoriteRole .ec-favoriteRole__item-image {\n height: 250px; } }\n .ec-favoriteRole .ec-favoriteRole__item img {\n width: auto;\n max-height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-favoriteRole .ec-favoriteRole__item {\n width: 25%; } }\n .ec-favoriteRole .ec-favoriteRole__item .ec-closeBtn--circle {\n position: absolute;\n right: 10px;\n top: 10px; }\n .ec-favoriteRole .ec-favoriteRole__item .ec-closeBtn--circle .ec-icon img {\n width: 1em;\n height: 1em; }\n\n.ec-favoriteRole .ec-favoriteRole__itemThumb {\n display: block;\n height: auto;\n margin-bottom: 8px; }\n\n.ec-favoriteRole .ec-favoriteRole__itemTitle {\n margin-bottom: 2px; }\n\n.ec-favoriteRole .ec-favoriteRole__itemPrice {\n font-weight: bold;\n margin-bottom: 0; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n標準セクション\n\n通常のコンテナブロックです。\n\nex [商品詳細ページ コンテナ](http://demo3.ec-cube.net/products/detail/33)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-roleRole\n\nStyleguide 11.1\n*/\n.ec-role {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-role:after {\n content: \" \";\n display: table; }\n .ec-role:after {\n clear: both; }\n .ec-role textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-role img {\n max-width: 100%; }\n .ec-role html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-role *,\n .ec-role *::before,\n .ec-role *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-role img {\n width: 100%; }\n\n/*\nマイページセクション\n\nマイページ専用のコンテナブロックです。\n\nex [マイページ コンテナ](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-mypageRole\n\nStyleguide 11.1.2\n*/\n.ec-mypageRole {\n margin-right: auto;\n margin-left: auto;\n padding-left: 16px;\n padding-right: 16px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%; }\n .ec-mypageRole:after {\n content: \" \";\n display: table; }\n .ec-mypageRole:after {\n clear: both; }\n .ec-mypageRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-mypageRole img {\n max-width: 100%; }\n .ec-mypageRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-mypageRole *,\n .ec-mypageRole *::before,\n .ec-mypageRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-mypageRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-mypageRole {\n padding-left: 26px;\n padding-right: 26px; } }\n @media only screen and (min-width: 768px) {\n .ec-mypageRole .ec-pageHeader h1 {\n margin: 10px 0 48px;\n padding: 8px 0 18px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n visibility: hidden; }\n 100% {\n opacity: 1;\n visibility: visible; } }\n\n@keyframes fadeOut {\n 0% {\n opacity: 1;\n visibility: visible; }\n 100% {\n opacity: 0;\n visibility: hidden; } }\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1; }\n\n/*\nヘッダー\n\nヘッダー用のプロジェクトコンポーネントを提供します。\n\nex [トップページ ヘッダー](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+b.ec-layoutRole\n +e.header\n +ec-headerRole\n +ec-headerNaviRole\n +ec-categoryNaviRole\n\nStyleguide 11.2\n*/\n.ec-layoutRole {\n width: 100%;\n transition: transform 0.3s;\n background: #fff; }\n .ec-layoutRole .ec-layoutRole__contentTop {\n padding: 0; }\n .ec-layoutRole .ec-layoutRole__contents {\n margin-right: auto;\n margin-left: auto;\n width: 100%;\n max-width: 1150px;\n display: flex;\n flex-wrap: nowrap; }\n .ec-layoutRole .ec-layoutRole__main {\n width: 100%; }\n .ec-layoutRole .ec-layoutRole__mainWithColumn {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-layoutRole .ec-layoutRole__mainWithColumn {\n width: 75%; } }\n .ec-layoutRole .ec-layoutRole__mainBetweenColumn {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-layoutRole .ec-layoutRole__mainBetweenColumn {\n width: 50%; } }\n .ec-layoutRole .ec-layoutRole__left,\n .ec-layoutRole .ec-layoutRole__right {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-layoutRole .ec-layoutRole__left,\n .ec-layoutRole .ec-layoutRole__right {\n display: block;\n width: 25%; } }\n\n.ec-headerRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n padding-top: 15px;\n position: relative;\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n width: auto; }\n .ec-headerRole:after {\n content: \" \";\n display: table; }\n .ec-headerRole:after {\n clear: both; }\n .ec-headerRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-headerRole img {\n max-width: 100%; }\n .ec-headerRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-headerRole *,\n .ec-headerRole *::before,\n .ec-headerRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-headerRole img {\n width: 100%; }\n .ec-headerRole:after {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerRole:after {\n content: \" \";\n display: table; }\n .ec-headerRole:after {\n clear: both; } }\n .ec-headerRole::before {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerRole {\n width: 100%; }\n .ec-headerRole:after {\n content: \" \";\n display: table; }\n .ec-headerRole:after {\n clear: both; } }\n .ec-headerRole .ec-headerRole__title {\n width: 100%; }\n .ec-headerRole .ec-headerRole__navSP {\n display: block;\n position: absolute;\n top: 15px;\n width: 27%;\n right: 0;\n text-align: right; }\n @media only screen and (min-width: 768px) {\n .ec-headerRole .ec-headerRole__navSP {\n display: none; } }\n\n.ec-headerNaviRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-top: 15px; }\n .ec-headerNaviRole:after {\n content: \" \";\n display: table; }\n .ec-headerNaviRole:after {\n clear: both; }\n .ec-headerNaviRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-headerNaviRole img {\n max-width: 100%; }\n .ec-headerNaviRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-headerNaviRole *,\n .ec-headerNaviRole *::before,\n .ec-headerNaviRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-headerNaviRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-headerNaviRole {\n padding-bottom: 40px; } }\n .ec-headerNaviRole .ec-headerNaviRole__left {\n width: calc(100% / 3); }\n .ec-headerNaviRole .ec-headerNaviRole__search {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerNaviRole .ec-headerNaviRole__search {\n display: inline-block;\n margin-top: 10px; }\n .ec-headerNaviRole .ec-headerNaviRole__search a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__search a:hover {\n text-decoration: none; } }\n .ec-headerNaviRole .ec-headerNaviRole__navSP {\n display: block; }\n @media only screen and (min-width: 768px) {\n .ec-headerNaviRole .ec-headerNaviRole__navSP {\n display: none; }\n .ec-headerNaviRole .ec-headerNaviRole__navSP a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__navSP a:hover {\n text-decoration: none; } }\n .ec-headerNaviRole .ec-headerNaviRole__right {\n width: calc(100% * 2 / 3);\n display: flex;\n justify-content: flex-end;\n align-items: center; }\n .ec-headerNaviRole .ec-headerNaviRole__nav {\n display: inline-block; }\n .ec-headerNaviRole .ec-headerNaviRole__nav a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__nav a:hover {\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__cart {\n display: inline-block; }\n .ec-headerNaviRole .ec-headerNaviRole__cart a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__cart a:hover {\n text-decoration: none; }\n\n.ec-headerNavSP {\n display: block;\n cursor: pointer;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 10px;\n z-index: 1000; }\n .ec-headerNavSP .fas {\n vertical-align: top; }\n @media only screen and (min-width: 768px) {\n .ec-headerNavSP {\n display: none; } }\n\n.ec-headerNavSP.is-active {\n display: none; }\n\n/*\nヘッダー:タイトル\n\nヘッダー内で使用されるタイトルコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerTitle\n\nStyleguide 11.2.1\n*/\n.ec-headerTitle {\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%; }\n .ec-headerTitle textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-headerTitle img {\n max-width: 100%; }\n .ec-headerTitle html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-headerTitle *,\n .ec-headerTitle *::before,\n .ec-headerTitle *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-headerTitle img {\n width: 100%; }\n .ec-headerTitle .ec-headerTitle__title {\n text-align: center; }\n .ec-headerTitle .ec-headerTitle__title h1 {\n margin: 0;\n padding: 0; }\n .ec-headerTitle .ec-headerTitle__title a {\n display: inline-block;\n margin-bottom: 30px;\n text-decoration: none;\n font-size: 20px;\n font-weight: bold;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-headerTitle .ec-headerTitle__title a {\n font-size: 40px; } }\n .ec-headerTitle .ec-headerTitle__title a:hover {\n opacity: .8; }\n .ec-headerTitle .ec-headerTitle__subtitle {\n font-size: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-headerTitle .ec-headerTitle__subtitle {\n font-size: 16px;\n margin-bottom: 10px; } }\n .ec-headerTitle .ec-headerTitle__subtitle a {\n display: inline-block;\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n\n/*\nヘッダー:ユーザナビゲーション\n\nヘッダー内でユーザに関与するナビゲーションコンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__nav`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.3\n*/\n.ec-headerNav {\n text-align: right; }\n .ec-headerNav .ec-headerNav__item {\n margin-left: 0;\n display: inline-block;\n font-size: 28px; }\n .ec-headerNav .ec-headerNav__itemIcon {\n display: inline-block;\n margin-right: 10px;\n margin-left: 10px;\n font-size: 18px;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-headerNav .ec-headerNav__itemIcon {\n margin-right: 0;\n font-size: 20px; } }\n .ec-headerNav .ec-headerNav__itemLink {\n display: none;\n margin-right: 5px;\n font-size: 14px;\n vertical-align: middle;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-headerNav .ec-headerNav__itemLink {\n display: inline-block; } }\n\n/*\nヘッダー:検索ボックス\n\nヘッダー内で使用される商品検索コンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__search`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerSearch\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.4\n*/\n.ec-headerSearch:after {\n content: \" \";\n display: table; }\n\n.ec-headerSearch:after {\n clear: both; }\n\n.ec-headerSearch .ec-headerSearch__category {\n float: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__category {\n float: left;\n width: 43%; } }\n .ec-headerSearch .ec-headerSearch__category .ec-select {\n overflow: hidden;\n width: 100%;\n margin: 0;\n text-align: center; }\n .ec-headerSearch .ec-headerSearch__category .ec-select select {\n width: 100%;\n cursor: pointer;\n padding: 8px 24px 8px 8px;\n text-indent: 0.01px;\n text-overflow: ellipsis;\n border: none;\n outline: none;\n background: transparent;\n background-image: none;\n box-shadow: none;\n appearance: none;\n color: #fff; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__category .ec-select select {\n max-width: 165px;\n height: 36px; } }\n .ec-headerSearch .ec-headerSearch__category .ec-select select option {\n color: #000; }\n .ec-headerSearch .ec-headerSearch__category .ec-select select::-ms-expand {\n display: none; }\n .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {\n position: relative;\n border: 0;\n background: #000;\n color: #fff;\n border-top-right-radius: 10px;\n border-top-left-radius: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {\n border-top-right-radius: inherit;\n border-top-left-radius: 50px;\n border-bottom-left-radius: 50px; } }\n .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search::before {\n position: absolute;\n top: 0.8em;\n right: 0.4em;\n width: 0;\n height: 0;\n padding: 0;\n content: '';\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid #fff;\n pointer-events: none; }\n\n.ec-headerSearch .ec-headerSearch__keyword {\n position: relative;\n color: #525263;\n border: 1px solid #ccc;\n background-color: #f6f6f6;\n border-bottom-right-radius: 10px;\n border-bottom-left-radius: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__keyword {\n float: right;\n width: 57%;\n border-bottom-left-radius: inherit;\n border-top-right-radius: 50px;\n border-bottom-right-radius: 50px; } }\n .ec-headerSearch .ec-headerSearch__keyword input[type=\"search\"] {\n width: 100%;\n height: 34px;\n font-size: 1.2rem;\n border: 0 none;\n padding: 0.5em 50px 0.5em 1em;\n box-shadow: none;\n background: none;\n box-sizing: border-box;\n margin-bottom: 0; }\n .ec-headerSearch .ec-headerSearch__keyword .ec-icon {\n width: 22px;\n height: 22px; }\n\n.ec-headerSearch .ec-headerSearch__keywordBtn {\n border: 0;\n background: none;\n position: absolute;\n right: 5px;\n top: 50%;\n transform: translateY(-55%);\n display: block;\n white-space: nowrap;\n z-index: 1; }\n\n/*\nヘッダー:カテゴリナビ\n\nヘッダー内で使用されている商品のカテゴリ一覧として使用します。\n`li`の中に`ul > li`要素を入れることで、階層を深くする事ができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+ec-itemNav\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 11.2.5\n*/\n.ec-categoryNaviRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: none; }\n .ec-categoryNaviRole:after {\n content: \" \";\n display: table; }\n .ec-categoryNaviRole:after {\n clear: both; }\n .ec-categoryNaviRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-categoryNaviRole img {\n max-width: 100%; }\n .ec-categoryNaviRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-categoryNaviRole *,\n .ec-categoryNaviRole *::before,\n .ec-categoryNaviRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-categoryNaviRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-categoryNaviRole {\n display: block;\n width: 100%; }\n .ec-categoryNaviRole a {\n color: inherit;\n text-decoration: none; }\n .ec-categoryNaviRole a:hover {\n text-decoration: none; } }\n\n.ec-itemNav {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n text-align: center; }\n\n.ec-itemNav__nav {\n display: block;\n margin: 0 auto;\n padding: 0;\n width: auto;\n height: auto;\n list-style-type: none;\n text-align: center;\n vertical-align: bottom; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav {\n display: inline-block; } }\n\n.ec-itemNav__nav li {\n float: none;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: center;\n position: relative; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li {\n float: left;\n width: auto; } }\n\n.ec-itemNav__nav li a {\n display: block;\n border-bottom: 1px solid #E8E8E8;\n margin: 0;\n padding: 16px;\n height: auto;\n color: #2e3233;\n font-size: 16px;\n font-weight: bold;\n line-height: 20px;\n text-decoration: none;\n text-align: left;\n background: #fff;\n border-bottom: 1px solid #E8E8E8; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li a {\n text-align: center;\n border-bottom: none; } }\n\n.ec-itemNav__nav li ul {\n display: none;\n z-index: 0;\n margin: 0;\n padding: 0;\n min-width: 200px;\n list-style: none;\n position: static;\n top: 100%;\n left: 0; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul {\n display: block;\n z-index: 100;\n position: absolute; } }\n\n.ec-itemNav__nav li ul li {\n overflow: hidden;\n width: 100%;\n height: auto;\n transition: .3s; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul li {\n overflow: hidden;\n height: 0; } }\n\n.ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #E8E8E8;\n padding: 16px 22px 16px 16px;\n font-size: 16px;\n font-weight: bold;\n color: white;\n text-align: left;\n background: black; }\n\n.ec-itemNav__nav > li:hover > a {\n background: #fafafa; }\n\n.ec-itemNav__nav > li:hover li:hover > a {\n background: #333; }\n\n@media only screen and (min-width: 768px) {\n .ec-itemNav__nav > li:hover > ul > li {\n overflow: visible;\n height: auto; } }\n\n.ec-itemNav__nav li ul li ul {\n top: 0;\n left: 100%;\n width: auto; }\n\n@media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul li ul:before {\n content: \"\\f054\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n font-size: 12px;\n color: white;\n position: absolute;\n top: 19px;\n right: auto;\n left: -20px; } }\n\n@media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul li:hover > ul > li {\n overflow: visible;\n height: auto;\n width: auto; } }\n\n.ec-itemNav__nav li ul li ul li a {\n background: #7D7D7D; }\n\n.ec-itemNav__nav li:hover ul li ul li a:hover {\n background: #333; }\n\n/*\nヘッダー:SPヘッダー\n\nSP時のみ出現するヘッダーに関係するコンポーネントです。
\nex [トップページ](http://demo3.ec-cube.net/)画面サイズが768px以下に該当。
\n
\n`.ec-drawerRole`:SPのドロワー内の要素をwrapするコンポーネントです。
\n`.ec-headerSearch`、`.ec-headerNav`、`.ec-itemNav`は`.ec-drawerRole`の子要素にある場合、ドロワーに適したスタイルに変化します。

\n`.ec-overlayRole`:SPのドロワー出現時にz-indexがドロワー以下の要素に半透明の黒背景をかぶせるコンポーネントです。
\n\nStyleguide 11.2.6\n*/\n.ec-drawerRole {\n overflow-y: scroll;\n background: black;\n width: 260px;\n height: 100vh;\n transform: translateX(-300px);\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1;\n transition: z-index 0ms 1ms; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRole {\n display: none; } }\n .ec-drawerRole .ec-headerSearchArea {\n padding: 20px 10px;\n width: 100%;\n background: #F8F8F8; }\n .ec-drawerRole .ec-headerSearch {\n padding: 16px 8px 26px;\n background: #EBEBEB;\n color: #636378; }\n .ec-drawerRole .ec-headerSearch select {\n width: 100% !important; }\n .ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading {\n border-top: 1px solid #CCCCCC;\n border-bottom: 1px solid #CCCCCC;\n padding: 1em 10px;\n font-size: 16px;\n font-weight: bold;\n color: black;\n background: #F8F8F8; }\n .ec-drawerRole .ec-headerCategoryArea p {\n margin-top: 0;\n margin-bottom: 0; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li a {\n border-bottom: 1px solid #ccc;\n border-bottom: 1px solid #ccc;\n color: black;\n font-weight: normal;\n background: #f8f8f8; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #ccc;\n padding-left: 20px;\n font-weight: normal;\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav > li:hover > a {\n background: #f8f8f8; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav > li:hover li:hover > a {\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li ul li a {\n padding-left: 40px;\n color: black;\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li:hover ul li ul li a:hover {\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li ul li ul li a {\n padding-left: 60px;\n font-weight: normal; }\n .ec-drawerRole .ec-headerLinkArea {\n background: black; }\n .ec-drawerRole .ec-headerLinkArea .ec-headerLink__list {\n border-top: 1px solid #ccc; }\n .ec-drawerRole .ec-headerLinkArea .ec-headerLink__item {\n display: block;\n border-bottom: 1px solid #ccc;\n padding: 15px 20px;\n font-size: 16px;\n font-weight: bold;\n color: white; }\n .ec-drawerRole .ec-headerLinkArea .ec-headerLink__icon {\n display: inline-block;\n width: 28px;\n font-size: 17px; }\n\n.ec-drawerRoleClose {\n display: none;\n cursor: pointer;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 270px;\n z-index: 1000; }\n .ec-drawerRoleClose .fas {\n vertical-align: top; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRoleClose {\n display: none; } }\n\n.ec-drawerRole.is_active {\n display: block;\n transform: translateX(0);\n transition: all .3s;\n z-index: 100000; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRole.is_active {\n display: none; } }\n\n.ec-drawerRoleClose.is_active {\n display: inline-block;\n transition: all .3s; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRoleClose.is_active {\n display: none; } }\n\n.ec-overlayRole {\n position: fixed;\n width: 100%;\n height: 100vh;\n top: 0;\n left: 0;\n opacity: 0;\n background: transparent;\n transform: translateX(0);\n transition: all .3s;\n visibility: hidden; }\n @media only screen and (min-width: 768px) {\n .ec-overlayRole {\n display: none; } }\n\n.have_curtain .ec-overlayRole {\n display: block;\n opacity: 1;\n background: rgba(0, 0, 0, 0.5);\n visibility: visible; }\n @media only screen and (min-width: 768px) {\n .have_curtain .ec-overlayRole {\n display: none; } }\n\n/*\nヘッダー:test\n\ntest\n\nMarkup:\nspan.ec-itemAccordionParent test1\nul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test2\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test3\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test4\n\nStyleguide 11.2.7\n*/\n.ec-itemNavAccordion {\n display: none; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nフッター\n\n全ページで使用されるフッターのプロジェクトコンポーネントです。\n\nex [トップページ フッター](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerRole\n\nStyleguide 11.3\n*/\n.ec-footerRole {\n border-top: 1px solid #7d7d7d;\n margin-top: 30px;\n background: black; }\n @media only screen and (min-width: 768px) {\n .ec-footerRole {\n padding-top: 40px;\n margin-top: 100px; } }\n @media only screen and (min-width: 768px) {\n .ec-footerRole .ec-footerRole__inner {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-footerRole .ec-footerRole__inner:after {\n content: \" \";\n display: table; }\n .ec-footerRole .ec-footerRole__inner:after {\n clear: both; }\n .ec-footerRole .ec-footerRole__inner textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-footerRole .ec-footerRole__inner img {\n max-width: 100%; }\n .ec-footerRole .ec-footerRole__inner html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-footerRole .ec-footerRole__inner *,\n .ec-footerRole .ec-footerRole__inner *::before,\n .ec-footerRole .ec-footerRole__inner *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-footerRole .ec-footerRole__inner img {\n width: 100%; } }\n\n/*\nフッターナビ\n\nフッタープロジェクトで使用するナビゲーション用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.1\n*/\n.ec-footerNavi {\n padding: 0;\n color: white;\n list-style: none;\n text-align: center; }\n .ec-footerNavi .ec-footerNavi__link {\n display: block; }\n @media only screen and (min-width: 768px) {\n .ec-footerNavi .ec-footerNavi__link {\n display: inline-block; } }\n .ec-footerNavi .ec-footerNavi__link a {\n display: block;\n border-bottom: 1px solid #7d7d7d;\n padding: 15px 0;\n font-size: 14px;\n color: inherit;\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-footerNavi .ec-footerNavi__link a {\n display: inline-block;\n border-bottom: none;\n margin: 0 10px;\n padding: 0;\n text-decoration: underline; } }\n .ec-footerNavi .ec-footerNavi__link:hover a {\n opacity: .8;\n text-decoration: none; }\n\n/*\nフッタータイトル\n\nフッタープロジェクトで使用するタイトル用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerTitle\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.2\n*/\n.ec-footerTitle {\n padding: 40px 0 60px;\n text-align: center;\n color: white; }\n @media only screen and (min-width: 768px) {\n .ec-footerTitle {\n padding: 50px 0 80px; } }\n .ec-footerTitle .ec-footerTitle__logo {\n display: block;\n margin-bottom: 10px;\n font-weight: bold; }\n .ec-footerTitle .ec-footerTitle__logo a {\n color: inherit;\n text-decoration: none; }\n .ec-footerTitle .ec-footerTitle__logo a:hover {\n text-decoration: none; }\n .ec-footerTitle .ec-footerTitle__logo a {\n font-size: 22px;\n color: inherit; }\n @media only screen and (min-width: 768px) {\n .ec-footerTitle .ec-footerTitle__logo a {\n font-size: 24px; } }\n .ec-footerTitle .ec-footerTitle__logo:hover a {\n opacity: .8;\n text-decoration: none; }\n .ec-footerTitle .ec-footerTitle__copyright {\n font-size: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-footerTitle .ec-footerTitle__copyright {\n font-size: 12px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nトップページ\n\nトップページ スライド部に関する Project コンポーネントを定義します。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.1.slider.pug\n+ec-sliderRole\n\nStyleguide 12.1\n*/\n.ec-sliderRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n margin-bottom: 24px; }\n .ec-sliderRole:after {\n content: \" \";\n display: table; }\n .ec-sliderRole:after {\n clear: both; }\n .ec-sliderRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-sliderRole img {\n max-width: 100%; }\n .ec-sliderRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-sliderRole *,\n .ec-sliderRole *::before,\n .ec-sliderRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-sliderRole img {\n width: 100%; }\n .ec-sliderRole ul {\n padding: 0;\n list-style: none; }\n\n.ec-sliderItemRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n margin-bottom: 24px; }\n .ec-sliderItemRole:after {\n content: \" \";\n display: table; }\n .ec-sliderItemRole:after {\n clear: both; }\n .ec-sliderItemRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-sliderItemRole img {\n max-width: 100%; }\n .ec-sliderItemRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-sliderItemRole *,\n .ec-sliderItemRole *::before,\n .ec-sliderItemRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-sliderItemRole img {\n width: 100%; }\n .ec-sliderItemRole ul {\n padding: 0;\n list-style: none; }\n .ec-sliderItemRole .item_nav {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-sliderItemRole .item_nav {\n display: flex;\n justify-content: flex-start;\n flex-wrap: wrap;\n margin-bottom: 0; } }\n .ec-sliderItemRole .slideThumb {\n margin-bottom: 25px;\n width: 33%;\n opacity: .8;\n cursor: pointer; }\n .ec-sliderItemRole .slideThumb:focus {\n outline: none; }\n .ec-sliderItemRole .slideThumb:hover {\n opacity: 1; }\n .ec-sliderItemRole .slideThumb img {\n width: 80%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nアイキャッチ\n\nトップページ アイキャッチ部に関する Project コンポーネントを定義します。\n\nex [トップページスライダー直下 アイキャッチ部](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.2.eyecatch.pug\n+ec-eyecatchRole\n\nStyleguide 12.2\n*/\n.ec-eyecatchRole {\n display: flex;\n flex-wrap: wrap;\n margin-bottom: 40px; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole {\n flex-wrap: nowrap; } }\n .ec-eyecatchRole .ec-eyecatchRole__image {\n display: block;\n margin-bottom: 40px;\n width: 100%;\n height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__image {\n order: 2; } }\n .ec-eyecatchRole .ec-eyecatchRole__intro {\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__intro {\n padding-right: 5%;\n order: 1; } }\n .ec-eyecatchRole .ec-eyecatchRole__introEnTitle {\n margin-bottom: .8em;\n font-size: 16px;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__introEnTitle {\n margin-top: 45px; } }\n .ec-eyecatchRole .ec-eyecatchRole__introTitle {\n margin-bottom: .8em;\n font-size: 24px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__introTitle {\n margin-bottom: 1em;\n font-size: 26px; } }\n .ec-eyecatchRole .ec-eyecatchRole__introDescriptiron {\n margin-bottom: 20px;\n font-size: 16px;\n line-height: 2; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__introDescriptiron {\n margin-bottom: 30px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nボタン\n\nトップページで使用されているボタンのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.3\n*/\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nMarkup:\n.ec-inlineBtn--top more\n\nStyleguide 12.3.1\n*/\n.ec-inlineBtn--top {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:focus, .ec-inlineBtn--top.focus, .ec-inlineBtn--top:active:focus, .ec-inlineBtn--top:active.focus, .ec-inlineBtn--top.active:focus, .ec-inlineBtn--top.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--top:hover, .ec-inlineBtn--top:focus, .ec-inlineBtn--top.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--top:active, .ec-inlineBtn--top.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--top.disabled, .ec-inlineBtn--top[disabled],\n fieldset[disabled] .ec-inlineBtn--top {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--top:focus, .ec-inlineBtn--top.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:hover {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:active, .ec-inlineBtn--top.active,\n .open > .ec-inlineBtn--top.dropdown-toggle {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:active:hover, .ec-inlineBtn--top:active:focus, .ec-inlineBtn--top:active.focus, .ec-inlineBtn--top.active:hover, .ec-inlineBtn--top.active:focus, .ec-inlineBtn--top.active.focus,\n .open > .ec-inlineBtn--top.dropdown-toggle:hover,\n .open > .ec-inlineBtn--top.dropdown-toggle:focus,\n .open > .ec-inlineBtn--top.dropdown-toggle.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:active, .ec-inlineBtn--top.active,\n .open > .ec-inlineBtn--top.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--top.disabled:hover, .ec-inlineBtn--top.disabled:focus, .ec-inlineBtn--top.disabled.focus, .ec-inlineBtn--top[disabled]:hover, .ec-inlineBtn--top[disabled]:focus, .ec-inlineBtn--top[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--top:hover,\n fieldset[disabled] .ec-inlineBtn--top:focus,\n fieldset[disabled] .ec-inlineBtn--top.focus {\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top .badge {\n color: black;\n background-color: white; }\n .ec-inlineBtn--top .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n/*\nロングボタン(全幅)\n\nロングタイプのボタンです。\n\nMarkup:\n.ec-blockBtn--top 商品一覧へ\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn--top {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: white;\n background-color: black;\n border-color: black;\n display: block;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--top:focus, .ec-blockBtn--top.focus, .ec-blockBtn--top:active:focus, .ec-blockBtn--top:active.focus, .ec-blockBtn--top.active:focus, .ec-blockBtn--top.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--top:hover, .ec-blockBtn--top:focus, .ec-blockBtn--top.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--top:active, .ec-blockBtn--top.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--top.disabled, .ec-blockBtn--top[disabled],\n fieldset[disabled] .ec-blockBtn--top {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--top:focus, .ec-blockBtn--top.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:hover {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:active, .ec-blockBtn--top.active,\n .open > .ec-blockBtn--top.dropdown-toggle {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:active:hover, .ec-blockBtn--top:active:focus, .ec-blockBtn--top:active.focus, .ec-blockBtn--top.active:hover, .ec-blockBtn--top.active:focus, .ec-blockBtn--top.active.focus,\n .open > .ec-blockBtn--top.dropdown-toggle:hover,\n .open > .ec-blockBtn--top.dropdown-toggle:focus,\n .open > .ec-blockBtn--top.dropdown-toggle.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:active, .ec-blockBtn--top.active,\n .open > .ec-blockBtn--top.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--top.disabled:hover, .ec-blockBtn--top.disabled:focus, .ec-blockBtn--top.disabled.focus, .ec-blockBtn--top[disabled]:hover, .ec-blockBtn--top[disabled]:focus, .ec-blockBtn--top[disabled].focus,\n fieldset[disabled] .ec-blockBtn--top:hover,\n fieldset[disabled] .ec-blockBtn--top:focus,\n fieldset[disabled] .ec-blockBtn--top.focus {\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top .badge {\n color: black;\n background-color: white; }\n .ec-blockBtn--top .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n @media only screen and (min-width: 768px) {\n .ec-blockBtn--top {\n max-width: 260px; } }\n\n/*\n見出し\n\nトップページで使用されている見出しのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.4\n*/\n/*\n横並び見出し\n\n横並びの見出しです。\n\nMarkup:\n.ec-secHeading\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.1\n*/\n.ec-secHeading {\n margin-bottom: 15px;\n color: black; }\n .ec-secHeading .ec-secHeading__en {\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em; }\n .ec-secHeading .ec-secHeading__line {\n display: inline-block;\n margin: 0 20px;\n width: 1px;\n height: 14px;\n background: black; }\n .ec-secHeading .ec-secHeading__ja {\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px; }\n\n/*\n縦並び見出し\n\n縦並びの見出しです。\n\nMarkup:\n.ec-secHeading--tandem\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.2\n*/\n.ec-secHeading--tandem {\n margin-bottom: 15px;\n color: black;\n text-align: center; }\n .ec-secHeading--tandem .ec-secHeading__en {\n display: block;\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em; }\n .ec-secHeading--tandem .ec-secHeading__line {\n display: block;\n margin: 13px auto;\n width: 20px;\n height: 1px;\n background: black; }\n .ec-secHeading--tandem .ec-secHeading__ja {\n display: block;\n margin-bottom: 30px;\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nトピック(アイテム2列)\n\nトップページで使用されているトピックのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.5.1\n*/\n.ec-topicRole {\n padding: 40px 0;\n background: #F8F8F8; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole {\n padding: 60px 0; } }\n .ec-topicRole .ec-topicRole__list {\n display: flex;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole .ec-topicRole__list {\n flex-wrap: nowrap; } }\n .ec-topicRole .ec-topicRole__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole .ec-topicRole__listItem {\n width: calc(100% / 2); }\n .ec-topicRole .ec-topicRole__listItem:not(:last-of-type) {\n margin-right: 30px; } }\n .ec-topicRole .ec-topicRole__listItemTitle {\n margin-top: .5em;\n font-size: 14px;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole .ec-topicRole__listItemTitle {\n margin-top: 1em; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nカテゴリ(アイテム4列 スマホの時は2列)\n\nトップページで使用されているアイテムリストのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.6.1\n*/\n.ec-newItemRole {\n padding: 40px 0; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole {\n padding: 60px 0; } }\n .ec-newItemRole .ec-newItemRole__list {\n display: flex;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__list {\n flex-wrap: nowrap; } }\n .ec-newItemRole .ec-newItemRole__listItem {\n margin-bottom: 4%;\n width: 48%;\n height: auto; }\n .ec-newItemRole .ec-newItemRole__listItem:not(:first-child) a {\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__listItem {\n margin-bottom: 15px;\n width: calc(100% / 4); }\n .ec-newItemRole .ec-newItemRole__listItem:not(:last-of-type) {\n margin-right: 30px; } }\n .ec-newItemRole .ec-newItemRole__listItem:nth-child(odd) {\n margin-right: 4%; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__listItem:nth-child(odd) {\n margin-right: 30px; } }\n .ec-newItemRole .ec-newItemRole__listItemHeading {\n margin-top: calc(45% - 20px); }\n .ec-newItemRole .ec-newItemRole__listItemTitle {\n margin: 8px 0;\n font-size: 14px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__listItemTitle {\n margin: 20px 0 10px; } }\n .ec-newItemRole .ec-newItemRole__listItemPrice {\n font-size: 12px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nカテゴリ(アイテム3列)\n\nトップページで使用されているカテゴリのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.7.1\n*/\n.ec-categoryRole {\n padding: 40px 0;\n color: black;\n background: #F8F8F8; }\n @media only screen and (min-width: 768px) {\n .ec-categoryRole {\n padding: 60px 0; } }\n .ec-categoryRole .ec-categoryRole__list {\n display: flex;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-categoryRole .ec-categoryRole__list {\n flex-wrap: nowrap; } }\n .ec-categoryRole .ec-categoryRole__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto; }\n @media only screen and (min-width: 768px) {\n .ec-categoryRole .ec-categoryRole__listItem {\n width: calc(100% / 3); }\n .ec-categoryRole .ec-categoryRole__listItem:not(:last-of-type) {\n margin-right: 30px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n見出し\n\nトップページで使用されている新着情報のスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.8.1\n*/\n.ec-newsRole {\n padding: 40px 0 0; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole {\n padding: 60px 0 0; } }\n .ec-newsRole .ec-newsRole__news {\n box-sizing: border-box; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__news {\n border: 16px solid #F8F8F8;\n padding: 20px 30px; } }\n .ec-newsRole .ec-newsRole__newsItem {\n width: 100%; }\n .ec-newsRole .ec-newsRole__newsItem:not(:last-of-type) {\n border-bottom: 1px solid #ccc; }\n .ec-newsRole .ec-newsRole__newsItem:last-of-type {\n margin-bottom: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsItem:last-of-type {\n margin-bottom: 0; } }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsItem {\n padding: 20px 0; } }\n .ec-newsRole .ec-newsRole__newsHeading {\n cursor: pointer; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsHeading {\n display: flex; } }\n .ec-newsRole .ec-newsRole__newsDate {\n display: block;\n margin: 15px 0 5px;\n font-size: 12px;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsDate {\n display: inline-block;\n margin: 0;\n min-width: 120px;\n font-size: 14px; } }\n .ec-newsRole .ec-newsRole__newsColumn {\n display: flex; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsColumn {\n display: inline-flex;\n min-width: calc(100% - 120px); } }\n .ec-newsRole .ec-newsRole__newsTitle {\n display: inline-block;\n margin-bottom: 10px;\n width: 90%;\n font-size: 14px;\n font-weight: bold;\n color: #7D7D7D;\n line-height: 1.6; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsTitle {\n margin-bottom: 0;\n line-height: 1.8; } }\n .ec-newsRole .ec-newsRole__newsClose {\n display: inline-block;\n width: 10%;\n position: relative; }\n .ec-newsRole .ec-newsRole__newsCloseBtn {\n display: inline-block;\n margin-left: auto;\n border-radius: 50%;\n width: 20px;\n height: 20px;\n color: white;\n text-align: center;\n background: black;\n cursor: pointer;\n position: absolute;\n right: 5px; }\n .ec-newsRole .ec-newsRole__newsDescription {\n display: none;\n margin: 0 0 10px;\n font-size: 14px;\n line-height: 1.4;\n overflow: hidden; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsDescription {\n margin: 20px 0 0;\n line-height: 1.8; } }\n .ec-newsRole .ec-newsRole__newsDescription a {\n color: #0092C4; }\n .ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription {\n margin: 0 0 10px; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription {\n margin: 20px 0 0; } }\n .ec-newsRole__newsItem.is_active .ec-newsRole__newsCloseBtn i {\n display: inline-block;\n transform: rotateX(180deg) translateY(2px); }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n検索ラベル\n\n商品一覧 ヘッダー部 に関する Project コンポーネントを定義します。\n\nex [商品一覧 ヘッダー部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.1.searchnav.pug\n+ec-searchnavRole__topicpath\n+ec-searchnavRole__info\n\nStyleguide 13.1\n\n*/\n.ec-searchnavRole {\n margin-bottom: 0;\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-searchnavRole:after {\n content: \" \";\n display: table; }\n .ec-searchnavRole:after {\n clear: both; }\n .ec-searchnavRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-searchnavRole img {\n max-width: 100%; }\n .ec-searchnavRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-searchnavRole *,\n .ec-searchnavRole *::before,\n .ec-searchnavRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-searchnavRole img {\n width: 100%; } }\n .ec-searchnavRole .ec-searchnavRole__infos {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n border-top: 0;\n margin-bottom: 16px;\n padding-top: 5px;\n flex-direction: column; }\n .ec-searchnavRole .ec-searchnavRole__infos:after {\n content: \" \";\n display: table; }\n .ec-searchnavRole .ec-searchnavRole__infos:after {\n clear: both; }\n .ec-searchnavRole .ec-searchnavRole__infos textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-searchnavRole .ec-searchnavRole__infos img {\n max-width: 100%; }\n .ec-searchnavRole .ec-searchnavRole__infos html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-searchnavRole .ec-searchnavRole__infos *,\n .ec-searchnavRole .ec-searchnavRole__infos *::before,\n .ec-searchnavRole .ec-searchnavRole__infos *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-searchnavRole .ec-searchnavRole__infos img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole .ec-searchnavRole__infos {\n padding-left: 0;\n padding-right: 0;\n border-top: 1px solid #ccc;\n padding-top: 16px;\n flex-direction: row; } }\n .ec-searchnavRole .ec-searchnavRole__counter {\n margin-bottom: 16px;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole .ec-searchnavRole__counter {\n margin-bottom: 0;\n width: 50%; } }\n .ec-searchnavRole .ec-searchnavRole__actions {\n text-align: right;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole .ec-searchnavRole__actions {\n width: 50%; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n商品一覧\n\n商品一覧 に関する Project コンポーネントを定義します。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2\n\n*/\n.ec-shelfRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-shelfRole:after {\n content: \" \";\n display: table; }\n .ec-shelfRole:after {\n clear: both; }\n .ec-shelfRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-shelfRole img {\n max-width: 100%; }\n .ec-shelfRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-shelfRole *,\n .ec-shelfRole *::before,\n .ec-shelfRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-shelfRole img {\n width: 100%; }\n\n/*\n商品一覧グリッド\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2.1\n\n*/\n.ec-shelfGrid {\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none; }\n .ec-shelfGrid a {\n color: inherit;\n text-decoration: none; }\n .ec-shelfGrid a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid {\n margin-left: -16px;\n margin-right: -16px; } }\n .ec-shelfGrid .ec-shelfGrid__item {\n margin-bottom: 36px;\n width: 50%;\n display: flex;\n flex-direction: column; }\n .ec-shelfGrid .ec-shelfGrid__item-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item-image {\n height: 250px; } }\n .ec-shelfGrid .ec-shelfGrid__item img {\n width: auto;\n max-height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item {\n padding: 0 16px;\n width: 25%; } }\n .ec-shelfGrid .ec-shelfGrid__item .ec-productRole__btn {\n margin-top: auto;\n margin-bottom: 15px; }\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(odd) {\n padding-right: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(odd) {\n padding: 0 16px; } }\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {\n padding-left: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {\n padding: 0 16px; } }\n .ec-shelfGrid .ec-shelfGrid__title {\n margin-bottom: 7px; }\n .ec-shelfGrid .ec-shelfGrid__plice {\n font-weight: bold; }\n\n/*\n13.2.2 商品一覧グリッド(中央寄せ)\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n商品のあまりはセンタリングされ、中央に表示されます。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGridCenter\n\nStyleguide 13.2.2\n\n*/\n.ec-shelfGridCenter {\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n justify-content: center; }\n .ec-shelfGridCenter a {\n color: inherit;\n text-decoration: none; }\n .ec-shelfGridCenter a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter {\n margin-left: -16px;\n margin-right: -16px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item {\n margin-bottom: 36px;\n width: 50%; }\n .ec-shelfGridCenter .ec-shelfGridCenter__item-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item-image {\n height: 250px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item img {\n width: auto;\n max-height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item {\n padding: 0 16px;\n width: 25%; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item .ec-productRole__btn {\n margin-top: auto;\n padding-top: 1em; }\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(odd) {\n padding-right: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(odd) {\n padding: 0 16px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even) {\n padding-left: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even) {\n padding: 0 16px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__title {\n margin-bottom: 7px; }\n .ec-shelfGridCenter .ec-shelfGridCenter__plice {\n font-weight: bold; }\n\n/*\n商品一覧フッター\n\n商品一覧 フッター に関する Project コンポーネントを定義します。\n\nex [商品一覧 ページャ部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.3.pager.pug\n+ec-pagerRole\n\nStyleguide 13.3\n\n*/\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nカート追加モーダル\n\nカート追加モーダルに関する Project コンポーネントを定義します。\n\nex [商品一覧、商品詳細](http://demo3.ec-cube.net/products/list)\n\n+ec-modal\n\nStyleguide 13.4\n\n*/\n.ec-modal {\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n z-index: 99999;\n width: 100%;\n height: 100%; }\n .ec-modal.small {\n width: 30%; }\n .ec-modal.full {\n width: 100%;\n height: 100%; }\n .ec-modal .ec-modal-overlay {\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: rgba(0, 0, 0, 0.3);\n width: 100%;\n height: 100%; }\n .ec-modal .ec-modal-wrap {\n position: relative;\n border-radius: 2px;\n border: 1px solid #333;\n background-color: #fff;\n width: 90%;\n margin: 20px;\n padding: 40px 5px; }\n @media only screen and (min-width: 768px) {\n .ec-modal .ec-modal-wrap {\n padding: 40px 10px;\n width: 50%;\n margin: 20px auto; } }\n .ec-modal .ec-modal-close {\n cursor: pointer;\n position: absolute;\n right: 20px;\n top: 10px;\n font-size: 20px;\n height: 30px;\n width: 20px; }\n .ec-modal .ec-modal-close:hover {\n color: #4b5361; }\n .ec-modal .ec-modal-box {\n text-align: center; }\n .ec-modal .ec-role {\n margin-top: 20px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n商品詳細\n\n商品詳細ページに関する Project コンポーネントを定義します。\n\nex [商品詳細ページ](http://demo3.ec-cube.net/products/detail/18)\n\n\nMarkup:\ninclude /assets/tmpl/elements/14.1.product.pug\n+ec-productSimpleRole\n\nStyleguide 14.1\n*/\n.ec-productRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-productRole:after {\n content: \" \";\n display: table; }\n .ec-productRole:after {\n clear: both; }\n .ec-productRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-productRole img {\n max-width: 100%; }\n .ec-productRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-productRole *,\n .ec-productRole *::before,\n .ec-productRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-productRole img {\n width: 100%; }\n .ec-productRole .ec-productRole__img {\n margin-right: 0;\n margin-bottom: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__img {\n margin-right: 16px;\n margin-bottom: 0; } }\n .ec-productRole .ec-productRole__profile {\n margin-left: 0; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__profile {\n margin-left: 16px; } }\n .ec-productRole .ec-productRole__title .ec-headingTitle {\n font-size: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__title .ec-headingTitle {\n font-size: 32px; } }\n .ec-productRole .ec-productRole__tags {\n margin-top: 16px;\n padding: 0;\n padding-bottom: 16px;\n border-bottom: 1px dotted #ccc; }\n .ec-productRole .ec-productRole__tag {\n display: inline-block;\n padding: 2px 5px;\n list-style: none;\n font-size: 80%;\n color: #525263;\n border: solid 1px #D7DADD;\n border-radius: 3px;\n background-color: #F5F7F8; }\n .ec-productRole .ec-productRole__priceRegular {\n padding-top: 14px; }\n .ec-productRole .ec-productRole__priceRegularTax {\n margin-left: 5px;\n font-size: 10px; }\n .ec-productRole .ec-productRole__price {\n color: #DE5D50;\n font-size: 28px;\n padding: 0;\n border-bottom: 0; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__price {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc; } }\n .ec-productRole .ec-productRole__code {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc; }\n .ec-productRole .ec-productRole__category {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc; }\n .ec-productRole .ec-productRole__category a {\n color: #33A8D0; }\n .ec-productRole .ec-productRole__category ul {\n list-style: none;\n padding: 0;\n margin: 0; }\n .ec-productRole .ec-productRole__actions {\n padding: 14px 0; }\n .ec-productRole .ec-productRole__actions .ec-select select {\n height: 40px;\n max-width: 100%;\n min-width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__actions .ec-select select {\n min-width: 350px;\n max-width: 350px; } }\n .ec-productRole .ec-productRole__btn {\n width: 100%;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__btn {\n width: 60%;\n margin-bottom: 16px;\n min-width: 350px; } }\n .ec-productRole .ec-productRole__description {\n margin-bottom: 16px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nカート\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [カートページ](http://demo3.ec-cube.net/shopping)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartRole\n\nStyleguide 15.1\n\n*/\n.ec-cartRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end; }\n .ec-cartRole:after {\n content: \" \";\n display: table; }\n .ec-cartRole:after {\n clear: both; }\n .ec-cartRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-cartRole img {\n max-width: 100%; }\n .ec-cartRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-cartRole *,\n .ec-cartRole *::before,\n .ec-cartRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-cartRole img {\n width: 100%; }\n .ec-cartRole::before {\n display: none; }\n .ec-cartRole .ec-cartRole__progress {\n width: 100%;\n text-align: center; }\n .ec-cartRole .ec-cartRole__error {\n width: 100%;\n text-align: center; }\n .ec-cartRole .ec-cartRole__error .ec-alert-warning {\n max-width: 80%;\n display: inline-block; }\n .ec-cartRole .ec-cartRole__totalText {\n margin-bottom: 0;\n padding: 16px 0 6px;\n width: 100%;\n text-align: center;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__totalText {\n margin-bottom: 30px;\n padding: 0; } }\n .ec-cartRole .ec-cartRole__cart {\n margin: 0;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__cart {\n margin: 0 10%; } }\n .ec-cartRole .ec-cartRole__actions {\n text-align: right;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__actions {\n width: 20%;\n margin-right: 10%; } }\n .ec-cartRole .ec-cartRole__total {\n padding: 15px 0 30px;\n font-weight: bold;\n font-size: 16px; }\n .ec-cartRole .ec-cartRole__totalAmount {\n margin-left: 30px;\n color: #de5d50;\n font-size: 16px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__totalAmount {\n font-size: 24px; } }\n .ec-cartRole .ec-blockBtn--action {\n margin-bottom: 10px; }\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品をを表示するテーブル枠です。\n\nex [カートページ テーブル部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartTable\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 15.1.2\n*/\n.ec-cartTable {\n display: table;\n border-top: 1px dotted #ccc;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-cartTable {\n border-top: none; } }\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品を表示するテーブルのヘッダです。\nスマホでは非表示となります。\n\nex [カートページ カートテーブルヘッダ部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartHeader\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.3\n*/\n.ec-cartHeader {\n display: none;\n width: 100%;\n background: #F4F3F0; }\n @media only screen and (min-width: 768px) {\n .ec-cartHeader {\n display: table-row; } }\n .ec-cartHeader .ec-cartHeader__label {\n display: table-cell;\n padding: 16px;\n text-align: center;\n background: #F4F3F0;\n overflow-x: hidden;\n font-weight: bold; }\n\n.ec-cartCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-cartCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-cartCompleteRole:after {\n clear: both; }\n .ec-cartCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-cartCompleteRole img {\n max-width: 100%; }\n .ec-cartCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-cartCompleteRole *,\n .ec-cartCompleteRole *::before,\n .ec-cartCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-cartCompleteRole img {\n width: 100%; }\n\n/*\nカート内商品\n\nカート内のアイテムを表示するテーブル行です。\nスマホでは非表示となります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRow\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.4\n*/\n.ec-cartRow {\n display: table-row; }\n .ec-cartRow .ec-cartRow__delColumn {\n border-bottom: 1px dotted #ccc;\n text-align: center;\n display: table-cell;\n width: 14%;\n vertical-align: middle; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__delColumn {\n width: 8.3333333%; } }\n .ec-cartRow .ec-cartRow__delColumn .ec-icon img {\n width: 1.5em;\n height: 1.5em; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__delColumn .ec-icon img {\n width: 1em;\n height: 1em; } }\n .ec-cartRow .ec-cartRow__contentColumn {\n border-bottom: 1px dotted #ccc;\n padding: 10px 0;\n display: table; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__contentColumn {\n display: table-cell; } }\n .ec-cartRow .ec-cartRow__img {\n display: table-cell;\n width: 40%;\n vertical-align: middle;\n padding-right: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__img {\n display: inline-block;\n min-width: 80px;\n max-width: 100px;\n padding-right: 0; } }\n .ec-cartRow .ec-cartRow__summary {\n display: table-cell;\n margin-left: 5px;\n font-weight: bold;\n vertical-align: middle;\n width: 46%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__summary {\n display: inline-block;\n margin-left: 20px;\n vertical-align: middle; } }\n .ec-cartRow .ec-cartRow__summary .ec-cartRow__name {\n margin-bottom: 5px; }\n .ec-cartRow .ec-cartRow__summary .ec-cartRow__sutbtotalSP {\n display: block;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__summary .ec-cartRow__sutbtotalSP {\n display: none; } }\n .ec-cartRow .ec-cartRow__amountColumn {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n vertical-align: middle;\n text-align: center;\n width: 20%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn {\n width: 16.66666667%; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amount {\n display: none;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amount {\n display: block; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP {\n display: block;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP {\n display: none; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpDown {\n display: flex;\n justify-content: center; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpDown {\n display: block; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpButton {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpButton .ec-cartRow__amountUpButton__icon img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButton, .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButton .ec-cartRow__amountDownButton__icon img, .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled .ec-cartRow__amountDownButton__icon img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled {\n cursor: default; }\n .ec-cartRow .ec-cartRow__subtotalColumn {\n display: none;\n border-bottom: 1px dotted #ccc;\n text-align: right;\n width: 16.66666667%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__subtotalColumn {\n display: table-cell; } }\n\n/*\nカート内商品(商品が1の場合)\n\n商品が1の場合はカート商品を減らす「-」ボタンの無効化状態になります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRowOnly\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.5\n*/\n.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled {\n cursor: default; }\n\n/*\nアラート\n\nカート内の商品に問題があることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartRole\n .ec-cartRole__cart\n +ec-alert-warning\n\nStyleguide 15.1.6\n*/\n.ec-alert-warning {\n width: 100%;\n padding: 10px;\n text-align: center;\n background: #F99;\n margin-bottom: 20px; }\n .ec-alert-warning .ec-alert-warning__icon {\n display: inline-block;\n margin-right: 1rem;\n width: 20px;\n height: 20px;\n color: #fff;\n fill: #fff;\n vertical-align: top; }\n .ec-alert-warning .ec-alert-warning__text {\n display: inline-block;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n position: relative; }\n\n/*\nアラート(空)\n\nカートが空であることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-off3Grid\n .ec-off3Grid__cell\n +ec-alert-warningEnpty\n\nStyleguide 15.1.7\n*/\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n注文内容確認\n\nカート内 注文内容確認に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/shopping)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderRole\n\nStyleguide 15.2\n*/\n.ec-orderRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n flex-direction: column;\n margin-top: 0; }\n .ec-orderRole:after {\n content: \" \";\n display: table; }\n .ec-orderRole:after {\n clear: both; }\n .ec-orderRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-orderRole img {\n max-width: 100%; }\n .ec-orderRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-orderRole *,\n .ec-orderRole *::before,\n .ec-orderRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-orderRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole {\n margin-top: 20px;\n flex-direction: row; } }\n .ec-orderRole .ec-inlineBtn {\n font-weight: normal; }\n .ec-orderRole .ec-orderRole__detail {\n padding: 0;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole .ec-orderRole__detail {\n padding: 0 16px;\n width: 66.66666%; } }\n .ec-orderRole .ec-orderRole__summary {\n width: 100%; }\n .ec-orderRole .ec-orderRole__summary .ec-inlineBtn {\n display: inline-block; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole .ec-orderRole__summary {\n width: 33.33333%;\n padding: 0 16px; }\n .ec-orderRole .ec-orderRole__summary .ec-inlineBtn {\n display: none; } }\n .ec-orderRole .ec-borderedList {\n margin-bottom: 20px;\n border-top: 1px dotted #ccc; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole .ec-borderedList {\n border-top: none; } }\n\n/*\n注文履歴詳細 オーダ情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderInfo\n\nStyleguide 15.2.1\n*/\n.ec-orderOrder {\n margin-bottom: 30px; }\n .ec-orderOrder .ec-orderOrder__items {\n border-bottom: 1px dotted #ccc;\n border-top: 1px dotted #ccc; }\n\n/*\n注文履歴詳細 お客様情報\n\nマイページ 注文詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAccount\n\nStyleguide 15.2.2\n*/\n.ec-orderAccount {\n margin-bottom: 30px; }\n .ec-orderAccount p {\n margin-bottom: 0; }\n .ec-orderAccount:after {\n content: \" \";\n display: table; }\n .ec-orderAccount:after {\n clear: both; }\n .ec-orderAccount .ec-orderAccount__change {\n display: inline-block;\n margin-left: 10px;\n float: right; }\n .ec-orderAccount .ec-orderAccount__account {\n margin-bottom: 16px; }\n\n/*\n注文詳細 配送情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 配送情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderDelivery\n\nStyleguide 15.2.3\n*/\n.ec-orderDelivery .ec-orderDelivery__title {\n padding: 16px 0 17px;\n font-weight: bold;\n font-size: 18px;\n position: relative; }\n\n.ec-orderDelivery .ec-orderDelivery__change {\n display: inline-block;\n position: absolute;\n right: 0;\n top: 0; }\n\n.ec-orderDelivery .ec-orderDelivery__items {\n border-bottom: 1px dotted #ccc;\n border-top: 1px dotted #ccc; }\n\n.ec-orderDelivery .ec-orderDelivery__address {\n margin: 10px 0 18px; }\n .ec-orderDelivery .ec-orderDelivery__address p {\n margin: 0; }\n\n/*\n注文履歴詳細 支払情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 支払情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderPayment\n .ec-rectHeading\n h2 お支払方法\n p 支払方法: 郵便振替\n\nStyleguide 15.2.4\n*/\n/*\n注文履歴詳細 お問い合わせ\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ お問い合わせ(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderConfirm\n .ec-rectHeading\n h2 お問い合わせ\n p 記載なし\n\nStyleguide 15.2.5\n*/\n.ec-orderConfirm {\n margin-bottom: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-orderConfirm {\n margin-bottom: 0; } }\n .ec-orderConfirm .ec-input textarea, .ec-orderConfirm .ec-halfInput textarea, .ec-orderConfirm .ec-numberInput textarea, .ec-orderConfirm .ec-zipInput textarea, .ec-orderConfirm .ec-telInput textarea, .ec-orderConfirm .ec-select textarea, .ec-orderConfirm .ec-birth textarea {\n height: 96px; }\n\n/*\nお届け先の複数指定\n\nお届け先の複数指定に関するコンポーネントを定義します。\n\nex [マイページ お届け先の複数指定](http://demo3.ec-cube.net/shopping/shipping_multiple)\n(商品購入画面 → 「お届け先を追加する」を押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAddAddress\n\nStyleguide 15.2.6\n*/\n.ec-AddAddress {\n padding: 0 10px; }\n @media only screen and (min-width: 768px) {\n .ec-AddAddress {\n margin: 0 10%; } }\n .ec-AddAddress .ec-AddAddress__info {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px; }\n .ec-AddAddress .ec-AddAddress__add {\n border-top: 1px solid #f4f4f4;\n padding-top: 20px;\n margin-bottom: 20px; }\n .ec-AddAddress .ec-AddAddress__item {\n display: table;\n padding: 16px;\n background: #f4f4f4;\n margin-bottom: 16px; }\n .ec-AddAddress .ec-AddAddress__itemThumb {\n display: table-cell;\n min-width: 160px;\n width: 20%; }\n .ec-AddAddress .ec-AddAddress__itemThumb img {\n width: 100%; }\n .ec-AddAddress .ec-AddAddress__itemtContent {\n display: table-cell;\n vertical-align: middle;\n padding-left: 16px;\n font-size: 16px; }\n .ec-AddAddress .ec-AddAddress__itemtTitle {\n font-weight: bold;\n margin-bottom: 10px; }\n .ec-AddAddress .ec-AddAddress__itemtSize {\n margin-bottom: 10px; }\n .ec-AddAddress .ec-AddAddress__select {\n margin-bottom: 5px; }\n .ec-AddAddress .ec-AddAddress__selectAddress {\n display: inline-block; }\n .ec-AddAddress .ec-AddAddress__selectAddress label {\n font-size: 16px;\n font-weight: normal; }\n .ec-AddAddress .ec-AddAddress__selectAddress select {\n min-width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-AddAddress .ec-AddAddress__selectAddress select {\n min-width: 350px; } }\n .ec-AddAddress .ec-AddAddress__selectNumber {\n display: inline-block;\n margin-left: 30px; }\n .ec-AddAddress .ec-AddAddress__selectNumber label {\n font-size: 16px;\n font-weight: normal; }\n .ec-AddAddress .ec-AddAddress__selectNumber input {\n display: inline-block;\n margin-left: 10px;\n width: 80px; }\n .ec-AddAddress .ec-AddAddress__actions .ec-blockBtn--action {\n margin-bottom: 8px; }\n .ec-AddAddress .ec-AddAddress__new {\n margin-bottom: 20px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n注文履歴一覧\n\nマイページ 注文履歴部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole\n\nStyleguide 16.1\n*/\n.ec-historyRole .ec-historyRole__contents {\n padding-top: 1em;\n padding-bottom: 16px;\n border-top: 1px solid #ccc;\n display: flex;\n flex-direction: column;\n color: #525263; }\n @media only screen and (min-width: 768px) {\n .ec-historyRole .ec-historyRole__contents {\n flex-direction: row; } }\n\n.ec-historyRole .ec-historyRole__header {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-historyRole .ec-historyRole__header {\n width: 33.3333%; } }\n\n.ec-historyRole .ec-historyRole__detail {\n border-top: 1px dotted #ccc;\n width: 100%; }\n .ec-historyRole .ec-historyRole__detail .ec-imageGrid:nth-of-type(1) {\n border-top: none; }\n .ec-historyRole .ec-historyRole__detail .ec-historyRole__detailTitle {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold; }\n .ec-historyRole .ec-historyRole__detail .ec-historyRole__detailPrice {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-historyRole .ec-historyRole__detail {\n width: 66.6666%;\n border-top: none; } }\n\n/*\n注文履歴一覧 規格\n\nマイページ 注文履歴内アイテムの規格を定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole-option\n\nStyleguide 16.1.1\n*/\n.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailOption {\n display: inline-block;\n margin-bottom: 8px;\n margin-right: .5rem;\n font-size: 1.6rem; }\n\n.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailOption::after {\n display: inline-block;\n padding-left: .5rem;\n content: \"/\";\n font-weight: bold; }\n\n/*\n注文履歴一覧ヘッダ\n\n注文履歴一覧で使用するヘッダのコンポーネントを定義します。\n\nex [マイページ 注文履歴一覧ヘッダ](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyHeader\np hofe\n\nStyleguide 16.1.2\n*/\n.ec-historyListHeader .ec-historyListHeader__date {\n font-weight: bold;\n font-size: 16px; }\n @media only screen and (min-width: 768px) {\n .ec-historyListHeader .ec-historyListHeader__date {\n font-weight: bold;\n font-size: 20px; } }\n\n.ec-historyListHeader .ec-historyListHeader__action {\n margin: 16px 0; }\n .ec-historyListHeader .ec-historyListHeader__action a {\n font-size: 12px;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-historyListHeader .ec-historyListHeader__action a {\n font-size: 14px; } }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n注文履歴詳細\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailRole\n\nStyleguide 16.2\n*/\n/*\n注文履歴詳細 メール履歴\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMail\n\nStyleguide 16.2.5\n*/\n.ec-orderMails .ec-orderMails__item {\n padding-bottom: 10px;\n border-bottom: 1px dotted #ccc; }\n\n.ec-orderMails .ec-orderMails__time {\n margin: 0; }\n\n.ec-orderMails .ec-orderMails__body {\n display: none; }\n\n/*\n注文履歴詳細 メール履歴個別\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴個別](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMailHistory\n\nStyleguide 16.2.6\n*/\n.ec-orderMail {\n padding-bottom: 10px;\n border-bottom: 1px dotted #ccc;\n margin-bottom: 16px; }\n .ec-orderMail .ec-orderMail__time {\n margin: 0; }\n .ec-orderMail .ec-orderMail__body {\n display: none; }\n .ec-orderMail .ec-orderMail__time {\n margin-bottom: 4px; }\n .ec-orderMail .ec-orderMail__link {\n margin-bottom: 4px; }\n .ec-orderMail .ec-orderMail__link a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n .ec-orderMail .ec-orderMail__link a:hover {\n color: #33A8D0; }\n .ec-orderMail .ec-orderMail__close a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n .ec-orderMail .ec-orderMail__close a:hover {\n color: #33A8D0; }\n\n/*\n住所一覧\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [マイページ内 お届け先編集](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\ninclude /assets/tmpl/elements/17.1.address.pug\n+ec-addressList\n+ec-addressRole\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 17.1\n\n*/\n.ec-addressRole .ec-addressRole__item {\n border-top: 1px dotted #ccc; }\n\n.ec-addressRole .ec-addressRole__actions {\n margin-top: 32px;\n padding-bottom: 20px;\n border-bottom: 1px dotted #ccc; }\n\n.ec-addressList .ec-addressList__item {\n display: table;\n width: 100%;\n position: relative;\n border-bottom: 1px dotted #ccc; }\n\n.ec-addressList .ec-addressList__remove {\n vertical-align: middle;\n padding: 16px;\n text-align: center; }\n .ec-addressList .ec-addressList__remove .ec-icon img {\n width: 1em;\n height: 1em; }\n\n.ec-addressList .ec-addressList__address {\n display: table-cell;\n vertical-align: middle;\n padding: 16px;\n margin-right: 4em;\n width: 80%; }\n\n.ec-addressList .ec-addressList__action {\n position: relative;\n vertical-align: middle;\n text-align: right;\n top: 27px;\n padding-right: 10px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nパスワードリセット\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [パスワードリセット画面](http://demo3.ec-cube.net/forgot)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/18.1.password.pug\n+ec-passwordRole\n\nStyleguide 18.1\n\n*/\n.ec-forgotRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-forgotRole:after {\n content: \" \";\n display: table; }\n .ec-forgotRole:after {\n clear: both; }\n .ec-forgotRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-forgotRole img {\n max-width: 100%; }\n .ec-forgotRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-forgotRole *,\n .ec-forgotRole *::before,\n .ec-forgotRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-forgotRole img {\n width: 100%; }\n .ec-forgotRole .ec-forgotRole__intro {\n font-size: 16px; }\n .ec-forgotRole .ec-forgotRole__form {\n margin-bottom: 16px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n会員登録\n\n新規会員登録 に関する Project コンポーネントを定義します。\n\nex [新規会員登録画面 会員登録](http://demo3.ec-cube.net/entry)\n\nMarkup:\ninclude /assets/tmpl/elements/19.1.register.pug\n+ec-registerRole\n\nStyleguide 19.1\n\n*/\n.ec-registerRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-registerRole:after {\n content: \" \";\n display: table; }\n .ec-registerRole:after {\n clear: both; }\n .ec-registerRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-registerRole img {\n max-width: 100%; }\n .ec-registerRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-registerRole *,\n .ec-registerRole *::before,\n .ec-registerRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-registerRole img {\n width: 100%; }\n .ec-registerRole .ec-registerRole__actions {\n padding-top: 20px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-registerRole .ec-registerRole__actions {\n text-align: left; } }\n .ec-registerRole .ec-registerRole__actions p {\n margin-bottom: 16px; }\n .ec-registerRole .ec-blockBtn--action {\n margin-bottom: 16px; }\n\n.ec-registerCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-registerCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-registerCompleteRole:after {\n clear: both; }\n .ec-registerCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-registerCompleteRole img {\n max-width: 100%; }\n .ec-registerCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-registerCompleteRole *,\n .ec-registerCompleteRole *::before,\n .ec-registerCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-registerCompleteRole img {\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nお問い合わせ\n\nお問い合わせ に関する Project コンポーネントを定義します。\n\nex [お問い合わせ](http://demo3.ec-cube.net/contact)\n\nMarkup:\ninclude /assets/tmpl/elements/19.2.contact.pug\n+ec-contactRole\n\nStyleguide 19.2\n\n*/\n.ec-contactRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactRole:after {\n content: \" \";\n display: table; }\n .ec-contactRole:after {\n clear: both; }\n .ec-contactRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactRole img {\n max-width: 100%; }\n .ec-contactRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactRole *,\n .ec-contactRole *::before,\n .ec-contactRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactRole img {\n width: 100%; }\n .ec-contactRole .ec-contactRole__actions {\n padding-top: 20px; }\n .ec-contactRole p {\n margin: 16px 0; }\n\n.ec-contactConfirmRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactConfirmRole:after {\n content: \" \";\n display: table; }\n .ec-contactConfirmRole:after {\n clear: both; }\n .ec-contactConfirmRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactConfirmRole img {\n max-width: 100%; }\n .ec-contactConfirmRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactConfirmRole *,\n .ec-contactConfirmRole *::before,\n .ec-contactConfirmRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactConfirmRole img {\n width: 100%; }\n .ec-contactConfirmRole .ec-contactConfirmRole__actions {\n padding-top: 20px; }\n .ec-contactConfirmRole .ec-blockBtn--action {\n margin-bottom: 16px; }\n\n.ec-contactCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-contactCompleteRole:after {\n clear: both; }\n .ec-contactCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactCompleteRole img {\n max-width: 100%; }\n .ec-contactCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactCompleteRole *,\n .ec-contactCompleteRole *::before,\n .ec-contactCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactCompleteRole img {\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nお客様情報の入力\n\nログインせずゲストとして商品を購入する際の、お客様情報の入力 に関する Project コンポーネントを定義します。\n\nex [カートSTEP2 お客様情報の入力(ゲスト購入)](http://demo3.ec-cube.net/shopping/nonmember)\n\nMarkup:\ninclude /assets/tmpl/elements/19.3.customer.pug\n+ec-customerRole\nhoge\n\nStyleguide 19.3\n\n*/\n.ec-customerRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-customerRole:after {\n content: \" \";\n display: table; }\n .ec-customerRole:after {\n clear: both; }\n .ec-customerRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-customerRole img {\n max-width: 100%; }\n .ec-customerRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-customerRole *,\n .ec-customerRole *::before,\n .ec-customerRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-customerRole img {\n width: 100%; }\n .ec-customerRole .ec-customerRole__actions {\n padding-top: 20px; }\n .ec-customerRole .ec-blockBtn--action {\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-customerRole .ec-blockBtn--action {\n margin-bottom: 16px; } }\n\n.ec-contactConfirmRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactConfirmRole:after {\n content: \" \";\n display: table; }\n .ec-contactConfirmRole:after {\n clear: both; }\n .ec-contactConfirmRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactConfirmRole img {\n max-width: 100%; }\n .ec-contactConfirmRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactConfirmRole *,\n .ec-contactConfirmRole *::before,\n .ec-contactConfirmRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactConfirmRole img {\n width: 100%; }\n .ec-contactConfirmRole .ec-contactConfirmRole__actions {\n padding-top: 20px; }\n .ec-contactConfirmRole .ec-blockBtn--action {\n margin-bottom: 16px; }\n\n.ec-contactCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-contactCompleteRole:after {\n clear: both; }\n .ec-contactCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactCompleteRole img {\n max-width: 100%; }\n .ec-contactCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactCompleteRole *,\n .ec-contactCompleteRole *::before,\n .ec-contactCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactCompleteRole img {\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n visibility: hidden; }\n 100% {\n opacity: 1;\n visibility: visible; } }\n\n@keyframes fadeOut {\n 0% {\n opacity: 1;\n visibility: visible; }\n 100% {\n opacity: 0;\n visibility: hidden; } }\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1; }\n\n/*\n404ページ\n\n404 エラー画面で使用するページコンポーネントです。\n\nex [404エラー画面](http://demo3.ec-cube.net/404)\n\nMarkup:\ninclude /assets/tmpl/elements/20.1.404.pug\n+ec-404Role\n\nStyleguide 20.1\n\n*/\n.ec-404Role {\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n height: 100vh;\n background-color: #f2f2f2;\n text-align: center;\n box-sizing: border-box; }\n .ec-404Role textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-404Role img {\n max-width: 100%; }\n .ec-404Role html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-404Role *,\n .ec-404Role *::before,\n .ec-404Role *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-404Role img {\n width: 100%; }\n .ec-404Role .ec-404Role__icon img {\n width: 1em;\n height: 1em; }\n .ec-404Role .ec-404Role__title {\n font-weight: bold;\n font-size: 25px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n退会手続き\n\n退会手続きで使用するページコンポーネントです。\n\nex [退会手続き](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawRole\n\nStyleguide 21.1\n\n*/\n.ec-withdrawRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n text-align: center;\n padding: 0 16px; }\n .ec-withdrawRole:after {\n content: \" \";\n display: table; }\n .ec-withdrawRole:after {\n clear: both; }\n .ec-withdrawRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-withdrawRole img {\n max-width: 100%; }\n .ec-withdrawRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-withdrawRole *,\n .ec-withdrawRole *::before,\n .ec-withdrawRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-withdrawRole img {\n width: 100%; }\n .ec-withdrawRole .ec-withdrawRole__title {\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px; }\n .ec-withdrawRole .ec-withdrawRole__description {\n margin-bottom: 32px;\n font-size: 16px; }\n .ec-withdrawRole .ec-icon img {\n width: 100px;\n height: 100px; }\n\n/*\n退会手続き実行確認\n\n退会手続き実行確認で使用するページコンポーネントです。\n\nex [退会手続き 退会手続きへボタン→押下](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawConfirm\n\nStyleguide 21.1.2\n\n*/\n.ec-withdrawConfirmRole .ec-withdrawConfirmRole__cancel {\n margin-bottom: 20px; }\n\n.ec-withdrawConfirmRole .ec-withdrawConfirmRole__title {\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px; }\n\n.ec-withdrawConfirmRole .ec-withdrawConfirmRole__description {\n margin-bottom: 32px;\n font-size: 16px; }\n\n.ec-withdrawConfirmRole .ec-icon img {\n width: 100px;\n height: 100px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n会員情報編集完了\n\n会員情報編集完了で使用するページコンポーネントです。\n\nex [会員情報編集完了](http://demo3.ec-cube.net/mypage/change_complete)\n\nMarkup:\ninclude /assets/tmpl/elements/22.1.editComplete.pug\n+ec-userEditCompleteRole\n\nStyleguide 22.1\n\n*/\n.ec-userEditCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n text-align: center;\n padding: 0 16px; }\n .ec-userEditCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-userEditCompleteRole:after {\n clear: both; }\n .ec-userEditCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-userEditCompleteRole img {\n max-width: 100%; }\n .ec-userEditCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-userEditCompleteRole *,\n .ec-userEditCompleteRole *::before,\n .ec-userEditCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-userEditCompleteRole img {\n width: 100%; }\n .ec-userEditCompleteRole .ec-userEditCompleteRole__title {\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px; }\n @media only screen and (min-width: 768px) {\n .ec-userEditCompleteRole .ec-userEditCompleteRole__title {\n font-size: 32px; } }\n .ec-userEditCompleteRole .ec-userEditCompleteRole__description {\n margin-bottom: 32px;\n font-size: 16px; }\n","@import \"/node_modules/normalize.css/normalize.css\";\n\nbody {\n font-family: Roboto, \"游ゴシック\", YuGothic, \"Yu Gothic\", \"ヒラギノ角ゴ ProN W3\", \"Hiragino Kaku Gothic ProN\", Arial, \"メイリオ\", Meiryo, sans-serif;\n color:#525263;\n transition: z-index 0ms 5.28455ms;\n background: #f6f6f6;\n margin: 0;\n}\na {\n text-decoration: none;\n}\n\npre {\n background-color: transparent;\n border: none;\n padding: 16px 0;\n}\np {\n -webkit-margin-before: 0;\n -webkit-margin-after: 0;\n}\n@import \"component/1.1.heading\";\n@import \"component/1.2.typo\";\n@import \"component/1.3.list\";\n@import \"component/2.1.buttonsize\";\n@import \"component/2.2.closebutton.scss\";\n@import \"component/2.3.otherbutton\";\n@import \"component/3.1.inputText\";\n@import \"component/3.2.inputMisc\";\n@import \"component/3.3.form\";\n@import \"component/4.1.icon\";\n@import \"component/5.1.grid\";\n@import \"component/5.2.layout\";\n@import \"component/6.1.login\";\n@import \"component/7.1.itembanner\";\n@import \"component/7.2.search\";\n@import \"component/7.3.cart\";\n@import \"component/8.1.info\";\n@import \"component/8.2.banner\";\n@import \"component/9.1.mypage\";\n@import \"project/11.1.role\";\n@import \"project/11.2.header\";\n@import \"project/11.3.footer\";\n@import \"project/12.1.slider\";\n@import \"project/12.2.eyecatch\";\n@import \"project/12.3.button\";\n@import \"project/12.4.heading\";\n@import \"project/12.5.topics\";\n@import \"project/12.6.newItem\";\n@import \"project/12.7.category\";\n@import \"project/12.8.news\";\n@import \"project/13.1.searchnav\";\n@import \"project/13.2.shelf\";\n@import \"project/13.3.pager\";\n@import \"project/13.4.cartModal\";\n@import \"project/14.1.product\";\n@import \"project/15.1.cart\";\n@import \"project/15.2.order\";\n@import \"project/16.1.history\";\n@import \"project/16.2.historyDetail\";\n@import \"project/17.1.address\";\n@import \"project/18.1.password\";\n@import \"project/19.1.register\";\n@import \"project/19.2.contact\";\n@import \"project/19.3.customer\";\n@import \"project/20.1.404\";\n@import \"project/21.1.withdraw\";\n@import \"project/22.1.editComplete\";\n","@import \"./variables\";\n@import \"./clearfix\";\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n\n\n\n//@mixin media_tablet(){\n// @media only screen and (min-width: 768px) {\n// @content;\n// }\n//}\n\n@mixin media_desktop(){\n @media only screen and (min-width: 768px) {\n @content;\n }\n}\n\n//@mixin media_desktop2(){\n// @media only screen and (min-width: 768px) {\n// @content;\n// }\n//}\n//\n//@mixin media_desktop3(){\n// @media only screen and (min-width: 768px) {\n// @content;\n// }\n//}\n\n\n@mixin container(){\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n @include clearfix;\n @include commonStyle();\n width: 100%;\n max-width: 1130px;\n\n //@media (min-width: $desktop) {\n // width: 720 + 30px;\n //}\n //@media (min-width: $desktop2) {\n // width: 940 + 30px;\n //}\n //@media (min-width: $desktop3) {\n // width: 1140 + 30px;\n //}\n}\n@mixin mypageContainer(){\n margin-right: auto;\n margin-left: auto;\n padding-left: 16px;\n padding-right: 16px;\n box-sizing: border-box;\n @include clearfix;\n @include commonStyle();\n width: 100%;\n //max-width: 1130px;\n @include media_desktop {\n padding-left: 26px;\n padding-right: 26px;\n }\n}\n\n@mixin commonStyle(){\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n\n //a {\n //color: #0092C4;\n //color: #A092C4;\n //text-decoration: none;\n //cursor: pointer;\n //}\n //a:hover,\n //a:focus,\n //a:active { color: #33A8D0;text-decoration: none; outline: none;}\n\n\n textarea { /* for chrome fontsize bug */\n font-family: sans-serif;\n }\n\n //ul, ol {\n // list-style: none;\n // margin: 0; padding: 0;\n //}\n //dl, dt, dd, li{\n // margin: 0; padding: 0;\n //}\n img {\n max-width: 100%;\n }\n\n html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n }\n\n *,\n *::before,\n *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit;\n }\n\n img{\n width: 100%;\n }\n\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/variables\";\n/*\n見出し\n\nページ内で見出しとして機能する要素のスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.1\n*/\n\n/*\n見出し\n\n商品紹介等で利用される、一般的な見出しのスタイルです。\n\nex [商品詳細ページ 商品見出し部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-headingTitle マトリョーシカ\n\nStyleguide 1.1.1\n*/\n.ec-headingTitle{\n margin: 0 0 8px;\n font-size: 32px;\n font-weight: normal;\n color: #525263;\n}\n\n/*\nページヘッダ\n\n各種ページで用いられるページヘッダのデザインです。\n\nex [利用規約ページ ページヘッダ部](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-pageHeader\n h1 利用規約\n\nStyleguide 1.1.2\n*/\n.ec-pageHeader h1{\n margin: 0 0 8px;\n border-bottom: 1px dotted #ccc;\n border-top: 1px solid #ccc;\n padding: 8px 0 12px;\n font-size: 16px;\n font-weight: bold;\n @include media_desktop {\n border-top: none;\n border-bottom: 1px solid #ccc;\n margin: 10px 16px 48px;\n padding: 8px;\n font-size: 32px;\n font-weight: bold;\n }\n}\n\n\n/*\nサブ見出し\n\n利用規約など、文字主体のページで用いられるサブ見出しです。\n\nex [利用規約ページ サブ見出し部分](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-heading 第1条 (会員)\n\nStyleguide 1.1.3\n*/\n\n.ec-heading{\n margin: 24px 0;\n}\n\n\n\n/*\nサブ見出し(太字)\n\n文字主体のページで用いられるサブ見出しの太字のスタイルです。\n\nex [プライバシーポリシー サブ見出し部分](http://demo3.ec-cube.net/help/privacy)\n\nMarkup:\n.ec-heading-bold 個人情報の定義\n\nStyleguide 1.1.4\n*/\n\n.ec-heading-bold {\n margin: 16px 0;\n font-size: 16px;\n font-weight: bold;\n @include media_desktop {\n font-size: 18px;\n }\n}\n\n/*\n背景付き見出し\n\nマイページ注文履歴等で用いられる背景付きの見出しです。\n\nex [ご注文履歴詳細 背景付き見出し部分](http://demo3.ec-cube.net/mypage/history/1063)\n\nMarkup:\n.ec-rectHeading\n h2 配送情報\n.ec-rectHeading\n h2 お支払について\n\nStyleguide 1.1.5\n*/\n.ec-rectHeading{\n h1, h2, h3,\n h4, h5, h6{\n background: $clrGray;\n padding: 8px 12px;\n font-size: 20px;\n font-weight: bold;\n }\n\n}\n\n\n/*\nメッセージ見出し\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用される見出しのスタイルです。\n\nex [注文完了 ログイン後、カートに商品を入れ注文完了まで行う](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\n\nStyleguide 1.1.6\n*/\n.ec-reportHeading{\n width: 100%;\n border-top: 1px dotted #ccc;\n margin: 20px 0 30px;\n padding: 0;\n text-align: center;\n font-size: 24px;\n font-weight: bold;\n @include media_desktop {\n border-top: 0;\n font-size: 32px;\n }\n h1, h2, h3,\n h4, h5, h6,p {\n font-weight: bold;\n font-size: 24px;\n @include media_desktop {\n font-size: 32px;\n }\n }\n}\n","\n// MediaQuery\n$tablet: 480px;\n$desktop: 768px;\n$desktop2: 992px;\n$desktop3: 1200px;\n\n$font-size: 16px;\n\n$clrRed: #DE5D50;\n$clrRich: #9a947e;\n$clrGray: #F3F3F3;\n$clrRightGray: #B8BEC4;\n$clrExtraGray: #636378;\n$clrDarkGray:#525263;\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/variables\";\n","@import \"../mixins/media\";\n/*\n文字装飾\n\n文字装飾をするためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.2\n*/\n\n/*\nテキストリンク\n\nテキストリンクのスタイルです。\n\nMarkup:\na(href=\"#\").ec-link さくらのクラウド\n\nStyleguide 1.2.1\n*/\n.ec-link {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n &:hover {\n color: #33A8D0;\n text-decoration: none;\n }\n}\n\n/*\nテキスト(太字)\n\nテキストを太くするためのスタイルです。\n\nMarkup:\np.ec-font-bold この季節にぴったりな商品をご用意しました\n\nStyleguide 1.2.2\n*/\n\n.ec-font-bold {\n font-weight: bold;\n}\n\n/*\nテキスト(グレー)\n\nテキストをグレーにするためのスタイルです。\n\nMarkup:\np.ec-color-grey 青色が美しい職人が仕上げた吹きガラス\n\nStyleguide 1.2.3\n*/\n\n.ec-color-grey {\n color: #9a947e;\n}\n\n/*\nテキスト(赤)\n\nテキストを赤にするためのスタイルです。\n\nMarkup:\np.ec-color-red ¥ 2,728 税込\np.ec-color-accent ¥ 2,728 税込\n\nStyleguide 1.2.4\n*/\n\n.ec-color-red {\n color: #DE5D50;\n}\n\n.ec-color-accent {\n color: #DE5D50;\n}\n\n/*\nフォントサイズ\n\nフォントサイズを指定するためのスタイルです。\n\nMarkup:\n.ec-font-size-1 さわやかな日差しが過ごしやすい季節\n.ec-font-size-2 さわやかな日差しが過ごしやすい季節\n.ec-font-size-3 さわやかな日差しが過ごしやすい季節\n.ec-font-size-4 さわやかな日差しが過ごしやすい季節\n.ec-font-size-5 さわやかな日差しが過ごしやすい季節\n.ec-font-size-6 さわやかな日差しが過ごしやすい季節\n\n\nStyleguide 1.2.5\n*/\n\n.ec-font-size-1 {\n font-size: 12px;\n}\n\n.ec-font-size-2 {\n font-size: 14px;\n}\n\n.ec-font-size-3 {\n font-size: 16px;\n}\n\n.ec-font-size-4 {\n font-size: 20px;\n}\n\n.ec-font-size-5 {\n font-size: 32px;\n}\n\n.ec-font-size-6 {\n font-size: 40px;\n}\n\n/*\nテキスト水平位置\n\nテキストをセンタリングするためのスタイルです。\n\nMarkup:\np.ec-text-ac さわやかな日差しが過ごしやすい季節\n\nStyleguide 1.2.6\n*/\n\n.ec-text-ac {\n text-align: center;\n}\n\n/*\n価格テキスト\n\n価格を表示するテキストです。\n\n価格文字にスペースを取るほか、税込み等の表示を小さくする効果もあります。\n\nspanを用いたインライン要素として利用します。\n\nMarkup:\ndiv(style=\"color:#DE5D50;font-size:28px\")\n span.ec-price\n span.ec-price__unit ¥\n span.ec-price__price 1,280\n span.ec-price__tax 税込\n\nStyleguide 1.2.7\n*/\n.ec-price {\n & &__unit {\n font-size: 18px;\n font-weight: bold;\n @include media_desktop{\n font-size: 1em;\n }\n }\n & &__price {\n display: inline-block;\n padding: 0 .3em;\n font-size: 18px;\n font-weight: bold;\n @include media_desktop{\n font-size: 1em;\n }\n }\n & &__tax {\n font-size: 12px;\n @include media_desktop{\n font-size: 0.57em;\n }\n }\n\n}\n\n/*\nテキストの位置\n\nテキストや、入れ子にしたインライン要素を\n「左揃え」「中央揃え」「右揃え」に設定することができます。\n\nMarkup:\nh3 左揃え\np.text-left\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 中央揃え\np.text-center\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 右揃え\np.text-right\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\n\nStyleguide 1.2.8\n*/\n.text-left {\n text-align: left;\n}\n\n.text-center {\n text-align: center;\n}\n\n.text-right {\n text-align: right;\n}\n\n/*\nメッセージテキスト\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用されるテキストのスタイルです。\n\nex [注文完了 (ログイン後、カートに商品を入れ注文完了まで行う)](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\np.ec-reportDescription\n | ただいま、ご注文の確認メールをお送りさせていただきました。\n br\n | 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n br\n | 今後ともご愛顧賜りますようよろしくお願い申し上げます。\n\n\nStyleguide 1.2.9\n*/\n.ec-reportDescription {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px;\n line-height: 1.4;\n}\n\n/*\nテキスト下部のスペース\n\nテキストの下に余白を追加することができます。 .ec-para-normalで16pxの余白をつけることができます。\n\nMarkup:\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n\nStyleguide 1.2.10\n*/\n.ec-para-normal {\n margin-bottom: 16px;\n}\n","@import \"../mixins/media\";\n\n/*\nリスト\n\nシンプルなリストを構成するためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.3\n*/\n\n/*\n水平定義リスト\n\nシンプルな定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 水平定義リスト部分](http://demo3.ec-cube.net/help/about)\n\nMarkup:\ndl.ec-definitions\n dt 店名\n dd EC-CUBE3 DEMO SHOP\ndl.ec-definitions\n dt 会社名\n dd EC-CUBE3\ndl.ec-definitions--soft\n dt 所在地\n dd 〒 550-0001\n\nStyleguide 1.3.1\n*/\n.ec-definitions {\n margin: 5px 0;\n display: block;\n & dt, dd {\n display: inline-block;\n margin: 0;\n }\n & dt {\n font-weight: bold;\n }\n}\n\n.ec-definitions--soft {\n @extend .ec-definitions;\n & dt {\n font-weight: normal;\n }\n}\n\n/*\n下線つき定義リスト\n\n線が添えられた定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 下線つき定義リスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt 店名\n dd EC-CUBE3 DEMO SHOP\n dl\n dt 会社名\n dd EC-CUBE3\n dl\n dt 所在地\n dd 〒550 - 0001\n\nStyleguide 1.3.2\n*/\n\n.ec-borderedDefs {\n width: 100%;\n border-top: 1px dotted #ccc;\n margin-bottom:16px;\n dl {\n display: flex;\n border-bottom: 1px dotted #ccc;\n margin: 0;\n padding: 10px 0 0;\n flex-wrap: wrap;\n @include media_desktop {\n flex-wrap: nowrap;\n padding: 15px 0 4px;\n }\n }\n dt, dd {\n padding: 0;\n }\n\n dt {\n font-weight: normal;\n width: 100%;\n padding-top: 0;\n @include media_desktop {\n padding-top: 14px;\n width: 30%;\n }\n }\n\n dd {\n padding: 0;\n width: 100%;\n line-height: 2.5;\n @include media_desktop {\n width: 70%;\n //padding: 18px 16px;\n line-height: 3;\n }\n }\n p {\n line-height: 1.4;\n }\n}\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0;\n\n dt, dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 0;\n @include media_desktop {\n padding: 16px 0;\n }\n }\n\n dt {\n width: 30%;\n }\n\n dd {\n padding: 0;\n @include media_desktop {\n padding: 16px;\n }\n }\n}\n\n/*\nボーダーリスト\n\n線が添えられたリストを表示します。\n\nex [当サイトについて ボーダーリスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\nul.ec-borderedList\n li: p lorem\n li: p lorem\n li: p lorem\n\n\nStyleguide 1.3.3\n*/\n\n.ec-borderedList {\n width: 100%;\n border-top: 0;\n list-style: none;\n padding: 0;\n @include media_desktop {\n border-top: 1px dotted #ccc;\n }\n li {\n border-bottom: 1px dotted #ccc;\n }\n}\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0;\n\n dt, dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 16px 0;\n }\n\n dt {\n width: 30%;\n }\n\n dd {\n padding: 16px;\n }\n}\n","@import \"../mixins/btn\";\n/*\nボタンサイズ\n\nボタンサイズを変更するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.1\n*/\n\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nex [トップページ ボタン部分](http://demo3.ec-cube.net/)\n\nMarkup:\n.ec-inlineBtn 住所検索\n.ec-inlineBtn--primary もっと見る\n.ec-inlineBtn--action カートに入れる\n.ec-inlineBtn--cancel キャンセル\n\nStyleguide 2.1.1\n*/\n.ec-inlineBtn{\n @include btn-default;\n}\n.ec-inlineBtn--primary{\n @include btn-primary\n}\n.ec-inlineBtn--action{\n @include btn-action\n}\n.ec-inlineBtn--cancel{\n @include btn-cancel\n}\n\n/*\nブロックボタン(全幅)\n\nボタンサイズは em で指定するため、テキストサイズの変更でボタンサイズを変更できます。\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\np: .ec-blockBtn 住所検索\np: .ec-blockBtn--primary もっと見る\np: .ec-blockBtn--action カートに入れる\np: .ec-blockBtn--cancel キャンセル\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn{\n @include blockBtn-default;\n}\n.ec-blockBtn--primary{\n @include blockBtn-primary\n}\n.ec-blockBtn--action{\n @include blockBtn-action\n}\n.ec-blockBtn--cancel{\n @include blockBtn-cancel\n}\n","@import \"../mixins/variables\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/buttons\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/opacity\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/vendor-prefixes\";\n\n$padding-base-vertical: 6px !default;\n\n\n$btn-primary-bg: #5CB1B1;\n$btn-primary-color: #fff;\n$btn-action-bg: #DE5D50;\n$btn-action-color: #fff;\n$btn-cancel-bg: #525263;\n$btn-cancel-color: #fff;\n$btn-default-bg: #F5F7F8;\n$btn-default-color: #525263;\n\n$btn-border-radius-base: 0px;\n\n\n@mixin _btn($color, $background, $border){\n display: inline-block;\n margin-bottom: 0; // For input.btn\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n white-space: nowrap;\n @include button-size($padding-base-vertical, $padding-base-horizontal, $font-size-base, $line-height-base, $btn-border-radius-base);\n @include user-select(none);\n padding: 10px 16px;\n text-decoration: none;\n\n &,\n &:active,\n &.active {\n &:focus,\n &.focus {\n @include tab-focus;\n }\n }\n\n &:hover,\n &:focus,\n &.focus {\n color: $btn-default-color;\n text-decoration: none;\n }\n\n &:active,\n &.active {\n outline: 0;\n background-image: none;\n @include box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n cursor: $cursor-disabled;\n @include opacity(.65);\n @include box-shadow(none);\n }\n\n @include button-variant($color, $background, $border);\n // [converter] extracted a& to a.btn\n\n .ec-icon img {\n width: 1em;\n vertical-align: text-bottom;\n }\n}\n\n@mixin btn-default(){\n @include _btn($btn-default-color, $btn-default-bg, $btn-default-border)\n}\n@mixin btn-action(){\n @include _btn($btn-action-color, $btn-action-bg, $btn-action-bg)\n}\n@mixin btn-cancel(){\n @include _btn($btn-cancel-color, $btn-cancel-bg, $btn-cancel-bg)\n}\n@mixin btn-primary(){\n @include _btn($btn-primary-color, $btn-primary-bg, $btn-primary-bg)\n}\n\n@mixin blockBtn-default(){\n @include _btn($btn-default-color, $btn-default-bg, $btn-default-border);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n@mixin blockBtn-action(){\n @include _btn($btn-action-color, $btn-action-bg, $btn-action-bg);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n@mixin blockBtn-cancel(){\n @include _btn($btn-cancel-color, $btn-cancel-bg, $btn-cancel-bg);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n@mixin blockBtn-primary(){\n @include _btn($btn-primary-color, $btn-primary-bg, $btn-primary-bg);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n\n// User select\n// For selecting text on the page\n\n@mixin user-select($select) {\n -webkit-user-select: $select;\n -moz-user-select: $select;\n -ms-user-select: $select; // IE10+\n user-select: $select;\n}\n\n\n\n\n@mixin linkBtn{\n &.disabled,\n fieldset[disabled] & {\n pointer-events: none; // Future-proof disabling of clicks on `` elements\n }\n}\n","// Button variants\n//\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for all buttons\n\n@mixin button-variant($color, $background, $border) {\n color: $color;\n background-color: $background;\n border-color: $border;\n\n &:focus,\n &.focus {\n color: $color;\n background-color: darken($background, 10%);\n border-color: darken($border, 25%);\n }\n &:hover {\n color: $color;\n background-color: darken($background, 10%);\n border-color: darken($border, 12%);\n }\n &:active,\n &.active,\n .open > &.dropdown-toggle {\n color: $color;\n background-color: darken($background, 10%);\n border-color: darken($border, 12%);\n\n &:hover,\n &:focus,\n &.focus {\n color: $color;\n background-color: darken($background, 17%);\n border-color: darken($border, 25%);\n }\n }\n &:active,\n &.active,\n .open > &.dropdown-toggle {\n background-image: none;\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus,\n &.focus {\n background-color: $background;\n border-color: $border;\n }\n }\n\n .badge {\n color: $background;\n background-color: $color;\n }\n}\n\n// Button sizes\n@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {\n padding: $padding-vertical $padding-horizontal;\n font-size: $font-size;\n line-height: $line-height;\n border-radius: $border-radius;\n}\n","$bootstrap-sass-asset-helper: false !default;\n//\n// Variables\n// --------------------------------------------------\n\n\n//== Colors\n//\n//## Gray and brand colors for use across Bootstrap.\n\n$gray-base: #000 !default;\n$gray-darker: lighten($gray-base, 13.5%) !default; // #222\n$gray-dark: lighten($gray-base, 20%) !default; // #333\n$gray: lighten($gray-base, 33.5%) !default; // #555\n$gray-light: lighten($gray-base, 46.7%) !default; // #777\n$gray-lighter: lighten($gray-base, 93.5%) !default; // #eee\n\n$brand-primary: darken(#428bca, 6.5%) !default; // #337ab7\n$brand-success: #5cb85c !default;\n$brand-info: #5bc0de !default;\n$brand-warning: #f0ad4e !default;\n$brand-danger: #d9534f !default;\n\n\n//== Scaffolding\n//\n//## Settings for some of the most global styles.\n\n//** Background color for ``.\n$body-bg: #fff !default;\n//** Global text color on ``.\n$text-color: $gray-dark !default;\n\n//** Global textual link color.\n$link-color: $brand-primary !default;\n//** Link hover color set via `darken()` function.\n$link-hover-color: darken($link-color, 15%) !default;\n//** Link hover decoration.\n$link-hover-decoration: underline !default;\n\n\n//== Typography\n//\n//## Font, line-height, and color for body text, headings, and more.\n\n$font-family-sans-serif: \"Helvetica Neue\", Helvetica, Arial, sans-serif !default;\n$font-family-serif: Georgia, \"Times New Roman\", Times, serif !default;\n//** Default monospace fonts for ``, ``, and `
`.\n$font-family-monospace:   Menlo, Monaco, Consolas, \"Courier New\", monospace !default;\n$font-family-base:        $font-family-sans-serif !default;\n\n$font-size-base:          14px !default;\n$font-size-large:         ceil(($font-size-base * 1.25)) !default; // ~18px\n$font-size-small:         ceil(($font-size-base * 0.85)) !default; // ~12px\n\n$font-size-h1:            floor(($font-size-base * 2.6)) !default; // ~36px\n$font-size-h2:            floor(($font-size-base * 2.15)) !default; // ~30px\n$font-size-h3:            ceil(($font-size-base * 1.7)) !default; // ~24px\n$font-size-h4:            ceil(($font-size-base * 1.25)) !default; // ~18px\n$font-size-h5:            $font-size-base !default;\n$font-size-h6:            ceil(($font-size-base * 0.85)) !default; // ~12px\n\n//** Unit-less `line-height` for use in components like buttons.\n$line-height-base:        1.428571429 !default; // 20/14\n//** Computed \"line-height\" (`font-size` * `line-height`) for use with `margin`, `padding`, etc.\n$line-height-computed:    floor(($font-size-base * $line-height-base)) !default; // ~20px\n\n//** By default, this inherits from the ``.\n$headings-font-family:    inherit !default;\n$headings-font-weight:    500 !default;\n$headings-line-height:    1.1 !default;\n$headings-color:          inherit !default;\n\n\n//== Iconography\n//\n//## Specify custom location and filename of the included Glyphicons icon font. Useful for those including Bootstrap via Bower.\n\n//** Load fonts from this directory.\n\n// [converter] If $bootstrap-sass-asset-helper if used, provide path relative to the assets load path.\n// [converter] This is because some asset helpers, such as Sprockets, do not work with file-relative paths.\n$icon-font-path: if($bootstrap-sass-asset-helper, \"bootstrap/\", \"../fonts/bootstrap/\") !default;\n\n//** File name for all font files.\n$icon-font-name:          \"glyphicons-halflings-regular\" !default;\n//** Element ID within SVG icon file.\n$icon-font-svg-id:        \"glyphicons_halflingsregular\" !default;\n\n\n//== Components\n//\n//## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start).\n\n$padding-base-vertical:     6px !default;\n$padding-base-horizontal:   12px !default;\n\n$padding-large-vertical:    10px !default;\n$padding-large-horizontal:  16px !default;\n\n$padding-small-vertical:    5px !default;\n$padding-small-horizontal:  10px !default;\n\n$padding-xs-vertical:       1px !default;\n$padding-xs-horizontal:     5px !default;\n\n$line-height-large:         1.3333333 !default; // extra decimals for Win 8.1 Chrome\n$line-height-small:         1.5 !default;\n\n$border-radius-base:        4px !default;\n$border-radius-large:       6px !default;\n$border-radius-small:       3px !default;\n\n//** Global color for active items (e.g., navs or dropdowns).\n$component-active-color:    #fff !default;\n//** Global background color for active items (e.g., navs or dropdowns).\n$component-active-bg:       $brand-primary !default;\n\n//** Width of the `border` for generating carets that indicate dropdowns.\n$caret-width-base:          4px !default;\n//** Carets increase slightly in size for larger components.\n$caret-width-large:         5px !default;\n\n\n//== Tables\n//\n//## Customizes the `.table` component with basic values, each used across all table variations.\n\n//** Padding for ``s and ``s.\n$table-cell-padding:            8px !default;\n//** Padding for cells in `.table-condensed`.\n$table-condensed-cell-padding:  5px !default;\n\n//** Default background color used for all tables.\n$table-bg:                      transparent !default;\n//** Background color used for `.table-striped`.\n$table-bg-accent:               #f9f9f9 !default;\n//** Background color used for `.table-hover`.\n$table-bg-hover:                #f5f5f5 !default;\n$table-bg-active:               $table-bg-hover !default;\n\n//** Border color for table and cell borders.\n$table-border-color:            #ddd !default;\n\n\n//== Buttons\n//\n//## For each of Bootstrap's buttons, define text, background and border color.\n\n$btn-font-weight:                normal !default;\n\n$btn-default-color:              #333 !default;\n$btn-default-bg:                 #fff !default;\n$btn-default-border:             #ccc !default;\n\n$btn-primary-color:              #fff !default;\n$btn-primary-bg:                 $brand-primary !default;\n$btn-primary-border:             darken($btn-primary-bg, 5%) !default;\n\n$btn-success-color:              #fff !default;\n$btn-success-bg:                 $brand-success !default;\n$btn-success-border:             darken($btn-success-bg, 5%) !default;\n\n$btn-info-color:                 #fff !default;\n$btn-info-bg:                    $brand-info !default;\n$btn-info-border:                darken($btn-info-bg, 5%) !default;\n\n$btn-warning-color:              #fff !default;\n$btn-warning-bg:                 $brand-warning !default;\n$btn-warning-border:             darken($btn-warning-bg, 5%) !default;\n\n$btn-danger-color:               #fff !default;\n$btn-danger-bg:                  $brand-danger !default;\n$btn-danger-border:              darken($btn-danger-bg, 5%) !default;\n\n$btn-link-disabled-color:        $gray-light !default;\n\n// Allows for customizing button radius independently from global border radius\n$btn-border-radius-base:         $border-radius-base !default;\n$btn-border-radius-large:        $border-radius-large !default;\n$btn-border-radius-small:        $border-radius-small !default;\n\n\n//== Forms\n//\n//##\n\n//** `` background color\n$input-bg:                       #fff !default;\n//** `` background color\n$input-bg-disabled:              $gray-lighter !default;\n\n//** Text color for ``s\n$input-color:                    $gray !default;\n//** `` border color\n$input-border:                   #ccc !default;\n\n// TODO: Rename `$input-border-radius` to `$input-border-radius-base` in v4\n//** Default `.form-control` border radius\n// This has no effect on ``s in CSS.\n$input-border-radius:            $border-radius-base !default;\n//** Large `.form-control` border radius\n$input-border-radius-large:      $border-radius-large !default;\n//** Small `.form-control` border radius\n$input-border-radius-small:      $border-radius-small !default;\n\n//** Border color for inputs on focus\n$input-border-focus:             #66afe9 !default;\n\n//** Placeholder text color\n$input-color-placeholder:        #999 !default;\n\n//** Default `.form-control` height\n$input-height-base:              ($line-height-computed + ($padding-base-vertical * 2) + 2) !default;\n//** Large `.form-control` height\n$input-height-large:             (ceil($font-size-large * $line-height-large) + ($padding-large-vertical * 2) + 2) !default;\n//** Small `.form-control` height\n$input-height-small:             (floor($font-size-small * $line-height-small) + ($padding-small-vertical * 2) + 2) !default;\n\n//** `.form-group` margin\n$form-group-margin-bottom:       15px !default;\n\n$legend-color:                   $gray-dark !default;\n$legend-border-color:            #e5e5e5 !default;\n\n//** Background color for textual input addons\n$input-group-addon-bg:           $gray-lighter !default;\n//** Border color for textual input addons\n$input-group-addon-border-color: $input-border !default;\n\n//** Disabled cursor for form controls and buttons.\n$cursor-disabled:                not-allowed !default;\n\n\n//== Dropdowns\n//\n//## Dropdown menu container and contents.\n\n//** Background for the dropdown menu.\n$dropdown-bg:                    #fff !default;\n//** Dropdown menu `border-color`.\n$dropdown-border:                rgba(0,0,0,.15) !default;\n//** Dropdown menu `border-color` **for IE8**.\n$dropdown-fallback-border:       #ccc !default;\n//** Divider color for between dropdown items.\n$dropdown-divider-bg:            #e5e5e5 !default;\n\n//** Dropdown link text color.\n$dropdown-link-color:            $gray-dark !default;\n//** Hover color for dropdown links.\n$dropdown-link-hover-color:      darken($gray-dark, 5%) !default;\n//** Hover background for dropdown links.\n$dropdown-link-hover-bg:         #f5f5f5 !default;\n\n//** Active dropdown menu item text color.\n$dropdown-link-active-color:     $component-active-color !default;\n//** Active dropdown menu item background color.\n$dropdown-link-active-bg:        $component-active-bg !default;\n\n//** Disabled dropdown menu item background color.\n$dropdown-link-disabled-color:   $gray-light !default;\n\n//** Text color for headers within dropdown menus.\n$dropdown-header-color:          $gray-light !default;\n\n//** Deprecated `$dropdown-caret-color` as of v3.1.0\n$dropdown-caret-color:           #000 !default;\n\n\n//-- Z-index master list\n//\n// Warning: Avoid customizing these values. They're used for a bird's eye view\n// of components dependent on the z-axis and are designed to all work together.\n//\n// Note: These variables are not generated into the Customizer.\n\n$zindex-navbar:            1000 !default;\n$zindex-dropdown:          1000 !default;\n$zindex-popover:           1060 !default;\n$zindex-tooltip:           1070 !default;\n$zindex-navbar-fixed:      1030 !default;\n$zindex-modal-background:  1040 !default;\n$zindex-modal:             1050 !default;\n\n\n//== Media queries breakpoints\n//\n//## Define the breakpoints at which your layout will change, adapting to different screen sizes.\n\n// Extra small screen / phone\n//** Deprecated `$screen-xs` as of v3.0.1\n$screen-xs:                  480px !default;\n//** Deprecated `$screen-xs-min` as of v3.2.0\n$screen-xs-min:              $screen-xs !default;\n//** Deprecated `$screen-phone` as of v3.0.1\n$screen-phone:               $screen-xs-min !default;\n\n// Small screen / tablet\n//** Deprecated `$screen-sm` as of v3.0.1\n$screen-sm:                  768px !default;\n$screen-sm-min:              $screen-sm !default;\n//** Deprecated `$screen-tablet` as of v3.0.1\n$screen-tablet:              $screen-sm-min !default;\n\n// Medium screen / desktop\n//** Deprecated `$screen-md` as of v3.0.1\n$screen-md:                  992px !default;\n$screen-md-min:              $screen-md !default;\n//** Deprecated `$screen-desktop` as of v3.0.1\n$screen-desktop:             $screen-md-min !default;\n\n// Large screen / wide desktop\n//** Deprecated `$screen-lg` as of v3.0.1\n$screen-lg:                  1200px !default;\n$screen-lg-min:              $screen-lg !default;\n//** Deprecated `$screen-lg-desktop` as of v3.0.1\n$screen-lg-desktop:          $screen-lg-min !default;\n\n// So media queries don't overlap when required, provide a maximum\n$screen-xs-max:              ($screen-sm-min - 1) !default;\n$screen-sm-max:              ($screen-md-min - 1) !default;\n$screen-md-max:              ($screen-lg-min - 1) !default;\n\n\n//== Grid system\n//\n//## Define your custom responsive grid.\n\n//** Number of columns in the grid.\n$grid-columns:              12 !default;\n//** Padding between columns. Gets divided in half for the left and right.\n$grid-gutter-width:         30px !default;\n// Navbar collapse\n//** Point at which the navbar becomes uncollapsed.\n$grid-float-breakpoint:     $screen-sm-min !default;\n//** Point at which the navbar begins collapsing.\n$grid-float-breakpoint-max: ($grid-float-breakpoint - 1) !default;\n\n\n//== Container sizes\n//\n//## Define the maximum width of `.container` for different screen sizes.\n\n// Small screen / tablet\n$container-tablet:             (720px + $grid-gutter-width) !default;\n//** For `$screen-sm-min` and up.\n$container-sm:                 $container-tablet !default;\n\n// Medium screen / desktop\n$container-desktop:            (940px + $grid-gutter-width) !default;\n//** For `$screen-md-min` and up.\n$container-md:                 $container-desktop !default;\n\n// Large screen / wide desktop\n$container-large-desktop:      (1140px + $grid-gutter-width) !default;\n//** For `$screen-lg-min` and up.\n$container-lg:                 $container-large-desktop !default;\n\n\n//== Navbar\n//\n//##\n\n// Basics of a navbar\n$navbar-height:                    50px !default;\n$navbar-margin-bottom:             $line-height-computed !default;\n$navbar-border-radius:             $border-radius-base !default;\n$navbar-padding-horizontal:        floor(($grid-gutter-width / 2)) !default;\n$navbar-padding-vertical:          (($navbar-height - $line-height-computed) / 2) !default;\n$navbar-collapse-max-height:       340px !default;\n\n$navbar-default-color:             #777 !default;\n$navbar-default-bg:                #f8f8f8 !default;\n$navbar-default-border:            darken($navbar-default-bg, 6.5%) !default;\n\n// Navbar links\n$navbar-default-link-color:                #777 !default;\n$navbar-default-link-hover-color:          #333 !default;\n$navbar-default-link-hover-bg:             transparent !default;\n$navbar-default-link-active-color:         #555 !default;\n$navbar-default-link-active-bg:            darken($navbar-default-bg, 6.5%) !default;\n$navbar-default-link-disabled-color:       #ccc !default;\n$navbar-default-link-disabled-bg:          transparent !default;\n\n// Navbar brand label\n$navbar-default-brand-color:               $navbar-default-link-color !default;\n$navbar-default-brand-hover-color:         darken($navbar-default-brand-color, 10%) !default;\n$navbar-default-brand-hover-bg:            transparent !default;\n\n// Navbar toggle\n$navbar-default-toggle-hover-bg:           #ddd !default;\n$navbar-default-toggle-icon-bar-bg:        #888 !default;\n$navbar-default-toggle-border-color:       #ddd !default;\n\n\n//=== Inverted navbar\n// Reset inverted navbar basics\n$navbar-inverse-color:                      lighten($gray-light, 15%) !default;\n$navbar-inverse-bg:                         #222 !default;\n$navbar-inverse-border:                     darken($navbar-inverse-bg, 10%) !default;\n\n// Inverted navbar links\n$navbar-inverse-link-color:                 lighten($gray-light, 15%) !default;\n$navbar-inverse-link-hover-color:           #fff !default;\n$navbar-inverse-link-hover-bg:              transparent !default;\n$navbar-inverse-link-active-color:          $navbar-inverse-link-hover-color !default;\n$navbar-inverse-link-active-bg:             darken($navbar-inverse-bg, 10%) !default;\n$navbar-inverse-link-disabled-color:        #444 !default;\n$navbar-inverse-link-disabled-bg:           transparent !default;\n\n// Inverted navbar brand label\n$navbar-inverse-brand-color:                $navbar-inverse-link-color !default;\n$navbar-inverse-brand-hover-color:          #fff !default;\n$navbar-inverse-brand-hover-bg:             transparent !default;\n\n// Inverted navbar toggle\n$navbar-inverse-toggle-hover-bg:            #333 !default;\n$navbar-inverse-toggle-icon-bar-bg:         #fff !default;\n$navbar-inverse-toggle-border-color:        #333 !default;\n\n\n//== Navs\n//\n//##\n\n//=== Shared nav styles\n$nav-link-padding:                          10px 15px !default;\n$nav-link-hover-bg:                         $gray-lighter !default;\n\n$nav-disabled-link-color:                   $gray-light !default;\n$nav-disabled-link-hover-color:             $gray-light !default;\n\n//== Tabs\n$nav-tabs-border-color:                     #ddd !default;\n\n$nav-tabs-link-hover-border-color:          $gray-lighter !default;\n\n$nav-tabs-active-link-hover-bg:             $body-bg !default;\n$nav-tabs-active-link-hover-color:          $gray !default;\n$nav-tabs-active-link-hover-border-color:   #ddd !default;\n\n$nav-tabs-justified-link-border-color:            #ddd !default;\n$nav-tabs-justified-active-link-border-color:     $body-bg !default;\n\n//== Pills\n$nav-pills-border-radius:                   $border-radius-base !default;\n$nav-pills-active-link-hover-bg:            $component-active-bg !default;\n$nav-pills-active-link-hover-color:         $component-active-color !default;\n\n\n//== Pagination\n//\n//##\n\n$pagination-color:                     $link-color !default;\n$pagination-bg:                        #fff !default;\n$pagination-border:                    #ddd !default;\n\n$pagination-hover-color:               $link-hover-color !default;\n$pagination-hover-bg:                  $gray-lighter !default;\n$pagination-hover-border:              #ddd !default;\n\n$pagination-active-color:              #fff !default;\n$pagination-active-bg:                 $brand-primary !default;\n$pagination-active-border:             $brand-primary !default;\n\n$pagination-disabled-color:            $gray-light !default;\n$pagination-disabled-bg:               #fff !default;\n$pagination-disabled-border:           #ddd !default;\n\n\n//== Pager\n//\n//##\n\n$pager-bg:                             $pagination-bg !default;\n$pager-border:                         $pagination-border !default;\n$pager-border-radius:                  15px !default;\n\n$pager-hover-bg:                       $pagination-hover-bg !default;\n\n$pager-active-bg:                      $pagination-active-bg !default;\n$pager-active-color:                   $pagination-active-color !default;\n\n$pager-disabled-color:                 $pagination-disabled-color !default;\n\n\n//== Jumbotron\n//\n//##\n\n$jumbotron-padding:              30px !default;\n$jumbotron-color:                inherit !default;\n$jumbotron-bg:                   $gray-lighter !default;\n$jumbotron-heading-color:        inherit !default;\n$jumbotron-font-size:            ceil(($font-size-base * 1.5)) !default;\n$jumbotron-heading-font-size:    ceil(($font-size-base * 4.5)) !default;\n\n\n//== Form states and alerts\n//\n//## Define colors for form feedback states and, by default, alerts.\n\n$state-success-text:             #3c763d !default;\n$state-success-bg:               #dff0d8 !default;\n$state-success-border:           darken(adjust-hue($state-success-bg, -10), 5%) !default;\n\n$state-info-text:                #31708f !default;\n$state-info-bg:                  #d9edf7 !default;\n$state-info-border:              darken(adjust-hue($state-info-bg, -10), 7%) !default;\n\n$state-warning-text:             #8a6d3b !default;\n$state-warning-bg:               #fcf8e3 !default;\n$state-warning-border:           darken(adjust-hue($state-warning-bg, -10), 5%) !default;\n\n$state-danger-text:              #a94442 !default;\n$state-danger-bg:                #f2dede !default;\n$state-danger-border:            darken(adjust-hue($state-danger-bg, -10), 5%) !default;\n\n\n//== Tooltips\n//\n//##\n\n//** Tooltip max width\n$tooltip-max-width:           200px !default;\n//** Tooltip text color\n$tooltip-color:               #fff !default;\n//** Tooltip background color\n$tooltip-bg:                  #000 !default;\n$tooltip-opacity:             .9 !default;\n\n//** Tooltip arrow width\n$tooltip-arrow-width:         5px !default;\n//** Tooltip arrow color\n$tooltip-arrow-color:         $tooltip-bg !default;\n\n\n//== Popovers\n//\n//##\n\n//** Popover body background color\n$popover-bg:                          #fff !default;\n//** Popover maximum width\n$popover-max-width:                   276px !default;\n//** Popover border color\n$popover-border-color:                rgba(0,0,0,.2) !default;\n//** Popover fallback border color\n$popover-fallback-border-color:       #ccc !default;\n\n//** Popover title background color\n$popover-title-bg:                    darken($popover-bg, 3%) !default;\n\n//** Popover arrow width\n$popover-arrow-width:                 10px !default;\n//** Popover arrow color\n$popover-arrow-color:                 $popover-bg !default;\n\n//** Popover outer arrow width\n$popover-arrow-outer-width:           ($popover-arrow-width + 1) !default;\n//** Popover outer arrow color\n$popover-arrow-outer-color:           fade_in($popover-border-color, 0.05) !default;\n//** Popover outer arrow fallback color\n$popover-arrow-outer-fallback-color:  darken($popover-fallback-border-color, 20%) !default;\n\n\n//== Labels\n//\n//##\n\n//** Default label background color\n$label-default-bg:            $gray-light !default;\n//** Primary label background color\n$label-primary-bg:            $brand-primary !default;\n//** Success label background color\n$label-success-bg:            $brand-success !default;\n//** Info label background color\n$label-info-bg:               $brand-info !default;\n//** Warning label background color\n$label-warning-bg:            $brand-warning !default;\n//** Danger label background color\n$label-danger-bg:             $brand-danger !default;\n\n//** Default label text color\n$label-color:                 #fff !default;\n//** Default text color of a linked label\n$label-link-hover-color:      #fff !default;\n\n\n//== Modals\n//\n//##\n\n//** Padding applied to the modal body\n$modal-inner-padding:         15px !default;\n\n//** Padding applied to the modal title\n$modal-title-padding:         15px !default;\n//** Modal title line-height\n$modal-title-line-height:     $line-height-base !default;\n\n//** Background color of modal content area\n$modal-content-bg:                             #fff !default;\n//** Modal content border color\n$modal-content-border-color:                   rgba(0,0,0,.2) !default;\n//** Modal content border color **for IE8**\n$modal-content-fallback-border-color:          #999 !default;\n\n//** Modal backdrop background color\n$modal-backdrop-bg:           #000 !default;\n//** Modal backdrop opacity\n$modal-backdrop-opacity:      .5 !default;\n//** Modal header border color\n$modal-header-border-color:   #e5e5e5 !default;\n//** Modal footer border color\n$modal-footer-border-color:   $modal-header-border-color !default;\n\n$modal-lg:                    900px !default;\n$modal-md:                    600px !default;\n$modal-sm:                    300px !default;\n\n\n//== Alerts\n//\n//## Define alert colors, border radius, and padding.\n\n$alert-padding:               15px !default;\n$alert-border-radius:         $border-radius-base !default;\n$alert-link-font-weight:      bold !default;\n\n$alert-success-bg:            $state-success-bg !default;\n$alert-success-text:          $state-success-text !default;\n$alert-success-border:        $state-success-border !default;\n\n$alert-info-bg:               $state-info-bg !default;\n$alert-info-text:             $state-info-text !default;\n$alert-info-border:           $state-info-border !default;\n\n$alert-warning-bg:            $state-warning-bg !default;\n$alert-warning-text:          $state-warning-text !default;\n$alert-warning-border:        $state-warning-border !default;\n\n$alert-danger-bg:             $state-danger-bg !default;\n$alert-danger-text:           $state-danger-text !default;\n$alert-danger-border:         $state-danger-border !default;\n\n\n//== Progress bars\n//\n//##\n\n//** Background color of the whole progress component\n$progress-bg:                 #f5f5f5 !default;\n//** Progress bar text color\n$progress-bar-color:          #fff !default;\n//** Variable for setting rounded corners on progress bar.\n$progress-border-radius:      $border-radius-base !default;\n\n//** Default progress bar color\n$progress-bar-bg:             $brand-primary !default;\n//** Success progress bar color\n$progress-bar-success-bg:     $brand-success !default;\n//** Warning progress bar color\n$progress-bar-warning-bg:     $brand-warning !default;\n//** Danger progress bar color\n$progress-bar-danger-bg:      $brand-danger !default;\n//** Info progress bar color\n$progress-bar-info-bg:        $brand-info !default;\n\n\n//== List group\n//\n//##\n\n//** Background color on `.list-group-item`\n$list-group-bg:                 #fff !default;\n//** `.list-group-item` border color\n$list-group-border:             #ddd !default;\n//** List group border radius\n$list-group-border-radius:      $border-radius-base !default;\n\n//** Background color of single list items on hover\n$list-group-hover-bg:           #f5f5f5 !default;\n//** Text color of active list items\n$list-group-active-color:       $component-active-color !default;\n//** Background color of active list items\n$list-group-active-bg:          $component-active-bg !default;\n//** Border color of active list elements\n$list-group-active-border:      $list-group-active-bg !default;\n//** Text color for content within active list items\n$list-group-active-text-color:  lighten($list-group-active-bg, 40%) !default;\n\n//** Text color of disabled list items\n$list-group-disabled-color:      $gray-light !default;\n//** Background color of disabled list items\n$list-group-disabled-bg:         $gray-lighter !default;\n//** Text color for content within disabled list items\n$list-group-disabled-text-color: $list-group-disabled-color !default;\n\n$list-group-link-color:         #555 !default;\n$list-group-link-hover-color:   $list-group-link-color !default;\n$list-group-link-heading-color: #333 !default;\n\n\n//== Panels\n//\n//##\n\n$panel-bg:                    #fff !default;\n$panel-body-padding:          15px !default;\n$panel-heading-padding:       10px 15px !default;\n$panel-footer-padding:        $panel-heading-padding !default;\n$panel-border-radius:         $border-radius-base !default;\n\n//** Border color for elements within panels\n$panel-inner-border:          #ddd !default;\n$panel-footer-bg:             #f5f5f5 !default;\n\n$panel-default-text:          $gray-dark !default;\n$panel-default-border:        #ddd !default;\n$panel-default-heading-bg:    #f5f5f5 !default;\n\n$panel-primary-text:          #fff !default;\n$panel-primary-border:        $brand-primary !default;\n$panel-primary-heading-bg:    $brand-primary !default;\n\n$panel-success-text:          $state-success-text !default;\n$panel-success-border:        $state-success-border !default;\n$panel-success-heading-bg:    $state-success-bg !default;\n\n$panel-info-text:             $state-info-text !default;\n$panel-info-border:           $state-info-border !default;\n$panel-info-heading-bg:       $state-info-bg !default;\n\n$panel-warning-text:          $state-warning-text !default;\n$panel-warning-border:        $state-warning-border !default;\n$panel-warning-heading-bg:    $state-warning-bg !default;\n\n$panel-danger-text:           $state-danger-text !default;\n$panel-danger-border:         $state-danger-border !default;\n$panel-danger-heading-bg:     $state-danger-bg !default;\n\n\n//== Thumbnails\n//\n//##\n\n//** Padding around the thumbnail image\n$thumbnail-padding:           4px !default;\n//** Thumbnail background color\n$thumbnail-bg:                $body-bg !default;\n//** Thumbnail border color\n$thumbnail-border:            #ddd !default;\n//** Thumbnail border radius\n$thumbnail-border-radius:     $border-radius-base !default;\n\n//** Custom text color for thumbnail captions\n$thumbnail-caption-color:     $text-color !default;\n//** Padding around the thumbnail caption\n$thumbnail-caption-padding:   9px !default;\n\n\n//== Wells\n//\n//##\n\n$well-bg:                     #f5f5f5 !default;\n$well-border:                 darken($well-bg, 7%) !default;\n\n\n//== Badges\n//\n//##\n\n$badge-color:                 #fff !default;\n//** Linked badge text color on hover\n$badge-link-hover-color:      #fff !default;\n$badge-bg:                    $gray-light !default;\n\n//** Badge text color in active nav link\n$badge-active-color:          $link-color !default;\n//** Badge background color in active nav link\n$badge-active-bg:             #fff !default;\n\n$badge-font-weight:           bold !default;\n$badge-line-height:           1 !default;\n$badge-border-radius:         10px !default;\n\n\n//== Breadcrumbs\n//\n//##\n\n$breadcrumb-padding-vertical:   8px !default;\n$breadcrumb-padding-horizontal: 15px !default;\n//** Breadcrumb background color\n$breadcrumb-bg:                 #f5f5f5 !default;\n//** Breadcrumb text color\n$breadcrumb-color:              #ccc !default;\n//** Text color of current page in the breadcrumb\n$breadcrumb-active-color:       $gray-light !default;\n//** Textual separator for between breadcrumb elements\n$breadcrumb-separator:          \"/\" !default;\n\n\n//== Carousel\n//\n//##\n\n$carousel-text-shadow:                        0 1px 2px rgba(0,0,0,.6) !default;\n\n$carousel-control-color:                      #fff !default;\n$carousel-control-width:                      15% !default;\n$carousel-control-opacity:                    .5 !default;\n$carousel-control-font-size:                  20px !default;\n\n$carousel-indicator-active-bg:                #fff !default;\n$carousel-indicator-border-color:             #fff !default;\n\n$carousel-caption-color:                      #fff !default;\n\n\n//== Close\n//\n//##\n\n$close-font-weight:           bold !default;\n$close-color:                 #000 !default;\n$close-text-shadow:           0 1px 0 #fff !default;\n\n\n//== Code\n//\n//##\n\n$code-color:                  #c7254e !default;\n$code-bg:                     #f9f2f4 !default;\n\n$kbd-color:                   #fff !default;\n$kbd-bg:                      #333 !default;\n\n$pre-bg:                      #f5f5f5 !default;\n$pre-color:                   $gray-dark !default;\n$pre-border-color:            #ccc !default;\n$pre-scrollable-max-height:   340px !default;\n\n\n//== Type\n//\n//##\n\n//** Horizontal offset for forms and lists.\n$component-offset-horizontal: 180px !default;\n//** Text muted color\n$text-muted:                  $gray-light !default;\n//** Abbreviations and acronyms border color\n$abbr-border-color:           $gray-light !default;\n//** Headings small color\n$headings-small-color:        $gray-light !default;\n//** Blockquote small color\n$blockquote-small-color:      $gray-light !default;\n//** Blockquote font size\n$blockquote-font-size:        ($font-size-base * 1.25) !default;\n//** Blockquote border color\n$blockquote-border-color:     $gray-lighter !default;\n//** Page header border color\n$page-header-border-color:    $gray-lighter !default;\n//** Width of horizontal description list titles\n$dl-horizontal-offset:        $component-offset-horizontal !default;\n//** Point at which .dl-horizontal becomes horizontal\n$dl-horizontal-breakpoint:    $grid-float-breakpoint !default;\n//** Horizontal line color.\n$hr-border:                   $gray-lighter !default;\n","// WebKit-style focus\n\n@mixin tab-focus() {\n  // WebKit-specific. Other browsers will keep their default outline style.\n  // (Initially tried to also force default via `outline: initial`,\n  // but that seems to erroneously remove the outline in Firefox altogether.)\n  outline: 5px auto -webkit-focus-ring-color;\n  outline-offset: -2px;\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n@mixin animation($animation) {\n  -webkit-animation: $animation;\n       -o-animation: $animation;\n          animation: $animation;\n}\n@mixin animation-name($name) {\n  -webkit-animation-name: $name;\n          animation-name: $name;\n}\n@mixin animation-duration($duration) {\n  -webkit-animation-duration: $duration;\n          animation-duration: $duration;\n}\n@mixin animation-timing-function($timing-function) {\n  -webkit-animation-timing-function: $timing-function;\n          animation-timing-function: $timing-function;\n}\n@mixin animation-delay($delay) {\n  -webkit-animation-delay: $delay;\n          animation-delay: $delay;\n}\n@mixin animation-iteration-count($iteration-count) {\n  -webkit-animation-iteration-count: $iteration-count;\n          animation-iteration-count: $iteration-count;\n}\n@mixin animation-direction($direction) {\n  -webkit-animation-direction: $direction;\n          animation-direction: $direction;\n}\n@mixin animation-fill-mode($fill-mode) {\n  -webkit-animation-fill-mode: $fill-mode;\n          animation-fill-mode: $fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n@mixin backface-visibility($visibility) {\n  -webkit-backface-visibility: $visibility;\n     -moz-backface-visibility: $visibility;\n          backface-visibility: $visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n@mixin box-shadow($shadow...) {\n  -webkit-box-shadow: $shadow; // iOS <4.3 & Android <4.1\n          box-shadow: $shadow;\n}\n\n// Box sizing\n@mixin box-sizing($boxmodel) {\n  -webkit-box-sizing: $boxmodel;\n     -moz-box-sizing: $boxmodel;\n          box-sizing: $boxmodel;\n}\n\n// CSS3 Content Columns\n@mixin content-columns($column-count, $column-gap: $grid-gutter-width) {\n  -webkit-column-count: $column-count;\n     -moz-column-count: $column-count;\n          column-count: $column-count;\n  -webkit-column-gap: $column-gap;\n     -moz-column-gap: $column-gap;\n          column-gap: $column-gap;\n}\n\n// Optional hyphenation\n@mixin hyphens($mode: auto) {\n  word-wrap: break-word;\n  -webkit-hyphens: $mode;\n     -moz-hyphens: $mode;\n      -ms-hyphens: $mode; // IE10+\n       -o-hyphens: $mode;\n          hyphens: $mode;\n}\n\n// Placeholder text\n@mixin placeholder($color: $input-color-placeholder) {\n  // Firefox\n  &::-moz-placeholder {\n    color: $color;\n    opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n  }\n  &:-ms-input-placeholder { color: $color; } // Internet Explorer 10+\n  &::-webkit-input-placeholder  { color: $color; } // Safari and Chrome\n}\n\n// Transformations\n@mixin scale($ratio...) {\n  -webkit-transform: scale($ratio);\n      -ms-transform: scale($ratio); // IE9 only\n       -o-transform: scale($ratio);\n          transform: scale($ratio);\n}\n\n@mixin scaleX($ratio) {\n  -webkit-transform: scaleX($ratio);\n      -ms-transform: scaleX($ratio); // IE9 only\n       -o-transform: scaleX($ratio);\n          transform: scaleX($ratio);\n}\n@mixin scaleY($ratio) {\n  -webkit-transform: scaleY($ratio);\n      -ms-transform: scaleY($ratio); // IE9 only\n       -o-transform: scaleY($ratio);\n          transform: scaleY($ratio);\n}\n@mixin skew($x, $y) {\n  -webkit-transform: skewX($x) skewY($y);\n      -ms-transform: skewX($x) skewY($y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n       -o-transform: skewX($x) skewY($y);\n          transform: skewX($x) skewY($y);\n}\n@mixin translate($x, $y) {\n  -webkit-transform: translate($x, $y);\n      -ms-transform: translate($x, $y); // IE9 only\n       -o-transform: translate($x, $y);\n          transform: translate($x, $y);\n}\n@mixin translate3d($x, $y, $z) {\n  -webkit-transform: translate3d($x, $y, $z);\n          transform: translate3d($x, $y, $z);\n}\n@mixin rotate($degrees) {\n  -webkit-transform: rotate($degrees);\n      -ms-transform: rotate($degrees); // IE9 only\n       -o-transform: rotate($degrees);\n          transform: rotate($degrees);\n}\n@mixin rotateX($degrees) {\n  -webkit-transform: rotateX($degrees);\n      -ms-transform: rotateX($degrees); // IE9 only\n       -o-transform: rotateX($degrees);\n          transform: rotateX($degrees);\n}\n@mixin rotateY($degrees) {\n  -webkit-transform: rotateY($degrees);\n      -ms-transform: rotateY($degrees); // IE9 only\n       -o-transform: rotateY($degrees);\n          transform: rotateY($degrees);\n}\n@mixin perspective($perspective) {\n  -webkit-perspective: $perspective;\n     -moz-perspective: $perspective;\n          perspective: $perspective;\n}\n@mixin perspective-origin($perspective) {\n  -webkit-perspective-origin: $perspective;\n     -moz-perspective-origin: $perspective;\n          perspective-origin: $perspective;\n}\n@mixin transform-origin($origin) {\n  -webkit-transform-origin: $origin;\n     -moz-transform-origin: $origin;\n      -ms-transform-origin: $origin; // IE9 only\n          transform-origin: $origin;\n}\n\n\n// Transitions\n\n@mixin transition($transition...) {\n  -webkit-transition: $transition;\n       -o-transition: $transition;\n          transition: $transition;\n}\n@mixin transition-property($transition-property...) {\n  -webkit-transition-property: $transition-property;\n          transition-property: $transition-property;\n}\n@mixin transition-delay($transition-delay) {\n  -webkit-transition-delay: $transition-delay;\n          transition-delay: $transition-delay;\n}\n@mixin transition-duration($transition-duration...) {\n  -webkit-transition-duration: $transition-duration;\n          transition-duration: $transition-duration;\n}\n@mixin transition-timing-function($timing-function) {\n  -webkit-transition-timing-function: $timing-function;\n          transition-timing-function: $timing-function;\n}\n@mixin transition-transform($transition...) {\n  -webkit-transition: -webkit-transform $transition;\n     -moz-transition: -moz-transform $transition;\n       -o-transition: -o-transform $transition;\n          transition: transform $transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n@mixin user-select($select) {\n  -webkit-user-select: $select;\n     -moz-user-select: $select;\n      -ms-user-select: $select; // IE10+\n          user-select: $select;\n}\n","// Opacity\n\n@mixin opacity($opacity) {\n  opacity: $opacity;\n  // IE8 filter\n  $opacity-ie: ($opacity * 100);\n  filter: alpha(opacity=$opacity-ie);\n}\n","@import \"../mixins/variables\";\n/*\nアイコンボタン\n\nSVGアイコンを用いたアイコンボタンです。\n\nsg-wrapper:\n
\n \n\nStyleguide 2.2\n*/\n\n/*\nアイコンボタン\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\na.ec-closeBtn\n .ec-icon\n img(src='/moc/icon/cross.svg', alt='close')\n\nStyleguide 2.2.1\n*/\n.ec-closeBtn{\n cursor: pointer;\n .ec-icon {\n img {\n //overflow: hidden;\n display: inline-block;\n margin-right: 5px;\n width: 1em;\n height: 1em;\n position: relative;\n top: -1px;\n vertical-align: middle;\n }\n }\n}\n\n/*\nアイコンボタン(○)\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\n\n\nex [お届け先編集画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\na.ec-closeBtn--circle\n .ec-icon\n img(src='/moc/icon/cross-white.svg', alt='close')\n\nStyleguide 2.2.2\n*/\n\n.ec-closeBtn--circle{\n display: block;\n border: 0 none;\n padding: 0;\n margin: 0;\n text-shadow: none;\n box-shadow: none;\n border-radius: 50%;\n background: #B8BEC4;\n cursor: pointer;\n width: 40px;\n min-width: 40px;\n max-width: 40px;\n height: 40px;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n\n .ec-icon img{\n display: block;\n margin-top: -.5em;\n margin-left: -.5em;\n width: 1em;\n height: 1em;\n position: absolute;\n top: 50%;\n left: 50%;\n }\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/media\";\n@import \"../mixins/btn\";\n\n/*\nその他のボタン\n\n通常のボタンや、アイコンボタン以外のボタンを定義します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.3\n*/\n\n\n/*\nページトップボタン\n\nページトップボタンを表示します\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\n.ec-blockTopBtn\n\nStyleguide 2.3.1\n*/\n.ec-blockTopBtn{\n display: none;\n position: fixed;\n width:120px;\n height: 40px;\n right: 0;\n bottom: 10px;\n cursor: pointer;\n color: #FFFFFF;\n text-align: center;\n line-height: 40px;\n opacity: 0.8;\n background-color: #9da3a9;\n @include media_desktop {\n right:30px;\n bottom: 30px;\n }\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/forms\";\n@import \"../mixins/media\";\n/*\nフォーム部品(テキスト)\n\nテキストや数値の入力項目に関する要素を定義します。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 3.1\n*/\n\n\n\n/*\nフォーム\n\n`.ec-input` 要素は全ての入力項目に関する標準的なコンポーネントクラスです。\n\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-input\n input(type=\"number\")\np.ec-input\n textarea(rows=\"6\")\n\nStyleguide 3.1.1\n*/\n.ec-input{\n @include forms-reset;\n @include form-controls;\n input{\n height: 40px;\n margin-bottom: 10px;\n @include media_desktop {\n margin-bottom: 16px;\n }\n }\n textarea {\n height: auto;\n min-height: 100px;\n }\n p {\n line-height: 1.4;\n }\n .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: $clrRed;\n }\n}\n.error.ec-input {\n input,select{\n margin-bottom: 5px;\n border-color: #CF3F34;\n background: #FDF1F0;\n }\n}\n\n.ec-checkbox{\n .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: $clrRed;\n }\n}\n.error.ec-checkbox {\n input, label{\n border-color: #CF3F34;\n background: #FDF1F0;\n }\n}\n\n/*\nフォーム(text2つ)\n\n姓名など2つ入力させたい入力項目で使用します。\n\n入力フォームを半分で用意したいときにも利用可能です。\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-halfInput\n input(type=\"text\")\n input(type=\"text\")\np.ec-halfInput\n input(type=\"text\")\n\nStyleguide 3.1.2\n*/\n.ec-halfInput{\n @extend .ec-input;\n input[type='text']{\n display: inline-block;\n width: 47%;\n margin-left: 2%;\n @include media_desktop {\n margin-left: 15px;\n width: 45%;\n }\n }\n input[type='text']:first-child{\n margin-left: 0;\n }\n}\n\n/*\n数量ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [商品詳細画面 数量ボタン部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-numberInput\n span 数量\n input(type=\"number\",value=\"0\")\n\nStyleguide 3.1.3\n*/\n.ec-numberInput{\n @extend .ec-input;\n input[type='number']{\n display: inline-block;\n width: auto;\n max-width: 100px;\n text-align: right;\n }\n}\n/*\n郵便番号フォーム\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 郵便番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-zipInput\n span 〒\n input(type=\"text\")\n.ec-zipInputHelp\n a(href=\"http://www.post.japanpost.jp/zipcode/\" target=\"_blank\")\n .ec-zipInputHelp__icon\n .ec-icon\n img(src='/moc/icon/question-white.svg', alt='')\n span 郵便番号検索\n.ec-zipAuto\n a.ec-inlineBtn 郵便番号から自動入力\n\nStyleguide 3.1.4\n*/\n.ec-zipInput{\n @extend .ec-input;\n display: inline-block;\n input{\n display: inline-block;\n text-align: left;\n width: auto;\n max-width: 8em;\n font-size: 16px;\n }\n span{\n display: inline-block;\n padding: 0 5px 0 3px;\n margin-left:5px;\n }\n}\n.ec-zipInputHelp {\n display: inline-block;\n margin-left: 10px;\n margin-bottom: 16px;\n vertical-align: baseline;\n line-height: 0;\n .ec-zipInputHelp__icon {\n display: inline-block;\n margin-top: -10px;\n width:20px;\n height:20px;\n background: #525263;\n border-radius: 50%;\n font-size: 13px;\n position: relative;\n top: -6px;\n .ec-icon img{\n width: 1em;\n height: 1em;\n position: relative;\n left: 3px;\n top: 3px;\n }\n }\n span {\n margin-left: 8px;\n display: inline-block;\n color: #0092C4;\n vertical-align: 3px;\n }\n}\n.ec-zipAuto {\n margin-bottom: 16px;\n .ec-inlineBtn {\n font-weight: normal;\n }\n}\n/*\n電話番号ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 電話番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-telInput\n input(type=\"text\")\n\nStyleguide 3.1.5\n*/\n.ec-telInput{\n @extend .ec-input;\n input {\n max-width: 10em;\n text-align: left;\n }\n}\n","@import \"./variables\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/forms\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/vendor-prefixes\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n\n@mixin forms-reset{\n input[type=\"search\"] {\n @include box-sizing(border-box);\n }\n\n // Position radios and checkboxes better\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n }\n\n input[type=\"file\"] {\n display: block;\n }\n\n // Make range inputs behave like textual form controls\n input[type=\"range\"] {\n display: block;\n width: 100%;\n }\n\n // Make multiple select elements height not fixed\n select[multiple],\n select[size] {\n height: auto;\n }\n\n // Focus for file, radio, and checkbox\n input[type=\"file\"]:focus,\n input[type=\"radio\"]:focus,\n input[type=\"checkbox\"]:focus {\n @include tab-focus;\n }\n\n}\n\n@mixin _form-control{\n display: block;\n width: 100%;\n height: $input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: $padding-base-vertical $padding-base-horizontal;\n font-size: $font-size-base;\n line-height: $line-height-base;\n color: $input-color;\n background-color: $input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid $input-border;\n border-radius: $input-border-radius; // Note: This has no effect on s in CSS.\n -webkit-appearance: none;\n @include box-shadow(none);\n @include transition(border-color ease-in-out .15s, box-shadow ease-in-out .15s);\n\n // Customize the `:focus` state to imitate native WebKit styles.\n @include form-control-focus;\n\n // Placeholder\n @include placeholder;\n\n // Unstyle the caret on ``\n// element gets special love because it's special, and that's a fact!\n// [converter] $parent hack\n@mixin input-size($parent, $input-height, $padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {\n #{$parent} {\n height: $input-height;\n padding: $padding-vertical $padding-horizontal;\n font-size: $font-size;\n line-height: $line-height;\n border-radius: $border-radius;\n }\n\n select#{$parent} {\n height: $input-height;\n line-height: $input-height;\n }\n\n textarea#{$parent},\n select[multiple]#{$parent} {\n height: auto;\n }\n}\n","/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n\n@mixin borderTop(){\n border-top: 1px dotted #ccc;\n}\n\n@mixin borderBottom(){\n border-bottom: 1px dotted #ccc;\n}\n\n@mixin reset_link(){\n a{\n color: inherit;\n text-decoration: none;\n }\n a:hover{\n text-decoration: none;\n }\n}\n","@import \"../mixins/projects\";\n@import \"../mixins/forms\";\n@import \"./3.1.inputText\";\n/*\nフォーム部品(その他)\n\nフォーム部品でテキストの入力以外の動作要素を定義します。\n\nsg-wrapper:\n
\n \n\nStyleguide 3.2\n*/\n\n/*\nラジオ(水平)\n\n水平に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 性別選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-radio\n label\n input(type=\"radio\")\n span 男性\n label\n input(type=\"radio\")\n span 女性\n\nStyleguide 3.2.2\n*/\n.ec-radio{\n label{\n margin-right:20px;\n }\n input{\n margin-right: 10px;\n margin-bottom: 10px;\n }\n span{\n font-weight: normal;\n }\n\n}\n\n/*\nラジオ(垂直)\n\n垂直に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [購入画面 お支払方法](http://demo3.ec-cube.net/shopping)\n\nMarkup:\n.ec-blockRadio\n label\n input(type=\"radio\")\n span 郵便振替\n label\n input(type=\"radio\")\n span 現金書留\n label\n input(type=\"radio\")\n span 銀行振込\n label\n input(type=\"radio\")\n span 代金引換\n\nStyleguide 3.2.3\n*/\n.ec-blockRadio{\n label{\n display: block;\n }\n span {\n padding-left: 10px;\n font-weight: normal;\n }\n}\n/*\nセレクトボックス\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 都道府県選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-select\n select\n option 都道府県を選択\n option 北海道\n option 青森県\n option 岩手県\n option ...\n.ec-select\n select\n option 選択して下さい\n option 公務員\n option コンサルタント\n option コンピュータ関連技術職\n option コンピュータ関連以外の技術職\n option ...\n\nStyleguide 3.2.4\n*/\n.ec-selects {\n margin-bottom: 20px;\n @include borderBottom;\n}\n.ec-select{\n @extend .ec-input;\n margin-bottom: 16px;\n select{\n display: inline-block;\n width: auto;\n background-color: rgb(248, 248, 248);\n -webkit-appearance: menulist;\n -moz-appearance: menulist;\n &:focus {\n box-shadow: none;\n }\n }\n label{\n margin-right: 10px;\n font-weight: bold;\n }\n label:nth-child(3){\n margin-left: 10px;\n font-weight: bold;\n }\n}\n.ec-select__delivery {\n display: block;\n margin-right: 16px;\n @include media_desktop {\n display: inline-block;\n }\n}\n.ec-select__time {\n display: block;\n @include media_desktop {\n display: inline-block;\n }\n}\n\n/*\n生年月日選択\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 生年月日選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-birth\n select\n option ----\n option 1960\n option 1961\n option 1962\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n\nStyleguide 3.2.5\n*/\n.ec-birth{\n @extend .ec-input;\n select{\n display: inline-block;\n width: auto;\n margin: 0 0 10px;\n background-color: rgb(248, 248, 248);\n -webkit-appearance: menulist;\n -moz-appearance: menulist;\n &:focus {\n box-shadow: none;\n }\n @include media_desktop{\n margin: 0 8px 10px;\n }\n }\n span{\n margin-left:5px;\n }\n}\n\n/*\nチェックボックス (水平)\n\n水平に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 利用規約](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-checkbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.6\n*/\n.ec-checkbox{\n label{\n display: inline-block;\n }\n input{\n margin-bottom: 10px;\n }\n span{\n font-weight: normal;\n }\n\n}\n\n/*\nチェックボックス (垂直)\n\n垂直に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nMarkup:\n.ec-blockCheckbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.7\n*/\n.ec-blockCheckbox{\n label{\n display: block;\n }\n span {\n font-weight: normal;\n }\n}\n","@import \"../mixins/media\";\n/*\nフォームラベル\n\nフォームのラベルに関する要素を定義します。\n\nsg-wrapper:\n
\n
\n
\n
\n \n
\n
\n
\n
\n\nStyleguide 3.3\n*/\n\n/*\nラベル\n\nフォーム要素で利用するラベル要素です。\n\nex [お問い合わせページ ラベル部分](http://demo3.ec-cube.net/contact)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.1\n*/\n.ec-label{\n display: inline-block;\n font-weight: bold;\n margin-bottom: 5px;\n}\n\n/*\n必須ラベル\n\n必須文字を表示するラベル要素です。\n\nex [お問い合わせページ 必須ラベル部分](http://demo3.ec-cube.net/contact)\n\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n span.ec-required 必須\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.2\n*/\n\n.ec-required{\n display: inline-block;\n margin-left: .8em;\n vertical-align: 2px;\n color: #DE5D50;\n font-size: 12px;\n font-weight: normal;\n @include media_desktop {\n margin-left: 1em;\n }\n}\n","@import \"../mixins/variables\";\n/*\nアイコン\n\nデフォルトテンプレートのアイコンは`.ec-icon`>`img`タグで使用することができます\n\nsg-wrapper:\n
\n \n\nMarkup:\ninclude /assets/tmpl/elements/4.1.icon.pug\ndiv(style=\"background-color: rgba(130,130,130,.15); padding: 20px;\")\n +icon-all\n\nStyleguide 4.1\n*/\n.ec-icon img {\n max-width: 80px;\n max-height: 80px;\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/media\";\n\n@mixin row{\n display: block;\n margin: 0;\n @include media_desktop {\n display: flex;\n }\n}\n\n@mixin makeSmColumn($columns){\n position: relative;\n min-height: 1px;\n\n @media (min-width: $desktop) {\n width: percentage(($columns/ 12));\n }\n @include media_desktop{\n }\n\n}\n\n/*\nグリッド\n\n画面を12分割し、グリッドレイアウトに対応するためのスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.1\n*/\n\n/*\n2分割グリッド\n\n画面 2分割の グリッドです。\nBootstrap の col-sm-6 相当のグリッドを提供します。\n\nMarkup:\n.ec-grid2\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 5.1.1\n*/\n.ec-grid2{\n @include row;\n & &__cell{\n @include makeSmColumn(6);\n }\n & &__cell2{\n @include makeSmColumn(12);\n }\n}\n/*\n3分割グリッド\n\n画面 3分割の グリッドです。\n\n\nMarkup:\n.ec-grid3\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n\nStyleguide 5.1.2\n*/\n.ec-grid3{\n @include row;\n & &__cell{\n @include makeSmColumn(4);\n }\n & &__cell2 {\n @include makeSmColumn(8);\n }\n & &__cell3 {\n @include makeSmColumn(12);\n }\n}\n\n/*\n4分割グリッド\n\n画面 4分割の グリッドです。\n\n\nMarkup:\n.ec-grid4\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n\nStyleguide 5.1.3\n*/\n.ec-grid4{\n @include row;\n & &__cell{\n @include makeSmColumn(3);\n }\n}\n\n/*\n6分割グリッド\n\n2つにまとめた cell2 や 3つをまとめた cell3 タグも使用可能です。\n\n\nMarkup:\n.ec-grid6\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n.ec-grid6\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n.ec-grid6\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n\nStyleguide 5.1.4\n*/\n.ec-grid6{\n @include row;\n & &__cell{\n @include makeSmColumn(2);\n }\n & &__cell2{\n @include makeSmColumn(4);\n }\n & &__cell3{\n @include makeSmColumn(6);\n }\n}\n\n/*\n中央寄せグリッド 10/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の10グリッドです\n\nex [ご利用規約ページ 本文](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-off1Grid\n .ec-off1Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.5\n*/\n.ec-off1Grid{\n margin: 0;\n @include media_desktop {\n @include row;\n }\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(10);\n margin-left: percentage((1 / 12));\n }\n }\n}\n\n\n/*\n中央寄せグリッド 8/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の8グリッドです\n\n\nMarkup:\n.ec-off2Grid\n .ec-off2Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.6\n*/\n.ec-off2Grid{\n @include row;\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(8);\n margin-left: percentage((2 / 12));\n }\n }\n}\n/*\n中央寄せグリッド 6/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の6グリッドです\n\n\nMarkup:\n.ec-off3Grid\n .ec-off3Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.7\n*/\n.ec-off3Grid{\n @include row;\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(6);\n margin-left: percentage((3 / 12));\n }\n }\n}\n/*\n中央寄せグリッド 4/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の4グリッドです\n\n\nMarkup:\n.ec-off4Grid\n .ec-off4Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\n\nStyleguide 5.1.8\n*/\n.ec-off4Grid{\n @include row;\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(4);\n margin-left: percentage((4 / 12));\n }\n }\n}\n\n/*\nグリッドオプション\n\nグリッドのセルに対して「左寄せ」「中央寄せ」「右寄せ」のオプションを付与することができます。\n\nsg-wrapper:\n
\n \n\nStyleguide 5.1.9\n*/\n\n/*\nグリッドセルの左寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--left\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.10\n*/\n.ec-grid--left {\n justify-content: flex-start;\n}\n/*\nグリッドセルの右寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--right\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.11\n*/\n.ec-grid--right {\n justify-content: flex-end;\n}\n/*\nグリッドセルの中央寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--center\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.12\n*/\n.ec-grid--center {\n justify-content: center\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/projects\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/media\";\n\n@mixin row{\n margin-left: ceil((30px / -2));\n margin-right: floor((30px / -2));\n @include clearfix\n}\n\n@mixin makeSmColumn($columns){\n position: relative;\n min-height: 1px;\n padding-left: (30px / 2);\n padding-right: (30px / 2);\n\n @media (min-width: $desktop) {\n float: left;\n width: percentage(($columns/ 12));\n }\n}\n\n/*\nレイアウト\n\n様々なレイアウトを変更する為のスタイル群です。\n\nStyleguide 5.2\n*/\n\n/*\n画像レイアウト\n\n画像とテキストを水平に並べるレイアウトです。\n\n画像は20%で表示されます。\n\nex [注文履歴 ログイン後→注文履歴ボタンを押下](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-imageGrid\n .ec-imageGrid__img: img(src=\"http://demo3.ec-cube.net/upload/save_image/0701113537_559351f959620.jpeg\")\n .ec-imageGrid__content\n p.ec-font-bold ホーローマグ\n p ¥ 1,728 x 1\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.2.1\n*/\n.ec-imageGrid{\n display: table;\n @include borderTop;\n width: 100%;\n\n & &__img{\n display: table-cell;\n padding: 10px;\n width: 100px;\n\n @include media_desktop {\n padding: 10px;\n width: 130px;\n }\n\n img{\n width: 100%;\n }\n }\n & &__content{\n vertical-align: middle;\n display: table-cell;\n span {\n margin-left: 10px;\n }\n p {\n margin-bottom: 0;\n }\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\nログイン\n\n主にログインフォームのスタイルを表示します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 6.1\n*/\n\n/*\nログインフォーム\n\nログインフォームを表示します。\n\nex [ログイン画面](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-login\n\n\nStyleguide 6.1.1\n*/\n.ec-login{\n margin: 0 0 20px;\n padding: 30px 13% 20px;\n height: auto;\n background: #F3F4F4;\n box-sizing: border-box;\n @include media_desktop {\n margin: 0 16px;\n padding: 30px 13% 60px;\n }\n & &__icon {\n text-align: center;\n }\n .ec-icon{\n margin-bottom: 10px;\n img {\n width: 90px;\n height: 90px;\n display: inline-block;\n }\n }\n & &__input {\n margin-bottom: 40px;\n .ec-checkbox {\n span {\n margin-left: 5px;\n font-weight:normal;\n }\n }\n }\n & &__actions {\n color: #fff;\n @include reset_link();\n }\n & &__link {\n margin-top: 5px;\n margin-left: 0;\n @include media_desktop {\n margin-left: 20px;\n }\n }\n .ec-errorMessage {\n color: $clrRed;\n margin-bottom: 20px;\n }\n}\n\n/*\nゲスト購入\n\nゲスト購入ボタンとそのフォームを表示します。\n\nex [ゲスト購入画面](http://demo3.ec-cube.net/shopping/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-guest\nhoge\n\nStyleguide 6.1.2\n*/\n.ec-guest{\n display: table;\n margin: 0;\n padding: 13%;\n height: auto;\n box-sizing: border-box;\n background: #F3F4F4;\n\n @include media_desktop {\n height: 100%;\n margin: 0 16px;\n }\n & &__inner{\n display: table-cell;\n vertical-align: middle;\n text-align: center;\n p {\n margin-bottom: 16px;\n }\n }\n & &__actions {\n display: block;\n vertical-align: middle;\n text-align: center;\n color: #fff;\n @include reset_link();\n }\n & &__icon{\n font-size: 70px;\n text-align: center;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\n商品掲載\n\nトップページに商品掲載するスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.1\n*/\n\n/*\n商品アイテム(商品紹介B)\n\n3項目横並びの商品アイテムを表示します。\n必要に応じて商品詳細や、キャッチコピーなどを添えることが出来ます。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayB\n\nStyleguide 7.1.1\n*/\n.ec-displayB{\n margin-bottom: 24px;\n display: flex;\n justify-content: space-between;\n flex-direction:column;\n @include media_desktop {\n flex-direction:row;\n }\n & &__cell {\n width: 100%;\n margin-bottom: 16px;\n @include reset_link();\n @include media_desktop {\n width: 31.4466%;\n margin-bottom: 0;\n }\n &:hover {\n text-decoration: none;\n img{\n opacity: .8;\n }\n a {\n text-decoration: none;\n }\n }\n }\n & &__img {\n margin-bottom: 15px;\n }\n\n & &__catch{\n margin-bottom: 15px;\n text-decoration: none;\n font-weight: bold;\n color: #9a947e;\n }\n & &__comment {\n margin-bottom: 14px;\n text-decoration: none;\n color: #525263;\n font-size: 14px;\n }\n & &__link{\n text-decoration: none;\n font-weight: bold;\n color: #9a947e;\n }\n\n}\n\n/*\n商品アイテム(商品紹介C)\n\n4項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayC\np hoge\n\nStyleguide 7.1.2\n*/\n\n.ec-displayC{\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n margin-bottom: 24px;\n & &__cell{\n width: 47%;\n @include reset_link();\n @include media_desktop(){\n width: 22.8775%;\n }\n &:hover {\n a {\n text-decoration: none;\n }\n img{\n opacity: .8;\n }\n }\n }\n & &__img{\n display: block;\n width: 100%;\n margin-bottom: 15px;\n }\n & &__catch{\n display: block;\n width: 100%;\n font-weight: bold;\n color: #9a947e;\n }\n & &__title{\n display: block;\n width: 100%;\n color: #525263;\n }\n & &__price{\n display: block;\n width: 100%;\n font-weight: bold;\n color: #525263;\n }\n & &__price--sp{\n display: block;\n width: 100%;\n font-weight: bold;\n color: #DE5D50;\n }\n}\n\n\n/*\n商品アイテム(商品紹介D)\n\n6項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayD\n\nStyleguide 7.1.3\n*/\n\n.ec-displayD {\n display:flex;\n justify-content:space-between;\n flex-wrap:wrap-reverse;\n @include media_desktop(){\n box-sizing: border-box;\n flex-wrap:nowrap;\n }\n\n & &__cell{\n width: 30%;\n margin-bottom: 8px;\n @include reset_link();\n @include media_desktop(){\n width: 14.3083%;\n margin-bottom: 16px;\n }\n &:hover {\n text-decoration: none;\n img{\n opacity: .8;\n }\n }\n }\n & &__img{\n display: block;\n width: 100%;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/variables\";\n@import \"../mixins/projects\";\n\n@mixin pager(){\n}\n/*\n検索・一覧表示\n\n検索欄や、一覧表示に使用するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.2\n*/\n\n/*\nトピックパス\n\n検索結果で表示されるトピックパスのスタイルです。\n\nex [商品一覧ページ 横並びリスト部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-topicpath\n\nStyleguide 7.2.1\n*/\n.ec-topicpath{\n letter-spacing: -.4em;\n -webkit-margin-before: 0;\n -webkit-margin-after: 0;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n -webkit-padding-start: 0;\n border-top: 1px solid #ccc;\n border-bottom: 1px dotted #ccc;\n padding: 10px;\n list-style: none;\n overflow: hidden;\n font-size: 12px;\n color: #0092C4;\n @include media_desktop {\n padding: 30px 0 10px;\n border: 0;\n font-size: 16px;\n }\n\n & &__item {\n @include reset_link();\n }\n & &__divider{\n color: #000;\n }\n & &__item,\n & &__divider,\n & &__item--active{\n display: inline-block;\n min-width: 16px;\n text-align: center;\n position: relative;\n letter-spacing: normal;\n }\n & &__item--active{\n font-weight: bold;\n @include reset_link();\n }\n}\n\n/*\nページャ\n\n検索結果で表示される商品一覧のスタイルです。\n\nex [商品一覧ページ ページャ部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-pager\n\nStyleguide 7.2.2\n*/\n.ec-pager{\n list-style: none;\n list-style-type: none;\n margin: 0 auto;\n padding: 1em 0;\n text-align: center;\n & &__item,\n & &__item--active{\n display: inline-block;\n min-width: 29px;\n padding: 0 3px 0 2px;\n text-align: center;\n position: relative;\n @include reset_link();\n a{\n color: inherit;\n display: block;\n line-height: 1.8;\n padding: 5px 1em;\n text-decoration: none;\n }\n a:hover{\n color: inherit;\n }\n }\n & &__item--active {\n background: $clrGray;\n }\n & &__item:hover{\n background: $clrGray;\n }\n\n}\n","@import \"./variables\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/forms\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/vendor-prefixes\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n\n\n@keyframes fadeIn{\n 0%{\n opacity: 0;\n visibility: hidden;\n }\n 100%{\n opacity: 1;\n visibility: visible;\n }\n}\n\n@keyframes fadeOut{\n 0%{\n opacity: 1;\n visibility: visible;\n }\n 100%{\n opacity: 0;\n visibility: hidden;\n }\n}\n\n@mixin fadeIn($display:block,$time:150ms) {\n display: $display;\n opacity: 1;\n visibility: visible;\n animation: fadeIn $time linear 0s;\n}\n@mixin fadeOut($time:150ms) {\n opacity: 0;\n visibility:hidden;\n animation: fadeOut $time linear 0s;\n}\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1;\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/media\";\n@import \"../mixins/animation\";\n@import \"../mixins/projects\";\n/*\nカート\n\nショッピングカートに関するスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.3\n*/\n\n/*\nカートヘッダ\n\n購入完了までの手順や、現在の状態を表示します。\n\nul 要素を用いたリスト要素としてマークアップします。\n\nex [カートページ ヘッダ部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-progress\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.3.1\n*/\n.ec-progress{\n margin: 0 auto;\n padding: 8px 0 16px;\n display: table;\n table-layout: fixed;\n width: 100%;\n max-width: 600px;\n list-style: none;\n @include media_desktop {\n margin-bottom: 30px;\n padding: 0;\n }\n\n & &__item{\n display:table-cell;\n position: relative;\n font-size: 14px;\n text-align: center;\n font-weight: bold;\n z-index: 10;\n\n &:after {\n content: '';\n position: absolute;\n display: block;\n background: #525263;\n width: 100%;\n height: 0.25em;\n top: 1.25em;\n left: 50%;\n margin-left: 1.5em\\9;\n z-index: -1;\n }\n &:last-child:after {\n display: none;\n }\n }\n & &__number{\n line-height: 30px;\n width: 30px;\n height: 30px;\n margin-bottom: 5px;\n font-size: 12px;\n background: #525263;\n color: #fff;\n top: 0;\n left: 18px;\n display: inline-block;\n text-align: center;\n vertical-align: middle;\n border-radius: 50%;\n @include media_desktop(){\n line-height: 42px;\n width: 42px;\n height: 42px;\n font-size: 20px;\n }\n }\n & &__label {\n font-size: 12px;\n }\n .is-complete {\n .ec-progress__number {\n background: #5CB1B1;\n }\n .ec-progress__label {\n color: #5CB1B1;\n }\n }\n}\n\n\n\n/*\nカートナビゲーション\n\nカートナビゲーションを表示します。 カートに追加された商品の個数も表示します。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerCart\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.5\n*/\n.ec-cartNaviWrap{\n @include media_desktop {\n position: relative;\n }\n}\n.ec-cartNavi{\n display: inline-block;\n padding: 10px 0 0 20px;\n width: auto;\n color: black;\n background: transparent;\n @include media_desktop {\n display: flex;\n justify-content: space-between;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 12px 17px 10px;\n width: auto;\n min-width: 140px;\n height: 44px;\n white-space: nowrap;\n cursor: pointer;\n background: #F8F8F8;\n }\n\n & &__icon {\n display: inline-block;\n font-size: 20px;\n @include fadeIn(inline-block,200ms);\n position: relative;\n\n }\n & &__badge{\n display: inline-block;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 5px;\n height: 17px;\n font-size: 10px;\n line-height: 0.7;\n vertical-align: top;\n color: #fff;\n text-align: left;\n white-space: nowrap;\n background-color: #DE5D50;\n position: absolute;\n left: 60%;\n top: -10px;\n @include media_desktop {\n display: inline-block;\n min-width: 17px;\n position: relative;\n left: 0;\n top: 0;\n }\n }\n & &__price{\n display: none;\n\n @include media_desktop {\n display: inline-block;\n font-size: 14px;\n font-weight: normal;\n vertical-align: middle;\n }\n }\n}\n.ec-cartNavi.is-active {\n\n .ec-cartNavi__icon {\n &:before {\n content: \"\\f00d\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n }\n }\n .ec-cartNavi__badge{\n display: none;\n @include media_desktop {\n display: none;\n }\n\n }\n}\n\n\n/*\nカートナビゲーションのポップアップ(商品詳細)\n\nカートナビゲーションのポップアップを表示します。カートに追加された商品の詳細が表示されます。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:350px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='close')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n +b.ec-cartNaviIsset\n +e.cart\n +e.cartImage\n img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n +e.cartContent\n +e.cartContentTitle ミニテーブル\n +e.cartContentPrice ¥ 12,960\n +e.cartContentTax 税込\n +e.cartContentNumber 数量:1\n +e.action\n a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n a.ec-blockBtn.ec-cartNavi--cancel キャンセル\n\nStyleguide 7.3.6\n*/\n.ec-cartNaviIsset {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 20;\n position: absolute;\n right: 0;\n\n @include media_desktop {\n margin-top: 10px;\n min-width: 256px;\n max-width:256px;\n\n &::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px;\n\n }\n }\n\n\n\n & &__cart {\n @include clearfix;\n border-bottom: 1px solid #E8E8E8;\n margin-bottom: 16px;\n padding-bottom: 32px;\n }\n & &__cartImage {\n float: left;\n width: 45%;\n img {\n width: 100%;\n }\n }\n & &__cartContent {\n float: right;\n width: 55%;\n padding-left: 16px;\n text-align:left;\n box-sizing:border-box;\n }\n & &__action {\n .ec-blockBtn--action {\n color:#fff;\n margin-bottom: 8px;\n }\n }\n & &__cartContentTitle {\n margin-bottom: 8px;\n }\n & &__cartContentPrice {\n font-weight: bold;\n }\n & &__cartContentTax {\n display: inline-block;\n font-size: 12px;\n font-weight: normal;\n margin-left: 2px;\n }\n & &__cartContentNumber {\n font-size: 14px;\n }\n}\n\n.ec-cartNaviIsset.is-active {\n display: block;\n}\n\n\n\n/*\nカートナビゲーションのポップアップ(商品なし)\n\nカートナビゲーションのポップアップを表示します。商品が登録されていない場合の表示です。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:170px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='cart')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n .ec-cartNaviNull\n .ec-cartNaviNull__message\n p 現在カート内に\n br\n | 商品がございません。\n //+b.ec-cartNaviIsset\n // +e.cart\n // +e.cartImage\n // img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n // +e.cartContent\n // +e.cartContentTitle ミニテーブル\n // +e.cartContentPrice ¥ 12,960\n // +e.cartContentTax 税込\n // +e.cartContentNumber 数量:1\n // +e.action\n // a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n // a.ec-blockBtn キャンセル\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.7\n*/\n\n\n.ec-cartNaviNull {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 3;\n position: absolute;\n right: 0;\n\n @include media_desktop {\n margin-top: 10px;\n min-width: 256px;\n max-width:256px;\n\n &::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px;\n\n }\n }\n\n & &__message {\n border: 1px solid #D9D9D9;\n padding: 16px 0;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n background-color: #F99;\n p {\n margin: 0;\n }\n }\n}\n\n.ec-cartNaviNull.is-active {\n display: block;\n}\n\n\n\n/*\n総計\n\n会計時の合計金額、総計を表示します。\n\nex [カートページ 統計部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-totalBox\n\nStyleguide 7.3.8\n*/\n.ec-totalBox{\n background:#F3F3F3;\n padding: 16px;\n margin-bottom: 16px;\n & &__spec{\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: space-between;\n justify-content: space-between;\n -ms-flex-pack: space-between;\n margin-bottom:8px;\n dt{\n font-weight: normal;\n text-align: left;\n }\n dd{\n text-align: right;\n }\n & &__specTotal {\n color: $clrRed;\n }\n }\n & &__total{\n border-top: 1px dotted #ccc;\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight:bold;\n }\n & &__paymentTotal{\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight:bold;\n .ec-totalBox__price,\n .ec-totalBox__taxLabel{\n color: $clrRed;\n }\n }\n & &__price{\n margin-left: 16px;\n font-size: 16px;\n font-weight:bold;\n @include media_desktop {\n font-size: 24px;\n }\n }\n & &__taxLabel {\n margin-left: 8px;\n font-size: 12px;\n @include media_desktop {\n font-size: 14px;\n }\n }\n & &__taxRate {\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: flex-end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n margin-bottom:8px;\n font-size: 10px;\n @include media_desktop {\n font-size: 12px;\n }\n dt{\n font-weight: normal;\n text-align: left;\n margin-right: 8px;\n &::before {\n content: \"[ \";\n }\n }\n dd{\n text-align: right;\n &::after {\n content: \" ]\";\n }\n }\n }\n & &__pointBlock{\n padding: 18px 20px 10px;\n margin-bottom: 10px;\n background: #fff;\n }\n & &__btn {\n @include reset_link();\n color: #fff;\n .ec-blockBtn--action {\n font-size: 16px;\n font-weight: bold;\n }\n .ec-blockBtn--cancel {\n margin-top: 8px;\n }\n }\n}\n","// Clearfix\n//\n// For modern browsers\n// 1. The space content is one way to avoid an Opera bug when the\n// contenteditable attribute is included anywhere else in the document.\n// Otherwise it causes space to appear at the top and bottom of elements\n// that are clearfixed.\n// 2. The use of `table` rather than `block` is only necessary if using\n// `:before` to contain the top-margins of child elements.\n//\n// Source: http://nicolasgallagher.com/micro-clearfix-hack/\n\n@mixin clearfix() {\n //&:before, //to avoid flex effect\n &:after {\n content: \" \"; // 1\n display: table; // 2\n }\n &:after {\n clear: both;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n/*\nお知らせ\n\n新着情報やバナーなどの掲載項目を紹介していきます。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 8.1\n*/\n\n/*\n新着情報\n\n新着情報の掲載をします。\n\nex [トップページ 新着情報部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+ec-news\n\nStyleguide 8.1.1\n*/\n.ec-news {\n margin-bottom: 16px;\n background: #F8F8F8;\n @include media_desktop {\n margin-right: 3%;\n }\n @include media_desktop {\n margin-bottom: 32px;\n }\n & &__title{\n font-weight: bold;\n padding: 8px;\n font-size: 16px;\n text-align: center;\n @include media_desktop {\n padding: 16px;\n text-align: left;\n font-size: 24px;\n }\n }\n & &__items{\n padding: 0;\n list-style: none;\n border-top: 1px dotted #ccc;\n }\n}\n/*\n折りたたみ項目\n\n折りたたみ項目を掲載します。\n\nex [トップページ 折りたたみ項目部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+b.ec-news\n +e.title 新着情報\n +e.UL.items\n +e.LI.item\n +b.ec-newsline.is_active\n +e.info\n +e.date 2016/09/29\n +e.comment サイトオープンしました\n +e.close\n a.ec-closeBtn--circle\n span.ec-closeBtn--circle__icon\n .ec-icon\n img(src='/moc/icon/angle-down-white.svg', alt='')\n +e.description 一人暮らしからオフィスなどさまざまなシーンで あなたの生活をサポートするグッズをご家庭へお届けします!\n\nStyleguide 8.1.2\n*/\n.ec-newsline {\n display: flex;\n flex-wrap:wrap;\n overflow: hidden;\n padding: 0 16px;\n & &__info{\n width: 100%;\n padding: 16px 0;\n @include clearfix;\n }\n & &__date{\n display: inline-block;\n margin-right: 10px;\n float: left;\n }\n & &__comment{\n display: inline-block;\n float: left;\n }\n & &__close{\n float: right;\n display: inline-block;\n text-align: right;\n .ec-closeBtn--circle {\n display: inline-block;\n width: 25px;\n height: 25px;\n min-width: 25px;\n min-height: 25px;\n\n }\n }\n & &__description{\n width: 100%;\n height: 0;\n transition: all .2s ease-out;\n }\n\n &.is_active &__description{\n height: auto;\n transition: all .2s ease-out;\n padding-bottom: 16px;\n }\n &.is_active .ec-icon img {\n transform: rotateX(180deg);\n }\n}\n","@import \"../mixins/projects\";\n@import \"../mixins/variables\";\n@import \"../mixins/media\";\n/*\nマイページ\n\nマイページで利用するためのスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 9.1\n*/\n\n/*\nマイページ\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist\n\nStyleguide 9.1.1\n*/\n.ec-navlistRole{\n & &__navlist {\n @include reset_link;\n display: flex;\n flex-wrap: wrap;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 1px 0 0 1px;\n margin-bottom: 32px;\n padding: 0;\n list-style: none;\n @include media_desktop {\n flex-wrap: nowrap;\n }\n }\n\n & &__item{\n width: 50%;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 0 1px 1px 0;\n text-align: center;\n font-weight: bold;\n a {\n padding: 16px;\n width: 100%;\n display: inline-block;\n &:hover{\n background: #f5f7f8;\n }\n }\n }\n .active {\n a {\n color: #DE5D50;\n }\n }\n}\n\n/*\nマイページ(お気に入り機能無効)\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist_noFavorite\n\nStyleguide 9.1.2\n*/\n\n/*\nWelcome メッセージ\n\nマイページで表示するログイン名の表示コンポーネントです。\n\nex [マイページ メニューリスト下部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-welcomeMsg\n\nStyleguide 9.1.3\n*/\n.ec-welcomeMsg{\n @include mypageContainer;\n margin: 1em 0;\n padding-bottom: 32px;\n text-align: center;\n @include borderBottom;\n\n}\n\n/*\nお気に入り一覧\n\nお気に入り一覧で表示するアイテムの表示コンポーネントです。\n\nex [マイページ お気に入り一覧](http://demo3.ec-cube.net/mypage/favorite)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-favorite\n\nStyleguide 9.1.4\n*/\n.ec-favoriteRole{\n & &__header {\n margin-bottom: 16px;\n }\n & &__detail {\n }\n & &__itemList {\n @include reset_link;\n display: flex;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n }\n & &__item{\n margin-bottom: 8px;\n width: 47.5%;\n position: relative;\n box-sizing: border-box;\n padding: 10px;\n &-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center;\n @include media_desktop() {\n height: 250px;\n }\n }\n img{\n width: auto;\n max-height: 100%;\n }\n @include media_desktop(){\n width: 25%;\n }\n .ec-closeBtn--circle {\n position: absolute;\n right: 10px;\n top: 10px;\n .ec-icon img{\n width: 1em;\n height: 1em;\n }\n }\n }\n & &__itemThumb {\n display: block;\n height:auto;\n margin-bottom: 8px;\n }\n & &__itemTitle{\n margin-bottom: 2px;\n }\n & &__itemPrice{\n font-weight: bold;\n margin-bottom: 0;\n }\n\n}\n","@import \"../mixins/media\";\n\n/*\n標準セクション\n\n通常のコンテナブロックです。\n\nex [商品詳細ページ コンテナ](http://demo3.ec-cube.net/products/detail/33)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-roleRole\n\nStyleguide 11.1\n*/\n.ec-role{\n @include container;\n}\n\n/*\nマイページセクション\n\nマイページ専用のコンテナブロックです。\n\nex [マイページ コンテナ](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-mypageRole\n\nStyleguide 11.1.2\n*/\n.ec-mypageRole{\n @include mypageContainer;\n\n .ec-pageHeader h1{\n @include media_desktop {\n margin: 10px 0 48px;\n padding: 8px 0 18px;\n }\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/animation\";\n\n/*\nヘッダー\n\nヘッダー用のプロジェクトコンポーネントを提供します。\n\nex [トップページ ヘッダー](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+b.ec-layoutRole\n +e.header\n +ec-headerRole\n +ec-headerNaviRole\n +ec-categoryNaviRole\n\nStyleguide 11.2\n*/\n.ec-layoutRole {\n width: 100%;\n transition: transform 0.3s;\n background: #fff;\n & &__contentTop {\n padding: 0;\n }\n\n & &__contents {\n margin-right: auto;\n margin-left: auto;\n width: 100%;\n max-width: 1150px;\n display: flex;\n flex-wrap: nowrap;\n\n }\n & &__main {\n width: 100%;\n }\n & &__mainWithColumn {\n width: 100%;\n @include media_desktop() {\n width: 75%;\n }\n }\n & &__mainBetweenColumn {\n width: 100%;\n @include media_desktop() {\n width: 50%;\n }\n }\n & &__left,\n & &__right {\n display: none;\n @include media_desktop() {\n display: block;\n width: 25%;\n }\n }\n}\n\n\n.ec-headerRole {\n @include container;\n padding-top: 15px;\n position: relative;\n &:after {\n display: none;\n }\n @include media_desktop {\n @include clearfix;\n }\n &::before {\n display: none;\n }\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n width: auto;\n @include media_desktop {\n width: 100%;\n @include clearfix;\n }\n & &__title {\n width: 100%;\n }\n & &__navSP {\n display: block;\n position: absolute;\n top: 15px;\n width: 27%;\n right: 0;\n text-align: right;\n @include media_desktop {\n display: none;\n }\n }\n}\n\n.ec-headerNaviRole {\n @include container;\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-top: 15px;\n\n @include media_desktop {\n padding-bottom: 40px;\n }\n\n & &__left {\n width: calc(100% / 3);\n\n }\n\n & &__search {\n display: none;\n @include media_desktop() {\n display: inline-block;\n margin-top: 10px;\n @include reset_link;\n }\n }\n & &__navSP {\n display: block;\n @include media_desktop() {\n display: none;\n @include reset_link;\n }\n }\n\n & &__right {\n width: calc(100% * 2 / 3);\n display: flex;\n justify-content: flex-end;\n align-items: center;\n }\n\n & &__nav {\n display: inline-block;\n @include reset_link;\n }\n & &__cart {\n display: inline-block;\n @include reset_link;\n }\n}\n\n.ec-headerNavSP {\n display: block;\n cursor: pointer;\n //display: inline-block;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 10px;\n z-index: 1000;\n\n .fas {\n vertical-align: top;\n }\n\n @include media_desktop {\n display: none;\n }\n}\n.ec-headerNavSP.is-active {\n display: none;\n}\n\n/*\nヘッダー:タイトル\n\nヘッダー内で使用されるタイトルコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerTitle\n\nStyleguide 11.2.1\n*/\n.ec-headerTitle {\n @include commonStyle();\n & &__title {\n text-align: center;\n h1 {\n margin: 0;\n padding: 0;\n }\n a {\n display: inline-block;\n margin-bottom: 30px;\n text-decoration: none;\n font-size: 20px;\n\n @include media_desktop() {\n font-size: 40px;\n }\n font-weight: bold;\n color: black;\n\n &:hover {\n opacity: .8;\n }\n }\n }\n & &__subtitle {\n font-size: 10px;\n text-align: center;\n @include media_desktop() {\n font-size: 16px;\n margin-bottom: 10px;\n }\n a {\n display: inline-block;\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n }\n }\n}\n\n/*\nヘッダー:ユーザナビゲーション\n\nヘッダー内でユーザに関与するナビゲーションコンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__nav`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.3\n*/\n.ec-headerNav {\n text-align: right;\n & &__item {\n margin-left: 0;\n display: inline-block;\n font-size: 28px;\n }\n & &__itemIcon {\n display: inline-block;\n margin-right: 10px;\n margin-left: 10px;\n font-size: 18px;\n color: black;\n @include media_desktop {\n margin-right: 0;\n font-size: 20px;\n }\n }\n & &__itemLink {\n display: none;\n margin-right: 5px;\n font-size: 14px;\n vertical-align: middle;\n color: black;\n @include media_desktop {\n display: inline-block;\n }\n }\n}\n\n/*\nヘッダー:検索ボックス\n\nヘッダー内で使用される商品検索コンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__search`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerSearch\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.4\n*/\n.ec-headerSearch{\n @include clearfix;\n & &__category {\n float: none;\n @include media_desktop {\n float: left;\n width: 43%;\n }\n .ec-select {\n overflow: hidden;\n width: 100%;\n margin: 0;\n text-align: center;\n\n select {\n width: 100%;\n cursor: pointer;\n padding: 8px 24px 8px 8px;\n text-indent: 0.01px;\n text-overflow: ellipsis;\n border: none;\n outline: none;\n background: transparent;\n background-image: none;\n box-shadow: none;\n appearance: none;\n color: #fff;\n\n @include media_desktop {\n max-width: 165px;\n height: 36px;\n }\n\n option {\n color: #000;\n }\n\n &::-ms-expand {\n display: none;\n }\n }\n\n &.ec-select_search {\n position: relative;\n border: 0;\n background: #000;\n color: #fff;\n border-top-right-radius: 10px;\n border-top-left-radius: 10px;\n\n @include media_desktop {\n border-top-right-radius: inherit;\n border-top-left-radius: 50px;\n border-bottom-left-radius: 50px;\n }\n\n &::before {\n position: absolute;\n top: 0.8em;\n right: 0.4em;\n width: 0;\n height: 0;\n padding: 0;\n content: '';\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid #fff;\n pointer-events: none;\n }\n }\n }\n }\n & &__keyword{\n position: relative;\n color: $clrDarkGray;\n border: 1px solid #ccc;\n background-color: #f6f6f6;\n border-bottom-right-radius: 10px;\n border-bottom-left-radius: 10px;\n\n @include media_desktop {\n float: right;\n width: 57%;\n border-bottom-left-radius: inherit;\n border-top-right-radius: 50px;\n border-bottom-right-radius: 50px;\n }\n input[type=\"search\"]{\n width: 100%;\n height: 34px;\n font-size: 1.2rem;\n border: 0 none;\n padding: 0.5em 50px 0.5em 1em;\n box-shadow: none;\n background: none;\n box-sizing: border-box;\n margin-bottom: 0;\n }\n .ec-icon {\n width: 22px;\n height: 22px;\n }\n }\n & &__keywordBtn{\n border: 0;\n background: none;\n position: absolute;\n right: 5px;\n top: 50%;\n transform: translateY(-55%);\n display: block;\n white-space: nowrap;\n z-index: 1;\n }\n}\n\n/*\nヘッダー:カテゴリナビ\n\nヘッダー内で使用されている商品のカテゴリ一覧として使用します。\n`li`の中に`ul > li`要素を入れることで、階層を深くする事ができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+ec-itemNav\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 11.2.5\n*/\n.ec-categoryNaviRole {\n @include container;\n display: none;\n @include media_desktop() {\n display: block;\n width: 100%;\n @include reset_link;\n }\n}\n\n.ec-itemNav {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n text-align: center;\n}\n\n.ec-itemNav__nav {\n display: block;\n margin: 0 auto;\n padding: 0;\n width: auto;\n height: auto;\n list-style-type: none;\n text-align: center;\n vertical-align: bottom;\n @include media_desktop {\n display: inline-block;\n }\n}\n\n.ec-itemNav__nav li {\n float: none;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: center;\n position: relative;\n @include media_desktop {\n float: left;\n width: auto;\n }\n}\n\n.ec-itemNav__nav li a {\n display: block;\n border-bottom: 1px solid #E8E8E8;\n margin: 0;\n padding: 16px;\n height: auto;\n color: #2e3233;;\n font-size: 16px;\n font-weight: bold;\n line-height: 20px;\n text-decoration: none;\n text-align: left;\n background: #fff;\n border-bottom: 1px solid #E8E8E8;\n @include media_desktop {\n text-align: center;\n border-bottom: none;\n }\n}\n\n.ec-itemNav__nav li ul {\n display: none;\n z-index: 0;\n margin: 0;\n padding: 0;\n min-width: 200px;\n list-style: none;\n position: static;\n top: 100%;\n left: 0;\n @include media_desktop {\n display: block;\n z-index: 100;\n position: absolute;\n }\n}\n\n.ec-itemNav__nav li ul li {\n overflow: hidden;\n width: 100%;\n height: auto;\n transition: .3s;\n @include media_desktop {\n overflow: hidden;\n height: 0;\n }\n}\n\n.ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #E8E8E8;\n padding: 16px 22px 16px 16px;\n font-size: 16px;\n font-weight: bold;\n color: white;\n text-align: left;\n background: black;\n}\n\n.ec-itemNav__nav > li:hover > a {\n background: #fafafa;\n}\n\n.ec-itemNav__nav > li:hover li:hover > a {\n background: #333;\n}\n\n.ec-itemNav__nav > li:hover > ul > li {\n @include media_desktop {\n overflow: visible;\n height: auto;\n\n }\n}\n\n.ec-itemNav__nav li ul li ul {\n top: 0;\n left: 100%;\n width: auto;\n}\n\n.ec-itemNav__nav li ul li ul:before {\n @include media_desktop {\n content: \"\\f054\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n font-size: 12px;\n color: white;\n position: absolute;\n top: 19px;\n right: auto;\n left: -20px;\n }\n}\n\n.ec-itemNav__nav li ul li:hover > ul > li {\n @include media_desktop {\n overflow: visible;\n height: auto;\n width: auto;\n }\n}\n\n.ec-itemNav__nav li ul li ul li a {\n background: #7D7D7D\n}\n\n.ec-itemNav__nav li:hover ul li ul li a:hover {\n background: #333;\n}\n\n/*\nヘッダー:SPヘッダー\n\nSP時のみ出現するヘッダーに関係するコンポーネントです。
\nex [トップページ](http://demo3.ec-cube.net/)画面サイズが768px以下に該当。
\n
\n`.ec-drawerRole`:SPのドロワー内の要素をwrapするコンポーネントです。
\n`.ec-headerSearch`、`.ec-headerNav`、`.ec-itemNav`は`.ec-drawerRole`の子要素にある場合、ドロワーに適したスタイルに変化します。

\n`.ec-overlayRole`:SPのドロワー出現時にz-indexがドロワー以下の要素に半透明の黒背景をかぶせるコンポーネントです。
\n\nStyleguide 11.2.6\n*/\n\n.ec-drawerRole {\n overflow-y: scroll;\n background: black;\n width: 260px;\n height: 100vh;\n transform: translateX(-300px);\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1;\n transition: z-index 0ms 1ms;\n @include media_desktop() {\n display: none;\n }\n\n\n .ec-headerSearchArea {\n padding: 20px 10px;\n width: 100%;\n background: #F8F8F8;\n }\n\n .ec-headerSearch{\n padding: 16px 8px 26px;\n background: #EBEBEB;\n color: #636378;\n select{\n width: 100% !important;\n }\n }\n\n .ec-headerCategoryArea{\n .ec-headerCategoryArea__heading {\n border-top: 1px solid #CCCCCC;\n border-bottom: 1px solid #CCCCCC;\n padding: 1em 10px;\n font-size: 16px;\n font-weight: bold;\n color: black;\n background: #F8F8F8;\n }\n\n p {\n margin-top: 0;\n margin-bottom: 0;\n }\n\n .ec-itemNav__nav li a {\n border-bottom: 1px solid #ccc;\n border-bottom: 1px solid #ccc;\n color: black;\n font-weight: normal;\n background: #f8f8f8;\n }\n\n .ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #ccc;\n padding-left: 20px;\n font-weight: normal;\n background: white;\n }\n\n .ec-itemNav__nav > li:hover > a {\n background: #f8f8f8;\n }\n\n .ec-itemNav__nav > li:hover li:hover > a {\n background: white;\n }\n\n .ec-itemNav__nav li ul li ul li a {\n padding-left: 40px;\n color: black;\n background: white;\n }\n\n .ec-itemNav__nav li:hover ul li ul li a:hover {\n background: white;\n }\n\n .ec-itemNav__nav li ul li ul li ul li a{\n padding-left: 60px;\n font-weight: normal;\n }\n }\n .ec-headerLinkArea {\n background: black;\n\n .ec-headerLink__list {\n border-top: 1px solid #ccc;\n\n }\n\n .ec-headerLink__item {\n display: block;\n border-bottom: 1px solid #ccc;\n padding: 15px 20px;\n font-size: 16px;\n font-weight: bold;\n color: white;\n }\n .ec-headerLink__icon {\n display: inline-block;\n width: 28px;\n font-size: 17px;\n }\n\n\n\n }\n\n}\n\n.ec-drawerRoleClose {\n display: none;\n cursor: pointer;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 270px;\n z-index: 1000;\n\n .fas {\n vertical-align: top;\n }\n @include media_desktop {\n display: none;\n }\n\n}\n\n.ec-drawerRole.is_active {\n display: block;\n transform: translateX(0);\n transition: all .3s;\n z-index: 100000;\n\n @include media_desktop() {\n display: none;\n }\n}\n.ec-drawerRoleClose.is_active {\n display: inline-block;\n transition: all .3s;\n\n @include media_desktop {\n display: none;\n }\n}\n\n.ec-overlayRole {\n position: fixed;\n width: 100%;\n height: 100vh;\n top: 0;\n left: 0;\n opacity: 0;\n background: transparent;\n transform: translateX(0);\n transition: all .3s;\n visibility: hidden;\n\n @include media_desktop {\n display: none;\n }\n}\n\n.have_curtain .ec-overlayRole {\n display: block;\n opacity: 1;\n background: rgba(0, 0, 0, 0.5);\n visibility: visible;\n\n @include media_desktop {\n display: none;\n }\n}\n\n/*\nヘッダー:test\n\ntest\n\nMarkup:\nspan.ec-itemAccordionParent test1\nul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test2\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test3\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test4\n\nStyleguide 11.2.7\n*/\n\n.ec-itemNavAccordion {\n display: none;\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\nフッター\n\n全ページで使用されるフッターのプロジェクトコンポーネントです。\n\nex [トップページ フッター](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerRole\n\nStyleguide 11.3\n*/\n.ec-footerRole{\n border-top: 1px solid #7d7d7d;\n margin-top: 30px;\n background: black;\n\n @include media_desktop(){\n padding-top: 40px;\n margin-top: 100px;\n }\n & &__inner{\n @include media_desktop {\n @include container;\n }\n }\n}\n\n/*\nフッターナビ\n\nフッタープロジェクトで使用するナビゲーション用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.1\n*/\n.ec-footerNavi{\n padding: 0;\n color: white;\n list-style: none;\n text-align: center;\n\n & &__link{\n display: block;\n\n @include media_desktop {\n display: inline-block;\n }\n\n a{\n display: block;\n border-bottom: 1px solid #7d7d7d;\n padding: 15px 0;\n font-size: 14px;\n color: inherit;\n text-decoration: none;\n\n @include media_desktop {\n display: inline-block;\n border-bottom: none;\n margin: 0 10px;\n padding: 0;\n text-decoration: underline;\n }\n }\n &:hover {\n a {\n opacity: .8;\n text-decoration: none;\n }\n\n }\n\n }\n}\n\n/*\nフッタータイトル\n\nフッタープロジェクトで使用するタイトル用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerTitle\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.2\n*/\n.ec-footerTitle{\n padding: 40px 0 60px;\n text-align: center;\n color: white;\n\n @include media_desktop {\n padding: 50px 0 80px;\n }\n\n & &__logo{\n display: block;\n margin-bottom: 10px;\n font-weight: bold;\n @include reset_link();\n\n a{\n font-size: 22px;\n color: inherit;\n @include media_desktop {\n font-size: 24px;\n }\n\n }\n\n &:hover {\n a {\n opacity: .8;\n text-decoration: none;\n }\n }\n }\n & &__copyright{\n font-size: 10px;\n\n @include media_desktop {\n font-size: 12px;\n }\n }\n}\n","@import \"../mixins/media\";\n/*\nトップページ\n\nトップページ スライド部に関する Project コンポーネントを定義します。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.1.slider.pug\n+ec-sliderRole\n\nStyleguide 12.1\n*/\n.ec-sliderRole{\n @include container;\n margin-bottom: 24px;\n ul{\n padding: 0;\n list-style: none;\n }\n}\n.ec-sliderItemRole{\n @include container;\n margin-bottom: 24px;\n ul{\n padding: 0;\n list-style: none;\n }\n .item_nav {\n display: none;\n @include media_desktop {\n display: flex;\n justify-content: flex-start;\n flex-wrap: wrap;\n margin-bottom: 0;\n }\n\n }\n .slideThumb{\n margin-bottom: 25px;\n width: 33%;\n opacity: .8;\n cursor: pointer;\n\n &:focus {\n outline: none;\n }\n &:hover {\n opacity: 1;\n }\n img {\n width: 80%;\n }\n }\n}\n","@import \"../mixins/media\";\n\n/*\nアイキャッチ\n\nトップページ アイキャッチ部に関する Project コンポーネントを定義します。\n\nex [トップページスライダー直下 アイキャッチ部](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.2.eyecatch.pug\n+ec-eyecatchRole\n\nStyleguide 12.2\n*/\n.ec-eyecatchRole {\n display: flex;\n flex-wrap: wrap;\n margin-bottom: 40px;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n & &__image {\n display: block;\n margin-bottom: 40px;\n width: 100%;\n height: 100%;\n\n @include media_desktop {\n order: 2;\n }\n }\n\n & &__intro {\n color: black;\n\n @include media_desktop {\n padding-right: 5%;\n order: 1;\n }\n }\n & &__introEnTitle {\n margin-bottom: .8em;\n font-size: 16px;\n font-weight: normal;\n\n @include media_desktop {\n margin-top: 45px;\n }\n }\n & &__introTitle {\n margin-bottom: .8em;\n font-size: 24px;\n font-weight: bold;\n\n @include media_desktop {\n margin-bottom: 1em;\n font-size: 26px;\n }\n }\n & &__introDescriptiron {\n margin-bottom: 20px;\n font-size: 16px;\n line-height: 2;\n @include media_desktop {\n margin-bottom: 30px;\n }\n }\n\n}\n","@import \"../mixins/btn\";\n@import \"../mixins/media\";\n\n/*\nボタン\n\nトップページで使用されているボタンのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.3\n*/\n\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nMarkup:\n.ec-inlineBtn--top more\n\nStyleguide 12.3.1\n*/\n.ec-inlineBtn--top{\n @include _btn(white, black, black);\n}\n\n/*\nロングボタン(全幅)\n\nロングタイプのボタンです。\n\nMarkup:\n.ec-blockBtn--top 商品一覧へ\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn--top{\n @include _btn(white, black, black);\n display: block;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n\n @include media_desktop {\n max-width: 260px;\n }\n}\n","/*\n見出し\n\nトップページで使用されている見出しのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.4\n*/\n\n/*\n横並び見出し\n\n横並びの見出しです。\n\nMarkup:\n.ec-secHeading\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.1\n*/\n.ec-secHeading {\n margin-bottom: 15px;\n color: black;\n & &__en{\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em;\n }\n & &__line{\n display: inline-block;\n margin: 0 20px;\n width: 1px;\n height: 14px;\n background: black;\n }\n & &__ja{\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px;\n }\n}\n\n/*\n縦並び見出し\n\n縦並びの見出しです。\n\nMarkup:\n.ec-secHeading--tandem\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.2\n*/\n\n.ec-secHeading--tandem {\n margin-bottom: 15px;\n color: black;\n text-align: center;\n & .ec-secHeading__en{\n display: block;\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em;\n }\n & .ec-secHeading__line{\n display: block;\n margin: 13px auto;\n width: 20px;\n height: 1px;\n background: black;\n }\n & .ec-secHeading__ja{\n display: block;\n margin-bottom: 30px;\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\nトピック(アイテム2列)\n\nトップページで使用されているトピックのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.5.1\n*/\n\n.ec-topicRole {\n padding: 40px 0;\n background: #F8F8F8;\n\n @include media_desktop {\n padding: 60px 0;\n }\n\n & &__list {\n display: flex;\n flex-wrap: wrap;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n }\n & &__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto;\n\n @include media_desktop {\n width: calc(100% / 2);\n\n &:not(:last-of-type){\n margin-right: 30px;\n }\n }\n\n }\n & &__listItemTitle {\n margin-top: .5em;\n font-size: 14px;\n color: black;\n\n @include media_desktop {\n margin-top: 1em;\n }\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\nカテゴリ(アイテム4列 スマホの時は2列)\n\nトップページで使用されているアイテムリストのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.6.1\n*/\n\n.ec-newItemRole {\n padding: 40px 0;\n\n @include media_desktop {\n padding: 60px 0;\n }\n\n & &__list {\n display: flex;\n flex-wrap: wrap;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n }\n & &__listItem {\n margin-bottom: 4%;\n width: 48%;\n height: auto;\n\n &:not(:first-child){\n a {\n color: black;\n }\n }\n\n @include media_desktop {\n margin-bottom: 15px;\n width: calc(100% / 4);\n\n &:not(:last-of-type){\n margin-right: 30px;\n }\n }\n\n &:nth-child(odd){\n margin-right: 4%;\n\n @include media_desktop {\n margin-right: 30px;\n }\n }\n }\n & &__listItemHeading {\n margin-top: calc(45% - 20px);\n }\n & &__listItemTitle {\n margin: 8px 0;\n font-size: 14px;\n font-weight: bold;\n\n @include media_desktop {\n margin: 20px 0 10px;\n }\n }\n\n & &__listItemPrice {\n font-size: 12px;\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\nカテゴリ(アイテム3列)\n\nトップページで使用されているカテゴリのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.7.1\n*/\n\n.ec-categoryRole {\n padding: 40px 0;\n color: black;\n background: #F8F8F8;\n\n @include media_desktop {\n padding: 60px 0;\n }\n\n & &__list {\n display: flex;\n flex-wrap: wrap;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n }\n & &__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto;\n\n @include media_desktop {\n width: calc(100% / 3);\n\n &:not(:last-of-type){\n margin-right: 30px;\n }\n }\n\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\n見出し\n\nトップページで使用されている新着情報のスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.8.1\n*/\n\n.ec-newsRole {\n padding: 40px 0 0;\n\n @include media_desktop {\n padding: 60px 0 0;\n }\n\n & &__news {\n\n box-sizing: border-box;\n\n @include media_desktop {\n border: 16px solid #F8F8F8;\n padding: 20px 30px;\n }\n }\n & &__newsItem {\n width: 100%;\n\n &:not(:last-of-type){\n border-bottom: 1px solid #ccc;\n }\n\n &:last-of-type {\n margin-bottom: 20px;\n\n @include media_desktop {\n margin-bottom: 0;\n }\n }\n\n\n @include media_desktop {\n\n padding: 20px 0;\n }\n }\n & &__newsHeading {\n cursor: pointer;\n\n @include media_desktop {\n display: flex;\n }\n\n }\n & &__newsDate {\n display: block;\n margin: 15px 0 5px;\n font-size: 12px;\n color: black;\n\n @include media_desktop {\n display: inline-block;\n margin: 0;\n min-width: 120px;\n font-size: 14px;\n }\n\n }\n & &__newsColumn {\n display: flex;\n\n @include media_desktop {\n display: inline-flex;\n min-width: calc(100% - 120px);\n }\n }\n\n & &__newsTitle {\n display: inline-block;\n margin-bottom: 10px;\n width: 90%;\n font-size: 14px;\n font-weight: bold;\n color: #7D7D7D;\n line-height: 1.6;\n\n @include media_desktop {\n margin-bottom: 0;\n line-height: 1.8;\n }\n\n }\n & &__newsClose {\n display: inline-block;\n width: 10%;\n position: relative;\n\n }\n & &__newsCloseBtn {\n display: inline-block;\n margin-left: auto;\n border-radius: 50%;\n width: 20px;\n height: 20px;\n color: white;\n text-align: center;\n background: black;\n cursor: pointer;\n position: absolute;\n right: 5px;\n }\n & &__newsDescription {\n display: none;\n margin: 0 0 10px;\n font-size: 14px;\n line-height: 1.4;\n overflow: hidden;\n\n @include media_desktop {\n margin: 20px 0 0;\n line-height: 1.8;\n }\n\n a {\n color: #0092C4;\n }\n }\n &__newsItem.is_active &__newsDescription{\n margin: 0 0 10px;\n\n @include media_desktop {\n margin: 20px 0 0;\n }\n }\n &__newsItem.is_active &__newsCloseBtn i {\n display: inline-block;\n transform: rotateX(180deg) translateY(2px);\n\n }\n\n}\n","@import \"../mixins/media\";\n/*\n検索ラベル\n\n商品一覧 ヘッダー部 に関する Project コンポーネントを定義します。\n\nex [商品一覧 ヘッダー部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.1.searchnav.pug\n+ec-searchnavRole__topicpath\n+ec-searchnavRole__info\n\nStyleguide 13.1\n\n*/\n.ec-searchnavRole{\n margin-bottom: 0;\n padding: 0;\n @include media_desktop {\n @include container;\n }\n & &__infos{\n @include container;\n display: flex;\n border-top: 0;\n margin-bottom: 16px;\n padding-top: 5px;\n flex-direction:column;\n @include media_desktop {\n padding-left: 0;\n padding-right: 0;\n border-top: 1px solid #ccc;\n padding-top: 16px;\n flex-direction:row;\n }\n }\n\n & &__counter{\n margin-bottom: 16px;\n width: 100%;\n @include media_desktop {\n margin-bottom: 0;\n width: 50%;\n }\n }\n\n & &__actions{\n text-align: right;\n width: 100%;\n @include media_desktop {\n width: 50%;\n }\n }\n\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\n商品一覧\n\n商品一覧 に関する Project コンポーネントを定義します。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2\n\n*/\n.ec-shelfRole{\n @include container;\n}\n\n/*\n商品一覧グリッド\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2.1\n\n*/\n.ec-shelfGrid{\n @include reset_link;\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n\n @include media_desktop {\n margin-left: -16px;\n margin-right: -16px;\n }\n & &__item{\n margin-bottom: 36px;\n width: 50%;\n display: flex;\n flex-direction: column;\n &-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center;\n @include media_desktop() {\n height: 250px;\n }\n }\n img{\n width: auto;\n max-height: 100%;\n }\n @include media_desktop(){\n padding: 0 16px;\n width: 25%;\n }\n\n .ec-productRole__btn {\n margin-top: auto;\n margin-bottom: 15px;\n }\n }\n & &__item:nth-child(odd){\n padding-right: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__item:nth-child(even){\n padding-left: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__title {\n margin-bottom: 7px;\n }\n & &__plice {\n font-weight: bold;\n }\n}\n\n/*\n13.2.2 商品一覧グリッド(中央寄せ)\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n商品のあまりはセンタリングされ、中央に表示されます。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGridCenter\n\nStyleguide 13.2.2\n\n*/\n.ec-shelfGridCenter{\n @include reset_link;\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n justify-content: center;\n\n @include media_desktop {\n margin-left: -16px;\n margin-right: -16px;\n }\n & &__item{\n margin-bottom: 36px;\n width: 50%;\n &-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center;\n @include media_desktop() {\n height: 250px;\n }\n }\n img{\n width: auto;\n max-height: 100%;\n }\n @include media_desktop(){\n padding: 0 16px;\n width: 25%;\n }\n\n .ec-productRole__btn {\n margin-top: auto;\n padding-top: 1em;\n }\n }\n & &__item:nth-child(odd){\n padding-right: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__item:nth-child(even){\n padding-left: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__title {\n margin-bottom: 7px;\n }\n & &__plice {\n font-weight: bold;\n }\n}\n","\n/*\n商品一覧フッター\n\n商品一覧 フッター に関する Project コンポーネントを定義します。\n\nex [商品一覧 ページャ部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.3.pager.pug\n+ec-pagerRole\n\nStyleguide 13.3\n\n*/\n.ec-pagerRole{\n\n}\n","@import \"../mixins/media\";\n\n/*\nカート追加モーダル\n\nカート追加モーダルに関する Project コンポーネントを定義します。\n\nex [商品一覧、商品詳細](http://demo3.ec-cube.net/products/list)\n\n+ec-modal\n\nStyleguide 13.4\n\n*/\n\n.ec-modal {\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n z-index: 99999;\n width: 100%;\n height: 100%;\n\n &.small {\n width: 30%;\n }\n\n &.full {\n width: 100%;\n height: 100%;\n }\n\n .ec-modal-overlay {\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: rgba(0, 0, 0, 0.3);\n width: 100%;\n height: 100%;\n }\n\n .ec-modal-wrap {\n position: relative;\n border-radius: 2px;\n border: 1px solid #333;\n background-color: #fff;\n width: 90%;\n margin: 20px;\n padding: 40px 5px;\n @include media_desktop {\n padding: 40px 10px;\n width: 50%;\n margin: 20px auto;\n }\n }\n\n .ec-modal-close {\n cursor: pointer;\n position: absolute;\n right: 20px;\n top: 10px;\n font-size: 20px;\n height: 30px;\n width: 20px;\n &:hover {\n color: #4b5361;\n }\n }\n\n .ec-modal-box {\n text-align: center;\n }\n\n .ec-role {\n margin-top: 20px;\n }\n}\n","@import \"../mixins/media\";\n\n/*\n商品詳細\n\n商品詳細ページに関する Project コンポーネントを定義します。\n\nex [商品詳細ページ](http://demo3.ec-cube.net/products/detail/18)\n\n\nMarkup:\ninclude /assets/tmpl/elements/14.1.product.pug\n+ec-productSimpleRole\n\nStyleguide 14.1\n*/\n.ec-productRole {\n @include container;\n & &__img {\n margin-right: 0;\n margin-bottom: 20px;\n @include media_desktop {\n margin-right: 16px;\n margin-bottom: 0;\n }\n }\n & &__profile {\n margin-left: 0;\n @include media_desktop {\n margin-left: 16px;\n }\n }\n & &__title {\n .ec-headingTitle {\n font-size: 20px;\n @include media_desktop {\n font-size: 32px;\n }\n }\n }\n & &__tags {\n margin-top: 16px;\n padding: 0;\n padding-bottom: 16px;\n border-bottom: 1px dotted #ccc;\n }\n & &__tag {\n display: inline-block;\n padding: 2px 5px;\n list-style: none;\n font-size: 80%;\n color: #525263;\n border: solid 1px #D7DADD;\n border-radius: 3px;\n background-color: #F5F7F8;\n }\n & &__priceRegular {\n padding-top: 14px\n }\n & &__priceRegularTax {\n margin-left: 5px;\n font-size: 10px;\n }\n & &__price {\n color: #DE5D50;\n font-size: 28px;\n padding: 0;\n border-bottom: 0;\n @include media_desktop {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc;\n }\n }\n & &__code {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc;\n }\n & &__category {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc;\n a {\n color: #33A8D0;\n }\n ul {\n list-style: none;\n padding: 0;\n margin: 0;\n }\n }\n & &__actions {\n padding: 14px 0;\n .ec-select {\n select {\n height: 40px;\n max-width: 100%;\n min-width: 100%;\n @include media_desktop {\n min-width: 350px;\n max-width: 350px;\n }\n }\n }\n }\n & &__btn {\n width: 100%;\n margin-bottom: 10px;\n @include media_desktop {\n width: 60%;\n margin-bottom: 16px;\n min-width: 350px;\n }\n }\n & &__description {\n margin-bottom: 16px;\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n\n/*\nカート\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [カートページ](http://demo3.ec-cube.net/shopping)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartRole\n\nStyleguide 15.1\n\n*/\n.ec-cartRole{\n @include container;\n &::before{\n display: none;\n }\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end;\n\n & &__progress{\n width: 100%;\n text-align: center;\n }\n & &__error{\n width: 100%;\n text-align: center;\n .ec-alert-warning {\n max-width: 80%;\n display: inline-block;\n }\n }\n & &__totalText{\n margin-bottom: 0;\n padding: 16px 0 6px;\n width: 100%;\n text-align: center;\n font-weight: normal;\n @include media_desktop {\n margin-bottom: 30px;\n padding: 0;\n }\n }\n & &__cart{\n margin: 0;\n width: 100%;\n @include media_desktop {\n margin: 0 10%;\n }\n\n }\n & &__actions{\n text-align: right;\n width: 100%;\n @include media_desktop {\n width: 20%;\n margin-right: 10%;\n }\n }\n & &__total{\n padding: 15px 0 30px ;\n font-weight: bold;\n font-size: 16px;\n }\n & &__totalAmount{\n margin-left: 30px;\n color: #de5d50;\n font-size: 16px;\n @include media_desktop {\n font-size: 24px;\n }\n }\n\n .ec-blockBtn--action {\n margin-bottom: 10px;\n }\n}\n\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品をを表示するテーブル枠です。\n\nex [カートページ テーブル部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartTable\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 15.1.2\n*/\n.ec-cartTable{\n display: table;\n border-top: 1px dotted #ccc;\n width: 100%;\n @include media_desktop {\n border-top: none;\n }\n}\n\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品を表示するテーブルのヘッダです。\nスマホでは非表示となります。\n\nex [カートページ カートテーブルヘッダ部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartHeader\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.3\n*/\n.ec-cartHeader{\n display: none;\n width: 100%;\n background: #F4F3F0;\n @include media_desktop {\n display: table-row;\n }\n & &__label{\n display: table-cell;\n padding: 16px;\n text-align: center;\n background: #F4F3F0;\n overflow-x: hidden;\n font-weight: bold;\n }\n}\n.ec-cartCompleteRole {\n @include container;\n}\n/*\nカート内商品\n\nカート内のアイテムを表示するテーブル行です。\nスマホでは非表示となります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRow\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.4\n*/\n\n.ec-cartRow{\n display: table-row;\n & &__delColumn{\n border-bottom: 1px dotted #ccc;\n text-align: center;\n display: table-cell;\n width: 14%;\n vertical-align: middle;\n @include media_desktop{\n width: 8.3333333%;\n }\n .ec-icon {\n img {\n width: 1.5em;\n height: 1.5em;\n @include media_desktop {\n width: 1em;\n height: 1em;\n }\n }\n }\n }\n & &__contentColumn{\n border-bottom: 1px dotted #ccc;\n padding: 10px 0;\n display: table;\n @include media_desktop {\n display: table-cell;\n }\n }\n & &__img{\n display: table-cell;\n width: 40%;\n vertical-align: middle;\n padding-right: 10px;\n @include media_desktop {\n display: inline-block;\n min-width: 80px;\n max-width: 100px;\n padding-right: 0;\n }\n }\n & &__summary{\n display: table-cell;\n margin-left: 5px;\n font-weight: bold;\n vertical-align: middle;\n width: 46%;\n @include media_desktop {\n display: inline-block;\n margin-left: 20px;\n vertical-align: middle;\n }\n .ec-cartRow__name {\n margin-bottom: 5px;\n }\n .ec-cartRow__sutbtotalSP {\n display: block;\n font-weight: normal;\n @include media_desktop {\n display: none;\n }\n }\n }\n & &__amountColumn{\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n vertical-align: middle;\n text-align: center;\n width: 20%;\n @include media_desktop {\n width: 16.66666667%;\n }\n\n .ec-cartRow__amount {\n display: none;\n margin-bottom: 10px;\n @include media_desktop {\n display: block;\n }\n }\n .ec-cartRow__amountSP {\n display: block;\n margin-bottom: 10px;\n @include media_desktop {\n display: none;\n }\n }\n\n .ec-cartRow__amountUpDown {\n display: flex;\n justify-content: center;\n @include media_desktop {\n display: block;\n }\n }\n\n .ec-cartRow__amountUpButton {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff;\n\n\n .ec-cartRow__amountUpButton__icon {\n img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%;\n }\n }\n }\n .ec-cartRow__amountDownButton {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff;\n\n .ec-cartRow__amountDownButton__icon {\n img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%;\n }\n }\n }\n\n .ec-cartRow__amountDownButtonDisabled {\n @extend .ec-cartRow__amountDownButton;\n cursor: default;\n }\n }\n & &__subtotalColumn{\n display: none;\n border-bottom: 1px dotted #ccc;\n text-align: right;\n width: 16.66666667%;\n @include media_desktop {\n display: table-cell;\n }\n }\n}\n\n/*\nカート内商品(商品が1の場合)\n\n商品が1の場合はカート商品を減らす「-」ボタンの無効化状態になります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRowOnly\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.5\n*/\n\n.ec-cartRow{\n & &__amountColumn{\n .ec-cartRow__amountDownButtonDisabled {\n @extend .ec-cartRow__amountDownButton;\n cursor: default;\n }\n }\n}\n\n/*\nアラート\n\nカート内の商品に問題があることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartRole\n .ec-cartRole__cart\n +ec-alert-warning\n\nStyleguide 15.1.6\n*/\n\n.ec-alert-warning {\n width: 100%;\n padding: 10px;\n text-align: center;\n background: #F99;\n margin-bottom: 20px;\n\n\n & &__icon {\n display: inline-block;\n margin-right: 1rem;\n width: 20px;\n height: 20px;\n color: #fff;\n fill: #fff;\n vertical-align: top;\n }\n & &__text {\n display: inline-block;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n position: relative;\n }\n}\n\n\n\n\n/*\nアラート(空)\n\nカートが空であることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-off3Grid\n .ec-off3Grid__cell\n +ec-alert-warningEnpty\n\nStyleguide 15.1.7\n*/\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/projects\";\n/*\n注文内容確認\n\nカート内 注文内容確認に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/shopping)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderRole\n\nStyleguide 15.2\n*/\n.ec-orderRole{\n @include container;\n display: flex;\n flex-direction: column;\n margin-top: 0;\n @include media_desktop {\n margin-top: 20px;\n flex-direction: row;\n }\n .ec-inlineBtn {\n font-weight: normal;\n }\n & &__detail{\n padding: 0;\n width: 100%;\n @include media_desktop {\n padding: 0 16px;\n width: 66.66666%;\n }\n }\n & &__summary{\n width: 100%;\n .ec-inlineBtn {\n display: inline-block;\n }\n @include media_desktop {\n width: 33.33333%;\n padding: 0 16px;\n .ec-inlineBtn {\n display: none;\n }\n }\n }\n .ec-borderedList {\n margin-bottom: 20px;\n border-top: 1px dotted #ccc;\n @include media_desktop {\n border-top: none;\n }\n }\n\n}\n\n/*\n注文履歴詳細 オーダ情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderInfo\n\nStyleguide 15.2.1\n*/\n.ec-orderOrder{\n margin-bottom: 30px;\n & &__items{\n @include borderBottom;\n @include borderTop;\n }\n}\n\n/*\n注文履歴詳細 お客様情報\n\nマイページ 注文詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAccount\n\nStyleguide 15.2.2\n*/\n.ec-orderAccount{\n margin-bottom: 30px;\n p {\n margin-bottom: 0;\n }\n @include clearfix;\n & &__change{\n display: inline-block;\n margin-left: 10px;\n float: right;\n }\n & &__account {\n margin-bottom: 16px;\n }\n\n}\n\n\n/*\n注文詳細 配送情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 配送情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderDelivery\n\nStyleguide 15.2.3\n*/\n.ec-orderDelivery{\n & &__title{\n padding: 16px 0 17px;\n font-weight: bold;\n font-size: 18px;\n position: relative;\n }\n & &__change{\n display: inline-block;\n position: absolute;\n right: 0;\n top:0;\n }\n & &__items{\n @include borderBottom;\n @include borderTop;\n }\n & &__address{\n margin: 10px 0 18px ;\n p{\n margin:0;\n }\n }\n & &__edit{\n }\n\n}\n\n\n/*\n注文履歴詳細 支払情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 支払情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderPayment\n .ec-rectHeading\n h2 お支払方法\n p 支払方法: 郵便振替\n\nStyleguide 15.2.4\n*/\n.ec-orderPayment{\n\n}\n\n\n/*\n注文履歴詳細 お問い合わせ\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ お問い合わせ(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderConfirm\n .ec-rectHeading\n h2 お問い合わせ\n p 記載なし\n\nStyleguide 15.2.5\n*/\n.ec-orderConfirm{\n margin-bottom: 20px;\n @include media_desktop {\n margin-bottom: 0;\n }\n .ec-input {\n textarea {\n height: 96px;\n }\n }\n\n}\n\n\n/*\nお届け先の複数指定\n\nお届け先の複数指定に関するコンポーネントを定義します。\n\nex [マイページ お届け先の複数指定](http://demo3.ec-cube.net/shopping/shipping_multiple)\n(商品購入画面 → 「お届け先を追加する」を押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAddAddress\n\nStyleguide 15.2.6\n*/\n.ec-AddAddress {\n padding: 0 10px;\n @include media_desktop {\n margin: 0 10%;\n }\n\n & &__info {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px;\n }\n & &__add {\n border-top: 1px solid #f4f4f4;\n padding-top: 20px;\n margin-bottom: 20px;\n }\n & &__item {\n display: table;\n padding:16px;\n background: #f4f4f4;\n margin-bottom: 16px;\n }\n & &__itemThumb {\n display: table-cell;\n min-width: 160px;\n width: 20%;\n img {\n width: 100%;\n }\n }\n & &__itemtContent {\n display: table-cell;\n vertical-align: middle;\n padding-left: 16px;\n font-size:16px;\n }\n & &__itemtTitle {\n font-weight: bold;\n margin-bottom: 10px;\n }\n & &__itemtSize {\n margin-bottom: 10px;\n }\n & &__itemtPrice {\n\n }\n & &__itemtNumber {\n\n }\n & &__select {\n margin-bottom: 5px;\n }\n & &__selectAddress {\n display: inline-block;\n label {\n font-size: 16px;\n font-weight: normal;\n }\n select {\n min-width: 100%;\n @include media_desktop {\n min-width: 350px;\n }\n }\n }\n & &__selectNumber {\n display: inline-block;\n margin-left: 30px;\n label {\n font-size: 16px;\n font-weight: normal;\n }\n input {\n display: inline-block;\n margin-left: 10px;\n width: 80px;\n }\n }\n & &__actions {\n .ec-blockBtn--action {\n margin-bottom: 8px;\n }\n }\n & &__new {\n margin-bottom: 20px;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n\n/*\n注文履歴一覧\n\nマイページ 注文履歴部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole\n\nStyleguide 16.1\n*/\n.ec-historyRole{\n & &__contents{\n padding-top: 1em;\n padding-bottom: 16px;\n border-top: 1px solid #ccc;\n display: flex;\n flex-direction: column;\n color: #525263;\n @include media_desktop {\n flex-direction: row;\n }\n }\n & &__header{\n width: 100%;\n @include media_desktop {\n width: 33.3333%;\n }\n }\n & &__detail{\n @include borderTop;\n width: 100%;\n\n .ec-imageGrid:nth-of-type(1) {\n border-top: none;\n }\n\n .ec-historyRole__detailTitle {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold;\n }\n\n .ec-historyRole__detailPrice {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold;\n }\n\n @include media_desktop {\n width: 66.6666%;\n border-top: none;\n }\n }\n}\n\n/*\n注文履歴一覧 規格\n\nマイページ 注文履歴内アイテムの規格を定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole-option\n\nStyleguide 16.1.1\n*/\n\n.ec-historyRole{\n & &__detail {\n .ec-historyRole__detailOption {\n display: inline-block;\n margin-bottom: 8px;\n margin-right: .5rem;\n font-size: 1.6rem;\n }\n .ec-historyRole__detailOption::after {\n display: inline-block;\n padding-left: .5rem;\n content: \"/\";\n font-weight: bold;\n }\n }\n}\n\n/*\n注文履歴一覧ヘッダ\n\n注文履歴一覧で使用するヘッダのコンポーネントを定義します。\n\nex [マイページ 注文履歴一覧ヘッダ](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyHeader\np hofe\n\nStyleguide 16.1.2\n*/\n\n\n.ec-historyListHeader{\n & &__date{\n font-weight: bold;\n font-size: 16px;\n @include media_desktop {\n font-weight: bold;\n font-size: 20px;\n }\n }\n & &__action{\n margin : 16px 0;\n a {\n font-size: 12px;\n font-weight: normal;\n @include media_desktop {\n font-size: 14px;\n }\n }\n }\n}\n","@import \"../mixins/projects\";\n@import \"../mixins/media\";\n\n/*\n注文履歴詳細\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailRole\n\nStyleguide 16.2\n*/\n\n\n/*\n注文履歴詳細 メール履歴\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMail\n\nStyleguide 16.2.5\n*/\n.ec-orderMails{\n & &__item{\n padding-bottom: 10px;\n @include borderBottom();\n }\n & &__time{\n margin: 0;\n }\n & &__body{\n display: none;\n }\n}\n\n\n\n\n/*\n注文履歴詳細 メール履歴個別\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴個別](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMailHistory\n\nStyleguide 16.2.6\n*/\n.ec-orderMail{\n padding-bottom: 10px;\n @include borderBottom();\n margin-bottom: 16px;\n & &__time{\n margin: 0;\n }\n & &__body{\n display: none;\n }\n & &__time {\n margin-bottom: 4px;\n }\n & &__link {\n a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n }\n a:hover {\n color: #33A8D0;\n }\n margin-bottom: 4px;\n }\n & &__close{\n a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n }\n a:hover {\n color: #33A8D0;\n }\n }\n}\n","/*\n住所一覧\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [マイページ内 お届け先編集](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\ninclude /assets/tmpl/elements/17.1.address.pug\n+ec-addressList\n+ec-addressRole\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 17.1\n\n*/\n.ec-addressRole{\n & &__item{\n border-top: 1px dotted #ccc;\n }\n & &__actions{\n margin-top: 32px;\n padding-bottom:20px;\n border-bottom: 1px dotted #ccc;\n }\n}\n.ec-addressList{\n & &__item{\n display: table;\n width: 100%;\n position: relative;\n border-bottom: 1px dotted #ccc;\n }\n & &__remove{\n //display: table-cell;\n vertical-align: middle;\n padding: 16px;\n text-align: center;\n .ec-icon img {\n width: 1em;\n height: 1em;\n }\n }\n & &__address{\n display: table-cell;\n vertical-align: middle;\n padding: 16px;\n margin-right:4em;\n width: 80%;\n }\n & &__action{\n position: relative;\n vertical-align: middle;\n text-align: right;\n top: 27px;\n padding-right: 10px;\n }\n}\n","@import \"../mixins/media\";\n/*\nパスワードリセット\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [パスワードリセット画面](http://demo3.ec-cube.net/forgot)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/18.1.password.pug\n+ec-passwordRole\n\nStyleguide 18.1\n\n*/\n.ec-forgotRole{\n @include container;\n & &__intro {\n font-size: 16px;\n }\n & &__form {\n margin-bottom: 16px;\n }\n\n}\n","@import \"../mixins/media\";\n/*\n会員登録\n\n新規会員登録 に関する Project コンポーネントを定義します。\n\nex [新規会員登録画面 会員登録](http://demo3.ec-cube.net/entry)\n\nMarkup:\ninclude /assets/tmpl/elements/19.1.register.pug\n+ec-registerRole\n\nStyleguide 19.1\n\n*/\n.ec-registerRole{\n @include container;\n & &__actions {\n padding-top:20px;\n text-align: center;\n @include media_desktop {\n text-align: left;\n }\n p {\n margin-bottom: 16px;\n }\n }\n .ec-blockBtn--action {\n margin-bottom: 16px;\n }\n}\n.ec-registerCompleteRole {\n @include container;\n}\n","@import \"../mixins/media\";\n/*\nお問い合わせ\n\nお問い合わせ に関する Project コンポーネントを定義します。\n\nex [お問い合わせ](http://demo3.ec-cube.net/contact)\n\nMarkup:\ninclude /assets/tmpl/elements/19.2.contact.pug\n+ec-contactRole\n\nStyleguide 19.2\n\n*/\n.ec-contactRole{\n @include container;\n & &__actions {\n padding-top:20px;\n }\n p {\n margin:16px 0;\n }\n\n}\n.ec-contactConfirmRole {\n @include container;\n & &__actions {\n padding-top:20px;\n }\n .ec-blockBtn--action {\n margin-bottom: 16px;\n }\n}\n.ec-contactCompleteRole {\n @include container;\n}\n","@import \"../mixins/media\";\n/*\nお客様情報の入力\n\nログインせずゲストとして商品を購入する際の、お客様情報の入力 に関する Project コンポーネントを定義します。\n\nex [カートSTEP2 お客様情報の入力(ゲスト購入)](http://demo3.ec-cube.net/shopping/nonmember)\n\nMarkup:\ninclude /assets/tmpl/elements/19.3.customer.pug\n+ec-customerRole\nhoge\n\nStyleguide 19.3\n\n*/\n.ec-customerRole{\n @include container;\n & &__actions {\n padding-top:20px;\n }\n .ec-blockBtn--action {\n margin-bottom: 10px;\n @include media_desktop {\n margin-bottom: 16px;\n }\n }\n}\n\n.ec-contactConfirmRole {\n @include container;\n & &__actions {\n padding-top:20px;\n }\n .ec-blockBtn--action {\n margin-bottom: 16px;\n }\n}\n.ec-contactCompleteRole {\n @include container;\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/media\";\n@import \"../mixins/animation\";\n/*\n404ページ\n\n404 エラー画面で使用するページコンポーネントです。\n\nex [404エラー画面](http://demo3.ec-cube.net/404)\n\nMarkup:\ninclude /assets/tmpl/elements/20.1.404.pug\n+ec-404Role\n\nStyleguide 20.1\n\n*/\n.ec-404Role{\n @include commonStyle();\n width: 100%;\n height: 100vh;\n background-color: #f2f2f2;\n text-align: center;\n box-sizing: border-box;\n & &__icon{\n img {\n width: 1em;\n height: 1em;\n }\n }\n & &__title{\n font-weight: bold;\n font-size: 25px;\n }\n\n}\n","@import \"../mixins/media\";\n/*\n退会手続き\n\n退会手続きで使用するページコンポーネントです。\n\nex [退会手続き](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawRole\n\nStyleguide 21.1\n\n*/\n.ec-withdrawRole{\n @include container;\n text-align: center;\n padding: 0 16px;\n & &__title{\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px;\n }\n & &__description{\n margin-bottom: 32px;\n font-size: 16px;\n }\n .ec-icon {\n img {\n width: 100px;\n height: 100px;\n }\n }\n}/*\n退会手続き実行確認\n\n退会手続き実行確認で使用するページコンポーネントです。\n\nex [退会手続き 退会手続きへボタン→押下](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawConfirm\n\nStyleguide 21.1.2\n\n*/\n.ec-withdrawConfirmRole {\n & &__cancel {\n margin-bottom: 20px;\n }\n & &__title{\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px;\n }\n & &__description{\n margin-bottom: 32px;\n font-size: 16px;\n }\n .ec-icon {\n img {\n width: 100px;\n height: 100px;\n }\n }\n}\n","@import \"../mixins/media\";\n/*\n会員情報編集完了\n\n会員情報編集完了で使用するページコンポーネントです。\n\nex [会員情報編集完了](http://demo3.ec-cube.net/mypage/change_complete)\n\nMarkup:\ninclude /assets/tmpl/elements/22.1.editComplete.pug\n+ec-userEditCompleteRole\n\nStyleguide 22.1\n\n*/\n.ec-userEditCompleteRole{\n @include container;\n text-align: center;\n padding: 0 16px;\n & &__title{\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px;\n @include media_desktop(){\n font-size: 32px;\n }\n }\n & &__description{\n margin-bottom: 32px;\n font-size: 16px;\n }\n}\n"]} \ No newline at end of file diff --git a/html/template/default/assets/css/style.min.css b/html/template/default/assets/css/style.min.css index ca6fad36262..55e302c0f84 100755 --- a/html/template/default/assets/css/style.min.css +++ b/html/template/default/assets/css/style.min.css @@ -1,2 +1,2 @@ -@charset "UTF-8";/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}body{font-family:Roboto,"游ゴシック",YuGothic,"Yu Gothic","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN",Arial,"メイリオ",Meiryo,sans-serif;color:#525263;transition:z-index 0s .005s;background:#f6f6f6;margin:0}a{text-decoration:none}pre{background-color:transparent;border:none;padding:16px 0}p{-webkit-margin-before:0;-webkit-margin-after:0}.ec-headingTitle{margin:0 0 8px;font-size:32px;font-weight:400;color:#525263}.ec-pageHeader h1{margin:0 0 8px;border-bottom:1px dotted #ccc;border-top:1px solid #ccc;padding:8px 0 12px;font-size:16px;font-weight:700}.ec-heading{margin:24px 0}.ec-heading-bold{margin:16px 0;font-size:16px;font-weight:700}.ec-rectHeading h1,.ec-rectHeading h2,.ec-rectHeading h3,.ec-rectHeading h4,.ec-rectHeading h5,.ec-rectHeading h6{background:#f3f3f3;padding:8px 12px;font-size:20px;font-weight:700}.ec-reportHeading{width:100%;border-top:1px dotted #ccc;margin:20px 0 30px;padding:0;text-align:center;font-size:24px;font-weight:700}.ec-reportHeading h1,.ec-reportHeading h2,.ec-reportHeading h3,.ec-reportHeading h4,.ec-reportHeading h5,.ec-reportHeading h6,.ec-reportHeading p{font-weight:700;font-size:24px}.ec-link{color:#0092c4;text-decoration:none;cursor:pointer}.ec-link:hover{color:#33a8d0;text-decoration:none}.ec-font-bold{font-weight:700}.ec-color-grey{color:#9a947e}.ec-color-red{color:#de5d50}.ec-color-accent{color:#de5d50}.ec-font-size-1{font-size:12px}.ec-font-size-2{font-size:14px}.ec-font-size-3{font-size:16px}.ec-font-size-4{font-size:20px}.ec-font-size-5{font-size:32px}.ec-font-size-6{font-size:40px}.ec-text-ac{text-align:center}.ec-price .ec-price__unit{font-size:18px;font-weight:700}.ec-price .ec-price__price{display:inline-block;padding:0 .3em;font-size:18px;font-weight:700}.ec-price .ec-price__tax{font-size:12px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.ec-reportDescription{margin-bottom:32px;text-align:center;font-size:16px;line-height:1.4}.ec-para-normal{margin-bottom:16px}.ec-definitions,.ec-definitions--soft{margin:5px 0;display:block}.ec-definitions dd,.ec-definitions dt,.ec-definitions--soft dd,.ec-definitions--soft dt{display:inline-block;margin:0}.ec-definitions dt,.ec-definitions--soft dt{font-weight:700}.ec-definitions--soft dt{font-weight:400}.ec-borderedDefs{width:100%;border-top:1px dotted #ccc;margin-bottom:16px}.ec-borderedDefs dl{display:flex;border-bottom:1px dotted #ccc;margin:0;padding:10px 0 0;flex-wrap:wrap}.ec-borderedDefs dd,.ec-borderedDefs dt{padding:0}.ec-borderedDefs dt{font-weight:400;width:100%;padding-top:0}.ec-borderedDefs dd{padding:0;width:100%;line-height:2.5}.ec-borderedDefs p{line-height:1.4}.ec-list-chilled{display:table-row;border:0 none;padding:8px 0}.ec-list-chilled dd,.ec-list-chilled dt{display:table-cell;border-bottom:1px dotted #ccc;padding:0}.ec-list-chilled dt{width:30%}.ec-list-chilled dd{padding:0}.ec-borderedList{width:100%;border-top:0;list-style:none;padding:0}.ec-borderedList li{border-bottom:1px dotted #ccc}.ec-list-chilled{display:table-row;border:0 none;padding:8px 0}.ec-list-chilled dd,.ec-list-chilled dt{display:table-cell;border-bottom:1px dotted #ccc;padding:16px 0}.ec-list-chilled dt{width:30%}.ec-list-chilled dd{padding:16px}.ec-inlineBtn{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding:10px 16px;text-decoration:none;color:#525263;background-color:#f5f7f8;border-color:#ccc}.ec-inlineBtn.active.focus,.ec-inlineBtn.active:focus,.ec-inlineBtn.focus,.ec-inlineBtn:active.focus,.ec-inlineBtn:active:focus,.ec-inlineBtn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-inlineBtn.focus,.ec-inlineBtn:focus,.ec-inlineBtn:hover{color:#525263;text-decoration:none}.ec-inlineBtn.active,.ec-inlineBtn:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-inlineBtn.disabled,.ec-inlineBtn[disabled],fieldset[disabled] .ec-inlineBtn{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-inlineBtn.focus,.ec-inlineBtn:focus{color:#525263;background-color:#d7dfe3;border-color:#8c8c8c}.ec-inlineBtn:hover{color:#525263;background-color:#d7dfe3;border-color:#adadad}.ec-inlineBtn.active,.ec-inlineBtn:active,.open>.ec-inlineBtn.dropdown-toggle{color:#525263;background-color:#d7dfe3;border-color:#adadad}.ec-inlineBtn.active.focus,.ec-inlineBtn.active:focus,.ec-inlineBtn.active:hover,.ec-inlineBtn:active.focus,.ec-inlineBtn:active:focus,.ec-inlineBtn:active:hover,.open>.ec-inlineBtn.dropdown-toggle.focus,.open>.ec-inlineBtn.dropdown-toggle:focus,.open>.ec-inlineBtn.dropdown-toggle:hover{color:#525263;background-color:#c2ced4;border-color:#8c8c8c}.ec-inlineBtn.active,.ec-inlineBtn:active,.open>.ec-inlineBtn.dropdown-toggle{background-image:none}.ec-inlineBtn.disabled.focus,.ec-inlineBtn.disabled:focus,.ec-inlineBtn.disabled:hover,.ec-inlineBtn[disabled].focus,.ec-inlineBtn[disabled]:focus,.ec-inlineBtn[disabled]:hover,fieldset[disabled] .ec-inlineBtn.focus,fieldset[disabled] .ec-inlineBtn:focus,fieldset[disabled] .ec-inlineBtn:hover{background-color:#f5f7f8;border-color:#ccc}.ec-inlineBtn .badge{color:#f5f7f8;background-color:#525263}.ec-inlineBtn .ec-icon img{width:1em;vertical-align:text-bottom}.ec-inlineBtn--primary{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:#5cb1b1;border-color:#5cb1b1}.ec-inlineBtn--primary.active.focus,.ec-inlineBtn--primary.active:focus,.ec-inlineBtn--primary.focus,.ec-inlineBtn--primary:active.focus,.ec-inlineBtn--primary:active:focus,.ec-inlineBtn--primary:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-inlineBtn--primary.focus,.ec-inlineBtn--primary:focus,.ec-inlineBtn--primary:hover{color:#525263;text-decoration:none}.ec-inlineBtn--primary.active,.ec-inlineBtn--primary:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-inlineBtn--primary.disabled,.ec-inlineBtn--primary[disabled],fieldset[disabled] .ec-inlineBtn--primary{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-inlineBtn--primary.focus,.ec-inlineBtn--primary:focus{color:#fff;background-color:#479393;border-color:#2e6060}.ec-inlineBtn--primary:hover{color:#fff;background-color:#479393;border-color:#438d8d}.ec-inlineBtn--primary.active,.ec-inlineBtn--primary:active,.open>.ec-inlineBtn--primary.dropdown-toggle{color:#fff;background-color:#479393;border-color:#438d8d}.ec-inlineBtn--primary.active.focus,.ec-inlineBtn--primary.active:focus,.ec-inlineBtn--primary.active:hover,.ec-inlineBtn--primary:active.focus,.ec-inlineBtn--primary:active:focus,.ec-inlineBtn--primary:active:hover,.open>.ec-inlineBtn--primary.dropdown-toggle.focus,.open>.ec-inlineBtn--primary.dropdown-toggle:focus,.open>.ec-inlineBtn--primary.dropdown-toggle:hover{color:#fff;background-color:#3b7b7b;border-color:#2e6060}.ec-inlineBtn--primary.active,.ec-inlineBtn--primary:active,.open>.ec-inlineBtn--primary.dropdown-toggle{background-image:none}.ec-inlineBtn--primary.disabled.focus,.ec-inlineBtn--primary.disabled:focus,.ec-inlineBtn--primary.disabled:hover,.ec-inlineBtn--primary[disabled].focus,.ec-inlineBtn--primary[disabled]:focus,.ec-inlineBtn--primary[disabled]:hover,fieldset[disabled] .ec-inlineBtn--primary.focus,fieldset[disabled] .ec-inlineBtn--primary:focus,fieldset[disabled] .ec-inlineBtn--primary:hover{background-color:#5cb1b1;border-color:#5cb1b1}.ec-inlineBtn--primary .badge{color:#5cb1b1;background-color:#fff}.ec-inlineBtn--primary .ec-icon img{width:1em;vertical-align:text-bottom}.ec-inlineBtn--action{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:#de5d50;border-color:#de5d50}.ec-inlineBtn--action.active.focus,.ec-inlineBtn--action.active:focus,.ec-inlineBtn--action.focus,.ec-inlineBtn--action:active.focus,.ec-inlineBtn--action:active:focus,.ec-inlineBtn--action:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-inlineBtn--action.focus,.ec-inlineBtn--action:focus,.ec-inlineBtn--action:hover{color:#525263;text-decoration:none}.ec-inlineBtn--action.active,.ec-inlineBtn--action:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-inlineBtn--action.disabled,.ec-inlineBtn--action[disabled],fieldset[disabled] .ec-inlineBtn--action{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-inlineBtn--action.focus,.ec-inlineBtn--action:focus{color:#fff;background-color:#d33828;border-color:#93271c}.ec-inlineBtn--action:hover{color:#fff;background-color:#d33828;border-color:#cb3526}.ec-inlineBtn--action.active,.ec-inlineBtn--action:active,.open>.ec-inlineBtn--action.dropdown-toggle{color:#fff;background-color:#d33828;border-color:#cb3526}.ec-inlineBtn--action.active.focus,.ec-inlineBtn--action.active:focus,.ec-inlineBtn--action.active:hover,.ec-inlineBtn--action:active.focus,.ec-inlineBtn--action:active:focus,.ec-inlineBtn--action:active:hover,.open>.ec-inlineBtn--action.dropdown-toggle.focus,.open>.ec-inlineBtn--action.dropdown-toggle:focus,.open>.ec-inlineBtn--action.dropdown-toggle:hover{color:#fff;background-color:#b53022;border-color:#93271c}.ec-inlineBtn--action.active,.ec-inlineBtn--action:active,.open>.ec-inlineBtn--action.dropdown-toggle{background-image:none}.ec-inlineBtn--action.disabled.focus,.ec-inlineBtn--action.disabled:focus,.ec-inlineBtn--action.disabled:hover,.ec-inlineBtn--action[disabled].focus,.ec-inlineBtn--action[disabled]:focus,.ec-inlineBtn--action[disabled]:hover,fieldset[disabled] .ec-inlineBtn--action.focus,fieldset[disabled] .ec-inlineBtn--action:focus,fieldset[disabled] .ec-inlineBtn--action:hover{background-color:#de5d50;border-color:#de5d50}.ec-inlineBtn--action .badge{color:#de5d50;background-color:#fff}.ec-inlineBtn--action .ec-icon img{width:1em;vertical-align:text-bottom}.ec-inlineBtn--cancel{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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}.ec-inlineBtn--cancel.active.focus,.ec-inlineBtn--cancel.active:focus,.ec-inlineBtn--cancel.focus,.ec-inlineBtn--cancel:active.focus,.ec-inlineBtn--cancel:active:focus,.ec-inlineBtn--cancel:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-inlineBtn--cancel.focus,.ec-inlineBtn--cancel:focus,.ec-inlineBtn--cancel:hover{color:#525263;text-decoration:none}.ec-inlineBtn--cancel.active,.ec-inlineBtn--cancel:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-inlineBtn--cancel.disabled,.ec-inlineBtn--cancel[disabled],fieldset[disabled] .ec-inlineBtn--cancel{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-inlineBtn--cancel.focus,.ec-inlineBtn--cancel:focus{color:#fff;background-color:#3b3b47;border-color:#18181d}.ec-inlineBtn--cancel:hover{color:#fff;background-color:#3b3b47;border-color:#363642}.ec-inlineBtn--cancel.active,.ec-inlineBtn--cancel:active,.open>.ec-inlineBtn--cancel.dropdown-toggle{color:#fff;background-color:#3b3b47;border-color:#363642}.ec-inlineBtn--cancel.active.focus,.ec-inlineBtn--cancel.active:focus,.ec-inlineBtn--cancel.active:hover,.ec-inlineBtn--cancel:active.focus,.ec-inlineBtn--cancel:active:focus,.ec-inlineBtn--cancel:active:hover,.open>.ec-inlineBtn--cancel.dropdown-toggle.focus,.open>.ec-inlineBtn--cancel.dropdown-toggle:focus,.open>.ec-inlineBtn--cancel.dropdown-toggle:hover{color:#fff;background-color:#2b2b34;border-color:#18181d}.ec-inlineBtn--cancel.active,.ec-inlineBtn--cancel:active,.open>.ec-inlineBtn--cancel.dropdown-toggle{background-image:none}.ec-inlineBtn--cancel.disabled.focus,.ec-inlineBtn--cancel.disabled:focus,.ec-inlineBtn--cancel.disabled:hover,.ec-inlineBtn--cancel[disabled].focus,.ec-inlineBtn--cancel[disabled]:focus,.ec-inlineBtn--cancel[disabled]:hover,fieldset[disabled] .ec-inlineBtn--cancel.focus,fieldset[disabled] .ec-inlineBtn--cancel:focus,fieldset[disabled] .ec-inlineBtn--cancel:hover{background-color:#525263;border-color:#525263}.ec-inlineBtn--cancel .badge{color:#525263;background-color:#fff}.ec-inlineBtn--cancel .ec-icon img{width:1em;vertical-align:text-bottom}.ec-blockBtn{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding:10px 16px;text-decoration:none;color:#525263;background-color:#f5f7f8;border-color:#ccc;display:block;width:100%;height:56px;line-height:56px;padding-top:0;padding-bottom:0}.ec-blockBtn.active.focus,.ec-blockBtn.active:focus,.ec-blockBtn.focus,.ec-blockBtn:active.focus,.ec-blockBtn:active:focus,.ec-blockBtn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-blockBtn.focus,.ec-blockBtn:focus,.ec-blockBtn:hover{color:#525263;text-decoration:none}.ec-blockBtn.active,.ec-blockBtn:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-blockBtn.disabled,.ec-blockBtn[disabled],fieldset[disabled] .ec-blockBtn{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-blockBtn.focus,.ec-blockBtn:focus{color:#525263;background-color:#d7dfe3;border-color:#8c8c8c}.ec-blockBtn:hover{color:#525263;background-color:#d7dfe3;border-color:#adadad}.ec-blockBtn.active,.ec-blockBtn:active,.open>.ec-blockBtn.dropdown-toggle{color:#525263;background-color:#d7dfe3;border-color:#adadad}.ec-blockBtn.active.focus,.ec-blockBtn.active:focus,.ec-blockBtn.active:hover,.ec-blockBtn:active.focus,.ec-blockBtn:active:focus,.ec-blockBtn:active:hover,.open>.ec-blockBtn.dropdown-toggle.focus,.open>.ec-blockBtn.dropdown-toggle:focus,.open>.ec-blockBtn.dropdown-toggle:hover{color:#525263;background-color:#c2ced4;border-color:#8c8c8c}.ec-blockBtn.active,.ec-blockBtn:active,.open>.ec-blockBtn.dropdown-toggle{background-image:none}.ec-blockBtn.disabled.focus,.ec-blockBtn.disabled:focus,.ec-blockBtn.disabled:hover,.ec-blockBtn[disabled].focus,.ec-blockBtn[disabled]:focus,.ec-blockBtn[disabled]:hover,fieldset[disabled] .ec-blockBtn.focus,fieldset[disabled] .ec-blockBtn:focus,fieldset[disabled] .ec-blockBtn:hover{background-color:#f5f7f8;border-color:#ccc}.ec-blockBtn .badge{color:#f5f7f8;background-color:#525263}.ec-blockBtn .ec-icon img{width:1em;vertical-align:text-bottom}.ec-blockBtn--primary{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:#5cb1b1;border-color:#5cb1b1;display:block;width:100%;height:56px;line-height:56px;padding-top:0;padding-bottom:0}.ec-blockBtn--primary.active.focus,.ec-blockBtn--primary.active:focus,.ec-blockBtn--primary.focus,.ec-blockBtn--primary:active.focus,.ec-blockBtn--primary:active:focus,.ec-blockBtn--primary:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-blockBtn--primary.focus,.ec-blockBtn--primary:focus,.ec-blockBtn--primary:hover{color:#525263;text-decoration:none}.ec-blockBtn--primary.active,.ec-blockBtn--primary:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-blockBtn--primary.disabled,.ec-blockBtn--primary[disabled],fieldset[disabled] .ec-blockBtn--primary{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-blockBtn--primary.focus,.ec-blockBtn--primary:focus{color:#fff;background-color:#479393;border-color:#2e6060}.ec-blockBtn--primary:hover{color:#fff;background-color:#479393;border-color:#438d8d}.ec-blockBtn--primary.active,.ec-blockBtn--primary:active,.open>.ec-blockBtn--primary.dropdown-toggle{color:#fff;background-color:#479393;border-color:#438d8d}.ec-blockBtn--primary.active.focus,.ec-blockBtn--primary.active:focus,.ec-blockBtn--primary.active:hover,.ec-blockBtn--primary:active.focus,.ec-blockBtn--primary:active:focus,.ec-blockBtn--primary:active:hover,.open>.ec-blockBtn--primary.dropdown-toggle.focus,.open>.ec-blockBtn--primary.dropdown-toggle:focus,.open>.ec-blockBtn--primary.dropdown-toggle:hover{color:#fff;background-color:#3b7b7b;border-color:#2e6060}.ec-blockBtn--primary.active,.ec-blockBtn--primary:active,.open>.ec-blockBtn--primary.dropdown-toggle{background-image:none}.ec-blockBtn--primary.disabled.focus,.ec-blockBtn--primary.disabled:focus,.ec-blockBtn--primary.disabled:hover,.ec-blockBtn--primary[disabled].focus,.ec-blockBtn--primary[disabled]:focus,.ec-blockBtn--primary[disabled]:hover,fieldset[disabled] .ec-blockBtn--primary.focus,fieldset[disabled] .ec-blockBtn--primary:focus,fieldset[disabled] .ec-blockBtn--primary:hover{background-color:#5cb1b1;border-color:#5cb1b1}.ec-blockBtn--primary .badge{color:#5cb1b1;background-color:#fff}.ec-blockBtn--primary .ec-icon img{width:1em;vertical-align:text-bottom}.ec-blockBtn--action{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:#de5d50;border-color:#de5d50;display:block;width:100%;height:56px;line-height:56px;padding-top:0;padding-bottom:0}.ec-blockBtn--action.active.focus,.ec-blockBtn--action.active:focus,.ec-blockBtn--action.focus,.ec-blockBtn--action:active.focus,.ec-blockBtn--action:active:focus,.ec-blockBtn--action:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-blockBtn--action.focus,.ec-blockBtn--action:focus,.ec-blockBtn--action:hover{color:#525263;text-decoration:none}.ec-blockBtn--action.active,.ec-blockBtn--action:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-blockBtn--action.disabled,.ec-blockBtn--action[disabled],fieldset[disabled] .ec-blockBtn--action{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-blockBtn--action.focus,.ec-blockBtn--action:focus{color:#fff;background-color:#d33828;border-color:#93271c}.ec-blockBtn--action:hover{color:#fff;background-color:#d33828;border-color:#cb3526}.ec-blockBtn--action.active,.ec-blockBtn--action:active,.open>.ec-blockBtn--action.dropdown-toggle{color:#fff;background-color:#d33828;border-color:#cb3526}.ec-blockBtn--action.active.focus,.ec-blockBtn--action.active:focus,.ec-blockBtn--action.active:hover,.ec-blockBtn--action:active.focus,.ec-blockBtn--action:active:focus,.ec-blockBtn--action:active:hover,.open>.ec-blockBtn--action.dropdown-toggle.focus,.open>.ec-blockBtn--action.dropdown-toggle:focus,.open>.ec-blockBtn--action.dropdown-toggle:hover{color:#fff;background-color:#b53022;border-color:#93271c}.ec-blockBtn--action.active,.ec-blockBtn--action:active,.open>.ec-blockBtn--action.dropdown-toggle{background-image:none}.ec-blockBtn--action.disabled.focus,.ec-blockBtn--action.disabled:focus,.ec-blockBtn--action.disabled:hover,.ec-blockBtn--action[disabled].focus,.ec-blockBtn--action[disabled]:focus,.ec-blockBtn--action[disabled]:hover,fieldset[disabled] .ec-blockBtn--action.focus,fieldset[disabled] .ec-blockBtn--action:focus,fieldset[disabled] .ec-blockBtn--action:hover{background-color:#de5d50;border-color:#de5d50}.ec-blockBtn--action .badge{color:#de5d50;background-color:#fff}.ec-blockBtn--action .ec-icon img{width:1em;vertical-align:text-bottom}.ec-blockBtn--cancel{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:100%;height:56px;line-height:56px;padding-top:0;padding-bottom:0}.ec-blockBtn--cancel.active.focus,.ec-blockBtn--cancel.active:focus,.ec-blockBtn--cancel.focus,.ec-blockBtn--cancel:active.focus,.ec-blockBtn--cancel:active:focus,.ec-blockBtn--cancel:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-blockBtn--cancel.focus,.ec-blockBtn--cancel:focus,.ec-blockBtn--cancel:hover{color:#525263;text-decoration:none}.ec-blockBtn--cancel.active,.ec-blockBtn--cancel:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-blockBtn--cancel.disabled,.ec-blockBtn--cancel[disabled],fieldset[disabled] .ec-blockBtn--cancel{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-blockBtn--cancel.focus,.ec-blockBtn--cancel:focus{color:#fff;background-color:#3b3b47;border-color:#18181d}.ec-blockBtn--cancel:hover{color:#fff;background-color:#3b3b47;border-color:#363642}.ec-blockBtn--cancel.active,.ec-blockBtn--cancel:active,.open>.ec-blockBtn--cancel.dropdown-toggle{color:#fff;background-color:#3b3b47;border-color:#363642}.ec-blockBtn--cancel.active.focus,.ec-blockBtn--cancel.active:focus,.ec-blockBtn--cancel.active:hover,.ec-blockBtn--cancel:active.focus,.ec-blockBtn--cancel:active:focus,.ec-blockBtn--cancel:active:hover,.open>.ec-blockBtn--cancel.dropdown-toggle.focus,.open>.ec-blockBtn--cancel.dropdown-toggle:focus,.open>.ec-blockBtn--cancel.dropdown-toggle:hover{color:#fff;background-color:#2b2b34;border-color:#18181d}.ec-blockBtn--cancel.active,.ec-blockBtn--cancel:active,.open>.ec-blockBtn--cancel.dropdown-toggle{background-image:none}.ec-blockBtn--cancel.disabled.focus,.ec-blockBtn--cancel.disabled:focus,.ec-blockBtn--cancel.disabled:hover,.ec-blockBtn--cancel[disabled].focus,.ec-blockBtn--cancel[disabled]:focus,.ec-blockBtn--cancel[disabled]:hover,fieldset[disabled] .ec-blockBtn--cancel.focus,fieldset[disabled] .ec-blockBtn--cancel:focus,fieldset[disabled] .ec-blockBtn--cancel:hover{background-color:#525263;border-color:#525263}.ec-blockBtn--cancel .badge{color:#525263;background-color:#fff}.ec-blockBtn--cancel .ec-icon img{width:1em;vertical-align:text-bottom}.ec-closeBtn{cursor:pointer}.ec-closeBtn .ec-icon img{display:inline-block;margin-right:5px;width:1em;height:1em;position:relative;top:-1px;vertical-align:middle}.ec-closeBtn--circle{display:block;border:0 none;padding:0;margin:0;text-shadow:none;box-shadow:none;border-radius:50%;background:#b8bec4;cursor:pointer;width:40px;min-width:40px;max-width:40px;height:40px;line-height:40px;vertical-align:middle;position:relative;text-align:center}.ec-closeBtn--circle .ec-icon img{display:block;margin-top:-.5em;margin-left:-.5em;width:1em;height:1em;position:absolute;top:50%;left:50%}.ec-blockTopBtn{display:none;position:fixed;width:120px;height:40px;right:0;bottom:10px;cursor:pointer;color:#fff;text-align:center;line-height:40px;opacity:.8;background-color:#9da3a9}.ec-birth input[type=search],.ec-halfInput input[type=search],.ec-input input[type=search],.ec-numberInput input[type=search],.ec-select input[type=search],.ec-telInput input[type=search],.ec-zipInput input[type=search]{box-sizing:border-box}.ec-birth input[type=checkbox],.ec-birth input[type=radio],.ec-halfInput input[type=checkbox],.ec-halfInput input[type=radio],.ec-input input[type=checkbox],.ec-input input[type=radio],.ec-numberInput input[type=checkbox],.ec-numberInput input[type=radio],.ec-select input[type=checkbox],.ec-select input[type=radio],.ec-telInput input[type=checkbox],.ec-telInput input[type=radio],.ec-zipInput input[type=checkbox],.ec-zipInput input[type=radio]{margin:4px 0 0;line-height:normal}.ec-birth input[type=file],.ec-halfInput input[type=file],.ec-input input[type=file],.ec-numberInput input[type=file],.ec-select input[type=file],.ec-telInput input[type=file],.ec-zipInput input[type=file]{display:block}.ec-birth input[type=range],.ec-halfInput input[type=range],.ec-input input[type=range],.ec-numberInput input[type=range],.ec-select input[type=range],.ec-telInput input[type=range],.ec-zipInput input[type=range]{display:block;width:100%}.ec-birth select[multiple],.ec-birth select[size],.ec-halfInput select[multiple],.ec-halfInput select[size],.ec-input select[multiple],.ec-input select[size],.ec-numberInput select[multiple],.ec-numberInput select[size],.ec-select select[multiple],.ec-select select[size],.ec-telInput select[multiple],.ec-telInput select[size],.ec-zipInput select[multiple],.ec-zipInput select[size]{height:auto}.ec-birth input[type=checkbox]:focus,.ec-birth input[type=file]:focus,.ec-birth input[type=radio]:focus,.ec-halfInput input[type=checkbox]:focus,.ec-halfInput input[type=file]:focus,.ec-halfInput input[type=radio]:focus,.ec-input input[type=checkbox]:focus,.ec-input input[type=file]:focus,.ec-input input[type=radio]:focus,.ec-numberInput input[type=checkbox]:focus,.ec-numberInput input[type=file]:focus,.ec-numberInput input[type=radio]:focus,.ec-select input[type=checkbox]:focus,.ec-select input[type=file]:focus,.ec-select input[type=radio]:focus,.ec-telInput input[type=checkbox]:focus,.ec-telInput input[type=file]:focus,.ec-telInput input[type=radio]:focus,.ec-zipInput input[type=checkbox]:focus,.ec-zipInput input[type=file]:focus,.ec-zipInput input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-birth input,.ec-halfInput input,.ec-input input,.ec-numberInput input,.ec-select input,.ec-telInput input,.ec-zipInput input{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-appearance:none;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;border-radius:3px}.ec-birth input:focus,.ec-halfInput input:focus,.ec-input input:focus,.ec-numberInput input:focus,.ec-select input:focus,.ec-telInput input:focus,.ec-zipInput input:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.ec-birth input::-moz-placeholder,.ec-halfInput input::-moz-placeholder,.ec-input input::-moz-placeholder,.ec-numberInput input::-moz-placeholder,.ec-select input::-moz-placeholder,.ec-telInput input::-moz-placeholder,.ec-zipInput input::-moz-placeholder{color:#999;opacity:1}.ec-birth input:-ms-input-placeholder,.ec-halfInput input:-ms-input-placeholder,.ec-input input:-ms-input-placeholder,.ec-numberInput input:-ms-input-placeholder,.ec-select input:-ms-input-placeholder,.ec-telInput input:-ms-input-placeholder,.ec-zipInput input:-ms-input-placeholder{color:#999}.ec-birth input::-webkit-input-placeholder,.ec-halfInput input::-webkit-input-placeholder,.ec-input input::-webkit-input-placeholder,.ec-numberInput input::-webkit-input-placeholder,.ec-select input::-webkit-input-placeholder,.ec-telInput input::-webkit-input-placeholder,.ec-zipInput input::-webkit-input-placeholder{color:#999}.ec-birth input::-ms-expand,.ec-halfInput input::-ms-expand,.ec-input input::-ms-expand,.ec-numberInput input::-ms-expand,.ec-select input::-ms-expand,.ec-telInput input::-ms-expand,.ec-zipInput input::-ms-expand{border:0;background-color:transparent}.ec-birth input[disabled],.ec-birth input[readonly],.ec-halfInput input[disabled],.ec-halfInput input[readonly],.ec-input input[disabled],.ec-input input[readonly],.ec-numberInput input[disabled],.ec-numberInput input[readonly],.ec-select input[disabled],.ec-select input[readonly],.ec-telInput input[disabled],.ec-telInput input[readonly],.ec-zipInput input[disabled],.ec-zipInput input[readonly],fieldset[disabled] .ec-birth input,fieldset[disabled] .ec-halfInput input,fieldset[disabled] .ec-input input,fieldset[disabled] .ec-numberInput input,fieldset[disabled] .ec-select input,fieldset[disabled] .ec-telInput input,fieldset[disabled] .ec-zipInput input{background-color:#eee;opacity:1}.ec-birth input[disabled],.ec-halfInput input[disabled],.ec-input input[disabled],.ec-numberInput input[disabled],.ec-select input[disabled],.ec-telInput input[disabled],.ec-zipInput input[disabled],fieldset[disabled] .ec-birth input,fieldset[disabled] .ec-halfInput input,fieldset[disabled] .ec-input input,fieldset[disabled] .ec-numberInput input,fieldset[disabled] .ec-select input,fieldset[disabled] .ec-telInput input,fieldset[disabled] .ec-zipInput input{cursor:not-allowed}.ec-birth select,.ec-halfInput select,.ec-input select,.ec-numberInput select,.ec-select select,.ec-telInput select,.ec-zipInput select{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-appearance:none;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;border-radius:3px}.ec-birth select:focus,.ec-halfInput select:focus,.ec-input select:focus,.ec-numberInput select:focus,.ec-select select:focus,.ec-telInput select:focus,.ec-zipInput select:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.ec-birth select::-moz-placeholder,.ec-halfInput select::-moz-placeholder,.ec-input select::-moz-placeholder,.ec-numberInput select::-moz-placeholder,.ec-select select::-moz-placeholder,.ec-telInput select::-moz-placeholder,.ec-zipInput select::-moz-placeholder{color:#999;opacity:1}.ec-birth select:-ms-input-placeholder,.ec-halfInput select:-ms-input-placeholder,.ec-input select:-ms-input-placeholder,.ec-numberInput select:-ms-input-placeholder,.ec-select select:-ms-input-placeholder,.ec-telInput select:-ms-input-placeholder,.ec-zipInput select:-ms-input-placeholder{color:#999}.ec-birth select::-webkit-input-placeholder,.ec-halfInput select::-webkit-input-placeholder,.ec-input select::-webkit-input-placeholder,.ec-numberInput select::-webkit-input-placeholder,.ec-select select::-webkit-input-placeholder,.ec-telInput select::-webkit-input-placeholder,.ec-zipInput select::-webkit-input-placeholder{color:#999}.ec-birth select::-ms-expand,.ec-halfInput select::-ms-expand,.ec-input select::-ms-expand,.ec-numberInput select::-ms-expand,.ec-select select::-ms-expand,.ec-telInput select::-ms-expand,.ec-zipInput select::-ms-expand{border:0;background-color:transparent}.ec-birth select[disabled],.ec-birth select[readonly],.ec-halfInput select[disabled],.ec-halfInput select[readonly],.ec-input select[disabled],.ec-input select[readonly],.ec-numberInput select[disabled],.ec-numberInput select[readonly],.ec-select select[disabled],.ec-select select[readonly],.ec-telInput select[disabled],.ec-telInput select[readonly],.ec-zipInput select[disabled],.ec-zipInput select[readonly],fieldset[disabled] .ec-birth select,fieldset[disabled] .ec-halfInput select,fieldset[disabled] .ec-input select,fieldset[disabled] .ec-numberInput select,fieldset[disabled] .ec-select select,fieldset[disabled] .ec-telInput select,fieldset[disabled] .ec-zipInput select{background-color:#eee;opacity:1}.ec-birth select[disabled],.ec-halfInput select[disabled],.ec-input select[disabled],.ec-numberInput select[disabled],.ec-select select[disabled],.ec-telInput select[disabled],.ec-zipInput select[disabled],fieldset[disabled] .ec-birth select,fieldset[disabled] .ec-halfInput select,fieldset[disabled] .ec-input select,fieldset[disabled] .ec-numberInput select,fieldset[disabled] .ec-select select,fieldset[disabled] .ec-telInput select,fieldset[disabled] .ec-zipInput select{cursor:not-allowed}.ec-birth textarea,.ec-halfInput textarea,.ec-input textarea,.ec-numberInput textarea,.ec-select textarea,.ec-telInput textarea,.ec-zipInput textarea{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-appearance:none;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;border-radius:3px}.ec-birth textarea:focus,.ec-halfInput textarea:focus,.ec-input textarea:focus,.ec-numberInput textarea:focus,.ec-select textarea:focus,.ec-telInput textarea:focus,.ec-zipInput textarea:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.ec-birth textarea::-moz-placeholder,.ec-halfInput textarea::-moz-placeholder,.ec-input textarea::-moz-placeholder,.ec-numberInput textarea::-moz-placeholder,.ec-select textarea::-moz-placeholder,.ec-telInput textarea::-moz-placeholder,.ec-zipInput textarea::-moz-placeholder{color:#999;opacity:1}.ec-birth textarea:-ms-input-placeholder,.ec-halfInput textarea:-ms-input-placeholder,.ec-input textarea:-ms-input-placeholder,.ec-numberInput textarea:-ms-input-placeholder,.ec-select textarea:-ms-input-placeholder,.ec-telInput textarea:-ms-input-placeholder,.ec-zipInput textarea:-ms-input-placeholder{color:#999}.ec-birth textarea::-webkit-input-placeholder,.ec-halfInput textarea::-webkit-input-placeholder,.ec-input textarea::-webkit-input-placeholder,.ec-numberInput textarea::-webkit-input-placeholder,.ec-select textarea::-webkit-input-placeholder,.ec-telInput textarea::-webkit-input-placeholder,.ec-zipInput textarea::-webkit-input-placeholder{color:#999}.ec-birth textarea::-ms-expand,.ec-halfInput textarea::-ms-expand,.ec-input textarea::-ms-expand,.ec-numberInput textarea::-ms-expand,.ec-select textarea::-ms-expand,.ec-telInput textarea::-ms-expand,.ec-zipInput textarea::-ms-expand{border:0;background-color:transparent}.ec-birth textarea[disabled],.ec-birth textarea[readonly],.ec-halfInput textarea[disabled],.ec-halfInput textarea[readonly],.ec-input textarea[disabled],.ec-input textarea[readonly],.ec-numberInput textarea[disabled],.ec-numberInput textarea[readonly],.ec-select textarea[disabled],.ec-select textarea[readonly],.ec-telInput textarea[disabled],.ec-telInput textarea[readonly],.ec-zipInput textarea[disabled],.ec-zipInput textarea[readonly],fieldset[disabled] .ec-birth textarea,fieldset[disabled] .ec-halfInput textarea,fieldset[disabled] .ec-input textarea,fieldset[disabled] .ec-numberInput textarea,fieldset[disabled] .ec-select textarea,fieldset[disabled] .ec-telInput textarea,fieldset[disabled] .ec-zipInput textarea{background-color:#eee;opacity:1}.ec-birth textarea[disabled],.ec-halfInput textarea[disabled],.ec-input textarea[disabled],.ec-numberInput textarea[disabled],.ec-select textarea[disabled],.ec-telInput textarea[disabled],.ec-zipInput textarea[disabled],fieldset[disabled] .ec-birth textarea,fieldset[disabled] .ec-halfInput textarea,fieldset[disabled] .ec-input textarea,fieldset[disabled] .ec-numberInput textarea,fieldset[disabled] .ec-select textarea,fieldset[disabled] .ec-telInput textarea,fieldset[disabled] .ec-zipInput textarea{cursor:not-allowed}.ec-birth input:focus,.ec-birth textarea:focus,.ec-halfInput input:focus,.ec-halfInput textarea:focus,.ec-input input:focus,.ec-input textarea:focus,.ec-numberInput input:focus,.ec-numberInput textarea:focus,.ec-select input:focus,.ec-select textarea:focus,.ec-telInput input:focus,.ec-telInput textarea:focus,.ec-zipInput input:focus,.ec-zipInput textarea:focus{box-shadow:none;border-color:#3c8dbc}.ec-birth input,.ec-halfInput input,.ec-input input,.ec-numberInput input,.ec-select input,.ec-telInput input,.ec-zipInput input{height:40px;margin-bottom:10px}.ec-birth textarea,.ec-halfInput textarea,.ec-input textarea,.ec-numberInput textarea,.ec-select textarea,.ec-telInput textarea,.ec-zipInput textarea{height:auto;min-height:100px}.ec-birth p,.ec-halfInput p,.ec-input p,.ec-numberInput p,.ec-select p,.ec-telInput p,.ec-zipInput p{line-height:1.4}.ec-birth .ec-errorMessage,.ec-halfInput .ec-errorMessage,.ec-input .ec-errorMessage,.ec-numberInput .ec-errorMessage,.ec-select .ec-errorMessage,.ec-telInput .ec-errorMessage,.ec-zipInput .ec-errorMessage{margin-bottom:25px;font-size:12px;font-weight:700;color:#de5d50}.error.ec-birth input,.error.ec-birth select,.error.ec-halfInput input,.error.ec-halfInput select,.error.ec-input input,.error.ec-input select,.error.ec-numberInput input,.error.ec-numberInput select,.error.ec-select input,.error.ec-select select,.error.ec-telInput input,.error.ec-telInput select,.error.ec-zipInput input,.error.ec-zipInput select{margin-bottom:5px;border-color:#cf3f34;background:#fdf1f0}.ec-checkbox .ec-errorMessage{margin-bottom:25px;font-size:12px;font-weight:700;color:#de5d50}.error.ec-checkbox input,.error.ec-checkbox label{border-color:#cf3f34;background:#fdf1f0}.ec-halfInput input[type=text]{display:inline-block;width:47%;margin-left:2%}.ec-halfInput input[type=text]:first-child{margin-left:0}.ec-numberInput input[type=number]{display:inline-block;width:auto;max-width:100px;text-align:right}.ec-zipInput{display:inline-block}.ec-zipInput input{display:inline-block;text-align:left;width:auto;max-width:8em;font-size:16px}.ec-zipInput span{display:inline-block;padding:0 5px 0 3px;margin-left:5px}.ec-zipInputHelp{display:inline-block;margin-left:10px;margin-bottom:16px;vertical-align:baseline;line-height:0}.ec-zipInputHelp .ec-zipInputHelp__icon{display:inline-block;margin-top:-10px;width:20px;height:20px;background:#525263;border-radius:50%;font-size:13px;position:relative;top:-6px}.ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img{width:1em;height:1em;position:relative;left:3px;top:3px}.ec-zipInputHelp span{margin-left:8px;display:inline-block;color:#0092c4;vertical-align:3px}.ec-zipAuto{margin-bottom:16px}.ec-zipAuto .ec-inlineBtn{font-weight:400}.ec-telInput input{max-width:10em;text-align:left}.ec-birth input[type=search],.ec-halfInput input[type=search],.ec-input input[type=search],.ec-numberInput input[type=search],.ec-select input[type=search],.ec-telInput input[type=search],.ec-zipInput input[type=search]{box-sizing:border-box}.ec-birth input[type=checkbox],.ec-birth input[type=radio],.ec-halfInput input[type=checkbox],.ec-halfInput input[type=radio],.ec-input input[type=checkbox],.ec-input input[type=radio],.ec-numberInput input[type=checkbox],.ec-numberInput input[type=radio],.ec-select input[type=checkbox],.ec-select input[type=radio],.ec-telInput input[type=checkbox],.ec-telInput input[type=radio],.ec-zipInput input[type=checkbox],.ec-zipInput input[type=radio]{margin:4px 0 0;line-height:normal}.ec-birth input[type=file],.ec-halfInput input[type=file],.ec-input input[type=file],.ec-numberInput input[type=file],.ec-select input[type=file],.ec-telInput input[type=file],.ec-zipInput input[type=file]{display:block}.ec-birth input[type=range],.ec-halfInput input[type=range],.ec-input input[type=range],.ec-numberInput input[type=range],.ec-select input[type=range],.ec-telInput input[type=range],.ec-zipInput input[type=range]{display:block;width:100%}.ec-birth select[multiple],.ec-birth select[size],.ec-halfInput select[multiple],.ec-halfInput select[size],.ec-input select[multiple],.ec-input select[size],.ec-numberInput select[multiple],.ec-numberInput select[size],.ec-select select[multiple],.ec-select select[size],.ec-telInput select[multiple],.ec-telInput select[size],.ec-zipInput select[multiple],.ec-zipInput select[size]{height:auto}.ec-birth input[type=checkbox]:focus,.ec-birth input[type=file]:focus,.ec-birth input[type=radio]:focus,.ec-halfInput input[type=checkbox]:focus,.ec-halfInput input[type=file]:focus,.ec-halfInput input[type=radio]:focus,.ec-input input[type=checkbox]:focus,.ec-input input[type=file]:focus,.ec-input input[type=radio]:focus,.ec-numberInput input[type=checkbox]:focus,.ec-numberInput input[type=file]:focus,.ec-numberInput input[type=radio]:focus,.ec-select input[type=checkbox]:focus,.ec-select input[type=file]:focus,.ec-select input[type=radio]:focus,.ec-telInput input[type=checkbox]:focus,.ec-telInput input[type=file]:focus,.ec-telInput input[type=radio]:focus,.ec-zipInput input[type=checkbox]:focus,.ec-zipInput input[type=file]:focus,.ec-zipInput input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-birth input,.ec-halfInput input,.ec-input input,.ec-numberInput input,.ec-select input,.ec-telInput input,.ec-zipInput input{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-appearance:none;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;border-radius:3px}.ec-birth input:focus,.ec-halfInput input:focus,.ec-input input:focus,.ec-numberInput input:focus,.ec-select input:focus,.ec-telInput input:focus,.ec-zipInput input:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.ec-birth input::-moz-placeholder,.ec-halfInput input::-moz-placeholder,.ec-input input::-moz-placeholder,.ec-numberInput input::-moz-placeholder,.ec-select input::-moz-placeholder,.ec-telInput input::-moz-placeholder,.ec-zipInput input::-moz-placeholder{color:#999;opacity:1}.ec-birth input:-ms-input-placeholder,.ec-halfInput input:-ms-input-placeholder,.ec-input input:-ms-input-placeholder,.ec-numberInput input:-ms-input-placeholder,.ec-select input:-ms-input-placeholder,.ec-telInput input:-ms-input-placeholder,.ec-zipInput input:-ms-input-placeholder{color:#999}.ec-birth input::-webkit-input-placeholder,.ec-halfInput input::-webkit-input-placeholder,.ec-input input::-webkit-input-placeholder,.ec-numberInput input::-webkit-input-placeholder,.ec-select input::-webkit-input-placeholder,.ec-telInput input::-webkit-input-placeholder,.ec-zipInput input::-webkit-input-placeholder{color:#999}.ec-birth input::-ms-expand,.ec-halfInput input::-ms-expand,.ec-input input::-ms-expand,.ec-numberInput input::-ms-expand,.ec-select input::-ms-expand,.ec-telInput input::-ms-expand,.ec-zipInput input::-ms-expand{border:0;background-color:transparent}.ec-birth input[disabled],.ec-birth input[readonly],.ec-halfInput input[disabled],.ec-halfInput input[readonly],.ec-input input[disabled],.ec-input input[readonly],.ec-numberInput input[disabled],.ec-numberInput input[readonly],.ec-select input[disabled],.ec-select input[readonly],.ec-telInput input[disabled],.ec-telInput input[readonly],.ec-zipInput input[disabled],.ec-zipInput input[readonly],fieldset[disabled] .ec-birth input,fieldset[disabled] .ec-halfInput input,fieldset[disabled] .ec-input input,fieldset[disabled] .ec-numberInput input,fieldset[disabled] .ec-select input,fieldset[disabled] .ec-telInput input,fieldset[disabled] .ec-zipInput input{background-color:#eee;opacity:1}.ec-birth input[disabled],.ec-halfInput input[disabled],.ec-input input[disabled],.ec-numberInput input[disabled],.ec-select input[disabled],.ec-telInput input[disabled],.ec-zipInput input[disabled],fieldset[disabled] .ec-birth input,fieldset[disabled] .ec-halfInput input,fieldset[disabled] .ec-input input,fieldset[disabled] .ec-numberInput input,fieldset[disabled] .ec-select input,fieldset[disabled] .ec-telInput input,fieldset[disabled] .ec-zipInput input{cursor:not-allowed}.ec-birth select,.ec-halfInput select,.ec-input select,.ec-numberInput select,.ec-select select,.ec-telInput select,.ec-zipInput select{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-appearance:none;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;border-radius:3px}.ec-birth select:focus,.ec-halfInput select:focus,.ec-input select:focus,.ec-numberInput select:focus,.ec-select select:focus,.ec-telInput select:focus,.ec-zipInput select:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.ec-birth select::-moz-placeholder,.ec-halfInput select::-moz-placeholder,.ec-input select::-moz-placeholder,.ec-numberInput select::-moz-placeholder,.ec-select select::-moz-placeholder,.ec-telInput select::-moz-placeholder,.ec-zipInput select::-moz-placeholder{color:#999;opacity:1}.ec-birth select:-ms-input-placeholder,.ec-halfInput select:-ms-input-placeholder,.ec-input select:-ms-input-placeholder,.ec-numberInput select:-ms-input-placeholder,.ec-select select:-ms-input-placeholder,.ec-telInput select:-ms-input-placeholder,.ec-zipInput select:-ms-input-placeholder{color:#999}.ec-birth select::-webkit-input-placeholder,.ec-halfInput select::-webkit-input-placeholder,.ec-input select::-webkit-input-placeholder,.ec-numberInput select::-webkit-input-placeholder,.ec-select select::-webkit-input-placeholder,.ec-telInput select::-webkit-input-placeholder,.ec-zipInput select::-webkit-input-placeholder{color:#999}.ec-birth select::-ms-expand,.ec-halfInput select::-ms-expand,.ec-input select::-ms-expand,.ec-numberInput select::-ms-expand,.ec-select select::-ms-expand,.ec-telInput select::-ms-expand,.ec-zipInput select::-ms-expand{border:0;background-color:transparent}.ec-birth select[disabled],.ec-birth select[readonly],.ec-halfInput select[disabled],.ec-halfInput select[readonly],.ec-input select[disabled],.ec-input select[readonly],.ec-numberInput select[disabled],.ec-numberInput select[readonly],.ec-select select[disabled],.ec-select select[readonly],.ec-telInput select[disabled],.ec-telInput select[readonly],.ec-zipInput select[disabled],.ec-zipInput select[readonly],fieldset[disabled] .ec-birth select,fieldset[disabled] .ec-halfInput select,fieldset[disabled] .ec-input select,fieldset[disabled] .ec-numberInput select,fieldset[disabled] .ec-select select,fieldset[disabled] .ec-telInput select,fieldset[disabled] .ec-zipInput select{background-color:#eee;opacity:1}.ec-birth select[disabled],.ec-halfInput select[disabled],.ec-input select[disabled],.ec-numberInput select[disabled],.ec-select select[disabled],.ec-telInput select[disabled],.ec-zipInput select[disabled],fieldset[disabled] .ec-birth select,fieldset[disabled] .ec-halfInput select,fieldset[disabled] .ec-input select,fieldset[disabled] .ec-numberInput select,fieldset[disabled] .ec-select select,fieldset[disabled] .ec-telInput select,fieldset[disabled] .ec-zipInput select{cursor:not-allowed}.ec-birth textarea,.ec-halfInput textarea,.ec-input textarea,.ec-numberInput textarea,.ec-select textarea,.ec-telInput textarea,.ec-zipInput textarea{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-appearance:none;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;border-radius:3px}.ec-birth textarea:focus,.ec-halfInput textarea:focus,.ec-input textarea:focus,.ec-numberInput textarea:focus,.ec-select textarea:focus,.ec-telInput textarea:focus,.ec-zipInput textarea:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.ec-birth textarea::-moz-placeholder,.ec-halfInput textarea::-moz-placeholder,.ec-input textarea::-moz-placeholder,.ec-numberInput textarea::-moz-placeholder,.ec-select textarea::-moz-placeholder,.ec-telInput textarea::-moz-placeholder,.ec-zipInput textarea::-moz-placeholder{color:#999;opacity:1}.ec-birth textarea:-ms-input-placeholder,.ec-halfInput textarea:-ms-input-placeholder,.ec-input textarea:-ms-input-placeholder,.ec-numberInput textarea:-ms-input-placeholder,.ec-select textarea:-ms-input-placeholder,.ec-telInput textarea:-ms-input-placeholder,.ec-zipInput textarea:-ms-input-placeholder{color:#999}.ec-birth textarea::-webkit-input-placeholder,.ec-halfInput textarea::-webkit-input-placeholder,.ec-input textarea::-webkit-input-placeholder,.ec-numberInput textarea::-webkit-input-placeholder,.ec-select textarea::-webkit-input-placeholder,.ec-telInput textarea::-webkit-input-placeholder,.ec-zipInput textarea::-webkit-input-placeholder{color:#999}.ec-birth textarea::-ms-expand,.ec-halfInput textarea::-ms-expand,.ec-input textarea::-ms-expand,.ec-numberInput textarea::-ms-expand,.ec-select textarea::-ms-expand,.ec-telInput textarea::-ms-expand,.ec-zipInput textarea::-ms-expand{border:0;background-color:transparent}.ec-birth textarea[disabled],.ec-birth textarea[readonly],.ec-halfInput textarea[disabled],.ec-halfInput textarea[readonly],.ec-input textarea[disabled],.ec-input textarea[readonly],.ec-numberInput textarea[disabled],.ec-numberInput textarea[readonly],.ec-select textarea[disabled],.ec-select textarea[readonly],.ec-telInput textarea[disabled],.ec-telInput textarea[readonly],.ec-zipInput textarea[disabled],.ec-zipInput textarea[readonly],fieldset[disabled] .ec-birth textarea,fieldset[disabled] .ec-halfInput textarea,fieldset[disabled] .ec-input textarea,fieldset[disabled] .ec-numberInput textarea,fieldset[disabled] .ec-select textarea,fieldset[disabled] .ec-telInput textarea,fieldset[disabled] .ec-zipInput textarea{background-color:#eee;opacity:1}.ec-birth textarea[disabled],.ec-halfInput textarea[disabled],.ec-input textarea[disabled],.ec-numberInput textarea[disabled],.ec-select textarea[disabled],.ec-telInput textarea[disabled],.ec-zipInput textarea[disabled],fieldset[disabled] .ec-birth textarea,fieldset[disabled] .ec-halfInput textarea,fieldset[disabled] .ec-input textarea,fieldset[disabled] .ec-numberInput textarea,fieldset[disabled] .ec-select textarea,fieldset[disabled] .ec-telInput textarea,fieldset[disabled] .ec-zipInput textarea{cursor:not-allowed}.ec-birth input:focus,.ec-birth textarea:focus,.ec-halfInput input:focus,.ec-halfInput textarea:focus,.ec-input input:focus,.ec-input textarea:focus,.ec-numberInput input:focus,.ec-numberInput textarea:focus,.ec-select input:focus,.ec-select textarea:focus,.ec-telInput input:focus,.ec-telInput textarea:focus,.ec-zipInput input:focus,.ec-zipInput textarea:focus{box-shadow:none;border-color:#3c8dbc}.ec-birth input,.ec-halfInput input,.ec-input input,.ec-numberInput input,.ec-select input,.ec-telInput input,.ec-zipInput input{height:40px;margin-bottom:10px}.ec-birth textarea,.ec-halfInput textarea,.ec-input textarea,.ec-numberInput textarea,.ec-select textarea,.ec-telInput textarea,.ec-zipInput textarea{height:auto;min-height:100px}.ec-birth p,.ec-halfInput p,.ec-input p,.ec-numberInput p,.ec-select p,.ec-telInput p,.ec-zipInput p{line-height:1.4}.ec-birth .ec-errorMessage,.ec-halfInput .ec-errorMessage,.ec-input .ec-errorMessage,.ec-numberInput .ec-errorMessage,.ec-select .ec-errorMessage,.ec-telInput .ec-errorMessage,.ec-zipInput .ec-errorMessage{margin-bottom:25px;font-size:12px;font-weight:700;color:#de5d50}.error.ec-birth input,.error.ec-birth select,.error.ec-halfInput input,.error.ec-halfInput select,.error.ec-input input,.error.ec-input select,.error.ec-numberInput input,.error.ec-numberInput select,.error.ec-select input,.error.ec-select select,.error.ec-telInput input,.error.ec-telInput select,.error.ec-zipInput input,.error.ec-zipInput select{margin-bottom:5px;border-color:#cf3f34;background:#fdf1f0}.ec-checkbox .ec-errorMessage{margin-bottom:25px;font-size:12px;font-weight:700;color:#de5d50}.error.ec-checkbox input,.error.ec-checkbox label{border-color:#cf3f34;background:#fdf1f0}.ec-halfInput input[type=text]{display:inline-block;width:47%;margin-left:2%}.ec-halfInput input[type=text]:first-child{margin-left:0}.ec-numberInput input[type=number]{display:inline-block;width:auto;max-width:100px;text-align:right}.ec-zipInput{display:inline-block}.ec-zipInput input{display:inline-block;text-align:left;width:auto;max-width:8em;font-size:16px}.ec-zipInput span{display:inline-block;padding:0 5px 0 3px;margin-left:5px}.ec-zipInputHelp{display:inline-block;margin-left:10px;margin-bottom:16px;vertical-align:baseline;line-height:0}.ec-zipInputHelp .ec-zipInputHelp__icon{display:inline-block;margin-top:-10px;width:20px;height:20px;background:#525263;border-radius:50%;font-size:13px;position:relative;top:-6px}.ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img{width:1em;height:1em;position:relative;left:3px;top:3px}.ec-zipInputHelp span{margin-left:8px;display:inline-block;color:#0092c4;vertical-align:3px}.ec-zipAuto{margin-bottom:16px}.ec-zipAuto .ec-inlineBtn{font-weight:400}.ec-telInput input{max-width:10em;text-align:left}.ec-radio label{margin-right:20px}.ec-radio input{margin-right:10px;margin-bottom:10px}.ec-radio span{font-weight:400}.ec-blockRadio label{display:block}.ec-blockRadio span{padding-left:10px;font-weight:400}.ec-selects{margin-bottom:20px;border-bottom:1px dotted #ccc}.ec-select{margin-bottom:16px}.ec-select select{display:inline-block;width:auto;background-color:#f8f8f8;-webkit-appearance:menulist;-moz-appearance:menulist}.ec-select select:focus{box-shadow:none}.ec-select label{margin-right:10px;font-weight:700}.ec-select label:nth-child(3){margin-left:10px;font-weight:700}.ec-select__delivery{display:block;margin-right:16px}.ec-select__time{display:block}.ec-birth select{display:inline-block;width:auto;margin:0 0 10px;background-color:#f8f8f8;-webkit-appearance:menulist;-moz-appearance:menulist}.ec-birth select:focus{box-shadow:none}.ec-birth span{margin-left:5px}.ec-checkbox label{display:inline-block}.ec-checkbox input{margin-bottom:10px}.ec-checkbox span{font-weight:400}.ec-blockCheckbox label{display:block}.ec-blockCheckbox span{font-weight:400}.ec-label{display:inline-block;font-weight:700;margin-bottom:5px}.ec-required{display:inline-block;margin-left:.8em;vertical-align:2px;color:#de5d50;font-size:12px;font-weight:400}.ec-icon img{max-width:80px;max-height:80px}.ec-grid2{display:block;margin:0}.ec-grid2 .ec-grid2__cell{position:relative;min-height:1px}.ec-grid2 .ec-grid2__cell2{position:relative;min-height:1px}.ec-grid3{display:block;margin:0}.ec-grid3 .ec-grid3__cell{position:relative;min-height:1px}.ec-grid3 .ec-grid3__cell2{position:relative;min-height:1px}.ec-grid3 .ec-grid3__cell3{position:relative;min-height:1px}.ec-grid4{display:block;margin:0}.ec-grid4 .ec-grid4__cell{position:relative;min-height:1px}.ec-grid6{display:block;margin:0}.ec-grid6 .ec-grid6__cell{position:relative;min-height:1px}.ec-grid6 .ec-grid6__cell2{position:relative;min-height:1px}.ec-grid6 .ec-grid6__cell3{position:relative;min-height:1px}.ec-off1Grid{margin:0}.ec-off1Grid .ec-off1Grid__cell{margin:0}.ec-off2Grid{display:block;margin:0}.ec-off2Grid .ec-off2Grid__cell{margin:0}.ec-off3Grid{display:block;margin:0}.ec-off3Grid .ec-off3Grid__cell{margin:0}.ec-off4Grid{display:block;margin:0}.ec-off4Grid .ec-off4Grid__cell{margin:0}.ec-grid--left{justify-content:flex-start}.ec-grid--right{justify-content:flex-end}.ec-grid--center{justify-content:center}.ec-imageGrid{display:table;border-top:1px dotted #ccc;width:100%}.ec-imageGrid .ec-imageGrid__img{display:table-cell;padding:10px;width:100px}.ec-imageGrid .ec-imageGrid__img img{width:100%}.ec-imageGrid .ec-imageGrid__content{vertical-align:middle;display:table-cell}.ec-imageGrid .ec-imageGrid__content span{margin-left:10px}.ec-imageGrid .ec-imageGrid__content p{margin-bottom:0}.ec-login{margin:0 0 20px;padding:30px 13% 20px;height:auto;background:#f3f4f4;box-sizing:border-box}.ec-login .ec-login__icon{text-align:center}.ec-login .ec-icon{margin-bottom:10px}.ec-login .ec-icon img{width:90px;height:90px;display:inline-block}.ec-login .ec-login__input{margin-bottom:40px}.ec-login .ec-login__input .ec-checkbox span{margin-left:5px;font-weight:400}.ec-login .ec-login__actions{color:#fff}.ec-login .ec-login__actions a{color:inherit;text-decoration:none}.ec-login .ec-login__actions a:hover{text-decoration:none}.ec-login .ec-login__link{margin-top:5px;margin-left:0}.ec-login .ec-errorMessage{color:#de5d50;margin-bottom:20px}.ec-guest{display:table;margin:0;padding:13%;height:auto;box-sizing:border-box;background:#f3f4f4}.ec-guest .ec-guest__inner{display:table-cell;vertical-align:middle;text-align:center}.ec-guest .ec-guest__inner p{margin-bottom:16px}.ec-guest .ec-guest__actions{display:block;vertical-align:middle;text-align:center;color:#fff}.ec-guest .ec-guest__actions a{color:inherit;text-decoration:none}.ec-guest .ec-guest__actions a:hover{text-decoration:none}.ec-guest .ec-guest__icon{font-size:70px;text-align:center}.ec-displayB{margin-bottom:24px;display:flex;justify-content:space-between;flex-direction:column}.ec-displayB .ec-displayB__cell{width:100%;margin-bottom:16px}.ec-displayB .ec-displayB__cell a{color:inherit;text-decoration:none}.ec-displayB .ec-displayB__cell a:hover{text-decoration:none}.ec-displayB .ec-displayB__cell:hover{text-decoration:none}.ec-displayB .ec-displayB__cell:hover img{opacity:.8}.ec-displayB .ec-displayB__cell:hover a{text-decoration:none}.ec-displayB .ec-displayB__img{margin-bottom:15px}.ec-displayB .ec-displayB__catch{margin-bottom:15px;text-decoration:none;font-weight:700;color:#9a947e}.ec-displayB .ec-displayB__comment{margin-bottom:14px;text-decoration:none;color:#525263;font-size:14px}.ec-displayB .ec-displayB__link{text-decoration:none;font-weight:700;color:#9a947e}.ec-displayC{display:flex;flex-wrap:wrap;justify-content:space-between;margin-bottom:24px}.ec-displayC .ec-displayC__cell{width:47%}.ec-displayC .ec-displayC__cell a{color:inherit;text-decoration:none}.ec-displayC .ec-displayC__cell a:hover{text-decoration:none}.ec-displayC .ec-displayC__cell:hover a{text-decoration:none}.ec-displayC .ec-displayC__cell:hover img{opacity:.8}.ec-displayC .ec-displayC__img{display:block;width:100%;margin-bottom:15px}.ec-displayC .ec-displayC__catch{display:block;width:100%;font-weight:700;color:#9a947e}.ec-displayC .ec-displayC__title{display:block;width:100%;color:#525263}.ec-displayC .ec-displayC__price{display:block;width:100%;font-weight:700;color:#525263}.ec-displayC .ec-displayC__price--sp{display:block;width:100%;font-weight:700;color:#de5d50}.ec-displayD{display:flex;justify-content:space-between;flex-wrap:wrap-reverse}.ec-displayD .ec-displayD__cell{width:30%;margin-bottom:8px}.ec-displayD .ec-displayD__cell a{color:inherit;text-decoration:none}.ec-displayD .ec-displayD__cell a:hover{text-decoration:none}.ec-displayD .ec-displayD__cell:hover{text-decoration:none}.ec-displayD .ec-displayD__cell:hover img{opacity:.8}.ec-displayD .ec-displayD__img{display:block;width:100%}.ec-topicpath{letter-spacing:-.4em;-webkit-margin-before:0;-webkit-margin-after:0;-webkit-margin-start:0;-webkit-margin-end:0;-webkit-padding-start:0;border-top:1px solid #ccc;border-bottom:1px dotted #ccc;padding:10px;list-style:none;overflow:hidden;font-size:12px;color:#0092c4}.ec-topicpath .ec-topicpath__item a{color:inherit;text-decoration:none}.ec-topicpath .ec-topicpath__item a:hover{text-decoration:none}.ec-topicpath .ec-topicpath__divider{color:#000}.ec-topicpath .ec-topicpath__divider,.ec-topicpath .ec-topicpath__item,.ec-topicpath .ec-topicpath__item--active{display:inline-block;min-width:16px;text-align:center;position:relative;letter-spacing:normal}.ec-topicpath .ec-topicpath__item--active{font-weight:700}.ec-topicpath .ec-topicpath__item--active a{color:inherit;text-decoration:none}.ec-topicpath .ec-topicpath__item--active a:hover{text-decoration:none}.ec-pager{list-style:none;list-style-type:none;margin:0 auto;padding:1em 0;text-align:center}.ec-pager .ec-pager__item,.ec-pager .ec-pager__item--active{display:inline-block;min-width:29px;padding:0 3px 0 2px;text-align:center;position:relative}.ec-pager .ec-pager__item a,.ec-pager .ec-pager__item--active a{color:inherit;text-decoration:none}.ec-pager .ec-pager__item a:hover,.ec-pager .ec-pager__item--active a:hover{text-decoration:none}.ec-pager .ec-pager__item a,.ec-pager .ec-pager__item--active a{color:inherit;display:block;line-height:1.8;padding:5px 1em;text-decoration:none}.ec-pager .ec-pager__item a:hover,.ec-pager .ec-pager__item--active a:hover{color:inherit}.ec-pager .ec-pager__item--active{background:#f3f3f3}.ec-pager .ec-pager__item:hover{background:#f3f3f3}@-webkit-keyframes fadeIn{0%{opacity:0;visibility:hidden}100%{opacity:1;visibility:visible}}@keyframes fadeIn{0%{opacity:0;visibility:hidden}100%{opacity:1;visibility:visible}}@-webkit-keyframes fadeOut{0%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}@keyframes fadeOut{0%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}.bg-load-overlay{background:rgba(255,255,255,.4);box-sizing:border-box;position:fixed;display:flex;flex-flow:column nowrap;align-items:center;justify-content:space-around;top:0;left:0;width:100%;height:100%;z-index:2147483647;opacity:1}.ec-progress{margin:0 auto;padding:8px 0 16px;display:table;table-layout:fixed;width:100%;max-width:600px;list-style:none}.ec-progress .ec-progress__item{display:table-cell;position:relative;font-size:14px;text-align:center;font-weight:700;z-index:10}.ec-progress .ec-progress__item:after{content:'';position:absolute;display:block;background:#525263;width:100%;height:.25em;top:1.25em;left:50%;z-index:-1}.ec-progress .ec-progress__item:last-child:after{display:none}.ec-progress .ec-progress__number{line-height:30px;width:30px;height:30px;margin-bottom:5px;font-size:12px;background:#525263;color:#fff;top:0;left:18px;display:inline-block;text-align:center;vertical-align:middle;border-radius:50%}.ec-progress .ec-progress__label{font-size:12px}.ec-progress .is-complete .ec-progress__number{background:#5cb1b1}.ec-progress .is-complete .ec-progress__label{color:#5cb1b1}.ec-cartNavi{display:inline-block;padding:10px 0 0 20px;width:auto;color:#000;background:0 0}.ec-cartNavi .ec-cartNavi__icon{display:inline-block;font-size:20px;display:inline-block;opacity:1;visibility:visible;-webkit-animation:fadeIn .2s linear 0s;animation:fadeIn .2s linear 0s;position:relative}.ec-cartNavi .ec-cartNavi__badge{display:inline-block;border-radius:99999px;box-sizing:border-box;padding:5px;height:17px;font-size:10px;line-height:.7;vertical-align:top;color:#fff;text-align:left;white-space:nowrap;background-color:#de5d50;position:absolute;left:60%;top:-10px}.ec-cartNavi .ec-cartNavi__price{display:none}.ec-cartNavi.is-active .ec-cartNavi__icon:before{content:"\f00d";font-family:"Font Awesome 5 Free";font-weight:900}.ec-cartNavi.is-active .ec-cartNavi__badge{display:none}.ec-cartNaviIsset{display:none;width:100%;text-align:center;background:#f8f8f8;box-sizing:border-box;padding:16px;z-index:20;position:absolute;right:0}.ec-cartNaviIsset .ec-cartNaviIsset__cart{border-bottom:1px solid #e8e8e8;margin-bottom:16px;padding-bottom:32px}.ec-cartNaviIsset .ec-cartNaviIsset__cart:after{content:" ";display:table}.ec-cartNaviIsset .ec-cartNaviIsset__cart:after{clear:both}.ec-cartNaviIsset .ec-cartNaviIsset__cartImage{float:left;width:45%}.ec-cartNaviIsset .ec-cartNaviIsset__cartImage img{width:100%}.ec-cartNaviIsset .ec-cartNaviIsset__cartContent{float:right;width:55%;padding-left:16px;text-align:left;box-sizing:border-box}.ec-cartNaviIsset .ec-cartNaviIsset__action .ec-blockBtn--action{color:#fff;margin-bottom:8px}.ec-cartNaviIsset .ec-cartNaviIsset__cartContentTitle{margin-bottom:8px}.ec-cartNaviIsset .ec-cartNaviIsset__cartContentPrice{font-weight:700}.ec-cartNaviIsset .ec-cartNaviIsset__cartContentTax{display:inline-block;font-size:12px;font-weight:400;margin-left:2px}.ec-cartNaviIsset .ec-cartNaviIsset__cartContentNumber{font-size:14px}.ec-cartNaviIsset.is-active{display:block}.ec-cartNaviNull{display:none;width:100%;text-align:center;background:#f8f8f8;box-sizing:border-box;padding:16px;z-index:3;position:absolute;right:0}.ec-cartNaviNull .ec-cartNaviNull__message{border:1px solid #d9d9d9;padding:16px 0;font-size:16px;font-weight:700;color:#fff;background-color:#f99}.ec-cartNaviNull .ec-cartNaviNull__message p{margin:0}.ec-cartNaviNull.is-active{display:block}.ec-totalBox{background:#f3f3f3;padding:16px;margin-bottom:16px}.ec-totalBox .ec-totalBox__spec{display:flex;justify-content:space-between;-ms-flex-pack:space-between;margin-bottom:8px}.ec-totalBox .ec-totalBox__spec dt{font-weight:400;text-align:left}.ec-totalBox .ec-totalBox__spec dd{text-align:right}.ec-totalBox .ec-totalBox__spec .ec-totalBox .ec-totalBox__spec__specTotal{color:#de5d50}.ec-totalBox .ec-totalBox__total{border-top:1px dotted #ccc;padding:8px 0;text-align:right;font-size:14px;font-weight:700}.ec-totalBox .ec-totalBox__paymentTotal{padding:8px 0;text-align:right;font-size:14px;font-weight:700}.ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__price,.ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__taxLabel{color:#de5d50}.ec-totalBox .ec-totalBox__price{margin-left:16px;font-size:16px;font-weight:700}.ec-totalBox .ec-totalBox__taxLabel{margin-left:8px;font-size:12px}.ec-totalBox .ec-totalBox__taxRate{display:flex;justify-content:flex-end;margin-bottom:8px;font-size:10px}.ec-totalBox .ec-totalBox__taxRate dt{font-weight:400;text-align:left;margin-right:8px}.ec-totalBox .ec-totalBox__taxRate dt::before{content:"[ "}.ec-totalBox .ec-totalBox__taxRate dd{text-align:right}.ec-totalBox .ec-totalBox__taxRate dd::after{content:" ]"}.ec-totalBox .ec-totalBox__pointBlock{padding:18px 20px 10px;margin-bottom:10px;background:#fff}.ec-totalBox .ec-totalBox__btn{color:#fff}.ec-totalBox .ec-totalBox__btn a{color:inherit;text-decoration:none}.ec-totalBox .ec-totalBox__btn a:hover{text-decoration:none}.ec-totalBox .ec-totalBox__btn .ec-blockBtn--action{font-size:16px;font-weight:700}.ec-totalBox .ec-totalBox__btn .ec-blockBtn--cancel{margin-top:8px}.ec-news{margin-bottom:16px;background:#f8f8f8}.ec-news .ec-news__title{font-weight:700;padding:8px;font-size:16px;text-align:center}.ec-news .ec-news__items{padding:0;list-style:none;border-top:1px dotted #ccc}.ec-newsline{display:flex;flex-wrap:wrap;overflow:hidden;padding:0 16px}.ec-newsline .ec-newsline__info{width:100%;padding:16px 0}.ec-newsline .ec-newsline__info:after{content:" ";display:table}.ec-newsline .ec-newsline__info:after{clear:both}.ec-newsline .ec-newsline__date{display:inline-block;margin-right:10px;float:left}.ec-newsline .ec-newsline__comment{display:inline-block;float:left}.ec-newsline .ec-newsline__close{float:right;display:inline-block;text-align:right}.ec-newsline .ec-newsline__close .ec-closeBtn--circle{display:inline-block;width:25px;height:25px;min-width:25px;min-height:25px}.ec-newsline .ec-newsline__description{width:100%;height:0;transition:all .2s ease-out}.ec-newsline.is_active .ec-newsline__description{height:auto;transition:all .2s ease-out;padding-bottom:16px}.ec-newsline.is_active .ec-icon img{transform:rotateX(180deg)}.ec-navlistRole .ec-navlistRole__navlist{display:flex;flex-wrap:wrap;border-color:#d0d0d0;border-style:solid;border-width:1px 0 0 1px;margin-bottom:32px;padding:0;list-style:none}.ec-navlistRole .ec-navlistRole__navlist a{color:inherit;text-decoration:none}.ec-navlistRole .ec-navlistRole__navlist a:hover{text-decoration:none}.ec-navlistRole .ec-navlistRole__item{width:50%;border-color:#d0d0d0;border-style:solid;border-width:0 1px 1px 0;text-align:center;font-weight:700}.ec-navlistRole .ec-navlistRole__item a{padding:16px;width:100%;display:inline-block}.ec-navlistRole .ec-navlistRole__item a:hover{background:#f5f7f8}.ec-navlistRole .active a{color:#de5d50}.ec-welcomeMsg{margin-right:auto;margin-left:auto;padding-left:16px;padding-right:16px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;margin:1em 0;padding-bottom:32px;text-align:center;border-bottom:1px dotted #ccc}.ec-welcomeMsg:after{content:" ";display:table}.ec-welcomeMsg:after{clear:both}.ec-welcomeMsg textarea{font-family:sans-serif}.ec-welcomeMsg img{max-width:100%}.ec-welcomeMsg html{box-sizing:border-box}.ec-welcomeMsg *,.ec-welcomeMsg ::after,.ec-welcomeMsg ::before{box-sizing:inherit}.ec-welcomeMsg img{width:100%}.ec-favoriteRole .ec-favoriteRole__header{margin-bottom:16px}.ec-favoriteRole .ec-favoriteRole__itemList{display:flex;flex-wrap:wrap;padding:0;list-style:none}.ec-favoriteRole .ec-favoriteRole__itemList a{color:inherit;text-decoration:none}.ec-favoriteRole .ec-favoriteRole__itemList a:hover{text-decoration:none}.ec-favoriteRole .ec-favoriteRole__item{margin-bottom:8px;width:47.5%;position:relative;box-sizing:border-box;padding:10px}.ec-favoriteRole .ec-favoriteRole__item-image{height:150px;margin-bottom:10px;text-align:center}.ec-favoriteRole .ec-favoriteRole__item img{width:auto;max-height:100%}.ec-favoriteRole .ec-favoriteRole__item .ec-closeBtn--circle{position:absolute;right:10px;top:10px}.ec-favoriteRole .ec-favoriteRole__item .ec-closeBtn--circle .ec-icon img{width:1em;height:1em}.ec-favoriteRole .ec-favoriteRole__itemThumb{display:block;height:auto;margin-bottom:8px}.ec-favoriteRole .ec-favoriteRole__itemTitle{margin-bottom:2px}.ec-favoriteRole .ec-favoriteRole__itemPrice{font-weight:700;margin-bottom:0}.ec-role{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-role:after{content:" ";display:table}.ec-role:after{clear:both}.ec-role textarea{font-family:sans-serif}.ec-role img{max-width:100%}.ec-role html{box-sizing:border-box}.ec-role *,.ec-role ::after,.ec-role ::before{box-sizing:inherit}.ec-role img{width:100%}.ec-mypageRole{margin-right:auto;margin-left:auto;padding-left:16px;padding-right:16px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%}.ec-mypageRole:after{content:" ";display:table}.ec-mypageRole:after{clear:both}.ec-mypageRole textarea{font-family:sans-serif}.ec-mypageRole img{max-width:100%}.ec-mypageRole html{box-sizing:border-box}.ec-mypageRole *,.ec-mypageRole ::after,.ec-mypageRole ::before{box-sizing:inherit}.ec-mypageRole img{width:100%}@keyframes fadeIn{0%{opacity:0;visibility:hidden}100%{opacity:1;visibility:visible}}@keyframes fadeOut{0%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}.bg-load-overlay{background:rgba(255,255,255,.4);box-sizing:border-box;position:fixed;display:flex;flex-flow:column nowrap;align-items:center;justify-content:space-around;top:0;left:0;width:100%;height:100%;z-index:2147483647;opacity:1}.ec-layoutRole{width:100%;transition:transform .3s;background:#fff}.ec-layoutRole .ec-layoutRole__contentTop{padding:0}.ec-layoutRole .ec-layoutRole__contents{margin-right:auto;margin-left:auto;width:100%;max-width:1150px;display:flex;flex-wrap:nowrap}.ec-layoutRole .ec-layoutRole__main{width:100%}.ec-layoutRole .ec-layoutRole__mainWithColumn{width:100%}.ec-layoutRole .ec-layoutRole__mainBetweenColumn{width:100%}.ec-layoutRole .ec-layoutRole__left,.ec-layoutRole .ec-layoutRole__right{display:none}.ec-headerRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;padding-top:15px;position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;width:auto}.ec-headerRole:after{content:" ";display:table}.ec-headerRole:after{clear:both}.ec-headerRole textarea{font-family:sans-serif}.ec-headerRole img{max-width:100%}.ec-headerRole html{box-sizing:border-box}.ec-headerRole *,.ec-headerRole ::after,.ec-headerRole ::before{box-sizing:inherit}.ec-headerRole img{width:100%}.ec-headerRole:after{display:none}.ec-headerRole::before{display:none}.ec-headerRole .ec-headerRole__title{width:100%}.ec-headerRole .ec-headerRole__navSP{display:block;position:absolute;top:15px;width:27%;right:0;text-align:right}.ec-headerNaviRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;display:flex;justify-content:space-between;align-items:center;padding-top:15px}.ec-headerNaviRole:after{content:" ";display:table}.ec-headerNaviRole:after{clear:both}.ec-headerNaviRole textarea{font-family:sans-serif}.ec-headerNaviRole img{max-width:100%}.ec-headerNaviRole html{box-sizing:border-box}.ec-headerNaviRole *,.ec-headerNaviRole ::after,.ec-headerNaviRole ::before{box-sizing:inherit}.ec-headerNaviRole img{width:100%}.ec-headerNaviRole .ec-headerNaviRole__left{width:calc(100% / 3)}.ec-headerNaviRole .ec-headerNaviRole__search{display:none}.ec-headerNaviRole .ec-headerNaviRole__navSP{display:block}.ec-headerNaviRole .ec-headerNaviRole__right{width:calc(100% * 2 / 3);display:flex;justify-content:flex-end;align-items:center}.ec-headerNaviRole .ec-headerNaviRole__nav{display:inline-block}.ec-headerNaviRole .ec-headerNaviRole__nav a{color:inherit;text-decoration:none}.ec-headerNaviRole .ec-headerNaviRole__nav a:hover{text-decoration:none}.ec-headerNaviRole .ec-headerNaviRole__cart{display:inline-block}.ec-headerNaviRole .ec-headerNaviRole__cart a{color:inherit;text-decoration:none}.ec-headerNaviRole .ec-headerNaviRole__cart a:hover{text-decoration:none}.ec-headerNavSP{display:block;cursor:pointer;border-radius:50%;box-sizing:border-box;padding:10px;width:40px;height:40px;font-size:18px;text-align:center;color:#000;background:#fff;position:fixed;top:10px;left:10px;z-index:1000}.ec-headerNavSP .fas{vertical-align:top}.ec-headerNavSP.is-active{display:none}.ec-headerTitle{font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%}.ec-headerTitle textarea{font-family:sans-serif}.ec-headerTitle img{max-width:100%}.ec-headerTitle html{box-sizing:border-box}.ec-headerTitle *,.ec-headerTitle ::after,.ec-headerTitle ::before{box-sizing:inherit}.ec-headerTitle img{width:100%}.ec-headerTitle .ec-headerTitle__title{text-align:center}.ec-headerTitle .ec-headerTitle__title h1{margin:0;padding:0}.ec-headerTitle .ec-headerTitle__title a{display:inline-block;margin-bottom:30px;text-decoration:none;font-size:20px;font-weight:700;color:#000}.ec-headerTitle .ec-headerTitle__title a:hover{opacity:.8}.ec-headerTitle .ec-headerTitle__subtitle{font-size:10px;text-align:center}.ec-headerTitle .ec-headerTitle__subtitle a{display:inline-block;color:#0092c4;text-decoration:none;cursor:pointer}.ec-headerNav{text-align:right}.ec-headerNav .ec-headerNav__item{margin-left:0;display:inline-block;font-size:28px}.ec-headerNav .ec-headerNav__itemIcon{display:inline-block;margin-right:10px;margin-left:10px;font-size:18px;color:#000}.ec-headerNav .ec-headerNav__itemLink{display:none;margin-right:5px;font-size:14px;vertical-align:middle;color:#000}.ec-headerSearch:after{content:" ";display:table}.ec-headerSearch:after{clear:both}.ec-headerSearch .ec-headerSearch__category{float:none}.ec-headerSearch .ec-headerSearch__category .ec-select{overflow:hidden;width:100%;margin:0;text-align:center}.ec-headerSearch .ec-headerSearch__category .ec-select select{width:100%;cursor:pointer;padding:8px 24px 8px 8px;text-indent:.01px;text-overflow:ellipsis;border:none;outline:0;background:0 0;background-image:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#fff}.ec-headerSearch .ec-headerSearch__category .ec-select select option{color:#000}.ec-headerSearch .ec-headerSearch__category .ec-select select::-ms-expand{display:none}.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search{position:relative;border:0;background:#000;color:#fff;border-top-right-radius:10px;border-top-left-radius:10px}.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search::before{position:absolute;top:.8em;right:.4em;width:0;height:0;padding:0;content:'';border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #fff;pointer-events:none}.ec-headerSearch .ec-headerSearch__keyword{position:relative;color:#525263;border:1px solid #ccc;background-color:#f6f6f6;border-bottom-right-radius:10px;border-bottom-left-radius:10px}.ec-headerSearch .ec-headerSearch__keyword input[type=search]{width:100%;height:34px;font-size:1.2rem;border:0 none;padding:.5em 50px .5em 1em;box-shadow:none;background:0 0;box-sizing:border-box;margin-bottom:0}.ec-headerSearch .ec-headerSearch__keyword .ec-icon{width:22px;height:22px}.ec-headerSearch .ec-headerSearch__keywordBtn{border:0;background:0 0;position:absolute;right:5px;top:50%;transform:translateY(-55%);display:block;white-space:nowrap;z-index:1}.ec-categoryNaviRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;display:none}.ec-categoryNaviRole:after{content:" ";display:table}.ec-categoryNaviRole:after{clear:both}.ec-categoryNaviRole textarea{font-family:sans-serif}.ec-categoryNaviRole img{max-width:100%}.ec-categoryNaviRole html{box-sizing:border-box}.ec-categoryNaviRole *,.ec-categoryNaviRole ::after,.ec-categoryNaviRole ::before{box-sizing:inherit}.ec-categoryNaviRole img{width:100%}.ec-itemNav{margin:0;padding:0;width:100%;height:100%;text-align:center}.ec-itemNav__nav{display:block;margin:0 auto;padding:0;width:auto;height:auto;list-style-type:none;text-align:center;vertical-align:bottom}.ec-itemNav__nav li{float:none;margin:0;padding:0;width:100%;text-align:center;position:relative}.ec-itemNav__nav li a{display:block;border-bottom:1px solid #e8e8e8;margin:0;padding:16px;height:auto;color:#2e3233;font-size:16px;font-weight:700;line-height:20px;text-decoration:none;text-align:left;background:#fff;border-bottom:1px solid #e8e8e8}.ec-itemNav__nav li ul{display:none;z-index:0;margin:0;padding:0;min-width:200px;list-style:none;position:static;top:100%;left:0}.ec-itemNav__nav li ul li{overflow:hidden;width:100%;height:auto;transition:.3s}.ec-itemNav__nav li ul li a{border-bottom:1px solid #e8e8e8;padding:16px 22px 16px 16px;font-size:16px;font-weight:700;color:#fff;text-align:left;background:#000}.ec-itemNav__nav>li:hover>a{background:#fafafa}.ec-itemNav__nav>li:hover li:hover>a{background:#333}.ec-itemNav__nav li ul li ul{top:0;left:100%;width:auto}.ec-itemNav__nav li ul li ul li a{background:#7d7d7d}.ec-itemNav__nav li:hover ul li ul li a:hover{background:#333}.ec-drawerRole{overflow-y:scroll;background:#000;width:260px;height:100vh;transform:translateX(-300px);position:fixed;top:0;left:0;z-index:1;transition:z-index 0s 1ms}.ec-drawerRole .ec-headerSearchArea{padding:20px 10px;width:100%;background:#f8f8f8}.ec-drawerRole .ec-headerSearch{padding:16px 8px 26px;background:#ebebeb;color:#636378}.ec-drawerRole .ec-headerSearch select{width:100%!important}.ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading{border-top:1px solid #ccc;border-bottom:1px solid #ccc;padding:1em 10px;font-size:16px;font-weight:700;color:#000;background:#f8f8f8}.ec-drawerRole .ec-headerCategoryArea p{margin-top:0;margin-bottom:0}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li a{border-bottom:1px solid #ccc;border-bottom:1px solid #ccc;color:#000;font-weight:400;background:#f8f8f8}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li a{border-bottom:1px solid #ccc;padding-left:20px;font-weight:400;background:#fff}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav>li:hover>a{background:#f8f8f8}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav>li:hover li:hover>a{background:#fff}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li ul li a{padding-left:40px;color:#000;background:#fff}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li:hover ul li ul li a:hover{background:#fff}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li ul li ul li a{padding-left:60px;font-weight:400}.ec-drawerRole .ec-headerLinkArea{background:#000}.ec-drawerRole .ec-headerLinkArea .ec-headerLink__list{border-top:1px solid #ccc}.ec-drawerRole .ec-headerLinkArea .ec-headerLink__item{display:block;border-bottom:1px solid #ccc;padding:15px 20px;font-size:16px;font-weight:700;color:#fff}.ec-drawerRole .ec-headerLinkArea .ec-headerLink__icon{display:inline-block;width:28px;font-size:17px}.ec-drawerRoleClose{display:none;cursor:pointer;border-radius:50%;box-sizing:border-box;padding:10px;width:40px;height:40px;font-size:18px;text-align:center;color:#000;background:#fff;position:fixed;top:10px;left:270px;z-index:1000}.ec-drawerRoleClose .fas{vertical-align:top}.ec-drawerRole.is_active{display:block;transform:translateX(0);transition:all .3s;z-index:100000}.ec-drawerRoleClose.is_active{display:inline-block;transition:all .3s}.ec-overlayRole{position:fixed;width:100%;height:100vh;top:0;left:0;opacity:0;background:0 0;transform:translateX(0);transition:all .3s;visibility:hidden}.have_curtain .ec-overlayRole{display:block;opacity:1;background:rgba(0,0,0,.5);visibility:visible}.ec-itemNavAccordion{display:none}.ec-footerRole{border-top:1px solid #7d7d7d;margin-top:30px;background:#000}.ec-footerNavi{padding:0;color:#fff;list-style:none;text-align:center}.ec-footerNavi .ec-footerNavi__link{display:block}.ec-footerNavi .ec-footerNavi__link a{display:block;border-bottom:1px solid #7d7d7d;padding:15px 0;font-size:14px;color:inherit;text-decoration:none}.ec-footerNavi .ec-footerNavi__link:hover a{opacity:.8;text-decoration:none}.ec-footerTitle{padding:40px 0 60px;text-align:center;color:#fff}.ec-footerTitle .ec-footerTitle__logo{display:block;margin-bottom:10px;font-weight:700}.ec-footerTitle .ec-footerTitle__logo a{color:inherit;text-decoration:none}.ec-footerTitle .ec-footerTitle__logo a:hover{text-decoration:none}.ec-footerTitle .ec-footerTitle__logo a{font-size:22px;color:inherit}.ec-footerTitle .ec-footerTitle__logo:hover a{opacity:.8;text-decoration:none}.ec-footerTitle .ec-footerTitle__copyright{font-size:10px}.ec-sliderRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;margin-bottom:24px}.ec-sliderRole:after{content:" ";display:table}.ec-sliderRole:after{clear:both}.ec-sliderRole textarea{font-family:sans-serif}.ec-sliderRole img{max-width:100%}.ec-sliderRole html{box-sizing:border-box}.ec-sliderRole *,.ec-sliderRole ::after,.ec-sliderRole ::before{box-sizing:inherit}.ec-sliderRole img{width:100%}.ec-sliderRole ul{padding:0;list-style:none}.ec-sliderItemRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;margin-bottom:24px}.ec-sliderItemRole:after{content:" ";display:table}.ec-sliderItemRole:after{clear:both}.ec-sliderItemRole textarea{font-family:sans-serif}.ec-sliderItemRole img{max-width:100%}.ec-sliderItemRole html{box-sizing:border-box}.ec-sliderItemRole *,.ec-sliderItemRole ::after,.ec-sliderItemRole ::before{box-sizing:inherit}.ec-sliderItemRole img{width:100%}.ec-sliderItemRole ul{padding:0;list-style:none}.ec-sliderItemRole .item_nav{display:none}.ec-sliderItemRole .slideThumb{margin-bottom:25px;width:33%;opacity:.8;cursor:pointer}.ec-sliderItemRole .slideThumb:focus{outline:0}.ec-sliderItemRole .slideThumb:hover{opacity:1}.ec-sliderItemRole .slideThumb img{width:80%}.ec-eyecatchRole{display:flex;flex-wrap:wrap;margin-bottom:40px}.ec-eyecatchRole .ec-eyecatchRole__image{display:block;margin-bottom:40px;width:100%;height:100%}.ec-eyecatchRole .ec-eyecatchRole__intro{color:#000}.ec-eyecatchRole .ec-eyecatchRole__introEnTitle{margin-bottom:.8em;font-size:16px;font-weight:400}.ec-eyecatchRole .ec-eyecatchRole__introTitle{margin-bottom:.8em;font-size:24px;font-weight:700}.ec-eyecatchRole .ec-eyecatchRole__introDescriptiron{margin-bottom:20px;font-size:16px;line-height:2}.ec-inlineBtn--top{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:#000;border-color:#000}.ec-inlineBtn--top.active.focus,.ec-inlineBtn--top.active:focus,.ec-inlineBtn--top.focus,.ec-inlineBtn--top:active.focus,.ec-inlineBtn--top:active:focus,.ec-inlineBtn--top:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-inlineBtn--top.focus,.ec-inlineBtn--top:focus,.ec-inlineBtn--top:hover{color:#525263;text-decoration:none}.ec-inlineBtn--top.active,.ec-inlineBtn--top:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-inlineBtn--top.disabled,.ec-inlineBtn--top[disabled],fieldset[disabled] .ec-inlineBtn--top{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-inlineBtn--top.focus,.ec-inlineBtn--top:focus{color:#fff;background-color:#000;border-color:#000}.ec-inlineBtn--top:hover{color:#fff;background-color:#000;border-color:#000}.ec-inlineBtn--top.active,.ec-inlineBtn--top:active,.open>.ec-inlineBtn--top.dropdown-toggle{color:#fff;background-color:#000;border-color:#000}.ec-inlineBtn--top.active.focus,.ec-inlineBtn--top.active:focus,.ec-inlineBtn--top.active:hover,.ec-inlineBtn--top:active.focus,.ec-inlineBtn--top:active:focus,.ec-inlineBtn--top:active:hover,.open>.ec-inlineBtn--top.dropdown-toggle.focus,.open>.ec-inlineBtn--top.dropdown-toggle:focus,.open>.ec-inlineBtn--top.dropdown-toggle:hover{color:#fff;background-color:#000;border-color:#000}.ec-inlineBtn--top.active,.ec-inlineBtn--top:active,.open>.ec-inlineBtn--top.dropdown-toggle{background-image:none}.ec-inlineBtn--top.disabled.focus,.ec-inlineBtn--top.disabled:focus,.ec-inlineBtn--top.disabled:hover,.ec-inlineBtn--top[disabled].focus,.ec-inlineBtn--top[disabled]:focus,.ec-inlineBtn--top[disabled]:hover,fieldset[disabled] .ec-inlineBtn--top.focus,fieldset[disabled] .ec-inlineBtn--top:focus,fieldset[disabled] .ec-inlineBtn--top:hover{background-color:#000;border-color:#000}.ec-inlineBtn--top .badge{color:#000;background-color:#fff}.ec-inlineBtn--top .ec-icon img{width:1em;vertical-align:text-bottom}.ec-blockBtn--top{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:#000;border-color:#000;display:block;height:56px;line-height:56px;padding-top:0;padding-bottom:0}.ec-blockBtn--top.active.focus,.ec-blockBtn--top.active:focus,.ec-blockBtn--top.focus,.ec-blockBtn--top:active.focus,.ec-blockBtn--top:active:focus,.ec-blockBtn--top:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-blockBtn--top.focus,.ec-blockBtn--top:focus,.ec-blockBtn--top:hover{color:#525263;text-decoration:none}.ec-blockBtn--top.active,.ec-blockBtn--top:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-blockBtn--top.disabled,.ec-blockBtn--top[disabled],fieldset[disabled] .ec-blockBtn--top{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-blockBtn--top.focus,.ec-blockBtn--top:focus{color:#fff;background-color:#000;border-color:#000}.ec-blockBtn--top:hover{color:#fff;background-color:#000;border-color:#000}.ec-blockBtn--top.active,.ec-blockBtn--top:active,.open>.ec-blockBtn--top.dropdown-toggle{color:#fff;background-color:#000;border-color:#000}.ec-blockBtn--top.active.focus,.ec-blockBtn--top.active:focus,.ec-blockBtn--top.active:hover,.ec-blockBtn--top:active.focus,.ec-blockBtn--top:active:focus,.ec-blockBtn--top:active:hover,.open>.ec-blockBtn--top.dropdown-toggle.focus,.open>.ec-blockBtn--top.dropdown-toggle:focus,.open>.ec-blockBtn--top.dropdown-toggle:hover{color:#fff;background-color:#000;border-color:#000}.ec-blockBtn--top.active,.ec-blockBtn--top:active,.open>.ec-blockBtn--top.dropdown-toggle{background-image:none}.ec-blockBtn--top.disabled.focus,.ec-blockBtn--top.disabled:focus,.ec-blockBtn--top.disabled:hover,.ec-blockBtn--top[disabled].focus,.ec-blockBtn--top[disabled]:focus,.ec-blockBtn--top[disabled]:hover,fieldset[disabled] .ec-blockBtn--top.focus,fieldset[disabled] .ec-blockBtn--top:focus,fieldset[disabled] .ec-blockBtn--top:hover{background-color:#000;border-color:#000}.ec-blockBtn--top .badge{color:#000;background-color:#fff}.ec-blockBtn--top .ec-icon img{width:1em;vertical-align:text-bottom}.ec-secHeading{margin-bottom:15px;color:#000}.ec-secHeading .ec-secHeading__en{font-size:18px;font-weight:700;letter-spacing:.2em}.ec-secHeading .ec-secHeading__line{display:inline-block;margin:0 20px;width:1px;height:14px;background:#000}.ec-secHeading .ec-secHeading__ja{font-size:12px;font-weight:400;letter-spacing:.15em;vertical-align:2px}.ec-secHeading--tandem{margin-bottom:15px;color:#000;text-align:center}.ec-secHeading--tandem .ec-secHeading__en{display:block;font-size:18px;font-weight:700;letter-spacing:.2em}.ec-secHeading--tandem .ec-secHeading__line{display:block;margin:13px auto;width:20px;height:1px;background:#000}.ec-secHeading--tandem .ec-secHeading__ja{display:block;margin-bottom:30px;font-size:12px;font-weight:400;letter-spacing:.15em;vertical-align:2px}.ec-topicRole{padding:40px 0;background:#f8f8f8}.ec-topicRole .ec-topicRole__list{display:flex;flex-wrap:wrap}.ec-topicRole .ec-topicRole__listItem{margin-bottom:20px;width:100%;height:auto}.ec-topicRole .ec-topicRole__listItemTitle{margin-top:.5em;font-size:14px;color:#000}.ec-newItemRole{padding:40px 0}.ec-newItemRole .ec-newItemRole__list{display:flex;flex-wrap:wrap}.ec-newItemRole .ec-newItemRole__listItem{margin-bottom:4%;width:48%;height:auto}.ec-newItemRole .ec-newItemRole__listItem:not(:first-child) a{color:#000}.ec-newItemRole .ec-newItemRole__listItem:nth-child(odd){margin-right:4%}.ec-newItemRole .ec-newItemRole__listItemHeading{margin-top:calc(45% - 20px)}.ec-newItemRole .ec-newItemRole__listItemTitle{margin:8px 0;font-size:14px;font-weight:700}.ec-newItemRole .ec-newItemRole__listItemPrice{font-size:12px}.ec-categoryRole{padding:40px 0;color:#000;background:#f8f8f8}.ec-categoryRole .ec-categoryRole__list{display:flex;flex-wrap:wrap}.ec-categoryRole .ec-categoryRole__listItem{margin-bottom:20px;width:100%;height:auto}.ec-newsRole{padding:40px 0 0}.ec-newsRole .ec-newsRole__news{box-sizing:border-box}.ec-newsRole .ec-newsRole__newsItem{width:100%}.ec-newsRole .ec-newsRole__newsItem:not(:last-of-type){border-bottom:1px solid #ccc}.ec-newsRole .ec-newsRole__newsItem:last-of-type{margin-bottom:20px}.ec-newsRole .ec-newsRole__newsHeading{cursor:pointer}.ec-newsRole .ec-newsRole__newsDate{display:block;margin:15px 0 5px;font-size:12px;color:#000}.ec-newsRole .ec-newsRole__newsColumn{display:flex}.ec-newsRole .ec-newsRole__newsTitle{display:inline-block;margin-bottom:10px;width:90%;font-size:14px;font-weight:700;color:#7d7d7d;line-height:1.6}.ec-newsRole .ec-newsRole__newsClose{display:inline-block;width:10%;position:relative}.ec-newsRole .ec-newsRole__newsCloseBtn{display:inline-block;margin-left:auto;border-radius:50%;width:20px;height:20px;color:#fff;text-align:center;background:#000;cursor:pointer;position:absolute;right:5px}.ec-newsRole .ec-newsRole__newsDescription{display:none;margin:0 0 10px;font-size:14px;line-height:1.4;overflow:hidden}.ec-newsRole .ec-newsRole__newsDescription a{color:#0092c4}.ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription{margin:0 0 10px}.ec-newsRole__newsItem.is_active .ec-newsRole__newsCloseBtn i{display:inline-block;transform:rotateX(180deg) translateY(2px)}.ec-searchnavRole{margin-bottom:0;padding:0}.ec-searchnavRole .ec-searchnavRole__infos{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;display:flex;border-top:0;margin-bottom:16px;padding-top:5px;flex-direction:column}.ec-searchnavRole .ec-searchnavRole__infos:after{content:" ";display:table}.ec-searchnavRole .ec-searchnavRole__infos:after{clear:both}.ec-searchnavRole .ec-searchnavRole__infos textarea{font-family:sans-serif}.ec-searchnavRole .ec-searchnavRole__infos img{max-width:100%}.ec-searchnavRole .ec-searchnavRole__infos html{box-sizing:border-box}.ec-searchnavRole .ec-searchnavRole__infos *,.ec-searchnavRole .ec-searchnavRole__infos ::after,.ec-searchnavRole .ec-searchnavRole__infos ::before{box-sizing:inherit}.ec-searchnavRole .ec-searchnavRole__infos img{width:100%}.ec-searchnavRole .ec-searchnavRole__counter{margin-bottom:16px;width:100%}.ec-searchnavRole .ec-searchnavRole__actions{text-align:right;width:100%}.ec-shelfRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-shelfRole:after{content:" ";display:table}.ec-shelfRole:after{clear:both}.ec-shelfRole textarea{font-family:sans-serif}.ec-shelfRole img{max-width:100%}.ec-shelfRole html{box-sizing:border-box}.ec-shelfRole *,.ec-shelfRole ::after,.ec-shelfRole ::before{box-sizing:inherit}.ec-shelfRole img{width:100%}.ec-shelfGrid{display:flex;margin-left:0;margin-right:0;flex-wrap:wrap;padding:0;list-style:none}.ec-shelfGrid a{color:inherit;text-decoration:none}.ec-shelfGrid a:hover{text-decoration:none}.ec-shelfGrid .ec-shelfGrid__item{margin-bottom:36px;width:50%;display:flex;flex-direction:column}.ec-shelfGrid .ec-shelfGrid__item-image{height:150px;margin-bottom:10px;text-align:center}.ec-shelfGrid .ec-shelfGrid__item img{width:auto;max-height:100%}.ec-shelfGrid .ec-shelfGrid__item .ec-productRole__btn{margin-top:auto;margin-bottom:15px}.ec-shelfGrid .ec-shelfGrid__item:nth-child(odd){padding-right:8px}.ec-shelfGrid .ec-shelfGrid__item:nth-child(even){padding-left:8px}.ec-shelfGrid .ec-shelfGrid__title{margin-bottom:7px}.ec-shelfGrid .ec-shelfGrid__plice{font-weight:700}.ec-shelfGridCenter{display:flex;margin-left:0;margin-right:0;flex-wrap:wrap;padding:0;list-style:none;justify-content:center}.ec-shelfGridCenter a{color:inherit;text-decoration:none}.ec-shelfGridCenter a:hover{text-decoration:none}.ec-shelfGridCenter .ec-shelfGridCenter__item{margin-bottom:36px;width:50%}.ec-shelfGridCenter .ec-shelfGridCenter__item-image{height:150px;margin-bottom:10px;text-align:center}.ec-shelfGridCenter .ec-shelfGridCenter__item img{width:auto;max-height:100%}.ec-shelfGridCenter .ec-shelfGridCenter__item .ec-productRole__btn{margin-top:auto;padding-top:1em}.ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(odd){padding-right:8px}.ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even){padding-left:8px}.ec-shelfGridCenter .ec-shelfGridCenter__title{margin-bottom:7px}.ec-shelfGridCenter .ec-shelfGridCenter__plice{font-weight:700}.ec-modal .checkbox{display:none}.ec-modal .ec-modal-overlay{opacity:0;transition:all .3s ease;width:100%;height:100%;position:fixed;top:0;left:0;z-index:-100;transform:scale(1);display:flex;background-color:rgba(0,0,0,.3)}.ec-modal .ec-modal-wrap{background-color:#fff;border:1px solid #333;width:90%;margin:20px;padding:40px 5px;border-radius:2px;transition:all .5s ease;align-self:center}.ec-modal .ec-modal-wrap .ec-modal-box{text-align:center}.ec-modal .ec-modal-wrap .ec-modal-box div{margin-top:20px}.ec-modal .ec-modal-wrap.small{width:30%}.ec-modal .ec-modal-wrap.full{width:100%;height:100%}.ec-modal .ec-modal-overlay .ec-modal-close{position:absolute;right:20px;top:10px;font-size:20px;height:30px;width:20px}.ec-modal .ec-modal-overlay .ec-modal-close:hover{cursor:pointer;color:#4b5361}.ec-modal .ec-modal-overlay-close{display:none;width:100%;height:100%;position:fixed;left:0;top:0}.ec-modal input:checked~.ec-modal-overlay{transform:scale(1);opacity:1;z-index:9997;overflow:auto}.ec-modal input:checked~.ec-modal-overlay .ec-modal-overlay-close{display:block}.ec-modal input:checked~.ec-modal-overlay .ec-modal-wrap{transform:translateY(0);z-index:9999}.ec-productRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-productRole:after{content:" ";display:table}.ec-productRole:after{clear:both}.ec-productRole textarea{font-family:sans-serif}.ec-productRole img{max-width:100%}.ec-productRole html{box-sizing:border-box}.ec-productRole *,.ec-productRole ::after,.ec-productRole ::before{box-sizing:inherit}.ec-productRole img{width:100%}.ec-productRole .ec-productRole__img{margin-right:0;margin-bottom:20px}.ec-productRole .ec-productRole__profile{margin-left:0}.ec-productRole .ec-productRole__title .ec-headingTitle{font-size:20px}.ec-productRole .ec-productRole__tags{margin-top:16px;padding:0;padding-bottom:16px;border-bottom:1px dotted #ccc}.ec-productRole .ec-productRole__tag{display:inline-block;padding:2px 5px;list-style:none;font-size:80%;color:#525263;border:solid 1px #d7dadd;border-radius:3px;background-color:#f5f7f8}.ec-productRole .ec-productRole__priceRegular{padding-top:14px}.ec-productRole .ec-productRole__priceRegularTax{margin-left:5px;font-size:10px}.ec-productRole .ec-productRole__price{color:#de5d50;font-size:28px;padding:0;border-bottom:0}.ec-productRole .ec-productRole__code{padding:14px 0;border-bottom:1px dotted #ccc}.ec-productRole .ec-productRole__category{padding:14px 0;border-bottom:1px dotted #ccc}.ec-productRole .ec-productRole__category a{color:#33a8d0}.ec-productRole .ec-productRole__category ul{list-style:none;padding:0;margin:0}.ec-productRole .ec-productRole__actions{padding:14px 0}.ec-productRole .ec-productRole__actions .ec-select select{height:40px;max-width:100%;min-width:100%}.ec-productRole .ec-productRole__btn{width:100%;margin-bottom:10px}.ec-productRole .ec-productRole__description{margin-bottom:16px}.ec-cartRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;display:flex;flex-wrap:wrap;justify-content:flex-end}.ec-cartRole:after{content:" ";display:table}.ec-cartRole:after{clear:both}.ec-cartRole textarea{font-family:sans-serif}.ec-cartRole img{max-width:100%}.ec-cartRole html{box-sizing:border-box}.ec-cartRole *,.ec-cartRole ::after,.ec-cartRole ::before{box-sizing:inherit}.ec-cartRole img{width:100%}.ec-cartRole::before{display:none}.ec-cartRole .ec-cartRole__progress{width:100%;text-align:center}.ec-cartRole .ec-cartRole__error{width:100%;text-align:center}.ec-cartRole .ec-cartRole__error .ec-alert-warning{max-width:80%;display:inline-block}.ec-cartRole .ec-cartRole__totalText{margin-bottom:0;padding:16px 0 6px;width:100%;text-align:center;font-weight:400}.ec-cartRole .ec-cartRole__cart{margin:0;width:100%}.ec-cartRole .ec-cartRole__actions{text-align:right;width:100%}.ec-cartRole .ec-cartRole__total{padding:15px 0 30px;font-weight:700;font-size:16px}.ec-cartRole .ec-cartRole__totalAmount{margin-left:30px;color:#de5d50;font-size:16px}.ec-cartRole .ec-blockBtn--action{margin-bottom:10px}.ec-cartTable{display:table;border-top:1px dotted #ccc;width:100%}.ec-cartHeader{display:none;width:100%;background:#f4f3f0}.ec-cartHeader .ec-cartHeader__label{display:table-cell;padding:16px;text-align:center;background:#f4f3f0;overflow-x:hidden;font-weight:700}.ec-cartCompleteRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-cartCompleteRole:after{content:" ";display:table}.ec-cartCompleteRole:after{clear:both}.ec-cartCompleteRole textarea{font-family:sans-serif}.ec-cartCompleteRole img{max-width:100%}.ec-cartCompleteRole html{box-sizing:border-box}.ec-cartCompleteRole *,.ec-cartCompleteRole ::after,.ec-cartCompleteRole ::before{box-sizing:inherit}.ec-cartCompleteRole img{width:100%}.ec-cartRow{display:table-row}.ec-cartRow .ec-cartRow__delColumn{border-bottom:1px dotted #ccc;text-align:center;display:table-cell;width:14%;vertical-align:middle}.ec-cartRow .ec-cartRow__delColumn .ec-icon img{width:1.5em;height:1.5em}.ec-cartRow .ec-cartRow__contentColumn{border-bottom:1px dotted #ccc;padding:10px 0;display:table}.ec-cartRow .ec-cartRow__img{display:table-cell;width:40%;vertical-align:middle;padding-right:10px}.ec-cartRow .ec-cartRow__summary{display:table-cell;margin-left:5px;font-weight:700;vertical-align:middle;width:46%}.ec-cartRow .ec-cartRow__summary .ec-cartRow__name{margin-bottom:5px}.ec-cartRow .ec-cartRow__summary .ec-cartRow__sutbtotalSP{display:block;font-weight:400}.ec-cartRow .ec-cartRow__amountColumn{display:table-cell;border-bottom:1px dotted #ccc;vertical-align:middle;text-align:center;width:20%}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amount{display:none;margin-bottom:10px}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP{display:block;margin-bottom:10px}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpDown{display:flex;justify-content:center}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpButton{margin:0 2px;display:inline-block;border:2px solid #c9c9c9;border-radius:50%;width:30px;min-width:30px;max-width:30px;height:30px;cursor:pointer;line-height:40px;vertical-align:middle;position:relative;text-align:center;background:#fff}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpButton .ec-cartRow__amountUpButton__icon img{display:block;margin-left:-.4em;width:.8em;height:.8em;position:absolute;top:28%;left:50%}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButton,.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled{margin:0 2px;display:inline-block;border:2px solid #c9c9c9;border-radius:50%;width:30px;min-width:30px;max-width:30px;height:30px;cursor:pointer;line-height:40px;vertical-align:middle;position:relative;text-align:center;background:#fff}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButton .ec-cartRow__amountDownButton__icon img,.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled .ec-cartRow__amountDownButton__icon img{display:block;margin-left:-.4em;width:.8em;height:.8em;position:absolute;top:28%;left:50%}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled{cursor:default}.ec-cartRow .ec-cartRow__subtotalColumn{display:none;border-bottom:1px dotted #ccc;text-align:right;width:16.66666667%}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled{cursor:default}.ec-alert-warning{width:100%;padding:10px;text-align:center;background:#f99;margin-bottom:20px}.ec-alert-warning .ec-alert-warning__icon{display:inline-block;margin-right:1rem;width:20px;height:20px;color:#fff;fill:#fff;vertical-align:top}.ec-alert-warning .ec-alert-warning__text{display:inline-block;font-size:16px;font-weight:700;color:#fff;position:relative}.ec-orderRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;display:flex;flex-direction:column;margin-top:0}.ec-orderRole:after{content:" ";display:table}.ec-orderRole:after{clear:both}.ec-orderRole textarea{font-family:sans-serif}.ec-orderRole img{max-width:100%}.ec-orderRole html{box-sizing:border-box}.ec-orderRole *,.ec-orderRole ::after,.ec-orderRole ::before{box-sizing:inherit}.ec-orderRole img{width:100%}.ec-orderRole .ec-inlineBtn{font-weight:400}.ec-orderRole .ec-orderRole__detail{padding:0;width:100%}.ec-orderRole .ec-orderRole__summary{width:100%}.ec-orderRole .ec-orderRole__summary .ec-inlineBtn{display:inline-block}.ec-orderRole .ec-borderedList{margin-bottom:20px;border-top:1px dotted #ccc}.ec-orderOrder{margin-bottom:30px}.ec-orderOrder .ec-orderOrder__items{border-bottom:1px dotted #ccc;border-top:1px dotted #ccc}.ec-orderAccount{margin-bottom:30px}.ec-orderAccount p{margin-bottom:0}.ec-orderAccount:after{content:" ";display:table}.ec-orderAccount:after{clear:both}.ec-orderAccount .ec-orderAccount__change{display:inline-block;margin-left:10px;float:right}.ec-orderAccount .ec-orderAccount__account{margin-bottom:16px}.ec-orderDelivery .ec-orderDelivery__title{padding:16px 0 17px;font-weight:700;font-size:18px;position:relative}.ec-orderDelivery .ec-orderDelivery__change{display:inline-block;position:absolute;right:0;top:0}.ec-orderDelivery .ec-orderDelivery__items{border-bottom:1px dotted #ccc;border-top:1px dotted #ccc}.ec-orderDelivery .ec-orderDelivery__address{margin:10px 0 18px}.ec-orderDelivery .ec-orderDelivery__address p{margin:0}.ec-orderConfirm{margin-bottom:20px}.ec-orderConfirm .ec-birth textarea,.ec-orderConfirm .ec-halfInput textarea,.ec-orderConfirm .ec-input textarea,.ec-orderConfirm .ec-numberInput textarea,.ec-orderConfirm .ec-select textarea,.ec-orderConfirm .ec-telInput textarea,.ec-orderConfirm .ec-zipInput textarea{height:96px}.ec-AddAddress{padding:0 10px}.ec-AddAddress .ec-AddAddress__info{margin-bottom:32px;text-align:center;font-size:16px}.ec-AddAddress .ec-AddAddress__add{border-top:1px solid #f4f4f4;padding-top:20px;margin-bottom:20px}.ec-AddAddress .ec-AddAddress__item{display:table;padding:16px;background:#f4f4f4;margin-bottom:16px}.ec-AddAddress .ec-AddAddress__itemThumb{display:table-cell;min-width:160px;width:20%}.ec-AddAddress .ec-AddAddress__itemThumb img{width:100%}.ec-AddAddress .ec-AddAddress__itemtContent{display:table-cell;vertical-align:middle;padding-left:16px;font-size:16px}.ec-AddAddress .ec-AddAddress__itemtTitle{font-weight:700;margin-bottom:10px}.ec-AddAddress .ec-AddAddress__itemtSize{margin-bottom:10px}.ec-AddAddress .ec-AddAddress__select{margin-bottom:5px}.ec-AddAddress .ec-AddAddress__selectAddress{display:inline-block}.ec-AddAddress .ec-AddAddress__selectAddress label{font-size:16px;font-weight:400}.ec-AddAddress .ec-AddAddress__selectAddress select{min-width:100%}.ec-AddAddress .ec-AddAddress__selectNumber{display:inline-block;margin-left:30px}.ec-AddAddress .ec-AddAddress__selectNumber label{font-size:16px;font-weight:400}.ec-AddAddress .ec-AddAddress__selectNumber input{display:inline-block;margin-left:10px;width:80px}.ec-AddAddress .ec-AddAddress__actions .ec-blockBtn--action{margin-bottom:8px}.ec-AddAddress .ec-AddAddress__new{margin-bottom:20px}.ec-historyRole .ec-historyRole__contents{padding-top:1em;padding-bottom:16px;border-top:1px solid #ccc;display:flex;flex-direction:column;color:#525263}.ec-historyRole .ec-historyRole__header{width:100%}.ec-historyRole .ec-historyRole__detail{border-top:1px dotted #ccc;width:100%}.ec-historyRole .ec-historyRole__detail .ec-imageGrid:nth-of-type(1){border-top:none}.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailTitle{margin-bottom:8px;font-size:1.6rem;font-weight:700}.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailPrice{margin-bottom:8px;font-size:1.6rem;font-weight:700}.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailOption{display:inline-block;margin-bottom:8px;margin-right:.5rem;font-size:1.6rem}.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailOption::after{display:inline-block;padding-left:.5rem;content:"/";font-weight:700}.ec-historyListHeader .ec-historyListHeader__date{font-weight:700;font-size:16px}.ec-historyListHeader .ec-historyListHeader__action{margin:16px 0}.ec-historyListHeader .ec-historyListHeader__action a{font-size:12px;font-weight:400}.ec-orderMails .ec-orderMails__item{padding-bottom:10px;border-bottom:1px dotted #ccc}.ec-orderMails .ec-orderMails__time{margin:0}.ec-orderMails .ec-orderMails__body{display:none}.ec-orderMail{padding-bottom:10px;border-bottom:1px dotted #ccc;margin-bottom:16px}.ec-orderMail .ec-orderMail__time{margin:0}.ec-orderMail .ec-orderMail__body{display:none}.ec-orderMail .ec-orderMail__time{margin-bottom:4px}.ec-orderMail .ec-orderMail__link{margin-bottom:4px}.ec-orderMail .ec-orderMail__link a{color:#0092c4;text-decoration:none;cursor:pointer}.ec-orderMail .ec-orderMail__link a:hover{color:#33a8d0}.ec-orderMail .ec-orderMail__close a{color:#0092c4;text-decoration:none;cursor:pointer}.ec-orderMail .ec-orderMail__close a:hover{color:#33a8d0}.ec-addressRole .ec-addressRole__item{border-top:1px dotted #ccc}.ec-addressRole .ec-addressRole__actions{margin-top:32px;padding-bottom:20px;border-bottom:1px dotted #ccc}.ec-addressList .ec-addressList__item{display:table;width:100%;position:relative;border-bottom:1px dotted #ccc}.ec-addressList .ec-addressList__remove{vertical-align:middle;padding:16px;text-align:center}.ec-addressList .ec-addressList__remove .ec-icon img{width:1em;height:1em}.ec-addressList .ec-addressList__address{display:table-cell;vertical-align:middle;padding:16px;margin-right:4em;width:80%}.ec-addressList .ec-addressList__action{position:relative;vertical-align:middle;text-align:right;top:27px;padding-right:10px}.ec-forgotRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-forgotRole:after{content:" ";display:table}.ec-forgotRole:after{clear:both}.ec-forgotRole textarea{font-family:sans-serif}.ec-forgotRole img{max-width:100%}.ec-forgotRole html{box-sizing:border-box}.ec-forgotRole *,.ec-forgotRole ::after,.ec-forgotRole ::before{box-sizing:inherit}.ec-forgotRole img{width:100%}.ec-forgotRole .ec-forgotRole__intro{font-size:16px}.ec-forgotRole .ec-forgotRole__form{margin-bottom:16px}.ec-registerRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-registerRole:after{content:" ";display:table}.ec-registerRole:after{clear:both}.ec-registerRole textarea{font-family:sans-serif}.ec-registerRole img{max-width:100%}.ec-registerRole html{box-sizing:border-box}.ec-registerRole *,.ec-registerRole ::after,.ec-registerRole ::before{box-sizing:inherit}.ec-registerRole img{width:100%}.ec-registerRole .ec-registerRole__actions{padding-top:20px;text-align:center}.ec-registerRole .ec-registerRole__actions p{margin-bottom:16px}.ec-registerRole .ec-blockBtn--action{margin-bottom:16px}.ec-registerCompleteRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-registerCompleteRole:after{content:" ";display:table}.ec-registerCompleteRole:after{clear:both}.ec-registerCompleteRole textarea{font-family:sans-serif}.ec-registerCompleteRole img{max-width:100%}.ec-registerCompleteRole html{box-sizing:border-box}.ec-registerCompleteRole *,.ec-registerCompleteRole ::after,.ec-registerCompleteRole ::before{box-sizing:inherit}.ec-registerCompleteRole img{width:100%}.ec-contactRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-contactRole:after{content:" ";display:table}.ec-contactRole:after{clear:both}.ec-contactRole textarea{font-family:sans-serif}.ec-contactRole img{max-width:100%}.ec-contactRole html{box-sizing:border-box}.ec-contactRole *,.ec-contactRole ::after,.ec-contactRole ::before{box-sizing:inherit}.ec-contactRole img{width:100%}.ec-contactRole .ec-contactRole__actions{padding-top:20px}.ec-contactRole p{margin:16px 0}.ec-contactConfirmRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-contactConfirmRole:after{content:" ";display:table}.ec-contactConfirmRole:after{clear:both}.ec-contactConfirmRole textarea{font-family:sans-serif}.ec-contactConfirmRole img{max-width:100%}.ec-contactConfirmRole html{box-sizing:border-box}.ec-contactConfirmRole *,.ec-contactConfirmRole ::after,.ec-contactConfirmRole ::before{box-sizing:inherit}.ec-contactConfirmRole img{width:100%}.ec-contactConfirmRole .ec-contactConfirmRole__actions{padding-top:20px}.ec-contactConfirmRole .ec-blockBtn--action{margin-bottom:16px}.ec-contactCompleteRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-contactCompleteRole:after{content:" ";display:table}.ec-contactCompleteRole:after{clear:both}.ec-contactCompleteRole textarea{font-family:sans-serif}.ec-contactCompleteRole img{max-width:100%}.ec-contactCompleteRole html{box-sizing:border-box}.ec-contactCompleteRole *,.ec-contactCompleteRole ::after,.ec-contactCompleteRole ::before{box-sizing:inherit}.ec-contactCompleteRole img{width:100%}.ec-customerRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-customerRole:after{content:" ";display:table}.ec-customerRole:after{clear:both}.ec-customerRole textarea{font-family:sans-serif}.ec-customerRole img{max-width:100%}.ec-customerRole html{box-sizing:border-box}.ec-customerRole *,.ec-customerRole ::after,.ec-customerRole ::before{box-sizing:inherit}.ec-customerRole img{width:100%}.ec-customerRole .ec-customerRole__actions{padding-top:20px}.ec-customerRole .ec-blockBtn--action{margin-bottom:10px}.ec-contactConfirmRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-contactConfirmRole:after{content:" ";display:table}.ec-contactConfirmRole:after{clear:both}.ec-contactConfirmRole textarea{font-family:sans-serif}.ec-contactConfirmRole img{max-width:100%}.ec-contactConfirmRole html{box-sizing:border-box}.ec-contactConfirmRole *,.ec-contactConfirmRole ::after,.ec-contactConfirmRole ::before{box-sizing:inherit}.ec-contactConfirmRole img{width:100%}.ec-contactConfirmRole .ec-contactConfirmRole__actions{padding-top:20px}.ec-contactConfirmRole .ec-blockBtn--action{margin-bottom:16px}.ec-contactCompleteRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-contactCompleteRole:after{content:" ";display:table}.ec-contactCompleteRole:after{clear:both}.ec-contactCompleteRole textarea{font-family:sans-serif}.ec-contactCompleteRole img{max-width:100%}.ec-contactCompleteRole html{box-sizing:border-box}.ec-contactCompleteRole *,.ec-contactCompleteRole ::after,.ec-contactCompleteRole ::before{box-sizing:inherit}.ec-contactCompleteRole img{width:100%}@keyframes fadeIn{0%{opacity:0;visibility:hidden}100%{opacity:1;visibility:visible}}@keyframes fadeOut{0%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}.bg-load-overlay{background:rgba(255,255,255,.4);box-sizing:border-box;position:fixed;display:flex;flex-flow:column nowrap;align-items:center;justify-content:space-around;top:0;left:0;width:100%;height:100%;z-index:2147483647;opacity:1}.ec-404Role{font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;height:100vh;background-color:#f2f2f2;text-align:center;box-sizing:border-box}.ec-404Role textarea{font-family:sans-serif}.ec-404Role img{max-width:100%}.ec-404Role html{box-sizing:border-box}.ec-404Role *,.ec-404Role ::after,.ec-404Role ::before{box-sizing:inherit}.ec-404Role img{width:100%}.ec-404Role .ec-404Role__icon img{width:1em;height:1em}.ec-404Role .ec-404Role__title{font-weight:700;font-size:25px}.ec-withdrawRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;text-align:center;padding:0 16px}.ec-withdrawRole:after{content:" ";display:table}.ec-withdrawRole:after{clear:both}.ec-withdrawRole textarea{font-family:sans-serif}.ec-withdrawRole img{max-width:100%}.ec-withdrawRole html{box-sizing:border-box}.ec-withdrawRole *,.ec-withdrawRole ::after,.ec-withdrawRole ::before{box-sizing:inherit}.ec-withdrawRole img{width:100%}.ec-withdrawRole .ec-withdrawRole__title{margin-bottom:16px;font-weight:700;font-size:24px}.ec-withdrawRole .ec-withdrawRole__description{margin-bottom:32px;font-size:16px}.ec-withdrawRole .ec-icon img{width:100px;height:100px}.ec-withdrawConfirmRole .ec-withdrawConfirmRole__cancel{margin-bottom:20px}.ec-withdrawConfirmRole .ec-withdrawConfirmRole__title{margin-bottom:16px;font-weight:700;font-size:24px}.ec-withdrawConfirmRole .ec-withdrawConfirmRole__description{margin-bottom:32px;font-size:16px}.ec-withdrawConfirmRole .ec-icon img{width:100px;height:100px}.ec-userEditCompleteRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;text-align:center;padding:0 16px}.ec-userEditCompleteRole:after{content:" ";display:table}.ec-userEditCompleteRole:after{clear:both}.ec-userEditCompleteRole textarea{font-family:sans-serif}.ec-userEditCompleteRole img{max-width:100%}.ec-userEditCompleteRole html{box-sizing:border-box}.ec-userEditCompleteRole *,.ec-userEditCompleteRole ::after,.ec-userEditCompleteRole ::before{box-sizing:inherit}.ec-userEditCompleteRole img{width:100%}.ec-userEditCompleteRole .ec-userEditCompleteRole__title{margin-bottom:16px;font-weight:700;font-size:24px}.ec-userEditCompleteRole .ec-userEditCompleteRole__description{margin-bottom:32px;font-size:16px}@media (min-width:768px){.ec-grid2 .ec-grid2__cell{width:50%}.ec-grid2 .ec-grid2__cell2{width:100%}.ec-grid3 .ec-grid3__cell{width:33.33333%}.ec-grid3 .ec-grid3__cell2{width:66.66667%}.ec-grid3 .ec-grid3__cell3{width:100%}.ec-grid4 .ec-grid4__cell{width:25%}.ec-grid6 .ec-grid6__cell{width:16.66667%}.ec-grid6 .ec-grid6__cell2{width:33.33333%}.ec-grid6 .ec-grid6__cell3{width:50%}}@media only screen and (min-width:768px){.ec-pageHeader h1{border-top:none;border-bottom:1px solid #ccc;margin:10px 16px 48px;padding:8px;font-size:32px;font-weight:700}.ec-heading-bold{font-size:18px}.ec-reportHeading{border-top:0;font-size:32px}.ec-reportHeading h1,.ec-reportHeading h2,.ec-reportHeading h3,.ec-reportHeading h4,.ec-reportHeading h5,.ec-reportHeading h6,.ec-reportHeading p{font-size:32px}.ec-price .ec-price__unit{font-size:1em}.ec-price .ec-price__price{font-size:1em}.ec-price .ec-price__tax{font-size:.57em}.ec-borderedDefs dl{flex-wrap:nowrap;padding:15px 0 4px}.ec-borderedDefs dt{padding-top:14px;width:30%}.ec-borderedDefs dd{width:70%;line-height:3}.ec-list-chilled dd,.ec-list-chilled dt{padding:16px 0}.ec-list-chilled dd{padding:16px}.ec-borderedList{border-top:1px dotted #ccc}.ec-blockTopBtn{right:30px;bottom:30px}.ec-birth input,.ec-halfInput input,.ec-input input,.ec-numberInput input,.ec-select input,.ec-telInput input,.ec-zipInput input{margin-bottom:16px}.ec-halfInput input[type=text]{margin-left:15px;width:45%}.ec-birth input,.ec-halfInput input,.ec-input input,.ec-numberInput input,.ec-select input,.ec-telInput input,.ec-zipInput input{margin-bottom:16px}.ec-halfInput input[type=text]{margin-left:15px;width:45%}.ec-select__delivery{display:inline-block}.ec-select__time{display:inline-block}.ec-birth select{margin:0 8px 10px}.ec-required{margin-left:1em}.ec-grid2{display:flex}.ec-grid3{display:flex}.ec-grid4{display:flex}.ec-grid6{display:flex}.ec-off1Grid{display:block;margin:0}.ec-off1Grid .ec-off1Grid__cell{position:relative;min-height:1px;margin-left:8.33333%}.ec-off2Grid{display:flex}.ec-off2Grid .ec-off2Grid__cell{position:relative;min-height:1px;margin-left:16.66667%}.ec-off3Grid{display:flex}.ec-off3Grid .ec-off3Grid__cell{position:relative;min-height:1px;margin-left:25%}.ec-off4Grid{display:flex}.ec-off4Grid .ec-off4Grid__cell{position:relative;min-height:1px;margin-left:33.33333%}.ec-imageGrid .ec-imageGrid__img{padding:10px;width:130px}.ec-login{margin:0 16px;padding:30px 13% 60px}.ec-login .ec-login__link{margin-left:20px}.ec-guest{height:100%;margin:0 16px}.ec-displayB{flex-direction:row}.ec-displayB .ec-displayB__cell{width:31.4466%;margin-bottom:0}.ec-displayC .ec-displayC__cell{width:22.8775%}.ec-displayD{box-sizing:border-box;flex-wrap:nowrap}.ec-displayD .ec-displayD__cell{width:14.3083%;margin-bottom:16px}.ec-topicpath{padding:30px 0 10px;border:0;font-size:16px}.ec-progress{margin-bottom:30px;padding:0}.ec-progress .ec-progress__number{line-height:42px;width:42px;height:42px;font-size:20px}.ec-cartNaviWrap{position:relative}.ec-cartNavi{display:flex;justify-content:space-between;border-radius:99999px;box-sizing:border-box;padding:12px 17px 10px;width:auto;min-width:140px;height:44px;white-space:nowrap;cursor:pointer;background:#f8f8f8}.ec-cartNavi .ec-cartNavi__badge{display:inline-block;min-width:17px;position:relative;left:0;top:0}.ec-cartNavi .ec-cartNavi__price{display:inline-block;font-size:14px;font-weight:400;vertical-align:middle}.ec-cartNavi.is-active .ec-cartNavi__badge{display:none}.ec-cartNaviIsset{margin-top:10px;min-width:256px;max-width:256px}.ec-cartNaviIsset::before{display:inline-block;content:"";width:0;height:0;border-style:solid;border-width:0 8.5px 10px 8.5px;border-color:transparent transparent #f8f8f8 transparent;position:absolute;top:-9px}.ec-cartNaviNull{margin-top:10px;min-width:256px;max-width:256px}.ec-cartNaviNull::before{display:inline-block;content:"";width:0;height:0;border-style:solid;border-width:0 8.5px 10px 8.5px;border-color:transparent transparent #f8f8f8 transparent;position:absolute;top:-9px}.ec-totalBox .ec-totalBox__price{font-size:24px}.ec-totalBox .ec-totalBox__taxLabel{font-size:14px}.ec-totalBox .ec-totalBox__taxRate{font-size:12px}.ec-news{margin-right:3%}.ec-news{margin-bottom:32px}.ec-news .ec-news__title{padding:16px;text-align:left;font-size:24px}.ec-navlistRole .ec-navlistRole__navlist{flex-wrap:nowrap}.ec-welcomeMsg{padding-left:26px;padding-right:26px}.ec-favoriteRole .ec-favoriteRole__item-image{height:250px}.ec-favoriteRole .ec-favoriteRole__item{width:25%}.ec-mypageRole{padding-left:26px;padding-right:26px}.ec-mypageRole .ec-pageHeader h1{margin:10px 0 48px;padding:8px 0 18px}.ec-layoutRole .ec-layoutRole__mainWithColumn{width:75%}.ec-layoutRole .ec-layoutRole__mainBetweenColumn{width:50%}.ec-layoutRole .ec-layoutRole__left,.ec-layoutRole .ec-layoutRole__right{display:block;width:25%}.ec-headerRole:after{content:" ";display:table}.ec-headerRole:after{clear:both}.ec-headerRole{width:100%}.ec-headerRole:after{content:" ";display:table}.ec-headerRole:after{clear:both}.ec-headerRole .ec-headerRole__navSP{display:none}.ec-headerNaviRole{padding-bottom:40px}.ec-headerNaviRole .ec-headerNaviRole__search{display:inline-block;margin-top:10px}.ec-headerNaviRole .ec-headerNaviRole__search a{color:inherit;text-decoration:none}.ec-headerNaviRole .ec-headerNaviRole__search a:hover{text-decoration:none}.ec-headerNaviRole .ec-headerNaviRole__navSP{display:none}.ec-headerNaviRole .ec-headerNaviRole__navSP a{color:inherit;text-decoration:none}.ec-headerNaviRole .ec-headerNaviRole__navSP a:hover{text-decoration:none}.ec-headerNavSP{display:none}.ec-headerTitle .ec-headerTitle__title a{font-size:40px}.ec-headerTitle .ec-headerTitle__subtitle{font-size:16px;margin-bottom:10px}.ec-headerNav .ec-headerNav__itemIcon{margin-right:0;font-size:20px}.ec-headerNav .ec-headerNav__itemLink{display:inline-block}.ec-headerSearch .ec-headerSearch__category{float:left;width:43%}.ec-headerSearch .ec-headerSearch__category .ec-select select{max-width:165px;height:36px}.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search{border-top-right-radius:inherit;border-top-left-radius:50px;border-bottom-left-radius:50px}.ec-headerSearch .ec-headerSearch__keyword{float:right;width:57%;border-bottom-left-radius:inherit;border-top-right-radius:50px;border-bottom-right-radius:50px}.ec-categoryNaviRole{display:block;width:100%}.ec-categoryNaviRole a{color:inherit;text-decoration:none}.ec-categoryNaviRole a:hover{text-decoration:none}.ec-itemNav__nav{display:inline-block}.ec-itemNav__nav li{float:left;width:auto}.ec-itemNav__nav li a{text-align:center;border-bottom:none}.ec-itemNav__nav li ul{display:block;z-index:100;position:absolute}.ec-itemNav__nav li ul li{overflow:hidden;height:0}.ec-itemNav__nav>li:hover>ul>li{overflow:visible;height:auto}.ec-itemNav__nav li ul li ul:before{content:"\f054";font-family:"Font Awesome 5 Free";font-weight:900;font-size:12px;color:#fff;position:absolute;top:19px;right:auto;left:-20px}.ec-itemNav__nav li ul li:hover>ul>li{overflow:visible;height:auto;width:auto}.ec-drawerRole{display:none}.ec-drawerRoleClose{display:none}.ec-drawerRole.is_active{display:none}.ec-drawerRoleClose.is_active{display:none}.ec-overlayRole{display:none}.have_curtain .ec-overlayRole{display:none}.ec-footerRole{padding-top:40px;margin-top:100px}.ec-footerRole .ec-footerRole__inner{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-footerRole .ec-footerRole__inner:after{content:" ";display:table}.ec-footerRole .ec-footerRole__inner:after{clear:both}.ec-footerRole .ec-footerRole__inner textarea{font-family:sans-serif}.ec-footerRole .ec-footerRole__inner img{max-width:100%}.ec-footerRole .ec-footerRole__inner html{box-sizing:border-box}.ec-footerRole .ec-footerRole__inner *,.ec-footerRole .ec-footerRole__inner ::after,.ec-footerRole .ec-footerRole__inner ::before{box-sizing:inherit}.ec-footerRole .ec-footerRole__inner img{width:100%}.ec-footerNavi .ec-footerNavi__link{display:inline-block}.ec-footerNavi .ec-footerNavi__link a{display:inline-block;border-bottom:none;margin:0 10px;padding:0;text-decoration:underline}.ec-footerTitle{padding:50px 0 80px}.ec-footerTitle .ec-footerTitle__logo a{font-size:24px}.ec-footerTitle .ec-footerTitle__copyright{font-size:12px}.ec-sliderItemRole .item_nav{display:flex;justify-content:flex-start;flex-wrap:wrap;margin-bottom:0}.ec-eyecatchRole{flex-wrap:nowrap}.ec-eyecatchRole .ec-eyecatchRole__image{order:2}.ec-eyecatchRole .ec-eyecatchRole__intro{padding-right:5%;order:1}.ec-eyecatchRole .ec-eyecatchRole__introEnTitle{margin-top:45px}.ec-eyecatchRole .ec-eyecatchRole__introTitle{margin-bottom:1em;font-size:26px}.ec-eyecatchRole .ec-eyecatchRole__introDescriptiron{margin-bottom:30px}.ec-blockBtn--top{max-width:260px}.ec-topicRole{padding:60px 0}.ec-topicRole .ec-topicRole__list{flex-wrap:nowrap}.ec-topicRole .ec-topicRole__listItem{width:calc(100% / 2)}.ec-topicRole .ec-topicRole__listItem:not(:last-of-type){margin-right:30px}.ec-topicRole .ec-topicRole__listItemTitle{margin-top:1em}.ec-newItemRole{padding:60px 0}.ec-newItemRole .ec-newItemRole__list{flex-wrap:nowrap}.ec-newItemRole .ec-newItemRole__listItem{margin-bottom:15px;width:calc(100% / 4)}.ec-newItemRole .ec-newItemRole__listItem:not(:last-of-type){margin-right:30px}.ec-newItemRole .ec-newItemRole__listItem:nth-child(odd){margin-right:30px}.ec-newItemRole .ec-newItemRole__listItemTitle{margin:20px 0 10px}.ec-categoryRole{padding:60px 0}.ec-categoryRole .ec-categoryRole__list{flex-wrap:nowrap}.ec-categoryRole .ec-categoryRole__listItem{width:calc(100% / 3)}.ec-categoryRole .ec-categoryRole__listItem:not(:last-of-type){margin-right:30px}.ec-newsRole{padding:60px 0 0}.ec-newsRole .ec-newsRole__news{border:16px solid #f8f8f8;padding:20px 30px}.ec-newsRole .ec-newsRole__newsItem:last-of-type{margin-bottom:0}.ec-newsRole .ec-newsRole__newsItem{padding:20px 0}.ec-newsRole .ec-newsRole__newsHeading{display:flex}.ec-newsRole .ec-newsRole__newsDate{display:inline-block;margin:0;min-width:120px;font-size:14px}.ec-newsRole .ec-newsRole__newsColumn{display:inline-flex;min-width:calc(100% - 120px)}.ec-newsRole .ec-newsRole__newsTitle{margin-bottom:0;line-height:1.8}.ec-newsRole .ec-newsRole__newsDescription{margin:20px 0 0;line-height:1.8}.ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription{margin:20px 0 0}.ec-searchnavRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-searchnavRole:after{content:" ";display:table}.ec-searchnavRole:after{clear:both}.ec-searchnavRole textarea{font-family:sans-serif}.ec-searchnavRole img{max-width:100%}.ec-searchnavRole html{box-sizing:border-box}.ec-searchnavRole *,.ec-searchnavRole ::after,.ec-searchnavRole ::before{box-sizing:inherit}.ec-searchnavRole img{width:100%}.ec-searchnavRole .ec-searchnavRole__infos{padding-left:0;padding-right:0;border-top:1px solid #ccc;padding-top:16px;flex-direction:row}.ec-searchnavRole .ec-searchnavRole__counter{margin-bottom:0;width:50%}.ec-searchnavRole .ec-searchnavRole__actions{width:50%}.ec-shelfGrid{margin-left:-16px;margin-right:-16px}.ec-shelfGrid .ec-shelfGrid__item-image{height:250px}.ec-shelfGrid .ec-shelfGrid__item{padding:0 16px;width:25%}.ec-shelfGrid .ec-shelfGrid__item:nth-child(odd){padding:0 16px}.ec-shelfGrid .ec-shelfGrid__item:nth-child(even){padding:0 16px}.ec-shelfGridCenter{margin-left:-16px;margin-right:-16px}.ec-shelfGridCenter .ec-shelfGridCenter__item-image{height:250px}.ec-shelfGridCenter .ec-shelfGridCenter__item{padding:0 16px;width:25%}.ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(odd){padding:0 16px}.ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even){padding:0 16px}.ec-modal .ec-modal-wrap{padding:40px 10px;width:50%;margin:20px auto}.ec-productRole .ec-productRole__img{margin-right:16px;margin-bottom:0}.ec-productRole .ec-productRole__profile{margin-left:16px}.ec-productRole .ec-productRole__title .ec-headingTitle{font-size:32px}.ec-productRole .ec-productRole__price{padding:14px 0;border-bottom:1px dotted #ccc}.ec-productRole .ec-productRole__actions .ec-select select{min-width:350px;max-width:350px}.ec-productRole .ec-productRole__btn{width:60%;margin-bottom:16px;min-width:350px}.ec-cartRole .ec-cartRole__totalText{margin-bottom:30px;padding:0}.ec-cartRole .ec-cartRole__cart{margin:0 10%}.ec-cartRole .ec-cartRole__actions{width:20%;margin-right:10%}.ec-cartRole .ec-cartRole__totalAmount{font-size:24px}.ec-cartTable{border-top:none}.ec-cartHeader{display:table-row}.ec-cartRow .ec-cartRow__delColumn{width:8.3333333%}.ec-cartRow .ec-cartRow__delColumn .ec-icon img{width:1em;height:1em}.ec-cartRow .ec-cartRow__contentColumn{display:table-cell}.ec-cartRow .ec-cartRow__img{display:inline-block;min-width:80px;max-width:100px;padding-right:0}.ec-cartRow .ec-cartRow__summary{display:inline-block;margin-left:20px;vertical-align:middle}.ec-cartRow .ec-cartRow__summary .ec-cartRow__sutbtotalSP{display:none}.ec-cartRow .ec-cartRow__amountColumn{width:16.66666667%}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amount{display:block}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP{display:none}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpDown{display:block}.ec-cartRow .ec-cartRow__subtotalColumn{display:table-cell}.ec-orderRole{margin-top:20px;flex-direction:row}.ec-orderRole .ec-orderRole__detail{padding:0 16px;width:66.66666%}.ec-orderRole .ec-orderRole__summary{width:33.33333%;padding:0 16px}.ec-orderRole .ec-orderRole__summary .ec-inlineBtn{display:none}.ec-orderRole .ec-borderedList{border-top:none}.ec-orderConfirm{margin-bottom:0}.ec-AddAddress{margin:0 10%}.ec-AddAddress .ec-AddAddress__selectAddress select{min-width:350px}.ec-historyRole .ec-historyRole__contents{flex-direction:row}.ec-historyRole .ec-historyRole__header{width:33.3333%}.ec-historyRole .ec-historyRole__detail{width:66.6666%;border-top:none}.ec-historyListHeader .ec-historyListHeader__date{font-weight:700;font-size:20px}.ec-historyListHeader .ec-historyListHeader__action a{font-size:14px}.ec-registerRole .ec-registerRole__actions{text-align:left}.ec-customerRole .ec-blockBtn--action{margin-bottom:16px}.ec-userEditCompleteRole .ec-userEditCompleteRole__title{font-size:32px}}@media only screen and (min-width:768px) and (min-width:768px){.ec-off1Grid{display:flex}.ec-off1Grid .ec-off1Grid__cell{width:83.33333%}.ec-off2Grid .ec-off2Grid__cell{width:66.66667%}.ec-off3Grid .ec-off3Grid__cell{width:50%}.ec-off4Grid .ec-off4Grid__cell{width:33.33333%}} +@charset "UTF-8";/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}body{font-family:Roboto,"游ゴシック",YuGothic,"Yu Gothic","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN",Arial,"メイリオ",Meiryo,sans-serif;color:#525263;transition:z-index 0s .005s;background:#f6f6f6;margin:0}a{text-decoration:none}pre{background-color:transparent;border:none;padding:16px 0}p{-webkit-margin-before:0;-webkit-margin-after:0}.ec-headingTitle{margin:0 0 8px;font-size:32px;font-weight:400;color:#525263}.ec-pageHeader h1{margin:0 0 8px;border-bottom:1px dotted #ccc;border-top:1px solid #ccc;padding:8px 0 12px;font-size:16px;font-weight:700}.ec-heading{margin:24px 0}.ec-heading-bold{margin:16px 0;font-size:16px;font-weight:700}.ec-rectHeading h1,.ec-rectHeading h2,.ec-rectHeading h3,.ec-rectHeading h4,.ec-rectHeading h5,.ec-rectHeading h6{background:#f3f3f3;padding:8px 12px;font-size:20px;font-weight:700}.ec-reportHeading{width:100%;border-top:1px dotted #ccc;margin:20px 0 30px;padding:0;text-align:center;font-size:24px;font-weight:700}.ec-reportHeading h1,.ec-reportHeading h2,.ec-reportHeading h3,.ec-reportHeading h4,.ec-reportHeading h5,.ec-reportHeading h6,.ec-reportHeading p{font-weight:700;font-size:24px}.ec-link{color:#0092c4;text-decoration:none;cursor:pointer}.ec-link:hover{color:#33a8d0;text-decoration:none}.ec-font-bold{font-weight:700}.ec-color-grey{color:#9a947e}.ec-color-red{color:#de5d50}.ec-color-accent{color:#de5d50}.ec-font-size-1{font-size:12px}.ec-font-size-2{font-size:14px}.ec-font-size-3{font-size:16px}.ec-font-size-4{font-size:20px}.ec-font-size-5{font-size:32px}.ec-font-size-6{font-size:40px}.ec-text-ac{text-align:center}.ec-price .ec-price__unit{font-size:18px;font-weight:700}.ec-price .ec-price__price{display:inline-block;padding:0 .3em;font-size:18px;font-weight:700}.ec-price .ec-price__tax{font-size:12px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.ec-reportDescription{margin-bottom:32px;text-align:center;font-size:16px;line-height:1.4}.ec-para-normal{margin-bottom:16px}.ec-definitions,.ec-definitions--soft{margin:5px 0;display:block}.ec-definitions dd,.ec-definitions dt,.ec-definitions--soft dd,.ec-definitions--soft dt{display:inline-block;margin:0}.ec-definitions dt,.ec-definitions--soft dt{font-weight:700}.ec-definitions--soft dt{font-weight:400}.ec-borderedDefs{width:100%;border-top:1px dotted #ccc;margin-bottom:16px}.ec-borderedDefs dl{display:flex;border-bottom:1px dotted #ccc;margin:0;padding:10px 0 0;flex-wrap:wrap}.ec-borderedDefs dd,.ec-borderedDefs dt{padding:0}.ec-borderedDefs dt{font-weight:400;width:100%;padding-top:0}.ec-borderedDefs dd{padding:0;width:100%;line-height:2.5}.ec-borderedDefs p{line-height:1.4}.ec-list-chilled{display:table-row;border:0 none;padding:8px 0}.ec-list-chilled dd,.ec-list-chilled dt{display:table-cell;border-bottom:1px dotted #ccc;padding:0}.ec-list-chilled dt{width:30%}.ec-list-chilled dd{padding:0}.ec-borderedList{width:100%;border-top:0;list-style:none;padding:0}.ec-borderedList li{border-bottom:1px dotted #ccc}.ec-list-chilled{display:table-row;border:0 none;padding:8px 0}.ec-list-chilled dd,.ec-list-chilled dt{display:table-cell;border-bottom:1px dotted #ccc;padding:16px 0}.ec-list-chilled dt{width:30%}.ec-list-chilled dd{padding:16px}.ec-inlineBtn{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding:10px 16px;text-decoration:none;color:#525263;background-color:#f5f7f8;border-color:#ccc}.ec-inlineBtn.active.focus,.ec-inlineBtn.active:focus,.ec-inlineBtn.focus,.ec-inlineBtn:active.focus,.ec-inlineBtn:active:focus,.ec-inlineBtn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-inlineBtn.focus,.ec-inlineBtn:focus,.ec-inlineBtn:hover{color:#525263;text-decoration:none}.ec-inlineBtn.active,.ec-inlineBtn:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-inlineBtn.disabled,.ec-inlineBtn[disabled],fieldset[disabled] .ec-inlineBtn{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-inlineBtn.focus,.ec-inlineBtn:focus{color:#525263;background-color:#d7dfe3;border-color:#8c8c8c}.ec-inlineBtn:hover{color:#525263;background-color:#d7dfe3;border-color:#adadad}.ec-inlineBtn.active,.ec-inlineBtn:active,.open>.ec-inlineBtn.dropdown-toggle{color:#525263;background-color:#d7dfe3;border-color:#adadad}.ec-inlineBtn.active.focus,.ec-inlineBtn.active:focus,.ec-inlineBtn.active:hover,.ec-inlineBtn:active.focus,.ec-inlineBtn:active:focus,.ec-inlineBtn:active:hover,.open>.ec-inlineBtn.dropdown-toggle.focus,.open>.ec-inlineBtn.dropdown-toggle:focus,.open>.ec-inlineBtn.dropdown-toggle:hover{color:#525263;background-color:#c2ced4;border-color:#8c8c8c}.ec-inlineBtn.active,.ec-inlineBtn:active,.open>.ec-inlineBtn.dropdown-toggle{background-image:none}.ec-inlineBtn.disabled.focus,.ec-inlineBtn.disabled:focus,.ec-inlineBtn.disabled:hover,.ec-inlineBtn[disabled].focus,.ec-inlineBtn[disabled]:focus,.ec-inlineBtn[disabled]:hover,fieldset[disabled] .ec-inlineBtn.focus,fieldset[disabled] .ec-inlineBtn:focus,fieldset[disabled] .ec-inlineBtn:hover{background-color:#f5f7f8;border-color:#ccc}.ec-inlineBtn .badge{color:#f5f7f8;background-color:#525263}.ec-inlineBtn .ec-icon img{width:1em;vertical-align:text-bottom}.ec-inlineBtn--primary{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:#5cb1b1;border-color:#5cb1b1}.ec-inlineBtn--primary.active.focus,.ec-inlineBtn--primary.active:focus,.ec-inlineBtn--primary.focus,.ec-inlineBtn--primary:active.focus,.ec-inlineBtn--primary:active:focus,.ec-inlineBtn--primary:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-inlineBtn--primary.focus,.ec-inlineBtn--primary:focus,.ec-inlineBtn--primary:hover{color:#525263;text-decoration:none}.ec-inlineBtn--primary.active,.ec-inlineBtn--primary:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-inlineBtn--primary.disabled,.ec-inlineBtn--primary[disabled],fieldset[disabled] .ec-inlineBtn--primary{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-inlineBtn--primary.focus,.ec-inlineBtn--primary:focus{color:#fff;background-color:#479393;border-color:#2e6060}.ec-inlineBtn--primary:hover{color:#fff;background-color:#479393;border-color:#438d8d}.ec-inlineBtn--primary.active,.ec-inlineBtn--primary:active,.open>.ec-inlineBtn--primary.dropdown-toggle{color:#fff;background-color:#479393;border-color:#438d8d}.ec-inlineBtn--primary.active.focus,.ec-inlineBtn--primary.active:focus,.ec-inlineBtn--primary.active:hover,.ec-inlineBtn--primary:active.focus,.ec-inlineBtn--primary:active:focus,.ec-inlineBtn--primary:active:hover,.open>.ec-inlineBtn--primary.dropdown-toggle.focus,.open>.ec-inlineBtn--primary.dropdown-toggle:focus,.open>.ec-inlineBtn--primary.dropdown-toggle:hover{color:#fff;background-color:#3b7b7b;border-color:#2e6060}.ec-inlineBtn--primary.active,.ec-inlineBtn--primary:active,.open>.ec-inlineBtn--primary.dropdown-toggle{background-image:none}.ec-inlineBtn--primary.disabled.focus,.ec-inlineBtn--primary.disabled:focus,.ec-inlineBtn--primary.disabled:hover,.ec-inlineBtn--primary[disabled].focus,.ec-inlineBtn--primary[disabled]:focus,.ec-inlineBtn--primary[disabled]:hover,fieldset[disabled] .ec-inlineBtn--primary.focus,fieldset[disabled] .ec-inlineBtn--primary:focus,fieldset[disabled] .ec-inlineBtn--primary:hover{background-color:#5cb1b1;border-color:#5cb1b1}.ec-inlineBtn--primary .badge{color:#5cb1b1;background-color:#fff}.ec-inlineBtn--primary .ec-icon img{width:1em;vertical-align:text-bottom}.ec-inlineBtn--action{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:#de5d50;border-color:#de5d50}.ec-inlineBtn--action.active.focus,.ec-inlineBtn--action.active:focus,.ec-inlineBtn--action.focus,.ec-inlineBtn--action:active.focus,.ec-inlineBtn--action:active:focus,.ec-inlineBtn--action:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-inlineBtn--action.focus,.ec-inlineBtn--action:focus,.ec-inlineBtn--action:hover{color:#525263;text-decoration:none}.ec-inlineBtn--action.active,.ec-inlineBtn--action:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-inlineBtn--action.disabled,.ec-inlineBtn--action[disabled],fieldset[disabled] .ec-inlineBtn--action{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-inlineBtn--action.focus,.ec-inlineBtn--action:focus{color:#fff;background-color:#d33828;border-color:#93271c}.ec-inlineBtn--action:hover{color:#fff;background-color:#d33828;border-color:#cb3526}.ec-inlineBtn--action.active,.ec-inlineBtn--action:active,.open>.ec-inlineBtn--action.dropdown-toggle{color:#fff;background-color:#d33828;border-color:#cb3526}.ec-inlineBtn--action.active.focus,.ec-inlineBtn--action.active:focus,.ec-inlineBtn--action.active:hover,.ec-inlineBtn--action:active.focus,.ec-inlineBtn--action:active:focus,.ec-inlineBtn--action:active:hover,.open>.ec-inlineBtn--action.dropdown-toggle.focus,.open>.ec-inlineBtn--action.dropdown-toggle:focus,.open>.ec-inlineBtn--action.dropdown-toggle:hover{color:#fff;background-color:#b53022;border-color:#93271c}.ec-inlineBtn--action.active,.ec-inlineBtn--action:active,.open>.ec-inlineBtn--action.dropdown-toggle{background-image:none}.ec-inlineBtn--action.disabled.focus,.ec-inlineBtn--action.disabled:focus,.ec-inlineBtn--action.disabled:hover,.ec-inlineBtn--action[disabled].focus,.ec-inlineBtn--action[disabled]:focus,.ec-inlineBtn--action[disabled]:hover,fieldset[disabled] .ec-inlineBtn--action.focus,fieldset[disabled] .ec-inlineBtn--action:focus,fieldset[disabled] .ec-inlineBtn--action:hover{background-color:#de5d50;border-color:#de5d50}.ec-inlineBtn--action .badge{color:#de5d50;background-color:#fff}.ec-inlineBtn--action .ec-icon img{width:1em;vertical-align:text-bottom}.ec-inlineBtn--cancel{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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}.ec-inlineBtn--cancel.active.focus,.ec-inlineBtn--cancel.active:focus,.ec-inlineBtn--cancel.focus,.ec-inlineBtn--cancel:active.focus,.ec-inlineBtn--cancel:active:focus,.ec-inlineBtn--cancel:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-inlineBtn--cancel.focus,.ec-inlineBtn--cancel:focus,.ec-inlineBtn--cancel:hover{color:#525263;text-decoration:none}.ec-inlineBtn--cancel.active,.ec-inlineBtn--cancel:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-inlineBtn--cancel.disabled,.ec-inlineBtn--cancel[disabled],fieldset[disabled] .ec-inlineBtn--cancel{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-inlineBtn--cancel.focus,.ec-inlineBtn--cancel:focus{color:#fff;background-color:#3b3b47;border-color:#18181d}.ec-inlineBtn--cancel:hover{color:#fff;background-color:#3b3b47;border-color:#363642}.ec-inlineBtn--cancel.active,.ec-inlineBtn--cancel:active,.open>.ec-inlineBtn--cancel.dropdown-toggle{color:#fff;background-color:#3b3b47;border-color:#363642}.ec-inlineBtn--cancel.active.focus,.ec-inlineBtn--cancel.active:focus,.ec-inlineBtn--cancel.active:hover,.ec-inlineBtn--cancel:active.focus,.ec-inlineBtn--cancel:active:focus,.ec-inlineBtn--cancel:active:hover,.open>.ec-inlineBtn--cancel.dropdown-toggle.focus,.open>.ec-inlineBtn--cancel.dropdown-toggle:focus,.open>.ec-inlineBtn--cancel.dropdown-toggle:hover{color:#fff;background-color:#2b2b34;border-color:#18181d}.ec-inlineBtn--cancel.active,.ec-inlineBtn--cancel:active,.open>.ec-inlineBtn--cancel.dropdown-toggle{background-image:none}.ec-inlineBtn--cancel.disabled.focus,.ec-inlineBtn--cancel.disabled:focus,.ec-inlineBtn--cancel.disabled:hover,.ec-inlineBtn--cancel[disabled].focus,.ec-inlineBtn--cancel[disabled]:focus,.ec-inlineBtn--cancel[disabled]:hover,fieldset[disabled] .ec-inlineBtn--cancel.focus,fieldset[disabled] .ec-inlineBtn--cancel:focus,fieldset[disabled] .ec-inlineBtn--cancel:hover{background-color:#525263;border-color:#525263}.ec-inlineBtn--cancel .badge{color:#525263;background-color:#fff}.ec-inlineBtn--cancel .ec-icon img{width:1em;vertical-align:text-bottom}.ec-blockBtn{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding:10px 16px;text-decoration:none;color:#525263;background-color:#f5f7f8;border-color:#ccc;display:block;width:100%;height:56px;line-height:56px;padding-top:0;padding-bottom:0}.ec-blockBtn.active.focus,.ec-blockBtn.active:focus,.ec-blockBtn.focus,.ec-blockBtn:active.focus,.ec-blockBtn:active:focus,.ec-blockBtn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-blockBtn.focus,.ec-blockBtn:focus,.ec-blockBtn:hover{color:#525263;text-decoration:none}.ec-blockBtn.active,.ec-blockBtn:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-blockBtn.disabled,.ec-blockBtn[disabled],fieldset[disabled] .ec-blockBtn{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-blockBtn.focus,.ec-blockBtn:focus{color:#525263;background-color:#d7dfe3;border-color:#8c8c8c}.ec-blockBtn:hover{color:#525263;background-color:#d7dfe3;border-color:#adadad}.ec-blockBtn.active,.ec-blockBtn:active,.open>.ec-blockBtn.dropdown-toggle{color:#525263;background-color:#d7dfe3;border-color:#adadad}.ec-blockBtn.active.focus,.ec-blockBtn.active:focus,.ec-blockBtn.active:hover,.ec-blockBtn:active.focus,.ec-blockBtn:active:focus,.ec-blockBtn:active:hover,.open>.ec-blockBtn.dropdown-toggle.focus,.open>.ec-blockBtn.dropdown-toggle:focus,.open>.ec-blockBtn.dropdown-toggle:hover{color:#525263;background-color:#c2ced4;border-color:#8c8c8c}.ec-blockBtn.active,.ec-blockBtn:active,.open>.ec-blockBtn.dropdown-toggle{background-image:none}.ec-blockBtn.disabled.focus,.ec-blockBtn.disabled:focus,.ec-blockBtn.disabled:hover,.ec-blockBtn[disabled].focus,.ec-blockBtn[disabled]:focus,.ec-blockBtn[disabled]:hover,fieldset[disabled] .ec-blockBtn.focus,fieldset[disabled] .ec-blockBtn:focus,fieldset[disabled] .ec-blockBtn:hover{background-color:#f5f7f8;border-color:#ccc}.ec-blockBtn .badge{color:#f5f7f8;background-color:#525263}.ec-blockBtn .ec-icon img{width:1em;vertical-align:text-bottom}.ec-blockBtn--primary{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:#5cb1b1;border-color:#5cb1b1;display:block;width:100%;height:56px;line-height:56px;padding-top:0;padding-bottom:0}.ec-blockBtn--primary.active.focus,.ec-blockBtn--primary.active:focus,.ec-blockBtn--primary.focus,.ec-blockBtn--primary:active.focus,.ec-blockBtn--primary:active:focus,.ec-blockBtn--primary:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-blockBtn--primary.focus,.ec-blockBtn--primary:focus,.ec-blockBtn--primary:hover{color:#525263;text-decoration:none}.ec-blockBtn--primary.active,.ec-blockBtn--primary:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-blockBtn--primary.disabled,.ec-blockBtn--primary[disabled],fieldset[disabled] .ec-blockBtn--primary{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-blockBtn--primary.focus,.ec-blockBtn--primary:focus{color:#fff;background-color:#479393;border-color:#2e6060}.ec-blockBtn--primary:hover{color:#fff;background-color:#479393;border-color:#438d8d}.ec-blockBtn--primary.active,.ec-blockBtn--primary:active,.open>.ec-blockBtn--primary.dropdown-toggle{color:#fff;background-color:#479393;border-color:#438d8d}.ec-blockBtn--primary.active.focus,.ec-blockBtn--primary.active:focus,.ec-blockBtn--primary.active:hover,.ec-blockBtn--primary:active.focus,.ec-blockBtn--primary:active:focus,.ec-blockBtn--primary:active:hover,.open>.ec-blockBtn--primary.dropdown-toggle.focus,.open>.ec-blockBtn--primary.dropdown-toggle:focus,.open>.ec-blockBtn--primary.dropdown-toggle:hover{color:#fff;background-color:#3b7b7b;border-color:#2e6060}.ec-blockBtn--primary.active,.ec-blockBtn--primary:active,.open>.ec-blockBtn--primary.dropdown-toggle{background-image:none}.ec-blockBtn--primary.disabled.focus,.ec-blockBtn--primary.disabled:focus,.ec-blockBtn--primary.disabled:hover,.ec-blockBtn--primary[disabled].focus,.ec-blockBtn--primary[disabled]:focus,.ec-blockBtn--primary[disabled]:hover,fieldset[disabled] .ec-blockBtn--primary.focus,fieldset[disabled] .ec-blockBtn--primary:focus,fieldset[disabled] .ec-blockBtn--primary:hover{background-color:#5cb1b1;border-color:#5cb1b1}.ec-blockBtn--primary .badge{color:#5cb1b1;background-color:#fff}.ec-blockBtn--primary .ec-icon img{width:1em;vertical-align:text-bottom}.ec-blockBtn--action{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:#de5d50;border-color:#de5d50;display:block;width:100%;height:56px;line-height:56px;padding-top:0;padding-bottom:0}.ec-blockBtn--action.active.focus,.ec-blockBtn--action.active:focus,.ec-blockBtn--action.focus,.ec-blockBtn--action:active.focus,.ec-blockBtn--action:active:focus,.ec-blockBtn--action:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-blockBtn--action.focus,.ec-blockBtn--action:focus,.ec-blockBtn--action:hover{color:#525263;text-decoration:none}.ec-blockBtn--action.active,.ec-blockBtn--action:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-blockBtn--action.disabled,.ec-blockBtn--action[disabled],fieldset[disabled] .ec-blockBtn--action{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-blockBtn--action.focus,.ec-blockBtn--action:focus{color:#fff;background-color:#d33828;border-color:#93271c}.ec-blockBtn--action:hover{color:#fff;background-color:#d33828;border-color:#cb3526}.ec-blockBtn--action.active,.ec-blockBtn--action:active,.open>.ec-blockBtn--action.dropdown-toggle{color:#fff;background-color:#d33828;border-color:#cb3526}.ec-blockBtn--action.active.focus,.ec-blockBtn--action.active:focus,.ec-blockBtn--action.active:hover,.ec-blockBtn--action:active.focus,.ec-blockBtn--action:active:focus,.ec-blockBtn--action:active:hover,.open>.ec-blockBtn--action.dropdown-toggle.focus,.open>.ec-blockBtn--action.dropdown-toggle:focus,.open>.ec-blockBtn--action.dropdown-toggle:hover{color:#fff;background-color:#b53022;border-color:#93271c}.ec-blockBtn--action.active,.ec-blockBtn--action:active,.open>.ec-blockBtn--action.dropdown-toggle{background-image:none}.ec-blockBtn--action.disabled.focus,.ec-blockBtn--action.disabled:focus,.ec-blockBtn--action.disabled:hover,.ec-blockBtn--action[disabled].focus,.ec-blockBtn--action[disabled]:focus,.ec-blockBtn--action[disabled]:hover,fieldset[disabled] .ec-blockBtn--action.focus,fieldset[disabled] .ec-blockBtn--action:focus,fieldset[disabled] .ec-blockBtn--action:hover{background-color:#de5d50;border-color:#de5d50}.ec-blockBtn--action .badge{color:#de5d50;background-color:#fff}.ec-blockBtn--action .ec-icon img{width:1em;vertical-align:text-bottom}.ec-blockBtn--cancel{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:100%;height:56px;line-height:56px;padding-top:0;padding-bottom:0}.ec-blockBtn--cancel.active.focus,.ec-blockBtn--cancel.active:focus,.ec-blockBtn--cancel.focus,.ec-blockBtn--cancel:active.focus,.ec-blockBtn--cancel:active:focus,.ec-blockBtn--cancel:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-blockBtn--cancel.focus,.ec-blockBtn--cancel:focus,.ec-blockBtn--cancel:hover{color:#525263;text-decoration:none}.ec-blockBtn--cancel.active,.ec-blockBtn--cancel:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-blockBtn--cancel.disabled,.ec-blockBtn--cancel[disabled],fieldset[disabled] .ec-blockBtn--cancel{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-blockBtn--cancel.focus,.ec-blockBtn--cancel:focus{color:#fff;background-color:#3b3b47;border-color:#18181d}.ec-blockBtn--cancel:hover{color:#fff;background-color:#3b3b47;border-color:#363642}.ec-blockBtn--cancel.active,.ec-blockBtn--cancel:active,.open>.ec-blockBtn--cancel.dropdown-toggle{color:#fff;background-color:#3b3b47;border-color:#363642}.ec-blockBtn--cancel.active.focus,.ec-blockBtn--cancel.active:focus,.ec-blockBtn--cancel.active:hover,.ec-blockBtn--cancel:active.focus,.ec-blockBtn--cancel:active:focus,.ec-blockBtn--cancel:active:hover,.open>.ec-blockBtn--cancel.dropdown-toggle.focus,.open>.ec-blockBtn--cancel.dropdown-toggle:focus,.open>.ec-blockBtn--cancel.dropdown-toggle:hover{color:#fff;background-color:#2b2b34;border-color:#18181d}.ec-blockBtn--cancel.active,.ec-blockBtn--cancel:active,.open>.ec-blockBtn--cancel.dropdown-toggle{background-image:none}.ec-blockBtn--cancel.disabled.focus,.ec-blockBtn--cancel.disabled:focus,.ec-blockBtn--cancel.disabled:hover,.ec-blockBtn--cancel[disabled].focus,.ec-blockBtn--cancel[disabled]:focus,.ec-blockBtn--cancel[disabled]:hover,fieldset[disabled] .ec-blockBtn--cancel.focus,fieldset[disabled] .ec-blockBtn--cancel:focus,fieldset[disabled] .ec-blockBtn--cancel:hover{background-color:#525263;border-color:#525263}.ec-blockBtn--cancel .badge{color:#525263;background-color:#fff}.ec-blockBtn--cancel .ec-icon img{width:1em;vertical-align:text-bottom}.ec-closeBtn{cursor:pointer}.ec-closeBtn .ec-icon img{display:inline-block;margin-right:5px;width:1em;height:1em;position:relative;top:-1px;vertical-align:middle}.ec-closeBtn--circle{display:block;border:0 none;padding:0;margin:0;text-shadow:none;box-shadow:none;border-radius:50%;background:#b8bec4;cursor:pointer;width:40px;min-width:40px;max-width:40px;height:40px;line-height:40px;vertical-align:middle;position:relative;text-align:center}.ec-closeBtn--circle .ec-icon img{display:block;margin-top:-.5em;margin-left:-.5em;width:1em;height:1em;position:absolute;top:50%;left:50%}.ec-blockTopBtn{display:none;position:fixed;width:120px;height:40px;right:0;bottom:10px;cursor:pointer;color:#fff;text-align:center;line-height:40px;opacity:.8;background-color:#9da3a9}.ec-birth input[type=search],.ec-halfInput input[type=search],.ec-input input[type=search],.ec-numberInput input[type=search],.ec-select input[type=search],.ec-telInput input[type=search],.ec-zipInput input[type=search]{box-sizing:border-box}.ec-birth input[type=checkbox],.ec-birth input[type=radio],.ec-halfInput input[type=checkbox],.ec-halfInput input[type=radio],.ec-input input[type=checkbox],.ec-input input[type=radio],.ec-numberInput input[type=checkbox],.ec-numberInput input[type=radio],.ec-select input[type=checkbox],.ec-select input[type=radio],.ec-telInput input[type=checkbox],.ec-telInput input[type=radio],.ec-zipInput input[type=checkbox],.ec-zipInput input[type=radio]{margin:4px 0 0;line-height:normal}.ec-birth input[type=file],.ec-halfInput input[type=file],.ec-input input[type=file],.ec-numberInput input[type=file],.ec-select input[type=file],.ec-telInput input[type=file],.ec-zipInput input[type=file]{display:block}.ec-birth input[type=range],.ec-halfInput input[type=range],.ec-input input[type=range],.ec-numberInput input[type=range],.ec-select input[type=range],.ec-telInput input[type=range],.ec-zipInput input[type=range]{display:block;width:100%}.ec-birth select[multiple],.ec-birth select[size],.ec-halfInput select[multiple],.ec-halfInput select[size],.ec-input select[multiple],.ec-input select[size],.ec-numberInput select[multiple],.ec-numberInput select[size],.ec-select select[multiple],.ec-select select[size],.ec-telInput select[multiple],.ec-telInput select[size],.ec-zipInput select[multiple],.ec-zipInput select[size]{height:auto}.ec-birth input[type=checkbox]:focus,.ec-birth input[type=file]:focus,.ec-birth input[type=radio]:focus,.ec-halfInput input[type=checkbox]:focus,.ec-halfInput input[type=file]:focus,.ec-halfInput input[type=radio]:focus,.ec-input input[type=checkbox]:focus,.ec-input input[type=file]:focus,.ec-input input[type=radio]:focus,.ec-numberInput input[type=checkbox]:focus,.ec-numberInput input[type=file]:focus,.ec-numberInput input[type=radio]:focus,.ec-select input[type=checkbox]:focus,.ec-select input[type=file]:focus,.ec-select input[type=radio]:focus,.ec-telInput input[type=checkbox]:focus,.ec-telInput input[type=file]:focus,.ec-telInput input[type=radio]:focus,.ec-zipInput input[type=checkbox]:focus,.ec-zipInput input[type=file]:focus,.ec-zipInput input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-birth input,.ec-halfInput input,.ec-input input,.ec-numberInput input,.ec-select input,.ec-telInput input,.ec-zipInput input{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-appearance:none;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;border-radius:3px}.ec-birth input:focus,.ec-halfInput input:focus,.ec-input input:focus,.ec-numberInput input:focus,.ec-select input:focus,.ec-telInput input:focus,.ec-zipInput input:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.ec-birth input::-moz-placeholder,.ec-halfInput input::-moz-placeholder,.ec-input input::-moz-placeholder,.ec-numberInput input::-moz-placeholder,.ec-select input::-moz-placeholder,.ec-telInput input::-moz-placeholder,.ec-zipInput input::-moz-placeholder{color:#999;opacity:1}.ec-birth input:-ms-input-placeholder,.ec-halfInput input:-ms-input-placeholder,.ec-input input:-ms-input-placeholder,.ec-numberInput input:-ms-input-placeholder,.ec-select input:-ms-input-placeholder,.ec-telInput input:-ms-input-placeholder,.ec-zipInput input:-ms-input-placeholder{color:#999}.ec-birth input::-webkit-input-placeholder,.ec-halfInput input::-webkit-input-placeholder,.ec-input input::-webkit-input-placeholder,.ec-numberInput input::-webkit-input-placeholder,.ec-select input::-webkit-input-placeholder,.ec-telInput input::-webkit-input-placeholder,.ec-zipInput input::-webkit-input-placeholder{color:#999}.ec-birth input::-ms-expand,.ec-halfInput input::-ms-expand,.ec-input input::-ms-expand,.ec-numberInput input::-ms-expand,.ec-select input::-ms-expand,.ec-telInput input::-ms-expand,.ec-zipInput input::-ms-expand{border:0;background-color:transparent}.ec-birth input[disabled],.ec-birth input[readonly],.ec-halfInput input[disabled],.ec-halfInput input[readonly],.ec-input input[disabled],.ec-input input[readonly],.ec-numberInput input[disabled],.ec-numberInput input[readonly],.ec-select input[disabled],.ec-select input[readonly],.ec-telInput input[disabled],.ec-telInput input[readonly],.ec-zipInput input[disabled],.ec-zipInput input[readonly],fieldset[disabled] .ec-birth input,fieldset[disabled] .ec-halfInput input,fieldset[disabled] .ec-input input,fieldset[disabled] .ec-numberInput input,fieldset[disabled] .ec-select input,fieldset[disabled] .ec-telInput input,fieldset[disabled] .ec-zipInput input{background-color:#eee;opacity:1}.ec-birth input[disabled],.ec-halfInput input[disabled],.ec-input input[disabled],.ec-numberInput input[disabled],.ec-select input[disabled],.ec-telInput input[disabled],.ec-zipInput input[disabled],fieldset[disabled] .ec-birth input,fieldset[disabled] .ec-halfInput input,fieldset[disabled] .ec-input input,fieldset[disabled] .ec-numberInput input,fieldset[disabled] .ec-select input,fieldset[disabled] .ec-telInput input,fieldset[disabled] .ec-zipInput input{cursor:not-allowed}.ec-birth select,.ec-halfInput select,.ec-input select,.ec-numberInput select,.ec-select select,.ec-telInput select,.ec-zipInput select{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-appearance:none;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;border-radius:3px}.ec-birth select:focus,.ec-halfInput select:focus,.ec-input select:focus,.ec-numberInput select:focus,.ec-select select:focus,.ec-telInput select:focus,.ec-zipInput select:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.ec-birth select::-moz-placeholder,.ec-halfInput select::-moz-placeholder,.ec-input select::-moz-placeholder,.ec-numberInput select::-moz-placeholder,.ec-select select::-moz-placeholder,.ec-telInput select::-moz-placeholder,.ec-zipInput select::-moz-placeholder{color:#999;opacity:1}.ec-birth select:-ms-input-placeholder,.ec-halfInput select:-ms-input-placeholder,.ec-input select:-ms-input-placeholder,.ec-numberInput select:-ms-input-placeholder,.ec-select select:-ms-input-placeholder,.ec-telInput select:-ms-input-placeholder,.ec-zipInput select:-ms-input-placeholder{color:#999}.ec-birth select::-webkit-input-placeholder,.ec-halfInput select::-webkit-input-placeholder,.ec-input select::-webkit-input-placeholder,.ec-numberInput select::-webkit-input-placeholder,.ec-select select::-webkit-input-placeholder,.ec-telInput select::-webkit-input-placeholder,.ec-zipInput select::-webkit-input-placeholder{color:#999}.ec-birth select::-ms-expand,.ec-halfInput select::-ms-expand,.ec-input select::-ms-expand,.ec-numberInput select::-ms-expand,.ec-select select::-ms-expand,.ec-telInput select::-ms-expand,.ec-zipInput select::-ms-expand{border:0;background-color:transparent}.ec-birth select[disabled],.ec-birth select[readonly],.ec-halfInput select[disabled],.ec-halfInput select[readonly],.ec-input select[disabled],.ec-input select[readonly],.ec-numberInput select[disabled],.ec-numberInput select[readonly],.ec-select select[disabled],.ec-select select[readonly],.ec-telInput select[disabled],.ec-telInput select[readonly],.ec-zipInput select[disabled],.ec-zipInput select[readonly],fieldset[disabled] .ec-birth select,fieldset[disabled] .ec-halfInput select,fieldset[disabled] .ec-input select,fieldset[disabled] .ec-numberInput select,fieldset[disabled] .ec-select select,fieldset[disabled] .ec-telInput select,fieldset[disabled] .ec-zipInput select{background-color:#eee;opacity:1}.ec-birth select[disabled],.ec-halfInput select[disabled],.ec-input select[disabled],.ec-numberInput select[disabled],.ec-select select[disabled],.ec-telInput select[disabled],.ec-zipInput select[disabled],fieldset[disabled] .ec-birth select,fieldset[disabled] .ec-halfInput select,fieldset[disabled] .ec-input select,fieldset[disabled] .ec-numberInput select,fieldset[disabled] .ec-select select,fieldset[disabled] .ec-telInput select,fieldset[disabled] .ec-zipInput select{cursor:not-allowed}.ec-birth textarea,.ec-halfInput textarea,.ec-input textarea,.ec-numberInput textarea,.ec-select textarea,.ec-telInput textarea,.ec-zipInput textarea{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-appearance:none;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;border-radius:3px}.ec-birth textarea:focus,.ec-halfInput textarea:focus,.ec-input textarea:focus,.ec-numberInput textarea:focus,.ec-select textarea:focus,.ec-telInput textarea:focus,.ec-zipInput textarea:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.ec-birth textarea::-moz-placeholder,.ec-halfInput textarea::-moz-placeholder,.ec-input textarea::-moz-placeholder,.ec-numberInput textarea::-moz-placeholder,.ec-select textarea::-moz-placeholder,.ec-telInput textarea::-moz-placeholder,.ec-zipInput textarea::-moz-placeholder{color:#999;opacity:1}.ec-birth textarea:-ms-input-placeholder,.ec-halfInput textarea:-ms-input-placeholder,.ec-input textarea:-ms-input-placeholder,.ec-numberInput textarea:-ms-input-placeholder,.ec-select textarea:-ms-input-placeholder,.ec-telInput textarea:-ms-input-placeholder,.ec-zipInput textarea:-ms-input-placeholder{color:#999}.ec-birth textarea::-webkit-input-placeholder,.ec-halfInput textarea::-webkit-input-placeholder,.ec-input textarea::-webkit-input-placeholder,.ec-numberInput textarea::-webkit-input-placeholder,.ec-select textarea::-webkit-input-placeholder,.ec-telInput textarea::-webkit-input-placeholder,.ec-zipInput textarea::-webkit-input-placeholder{color:#999}.ec-birth textarea::-ms-expand,.ec-halfInput textarea::-ms-expand,.ec-input textarea::-ms-expand,.ec-numberInput textarea::-ms-expand,.ec-select textarea::-ms-expand,.ec-telInput textarea::-ms-expand,.ec-zipInput textarea::-ms-expand{border:0;background-color:transparent}.ec-birth textarea[disabled],.ec-birth textarea[readonly],.ec-halfInput textarea[disabled],.ec-halfInput textarea[readonly],.ec-input textarea[disabled],.ec-input textarea[readonly],.ec-numberInput textarea[disabled],.ec-numberInput textarea[readonly],.ec-select textarea[disabled],.ec-select textarea[readonly],.ec-telInput textarea[disabled],.ec-telInput textarea[readonly],.ec-zipInput textarea[disabled],.ec-zipInput textarea[readonly],fieldset[disabled] .ec-birth textarea,fieldset[disabled] .ec-halfInput textarea,fieldset[disabled] .ec-input textarea,fieldset[disabled] .ec-numberInput textarea,fieldset[disabled] .ec-select textarea,fieldset[disabled] .ec-telInput textarea,fieldset[disabled] .ec-zipInput textarea{background-color:#eee;opacity:1}.ec-birth textarea[disabled],.ec-halfInput textarea[disabled],.ec-input textarea[disabled],.ec-numberInput textarea[disabled],.ec-select textarea[disabled],.ec-telInput textarea[disabled],.ec-zipInput textarea[disabled],fieldset[disabled] .ec-birth textarea,fieldset[disabled] .ec-halfInput textarea,fieldset[disabled] .ec-input textarea,fieldset[disabled] .ec-numberInput textarea,fieldset[disabled] .ec-select textarea,fieldset[disabled] .ec-telInput textarea,fieldset[disabled] .ec-zipInput textarea{cursor:not-allowed}.ec-birth input:focus,.ec-birth textarea:focus,.ec-halfInput input:focus,.ec-halfInput textarea:focus,.ec-input input:focus,.ec-input textarea:focus,.ec-numberInput input:focus,.ec-numberInput textarea:focus,.ec-select input:focus,.ec-select textarea:focus,.ec-telInput input:focus,.ec-telInput textarea:focus,.ec-zipInput input:focus,.ec-zipInput textarea:focus{box-shadow:none;border-color:#3c8dbc}.ec-birth input,.ec-halfInput input,.ec-input input,.ec-numberInput input,.ec-select input,.ec-telInput input,.ec-zipInput input{height:40px;margin-bottom:10px}.ec-birth textarea,.ec-halfInput textarea,.ec-input textarea,.ec-numberInput textarea,.ec-select textarea,.ec-telInput textarea,.ec-zipInput textarea{height:auto;min-height:100px}.ec-birth p,.ec-halfInput p,.ec-input p,.ec-numberInput p,.ec-select p,.ec-telInput p,.ec-zipInput p{line-height:1.4}.ec-birth .ec-errorMessage,.ec-halfInput .ec-errorMessage,.ec-input .ec-errorMessage,.ec-numberInput .ec-errorMessage,.ec-select .ec-errorMessage,.ec-telInput .ec-errorMessage,.ec-zipInput .ec-errorMessage{margin-bottom:25px;font-size:12px;font-weight:700;color:#de5d50}.error.ec-birth input,.error.ec-birth select,.error.ec-halfInput input,.error.ec-halfInput select,.error.ec-input input,.error.ec-input select,.error.ec-numberInput input,.error.ec-numberInput select,.error.ec-select input,.error.ec-select select,.error.ec-telInput input,.error.ec-telInput select,.error.ec-zipInput input,.error.ec-zipInput select{margin-bottom:5px;border-color:#cf3f34;background:#fdf1f0}.ec-checkbox .ec-errorMessage{margin-bottom:25px;font-size:12px;font-weight:700;color:#de5d50}.error.ec-checkbox input,.error.ec-checkbox label{border-color:#cf3f34;background:#fdf1f0}.ec-halfInput input[type=text]{display:inline-block;width:47%;margin-left:2%}.ec-halfInput input[type=text]:first-child{margin-left:0}.ec-numberInput input[type=number]{display:inline-block;width:auto;max-width:100px;text-align:right}.ec-zipInput{display:inline-block}.ec-zipInput input{display:inline-block;text-align:left;width:auto;max-width:8em;font-size:16px}.ec-zipInput span{display:inline-block;padding:0 5px 0 3px;margin-left:5px}.ec-zipInputHelp{display:inline-block;margin-left:10px;margin-bottom:16px;vertical-align:baseline;line-height:0}.ec-zipInputHelp .ec-zipInputHelp__icon{display:inline-block;margin-top:-10px;width:20px;height:20px;background:#525263;border-radius:50%;font-size:13px;position:relative;top:-6px}.ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img{width:1em;height:1em;position:relative;left:3px;top:3px}.ec-zipInputHelp span{margin-left:8px;display:inline-block;color:#0092c4;vertical-align:3px}.ec-zipAuto{margin-bottom:16px}.ec-zipAuto .ec-inlineBtn{font-weight:400}.ec-telInput input{max-width:10em;text-align:left}.ec-birth input[type=search],.ec-halfInput input[type=search],.ec-input input[type=search],.ec-numberInput input[type=search],.ec-select input[type=search],.ec-telInput input[type=search],.ec-zipInput input[type=search]{box-sizing:border-box}.ec-birth input[type=checkbox],.ec-birth input[type=radio],.ec-halfInput input[type=checkbox],.ec-halfInput input[type=radio],.ec-input input[type=checkbox],.ec-input input[type=radio],.ec-numberInput input[type=checkbox],.ec-numberInput input[type=radio],.ec-select input[type=checkbox],.ec-select input[type=radio],.ec-telInput input[type=checkbox],.ec-telInput input[type=radio],.ec-zipInput input[type=checkbox],.ec-zipInput input[type=radio]{margin:4px 0 0;line-height:normal}.ec-birth input[type=file],.ec-halfInput input[type=file],.ec-input input[type=file],.ec-numberInput input[type=file],.ec-select input[type=file],.ec-telInput input[type=file],.ec-zipInput input[type=file]{display:block}.ec-birth input[type=range],.ec-halfInput input[type=range],.ec-input input[type=range],.ec-numberInput input[type=range],.ec-select input[type=range],.ec-telInput input[type=range],.ec-zipInput input[type=range]{display:block;width:100%}.ec-birth select[multiple],.ec-birth select[size],.ec-halfInput select[multiple],.ec-halfInput select[size],.ec-input select[multiple],.ec-input select[size],.ec-numberInput select[multiple],.ec-numberInput select[size],.ec-select select[multiple],.ec-select select[size],.ec-telInput select[multiple],.ec-telInput select[size],.ec-zipInput select[multiple],.ec-zipInput select[size]{height:auto}.ec-birth input[type=checkbox]:focus,.ec-birth input[type=file]:focus,.ec-birth input[type=radio]:focus,.ec-halfInput input[type=checkbox]:focus,.ec-halfInput input[type=file]:focus,.ec-halfInput input[type=radio]:focus,.ec-input input[type=checkbox]:focus,.ec-input input[type=file]:focus,.ec-input input[type=radio]:focus,.ec-numberInput input[type=checkbox]:focus,.ec-numberInput input[type=file]:focus,.ec-numberInput input[type=radio]:focus,.ec-select input[type=checkbox]:focus,.ec-select input[type=file]:focus,.ec-select input[type=radio]:focus,.ec-telInput input[type=checkbox]:focus,.ec-telInput input[type=file]:focus,.ec-telInput input[type=radio]:focus,.ec-zipInput input[type=checkbox]:focus,.ec-zipInput input[type=file]:focus,.ec-zipInput input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-birth input,.ec-halfInput input,.ec-input input,.ec-numberInput input,.ec-select input,.ec-telInput input,.ec-zipInput input{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-appearance:none;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;border-radius:3px}.ec-birth input:focus,.ec-halfInput input:focus,.ec-input input:focus,.ec-numberInput input:focus,.ec-select input:focus,.ec-telInput input:focus,.ec-zipInput input:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.ec-birth input::-moz-placeholder,.ec-halfInput input::-moz-placeholder,.ec-input input::-moz-placeholder,.ec-numberInput input::-moz-placeholder,.ec-select input::-moz-placeholder,.ec-telInput input::-moz-placeholder,.ec-zipInput input::-moz-placeholder{color:#999;opacity:1}.ec-birth input:-ms-input-placeholder,.ec-halfInput input:-ms-input-placeholder,.ec-input input:-ms-input-placeholder,.ec-numberInput input:-ms-input-placeholder,.ec-select input:-ms-input-placeholder,.ec-telInput input:-ms-input-placeholder,.ec-zipInput input:-ms-input-placeholder{color:#999}.ec-birth input::-webkit-input-placeholder,.ec-halfInput input::-webkit-input-placeholder,.ec-input input::-webkit-input-placeholder,.ec-numberInput input::-webkit-input-placeholder,.ec-select input::-webkit-input-placeholder,.ec-telInput input::-webkit-input-placeholder,.ec-zipInput input::-webkit-input-placeholder{color:#999}.ec-birth input::-ms-expand,.ec-halfInput input::-ms-expand,.ec-input input::-ms-expand,.ec-numberInput input::-ms-expand,.ec-select input::-ms-expand,.ec-telInput input::-ms-expand,.ec-zipInput input::-ms-expand{border:0;background-color:transparent}.ec-birth input[disabled],.ec-birth input[readonly],.ec-halfInput input[disabled],.ec-halfInput input[readonly],.ec-input input[disabled],.ec-input input[readonly],.ec-numberInput input[disabled],.ec-numberInput input[readonly],.ec-select input[disabled],.ec-select input[readonly],.ec-telInput input[disabled],.ec-telInput input[readonly],.ec-zipInput input[disabled],.ec-zipInput input[readonly],fieldset[disabled] .ec-birth input,fieldset[disabled] .ec-halfInput input,fieldset[disabled] .ec-input input,fieldset[disabled] .ec-numberInput input,fieldset[disabled] .ec-select input,fieldset[disabled] .ec-telInput input,fieldset[disabled] .ec-zipInput input{background-color:#eee;opacity:1}.ec-birth input[disabled],.ec-halfInput input[disabled],.ec-input input[disabled],.ec-numberInput input[disabled],.ec-select input[disabled],.ec-telInput input[disabled],.ec-zipInput input[disabled],fieldset[disabled] .ec-birth input,fieldset[disabled] .ec-halfInput input,fieldset[disabled] .ec-input input,fieldset[disabled] .ec-numberInput input,fieldset[disabled] .ec-select input,fieldset[disabled] .ec-telInput input,fieldset[disabled] .ec-zipInput input{cursor:not-allowed}.ec-birth select,.ec-halfInput select,.ec-input select,.ec-numberInput select,.ec-select select,.ec-telInput select,.ec-zipInput select{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-appearance:none;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;border-radius:3px}.ec-birth select:focus,.ec-halfInput select:focus,.ec-input select:focus,.ec-numberInput select:focus,.ec-select select:focus,.ec-telInput select:focus,.ec-zipInput select:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.ec-birth select::-moz-placeholder,.ec-halfInput select::-moz-placeholder,.ec-input select::-moz-placeholder,.ec-numberInput select::-moz-placeholder,.ec-select select::-moz-placeholder,.ec-telInput select::-moz-placeholder,.ec-zipInput select::-moz-placeholder{color:#999;opacity:1}.ec-birth select:-ms-input-placeholder,.ec-halfInput select:-ms-input-placeholder,.ec-input select:-ms-input-placeholder,.ec-numberInput select:-ms-input-placeholder,.ec-select select:-ms-input-placeholder,.ec-telInput select:-ms-input-placeholder,.ec-zipInput select:-ms-input-placeholder{color:#999}.ec-birth select::-webkit-input-placeholder,.ec-halfInput select::-webkit-input-placeholder,.ec-input select::-webkit-input-placeholder,.ec-numberInput select::-webkit-input-placeholder,.ec-select select::-webkit-input-placeholder,.ec-telInput select::-webkit-input-placeholder,.ec-zipInput select::-webkit-input-placeholder{color:#999}.ec-birth select::-ms-expand,.ec-halfInput select::-ms-expand,.ec-input select::-ms-expand,.ec-numberInput select::-ms-expand,.ec-select select::-ms-expand,.ec-telInput select::-ms-expand,.ec-zipInput select::-ms-expand{border:0;background-color:transparent}.ec-birth select[disabled],.ec-birth select[readonly],.ec-halfInput select[disabled],.ec-halfInput select[readonly],.ec-input select[disabled],.ec-input select[readonly],.ec-numberInput select[disabled],.ec-numberInput select[readonly],.ec-select select[disabled],.ec-select select[readonly],.ec-telInput select[disabled],.ec-telInput select[readonly],.ec-zipInput select[disabled],.ec-zipInput select[readonly],fieldset[disabled] .ec-birth select,fieldset[disabled] .ec-halfInput select,fieldset[disabled] .ec-input select,fieldset[disabled] .ec-numberInput select,fieldset[disabled] .ec-select select,fieldset[disabled] .ec-telInput select,fieldset[disabled] .ec-zipInput select{background-color:#eee;opacity:1}.ec-birth select[disabled],.ec-halfInput select[disabled],.ec-input select[disabled],.ec-numberInput select[disabled],.ec-select select[disabled],.ec-telInput select[disabled],.ec-zipInput select[disabled],fieldset[disabled] .ec-birth select,fieldset[disabled] .ec-halfInput select,fieldset[disabled] .ec-input select,fieldset[disabled] .ec-numberInput select,fieldset[disabled] .ec-select select,fieldset[disabled] .ec-telInput select,fieldset[disabled] .ec-zipInput select{cursor:not-allowed}.ec-birth textarea,.ec-halfInput textarea,.ec-input textarea,.ec-numberInput textarea,.ec-select textarea,.ec-telInput textarea,.ec-zipInput textarea{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-appearance:none;box-shadow:none;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;border-radius:3px}.ec-birth textarea:focus,.ec-halfInput textarea:focus,.ec-input textarea:focus,.ec-numberInput textarea:focus,.ec-select textarea:focus,.ec-telInput textarea:focus,.ec-zipInput textarea:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.ec-birth textarea::-moz-placeholder,.ec-halfInput textarea::-moz-placeholder,.ec-input textarea::-moz-placeholder,.ec-numberInput textarea::-moz-placeholder,.ec-select textarea::-moz-placeholder,.ec-telInput textarea::-moz-placeholder,.ec-zipInput textarea::-moz-placeholder{color:#999;opacity:1}.ec-birth textarea:-ms-input-placeholder,.ec-halfInput textarea:-ms-input-placeholder,.ec-input textarea:-ms-input-placeholder,.ec-numberInput textarea:-ms-input-placeholder,.ec-select textarea:-ms-input-placeholder,.ec-telInput textarea:-ms-input-placeholder,.ec-zipInput textarea:-ms-input-placeholder{color:#999}.ec-birth textarea::-webkit-input-placeholder,.ec-halfInput textarea::-webkit-input-placeholder,.ec-input textarea::-webkit-input-placeholder,.ec-numberInput textarea::-webkit-input-placeholder,.ec-select textarea::-webkit-input-placeholder,.ec-telInput textarea::-webkit-input-placeholder,.ec-zipInput textarea::-webkit-input-placeholder{color:#999}.ec-birth textarea::-ms-expand,.ec-halfInput textarea::-ms-expand,.ec-input textarea::-ms-expand,.ec-numberInput textarea::-ms-expand,.ec-select textarea::-ms-expand,.ec-telInput textarea::-ms-expand,.ec-zipInput textarea::-ms-expand{border:0;background-color:transparent}.ec-birth textarea[disabled],.ec-birth textarea[readonly],.ec-halfInput textarea[disabled],.ec-halfInput textarea[readonly],.ec-input textarea[disabled],.ec-input textarea[readonly],.ec-numberInput textarea[disabled],.ec-numberInput textarea[readonly],.ec-select textarea[disabled],.ec-select textarea[readonly],.ec-telInput textarea[disabled],.ec-telInput textarea[readonly],.ec-zipInput textarea[disabled],.ec-zipInput textarea[readonly],fieldset[disabled] .ec-birth textarea,fieldset[disabled] .ec-halfInput textarea,fieldset[disabled] .ec-input textarea,fieldset[disabled] .ec-numberInput textarea,fieldset[disabled] .ec-select textarea,fieldset[disabled] .ec-telInput textarea,fieldset[disabled] .ec-zipInput textarea{background-color:#eee;opacity:1}.ec-birth textarea[disabled],.ec-halfInput textarea[disabled],.ec-input textarea[disabled],.ec-numberInput textarea[disabled],.ec-select textarea[disabled],.ec-telInput textarea[disabled],.ec-zipInput textarea[disabled],fieldset[disabled] .ec-birth textarea,fieldset[disabled] .ec-halfInput textarea,fieldset[disabled] .ec-input textarea,fieldset[disabled] .ec-numberInput textarea,fieldset[disabled] .ec-select textarea,fieldset[disabled] .ec-telInput textarea,fieldset[disabled] .ec-zipInput textarea{cursor:not-allowed}.ec-birth input:focus,.ec-birth textarea:focus,.ec-halfInput input:focus,.ec-halfInput textarea:focus,.ec-input input:focus,.ec-input textarea:focus,.ec-numberInput input:focus,.ec-numberInput textarea:focus,.ec-select input:focus,.ec-select textarea:focus,.ec-telInput input:focus,.ec-telInput textarea:focus,.ec-zipInput input:focus,.ec-zipInput textarea:focus{box-shadow:none;border-color:#3c8dbc}.ec-birth input,.ec-halfInput input,.ec-input input,.ec-numberInput input,.ec-select input,.ec-telInput input,.ec-zipInput input{height:40px;margin-bottom:10px}.ec-birth textarea,.ec-halfInput textarea,.ec-input textarea,.ec-numberInput textarea,.ec-select textarea,.ec-telInput textarea,.ec-zipInput textarea{height:auto;min-height:100px}.ec-birth p,.ec-halfInput p,.ec-input p,.ec-numberInput p,.ec-select p,.ec-telInput p,.ec-zipInput p{line-height:1.4}.ec-birth .ec-errorMessage,.ec-halfInput .ec-errorMessage,.ec-input .ec-errorMessage,.ec-numberInput .ec-errorMessage,.ec-select .ec-errorMessage,.ec-telInput .ec-errorMessage,.ec-zipInput .ec-errorMessage{margin-bottom:25px;font-size:12px;font-weight:700;color:#de5d50}.error.ec-birth input,.error.ec-birth select,.error.ec-halfInput input,.error.ec-halfInput select,.error.ec-input input,.error.ec-input select,.error.ec-numberInput input,.error.ec-numberInput select,.error.ec-select input,.error.ec-select select,.error.ec-telInput input,.error.ec-telInput select,.error.ec-zipInput input,.error.ec-zipInput select{margin-bottom:5px;border-color:#cf3f34;background:#fdf1f0}.ec-checkbox .ec-errorMessage{margin-bottom:25px;font-size:12px;font-weight:700;color:#de5d50}.error.ec-checkbox input,.error.ec-checkbox label{border-color:#cf3f34;background:#fdf1f0}.ec-halfInput input[type=text]{display:inline-block;width:47%;margin-left:2%}.ec-halfInput input[type=text]:first-child{margin-left:0}.ec-numberInput input[type=number]{display:inline-block;width:auto;max-width:100px;text-align:right}.ec-zipInput{display:inline-block}.ec-zipInput input{display:inline-block;text-align:left;width:auto;max-width:8em;font-size:16px}.ec-zipInput span{display:inline-block;padding:0 5px 0 3px;margin-left:5px}.ec-zipInputHelp{display:inline-block;margin-left:10px;margin-bottom:16px;vertical-align:baseline;line-height:0}.ec-zipInputHelp .ec-zipInputHelp__icon{display:inline-block;margin-top:-10px;width:20px;height:20px;background:#525263;border-radius:50%;font-size:13px;position:relative;top:-6px}.ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img{width:1em;height:1em;position:relative;left:3px;top:3px}.ec-zipInputHelp span{margin-left:8px;display:inline-block;color:#0092c4;vertical-align:3px}.ec-zipAuto{margin-bottom:16px}.ec-zipAuto .ec-inlineBtn{font-weight:400}.ec-telInput input{max-width:10em;text-align:left}.ec-radio label{margin-right:20px}.ec-radio input{margin-right:10px;margin-bottom:10px}.ec-radio span{font-weight:400}.ec-blockRadio label{display:block}.ec-blockRadio span{padding-left:10px;font-weight:400}.ec-selects{margin-bottom:20px;border-bottom:1px dotted #ccc}.ec-select{margin-bottom:16px}.ec-select select{display:inline-block;width:auto;background-color:#f8f8f8;-webkit-appearance:menulist;-moz-appearance:menulist}.ec-select select:focus{box-shadow:none}.ec-select label{margin-right:10px;font-weight:700}.ec-select label:nth-child(3){margin-left:10px;font-weight:700}.ec-select__delivery{display:block;margin-right:16px}.ec-select__time{display:block}.ec-birth select{display:inline-block;width:auto;margin:0 0 10px;background-color:#f8f8f8;-webkit-appearance:menulist;-moz-appearance:menulist}.ec-birth select:focus{box-shadow:none}.ec-birth span{margin-left:5px}.ec-checkbox label{display:inline-block}.ec-checkbox input{margin-bottom:10px}.ec-checkbox span{font-weight:400}.ec-blockCheckbox label{display:block}.ec-blockCheckbox span{font-weight:400}.ec-label{display:inline-block;font-weight:700;margin-bottom:5px}.ec-required{display:inline-block;margin-left:.8em;vertical-align:2px;color:#de5d50;font-size:12px;font-weight:400}.ec-icon img{max-width:80px;max-height:80px}.ec-grid2{display:block;margin:0}.ec-grid2 .ec-grid2__cell{position:relative;min-height:1px}.ec-grid2 .ec-grid2__cell2{position:relative;min-height:1px}.ec-grid3{display:block;margin:0}.ec-grid3 .ec-grid3__cell{position:relative;min-height:1px}.ec-grid3 .ec-grid3__cell2{position:relative;min-height:1px}.ec-grid3 .ec-grid3__cell3{position:relative;min-height:1px}.ec-grid4{display:block;margin:0}.ec-grid4 .ec-grid4__cell{position:relative;min-height:1px}.ec-grid6{display:block;margin:0}.ec-grid6 .ec-grid6__cell{position:relative;min-height:1px}.ec-grid6 .ec-grid6__cell2{position:relative;min-height:1px}.ec-grid6 .ec-grid6__cell3{position:relative;min-height:1px}.ec-off1Grid{margin:0}.ec-off1Grid .ec-off1Grid__cell{margin:0}.ec-off2Grid{display:block;margin:0}.ec-off2Grid .ec-off2Grid__cell{margin:0}.ec-off3Grid{display:block;margin:0}.ec-off3Grid .ec-off3Grid__cell{margin:0}.ec-off4Grid{display:block;margin:0}.ec-off4Grid .ec-off4Grid__cell{margin:0}.ec-grid--left{justify-content:flex-start}.ec-grid--right{justify-content:flex-end}.ec-grid--center{justify-content:center}.ec-imageGrid{display:table;border-top:1px dotted #ccc;width:100%}.ec-imageGrid .ec-imageGrid__img{display:table-cell;padding:10px;width:100px}.ec-imageGrid .ec-imageGrid__img img{width:100%}.ec-imageGrid .ec-imageGrid__content{vertical-align:middle;display:table-cell}.ec-imageGrid .ec-imageGrid__content span{margin-left:10px}.ec-imageGrid .ec-imageGrid__content p{margin-bottom:0}.ec-login{margin:0 0 20px;padding:30px 13% 20px;height:auto;background:#f3f4f4;box-sizing:border-box}.ec-login .ec-login__icon{text-align:center}.ec-login .ec-icon{margin-bottom:10px}.ec-login .ec-icon img{width:90px;height:90px;display:inline-block}.ec-login .ec-login__input{margin-bottom:40px}.ec-login .ec-login__input .ec-checkbox span{margin-left:5px;font-weight:400}.ec-login .ec-login__actions{color:#fff}.ec-login .ec-login__actions a{color:inherit;text-decoration:none}.ec-login .ec-login__actions a:hover{text-decoration:none}.ec-login .ec-login__link{margin-top:5px;margin-left:0}.ec-login .ec-errorMessage{color:#de5d50;margin-bottom:20px}.ec-guest{display:table;margin:0;padding:13%;height:auto;box-sizing:border-box;background:#f3f4f4}.ec-guest .ec-guest__inner{display:table-cell;vertical-align:middle;text-align:center}.ec-guest .ec-guest__inner p{margin-bottom:16px}.ec-guest .ec-guest__actions{display:block;vertical-align:middle;text-align:center;color:#fff}.ec-guest .ec-guest__actions a{color:inherit;text-decoration:none}.ec-guest .ec-guest__actions a:hover{text-decoration:none}.ec-guest .ec-guest__icon{font-size:70px;text-align:center}.ec-displayB{margin-bottom:24px;display:flex;justify-content:space-between;flex-direction:column}.ec-displayB .ec-displayB__cell{width:100%;margin-bottom:16px}.ec-displayB .ec-displayB__cell a{color:inherit;text-decoration:none}.ec-displayB .ec-displayB__cell a:hover{text-decoration:none}.ec-displayB .ec-displayB__cell:hover{text-decoration:none}.ec-displayB .ec-displayB__cell:hover img{opacity:.8}.ec-displayB .ec-displayB__cell:hover a{text-decoration:none}.ec-displayB .ec-displayB__img{margin-bottom:15px}.ec-displayB .ec-displayB__catch{margin-bottom:15px;text-decoration:none;font-weight:700;color:#9a947e}.ec-displayB .ec-displayB__comment{margin-bottom:14px;text-decoration:none;color:#525263;font-size:14px}.ec-displayB .ec-displayB__link{text-decoration:none;font-weight:700;color:#9a947e}.ec-displayC{display:flex;flex-wrap:wrap;justify-content:space-between;margin-bottom:24px}.ec-displayC .ec-displayC__cell{width:47%}.ec-displayC .ec-displayC__cell a{color:inherit;text-decoration:none}.ec-displayC .ec-displayC__cell a:hover{text-decoration:none}.ec-displayC .ec-displayC__cell:hover a{text-decoration:none}.ec-displayC .ec-displayC__cell:hover img{opacity:.8}.ec-displayC .ec-displayC__img{display:block;width:100%;margin-bottom:15px}.ec-displayC .ec-displayC__catch{display:block;width:100%;font-weight:700;color:#9a947e}.ec-displayC .ec-displayC__title{display:block;width:100%;color:#525263}.ec-displayC .ec-displayC__price{display:block;width:100%;font-weight:700;color:#525263}.ec-displayC .ec-displayC__price--sp{display:block;width:100%;font-weight:700;color:#de5d50}.ec-displayD{display:flex;justify-content:space-between;flex-wrap:wrap-reverse}.ec-displayD .ec-displayD__cell{width:30%;margin-bottom:8px}.ec-displayD .ec-displayD__cell a{color:inherit;text-decoration:none}.ec-displayD .ec-displayD__cell a:hover{text-decoration:none}.ec-displayD .ec-displayD__cell:hover{text-decoration:none}.ec-displayD .ec-displayD__cell:hover img{opacity:.8}.ec-displayD .ec-displayD__img{display:block;width:100%}.ec-topicpath{letter-spacing:-.4em;-webkit-margin-before:0;-webkit-margin-after:0;-webkit-margin-start:0;-webkit-margin-end:0;-webkit-padding-start:0;border-top:1px solid #ccc;border-bottom:1px dotted #ccc;padding:10px;list-style:none;overflow:hidden;font-size:12px;color:#0092c4}.ec-topicpath .ec-topicpath__item a{color:inherit;text-decoration:none}.ec-topicpath .ec-topicpath__item a:hover{text-decoration:none}.ec-topicpath .ec-topicpath__divider{color:#000}.ec-topicpath .ec-topicpath__divider,.ec-topicpath .ec-topicpath__item,.ec-topicpath .ec-topicpath__item--active{display:inline-block;min-width:16px;text-align:center;position:relative;letter-spacing:normal}.ec-topicpath .ec-topicpath__item--active{font-weight:700}.ec-topicpath .ec-topicpath__item--active a{color:inherit;text-decoration:none}.ec-topicpath .ec-topicpath__item--active a:hover{text-decoration:none}.ec-pager{list-style:none;list-style-type:none;margin:0 auto;padding:1em 0;text-align:center}.ec-pager .ec-pager__item,.ec-pager .ec-pager__item--active{display:inline-block;min-width:29px;padding:0 3px 0 2px;text-align:center;position:relative}.ec-pager .ec-pager__item a,.ec-pager .ec-pager__item--active a{color:inherit;text-decoration:none}.ec-pager .ec-pager__item a:hover,.ec-pager .ec-pager__item--active a:hover{text-decoration:none}.ec-pager .ec-pager__item a,.ec-pager .ec-pager__item--active a{color:inherit;display:block;line-height:1.8;padding:5px 1em;text-decoration:none}.ec-pager .ec-pager__item a:hover,.ec-pager .ec-pager__item--active a:hover{color:inherit}.ec-pager .ec-pager__item--active{background:#f3f3f3}.ec-pager .ec-pager__item:hover{background:#f3f3f3}@-webkit-keyframes fadeIn{0%{opacity:0;visibility:hidden}100%{opacity:1;visibility:visible}}@keyframes fadeIn{0%{opacity:0;visibility:hidden}100%{opacity:1;visibility:visible}}@-webkit-keyframes fadeOut{0%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}@keyframes fadeOut{0%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}.bg-load-overlay{background:rgba(255,255,255,.4);box-sizing:border-box;position:fixed;display:flex;flex-flow:column nowrap;align-items:center;justify-content:space-around;top:0;left:0;width:100%;height:100%;z-index:2147483647;opacity:1}.ec-progress{margin:0 auto;padding:8px 0 16px;display:table;table-layout:fixed;width:100%;max-width:600px;list-style:none}.ec-progress .ec-progress__item{display:table-cell;position:relative;font-size:14px;text-align:center;font-weight:700;z-index:10}.ec-progress .ec-progress__item:after{content:'';position:absolute;display:block;background:#525263;width:100%;height:.25em;top:1.25em;left:50%;z-index:-1}.ec-progress .ec-progress__item:last-child:after{display:none}.ec-progress .ec-progress__number{line-height:30px;width:30px;height:30px;margin-bottom:5px;font-size:12px;background:#525263;color:#fff;top:0;left:18px;display:inline-block;text-align:center;vertical-align:middle;border-radius:50%}.ec-progress .ec-progress__label{font-size:12px}.ec-progress .is-complete .ec-progress__number{background:#5cb1b1}.ec-progress .is-complete .ec-progress__label{color:#5cb1b1}.ec-cartNavi{display:inline-block;padding:10px 0 0 20px;width:auto;color:#000;background:0 0}.ec-cartNavi .ec-cartNavi__icon{display:inline-block;font-size:20px;display:inline-block;opacity:1;visibility:visible;-webkit-animation:fadeIn .2s linear 0s;animation:fadeIn .2s linear 0s;position:relative}.ec-cartNavi .ec-cartNavi__badge{display:inline-block;border-radius:99999px;box-sizing:border-box;padding:5px;height:17px;font-size:10px;line-height:.7;vertical-align:top;color:#fff;text-align:left;white-space:nowrap;background-color:#de5d50;position:absolute;left:60%;top:-10px}.ec-cartNavi .ec-cartNavi__price{display:none}.ec-cartNavi.is-active .ec-cartNavi__icon:before{content:"\f00d";font-family:"Font Awesome 5 Free";font-weight:900}.ec-cartNavi.is-active .ec-cartNavi__badge{display:none}.ec-cartNaviIsset{display:none;width:100%;text-align:center;background:#f8f8f8;box-sizing:border-box;padding:16px;z-index:20;position:absolute;right:0}.ec-cartNaviIsset .ec-cartNaviIsset__cart{border-bottom:1px solid #e8e8e8;margin-bottom:16px;padding-bottom:32px}.ec-cartNaviIsset .ec-cartNaviIsset__cart:after{content:" ";display:table}.ec-cartNaviIsset .ec-cartNaviIsset__cart:after{clear:both}.ec-cartNaviIsset .ec-cartNaviIsset__cartImage{float:left;width:45%}.ec-cartNaviIsset .ec-cartNaviIsset__cartImage img{width:100%}.ec-cartNaviIsset .ec-cartNaviIsset__cartContent{float:right;width:55%;padding-left:16px;text-align:left;box-sizing:border-box}.ec-cartNaviIsset .ec-cartNaviIsset__action .ec-blockBtn--action{color:#fff;margin-bottom:8px}.ec-cartNaviIsset .ec-cartNaviIsset__cartContentTitle{margin-bottom:8px}.ec-cartNaviIsset .ec-cartNaviIsset__cartContentPrice{font-weight:700}.ec-cartNaviIsset .ec-cartNaviIsset__cartContentTax{display:inline-block;font-size:12px;font-weight:400;margin-left:2px}.ec-cartNaviIsset .ec-cartNaviIsset__cartContentNumber{font-size:14px}.ec-cartNaviIsset.is-active{display:block}.ec-cartNaviNull{display:none;width:100%;text-align:center;background:#f8f8f8;box-sizing:border-box;padding:16px;z-index:3;position:absolute;right:0}.ec-cartNaviNull .ec-cartNaviNull__message{border:1px solid #d9d9d9;padding:16px 0;font-size:16px;font-weight:700;color:#fff;background-color:#f99}.ec-cartNaviNull .ec-cartNaviNull__message p{margin:0}.ec-cartNaviNull.is-active{display:block}.ec-totalBox{background:#f3f3f3;padding:16px;margin-bottom:16px}.ec-totalBox .ec-totalBox__spec{display:flex;justify-content:space-between;-ms-flex-pack:space-between;margin-bottom:8px}.ec-totalBox .ec-totalBox__spec dt{font-weight:400;text-align:left}.ec-totalBox .ec-totalBox__spec dd{text-align:right}.ec-totalBox .ec-totalBox__spec .ec-totalBox .ec-totalBox__spec__specTotal{color:#de5d50}.ec-totalBox .ec-totalBox__total{border-top:1px dotted #ccc;padding:8px 0;text-align:right;font-size:14px;font-weight:700}.ec-totalBox .ec-totalBox__paymentTotal{padding:8px 0;text-align:right;font-size:14px;font-weight:700}.ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__price,.ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__taxLabel{color:#de5d50}.ec-totalBox .ec-totalBox__price{margin-left:16px;font-size:16px;font-weight:700}.ec-totalBox .ec-totalBox__taxLabel{margin-left:8px;font-size:12px}.ec-totalBox .ec-totalBox__taxRate{display:flex;justify-content:flex-end;margin-bottom:8px;font-size:10px}.ec-totalBox .ec-totalBox__taxRate dt{font-weight:400;text-align:left;margin-right:8px}.ec-totalBox .ec-totalBox__taxRate dt::before{content:"[ "}.ec-totalBox .ec-totalBox__taxRate dd{text-align:right}.ec-totalBox .ec-totalBox__taxRate dd::after{content:" ]"}.ec-totalBox .ec-totalBox__pointBlock{padding:18px 20px 10px;margin-bottom:10px;background:#fff}.ec-totalBox .ec-totalBox__btn{color:#fff}.ec-totalBox .ec-totalBox__btn a{color:inherit;text-decoration:none}.ec-totalBox .ec-totalBox__btn a:hover{text-decoration:none}.ec-totalBox .ec-totalBox__btn .ec-blockBtn--action{font-size:16px;font-weight:700}.ec-totalBox .ec-totalBox__btn .ec-blockBtn--cancel{margin-top:8px}.ec-news{margin-bottom:16px;background:#f8f8f8}.ec-news .ec-news__title{font-weight:700;padding:8px;font-size:16px;text-align:center}.ec-news .ec-news__items{padding:0;list-style:none;border-top:1px dotted #ccc}.ec-newsline{display:flex;flex-wrap:wrap;overflow:hidden;padding:0 16px}.ec-newsline .ec-newsline__info{width:100%;padding:16px 0}.ec-newsline .ec-newsline__info:after{content:" ";display:table}.ec-newsline .ec-newsline__info:after{clear:both}.ec-newsline .ec-newsline__date{display:inline-block;margin-right:10px;float:left}.ec-newsline .ec-newsline__comment{display:inline-block;float:left}.ec-newsline .ec-newsline__close{float:right;display:inline-block;text-align:right}.ec-newsline .ec-newsline__close .ec-closeBtn--circle{display:inline-block;width:25px;height:25px;min-width:25px;min-height:25px}.ec-newsline .ec-newsline__description{width:100%;height:0;transition:all .2s ease-out}.ec-newsline.is_active .ec-newsline__description{height:auto;transition:all .2s ease-out;padding-bottom:16px}.ec-newsline.is_active .ec-icon img{transform:rotateX(180deg)}.ec-navlistRole .ec-navlistRole__navlist{display:flex;flex-wrap:wrap;border-color:#d0d0d0;border-style:solid;border-width:1px 0 0 1px;margin-bottom:32px;padding:0;list-style:none}.ec-navlistRole .ec-navlistRole__navlist a{color:inherit;text-decoration:none}.ec-navlistRole .ec-navlistRole__navlist a:hover{text-decoration:none}.ec-navlistRole .ec-navlistRole__item{width:50%;border-color:#d0d0d0;border-style:solid;border-width:0 1px 1px 0;text-align:center;font-weight:700}.ec-navlistRole .ec-navlistRole__item a{padding:16px;width:100%;display:inline-block}.ec-navlistRole .ec-navlistRole__item a:hover{background:#f5f7f8}.ec-navlistRole .active a{color:#de5d50}.ec-welcomeMsg{margin-right:auto;margin-left:auto;padding-left:16px;padding-right:16px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;margin:1em 0;padding-bottom:32px;text-align:center;border-bottom:1px dotted #ccc}.ec-welcomeMsg:after{content:" ";display:table}.ec-welcomeMsg:after{clear:both}.ec-welcomeMsg textarea{font-family:sans-serif}.ec-welcomeMsg img{max-width:100%}.ec-welcomeMsg html{box-sizing:border-box}.ec-welcomeMsg *,.ec-welcomeMsg ::after,.ec-welcomeMsg ::before{box-sizing:inherit}.ec-welcomeMsg img{width:100%}.ec-favoriteRole .ec-favoriteRole__header{margin-bottom:16px}.ec-favoriteRole .ec-favoriteRole__itemList{display:flex;flex-wrap:wrap;padding:0;list-style:none}.ec-favoriteRole .ec-favoriteRole__itemList a{color:inherit;text-decoration:none}.ec-favoriteRole .ec-favoriteRole__itemList a:hover{text-decoration:none}.ec-favoriteRole .ec-favoriteRole__item{margin-bottom:8px;width:47.5%;position:relative;box-sizing:border-box;padding:10px}.ec-favoriteRole .ec-favoriteRole__item-image{height:150px;margin-bottom:10px;text-align:center}.ec-favoriteRole .ec-favoriteRole__item img{width:auto;max-height:100%}.ec-favoriteRole .ec-favoriteRole__item .ec-closeBtn--circle{position:absolute;right:10px;top:10px}.ec-favoriteRole .ec-favoriteRole__item .ec-closeBtn--circle .ec-icon img{width:1em;height:1em}.ec-favoriteRole .ec-favoriteRole__itemThumb{display:block;height:auto;margin-bottom:8px}.ec-favoriteRole .ec-favoriteRole__itemTitle{margin-bottom:2px}.ec-favoriteRole .ec-favoriteRole__itemPrice{font-weight:700;margin-bottom:0}.ec-role{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-role:after{content:" ";display:table}.ec-role:after{clear:both}.ec-role textarea{font-family:sans-serif}.ec-role img{max-width:100%}.ec-role html{box-sizing:border-box}.ec-role *,.ec-role ::after,.ec-role ::before{box-sizing:inherit}.ec-role img{width:100%}.ec-mypageRole{margin-right:auto;margin-left:auto;padding-left:16px;padding-right:16px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%}.ec-mypageRole:after{content:" ";display:table}.ec-mypageRole:after{clear:both}.ec-mypageRole textarea{font-family:sans-serif}.ec-mypageRole img{max-width:100%}.ec-mypageRole html{box-sizing:border-box}.ec-mypageRole *,.ec-mypageRole ::after,.ec-mypageRole ::before{box-sizing:inherit}.ec-mypageRole img{width:100%}@keyframes fadeIn{0%{opacity:0;visibility:hidden}100%{opacity:1;visibility:visible}}@keyframes fadeOut{0%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}.bg-load-overlay{background:rgba(255,255,255,.4);box-sizing:border-box;position:fixed;display:flex;flex-flow:column nowrap;align-items:center;justify-content:space-around;top:0;left:0;width:100%;height:100%;z-index:2147483647;opacity:1}.ec-layoutRole{width:100%;transition:transform .3s;background:#fff}.ec-layoutRole .ec-layoutRole__contentTop{padding:0}.ec-layoutRole .ec-layoutRole__contents{margin-right:auto;margin-left:auto;width:100%;max-width:1150px;display:flex;flex-wrap:nowrap}.ec-layoutRole .ec-layoutRole__main{width:100%}.ec-layoutRole .ec-layoutRole__mainWithColumn{width:100%}.ec-layoutRole .ec-layoutRole__mainBetweenColumn{width:100%}.ec-layoutRole .ec-layoutRole__left,.ec-layoutRole .ec-layoutRole__right{display:none}.ec-headerRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;padding-top:15px;position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;width:auto}.ec-headerRole:after{content:" ";display:table}.ec-headerRole:after{clear:both}.ec-headerRole textarea{font-family:sans-serif}.ec-headerRole img{max-width:100%}.ec-headerRole html{box-sizing:border-box}.ec-headerRole *,.ec-headerRole ::after,.ec-headerRole ::before{box-sizing:inherit}.ec-headerRole img{width:100%}.ec-headerRole:after{display:none}.ec-headerRole::before{display:none}.ec-headerRole .ec-headerRole__title{width:100%}.ec-headerRole .ec-headerRole__navSP{display:block;position:absolute;top:15px;width:27%;right:0;text-align:right}.ec-headerNaviRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;display:flex;justify-content:space-between;align-items:center;padding-top:15px}.ec-headerNaviRole:after{content:" ";display:table}.ec-headerNaviRole:after{clear:both}.ec-headerNaviRole textarea{font-family:sans-serif}.ec-headerNaviRole img{max-width:100%}.ec-headerNaviRole html{box-sizing:border-box}.ec-headerNaviRole *,.ec-headerNaviRole ::after,.ec-headerNaviRole ::before{box-sizing:inherit}.ec-headerNaviRole img{width:100%}.ec-headerNaviRole .ec-headerNaviRole__left{width:calc(100% / 3)}.ec-headerNaviRole .ec-headerNaviRole__search{display:none}.ec-headerNaviRole .ec-headerNaviRole__navSP{display:block}.ec-headerNaviRole .ec-headerNaviRole__right{width:calc(100% * 2 / 3);display:flex;justify-content:flex-end;align-items:center}.ec-headerNaviRole .ec-headerNaviRole__nav{display:inline-block}.ec-headerNaviRole .ec-headerNaviRole__nav a{color:inherit;text-decoration:none}.ec-headerNaviRole .ec-headerNaviRole__nav a:hover{text-decoration:none}.ec-headerNaviRole .ec-headerNaviRole__cart{display:inline-block}.ec-headerNaviRole .ec-headerNaviRole__cart a{color:inherit;text-decoration:none}.ec-headerNaviRole .ec-headerNaviRole__cart a:hover{text-decoration:none}.ec-headerNavSP{display:block;cursor:pointer;border-radius:50%;box-sizing:border-box;padding:10px;width:40px;height:40px;font-size:18px;text-align:center;color:#000;background:#fff;position:fixed;top:10px;left:10px;z-index:1000}.ec-headerNavSP .fas{vertical-align:top}.ec-headerNavSP.is-active{display:none}.ec-headerTitle{font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%}.ec-headerTitle textarea{font-family:sans-serif}.ec-headerTitle img{max-width:100%}.ec-headerTitle html{box-sizing:border-box}.ec-headerTitle *,.ec-headerTitle ::after,.ec-headerTitle ::before{box-sizing:inherit}.ec-headerTitle img{width:100%}.ec-headerTitle .ec-headerTitle__title{text-align:center}.ec-headerTitle .ec-headerTitle__title h1{margin:0;padding:0}.ec-headerTitle .ec-headerTitle__title a{display:inline-block;margin-bottom:30px;text-decoration:none;font-size:20px;font-weight:700;color:#000}.ec-headerTitle .ec-headerTitle__title a:hover{opacity:.8}.ec-headerTitle .ec-headerTitle__subtitle{font-size:10px;text-align:center}.ec-headerTitle .ec-headerTitle__subtitle a{display:inline-block;color:#0092c4;text-decoration:none;cursor:pointer}.ec-headerNav{text-align:right}.ec-headerNav .ec-headerNav__item{margin-left:0;display:inline-block;font-size:28px}.ec-headerNav .ec-headerNav__itemIcon{display:inline-block;margin-right:10px;margin-left:10px;font-size:18px;color:#000}.ec-headerNav .ec-headerNav__itemLink{display:none;margin-right:5px;font-size:14px;vertical-align:middle;color:#000}.ec-headerSearch:after{content:" ";display:table}.ec-headerSearch:after{clear:both}.ec-headerSearch .ec-headerSearch__category{float:none}.ec-headerSearch .ec-headerSearch__category .ec-select{overflow:hidden;width:100%;margin:0;text-align:center}.ec-headerSearch .ec-headerSearch__category .ec-select select{width:100%;cursor:pointer;padding:8px 24px 8px 8px;text-indent:.01px;text-overflow:ellipsis;border:none;outline:0;background:0 0;background-image:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#fff}.ec-headerSearch .ec-headerSearch__category .ec-select select option{color:#000}.ec-headerSearch .ec-headerSearch__category .ec-select select::-ms-expand{display:none}.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search{position:relative;border:0;background:#000;color:#fff;border-top-right-radius:10px;border-top-left-radius:10px}.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search::before{position:absolute;top:.8em;right:.4em;width:0;height:0;padding:0;content:'';border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #fff;pointer-events:none}.ec-headerSearch .ec-headerSearch__keyword{position:relative;color:#525263;border:1px solid #ccc;background-color:#f6f6f6;border-bottom-right-radius:10px;border-bottom-left-radius:10px}.ec-headerSearch .ec-headerSearch__keyword input[type=search]{width:100%;height:34px;font-size:1.2rem;border:0 none;padding:.5em 50px .5em 1em;box-shadow:none;background:0 0;box-sizing:border-box;margin-bottom:0}.ec-headerSearch .ec-headerSearch__keyword .ec-icon{width:22px;height:22px}.ec-headerSearch .ec-headerSearch__keywordBtn{border:0;background:0 0;position:absolute;right:5px;top:50%;transform:translateY(-55%);display:block;white-space:nowrap;z-index:1}.ec-categoryNaviRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;display:none}.ec-categoryNaviRole:after{content:" ";display:table}.ec-categoryNaviRole:after{clear:both}.ec-categoryNaviRole textarea{font-family:sans-serif}.ec-categoryNaviRole img{max-width:100%}.ec-categoryNaviRole html{box-sizing:border-box}.ec-categoryNaviRole *,.ec-categoryNaviRole ::after,.ec-categoryNaviRole ::before{box-sizing:inherit}.ec-categoryNaviRole img{width:100%}.ec-itemNav{margin:0;padding:0;width:100%;height:100%;text-align:center}.ec-itemNav__nav{display:block;margin:0 auto;padding:0;width:auto;height:auto;list-style-type:none;text-align:center;vertical-align:bottom}.ec-itemNav__nav li{float:none;margin:0;padding:0;width:100%;text-align:center;position:relative}.ec-itemNav__nav li a{display:block;border-bottom:1px solid #e8e8e8;margin:0;padding:16px;height:auto;color:#2e3233;font-size:16px;font-weight:700;line-height:20px;text-decoration:none;text-align:left;background:#fff;border-bottom:1px solid #e8e8e8}.ec-itemNav__nav li ul{display:none;z-index:0;margin:0;padding:0;min-width:200px;list-style:none;position:static;top:100%;left:0}.ec-itemNav__nav li ul li{overflow:hidden;width:100%;height:auto;transition:.3s}.ec-itemNav__nav li ul li a{border-bottom:1px solid #e8e8e8;padding:16px 22px 16px 16px;font-size:16px;font-weight:700;color:#fff;text-align:left;background:#000}.ec-itemNav__nav>li:hover>a{background:#fafafa}.ec-itemNav__nav>li:hover li:hover>a{background:#333}.ec-itemNav__nav li ul li ul{top:0;left:100%;width:auto}.ec-itemNav__nav li ul li ul li a{background:#7d7d7d}.ec-itemNav__nav li:hover ul li ul li a:hover{background:#333}.ec-drawerRole{overflow-y:scroll;background:#000;width:260px;height:100vh;transform:translateX(-300px);position:fixed;top:0;left:0;z-index:1;transition:z-index 0s 1ms}.ec-drawerRole .ec-headerSearchArea{padding:20px 10px;width:100%;background:#f8f8f8}.ec-drawerRole .ec-headerSearch{padding:16px 8px 26px;background:#ebebeb;color:#636378}.ec-drawerRole .ec-headerSearch select{width:100%!important}.ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading{border-top:1px solid #ccc;border-bottom:1px solid #ccc;padding:1em 10px;font-size:16px;font-weight:700;color:#000;background:#f8f8f8}.ec-drawerRole .ec-headerCategoryArea p{margin-top:0;margin-bottom:0}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li a{border-bottom:1px solid #ccc;border-bottom:1px solid #ccc;color:#000;font-weight:400;background:#f8f8f8}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li a{border-bottom:1px solid #ccc;padding-left:20px;font-weight:400;background:#fff}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav>li:hover>a{background:#f8f8f8}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav>li:hover li:hover>a{background:#fff}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li ul li a{padding-left:40px;color:#000;background:#fff}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li:hover ul li ul li a:hover{background:#fff}.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li ul li ul li a{padding-left:60px;font-weight:400}.ec-drawerRole .ec-headerLinkArea{background:#000}.ec-drawerRole .ec-headerLinkArea .ec-headerLink__list{border-top:1px solid #ccc}.ec-drawerRole .ec-headerLinkArea .ec-headerLink__item{display:block;border-bottom:1px solid #ccc;padding:15px 20px;font-size:16px;font-weight:700;color:#fff}.ec-drawerRole .ec-headerLinkArea .ec-headerLink__icon{display:inline-block;width:28px;font-size:17px}.ec-drawerRoleClose{display:none;cursor:pointer;border-radius:50%;box-sizing:border-box;padding:10px;width:40px;height:40px;font-size:18px;text-align:center;color:#000;background:#fff;position:fixed;top:10px;left:270px;z-index:1000}.ec-drawerRoleClose .fas{vertical-align:top}.ec-drawerRole.is_active{display:block;transform:translateX(0);transition:all .3s;z-index:100000}.ec-drawerRoleClose.is_active{display:inline-block;transition:all .3s}.ec-overlayRole{position:fixed;width:100%;height:100vh;top:0;left:0;opacity:0;background:0 0;transform:translateX(0);transition:all .3s;visibility:hidden}.have_curtain .ec-overlayRole{display:block;opacity:1;background:rgba(0,0,0,.5);visibility:visible}.ec-itemNavAccordion{display:none}.ec-footerRole{border-top:1px solid #7d7d7d;margin-top:30px;background:#000}.ec-footerNavi{padding:0;color:#fff;list-style:none;text-align:center}.ec-footerNavi .ec-footerNavi__link{display:block}.ec-footerNavi .ec-footerNavi__link a{display:block;border-bottom:1px solid #7d7d7d;padding:15px 0;font-size:14px;color:inherit;text-decoration:none}.ec-footerNavi .ec-footerNavi__link:hover a{opacity:.8;text-decoration:none}.ec-footerTitle{padding:40px 0 60px;text-align:center;color:#fff}.ec-footerTitle .ec-footerTitle__logo{display:block;margin-bottom:10px;font-weight:700}.ec-footerTitle .ec-footerTitle__logo a{color:inherit;text-decoration:none}.ec-footerTitle .ec-footerTitle__logo a:hover{text-decoration:none}.ec-footerTitle .ec-footerTitle__logo a{font-size:22px;color:inherit}.ec-footerTitle .ec-footerTitle__logo:hover a{opacity:.8;text-decoration:none}.ec-footerTitle .ec-footerTitle__copyright{font-size:10px}.ec-sliderRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;margin-bottom:24px}.ec-sliderRole:after{content:" ";display:table}.ec-sliderRole:after{clear:both}.ec-sliderRole textarea{font-family:sans-serif}.ec-sliderRole img{max-width:100%}.ec-sliderRole html{box-sizing:border-box}.ec-sliderRole *,.ec-sliderRole ::after,.ec-sliderRole ::before{box-sizing:inherit}.ec-sliderRole img{width:100%}.ec-sliderRole ul{padding:0;list-style:none}.ec-sliderItemRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;margin-bottom:24px}.ec-sliderItemRole:after{content:" ";display:table}.ec-sliderItemRole:after{clear:both}.ec-sliderItemRole textarea{font-family:sans-serif}.ec-sliderItemRole img{max-width:100%}.ec-sliderItemRole html{box-sizing:border-box}.ec-sliderItemRole *,.ec-sliderItemRole ::after,.ec-sliderItemRole ::before{box-sizing:inherit}.ec-sliderItemRole img{width:100%}.ec-sliderItemRole ul{padding:0;list-style:none}.ec-sliderItemRole .item_nav{display:none}.ec-sliderItemRole .slideThumb{margin-bottom:25px;width:33%;opacity:.8;cursor:pointer}.ec-sliderItemRole .slideThumb:focus{outline:0}.ec-sliderItemRole .slideThumb:hover{opacity:1}.ec-sliderItemRole .slideThumb img{width:80%}.ec-eyecatchRole{display:flex;flex-wrap:wrap;margin-bottom:40px}.ec-eyecatchRole .ec-eyecatchRole__image{display:block;margin-bottom:40px;width:100%;height:100%}.ec-eyecatchRole .ec-eyecatchRole__intro{color:#000}.ec-eyecatchRole .ec-eyecatchRole__introEnTitle{margin-bottom:.8em;font-size:16px;font-weight:400}.ec-eyecatchRole .ec-eyecatchRole__introTitle{margin-bottom:.8em;font-size:24px;font-weight:700}.ec-eyecatchRole .ec-eyecatchRole__introDescriptiron{margin-bottom:20px;font-size:16px;line-height:2}.ec-inlineBtn--top{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:#000;border-color:#000}.ec-inlineBtn--top.active.focus,.ec-inlineBtn--top.active:focus,.ec-inlineBtn--top.focus,.ec-inlineBtn--top:active.focus,.ec-inlineBtn--top:active:focus,.ec-inlineBtn--top:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-inlineBtn--top.focus,.ec-inlineBtn--top:focus,.ec-inlineBtn--top:hover{color:#525263;text-decoration:none}.ec-inlineBtn--top.active,.ec-inlineBtn--top:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-inlineBtn--top.disabled,.ec-inlineBtn--top[disabled],fieldset[disabled] .ec-inlineBtn--top{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-inlineBtn--top.focus,.ec-inlineBtn--top:focus{color:#fff;background-color:#000;border-color:#000}.ec-inlineBtn--top:hover{color:#fff;background-color:#000;border-color:#000}.ec-inlineBtn--top.active,.ec-inlineBtn--top:active,.open>.ec-inlineBtn--top.dropdown-toggle{color:#fff;background-color:#000;border-color:#000}.ec-inlineBtn--top.active.focus,.ec-inlineBtn--top.active:focus,.ec-inlineBtn--top.active:hover,.ec-inlineBtn--top:active.focus,.ec-inlineBtn--top:active:focus,.ec-inlineBtn--top:active:hover,.open>.ec-inlineBtn--top.dropdown-toggle.focus,.open>.ec-inlineBtn--top.dropdown-toggle:focus,.open>.ec-inlineBtn--top.dropdown-toggle:hover{color:#fff;background-color:#000;border-color:#000}.ec-inlineBtn--top.active,.ec-inlineBtn--top:active,.open>.ec-inlineBtn--top.dropdown-toggle{background-image:none}.ec-inlineBtn--top.disabled.focus,.ec-inlineBtn--top.disabled:focus,.ec-inlineBtn--top.disabled:hover,.ec-inlineBtn--top[disabled].focus,.ec-inlineBtn--top[disabled]:focus,.ec-inlineBtn--top[disabled]:hover,fieldset[disabled] .ec-inlineBtn--top.focus,fieldset[disabled] .ec-inlineBtn--top:focus,fieldset[disabled] .ec-inlineBtn--top:hover{background-color:#000;border-color:#000}.ec-inlineBtn--top .badge{color:#000;background-color:#fff}.ec-inlineBtn--top .ec-icon img{width:1em;vertical-align:text-bottom}.ec-blockBtn--top{display:inline-block;margin-bottom:0;font-weight:700;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:14px;line-height:1.42857;border-radius:0;-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:#000;border-color:#000;display:block;height:56px;line-height:56px;padding-top:0;padding-bottom:0}.ec-blockBtn--top.active.focus,.ec-blockBtn--top.active:focus,.ec-blockBtn--top.focus,.ec-blockBtn--top:active.focus,.ec-blockBtn--top:active:focus,.ec-blockBtn--top:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ec-blockBtn--top.focus,.ec-blockBtn--top:focus,.ec-blockBtn--top:hover{color:#525263;text-decoration:none}.ec-blockBtn--top.active,.ec-blockBtn--top:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ec-blockBtn--top.disabled,.ec-blockBtn--top[disabled],fieldset[disabled] .ec-blockBtn--top{cursor:not-allowed;opacity:.65;box-shadow:none}.ec-blockBtn--top.focus,.ec-blockBtn--top:focus{color:#fff;background-color:#000;border-color:#000}.ec-blockBtn--top:hover{color:#fff;background-color:#000;border-color:#000}.ec-blockBtn--top.active,.ec-blockBtn--top:active,.open>.ec-blockBtn--top.dropdown-toggle{color:#fff;background-color:#000;border-color:#000}.ec-blockBtn--top.active.focus,.ec-blockBtn--top.active:focus,.ec-blockBtn--top.active:hover,.ec-blockBtn--top:active.focus,.ec-blockBtn--top:active:focus,.ec-blockBtn--top:active:hover,.open>.ec-blockBtn--top.dropdown-toggle.focus,.open>.ec-blockBtn--top.dropdown-toggle:focus,.open>.ec-blockBtn--top.dropdown-toggle:hover{color:#fff;background-color:#000;border-color:#000}.ec-blockBtn--top.active,.ec-blockBtn--top:active,.open>.ec-blockBtn--top.dropdown-toggle{background-image:none}.ec-blockBtn--top.disabled.focus,.ec-blockBtn--top.disabled:focus,.ec-blockBtn--top.disabled:hover,.ec-blockBtn--top[disabled].focus,.ec-blockBtn--top[disabled]:focus,.ec-blockBtn--top[disabled]:hover,fieldset[disabled] .ec-blockBtn--top.focus,fieldset[disabled] .ec-blockBtn--top:focus,fieldset[disabled] .ec-blockBtn--top:hover{background-color:#000;border-color:#000}.ec-blockBtn--top .badge{color:#000;background-color:#fff}.ec-blockBtn--top .ec-icon img{width:1em;vertical-align:text-bottom}.ec-secHeading{margin-bottom:15px;color:#000}.ec-secHeading .ec-secHeading__en{font-size:18px;font-weight:700;letter-spacing:.2em}.ec-secHeading .ec-secHeading__line{display:inline-block;margin:0 20px;width:1px;height:14px;background:#000}.ec-secHeading .ec-secHeading__ja{font-size:12px;font-weight:400;letter-spacing:.15em;vertical-align:2px}.ec-secHeading--tandem{margin-bottom:15px;color:#000;text-align:center}.ec-secHeading--tandem .ec-secHeading__en{display:block;font-size:18px;font-weight:700;letter-spacing:.2em}.ec-secHeading--tandem .ec-secHeading__line{display:block;margin:13px auto;width:20px;height:1px;background:#000}.ec-secHeading--tandem .ec-secHeading__ja{display:block;margin-bottom:30px;font-size:12px;font-weight:400;letter-spacing:.15em;vertical-align:2px}.ec-topicRole{padding:40px 0;background:#f8f8f8}.ec-topicRole .ec-topicRole__list{display:flex;flex-wrap:wrap}.ec-topicRole .ec-topicRole__listItem{margin-bottom:20px;width:100%;height:auto}.ec-topicRole .ec-topicRole__listItemTitle{margin-top:.5em;font-size:14px;color:#000}.ec-newItemRole{padding:40px 0}.ec-newItemRole .ec-newItemRole__list{display:flex;flex-wrap:wrap}.ec-newItemRole .ec-newItemRole__listItem{margin-bottom:4%;width:48%;height:auto}.ec-newItemRole .ec-newItemRole__listItem:not(:first-child) a{color:#000}.ec-newItemRole .ec-newItemRole__listItem:nth-child(odd){margin-right:4%}.ec-newItemRole .ec-newItemRole__listItemHeading{margin-top:calc(45% - 20px)}.ec-newItemRole .ec-newItemRole__listItemTitle{margin:8px 0;font-size:14px;font-weight:700}.ec-newItemRole .ec-newItemRole__listItemPrice{font-size:12px}.ec-categoryRole{padding:40px 0;color:#000;background:#f8f8f8}.ec-categoryRole .ec-categoryRole__list{display:flex;flex-wrap:wrap}.ec-categoryRole .ec-categoryRole__listItem{margin-bottom:20px;width:100%;height:auto}.ec-newsRole{padding:40px 0 0}.ec-newsRole .ec-newsRole__news{box-sizing:border-box}.ec-newsRole .ec-newsRole__newsItem{width:100%}.ec-newsRole .ec-newsRole__newsItem:not(:last-of-type){border-bottom:1px solid #ccc}.ec-newsRole .ec-newsRole__newsItem:last-of-type{margin-bottom:20px}.ec-newsRole .ec-newsRole__newsHeading{cursor:pointer}.ec-newsRole .ec-newsRole__newsDate{display:block;margin:15px 0 5px;font-size:12px;color:#000}.ec-newsRole .ec-newsRole__newsColumn{display:flex}.ec-newsRole .ec-newsRole__newsTitle{display:inline-block;margin-bottom:10px;width:90%;font-size:14px;font-weight:700;color:#7d7d7d;line-height:1.6}.ec-newsRole .ec-newsRole__newsClose{display:inline-block;width:10%;position:relative}.ec-newsRole .ec-newsRole__newsCloseBtn{display:inline-block;margin-left:auto;border-radius:50%;width:20px;height:20px;color:#fff;text-align:center;background:#000;cursor:pointer;position:absolute;right:5px}.ec-newsRole .ec-newsRole__newsDescription{display:none;margin:0 0 10px;font-size:14px;line-height:1.4;overflow:hidden}.ec-newsRole .ec-newsRole__newsDescription a{color:#0092c4}.ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription{margin:0 0 10px}.ec-newsRole__newsItem.is_active .ec-newsRole__newsCloseBtn i{display:inline-block;transform:rotateX(180deg) translateY(2px)}.ec-searchnavRole{margin-bottom:0;padding:0}.ec-searchnavRole .ec-searchnavRole__infos{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;display:flex;border-top:0;margin-bottom:16px;padding-top:5px;flex-direction:column}.ec-searchnavRole .ec-searchnavRole__infos:after{content:" ";display:table}.ec-searchnavRole .ec-searchnavRole__infos:after{clear:both}.ec-searchnavRole .ec-searchnavRole__infos textarea{font-family:sans-serif}.ec-searchnavRole .ec-searchnavRole__infos img{max-width:100%}.ec-searchnavRole .ec-searchnavRole__infos html{box-sizing:border-box}.ec-searchnavRole .ec-searchnavRole__infos *,.ec-searchnavRole .ec-searchnavRole__infos ::after,.ec-searchnavRole .ec-searchnavRole__infos ::before{box-sizing:inherit}.ec-searchnavRole .ec-searchnavRole__infos img{width:100%}.ec-searchnavRole .ec-searchnavRole__counter{margin-bottom:16px;width:100%}.ec-searchnavRole .ec-searchnavRole__actions{text-align:right;width:100%}.ec-shelfRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-shelfRole:after{content:" ";display:table}.ec-shelfRole:after{clear:both}.ec-shelfRole textarea{font-family:sans-serif}.ec-shelfRole img{max-width:100%}.ec-shelfRole html{box-sizing:border-box}.ec-shelfRole *,.ec-shelfRole ::after,.ec-shelfRole ::before{box-sizing:inherit}.ec-shelfRole img{width:100%}.ec-shelfGrid{display:flex;margin-left:0;margin-right:0;flex-wrap:wrap;padding:0;list-style:none}.ec-shelfGrid a{color:inherit;text-decoration:none}.ec-shelfGrid a:hover{text-decoration:none}.ec-shelfGrid .ec-shelfGrid__item{margin-bottom:36px;width:50%;display:flex;flex-direction:column}.ec-shelfGrid .ec-shelfGrid__item-image{height:150px;margin-bottom:10px;text-align:center}.ec-shelfGrid .ec-shelfGrid__item img{width:auto;max-height:100%}.ec-shelfGrid .ec-shelfGrid__item .ec-productRole__btn{margin-top:auto;margin-bottom:15px}.ec-shelfGrid .ec-shelfGrid__item:nth-child(odd){padding-right:8px}.ec-shelfGrid .ec-shelfGrid__item:nth-child(even){padding-left:8px}.ec-shelfGrid .ec-shelfGrid__title{margin-bottom:7px}.ec-shelfGrid .ec-shelfGrid__plice{font-weight:700}.ec-shelfGridCenter{display:flex;margin-left:0;margin-right:0;flex-wrap:wrap;padding:0;list-style:none;justify-content:center}.ec-shelfGridCenter a{color:inherit;text-decoration:none}.ec-shelfGridCenter a:hover{text-decoration:none}.ec-shelfGridCenter .ec-shelfGridCenter__item{margin-bottom:36px;width:50%}.ec-shelfGridCenter .ec-shelfGridCenter__item-image{height:150px;margin-bottom:10px;text-align:center}.ec-shelfGridCenter .ec-shelfGridCenter__item img{width:auto;max-height:100%}.ec-shelfGridCenter .ec-shelfGridCenter__item .ec-productRole__btn{margin-top:auto;padding-top:1em}.ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(odd){padding-right:8px}.ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even){padding-left:8px}.ec-shelfGridCenter .ec-shelfGridCenter__title{margin-bottom:7px}.ec-shelfGridCenter .ec-shelfGridCenter__plice{font-weight:700}.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,.3);width:100%;height:100%}.ec-modal .ec-modal-wrap{position:relative;border-radius:2px;border:1px solid #333;background-color:#fff;width:90%;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}.ec-productRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-productRole:after{content:" ";display:table}.ec-productRole:after{clear:both}.ec-productRole textarea{font-family:sans-serif}.ec-productRole img{max-width:100%}.ec-productRole html{box-sizing:border-box}.ec-productRole *,.ec-productRole ::after,.ec-productRole ::before{box-sizing:inherit}.ec-productRole img{width:100%}.ec-productRole .ec-productRole__img{margin-right:0;margin-bottom:20px}.ec-productRole .ec-productRole__profile{margin-left:0}.ec-productRole .ec-productRole__title .ec-headingTitle{font-size:20px}.ec-productRole .ec-productRole__tags{margin-top:16px;padding:0;padding-bottom:16px;border-bottom:1px dotted #ccc}.ec-productRole .ec-productRole__tag{display:inline-block;padding:2px 5px;list-style:none;font-size:80%;color:#525263;border:solid 1px #d7dadd;border-radius:3px;background-color:#f5f7f8}.ec-productRole .ec-productRole__priceRegular{padding-top:14px}.ec-productRole .ec-productRole__priceRegularTax{margin-left:5px;font-size:10px}.ec-productRole .ec-productRole__price{color:#de5d50;font-size:28px;padding:0;border-bottom:0}.ec-productRole .ec-productRole__code{padding:14px 0;border-bottom:1px dotted #ccc}.ec-productRole .ec-productRole__category{padding:14px 0;border-bottom:1px dotted #ccc}.ec-productRole .ec-productRole__category a{color:#33a8d0}.ec-productRole .ec-productRole__category ul{list-style:none;padding:0;margin:0}.ec-productRole .ec-productRole__actions{padding:14px 0}.ec-productRole .ec-productRole__actions .ec-select select{height:40px;max-width:100%;min-width:100%}.ec-productRole .ec-productRole__btn{width:100%;margin-bottom:10px}.ec-productRole .ec-productRole__description{margin-bottom:16px}.ec-cartRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;display:flex;flex-wrap:wrap;justify-content:flex-end}.ec-cartRole:after{content:" ";display:table}.ec-cartRole:after{clear:both}.ec-cartRole textarea{font-family:sans-serif}.ec-cartRole img{max-width:100%}.ec-cartRole html{box-sizing:border-box}.ec-cartRole *,.ec-cartRole ::after,.ec-cartRole ::before{box-sizing:inherit}.ec-cartRole img{width:100%}.ec-cartRole::before{display:none}.ec-cartRole .ec-cartRole__progress{width:100%;text-align:center}.ec-cartRole .ec-cartRole__error{width:100%;text-align:center}.ec-cartRole .ec-cartRole__error .ec-alert-warning{max-width:80%;display:inline-block}.ec-cartRole .ec-cartRole__totalText{margin-bottom:0;padding:16px 0 6px;width:100%;text-align:center;font-weight:400}.ec-cartRole .ec-cartRole__cart{margin:0;width:100%}.ec-cartRole .ec-cartRole__actions{text-align:right;width:100%}.ec-cartRole .ec-cartRole__total{padding:15px 0 30px;font-weight:700;font-size:16px}.ec-cartRole .ec-cartRole__totalAmount{margin-left:30px;color:#de5d50;font-size:16px}.ec-cartRole .ec-blockBtn--action{margin-bottom:10px}.ec-cartTable{display:table;border-top:1px dotted #ccc;width:100%}.ec-cartHeader{display:none;width:100%;background:#f4f3f0}.ec-cartHeader .ec-cartHeader__label{display:table-cell;padding:16px;text-align:center;background:#f4f3f0;overflow-x:hidden;font-weight:700}.ec-cartCompleteRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-cartCompleteRole:after{content:" ";display:table}.ec-cartCompleteRole:after{clear:both}.ec-cartCompleteRole textarea{font-family:sans-serif}.ec-cartCompleteRole img{max-width:100%}.ec-cartCompleteRole html{box-sizing:border-box}.ec-cartCompleteRole *,.ec-cartCompleteRole ::after,.ec-cartCompleteRole ::before{box-sizing:inherit}.ec-cartCompleteRole img{width:100%}.ec-cartRow{display:table-row}.ec-cartRow .ec-cartRow__delColumn{border-bottom:1px dotted #ccc;text-align:center;display:table-cell;width:14%;vertical-align:middle}.ec-cartRow .ec-cartRow__delColumn .ec-icon img{width:1.5em;height:1.5em}.ec-cartRow .ec-cartRow__contentColumn{border-bottom:1px dotted #ccc;padding:10px 0;display:table}.ec-cartRow .ec-cartRow__img{display:table-cell;width:40%;vertical-align:middle;padding-right:10px}.ec-cartRow .ec-cartRow__summary{display:table-cell;margin-left:5px;font-weight:700;vertical-align:middle;width:46%}.ec-cartRow .ec-cartRow__summary .ec-cartRow__name{margin-bottom:5px}.ec-cartRow .ec-cartRow__summary .ec-cartRow__sutbtotalSP{display:block;font-weight:400}.ec-cartRow .ec-cartRow__amountColumn{display:table-cell;border-bottom:1px dotted #ccc;vertical-align:middle;text-align:center;width:20%}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amount{display:none;margin-bottom:10px}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP{display:block;margin-bottom:10px}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpDown{display:flex;justify-content:center}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpButton{margin:0 2px;display:inline-block;border:2px solid #c9c9c9;border-radius:50%;width:30px;min-width:30px;max-width:30px;height:30px;cursor:pointer;line-height:40px;vertical-align:middle;position:relative;text-align:center;background:#fff}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpButton .ec-cartRow__amountUpButton__icon img{display:block;margin-left:-.4em;width:.8em;height:.8em;position:absolute;top:28%;left:50%}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButton,.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled{margin:0 2px;display:inline-block;border:2px solid #c9c9c9;border-radius:50%;width:30px;min-width:30px;max-width:30px;height:30px;cursor:pointer;line-height:40px;vertical-align:middle;position:relative;text-align:center;background:#fff}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButton .ec-cartRow__amountDownButton__icon img,.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled .ec-cartRow__amountDownButton__icon img{display:block;margin-left:-.4em;width:.8em;height:.8em;position:absolute;top:28%;left:50%}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled{cursor:default}.ec-cartRow .ec-cartRow__subtotalColumn{display:none;border-bottom:1px dotted #ccc;text-align:right;width:16.66666667%}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled{cursor:default}.ec-alert-warning{width:100%;padding:10px;text-align:center;background:#f99;margin-bottom:20px}.ec-alert-warning .ec-alert-warning__icon{display:inline-block;margin-right:1rem;width:20px;height:20px;color:#fff;fill:#fff;vertical-align:top}.ec-alert-warning .ec-alert-warning__text{display:inline-block;font-size:16px;font-weight:700;color:#fff;position:relative}.ec-orderRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;display:flex;flex-direction:column;margin-top:0}.ec-orderRole:after{content:" ";display:table}.ec-orderRole:after{clear:both}.ec-orderRole textarea{font-family:sans-serif}.ec-orderRole img{max-width:100%}.ec-orderRole html{box-sizing:border-box}.ec-orderRole *,.ec-orderRole ::after,.ec-orderRole ::before{box-sizing:inherit}.ec-orderRole img{width:100%}.ec-orderRole .ec-inlineBtn{font-weight:400}.ec-orderRole .ec-orderRole__detail{padding:0;width:100%}.ec-orderRole .ec-orderRole__summary{width:100%}.ec-orderRole .ec-orderRole__summary .ec-inlineBtn{display:inline-block}.ec-orderRole .ec-borderedList{margin-bottom:20px;border-top:1px dotted #ccc}.ec-orderOrder{margin-bottom:30px}.ec-orderOrder .ec-orderOrder__items{border-bottom:1px dotted #ccc;border-top:1px dotted #ccc}.ec-orderAccount{margin-bottom:30px}.ec-orderAccount p{margin-bottom:0}.ec-orderAccount:after{content:" ";display:table}.ec-orderAccount:after{clear:both}.ec-orderAccount .ec-orderAccount__change{display:inline-block;margin-left:10px;float:right}.ec-orderAccount .ec-orderAccount__account{margin-bottom:16px}.ec-orderDelivery .ec-orderDelivery__title{padding:16px 0 17px;font-weight:700;font-size:18px;position:relative}.ec-orderDelivery .ec-orderDelivery__change{display:inline-block;position:absolute;right:0;top:0}.ec-orderDelivery .ec-orderDelivery__items{border-bottom:1px dotted #ccc;border-top:1px dotted #ccc}.ec-orderDelivery .ec-orderDelivery__address{margin:10px 0 18px}.ec-orderDelivery .ec-orderDelivery__address p{margin:0}.ec-orderConfirm{margin-bottom:20px}.ec-orderConfirm .ec-birth textarea,.ec-orderConfirm .ec-halfInput textarea,.ec-orderConfirm .ec-input textarea,.ec-orderConfirm .ec-numberInput textarea,.ec-orderConfirm .ec-select textarea,.ec-orderConfirm .ec-telInput textarea,.ec-orderConfirm .ec-zipInput textarea{height:96px}.ec-AddAddress{padding:0 10px}.ec-AddAddress .ec-AddAddress__info{margin-bottom:32px;text-align:center;font-size:16px}.ec-AddAddress .ec-AddAddress__add{border-top:1px solid #f4f4f4;padding-top:20px;margin-bottom:20px}.ec-AddAddress .ec-AddAddress__item{display:table;padding:16px;background:#f4f4f4;margin-bottom:16px}.ec-AddAddress .ec-AddAddress__itemThumb{display:table-cell;min-width:160px;width:20%}.ec-AddAddress .ec-AddAddress__itemThumb img{width:100%}.ec-AddAddress .ec-AddAddress__itemtContent{display:table-cell;vertical-align:middle;padding-left:16px;font-size:16px}.ec-AddAddress .ec-AddAddress__itemtTitle{font-weight:700;margin-bottom:10px}.ec-AddAddress .ec-AddAddress__itemtSize{margin-bottom:10px}.ec-AddAddress .ec-AddAddress__select{margin-bottom:5px}.ec-AddAddress .ec-AddAddress__selectAddress{display:inline-block}.ec-AddAddress .ec-AddAddress__selectAddress label{font-size:16px;font-weight:400}.ec-AddAddress .ec-AddAddress__selectAddress select{min-width:100%}.ec-AddAddress .ec-AddAddress__selectNumber{display:inline-block;margin-left:30px}.ec-AddAddress .ec-AddAddress__selectNumber label{font-size:16px;font-weight:400}.ec-AddAddress .ec-AddAddress__selectNumber input{display:inline-block;margin-left:10px;width:80px}.ec-AddAddress .ec-AddAddress__actions .ec-blockBtn--action{margin-bottom:8px}.ec-AddAddress .ec-AddAddress__new{margin-bottom:20px}.ec-historyRole .ec-historyRole__contents{padding-top:1em;padding-bottom:16px;border-top:1px solid #ccc;display:flex;flex-direction:column;color:#525263}.ec-historyRole .ec-historyRole__header{width:100%}.ec-historyRole .ec-historyRole__detail{border-top:1px dotted #ccc;width:100%}.ec-historyRole .ec-historyRole__detail .ec-imageGrid:nth-of-type(1){border-top:none}.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailTitle{margin-bottom:8px;font-size:1.6rem;font-weight:700}.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailPrice{margin-bottom:8px;font-size:1.6rem;font-weight:700}.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailOption{display:inline-block;margin-bottom:8px;margin-right:.5rem;font-size:1.6rem}.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailOption::after{display:inline-block;padding-left:.5rem;content:"/";font-weight:700}.ec-historyListHeader .ec-historyListHeader__date{font-weight:700;font-size:16px}.ec-historyListHeader .ec-historyListHeader__action{margin:16px 0}.ec-historyListHeader .ec-historyListHeader__action a{font-size:12px;font-weight:400}.ec-orderMails .ec-orderMails__item{padding-bottom:10px;border-bottom:1px dotted #ccc}.ec-orderMails .ec-orderMails__time{margin:0}.ec-orderMails .ec-orderMails__body{display:none}.ec-orderMail{padding-bottom:10px;border-bottom:1px dotted #ccc;margin-bottom:16px}.ec-orderMail .ec-orderMail__time{margin:0}.ec-orderMail .ec-orderMail__body{display:none}.ec-orderMail .ec-orderMail__time{margin-bottom:4px}.ec-orderMail .ec-orderMail__link{margin-bottom:4px}.ec-orderMail .ec-orderMail__link a{color:#0092c4;text-decoration:none;cursor:pointer}.ec-orderMail .ec-orderMail__link a:hover{color:#33a8d0}.ec-orderMail .ec-orderMail__close a{color:#0092c4;text-decoration:none;cursor:pointer}.ec-orderMail .ec-orderMail__close a:hover{color:#33a8d0}.ec-addressRole .ec-addressRole__item{border-top:1px dotted #ccc}.ec-addressRole .ec-addressRole__actions{margin-top:32px;padding-bottom:20px;border-bottom:1px dotted #ccc}.ec-addressList .ec-addressList__item{display:table;width:100%;position:relative;border-bottom:1px dotted #ccc}.ec-addressList .ec-addressList__remove{vertical-align:middle;padding:16px;text-align:center}.ec-addressList .ec-addressList__remove .ec-icon img{width:1em;height:1em}.ec-addressList .ec-addressList__address{display:table-cell;vertical-align:middle;padding:16px;margin-right:4em;width:80%}.ec-addressList .ec-addressList__action{position:relative;vertical-align:middle;text-align:right;top:27px;padding-right:10px}.ec-forgotRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-forgotRole:after{content:" ";display:table}.ec-forgotRole:after{clear:both}.ec-forgotRole textarea{font-family:sans-serif}.ec-forgotRole img{max-width:100%}.ec-forgotRole html{box-sizing:border-box}.ec-forgotRole *,.ec-forgotRole ::after,.ec-forgotRole ::before{box-sizing:inherit}.ec-forgotRole img{width:100%}.ec-forgotRole .ec-forgotRole__intro{font-size:16px}.ec-forgotRole .ec-forgotRole__form{margin-bottom:16px}.ec-registerRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-registerRole:after{content:" ";display:table}.ec-registerRole:after{clear:both}.ec-registerRole textarea{font-family:sans-serif}.ec-registerRole img{max-width:100%}.ec-registerRole html{box-sizing:border-box}.ec-registerRole *,.ec-registerRole ::after,.ec-registerRole ::before{box-sizing:inherit}.ec-registerRole img{width:100%}.ec-registerRole .ec-registerRole__actions{padding-top:20px;text-align:center}.ec-registerRole .ec-registerRole__actions p{margin-bottom:16px}.ec-registerRole .ec-blockBtn--action{margin-bottom:16px}.ec-registerCompleteRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-registerCompleteRole:after{content:" ";display:table}.ec-registerCompleteRole:after{clear:both}.ec-registerCompleteRole textarea{font-family:sans-serif}.ec-registerCompleteRole img{max-width:100%}.ec-registerCompleteRole html{box-sizing:border-box}.ec-registerCompleteRole *,.ec-registerCompleteRole ::after,.ec-registerCompleteRole ::before{box-sizing:inherit}.ec-registerCompleteRole img{width:100%}.ec-contactRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-contactRole:after{content:" ";display:table}.ec-contactRole:after{clear:both}.ec-contactRole textarea{font-family:sans-serif}.ec-contactRole img{max-width:100%}.ec-contactRole html{box-sizing:border-box}.ec-contactRole *,.ec-contactRole ::after,.ec-contactRole ::before{box-sizing:inherit}.ec-contactRole img{width:100%}.ec-contactRole .ec-contactRole__actions{padding-top:20px}.ec-contactRole p{margin:16px 0}.ec-contactConfirmRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-contactConfirmRole:after{content:" ";display:table}.ec-contactConfirmRole:after{clear:both}.ec-contactConfirmRole textarea{font-family:sans-serif}.ec-contactConfirmRole img{max-width:100%}.ec-contactConfirmRole html{box-sizing:border-box}.ec-contactConfirmRole *,.ec-contactConfirmRole ::after,.ec-contactConfirmRole ::before{box-sizing:inherit}.ec-contactConfirmRole img{width:100%}.ec-contactConfirmRole .ec-contactConfirmRole__actions{padding-top:20px}.ec-contactConfirmRole .ec-blockBtn--action{margin-bottom:16px}.ec-contactCompleteRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-contactCompleteRole:after{content:" ";display:table}.ec-contactCompleteRole:after{clear:both}.ec-contactCompleteRole textarea{font-family:sans-serif}.ec-contactCompleteRole img{max-width:100%}.ec-contactCompleteRole html{box-sizing:border-box}.ec-contactCompleteRole *,.ec-contactCompleteRole ::after,.ec-contactCompleteRole ::before{box-sizing:inherit}.ec-contactCompleteRole img{width:100%}.ec-customerRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-customerRole:after{content:" ";display:table}.ec-customerRole:after{clear:both}.ec-customerRole textarea{font-family:sans-serif}.ec-customerRole img{max-width:100%}.ec-customerRole html{box-sizing:border-box}.ec-customerRole *,.ec-customerRole ::after,.ec-customerRole ::before{box-sizing:inherit}.ec-customerRole img{width:100%}.ec-customerRole .ec-customerRole__actions{padding-top:20px}.ec-customerRole .ec-blockBtn--action{margin-bottom:10px}.ec-contactConfirmRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-contactConfirmRole:after{content:" ";display:table}.ec-contactConfirmRole:after{clear:both}.ec-contactConfirmRole textarea{font-family:sans-serif}.ec-contactConfirmRole img{max-width:100%}.ec-contactConfirmRole html{box-sizing:border-box}.ec-contactConfirmRole *,.ec-contactConfirmRole ::after,.ec-contactConfirmRole ::before{box-sizing:inherit}.ec-contactConfirmRole img{width:100%}.ec-contactConfirmRole .ec-contactConfirmRole__actions{padding-top:20px}.ec-contactConfirmRole .ec-blockBtn--action{margin-bottom:16px}.ec-contactCompleteRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-contactCompleteRole:after{content:" ";display:table}.ec-contactCompleteRole:after{clear:both}.ec-contactCompleteRole textarea{font-family:sans-serif}.ec-contactCompleteRole img{max-width:100%}.ec-contactCompleteRole html{box-sizing:border-box}.ec-contactCompleteRole *,.ec-contactCompleteRole ::after,.ec-contactCompleteRole ::before{box-sizing:inherit}.ec-contactCompleteRole img{width:100%}@keyframes fadeIn{0%{opacity:0;visibility:hidden}100%{opacity:1;visibility:visible}}@keyframes fadeOut{0%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}.bg-load-overlay{background:rgba(255,255,255,.4);box-sizing:border-box;position:fixed;display:flex;flex-flow:column nowrap;align-items:center;justify-content:space-around;top:0;left:0;width:100%;height:100%;z-index:2147483647;opacity:1}.ec-404Role{font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;height:100vh;background-color:#f2f2f2;text-align:center;box-sizing:border-box}.ec-404Role textarea{font-family:sans-serif}.ec-404Role img{max-width:100%}.ec-404Role html{box-sizing:border-box}.ec-404Role *,.ec-404Role ::after,.ec-404Role ::before{box-sizing:inherit}.ec-404Role img{width:100%}.ec-404Role .ec-404Role__icon img{width:1em;height:1em}.ec-404Role .ec-404Role__title{font-weight:700;font-size:25px}.ec-withdrawRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;text-align:center;padding:0 16px}.ec-withdrawRole:after{content:" ";display:table}.ec-withdrawRole:after{clear:both}.ec-withdrawRole textarea{font-family:sans-serif}.ec-withdrawRole img{max-width:100%}.ec-withdrawRole html{box-sizing:border-box}.ec-withdrawRole *,.ec-withdrawRole ::after,.ec-withdrawRole ::before{box-sizing:inherit}.ec-withdrawRole img{width:100%}.ec-withdrawRole .ec-withdrawRole__title{margin-bottom:16px;font-weight:700;font-size:24px}.ec-withdrawRole .ec-withdrawRole__description{margin-bottom:32px;font-size:16px}.ec-withdrawRole .ec-icon img{width:100px;height:100px}.ec-withdrawConfirmRole .ec-withdrawConfirmRole__cancel{margin-bottom:20px}.ec-withdrawConfirmRole .ec-withdrawConfirmRole__title{margin-bottom:16px;font-weight:700;font-size:24px}.ec-withdrawConfirmRole .ec-withdrawConfirmRole__description{margin-bottom:32px;font-size:16px}.ec-withdrawConfirmRole .ec-icon img{width:100px;height:100px}.ec-userEditCompleteRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px;text-align:center;padding:0 16px}.ec-userEditCompleteRole:after{content:" ";display:table}.ec-userEditCompleteRole:after{clear:both}.ec-userEditCompleteRole textarea{font-family:sans-serif}.ec-userEditCompleteRole img{max-width:100%}.ec-userEditCompleteRole html{box-sizing:border-box}.ec-userEditCompleteRole *,.ec-userEditCompleteRole ::after,.ec-userEditCompleteRole ::before{box-sizing:inherit}.ec-userEditCompleteRole img{width:100%}.ec-userEditCompleteRole .ec-userEditCompleteRole__title{margin-bottom:16px;font-weight:700;font-size:24px}.ec-userEditCompleteRole .ec-userEditCompleteRole__description{margin-bottom:32px;font-size:16px}@media (min-width:768px){.ec-grid2 .ec-grid2__cell{width:50%}.ec-grid2 .ec-grid2__cell2{width:100%}.ec-grid3 .ec-grid3__cell{width:33.33333%}.ec-grid3 .ec-grid3__cell2{width:66.66667%}.ec-grid3 .ec-grid3__cell3{width:100%}.ec-grid4 .ec-grid4__cell{width:25%}.ec-grid6 .ec-grid6__cell{width:16.66667%}.ec-grid6 .ec-grid6__cell2{width:33.33333%}.ec-grid6 .ec-grid6__cell3{width:50%}}@media only screen and (min-width:768px){.ec-pageHeader h1{border-top:none;border-bottom:1px solid #ccc;margin:10px 16px 48px;padding:8px;font-size:32px;font-weight:700}.ec-heading-bold{font-size:18px}.ec-reportHeading{border-top:0;font-size:32px}.ec-reportHeading h1,.ec-reportHeading h2,.ec-reportHeading h3,.ec-reportHeading h4,.ec-reportHeading h5,.ec-reportHeading h6,.ec-reportHeading p{font-size:32px}.ec-price .ec-price__unit{font-size:1em}.ec-price .ec-price__price{font-size:1em}.ec-price .ec-price__tax{font-size:.57em}.ec-borderedDefs dl{flex-wrap:nowrap;padding:15px 0 4px}.ec-borderedDefs dt{padding-top:14px;width:30%}.ec-borderedDefs dd{width:70%;line-height:3}.ec-list-chilled dd,.ec-list-chilled dt{padding:16px 0}.ec-list-chilled dd{padding:16px}.ec-borderedList{border-top:1px dotted #ccc}.ec-blockTopBtn{right:30px;bottom:30px}.ec-birth input,.ec-halfInput input,.ec-input input,.ec-numberInput input,.ec-select input,.ec-telInput input,.ec-zipInput input{margin-bottom:16px}.ec-halfInput input[type=text]{margin-left:15px;width:45%}.ec-birth input,.ec-halfInput input,.ec-input input,.ec-numberInput input,.ec-select input,.ec-telInput input,.ec-zipInput input{margin-bottom:16px}.ec-halfInput input[type=text]{margin-left:15px;width:45%}.ec-select__delivery{display:inline-block}.ec-select__time{display:inline-block}.ec-birth select{margin:0 8px 10px}.ec-required{margin-left:1em}.ec-grid2{display:flex}.ec-grid3{display:flex}.ec-grid4{display:flex}.ec-grid6{display:flex}.ec-off1Grid{display:block;margin:0}.ec-off1Grid .ec-off1Grid__cell{position:relative;min-height:1px;margin-left:8.33333%}.ec-off2Grid{display:flex}.ec-off2Grid .ec-off2Grid__cell{position:relative;min-height:1px;margin-left:16.66667%}.ec-off3Grid{display:flex}.ec-off3Grid .ec-off3Grid__cell{position:relative;min-height:1px;margin-left:25%}.ec-off4Grid{display:flex}.ec-off4Grid .ec-off4Grid__cell{position:relative;min-height:1px;margin-left:33.33333%}.ec-imageGrid .ec-imageGrid__img{padding:10px;width:130px}.ec-login{margin:0 16px;padding:30px 13% 60px}.ec-login .ec-login__link{margin-left:20px}.ec-guest{height:100%;margin:0 16px}.ec-displayB{flex-direction:row}.ec-displayB .ec-displayB__cell{width:31.4466%;margin-bottom:0}.ec-displayC .ec-displayC__cell{width:22.8775%}.ec-displayD{box-sizing:border-box;flex-wrap:nowrap}.ec-displayD .ec-displayD__cell{width:14.3083%;margin-bottom:16px}.ec-topicpath{padding:30px 0 10px;border:0;font-size:16px}.ec-progress{margin-bottom:30px;padding:0}.ec-progress .ec-progress__number{line-height:42px;width:42px;height:42px;font-size:20px}.ec-cartNaviWrap{position:relative}.ec-cartNavi{display:flex;justify-content:space-between;border-radius:99999px;box-sizing:border-box;padding:12px 17px 10px;width:auto;min-width:140px;height:44px;white-space:nowrap;cursor:pointer;background:#f8f8f8}.ec-cartNavi .ec-cartNavi__badge{display:inline-block;min-width:17px;position:relative;left:0;top:0}.ec-cartNavi .ec-cartNavi__price{display:inline-block;font-size:14px;font-weight:400;vertical-align:middle}.ec-cartNavi.is-active .ec-cartNavi__badge{display:none}.ec-cartNaviIsset{margin-top:10px;min-width:256px;max-width:256px}.ec-cartNaviIsset::before{display:inline-block;content:"";width:0;height:0;border-style:solid;border-width:0 8.5px 10px 8.5px;border-color:transparent transparent #f8f8f8 transparent;position:absolute;top:-9px}.ec-cartNaviNull{margin-top:10px;min-width:256px;max-width:256px}.ec-cartNaviNull::before{display:inline-block;content:"";width:0;height:0;border-style:solid;border-width:0 8.5px 10px 8.5px;border-color:transparent transparent #f8f8f8 transparent;position:absolute;top:-9px}.ec-totalBox .ec-totalBox__price{font-size:24px}.ec-totalBox .ec-totalBox__taxLabel{font-size:14px}.ec-totalBox .ec-totalBox__taxRate{font-size:12px}.ec-news{margin-right:3%}.ec-news{margin-bottom:32px}.ec-news .ec-news__title{padding:16px;text-align:left;font-size:24px}.ec-navlistRole .ec-navlistRole__navlist{flex-wrap:nowrap}.ec-welcomeMsg{padding-left:26px;padding-right:26px}.ec-favoriteRole .ec-favoriteRole__item-image{height:250px}.ec-favoriteRole .ec-favoriteRole__item{width:25%}.ec-mypageRole{padding-left:26px;padding-right:26px}.ec-mypageRole .ec-pageHeader h1{margin:10px 0 48px;padding:8px 0 18px}.ec-layoutRole .ec-layoutRole__mainWithColumn{width:75%}.ec-layoutRole .ec-layoutRole__mainBetweenColumn{width:50%}.ec-layoutRole .ec-layoutRole__left,.ec-layoutRole .ec-layoutRole__right{display:block;width:25%}.ec-headerRole:after{content:" ";display:table}.ec-headerRole:after{clear:both}.ec-headerRole{width:100%}.ec-headerRole:after{content:" ";display:table}.ec-headerRole:after{clear:both}.ec-headerRole .ec-headerRole__navSP{display:none}.ec-headerNaviRole{padding-bottom:40px}.ec-headerNaviRole .ec-headerNaviRole__search{display:inline-block;margin-top:10px}.ec-headerNaviRole .ec-headerNaviRole__search a{color:inherit;text-decoration:none}.ec-headerNaviRole .ec-headerNaviRole__search a:hover{text-decoration:none}.ec-headerNaviRole .ec-headerNaviRole__navSP{display:none}.ec-headerNaviRole .ec-headerNaviRole__navSP a{color:inherit;text-decoration:none}.ec-headerNaviRole .ec-headerNaviRole__navSP a:hover{text-decoration:none}.ec-headerNavSP{display:none}.ec-headerTitle .ec-headerTitle__title a{font-size:40px}.ec-headerTitle .ec-headerTitle__subtitle{font-size:16px;margin-bottom:10px}.ec-headerNav .ec-headerNav__itemIcon{margin-right:0;font-size:20px}.ec-headerNav .ec-headerNav__itemLink{display:inline-block}.ec-headerSearch .ec-headerSearch__category{float:left;width:43%}.ec-headerSearch .ec-headerSearch__category .ec-select select{max-width:165px;height:36px}.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search{border-top-right-radius:inherit;border-top-left-radius:50px;border-bottom-left-radius:50px}.ec-headerSearch .ec-headerSearch__keyword{float:right;width:57%;border-bottom-left-radius:inherit;border-top-right-radius:50px;border-bottom-right-radius:50px}.ec-categoryNaviRole{display:block;width:100%}.ec-categoryNaviRole a{color:inherit;text-decoration:none}.ec-categoryNaviRole a:hover{text-decoration:none}.ec-itemNav__nav{display:inline-block}.ec-itemNav__nav li{float:left;width:auto}.ec-itemNav__nav li a{text-align:center;border-bottom:none}.ec-itemNav__nav li ul{display:block;z-index:100;position:absolute}.ec-itemNav__nav li ul li{overflow:hidden;height:0}.ec-itemNav__nav>li:hover>ul>li{overflow:visible;height:auto}.ec-itemNav__nav li ul li ul:before{content:"\f054";font-family:"Font Awesome 5 Free";font-weight:900;font-size:12px;color:#fff;position:absolute;top:19px;right:auto;left:-20px}.ec-itemNav__nav li ul li:hover>ul>li{overflow:visible;height:auto;width:auto}.ec-drawerRole{display:none}.ec-drawerRoleClose{display:none}.ec-drawerRole.is_active{display:none}.ec-drawerRoleClose.is_active{display:none}.ec-overlayRole{display:none}.have_curtain .ec-overlayRole{display:none}.ec-footerRole{padding-top:40px;margin-top:100px}.ec-footerRole .ec-footerRole__inner{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-footerRole .ec-footerRole__inner:after{content:" ";display:table}.ec-footerRole .ec-footerRole__inner:after{clear:both}.ec-footerRole .ec-footerRole__inner textarea{font-family:sans-serif}.ec-footerRole .ec-footerRole__inner img{max-width:100%}.ec-footerRole .ec-footerRole__inner html{box-sizing:border-box}.ec-footerRole .ec-footerRole__inner *,.ec-footerRole .ec-footerRole__inner ::after,.ec-footerRole .ec-footerRole__inner ::before{box-sizing:inherit}.ec-footerRole .ec-footerRole__inner img{width:100%}.ec-footerNavi .ec-footerNavi__link{display:inline-block}.ec-footerNavi .ec-footerNavi__link a{display:inline-block;border-bottom:none;margin:0 10px;padding:0;text-decoration:underline}.ec-footerTitle{padding:50px 0 80px}.ec-footerTitle .ec-footerTitle__logo a{font-size:24px}.ec-footerTitle .ec-footerTitle__copyright{font-size:12px}.ec-sliderItemRole .item_nav{display:flex;justify-content:flex-start;flex-wrap:wrap;margin-bottom:0}.ec-eyecatchRole{flex-wrap:nowrap}.ec-eyecatchRole .ec-eyecatchRole__image{order:2}.ec-eyecatchRole .ec-eyecatchRole__intro{padding-right:5%;order:1}.ec-eyecatchRole .ec-eyecatchRole__introEnTitle{margin-top:45px}.ec-eyecatchRole .ec-eyecatchRole__introTitle{margin-bottom:1em;font-size:26px}.ec-eyecatchRole .ec-eyecatchRole__introDescriptiron{margin-bottom:30px}.ec-blockBtn--top{max-width:260px}.ec-topicRole{padding:60px 0}.ec-topicRole .ec-topicRole__list{flex-wrap:nowrap}.ec-topicRole .ec-topicRole__listItem{width:calc(100% / 2)}.ec-topicRole .ec-topicRole__listItem:not(:last-of-type){margin-right:30px}.ec-topicRole .ec-topicRole__listItemTitle{margin-top:1em}.ec-newItemRole{padding:60px 0}.ec-newItemRole .ec-newItemRole__list{flex-wrap:nowrap}.ec-newItemRole .ec-newItemRole__listItem{margin-bottom:15px;width:calc(100% / 4)}.ec-newItemRole .ec-newItemRole__listItem:not(:last-of-type){margin-right:30px}.ec-newItemRole .ec-newItemRole__listItem:nth-child(odd){margin-right:30px}.ec-newItemRole .ec-newItemRole__listItemTitle{margin:20px 0 10px}.ec-categoryRole{padding:60px 0}.ec-categoryRole .ec-categoryRole__list{flex-wrap:nowrap}.ec-categoryRole .ec-categoryRole__listItem{width:calc(100% / 3)}.ec-categoryRole .ec-categoryRole__listItem:not(:last-of-type){margin-right:30px}.ec-newsRole{padding:60px 0 0}.ec-newsRole .ec-newsRole__news{border:16px solid #f8f8f8;padding:20px 30px}.ec-newsRole .ec-newsRole__newsItem:last-of-type{margin-bottom:0}.ec-newsRole .ec-newsRole__newsItem{padding:20px 0}.ec-newsRole .ec-newsRole__newsHeading{display:flex}.ec-newsRole .ec-newsRole__newsDate{display:inline-block;margin:0;min-width:120px;font-size:14px}.ec-newsRole .ec-newsRole__newsColumn{display:inline-flex;min-width:calc(100% - 120px)}.ec-newsRole .ec-newsRole__newsTitle{margin-bottom:0;line-height:1.8}.ec-newsRole .ec-newsRole__newsDescription{margin:20px 0 0;line-height:1.8}.ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription{margin:20px 0 0}.ec-searchnavRole{margin:0 auto;padding-left:20px;padding-right:20px;box-sizing:border-box;font-size:16px;line-height:1.4;color:#525263;-webkit-text-size-adjust:100%;width:100%;max-width:1130px}.ec-searchnavRole:after{content:" ";display:table}.ec-searchnavRole:after{clear:both}.ec-searchnavRole textarea{font-family:sans-serif}.ec-searchnavRole img{max-width:100%}.ec-searchnavRole html{box-sizing:border-box}.ec-searchnavRole *,.ec-searchnavRole ::after,.ec-searchnavRole ::before{box-sizing:inherit}.ec-searchnavRole img{width:100%}.ec-searchnavRole .ec-searchnavRole__infos{padding-left:0;padding-right:0;border-top:1px solid #ccc;padding-top:16px;flex-direction:row}.ec-searchnavRole .ec-searchnavRole__counter{margin-bottom:0;width:50%}.ec-searchnavRole .ec-searchnavRole__actions{width:50%}.ec-shelfGrid{margin-left:-16px;margin-right:-16px}.ec-shelfGrid .ec-shelfGrid__item-image{height:250px}.ec-shelfGrid .ec-shelfGrid__item{padding:0 16px;width:25%}.ec-shelfGrid .ec-shelfGrid__item:nth-child(odd){padding:0 16px}.ec-shelfGrid .ec-shelfGrid__item:nth-child(even){padding:0 16px}.ec-shelfGridCenter{margin-left:-16px;margin-right:-16px}.ec-shelfGridCenter .ec-shelfGridCenter__item-image{height:250px}.ec-shelfGridCenter .ec-shelfGridCenter__item{padding:0 16px;width:25%}.ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(odd){padding:0 16px}.ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even){padding:0 16px}.ec-modal .ec-modal-wrap{padding:40px 10px;width:50%;margin:20px auto}.ec-productRole .ec-productRole__img{margin-right:16px;margin-bottom:0}.ec-productRole .ec-productRole__profile{margin-left:16px}.ec-productRole .ec-productRole__title .ec-headingTitle{font-size:32px}.ec-productRole .ec-productRole__price{padding:14px 0;border-bottom:1px dotted #ccc}.ec-productRole .ec-productRole__actions .ec-select select{min-width:350px;max-width:350px}.ec-productRole .ec-productRole__btn{width:60%;margin-bottom:16px;min-width:350px}.ec-cartRole .ec-cartRole__totalText{margin-bottom:30px;padding:0}.ec-cartRole .ec-cartRole__cart{margin:0 10%}.ec-cartRole .ec-cartRole__actions{width:20%;margin-right:10%}.ec-cartRole .ec-cartRole__totalAmount{font-size:24px}.ec-cartTable{border-top:none}.ec-cartHeader{display:table-row}.ec-cartRow .ec-cartRow__delColumn{width:8.3333333%}.ec-cartRow .ec-cartRow__delColumn .ec-icon img{width:1em;height:1em}.ec-cartRow .ec-cartRow__contentColumn{display:table-cell}.ec-cartRow .ec-cartRow__img{display:inline-block;min-width:80px;max-width:100px;padding-right:0}.ec-cartRow .ec-cartRow__summary{display:inline-block;margin-left:20px;vertical-align:middle}.ec-cartRow .ec-cartRow__summary .ec-cartRow__sutbtotalSP{display:none}.ec-cartRow .ec-cartRow__amountColumn{width:16.66666667%}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amount{display:block}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP{display:none}.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpDown{display:block}.ec-cartRow .ec-cartRow__subtotalColumn{display:table-cell}.ec-orderRole{margin-top:20px;flex-direction:row}.ec-orderRole .ec-orderRole__detail{padding:0 16px;width:66.66666%}.ec-orderRole .ec-orderRole__summary{width:33.33333%;padding:0 16px}.ec-orderRole .ec-orderRole__summary .ec-inlineBtn{display:none}.ec-orderRole .ec-borderedList{border-top:none}.ec-orderConfirm{margin-bottom:0}.ec-AddAddress{margin:0 10%}.ec-AddAddress .ec-AddAddress__selectAddress select{min-width:350px}.ec-historyRole .ec-historyRole__contents{flex-direction:row}.ec-historyRole .ec-historyRole__header{width:33.3333%}.ec-historyRole .ec-historyRole__detail{width:66.6666%;border-top:none}.ec-historyListHeader .ec-historyListHeader__date{font-weight:700;font-size:20px}.ec-historyListHeader .ec-historyListHeader__action a{font-size:14px}.ec-registerRole .ec-registerRole__actions{text-align:left}.ec-customerRole .ec-blockBtn--action{margin-bottom:16px}.ec-userEditCompleteRole .ec-userEditCompleteRole__title{font-size:32px}}@media only screen and (min-width:768px) and (min-width:768px){.ec-off1Grid{display:flex}.ec-off1Grid .ec-off1Grid__cell{width:83.33333%}.ec-off2Grid .ec-off2Grid__cell{width:66.66667%}.ec-off3Grid .ec-off3Grid__cell{width:50%}.ec-off4Grid .ec-off4Grid__cell{width:33.33333%}} /*# sourceMappingURL=style.min.css.map */ \ No newline at end of file diff --git a/html/template/default/assets/css/style.min.css.map b/html/template/default/assets/css/style.min.css.map index b1d4b45d829..ba5d33b63f2 100644 --- a/html/template/default/assets/css/style.min.css.map +++ b/html/template/default/assets/css/style.min.css.map @@ -1 +1 @@ -{"version":3,"sources":["../../node_modules/normalize.css/normalize.css","default/assets/scss/style.scss","default/assets/scss/component/_1.1.heading.scss","default/assets/scss/style.css","default/assets/scss/component/_1.2.typo.scss","default/assets/scss/component/_1.3.list.scss","default/assets/scss/component/_2.1.buttonsize.scss","default/assets/scss/mixins/_btn.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_buttons.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_tab-focus.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_vendor-prefixes.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_opacity.scss","default/assets/scss/component/_2.2.closebutton.scss","default/assets/scss/component/_2.3.otherbutton.scss","default/assets/scss/component/_3.1.inputText.scss","default/assets/scss/mixins/_forms.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_forms.scss","default/assets/scss/component/_3.2.inputMisc.scss","default/assets/scss/mixins/_projects.scss","default/assets/scss/component/_3.3.form.scss","default/assets/scss/component/_4.1.icon.scss","default/assets/scss/component/_5.1.grid.scss","default/assets/scss/component/_5.2.layout.scss","default/assets/scss/component/_6.1.login.scss","default/assets/scss/component/_7.1.itembanner.scss","default/assets/scss/component/_7.2.search.scss","default/assets/scss/mixins/_animation.scss","default/assets/scss/component/_7.3.cart.scss","default/assets/scss/mixins/_clearfix.scss","default/assets/scss/component/_8.1.info.scss","default/assets/scss/component/_9.1.mypage.scss","default/assets/scss/mixins/_media.scss","default/assets/scss/project/_11.1.role.scss","default/assets/scss/project/_11.2.header.scss","default/assets/scss/project/_11.3.footer.scss","default/assets/scss/project/_12.1.slider.scss","default/assets/scss/project/_12.2.eyecatch.scss","default/assets/scss/project/_12.3.button.scss","default/assets/scss/project/_12.4.heading.scss","default/assets/scss/project/_12.5.topics.scss","default/assets/scss/project/_12.6.newItem.scss","default/assets/scss/project/_12.7.category.scss","default/assets/scss/project/_12.8.news.scss","default/assets/scss/project/_13.1.searchnav.scss","default/assets/scss/project/_13.2.shelf.scss","default/assets/scss/project/_13.4.cartModal.scss","default/assets/scss/project/_14.1.product.scss","default/assets/scss/project/_15.1.cart.scss","default/assets/scss/project/_15.2.order.scss","default/assets/scss/project/_16.1.history.scss","default/assets/scss/project/_16.2.historyDetail.scss","default/assets/scss/project/_17.1.address.scss","default/assets/scss/project/_18.1.password.scss","default/assets/scss/project/_19.1.register.scss","default/assets/scss/project/_19.2.contact.scss","default/assets/scss/project/_19.3.customer.scss","default/assets/scss/project/_20.1.404.scss","default/assets/scss/project/_21.1.withdraw.scss","default/assets/scss/project/_22.1.editComplete.scss"],"names":[],"mappings":"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","file":"default/assets/css/style.min.css","sourcesContent":[null,"@import \"/node_modules/normalize.css/normalize.css\";\n\nbody {\n font-family: Roboto, \"游ゴシック\", YuGothic, \"Yu Gothic\", \"ヒラギノ角ゴ ProN W3\", \"Hiragino Kaku Gothic ProN\", Arial, \"メイリオ\", Meiryo, sans-serif;\n color:#525263;\n transition: z-index 0ms 5.28455ms;\n background: #f6f6f6;\n margin: 0;\n}\na {\n text-decoration: none;\n}\n\npre {\n background-color: transparent;\n border: none;\n padding: 16px 0;\n}\np {\n -webkit-margin-before: 0;\n -webkit-margin-after: 0;\n}\n@import \"component/1.1.heading\";\n@import \"component/1.2.typo\";\n@import \"component/1.3.list\";\n@import \"component/2.1.buttonsize\";\n@import \"component/2.2.closebutton.scss\";\n@import \"component/2.3.otherbutton\";\n@import \"component/3.1.inputText\";\n@import \"component/3.2.inputMisc\";\n@import \"component/3.3.form\";\n@import \"component/4.1.icon\";\n@import \"component/5.1.grid\";\n@import \"component/5.2.layout\";\n@import \"component/6.1.login\";\n@import \"component/7.1.itembanner\";\n@import \"component/7.2.search\";\n@import \"component/7.3.cart\";\n@import \"component/8.1.info\";\n@import \"component/8.2.banner\";\n@import \"component/9.1.mypage\";\n@import \"project/11.1.role\";\n@import \"project/11.2.header\";\n@import \"project/11.3.footer\";\n@import \"project/12.1.slider\";\n@import \"project/12.2.eyecatch\";\n@import \"project/12.3.button\";\n@import \"project/12.4.heading\";\n@import \"project/12.5.topics\";\n@import \"project/12.6.newItem\";\n@import \"project/12.7.category\";\n@import \"project/12.8.news\";\n@import \"project/13.1.searchnav\";\n@import \"project/13.2.shelf\";\n@import \"project/13.3.pager\";\n@import \"project/13.4.cartModal\";\n@import \"project/14.1.product\";\n@import \"project/15.1.cart\";\n@import \"project/15.2.order\";\n@import \"project/16.1.history\";\n@import \"project/16.2.historyDetail\";\n@import \"project/17.1.address\";\n@import \"project/18.1.password\";\n@import \"project/19.1.register\";\n@import \"project/19.2.contact\";\n@import \"project/19.3.customer\";\n@import \"project/20.1.404\";\n@import \"project/21.1.withdraw\";\n@import \"project/22.1.editComplete\";\n","@import \"../mixins/media\";\n@import \"../mixins/variables\";\n/*\n見出し\n\nページ内で見出しとして機能する要素のスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.1\n*/\n\n/*\n見出し\n\n商品紹介等で利用される、一般的な見出しのスタイルです。\n\nex [商品詳細ページ 商品見出し部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-headingTitle マトリョーシカ\n\nStyleguide 1.1.1\n*/\n.ec-headingTitle{\n margin: 0 0 8px;\n font-size: 32px;\n font-weight: normal;\n color: #525263;\n}\n\n/*\nページヘッダ\n\n各種ページで用いられるページヘッダのデザインです。\n\nex [利用規約ページ ページヘッダ部](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-pageHeader\n h1 利用規約\n\nStyleguide 1.1.2\n*/\n.ec-pageHeader h1{\n margin: 0 0 8px;\n border-bottom: 1px dotted #ccc;\n border-top: 1px solid #ccc;\n padding: 8px 0 12px;\n font-size: 16px;\n font-weight: bold;\n @include media_desktop {\n border-top: none;\n border-bottom: 1px solid #ccc;\n margin: 10px 16px 48px;\n padding: 8px;\n font-size: 32px;\n font-weight: bold;\n }\n}\n\n\n/*\nサブ見出し\n\n利用規約など、文字主体のページで用いられるサブ見出しです。\n\nex [利用規約ページ サブ見出し部分](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-heading 第1条 (会員)\n\nStyleguide 1.1.3\n*/\n\n.ec-heading{\n margin: 24px 0;\n}\n\n\n\n/*\nサブ見出し(太字)\n\n文字主体のページで用いられるサブ見出しの太字のスタイルです。\n\nex [プライバシーポリシー サブ見出し部分](http://demo3.ec-cube.net/help/privacy)\n\nMarkup:\n.ec-heading-bold 個人情報の定義\n\nStyleguide 1.1.4\n*/\n\n.ec-heading-bold {\n margin: 16px 0;\n font-size: 16px;\n font-weight: bold;\n @include media_desktop {\n font-size: 18px;\n }\n}\n\n/*\n背景付き見出し\n\nマイページ注文履歴等で用いられる背景付きの見出しです。\n\nex [ご注文履歴詳細 背景付き見出し部分](http://demo3.ec-cube.net/mypage/history/1063)\n\nMarkup:\n.ec-rectHeading\n h2 配送情報\n.ec-rectHeading\n h2 お支払について\n\nStyleguide 1.1.5\n*/\n.ec-rectHeading{\n h1, h2, h3,\n h4, h5, h6{\n background: $clrGray;\n padding: 8px 12px;\n font-size: 20px;\n font-weight: bold;\n }\n\n}\n\n\n/*\nメッセージ見出し\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用される見出しのスタイルです。\n\nex [注文完了 ログイン後、カートに商品を入れ注文完了まで行う](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\n\nStyleguide 1.1.6\n*/\n.ec-reportHeading{\n width: 100%;\n border-top: 1px dotted #ccc;\n margin: 20px 0 30px;\n padding: 0;\n text-align: center;\n font-size: 24px;\n font-weight: bold;\n @include media_desktop {\n border-top: 0;\n font-size: 32px;\n }\n h1, h2, h3,\n h4, h5, h6,p {\n font-weight: bold;\n font-size: 24px;\n @include media_desktop {\n font-size: 32px;\n }\n }\n}\n","@charset \"UTF-8\";\n@import url(/node_modules/normalize.css/normalize.css);\nbody {\n font-family: Roboto, \"游ゴシック\", YuGothic, \"Yu Gothic\", \"ヒラギノ角ゴ ProN W3\", \"Hiragino Kaku Gothic ProN\", Arial, \"メイリオ\", Meiryo, sans-serif;\n color: #525263;\n transition: z-index 0ms 5.28455ms;\n background: #f6f6f6;\n margin: 0; }\n\na {\n text-decoration: none; }\n\npre {\n background-color: transparent;\n border: none;\n padding: 16px 0; }\n\np {\n -webkit-margin-before: 0;\n -webkit-margin-after: 0; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n見出し\n\nページ内で見出しとして機能する要素のスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.1\n*/\n/*\n見出し\n\n商品紹介等で利用される、一般的な見出しのスタイルです。\n\nex [商品詳細ページ 商品見出し部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-headingTitle マトリョーシカ\n\nStyleguide 1.1.1\n*/\n.ec-headingTitle {\n margin: 0 0 8px;\n font-size: 32px;\n font-weight: normal;\n color: #525263; }\n\n/*\nページヘッダ\n\n各種ページで用いられるページヘッダのデザインです。\n\nex [利用規約ページ ページヘッダ部](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-pageHeader\n h1 利用規約\n\nStyleguide 1.1.2\n*/\n.ec-pageHeader h1 {\n margin: 0 0 8px;\n border-bottom: 1px dotted #ccc;\n border-top: 1px solid #ccc;\n padding: 8px 0 12px;\n font-size: 16px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-pageHeader h1 {\n border-top: none;\n border-bottom: 1px solid #ccc;\n margin: 10px 16px 48px;\n padding: 8px;\n font-size: 32px;\n font-weight: bold; } }\n\n/*\nサブ見出し\n\n利用規約など、文字主体のページで用いられるサブ見出しです。\n\nex [利用規約ページ サブ見出し部分](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-heading 第1条 (会員)\n\nStyleguide 1.1.3\n*/\n.ec-heading {\n margin: 24px 0; }\n\n/*\nサブ見出し(太字)\n\n文字主体のページで用いられるサブ見出しの太字のスタイルです。\n\nex [プライバシーポリシー サブ見出し部分](http://demo3.ec-cube.net/help/privacy)\n\nMarkup:\n.ec-heading-bold 個人情報の定義\n\nStyleguide 1.1.4\n*/\n.ec-heading-bold {\n margin: 16px 0;\n font-size: 16px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-heading-bold {\n font-size: 18px; } }\n\n/*\n背景付き見出し\n\nマイページ注文履歴等で用いられる背景付きの見出しです。\n\nex [ご注文履歴詳細 背景付き見出し部分](http://demo3.ec-cube.net/mypage/history/1063)\n\nMarkup:\n.ec-rectHeading\n h2 配送情報\n.ec-rectHeading\n h2 お支払について\n\nStyleguide 1.1.5\n*/\n.ec-rectHeading h1, .ec-rectHeading h2, .ec-rectHeading h3,\n.ec-rectHeading h4, .ec-rectHeading h5, .ec-rectHeading h6 {\n background: #F3F3F3;\n padding: 8px 12px;\n font-size: 20px;\n font-weight: bold; }\n\n/*\nメッセージ見出し\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用される見出しのスタイルです。\n\nex [注文完了 ログイン後、カートに商品を入れ注文完了まで行う](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\n\nStyleguide 1.1.6\n*/\n.ec-reportHeading {\n width: 100%;\n border-top: 1px dotted #ccc;\n margin: 20px 0 30px;\n padding: 0;\n text-align: center;\n font-size: 24px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-reportHeading {\n border-top: 0;\n font-size: 32px; } }\n .ec-reportHeading h1, .ec-reportHeading h2, .ec-reportHeading h3,\n .ec-reportHeading h4, .ec-reportHeading h5, .ec-reportHeading h6, .ec-reportHeading p {\n font-weight: bold;\n font-size: 24px; }\n @media only screen and (min-width: 768px) {\n .ec-reportHeading h1, .ec-reportHeading h2, .ec-reportHeading h3,\n .ec-reportHeading h4, .ec-reportHeading h5, .ec-reportHeading h6, .ec-reportHeading p {\n font-size: 32px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n文字装飾\n\n文字装飾をするためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.2\n*/\n/*\nテキストリンク\n\nテキストリンクのスタイルです。\n\nMarkup:\na(href=\"#\").ec-link さくらのクラウド\n\nStyleguide 1.2.1\n*/\n.ec-link {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n .ec-link:hover {\n color: #33A8D0;\n text-decoration: none; }\n\n/*\nテキスト(太字)\n\nテキストを太くするためのスタイルです。\n\nMarkup:\np.ec-font-bold この季節にぴったりな商品をご用意しました\n\nStyleguide 1.2.2\n*/\n.ec-font-bold {\n font-weight: bold; }\n\n/*\nテキスト(グレー)\n\nテキストをグレーにするためのスタイルです。\n\nMarkup:\np.ec-color-grey 青色が美しい職人が仕上げた吹きガラス\n\nStyleguide 1.2.3\n*/\n.ec-color-grey {\n color: #9a947e; }\n\n/*\nテキスト(赤)\n\nテキストを赤にするためのスタイルです。\n\nMarkup:\np.ec-color-red ¥ 2,728 税込\np.ec-color-accent ¥ 2,728 税込\n\nStyleguide 1.2.4\n*/\n.ec-color-red {\n color: #DE5D50; }\n\n.ec-color-accent {\n color: #DE5D50; }\n\n/*\nフォントサイズ\n\nフォントサイズを指定するためのスタイルです。\n\nMarkup:\n.ec-font-size-1 さわやかな日差しが過ごしやすい季節\n.ec-font-size-2 さわやかな日差しが過ごしやすい季節\n.ec-font-size-3 さわやかな日差しが過ごしやすい季節\n.ec-font-size-4 さわやかな日差しが過ごしやすい季節\n.ec-font-size-5 さわやかな日差しが過ごしやすい季節\n.ec-font-size-6 さわやかな日差しが過ごしやすい季節\n\n\nStyleguide 1.2.5\n*/\n.ec-font-size-1 {\n font-size: 12px; }\n\n.ec-font-size-2 {\n font-size: 14px; }\n\n.ec-font-size-3 {\n font-size: 16px; }\n\n.ec-font-size-4 {\n font-size: 20px; }\n\n.ec-font-size-5 {\n font-size: 32px; }\n\n.ec-font-size-6 {\n font-size: 40px; }\n\n/*\nテキスト水平位置\n\nテキストをセンタリングするためのスタイルです。\n\nMarkup:\np.ec-text-ac さわやかな日差しが過ごしやすい季節\n\nStyleguide 1.2.6\n*/\n.ec-text-ac {\n text-align: center; }\n\n/*\n価格テキスト\n\n価格を表示するテキストです。\n\n価格文字にスペースを取るほか、税込み等の表示を小さくする効果もあります。\n\nspanを用いたインライン要素として利用します。\n\nMarkup:\ndiv(style=\"color:#DE5D50;font-size:28px\")\n span.ec-price\n span.ec-price__unit ¥\n span.ec-price__price 1,280\n span.ec-price__tax 税込\n\nStyleguide 1.2.7\n*/\n.ec-price .ec-price__unit {\n font-size: 18px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-price .ec-price__unit {\n font-size: 1em; } }\n\n.ec-price .ec-price__price {\n display: inline-block;\n padding: 0 .3em;\n font-size: 18px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-price .ec-price__price {\n font-size: 1em; } }\n\n.ec-price .ec-price__tax {\n font-size: 12px; }\n @media only screen and (min-width: 768px) {\n .ec-price .ec-price__tax {\n font-size: 0.57em; } }\n\n/*\nテキストの位置\n\nテキストや、入れ子にしたインライン要素を\n「左揃え」「中央揃え」「右揃え」に設定することができます。\n\nMarkup:\nh3 左揃え\np.text-left\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 中央揃え\np.text-center\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 右揃え\np.text-right\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\n\nStyleguide 1.2.8\n*/\n.text-left {\n text-align: left; }\n\n.text-center {\n text-align: center; }\n\n.text-right {\n text-align: right; }\n\n/*\nメッセージテキスト\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用されるテキストのスタイルです。\n\nex [注文完了 (ログイン後、カートに商品を入れ注文完了まで行う)](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\np.ec-reportDescription\n | ただいま、ご注文の確認メールをお送りさせていただきました。\n br\n | 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n br\n | 今後ともご愛顧賜りますようよろしくお願い申し上げます。\n\n\nStyleguide 1.2.9\n*/\n.ec-reportDescription {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px;\n line-height: 1.4; }\n\n/*\nテキスト下部のスペース\n\nテキストの下に余白を追加することができます。 .ec-para-normalで16pxの余白をつけることができます。\n\nMarkup:\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n\nStyleguide 1.2.10\n*/\n.ec-para-normal {\n margin-bottom: 16px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nリスト\n\nシンプルなリストを構成するためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.3\n*/\n/*\n水平定義リスト\n\nシンプルな定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 水平定義リスト部分](http://demo3.ec-cube.net/help/about)\n\nMarkup:\ndl.ec-definitions\n dt 店名\n dd EC-CUBE3 DEMO SHOP\ndl.ec-definitions\n dt 会社名\n dd EC-CUBE3\ndl.ec-definitions--soft\n dt 所在地\n dd 〒 550-0001\n\nStyleguide 1.3.1\n*/\n.ec-definitions, .ec-definitions--soft {\n margin: 5px 0;\n display: block; }\n .ec-definitions dt, .ec-definitions--soft dt, .ec-definitions dd, .ec-definitions--soft dd {\n display: inline-block;\n margin: 0; }\n .ec-definitions dt, .ec-definitions--soft dt {\n font-weight: bold; }\n\n.ec-definitions--soft dt {\n font-weight: normal; }\n\n/*\n下線つき定義リスト\n\n線が添えられた定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 下線つき定義リスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt 店名\n dd EC-CUBE3 DEMO SHOP\n dl\n dt 会社名\n dd EC-CUBE3\n dl\n dt 所在地\n dd 〒550 - 0001\n\nStyleguide 1.3.2\n*/\n.ec-borderedDefs {\n width: 100%;\n border-top: 1px dotted #ccc;\n margin-bottom: 16px; }\n .ec-borderedDefs dl {\n display: flex;\n border-bottom: 1px dotted #ccc;\n margin: 0;\n padding: 10px 0 0;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-borderedDefs dl {\n flex-wrap: nowrap;\n padding: 15px 0 4px; } }\n .ec-borderedDefs dt, .ec-borderedDefs dd {\n padding: 0; }\n .ec-borderedDefs dt {\n font-weight: normal;\n width: 100%;\n padding-top: 0; }\n @media only screen and (min-width: 768px) {\n .ec-borderedDefs dt {\n padding-top: 14px;\n width: 30%; } }\n .ec-borderedDefs dd {\n padding: 0;\n width: 100%;\n line-height: 2.5; }\n @media only screen and (min-width: 768px) {\n .ec-borderedDefs dd {\n width: 70%;\n line-height: 3; } }\n .ec-borderedDefs p {\n line-height: 1.4; }\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0; }\n .ec-list-chilled dt, .ec-list-chilled dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-list-chilled dt, .ec-list-chilled dd {\n padding: 16px 0; } }\n .ec-list-chilled dt {\n width: 30%; }\n .ec-list-chilled dd {\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-list-chilled dd {\n padding: 16px; } }\n\n/*\nボーダーリスト\n\n線が添えられたリストを表示します。\n\nex [当サイトについて ボーダーリスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\nul.ec-borderedList\n li: p lorem\n li: p lorem\n li: p lorem\n\n\nStyleguide 1.3.3\n*/\n.ec-borderedList {\n width: 100%;\n border-top: 0;\n list-style: none;\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-borderedList {\n border-top: 1px dotted #ccc; } }\n .ec-borderedList li {\n border-bottom: 1px dotted #ccc; }\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0; }\n .ec-list-chilled dt, .ec-list-chilled dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 16px 0; }\n .ec-list-chilled dt {\n width: 30%; }\n .ec-list-chilled dd {\n padding: 16px; }\n\n/*\nボタンサイズ\n\nボタンサイズを変更するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.1\n*/\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nex [トップページ ボタン部分](http://demo3.ec-cube.net/)\n\nMarkup:\n.ec-inlineBtn 住所検索\n.ec-inlineBtn--primary もっと見る\n.ec-inlineBtn--action カートに入れる\n.ec-inlineBtn--cancel キャンセル\n\nStyleguide 2.1.1\n*/\n.ec-inlineBtn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #525263;\n background-color: #F5F7F8;\n border-color: #ccc; }\n .ec-inlineBtn:focus, .ec-inlineBtn.focus, .ec-inlineBtn:active:focus, .ec-inlineBtn:active.focus, .ec-inlineBtn.active:focus, .ec-inlineBtn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn:hover, .ec-inlineBtn:focus, .ec-inlineBtn.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn:active, .ec-inlineBtn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn.disabled, .ec-inlineBtn[disabled],\n fieldset[disabled] .ec-inlineBtn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn:focus, .ec-inlineBtn.focus {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #8c8c8c; }\n .ec-inlineBtn:hover {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-inlineBtn:active, .ec-inlineBtn.active,\n .open > .ec-inlineBtn.dropdown-toggle {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-inlineBtn:active:hover, .ec-inlineBtn:active:focus, .ec-inlineBtn:active.focus, .ec-inlineBtn.active:hover, .ec-inlineBtn.active:focus, .ec-inlineBtn.active.focus,\n .open > .ec-inlineBtn.dropdown-toggle:hover,\n .open > .ec-inlineBtn.dropdown-toggle:focus,\n .open > .ec-inlineBtn.dropdown-toggle.focus {\n color: #525263;\n background-color: #c2ced4;\n border-color: #8c8c8c; }\n .ec-inlineBtn:active, .ec-inlineBtn.active,\n .open > .ec-inlineBtn.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn.disabled:hover, .ec-inlineBtn.disabled:focus, .ec-inlineBtn.disabled.focus, .ec-inlineBtn[disabled]:hover, .ec-inlineBtn[disabled]:focus, .ec-inlineBtn[disabled].focus,\n fieldset[disabled] .ec-inlineBtn:hover,\n fieldset[disabled] .ec-inlineBtn:focus,\n fieldset[disabled] .ec-inlineBtn.focus {\n background-color: #F5F7F8;\n border-color: #ccc; }\n .ec-inlineBtn .badge {\n color: #F5F7F8;\n background-color: #525263; }\n .ec-inlineBtn .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-inlineBtn--primary {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #5CB1B1;\n border-color: #5CB1B1; }\n .ec-inlineBtn--primary:focus, .ec-inlineBtn--primary.focus, .ec-inlineBtn--primary:active:focus, .ec-inlineBtn--primary:active.focus, .ec-inlineBtn--primary.active:focus, .ec-inlineBtn--primary.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--primary:hover, .ec-inlineBtn--primary:focus, .ec-inlineBtn--primary.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--primary:active, .ec-inlineBtn--primary.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--primary.disabled, .ec-inlineBtn--primary[disabled],\n fieldset[disabled] .ec-inlineBtn--primary {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--primary:focus, .ec-inlineBtn--primary.focus {\n color: #fff;\n background-color: #479393;\n border-color: #2e6060; }\n .ec-inlineBtn--primary:hover {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-inlineBtn--primary:active, .ec-inlineBtn--primary.active,\n .open > .ec-inlineBtn--primary.dropdown-toggle {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-inlineBtn--primary:active:hover, .ec-inlineBtn--primary:active:focus, .ec-inlineBtn--primary:active.focus, .ec-inlineBtn--primary.active:hover, .ec-inlineBtn--primary.active:focus, .ec-inlineBtn--primary.active.focus,\n .open > .ec-inlineBtn--primary.dropdown-toggle:hover,\n .open > .ec-inlineBtn--primary.dropdown-toggle:focus,\n .open > .ec-inlineBtn--primary.dropdown-toggle.focus {\n color: #fff;\n background-color: #3b7b7b;\n border-color: #2e6060; }\n .ec-inlineBtn--primary:active, .ec-inlineBtn--primary.active,\n .open > .ec-inlineBtn--primary.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--primary.disabled:hover, .ec-inlineBtn--primary.disabled:focus, .ec-inlineBtn--primary.disabled.focus, .ec-inlineBtn--primary[disabled]:hover, .ec-inlineBtn--primary[disabled]:focus, .ec-inlineBtn--primary[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--primary:hover,\n fieldset[disabled] .ec-inlineBtn--primary:focus,\n fieldset[disabled] .ec-inlineBtn--primary.focus {\n background-color: #5CB1B1;\n border-color: #5CB1B1; }\n .ec-inlineBtn--primary .badge {\n color: #5CB1B1;\n background-color: #fff; }\n .ec-inlineBtn--primary .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-inlineBtn--action {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #DE5D50;\n border-color: #DE5D50; }\n .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus, .ec-inlineBtn--action:active:focus, .ec-inlineBtn--action:active.focus, .ec-inlineBtn--action.active:focus, .ec-inlineBtn--action.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--action:hover, .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--action:active, .ec-inlineBtn--action.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--action.disabled, .ec-inlineBtn--action[disabled],\n fieldset[disabled] .ec-inlineBtn--action {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus {\n color: #fff;\n background-color: #d33828;\n border-color: #93271c; }\n .ec-inlineBtn--action:hover {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-inlineBtn--action:active, .ec-inlineBtn--action.active,\n .open > .ec-inlineBtn--action.dropdown-toggle {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-inlineBtn--action:active:hover, .ec-inlineBtn--action:active:focus, .ec-inlineBtn--action:active.focus, .ec-inlineBtn--action.active:hover, .ec-inlineBtn--action.active:focus, .ec-inlineBtn--action.active.focus,\n .open > .ec-inlineBtn--action.dropdown-toggle:hover,\n .open > .ec-inlineBtn--action.dropdown-toggle:focus,\n .open > .ec-inlineBtn--action.dropdown-toggle.focus {\n color: #fff;\n background-color: #b53022;\n border-color: #93271c; }\n .ec-inlineBtn--action:active, .ec-inlineBtn--action.active,\n .open > .ec-inlineBtn--action.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--action.disabled:hover, .ec-inlineBtn--action.disabled:focus, .ec-inlineBtn--action.disabled.focus, .ec-inlineBtn--action[disabled]:hover, .ec-inlineBtn--action[disabled]:focus, .ec-inlineBtn--action[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--action:hover,\n fieldset[disabled] .ec-inlineBtn--action:focus,\n fieldset[disabled] .ec-inlineBtn--action.focus {\n background-color: #DE5D50;\n border-color: #DE5D50; }\n .ec-inlineBtn--action .badge {\n color: #DE5D50;\n background-color: #fff; }\n .ec-inlineBtn--action .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-inlineBtn--cancel {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #525263;\n border-color: #525263; }\n .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus, .ec-inlineBtn--cancel:active:focus, .ec-inlineBtn--cancel:active.focus, .ec-inlineBtn--cancel.active:focus, .ec-inlineBtn--cancel.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--cancel:hover, .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--cancel.disabled, .ec-inlineBtn--cancel[disabled],\n fieldset[disabled] .ec-inlineBtn--cancel {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus {\n color: #fff;\n background-color: #3b3b47;\n border-color: #18181d; }\n .ec-inlineBtn--cancel:hover {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active,\n .open > .ec-inlineBtn--cancel.dropdown-toggle {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-inlineBtn--cancel:active:hover, .ec-inlineBtn--cancel:active:focus, .ec-inlineBtn--cancel:active.focus, .ec-inlineBtn--cancel.active:hover, .ec-inlineBtn--cancel.active:focus, .ec-inlineBtn--cancel.active.focus,\n .open > .ec-inlineBtn--cancel.dropdown-toggle:hover,\n .open > .ec-inlineBtn--cancel.dropdown-toggle:focus,\n .open > .ec-inlineBtn--cancel.dropdown-toggle.focus {\n color: #fff;\n background-color: #2b2b34;\n border-color: #18181d; }\n .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active,\n .open > .ec-inlineBtn--cancel.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--cancel.disabled:hover, .ec-inlineBtn--cancel.disabled:focus, .ec-inlineBtn--cancel.disabled.focus, .ec-inlineBtn--cancel[disabled]:hover, .ec-inlineBtn--cancel[disabled]:focus, .ec-inlineBtn--cancel[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--cancel:hover,\n fieldset[disabled] .ec-inlineBtn--cancel:focus,\n fieldset[disabled] .ec-inlineBtn--cancel.focus {\n background-color: #525263;\n border-color: #525263; }\n .ec-inlineBtn--cancel .badge {\n color: #525263;\n background-color: #fff; }\n .ec-inlineBtn--cancel .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n/*\nブロックボタン(全幅)\n\nボタンサイズは em で指定するため、テキストサイズの変更でボタンサイズを変更できます。\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\np: .ec-blockBtn 住所検索\np: .ec-blockBtn--primary もっと見る\np: .ec-blockBtn--action カートに入れる\np: .ec-blockBtn--cancel キャンセル\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #525263;\n background-color: #F5F7F8;\n border-color: #ccc;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn:focus, .ec-blockBtn.focus, .ec-blockBtn:active:focus, .ec-blockBtn:active.focus, .ec-blockBtn.active:focus, .ec-blockBtn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn:hover, .ec-blockBtn:focus, .ec-blockBtn.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn:active, .ec-blockBtn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn.disabled, .ec-blockBtn[disabled],\n fieldset[disabled] .ec-blockBtn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn:focus, .ec-blockBtn.focus {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #8c8c8c; }\n .ec-blockBtn:hover {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-blockBtn:active, .ec-blockBtn.active,\n .open > .ec-blockBtn.dropdown-toggle {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-blockBtn:active:hover, .ec-blockBtn:active:focus, .ec-blockBtn:active.focus, .ec-blockBtn.active:hover, .ec-blockBtn.active:focus, .ec-blockBtn.active.focus,\n .open > .ec-blockBtn.dropdown-toggle:hover,\n .open > .ec-blockBtn.dropdown-toggle:focus,\n .open > .ec-blockBtn.dropdown-toggle.focus {\n color: #525263;\n background-color: #c2ced4;\n border-color: #8c8c8c; }\n .ec-blockBtn:active, .ec-blockBtn.active,\n .open > .ec-blockBtn.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn.disabled:hover, .ec-blockBtn.disabled:focus, .ec-blockBtn.disabled.focus, .ec-blockBtn[disabled]:hover, .ec-blockBtn[disabled]:focus, .ec-blockBtn[disabled].focus,\n fieldset[disabled] .ec-blockBtn:hover,\n fieldset[disabled] .ec-blockBtn:focus,\n fieldset[disabled] .ec-blockBtn.focus {\n background-color: #F5F7F8;\n border-color: #ccc; }\n .ec-blockBtn .badge {\n color: #F5F7F8;\n background-color: #525263; }\n .ec-blockBtn .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-blockBtn--primary {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #5CB1B1;\n border-color: #5CB1B1;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--primary:focus, .ec-blockBtn--primary.focus, .ec-blockBtn--primary:active:focus, .ec-blockBtn--primary:active.focus, .ec-blockBtn--primary.active:focus, .ec-blockBtn--primary.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--primary:hover, .ec-blockBtn--primary:focus, .ec-blockBtn--primary.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--primary:active, .ec-blockBtn--primary.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--primary.disabled, .ec-blockBtn--primary[disabled],\n fieldset[disabled] .ec-blockBtn--primary {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--primary:focus, .ec-blockBtn--primary.focus {\n color: #fff;\n background-color: #479393;\n border-color: #2e6060; }\n .ec-blockBtn--primary:hover {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-blockBtn--primary:active, .ec-blockBtn--primary.active,\n .open > .ec-blockBtn--primary.dropdown-toggle {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-blockBtn--primary:active:hover, .ec-blockBtn--primary:active:focus, .ec-blockBtn--primary:active.focus, .ec-blockBtn--primary.active:hover, .ec-blockBtn--primary.active:focus, .ec-blockBtn--primary.active.focus,\n .open > .ec-blockBtn--primary.dropdown-toggle:hover,\n .open > .ec-blockBtn--primary.dropdown-toggle:focus,\n .open > .ec-blockBtn--primary.dropdown-toggle.focus {\n color: #fff;\n background-color: #3b7b7b;\n border-color: #2e6060; }\n .ec-blockBtn--primary:active, .ec-blockBtn--primary.active,\n .open > .ec-blockBtn--primary.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--primary.disabled:hover, .ec-blockBtn--primary.disabled:focus, .ec-blockBtn--primary.disabled.focus, .ec-blockBtn--primary[disabled]:hover, .ec-blockBtn--primary[disabled]:focus, .ec-blockBtn--primary[disabled].focus,\n fieldset[disabled] .ec-blockBtn--primary:hover,\n fieldset[disabled] .ec-blockBtn--primary:focus,\n fieldset[disabled] .ec-blockBtn--primary.focus {\n background-color: #5CB1B1;\n border-color: #5CB1B1; }\n .ec-blockBtn--primary .badge {\n color: #5CB1B1;\n background-color: #fff; }\n .ec-blockBtn--primary .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-blockBtn--action {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #DE5D50;\n border-color: #DE5D50;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--action:focus, .ec-blockBtn--action.focus, .ec-blockBtn--action:active:focus, .ec-blockBtn--action:active.focus, .ec-blockBtn--action.active:focus, .ec-blockBtn--action.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--action:hover, .ec-blockBtn--action:focus, .ec-blockBtn--action.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--action:active, .ec-blockBtn--action.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--action.disabled, .ec-blockBtn--action[disabled],\n fieldset[disabled] .ec-blockBtn--action {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--action:focus, .ec-blockBtn--action.focus {\n color: #fff;\n background-color: #d33828;\n border-color: #93271c; }\n .ec-blockBtn--action:hover {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-blockBtn--action:active, .ec-blockBtn--action.active,\n .open > .ec-blockBtn--action.dropdown-toggle {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-blockBtn--action:active:hover, .ec-blockBtn--action:active:focus, .ec-blockBtn--action:active.focus, .ec-blockBtn--action.active:hover, .ec-blockBtn--action.active:focus, .ec-blockBtn--action.active.focus,\n .open > .ec-blockBtn--action.dropdown-toggle:hover,\n .open > .ec-blockBtn--action.dropdown-toggle:focus,\n .open > .ec-blockBtn--action.dropdown-toggle.focus {\n color: #fff;\n background-color: #b53022;\n border-color: #93271c; }\n .ec-blockBtn--action:active, .ec-blockBtn--action.active,\n .open > .ec-blockBtn--action.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--action.disabled:hover, .ec-blockBtn--action.disabled:focus, .ec-blockBtn--action.disabled.focus, .ec-blockBtn--action[disabled]:hover, .ec-blockBtn--action[disabled]:focus, .ec-blockBtn--action[disabled].focus,\n fieldset[disabled] .ec-blockBtn--action:hover,\n fieldset[disabled] .ec-blockBtn--action:focus,\n fieldset[disabled] .ec-blockBtn--action.focus {\n background-color: #DE5D50;\n border-color: #DE5D50; }\n .ec-blockBtn--action .badge {\n color: #DE5D50;\n background-color: #fff; }\n .ec-blockBtn--action .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-blockBtn--cancel {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #525263;\n border-color: #525263;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--cancel:focus, .ec-blockBtn--cancel.focus, .ec-blockBtn--cancel:active:focus, .ec-blockBtn--cancel:active.focus, .ec-blockBtn--cancel.active:focus, .ec-blockBtn--cancel.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--cancel:hover, .ec-blockBtn--cancel:focus, .ec-blockBtn--cancel.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--cancel:active, .ec-blockBtn--cancel.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--cancel.disabled, .ec-blockBtn--cancel[disabled],\n fieldset[disabled] .ec-blockBtn--cancel {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--cancel:focus, .ec-blockBtn--cancel.focus {\n color: #fff;\n background-color: #3b3b47;\n border-color: #18181d; }\n .ec-blockBtn--cancel:hover {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-blockBtn--cancel:active, .ec-blockBtn--cancel.active,\n .open > .ec-blockBtn--cancel.dropdown-toggle {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-blockBtn--cancel:active:hover, .ec-blockBtn--cancel:active:focus, .ec-blockBtn--cancel:active.focus, .ec-blockBtn--cancel.active:hover, .ec-blockBtn--cancel.active:focus, .ec-blockBtn--cancel.active.focus,\n .open > .ec-blockBtn--cancel.dropdown-toggle:hover,\n .open > .ec-blockBtn--cancel.dropdown-toggle:focus,\n .open > .ec-blockBtn--cancel.dropdown-toggle.focus {\n color: #fff;\n background-color: #2b2b34;\n border-color: #18181d; }\n .ec-blockBtn--cancel:active, .ec-blockBtn--cancel.active,\n .open > .ec-blockBtn--cancel.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--cancel.disabled:hover, .ec-blockBtn--cancel.disabled:focus, .ec-blockBtn--cancel.disabled.focus, .ec-blockBtn--cancel[disabled]:hover, .ec-blockBtn--cancel[disabled]:focus, .ec-blockBtn--cancel[disabled].focus,\n fieldset[disabled] .ec-blockBtn--cancel:hover,\n fieldset[disabled] .ec-blockBtn--cancel:focus,\n fieldset[disabled] .ec-blockBtn--cancel.focus {\n background-color: #525263;\n border-color: #525263; }\n .ec-blockBtn--cancel .badge {\n color: #525263;\n background-color: #fff; }\n .ec-blockBtn--cancel .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n/*\nアイコンボタン\n\nSVGアイコンを用いたアイコンボタンです。\n\nsg-wrapper:\n
\n \n\nStyleguide 2.2\n*/\n/*\nアイコンボタン\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\na.ec-closeBtn\n .ec-icon\n img(src='/moc/icon/cross.svg', alt='close')\n\nStyleguide 2.2.1\n*/\n.ec-closeBtn {\n cursor: pointer; }\n .ec-closeBtn .ec-icon img {\n display: inline-block;\n margin-right: 5px;\n width: 1em;\n height: 1em;\n position: relative;\n top: -1px;\n vertical-align: middle; }\n\n/*\nアイコンボタン(○)\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\n\n\nex [お届け先編集画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\na.ec-closeBtn--circle\n .ec-icon\n img(src='/moc/icon/cross-white.svg', alt='close')\n\nStyleguide 2.2.2\n*/\n.ec-closeBtn--circle {\n display: block;\n border: 0 none;\n padding: 0;\n margin: 0;\n text-shadow: none;\n box-shadow: none;\n border-radius: 50%;\n background: #B8BEC4;\n cursor: pointer;\n width: 40px;\n min-width: 40px;\n max-width: 40px;\n height: 40px;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center; }\n .ec-closeBtn--circle .ec-icon img {\n display: block;\n margin-top: -.5em;\n margin-left: -.5em;\n width: 1em;\n height: 1em;\n position: absolute;\n top: 50%;\n left: 50%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nその他のボタン\n\n通常のボタンや、アイコンボタン以外のボタンを定義します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.3\n*/\n/*\nページトップボタン\n\nページトップボタンを表示します\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\n.ec-blockTopBtn\n\nStyleguide 2.3.1\n*/\n.ec-blockTopBtn {\n display: none;\n position: fixed;\n width: 120px;\n height: 40px;\n right: 0;\n bottom: 10px;\n cursor: pointer;\n color: #FFFFFF;\n text-align: center;\n line-height: 40px;\n opacity: 0.8;\n background-color: #9da3a9; }\n @media only screen and (min-width: 768px) {\n .ec-blockTopBtn {\n right: 30px;\n bottom: 30px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nフォーム部品(テキスト)\n\nテキストや数値の入力項目に関する要素を定義します。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 3.1\n*/\n/*\nフォーム\n\n`.ec-input` 要素は全ての入力項目に関する標準的なコンポーネントクラスです。\n\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-input\n input(type=\"number\")\np.ec-input\n textarea(rows=\"6\")\n\nStyleguide 3.1.1\n*/\n.ec-input input[type=\"search\"], .ec-halfInput input[type=\"search\"], .ec-numberInput input[type=\"search\"], .ec-zipInput input[type=\"search\"], .ec-telInput input[type=\"search\"], .ec-select input[type=\"search\"], .ec-birth input[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n\n.ec-input input[type=\"radio\"], .ec-halfInput input[type=\"radio\"], .ec-numberInput input[type=\"radio\"], .ec-zipInput input[type=\"radio\"], .ec-telInput input[type=\"radio\"], .ec-select input[type=\"radio\"], .ec-birth input[type=\"radio\"],\n.ec-input input[type=\"checkbox\"],\n.ec-halfInput input[type=\"checkbox\"],\n.ec-numberInput input[type=\"checkbox\"],\n.ec-zipInput input[type=\"checkbox\"],\n.ec-telInput input[type=\"checkbox\"],\n.ec-select input[type=\"checkbox\"],\n.ec-birth input[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal; }\n\n.ec-input input[type=\"file\"], .ec-halfInput input[type=\"file\"], .ec-numberInput input[type=\"file\"], .ec-zipInput input[type=\"file\"], .ec-telInput input[type=\"file\"], .ec-select input[type=\"file\"], .ec-birth input[type=\"file\"] {\n display: block; }\n\n.ec-input input[type=\"range\"], .ec-halfInput input[type=\"range\"], .ec-numberInput input[type=\"range\"], .ec-zipInput input[type=\"range\"], .ec-telInput input[type=\"range\"], .ec-select input[type=\"range\"], .ec-birth input[type=\"range\"] {\n display: block;\n width: 100%; }\n\n.ec-input select[multiple], .ec-halfInput select[multiple], .ec-numberInput select[multiple], .ec-zipInput select[multiple], .ec-telInput select[multiple], .ec-select select[multiple], .ec-birth select[multiple],\n.ec-input select[size],\n.ec-halfInput select[size],\n.ec-numberInput select[size],\n.ec-zipInput select[size],\n.ec-telInput select[size],\n.ec-select select[size],\n.ec-birth select[size] {\n height: auto; }\n\n.ec-input input[type=\"file\"]:focus, .ec-halfInput input[type=\"file\"]:focus, .ec-numberInput input[type=\"file\"]:focus, .ec-zipInput input[type=\"file\"]:focus, .ec-telInput input[type=\"file\"]:focus, .ec-select input[type=\"file\"]:focus, .ec-birth input[type=\"file\"]:focus,\n.ec-input input[type=\"radio\"]:focus,\n.ec-halfInput input[type=\"radio\"]:focus,\n.ec-numberInput input[type=\"radio\"]:focus,\n.ec-zipInput input[type=\"radio\"]:focus,\n.ec-telInput input[type=\"radio\"]:focus,\n.ec-select input[type=\"radio\"]:focus,\n.ec-birth input[type=\"radio\"]:focus,\n.ec-input input[type=\"checkbox\"]:focus,\n.ec-halfInput input[type=\"checkbox\"]:focus,\n.ec-numberInput input[type=\"checkbox\"]:focus,\n.ec-zipInput input[type=\"checkbox\"]:focus,\n.ec-telInput input[type=\"checkbox\"]:focus,\n.ec-select input[type=\"checkbox\"]:focus,\n.ec-birth input[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input input::-moz-placeholder, .ec-halfInput input::-moz-placeholder, .ec-numberInput input::-moz-placeholder, .ec-zipInput input::-moz-placeholder, .ec-telInput input::-moz-placeholder, .ec-select input::-moz-placeholder, .ec-birth input::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input input:-ms-input-placeholder, .ec-halfInput input:-ms-input-placeholder, .ec-numberInput input:-ms-input-placeholder, .ec-zipInput input:-ms-input-placeholder, .ec-telInput input:-ms-input-placeholder, .ec-select input:-ms-input-placeholder, .ec-birth input:-ms-input-placeholder {\n color: #999; }\n .ec-input input::-webkit-input-placeholder, .ec-halfInput input::-webkit-input-placeholder, .ec-numberInput input::-webkit-input-placeholder, .ec-zipInput input::-webkit-input-placeholder, .ec-telInput input::-webkit-input-placeholder, .ec-select input::-webkit-input-placeholder, .ec-birth input::-webkit-input-placeholder {\n color: #999; }\n .ec-input input::-ms-expand, .ec-halfInput input::-ms-expand, .ec-numberInput input::-ms-expand, .ec-zipInput input::-ms-expand, .ec-telInput input::-ms-expand, .ec-select input::-ms-expand, .ec-birth input::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled], .ec-input input[readonly], .ec-halfInput input[readonly], .ec-numberInput input[readonly], .ec-zipInput input[readonly], .ec-telInput input[readonly], .ec-select input[readonly], .ec-birth input[readonly],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n cursor: not-allowed; }\n\n.ec-input select, .ec-halfInput select, .ec-numberInput select, .ec-zipInput select, .ec-telInput select, .ec-select select, .ec-birth select {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input select:focus, .ec-halfInput select:focus, .ec-numberInput select:focus, .ec-zipInput select:focus, .ec-telInput select:focus, .ec-select select:focus, .ec-birth select:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input select::-moz-placeholder, .ec-halfInput select::-moz-placeholder, .ec-numberInput select::-moz-placeholder, .ec-zipInput select::-moz-placeholder, .ec-telInput select::-moz-placeholder, .ec-select select::-moz-placeholder, .ec-birth select::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input select:-ms-input-placeholder, .ec-halfInput select:-ms-input-placeholder, .ec-numberInput select:-ms-input-placeholder, .ec-zipInput select:-ms-input-placeholder, .ec-telInput select:-ms-input-placeholder, .ec-select select:-ms-input-placeholder, .ec-birth select:-ms-input-placeholder {\n color: #999; }\n .ec-input select::-webkit-input-placeholder, .ec-halfInput select::-webkit-input-placeholder, .ec-numberInput select::-webkit-input-placeholder, .ec-zipInput select::-webkit-input-placeholder, .ec-telInput select::-webkit-input-placeholder, .ec-select select::-webkit-input-placeholder, .ec-birth select::-webkit-input-placeholder {\n color: #999; }\n .ec-input select::-ms-expand, .ec-halfInput select::-ms-expand, .ec-numberInput select::-ms-expand, .ec-zipInput select::-ms-expand, .ec-telInput select::-ms-expand, .ec-select select::-ms-expand, .ec-birth select::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled], .ec-input select[readonly], .ec-halfInput select[readonly], .ec-numberInput select[readonly], .ec-zipInput select[readonly], .ec-telInput select[readonly], .ec-select select[readonly], .ec-birth select[readonly],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n cursor: not-allowed; }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input textarea::-moz-placeholder, .ec-halfInput textarea::-moz-placeholder, .ec-numberInput textarea::-moz-placeholder, .ec-zipInput textarea::-moz-placeholder, .ec-telInput textarea::-moz-placeholder, .ec-select textarea::-moz-placeholder, .ec-birth textarea::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input textarea:-ms-input-placeholder, .ec-halfInput textarea:-ms-input-placeholder, .ec-numberInput textarea:-ms-input-placeholder, .ec-zipInput textarea:-ms-input-placeholder, .ec-telInput textarea:-ms-input-placeholder, .ec-select textarea:-ms-input-placeholder, .ec-birth textarea:-ms-input-placeholder {\n color: #999; }\n .ec-input textarea::-webkit-input-placeholder, .ec-halfInput textarea::-webkit-input-placeholder, .ec-numberInput textarea::-webkit-input-placeholder, .ec-zipInput textarea::-webkit-input-placeholder, .ec-telInput textarea::-webkit-input-placeholder, .ec-select textarea::-webkit-input-placeholder, .ec-birth textarea::-webkit-input-placeholder {\n color: #999; }\n .ec-input textarea::-ms-expand, .ec-halfInput textarea::-ms-expand, .ec-numberInput textarea::-ms-expand, .ec-zipInput textarea::-ms-expand, .ec-telInput textarea::-ms-expand, .ec-select textarea::-ms-expand, .ec-birth textarea::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled], .ec-input textarea[readonly], .ec-halfInput textarea[readonly], .ec-numberInput textarea[readonly], .ec-zipInput textarea[readonly], .ec-telInput textarea[readonly], .ec-select textarea[readonly], .ec-birth textarea[readonly],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n cursor: not-allowed; }\n\n.ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus, .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n box-shadow: none;\n border-color: #3c8dbc; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n height: 40px;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n margin-bottom: 16px; } }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n height: auto;\n min-height: 100px; }\n\n.ec-input p, .ec-halfInput p, .ec-numberInput p, .ec-zipInput p, .ec-telInput p, .ec-select p, .ec-birth p {\n line-height: 1.4; }\n\n.ec-input .ec-errorMessage, .ec-halfInput .ec-errorMessage, .ec-numberInput .ec-errorMessage, .ec-zipInput .ec-errorMessage, .ec-telInput .ec-errorMessage, .ec-select .ec-errorMessage, .ec-birth .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-input input, .error.ec-halfInput input, .error.ec-numberInput input, .error.ec-zipInput input, .error.ec-telInput input, .error.ec-select input, .error.ec-birth input, .error.ec-input select, .error.ec-halfInput select, .error.ec-numberInput select, .error.ec-zipInput select, .error.ec-telInput select, .error.ec-select select, .error.ec-birth select {\n margin-bottom: 5px;\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n.ec-checkbox .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-checkbox input, .error.ec-checkbox label {\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n/*\nフォーム(text2つ)\n\n姓名など2つ入力させたい入力項目で使用します。\n\n入力フォームを半分で用意したいときにも利用可能です。\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-halfInput\n input(type=\"text\")\n input(type=\"text\")\np.ec-halfInput\n input(type=\"text\")\n\nStyleguide 3.1.2\n*/\n.ec-halfInput input[type='text'] {\n display: inline-block;\n width: 47%;\n margin-left: 2%; }\n @media only screen and (min-width: 768px) {\n .ec-halfInput input[type='text'] {\n margin-left: 15px;\n width: 45%; } }\n\n.ec-halfInput input[type='text']:first-child {\n margin-left: 0; }\n\n/*\n数量ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [商品詳細画面 数量ボタン部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-numberInput\n span 数量\n input(type=\"number\",value=\"0\")\n\nStyleguide 3.1.3\n*/\n.ec-numberInput input[type='number'] {\n display: inline-block;\n width: auto;\n max-width: 100px;\n text-align: right; }\n\n/*\n郵便番号フォーム\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 郵便番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-zipInput\n span 〒\n input(type=\"text\")\n.ec-zipInputHelp\n a(href=\"http://www.post.japanpost.jp/zipcode/\" target=\"_blank\")\n .ec-zipInputHelp__icon\n .ec-icon\n img(src='/moc/icon/question-white.svg', alt='')\n span 郵便番号検索\n.ec-zipAuto\n a.ec-inlineBtn 郵便番号から自動入力\n\nStyleguide 3.1.4\n*/\n.ec-zipInput {\n display: inline-block; }\n .ec-zipInput input {\n display: inline-block;\n text-align: left;\n width: auto;\n max-width: 8em;\n font-size: 16px; }\n .ec-zipInput span {\n display: inline-block;\n padding: 0 5px 0 3px;\n margin-left: 5px; }\n\n.ec-zipInputHelp {\n display: inline-block;\n margin-left: 10px;\n margin-bottom: 16px;\n vertical-align: baseline;\n line-height: 0; }\n .ec-zipInputHelp .ec-zipInputHelp__icon {\n display: inline-block;\n margin-top: -10px;\n width: 20px;\n height: 20px;\n background: #525263;\n border-radius: 50%;\n font-size: 13px;\n position: relative;\n top: -6px; }\n .ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img {\n width: 1em;\n height: 1em;\n position: relative;\n left: 3px;\n top: 3px; }\n .ec-zipInputHelp span {\n margin-left: 8px;\n display: inline-block;\n color: #0092C4;\n vertical-align: 3px; }\n\n.ec-zipAuto {\n margin-bottom: 16px; }\n .ec-zipAuto .ec-inlineBtn {\n font-weight: normal; }\n\n/*\n電話番号ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 電話番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-telInput\n input(type=\"text\")\n\nStyleguide 3.1.5\n*/\n.ec-telInput input {\n max-width: 10em;\n text-align: left; }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nフォーム部品(テキスト)\n\nテキストや数値の入力項目に関する要素を定義します。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 3.1\n*/\n/*\nフォーム\n\n`.ec-input` 要素は全ての入力項目に関する標準的なコンポーネントクラスです。\n\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-input\n input(type=\"number\")\np.ec-input\n textarea(rows=\"6\")\n\nStyleguide 3.1.1\n*/\n.ec-input input[type=\"search\"], .ec-halfInput input[type=\"search\"], .ec-numberInput input[type=\"search\"], .ec-zipInput input[type=\"search\"], .ec-telInput input[type=\"search\"], .ec-select input[type=\"search\"], .ec-birth input[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n\n.ec-input input[type=\"radio\"], .ec-halfInput input[type=\"radio\"], .ec-numberInput input[type=\"radio\"], .ec-zipInput input[type=\"radio\"], .ec-telInput input[type=\"radio\"], .ec-select input[type=\"radio\"], .ec-birth input[type=\"radio\"],\n.ec-input input[type=\"checkbox\"],\n.ec-halfInput input[type=\"checkbox\"],\n.ec-numberInput input[type=\"checkbox\"],\n.ec-zipInput input[type=\"checkbox\"],\n.ec-telInput input[type=\"checkbox\"],\n.ec-select input[type=\"checkbox\"],\n.ec-birth input[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal; }\n\n.ec-input input[type=\"file\"], .ec-halfInput input[type=\"file\"], .ec-numberInput input[type=\"file\"], .ec-zipInput input[type=\"file\"], .ec-telInput input[type=\"file\"], .ec-select input[type=\"file\"], .ec-birth input[type=\"file\"] {\n display: block; }\n\n.ec-input input[type=\"range\"], .ec-halfInput input[type=\"range\"], .ec-numberInput input[type=\"range\"], .ec-zipInput input[type=\"range\"], .ec-telInput input[type=\"range\"], .ec-select input[type=\"range\"], .ec-birth input[type=\"range\"] {\n display: block;\n width: 100%; }\n\n.ec-input select[multiple], .ec-halfInput select[multiple], .ec-numberInput select[multiple], .ec-zipInput select[multiple], .ec-telInput select[multiple], .ec-select select[multiple], .ec-birth select[multiple],\n.ec-input select[size],\n.ec-halfInput select[size],\n.ec-numberInput select[size],\n.ec-zipInput select[size],\n.ec-telInput select[size],\n.ec-select select[size],\n.ec-birth select[size] {\n height: auto; }\n\n.ec-input input[type=\"file\"]:focus, .ec-halfInput input[type=\"file\"]:focus, .ec-numberInput input[type=\"file\"]:focus, .ec-zipInput input[type=\"file\"]:focus, .ec-telInput input[type=\"file\"]:focus, .ec-select input[type=\"file\"]:focus, .ec-birth input[type=\"file\"]:focus,\n.ec-input input[type=\"radio\"]:focus,\n.ec-halfInput input[type=\"radio\"]:focus,\n.ec-numberInput input[type=\"radio\"]:focus,\n.ec-zipInput input[type=\"radio\"]:focus,\n.ec-telInput input[type=\"radio\"]:focus,\n.ec-select input[type=\"radio\"]:focus,\n.ec-birth input[type=\"radio\"]:focus,\n.ec-input input[type=\"checkbox\"]:focus,\n.ec-halfInput input[type=\"checkbox\"]:focus,\n.ec-numberInput input[type=\"checkbox\"]:focus,\n.ec-zipInput input[type=\"checkbox\"]:focus,\n.ec-telInput input[type=\"checkbox\"]:focus,\n.ec-select input[type=\"checkbox\"]:focus,\n.ec-birth input[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input input::-moz-placeholder, .ec-halfInput input::-moz-placeholder, .ec-numberInput input::-moz-placeholder, .ec-zipInput input::-moz-placeholder, .ec-telInput input::-moz-placeholder, .ec-select input::-moz-placeholder, .ec-birth input::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input input:-ms-input-placeholder, .ec-halfInput input:-ms-input-placeholder, .ec-numberInput input:-ms-input-placeholder, .ec-zipInput input:-ms-input-placeholder, .ec-telInput input:-ms-input-placeholder, .ec-select input:-ms-input-placeholder, .ec-birth input:-ms-input-placeholder {\n color: #999; }\n .ec-input input::-webkit-input-placeholder, .ec-halfInput input::-webkit-input-placeholder, .ec-numberInput input::-webkit-input-placeholder, .ec-zipInput input::-webkit-input-placeholder, .ec-telInput input::-webkit-input-placeholder, .ec-select input::-webkit-input-placeholder, .ec-birth input::-webkit-input-placeholder {\n color: #999; }\n .ec-input input::-ms-expand, .ec-halfInput input::-ms-expand, .ec-numberInput input::-ms-expand, .ec-zipInput input::-ms-expand, .ec-telInput input::-ms-expand, .ec-select input::-ms-expand, .ec-birth input::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled], .ec-input input[readonly], .ec-halfInput input[readonly], .ec-numberInput input[readonly], .ec-zipInput input[readonly], .ec-telInput input[readonly], .ec-select input[readonly], .ec-birth input[readonly],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n cursor: not-allowed; }\n\n.ec-input select, .ec-halfInput select, .ec-numberInput select, .ec-zipInput select, .ec-telInput select, .ec-select select, .ec-birth select {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input select:focus, .ec-halfInput select:focus, .ec-numberInput select:focus, .ec-zipInput select:focus, .ec-telInput select:focus, .ec-select select:focus, .ec-birth select:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input select::-moz-placeholder, .ec-halfInput select::-moz-placeholder, .ec-numberInput select::-moz-placeholder, .ec-zipInput select::-moz-placeholder, .ec-telInput select::-moz-placeholder, .ec-select select::-moz-placeholder, .ec-birth select::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input select:-ms-input-placeholder, .ec-halfInput select:-ms-input-placeholder, .ec-numberInput select:-ms-input-placeholder, .ec-zipInput select:-ms-input-placeholder, .ec-telInput select:-ms-input-placeholder, .ec-select select:-ms-input-placeholder, .ec-birth select:-ms-input-placeholder {\n color: #999; }\n .ec-input select::-webkit-input-placeholder, .ec-halfInput select::-webkit-input-placeholder, .ec-numberInput select::-webkit-input-placeholder, .ec-zipInput select::-webkit-input-placeholder, .ec-telInput select::-webkit-input-placeholder, .ec-select select::-webkit-input-placeholder, .ec-birth select::-webkit-input-placeholder {\n color: #999; }\n .ec-input select::-ms-expand, .ec-halfInput select::-ms-expand, .ec-numberInput select::-ms-expand, .ec-zipInput select::-ms-expand, .ec-telInput select::-ms-expand, .ec-select select::-ms-expand, .ec-birth select::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled], .ec-input select[readonly], .ec-halfInput select[readonly], .ec-numberInput select[readonly], .ec-zipInput select[readonly], .ec-telInput select[readonly], .ec-select select[readonly], .ec-birth select[readonly],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n cursor: not-allowed; }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input textarea::-moz-placeholder, .ec-halfInput textarea::-moz-placeholder, .ec-numberInput textarea::-moz-placeholder, .ec-zipInput textarea::-moz-placeholder, .ec-telInput textarea::-moz-placeholder, .ec-select textarea::-moz-placeholder, .ec-birth textarea::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input textarea:-ms-input-placeholder, .ec-halfInput textarea:-ms-input-placeholder, .ec-numberInput textarea:-ms-input-placeholder, .ec-zipInput textarea:-ms-input-placeholder, .ec-telInput textarea:-ms-input-placeholder, .ec-select textarea:-ms-input-placeholder, .ec-birth textarea:-ms-input-placeholder {\n color: #999; }\n .ec-input textarea::-webkit-input-placeholder, .ec-halfInput textarea::-webkit-input-placeholder, .ec-numberInput textarea::-webkit-input-placeholder, .ec-zipInput textarea::-webkit-input-placeholder, .ec-telInput textarea::-webkit-input-placeholder, .ec-select textarea::-webkit-input-placeholder, .ec-birth textarea::-webkit-input-placeholder {\n color: #999; }\n .ec-input textarea::-ms-expand, .ec-halfInput textarea::-ms-expand, .ec-numberInput textarea::-ms-expand, .ec-zipInput textarea::-ms-expand, .ec-telInput textarea::-ms-expand, .ec-select textarea::-ms-expand, .ec-birth textarea::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled], .ec-input textarea[readonly], .ec-halfInput textarea[readonly], .ec-numberInput textarea[readonly], .ec-zipInput textarea[readonly], .ec-telInput textarea[readonly], .ec-select textarea[readonly], .ec-birth textarea[readonly],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n cursor: not-allowed; }\n\n.ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus, .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n box-shadow: none;\n border-color: #3c8dbc; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n height: 40px;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n margin-bottom: 16px; } }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n height: auto;\n min-height: 100px; }\n\n.ec-input p, .ec-halfInput p, .ec-numberInput p, .ec-zipInput p, .ec-telInput p, .ec-select p, .ec-birth p {\n line-height: 1.4; }\n\n.ec-input .ec-errorMessage, .ec-halfInput .ec-errorMessage, .ec-numberInput .ec-errorMessage, .ec-zipInput .ec-errorMessage, .ec-telInput .ec-errorMessage, .ec-select .ec-errorMessage, .ec-birth .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-input input, .error.ec-halfInput input, .error.ec-numberInput input, .error.ec-zipInput input, .error.ec-telInput input, .error.ec-select input, .error.ec-birth input, .error.ec-input select, .error.ec-halfInput select, .error.ec-numberInput select, .error.ec-zipInput select, .error.ec-telInput select, .error.ec-select select, .error.ec-birth select {\n margin-bottom: 5px;\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n.ec-checkbox .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-checkbox input, .error.ec-checkbox label {\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n/*\nフォーム(text2つ)\n\n姓名など2つ入力させたい入力項目で使用します。\n\n入力フォームを半分で用意したいときにも利用可能です。\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-halfInput\n input(type=\"text\")\n input(type=\"text\")\np.ec-halfInput\n input(type=\"text\")\n\nStyleguide 3.1.2\n*/\n.ec-halfInput input[type='text'] {\n display: inline-block;\n width: 47%;\n margin-left: 2%; }\n @media only screen and (min-width: 768px) {\n .ec-halfInput input[type='text'] {\n margin-left: 15px;\n width: 45%; } }\n\n.ec-halfInput input[type='text']:first-child {\n margin-left: 0; }\n\n/*\n数量ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [商品詳細画面 数量ボタン部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-numberInput\n span 数量\n input(type=\"number\",value=\"0\")\n\nStyleguide 3.1.3\n*/\n.ec-numberInput input[type='number'] {\n display: inline-block;\n width: auto;\n max-width: 100px;\n text-align: right; }\n\n/*\n郵便番号フォーム\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 郵便番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-zipInput\n span 〒\n input(type=\"text\")\n.ec-zipInputHelp\n a(href=\"http://www.post.japanpost.jp/zipcode/\" target=\"_blank\")\n .ec-zipInputHelp__icon\n .ec-icon\n img(src='/moc/icon/question-white.svg', alt='')\n span 郵便番号検索\n.ec-zipAuto\n a.ec-inlineBtn 郵便番号から自動入力\n\nStyleguide 3.1.4\n*/\n.ec-zipInput {\n display: inline-block; }\n .ec-zipInput input {\n display: inline-block;\n text-align: left;\n width: auto;\n max-width: 8em;\n font-size: 16px; }\n .ec-zipInput span {\n display: inline-block;\n padding: 0 5px 0 3px;\n margin-left: 5px; }\n\n.ec-zipInputHelp {\n display: inline-block;\n margin-left: 10px;\n margin-bottom: 16px;\n vertical-align: baseline;\n line-height: 0; }\n .ec-zipInputHelp .ec-zipInputHelp__icon {\n display: inline-block;\n margin-top: -10px;\n width: 20px;\n height: 20px;\n background: #525263;\n border-radius: 50%;\n font-size: 13px;\n position: relative;\n top: -6px; }\n .ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img {\n width: 1em;\n height: 1em;\n position: relative;\n left: 3px;\n top: 3px; }\n .ec-zipInputHelp span {\n margin-left: 8px;\n display: inline-block;\n color: #0092C4;\n vertical-align: 3px; }\n\n.ec-zipAuto {\n margin-bottom: 16px; }\n .ec-zipAuto .ec-inlineBtn {\n font-weight: normal; }\n\n/*\n電話番号ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 電話番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-telInput\n input(type=\"text\")\n\nStyleguide 3.1.5\n*/\n.ec-telInput input {\n max-width: 10em;\n text-align: left; }\n\n/*\nフォーム部品(その他)\n\nフォーム部品でテキストの入力以外の動作要素を定義します。\n\nsg-wrapper:\n
\n \n\nStyleguide 3.2\n*/\n/*\nラジオ(水平)\n\n水平に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 性別選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-radio\n label\n input(type=\"radio\")\n span 男性\n label\n input(type=\"radio\")\n span 女性\n\nStyleguide 3.2.2\n*/\n.ec-radio label {\n margin-right: 20px; }\n\n.ec-radio input {\n margin-right: 10px;\n margin-bottom: 10px; }\n\n.ec-radio span {\n font-weight: normal; }\n\n/*\nラジオ(垂直)\n\n垂直に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [購入画面 お支払方法](http://demo3.ec-cube.net/shopping)\n\nMarkup:\n.ec-blockRadio\n label\n input(type=\"radio\")\n span 郵便振替\n label\n input(type=\"radio\")\n span 現金書留\n label\n input(type=\"radio\")\n span 銀行振込\n label\n input(type=\"radio\")\n span 代金引換\n\nStyleguide 3.2.3\n*/\n.ec-blockRadio label {\n display: block; }\n\n.ec-blockRadio span {\n padding-left: 10px;\n font-weight: normal; }\n\n/*\nセレクトボックス\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 都道府県選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-select\n select\n option 都道府県を選択\n option 北海道\n option 青森県\n option 岩手県\n option ...\n.ec-select\n select\n option 選択して下さい\n option 公務員\n option コンサルタント\n option コンピュータ関連技術職\n option コンピュータ関連以外の技術職\n option ...\n\nStyleguide 3.2.4\n*/\n.ec-selects {\n margin-bottom: 20px;\n border-bottom: 1px dotted #ccc; }\n\n.ec-select {\n margin-bottom: 16px; }\n .ec-select select {\n display: inline-block;\n width: auto;\n background-color: #f8f8f8;\n -webkit-appearance: menulist;\n -moz-appearance: menulist; }\n .ec-select select:focus {\n box-shadow: none; }\n .ec-select label {\n margin-right: 10px;\n font-weight: bold; }\n .ec-select label:nth-child(3) {\n margin-left: 10px;\n font-weight: bold; }\n\n.ec-select__delivery {\n display: block;\n margin-right: 16px; }\n @media only screen and (min-width: 768px) {\n .ec-select__delivery {\n display: inline-block; } }\n\n.ec-select__time {\n display: block; }\n @media only screen and (min-width: 768px) {\n .ec-select__time {\n display: inline-block; } }\n\n/*\n生年月日選択\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 生年月日選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-birth\n select\n option ----\n option 1960\n option 1961\n option 1962\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n\nStyleguide 3.2.5\n*/\n.ec-birth select {\n display: inline-block;\n width: auto;\n margin: 0 0 10px;\n background-color: #f8f8f8;\n -webkit-appearance: menulist;\n -moz-appearance: menulist; }\n .ec-birth select:focus {\n box-shadow: none; }\n @media only screen and (min-width: 768px) {\n .ec-birth select {\n margin: 0 8px 10px; } }\n\n.ec-birth span {\n margin-left: 5px; }\n\n/*\nチェックボックス (水平)\n\n水平に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 利用規約](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-checkbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.6\n*/\n.ec-checkbox label {\n display: inline-block; }\n\n.ec-checkbox input {\n margin-bottom: 10px; }\n\n.ec-checkbox span {\n font-weight: normal; }\n\n/*\nチェックボックス (垂直)\n\n垂直に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nMarkup:\n.ec-blockCheckbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.7\n*/\n.ec-blockCheckbox label {\n display: block; }\n\n.ec-blockCheckbox span {\n font-weight: normal; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nフォームラベル\n\nフォームのラベルに関する要素を定義します。\n\nsg-wrapper:\n
\n
\n
\n
\n \n
\n
\n
\n
\n\nStyleguide 3.3\n*/\n/*\nラベル\n\nフォーム要素で利用するラベル要素です。\n\nex [お問い合わせページ ラベル部分](http://demo3.ec-cube.net/contact)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.1\n*/\n.ec-label {\n display: inline-block;\n font-weight: bold;\n margin-bottom: 5px; }\n\n/*\n必須ラベル\n\n必須文字を表示するラベル要素です。\n\nex [お問い合わせページ 必須ラベル部分](http://demo3.ec-cube.net/contact)\n\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n span.ec-required 必須\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.2\n*/\n.ec-required {\n display: inline-block;\n margin-left: .8em;\n vertical-align: 2px;\n color: #DE5D50;\n font-size: 12px;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-required {\n margin-left: 1em; } }\n\n/*\nアイコン\n\nデフォルトテンプレートのアイコンは`.ec-icon`>`img`タグで使用することができます\n\nsg-wrapper:\n
\n \n\nMarkup:\ninclude /assets/tmpl/elements/4.1.icon.pug\ndiv(style=\"background-color: rgba(130,130,130,.15); padding: 20px;\")\n +icon-all\n\nStyleguide 4.1\n*/\n.ec-icon img {\n max-width: 80px;\n max-height: 80px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nグリッド\n\n画面を12分割し、グリッドレイアウトに対応するためのスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.1\n*/\n/*\n2分割グリッド\n\n画面 2分割の グリッドです。\nBootstrap の col-sm-6 相当のグリッドを提供します。\n\nMarkup:\n.ec-grid2\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 5.1.1\n*/\n.ec-grid2 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid2 {\n display: flex; } }\n .ec-grid2 .ec-grid2__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid2 .ec-grid2__cell {\n width: 50%; } }\n .ec-grid2 .ec-grid2__cell2 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid2 .ec-grid2__cell2 {\n width: 100%; } }\n\n/*\n3分割グリッド\n\n画面 3分割の グリッドです。\n\n\nMarkup:\n.ec-grid3\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n\nStyleguide 5.1.2\n*/\n.ec-grid3 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid3 {\n display: flex; } }\n .ec-grid3 .ec-grid3__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid3 .ec-grid3__cell {\n width: 33.33333%; } }\n .ec-grid3 .ec-grid3__cell2 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid3 .ec-grid3__cell2 {\n width: 66.66667%; } }\n .ec-grid3 .ec-grid3__cell3 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid3 .ec-grid3__cell3 {\n width: 100%; } }\n\n/*\n4分割グリッド\n\n画面 4分割の グリッドです。\n\n\nMarkup:\n.ec-grid4\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n\nStyleguide 5.1.3\n*/\n.ec-grid4 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid4 {\n display: flex; } }\n .ec-grid4 .ec-grid4__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid4 .ec-grid4__cell {\n width: 25%; } }\n\n/*\n6分割グリッド\n\n2つにまとめた cell2 や 3つをまとめた cell3 タグも使用可能です。\n\n\nMarkup:\n.ec-grid6\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n.ec-grid6\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n.ec-grid6\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n\nStyleguide 5.1.4\n*/\n.ec-grid6 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid6 {\n display: flex; } }\n .ec-grid6 .ec-grid6__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid6 .ec-grid6__cell {\n width: 16.66667%; } }\n .ec-grid6 .ec-grid6__cell2 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid6 .ec-grid6__cell2 {\n width: 33.33333%; } }\n .ec-grid6 .ec-grid6__cell3 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid6 .ec-grid6__cell3 {\n width: 50%; } }\n\n/*\n中央寄せグリッド 10/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の10グリッドです\n\nex [ご利用規約ページ 本文](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-off1Grid\n .ec-off1Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.5\n*/\n.ec-off1Grid {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off1Grid {\n display: block;\n margin: 0; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off1Grid {\n display: flex; } }\n .ec-off1Grid .ec-off1Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off1Grid .ec-off1Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 8.33333%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off1Grid .ec-off1Grid__cell {\n width: 83.33333%; } }\n\n/*\n中央寄せグリッド 8/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の8グリッドです\n\n\nMarkup:\n.ec-off2Grid\n .ec-off2Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.6\n*/\n.ec-off2Grid {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off2Grid {\n display: flex; } }\n .ec-off2Grid .ec-off2Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off2Grid .ec-off2Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 16.66667%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off2Grid .ec-off2Grid__cell {\n width: 66.66667%; } }\n\n/*\n中央寄せグリッド 6/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の6グリッドです\n\n\nMarkup:\n.ec-off3Grid\n .ec-off3Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.7\n*/\n.ec-off3Grid {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off3Grid {\n display: flex; } }\n .ec-off3Grid .ec-off3Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off3Grid .ec-off3Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 25%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off3Grid .ec-off3Grid__cell {\n width: 50%; } }\n\n/*\n中央寄せグリッド 4/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の4グリッドです\n\n\nMarkup:\n.ec-off4Grid\n .ec-off4Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\n\nStyleguide 5.1.8\n*/\n.ec-off4Grid {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off4Grid {\n display: flex; } }\n .ec-off4Grid .ec-off4Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off4Grid .ec-off4Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 33.33333%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off4Grid .ec-off4Grid__cell {\n width: 33.33333%; } }\n\n/*\nグリッドオプション\n\nグリッドのセルに対して「左寄せ」「中央寄せ」「右寄せ」のオプションを付与することができます。\n\nsg-wrapper:\n
\n \n\nStyleguide 5.1.9\n*/\n/*\nグリッドセルの左寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--left\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.10\n*/\n.ec-grid--left {\n justify-content: flex-start; }\n\n/*\nグリッドセルの右寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--right\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.11\n*/\n.ec-grid--right {\n justify-content: flex-end; }\n\n/*\nグリッドセルの中央寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--center\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.12\n*/\n.ec-grid--center {\n justify-content: center; }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nレイアウト\n\n様々なレイアウトを変更する為のスタイル群です。\n\nStyleguide 5.2\n*/\n/*\n画像レイアウト\n\n画像とテキストを水平に並べるレイアウトです。\n\n画像は20%で表示されます。\n\nex [注文履歴 ログイン後→注文履歴ボタンを押下](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-imageGrid\n .ec-imageGrid__img: img(src=\"http://demo3.ec-cube.net/upload/save_image/0701113537_559351f959620.jpeg\")\n .ec-imageGrid__content\n p.ec-font-bold ホーローマグ\n p ¥ 1,728 x 1\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.2.1\n*/\n.ec-imageGrid {\n display: table;\n border-top: 1px dotted #ccc;\n width: 100%; }\n .ec-imageGrid .ec-imageGrid__img {\n display: table-cell;\n padding: 10px;\n width: 100px; }\n @media only screen and (min-width: 768px) {\n .ec-imageGrid .ec-imageGrid__img {\n padding: 10px;\n width: 130px; } }\n .ec-imageGrid .ec-imageGrid__img img {\n width: 100%; }\n .ec-imageGrid .ec-imageGrid__content {\n vertical-align: middle;\n display: table-cell; }\n .ec-imageGrid .ec-imageGrid__content span {\n margin-left: 10px; }\n .ec-imageGrid .ec-imageGrid__content p {\n margin-bottom: 0; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nログイン\n\n主にログインフォームのスタイルを表示します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 6.1\n*/\n/*\nログインフォーム\n\nログインフォームを表示します。\n\nex [ログイン画面](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-login\n\n\nStyleguide 6.1.1\n*/\n.ec-login {\n margin: 0 0 20px;\n padding: 30px 13% 20px;\n height: auto;\n background: #F3F4F4;\n box-sizing: border-box; }\n @media only screen and (min-width: 768px) {\n .ec-login {\n margin: 0 16px;\n padding: 30px 13% 60px; } }\n .ec-login .ec-login__icon {\n text-align: center; }\n .ec-login .ec-icon {\n margin-bottom: 10px; }\n .ec-login .ec-icon img {\n width: 90px;\n height: 90px;\n display: inline-block; }\n .ec-login .ec-login__input {\n margin-bottom: 40px; }\n .ec-login .ec-login__input .ec-checkbox span {\n margin-left: 5px;\n font-weight: normal; }\n .ec-login .ec-login__actions {\n color: #fff; }\n .ec-login .ec-login__actions a {\n color: inherit;\n text-decoration: none; }\n .ec-login .ec-login__actions a:hover {\n text-decoration: none; }\n .ec-login .ec-login__link {\n margin-top: 5px;\n margin-left: 0; }\n @media only screen and (min-width: 768px) {\n .ec-login .ec-login__link {\n margin-left: 20px; } }\n .ec-login .ec-errorMessage {\n color: #DE5D50;\n margin-bottom: 20px; }\n\n/*\nゲスト購入\n\nゲスト購入ボタンとそのフォームを表示します。\n\nex [ゲスト購入画面](http://demo3.ec-cube.net/shopping/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-guest\nhoge\n\nStyleguide 6.1.2\n*/\n.ec-guest {\n display: table;\n margin: 0;\n padding: 13%;\n height: auto;\n box-sizing: border-box;\n background: #F3F4F4; }\n @media only screen and (min-width: 768px) {\n .ec-guest {\n height: 100%;\n margin: 0 16px; } }\n .ec-guest .ec-guest__inner {\n display: table-cell;\n vertical-align: middle;\n text-align: center; }\n .ec-guest .ec-guest__inner p {\n margin-bottom: 16px; }\n .ec-guest .ec-guest__actions {\n display: block;\n vertical-align: middle;\n text-align: center;\n color: #fff; }\n .ec-guest .ec-guest__actions a {\n color: inherit;\n text-decoration: none; }\n .ec-guest .ec-guest__actions a:hover {\n text-decoration: none; }\n .ec-guest .ec-guest__icon {\n font-size: 70px;\n text-align: center; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n商品掲載\n\nトップページに商品掲載するスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.1\n*/\n/*\n商品アイテム(商品紹介B)\n\n3項目横並びの商品アイテムを表示します。\n必要に応じて商品詳細や、キャッチコピーなどを添えることが出来ます。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayB\n\nStyleguide 7.1.1\n*/\n.ec-displayB {\n margin-bottom: 24px;\n display: flex;\n justify-content: space-between;\n flex-direction: column; }\n @media only screen and (min-width: 768px) {\n .ec-displayB {\n flex-direction: row; } }\n .ec-displayB .ec-displayB__cell {\n width: 100%;\n margin-bottom: 16px; }\n .ec-displayB .ec-displayB__cell a {\n color: inherit;\n text-decoration: none; }\n .ec-displayB .ec-displayB__cell a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-displayB .ec-displayB__cell {\n width: 31.4466%;\n margin-bottom: 0; } }\n .ec-displayB .ec-displayB__cell:hover {\n text-decoration: none; }\n .ec-displayB .ec-displayB__cell:hover img {\n opacity: .8; }\n .ec-displayB .ec-displayB__cell:hover a {\n text-decoration: none; }\n .ec-displayB .ec-displayB__img {\n margin-bottom: 15px; }\n .ec-displayB .ec-displayB__catch {\n margin-bottom: 15px;\n text-decoration: none;\n font-weight: bold;\n color: #9a947e; }\n .ec-displayB .ec-displayB__comment {\n margin-bottom: 14px;\n text-decoration: none;\n color: #525263;\n font-size: 14px; }\n .ec-displayB .ec-displayB__link {\n text-decoration: none;\n font-weight: bold;\n color: #9a947e; }\n\n/*\n商品アイテム(商品紹介C)\n\n4項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayC\np hoge\n\nStyleguide 7.1.2\n*/\n.ec-displayC {\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n margin-bottom: 24px; }\n .ec-displayC .ec-displayC__cell {\n width: 47%; }\n .ec-displayC .ec-displayC__cell a {\n color: inherit;\n text-decoration: none; }\n .ec-displayC .ec-displayC__cell a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-displayC .ec-displayC__cell {\n width: 22.8775%; } }\n .ec-displayC .ec-displayC__cell:hover a {\n text-decoration: none; }\n .ec-displayC .ec-displayC__cell:hover img {\n opacity: .8; }\n .ec-displayC .ec-displayC__img {\n display: block;\n width: 100%;\n margin-bottom: 15px; }\n .ec-displayC .ec-displayC__catch {\n display: block;\n width: 100%;\n font-weight: bold;\n color: #9a947e; }\n .ec-displayC .ec-displayC__title {\n display: block;\n width: 100%;\n color: #525263; }\n .ec-displayC .ec-displayC__price {\n display: block;\n width: 100%;\n font-weight: bold;\n color: #525263; }\n .ec-displayC .ec-displayC__price--sp {\n display: block;\n width: 100%;\n font-weight: bold;\n color: #DE5D50; }\n\n/*\n商品アイテム(商品紹介D)\n\n6項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayD\n\nStyleguide 7.1.3\n*/\n.ec-displayD {\n display: flex;\n justify-content: space-between;\n flex-wrap: wrap-reverse; }\n @media only screen and (min-width: 768px) {\n .ec-displayD {\n box-sizing: border-box;\n flex-wrap: nowrap; } }\n .ec-displayD .ec-displayD__cell {\n width: 30%;\n margin-bottom: 8px; }\n .ec-displayD .ec-displayD__cell a {\n color: inherit;\n text-decoration: none; }\n .ec-displayD .ec-displayD__cell a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-displayD .ec-displayD__cell {\n width: 14.3083%;\n margin-bottom: 16px; } }\n .ec-displayD .ec-displayD__cell:hover {\n text-decoration: none; }\n .ec-displayD .ec-displayD__cell:hover img {\n opacity: .8; }\n .ec-displayD .ec-displayD__img {\n display: block;\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n検索・一覧表示\n\n検索欄や、一覧表示に使用するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.2\n*/\n/*\nトピックパス\n\n検索結果で表示されるトピックパスのスタイルです。\n\nex [商品一覧ページ 横並びリスト部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-topicpath\n\nStyleguide 7.2.1\n*/\n.ec-topicpath {\n letter-spacing: -.4em;\n -webkit-margin-before: 0;\n -webkit-margin-after: 0;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n -webkit-padding-start: 0;\n border-top: 1px solid #ccc;\n border-bottom: 1px dotted #ccc;\n padding: 10px;\n list-style: none;\n overflow: hidden;\n font-size: 12px;\n color: #0092C4; }\n @media only screen and (min-width: 768px) {\n .ec-topicpath {\n padding: 30px 0 10px;\n border: 0;\n font-size: 16px; } }\n .ec-topicpath .ec-topicpath__item a {\n color: inherit;\n text-decoration: none; }\n .ec-topicpath .ec-topicpath__item a:hover {\n text-decoration: none; }\n .ec-topicpath .ec-topicpath__divider {\n color: #000; }\n .ec-topicpath .ec-topicpath__item,\n .ec-topicpath .ec-topicpath__divider,\n .ec-topicpath .ec-topicpath__item--active {\n display: inline-block;\n min-width: 16px;\n text-align: center;\n position: relative;\n letter-spacing: normal; }\n .ec-topicpath .ec-topicpath__item--active {\n font-weight: bold; }\n .ec-topicpath .ec-topicpath__item--active a {\n color: inherit;\n text-decoration: none; }\n .ec-topicpath .ec-topicpath__item--active a:hover {\n text-decoration: none; }\n\n/*\nページャ\n\n検索結果で表示される商品一覧のスタイルです。\n\nex [商品一覧ページ ページャ部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-pager\n\nStyleguide 7.2.2\n*/\n.ec-pager {\n list-style: none;\n list-style-type: none;\n margin: 0 auto;\n padding: 1em 0;\n text-align: center; }\n .ec-pager .ec-pager__item,\n .ec-pager .ec-pager__item--active {\n display: inline-block;\n min-width: 29px;\n padding: 0 3px 0 2px;\n text-align: center;\n position: relative; }\n .ec-pager .ec-pager__item a,\n .ec-pager .ec-pager__item--active a {\n color: inherit;\n text-decoration: none; }\n .ec-pager .ec-pager__item a:hover,\n .ec-pager .ec-pager__item--active a:hover {\n text-decoration: none; }\n .ec-pager .ec-pager__item a,\n .ec-pager .ec-pager__item--active a {\n color: inherit;\n display: block;\n line-height: 1.8;\n padding: 5px 1em;\n text-decoration: none; }\n .ec-pager .ec-pager__item a:hover,\n .ec-pager .ec-pager__item--active a:hover {\n color: inherit; }\n .ec-pager .ec-pager__item--active {\n background: #F3F3F3; }\n .ec-pager .ec-pager__item:hover {\n background: #F3F3F3; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n visibility: hidden; }\n 100% {\n opacity: 1;\n visibility: visible; } }\n\n@keyframes fadeOut {\n 0% {\n opacity: 1;\n visibility: visible; }\n 100% {\n opacity: 0;\n visibility: hidden; } }\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1; }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nカート\n\nショッピングカートに関するスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.3\n*/\n/*\nカートヘッダ\n\n購入完了までの手順や、現在の状態を表示します。\n\nul 要素を用いたリスト要素としてマークアップします。\n\nex [カートページ ヘッダ部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-progress\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.3.1\n*/\n.ec-progress {\n margin: 0 auto;\n padding: 8px 0 16px;\n display: table;\n table-layout: fixed;\n width: 100%;\n max-width: 600px;\n list-style: none; }\n @media only screen and (min-width: 768px) {\n .ec-progress {\n margin-bottom: 30px;\n padding: 0; } }\n .ec-progress .ec-progress__item {\n display: table-cell;\n position: relative;\n font-size: 14px;\n text-align: center;\n font-weight: bold;\n z-index: 10; }\n .ec-progress .ec-progress__item:after {\n content: '';\n position: absolute;\n display: block;\n background: #525263;\n width: 100%;\n height: 0.25em;\n top: 1.25em;\n left: 50%;\n margin-left: 1.5em\\9;\n z-index: -1; }\n .ec-progress .ec-progress__item:last-child:after {\n display: none; }\n .ec-progress .ec-progress__number {\n line-height: 30px;\n width: 30px;\n height: 30px;\n margin-bottom: 5px;\n font-size: 12px;\n background: #525263;\n color: #fff;\n top: 0;\n left: 18px;\n display: inline-block;\n text-align: center;\n vertical-align: middle;\n border-radius: 50%; }\n @media only screen and (min-width: 768px) {\n .ec-progress .ec-progress__number {\n line-height: 42px;\n width: 42px;\n height: 42px;\n font-size: 20px; } }\n .ec-progress .ec-progress__label {\n font-size: 12px; }\n .ec-progress .is-complete .ec-progress__number {\n background: #5CB1B1; }\n .ec-progress .is-complete .ec-progress__label {\n color: #5CB1B1; }\n\n/*\nカートナビゲーション\n\nカートナビゲーションを表示します。 カートに追加された商品の個数も表示します。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerCart\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.5\n*/\n@media only screen and (min-width: 768px) {\n .ec-cartNaviWrap {\n position: relative; } }\n\n.ec-cartNavi {\n display: inline-block;\n padding: 10px 0 0 20px;\n width: auto;\n color: black;\n background: transparent; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi {\n display: flex;\n justify-content: space-between;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 12px 17px 10px;\n width: auto;\n min-width: 140px;\n height: 44px;\n white-space: nowrap;\n cursor: pointer;\n background: #F8F8F8; } }\n .ec-cartNavi .ec-cartNavi__icon {\n display: inline-block;\n font-size: 20px;\n display: inline-block;\n opacity: 1;\n visibility: visible;\n animation: fadeIn 200ms linear 0s;\n position: relative; }\n .ec-cartNavi .ec-cartNavi__badge {\n display: inline-block;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 5px;\n height: 17px;\n font-size: 10px;\n line-height: 0.7;\n vertical-align: top;\n color: #fff;\n text-align: left;\n white-space: nowrap;\n background-color: #DE5D50;\n position: absolute;\n left: 60%;\n top: -10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi .ec-cartNavi__badge {\n display: inline-block;\n min-width: 17px;\n position: relative;\n left: 0;\n top: 0; } }\n .ec-cartNavi .ec-cartNavi__price {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi .ec-cartNavi__price {\n display: inline-block;\n font-size: 14px;\n font-weight: normal;\n vertical-align: middle; } }\n\n.ec-cartNavi.is-active .ec-cartNavi__icon:before {\n content: \"\\f00d\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900; }\n\n.ec-cartNavi.is-active .ec-cartNavi__badge {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi.is-active .ec-cartNavi__badge {\n display: none; } }\n\n/*\nカートナビゲーションのポップアップ(商品詳細)\n\nカートナビゲーションのポップアップを表示します。カートに追加された商品の詳細が表示されます。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:350px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='close')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n +b.ec-cartNaviIsset\n +e.cart\n +e.cartImage\n img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n +e.cartContent\n +e.cartContentTitle ミニテーブル\n +e.cartContentPrice ¥ 12,960\n +e.cartContentTax 税込\n +e.cartContentNumber 数量:1\n +e.action\n a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n a.ec-blockBtn.ec-cartNavi--cancel キャンセル\n\nStyleguide 7.3.6\n*/\n.ec-cartNaviIsset {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 20;\n position: absolute;\n right: 0; }\n @media only screen and (min-width: 768px) {\n .ec-cartNaviIsset {\n margin-top: 10px;\n min-width: 256px;\n max-width: 256px; }\n .ec-cartNaviIsset::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px; } }\n .ec-cartNaviIsset .ec-cartNaviIsset__cart {\n border-bottom: 1px solid #E8E8E8;\n margin-bottom: 16px;\n padding-bottom: 32px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cart:after {\n content: \" \";\n display: table; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cart:after {\n clear: both; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartImage {\n float: left;\n width: 45%; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartImage img {\n width: 100%; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContent {\n float: right;\n width: 55%;\n padding-left: 16px;\n text-align: left;\n box-sizing: border-box; }\n .ec-cartNaviIsset .ec-cartNaviIsset__action .ec-blockBtn--action {\n color: #fff;\n margin-bottom: 8px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentTitle {\n margin-bottom: 8px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentPrice {\n font-weight: bold; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentTax {\n display: inline-block;\n font-size: 12px;\n font-weight: normal;\n margin-left: 2px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentNumber {\n font-size: 14px; }\n\n.ec-cartNaviIsset.is-active {\n display: block; }\n\n/*\nカートナビゲーションのポップアップ(商品なし)\n\nカートナビゲーションのポップアップを表示します。商品が登録されていない場合の表示です。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:170px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='cart')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n .ec-cartNaviNull\n .ec-cartNaviNull__message\n p 現在カート内に\n br\n | 商品がございません。\n //+b.ec-cartNaviIsset\n // +e.cart\n // +e.cartImage\n // img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n // +e.cartContent\n // +e.cartContentTitle ミニテーブル\n // +e.cartContentPrice ¥ 12,960\n // +e.cartContentTax 税込\n // +e.cartContentNumber 数量:1\n // +e.action\n // a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n // a.ec-blockBtn キャンセル\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.7\n*/\n.ec-cartNaviNull {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 3;\n position: absolute;\n right: 0; }\n @media only screen and (min-width: 768px) {\n .ec-cartNaviNull {\n margin-top: 10px;\n min-width: 256px;\n max-width: 256px; }\n .ec-cartNaviNull::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px; } }\n .ec-cartNaviNull .ec-cartNaviNull__message {\n border: 1px solid #D9D9D9;\n padding: 16px 0;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n background-color: #F99; }\n .ec-cartNaviNull .ec-cartNaviNull__message p {\n margin: 0; }\n\n.ec-cartNaviNull.is-active {\n display: block; }\n\n/*\n総計\n\n会計時の合計金額、総計を表示します。\n\nex [カートページ 統計部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-totalBox\n\nStyleguide 7.3.8\n*/\n.ec-totalBox {\n background: #F3F3F3;\n padding: 16px;\n margin-bottom: 16px; }\n .ec-totalBox .ec-totalBox__spec {\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: space-between;\n justify-content: space-between;\n -ms-flex-pack: space-between;\n margin-bottom: 8px; }\n .ec-totalBox .ec-totalBox__spec dt {\n font-weight: normal;\n text-align: left; }\n .ec-totalBox .ec-totalBox__spec dd {\n text-align: right; }\n .ec-totalBox .ec-totalBox__spec .ec-totalBox .ec-totalBox__spec__specTotal {\n color: #DE5D50; }\n .ec-totalBox .ec-totalBox__total {\n border-top: 1px dotted #ccc;\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight: bold; }\n .ec-totalBox .ec-totalBox__paymentTotal {\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight: bold; }\n .ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__price,\n .ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__taxLabel {\n color: #DE5D50; }\n .ec-totalBox .ec-totalBox__price {\n margin-left: 16px;\n font-size: 16px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-totalBox .ec-totalBox__price {\n font-size: 24px; } }\n .ec-totalBox .ec-totalBox__taxLabel {\n margin-left: 8px;\n font-size: 12px; }\n @media only screen and (min-width: 768px) {\n .ec-totalBox .ec-totalBox__taxLabel {\n font-size: 14px; } }\n .ec-totalBox .ec-totalBox__taxRate {\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: flex-end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n margin-bottom: 8px;\n font-size: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-totalBox .ec-totalBox__taxRate {\n font-size: 12px; } }\n .ec-totalBox .ec-totalBox__taxRate dt {\n font-weight: normal;\n text-align: left;\n margin-right: 8px; }\n .ec-totalBox .ec-totalBox__taxRate dt::before {\n content: \"[ \"; }\n .ec-totalBox .ec-totalBox__taxRate dd {\n text-align: right; }\n .ec-totalBox .ec-totalBox__taxRate dd::after {\n content: \" ]\"; }\n .ec-totalBox .ec-totalBox__pointBlock {\n padding: 18px 20px 10px;\n margin-bottom: 10px;\n background: #fff; }\n .ec-totalBox .ec-totalBox__btn {\n color: #fff; }\n .ec-totalBox .ec-totalBox__btn a {\n color: inherit;\n text-decoration: none; }\n .ec-totalBox .ec-totalBox__btn a:hover {\n text-decoration: none; }\n .ec-totalBox .ec-totalBox__btn .ec-blockBtn--action {\n font-size: 16px;\n font-weight: bold; }\n .ec-totalBox .ec-totalBox__btn .ec-blockBtn--cancel {\n margin-top: 8px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nお知らせ\n\n新着情報やバナーなどの掲載項目を紹介していきます。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 8.1\n*/\n/*\n新着情報\n\n新着情報の掲載をします。\n\nex [トップページ 新着情報部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+ec-news\n\nStyleguide 8.1.1\n*/\n.ec-news {\n margin-bottom: 16px;\n background: #F8F8F8; }\n @media only screen and (min-width: 768px) {\n .ec-news {\n margin-right: 3%; } }\n @media only screen and (min-width: 768px) {\n .ec-news {\n margin-bottom: 32px; } }\n .ec-news .ec-news__title {\n font-weight: bold;\n padding: 8px;\n font-size: 16px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-news .ec-news__title {\n padding: 16px;\n text-align: left;\n font-size: 24px; } }\n .ec-news .ec-news__items {\n padding: 0;\n list-style: none;\n border-top: 1px dotted #ccc; }\n\n/*\n折りたたみ項目\n\n折りたたみ項目を掲載します。\n\nex [トップページ 折りたたみ項目部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+b.ec-news\n +e.title 新着情報\n +e.UL.items\n +e.LI.item\n +b.ec-newsline.is_active\n +e.info\n +e.date 2016/09/29\n +e.comment サイトオープンしました\n +e.close\n a.ec-closeBtn--circle\n span.ec-closeBtn--circle__icon\n .ec-icon\n img(src='/moc/icon/angle-down-white.svg', alt='')\n +e.description 一人暮らしからオフィスなどさまざまなシーンで あなたの生活をサポートするグッズをご家庭へお届けします!\n\nStyleguide 8.1.2\n*/\n.ec-newsline {\n display: flex;\n flex-wrap: wrap;\n overflow: hidden;\n padding: 0 16px; }\n .ec-newsline .ec-newsline__info {\n width: 100%;\n padding: 16px 0; }\n .ec-newsline .ec-newsline__info:after {\n content: \" \";\n display: table; }\n .ec-newsline .ec-newsline__info:after {\n clear: both; }\n .ec-newsline .ec-newsline__date {\n display: inline-block;\n margin-right: 10px;\n float: left; }\n .ec-newsline .ec-newsline__comment {\n display: inline-block;\n float: left; }\n .ec-newsline .ec-newsline__close {\n float: right;\n display: inline-block;\n text-align: right; }\n .ec-newsline .ec-newsline__close .ec-closeBtn--circle {\n display: inline-block;\n width: 25px;\n height: 25px;\n min-width: 25px;\n min-height: 25px; }\n .ec-newsline .ec-newsline__description {\n width: 100%;\n height: 0;\n transition: all .2s ease-out; }\n .ec-newsline.is_active .ec-newsline__description {\n height: auto;\n transition: all .2s ease-out;\n padding-bottom: 16px; }\n .ec-newsline.is_active .ec-icon img {\n transform: rotateX(180deg); }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nマイページ\n\nマイページで利用するためのスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 9.1\n*/\n/*\nマイページ\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist\n\nStyleguide 9.1.1\n*/\n.ec-navlistRole .ec-navlistRole__navlist {\n display: flex;\n flex-wrap: wrap;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 1px 0 0 1px;\n margin-bottom: 32px;\n padding: 0;\n list-style: none; }\n .ec-navlistRole .ec-navlistRole__navlist a {\n color: inherit;\n text-decoration: none; }\n .ec-navlistRole .ec-navlistRole__navlist a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-navlistRole .ec-navlistRole__navlist {\n flex-wrap: nowrap; } }\n\n.ec-navlistRole .ec-navlistRole__item {\n width: 50%;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 0 1px 1px 0;\n text-align: center;\n font-weight: bold; }\n .ec-navlistRole .ec-navlistRole__item a {\n padding: 16px;\n width: 100%;\n display: inline-block; }\n .ec-navlistRole .ec-navlistRole__item a:hover {\n background: #f5f7f8; }\n\n.ec-navlistRole .active a {\n color: #DE5D50; }\n\n/*\nマイページ(お気に入り機能無効)\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist_noFavorite\n\nStyleguide 9.1.2\n*/\n/*\nWelcome メッセージ\n\nマイページで表示するログイン名の表示コンポーネントです。\n\nex [マイページ メニューリスト下部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-welcomeMsg\n\nStyleguide 9.1.3\n*/\n.ec-welcomeMsg {\n margin-right: auto;\n margin-left: auto;\n padding-left: 16px;\n padding-right: 16px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n margin: 1em 0;\n padding-bottom: 32px;\n text-align: center;\n border-bottom: 1px dotted #ccc; }\n .ec-welcomeMsg:after {\n content: \" \";\n display: table; }\n .ec-welcomeMsg:after {\n clear: both; }\n .ec-welcomeMsg textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-welcomeMsg img {\n max-width: 100%; }\n .ec-welcomeMsg html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-welcomeMsg *,\n .ec-welcomeMsg *::before,\n .ec-welcomeMsg *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-welcomeMsg img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-welcomeMsg {\n padding-left: 26px;\n padding-right: 26px; } }\n\n/*\nお気に入り一覧\n\nお気に入り一覧で表示するアイテムの表示コンポーネントです。\n\nex [マイページ お気に入り一覧](http://demo3.ec-cube.net/mypage/favorite)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-favorite\n\nStyleguide 9.1.4\n*/\n.ec-favoriteRole .ec-favoriteRole__header {\n margin-bottom: 16px; }\n\n.ec-favoriteRole .ec-favoriteRole__itemList {\n display: flex;\n flex-wrap: wrap;\n padding: 0;\n list-style: none; }\n .ec-favoriteRole .ec-favoriteRole__itemList a {\n color: inherit;\n text-decoration: none; }\n .ec-favoriteRole .ec-favoriteRole__itemList a:hover {\n text-decoration: none; }\n\n.ec-favoriteRole .ec-favoriteRole__item {\n margin-bottom: 8px;\n width: 47.5%;\n position: relative;\n box-sizing: border-box;\n padding: 10px; }\n .ec-favoriteRole .ec-favoriteRole__item-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-favoriteRole .ec-favoriteRole__item-image {\n height: 250px; } }\n .ec-favoriteRole .ec-favoriteRole__item img {\n width: auto;\n max-height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-favoriteRole .ec-favoriteRole__item {\n width: 25%; } }\n .ec-favoriteRole .ec-favoriteRole__item .ec-closeBtn--circle {\n position: absolute;\n right: 10px;\n top: 10px; }\n .ec-favoriteRole .ec-favoriteRole__item .ec-closeBtn--circle .ec-icon img {\n width: 1em;\n height: 1em; }\n\n.ec-favoriteRole .ec-favoriteRole__itemThumb {\n display: block;\n height: auto;\n margin-bottom: 8px; }\n\n.ec-favoriteRole .ec-favoriteRole__itemTitle {\n margin-bottom: 2px; }\n\n.ec-favoriteRole .ec-favoriteRole__itemPrice {\n font-weight: bold;\n margin-bottom: 0; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n標準セクション\n\n通常のコンテナブロックです。\n\nex [商品詳細ページ コンテナ](http://demo3.ec-cube.net/products/detail/33)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-roleRole\n\nStyleguide 11.1\n*/\n.ec-role {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-role:after {\n content: \" \";\n display: table; }\n .ec-role:after {\n clear: both; }\n .ec-role textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-role img {\n max-width: 100%; }\n .ec-role html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-role *,\n .ec-role *::before,\n .ec-role *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-role img {\n width: 100%; }\n\n/*\nマイページセクション\n\nマイページ専用のコンテナブロックです。\n\nex [マイページ コンテナ](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-mypageRole\n\nStyleguide 11.1.2\n*/\n.ec-mypageRole {\n margin-right: auto;\n margin-left: auto;\n padding-left: 16px;\n padding-right: 16px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%; }\n .ec-mypageRole:after {\n content: \" \";\n display: table; }\n .ec-mypageRole:after {\n clear: both; }\n .ec-mypageRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-mypageRole img {\n max-width: 100%; }\n .ec-mypageRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-mypageRole *,\n .ec-mypageRole *::before,\n .ec-mypageRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-mypageRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-mypageRole {\n padding-left: 26px;\n padding-right: 26px; } }\n @media only screen and (min-width: 768px) {\n .ec-mypageRole .ec-pageHeader h1 {\n margin: 10px 0 48px;\n padding: 8px 0 18px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n visibility: hidden; }\n 100% {\n opacity: 1;\n visibility: visible; } }\n\n@keyframes fadeOut {\n 0% {\n opacity: 1;\n visibility: visible; }\n 100% {\n opacity: 0;\n visibility: hidden; } }\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1; }\n\n/*\nヘッダー\n\nヘッダー用のプロジェクトコンポーネントを提供します。\n\nex [トップページ ヘッダー](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+b.ec-layoutRole\n +e.header\n +ec-headerRole\n +ec-headerNaviRole\n +ec-categoryNaviRole\n\nStyleguide 11.2\n*/\n.ec-layoutRole {\n width: 100%;\n transition: transform 0.3s;\n background: #fff; }\n .ec-layoutRole .ec-layoutRole__contentTop {\n padding: 0; }\n .ec-layoutRole .ec-layoutRole__contents {\n margin-right: auto;\n margin-left: auto;\n width: 100%;\n max-width: 1150px;\n display: flex;\n flex-wrap: nowrap; }\n .ec-layoutRole .ec-layoutRole__main {\n width: 100%; }\n .ec-layoutRole .ec-layoutRole__mainWithColumn {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-layoutRole .ec-layoutRole__mainWithColumn {\n width: 75%; } }\n .ec-layoutRole .ec-layoutRole__mainBetweenColumn {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-layoutRole .ec-layoutRole__mainBetweenColumn {\n width: 50%; } }\n .ec-layoutRole .ec-layoutRole__left,\n .ec-layoutRole .ec-layoutRole__right {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-layoutRole .ec-layoutRole__left,\n .ec-layoutRole .ec-layoutRole__right {\n display: block;\n width: 25%; } }\n\n.ec-headerRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n padding-top: 15px;\n position: relative;\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n width: auto; }\n .ec-headerRole:after {\n content: \" \";\n display: table; }\n .ec-headerRole:after {\n clear: both; }\n .ec-headerRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-headerRole img {\n max-width: 100%; }\n .ec-headerRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-headerRole *,\n .ec-headerRole *::before,\n .ec-headerRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-headerRole img {\n width: 100%; }\n .ec-headerRole:after {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerRole:after {\n content: \" \";\n display: table; }\n .ec-headerRole:after {\n clear: both; } }\n .ec-headerRole::before {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerRole {\n width: 100%; }\n .ec-headerRole:after {\n content: \" \";\n display: table; }\n .ec-headerRole:after {\n clear: both; } }\n .ec-headerRole .ec-headerRole__title {\n width: 100%; }\n .ec-headerRole .ec-headerRole__navSP {\n display: block;\n position: absolute;\n top: 15px;\n width: 27%;\n right: 0;\n text-align: right; }\n @media only screen and (min-width: 768px) {\n .ec-headerRole .ec-headerRole__navSP {\n display: none; } }\n\n.ec-headerNaviRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-top: 15px; }\n .ec-headerNaviRole:after {\n content: \" \";\n display: table; }\n .ec-headerNaviRole:after {\n clear: both; }\n .ec-headerNaviRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-headerNaviRole img {\n max-width: 100%; }\n .ec-headerNaviRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-headerNaviRole *,\n .ec-headerNaviRole *::before,\n .ec-headerNaviRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-headerNaviRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-headerNaviRole {\n padding-bottom: 40px; } }\n .ec-headerNaviRole .ec-headerNaviRole__left {\n width: calc(100% / 3); }\n .ec-headerNaviRole .ec-headerNaviRole__search {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerNaviRole .ec-headerNaviRole__search {\n display: inline-block;\n margin-top: 10px; }\n .ec-headerNaviRole .ec-headerNaviRole__search a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__search a:hover {\n text-decoration: none; } }\n .ec-headerNaviRole .ec-headerNaviRole__navSP {\n display: block; }\n @media only screen and (min-width: 768px) {\n .ec-headerNaviRole .ec-headerNaviRole__navSP {\n display: none; }\n .ec-headerNaviRole .ec-headerNaviRole__navSP a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__navSP a:hover {\n text-decoration: none; } }\n .ec-headerNaviRole .ec-headerNaviRole__right {\n width: calc(100% * 2 / 3);\n display: flex;\n justify-content: flex-end;\n align-items: center; }\n .ec-headerNaviRole .ec-headerNaviRole__nav {\n display: inline-block; }\n .ec-headerNaviRole .ec-headerNaviRole__nav a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__nav a:hover {\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__cart {\n display: inline-block; }\n .ec-headerNaviRole .ec-headerNaviRole__cart a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__cart a:hover {\n text-decoration: none; }\n\n.ec-headerNavSP {\n display: block;\n cursor: pointer;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 10px;\n z-index: 1000; }\n .ec-headerNavSP .fas {\n vertical-align: top; }\n @media only screen and (min-width: 768px) {\n .ec-headerNavSP {\n display: none; } }\n\n.ec-headerNavSP.is-active {\n display: none; }\n\n/*\nヘッダー:タイトル\n\nヘッダー内で使用されるタイトルコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerTitle\n\nStyleguide 11.2.1\n*/\n.ec-headerTitle {\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%; }\n .ec-headerTitle textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-headerTitle img {\n max-width: 100%; }\n .ec-headerTitle html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-headerTitle *,\n .ec-headerTitle *::before,\n .ec-headerTitle *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-headerTitle img {\n width: 100%; }\n .ec-headerTitle .ec-headerTitle__title {\n text-align: center; }\n .ec-headerTitle .ec-headerTitle__title h1 {\n margin: 0;\n padding: 0; }\n .ec-headerTitle .ec-headerTitle__title a {\n display: inline-block;\n margin-bottom: 30px;\n text-decoration: none;\n font-size: 20px;\n font-weight: bold;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-headerTitle .ec-headerTitle__title a {\n font-size: 40px; } }\n .ec-headerTitle .ec-headerTitle__title a:hover {\n opacity: .8; }\n .ec-headerTitle .ec-headerTitle__subtitle {\n font-size: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-headerTitle .ec-headerTitle__subtitle {\n font-size: 16px;\n margin-bottom: 10px; } }\n .ec-headerTitle .ec-headerTitle__subtitle a {\n display: inline-block;\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n\n/*\nヘッダー:ユーザナビゲーション\n\nヘッダー内でユーザに関与するナビゲーションコンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__nav`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.3\n*/\n.ec-headerNav {\n text-align: right; }\n .ec-headerNav .ec-headerNav__item {\n margin-left: 0;\n display: inline-block;\n font-size: 28px; }\n .ec-headerNav .ec-headerNav__itemIcon {\n display: inline-block;\n margin-right: 10px;\n margin-left: 10px;\n font-size: 18px;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-headerNav .ec-headerNav__itemIcon {\n margin-right: 0;\n font-size: 20px; } }\n .ec-headerNav .ec-headerNav__itemLink {\n display: none;\n margin-right: 5px;\n font-size: 14px;\n vertical-align: middle;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-headerNav .ec-headerNav__itemLink {\n display: inline-block; } }\n\n/*\nヘッダー:検索ボックス\n\nヘッダー内で使用される商品検索コンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__search`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerSearch\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.4\n*/\n.ec-headerSearch:after {\n content: \" \";\n display: table; }\n\n.ec-headerSearch:after {\n clear: both; }\n\n.ec-headerSearch .ec-headerSearch__category {\n float: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__category {\n float: left;\n width: 43%; } }\n .ec-headerSearch .ec-headerSearch__category .ec-select {\n overflow: hidden;\n width: 100%;\n margin: 0;\n text-align: center; }\n .ec-headerSearch .ec-headerSearch__category .ec-select select {\n width: 100%;\n cursor: pointer;\n padding: 8px 24px 8px 8px;\n text-indent: 0.01px;\n text-overflow: ellipsis;\n border: none;\n outline: none;\n background: transparent;\n background-image: none;\n box-shadow: none;\n appearance: none;\n color: #fff; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__category .ec-select select {\n max-width: 165px;\n height: 36px; } }\n .ec-headerSearch .ec-headerSearch__category .ec-select select option {\n color: #000; }\n .ec-headerSearch .ec-headerSearch__category .ec-select select::-ms-expand {\n display: none; }\n .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {\n position: relative;\n border: 0;\n background: #000;\n color: #fff;\n border-top-right-radius: 10px;\n border-top-left-radius: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {\n border-top-right-radius: inherit;\n border-top-left-radius: 50px;\n border-bottom-left-radius: 50px; } }\n .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search::before {\n position: absolute;\n top: 0.8em;\n right: 0.4em;\n width: 0;\n height: 0;\n padding: 0;\n content: '';\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid #fff;\n pointer-events: none; }\n\n.ec-headerSearch .ec-headerSearch__keyword {\n position: relative;\n color: #525263;\n border: 1px solid #ccc;\n background-color: #f6f6f6;\n border-bottom-right-radius: 10px;\n border-bottom-left-radius: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__keyword {\n float: right;\n width: 57%;\n border-bottom-left-radius: inherit;\n border-top-right-radius: 50px;\n border-bottom-right-radius: 50px; } }\n .ec-headerSearch .ec-headerSearch__keyword input[type=\"search\"] {\n width: 100%;\n height: 34px;\n font-size: 1.2rem;\n border: 0 none;\n padding: 0.5em 50px 0.5em 1em;\n box-shadow: none;\n background: none;\n box-sizing: border-box;\n margin-bottom: 0; }\n .ec-headerSearch .ec-headerSearch__keyword .ec-icon {\n width: 22px;\n height: 22px; }\n\n.ec-headerSearch .ec-headerSearch__keywordBtn {\n border: 0;\n background: none;\n position: absolute;\n right: 5px;\n top: 50%;\n transform: translateY(-55%);\n display: block;\n white-space: nowrap;\n z-index: 1; }\n\n/*\nヘッダー:カテゴリナビ\n\nヘッダー内で使用されている商品のカテゴリ一覧として使用します。\n`li`の中に`ul > li`要素を入れることで、階層を深くする事ができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+ec-itemNav\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 11.2.5\n*/\n.ec-categoryNaviRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: none; }\n .ec-categoryNaviRole:after {\n content: \" \";\n display: table; }\n .ec-categoryNaviRole:after {\n clear: both; }\n .ec-categoryNaviRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-categoryNaviRole img {\n max-width: 100%; }\n .ec-categoryNaviRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-categoryNaviRole *,\n .ec-categoryNaviRole *::before,\n .ec-categoryNaviRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-categoryNaviRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-categoryNaviRole {\n display: block;\n width: 100%; }\n .ec-categoryNaviRole a {\n color: inherit;\n text-decoration: none; }\n .ec-categoryNaviRole a:hover {\n text-decoration: none; } }\n\n.ec-itemNav {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n text-align: center; }\n\n.ec-itemNav__nav {\n display: block;\n margin: 0 auto;\n padding: 0;\n width: auto;\n height: auto;\n list-style-type: none;\n text-align: center;\n vertical-align: bottom; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav {\n display: inline-block; } }\n\n.ec-itemNav__nav li {\n float: none;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: center;\n position: relative; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li {\n float: left;\n width: auto; } }\n\n.ec-itemNav__nav li a {\n display: block;\n border-bottom: 1px solid #E8E8E8;\n margin: 0;\n padding: 16px;\n height: auto;\n color: #2e3233;\n font-size: 16px;\n font-weight: bold;\n line-height: 20px;\n text-decoration: none;\n text-align: left;\n background: #fff;\n border-bottom: 1px solid #E8E8E8; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li a {\n text-align: center;\n border-bottom: none; } }\n\n.ec-itemNav__nav li ul {\n display: none;\n z-index: 0;\n margin: 0;\n padding: 0;\n min-width: 200px;\n list-style: none;\n position: static;\n top: 100%;\n left: 0; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul {\n display: block;\n z-index: 100;\n position: absolute; } }\n\n.ec-itemNav__nav li ul li {\n overflow: hidden;\n width: 100%;\n height: auto;\n transition: .3s; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul li {\n overflow: hidden;\n height: 0; } }\n\n.ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #E8E8E8;\n padding: 16px 22px 16px 16px;\n font-size: 16px;\n font-weight: bold;\n color: white;\n text-align: left;\n background: black; }\n\n.ec-itemNav__nav > li:hover > a {\n background: #fafafa; }\n\n.ec-itemNav__nav > li:hover li:hover > a {\n background: #333; }\n\n@media only screen and (min-width: 768px) {\n .ec-itemNav__nav > li:hover > ul > li {\n overflow: visible;\n height: auto; } }\n\n.ec-itemNav__nav li ul li ul {\n top: 0;\n left: 100%;\n width: auto; }\n\n@media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul li ul:before {\n content: \"\\f054\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n font-size: 12px;\n color: white;\n position: absolute;\n top: 19px;\n right: auto;\n left: -20px; } }\n\n@media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul li:hover > ul > li {\n overflow: visible;\n height: auto;\n width: auto; } }\n\n.ec-itemNav__nav li ul li ul li a {\n background: #7D7D7D; }\n\n.ec-itemNav__nav li:hover ul li ul li a:hover {\n background: #333; }\n\n/*\nヘッダー:SPヘッダー\n\nSP時のみ出現するヘッダーに関係するコンポーネントです。
\nex [トップページ](http://demo3.ec-cube.net/)画面サイズが768px以下に該当。
\n
\n`.ec-drawerRole`:SPのドロワー内の要素をwrapするコンポーネントです。
\n`.ec-headerSearch`、`.ec-headerNav`、`.ec-itemNav`は`.ec-drawerRole`の子要素にある場合、ドロワーに適したスタイルに変化します。

\n`.ec-overlayRole`:SPのドロワー出現時にz-indexがドロワー以下の要素に半透明の黒背景をかぶせるコンポーネントです。
\n\nStyleguide 11.2.6\n*/\n.ec-drawerRole {\n overflow-y: scroll;\n background: black;\n width: 260px;\n height: 100vh;\n transform: translateX(-300px);\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1;\n transition: z-index 0ms 1ms; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRole {\n display: none; } }\n .ec-drawerRole .ec-headerSearchArea {\n padding: 20px 10px;\n width: 100%;\n background: #F8F8F8; }\n .ec-drawerRole .ec-headerSearch {\n padding: 16px 8px 26px;\n background: #EBEBEB;\n color: #636378; }\n .ec-drawerRole .ec-headerSearch select {\n width: 100% !important; }\n .ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading {\n border-top: 1px solid #CCCCCC;\n border-bottom: 1px solid #CCCCCC;\n padding: 1em 10px;\n font-size: 16px;\n font-weight: bold;\n color: black;\n background: #F8F8F8; }\n .ec-drawerRole .ec-headerCategoryArea p {\n margin-top: 0;\n margin-bottom: 0; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li a {\n border-bottom: 1px solid #ccc;\n border-bottom: 1px solid #ccc;\n color: black;\n font-weight: normal;\n background: #f8f8f8; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #ccc;\n padding-left: 20px;\n font-weight: normal;\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav > li:hover > a {\n background: #f8f8f8; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav > li:hover li:hover > a {\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li ul li a {\n padding-left: 40px;\n color: black;\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li:hover ul li ul li a:hover {\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li ul li ul li a {\n padding-left: 60px;\n font-weight: normal; }\n .ec-drawerRole .ec-headerLinkArea {\n background: black; }\n .ec-drawerRole .ec-headerLinkArea .ec-headerLink__list {\n border-top: 1px solid #ccc; }\n .ec-drawerRole .ec-headerLinkArea .ec-headerLink__item {\n display: block;\n border-bottom: 1px solid #ccc;\n padding: 15px 20px;\n font-size: 16px;\n font-weight: bold;\n color: white; }\n .ec-drawerRole .ec-headerLinkArea .ec-headerLink__icon {\n display: inline-block;\n width: 28px;\n font-size: 17px; }\n\n.ec-drawerRoleClose {\n display: none;\n cursor: pointer;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 270px;\n z-index: 1000; }\n .ec-drawerRoleClose .fas {\n vertical-align: top; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRoleClose {\n display: none; } }\n\n.ec-drawerRole.is_active {\n display: block;\n transform: translateX(0);\n transition: all .3s;\n z-index: 100000; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRole.is_active {\n display: none; } }\n\n.ec-drawerRoleClose.is_active {\n display: inline-block;\n transition: all .3s; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRoleClose.is_active {\n display: none; } }\n\n.ec-overlayRole {\n position: fixed;\n width: 100%;\n height: 100vh;\n top: 0;\n left: 0;\n opacity: 0;\n background: transparent;\n transform: translateX(0);\n transition: all .3s;\n visibility: hidden; }\n @media only screen and (min-width: 768px) {\n .ec-overlayRole {\n display: none; } }\n\n.have_curtain .ec-overlayRole {\n display: block;\n opacity: 1;\n background: rgba(0, 0, 0, 0.5);\n visibility: visible; }\n @media only screen and (min-width: 768px) {\n .have_curtain .ec-overlayRole {\n display: none; } }\n\n/*\nヘッダー:test\n\ntest\n\nMarkup:\nspan.ec-itemAccordionParent test1\nul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test2\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test3\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test4\n\nStyleguide 11.2.7\n*/\n.ec-itemNavAccordion {\n display: none; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nフッター\n\n全ページで使用されるフッターのプロジェクトコンポーネントです。\n\nex [トップページ フッター](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerRole\n\nStyleguide 11.3\n*/\n.ec-footerRole {\n border-top: 1px solid #7d7d7d;\n margin-top: 30px;\n background: black; }\n @media only screen and (min-width: 768px) {\n .ec-footerRole {\n padding-top: 40px;\n margin-top: 100px; } }\n @media only screen and (min-width: 768px) {\n .ec-footerRole .ec-footerRole__inner {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-footerRole .ec-footerRole__inner:after {\n content: \" \";\n display: table; }\n .ec-footerRole .ec-footerRole__inner:after {\n clear: both; }\n .ec-footerRole .ec-footerRole__inner textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-footerRole .ec-footerRole__inner img {\n max-width: 100%; }\n .ec-footerRole .ec-footerRole__inner html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-footerRole .ec-footerRole__inner *,\n .ec-footerRole .ec-footerRole__inner *::before,\n .ec-footerRole .ec-footerRole__inner *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-footerRole .ec-footerRole__inner img {\n width: 100%; } }\n\n/*\nフッターナビ\n\nフッタープロジェクトで使用するナビゲーション用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.1\n*/\n.ec-footerNavi {\n padding: 0;\n color: white;\n list-style: none;\n text-align: center; }\n .ec-footerNavi .ec-footerNavi__link {\n display: block; }\n @media only screen and (min-width: 768px) {\n .ec-footerNavi .ec-footerNavi__link {\n display: inline-block; } }\n .ec-footerNavi .ec-footerNavi__link a {\n display: block;\n border-bottom: 1px solid #7d7d7d;\n padding: 15px 0;\n font-size: 14px;\n color: inherit;\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-footerNavi .ec-footerNavi__link a {\n display: inline-block;\n border-bottom: none;\n margin: 0 10px;\n padding: 0;\n text-decoration: underline; } }\n .ec-footerNavi .ec-footerNavi__link:hover a {\n opacity: .8;\n text-decoration: none; }\n\n/*\nフッタータイトル\n\nフッタープロジェクトで使用するタイトル用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerTitle\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.2\n*/\n.ec-footerTitle {\n padding: 40px 0 60px;\n text-align: center;\n color: white; }\n @media only screen and (min-width: 768px) {\n .ec-footerTitle {\n padding: 50px 0 80px; } }\n .ec-footerTitle .ec-footerTitle__logo {\n display: block;\n margin-bottom: 10px;\n font-weight: bold; }\n .ec-footerTitle .ec-footerTitle__logo a {\n color: inherit;\n text-decoration: none; }\n .ec-footerTitle .ec-footerTitle__logo a:hover {\n text-decoration: none; }\n .ec-footerTitle .ec-footerTitle__logo a {\n font-size: 22px;\n color: inherit; }\n @media only screen and (min-width: 768px) {\n .ec-footerTitle .ec-footerTitle__logo a {\n font-size: 24px; } }\n .ec-footerTitle .ec-footerTitle__logo:hover a {\n opacity: .8;\n text-decoration: none; }\n .ec-footerTitle .ec-footerTitle__copyright {\n font-size: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-footerTitle .ec-footerTitle__copyright {\n font-size: 12px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nトップページ\n\nトップページ スライド部に関する Project コンポーネントを定義します。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.1.slider.pug\n+ec-sliderRole\n\nStyleguide 12.1\n*/\n.ec-sliderRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n margin-bottom: 24px; }\n .ec-sliderRole:after {\n content: \" \";\n display: table; }\n .ec-sliderRole:after {\n clear: both; }\n .ec-sliderRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-sliderRole img {\n max-width: 100%; }\n .ec-sliderRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-sliderRole *,\n .ec-sliderRole *::before,\n .ec-sliderRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-sliderRole img {\n width: 100%; }\n .ec-sliderRole ul {\n padding: 0;\n list-style: none; }\n\n.ec-sliderItemRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n margin-bottom: 24px; }\n .ec-sliderItemRole:after {\n content: \" \";\n display: table; }\n .ec-sliderItemRole:after {\n clear: both; }\n .ec-sliderItemRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-sliderItemRole img {\n max-width: 100%; }\n .ec-sliderItemRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-sliderItemRole *,\n .ec-sliderItemRole *::before,\n .ec-sliderItemRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-sliderItemRole img {\n width: 100%; }\n .ec-sliderItemRole ul {\n padding: 0;\n list-style: none; }\n .ec-sliderItemRole .item_nav {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-sliderItemRole .item_nav {\n display: flex;\n justify-content: flex-start;\n flex-wrap: wrap;\n margin-bottom: 0; } }\n .ec-sliderItemRole .slideThumb {\n margin-bottom: 25px;\n width: 33%;\n opacity: .8;\n cursor: pointer; }\n .ec-sliderItemRole .slideThumb:focus {\n outline: none; }\n .ec-sliderItemRole .slideThumb:hover {\n opacity: 1; }\n .ec-sliderItemRole .slideThumb img {\n width: 80%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nアイキャッチ\n\nトップページ アイキャッチ部に関する Project コンポーネントを定義します。\n\nex [トップページスライダー直下 アイキャッチ部](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.2.eyecatch.pug\n+ec-eyecatchRole\n\nStyleguide 12.2\n*/\n.ec-eyecatchRole {\n display: flex;\n flex-wrap: wrap;\n margin-bottom: 40px; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole {\n flex-wrap: nowrap; } }\n .ec-eyecatchRole .ec-eyecatchRole__image {\n display: block;\n margin-bottom: 40px;\n width: 100%;\n height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__image {\n order: 2; } }\n .ec-eyecatchRole .ec-eyecatchRole__intro {\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__intro {\n padding-right: 5%;\n order: 1; } }\n .ec-eyecatchRole .ec-eyecatchRole__introEnTitle {\n margin-bottom: .8em;\n font-size: 16px;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__introEnTitle {\n margin-top: 45px; } }\n .ec-eyecatchRole .ec-eyecatchRole__introTitle {\n margin-bottom: .8em;\n font-size: 24px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__introTitle {\n margin-bottom: 1em;\n font-size: 26px; } }\n .ec-eyecatchRole .ec-eyecatchRole__introDescriptiron {\n margin-bottom: 20px;\n font-size: 16px;\n line-height: 2; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__introDescriptiron {\n margin-bottom: 30px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nボタン\n\nトップページで使用されているボタンのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.3\n*/\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nMarkup:\n.ec-inlineBtn--top more\n\nStyleguide 12.3.1\n*/\n.ec-inlineBtn--top {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:focus, .ec-inlineBtn--top.focus, .ec-inlineBtn--top:active:focus, .ec-inlineBtn--top:active.focus, .ec-inlineBtn--top.active:focus, .ec-inlineBtn--top.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--top:hover, .ec-inlineBtn--top:focus, .ec-inlineBtn--top.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--top:active, .ec-inlineBtn--top.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--top.disabled, .ec-inlineBtn--top[disabled],\n fieldset[disabled] .ec-inlineBtn--top {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--top:focus, .ec-inlineBtn--top.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:hover {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:active, .ec-inlineBtn--top.active,\n .open > .ec-inlineBtn--top.dropdown-toggle {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:active:hover, .ec-inlineBtn--top:active:focus, .ec-inlineBtn--top:active.focus, .ec-inlineBtn--top.active:hover, .ec-inlineBtn--top.active:focus, .ec-inlineBtn--top.active.focus,\n .open > .ec-inlineBtn--top.dropdown-toggle:hover,\n .open > .ec-inlineBtn--top.dropdown-toggle:focus,\n .open > .ec-inlineBtn--top.dropdown-toggle.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:active, .ec-inlineBtn--top.active,\n .open > .ec-inlineBtn--top.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--top.disabled:hover, .ec-inlineBtn--top.disabled:focus, .ec-inlineBtn--top.disabled.focus, .ec-inlineBtn--top[disabled]:hover, .ec-inlineBtn--top[disabled]:focus, .ec-inlineBtn--top[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--top:hover,\n fieldset[disabled] .ec-inlineBtn--top:focus,\n fieldset[disabled] .ec-inlineBtn--top.focus {\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top .badge {\n color: black;\n background-color: white; }\n .ec-inlineBtn--top .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n/*\nロングボタン(全幅)\n\nロングタイプのボタンです。\n\nMarkup:\n.ec-blockBtn--top 商品一覧へ\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn--top {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: white;\n background-color: black;\n border-color: black;\n display: block;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--top:focus, .ec-blockBtn--top.focus, .ec-blockBtn--top:active:focus, .ec-blockBtn--top:active.focus, .ec-blockBtn--top.active:focus, .ec-blockBtn--top.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--top:hover, .ec-blockBtn--top:focus, .ec-blockBtn--top.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--top:active, .ec-blockBtn--top.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--top.disabled, .ec-blockBtn--top[disabled],\n fieldset[disabled] .ec-blockBtn--top {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--top:focus, .ec-blockBtn--top.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:hover {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:active, .ec-blockBtn--top.active,\n .open > .ec-blockBtn--top.dropdown-toggle {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:active:hover, .ec-blockBtn--top:active:focus, .ec-blockBtn--top:active.focus, .ec-blockBtn--top.active:hover, .ec-blockBtn--top.active:focus, .ec-blockBtn--top.active.focus,\n .open > .ec-blockBtn--top.dropdown-toggle:hover,\n .open > .ec-blockBtn--top.dropdown-toggle:focus,\n .open > .ec-blockBtn--top.dropdown-toggle.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:active, .ec-blockBtn--top.active,\n .open > .ec-blockBtn--top.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--top.disabled:hover, .ec-blockBtn--top.disabled:focus, .ec-blockBtn--top.disabled.focus, .ec-blockBtn--top[disabled]:hover, .ec-blockBtn--top[disabled]:focus, .ec-blockBtn--top[disabled].focus,\n fieldset[disabled] .ec-blockBtn--top:hover,\n fieldset[disabled] .ec-blockBtn--top:focus,\n fieldset[disabled] .ec-blockBtn--top.focus {\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top .badge {\n color: black;\n background-color: white; }\n .ec-blockBtn--top .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n @media only screen and (min-width: 768px) {\n .ec-blockBtn--top {\n max-width: 260px; } }\n\n/*\n見出し\n\nトップページで使用されている見出しのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.4\n*/\n/*\n横並び見出し\n\n横並びの見出しです。\n\nMarkup:\n.ec-secHeading\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.1\n*/\n.ec-secHeading {\n margin-bottom: 15px;\n color: black; }\n .ec-secHeading .ec-secHeading__en {\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em; }\n .ec-secHeading .ec-secHeading__line {\n display: inline-block;\n margin: 0 20px;\n width: 1px;\n height: 14px;\n background: black; }\n .ec-secHeading .ec-secHeading__ja {\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px; }\n\n/*\n縦並び見出し\n\n縦並びの見出しです。\n\nMarkup:\n.ec-secHeading--tandem\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.2\n*/\n.ec-secHeading--tandem {\n margin-bottom: 15px;\n color: black;\n text-align: center; }\n .ec-secHeading--tandem .ec-secHeading__en {\n display: block;\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em; }\n .ec-secHeading--tandem .ec-secHeading__line {\n display: block;\n margin: 13px auto;\n width: 20px;\n height: 1px;\n background: black; }\n .ec-secHeading--tandem .ec-secHeading__ja {\n display: block;\n margin-bottom: 30px;\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nトピック(アイテム2列)\n\nトップページで使用されているトピックのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.5.1\n*/\n.ec-topicRole {\n padding: 40px 0;\n background: #F8F8F8; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole {\n padding: 60px 0; } }\n .ec-topicRole .ec-topicRole__list {\n display: flex;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole .ec-topicRole__list {\n flex-wrap: nowrap; } }\n .ec-topicRole .ec-topicRole__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole .ec-topicRole__listItem {\n width: calc(100% / 2); }\n .ec-topicRole .ec-topicRole__listItem:not(:last-of-type) {\n margin-right: 30px; } }\n .ec-topicRole .ec-topicRole__listItemTitle {\n margin-top: .5em;\n font-size: 14px;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole .ec-topicRole__listItemTitle {\n margin-top: 1em; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nカテゴリ(アイテム4列 スマホの時は2列)\n\nトップページで使用されているアイテムリストのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.6.1\n*/\n.ec-newItemRole {\n padding: 40px 0; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole {\n padding: 60px 0; } }\n .ec-newItemRole .ec-newItemRole__list {\n display: flex;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__list {\n flex-wrap: nowrap; } }\n .ec-newItemRole .ec-newItemRole__listItem {\n margin-bottom: 4%;\n width: 48%;\n height: auto; }\n .ec-newItemRole .ec-newItemRole__listItem:not(:first-child) a {\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__listItem {\n margin-bottom: 15px;\n width: calc(100% / 4); }\n .ec-newItemRole .ec-newItemRole__listItem:not(:last-of-type) {\n margin-right: 30px; } }\n .ec-newItemRole .ec-newItemRole__listItem:nth-child(odd) {\n margin-right: 4%; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__listItem:nth-child(odd) {\n margin-right: 30px; } }\n .ec-newItemRole .ec-newItemRole__listItemHeading {\n margin-top: calc(45% - 20px); }\n .ec-newItemRole .ec-newItemRole__listItemTitle {\n margin: 8px 0;\n font-size: 14px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__listItemTitle {\n margin: 20px 0 10px; } }\n .ec-newItemRole .ec-newItemRole__listItemPrice {\n font-size: 12px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nカテゴリ(アイテム3列)\n\nトップページで使用されているカテゴリのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.7.1\n*/\n.ec-categoryRole {\n padding: 40px 0;\n color: black;\n background: #F8F8F8; }\n @media only screen and (min-width: 768px) {\n .ec-categoryRole {\n padding: 60px 0; } }\n .ec-categoryRole .ec-categoryRole__list {\n display: flex;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-categoryRole .ec-categoryRole__list {\n flex-wrap: nowrap; } }\n .ec-categoryRole .ec-categoryRole__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto; }\n @media only screen and (min-width: 768px) {\n .ec-categoryRole .ec-categoryRole__listItem {\n width: calc(100% / 3); }\n .ec-categoryRole .ec-categoryRole__listItem:not(:last-of-type) {\n margin-right: 30px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n見出し\n\nトップページで使用されている新着情報のスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.8.1\n*/\n.ec-newsRole {\n padding: 40px 0 0; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole {\n padding: 60px 0 0; } }\n .ec-newsRole .ec-newsRole__news {\n box-sizing: border-box; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__news {\n border: 16px solid #F8F8F8;\n padding: 20px 30px; } }\n .ec-newsRole .ec-newsRole__newsItem {\n width: 100%; }\n .ec-newsRole .ec-newsRole__newsItem:not(:last-of-type) {\n border-bottom: 1px solid #ccc; }\n .ec-newsRole .ec-newsRole__newsItem:last-of-type {\n margin-bottom: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsItem:last-of-type {\n margin-bottom: 0; } }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsItem {\n padding: 20px 0; } }\n .ec-newsRole .ec-newsRole__newsHeading {\n cursor: pointer; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsHeading {\n display: flex; } }\n .ec-newsRole .ec-newsRole__newsDate {\n display: block;\n margin: 15px 0 5px;\n font-size: 12px;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsDate {\n display: inline-block;\n margin: 0;\n min-width: 120px;\n font-size: 14px; } }\n .ec-newsRole .ec-newsRole__newsColumn {\n display: flex; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsColumn {\n display: inline-flex;\n min-width: calc(100% - 120px); } }\n .ec-newsRole .ec-newsRole__newsTitle {\n display: inline-block;\n margin-bottom: 10px;\n width: 90%;\n font-size: 14px;\n font-weight: bold;\n color: #7D7D7D;\n line-height: 1.6; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsTitle {\n margin-bottom: 0;\n line-height: 1.8; } }\n .ec-newsRole .ec-newsRole__newsClose {\n display: inline-block;\n width: 10%;\n position: relative; }\n .ec-newsRole .ec-newsRole__newsCloseBtn {\n display: inline-block;\n margin-left: auto;\n border-radius: 50%;\n width: 20px;\n height: 20px;\n color: white;\n text-align: center;\n background: black;\n cursor: pointer;\n position: absolute;\n right: 5px; }\n .ec-newsRole .ec-newsRole__newsDescription {\n display: none;\n margin: 0 0 10px;\n font-size: 14px;\n line-height: 1.4;\n overflow: hidden; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsDescription {\n margin: 20px 0 0;\n line-height: 1.8; } }\n .ec-newsRole .ec-newsRole__newsDescription a {\n color: #0092C4; }\n .ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription {\n margin: 0 0 10px; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription {\n margin: 20px 0 0; } }\n .ec-newsRole__newsItem.is_active .ec-newsRole__newsCloseBtn i {\n display: inline-block;\n transform: rotateX(180deg) translateY(2px); }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n検索ラベル\n\n商品一覧 ヘッダー部 に関する Project コンポーネントを定義します。\n\nex [商品一覧 ヘッダー部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.1.searchnav.pug\n+ec-searchnavRole__topicpath\n+ec-searchnavRole__info\n\nStyleguide 13.1\n\n*/\n.ec-searchnavRole {\n margin-bottom: 0;\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-searchnavRole:after {\n content: \" \";\n display: table; }\n .ec-searchnavRole:after {\n clear: both; }\n .ec-searchnavRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-searchnavRole img {\n max-width: 100%; }\n .ec-searchnavRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-searchnavRole *,\n .ec-searchnavRole *::before,\n .ec-searchnavRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-searchnavRole img {\n width: 100%; } }\n .ec-searchnavRole .ec-searchnavRole__infos {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n border-top: 0;\n margin-bottom: 16px;\n padding-top: 5px;\n flex-direction: column; }\n .ec-searchnavRole .ec-searchnavRole__infos:after {\n content: \" \";\n display: table; }\n .ec-searchnavRole .ec-searchnavRole__infos:after {\n clear: both; }\n .ec-searchnavRole .ec-searchnavRole__infos textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-searchnavRole .ec-searchnavRole__infos img {\n max-width: 100%; }\n .ec-searchnavRole .ec-searchnavRole__infos html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-searchnavRole .ec-searchnavRole__infos *,\n .ec-searchnavRole .ec-searchnavRole__infos *::before,\n .ec-searchnavRole .ec-searchnavRole__infos *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-searchnavRole .ec-searchnavRole__infos img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole .ec-searchnavRole__infos {\n padding-left: 0;\n padding-right: 0;\n border-top: 1px solid #ccc;\n padding-top: 16px;\n flex-direction: row; } }\n .ec-searchnavRole .ec-searchnavRole__counter {\n margin-bottom: 16px;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole .ec-searchnavRole__counter {\n margin-bottom: 0;\n width: 50%; } }\n .ec-searchnavRole .ec-searchnavRole__actions {\n text-align: right;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole .ec-searchnavRole__actions {\n width: 50%; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n商品一覧\n\n商品一覧 に関する Project コンポーネントを定義します。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2\n\n*/\n.ec-shelfRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-shelfRole:after {\n content: \" \";\n display: table; }\n .ec-shelfRole:after {\n clear: both; }\n .ec-shelfRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-shelfRole img {\n max-width: 100%; }\n .ec-shelfRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-shelfRole *,\n .ec-shelfRole *::before,\n .ec-shelfRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-shelfRole img {\n width: 100%; }\n\n/*\n商品一覧グリッド\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2.1\n\n*/\n.ec-shelfGrid {\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none; }\n .ec-shelfGrid a {\n color: inherit;\n text-decoration: none; }\n .ec-shelfGrid a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid {\n margin-left: -16px;\n margin-right: -16px; } }\n .ec-shelfGrid .ec-shelfGrid__item {\n margin-bottom: 36px;\n width: 50%;\n display: flex;\n flex-direction: column; }\n .ec-shelfGrid .ec-shelfGrid__item-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item-image {\n height: 250px; } }\n .ec-shelfGrid .ec-shelfGrid__item img {\n width: auto;\n max-height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item {\n padding: 0 16px;\n width: 25%; } }\n .ec-shelfGrid .ec-shelfGrid__item .ec-productRole__btn {\n margin-top: auto;\n margin-bottom: 15px; }\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(odd) {\n padding-right: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(odd) {\n padding: 0 16px; } }\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {\n padding-left: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {\n padding: 0 16px; } }\n .ec-shelfGrid .ec-shelfGrid__title {\n margin-bottom: 7px; }\n .ec-shelfGrid .ec-shelfGrid__plice {\n font-weight: bold; }\n\n/*\n13.2.2 商品一覧グリッド(中央寄せ)\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n商品のあまりはセンタリングされ、中央に表示されます。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGridCenter\n\nStyleguide 13.2.2\n\n*/\n.ec-shelfGridCenter {\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n justify-content: center; }\n .ec-shelfGridCenter a {\n color: inherit;\n text-decoration: none; }\n .ec-shelfGridCenter a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter {\n margin-left: -16px;\n margin-right: -16px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item {\n margin-bottom: 36px;\n width: 50%; }\n .ec-shelfGridCenter .ec-shelfGridCenter__item-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item-image {\n height: 250px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item img {\n width: auto;\n max-height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item {\n padding: 0 16px;\n width: 25%; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item .ec-productRole__btn {\n margin-top: auto;\n padding-top: 1em; }\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(odd) {\n padding-right: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(odd) {\n padding: 0 16px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even) {\n padding-left: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even) {\n padding: 0 16px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__title {\n margin-bottom: 7px; }\n .ec-shelfGridCenter .ec-shelfGridCenter__plice {\n font-weight: bold; }\n\n/*\n商品一覧フッター\n\n商品一覧 フッター に関する Project コンポーネントを定義します。\n\nex [商品一覧 ページャ部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.3.pager.pug\n+ec-pagerRole\n\nStyleguide 13.3\n\n*/\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nカート追加モーダル\n\nカート追加モーダルに関する Project コンポーネントを定義します。\n\nex [商品一覧、商品詳細](http://demo3.ec-cube.net/products/list)\n\n+ec-modal\n\nStyleguide 13.4\n\n*/\n.ec-modal .checkbox {\n display: none; }\n\n.ec-modal .ec-modal-overlay {\n opacity: 0;\n transition: all 0.3s ease;\n width: 100%;\n height: 100%;\n position: fixed;\n top: 0;\n left: 0;\n z-index: -100;\n transform: scale(1);\n display: flex;\n background-color: rgba(0, 0, 0, 0.3); }\n\n.ec-modal .ec-modal-wrap {\n background-color: #fff;\n border: 1px solid #333;\n width: 90%;\n margin: 20px;\n padding: 40px 5px;\n border-radius: 2px;\n transition: all 0.5s ease;\n -ms-flex-item-align: center;\n align-self: center; }\n .ec-modal .ec-modal-wrap .ec-modal-box {\n text-align: center; }\n .ec-modal .ec-modal-wrap .ec-modal-box div {\n margin-top: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-modal .ec-modal-wrap {\n padding: 40px 10px;\n width: 50%;\n margin: 20px auto; } }\n .ec-modal .ec-modal-wrap.small {\n width: 30%; }\n .ec-modal .ec-modal-wrap.full {\n width: 100%;\n height: 100%; }\n\n.ec-modal .ec-modal-overlay .ec-modal-close {\n position: absolute;\n right: 20px;\n top: 10px;\n font-size: 20px;\n height: 30px;\n width: 20px; }\n .ec-modal .ec-modal-overlay .ec-modal-close:hover {\n cursor: pointer;\n color: #4b5361; }\n\n.ec-modal .ec-modal-overlay-close {\n display: none;\n width: 100%;\n height: 100%;\n position: fixed;\n left: 0;\n top: 0; }\n\n.ec-modal input:checked ~ .ec-modal-overlay {\n transform: scale(1);\n opacity: 1;\n z-index: 9997;\n overflow: auto; }\n .ec-modal input:checked ~ .ec-modal-overlay .ec-modal-overlay-close {\n display: block; }\n\n.ec-modal input:checked ~ .ec-modal-overlay .ec-modal-wrap {\n transform: translateY(0);\n z-index: 9999; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n商品詳細\n\n商品詳細ページに関する Project コンポーネントを定義します。\n\nex [商品詳細ページ](http://demo3.ec-cube.net/products/detail/18)\n\n\nMarkup:\ninclude /assets/tmpl/elements/14.1.product.pug\n+ec-productSimpleRole\n\nStyleguide 14.1\n*/\n.ec-productRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-productRole:after {\n content: \" \";\n display: table; }\n .ec-productRole:after {\n clear: both; }\n .ec-productRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-productRole img {\n max-width: 100%; }\n .ec-productRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-productRole *,\n .ec-productRole *::before,\n .ec-productRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-productRole img {\n width: 100%; }\n .ec-productRole .ec-productRole__img {\n margin-right: 0;\n margin-bottom: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__img {\n margin-right: 16px;\n margin-bottom: 0; } }\n .ec-productRole .ec-productRole__profile {\n margin-left: 0; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__profile {\n margin-left: 16px; } }\n .ec-productRole .ec-productRole__title .ec-headingTitle {\n font-size: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__title .ec-headingTitle {\n font-size: 32px; } }\n .ec-productRole .ec-productRole__tags {\n margin-top: 16px;\n padding: 0;\n padding-bottom: 16px;\n border-bottom: 1px dotted #ccc; }\n .ec-productRole .ec-productRole__tag {\n display: inline-block;\n padding: 2px 5px;\n list-style: none;\n font-size: 80%;\n color: #525263;\n border: solid 1px #D7DADD;\n border-radius: 3px;\n background-color: #F5F7F8; }\n .ec-productRole .ec-productRole__priceRegular {\n padding-top: 14px; }\n .ec-productRole .ec-productRole__priceRegularTax {\n margin-left: 5px;\n font-size: 10px; }\n .ec-productRole .ec-productRole__price {\n color: #DE5D50;\n font-size: 28px;\n padding: 0;\n border-bottom: 0; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__price {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc; } }\n .ec-productRole .ec-productRole__code {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc; }\n .ec-productRole .ec-productRole__category {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc; }\n .ec-productRole .ec-productRole__category a {\n color: #33A8D0; }\n .ec-productRole .ec-productRole__category ul {\n list-style: none;\n padding: 0;\n margin: 0; }\n .ec-productRole .ec-productRole__actions {\n padding: 14px 0; }\n .ec-productRole .ec-productRole__actions .ec-select select {\n height: 40px;\n max-width: 100%;\n min-width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__actions .ec-select select {\n min-width: 350px;\n max-width: 350px; } }\n .ec-productRole .ec-productRole__btn {\n width: 100%;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__btn {\n width: 60%;\n margin-bottom: 16px;\n min-width: 350px; } }\n .ec-productRole .ec-productRole__description {\n margin-bottom: 16px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nカート\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [カートページ](http://demo3.ec-cube.net/shopping)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartRole\n\nStyleguide 15.1\n\n*/\n.ec-cartRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end; }\n .ec-cartRole:after {\n content: \" \";\n display: table; }\n .ec-cartRole:after {\n clear: both; }\n .ec-cartRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-cartRole img {\n max-width: 100%; }\n .ec-cartRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-cartRole *,\n .ec-cartRole *::before,\n .ec-cartRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-cartRole img {\n width: 100%; }\n .ec-cartRole::before {\n display: none; }\n .ec-cartRole .ec-cartRole__progress {\n width: 100%;\n text-align: center; }\n .ec-cartRole .ec-cartRole__error {\n width: 100%;\n text-align: center; }\n .ec-cartRole .ec-cartRole__error .ec-alert-warning {\n max-width: 80%;\n display: inline-block; }\n .ec-cartRole .ec-cartRole__totalText {\n margin-bottom: 0;\n padding: 16px 0 6px;\n width: 100%;\n text-align: center;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__totalText {\n margin-bottom: 30px;\n padding: 0; } }\n .ec-cartRole .ec-cartRole__cart {\n margin: 0;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__cart {\n margin: 0 10%; } }\n .ec-cartRole .ec-cartRole__actions {\n text-align: right;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__actions {\n width: 20%;\n margin-right: 10%; } }\n .ec-cartRole .ec-cartRole__total {\n padding: 15px 0 30px;\n font-weight: bold;\n font-size: 16px; }\n .ec-cartRole .ec-cartRole__totalAmount {\n margin-left: 30px;\n color: #de5d50;\n font-size: 16px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__totalAmount {\n font-size: 24px; } }\n .ec-cartRole .ec-blockBtn--action {\n margin-bottom: 10px; }\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品をを表示するテーブル枠です。\n\nex [カートページ テーブル部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartTable\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 15.1.2\n*/\n.ec-cartTable {\n display: table;\n border-top: 1px dotted #ccc;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-cartTable {\n border-top: none; } }\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品を表示するテーブルのヘッダです。\nスマホでは非表示となります。\n\nex [カートページ カートテーブルヘッダ部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartHeader\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.3\n*/\n.ec-cartHeader {\n display: none;\n width: 100%;\n background: #F4F3F0; }\n @media only screen and (min-width: 768px) {\n .ec-cartHeader {\n display: table-row; } }\n .ec-cartHeader .ec-cartHeader__label {\n display: table-cell;\n padding: 16px;\n text-align: center;\n background: #F4F3F0;\n overflow-x: hidden;\n font-weight: bold; }\n\n.ec-cartCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-cartCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-cartCompleteRole:after {\n clear: both; }\n .ec-cartCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-cartCompleteRole img {\n max-width: 100%; }\n .ec-cartCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-cartCompleteRole *,\n .ec-cartCompleteRole *::before,\n .ec-cartCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-cartCompleteRole img {\n width: 100%; }\n\n/*\nカート内商品\n\nカート内のアイテムを表示するテーブル行です。\nスマホでは非表示となります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRow\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.4\n*/\n.ec-cartRow {\n display: table-row; }\n .ec-cartRow .ec-cartRow__delColumn {\n border-bottom: 1px dotted #ccc;\n text-align: center;\n display: table-cell;\n width: 14%;\n vertical-align: middle; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__delColumn {\n width: 8.3333333%; } }\n .ec-cartRow .ec-cartRow__delColumn .ec-icon img {\n width: 1.5em;\n height: 1.5em; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__delColumn .ec-icon img {\n width: 1em;\n height: 1em; } }\n .ec-cartRow .ec-cartRow__contentColumn {\n border-bottom: 1px dotted #ccc;\n padding: 10px 0;\n display: table; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__contentColumn {\n display: table-cell; } }\n .ec-cartRow .ec-cartRow__img {\n display: table-cell;\n width: 40%;\n vertical-align: middle;\n padding-right: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__img {\n display: inline-block;\n min-width: 80px;\n max-width: 100px;\n padding-right: 0; } }\n .ec-cartRow .ec-cartRow__summary {\n display: table-cell;\n margin-left: 5px;\n font-weight: bold;\n vertical-align: middle;\n width: 46%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__summary {\n display: inline-block;\n margin-left: 20px;\n vertical-align: middle; } }\n .ec-cartRow .ec-cartRow__summary .ec-cartRow__name {\n margin-bottom: 5px; }\n .ec-cartRow .ec-cartRow__summary .ec-cartRow__sutbtotalSP {\n display: block;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__summary .ec-cartRow__sutbtotalSP {\n display: none; } }\n .ec-cartRow .ec-cartRow__amountColumn {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n vertical-align: middle;\n text-align: center;\n width: 20%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn {\n width: 16.66666667%; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amount {\n display: none;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amount {\n display: block; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP {\n display: block;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP {\n display: none; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpDown {\n display: flex;\n justify-content: center; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpDown {\n display: block; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpButton {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpButton .ec-cartRow__amountUpButton__icon img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButton, .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButton .ec-cartRow__amountDownButton__icon img, .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled .ec-cartRow__amountDownButton__icon img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled {\n cursor: default; }\n .ec-cartRow .ec-cartRow__subtotalColumn {\n display: none;\n border-bottom: 1px dotted #ccc;\n text-align: right;\n width: 16.66666667%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__subtotalColumn {\n display: table-cell; } }\n\n/*\nカート内商品(商品が1の場合)\n\n商品が1の場合はカート商品を減らす「-」ボタンの無効化状態になります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRowOnly\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.5\n*/\n.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled {\n cursor: default; }\n\n/*\nアラート\n\nカート内の商品に問題があることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartRole\n .ec-cartRole__cart\n +ec-alert-warning\n\nStyleguide 15.1.6\n*/\n.ec-alert-warning {\n width: 100%;\n padding: 10px;\n text-align: center;\n background: #F99;\n margin-bottom: 20px; }\n .ec-alert-warning .ec-alert-warning__icon {\n display: inline-block;\n margin-right: 1rem;\n width: 20px;\n height: 20px;\n color: #fff;\n fill: #fff;\n vertical-align: top; }\n .ec-alert-warning .ec-alert-warning__text {\n display: inline-block;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n position: relative; }\n\n/*\nアラート(空)\n\nカートが空であることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-off3Grid\n .ec-off3Grid__cell\n +ec-alert-warningEnpty\n\nStyleguide 15.1.7\n*/\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n注文内容確認\n\nカート内 注文内容確認に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/shopping)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderRole\n\nStyleguide 15.2\n*/\n.ec-orderRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n flex-direction: column;\n margin-top: 0; }\n .ec-orderRole:after {\n content: \" \";\n display: table; }\n .ec-orderRole:after {\n clear: both; }\n .ec-orderRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-orderRole img {\n max-width: 100%; }\n .ec-orderRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-orderRole *,\n .ec-orderRole *::before,\n .ec-orderRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-orderRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole {\n margin-top: 20px;\n flex-direction: row; } }\n .ec-orderRole .ec-inlineBtn {\n font-weight: normal; }\n .ec-orderRole .ec-orderRole__detail {\n padding: 0;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole .ec-orderRole__detail {\n padding: 0 16px;\n width: 66.66666%; } }\n .ec-orderRole .ec-orderRole__summary {\n width: 100%; }\n .ec-orderRole .ec-orderRole__summary .ec-inlineBtn {\n display: inline-block; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole .ec-orderRole__summary {\n width: 33.33333%;\n padding: 0 16px; }\n .ec-orderRole .ec-orderRole__summary .ec-inlineBtn {\n display: none; } }\n .ec-orderRole .ec-borderedList {\n margin-bottom: 20px;\n border-top: 1px dotted #ccc; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole .ec-borderedList {\n border-top: none; } }\n\n/*\n注文履歴詳細 オーダ情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderInfo\n\nStyleguide 15.2.1\n*/\n.ec-orderOrder {\n margin-bottom: 30px; }\n .ec-orderOrder .ec-orderOrder__items {\n border-bottom: 1px dotted #ccc;\n border-top: 1px dotted #ccc; }\n\n/*\n注文履歴詳細 お客様情報\n\nマイページ 注文詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAccount\n\nStyleguide 15.2.2\n*/\n.ec-orderAccount {\n margin-bottom: 30px; }\n .ec-orderAccount p {\n margin-bottom: 0; }\n .ec-orderAccount:after {\n content: \" \";\n display: table; }\n .ec-orderAccount:after {\n clear: both; }\n .ec-orderAccount .ec-orderAccount__change {\n display: inline-block;\n margin-left: 10px;\n float: right; }\n .ec-orderAccount .ec-orderAccount__account {\n margin-bottom: 16px; }\n\n/*\n注文詳細 配送情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 配送情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderDelivery\n\nStyleguide 15.2.3\n*/\n.ec-orderDelivery .ec-orderDelivery__title {\n padding: 16px 0 17px;\n font-weight: bold;\n font-size: 18px;\n position: relative; }\n\n.ec-orderDelivery .ec-orderDelivery__change {\n display: inline-block;\n position: absolute;\n right: 0;\n top: 0; }\n\n.ec-orderDelivery .ec-orderDelivery__items {\n border-bottom: 1px dotted #ccc;\n border-top: 1px dotted #ccc; }\n\n.ec-orderDelivery .ec-orderDelivery__address {\n margin: 10px 0 18px; }\n .ec-orderDelivery .ec-orderDelivery__address p {\n margin: 0; }\n\n/*\n注文履歴詳細 支払情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 支払情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderPayment\n .ec-rectHeading\n h2 お支払方法\n p 支払方法: 郵便振替\n\nStyleguide 15.2.4\n*/\n/*\n注文履歴詳細 お問い合わせ\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ お問い合わせ(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderConfirm\n .ec-rectHeading\n h2 お問い合わせ\n p 記載なし\n\nStyleguide 15.2.5\n*/\n.ec-orderConfirm {\n margin-bottom: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-orderConfirm {\n margin-bottom: 0; } }\n .ec-orderConfirm .ec-input textarea, .ec-orderConfirm .ec-halfInput textarea, .ec-orderConfirm .ec-numberInput textarea, .ec-orderConfirm .ec-zipInput textarea, .ec-orderConfirm .ec-telInput textarea, .ec-orderConfirm .ec-select textarea, .ec-orderConfirm .ec-birth textarea {\n height: 96px; }\n\n/*\nお届け先の複数指定\n\nお届け先の複数指定に関するコンポーネントを定義します。\n\nex [マイページ お届け先の複数指定](http://demo3.ec-cube.net/shopping/shipping_multiple)\n(商品購入画面 → 「お届け先を追加する」を押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAddAddress\n\nStyleguide 15.2.6\n*/\n.ec-AddAddress {\n padding: 0 10px; }\n @media only screen and (min-width: 768px) {\n .ec-AddAddress {\n margin: 0 10%; } }\n .ec-AddAddress .ec-AddAddress__info {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px; }\n .ec-AddAddress .ec-AddAddress__add {\n border-top: 1px solid #f4f4f4;\n padding-top: 20px;\n margin-bottom: 20px; }\n .ec-AddAddress .ec-AddAddress__item {\n display: table;\n padding: 16px;\n background: #f4f4f4;\n margin-bottom: 16px; }\n .ec-AddAddress .ec-AddAddress__itemThumb {\n display: table-cell;\n min-width: 160px;\n width: 20%; }\n .ec-AddAddress .ec-AddAddress__itemThumb img {\n width: 100%; }\n .ec-AddAddress .ec-AddAddress__itemtContent {\n display: table-cell;\n vertical-align: middle;\n padding-left: 16px;\n font-size: 16px; }\n .ec-AddAddress .ec-AddAddress__itemtTitle {\n font-weight: bold;\n margin-bottom: 10px; }\n .ec-AddAddress .ec-AddAddress__itemtSize {\n margin-bottom: 10px; }\n .ec-AddAddress .ec-AddAddress__select {\n margin-bottom: 5px; }\n .ec-AddAddress .ec-AddAddress__selectAddress {\n display: inline-block; }\n .ec-AddAddress .ec-AddAddress__selectAddress label {\n font-size: 16px;\n font-weight: normal; }\n .ec-AddAddress .ec-AddAddress__selectAddress select {\n min-width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-AddAddress .ec-AddAddress__selectAddress select {\n min-width: 350px; } }\n .ec-AddAddress .ec-AddAddress__selectNumber {\n display: inline-block;\n margin-left: 30px; }\n .ec-AddAddress .ec-AddAddress__selectNumber label {\n font-size: 16px;\n font-weight: normal; }\n .ec-AddAddress .ec-AddAddress__selectNumber input {\n display: inline-block;\n margin-left: 10px;\n width: 80px; }\n .ec-AddAddress .ec-AddAddress__actions .ec-blockBtn--action {\n margin-bottom: 8px; }\n .ec-AddAddress .ec-AddAddress__new {\n margin-bottom: 20px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n注文履歴一覧\n\nマイページ 注文履歴部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole\n\nStyleguide 16.1\n*/\n.ec-historyRole .ec-historyRole__contents {\n padding-top: 1em;\n padding-bottom: 16px;\n border-top: 1px solid #ccc;\n display: flex;\n flex-direction: column;\n color: #525263; }\n @media only screen and (min-width: 768px) {\n .ec-historyRole .ec-historyRole__contents {\n flex-direction: row; } }\n\n.ec-historyRole .ec-historyRole__header {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-historyRole .ec-historyRole__header {\n width: 33.3333%; } }\n\n.ec-historyRole .ec-historyRole__detail {\n border-top: 1px dotted #ccc;\n width: 100%; }\n .ec-historyRole .ec-historyRole__detail .ec-imageGrid:nth-of-type(1) {\n border-top: none; }\n .ec-historyRole .ec-historyRole__detail .ec-historyRole__detailTitle {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold; }\n .ec-historyRole .ec-historyRole__detail .ec-historyRole__detailPrice {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-historyRole .ec-historyRole__detail {\n width: 66.6666%;\n border-top: none; } }\n\n/*\n注文履歴一覧 規格\n\nマイページ 注文履歴内アイテムの規格を定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole-option\n\nStyleguide 16.1.1\n*/\n.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailOption {\n display: inline-block;\n margin-bottom: 8px;\n margin-right: .5rem;\n font-size: 1.6rem; }\n\n.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailOption::after {\n display: inline-block;\n padding-left: .5rem;\n content: \"/\";\n font-weight: bold; }\n\n/*\n注文履歴一覧ヘッダ\n\n注文履歴一覧で使用するヘッダのコンポーネントを定義します。\n\nex [マイページ 注文履歴一覧ヘッダ](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyHeader\np hofe\n\nStyleguide 16.1.2\n*/\n.ec-historyListHeader .ec-historyListHeader__date {\n font-weight: bold;\n font-size: 16px; }\n @media only screen and (min-width: 768px) {\n .ec-historyListHeader .ec-historyListHeader__date {\n font-weight: bold;\n font-size: 20px; } }\n\n.ec-historyListHeader .ec-historyListHeader__action {\n margin: 16px 0; }\n .ec-historyListHeader .ec-historyListHeader__action a {\n font-size: 12px;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-historyListHeader .ec-historyListHeader__action a {\n font-size: 14px; } }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n注文履歴詳細\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailRole\n\nStyleguide 16.2\n*/\n/*\n注文履歴詳細 メール履歴\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMail\n\nStyleguide 16.2.5\n*/\n.ec-orderMails .ec-orderMails__item {\n padding-bottom: 10px;\n border-bottom: 1px dotted #ccc; }\n\n.ec-orderMails .ec-orderMails__time {\n margin: 0; }\n\n.ec-orderMails .ec-orderMails__body {\n display: none; }\n\n/*\n注文履歴詳細 メール履歴個別\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴個別](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMailHistory\n\nStyleguide 16.2.6\n*/\n.ec-orderMail {\n padding-bottom: 10px;\n border-bottom: 1px dotted #ccc;\n margin-bottom: 16px; }\n .ec-orderMail .ec-orderMail__time {\n margin: 0; }\n .ec-orderMail .ec-orderMail__body {\n display: none; }\n .ec-orderMail .ec-orderMail__time {\n margin-bottom: 4px; }\n .ec-orderMail .ec-orderMail__link {\n margin-bottom: 4px; }\n .ec-orderMail .ec-orderMail__link a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n .ec-orderMail .ec-orderMail__link a:hover {\n color: #33A8D0; }\n .ec-orderMail .ec-orderMail__close a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n .ec-orderMail .ec-orderMail__close a:hover {\n color: #33A8D0; }\n\n/*\n住所一覧\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [マイページ内 お届け先編集](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\ninclude /assets/tmpl/elements/17.1.address.pug\n+ec-addressList\n+ec-addressRole\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 17.1\n\n*/\n.ec-addressRole .ec-addressRole__item {\n border-top: 1px dotted #ccc; }\n\n.ec-addressRole .ec-addressRole__actions {\n margin-top: 32px;\n padding-bottom: 20px;\n border-bottom: 1px dotted #ccc; }\n\n.ec-addressList .ec-addressList__item {\n display: table;\n width: 100%;\n position: relative;\n border-bottom: 1px dotted #ccc; }\n\n.ec-addressList .ec-addressList__remove {\n vertical-align: middle;\n padding: 16px;\n text-align: center; }\n .ec-addressList .ec-addressList__remove .ec-icon img {\n width: 1em;\n height: 1em; }\n\n.ec-addressList .ec-addressList__address {\n display: table-cell;\n vertical-align: middle;\n padding: 16px;\n margin-right: 4em;\n width: 80%; }\n\n.ec-addressList .ec-addressList__action {\n position: relative;\n vertical-align: middle;\n text-align: right;\n top: 27px;\n padding-right: 10px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nパスワードリセット\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [パスワードリセット画面](http://demo3.ec-cube.net/forgot)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/18.1.password.pug\n+ec-passwordRole\n\nStyleguide 18.1\n\n*/\n.ec-forgotRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-forgotRole:after {\n content: \" \";\n display: table; }\n .ec-forgotRole:after {\n clear: both; }\n .ec-forgotRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-forgotRole img {\n max-width: 100%; }\n .ec-forgotRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-forgotRole *,\n .ec-forgotRole *::before,\n .ec-forgotRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-forgotRole img {\n width: 100%; }\n .ec-forgotRole .ec-forgotRole__intro {\n font-size: 16px; }\n .ec-forgotRole .ec-forgotRole__form {\n margin-bottom: 16px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n会員登録\n\n新規会員登録 に関する Project コンポーネントを定義します。\n\nex [新規会員登録画面 会員登録](http://demo3.ec-cube.net/entry)\n\nMarkup:\ninclude /assets/tmpl/elements/19.1.register.pug\n+ec-registerRole\n\nStyleguide 19.1\n\n*/\n.ec-registerRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-registerRole:after {\n content: \" \";\n display: table; }\n .ec-registerRole:after {\n clear: both; }\n .ec-registerRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-registerRole img {\n max-width: 100%; }\n .ec-registerRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-registerRole *,\n .ec-registerRole *::before,\n .ec-registerRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-registerRole img {\n width: 100%; }\n .ec-registerRole .ec-registerRole__actions {\n padding-top: 20px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-registerRole .ec-registerRole__actions {\n text-align: left; } }\n .ec-registerRole .ec-registerRole__actions p {\n margin-bottom: 16px; }\n .ec-registerRole .ec-blockBtn--action {\n margin-bottom: 16px; }\n\n.ec-registerCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-registerCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-registerCompleteRole:after {\n clear: both; }\n .ec-registerCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-registerCompleteRole img {\n max-width: 100%; }\n .ec-registerCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-registerCompleteRole *,\n .ec-registerCompleteRole *::before,\n .ec-registerCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-registerCompleteRole img {\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nお問い合わせ\n\nお問い合わせ に関する Project コンポーネントを定義します。\n\nex [お問い合わせ](http://demo3.ec-cube.net/contact)\n\nMarkup:\ninclude /assets/tmpl/elements/19.2.contact.pug\n+ec-contactRole\n\nStyleguide 19.2\n\n*/\n.ec-contactRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactRole:after {\n content: \" \";\n display: table; }\n .ec-contactRole:after {\n clear: both; }\n .ec-contactRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactRole img {\n max-width: 100%; }\n .ec-contactRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactRole *,\n .ec-contactRole *::before,\n .ec-contactRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactRole img {\n width: 100%; }\n .ec-contactRole .ec-contactRole__actions {\n padding-top: 20px; }\n .ec-contactRole p {\n margin: 16px 0; }\n\n.ec-contactConfirmRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactConfirmRole:after {\n content: \" \";\n display: table; }\n .ec-contactConfirmRole:after {\n clear: both; }\n .ec-contactConfirmRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactConfirmRole img {\n max-width: 100%; }\n .ec-contactConfirmRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactConfirmRole *,\n .ec-contactConfirmRole *::before,\n .ec-contactConfirmRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactConfirmRole img {\n width: 100%; }\n .ec-contactConfirmRole .ec-contactConfirmRole__actions {\n padding-top: 20px; }\n .ec-contactConfirmRole .ec-blockBtn--action {\n margin-bottom: 16px; }\n\n.ec-contactCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-contactCompleteRole:after {\n clear: both; }\n .ec-contactCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactCompleteRole img {\n max-width: 100%; }\n .ec-contactCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactCompleteRole *,\n .ec-contactCompleteRole *::before,\n .ec-contactCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactCompleteRole img {\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nお客様情報の入力\n\nログインせずゲストとして商品を購入する際の、お客様情報の入力 に関する Project コンポーネントを定義します。\n\nex [カートSTEP2 お客様情報の入力(ゲスト購入)](http://demo3.ec-cube.net/shopping/nonmember)\n\nMarkup:\ninclude /assets/tmpl/elements/19.3.customer.pug\n+ec-customerRole\nhoge\n\nStyleguide 19.3\n\n*/\n.ec-customerRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-customerRole:after {\n content: \" \";\n display: table; }\n .ec-customerRole:after {\n clear: both; }\n .ec-customerRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-customerRole img {\n max-width: 100%; }\n .ec-customerRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-customerRole *,\n .ec-customerRole *::before,\n .ec-customerRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-customerRole img {\n width: 100%; }\n .ec-customerRole .ec-customerRole__actions {\n padding-top: 20px; }\n .ec-customerRole .ec-blockBtn--action {\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-customerRole .ec-blockBtn--action {\n margin-bottom: 16px; } }\n\n.ec-contactConfirmRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactConfirmRole:after {\n content: \" \";\n display: table; }\n .ec-contactConfirmRole:after {\n clear: both; }\n .ec-contactConfirmRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactConfirmRole img {\n max-width: 100%; }\n .ec-contactConfirmRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactConfirmRole *,\n .ec-contactConfirmRole *::before,\n .ec-contactConfirmRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactConfirmRole img {\n width: 100%; }\n .ec-contactConfirmRole .ec-contactConfirmRole__actions {\n padding-top: 20px; }\n .ec-contactConfirmRole .ec-blockBtn--action {\n margin-bottom: 16px; }\n\n.ec-contactCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-contactCompleteRole:after {\n clear: both; }\n .ec-contactCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactCompleteRole img {\n max-width: 100%; }\n .ec-contactCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactCompleteRole *,\n .ec-contactCompleteRole *::before,\n .ec-contactCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactCompleteRole img {\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n visibility: hidden; }\n 100% {\n opacity: 1;\n visibility: visible; } }\n\n@keyframes fadeOut {\n 0% {\n opacity: 1;\n visibility: visible; }\n 100% {\n opacity: 0;\n visibility: hidden; } }\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1; }\n\n/*\n404ページ\n\n404 エラー画面で使用するページコンポーネントです。\n\nex [404エラー画面](http://demo3.ec-cube.net/404)\n\nMarkup:\ninclude /assets/tmpl/elements/20.1.404.pug\n+ec-404Role\n\nStyleguide 20.1\n\n*/\n.ec-404Role {\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n height: 100vh;\n background-color: #f2f2f2;\n text-align: center;\n box-sizing: border-box; }\n .ec-404Role textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-404Role img {\n max-width: 100%; }\n .ec-404Role html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-404Role *,\n .ec-404Role *::before,\n .ec-404Role *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-404Role img {\n width: 100%; }\n .ec-404Role .ec-404Role__icon img {\n width: 1em;\n height: 1em; }\n .ec-404Role .ec-404Role__title {\n font-weight: bold;\n font-size: 25px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n退会手続き\n\n退会手続きで使用するページコンポーネントです。\n\nex [退会手続き](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawRole\n\nStyleguide 21.1\n\n*/\n.ec-withdrawRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n text-align: center;\n padding: 0 16px; }\n .ec-withdrawRole:after {\n content: \" \";\n display: table; }\n .ec-withdrawRole:after {\n clear: both; }\n .ec-withdrawRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-withdrawRole img {\n max-width: 100%; }\n .ec-withdrawRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-withdrawRole *,\n .ec-withdrawRole *::before,\n .ec-withdrawRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-withdrawRole img {\n width: 100%; }\n .ec-withdrawRole .ec-withdrawRole__title {\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px; }\n .ec-withdrawRole .ec-withdrawRole__description {\n margin-bottom: 32px;\n font-size: 16px; }\n .ec-withdrawRole .ec-icon img {\n width: 100px;\n height: 100px; }\n\n/*\n退会手続き実行確認\n\n退会手続き実行確認で使用するページコンポーネントです。\n\nex [退会手続き 退会手続きへボタン→押下](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawConfirm\n\nStyleguide 21.1.2\n\n*/\n.ec-withdrawConfirmRole .ec-withdrawConfirmRole__cancel {\n margin-bottom: 20px; }\n\n.ec-withdrawConfirmRole .ec-withdrawConfirmRole__title {\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px; }\n\n.ec-withdrawConfirmRole .ec-withdrawConfirmRole__description {\n margin-bottom: 32px;\n font-size: 16px; }\n\n.ec-withdrawConfirmRole .ec-icon img {\n width: 100px;\n height: 100px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n会員情報編集完了\n\n会員情報編集完了で使用するページコンポーネントです。\n\nex [会員情報編集完了](http://demo3.ec-cube.net/mypage/change_complete)\n\nMarkup:\ninclude /assets/tmpl/elements/22.1.editComplete.pug\n+ec-userEditCompleteRole\n\nStyleguide 22.1\n\n*/\n.ec-userEditCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n text-align: center;\n padding: 0 16px; }\n .ec-userEditCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-userEditCompleteRole:after {\n clear: both; }\n .ec-userEditCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-userEditCompleteRole img {\n max-width: 100%; }\n .ec-userEditCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-userEditCompleteRole *,\n .ec-userEditCompleteRole *::before,\n .ec-userEditCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-userEditCompleteRole img {\n width: 100%; }\n .ec-userEditCompleteRole .ec-userEditCompleteRole__title {\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px; }\n @media only screen and (min-width: 768px) {\n .ec-userEditCompleteRole .ec-userEditCompleteRole__title {\n font-size: 32px; } }\n .ec-userEditCompleteRole .ec-userEditCompleteRole__description {\n margin-bottom: 32px;\n font-size: 16px; }\n","@import \"../mixins/media\";\n/*\n文字装飾\n\n文字装飾をするためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.2\n*/\n\n/*\nテキストリンク\n\nテキストリンクのスタイルです。\n\nMarkup:\na(href=\"#\").ec-link さくらのクラウド\n\nStyleguide 1.2.1\n*/\n.ec-link {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n &:hover {\n color: #33A8D0;\n text-decoration: none;\n }\n}\n\n/*\nテキスト(太字)\n\nテキストを太くするためのスタイルです。\n\nMarkup:\np.ec-font-bold この季節にぴったりな商品をご用意しました\n\nStyleguide 1.2.2\n*/\n\n.ec-font-bold {\n font-weight: bold;\n}\n\n/*\nテキスト(グレー)\n\nテキストをグレーにするためのスタイルです。\n\nMarkup:\np.ec-color-grey 青色が美しい職人が仕上げた吹きガラス\n\nStyleguide 1.2.3\n*/\n\n.ec-color-grey {\n color: #9a947e;\n}\n\n/*\nテキスト(赤)\n\nテキストを赤にするためのスタイルです。\n\nMarkup:\np.ec-color-red ¥ 2,728 税込\np.ec-color-accent ¥ 2,728 税込\n\nStyleguide 1.2.4\n*/\n\n.ec-color-red {\n color: #DE5D50;\n}\n\n.ec-color-accent {\n color: #DE5D50;\n}\n\n/*\nフォントサイズ\n\nフォントサイズを指定するためのスタイルです。\n\nMarkup:\n.ec-font-size-1 さわやかな日差しが過ごしやすい季節\n.ec-font-size-2 さわやかな日差しが過ごしやすい季節\n.ec-font-size-3 さわやかな日差しが過ごしやすい季節\n.ec-font-size-4 さわやかな日差しが過ごしやすい季節\n.ec-font-size-5 さわやかな日差しが過ごしやすい季節\n.ec-font-size-6 さわやかな日差しが過ごしやすい季節\n\n\nStyleguide 1.2.5\n*/\n\n.ec-font-size-1 {\n font-size: 12px;\n}\n\n.ec-font-size-2 {\n font-size: 14px;\n}\n\n.ec-font-size-3 {\n font-size: 16px;\n}\n\n.ec-font-size-4 {\n font-size: 20px;\n}\n\n.ec-font-size-5 {\n font-size: 32px;\n}\n\n.ec-font-size-6 {\n font-size: 40px;\n}\n\n/*\nテキスト水平位置\n\nテキストをセンタリングするためのスタイルです。\n\nMarkup:\np.ec-text-ac さわやかな日差しが過ごしやすい季節\n\nStyleguide 1.2.6\n*/\n\n.ec-text-ac {\n text-align: center;\n}\n\n/*\n価格テキスト\n\n価格を表示するテキストです。\n\n価格文字にスペースを取るほか、税込み等の表示を小さくする効果もあります。\n\nspanを用いたインライン要素として利用します。\n\nMarkup:\ndiv(style=\"color:#DE5D50;font-size:28px\")\n span.ec-price\n span.ec-price__unit ¥\n span.ec-price__price 1,280\n span.ec-price__tax 税込\n\nStyleguide 1.2.7\n*/\n.ec-price {\n & &__unit {\n font-size: 18px;\n font-weight: bold;\n @include media_desktop{\n font-size: 1em;\n }\n }\n & &__price {\n display: inline-block;\n padding: 0 .3em;\n font-size: 18px;\n font-weight: bold;\n @include media_desktop{\n font-size: 1em;\n }\n }\n & &__tax {\n font-size: 12px;\n @include media_desktop{\n font-size: 0.57em;\n }\n }\n\n}\n\n/*\nテキストの位置\n\nテキストや、入れ子にしたインライン要素を\n「左揃え」「中央揃え」「右揃え」に設定することができます。\n\nMarkup:\nh3 左揃え\np.text-left\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 中央揃え\np.text-center\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 右揃え\np.text-right\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\n\nStyleguide 1.2.8\n*/\n.text-left {\n text-align: left;\n}\n\n.text-center {\n text-align: center;\n}\n\n.text-right {\n text-align: right;\n}\n\n/*\nメッセージテキスト\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用されるテキストのスタイルです。\n\nex [注文完了 (ログイン後、カートに商品を入れ注文完了まで行う)](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\np.ec-reportDescription\n | ただいま、ご注文の確認メールをお送りさせていただきました。\n br\n | 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n br\n | 今後ともご愛顧賜りますようよろしくお願い申し上げます。\n\n\nStyleguide 1.2.9\n*/\n.ec-reportDescription {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px;\n line-height: 1.4;\n}\n\n/*\nテキスト下部のスペース\n\nテキストの下に余白を追加することができます。 .ec-para-normalで16pxの余白をつけることができます。\n\nMarkup:\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n\nStyleguide 1.2.10\n*/\n.ec-para-normal {\n margin-bottom: 16px;\n}\n","@import \"../mixins/media\";\n\n/*\nリスト\n\nシンプルなリストを構成するためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.3\n*/\n\n/*\n水平定義リスト\n\nシンプルな定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 水平定義リスト部分](http://demo3.ec-cube.net/help/about)\n\nMarkup:\ndl.ec-definitions\n dt 店名\n dd EC-CUBE3 DEMO SHOP\ndl.ec-definitions\n dt 会社名\n dd EC-CUBE3\ndl.ec-definitions--soft\n dt 所在地\n dd 〒 550-0001\n\nStyleguide 1.3.1\n*/\n.ec-definitions {\n margin: 5px 0;\n display: block;\n & dt, dd {\n display: inline-block;\n margin: 0;\n }\n & dt {\n font-weight: bold;\n }\n}\n\n.ec-definitions--soft {\n @extend .ec-definitions;\n & dt {\n font-weight: normal;\n }\n}\n\n/*\n下線つき定義リスト\n\n線が添えられた定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 下線つき定義リスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt 店名\n dd EC-CUBE3 DEMO SHOP\n dl\n dt 会社名\n dd EC-CUBE3\n dl\n dt 所在地\n dd 〒550 - 0001\n\nStyleguide 1.3.2\n*/\n\n.ec-borderedDefs {\n width: 100%;\n border-top: 1px dotted #ccc;\n margin-bottom:16px;\n dl {\n display: flex;\n border-bottom: 1px dotted #ccc;\n margin: 0;\n padding: 10px 0 0;\n flex-wrap: wrap;\n @include media_desktop {\n flex-wrap: nowrap;\n padding: 15px 0 4px;\n }\n }\n dt, dd {\n padding: 0;\n }\n\n dt {\n font-weight: normal;\n width: 100%;\n padding-top: 0;\n @include media_desktop {\n padding-top: 14px;\n width: 30%;\n }\n }\n\n dd {\n padding: 0;\n width: 100%;\n line-height: 2.5;\n @include media_desktop {\n width: 70%;\n //padding: 18px 16px;\n line-height: 3;\n }\n }\n p {\n line-height: 1.4;\n }\n}\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0;\n\n dt, dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 0;\n @include media_desktop {\n padding: 16px 0;\n }\n }\n\n dt {\n width: 30%;\n }\n\n dd {\n padding: 0;\n @include media_desktop {\n padding: 16px;\n }\n }\n}\n\n/*\nボーダーリスト\n\n線が添えられたリストを表示します。\n\nex [当サイトについて ボーダーリスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\nul.ec-borderedList\n li: p lorem\n li: p lorem\n li: p lorem\n\n\nStyleguide 1.3.3\n*/\n\n.ec-borderedList {\n width: 100%;\n border-top: 0;\n list-style: none;\n padding: 0;\n @include media_desktop {\n border-top: 1px dotted #ccc;\n }\n li {\n border-bottom: 1px dotted #ccc;\n }\n}\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0;\n\n dt, dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 16px 0;\n }\n\n dt {\n width: 30%;\n }\n\n dd {\n padding: 16px;\n }\n}\n","@import \"../mixins/btn\";\n/*\nボタンサイズ\n\nボタンサイズを変更するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.1\n*/\n\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nex [トップページ ボタン部分](http://demo3.ec-cube.net/)\n\nMarkup:\n.ec-inlineBtn 住所検索\n.ec-inlineBtn--primary もっと見る\n.ec-inlineBtn--action カートに入れる\n.ec-inlineBtn--cancel キャンセル\n\nStyleguide 2.1.1\n*/\n.ec-inlineBtn{\n @include btn-default;\n}\n.ec-inlineBtn--primary{\n @include btn-primary\n}\n.ec-inlineBtn--action{\n @include btn-action\n}\n.ec-inlineBtn--cancel{\n @include btn-cancel\n}\n\n/*\nブロックボタン(全幅)\n\nボタンサイズは em で指定するため、テキストサイズの変更でボタンサイズを変更できます。\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\np: .ec-blockBtn 住所検索\np: .ec-blockBtn--primary もっと見る\np: .ec-blockBtn--action カートに入れる\np: .ec-blockBtn--cancel キャンセル\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn{\n @include blockBtn-default;\n}\n.ec-blockBtn--primary{\n @include blockBtn-primary\n}\n.ec-blockBtn--action{\n @include blockBtn-action\n}\n.ec-blockBtn--cancel{\n @include blockBtn-cancel\n}\n","@import \"../mixins/variables\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/buttons\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/opacity\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/vendor-prefixes\";\n\n$padding-base-vertical: 6px !default;\n\n\n$btn-primary-bg: #5CB1B1;\n$btn-primary-color: #fff;\n$btn-action-bg: #DE5D50;\n$btn-action-color: #fff;\n$btn-cancel-bg: #525263;\n$btn-cancel-color: #fff;\n$btn-default-bg: #F5F7F8;\n$btn-default-color: #525263;\n\n$btn-border-radius-base: 0px;\n\n\n@mixin _btn($color, $background, $border){\n display: inline-block;\n margin-bottom: 0; // For input.btn\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n white-space: nowrap;\n @include button-size($padding-base-vertical, $padding-base-horizontal, $font-size-base, $line-height-base, $btn-border-radius-base);\n @include user-select(none);\n padding: 10px 16px;\n text-decoration: none;\n\n &,\n &:active,\n &.active {\n &:focus,\n &.focus {\n @include tab-focus;\n }\n }\n\n &:hover,\n &:focus,\n &.focus {\n color: $btn-default-color;\n text-decoration: none;\n }\n\n &:active,\n &.active {\n outline: 0;\n background-image: none;\n @include box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n cursor: $cursor-disabled;\n @include opacity(.65);\n @include box-shadow(none);\n }\n\n @include button-variant($color, $background, $border);\n // [converter] extracted a& to a.btn\n\n .ec-icon img {\n width: 1em;\n vertical-align: text-bottom;\n }\n}\n\n@mixin btn-default(){\n @include _btn($btn-default-color, $btn-default-bg, $btn-default-border)\n}\n@mixin btn-action(){\n @include _btn($btn-action-color, $btn-action-bg, $btn-action-bg)\n}\n@mixin btn-cancel(){\n @include _btn($btn-cancel-color, $btn-cancel-bg, $btn-cancel-bg)\n}\n@mixin btn-primary(){\n @include _btn($btn-primary-color, $btn-primary-bg, $btn-primary-bg)\n}\n\n@mixin blockBtn-default(){\n @include _btn($btn-default-color, $btn-default-bg, $btn-default-border);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n@mixin blockBtn-action(){\n @include _btn($btn-action-color, $btn-action-bg, $btn-action-bg);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n@mixin blockBtn-cancel(){\n @include _btn($btn-cancel-color, $btn-cancel-bg, $btn-cancel-bg);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n@mixin blockBtn-primary(){\n @include _btn($btn-primary-color, $btn-primary-bg, $btn-primary-bg);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n\n// User select\n// For selecting text on the page\n\n@mixin user-select($select) {\n -webkit-user-select: $select;\n -moz-user-select: $select;\n -ms-user-select: $select; // IE10+\n user-select: $select;\n}\n\n\n\n\n@mixin linkBtn{\n &.disabled,\n fieldset[disabled] & {\n pointer-events: none; // Future-proof disabling of clicks on `` elements\n }\n}\n","// Button variants\n//\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for all buttons\n\n@mixin button-variant($color, $background, $border) {\n color: $color;\n background-color: $background;\n border-color: $border;\n\n &:focus,\n &.focus {\n color: $color;\n background-color: darken($background, 10%);\n border-color: darken($border, 25%);\n }\n &:hover {\n color: $color;\n background-color: darken($background, 10%);\n border-color: darken($border, 12%);\n }\n &:active,\n &.active,\n .open > &.dropdown-toggle {\n color: $color;\n background-color: darken($background, 10%);\n border-color: darken($border, 12%);\n\n &:hover,\n &:focus,\n &.focus {\n color: $color;\n background-color: darken($background, 17%);\n border-color: darken($border, 25%);\n }\n }\n &:active,\n &.active,\n .open > &.dropdown-toggle {\n background-image: none;\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus,\n &.focus {\n background-color: $background;\n border-color: $border;\n }\n }\n\n .badge {\n color: $background;\n background-color: $color;\n }\n}\n\n// Button sizes\n@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {\n padding: $padding-vertical $padding-horizontal;\n font-size: $font-size;\n line-height: $line-height;\n border-radius: $border-radius;\n}\n","// WebKit-style focus\n\n@mixin tab-focus() {\n // WebKit-specific. Other browsers will keep their default outline style.\n // (Initially tried to also force default via `outline: initial`,\n // but that seems to erroneously remove the outline in Firefox altogether.)\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n@mixin animation($animation) {\n -webkit-animation: $animation;\n -o-animation: $animation;\n animation: $animation;\n}\n@mixin animation-name($name) {\n -webkit-animation-name: $name;\n animation-name: $name;\n}\n@mixin animation-duration($duration) {\n -webkit-animation-duration: $duration;\n animation-duration: $duration;\n}\n@mixin animation-timing-function($timing-function) {\n -webkit-animation-timing-function: $timing-function;\n animation-timing-function: $timing-function;\n}\n@mixin animation-delay($delay) {\n -webkit-animation-delay: $delay;\n animation-delay: $delay;\n}\n@mixin animation-iteration-count($iteration-count) {\n -webkit-animation-iteration-count: $iteration-count;\n animation-iteration-count: $iteration-count;\n}\n@mixin animation-direction($direction) {\n -webkit-animation-direction: $direction;\n animation-direction: $direction;\n}\n@mixin animation-fill-mode($fill-mode) {\n -webkit-animation-fill-mode: $fill-mode;\n animation-fill-mode: $fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n@mixin backface-visibility($visibility) {\n -webkit-backface-visibility: $visibility;\n -moz-backface-visibility: $visibility;\n backface-visibility: $visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n@mixin box-shadow($shadow...) {\n -webkit-box-shadow: $shadow; // iOS <4.3 & Android <4.1\n box-shadow: $shadow;\n}\n\n// Box sizing\n@mixin box-sizing($boxmodel) {\n -webkit-box-sizing: $boxmodel;\n -moz-box-sizing: $boxmodel;\n box-sizing: $boxmodel;\n}\n\n// CSS3 Content Columns\n@mixin content-columns($column-count, $column-gap: $grid-gutter-width) {\n -webkit-column-count: $column-count;\n -moz-column-count: $column-count;\n column-count: $column-count;\n -webkit-column-gap: $column-gap;\n -moz-column-gap: $column-gap;\n column-gap: $column-gap;\n}\n\n// Optional hyphenation\n@mixin hyphens($mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: $mode;\n -moz-hyphens: $mode;\n -ms-hyphens: $mode; // IE10+\n -o-hyphens: $mode;\n hyphens: $mode;\n}\n\n// Placeholder text\n@mixin placeholder($color: $input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: $color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: $color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: $color; } // Safari and Chrome\n}\n\n// Transformations\n@mixin scale($ratio...) {\n -webkit-transform: scale($ratio);\n -ms-transform: scale($ratio); // IE9 only\n -o-transform: scale($ratio);\n transform: scale($ratio);\n}\n\n@mixin scaleX($ratio) {\n -webkit-transform: scaleX($ratio);\n -ms-transform: scaleX($ratio); // IE9 only\n -o-transform: scaleX($ratio);\n transform: scaleX($ratio);\n}\n@mixin scaleY($ratio) {\n -webkit-transform: scaleY($ratio);\n -ms-transform: scaleY($ratio); // IE9 only\n -o-transform: scaleY($ratio);\n transform: scaleY($ratio);\n}\n@mixin skew($x, $y) {\n -webkit-transform: skewX($x) skewY($y);\n -ms-transform: skewX($x) skewY($y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX($x) skewY($y);\n transform: skewX($x) skewY($y);\n}\n@mixin translate($x, $y) {\n -webkit-transform: translate($x, $y);\n -ms-transform: translate($x, $y); // IE9 only\n -o-transform: translate($x, $y);\n transform: translate($x, $y);\n}\n@mixin translate3d($x, $y, $z) {\n -webkit-transform: translate3d($x, $y, $z);\n transform: translate3d($x, $y, $z);\n}\n@mixin rotate($degrees) {\n -webkit-transform: rotate($degrees);\n -ms-transform: rotate($degrees); // IE9 only\n -o-transform: rotate($degrees);\n transform: rotate($degrees);\n}\n@mixin rotateX($degrees) {\n -webkit-transform: rotateX($degrees);\n -ms-transform: rotateX($degrees); // IE9 only\n -o-transform: rotateX($degrees);\n transform: rotateX($degrees);\n}\n@mixin rotateY($degrees) {\n -webkit-transform: rotateY($degrees);\n -ms-transform: rotateY($degrees); // IE9 only\n -o-transform: rotateY($degrees);\n transform: rotateY($degrees);\n}\n@mixin perspective($perspective) {\n -webkit-perspective: $perspective;\n -moz-perspective: $perspective;\n perspective: $perspective;\n}\n@mixin perspective-origin($perspective) {\n -webkit-perspective-origin: $perspective;\n -moz-perspective-origin: $perspective;\n perspective-origin: $perspective;\n}\n@mixin transform-origin($origin) {\n -webkit-transform-origin: $origin;\n -moz-transform-origin: $origin;\n -ms-transform-origin: $origin; // IE9 only\n transform-origin: $origin;\n}\n\n\n// Transitions\n\n@mixin transition($transition...) {\n -webkit-transition: $transition;\n -o-transition: $transition;\n transition: $transition;\n}\n@mixin transition-property($transition-property...) {\n -webkit-transition-property: $transition-property;\n transition-property: $transition-property;\n}\n@mixin transition-delay($transition-delay) {\n -webkit-transition-delay: $transition-delay;\n transition-delay: $transition-delay;\n}\n@mixin transition-duration($transition-duration...) {\n -webkit-transition-duration: $transition-duration;\n transition-duration: $transition-duration;\n}\n@mixin transition-timing-function($timing-function) {\n -webkit-transition-timing-function: $timing-function;\n transition-timing-function: $timing-function;\n}\n@mixin transition-transform($transition...) {\n -webkit-transition: -webkit-transform $transition;\n -moz-transition: -moz-transform $transition;\n -o-transition: -o-transform $transition;\n transition: transform $transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n@mixin user-select($select) {\n -webkit-user-select: $select;\n -moz-user-select: $select;\n -ms-user-select: $select; // IE10+\n user-select: $select;\n}\n","// Opacity\n\n@mixin opacity($opacity) {\n opacity: $opacity;\n // IE8 filter\n $opacity-ie: ($opacity * 100);\n filter: alpha(opacity=$opacity-ie);\n}\n","@import \"../mixins/variables\";\n/*\nアイコンボタン\n\nSVGアイコンを用いたアイコンボタンです。\n\nsg-wrapper:\n
\n \n\nStyleguide 2.2\n*/\n\n/*\nアイコンボタン\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\na.ec-closeBtn\n .ec-icon\n img(src='/moc/icon/cross.svg', alt='close')\n\nStyleguide 2.2.1\n*/\n.ec-closeBtn{\n cursor: pointer;\n .ec-icon {\n img {\n //overflow: hidden;\n display: inline-block;\n margin-right: 5px;\n width: 1em;\n height: 1em;\n position: relative;\n top: -1px;\n vertical-align: middle;\n }\n }\n}\n\n/*\nアイコンボタン(○)\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\n\n\nex [お届け先編集画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\na.ec-closeBtn--circle\n .ec-icon\n img(src='/moc/icon/cross-white.svg', alt='close')\n\nStyleguide 2.2.2\n*/\n\n.ec-closeBtn--circle{\n display: block;\n border: 0 none;\n padding: 0;\n margin: 0;\n text-shadow: none;\n box-shadow: none;\n border-radius: 50%;\n background: #B8BEC4;\n cursor: pointer;\n width: 40px;\n min-width: 40px;\n max-width: 40px;\n height: 40px;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n\n .ec-icon img{\n display: block;\n margin-top: -.5em;\n margin-left: -.5em;\n width: 1em;\n height: 1em;\n position: absolute;\n top: 50%;\n left: 50%;\n }\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/media\";\n@import \"../mixins/btn\";\n\n/*\nその他のボタン\n\n通常のボタンや、アイコンボタン以外のボタンを定義します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.3\n*/\n\n\n/*\nページトップボタン\n\nページトップボタンを表示します\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\n.ec-blockTopBtn\n\nStyleguide 2.3.1\n*/\n.ec-blockTopBtn{\n display: none;\n position: fixed;\n width:120px;\n height: 40px;\n right: 0;\n bottom: 10px;\n cursor: pointer;\n color: #FFFFFF;\n text-align: center;\n line-height: 40px;\n opacity: 0.8;\n background-color: #9da3a9;\n @include media_desktop {\n right:30px;\n bottom: 30px;\n }\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/forms\";\n@import \"../mixins/media\";\n/*\nフォーム部品(テキスト)\n\nテキストや数値の入力項目に関する要素を定義します。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 3.1\n*/\n\n\n\n/*\nフォーム\n\n`.ec-input` 要素は全ての入力項目に関する標準的なコンポーネントクラスです。\n\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-input\n input(type=\"number\")\np.ec-input\n textarea(rows=\"6\")\n\nStyleguide 3.1.1\n*/\n.ec-input{\n @include forms-reset;\n @include form-controls;\n input{\n height: 40px;\n margin-bottom: 10px;\n @include media_desktop {\n margin-bottom: 16px;\n }\n }\n textarea {\n height: auto;\n min-height: 100px;\n }\n p {\n line-height: 1.4;\n }\n .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: $clrRed;\n }\n}\n.error.ec-input {\n input,select{\n margin-bottom: 5px;\n border-color: #CF3F34;\n background: #FDF1F0;\n }\n}\n\n.ec-checkbox{\n .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: $clrRed;\n }\n}\n.error.ec-checkbox {\n input, label{\n border-color: #CF3F34;\n background: #FDF1F0;\n }\n}\n\n/*\nフォーム(text2つ)\n\n姓名など2つ入力させたい入力項目で使用します。\n\n入力フォームを半分で用意したいときにも利用可能です。\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-halfInput\n input(type=\"text\")\n input(type=\"text\")\np.ec-halfInput\n input(type=\"text\")\n\nStyleguide 3.1.2\n*/\n.ec-halfInput{\n @extend .ec-input;\n input[type='text']{\n display: inline-block;\n width: 47%;\n margin-left: 2%;\n @include media_desktop {\n margin-left: 15px;\n width: 45%;\n }\n }\n input[type='text']:first-child{\n margin-left: 0;\n }\n}\n\n/*\n数量ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [商品詳細画面 数量ボタン部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-numberInput\n span 数量\n input(type=\"number\",value=\"0\")\n\nStyleguide 3.1.3\n*/\n.ec-numberInput{\n @extend .ec-input;\n input[type='number']{\n display: inline-block;\n width: auto;\n max-width: 100px;\n text-align: right;\n }\n}\n/*\n郵便番号フォーム\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 郵便番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-zipInput\n span 〒\n input(type=\"text\")\n.ec-zipInputHelp\n a(href=\"http://www.post.japanpost.jp/zipcode/\" target=\"_blank\")\n .ec-zipInputHelp__icon\n .ec-icon\n img(src='/moc/icon/question-white.svg', alt='')\n span 郵便番号検索\n.ec-zipAuto\n a.ec-inlineBtn 郵便番号から自動入力\n\nStyleguide 3.1.4\n*/\n.ec-zipInput{\n @extend .ec-input;\n display: inline-block;\n input{\n display: inline-block;\n text-align: left;\n width: auto;\n max-width: 8em;\n font-size: 16px;\n }\n span{\n display: inline-block;\n padding: 0 5px 0 3px;\n margin-left:5px;\n }\n}\n.ec-zipInputHelp {\n display: inline-block;\n margin-left: 10px;\n margin-bottom: 16px;\n vertical-align: baseline;\n line-height: 0;\n .ec-zipInputHelp__icon {\n display: inline-block;\n margin-top: -10px;\n width:20px;\n height:20px;\n background: #525263;\n border-radius: 50%;\n font-size: 13px;\n position: relative;\n top: -6px;\n .ec-icon img{\n width: 1em;\n height: 1em;\n position: relative;\n left: 3px;\n top: 3px;\n }\n }\n span {\n margin-left: 8px;\n display: inline-block;\n color: #0092C4;\n vertical-align: 3px;\n }\n}\n.ec-zipAuto {\n margin-bottom: 16px;\n .ec-inlineBtn {\n font-weight: normal;\n }\n}\n/*\n電話番号ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 電話番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-telInput\n input(type=\"text\")\n\nStyleguide 3.1.5\n*/\n.ec-telInput{\n @extend .ec-input;\n input {\n max-width: 10em;\n text-align: left;\n }\n}\n","@import \"./variables\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/forms\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/vendor-prefixes\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n\n@mixin forms-reset{\n input[type=\"search\"] {\n @include box-sizing(border-box);\n }\n\n // Position radios and checkboxes better\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n }\n\n input[type=\"file\"] {\n display: block;\n }\n\n // Make range inputs behave like textual form controls\n input[type=\"range\"] {\n display: block;\n width: 100%;\n }\n\n // Make multiple select elements height not fixed\n select[multiple],\n select[size] {\n height: auto;\n }\n\n // Focus for file, radio, and checkbox\n input[type=\"file\"]:focus,\n input[type=\"radio\"]:focus,\n input[type=\"checkbox\"]:focus {\n @include tab-focus;\n }\n\n}\n\n@mixin _form-control{\n display: block;\n width: 100%;\n height: $input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: $padding-base-vertical $padding-base-horizontal;\n font-size: $font-size-base;\n line-height: $line-height-base;\n color: $input-color;\n background-color: $input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid $input-border;\n border-radius: $input-border-radius; // Note: This has no effect on s in CSS.\n -webkit-appearance: none;\n @include box-shadow(none);\n @include transition(border-color ease-in-out .15s, box-shadow ease-in-out .15s);\n\n // Customize the `:focus` state to imitate native WebKit styles.\n @include form-control-focus;\n\n // Placeholder\n @include placeholder;\n\n // Unstyle the caret on ``\n// element gets special love because it's special, and that's a fact!\n// [converter] $parent hack\n@mixin input-size($parent, $input-height, $padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {\n #{$parent} {\n height: $input-height;\n padding: $padding-vertical $padding-horizontal;\n font-size: $font-size;\n line-height: $line-height;\n border-radius: $border-radius;\n }\n\n select#{$parent} {\n height: $input-height;\n line-height: $input-height;\n }\n\n textarea#{$parent},\n select[multiple]#{$parent} {\n height: auto;\n }\n}\n","@import \"../mixins/projects\";\n@import \"../mixins/forms\";\n@import \"./3.1.inputText\";\n/*\nフォーム部品(その他)\n\nフォーム部品でテキストの入力以外の動作要素を定義します。\n\nsg-wrapper:\n
\n \n\nStyleguide 3.2\n*/\n\n/*\nラジオ(水平)\n\n水平に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 性別選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-radio\n label\n input(type=\"radio\")\n span 男性\n label\n input(type=\"radio\")\n span 女性\n\nStyleguide 3.2.2\n*/\n.ec-radio{\n label{\n margin-right:20px;\n }\n input{\n margin-right: 10px;\n margin-bottom: 10px;\n }\n span{\n font-weight: normal;\n }\n\n}\n\n/*\nラジオ(垂直)\n\n垂直に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [購入画面 お支払方法](http://demo3.ec-cube.net/shopping)\n\nMarkup:\n.ec-blockRadio\n label\n input(type=\"radio\")\n span 郵便振替\n label\n input(type=\"radio\")\n span 現金書留\n label\n input(type=\"radio\")\n span 銀行振込\n label\n input(type=\"radio\")\n span 代金引換\n\nStyleguide 3.2.3\n*/\n.ec-blockRadio{\n label{\n display: block;\n }\n span {\n padding-left: 10px;\n font-weight: normal;\n }\n}\n/*\nセレクトボックス\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 都道府県選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-select\n select\n option 都道府県を選択\n option 北海道\n option 青森県\n option 岩手県\n option ...\n.ec-select\n select\n option 選択して下さい\n option 公務員\n option コンサルタント\n option コンピュータ関連技術職\n option コンピュータ関連以外の技術職\n option ...\n\nStyleguide 3.2.4\n*/\n.ec-selects {\n margin-bottom: 20px;\n @include borderBottom;\n}\n.ec-select{\n @extend .ec-input;\n margin-bottom: 16px;\n select{\n display: inline-block;\n width: auto;\n background-color: rgb(248, 248, 248);\n -webkit-appearance: menulist;\n -moz-appearance: menulist;\n &:focus {\n box-shadow: none;\n }\n }\n label{\n margin-right: 10px;\n font-weight: bold;\n }\n label:nth-child(3){\n margin-left: 10px;\n font-weight: bold;\n }\n}\n.ec-select__delivery {\n display: block;\n margin-right: 16px;\n @include media_desktop {\n display: inline-block;\n }\n}\n.ec-select__time {\n display: block;\n @include media_desktop {\n display: inline-block;\n }\n}\n\n/*\n生年月日選択\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 生年月日選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-birth\n select\n option ----\n option 1960\n option 1961\n option 1962\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n\nStyleguide 3.2.5\n*/\n.ec-birth{\n @extend .ec-input;\n select{\n display: inline-block;\n width: auto;\n margin: 0 0 10px;\n background-color: rgb(248, 248, 248);\n -webkit-appearance: menulist;\n -moz-appearance: menulist;\n &:focus {\n box-shadow: none;\n }\n @include media_desktop{\n margin: 0 8px 10px;\n }\n }\n span{\n margin-left:5px;\n }\n}\n\n/*\nチェックボックス (水平)\n\n水平に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 利用規約](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-checkbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.6\n*/\n.ec-checkbox{\n label{\n display: inline-block;\n }\n input{\n margin-bottom: 10px;\n }\n span{\n font-weight: normal;\n }\n\n}\n\n/*\nチェックボックス (垂直)\n\n垂直に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nMarkup:\n.ec-blockCheckbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.7\n*/\n.ec-blockCheckbox{\n label{\n display: block;\n }\n span {\n font-weight: normal;\n }\n}\n","/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n\n@mixin borderTop(){\n border-top: 1px dotted #ccc;\n}\n\n@mixin borderBottom(){\n border-bottom: 1px dotted #ccc;\n}\n\n@mixin reset_link(){\n a{\n color: inherit;\n text-decoration: none;\n }\n a:hover{\n text-decoration: none;\n }\n}\n","@import \"../mixins/media\";\n/*\nフォームラベル\n\nフォームのラベルに関する要素を定義します。\n\nsg-wrapper:\n
\n
\n
\n
\n \n
\n
\n
\n
\n\nStyleguide 3.3\n*/\n\n/*\nラベル\n\nフォーム要素で利用するラベル要素です。\n\nex [お問い合わせページ ラベル部分](http://demo3.ec-cube.net/contact)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.1\n*/\n.ec-label{\n display: inline-block;\n font-weight: bold;\n margin-bottom: 5px;\n}\n\n/*\n必須ラベル\n\n必須文字を表示するラベル要素です。\n\nex [お問い合わせページ 必須ラベル部分](http://demo3.ec-cube.net/contact)\n\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n span.ec-required 必須\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.2\n*/\n\n.ec-required{\n display: inline-block;\n margin-left: .8em;\n vertical-align: 2px;\n color: #DE5D50;\n font-size: 12px;\n font-weight: normal;\n @include media_desktop {\n margin-left: 1em;\n }\n}\n","@import \"../mixins/variables\";\n/*\nアイコン\n\nデフォルトテンプレートのアイコンは`.ec-icon`>`img`タグで使用することができます\n\nsg-wrapper:\n
\n \n\nMarkup:\ninclude /assets/tmpl/elements/4.1.icon.pug\ndiv(style=\"background-color: rgba(130,130,130,.15); padding: 20px;\")\n +icon-all\n\nStyleguide 4.1\n*/\n.ec-icon img {\n max-width: 80px;\n max-height: 80px;\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/media\";\n\n@mixin row{\n display: block;\n margin: 0;\n @include media_desktop {\n display: flex;\n }\n}\n\n@mixin makeSmColumn($columns){\n position: relative;\n min-height: 1px;\n\n @media (min-width: $desktop) {\n width: percentage(($columns/ 12));\n }\n @include media_desktop{\n }\n\n}\n\n/*\nグリッド\n\n画面を12分割し、グリッドレイアウトに対応するためのスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.1\n*/\n\n/*\n2分割グリッド\n\n画面 2分割の グリッドです。\nBootstrap の col-sm-6 相当のグリッドを提供します。\n\nMarkup:\n.ec-grid2\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 5.1.1\n*/\n.ec-grid2{\n @include row;\n & &__cell{\n @include makeSmColumn(6);\n }\n & &__cell2{\n @include makeSmColumn(12);\n }\n}\n/*\n3分割グリッド\n\n画面 3分割の グリッドです。\n\n\nMarkup:\n.ec-grid3\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n\nStyleguide 5.1.2\n*/\n.ec-grid3{\n @include row;\n & &__cell{\n @include makeSmColumn(4);\n }\n & &__cell2 {\n @include makeSmColumn(8);\n }\n & &__cell3 {\n @include makeSmColumn(12);\n }\n}\n\n/*\n4分割グリッド\n\n画面 4分割の グリッドです。\n\n\nMarkup:\n.ec-grid4\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n\nStyleguide 5.1.3\n*/\n.ec-grid4{\n @include row;\n & &__cell{\n @include makeSmColumn(3);\n }\n}\n\n/*\n6分割グリッド\n\n2つにまとめた cell2 や 3つをまとめた cell3 タグも使用可能です。\n\n\nMarkup:\n.ec-grid6\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n.ec-grid6\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n.ec-grid6\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n\nStyleguide 5.1.4\n*/\n.ec-grid6{\n @include row;\n & &__cell{\n @include makeSmColumn(2);\n }\n & &__cell2{\n @include makeSmColumn(4);\n }\n & &__cell3{\n @include makeSmColumn(6);\n }\n}\n\n/*\n中央寄せグリッド 10/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の10グリッドです\n\nex [ご利用規約ページ 本文](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-off1Grid\n .ec-off1Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.5\n*/\n.ec-off1Grid{\n margin: 0;\n @include media_desktop {\n @include row;\n }\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(10);\n margin-left: percentage((1 / 12));\n }\n }\n}\n\n\n/*\n中央寄せグリッド 8/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の8グリッドです\n\n\nMarkup:\n.ec-off2Grid\n .ec-off2Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.6\n*/\n.ec-off2Grid{\n @include row;\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(8);\n margin-left: percentage((2 / 12));\n }\n }\n}\n/*\n中央寄せグリッド 6/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の6グリッドです\n\n\nMarkup:\n.ec-off3Grid\n .ec-off3Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.7\n*/\n.ec-off3Grid{\n @include row;\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(6);\n margin-left: percentage((3 / 12));\n }\n }\n}\n/*\n中央寄せグリッド 4/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の4グリッドです\n\n\nMarkup:\n.ec-off4Grid\n .ec-off4Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\n\nStyleguide 5.1.8\n*/\n.ec-off4Grid{\n @include row;\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(4);\n margin-left: percentage((4 / 12));\n }\n }\n}\n\n/*\nグリッドオプション\n\nグリッドのセルに対して「左寄せ」「中央寄せ」「右寄せ」のオプションを付与することができます。\n\nsg-wrapper:\n
\n \n\nStyleguide 5.1.9\n*/\n\n/*\nグリッドセルの左寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--left\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.10\n*/\n.ec-grid--left {\n justify-content: flex-start;\n}\n/*\nグリッドセルの右寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--right\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.11\n*/\n.ec-grid--right {\n justify-content: flex-end;\n}\n/*\nグリッドセルの中央寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--center\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.12\n*/\n.ec-grid--center {\n justify-content: center\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/projects\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/media\";\n\n@mixin row{\n margin-left: ceil((30px / -2));\n margin-right: floor((30px / -2));\n @include clearfix\n}\n\n@mixin makeSmColumn($columns){\n position: relative;\n min-height: 1px;\n padding-left: (30px / 2);\n padding-right: (30px / 2);\n\n @media (min-width: $desktop) {\n float: left;\n width: percentage(($columns/ 12));\n }\n}\n\n/*\nレイアウト\n\n様々なレイアウトを変更する為のスタイル群です。\n\nStyleguide 5.2\n*/\n\n/*\n画像レイアウト\n\n画像とテキストを水平に並べるレイアウトです。\n\n画像は20%で表示されます。\n\nex [注文履歴 ログイン後→注文履歴ボタンを押下](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-imageGrid\n .ec-imageGrid__img: img(src=\"http://demo3.ec-cube.net/upload/save_image/0701113537_559351f959620.jpeg\")\n .ec-imageGrid__content\n p.ec-font-bold ホーローマグ\n p ¥ 1,728 x 1\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.2.1\n*/\n.ec-imageGrid{\n display: table;\n @include borderTop;\n width: 100%;\n\n & &__img{\n display: table-cell;\n padding: 10px;\n width: 100px;\n\n @include media_desktop {\n padding: 10px;\n width: 130px;\n }\n\n img{\n width: 100%;\n }\n }\n & &__content{\n vertical-align: middle;\n display: table-cell;\n span {\n margin-left: 10px;\n }\n p {\n margin-bottom: 0;\n }\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\nログイン\n\n主にログインフォームのスタイルを表示します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 6.1\n*/\n\n/*\nログインフォーム\n\nログインフォームを表示します。\n\nex [ログイン画面](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-login\n\n\nStyleguide 6.1.1\n*/\n.ec-login{\n margin: 0 0 20px;\n padding: 30px 13% 20px;\n height: auto;\n background: #F3F4F4;\n box-sizing: border-box;\n @include media_desktop {\n margin: 0 16px;\n padding: 30px 13% 60px;\n }\n & &__icon {\n text-align: center;\n }\n .ec-icon{\n margin-bottom: 10px;\n img {\n width: 90px;\n height: 90px;\n display: inline-block;\n }\n }\n & &__input {\n margin-bottom: 40px;\n .ec-checkbox {\n span {\n margin-left: 5px;\n font-weight:normal;\n }\n }\n }\n & &__actions {\n color: #fff;\n @include reset_link();\n }\n & &__link {\n margin-top: 5px;\n margin-left: 0;\n @include media_desktop {\n margin-left: 20px;\n }\n }\n .ec-errorMessage {\n color: $clrRed;\n margin-bottom: 20px;\n }\n}\n\n/*\nゲスト購入\n\nゲスト購入ボタンとそのフォームを表示します。\n\nex [ゲスト購入画面](http://demo3.ec-cube.net/shopping/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-guest\nhoge\n\nStyleguide 6.1.2\n*/\n.ec-guest{\n display: table;\n margin: 0;\n padding: 13%;\n height: auto;\n box-sizing: border-box;\n background: #F3F4F4;\n\n @include media_desktop {\n height: 100%;\n margin: 0 16px;\n }\n & &__inner{\n display: table-cell;\n vertical-align: middle;\n text-align: center;\n p {\n margin-bottom: 16px;\n }\n }\n & &__actions {\n display: block;\n vertical-align: middle;\n text-align: center;\n color: #fff;\n @include reset_link();\n }\n & &__icon{\n font-size: 70px;\n text-align: center;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\n商品掲載\n\nトップページに商品掲載するスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.1\n*/\n\n/*\n商品アイテム(商品紹介B)\n\n3項目横並びの商品アイテムを表示します。\n必要に応じて商品詳細や、キャッチコピーなどを添えることが出来ます。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayB\n\nStyleguide 7.1.1\n*/\n.ec-displayB{\n margin-bottom: 24px;\n display: flex;\n justify-content: space-between;\n flex-direction:column;\n @include media_desktop {\n flex-direction:row;\n }\n & &__cell {\n width: 100%;\n margin-bottom: 16px;\n @include reset_link();\n @include media_desktop {\n width: 31.4466%;\n margin-bottom: 0;\n }\n &:hover {\n text-decoration: none;\n img{\n opacity: .8;\n }\n a {\n text-decoration: none;\n }\n }\n }\n & &__img {\n margin-bottom: 15px;\n }\n\n & &__catch{\n margin-bottom: 15px;\n text-decoration: none;\n font-weight: bold;\n color: #9a947e;\n }\n & &__comment {\n margin-bottom: 14px;\n text-decoration: none;\n color: #525263;\n font-size: 14px;\n }\n & &__link{\n text-decoration: none;\n font-weight: bold;\n color: #9a947e;\n }\n\n}\n\n/*\n商品アイテム(商品紹介C)\n\n4項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayC\np hoge\n\nStyleguide 7.1.2\n*/\n\n.ec-displayC{\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n margin-bottom: 24px;\n & &__cell{\n width: 47%;\n @include reset_link();\n @include media_desktop(){\n width: 22.8775%;\n }\n &:hover {\n a {\n text-decoration: none;\n }\n img{\n opacity: .8;\n }\n }\n }\n & &__img{\n display: block;\n width: 100%;\n margin-bottom: 15px;\n }\n & &__catch{\n display: block;\n width: 100%;\n font-weight: bold;\n color: #9a947e;\n }\n & &__title{\n display: block;\n width: 100%;\n color: #525263;\n }\n & &__price{\n display: block;\n width: 100%;\n font-weight: bold;\n color: #525263;\n }\n & &__price--sp{\n display: block;\n width: 100%;\n font-weight: bold;\n color: #DE5D50;\n }\n}\n\n\n/*\n商品アイテム(商品紹介D)\n\n6項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayD\n\nStyleguide 7.1.3\n*/\n\n.ec-displayD {\n display:flex;\n justify-content:space-between;\n flex-wrap:wrap-reverse;\n @include media_desktop(){\n box-sizing: border-box;\n flex-wrap:nowrap;\n }\n\n & &__cell{\n width: 30%;\n margin-bottom: 8px;\n @include reset_link();\n @include media_desktop(){\n width: 14.3083%;\n margin-bottom: 16px;\n }\n &:hover {\n text-decoration: none;\n img{\n opacity: .8;\n }\n }\n }\n & &__img{\n display: block;\n width: 100%;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/variables\";\n@import \"../mixins/projects\";\n\n@mixin pager(){\n}\n/*\n検索・一覧表示\n\n検索欄や、一覧表示に使用するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.2\n*/\n\n/*\nトピックパス\n\n検索結果で表示されるトピックパスのスタイルです。\n\nex [商品一覧ページ 横並びリスト部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-topicpath\n\nStyleguide 7.2.1\n*/\n.ec-topicpath{\n letter-spacing: -.4em;\n -webkit-margin-before: 0;\n -webkit-margin-after: 0;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n -webkit-padding-start: 0;\n border-top: 1px solid #ccc;\n border-bottom: 1px dotted #ccc;\n padding: 10px;\n list-style: none;\n overflow: hidden;\n font-size: 12px;\n color: #0092C4;\n @include media_desktop {\n padding: 30px 0 10px;\n border: 0;\n font-size: 16px;\n }\n\n & &__item {\n @include reset_link();\n }\n & &__divider{\n color: #000;\n }\n & &__item,\n & &__divider,\n & &__item--active{\n display: inline-block;\n min-width: 16px;\n text-align: center;\n position: relative;\n letter-spacing: normal;\n }\n & &__item--active{\n font-weight: bold;\n @include reset_link();\n }\n}\n\n/*\nページャ\n\n検索結果で表示される商品一覧のスタイルです。\n\nex [商品一覧ページ ページャ部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-pager\n\nStyleguide 7.2.2\n*/\n.ec-pager{\n list-style: none;\n list-style-type: none;\n margin: 0 auto;\n padding: 1em 0;\n text-align: center;\n & &__item,\n & &__item--active{\n display: inline-block;\n min-width: 29px;\n padding: 0 3px 0 2px;\n text-align: center;\n position: relative;\n @include reset_link();\n a{\n color: inherit;\n display: block;\n line-height: 1.8;\n padding: 5px 1em;\n text-decoration: none;\n }\n a:hover{\n color: inherit;\n }\n }\n & &__item--active {\n background: $clrGray;\n }\n & &__item:hover{\n background: $clrGray;\n }\n\n}\n","@import \"./variables\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/forms\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/vendor-prefixes\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n\n\n@keyframes fadeIn{\n 0%{\n opacity: 0;\n visibility: hidden;\n }\n 100%{\n opacity: 1;\n visibility: visible;\n }\n}\n\n@keyframes fadeOut{\n 0%{\n opacity: 1;\n visibility: visible;\n }\n 100%{\n opacity: 0;\n visibility: hidden;\n }\n}\n\n@mixin fadeIn($display:block,$time:150ms) {\n display: $display;\n opacity: 1;\n visibility: visible;\n animation: fadeIn $time linear 0s;\n}\n@mixin fadeOut($time:150ms) {\n opacity: 0;\n visibility:hidden;\n animation: fadeOut $time linear 0s;\n}\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1;\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/media\";\n@import \"../mixins/animation\";\n@import \"../mixins/projects\";\n/*\nカート\n\nショッピングカートに関するスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.3\n*/\n\n/*\nカートヘッダ\n\n購入完了までの手順や、現在の状態を表示します。\n\nul 要素を用いたリスト要素としてマークアップします。\n\nex [カートページ ヘッダ部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-progress\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.3.1\n*/\n.ec-progress{\n margin: 0 auto;\n padding: 8px 0 16px;\n display: table;\n table-layout: fixed;\n width: 100%;\n max-width: 600px;\n list-style: none;\n @include media_desktop {\n margin-bottom: 30px;\n padding: 0;\n }\n\n & &__item{\n display:table-cell;\n position: relative;\n font-size: 14px;\n text-align: center;\n font-weight: bold;\n z-index: 10;\n\n &:after {\n content: '';\n position: absolute;\n display: block;\n background: #525263;\n width: 100%;\n height: 0.25em;\n top: 1.25em;\n left: 50%;\n margin-left: 1.5em\\9;\n z-index: -1;\n }\n &:last-child:after {\n display: none;\n }\n }\n & &__number{\n line-height: 30px;\n width: 30px;\n height: 30px;\n margin-bottom: 5px;\n font-size: 12px;\n background: #525263;\n color: #fff;\n top: 0;\n left: 18px;\n display: inline-block;\n text-align: center;\n vertical-align: middle;\n border-radius: 50%;\n @include media_desktop(){\n line-height: 42px;\n width: 42px;\n height: 42px;\n font-size: 20px;\n }\n }\n & &__label {\n font-size: 12px;\n }\n .is-complete {\n .ec-progress__number {\n background: #5CB1B1;\n }\n .ec-progress__label {\n color: #5CB1B1;\n }\n }\n}\n\n\n\n/*\nカートナビゲーション\n\nカートナビゲーションを表示します。 カートに追加された商品の個数も表示します。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerCart\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.5\n*/\n.ec-cartNaviWrap{\n @include media_desktop {\n position: relative;\n }\n}\n.ec-cartNavi{\n display: inline-block;\n padding: 10px 0 0 20px;\n width: auto;\n color: black;\n background: transparent;\n @include media_desktop {\n display: flex;\n justify-content: space-between;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 12px 17px 10px;\n width: auto;\n min-width: 140px;\n height: 44px;\n white-space: nowrap;\n cursor: pointer;\n background: #F8F8F8;\n }\n\n & &__icon {\n display: inline-block;\n font-size: 20px;\n @include fadeIn(inline-block,200ms);\n position: relative;\n\n }\n & &__badge{\n display: inline-block;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 5px;\n height: 17px;\n font-size: 10px;\n line-height: 0.7;\n vertical-align: top;\n color: #fff;\n text-align: left;\n white-space: nowrap;\n background-color: #DE5D50;\n position: absolute;\n left: 60%;\n top: -10px;\n @include media_desktop {\n display: inline-block;\n min-width: 17px;\n position: relative;\n left: 0;\n top: 0;\n }\n }\n & &__price{\n display: none;\n\n @include media_desktop {\n display: inline-block;\n font-size: 14px;\n font-weight: normal;\n vertical-align: middle;\n }\n }\n}\n.ec-cartNavi.is-active {\n\n .ec-cartNavi__icon {\n &:before {\n content: \"\\f00d\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n }\n }\n .ec-cartNavi__badge{\n display: none;\n @include media_desktop {\n display: none;\n }\n\n }\n}\n\n\n/*\nカートナビゲーションのポップアップ(商品詳細)\n\nカートナビゲーションのポップアップを表示します。カートに追加された商品の詳細が表示されます。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:350px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='close')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n +b.ec-cartNaviIsset\n +e.cart\n +e.cartImage\n img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n +e.cartContent\n +e.cartContentTitle ミニテーブル\n +e.cartContentPrice ¥ 12,960\n +e.cartContentTax 税込\n +e.cartContentNumber 数量:1\n +e.action\n a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n a.ec-blockBtn.ec-cartNavi--cancel キャンセル\n\nStyleguide 7.3.6\n*/\n.ec-cartNaviIsset {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 20;\n position: absolute;\n right: 0;\n\n @include media_desktop {\n margin-top: 10px;\n min-width: 256px;\n max-width:256px;\n\n &::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px;\n\n }\n }\n\n\n\n & &__cart {\n @include clearfix;\n border-bottom: 1px solid #E8E8E8;\n margin-bottom: 16px;\n padding-bottom: 32px;\n }\n & &__cartImage {\n float: left;\n width: 45%;\n img {\n width: 100%;\n }\n }\n & &__cartContent {\n float: right;\n width: 55%;\n padding-left: 16px;\n text-align:left;\n box-sizing:border-box;\n }\n & &__action {\n .ec-blockBtn--action {\n color:#fff;\n margin-bottom: 8px;\n }\n }\n & &__cartContentTitle {\n margin-bottom: 8px;\n }\n & &__cartContentPrice {\n font-weight: bold;\n }\n & &__cartContentTax {\n display: inline-block;\n font-size: 12px;\n font-weight: normal;\n margin-left: 2px;\n }\n & &__cartContentNumber {\n font-size: 14px;\n }\n}\n\n.ec-cartNaviIsset.is-active {\n display: block;\n}\n\n\n\n/*\nカートナビゲーションのポップアップ(商品なし)\n\nカートナビゲーションのポップアップを表示します。商品が登録されていない場合の表示です。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:170px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='cart')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n .ec-cartNaviNull\n .ec-cartNaviNull__message\n p 現在カート内に\n br\n | 商品がございません。\n //+b.ec-cartNaviIsset\n // +e.cart\n // +e.cartImage\n // img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n // +e.cartContent\n // +e.cartContentTitle ミニテーブル\n // +e.cartContentPrice ¥ 12,960\n // +e.cartContentTax 税込\n // +e.cartContentNumber 数量:1\n // +e.action\n // a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n // a.ec-blockBtn キャンセル\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.7\n*/\n\n\n.ec-cartNaviNull {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 3;\n position: absolute;\n right: 0;\n\n @include media_desktop {\n margin-top: 10px;\n min-width: 256px;\n max-width:256px;\n\n &::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px;\n\n }\n }\n\n & &__message {\n border: 1px solid #D9D9D9;\n padding: 16px 0;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n background-color: #F99;\n p {\n margin: 0;\n }\n }\n}\n\n.ec-cartNaviNull.is-active {\n display: block;\n}\n\n\n\n/*\n総計\n\n会計時の合計金額、総計を表示します。\n\nex [カートページ 統計部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-totalBox\n\nStyleguide 7.3.8\n*/\n.ec-totalBox{\n background:#F3F3F3;\n padding: 16px;\n margin-bottom: 16px;\n & &__spec{\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: space-between;\n justify-content: space-between;\n -ms-flex-pack: space-between;\n margin-bottom:8px;\n dt{\n font-weight: normal;\n text-align: left;\n }\n dd{\n text-align: right;\n }\n & &__specTotal {\n color: $clrRed;\n }\n }\n & &__total{\n border-top: 1px dotted #ccc;\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight:bold;\n }\n & &__paymentTotal{\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight:bold;\n .ec-totalBox__price,\n .ec-totalBox__taxLabel{\n color: $clrRed;\n }\n }\n & &__price{\n margin-left: 16px;\n font-size: 16px;\n font-weight:bold;\n @include media_desktop {\n font-size: 24px;\n }\n }\n & &__taxLabel {\n margin-left: 8px;\n font-size: 12px;\n @include media_desktop {\n font-size: 14px;\n }\n }\n & &__taxRate {\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: flex-end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n margin-bottom:8px;\n font-size: 10px;\n @include media_desktop {\n font-size: 12px;\n }\n dt{\n font-weight: normal;\n text-align: left;\n margin-right: 8px;\n &::before {\n content: \"[ \";\n }\n }\n dd{\n text-align: right;\n &::after {\n content: \" ]\";\n }\n }\n }\n & &__pointBlock{\n padding: 18px 20px 10px;\n margin-bottom: 10px;\n background: #fff;\n }\n & &__btn {\n @include reset_link();\n color: #fff;\n .ec-blockBtn--action {\n font-size: 16px;\n font-weight: bold;\n }\n .ec-blockBtn--cancel {\n margin-top: 8px;\n }\n }\n}\n","// Clearfix\n//\n// For modern browsers\n// 1. The space content is one way to avoid an Opera bug when the\n// contenteditable attribute is included anywhere else in the document.\n// Otherwise it causes space to appear at the top and bottom of elements\n// that are clearfixed.\n// 2. The use of `table` rather than `block` is only necessary if using\n// `:before` to contain the top-margins of child elements.\n//\n// Source: http://nicolasgallagher.com/micro-clearfix-hack/\n\n@mixin clearfix() {\n //&:before, //to avoid flex effect\n &:after {\n content: \" \"; // 1\n display: table; // 2\n }\n &:after {\n clear: both;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n/*\nお知らせ\n\n新着情報やバナーなどの掲載項目を紹介していきます。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 8.1\n*/\n\n/*\n新着情報\n\n新着情報の掲載をします。\n\nex [トップページ 新着情報部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+ec-news\n\nStyleguide 8.1.1\n*/\n.ec-news {\n margin-bottom: 16px;\n background: #F8F8F8;\n @include media_desktop {\n margin-right: 3%;\n }\n @include media_desktop {\n margin-bottom: 32px;\n }\n & &__title{\n font-weight: bold;\n padding: 8px;\n font-size: 16px;\n text-align: center;\n @include media_desktop {\n padding: 16px;\n text-align: left;\n font-size: 24px;\n }\n }\n & &__items{\n padding: 0;\n list-style: none;\n border-top: 1px dotted #ccc;\n }\n}\n/*\n折りたたみ項目\n\n折りたたみ項目を掲載します。\n\nex [トップページ 折りたたみ項目部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+b.ec-news\n +e.title 新着情報\n +e.UL.items\n +e.LI.item\n +b.ec-newsline.is_active\n +e.info\n +e.date 2016/09/29\n +e.comment サイトオープンしました\n +e.close\n a.ec-closeBtn--circle\n span.ec-closeBtn--circle__icon\n .ec-icon\n img(src='/moc/icon/angle-down-white.svg', alt='')\n +e.description 一人暮らしからオフィスなどさまざまなシーンで あなたの生活をサポートするグッズをご家庭へお届けします!\n\nStyleguide 8.1.2\n*/\n.ec-newsline {\n display: flex;\n flex-wrap:wrap;\n overflow: hidden;\n padding: 0 16px;\n & &__info{\n width: 100%;\n padding: 16px 0;\n @include clearfix;\n }\n & &__date{\n display: inline-block;\n margin-right: 10px;\n float: left;\n }\n & &__comment{\n display: inline-block;\n float: left;\n }\n & &__close{\n float: right;\n display: inline-block;\n text-align: right;\n .ec-closeBtn--circle {\n display: inline-block;\n width: 25px;\n height: 25px;\n min-width: 25px;\n min-height: 25px;\n\n }\n }\n & &__description{\n width: 100%;\n height: 0;\n transition: all .2s ease-out;\n }\n\n &.is_active &__description{\n height: auto;\n transition: all .2s ease-out;\n padding-bottom: 16px;\n }\n &.is_active .ec-icon img {\n transform: rotateX(180deg);\n }\n}\n","@import \"../mixins/projects\";\n@import \"../mixins/variables\";\n@import \"../mixins/media\";\n/*\nマイページ\n\nマイページで利用するためのスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 9.1\n*/\n\n/*\nマイページ\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist\n\nStyleguide 9.1.1\n*/\n.ec-navlistRole{\n & &__navlist {\n @include reset_link;\n display: flex;\n flex-wrap: wrap;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 1px 0 0 1px;\n margin-bottom: 32px;\n padding: 0;\n list-style: none;\n @include media_desktop {\n flex-wrap: nowrap;\n }\n }\n\n & &__item{\n width: 50%;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 0 1px 1px 0;\n text-align: center;\n font-weight: bold;\n a {\n padding: 16px;\n width: 100%;\n display: inline-block;\n &:hover{\n background: #f5f7f8;\n }\n }\n }\n .active {\n a {\n color: #DE5D50;\n }\n }\n}\n\n/*\nマイページ(お気に入り機能無効)\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist_noFavorite\n\nStyleguide 9.1.2\n*/\n\n/*\nWelcome メッセージ\n\nマイページで表示するログイン名の表示コンポーネントです。\n\nex [マイページ メニューリスト下部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-welcomeMsg\n\nStyleguide 9.1.3\n*/\n.ec-welcomeMsg{\n @include mypageContainer;\n margin: 1em 0;\n padding-bottom: 32px;\n text-align: center;\n @include borderBottom;\n\n}\n\n/*\nお気に入り一覧\n\nお気に入り一覧で表示するアイテムの表示コンポーネントです。\n\nex [マイページ お気に入り一覧](http://demo3.ec-cube.net/mypage/favorite)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-favorite\n\nStyleguide 9.1.4\n*/\n.ec-favoriteRole{\n & &__header {\n margin-bottom: 16px;\n }\n & &__detail {\n }\n & &__itemList {\n @include reset_link;\n display: flex;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n }\n & &__item{\n margin-bottom: 8px;\n width: 47.5%;\n position: relative;\n box-sizing: border-box;\n padding: 10px;\n &-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center;\n @include media_desktop() {\n height: 250px;\n }\n }\n img{\n width: auto;\n max-height: 100%;\n }\n @include media_desktop(){\n width: 25%;\n }\n .ec-closeBtn--circle {\n position: absolute;\n right: 10px;\n top: 10px;\n .ec-icon img{\n width: 1em;\n height: 1em;\n }\n }\n }\n & &__itemThumb {\n display: block;\n height:auto;\n margin-bottom: 8px;\n }\n & &__itemTitle{\n margin-bottom: 2px;\n }\n & &__itemPrice{\n font-weight: bold;\n margin-bottom: 0;\n }\n\n}\n","@import \"./variables\";\n@import \"./clearfix\";\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n\n\n\n//@mixin media_tablet(){\n// @media only screen and (min-width: 768px) {\n// @content;\n// }\n//}\n\n@mixin media_desktop(){\n @media only screen and (min-width: 768px) {\n @content;\n }\n}\n\n//@mixin media_desktop2(){\n// @media only screen and (min-width: 768px) {\n// @content;\n// }\n//}\n//\n//@mixin media_desktop3(){\n// @media only screen and (min-width: 768px) {\n// @content;\n// }\n//}\n\n\n@mixin container(){\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n @include clearfix;\n @include commonStyle();\n width: 100%;\n max-width: 1130px;\n\n //@media (min-width: $desktop) {\n // width: 720 + 30px;\n //}\n //@media (min-width: $desktop2) {\n // width: 940 + 30px;\n //}\n //@media (min-width: $desktop3) {\n // width: 1140 + 30px;\n //}\n}\n@mixin mypageContainer(){\n margin-right: auto;\n margin-left: auto;\n padding-left: 16px;\n padding-right: 16px;\n box-sizing: border-box;\n @include clearfix;\n @include commonStyle();\n width: 100%;\n //max-width: 1130px;\n @include media_desktop {\n padding-left: 26px;\n padding-right: 26px;\n }\n}\n\n@mixin commonStyle(){\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n\n //a {\n //color: #0092C4;\n //color: #A092C4;\n //text-decoration: none;\n //cursor: pointer;\n //}\n //a:hover,\n //a:focus,\n //a:active { color: #33A8D0;text-decoration: none; outline: none;}\n\n\n textarea { /* for chrome fontsize bug */\n font-family: sans-serif;\n }\n\n //ul, ol {\n // list-style: none;\n // margin: 0; padding: 0;\n //}\n //dl, dt, dd, li{\n // margin: 0; padding: 0;\n //}\n img {\n max-width: 100%;\n }\n\n html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n }\n\n *,\n *::before,\n *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit;\n }\n\n img{\n width: 100%;\n }\n\n\n}\n","@import \"../mixins/media\";\n\n/*\n標準セクション\n\n通常のコンテナブロックです。\n\nex [商品詳細ページ コンテナ](http://demo3.ec-cube.net/products/detail/33)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-roleRole\n\nStyleguide 11.1\n*/\n.ec-role{\n @include container;\n}\n\n/*\nマイページセクション\n\nマイページ専用のコンテナブロックです。\n\nex [マイページ コンテナ](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-mypageRole\n\nStyleguide 11.1.2\n*/\n.ec-mypageRole{\n @include mypageContainer;\n\n .ec-pageHeader h1{\n @include media_desktop {\n margin: 10px 0 48px;\n padding: 8px 0 18px;\n }\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/animation\";\n\n/*\nヘッダー\n\nヘッダー用のプロジェクトコンポーネントを提供します。\n\nex [トップページ ヘッダー](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+b.ec-layoutRole\n +e.header\n +ec-headerRole\n +ec-headerNaviRole\n +ec-categoryNaviRole\n\nStyleguide 11.2\n*/\n.ec-layoutRole {\n width: 100%;\n transition: transform 0.3s;\n background: #fff;\n & &__contentTop {\n padding: 0;\n }\n\n & &__contents {\n margin-right: auto;\n margin-left: auto;\n width: 100%;\n max-width: 1150px;\n display: flex;\n flex-wrap: nowrap;\n\n }\n & &__main {\n width: 100%;\n }\n & &__mainWithColumn {\n width: 100%;\n @include media_desktop() {\n width: 75%;\n }\n }\n & &__mainBetweenColumn {\n width: 100%;\n @include media_desktop() {\n width: 50%;\n }\n }\n & &__left,\n & &__right {\n display: none;\n @include media_desktop() {\n display: block;\n width: 25%;\n }\n }\n}\n\n\n.ec-headerRole {\n @include container;\n padding-top: 15px;\n position: relative;\n &:after {\n display: none;\n }\n @include media_desktop {\n @include clearfix;\n }\n &::before {\n display: none;\n }\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n width: auto;\n @include media_desktop {\n width: 100%;\n @include clearfix;\n }\n & &__title {\n width: 100%;\n }\n & &__navSP {\n display: block;\n position: absolute;\n top: 15px;\n width: 27%;\n right: 0;\n text-align: right;\n @include media_desktop {\n display: none;\n }\n }\n}\n\n.ec-headerNaviRole {\n @include container;\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-top: 15px;\n\n @include media_desktop {\n padding-bottom: 40px;\n }\n\n & &__left {\n width: calc(100% / 3);\n\n }\n\n & &__search {\n display: none;\n @include media_desktop() {\n display: inline-block;\n margin-top: 10px;\n @include reset_link;\n }\n }\n & &__navSP {\n display: block;\n @include media_desktop() {\n display: none;\n @include reset_link;\n }\n }\n\n & &__right {\n width: calc(100% * 2 / 3);\n display: flex;\n justify-content: flex-end;\n align-items: center;\n }\n\n & &__nav {\n display: inline-block;\n @include reset_link;\n }\n & &__cart {\n display: inline-block;\n @include reset_link;\n }\n}\n\n.ec-headerNavSP {\n display: block;\n cursor: pointer;\n //display: inline-block;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 10px;\n z-index: 1000;\n\n .fas {\n vertical-align: top;\n }\n\n @include media_desktop {\n display: none;\n }\n}\n.ec-headerNavSP.is-active {\n display: none;\n}\n\n/*\nヘッダー:タイトル\n\nヘッダー内で使用されるタイトルコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerTitle\n\nStyleguide 11.2.1\n*/\n.ec-headerTitle {\n @include commonStyle();\n & &__title {\n text-align: center;\n h1 {\n margin: 0;\n padding: 0;\n }\n a {\n display: inline-block;\n margin-bottom: 30px;\n text-decoration: none;\n font-size: 20px;\n\n @include media_desktop() {\n font-size: 40px;\n }\n font-weight: bold;\n color: black;\n\n &:hover {\n opacity: .8;\n }\n }\n }\n & &__subtitle {\n font-size: 10px;\n text-align: center;\n @include media_desktop() {\n font-size: 16px;\n margin-bottom: 10px;\n }\n a {\n display: inline-block;\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n }\n }\n}\n\n/*\nヘッダー:ユーザナビゲーション\n\nヘッダー内でユーザに関与するナビゲーションコンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__nav`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.3\n*/\n.ec-headerNav {\n text-align: right;\n & &__item {\n margin-left: 0;\n display: inline-block;\n font-size: 28px;\n }\n & &__itemIcon {\n display: inline-block;\n margin-right: 10px;\n margin-left: 10px;\n font-size: 18px;\n color: black;\n @include media_desktop {\n margin-right: 0;\n font-size: 20px;\n }\n }\n & &__itemLink {\n display: none;\n margin-right: 5px;\n font-size: 14px;\n vertical-align: middle;\n color: black;\n @include media_desktop {\n display: inline-block;\n }\n }\n}\n\n/*\nヘッダー:検索ボックス\n\nヘッダー内で使用される商品検索コンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__search`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerSearch\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.4\n*/\n.ec-headerSearch{\n @include clearfix;\n & &__category {\n float: none;\n @include media_desktop {\n float: left;\n width: 43%;\n }\n .ec-select {\n overflow: hidden;\n width: 100%;\n margin: 0;\n text-align: center;\n\n select {\n width: 100%;\n cursor: pointer;\n padding: 8px 24px 8px 8px;\n text-indent: 0.01px;\n text-overflow: ellipsis;\n border: none;\n outline: none;\n background: transparent;\n background-image: none;\n box-shadow: none;\n appearance: none;\n color: #fff;\n\n @include media_desktop {\n max-width: 165px;\n height: 36px;\n }\n\n option {\n color: #000;\n }\n\n &::-ms-expand {\n display: none;\n }\n }\n\n &.ec-select_search {\n position: relative;\n border: 0;\n background: #000;\n color: #fff;\n border-top-right-radius: 10px;\n border-top-left-radius: 10px;\n\n @include media_desktop {\n border-top-right-radius: inherit;\n border-top-left-radius: 50px;\n border-bottom-left-radius: 50px;\n }\n\n &::before {\n position: absolute;\n top: 0.8em;\n right: 0.4em;\n width: 0;\n height: 0;\n padding: 0;\n content: '';\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid #fff;\n pointer-events: none;\n }\n }\n }\n }\n & &__keyword{\n position: relative;\n color: $clrDarkGray;\n border: 1px solid #ccc;\n background-color: #f6f6f6;\n border-bottom-right-radius: 10px;\n border-bottom-left-radius: 10px;\n\n @include media_desktop {\n float: right;\n width: 57%;\n border-bottom-left-radius: inherit;\n border-top-right-radius: 50px;\n border-bottom-right-radius: 50px;\n }\n input[type=\"search\"]{\n width: 100%;\n height: 34px;\n font-size: 1.2rem;\n border: 0 none;\n padding: 0.5em 50px 0.5em 1em;\n box-shadow: none;\n background: none;\n box-sizing: border-box;\n margin-bottom: 0;\n }\n .ec-icon {\n width: 22px;\n height: 22px;\n }\n }\n & &__keywordBtn{\n border: 0;\n background: none;\n position: absolute;\n right: 5px;\n top: 50%;\n transform: translateY(-55%);\n display: block;\n white-space: nowrap;\n z-index: 1;\n }\n}\n\n/*\nヘッダー:カテゴリナビ\n\nヘッダー内で使用されている商品のカテゴリ一覧として使用します。\n`li`の中に`ul > li`要素を入れることで、階層を深くする事ができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+ec-itemNav\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 11.2.5\n*/\n.ec-categoryNaviRole {\n @include container;\n display: none;\n @include media_desktop() {\n display: block;\n width: 100%;\n @include reset_link;\n }\n}\n\n.ec-itemNav {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n text-align: center;\n}\n\n.ec-itemNav__nav {\n display: block;\n margin: 0 auto;\n padding: 0;\n width: auto;\n height: auto;\n list-style-type: none;\n text-align: center;\n vertical-align: bottom;\n @include media_desktop {\n display: inline-block;\n }\n}\n\n.ec-itemNav__nav li {\n float: none;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: center;\n position: relative;\n @include media_desktop {\n float: left;\n width: auto;\n }\n}\n\n.ec-itemNav__nav li a {\n display: block;\n border-bottom: 1px solid #E8E8E8;\n margin: 0;\n padding: 16px;\n height: auto;\n color: #2e3233;;\n font-size: 16px;\n font-weight: bold;\n line-height: 20px;\n text-decoration: none;\n text-align: left;\n background: #fff;\n border-bottom: 1px solid #E8E8E8;\n @include media_desktop {\n text-align: center;\n border-bottom: none;\n }\n}\n\n.ec-itemNav__nav li ul {\n display: none;\n z-index: 0;\n margin: 0;\n padding: 0;\n min-width: 200px;\n list-style: none;\n position: static;\n top: 100%;\n left: 0;\n @include media_desktop {\n display: block;\n z-index: 100;\n position: absolute;\n }\n}\n\n.ec-itemNav__nav li ul li {\n overflow: hidden;\n width: 100%;\n height: auto;\n transition: .3s;\n @include media_desktop {\n overflow: hidden;\n height: 0;\n }\n}\n\n.ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #E8E8E8;\n padding: 16px 22px 16px 16px;\n font-size: 16px;\n font-weight: bold;\n color: white;\n text-align: left;\n background: black;\n}\n\n.ec-itemNav__nav > li:hover > a {\n background: #fafafa;\n}\n\n.ec-itemNav__nav > li:hover li:hover > a {\n background: #333;\n}\n\n.ec-itemNav__nav > li:hover > ul > li {\n @include media_desktop {\n overflow: visible;\n height: auto;\n\n }\n}\n\n.ec-itemNav__nav li ul li ul {\n top: 0;\n left: 100%;\n width: auto;\n}\n\n.ec-itemNav__nav li ul li ul:before {\n @include media_desktop {\n content: \"\\f054\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n font-size: 12px;\n color: white;\n position: absolute;\n top: 19px;\n right: auto;\n left: -20px;\n }\n}\n\n.ec-itemNav__nav li ul li:hover > ul > li {\n @include media_desktop {\n overflow: visible;\n height: auto;\n width: auto;\n }\n}\n\n.ec-itemNav__nav li ul li ul li a {\n background: #7D7D7D\n}\n\n.ec-itemNav__nav li:hover ul li ul li a:hover {\n background: #333;\n}\n\n/*\nヘッダー:SPヘッダー\n\nSP時のみ出現するヘッダーに関係するコンポーネントです。
\nex [トップページ](http://demo3.ec-cube.net/)画面サイズが768px以下に該当。
\n
\n`.ec-drawerRole`:SPのドロワー内の要素をwrapするコンポーネントです。
\n`.ec-headerSearch`、`.ec-headerNav`、`.ec-itemNav`は`.ec-drawerRole`の子要素にある場合、ドロワーに適したスタイルに変化します。

\n`.ec-overlayRole`:SPのドロワー出現時にz-indexがドロワー以下の要素に半透明の黒背景をかぶせるコンポーネントです。
\n\nStyleguide 11.2.6\n*/\n\n.ec-drawerRole {\n overflow-y: scroll;\n background: black;\n width: 260px;\n height: 100vh;\n transform: translateX(-300px);\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1;\n transition: z-index 0ms 1ms;\n @include media_desktop() {\n display: none;\n }\n\n\n .ec-headerSearchArea {\n padding: 20px 10px;\n width: 100%;\n background: #F8F8F8;\n }\n\n .ec-headerSearch{\n padding: 16px 8px 26px;\n background: #EBEBEB;\n color: #636378;\n select{\n width: 100% !important;\n }\n }\n\n .ec-headerCategoryArea{\n .ec-headerCategoryArea__heading {\n border-top: 1px solid #CCCCCC;\n border-bottom: 1px solid #CCCCCC;\n padding: 1em 10px;\n font-size: 16px;\n font-weight: bold;\n color: black;\n background: #F8F8F8;\n }\n\n p {\n margin-top: 0;\n margin-bottom: 0;\n }\n\n .ec-itemNav__nav li a {\n border-bottom: 1px solid #ccc;\n border-bottom: 1px solid #ccc;\n color: black;\n font-weight: normal;\n background: #f8f8f8;\n }\n\n .ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #ccc;\n padding-left: 20px;\n font-weight: normal;\n background: white;\n }\n\n .ec-itemNav__nav > li:hover > a {\n background: #f8f8f8;\n }\n\n .ec-itemNav__nav > li:hover li:hover > a {\n background: white;\n }\n\n .ec-itemNav__nav li ul li ul li a {\n padding-left: 40px;\n color: black;\n background: white;\n }\n\n .ec-itemNav__nav li:hover ul li ul li a:hover {\n background: white;\n }\n\n .ec-itemNav__nav li ul li ul li ul li a{\n padding-left: 60px;\n font-weight: normal;\n }\n }\n .ec-headerLinkArea {\n background: black;\n\n .ec-headerLink__list {\n border-top: 1px solid #ccc;\n\n }\n\n .ec-headerLink__item {\n display: block;\n border-bottom: 1px solid #ccc;\n padding: 15px 20px;\n font-size: 16px;\n font-weight: bold;\n color: white;\n }\n .ec-headerLink__icon {\n display: inline-block;\n width: 28px;\n font-size: 17px;\n }\n\n\n\n }\n\n}\n\n.ec-drawerRoleClose {\n display: none;\n cursor: pointer;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 270px;\n z-index: 1000;\n\n .fas {\n vertical-align: top;\n }\n @include media_desktop {\n display: none;\n }\n\n}\n\n.ec-drawerRole.is_active {\n display: block;\n transform: translateX(0);\n transition: all .3s;\n z-index: 100000;\n\n @include media_desktop() {\n display: none;\n }\n}\n.ec-drawerRoleClose.is_active {\n display: inline-block;\n transition: all .3s;\n\n @include media_desktop {\n display: none;\n }\n}\n\n.ec-overlayRole {\n position: fixed;\n width: 100%;\n height: 100vh;\n top: 0;\n left: 0;\n opacity: 0;\n background: transparent;\n transform: translateX(0);\n transition: all .3s;\n visibility: hidden;\n\n @include media_desktop {\n display: none;\n }\n}\n\n.have_curtain .ec-overlayRole {\n display: block;\n opacity: 1;\n background: rgba(0, 0, 0, 0.5);\n visibility: visible;\n\n @include media_desktop {\n display: none;\n }\n}\n\n/*\nヘッダー:test\n\ntest\n\nMarkup:\nspan.ec-itemAccordionParent test1\nul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test2\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test3\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test4\n\nStyleguide 11.2.7\n*/\n\n.ec-itemNavAccordion {\n display: none;\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\nフッター\n\n全ページで使用されるフッターのプロジェクトコンポーネントです。\n\nex [トップページ フッター](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerRole\n\nStyleguide 11.3\n*/\n.ec-footerRole{\n border-top: 1px solid #7d7d7d;\n margin-top: 30px;\n background: black;\n\n @include media_desktop(){\n padding-top: 40px;\n margin-top: 100px;\n }\n & &__inner{\n @include media_desktop {\n @include container;\n }\n }\n}\n\n/*\nフッターナビ\n\nフッタープロジェクトで使用するナビゲーション用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.1\n*/\n.ec-footerNavi{\n padding: 0;\n color: white;\n list-style: none;\n text-align: center;\n\n & &__link{\n display: block;\n\n @include media_desktop {\n display: inline-block;\n }\n\n a{\n display: block;\n border-bottom: 1px solid #7d7d7d;\n padding: 15px 0;\n font-size: 14px;\n color: inherit;\n text-decoration: none;\n\n @include media_desktop {\n display: inline-block;\n border-bottom: none;\n margin: 0 10px;\n padding: 0;\n text-decoration: underline;\n }\n }\n &:hover {\n a {\n opacity: .8;\n text-decoration: none;\n }\n\n }\n\n }\n}\n\n/*\nフッタータイトル\n\nフッタープロジェクトで使用するタイトル用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerTitle\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.2\n*/\n.ec-footerTitle{\n padding: 40px 0 60px;\n text-align: center;\n color: white;\n\n @include media_desktop {\n padding: 50px 0 80px;\n }\n\n & &__logo{\n display: block;\n margin-bottom: 10px;\n font-weight: bold;\n @include reset_link();\n\n a{\n font-size: 22px;\n color: inherit;\n @include media_desktop {\n font-size: 24px;\n }\n\n }\n\n &:hover {\n a {\n opacity: .8;\n text-decoration: none;\n }\n }\n }\n & &__copyright{\n font-size: 10px;\n\n @include media_desktop {\n font-size: 12px;\n }\n }\n}\n","@import \"../mixins/media\";\n/*\nトップページ\n\nトップページ スライド部に関する Project コンポーネントを定義します。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.1.slider.pug\n+ec-sliderRole\n\nStyleguide 12.1\n*/\n.ec-sliderRole{\n @include container;\n margin-bottom: 24px;\n ul{\n padding: 0;\n list-style: none;\n }\n}\n.ec-sliderItemRole{\n @include container;\n margin-bottom: 24px;\n ul{\n padding: 0;\n list-style: none;\n }\n .item_nav {\n display: none;\n @include media_desktop {\n display: flex;\n justify-content: flex-start;\n flex-wrap: wrap;\n margin-bottom: 0;\n }\n\n }\n .slideThumb{\n margin-bottom: 25px;\n width: 33%;\n opacity: .8;\n cursor: pointer;\n\n &:focus {\n outline: none;\n }\n &:hover {\n opacity: 1;\n }\n img {\n width: 80%;\n }\n }\n}\n","@import \"../mixins/media\";\n\n/*\nアイキャッチ\n\nトップページ アイキャッチ部に関する Project コンポーネントを定義します。\n\nex [トップページスライダー直下 アイキャッチ部](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.2.eyecatch.pug\n+ec-eyecatchRole\n\nStyleguide 12.2\n*/\n.ec-eyecatchRole {\n display: flex;\n flex-wrap: wrap;\n margin-bottom: 40px;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n & &__image {\n display: block;\n margin-bottom: 40px;\n width: 100%;\n height: 100%;\n\n @include media_desktop {\n order: 2;\n }\n }\n\n & &__intro {\n color: black;\n\n @include media_desktop {\n padding-right: 5%;\n order: 1;\n }\n }\n & &__introEnTitle {\n margin-bottom: .8em;\n font-size: 16px;\n font-weight: normal;\n\n @include media_desktop {\n margin-top: 45px;\n }\n }\n & &__introTitle {\n margin-bottom: .8em;\n font-size: 24px;\n font-weight: bold;\n\n @include media_desktop {\n margin-bottom: 1em;\n font-size: 26px;\n }\n }\n & &__introDescriptiron {\n margin-bottom: 20px;\n font-size: 16px;\n line-height: 2;\n @include media_desktop {\n margin-bottom: 30px;\n }\n }\n\n}\n","@import \"../mixins/btn\";\n@import \"../mixins/media\";\n\n/*\nボタン\n\nトップページで使用されているボタンのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.3\n*/\n\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nMarkup:\n.ec-inlineBtn--top more\n\nStyleguide 12.3.1\n*/\n.ec-inlineBtn--top{\n @include _btn(white, black, black);\n}\n\n/*\nロングボタン(全幅)\n\nロングタイプのボタンです。\n\nMarkup:\n.ec-blockBtn--top 商品一覧へ\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn--top{\n @include _btn(white, black, black);\n display: block;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n\n @include media_desktop {\n max-width: 260px;\n }\n}\n","/*\n見出し\n\nトップページで使用されている見出しのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.4\n*/\n\n/*\n横並び見出し\n\n横並びの見出しです。\n\nMarkup:\n.ec-secHeading\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.1\n*/\n.ec-secHeading {\n margin-bottom: 15px;\n color: black;\n & &__en{\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em;\n }\n & &__line{\n display: inline-block;\n margin: 0 20px;\n width: 1px;\n height: 14px;\n background: black;\n }\n & &__ja{\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px;\n }\n}\n\n/*\n縦並び見出し\n\n縦並びの見出しです。\n\nMarkup:\n.ec-secHeading--tandem\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.2\n*/\n\n.ec-secHeading--tandem {\n margin-bottom: 15px;\n color: black;\n text-align: center;\n & .ec-secHeading__en{\n display: block;\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em;\n }\n & .ec-secHeading__line{\n display: block;\n margin: 13px auto;\n width: 20px;\n height: 1px;\n background: black;\n }\n & .ec-secHeading__ja{\n display: block;\n margin-bottom: 30px;\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\nトピック(アイテム2列)\n\nトップページで使用されているトピックのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.5.1\n*/\n\n.ec-topicRole {\n padding: 40px 0;\n background: #F8F8F8;\n\n @include media_desktop {\n padding: 60px 0;\n }\n\n & &__list {\n display: flex;\n flex-wrap: wrap;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n }\n & &__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto;\n\n @include media_desktop {\n width: calc(100% / 2);\n\n &:not(:last-of-type){\n margin-right: 30px;\n }\n }\n\n }\n & &__listItemTitle {\n margin-top: .5em;\n font-size: 14px;\n color: black;\n\n @include media_desktop {\n margin-top: 1em;\n }\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\nカテゴリ(アイテム4列 スマホの時は2列)\n\nトップページで使用されているアイテムリストのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.6.1\n*/\n\n.ec-newItemRole {\n padding: 40px 0;\n\n @include media_desktop {\n padding: 60px 0;\n }\n\n & &__list {\n display: flex;\n flex-wrap: wrap;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n }\n & &__listItem {\n margin-bottom: 4%;\n width: 48%;\n height: auto;\n\n &:not(:first-child){\n a {\n color: black;\n }\n }\n\n @include media_desktop {\n margin-bottom: 15px;\n width: calc(100% / 4);\n\n &:not(:last-of-type){\n margin-right: 30px;\n }\n }\n\n &:nth-child(odd){\n margin-right: 4%;\n\n @include media_desktop {\n margin-right: 30px;\n }\n }\n }\n & &__listItemHeading {\n margin-top: calc(45% - 20px);\n }\n & &__listItemTitle {\n margin: 8px 0;\n font-size: 14px;\n font-weight: bold;\n\n @include media_desktop {\n margin: 20px 0 10px;\n }\n }\n\n & &__listItemPrice {\n font-size: 12px;\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\nカテゴリ(アイテム3列)\n\nトップページで使用されているカテゴリのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.7.1\n*/\n\n.ec-categoryRole {\n padding: 40px 0;\n color: black;\n background: #F8F8F8;\n\n @include media_desktop {\n padding: 60px 0;\n }\n\n & &__list {\n display: flex;\n flex-wrap: wrap;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n }\n & &__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto;\n\n @include media_desktop {\n width: calc(100% / 3);\n\n &:not(:last-of-type){\n margin-right: 30px;\n }\n }\n\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\n見出し\n\nトップページで使用されている新着情報のスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.8.1\n*/\n\n.ec-newsRole {\n padding: 40px 0 0;\n\n @include media_desktop {\n padding: 60px 0 0;\n }\n\n & &__news {\n\n box-sizing: border-box;\n\n @include media_desktop {\n border: 16px solid #F8F8F8;\n padding: 20px 30px;\n }\n }\n & &__newsItem {\n width: 100%;\n\n &:not(:last-of-type){\n border-bottom: 1px solid #ccc;\n }\n\n &:last-of-type {\n margin-bottom: 20px;\n\n @include media_desktop {\n margin-bottom: 0;\n }\n }\n\n\n @include media_desktop {\n\n padding: 20px 0;\n }\n }\n & &__newsHeading {\n cursor: pointer;\n\n @include media_desktop {\n display: flex;\n }\n\n }\n & &__newsDate {\n display: block;\n margin: 15px 0 5px;\n font-size: 12px;\n color: black;\n\n @include media_desktop {\n display: inline-block;\n margin: 0;\n min-width: 120px;\n font-size: 14px;\n }\n\n }\n & &__newsColumn {\n display: flex;\n\n @include media_desktop {\n display: inline-flex;\n min-width: calc(100% - 120px);\n }\n }\n\n & &__newsTitle {\n display: inline-block;\n margin-bottom: 10px;\n width: 90%;\n font-size: 14px;\n font-weight: bold;\n color: #7D7D7D;\n line-height: 1.6;\n\n @include media_desktop {\n margin-bottom: 0;\n line-height: 1.8;\n }\n\n }\n & &__newsClose {\n display: inline-block;\n width: 10%;\n position: relative;\n\n }\n & &__newsCloseBtn {\n display: inline-block;\n margin-left: auto;\n border-radius: 50%;\n width: 20px;\n height: 20px;\n color: white;\n text-align: center;\n background: black;\n cursor: pointer;\n position: absolute;\n right: 5px;\n }\n & &__newsDescription {\n display: none;\n margin: 0 0 10px;\n font-size: 14px;\n line-height: 1.4;\n overflow: hidden;\n\n @include media_desktop {\n margin: 20px 0 0;\n line-height: 1.8;\n }\n\n a {\n color: #0092C4;\n }\n }\n &__newsItem.is_active &__newsDescription{\n margin: 0 0 10px;\n\n @include media_desktop {\n margin: 20px 0 0;\n }\n }\n &__newsItem.is_active &__newsCloseBtn i {\n display: inline-block;\n transform: rotateX(180deg) translateY(2px);\n\n }\n\n}\n","@import \"../mixins/media\";\n/*\n検索ラベル\n\n商品一覧 ヘッダー部 に関する Project コンポーネントを定義します。\n\nex [商品一覧 ヘッダー部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.1.searchnav.pug\n+ec-searchnavRole__topicpath\n+ec-searchnavRole__info\n\nStyleguide 13.1\n\n*/\n.ec-searchnavRole{\n margin-bottom: 0;\n padding: 0;\n @include media_desktop {\n @include container;\n }\n & &__infos{\n @include container;\n display: flex;\n border-top: 0;\n margin-bottom: 16px;\n padding-top: 5px;\n flex-direction:column;\n @include media_desktop {\n padding-left: 0;\n padding-right: 0;\n border-top: 1px solid #ccc;\n padding-top: 16px;\n flex-direction:row;\n }\n }\n\n & &__counter{\n margin-bottom: 16px;\n width: 100%;\n @include media_desktop {\n margin-bottom: 0;\n width: 50%;\n }\n }\n\n & &__actions{\n text-align: right;\n width: 100%;\n @include media_desktop {\n width: 50%;\n }\n }\n\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\n商品一覧\n\n商品一覧 に関する Project コンポーネントを定義します。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2\n\n*/\n.ec-shelfRole{\n @include container;\n}\n\n/*\n商品一覧グリッド\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2.1\n\n*/\n.ec-shelfGrid{\n @include reset_link;\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n\n @include media_desktop {\n margin-left: -16px;\n margin-right: -16px;\n }\n & &__item{\n margin-bottom: 36px;\n width: 50%;\n display: flex;\n flex-direction: column;\n &-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center;\n @include media_desktop() {\n height: 250px;\n }\n }\n img{\n width: auto;\n max-height: 100%;\n }\n @include media_desktop(){\n padding: 0 16px;\n width: 25%;\n }\n\n .ec-productRole__btn {\n margin-top: auto;\n margin-bottom: 15px;\n }\n }\n & &__item:nth-child(odd){\n padding-right: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__item:nth-child(even){\n padding-left: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__title {\n margin-bottom: 7px;\n }\n & &__plice {\n font-weight: bold;\n }\n}\n\n/*\n13.2.2 商品一覧グリッド(中央寄せ)\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n商品のあまりはセンタリングされ、中央に表示されます。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGridCenter\n\nStyleguide 13.2.2\n\n*/\n.ec-shelfGridCenter{\n @include reset_link;\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n justify-content: center;\n\n @include media_desktop {\n margin-left: -16px;\n margin-right: -16px;\n }\n & &__item{\n margin-bottom: 36px;\n width: 50%;\n &-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center;\n @include media_desktop() {\n height: 250px;\n }\n }\n img{\n width: auto;\n max-height: 100%;\n }\n @include media_desktop(){\n padding: 0 16px;\n width: 25%;\n }\n\n .ec-productRole__btn {\n margin-top: auto;\n padding-top: 1em;\n }\n }\n & &__item:nth-child(odd){\n padding-right: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__item:nth-child(even){\n padding-left: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__title {\n margin-bottom: 7px;\n }\n & &__plice {\n font-weight: bold;\n }\n}\n","@import \"../mixins/media\";\n\n/*\nカート追加モーダル\n\nカート追加モーダルに関する Project コンポーネントを定義します。\n\nex [商品一覧、商品詳細](http://demo3.ec-cube.net/products/list)\n\n+ec-modal\n\nStyleguide 13.4\n\n*/\n\n.ec-modal {\n\n .checkbox {\n display: none;\n }\n\n .ec-modal-overlay {\n opacity: 0;\n transition: all 0.3s ease;\n width: 100%;\n height: 100%;\n position: fixed;\n top: 0;\n left: 0;\n z-index: -100;\n transform: scale(1);\n display: flex;\n background-color: rgba(0, 0, 0, 0.3);\n }\n\n .ec-modal-wrap {\n background-color: #fff;\n border: 1px solid #333;\n width: 90%;\n margin: 20px;\n padding: 40px 5px;\n border-radius: 2px;\n transition: all 0.5s ease;\n -ms-flex-item-align: center;\n align-self: center;\n\n .ec-modal-box {\n text-align: center;\n }\n\n .ec-modal-box div {\n margin-top: 20px;\n }\n\n @include media_desktop {\n & {\n padding: 40px 10px;\n width: 50%;\n margin: 20px auto;\n }\n }\n\n &.small {\n width: 30%;\n }\n\n &.full {\n width: 100%;\n height: 100%;\n }\n }\n\n .ec-modal-overlay {\n .ec-modal-close {\n position: absolute;\n right: 20px;\n top: 10px;\n font-size: 20px;\n height: 30px;\n width: 20px;\n\n &:hover {\n cursor: pointer;\n color: #4b5361;\n }\n }\n }\n\n .ec-modal-overlay-close {\n display: none;\n width: 100%;\n height: 100%;\n position: fixed;\n left: 0;\n top: 0;\n }\n\n input:checked {\n ~ .ec-modal-overlay {\n transform: scale(1);\n opacity: 1;\n z-index: 9997;\n overflow: auto;\n .ec-modal-overlay-close {\n display: block;\n }\n }\n\n ~ .ec-modal-overlay .ec-modal-wrap {\n transform: translateY(0);\n z-index: 9999;\n }\n }\n}\n","@import \"../mixins/media\";\n\n/*\n商品詳細\n\n商品詳細ページに関する Project コンポーネントを定義します。\n\nex [商品詳細ページ](http://demo3.ec-cube.net/products/detail/18)\n\n\nMarkup:\ninclude /assets/tmpl/elements/14.1.product.pug\n+ec-productSimpleRole\n\nStyleguide 14.1\n*/\n.ec-productRole {\n @include container;\n & &__img {\n margin-right: 0;\n margin-bottom: 20px;\n @include media_desktop {\n margin-right: 16px;\n margin-bottom: 0;\n }\n }\n & &__profile {\n margin-left: 0;\n @include media_desktop {\n margin-left: 16px;\n }\n }\n & &__title {\n .ec-headingTitle {\n font-size: 20px;\n @include media_desktop {\n font-size: 32px;\n }\n }\n }\n & &__tags {\n margin-top: 16px;\n padding: 0;\n padding-bottom: 16px;\n border-bottom: 1px dotted #ccc;\n }\n & &__tag {\n display: inline-block;\n padding: 2px 5px;\n list-style: none;\n font-size: 80%;\n color: #525263;\n border: solid 1px #D7DADD;\n border-radius: 3px;\n background-color: #F5F7F8;\n }\n & &__priceRegular {\n padding-top: 14px\n }\n & &__priceRegularTax {\n margin-left: 5px;\n font-size: 10px;\n }\n & &__price {\n color: #DE5D50;\n font-size: 28px;\n padding: 0;\n border-bottom: 0;\n @include media_desktop {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc;\n }\n }\n & &__code {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc;\n }\n & &__category {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc;\n a {\n color: #33A8D0;\n }\n ul {\n list-style: none;\n padding: 0;\n margin: 0;\n }\n }\n & &__actions {\n padding: 14px 0;\n .ec-select {\n select {\n height: 40px;\n max-width: 100%;\n min-width: 100%;\n @include media_desktop {\n min-width: 350px;\n max-width: 350px;\n }\n }\n }\n }\n & &__btn {\n width: 100%;\n margin-bottom: 10px;\n @include media_desktop {\n width: 60%;\n margin-bottom: 16px;\n min-width: 350px;\n }\n }\n & &__description {\n margin-bottom: 16px;\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n\n/*\nカート\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [カートページ](http://demo3.ec-cube.net/shopping)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartRole\n\nStyleguide 15.1\n\n*/\n.ec-cartRole{\n @include container;\n &::before{\n display: none;\n }\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end;\n\n & &__progress{\n width: 100%;\n text-align: center;\n }\n & &__error{\n width: 100%;\n text-align: center;\n .ec-alert-warning {\n max-width: 80%;\n display: inline-block;\n }\n }\n & &__totalText{\n margin-bottom: 0;\n padding: 16px 0 6px;\n width: 100%;\n text-align: center;\n font-weight: normal;\n @include media_desktop {\n margin-bottom: 30px;\n padding: 0;\n }\n }\n & &__cart{\n margin: 0;\n width: 100%;\n @include media_desktop {\n margin: 0 10%;\n }\n\n }\n & &__actions{\n text-align: right;\n width: 100%;\n @include media_desktop {\n width: 20%;\n margin-right: 10%;\n }\n }\n & &__total{\n padding: 15px 0 30px ;\n font-weight: bold;\n font-size: 16px;\n }\n & &__totalAmount{\n margin-left: 30px;\n color: #de5d50;\n font-size: 16px;\n @include media_desktop {\n font-size: 24px;\n }\n }\n\n .ec-blockBtn--action {\n margin-bottom: 10px;\n }\n}\n\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品をを表示するテーブル枠です。\n\nex [カートページ テーブル部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartTable\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 15.1.2\n*/\n.ec-cartTable{\n display: table;\n border-top: 1px dotted #ccc;\n width: 100%;\n @include media_desktop {\n border-top: none;\n }\n}\n\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品を表示するテーブルのヘッダです。\nスマホでは非表示となります。\n\nex [カートページ カートテーブルヘッダ部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartHeader\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.3\n*/\n.ec-cartHeader{\n display: none;\n width: 100%;\n background: #F4F3F0;\n @include media_desktop {\n display: table-row;\n }\n & &__label{\n display: table-cell;\n padding: 16px;\n text-align: center;\n background: #F4F3F0;\n overflow-x: hidden;\n font-weight: bold;\n }\n}\n.ec-cartCompleteRole {\n @include container;\n}\n/*\nカート内商品\n\nカート内のアイテムを表示するテーブル行です。\nスマホでは非表示となります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRow\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.4\n*/\n\n.ec-cartRow{\n display: table-row;\n & &__delColumn{\n border-bottom: 1px dotted #ccc;\n text-align: center;\n display: table-cell;\n width: 14%;\n vertical-align: middle;\n @include media_desktop{\n width: 8.3333333%;\n }\n .ec-icon {\n img {\n width: 1.5em;\n height: 1.5em;\n @include media_desktop {\n width: 1em;\n height: 1em;\n }\n }\n }\n }\n & &__contentColumn{\n border-bottom: 1px dotted #ccc;\n padding: 10px 0;\n display: table;\n @include media_desktop {\n display: table-cell;\n }\n }\n & &__img{\n display: table-cell;\n width: 40%;\n vertical-align: middle;\n padding-right: 10px;\n @include media_desktop {\n display: inline-block;\n min-width: 80px;\n max-width: 100px;\n padding-right: 0;\n }\n }\n & &__summary{\n display: table-cell;\n margin-left: 5px;\n font-weight: bold;\n vertical-align: middle;\n width: 46%;\n @include media_desktop {\n display: inline-block;\n margin-left: 20px;\n vertical-align: middle;\n }\n .ec-cartRow__name {\n margin-bottom: 5px;\n }\n .ec-cartRow__sutbtotalSP {\n display: block;\n font-weight: normal;\n @include media_desktop {\n display: none;\n }\n }\n }\n & &__amountColumn{\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n vertical-align: middle;\n text-align: center;\n width: 20%;\n @include media_desktop {\n width: 16.66666667%;\n }\n\n .ec-cartRow__amount {\n display: none;\n margin-bottom: 10px;\n @include media_desktop {\n display: block;\n }\n }\n .ec-cartRow__amountSP {\n display: block;\n margin-bottom: 10px;\n @include media_desktop {\n display: none;\n }\n }\n\n .ec-cartRow__amountUpDown {\n display: flex;\n justify-content: center;\n @include media_desktop {\n display: block;\n }\n }\n\n .ec-cartRow__amountUpButton {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff;\n\n\n .ec-cartRow__amountUpButton__icon {\n img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%;\n }\n }\n }\n .ec-cartRow__amountDownButton {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff;\n\n .ec-cartRow__amountDownButton__icon {\n img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%;\n }\n }\n }\n\n .ec-cartRow__amountDownButtonDisabled {\n @extend .ec-cartRow__amountDownButton;\n cursor: default;\n }\n }\n & &__subtotalColumn{\n display: none;\n border-bottom: 1px dotted #ccc;\n text-align: right;\n width: 16.66666667%;\n @include media_desktop {\n display: table-cell;\n }\n }\n}\n\n/*\nカート内商品(商品が1の場合)\n\n商品が1の場合はカート商品を減らす「-」ボタンの無効化状態になります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRowOnly\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.5\n*/\n\n.ec-cartRow{\n & &__amountColumn{\n .ec-cartRow__amountDownButtonDisabled {\n @extend .ec-cartRow__amountDownButton;\n cursor: default;\n }\n }\n}\n\n/*\nアラート\n\nカート内の商品に問題があることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartRole\n .ec-cartRole__cart\n +ec-alert-warning\n\nStyleguide 15.1.6\n*/\n\n.ec-alert-warning {\n width: 100%;\n padding: 10px;\n text-align: center;\n background: #F99;\n margin-bottom: 20px;\n\n\n & &__icon {\n display: inline-block;\n margin-right: 1rem;\n width: 20px;\n height: 20px;\n color: #fff;\n fill: #fff;\n vertical-align: top;\n }\n & &__text {\n display: inline-block;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n position: relative;\n }\n}\n\n\n\n\n/*\nアラート(空)\n\nカートが空であることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-off3Grid\n .ec-off3Grid__cell\n +ec-alert-warningEnpty\n\nStyleguide 15.1.7\n*/\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/projects\";\n/*\n注文内容確認\n\nカート内 注文内容確認に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/shopping)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderRole\n\nStyleguide 15.2\n*/\n.ec-orderRole{\n @include container;\n display: flex;\n flex-direction: column;\n margin-top: 0;\n @include media_desktop {\n margin-top: 20px;\n flex-direction: row;\n }\n .ec-inlineBtn {\n font-weight: normal;\n }\n & &__detail{\n padding: 0;\n width: 100%;\n @include media_desktop {\n padding: 0 16px;\n width: 66.66666%;\n }\n }\n & &__summary{\n width: 100%;\n .ec-inlineBtn {\n display: inline-block;\n }\n @include media_desktop {\n width: 33.33333%;\n padding: 0 16px;\n .ec-inlineBtn {\n display: none;\n }\n }\n }\n .ec-borderedList {\n margin-bottom: 20px;\n border-top: 1px dotted #ccc;\n @include media_desktop {\n border-top: none;\n }\n }\n\n}\n\n/*\n注文履歴詳細 オーダ情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderInfo\n\nStyleguide 15.2.1\n*/\n.ec-orderOrder{\n margin-bottom: 30px;\n & &__items{\n @include borderBottom;\n @include borderTop;\n }\n}\n\n/*\n注文履歴詳細 お客様情報\n\nマイページ 注文詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAccount\n\nStyleguide 15.2.2\n*/\n.ec-orderAccount{\n margin-bottom: 30px;\n p {\n margin-bottom: 0;\n }\n @include clearfix;\n & &__change{\n display: inline-block;\n margin-left: 10px;\n float: right;\n }\n & &__account {\n margin-bottom: 16px;\n }\n\n}\n\n\n/*\n注文詳細 配送情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 配送情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderDelivery\n\nStyleguide 15.2.3\n*/\n.ec-orderDelivery{\n & &__title{\n padding: 16px 0 17px;\n font-weight: bold;\n font-size: 18px;\n position: relative;\n }\n & &__change{\n display: inline-block;\n position: absolute;\n right: 0;\n top:0;\n }\n & &__items{\n @include borderBottom;\n @include borderTop;\n }\n & &__address{\n margin: 10px 0 18px ;\n p{\n margin:0;\n }\n }\n & &__edit{\n }\n\n}\n\n\n/*\n注文履歴詳細 支払情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 支払情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderPayment\n .ec-rectHeading\n h2 お支払方法\n p 支払方法: 郵便振替\n\nStyleguide 15.2.4\n*/\n.ec-orderPayment{\n\n}\n\n\n/*\n注文履歴詳細 お問い合わせ\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ お問い合わせ(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderConfirm\n .ec-rectHeading\n h2 お問い合わせ\n p 記載なし\n\nStyleguide 15.2.5\n*/\n.ec-orderConfirm{\n margin-bottom: 20px;\n @include media_desktop {\n margin-bottom: 0;\n }\n .ec-input {\n textarea {\n height: 96px;\n }\n }\n\n}\n\n\n/*\nお届け先の複数指定\n\nお届け先の複数指定に関するコンポーネントを定義します。\n\nex [マイページ お届け先の複数指定](http://demo3.ec-cube.net/shopping/shipping_multiple)\n(商品購入画面 → 「お届け先を追加する」を押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAddAddress\n\nStyleguide 15.2.6\n*/\n.ec-AddAddress {\n padding: 0 10px;\n @include media_desktop {\n margin: 0 10%;\n }\n\n & &__info {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px;\n }\n & &__add {\n border-top: 1px solid #f4f4f4;\n padding-top: 20px;\n margin-bottom: 20px;\n }\n & &__item {\n display: table;\n padding:16px;\n background: #f4f4f4;\n margin-bottom: 16px;\n }\n & &__itemThumb {\n display: table-cell;\n min-width: 160px;\n width: 20%;\n img {\n width: 100%;\n }\n }\n & &__itemtContent {\n display: table-cell;\n vertical-align: middle;\n padding-left: 16px;\n font-size:16px;\n }\n & &__itemtTitle {\n font-weight: bold;\n margin-bottom: 10px;\n }\n & &__itemtSize {\n margin-bottom: 10px;\n }\n & &__itemtPrice {\n\n }\n & &__itemtNumber {\n\n }\n & &__select {\n margin-bottom: 5px;\n }\n & &__selectAddress {\n display: inline-block;\n label {\n font-size: 16px;\n font-weight: normal;\n }\n select {\n min-width: 100%;\n @include media_desktop {\n min-width: 350px;\n }\n }\n }\n & &__selectNumber {\n display: inline-block;\n margin-left: 30px;\n label {\n font-size: 16px;\n font-weight: normal;\n }\n input {\n display: inline-block;\n margin-left: 10px;\n width: 80px;\n }\n }\n & &__actions {\n .ec-blockBtn--action {\n margin-bottom: 8px;\n }\n }\n & &__new {\n margin-bottom: 20px;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n\n/*\n注文履歴一覧\n\nマイページ 注文履歴部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole\n\nStyleguide 16.1\n*/\n.ec-historyRole{\n & &__contents{\n padding-top: 1em;\n padding-bottom: 16px;\n border-top: 1px solid #ccc;\n display: flex;\n flex-direction: column;\n color: #525263;\n @include media_desktop {\n flex-direction: row;\n }\n }\n & &__header{\n width: 100%;\n @include media_desktop {\n width: 33.3333%;\n }\n }\n & &__detail{\n @include borderTop;\n width: 100%;\n\n .ec-imageGrid:nth-of-type(1) {\n border-top: none;\n }\n\n .ec-historyRole__detailTitle {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold;\n }\n\n .ec-historyRole__detailPrice {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold;\n }\n\n @include media_desktop {\n width: 66.6666%;\n border-top: none;\n }\n }\n}\n\n/*\n注文履歴一覧 規格\n\nマイページ 注文履歴内アイテムの規格を定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole-option\n\nStyleguide 16.1.1\n*/\n\n.ec-historyRole{\n & &__detail {\n .ec-historyRole__detailOption {\n display: inline-block;\n margin-bottom: 8px;\n margin-right: .5rem;\n font-size: 1.6rem;\n }\n .ec-historyRole__detailOption::after {\n display: inline-block;\n padding-left: .5rem;\n content: \"/\";\n font-weight: bold;\n }\n }\n}\n\n/*\n注文履歴一覧ヘッダ\n\n注文履歴一覧で使用するヘッダのコンポーネントを定義します。\n\nex [マイページ 注文履歴一覧ヘッダ](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyHeader\np hofe\n\nStyleguide 16.1.2\n*/\n\n\n.ec-historyListHeader{\n & &__date{\n font-weight: bold;\n font-size: 16px;\n @include media_desktop {\n font-weight: bold;\n font-size: 20px;\n }\n }\n & &__action{\n margin : 16px 0;\n a {\n font-size: 12px;\n font-weight: normal;\n @include media_desktop {\n font-size: 14px;\n }\n }\n }\n}\n","@import \"../mixins/projects\";\n@import \"../mixins/media\";\n\n/*\n注文履歴詳細\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailRole\n\nStyleguide 16.2\n*/\n\n\n/*\n注文履歴詳細 メール履歴\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMail\n\nStyleguide 16.2.5\n*/\n.ec-orderMails{\n & &__item{\n padding-bottom: 10px;\n @include borderBottom();\n }\n & &__time{\n margin: 0;\n }\n & &__body{\n display: none;\n }\n}\n\n\n\n\n/*\n注文履歴詳細 メール履歴個別\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴個別](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMailHistory\n\nStyleguide 16.2.6\n*/\n.ec-orderMail{\n padding-bottom: 10px;\n @include borderBottom();\n margin-bottom: 16px;\n & &__time{\n margin: 0;\n }\n & &__body{\n display: none;\n }\n & &__time {\n margin-bottom: 4px;\n }\n & &__link {\n a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n }\n a:hover {\n color: #33A8D0;\n }\n margin-bottom: 4px;\n }\n & &__close{\n a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n }\n a:hover {\n color: #33A8D0;\n }\n }\n}\n","/*\n住所一覧\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [マイページ内 お届け先編集](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\ninclude /assets/tmpl/elements/17.1.address.pug\n+ec-addressList\n+ec-addressRole\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 17.1\n\n*/\n.ec-addressRole{\n & &__item{\n border-top: 1px dotted #ccc;\n }\n & &__actions{\n margin-top: 32px;\n padding-bottom:20px;\n border-bottom: 1px dotted #ccc;\n }\n}\n.ec-addressList{\n & &__item{\n display: table;\n width: 100%;\n position: relative;\n border-bottom: 1px dotted #ccc;\n }\n & &__remove{\n //display: table-cell;\n vertical-align: middle;\n padding: 16px;\n text-align: center;\n .ec-icon img {\n width: 1em;\n height: 1em;\n }\n }\n & &__address{\n display: table-cell;\n vertical-align: middle;\n padding: 16px;\n margin-right:4em;\n width: 80%;\n }\n & &__action{\n position: relative;\n vertical-align: middle;\n text-align: right;\n top: 27px;\n padding-right: 10px;\n }\n}\n","@import \"../mixins/media\";\n/*\nパスワードリセット\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [パスワードリセット画面](http://demo3.ec-cube.net/forgot)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/18.1.password.pug\n+ec-passwordRole\n\nStyleguide 18.1\n\n*/\n.ec-forgotRole{\n @include container;\n & &__intro {\n font-size: 16px;\n }\n & &__form {\n margin-bottom: 16px;\n }\n\n}\n","@import \"../mixins/media\";\n/*\n会員登録\n\n新規会員登録 に関する Project コンポーネントを定義します。\n\nex [新規会員登録画面 会員登録](http://demo3.ec-cube.net/entry)\n\nMarkup:\ninclude /assets/tmpl/elements/19.1.register.pug\n+ec-registerRole\n\nStyleguide 19.1\n\n*/\n.ec-registerRole{\n @include container;\n & &__actions {\n padding-top:20px;\n text-align: center;\n @include media_desktop {\n text-align: left;\n }\n p {\n margin-bottom: 16px;\n }\n }\n .ec-blockBtn--action {\n margin-bottom: 16px;\n }\n}\n.ec-registerCompleteRole {\n @include container;\n}\n","@import \"../mixins/media\";\n/*\nお問い合わせ\n\nお問い合わせ に関する Project コンポーネントを定義します。\n\nex [お問い合わせ](http://demo3.ec-cube.net/contact)\n\nMarkup:\ninclude /assets/tmpl/elements/19.2.contact.pug\n+ec-contactRole\n\nStyleguide 19.2\n\n*/\n.ec-contactRole{\n @include container;\n & &__actions {\n padding-top:20px;\n }\n p {\n margin:16px 0;\n }\n\n}\n.ec-contactConfirmRole {\n @include container;\n & &__actions {\n padding-top:20px;\n }\n .ec-blockBtn--action {\n margin-bottom: 16px;\n }\n}\n.ec-contactCompleteRole {\n @include container;\n}\n","@import \"../mixins/media\";\n/*\nお客様情報の入力\n\nログインせずゲストとして商品を購入する際の、お客様情報の入力 に関する Project コンポーネントを定義します。\n\nex [カートSTEP2 お客様情報の入力(ゲスト購入)](http://demo3.ec-cube.net/shopping/nonmember)\n\nMarkup:\ninclude /assets/tmpl/elements/19.3.customer.pug\n+ec-customerRole\nhoge\n\nStyleguide 19.3\n\n*/\n.ec-customerRole{\n @include container;\n & &__actions {\n padding-top:20px;\n }\n .ec-blockBtn--action {\n margin-bottom: 10px;\n @include media_desktop {\n margin-bottom: 16px;\n }\n }\n}\n\n.ec-contactConfirmRole {\n @include container;\n & &__actions {\n padding-top:20px;\n }\n .ec-blockBtn--action {\n margin-bottom: 16px;\n }\n}\n.ec-contactCompleteRole {\n @include container;\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/media\";\n@import \"../mixins/animation\";\n/*\n404ページ\n\n404 エラー画面で使用するページコンポーネントです。\n\nex [404エラー画面](http://demo3.ec-cube.net/404)\n\nMarkup:\ninclude /assets/tmpl/elements/20.1.404.pug\n+ec-404Role\n\nStyleguide 20.1\n\n*/\n.ec-404Role{\n @include commonStyle();\n width: 100%;\n height: 100vh;\n background-color: #f2f2f2;\n text-align: center;\n box-sizing: border-box;\n & &__icon{\n img {\n width: 1em;\n height: 1em;\n }\n }\n & &__title{\n font-weight: bold;\n font-size: 25px;\n }\n\n}\n","@import \"../mixins/media\";\n/*\n退会手続き\n\n退会手続きで使用するページコンポーネントです。\n\nex [退会手続き](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawRole\n\nStyleguide 21.1\n\n*/\n.ec-withdrawRole{\n @include container;\n text-align: center;\n padding: 0 16px;\n & &__title{\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px;\n }\n & &__description{\n margin-bottom: 32px;\n font-size: 16px;\n }\n .ec-icon {\n img {\n width: 100px;\n height: 100px;\n }\n }\n}/*\n退会手続き実行確認\n\n退会手続き実行確認で使用するページコンポーネントです。\n\nex [退会手続き 退会手続きへボタン→押下](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawConfirm\n\nStyleguide 21.1.2\n\n*/\n.ec-withdrawConfirmRole {\n & &__cancel {\n margin-bottom: 20px;\n }\n & &__title{\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px;\n }\n & &__description{\n margin-bottom: 32px;\n font-size: 16px;\n }\n .ec-icon {\n img {\n width: 100px;\n height: 100px;\n }\n }\n}\n","@import \"../mixins/media\";\n/*\n会員情報編集完了\n\n会員情報編集完了で使用するページコンポーネントです。\n\nex [会員情報編集完了](http://demo3.ec-cube.net/mypage/change_complete)\n\nMarkup:\ninclude /assets/tmpl/elements/22.1.editComplete.pug\n+ec-userEditCompleteRole\n\nStyleguide 22.1\n\n*/\n.ec-userEditCompleteRole{\n @include container;\n text-align: center;\n padding: 0 16px;\n & &__title{\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px;\n @include media_desktop(){\n font-size: 32px;\n }\n }\n & &__description{\n margin-bottom: 32px;\n font-size: 16px;\n }\n}\n"]} \ No newline at end of file +{"version":3,"sources":["../../node_modules/normalize.css/normalize.css","default/assets/scss/style.scss","default/assets/scss/component/_1.1.heading.scss","default/assets/scss/style.css","default/assets/scss/component/_1.2.typo.scss","default/assets/scss/component/_1.3.list.scss","default/assets/scss/component/_2.1.buttonsize.scss","default/assets/scss/mixins/_btn.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_buttons.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_tab-focus.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_vendor-prefixes.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_opacity.scss","default/assets/scss/component/_2.2.closebutton.scss","default/assets/scss/component/_2.3.otherbutton.scss","default/assets/scss/component/_3.1.inputText.scss","default/assets/scss/mixins/_forms.scss","../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_forms.scss","default/assets/scss/component/_3.2.inputMisc.scss","default/assets/scss/mixins/_projects.scss","default/assets/scss/component/_3.3.form.scss","default/assets/scss/component/_4.1.icon.scss","default/assets/scss/component/_5.1.grid.scss","default/assets/scss/component/_5.2.layout.scss","default/assets/scss/component/_6.1.login.scss","default/assets/scss/component/_7.1.itembanner.scss","default/assets/scss/component/_7.2.search.scss","default/assets/scss/mixins/_animation.scss","default/assets/scss/component/_7.3.cart.scss","default/assets/scss/mixins/_clearfix.scss","default/assets/scss/component/_8.1.info.scss","default/assets/scss/component/_9.1.mypage.scss","default/assets/scss/mixins/_media.scss","default/assets/scss/project/_11.1.role.scss","default/assets/scss/project/_11.2.header.scss","default/assets/scss/project/_11.3.footer.scss","default/assets/scss/project/_12.1.slider.scss","default/assets/scss/project/_12.2.eyecatch.scss","default/assets/scss/project/_12.3.button.scss","default/assets/scss/project/_12.4.heading.scss","default/assets/scss/project/_12.5.topics.scss","default/assets/scss/project/_12.6.newItem.scss","default/assets/scss/project/_12.7.category.scss","default/assets/scss/project/_12.8.news.scss","default/assets/scss/project/_13.1.searchnav.scss","default/assets/scss/project/_13.2.shelf.scss","default/assets/scss/project/_13.4.cartModal.scss","default/assets/scss/project/_14.1.product.scss","default/assets/scss/project/_15.1.cart.scss","default/assets/scss/project/_15.2.order.scss","default/assets/scss/project/_16.1.history.scss","default/assets/scss/project/_16.2.historyDetail.scss","default/assets/scss/project/_17.1.address.scss","default/assets/scss/project/_18.1.password.scss","default/assets/scss/project/_19.1.register.scss","default/assets/scss/project/_19.2.contact.scss","default/assets/scss/project/_19.3.customer.scss","default/assets/scss/project/_20.1.404.scss","default/assets/scss/project/_21.1.withdraw.scss","default/assets/scss/project/_22.1.editComplete.scss"],"names":[],"mappings":"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","file":"default/assets/css/style.min.css","sourcesContent":[null,"@import \"/node_modules/normalize.css/normalize.css\";\n\nbody {\n font-family: Roboto, \"游ゴシック\", YuGothic, \"Yu Gothic\", \"ヒラギノ角ゴ ProN W3\", \"Hiragino Kaku Gothic ProN\", Arial, \"メイリオ\", Meiryo, sans-serif;\n color:#525263;\n transition: z-index 0ms 5.28455ms;\n background: #f6f6f6;\n margin: 0;\n}\na {\n text-decoration: none;\n}\n\npre {\n background-color: transparent;\n border: none;\n padding: 16px 0;\n}\np {\n -webkit-margin-before: 0;\n -webkit-margin-after: 0;\n}\n@import \"component/1.1.heading\";\n@import \"component/1.2.typo\";\n@import \"component/1.3.list\";\n@import \"component/2.1.buttonsize\";\n@import \"component/2.2.closebutton.scss\";\n@import \"component/2.3.otherbutton\";\n@import \"component/3.1.inputText\";\n@import \"component/3.2.inputMisc\";\n@import \"component/3.3.form\";\n@import \"component/4.1.icon\";\n@import \"component/5.1.grid\";\n@import \"component/5.2.layout\";\n@import \"component/6.1.login\";\n@import \"component/7.1.itembanner\";\n@import \"component/7.2.search\";\n@import \"component/7.3.cart\";\n@import \"component/8.1.info\";\n@import \"component/8.2.banner\";\n@import \"component/9.1.mypage\";\n@import \"project/11.1.role\";\n@import \"project/11.2.header\";\n@import \"project/11.3.footer\";\n@import \"project/12.1.slider\";\n@import \"project/12.2.eyecatch\";\n@import \"project/12.3.button\";\n@import \"project/12.4.heading\";\n@import \"project/12.5.topics\";\n@import \"project/12.6.newItem\";\n@import \"project/12.7.category\";\n@import \"project/12.8.news\";\n@import \"project/13.1.searchnav\";\n@import \"project/13.2.shelf\";\n@import \"project/13.3.pager\";\n@import \"project/13.4.cartModal\";\n@import \"project/14.1.product\";\n@import \"project/15.1.cart\";\n@import \"project/15.2.order\";\n@import \"project/16.1.history\";\n@import \"project/16.2.historyDetail\";\n@import \"project/17.1.address\";\n@import \"project/18.1.password\";\n@import \"project/19.1.register\";\n@import \"project/19.2.contact\";\n@import \"project/19.3.customer\";\n@import \"project/20.1.404\";\n@import \"project/21.1.withdraw\";\n@import \"project/22.1.editComplete\";\n","@import \"../mixins/media\";\n@import \"../mixins/variables\";\n/*\n見出し\n\nページ内で見出しとして機能する要素のスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.1\n*/\n\n/*\n見出し\n\n商品紹介等で利用される、一般的な見出しのスタイルです。\n\nex [商品詳細ページ 商品見出し部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-headingTitle マトリョーシカ\n\nStyleguide 1.1.1\n*/\n.ec-headingTitle{\n margin: 0 0 8px;\n font-size: 32px;\n font-weight: normal;\n color: #525263;\n}\n\n/*\nページヘッダ\n\n各種ページで用いられるページヘッダのデザインです。\n\nex [利用規約ページ ページヘッダ部](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-pageHeader\n h1 利用規約\n\nStyleguide 1.1.2\n*/\n.ec-pageHeader h1{\n margin: 0 0 8px;\n border-bottom: 1px dotted #ccc;\n border-top: 1px solid #ccc;\n padding: 8px 0 12px;\n font-size: 16px;\n font-weight: bold;\n @include media_desktop {\n border-top: none;\n border-bottom: 1px solid #ccc;\n margin: 10px 16px 48px;\n padding: 8px;\n font-size: 32px;\n font-weight: bold;\n }\n}\n\n\n/*\nサブ見出し\n\n利用規約など、文字主体のページで用いられるサブ見出しです。\n\nex [利用規約ページ サブ見出し部分](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-heading 第1条 (会員)\n\nStyleguide 1.1.3\n*/\n\n.ec-heading{\n margin: 24px 0;\n}\n\n\n\n/*\nサブ見出し(太字)\n\n文字主体のページで用いられるサブ見出しの太字のスタイルです。\n\nex [プライバシーポリシー サブ見出し部分](http://demo3.ec-cube.net/help/privacy)\n\nMarkup:\n.ec-heading-bold 個人情報の定義\n\nStyleguide 1.1.4\n*/\n\n.ec-heading-bold {\n margin: 16px 0;\n font-size: 16px;\n font-weight: bold;\n @include media_desktop {\n font-size: 18px;\n }\n}\n\n/*\n背景付き見出し\n\nマイページ注文履歴等で用いられる背景付きの見出しです。\n\nex [ご注文履歴詳細 背景付き見出し部分](http://demo3.ec-cube.net/mypage/history/1063)\n\nMarkup:\n.ec-rectHeading\n h2 配送情報\n.ec-rectHeading\n h2 お支払について\n\nStyleguide 1.1.5\n*/\n.ec-rectHeading{\n h1, h2, h3,\n h4, h5, h6{\n background: $clrGray;\n padding: 8px 12px;\n font-size: 20px;\n font-weight: bold;\n }\n\n}\n\n\n/*\nメッセージ見出し\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用される見出しのスタイルです。\n\nex [注文完了 ログイン後、カートに商品を入れ注文完了まで行う](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\n\nStyleguide 1.1.6\n*/\n.ec-reportHeading{\n width: 100%;\n border-top: 1px dotted #ccc;\n margin: 20px 0 30px;\n padding: 0;\n text-align: center;\n font-size: 24px;\n font-weight: bold;\n @include media_desktop {\n border-top: 0;\n font-size: 32px;\n }\n h1, h2, h3,\n h4, h5, h6,p {\n font-weight: bold;\n font-size: 24px;\n @include media_desktop {\n font-size: 32px;\n }\n }\n}\n","@charset \"UTF-8\";\n@import url(/node_modules/normalize.css/normalize.css);\nbody {\n font-family: Roboto, \"游ゴシック\", YuGothic, \"Yu Gothic\", \"ヒラギノ角ゴ ProN W3\", \"Hiragino Kaku Gothic ProN\", Arial, \"メイリオ\", Meiryo, sans-serif;\n color: #525263;\n transition: z-index 0ms 5.28455ms;\n background: #f6f6f6;\n margin: 0; }\n\na {\n text-decoration: none; }\n\npre {\n background-color: transparent;\n border: none;\n padding: 16px 0; }\n\np {\n -webkit-margin-before: 0;\n -webkit-margin-after: 0; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n見出し\n\nページ内で見出しとして機能する要素のスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.1\n*/\n/*\n見出し\n\n商品紹介等で利用される、一般的な見出しのスタイルです。\n\nex [商品詳細ページ 商品見出し部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-headingTitle マトリョーシカ\n\nStyleguide 1.1.1\n*/\n.ec-headingTitle {\n margin: 0 0 8px;\n font-size: 32px;\n font-weight: normal;\n color: #525263; }\n\n/*\nページヘッダ\n\n各種ページで用いられるページヘッダのデザインです。\n\nex [利用規約ページ ページヘッダ部](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-pageHeader\n h1 利用規約\n\nStyleguide 1.1.2\n*/\n.ec-pageHeader h1 {\n margin: 0 0 8px;\n border-bottom: 1px dotted #ccc;\n border-top: 1px solid #ccc;\n padding: 8px 0 12px;\n font-size: 16px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-pageHeader h1 {\n border-top: none;\n border-bottom: 1px solid #ccc;\n margin: 10px 16px 48px;\n padding: 8px;\n font-size: 32px;\n font-weight: bold; } }\n\n/*\nサブ見出し\n\n利用規約など、文字主体のページで用いられるサブ見出しです。\n\nex [利用規約ページ サブ見出し部分](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-heading 第1条 (会員)\n\nStyleguide 1.1.3\n*/\n.ec-heading {\n margin: 24px 0; }\n\n/*\nサブ見出し(太字)\n\n文字主体のページで用いられるサブ見出しの太字のスタイルです。\n\nex [プライバシーポリシー サブ見出し部分](http://demo3.ec-cube.net/help/privacy)\n\nMarkup:\n.ec-heading-bold 個人情報の定義\n\nStyleguide 1.1.4\n*/\n.ec-heading-bold {\n margin: 16px 0;\n font-size: 16px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-heading-bold {\n font-size: 18px; } }\n\n/*\n背景付き見出し\n\nマイページ注文履歴等で用いられる背景付きの見出しです。\n\nex [ご注文履歴詳細 背景付き見出し部分](http://demo3.ec-cube.net/mypage/history/1063)\n\nMarkup:\n.ec-rectHeading\n h2 配送情報\n.ec-rectHeading\n h2 お支払について\n\nStyleguide 1.1.5\n*/\n.ec-rectHeading h1, .ec-rectHeading h2, .ec-rectHeading h3,\n.ec-rectHeading h4, .ec-rectHeading h5, .ec-rectHeading h6 {\n background: #F3F3F3;\n padding: 8px 12px;\n font-size: 20px;\n font-weight: bold; }\n\n/*\nメッセージ見出し\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用される見出しのスタイルです。\n\nex [注文完了 ログイン後、カートに商品を入れ注文完了まで行う](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\n\nStyleguide 1.1.6\n*/\n.ec-reportHeading {\n width: 100%;\n border-top: 1px dotted #ccc;\n margin: 20px 0 30px;\n padding: 0;\n text-align: center;\n font-size: 24px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-reportHeading {\n border-top: 0;\n font-size: 32px; } }\n .ec-reportHeading h1, .ec-reportHeading h2, .ec-reportHeading h3,\n .ec-reportHeading h4, .ec-reportHeading h5, .ec-reportHeading h6, .ec-reportHeading p {\n font-weight: bold;\n font-size: 24px; }\n @media only screen and (min-width: 768px) {\n .ec-reportHeading h1, .ec-reportHeading h2, .ec-reportHeading h3,\n .ec-reportHeading h4, .ec-reportHeading h5, .ec-reportHeading h6, .ec-reportHeading p {\n font-size: 32px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n文字装飾\n\n文字装飾をするためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.2\n*/\n/*\nテキストリンク\n\nテキストリンクのスタイルです。\n\nMarkup:\na(href=\"#\").ec-link さくらのクラウド\n\nStyleguide 1.2.1\n*/\n.ec-link {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n .ec-link:hover {\n color: #33A8D0;\n text-decoration: none; }\n\n/*\nテキスト(太字)\n\nテキストを太くするためのスタイルです。\n\nMarkup:\np.ec-font-bold この季節にぴったりな商品をご用意しました\n\nStyleguide 1.2.2\n*/\n.ec-font-bold {\n font-weight: bold; }\n\n/*\nテキスト(グレー)\n\nテキストをグレーにするためのスタイルです。\n\nMarkup:\np.ec-color-grey 青色が美しい職人が仕上げた吹きガラス\n\nStyleguide 1.2.3\n*/\n.ec-color-grey {\n color: #9a947e; }\n\n/*\nテキスト(赤)\n\nテキストを赤にするためのスタイルです。\n\nMarkup:\np.ec-color-red ¥ 2,728 税込\np.ec-color-accent ¥ 2,728 税込\n\nStyleguide 1.2.4\n*/\n.ec-color-red {\n color: #DE5D50; }\n\n.ec-color-accent {\n color: #DE5D50; }\n\n/*\nフォントサイズ\n\nフォントサイズを指定するためのスタイルです。\n\nMarkup:\n.ec-font-size-1 さわやかな日差しが過ごしやすい季節\n.ec-font-size-2 さわやかな日差しが過ごしやすい季節\n.ec-font-size-3 さわやかな日差しが過ごしやすい季節\n.ec-font-size-4 さわやかな日差しが過ごしやすい季節\n.ec-font-size-5 さわやかな日差しが過ごしやすい季節\n.ec-font-size-6 さわやかな日差しが過ごしやすい季節\n\n\nStyleguide 1.2.5\n*/\n.ec-font-size-1 {\n font-size: 12px; }\n\n.ec-font-size-2 {\n font-size: 14px; }\n\n.ec-font-size-3 {\n font-size: 16px; }\n\n.ec-font-size-4 {\n font-size: 20px; }\n\n.ec-font-size-5 {\n font-size: 32px; }\n\n.ec-font-size-6 {\n font-size: 40px; }\n\n/*\nテキスト水平位置\n\nテキストをセンタリングするためのスタイルです。\n\nMarkup:\np.ec-text-ac さわやかな日差しが過ごしやすい季節\n\nStyleguide 1.2.6\n*/\n.ec-text-ac {\n text-align: center; }\n\n/*\n価格テキスト\n\n価格を表示するテキストです。\n\n価格文字にスペースを取るほか、税込み等の表示を小さくする効果もあります。\n\nspanを用いたインライン要素として利用します。\n\nMarkup:\ndiv(style=\"color:#DE5D50;font-size:28px\")\n span.ec-price\n span.ec-price__unit ¥\n span.ec-price__price 1,280\n span.ec-price__tax 税込\n\nStyleguide 1.2.7\n*/\n.ec-price .ec-price__unit {\n font-size: 18px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-price .ec-price__unit {\n font-size: 1em; } }\n\n.ec-price .ec-price__price {\n display: inline-block;\n padding: 0 .3em;\n font-size: 18px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-price .ec-price__price {\n font-size: 1em; } }\n\n.ec-price .ec-price__tax {\n font-size: 12px; }\n @media only screen and (min-width: 768px) {\n .ec-price .ec-price__tax {\n font-size: 0.57em; } }\n\n/*\nテキストの位置\n\nテキストや、入れ子にしたインライン要素を\n「左揃え」「中央揃え」「右揃え」に設定することができます。\n\nMarkup:\nh3 左揃え\np.text-left\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 中央揃え\np.text-center\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 右揃え\np.text-right\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\n\nStyleguide 1.2.8\n*/\n.text-left {\n text-align: left; }\n\n.text-center {\n text-align: center; }\n\n.text-right {\n text-align: right; }\n\n/*\nメッセージテキスト\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用されるテキストのスタイルです。\n\nex [注文完了 (ログイン後、カートに商品を入れ注文完了まで行う)](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\np.ec-reportDescription\n | ただいま、ご注文の確認メールをお送りさせていただきました。\n br\n | 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n br\n | 今後ともご愛顧賜りますようよろしくお願い申し上げます。\n\n\nStyleguide 1.2.9\n*/\n.ec-reportDescription {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px;\n line-height: 1.4; }\n\n/*\nテキスト下部のスペース\n\nテキストの下に余白を追加することができます。 .ec-para-normalで16pxの余白をつけることができます。\n\nMarkup:\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n\nStyleguide 1.2.10\n*/\n.ec-para-normal {\n margin-bottom: 16px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nリスト\n\nシンプルなリストを構成するためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.3\n*/\n/*\n水平定義リスト\n\nシンプルな定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 水平定義リスト部分](http://demo3.ec-cube.net/help/about)\n\nMarkup:\ndl.ec-definitions\n dt 店名\n dd EC-CUBE3 DEMO SHOP\ndl.ec-definitions\n dt 会社名\n dd EC-CUBE3\ndl.ec-definitions--soft\n dt 所在地\n dd 〒 550-0001\n\nStyleguide 1.3.1\n*/\n.ec-definitions, .ec-definitions--soft {\n margin: 5px 0;\n display: block; }\n .ec-definitions dt, .ec-definitions--soft dt, .ec-definitions dd, .ec-definitions--soft dd {\n display: inline-block;\n margin: 0; }\n .ec-definitions dt, .ec-definitions--soft dt {\n font-weight: bold; }\n\n.ec-definitions--soft dt {\n font-weight: normal; }\n\n/*\n下線つき定義リスト\n\n線が添えられた定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 下線つき定義リスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt 店名\n dd EC-CUBE3 DEMO SHOP\n dl\n dt 会社名\n dd EC-CUBE3\n dl\n dt 所在地\n dd 〒550 - 0001\n\nStyleguide 1.3.2\n*/\n.ec-borderedDefs {\n width: 100%;\n border-top: 1px dotted #ccc;\n margin-bottom: 16px; }\n .ec-borderedDefs dl {\n display: flex;\n border-bottom: 1px dotted #ccc;\n margin: 0;\n padding: 10px 0 0;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-borderedDefs dl {\n flex-wrap: nowrap;\n padding: 15px 0 4px; } }\n .ec-borderedDefs dt, .ec-borderedDefs dd {\n padding: 0; }\n .ec-borderedDefs dt {\n font-weight: normal;\n width: 100%;\n padding-top: 0; }\n @media only screen and (min-width: 768px) {\n .ec-borderedDefs dt {\n padding-top: 14px;\n width: 30%; } }\n .ec-borderedDefs dd {\n padding: 0;\n width: 100%;\n line-height: 2.5; }\n @media only screen and (min-width: 768px) {\n .ec-borderedDefs dd {\n width: 70%;\n line-height: 3; } }\n .ec-borderedDefs p {\n line-height: 1.4; }\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0; }\n .ec-list-chilled dt, .ec-list-chilled dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-list-chilled dt, .ec-list-chilled dd {\n padding: 16px 0; } }\n .ec-list-chilled dt {\n width: 30%; }\n .ec-list-chilled dd {\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-list-chilled dd {\n padding: 16px; } }\n\n/*\nボーダーリスト\n\n線が添えられたリストを表示します。\n\nex [当サイトについて ボーダーリスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\nul.ec-borderedList\n li: p lorem\n li: p lorem\n li: p lorem\n\n\nStyleguide 1.3.3\n*/\n.ec-borderedList {\n width: 100%;\n border-top: 0;\n list-style: none;\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-borderedList {\n border-top: 1px dotted #ccc; } }\n .ec-borderedList li {\n border-bottom: 1px dotted #ccc; }\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0; }\n .ec-list-chilled dt, .ec-list-chilled dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 16px 0; }\n .ec-list-chilled dt {\n width: 30%; }\n .ec-list-chilled dd {\n padding: 16px; }\n\n/*\nボタンサイズ\n\nボタンサイズを変更するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.1\n*/\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nex [トップページ ボタン部分](http://demo3.ec-cube.net/)\n\nMarkup:\n.ec-inlineBtn 住所検索\n.ec-inlineBtn--primary もっと見る\n.ec-inlineBtn--action カートに入れる\n.ec-inlineBtn--cancel キャンセル\n\nStyleguide 2.1.1\n*/\n.ec-inlineBtn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #525263;\n background-color: #F5F7F8;\n border-color: #ccc; }\n .ec-inlineBtn:focus, .ec-inlineBtn.focus, .ec-inlineBtn:active:focus, .ec-inlineBtn:active.focus, .ec-inlineBtn.active:focus, .ec-inlineBtn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn:hover, .ec-inlineBtn:focus, .ec-inlineBtn.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn:active, .ec-inlineBtn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn.disabled, .ec-inlineBtn[disabled],\n fieldset[disabled] .ec-inlineBtn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn:focus, .ec-inlineBtn.focus {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #8c8c8c; }\n .ec-inlineBtn:hover {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-inlineBtn:active, .ec-inlineBtn.active,\n .open > .ec-inlineBtn.dropdown-toggle {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-inlineBtn:active:hover, .ec-inlineBtn:active:focus, .ec-inlineBtn:active.focus, .ec-inlineBtn.active:hover, .ec-inlineBtn.active:focus, .ec-inlineBtn.active.focus,\n .open > .ec-inlineBtn.dropdown-toggle:hover,\n .open > .ec-inlineBtn.dropdown-toggle:focus,\n .open > .ec-inlineBtn.dropdown-toggle.focus {\n color: #525263;\n background-color: #c2ced4;\n border-color: #8c8c8c; }\n .ec-inlineBtn:active, .ec-inlineBtn.active,\n .open > .ec-inlineBtn.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn.disabled:hover, .ec-inlineBtn.disabled:focus, .ec-inlineBtn.disabled.focus, .ec-inlineBtn[disabled]:hover, .ec-inlineBtn[disabled]:focus, .ec-inlineBtn[disabled].focus,\n fieldset[disabled] .ec-inlineBtn:hover,\n fieldset[disabled] .ec-inlineBtn:focus,\n fieldset[disabled] .ec-inlineBtn.focus {\n background-color: #F5F7F8;\n border-color: #ccc; }\n .ec-inlineBtn .badge {\n color: #F5F7F8;\n background-color: #525263; }\n .ec-inlineBtn .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-inlineBtn--primary {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #5CB1B1;\n border-color: #5CB1B1; }\n .ec-inlineBtn--primary:focus, .ec-inlineBtn--primary.focus, .ec-inlineBtn--primary:active:focus, .ec-inlineBtn--primary:active.focus, .ec-inlineBtn--primary.active:focus, .ec-inlineBtn--primary.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--primary:hover, .ec-inlineBtn--primary:focus, .ec-inlineBtn--primary.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--primary:active, .ec-inlineBtn--primary.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--primary.disabled, .ec-inlineBtn--primary[disabled],\n fieldset[disabled] .ec-inlineBtn--primary {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--primary:focus, .ec-inlineBtn--primary.focus {\n color: #fff;\n background-color: #479393;\n border-color: #2e6060; }\n .ec-inlineBtn--primary:hover {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-inlineBtn--primary:active, .ec-inlineBtn--primary.active,\n .open > .ec-inlineBtn--primary.dropdown-toggle {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-inlineBtn--primary:active:hover, .ec-inlineBtn--primary:active:focus, .ec-inlineBtn--primary:active.focus, .ec-inlineBtn--primary.active:hover, .ec-inlineBtn--primary.active:focus, .ec-inlineBtn--primary.active.focus,\n .open > .ec-inlineBtn--primary.dropdown-toggle:hover,\n .open > .ec-inlineBtn--primary.dropdown-toggle:focus,\n .open > .ec-inlineBtn--primary.dropdown-toggle.focus {\n color: #fff;\n background-color: #3b7b7b;\n border-color: #2e6060; }\n .ec-inlineBtn--primary:active, .ec-inlineBtn--primary.active,\n .open > .ec-inlineBtn--primary.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--primary.disabled:hover, .ec-inlineBtn--primary.disabled:focus, .ec-inlineBtn--primary.disabled.focus, .ec-inlineBtn--primary[disabled]:hover, .ec-inlineBtn--primary[disabled]:focus, .ec-inlineBtn--primary[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--primary:hover,\n fieldset[disabled] .ec-inlineBtn--primary:focus,\n fieldset[disabled] .ec-inlineBtn--primary.focus {\n background-color: #5CB1B1;\n border-color: #5CB1B1; }\n .ec-inlineBtn--primary .badge {\n color: #5CB1B1;\n background-color: #fff; }\n .ec-inlineBtn--primary .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-inlineBtn--action {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #DE5D50;\n border-color: #DE5D50; }\n .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus, .ec-inlineBtn--action:active:focus, .ec-inlineBtn--action:active.focus, .ec-inlineBtn--action.active:focus, .ec-inlineBtn--action.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--action:hover, .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--action:active, .ec-inlineBtn--action.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--action.disabled, .ec-inlineBtn--action[disabled],\n fieldset[disabled] .ec-inlineBtn--action {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--action:focus, .ec-inlineBtn--action.focus {\n color: #fff;\n background-color: #d33828;\n border-color: #93271c; }\n .ec-inlineBtn--action:hover {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-inlineBtn--action:active, .ec-inlineBtn--action.active,\n .open > .ec-inlineBtn--action.dropdown-toggle {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-inlineBtn--action:active:hover, .ec-inlineBtn--action:active:focus, .ec-inlineBtn--action:active.focus, .ec-inlineBtn--action.active:hover, .ec-inlineBtn--action.active:focus, .ec-inlineBtn--action.active.focus,\n .open > .ec-inlineBtn--action.dropdown-toggle:hover,\n .open > .ec-inlineBtn--action.dropdown-toggle:focus,\n .open > .ec-inlineBtn--action.dropdown-toggle.focus {\n color: #fff;\n background-color: #b53022;\n border-color: #93271c; }\n .ec-inlineBtn--action:active, .ec-inlineBtn--action.active,\n .open > .ec-inlineBtn--action.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--action.disabled:hover, .ec-inlineBtn--action.disabled:focus, .ec-inlineBtn--action.disabled.focus, .ec-inlineBtn--action[disabled]:hover, .ec-inlineBtn--action[disabled]:focus, .ec-inlineBtn--action[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--action:hover,\n fieldset[disabled] .ec-inlineBtn--action:focus,\n fieldset[disabled] .ec-inlineBtn--action.focus {\n background-color: #DE5D50;\n border-color: #DE5D50; }\n .ec-inlineBtn--action .badge {\n color: #DE5D50;\n background-color: #fff; }\n .ec-inlineBtn--action .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-inlineBtn--cancel {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #525263;\n border-color: #525263; }\n .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus, .ec-inlineBtn--cancel:active:focus, .ec-inlineBtn--cancel:active.focus, .ec-inlineBtn--cancel.active:focus, .ec-inlineBtn--cancel.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--cancel:hover, .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--cancel.disabled, .ec-inlineBtn--cancel[disabled],\n fieldset[disabled] .ec-inlineBtn--cancel {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--cancel:focus, .ec-inlineBtn--cancel.focus {\n color: #fff;\n background-color: #3b3b47;\n border-color: #18181d; }\n .ec-inlineBtn--cancel:hover {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active,\n .open > .ec-inlineBtn--cancel.dropdown-toggle {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-inlineBtn--cancel:active:hover, .ec-inlineBtn--cancel:active:focus, .ec-inlineBtn--cancel:active.focus, .ec-inlineBtn--cancel.active:hover, .ec-inlineBtn--cancel.active:focus, .ec-inlineBtn--cancel.active.focus,\n .open > .ec-inlineBtn--cancel.dropdown-toggle:hover,\n .open > .ec-inlineBtn--cancel.dropdown-toggle:focus,\n .open > .ec-inlineBtn--cancel.dropdown-toggle.focus {\n color: #fff;\n background-color: #2b2b34;\n border-color: #18181d; }\n .ec-inlineBtn--cancel:active, .ec-inlineBtn--cancel.active,\n .open > .ec-inlineBtn--cancel.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--cancel.disabled:hover, .ec-inlineBtn--cancel.disabled:focus, .ec-inlineBtn--cancel.disabled.focus, .ec-inlineBtn--cancel[disabled]:hover, .ec-inlineBtn--cancel[disabled]:focus, .ec-inlineBtn--cancel[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--cancel:hover,\n fieldset[disabled] .ec-inlineBtn--cancel:focus,\n fieldset[disabled] .ec-inlineBtn--cancel.focus {\n background-color: #525263;\n border-color: #525263; }\n .ec-inlineBtn--cancel .badge {\n color: #525263;\n background-color: #fff; }\n .ec-inlineBtn--cancel .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n/*\nブロックボタン(全幅)\n\nボタンサイズは em で指定するため、テキストサイズの変更でボタンサイズを変更できます。\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\np: .ec-blockBtn 住所検索\np: .ec-blockBtn--primary もっと見る\np: .ec-blockBtn--action カートに入れる\np: .ec-blockBtn--cancel キャンセル\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #525263;\n background-color: #F5F7F8;\n border-color: #ccc;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn:focus, .ec-blockBtn.focus, .ec-blockBtn:active:focus, .ec-blockBtn:active.focus, .ec-blockBtn.active:focus, .ec-blockBtn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn:hover, .ec-blockBtn:focus, .ec-blockBtn.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn:active, .ec-blockBtn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn.disabled, .ec-blockBtn[disabled],\n fieldset[disabled] .ec-blockBtn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn:focus, .ec-blockBtn.focus {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #8c8c8c; }\n .ec-blockBtn:hover {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-blockBtn:active, .ec-blockBtn.active,\n .open > .ec-blockBtn.dropdown-toggle {\n color: #525263;\n background-color: #d7dfe3;\n border-color: #adadad; }\n .ec-blockBtn:active:hover, .ec-blockBtn:active:focus, .ec-blockBtn:active.focus, .ec-blockBtn.active:hover, .ec-blockBtn.active:focus, .ec-blockBtn.active.focus,\n .open > .ec-blockBtn.dropdown-toggle:hover,\n .open > .ec-blockBtn.dropdown-toggle:focus,\n .open > .ec-blockBtn.dropdown-toggle.focus {\n color: #525263;\n background-color: #c2ced4;\n border-color: #8c8c8c; }\n .ec-blockBtn:active, .ec-blockBtn.active,\n .open > .ec-blockBtn.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn.disabled:hover, .ec-blockBtn.disabled:focus, .ec-blockBtn.disabled.focus, .ec-blockBtn[disabled]:hover, .ec-blockBtn[disabled]:focus, .ec-blockBtn[disabled].focus,\n fieldset[disabled] .ec-blockBtn:hover,\n fieldset[disabled] .ec-blockBtn:focus,\n fieldset[disabled] .ec-blockBtn.focus {\n background-color: #F5F7F8;\n border-color: #ccc; }\n .ec-blockBtn .badge {\n color: #F5F7F8;\n background-color: #525263; }\n .ec-blockBtn .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-blockBtn--primary {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #5CB1B1;\n border-color: #5CB1B1;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--primary:focus, .ec-blockBtn--primary.focus, .ec-blockBtn--primary:active:focus, .ec-blockBtn--primary:active.focus, .ec-blockBtn--primary.active:focus, .ec-blockBtn--primary.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--primary:hover, .ec-blockBtn--primary:focus, .ec-blockBtn--primary.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--primary:active, .ec-blockBtn--primary.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--primary.disabled, .ec-blockBtn--primary[disabled],\n fieldset[disabled] .ec-blockBtn--primary {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--primary:focus, .ec-blockBtn--primary.focus {\n color: #fff;\n background-color: #479393;\n border-color: #2e6060; }\n .ec-blockBtn--primary:hover {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-blockBtn--primary:active, .ec-blockBtn--primary.active,\n .open > .ec-blockBtn--primary.dropdown-toggle {\n color: #fff;\n background-color: #479393;\n border-color: #438d8d; }\n .ec-blockBtn--primary:active:hover, .ec-blockBtn--primary:active:focus, .ec-blockBtn--primary:active.focus, .ec-blockBtn--primary.active:hover, .ec-blockBtn--primary.active:focus, .ec-blockBtn--primary.active.focus,\n .open > .ec-blockBtn--primary.dropdown-toggle:hover,\n .open > .ec-blockBtn--primary.dropdown-toggle:focus,\n .open > .ec-blockBtn--primary.dropdown-toggle.focus {\n color: #fff;\n background-color: #3b7b7b;\n border-color: #2e6060; }\n .ec-blockBtn--primary:active, .ec-blockBtn--primary.active,\n .open > .ec-blockBtn--primary.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--primary.disabled:hover, .ec-blockBtn--primary.disabled:focus, .ec-blockBtn--primary.disabled.focus, .ec-blockBtn--primary[disabled]:hover, .ec-blockBtn--primary[disabled]:focus, .ec-blockBtn--primary[disabled].focus,\n fieldset[disabled] .ec-blockBtn--primary:hover,\n fieldset[disabled] .ec-blockBtn--primary:focus,\n fieldset[disabled] .ec-blockBtn--primary.focus {\n background-color: #5CB1B1;\n border-color: #5CB1B1; }\n .ec-blockBtn--primary .badge {\n color: #5CB1B1;\n background-color: #fff; }\n .ec-blockBtn--primary .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-blockBtn--action {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #DE5D50;\n border-color: #DE5D50;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--action:focus, .ec-blockBtn--action.focus, .ec-blockBtn--action:active:focus, .ec-blockBtn--action:active.focus, .ec-blockBtn--action.active:focus, .ec-blockBtn--action.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--action:hover, .ec-blockBtn--action:focus, .ec-blockBtn--action.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--action:active, .ec-blockBtn--action.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--action.disabled, .ec-blockBtn--action[disabled],\n fieldset[disabled] .ec-blockBtn--action {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--action:focus, .ec-blockBtn--action.focus {\n color: #fff;\n background-color: #d33828;\n border-color: #93271c; }\n .ec-blockBtn--action:hover {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-blockBtn--action:active, .ec-blockBtn--action.active,\n .open > .ec-blockBtn--action.dropdown-toggle {\n color: #fff;\n background-color: #d33828;\n border-color: #cb3526; }\n .ec-blockBtn--action:active:hover, .ec-blockBtn--action:active:focus, .ec-blockBtn--action:active.focus, .ec-blockBtn--action.active:hover, .ec-blockBtn--action.active:focus, .ec-blockBtn--action.active.focus,\n .open > .ec-blockBtn--action.dropdown-toggle:hover,\n .open > .ec-blockBtn--action.dropdown-toggle:focus,\n .open > .ec-blockBtn--action.dropdown-toggle.focus {\n color: #fff;\n background-color: #b53022;\n border-color: #93271c; }\n .ec-blockBtn--action:active, .ec-blockBtn--action.active,\n .open > .ec-blockBtn--action.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--action.disabled:hover, .ec-blockBtn--action.disabled:focus, .ec-blockBtn--action.disabled.focus, .ec-blockBtn--action[disabled]:hover, .ec-blockBtn--action[disabled]:focus, .ec-blockBtn--action[disabled].focus,\n fieldset[disabled] .ec-blockBtn--action:hover,\n fieldset[disabled] .ec-blockBtn--action:focus,\n fieldset[disabled] .ec-blockBtn--action.focus {\n background-color: #DE5D50;\n border-color: #DE5D50; }\n .ec-blockBtn--action .badge {\n color: #DE5D50;\n background-color: #fff; }\n .ec-blockBtn--action .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n.ec-blockBtn--cancel {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: #fff;\n background-color: #525263;\n border-color: #525263;\n display: block;\n width: 100%;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--cancel:focus, .ec-blockBtn--cancel.focus, .ec-blockBtn--cancel:active:focus, .ec-blockBtn--cancel:active.focus, .ec-blockBtn--cancel.active:focus, .ec-blockBtn--cancel.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--cancel:hover, .ec-blockBtn--cancel:focus, .ec-blockBtn--cancel.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--cancel:active, .ec-blockBtn--cancel.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--cancel.disabled, .ec-blockBtn--cancel[disabled],\n fieldset[disabled] .ec-blockBtn--cancel {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--cancel:focus, .ec-blockBtn--cancel.focus {\n color: #fff;\n background-color: #3b3b47;\n border-color: #18181d; }\n .ec-blockBtn--cancel:hover {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-blockBtn--cancel:active, .ec-blockBtn--cancel.active,\n .open > .ec-blockBtn--cancel.dropdown-toggle {\n color: #fff;\n background-color: #3b3b47;\n border-color: #363642; }\n .ec-blockBtn--cancel:active:hover, .ec-blockBtn--cancel:active:focus, .ec-blockBtn--cancel:active.focus, .ec-blockBtn--cancel.active:hover, .ec-blockBtn--cancel.active:focus, .ec-blockBtn--cancel.active.focus,\n .open > .ec-blockBtn--cancel.dropdown-toggle:hover,\n .open > .ec-blockBtn--cancel.dropdown-toggle:focus,\n .open > .ec-blockBtn--cancel.dropdown-toggle.focus {\n color: #fff;\n background-color: #2b2b34;\n border-color: #18181d; }\n .ec-blockBtn--cancel:active, .ec-blockBtn--cancel.active,\n .open > .ec-blockBtn--cancel.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--cancel.disabled:hover, .ec-blockBtn--cancel.disabled:focus, .ec-blockBtn--cancel.disabled.focus, .ec-blockBtn--cancel[disabled]:hover, .ec-blockBtn--cancel[disabled]:focus, .ec-blockBtn--cancel[disabled].focus,\n fieldset[disabled] .ec-blockBtn--cancel:hover,\n fieldset[disabled] .ec-blockBtn--cancel:focus,\n fieldset[disabled] .ec-blockBtn--cancel.focus {\n background-color: #525263;\n border-color: #525263; }\n .ec-blockBtn--cancel .badge {\n color: #525263;\n background-color: #fff; }\n .ec-blockBtn--cancel .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n/*\nアイコンボタン\n\nSVGアイコンを用いたアイコンボタンです。\n\nsg-wrapper:\n
\n \n\nStyleguide 2.2\n*/\n/*\nアイコンボタン\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\na.ec-closeBtn\n .ec-icon\n img(src='/moc/icon/cross.svg', alt='close')\n\nStyleguide 2.2.1\n*/\n.ec-closeBtn {\n cursor: pointer; }\n .ec-closeBtn .ec-icon img {\n display: inline-block;\n margin-right: 5px;\n width: 1em;\n height: 1em;\n position: relative;\n top: -1px;\n vertical-align: middle; }\n\n/*\nアイコンボタン(○)\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\n\n\nex [お届け先編集画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\na.ec-closeBtn--circle\n .ec-icon\n img(src='/moc/icon/cross-white.svg', alt='close')\n\nStyleguide 2.2.2\n*/\n.ec-closeBtn--circle {\n display: block;\n border: 0 none;\n padding: 0;\n margin: 0;\n text-shadow: none;\n box-shadow: none;\n border-radius: 50%;\n background: #B8BEC4;\n cursor: pointer;\n width: 40px;\n min-width: 40px;\n max-width: 40px;\n height: 40px;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center; }\n .ec-closeBtn--circle .ec-icon img {\n display: block;\n margin-top: -.5em;\n margin-left: -.5em;\n width: 1em;\n height: 1em;\n position: absolute;\n top: 50%;\n left: 50%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nその他のボタン\n\n通常のボタンや、アイコンボタン以外のボタンを定義します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.3\n*/\n/*\nページトップボタン\n\nページトップボタンを表示します\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\n.ec-blockTopBtn\n\nStyleguide 2.3.1\n*/\n.ec-blockTopBtn {\n display: none;\n position: fixed;\n width: 120px;\n height: 40px;\n right: 0;\n bottom: 10px;\n cursor: pointer;\n color: #FFFFFF;\n text-align: center;\n line-height: 40px;\n opacity: 0.8;\n background-color: #9da3a9; }\n @media only screen and (min-width: 768px) {\n .ec-blockTopBtn {\n right: 30px;\n bottom: 30px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nフォーム部品(テキスト)\n\nテキストや数値の入力項目に関する要素を定義します。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 3.1\n*/\n/*\nフォーム\n\n`.ec-input` 要素は全ての入力項目に関する標準的なコンポーネントクラスです。\n\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-input\n input(type=\"number\")\np.ec-input\n textarea(rows=\"6\")\n\nStyleguide 3.1.1\n*/\n.ec-input input[type=\"search\"], .ec-halfInput input[type=\"search\"], .ec-numberInput input[type=\"search\"], .ec-zipInput input[type=\"search\"], .ec-telInput input[type=\"search\"], .ec-select input[type=\"search\"], .ec-birth input[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n\n.ec-input input[type=\"radio\"], .ec-halfInput input[type=\"radio\"], .ec-numberInput input[type=\"radio\"], .ec-zipInput input[type=\"radio\"], .ec-telInput input[type=\"radio\"], .ec-select input[type=\"radio\"], .ec-birth input[type=\"radio\"],\n.ec-input input[type=\"checkbox\"],\n.ec-halfInput input[type=\"checkbox\"],\n.ec-numberInput input[type=\"checkbox\"],\n.ec-zipInput input[type=\"checkbox\"],\n.ec-telInput input[type=\"checkbox\"],\n.ec-select input[type=\"checkbox\"],\n.ec-birth input[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal; }\n\n.ec-input input[type=\"file\"], .ec-halfInput input[type=\"file\"], .ec-numberInput input[type=\"file\"], .ec-zipInput input[type=\"file\"], .ec-telInput input[type=\"file\"], .ec-select input[type=\"file\"], .ec-birth input[type=\"file\"] {\n display: block; }\n\n.ec-input input[type=\"range\"], .ec-halfInput input[type=\"range\"], .ec-numberInput input[type=\"range\"], .ec-zipInput input[type=\"range\"], .ec-telInput input[type=\"range\"], .ec-select input[type=\"range\"], .ec-birth input[type=\"range\"] {\n display: block;\n width: 100%; }\n\n.ec-input select[multiple], .ec-halfInput select[multiple], .ec-numberInput select[multiple], .ec-zipInput select[multiple], .ec-telInput select[multiple], .ec-select select[multiple], .ec-birth select[multiple],\n.ec-input select[size],\n.ec-halfInput select[size],\n.ec-numberInput select[size],\n.ec-zipInput select[size],\n.ec-telInput select[size],\n.ec-select select[size],\n.ec-birth select[size] {\n height: auto; }\n\n.ec-input input[type=\"file\"]:focus, .ec-halfInput input[type=\"file\"]:focus, .ec-numberInput input[type=\"file\"]:focus, .ec-zipInput input[type=\"file\"]:focus, .ec-telInput input[type=\"file\"]:focus, .ec-select input[type=\"file\"]:focus, .ec-birth input[type=\"file\"]:focus,\n.ec-input input[type=\"radio\"]:focus,\n.ec-halfInput input[type=\"radio\"]:focus,\n.ec-numberInput input[type=\"radio\"]:focus,\n.ec-zipInput input[type=\"radio\"]:focus,\n.ec-telInput input[type=\"radio\"]:focus,\n.ec-select input[type=\"radio\"]:focus,\n.ec-birth input[type=\"radio\"]:focus,\n.ec-input input[type=\"checkbox\"]:focus,\n.ec-halfInput input[type=\"checkbox\"]:focus,\n.ec-numberInput input[type=\"checkbox\"]:focus,\n.ec-zipInput input[type=\"checkbox\"]:focus,\n.ec-telInput input[type=\"checkbox\"]:focus,\n.ec-select input[type=\"checkbox\"]:focus,\n.ec-birth input[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input input::-moz-placeholder, .ec-halfInput input::-moz-placeholder, .ec-numberInput input::-moz-placeholder, .ec-zipInput input::-moz-placeholder, .ec-telInput input::-moz-placeholder, .ec-select input::-moz-placeholder, .ec-birth input::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input input:-ms-input-placeholder, .ec-halfInput input:-ms-input-placeholder, .ec-numberInput input:-ms-input-placeholder, .ec-zipInput input:-ms-input-placeholder, .ec-telInput input:-ms-input-placeholder, .ec-select input:-ms-input-placeholder, .ec-birth input:-ms-input-placeholder {\n color: #999; }\n .ec-input input::-webkit-input-placeholder, .ec-halfInput input::-webkit-input-placeholder, .ec-numberInput input::-webkit-input-placeholder, .ec-zipInput input::-webkit-input-placeholder, .ec-telInput input::-webkit-input-placeholder, .ec-select input::-webkit-input-placeholder, .ec-birth input::-webkit-input-placeholder {\n color: #999; }\n .ec-input input::-ms-expand, .ec-halfInput input::-ms-expand, .ec-numberInput input::-ms-expand, .ec-zipInput input::-ms-expand, .ec-telInput input::-ms-expand, .ec-select input::-ms-expand, .ec-birth input::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled], .ec-input input[readonly], .ec-halfInput input[readonly], .ec-numberInput input[readonly], .ec-zipInput input[readonly], .ec-telInput input[readonly], .ec-select input[readonly], .ec-birth input[readonly],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n cursor: not-allowed; }\n\n.ec-input select, .ec-halfInput select, .ec-numberInput select, .ec-zipInput select, .ec-telInput select, .ec-select select, .ec-birth select {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input select:focus, .ec-halfInput select:focus, .ec-numberInput select:focus, .ec-zipInput select:focus, .ec-telInput select:focus, .ec-select select:focus, .ec-birth select:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input select::-moz-placeholder, .ec-halfInput select::-moz-placeholder, .ec-numberInput select::-moz-placeholder, .ec-zipInput select::-moz-placeholder, .ec-telInput select::-moz-placeholder, .ec-select select::-moz-placeholder, .ec-birth select::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input select:-ms-input-placeholder, .ec-halfInput select:-ms-input-placeholder, .ec-numberInput select:-ms-input-placeholder, .ec-zipInput select:-ms-input-placeholder, .ec-telInput select:-ms-input-placeholder, .ec-select select:-ms-input-placeholder, .ec-birth select:-ms-input-placeholder {\n color: #999; }\n .ec-input select::-webkit-input-placeholder, .ec-halfInput select::-webkit-input-placeholder, .ec-numberInput select::-webkit-input-placeholder, .ec-zipInput select::-webkit-input-placeholder, .ec-telInput select::-webkit-input-placeholder, .ec-select select::-webkit-input-placeholder, .ec-birth select::-webkit-input-placeholder {\n color: #999; }\n .ec-input select::-ms-expand, .ec-halfInput select::-ms-expand, .ec-numberInput select::-ms-expand, .ec-zipInput select::-ms-expand, .ec-telInput select::-ms-expand, .ec-select select::-ms-expand, .ec-birth select::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled], .ec-input select[readonly], .ec-halfInput select[readonly], .ec-numberInput select[readonly], .ec-zipInput select[readonly], .ec-telInput select[readonly], .ec-select select[readonly], .ec-birth select[readonly],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n cursor: not-allowed; }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input textarea::-moz-placeholder, .ec-halfInput textarea::-moz-placeholder, .ec-numberInput textarea::-moz-placeholder, .ec-zipInput textarea::-moz-placeholder, .ec-telInput textarea::-moz-placeholder, .ec-select textarea::-moz-placeholder, .ec-birth textarea::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input textarea:-ms-input-placeholder, .ec-halfInput textarea:-ms-input-placeholder, .ec-numberInput textarea:-ms-input-placeholder, .ec-zipInput textarea:-ms-input-placeholder, .ec-telInput textarea:-ms-input-placeholder, .ec-select textarea:-ms-input-placeholder, .ec-birth textarea:-ms-input-placeholder {\n color: #999; }\n .ec-input textarea::-webkit-input-placeholder, .ec-halfInput textarea::-webkit-input-placeholder, .ec-numberInput textarea::-webkit-input-placeholder, .ec-zipInput textarea::-webkit-input-placeholder, .ec-telInput textarea::-webkit-input-placeholder, .ec-select textarea::-webkit-input-placeholder, .ec-birth textarea::-webkit-input-placeholder {\n color: #999; }\n .ec-input textarea::-ms-expand, .ec-halfInput textarea::-ms-expand, .ec-numberInput textarea::-ms-expand, .ec-zipInput textarea::-ms-expand, .ec-telInput textarea::-ms-expand, .ec-select textarea::-ms-expand, .ec-birth textarea::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled], .ec-input textarea[readonly], .ec-halfInput textarea[readonly], .ec-numberInput textarea[readonly], .ec-zipInput textarea[readonly], .ec-telInput textarea[readonly], .ec-select textarea[readonly], .ec-birth textarea[readonly],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n cursor: not-allowed; }\n\n.ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus, .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n box-shadow: none;\n border-color: #3c8dbc; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n height: 40px;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n margin-bottom: 16px; } }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n height: auto;\n min-height: 100px; }\n\n.ec-input p, .ec-halfInput p, .ec-numberInput p, .ec-zipInput p, .ec-telInput p, .ec-select p, .ec-birth p {\n line-height: 1.4; }\n\n.ec-input .ec-errorMessage, .ec-halfInput .ec-errorMessage, .ec-numberInput .ec-errorMessage, .ec-zipInput .ec-errorMessage, .ec-telInput .ec-errorMessage, .ec-select .ec-errorMessage, .ec-birth .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-input input, .error.ec-halfInput input, .error.ec-numberInput input, .error.ec-zipInput input, .error.ec-telInput input, .error.ec-select input, .error.ec-birth input, .error.ec-input select, .error.ec-halfInput select, .error.ec-numberInput select, .error.ec-zipInput select, .error.ec-telInput select, .error.ec-select select, .error.ec-birth select {\n margin-bottom: 5px;\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n.ec-checkbox .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-checkbox input, .error.ec-checkbox label {\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n/*\nフォーム(text2つ)\n\n姓名など2つ入力させたい入力項目で使用します。\n\n入力フォームを半分で用意したいときにも利用可能です。\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-halfInput\n input(type=\"text\")\n input(type=\"text\")\np.ec-halfInput\n input(type=\"text\")\n\nStyleguide 3.1.2\n*/\n.ec-halfInput input[type='text'] {\n display: inline-block;\n width: 47%;\n margin-left: 2%; }\n @media only screen and (min-width: 768px) {\n .ec-halfInput input[type='text'] {\n margin-left: 15px;\n width: 45%; } }\n\n.ec-halfInput input[type='text']:first-child {\n margin-left: 0; }\n\n/*\n数量ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [商品詳細画面 数量ボタン部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-numberInput\n span 数量\n input(type=\"number\",value=\"0\")\n\nStyleguide 3.1.3\n*/\n.ec-numberInput input[type='number'] {\n display: inline-block;\n width: auto;\n max-width: 100px;\n text-align: right; }\n\n/*\n郵便番号フォーム\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 郵便番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-zipInput\n span 〒\n input(type=\"text\")\n.ec-zipInputHelp\n a(href=\"http://www.post.japanpost.jp/zipcode/\" target=\"_blank\")\n .ec-zipInputHelp__icon\n .ec-icon\n img(src='/moc/icon/question-white.svg', alt='')\n span 郵便番号検索\n.ec-zipAuto\n a.ec-inlineBtn 郵便番号から自動入力\n\nStyleguide 3.1.4\n*/\n.ec-zipInput {\n display: inline-block; }\n .ec-zipInput input {\n display: inline-block;\n text-align: left;\n width: auto;\n max-width: 8em;\n font-size: 16px; }\n .ec-zipInput span {\n display: inline-block;\n padding: 0 5px 0 3px;\n margin-left: 5px; }\n\n.ec-zipInputHelp {\n display: inline-block;\n margin-left: 10px;\n margin-bottom: 16px;\n vertical-align: baseline;\n line-height: 0; }\n .ec-zipInputHelp .ec-zipInputHelp__icon {\n display: inline-block;\n margin-top: -10px;\n width: 20px;\n height: 20px;\n background: #525263;\n border-radius: 50%;\n font-size: 13px;\n position: relative;\n top: -6px; }\n .ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img {\n width: 1em;\n height: 1em;\n position: relative;\n left: 3px;\n top: 3px; }\n .ec-zipInputHelp span {\n margin-left: 8px;\n display: inline-block;\n color: #0092C4;\n vertical-align: 3px; }\n\n.ec-zipAuto {\n margin-bottom: 16px; }\n .ec-zipAuto .ec-inlineBtn {\n font-weight: normal; }\n\n/*\n電話番号ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 電話番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-telInput\n input(type=\"text\")\n\nStyleguide 3.1.5\n*/\n.ec-telInput input {\n max-width: 10em;\n text-align: left; }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nフォーム部品(テキスト)\n\nテキストや数値の入力項目に関する要素を定義します。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 3.1\n*/\n/*\nフォーム\n\n`.ec-input` 要素は全ての入力項目に関する標準的なコンポーネントクラスです。\n\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-input\n input(type=\"number\")\np.ec-input\n textarea(rows=\"6\")\n\nStyleguide 3.1.1\n*/\n.ec-input input[type=\"search\"], .ec-halfInput input[type=\"search\"], .ec-numberInput input[type=\"search\"], .ec-zipInput input[type=\"search\"], .ec-telInput input[type=\"search\"], .ec-select input[type=\"search\"], .ec-birth input[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n\n.ec-input input[type=\"radio\"], .ec-halfInput input[type=\"radio\"], .ec-numberInput input[type=\"radio\"], .ec-zipInput input[type=\"radio\"], .ec-telInput input[type=\"radio\"], .ec-select input[type=\"radio\"], .ec-birth input[type=\"radio\"],\n.ec-input input[type=\"checkbox\"],\n.ec-halfInput input[type=\"checkbox\"],\n.ec-numberInput input[type=\"checkbox\"],\n.ec-zipInput input[type=\"checkbox\"],\n.ec-telInput input[type=\"checkbox\"],\n.ec-select input[type=\"checkbox\"],\n.ec-birth input[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal; }\n\n.ec-input input[type=\"file\"], .ec-halfInput input[type=\"file\"], .ec-numberInput input[type=\"file\"], .ec-zipInput input[type=\"file\"], .ec-telInput input[type=\"file\"], .ec-select input[type=\"file\"], .ec-birth input[type=\"file\"] {\n display: block; }\n\n.ec-input input[type=\"range\"], .ec-halfInput input[type=\"range\"], .ec-numberInput input[type=\"range\"], .ec-zipInput input[type=\"range\"], .ec-telInput input[type=\"range\"], .ec-select input[type=\"range\"], .ec-birth input[type=\"range\"] {\n display: block;\n width: 100%; }\n\n.ec-input select[multiple], .ec-halfInput select[multiple], .ec-numberInput select[multiple], .ec-zipInput select[multiple], .ec-telInput select[multiple], .ec-select select[multiple], .ec-birth select[multiple],\n.ec-input select[size],\n.ec-halfInput select[size],\n.ec-numberInput select[size],\n.ec-zipInput select[size],\n.ec-telInput select[size],\n.ec-select select[size],\n.ec-birth select[size] {\n height: auto; }\n\n.ec-input input[type=\"file\"]:focus, .ec-halfInput input[type=\"file\"]:focus, .ec-numberInput input[type=\"file\"]:focus, .ec-zipInput input[type=\"file\"]:focus, .ec-telInput input[type=\"file\"]:focus, .ec-select input[type=\"file\"]:focus, .ec-birth input[type=\"file\"]:focus,\n.ec-input input[type=\"radio\"]:focus,\n.ec-halfInput input[type=\"radio\"]:focus,\n.ec-numberInput input[type=\"radio\"]:focus,\n.ec-zipInput input[type=\"radio\"]:focus,\n.ec-telInput input[type=\"radio\"]:focus,\n.ec-select input[type=\"radio\"]:focus,\n.ec-birth input[type=\"radio\"]:focus,\n.ec-input input[type=\"checkbox\"]:focus,\n.ec-halfInput input[type=\"checkbox\"]:focus,\n.ec-numberInput input[type=\"checkbox\"]:focus,\n.ec-zipInput input[type=\"checkbox\"]:focus,\n.ec-telInput input[type=\"checkbox\"]:focus,\n.ec-select input[type=\"checkbox\"]:focus,\n.ec-birth input[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input input::-moz-placeholder, .ec-halfInput input::-moz-placeholder, .ec-numberInput input::-moz-placeholder, .ec-zipInput input::-moz-placeholder, .ec-telInput input::-moz-placeholder, .ec-select input::-moz-placeholder, .ec-birth input::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input input:-ms-input-placeholder, .ec-halfInput input:-ms-input-placeholder, .ec-numberInput input:-ms-input-placeholder, .ec-zipInput input:-ms-input-placeholder, .ec-telInput input:-ms-input-placeholder, .ec-select input:-ms-input-placeholder, .ec-birth input:-ms-input-placeholder {\n color: #999; }\n .ec-input input::-webkit-input-placeholder, .ec-halfInput input::-webkit-input-placeholder, .ec-numberInput input::-webkit-input-placeholder, .ec-zipInput input::-webkit-input-placeholder, .ec-telInput input::-webkit-input-placeholder, .ec-select input::-webkit-input-placeholder, .ec-birth input::-webkit-input-placeholder {\n color: #999; }\n .ec-input input::-ms-expand, .ec-halfInput input::-ms-expand, .ec-numberInput input::-ms-expand, .ec-zipInput input::-ms-expand, .ec-telInput input::-ms-expand, .ec-select input::-ms-expand, .ec-birth input::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled], .ec-input input[readonly], .ec-halfInput input[readonly], .ec-numberInput input[readonly], .ec-zipInput input[readonly], .ec-telInput input[readonly], .ec-select input[readonly], .ec-birth input[readonly],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input input[disabled], .ec-halfInput input[disabled], .ec-numberInput input[disabled], .ec-zipInput input[disabled], .ec-telInput input[disabled], .ec-select input[disabled], .ec-birth input[disabled],\n fieldset[disabled] .ec-input input,\n fieldset[disabled] .ec-halfInput input,\n fieldset[disabled] .ec-numberInput input,\n fieldset[disabled] .ec-zipInput input,\n fieldset[disabled] .ec-telInput input,\n fieldset[disabled] .ec-select input,\n fieldset[disabled] .ec-birth input {\n cursor: not-allowed; }\n\n.ec-input select, .ec-halfInput select, .ec-numberInput select, .ec-zipInput select, .ec-telInput select, .ec-select select, .ec-birth select {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input select:focus, .ec-halfInput select:focus, .ec-numberInput select:focus, .ec-zipInput select:focus, .ec-telInput select:focus, .ec-select select:focus, .ec-birth select:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input select::-moz-placeholder, .ec-halfInput select::-moz-placeholder, .ec-numberInput select::-moz-placeholder, .ec-zipInput select::-moz-placeholder, .ec-telInput select::-moz-placeholder, .ec-select select::-moz-placeholder, .ec-birth select::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input select:-ms-input-placeholder, .ec-halfInput select:-ms-input-placeholder, .ec-numberInput select:-ms-input-placeholder, .ec-zipInput select:-ms-input-placeholder, .ec-telInput select:-ms-input-placeholder, .ec-select select:-ms-input-placeholder, .ec-birth select:-ms-input-placeholder {\n color: #999; }\n .ec-input select::-webkit-input-placeholder, .ec-halfInput select::-webkit-input-placeholder, .ec-numberInput select::-webkit-input-placeholder, .ec-zipInput select::-webkit-input-placeholder, .ec-telInput select::-webkit-input-placeholder, .ec-select select::-webkit-input-placeholder, .ec-birth select::-webkit-input-placeholder {\n color: #999; }\n .ec-input select::-ms-expand, .ec-halfInput select::-ms-expand, .ec-numberInput select::-ms-expand, .ec-zipInput select::-ms-expand, .ec-telInput select::-ms-expand, .ec-select select::-ms-expand, .ec-birth select::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled], .ec-input select[readonly], .ec-halfInput select[readonly], .ec-numberInput select[readonly], .ec-zipInput select[readonly], .ec-telInput select[readonly], .ec-select select[readonly], .ec-birth select[readonly],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input select[disabled], .ec-halfInput select[disabled], .ec-numberInput select[disabled], .ec-zipInput select[disabled], .ec-telInput select[disabled], .ec-select select[disabled], .ec-birth select[disabled],\n fieldset[disabled] .ec-input select,\n fieldset[disabled] .ec-halfInput select,\n fieldset[disabled] .ec-numberInput select,\n fieldset[disabled] .ec-zipInput select,\n fieldset[disabled] .ec-telInput select,\n fieldset[disabled] .ec-select select,\n fieldset[disabled] .ec-birth select {\n cursor: not-allowed; }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-appearance: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n border-radius: 3px; }\n .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .ec-input textarea::-moz-placeholder, .ec-halfInput textarea::-moz-placeholder, .ec-numberInput textarea::-moz-placeholder, .ec-zipInput textarea::-moz-placeholder, .ec-telInput textarea::-moz-placeholder, .ec-select textarea::-moz-placeholder, .ec-birth textarea::-moz-placeholder {\n color: #999;\n opacity: 1; }\n .ec-input textarea:-ms-input-placeholder, .ec-halfInput textarea:-ms-input-placeholder, .ec-numberInput textarea:-ms-input-placeholder, .ec-zipInput textarea:-ms-input-placeholder, .ec-telInput textarea:-ms-input-placeholder, .ec-select textarea:-ms-input-placeholder, .ec-birth textarea:-ms-input-placeholder {\n color: #999; }\n .ec-input textarea::-webkit-input-placeholder, .ec-halfInput textarea::-webkit-input-placeholder, .ec-numberInput textarea::-webkit-input-placeholder, .ec-zipInput textarea::-webkit-input-placeholder, .ec-telInput textarea::-webkit-input-placeholder, .ec-select textarea::-webkit-input-placeholder, .ec-birth textarea::-webkit-input-placeholder {\n color: #999; }\n .ec-input textarea::-ms-expand, .ec-halfInput textarea::-ms-expand, .ec-numberInput textarea::-ms-expand, .ec-zipInput textarea::-ms-expand, .ec-telInput textarea::-ms-expand, .ec-select textarea::-ms-expand, .ec-birth textarea::-ms-expand {\n border: 0;\n background-color: transparent; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled], .ec-input textarea[readonly], .ec-halfInput textarea[readonly], .ec-numberInput textarea[readonly], .ec-zipInput textarea[readonly], .ec-telInput textarea[readonly], .ec-select textarea[readonly], .ec-birth textarea[readonly],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n background-color: #eeeeee;\n opacity: 1; }\n .ec-input textarea[disabled], .ec-halfInput textarea[disabled], .ec-numberInput textarea[disabled], .ec-zipInput textarea[disabled], .ec-telInput textarea[disabled], .ec-select textarea[disabled], .ec-birth textarea[disabled],\n fieldset[disabled] .ec-input textarea,\n fieldset[disabled] .ec-halfInput textarea,\n fieldset[disabled] .ec-numberInput textarea,\n fieldset[disabled] .ec-zipInput textarea,\n fieldset[disabled] .ec-telInput textarea,\n fieldset[disabled] .ec-select textarea,\n fieldset[disabled] .ec-birth textarea {\n cursor: not-allowed; }\n\n.ec-input input:focus, .ec-halfInput input:focus, .ec-numberInput input:focus, .ec-zipInput input:focus, .ec-telInput input:focus, .ec-select input:focus, .ec-birth input:focus, .ec-input textarea:focus, .ec-halfInput textarea:focus, .ec-numberInput textarea:focus, .ec-zipInput textarea:focus, .ec-telInput textarea:focus, .ec-select textarea:focus, .ec-birth textarea:focus {\n box-shadow: none;\n border-color: #3c8dbc; }\n\n.ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n height: 40px;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-input input, .ec-halfInput input, .ec-numberInput input, .ec-zipInput input, .ec-telInput input, .ec-select input, .ec-birth input {\n margin-bottom: 16px; } }\n\n.ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {\n height: auto;\n min-height: 100px; }\n\n.ec-input p, .ec-halfInput p, .ec-numberInput p, .ec-zipInput p, .ec-telInput p, .ec-select p, .ec-birth p {\n line-height: 1.4; }\n\n.ec-input .ec-errorMessage, .ec-halfInput .ec-errorMessage, .ec-numberInput .ec-errorMessage, .ec-zipInput .ec-errorMessage, .ec-telInput .ec-errorMessage, .ec-select .ec-errorMessage, .ec-birth .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-input input, .error.ec-halfInput input, .error.ec-numberInput input, .error.ec-zipInput input, .error.ec-telInput input, .error.ec-select input, .error.ec-birth input, .error.ec-input select, .error.ec-halfInput select, .error.ec-numberInput select, .error.ec-zipInput select, .error.ec-telInput select, .error.ec-select select, .error.ec-birth select {\n margin-bottom: 5px;\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n.ec-checkbox .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: #DE5D50; }\n\n.error.ec-checkbox input, .error.ec-checkbox label {\n border-color: #CF3F34;\n background: #FDF1F0; }\n\n/*\nフォーム(text2つ)\n\n姓名など2つ入力させたい入力項目で使用します。\n\n入力フォームを半分で用意したいときにも利用可能です。\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-halfInput\n input(type=\"text\")\n input(type=\"text\")\np.ec-halfInput\n input(type=\"text\")\n\nStyleguide 3.1.2\n*/\n.ec-halfInput input[type='text'] {\n display: inline-block;\n width: 47%;\n margin-left: 2%; }\n @media only screen and (min-width: 768px) {\n .ec-halfInput input[type='text'] {\n margin-left: 15px;\n width: 45%; } }\n\n.ec-halfInput input[type='text']:first-child {\n margin-left: 0; }\n\n/*\n数量ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [商品詳細画面 数量ボタン部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-numberInput\n span 数量\n input(type=\"number\",value=\"0\")\n\nStyleguide 3.1.3\n*/\n.ec-numberInput input[type='number'] {\n display: inline-block;\n width: auto;\n max-width: 100px;\n text-align: right; }\n\n/*\n郵便番号フォーム\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 郵便番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-zipInput\n span 〒\n input(type=\"text\")\n.ec-zipInputHelp\n a(href=\"http://www.post.japanpost.jp/zipcode/\" target=\"_blank\")\n .ec-zipInputHelp__icon\n .ec-icon\n img(src='/moc/icon/question-white.svg', alt='')\n span 郵便番号検索\n.ec-zipAuto\n a.ec-inlineBtn 郵便番号から自動入力\n\nStyleguide 3.1.4\n*/\n.ec-zipInput {\n display: inline-block; }\n .ec-zipInput input {\n display: inline-block;\n text-align: left;\n width: auto;\n max-width: 8em;\n font-size: 16px; }\n .ec-zipInput span {\n display: inline-block;\n padding: 0 5px 0 3px;\n margin-left: 5px; }\n\n.ec-zipInputHelp {\n display: inline-block;\n margin-left: 10px;\n margin-bottom: 16px;\n vertical-align: baseline;\n line-height: 0; }\n .ec-zipInputHelp .ec-zipInputHelp__icon {\n display: inline-block;\n margin-top: -10px;\n width: 20px;\n height: 20px;\n background: #525263;\n border-radius: 50%;\n font-size: 13px;\n position: relative;\n top: -6px; }\n .ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img {\n width: 1em;\n height: 1em;\n position: relative;\n left: 3px;\n top: 3px; }\n .ec-zipInputHelp span {\n margin-left: 8px;\n display: inline-block;\n color: #0092C4;\n vertical-align: 3px; }\n\n.ec-zipAuto {\n margin-bottom: 16px; }\n .ec-zipAuto .ec-inlineBtn {\n font-weight: normal; }\n\n/*\n電話番号ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 電話番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-telInput\n input(type=\"text\")\n\nStyleguide 3.1.5\n*/\n.ec-telInput input {\n max-width: 10em;\n text-align: left; }\n\n/*\nフォーム部品(その他)\n\nフォーム部品でテキストの入力以外の動作要素を定義します。\n\nsg-wrapper:\n
\n \n\nStyleguide 3.2\n*/\n/*\nラジオ(水平)\n\n水平に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 性別選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-radio\n label\n input(type=\"radio\")\n span 男性\n label\n input(type=\"radio\")\n span 女性\n\nStyleguide 3.2.2\n*/\n.ec-radio label {\n margin-right: 20px; }\n\n.ec-radio input {\n margin-right: 10px;\n margin-bottom: 10px; }\n\n.ec-radio span {\n font-weight: normal; }\n\n/*\nラジオ(垂直)\n\n垂直に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [購入画面 お支払方法](http://demo3.ec-cube.net/shopping)\n\nMarkup:\n.ec-blockRadio\n label\n input(type=\"radio\")\n span 郵便振替\n label\n input(type=\"radio\")\n span 現金書留\n label\n input(type=\"radio\")\n span 銀行振込\n label\n input(type=\"radio\")\n span 代金引換\n\nStyleguide 3.2.3\n*/\n.ec-blockRadio label {\n display: block; }\n\n.ec-blockRadio span {\n padding-left: 10px;\n font-weight: normal; }\n\n/*\nセレクトボックス\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 都道府県選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-select\n select\n option 都道府県を選択\n option 北海道\n option 青森県\n option 岩手県\n option ...\n.ec-select\n select\n option 選択して下さい\n option 公務員\n option コンサルタント\n option コンピュータ関連技術職\n option コンピュータ関連以外の技術職\n option ...\n\nStyleguide 3.2.4\n*/\n.ec-selects {\n margin-bottom: 20px;\n border-bottom: 1px dotted #ccc; }\n\n.ec-select {\n margin-bottom: 16px; }\n .ec-select select {\n display: inline-block;\n width: auto;\n background-color: #f8f8f8;\n -webkit-appearance: menulist;\n -moz-appearance: menulist; }\n .ec-select select:focus {\n box-shadow: none; }\n .ec-select label {\n margin-right: 10px;\n font-weight: bold; }\n .ec-select label:nth-child(3) {\n margin-left: 10px;\n font-weight: bold; }\n\n.ec-select__delivery {\n display: block;\n margin-right: 16px; }\n @media only screen and (min-width: 768px) {\n .ec-select__delivery {\n display: inline-block; } }\n\n.ec-select__time {\n display: block; }\n @media only screen and (min-width: 768px) {\n .ec-select__time {\n display: inline-block; } }\n\n/*\n生年月日選択\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 生年月日選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-birth\n select\n option ----\n option 1960\n option 1961\n option 1962\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n\nStyleguide 3.2.5\n*/\n.ec-birth select {\n display: inline-block;\n width: auto;\n margin: 0 0 10px;\n background-color: #f8f8f8;\n -webkit-appearance: menulist;\n -moz-appearance: menulist; }\n .ec-birth select:focus {\n box-shadow: none; }\n @media only screen and (min-width: 768px) {\n .ec-birth select {\n margin: 0 8px 10px; } }\n\n.ec-birth span {\n margin-left: 5px; }\n\n/*\nチェックボックス (水平)\n\n水平に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 利用規約](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-checkbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.6\n*/\n.ec-checkbox label {\n display: inline-block; }\n\n.ec-checkbox input {\n margin-bottom: 10px; }\n\n.ec-checkbox span {\n font-weight: normal; }\n\n/*\nチェックボックス (垂直)\n\n垂直に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nMarkup:\n.ec-blockCheckbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.7\n*/\n.ec-blockCheckbox label {\n display: block; }\n\n.ec-blockCheckbox span {\n font-weight: normal; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nフォームラベル\n\nフォームのラベルに関する要素を定義します。\n\nsg-wrapper:\n
\n
\n
\n
\n \n
\n
\n
\n
\n\nStyleguide 3.3\n*/\n/*\nラベル\n\nフォーム要素で利用するラベル要素です。\n\nex [お問い合わせページ ラベル部分](http://demo3.ec-cube.net/contact)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.1\n*/\n.ec-label {\n display: inline-block;\n font-weight: bold;\n margin-bottom: 5px; }\n\n/*\n必須ラベル\n\n必須文字を表示するラベル要素です。\n\nex [お問い合わせページ 必須ラベル部分](http://demo3.ec-cube.net/contact)\n\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n span.ec-required 必須\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.2\n*/\n.ec-required {\n display: inline-block;\n margin-left: .8em;\n vertical-align: 2px;\n color: #DE5D50;\n font-size: 12px;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-required {\n margin-left: 1em; } }\n\n/*\nアイコン\n\nデフォルトテンプレートのアイコンは`.ec-icon`>`img`タグで使用することができます\n\nsg-wrapper:\n
\n \n\nMarkup:\ninclude /assets/tmpl/elements/4.1.icon.pug\ndiv(style=\"background-color: rgba(130,130,130,.15); padding: 20px;\")\n +icon-all\n\nStyleguide 4.1\n*/\n.ec-icon img {\n max-width: 80px;\n max-height: 80px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nグリッド\n\n画面を12分割し、グリッドレイアウトに対応するためのスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.1\n*/\n/*\n2分割グリッド\n\n画面 2分割の グリッドです。\nBootstrap の col-sm-6 相当のグリッドを提供します。\n\nMarkup:\n.ec-grid2\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 5.1.1\n*/\n.ec-grid2 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid2 {\n display: flex; } }\n .ec-grid2 .ec-grid2__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid2 .ec-grid2__cell {\n width: 50%; } }\n .ec-grid2 .ec-grid2__cell2 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid2 .ec-grid2__cell2 {\n width: 100%; } }\n\n/*\n3分割グリッド\n\n画面 3分割の グリッドです。\n\n\nMarkup:\n.ec-grid3\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n\nStyleguide 5.1.2\n*/\n.ec-grid3 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid3 {\n display: flex; } }\n .ec-grid3 .ec-grid3__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid3 .ec-grid3__cell {\n width: 33.33333%; } }\n .ec-grid3 .ec-grid3__cell2 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid3 .ec-grid3__cell2 {\n width: 66.66667%; } }\n .ec-grid3 .ec-grid3__cell3 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid3 .ec-grid3__cell3 {\n width: 100%; } }\n\n/*\n4分割グリッド\n\n画面 4分割の グリッドです。\n\n\nMarkup:\n.ec-grid4\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n\nStyleguide 5.1.3\n*/\n.ec-grid4 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid4 {\n display: flex; } }\n .ec-grid4 .ec-grid4__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid4 .ec-grid4__cell {\n width: 25%; } }\n\n/*\n6分割グリッド\n\n2つにまとめた cell2 や 3つをまとめた cell3 タグも使用可能です。\n\n\nMarkup:\n.ec-grid6\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n.ec-grid6\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n.ec-grid6\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n\nStyleguide 5.1.4\n*/\n.ec-grid6 {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-grid6 {\n display: flex; } }\n .ec-grid6 .ec-grid6__cell {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid6 .ec-grid6__cell {\n width: 16.66667%; } }\n .ec-grid6 .ec-grid6__cell2 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid6 .ec-grid6__cell2 {\n width: 33.33333%; } }\n .ec-grid6 .ec-grid6__cell3 {\n position: relative;\n min-height: 1px; }\n @media (min-width: 768px) {\n .ec-grid6 .ec-grid6__cell3 {\n width: 50%; } }\n\n/*\n中央寄せグリッド 10/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の10グリッドです\n\nex [ご利用規約ページ 本文](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-off1Grid\n .ec-off1Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.5\n*/\n.ec-off1Grid {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off1Grid {\n display: block;\n margin: 0; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off1Grid {\n display: flex; } }\n .ec-off1Grid .ec-off1Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off1Grid .ec-off1Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 8.33333%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off1Grid .ec-off1Grid__cell {\n width: 83.33333%; } }\n\n/*\n中央寄せグリッド 8/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の8グリッドです\n\n\nMarkup:\n.ec-off2Grid\n .ec-off2Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.6\n*/\n.ec-off2Grid {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off2Grid {\n display: flex; } }\n .ec-off2Grid .ec-off2Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off2Grid .ec-off2Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 16.66667%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off2Grid .ec-off2Grid__cell {\n width: 66.66667%; } }\n\n/*\n中央寄せグリッド 6/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の6グリッドです\n\n\nMarkup:\n.ec-off3Grid\n .ec-off3Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.7\n*/\n.ec-off3Grid {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off3Grid {\n display: flex; } }\n .ec-off3Grid .ec-off3Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off3Grid .ec-off3Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 25%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off3Grid .ec-off3Grid__cell {\n width: 50%; } }\n\n/*\n中央寄せグリッド 4/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の4グリッドです\n\n\nMarkup:\n.ec-off4Grid\n .ec-off4Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\n\nStyleguide 5.1.8\n*/\n.ec-off4Grid {\n display: block;\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off4Grid {\n display: flex; } }\n .ec-off4Grid .ec-off4Grid__cell {\n margin: 0; }\n @media only screen and (min-width: 768px) {\n .ec-off4Grid .ec-off4Grid__cell {\n position: relative;\n min-height: 1px;\n margin-left: 33.33333%; } }\n @media only screen and (min-width: 768px) and (min-width: 768px) {\n .ec-off4Grid .ec-off4Grid__cell {\n width: 33.33333%; } }\n\n/*\nグリッドオプション\n\nグリッドのセルに対して「左寄せ」「中央寄せ」「右寄せ」のオプションを付与することができます。\n\nsg-wrapper:\n
\n \n\nStyleguide 5.1.9\n*/\n/*\nグリッドセルの左寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--left\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.10\n*/\n.ec-grid--left {\n justify-content: flex-start; }\n\n/*\nグリッドセルの右寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--right\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.11\n*/\n.ec-grid--right {\n justify-content: flex-end; }\n\n/*\nグリッドセルの中央寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--center\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.12\n*/\n.ec-grid--center {\n justify-content: center; }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nレイアウト\n\n様々なレイアウトを変更する為のスタイル群です。\n\nStyleguide 5.2\n*/\n/*\n画像レイアウト\n\n画像とテキストを水平に並べるレイアウトです。\n\n画像は20%で表示されます。\n\nex [注文履歴 ログイン後→注文履歴ボタンを押下](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-imageGrid\n .ec-imageGrid__img: img(src=\"http://demo3.ec-cube.net/upload/save_image/0701113537_559351f959620.jpeg\")\n .ec-imageGrid__content\n p.ec-font-bold ホーローマグ\n p ¥ 1,728 x 1\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.2.1\n*/\n.ec-imageGrid {\n display: table;\n border-top: 1px dotted #ccc;\n width: 100%; }\n .ec-imageGrid .ec-imageGrid__img {\n display: table-cell;\n padding: 10px;\n width: 100px; }\n @media only screen and (min-width: 768px) {\n .ec-imageGrid .ec-imageGrid__img {\n padding: 10px;\n width: 130px; } }\n .ec-imageGrid .ec-imageGrid__img img {\n width: 100%; }\n .ec-imageGrid .ec-imageGrid__content {\n vertical-align: middle;\n display: table-cell; }\n .ec-imageGrid .ec-imageGrid__content span {\n margin-left: 10px; }\n .ec-imageGrid .ec-imageGrid__content p {\n margin-bottom: 0; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nログイン\n\n主にログインフォームのスタイルを表示します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 6.1\n*/\n/*\nログインフォーム\n\nログインフォームを表示します。\n\nex [ログイン画面](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-login\n\n\nStyleguide 6.1.1\n*/\n.ec-login {\n margin: 0 0 20px;\n padding: 30px 13% 20px;\n height: auto;\n background: #F3F4F4;\n box-sizing: border-box; }\n @media only screen and (min-width: 768px) {\n .ec-login {\n margin: 0 16px;\n padding: 30px 13% 60px; } }\n .ec-login .ec-login__icon {\n text-align: center; }\n .ec-login .ec-icon {\n margin-bottom: 10px; }\n .ec-login .ec-icon img {\n width: 90px;\n height: 90px;\n display: inline-block; }\n .ec-login .ec-login__input {\n margin-bottom: 40px; }\n .ec-login .ec-login__input .ec-checkbox span {\n margin-left: 5px;\n font-weight: normal; }\n .ec-login .ec-login__actions {\n color: #fff; }\n .ec-login .ec-login__actions a {\n color: inherit;\n text-decoration: none; }\n .ec-login .ec-login__actions a:hover {\n text-decoration: none; }\n .ec-login .ec-login__link {\n margin-top: 5px;\n margin-left: 0; }\n @media only screen and (min-width: 768px) {\n .ec-login .ec-login__link {\n margin-left: 20px; } }\n .ec-login .ec-errorMessage {\n color: #DE5D50;\n margin-bottom: 20px; }\n\n/*\nゲスト購入\n\nゲスト購入ボタンとそのフォームを表示します。\n\nex [ゲスト購入画面](http://demo3.ec-cube.net/shopping/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-guest\nhoge\n\nStyleguide 6.1.2\n*/\n.ec-guest {\n display: table;\n margin: 0;\n padding: 13%;\n height: auto;\n box-sizing: border-box;\n background: #F3F4F4; }\n @media only screen and (min-width: 768px) {\n .ec-guest {\n height: 100%;\n margin: 0 16px; } }\n .ec-guest .ec-guest__inner {\n display: table-cell;\n vertical-align: middle;\n text-align: center; }\n .ec-guest .ec-guest__inner p {\n margin-bottom: 16px; }\n .ec-guest .ec-guest__actions {\n display: block;\n vertical-align: middle;\n text-align: center;\n color: #fff; }\n .ec-guest .ec-guest__actions a {\n color: inherit;\n text-decoration: none; }\n .ec-guest .ec-guest__actions a:hover {\n text-decoration: none; }\n .ec-guest .ec-guest__icon {\n font-size: 70px;\n text-align: center; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n商品掲載\n\nトップページに商品掲載するスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.1\n*/\n/*\n商品アイテム(商品紹介B)\n\n3項目横並びの商品アイテムを表示します。\n必要に応じて商品詳細や、キャッチコピーなどを添えることが出来ます。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayB\n\nStyleguide 7.1.1\n*/\n.ec-displayB {\n margin-bottom: 24px;\n display: flex;\n justify-content: space-between;\n flex-direction: column; }\n @media only screen and (min-width: 768px) {\n .ec-displayB {\n flex-direction: row; } }\n .ec-displayB .ec-displayB__cell {\n width: 100%;\n margin-bottom: 16px; }\n .ec-displayB .ec-displayB__cell a {\n color: inherit;\n text-decoration: none; }\n .ec-displayB .ec-displayB__cell a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-displayB .ec-displayB__cell {\n width: 31.4466%;\n margin-bottom: 0; } }\n .ec-displayB .ec-displayB__cell:hover {\n text-decoration: none; }\n .ec-displayB .ec-displayB__cell:hover img {\n opacity: .8; }\n .ec-displayB .ec-displayB__cell:hover a {\n text-decoration: none; }\n .ec-displayB .ec-displayB__img {\n margin-bottom: 15px; }\n .ec-displayB .ec-displayB__catch {\n margin-bottom: 15px;\n text-decoration: none;\n font-weight: bold;\n color: #9a947e; }\n .ec-displayB .ec-displayB__comment {\n margin-bottom: 14px;\n text-decoration: none;\n color: #525263;\n font-size: 14px; }\n .ec-displayB .ec-displayB__link {\n text-decoration: none;\n font-weight: bold;\n color: #9a947e; }\n\n/*\n商品アイテム(商品紹介C)\n\n4項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayC\np hoge\n\nStyleguide 7.1.2\n*/\n.ec-displayC {\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n margin-bottom: 24px; }\n .ec-displayC .ec-displayC__cell {\n width: 47%; }\n .ec-displayC .ec-displayC__cell a {\n color: inherit;\n text-decoration: none; }\n .ec-displayC .ec-displayC__cell a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-displayC .ec-displayC__cell {\n width: 22.8775%; } }\n .ec-displayC .ec-displayC__cell:hover a {\n text-decoration: none; }\n .ec-displayC .ec-displayC__cell:hover img {\n opacity: .8; }\n .ec-displayC .ec-displayC__img {\n display: block;\n width: 100%;\n margin-bottom: 15px; }\n .ec-displayC .ec-displayC__catch {\n display: block;\n width: 100%;\n font-weight: bold;\n color: #9a947e; }\n .ec-displayC .ec-displayC__title {\n display: block;\n width: 100%;\n color: #525263; }\n .ec-displayC .ec-displayC__price {\n display: block;\n width: 100%;\n font-weight: bold;\n color: #525263; }\n .ec-displayC .ec-displayC__price--sp {\n display: block;\n width: 100%;\n font-weight: bold;\n color: #DE5D50; }\n\n/*\n商品アイテム(商品紹介D)\n\n6項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayD\n\nStyleguide 7.1.3\n*/\n.ec-displayD {\n display: flex;\n justify-content: space-between;\n flex-wrap: wrap-reverse; }\n @media only screen and (min-width: 768px) {\n .ec-displayD {\n box-sizing: border-box;\n flex-wrap: nowrap; } }\n .ec-displayD .ec-displayD__cell {\n width: 30%;\n margin-bottom: 8px; }\n .ec-displayD .ec-displayD__cell a {\n color: inherit;\n text-decoration: none; }\n .ec-displayD .ec-displayD__cell a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-displayD .ec-displayD__cell {\n width: 14.3083%;\n margin-bottom: 16px; } }\n .ec-displayD .ec-displayD__cell:hover {\n text-decoration: none; }\n .ec-displayD .ec-displayD__cell:hover img {\n opacity: .8; }\n .ec-displayD .ec-displayD__img {\n display: block;\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n検索・一覧表示\n\n検索欄や、一覧表示に使用するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.2\n*/\n/*\nトピックパス\n\n検索結果で表示されるトピックパスのスタイルです。\n\nex [商品一覧ページ 横並びリスト部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-topicpath\n\nStyleguide 7.2.1\n*/\n.ec-topicpath {\n letter-spacing: -.4em;\n -webkit-margin-before: 0;\n -webkit-margin-after: 0;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n -webkit-padding-start: 0;\n border-top: 1px solid #ccc;\n border-bottom: 1px dotted #ccc;\n padding: 10px;\n list-style: none;\n overflow: hidden;\n font-size: 12px;\n color: #0092C4; }\n @media only screen and (min-width: 768px) {\n .ec-topicpath {\n padding: 30px 0 10px;\n border: 0;\n font-size: 16px; } }\n .ec-topicpath .ec-topicpath__item a {\n color: inherit;\n text-decoration: none; }\n .ec-topicpath .ec-topicpath__item a:hover {\n text-decoration: none; }\n .ec-topicpath .ec-topicpath__divider {\n color: #000; }\n .ec-topicpath .ec-topicpath__item,\n .ec-topicpath .ec-topicpath__divider,\n .ec-topicpath .ec-topicpath__item--active {\n display: inline-block;\n min-width: 16px;\n text-align: center;\n position: relative;\n letter-spacing: normal; }\n .ec-topicpath .ec-topicpath__item--active {\n font-weight: bold; }\n .ec-topicpath .ec-topicpath__item--active a {\n color: inherit;\n text-decoration: none; }\n .ec-topicpath .ec-topicpath__item--active a:hover {\n text-decoration: none; }\n\n/*\nページャ\n\n検索結果で表示される商品一覧のスタイルです。\n\nex [商品一覧ページ ページャ部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-pager\n\nStyleguide 7.2.2\n*/\n.ec-pager {\n list-style: none;\n list-style-type: none;\n margin: 0 auto;\n padding: 1em 0;\n text-align: center; }\n .ec-pager .ec-pager__item,\n .ec-pager .ec-pager__item--active {\n display: inline-block;\n min-width: 29px;\n padding: 0 3px 0 2px;\n text-align: center;\n position: relative; }\n .ec-pager .ec-pager__item a,\n .ec-pager .ec-pager__item--active a {\n color: inherit;\n text-decoration: none; }\n .ec-pager .ec-pager__item a:hover,\n .ec-pager .ec-pager__item--active a:hover {\n text-decoration: none; }\n .ec-pager .ec-pager__item a,\n .ec-pager .ec-pager__item--active a {\n color: inherit;\n display: block;\n line-height: 1.8;\n padding: 5px 1em;\n text-decoration: none; }\n .ec-pager .ec-pager__item a:hover,\n .ec-pager .ec-pager__item--active a:hover {\n color: inherit; }\n .ec-pager .ec-pager__item--active {\n background: #F3F3F3; }\n .ec-pager .ec-pager__item:hover {\n background: #F3F3F3; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n visibility: hidden; }\n 100% {\n opacity: 1;\n visibility: visible; } }\n\n@keyframes fadeOut {\n 0% {\n opacity: 1;\n visibility: visible; }\n 100% {\n opacity: 0;\n visibility: hidden; } }\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1; }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nカート\n\nショッピングカートに関するスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.3\n*/\n/*\nカートヘッダ\n\n購入完了までの手順や、現在の状態を表示します。\n\nul 要素を用いたリスト要素としてマークアップします。\n\nex [カートページ ヘッダ部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-progress\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.3.1\n*/\n.ec-progress {\n margin: 0 auto;\n padding: 8px 0 16px;\n display: table;\n table-layout: fixed;\n width: 100%;\n max-width: 600px;\n list-style: none; }\n @media only screen and (min-width: 768px) {\n .ec-progress {\n margin-bottom: 30px;\n padding: 0; } }\n .ec-progress .ec-progress__item {\n display: table-cell;\n position: relative;\n font-size: 14px;\n text-align: center;\n font-weight: bold;\n z-index: 10; }\n .ec-progress .ec-progress__item:after {\n content: '';\n position: absolute;\n display: block;\n background: #525263;\n width: 100%;\n height: 0.25em;\n top: 1.25em;\n left: 50%;\n margin-left: 1.5em\\9;\n z-index: -1; }\n .ec-progress .ec-progress__item:last-child:after {\n display: none; }\n .ec-progress .ec-progress__number {\n line-height: 30px;\n width: 30px;\n height: 30px;\n margin-bottom: 5px;\n font-size: 12px;\n background: #525263;\n color: #fff;\n top: 0;\n left: 18px;\n display: inline-block;\n text-align: center;\n vertical-align: middle;\n border-radius: 50%; }\n @media only screen and (min-width: 768px) {\n .ec-progress .ec-progress__number {\n line-height: 42px;\n width: 42px;\n height: 42px;\n font-size: 20px; } }\n .ec-progress .ec-progress__label {\n font-size: 12px; }\n .ec-progress .is-complete .ec-progress__number {\n background: #5CB1B1; }\n .ec-progress .is-complete .ec-progress__label {\n color: #5CB1B1; }\n\n/*\nカートナビゲーション\n\nカートナビゲーションを表示します。 カートに追加された商品の個数も表示します。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerCart\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.5\n*/\n@media only screen and (min-width: 768px) {\n .ec-cartNaviWrap {\n position: relative; } }\n\n.ec-cartNavi {\n display: inline-block;\n padding: 10px 0 0 20px;\n width: auto;\n color: black;\n background: transparent; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi {\n display: flex;\n justify-content: space-between;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 12px 17px 10px;\n width: auto;\n min-width: 140px;\n height: 44px;\n white-space: nowrap;\n cursor: pointer;\n background: #F8F8F8; } }\n .ec-cartNavi .ec-cartNavi__icon {\n display: inline-block;\n font-size: 20px;\n display: inline-block;\n opacity: 1;\n visibility: visible;\n animation: fadeIn 200ms linear 0s;\n position: relative; }\n .ec-cartNavi .ec-cartNavi__badge {\n display: inline-block;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 5px;\n height: 17px;\n font-size: 10px;\n line-height: 0.7;\n vertical-align: top;\n color: #fff;\n text-align: left;\n white-space: nowrap;\n background-color: #DE5D50;\n position: absolute;\n left: 60%;\n top: -10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi .ec-cartNavi__badge {\n display: inline-block;\n min-width: 17px;\n position: relative;\n left: 0;\n top: 0; } }\n .ec-cartNavi .ec-cartNavi__price {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi .ec-cartNavi__price {\n display: inline-block;\n font-size: 14px;\n font-weight: normal;\n vertical-align: middle; } }\n\n.ec-cartNavi.is-active .ec-cartNavi__icon:before {\n content: \"\\f00d\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900; }\n\n.ec-cartNavi.is-active .ec-cartNavi__badge {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-cartNavi.is-active .ec-cartNavi__badge {\n display: none; } }\n\n/*\nカートナビゲーションのポップアップ(商品詳細)\n\nカートナビゲーションのポップアップを表示します。カートに追加された商品の詳細が表示されます。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:350px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='close')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n +b.ec-cartNaviIsset\n +e.cart\n +e.cartImage\n img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n +e.cartContent\n +e.cartContentTitle ミニテーブル\n +e.cartContentPrice ¥ 12,960\n +e.cartContentTax 税込\n +e.cartContentNumber 数量:1\n +e.action\n a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n a.ec-blockBtn.ec-cartNavi--cancel キャンセル\n\nStyleguide 7.3.6\n*/\n.ec-cartNaviIsset {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 20;\n position: absolute;\n right: 0; }\n @media only screen and (min-width: 768px) {\n .ec-cartNaviIsset {\n margin-top: 10px;\n min-width: 256px;\n max-width: 256px; }\n .ec-cartNaviIsset::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px; } }\n .ec-cartNaviIsset .ec-cartNaviIsset__cart {\n border-bottom: 1px solid #E8E8E8;\n margin-bottom: 16px;\n padding-bottom: 32px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cart:after {\n content: \" \";\n display: table; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cart:after {\n clear: both; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartImage {\n float: left;\n width: 45%; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartImage img {\n width: 100%; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContent {\n float: right;\n width: 55%;\n padding-left: 16px;\n text-align: left;\n box-sizing: border-box; }\n .ec-cartNaviIsset .ec-cartNaviIsset__action .ec-blockBtn--action {\n color: #fff;\n margin-bottom: 8px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentTitle {\n margin-bottom: 8px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentPrice {\n font-weight: bold; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentTax {\n display: inline-block;\n font-size: 12px;\n font-weight: normal;\n margin-left: 2px; }\n .ec-cartNaviIsset .ec-cartNaviIsset__cartContentNumber {\n font-size: 14px; }\n\n.ec-cartNaviIsset.is-active {\n display: block; }\n\n/*\nカートナビゲーションのポップアップ(商品なし)\n\nカートナビゲーションのポップアップを表示します。商品が登録されていない場合の表示です。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:170px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='cart')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n .ec-cartNaviNull\n .ec-cartNaviNull__message\n p 現在カート内に\n br\n | 商品がございません。\n //+b.ec-cartNaviIsset\n // +e.cart\n // +e.cartImage\n // img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n // +e.cartContent\n // +e.cartContentTitle ミニテーブル\n // +e.cartContentPrice ¥ 12,960\n // +e.cartContentTax 税込\n // +e.cartContentNumber 数量:1\n // +e.action\n // a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n // a.ec-blockBtn キャンセル\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.7\n*/\n.ec-cartNaviNull {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 3;\n position: absolute;\n right: 0; }\n @media only screen and (min-width: 768px) {\n .ec-cartNaviNull {\n margin-top: 10px;\n min-width: 256px;\n max-width: 256px; }\n .ec-cartNaviNull::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px; } }\n .ec-cartNaviNull .ec-cartNaviNull__message {\n border: 1px solid #D9D9D9;\n padding: 16px 0;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n background-color: #F99; }\n .ec-cartNaviNull .ec-cartNaviNull__message p {\n margin: 0; }\n\n.ec-cartNaviNull.is-active {\n display: block; }\n\n/*\n総計\n\n会計時の合計金額、総計を表示します。\n\nex [カートページ 統計部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-totalBox\n\nStyleguide 7.3.8\n*/\n.ec-totalBox {\n background: #F3F3F3;\n padding: 16px;\n margin-bottom: 16px; }\n .ec-totalBox .ec-totalBox__spec {\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: space-between;\n justify-content: space-between;\n -ms-flex-pack: space-between;\n margin-bottom: 8px; }\n .ec-totalBox .ec-totalBox__spec dt {\n font-weight: normal;\n text-align: left; }\n .ec-totalBox .ec-totalBox__spec dd {\n text-align: right; }\n .ec-totalBox .ec-totalBox__spec .ec-totalBox .ec-totalBox__spec__specTotal {\n color: #DE5D50; }\n .ec-totalBox .ec-totalBox__total {\n border-top: 1px dotted #ccc;\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight: bold; }\n .ec-totalBox .ec-totalBox__paymentTotal {\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight: bold; }\n .ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__price,\n .ec-totalBox .ec-totalBox__paymentTotal .ec-totalBox__taxLabel {\n color: #DE5D50; }\n .ec-totalBox .ec-totalBox__price {\n margin-left: 16px;\n font-size: 16px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-totalBox .ec-totalBox__price {\n font-size: 24px; } }\n .ec-totalBox .ec-totalBox__taxLabel {\n margin-left: 8px;\n font-size: 12px; }\n @media only screen and (min-width: 768px) {\n .ec-totalBox .ec-totalBox__taxLabel {\n font-size: 14px; } }\n .ec-totalBox .ec-totalBox__taxRate {\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: flex-end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n margin-bottom: 8px;\n font-size: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-totalBox .ec-totalBox__taxRate {\n font-size: 12px; } }\n .ec-totalBox .ec-totalBox__taxRate dt {\n font-weight: normal;\n text-align: left;\n margin-right: 8px; }\n .ec-totalBox .ec-totalBox__taxRate dt::before {\n content: \"[ \"; }\n .ec-totalBox .ec-totalBox__taxRate dd {\n text-align: right; }\n .ec-totalBox .ec-totalBox__taxRate dd::after {\n content: \" ]\"; }\n .ec-totalBox .ec-totalBox__pointBlock {\n padding: 18px 20px 10px;\n margin-bottom: 10px;\n background: #fff; }\n .ec-totalBox .ec-totalBox__btn {\n color: #fff; }\n .ec-totalBox .ec-totalBox__btn a {\n color: inherit;\n text-decoration: none; }\n .ec-totalBox .ec-totalBox__btn a:hover {\n text-decoration: none; }\n .ec-totalBox .ec-totalBox__btn .ec-blockBtn--action {\n font-size: 16px;\n font-weight: bold; }\n .ec-totalBox .ec-totalBox__btn .ec-blockBtn--cancel {\n margin-top: 8px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nお知らせ\n\n新着情報やバナーなどの掲載項目を紹介していきます。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 8.1\n*/\n/*\n新着情報\n\n新着情報の掲載をします。\n\nex [トップページ 新着情報部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+ec-news\n\nStyleguide 8.1.1\n*/\n.ec-news {\n margin-bottom: 16px;\n background: #F8F8F8; }\n @media only screen and (min-width: 768px) {\n .ec-news {\n margin-right: 3%; } }\n @media only screen and (min-width: 768px) {\n .ec-news {\n margin-bottom: 32px; } }\n .ec-news .ec-news__title {\n font-weight: bold;\n padding: 8px;\n font-size: 16px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-news .ec-news__title {\n padding: 16px;\n text-align: left;\n font-size: 24px; } }\n .ec-news .ec-news__items {\n padding: 0;\n list-style: none;\n border-top: 1px dotted #ccc; }\n\n/*\n折りたたみ項目\n\n折りたたみ項目を掲載します。\n\nex [トップページ 折りたたみ項目部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+b.ec-news\n +e.title 新着情報\n +e.UL.items\n +e.LI.item\n +b.ec-newsline.is_active\n +e.info\n +e.date 2016/09/29\n +e.comment サイトオープンしました\n +e.close\n a.ec-closeBtn--circle\n span.ec-closeBtn--circle__icon\n .ec-icon\n img(src='/moc/icon/angle-down-white.svg', alt='')\n +e.description 一人暮らしからオフィスなどさまざまなシーンで あなたの生活をサポートするグッズをご家庭へお届けします!\n\nStyleguide 8.1.2\n*/\n.ec-newsline {\n display: flex;\n flex-wrap: wrap;\n overflow: hidden;\n padding: 0 16px; }\n .ec-newsline .ec-newsline__info {\n width: 100%;\n padding: 16px 0; }\n .ec-newsline .ec-newsline__info:after {\n content: \" \";\n display: table; }\n .ec-newsline .ec-newsline__info:after {\n clear: both; }\n .ec-newsline .ec-newsline__date {\n display: inline-block;\n margin-right: 10px;\n float: left; }\n .ec-newsline .ec-newsline__comment {\n display: inline-block;\n float: left; }\n .ec-newsline .ec-newsline__close {\n float: right;\n display: inline-block;\n text-align: right; }\n .ec-newsline .ec-newsline__close .ec-closeBtn--circle {\n display: inline-block;\n width: 25px;\n height: 25px;\n min-width: 25px;\n min-height: 25px; }\n .ec-newsline .ec-newsline__description {\n width: 100%;\n height: 0;\n transition: all .2s ease-out; }\n .ec-newsline.is_active .ec-newsline__description {\n height: auto;\n transition: all .2s ease-out;\n padding-bottom: 16px; }\n .ec-newsline.is_active .ec-icon img {\n transform: rotateX(180deg); }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nマイページ\n\nマイページで利用するためのスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 9.1\n*/\n/*\nマイページ\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist\n\nStyleguide 9.1.1\n*/\n.ec-navlistRole .ec-navlistRole__navlist {\n display: flex;\n flex-wrap: wrap;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 1px 0 0 1px;\n margin-bottom: 32px;\n padding: 0;\n list-style: none; }\n .ec-navlistRole .ec-navlistRole__navlist a {\n color: inherit;\n text-decoration: none; }\n .ec-navlistRole .ec-navlistRole__navlist a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-navlistRole .ec-navlistRole__navlist {\n flex-wrap: nowrap; } }\n\n.ec-navlistRole .ec-navlistRole__item {\n width: 50%;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 0 1px 1px 0;\n text-align: center;\n font-weight: bold; }\n .ec-navlistRole .ec-navlistRole__item a {\n padding: 16px;\n width: 100%;\n display: inline-block; }\n .ec-navlistRole .ec-navlistRole__item a:hover {\n background: #f5f7f8; }\n\n.ec-navlistRole .active a {\n color: #DE5D50; }\n\n/*\nマイページ(お気に入り機能無効)\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist_noFavorite\n\nStyleguide 9.1.2\n*/\n/*\nWelcome メッセージ\n\nマイページで表示するログイン名の表示コンポーネントです。\n\nex [マイページ メニューリスト下部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-welcomeMsg\n\nStyleguide 9.1.3\n*/\n.ec-welcomeMsg {\n margin-right: auto;\n margin-left: auto;\n padding-left: 16px;\n padding-right: 16px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n margin: 1em 0;\n padding-bottom: 32px;\n text-align: center;\n border-bottom: 1px dotted #ccc; }\n .ec-welcomeMsg:after {\n content: \" \";\n display: table; }\n .ec-welcomeMsg:after {\n clear: both; }\n .ec-welcomeMsg textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-welcomeMsg img {\n max-width: 100%; }\n .ec-welcomeMsg html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-welcomeMsg *,\n .ec-welcomeMsg *::before,\n .ec-welcomeMsg *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-welcomeMsg img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-welcomeMsg {\n padding-left: 26px;\n padding-right: 26px; } }\n\n/*\nお気に入り一覧\n\nお気に入り一覧で表示するアイテムの表示コンポーネントです。\n\nex [マイページ お気に入り一覧](http://demo3.ec-cube.net/mypage/favorite)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-favorite\n\nStyleguide 9.1.4\n*/\n.ec-favoriteRole .ec-favoriteRole__header {\n margin-bottom: 16px; }\n\n.ec-favoriteRole .ec-favoriteRole__itemList {\n display: flex;\n flex-wrap: wrap;\n padding: 0;\n list-style: none; }\n .ec-favoriteRole .ec-favoriteRole__itemList a {\n color: inherit;\n text-decoration: none; }\n .ec-favoriteRole .ec-favoriteRole__itemList a:hover {\n text-decoration: none; }\n\n.ec-favoriteRole .ec-favoriteRole__item {\n margin-bottom: 8px;\n width: 47.5%;\n position: relative;\n box-sizing: border-box;\n padding: 10px; }\n .ec-favoriteRole .ec-favoriteRole__item-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-favoriteRole .ec-favoriteRole__item-image {\n height: 250px; } }\n .ec-favoriteRole .ec-favoriteRole__item img {\n width: auto;\n max-height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-favoriteRole .ec-favoriteRole__item {\n width: 25%; } }\n .ec-favoriteRole .ec-favoriteRole__item .ec-closeBtn--circle {\n position: absolute;\n right: 10px;\n top: 10px; }\n .ec-favoriteRole .ec-favoriteRole__item .ec-closeBtn--circle .ec-icon img {\n width: 1em;\n height: 1em; }\n\n.ec-favoriteRole .ec-favoriteRole__itemThumb {\n display: block;\n height: auto;\n margin-bottom: 8px; }\n\n.ec-favoriteRole .ec-favoriteRole__itemTitle {\n margin-bottom: 2px; }\n\n.ec-favoriteRole .ec-favoriteRole__itemPrice {\n font-weight: bold;\n margin-bottom: 0; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n標準セクション\n\n通常のコンテナブロックです。\n\nex [商品詳細ページ コンテナ](http://demo3.ec-cube.net/products/detail/33)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-roleRole\n\nStyleguide 11.1\n*/\n.ec-role {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-role:after {\n content: \" \";\n display: table; }\n .ec-role:after {\n clear: both; }\n .ec-role textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-role img {\n max-width: 100%; }\n .ec-role html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-role *,\n .ec-role *::before,\n .ec-role *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-role img {\n width: 100%; }\n\n/*\nマイページセクション\n\nマイページ専用のコンテナブロックです。\n\nex [マイページ コンテナ](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-mypageRole\n\nStyleguide 11.1.2\n*/\n.ec-mypageRole {\n margin-right: auto;\n margin-left: auto;\n padding-left: 16px;\n padding-right: 16px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%; }\n .ec-mypageRole:after {\n content: \" \";\n display: table; }\n .ec-mypageRole:after {\n clear: both; }\n .ec-mypageRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-mypageRole img {\n max-width: 100%; }\n .ec-mypageRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-mypageRole *,\n .ec-mypageRole *::before,\n .ec-mypageRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-mypageRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-mypageRole {\n padding-left: 26px;\n padding-right: 26px; } }\n @media only screen and (min-width: 768px) {\n .ec-mypageRole .ec-pageHeader h1 {\n margin: 10px 0 48px;\n padding: 8px 0 18px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n visibility: hidden; }\n 100% {\n opacity: 1;\n visibility: visible; } }\n\n@keyframes fadeOut {\n 0% {\n opacity: 1;\n visibility: visible; }\n 100% {\n opacity: 0;\n visibility: hidden; } }\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1; }\n\n/*\nヘッダー\n\nヘッダー用のプロジェクトコンポーネントを提供します。\n\nex [トップページ ヘッダー](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+b.ec-layoutRole\n +e.header\n +ec-headerRole\n +ec-headerNaviRole\n +ec-categoryNaviRole\n\nStyleguide 11.2\n*/\n.ec-layoutRole {\n width: 100%;\n transition: transform 0.3s;\n background: #fff; }\n .ec-layoutRole .ec-layoutRole__contentTop {\n padding: 0; }\n .ec-layoutRole .ec-layoutRole__contents {\n margin-right: auto;\n margin-left: auto;\n width: 100%;\n max-width: 1150px;\n display: flex;\n flex-wrap: nowrap; }\n .ec-layoutRole .ec-layoutRole__main {\n width: 100%; }\n .ec-layoutRole .ec-layoutRole__mainWithColumn {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-layoutRole .ec-layoutRole__mainWithColumn {\n width: 75%; } }\n .ec-layoutRole .ec-layoutRole__mainBetweenColumn {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-layoutRole .ec-layoutRole__mainBetweenColumn {\n width: 50%; } }\n .ec-layoutRole .ec-layoutRole__left,\n .ec-layoutRole .ec-layoutRole__right {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-layoutRole .ec-layoutRole__left,\n .ec-layoutRole .ec-layoutRole__right {\n display: block;\n width: 25%; } }\n\n.ec-headerRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n padding-top: 15px;\n position: relative;\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n width: auto; }\n .ec-headerRole:after {\n content: \" \";\n display: table; }\n .ec-headerRole:after {\n clear: both; }\n .ec-headerRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-headerRole img {\n max-width: 100%; }\n .ec-headerRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-headerRole *,\n .ec-headerRole *::before,\n .ec-headerRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-headerRole img {\n width: 100%; }\n .ec-headerRole:after {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerRole:after {\n content: \" \";\n display: table; }\n .ec-headerRole:after {\n clear: both; } }\n .ec-headerRole::before {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerRole {\n width: 100%; }\n .ec-headerRole:after {\n content: \" \";\n display: table; }\n .ec-headerRole:after {\n clear: both; } }\n .ec-headerRole .ec-headerRole__title {\n width: 100%; }\n .ec-headerRole .ec-headerRole__navSP {\n display: block;\n position: absolute;\n top: 15px;\n width: 27%;\n right: 0;\n text-align: right; }\n @media only screen and (min-width: 768px) {\n .ec-headerRole .ec-headerRole__navSP {\n display: none; } }\n\n.ec-headerNaviRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-top: 15px; }\n .ec-headerNaviRole:after {\n content: \" \";\n display: table; }\n .ec-headerNaviRole:after {\n clear: both; }\n .ec-headerNaviRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-headerNaviRole img {\n max-width: 100%; }\n .ec-headerNaviRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-headerNaviRole *,\n .ec-headerNaviRole *::before,\n .ec-headerNaviRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-headerNaviRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-headerNaviRole {\n padding-bottom: 40px; } }\n .ec-headerNaviRole .ec-headerNaviRole__left {\n width: calc(100% / 3); }\n .ec-headerNaviRole .ec-headerNaviRole__search {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerNaviRole .ec-headerNaviRole__search {\n display: inline-block;\n margin-top: 10px; }\n .ec-headerNaviRole .ec-headerNaviRole__search a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__search a:hover {\n text-decoration: none; } }\n .ec-headerNaviRole .ec-headerNaviRole__navSP {\n display: block; }\n @media only screen and (min-width: 768px) {\n .ec-headerNaviRole .ec-headerNaviRole__navSP {\n display: none; }\n .ec-headerNaviRole .ec-headerNaviRole__navSP a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__navSP a:hover {\n text-decoration: none; } }\n .ec-headerNaviRole .ec-headerNaviRole__right {\n width: calc(100% * 2 / 3);\n display: flex;\n justify-content: flex-end;\n align-items: center; }\n .ec-headerNaviRole .ec-headerNaviRole__nav {\n display: inline-block; }\n .ec-headerNaviRole .ec-headerNaviRole__nav a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__nav a:hover {\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__cart {\n display: inline-block; }\n .ec-headerNaviRole .ec-headerNaviRole__cart a {\n color: inherit;\n text-decoration: none; }\n .ec-headerNaviRole .ec-headerNaviRole__cart a:hover {\n text-decoration: none; }\n\n.ec-headerNavSP {\n display: block;\n cursor: pointer;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 10px;\n z-index: 1000; }\n .ec-headerNavSP .fas {\n vertical-align: top; }\n @media only screen and (min-width: 768px) {\n .ec-headerNavSP {\n display: none; } }\n\n.ec-headerNavSP.is-active {\n display: none; }\n\n/*\nヘッダー:タイトル\n\nヘッダー内で使用されるタイトルコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerTitle\n\nStyleguide 11.2.1\n*/\n.ec-headerTitle {\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%; }\n .ec-headerTitle textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-headerTitle img {\n max-width: 100%; }\n .ec-headerTitle html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-headerTitle *,\n .ec-headerTitle *::before,\n .ec-headerTitle *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-headerTitle img {\n width: 100%; }\n .ec-headerTitle .ec-headerTitle__title {\n text-align: center; }\n .ec-headerTitle .ec-headerTitle__title h1 {\n margin: 0;\n padding: 0; }\n .ec-headerTitle .ec-headerTitle__title a {\n display: inline-block;\n margin-bottom: 30px;\n text-decoration: none;\n font-size: 20px;\n font-weight: bold;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-headerTitle .ec-headerTitle__title a {\n font-size: 40px; } }\n .ec-headerTitle .ec-headerTitle__title a:hover {\n opacity: .8; }\n .ec-headerTitle .ec-headerTitle__subtitle {\n font-size: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-headerTitle .ec-headerTitle__subtitle {\n font-size: 16px;\n margin-bottom: 10px; } }\n .ec-headerTitle .ec-headerTitle__subtitle a {\n display: inline-block;\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n\n/*\nヘッダー:ユーザナビゲーション\n\nヘッダー内でユーザに関与するナビゲーションコンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__nav`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.3\n*/\n.ec-headerNav {\n text-align: right; }\n .ec-headerNav .ec-headerNav__item {\n margin-left: 0;\n display: inline-block;\n font-size: 28px; }\n .ec-headerNav .ec-headerNav__itemIcon {\n display: inline-block;\n margin-right: 10px;\n margin-left: 10px;\n font-size: 18px;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-headerNav .ec-headerNav__itemIcon {\n margin-right: 0;\n font-size: 20px; } }\n .ec-headerNav .ec-headerNav__itemLink {\n display: none;\n margin-right: 5px;\n font-size: 14px;\n vertical-align: middle;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-headerNav .ec-headerNav__itemLink {\n display: inline-block; } }\n\n/*\nヘッダー:検索ボックス\n\nヘッダー内で使用される商品検索コンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__search`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerSearch\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.4\n*/\n.ec-headerSearch:after {\n content: \" \";\n display: table; }\n\n.ec-headerSearch:after {\n clear: both; }\n\n.ec-headerSearch .ec-headerSearch__category {\n float: none; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__category {\n float: left;\n width: 43%; } }\n .ec-headerSearch .ec-headerSearch__category .ec-select {\n overflow: hidden;\n width: 100%;\n margin: 0;\n text-align: center; }\n .ec-headerSearch .ec-headerSearch__category .ec-select select {\n width: 100%;\n cursor: pointer;\n padding: 8px 24px 8px 8px;\n text-indent: 0.01px;\n text-overflow: ellipsis;\n border: none;\n outline: none;\n background: transparent;\n background-image: none;\n box-shadow: none;\n appearance: none;\n color: #fff; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__category .ec-select select {\n max-width: 165px;\n height: 36px; } }\n .ec-headerSearch .ec-headerSearch__category .ec-select select option {\n color: #000; }\n .ec-headerSearch .ec-headerSearch__category .ec-select select::-ms-expand {\n display: none; }\n .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {\n position: relative;\n border: 0;\n background: #000;\n color: #fff;\n border-top-right-radius: 10px;\n border-top-left-radius: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {\n border-top-right-radius: inherit;\n border-top-left-radius: 50px;\n border-bottom-left-radius: 50px; } }\n .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search::before {\n position: absolute;\n top: 0.8em;\n right: 0.4em;\n width: 0;\n height: 0;\n padding: 0;\n content: '';\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid #fff;\n pointer-events: none; }\n\n.ec-headerSearch .ec-headerSearch__keyword {\n position: relative;\n color: #525263;\n border: 1px solid #ccc;\n background-color: #f6f6f6;\n border-bottom-right-radius: 10px;\n border-bottom-left-radius: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-headerSearch .ec-headerSearch__keyword {\n float: right;\n width: 57%;\n border-bottom-left-radius: inherit;\n border-top-right-radius: 50px;\n border-bottom-right-radius: 50px; } }\n .ec-headerSearch .ec-headerSearch__keyword input[type=\"search\"] {\n width: 100%;\n height: 34px;\n font-size: 1.2rem;\n border: 0 none;\n padding: 0.5em 50px 0.5em 1em;\n box-shadow: none;\n background: none;\n box-sizing: border-box;\n margin-bottom: 0; }\n .ec-headerSearch .ec-headerSearch__keyword .ec-icon {\n width: 22px;\n height: 22px; }\n\n.ec-headerSearch .ec-headerSearch__keywordBtn {\n border: 0;\n background: none;\n position: absolute;\n right: 5px;\n top: 50%;\n transform: translateY(-55%);\n display: block;\n white-space: nowrap;\n z-index: 1; }\n\n/*\nヘッダー:カテゴリナビ\n\nヘッダー内で使用されている商品のカテゴリ一覧として使用します。\n`li`の中に`ul > li`要素を入れることで、階層を深くする事ができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+ec-itemNav\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 11.2.5\n*/\n.ec-categoryNaviRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: none; }\n .ec-categoryNaviRole:after {\n content: \" \";\n display: table; }\n .ec-categoryNaviRole:after {\n clear: both; }\n .ec-categoryNaviRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-categoryNaviRole img {\n max-width: 100%; }\n .ec-categoryNaviRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-categoryNaviRole *,\n .ec-categoryNaviRole *::before,\n .ec-categoryNaviRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-categoryNaviRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-categoryNaviRole {\n display: block;\n width: 100%; }\n .ec-categoryNaviRole a {\n color: inherit;\n text-decoration: none; }\n .ec-categoryNaviRole a:hover {\n text-decoration: none; } }\n\n.ec-itemNav {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n text-align: center; }\n\n.ec-itemNav__nav {\n display: block;\n margin: 0 auto;\n padding: 0;\n width: auto;\n height: auto;\n list-style-type: none;\n text-align: center;\n vertical-align: bottom; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav {\n display: inline-block; } }\n\n.ec-itemNav__nav li {\n float: none;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: center;\n position: relative; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li {\n float: left;\n width: auto; } }\n\n.ec-itemNav__nav li a {\n display: block;\n border-bottom: 1px solid #E8E8E8;\n margin: 0;\n padding: 16px;\n height: auto;\n color: #2e3233;\n font-size: 16px;\n font-weight: bold;\n line-height: 20px;\n text-decoration: none;\n text-align: left;\n background: #fff;\n border-bottom: 1px solid #E8E8E8; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li a {\n text-align: center;\n border-bottom: none; } }\n\n.ec-itemNav__nav li ul {\n display: none;\n z-index: 0;\n margin: 0;\n padding: 0;\n min-width: 200px;\n list-style: none;\n position: static;\n top: 100%;\n left: 0; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul {\n display: block;\n z-index: 100;\n position: absolute; } }\n\n.ec-itemNav__nav li ul li {\n overflow: hidden;\n width: 100%;\n height: auto;\n transition: .3s; }\n @media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul li {\n overflow: hidden;\n height: 0; } }\n\n.ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #E8E8E8;\n padding: 16px 22px 16px 16px;\n font-size: 16px;\n font-weight: bold;\n color: white;\n text-align: left;\n background: black; }\n\n.ec-itemNav__nav > li:hover > a {\n background: #fafafa; }\n\n.ec-itemNav__nav > li:hover li:hover > a {\n background: #333; }\n\n@media only screen and (min-width: 768px) {\n .ec-itemNav__nav > li:hover > ul > li {\n overflow: visible;\n height: auto; } }\n\n.ec-itemNav__nav li ul li ul {\n top: 0;\n left: 100%;\n width: auto; }\n\n@media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul li ul:before {\n content: \"\\f054\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n font-size: 12px;\n color: white;\n position: absolute;\n top: 19px;\n right: auto;\n left: -20px; } }\n\n@media only screen and (min-width: 768px) {\n .ec-itemNav__nav li ul li:hover > ul > li {\n overflow: visible;\n height: auto;\n width: auto; } }\n\n.ec-itemNav__nav li ul li ul li a {\n background: #7D7D7D; }\n\n.ec-itemNav__nav li:hover ul li ul li a:hover {\n background: #333; }\n\n/*\nヘッダー:SPヘッダー\n\nSP時のみ出現するヘッダーに関係するコンポーネントです。
\nex [トップページ](http://demo3.ec-cube.net/)画面サイズが768px以下に該当。
\n
\n`.ec-drawerRole`:SPのドロワー内の要素をwrapするコンポーネントです。
\n`.ec-headerSearch`、`.ec-headerNav`、`.ec-itemNav`は`.ec-drawerRole`の子要素にある場合、ドロワーに適したスタイルに変化します。

\n`.ec-overlayRole`:SPのドロワー出現時にz-indexがドロワー以下の要素に半透明の黒背景をかぶせるコンポーネントです。
\n\nStyleguide 11.2.6\n*/\n.ec-drawerRole {\n overflow-y: scroll;\n background: black;\n width: 260px;\n height: 100vh;\n transform: translateX(-300px);\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1;\n transition: z-index 0ms 1ms; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRole {\n display: none; } }\n .ec-drawerRole .ec-headerSearchArea {\n padding: 20px 10px;\n width: 100%;\n background: #F8F8F8; }\n .ec-drawerRole .ec-headerSearch {\n padding: 16px 8px 26px;\n background: #EBEBEB;\n color: #636378; }\n .ec-drawerRole .ec-headerSearch select {\n width: 100% !important; }\n .ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading {\n border-top: 1px solid #CCCCCC;\n border-bottom: 1px solid #CCCCCC;\n padding: 1em 10px;\n font-size: 16px;\n font-weight: bold;\n color: black;\n background: #F8F8F8; }\n .ec-drawerRole .ec-headerCategoryArea p {\n margin-top: 0;\n margin-bottom: 0; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li a {\n border-bottom: 1px solid #ccc;\n border-bottom: 1px solid #ccc;\n color: black;\n font-weight: normal;\n background: #f8f8f8; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #ccc;\n padding-left: 20px;\n font-weight: normal;\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav > li:hover > a {\n background: #f8f8f8; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav > li:hover li:hover > a {\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li ul li a {\n padding-left: 40px;\n color: black;\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li:hover ul li ul li a:hover {\n background: white; }\n .ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li ul li ul li ul li a {\n padding-left: 60px;\n font-weight: normal; }\n .ec-drawerRole .ec-headerLinkArea {\n background: black; }\n .ec-drawerRole .ec-headerLinkArea .ec-headerLink__list {\n border-top: 1px solid #ccc; }\n .ec-drawerRole .ec-headerLinkArea .ec-headerLink__item {\n display: block;\n border-bottom: 1px solid #ccc;\n padding: 15px 20px;\n font-size: 16px;\n font-weight: bold;\n color: white; }\n .ec-drawerRole .ec-headerLinkArea .ec-headerLink__icon {\n display: inline-block;\n width: 28px;\n font-size: 17px; }\n\n.ec-drawerRoleClose {\n display: none;\n cursor: pointer;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 270px;\n z-index: 1000; }\n .ec-drawerRoleClose .fas {\n vertical-align: top; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRoleClose {\n display: none; } }\n\n.ec-drawerRole.is_active {\n display: block;\n transform: translateX(0);\n transition: all .3s;\n z-index: 100000; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRole.is_active {\n display: none; } }\n\n.ec-drawerRoleClose.is_active {\n display: inline-block;\n transition: all .3s; }\n @media only screen and (min-width: 768px) {\n .ec-drawerRoleClose.is_active {\n display: none; } }\n\n.ec-overlayRole {\n position: fixed;\n width: 100%;\n height: 100vh;\n top: 0;\n left: 0;\n opacity: 0;\n background: transparent;\n transform: translateX(0);\n transition: all .3s;\n visibility: hidden; }\n @media only screen and (min-width: 768px) {\n .ec-overlayRole {\n display: none; } }\n\n.have_curtain .ec-overlayRole {\n display: block;\n opacity: 1;\n background: rgba(0, 0, 0, 0.5);\n visibility: visible; }\n @media only screen and (min-width: 768px) {\n .have_curtain .ec-overlayRole {\n display: none; } }\n\n/*\nヘッダー:test\n\ntest\n\nMarkup:\nspan.ec-itemAccordionParent test1\nul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test2\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test3\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test4\n\nStyleguide 11.2.7\n*/\n.ec-itemNavAccordion {\n display: none; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nフッター\n\n全ページで使用されるフッターのプロジェクトコンポーネントです。\n\nex [トップページ フッター](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerRole\n\nStyleguide 11.3\n*/\n.ec-footerRole {\n border-top: 1px solid #7d7d7d;\n margin-top: 30px;\n background: black; }\n @media only screen and (min-width: 768px) {\n .ec-footerRole {\n padding-top: 40px;\n margin-top: 100px; } }\n @media only screen and (min-width: 768px) {\n .ec-footerRole .ec-footerRole__inner {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-footerRole .ec-footerRole__inner:after {\n content: \" \";\n display: table; }\n .ec-footerRole .ec-footerRole__inner:after {\n clear: both; }\n .ec-footerRole .ec-footerRole__inner textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-footerRole .ec-footerRole__inner img {\n max-width: 100%; }\n .ec-footerRole .ec-footerRole__inner html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-footerRole .ec-footerRole__inner *,\n .ec-footerRole .ec-footerRole__inner *::before,\n .ec-footerRole .ec-footerRole__inner *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-footerRole .ec-footerRole__inner img {\n width: 100%; } }\n\n/*\nフッターナビ\n\nフッタープロジェクトで使用するナビゲーション用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.1\n*/\n.ec-footerNavi {\n padding: 0;\n color: white;\n list-style: none;\n text-align: center; }\n .ec-footerNavi .ec-footerNavi__link {\n display: block; }\n @media only screen and (min-width: 768px) {\n .ec-footerNavi .ec-footerNavi__link {\n display: inline-block; } }\n .ec-footerNavi .ec-footerNavi__link a {\n display: block;\n border-bottom: 1px solid #7d7d7d;\n padding: 15px 0;\n font-size: 14px;\n color: inherit;\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-footerNavi .ec-footerNavi__link a {\n display: inline-block;\n border-bottom: none;\n margin: 0 10px;\n padding: 0;\n text-decoration: underline; } }\n .ec-footerNavi .ec-footerNavi__link:hover a {\n opacity: .8;\n text-decoration: none; }\n\n/*\nフッタータイトル\n\nフッタープロジェクトで使用するタイトル用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerTitle\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.2\n*/\n.ec-footerTitle {\n padding: 40px 0 60px;\n text-align: center;\n color: white; }\n @media only screen and (min-width: 768px) {\n .ec-footerTitle {\n padding: 50px 0 80px; } }\n .ec-footerTitle .ec-footerTitle__logo {\n display: block;\n margin-bottom: 10px;\n font-weight: bold; }\n .ec-footerTitle .ec-footerTitle__logo a {\n color: inherit;\n text-decoration: none; }\n .ec-footerTitle .ec-footerTitle__logo a:hover {\n text-decoration: none; }\n .ec-footerTitle .ec-footerTitle__logo a {\n font-size: 22px;\n color: inherit; }\n @media only screen and (min-width: 768px) {\n .ec-footerTitle .ec-footerTitle__logo a {\n font-size: 24px; } }\n .ec-footerTitle .ec-footerTitle__logo:hover a {\n opacity: .8;\n text-decoration: none; }\n .ec-footerTitle .ec-footerTitle__copyright {\n font-size: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-footerTitle .ec-footerTitle__copyright {\n font-size: 12px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nトップページ\n\nトップページ スライド部に関する Project コンポーネントを定義します。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.1.slider.pug\n+ec-sliderRole\n\nStyleguide 12.1\n*/\n.ec-sliderRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n margin-bottom: 24px; }\n .ec-sliderRole:after {\n content: \" \";\n display: table; }\n .ec-sliderRole:after {\n clear: both; }\n .ec-sliderRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-sliderRole img {\n max-width: 100%; }\n .ec-sliderRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-sliderRole *,\n .ec-sliderRole *::before,\n .ec-sliderRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-sliderRole img {\n width: 100%; }\n .ec-sliderRole ul {\n padding: 0;\n list-style: none; }\n\n.ec-sliderItemRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n margin-bottom: 24px; }\n .ec-sliderItemRole:after {\n content: \" \";\n display: table; }\n .ec-sliderItemRole:after {\n clear: both; }\n .ec-sliderItemRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-sliderItemRole img {\n max-width: 100%; }\n .ec-sliderItemRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-sliderItemRole *,\n .ec-sliderItemRole *::before,\n .ec-sliderItemRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-sliderItemRole img {\n width: 100%; }\n .ec-sliderItemRole ul {\n padding: 0;\n list-style: none; }\n .ec-sliderItemRole .item_nav {\n display: none; }\n @media only screen and (min-width: 768px) {\n .ec-sliderItemRole .item_nav {\n display: flex;\n justify-content: flex-start;\n flex-wrap: wrap;\n margin-bottom: 0; } }\n .ec-sliderItemRole .slideThumb {\n margin-bottom: 25px;\n width: 33%;\n opacity: .8;\n cursor: pointer; }\n .ec-sliderItemRole .slideThumb:focus {\n outline: none; }\n .ec-sliderItemRole .slideThumb:hover {\n opacity: 1; }\n .ec-sliderItemRole .slideThumb img {\n width: 80%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nアイキャッチ\n\nトップページ アイキャッチ部に関する Project コンポーネントを定義します。\n\nex [トップページスライダー直下 アイキャッチ部](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.2.eyecatch.pug\n+ec-eyecatchRole\n\nStyleguide 12.2\n*/\n.ec-eyecatchRole {\n display: flex;\n flex-wrap: wrap;\n margin-bottom: 40px; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole {\n flex-wrap: nowrap; } }\n .ec-eyecatchRole .ec-eyecatchRole__image {\n display: block;\n margin-bottom: 40px;\n width: 100%;\n height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__image {\n order: 2; } }\n .ec-eyecatchRole .ec-eyecatchRole__intro {\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__intro {\n padding-right: 5%;\n order: 1; } }\n .ec-eyecatchRole .ec-eyecatchRole__introEnTitle {\n margin-bottom: .8em;\n font-size: 16px;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__introEnTitle {\n margin-top: 45px; } }\n .ec-eyecatchRole .ec-eyecatchRole__introTitle {\n margin-bottom: .8em;\n font-size: 24px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__introTitle {\n margin-bottom: 1em;\n font-size: 26px; } }\n .ec-eyecatchRole .ec-eyecatchRole__introDescriptiron {\n margin-bottom: 20px;\n font-size: 16px;\n line-height: 2; }\n @media only screen and (min-width: 768px) {\n .ec-eyecatchRole .ec-eyecatchRole__introDescriptiron {\n margin-bottom: 30px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nボタン\n\nトップページで使用されているボタンのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.3\n*/\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nMarkup:\n.ec-inlineBtn--top more\n\nStyleguide 12.3.1\n*/\n.ec-inlineBtn--top {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:focus, .ec-inlineBtn--top.focus, .ec-inlineBtn--top:active:focus, .ec-inlineBtn--top:active.focus, .ec-inlineBtn--top.active:focus, .ec-inlineBtn--top.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-inlineBtn--top:hover, .ec-inlineBtn--top:focus, .ec-inlineBtn--top.focus {\n color: #525263;\n text-decoration: none; }\n .ec-inlineBtn--top:active, .ec-inlineBtn--top.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-inlineBtn--top.disabled, .ec-inlineBtn--top[disabled],\n fieldset[disabled] .ec-inlineBtn--top {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-inlineBtn--top:focus, .ec-inlineBtn--top.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:hover {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:active, .ec-inlineBtn--top.active,\n .open > .ec-inlineBtn--top.dropdown-toggle {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:active:hover, .ec-inlineBtn--top:active:focus, .ec-inlineBtn--top:active.focus, .ec-inlineBtn--top.active:hover, .ec-inlineBtn--top.active:focus, .ec-inlineBtn--top.active.focus,\n .open > .ec-inlineBtn--top.dropdown-toggle:hover,\n .open > .ec-inlineBtn--top.dropdown-toggle:focus,\n .open > .ec-inlineBtn--top.dropdown-toggle.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top:active, .ec-inlineBtn--top.active,\n .open > .ec-inlineBtn--top.dropdown-toggle {\n background-image: none; }\n .ec-inlineBtn--top.disabled:hover, .ec-inlineBtn--top.disabled:focus, .ec-inlineBtn--top.disabled.focus, .ec-inlineBtn--top[disabled]:hover, .ec-inlineBtn--top[disabled]:focus, .ec-inlineBtn--top[disabled].focus,\n fieldset[disabled] .ec-inlineBtn--top:hover,\n fieldset[disabled] .ec-inlineBtn--top:focus,\n fieldset[disabled] .ec-inlineBtn--top.focus {\n background-color: black;\n border-color: black; }\n .ec-inlineBtn--top .badge {\n color: black;\n background-color: white; }\n .ec-inlineBtn--top .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n\n/*\nロングボタン(全幅)\n\nロングタイプのボタンです。\n\nMarkup:\n.ec-blockBtn--top 商品一覧へ\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn--top {\n display: inline-block;\n margin-bottom: 0;\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857;\n border-radius: 0px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding: 10px 16px;\n text-decoration: none;\n color: white;\n background-color: black;\n border-color: black;\n display: block;\n height: 56px;\n line-height: 56px;\n padding-top: 0;\n padding-bottom: 0; }\n .ec-blockBtn--top:focus, .ec-blockBtn--top.focus, .ec-blockBtn--top:active:focus, .ec-blockBtn--top:active.focus, .ec-blockBtn--top.active:focus, .ec-blockBtn--top.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px; }\n .ec-blockBtn--top:hover, .ec-blockBtn--top:focus, .ec-blockBtn--top.focus {\n color: #525263;\n text-decoration: none; }\n .ec-blockBtn--top:active, .ec-blockBtn--top.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }\n .ec-blockBtn--top.disabled, .ec-blockBtn--top[disabled],\n fieldset[disabled] .ec-blockBtn--top {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none; }\n .ec-blockBtn--top:focus, .ec-blockBtn--top.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:hover {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:active, .ec-blockBtn--top.active,\n .open > .ec-blockBtn--top.dropdown-toggle {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:active:hover, .ec-blockBtn--top:active:focus, .ec-blockBtn--top:active.focus, .ec-blockBtn--top.active:hover, .ec-blockBtn--top.active:focus, .ec-blockBtn--top.active.focus,\n .open > .ec-blockBtn--top.dropdown-toggle:hover,\n .open > .ec-blockBtn--top.dropdown-toggle:focus,\n .open > .ec-blockBtn--top.dropdown-toggle.focus {\n color: white;\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top:active, .ec-blockBtn--top.active,\n .open > .ec-blockBtn--top.dropdown-toggle {\n background-image: none; }\n .ec-blockBtn--top.disabled:hover, .ec-blockBtn--top.disabled:focus, .ec-blockBtn--top.disabled.focus, .ec-blockBtn--top[disabled]:hover, .ec-blockBtn--top[disabled]:focus, .ec-blockBtn--top[disabled].focus,\n fieldset[disabled] .ec-blockBtn--top:hover,\n fieldset[disabled] .ec-blockBtn--top:focus,\n fieldset[disabled] .ec-blockBtn--top.focus {\n background-color: black;\n border-color: black; }\n .ec-blockBtn--top .badge {\n color: black;\n background-color: white; }\n .ec-blockBtn--top .ec-icon img {\n width: 1em;\n vertical-align: text-bottom; }\n @media only screen and (min-width: 768px) {\n .ec-blockBtn--top {\n max-width: 260px; } }\n\n/*\n見出し\n\nトップページで使用されている見出しのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.4\n*/\n/*\n横並び見出し\n\n横並びの見出しです。\n\nMarkup:\n.ec-secHeading\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.1\n*/\n.ec-secHeading {\n margin-bottom: 15px;\n color: black; }\n .ec-secHeading .ec-secHeading__en {\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em; }\n .ec-secHeading .ec-secHeading__line {\n display: inline-block;\n margin: 0 20px;\n width: 1px;\n height: 14px;\n background: black; }\n .ec-secHeading .ec-secHeading__ja {\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px; }\n\n/*\n縦並び見出し\n\n縦並びの見出しです。\n\nMarkup:\n.ec-secHeading--tandem\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.2\n*/\n.ec-secHeading--tandem {\n margin-bottom: 15px;\n color: black;\n text-align: center; }\n .ec-secHeading--tandem .ec-secHeading__en {\n display: block;\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em; }\n .ec-secHeading--tandem .ec-secHeading__line {\n display: block;\n margin: 13px auto;\n width: 20px;\n height: 1px;\n background: black; }\n .ec-secHeading--tandem .ec-secHeading__ja {\n display: block;\n margin-bottom: 30px;\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nトピック(アイテム2列)\n\nトップページで使用されているトピックのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.5.1\n*/\n.ec-topicRole {\n padding: 40px 0;\n background: #F8F8F8; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole {\n padding: 60px 0; } }\n .ec-topicRole .ec-topicRole__list {\n display: flex;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole .ec-topicRole__list {\n flex-wrap: nowrap; } }\n .ec-topicRole .ec-topicRole__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole .ec-topicRole__listItem {\n width: calc(100% / 2); }\n .ec-topicRole .ec-topicRole__listItem:not(:last-of-type) {\n margin-right: 30px; } }\n .ec-topicRole .ec-topicRole__listItemTitle {\n margin-top: .5em;\n font-size: 14px;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-topicRole .ec-topicRole__listItemTitle {\n margin-top: 1em; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nカテゴリ(アイテム4列 スマホの時は2列)\n\nトップページで使用されているアイテムリストのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.6.1\n*/\n.ec-newItemRole {\n padding: 40px 0; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole {\n padding: 60px 0; } }\n .ec-newItemRole .ec-newItemRole__list {\n display: flex;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__list {\n flex-wrap: nowrap; } }\n .ec-newItemRole .ec-newItemRole__listItem {\n margin-bottom: 4%;\n width: 48%;\n height: auto; }\n .ec-newItemRole .ec-newItemRole__listItem:not(:first-child) a {\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__listItem {\n margin-bottom: 15px;\n width: calc(100% / 4); }\n .ec-newItemRole .ec-newItemRole__listItem:not(:last-of-type) {\n margin-right: 30px; } }\n .ec-newItemRole .ec-newItemRole__listItem:nth-child(odd) {\n margin-right: 4%; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__listItem:nth-child(odd) {\n margin-right: 30px; } }\n .ec-newItemRole .ec-newItemRole__listItemHeading {\n margin-top: calc(45% - 20px); }\n .ec-newItemRole .ec-newItemRole__listItemTitle {\n margin: 8px 0;\n font-size: 14px;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-newItemRole .ec-newItemRole__listItemTitle {\n margin: 20px 0 10px; } }\n .ec-newItemRole .ec-newItemRole__listItemPrice {\n font-size: 12px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nカテゴリ(アイテム3列)\n\nトップページで使用されているカテゴリのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.7.1\n*/\n.ec-categoryRole {\n padding: 40px 0;\n color: black;\n background: #F8F8F8; }\n @media only screen and (min-width: 768px) {\n .ec-categoryRole {\n padding: 60px 0; } }\n .ec-categoryRole .ec-categoryRole__list {\n display: flex;\n flex-wrap: wrap; }\n @media only screen and (min-width: 768px) {\n .ec-categoryRole .ec-categoryRole__list {\n flex-wrap: nowrap; } }\n .ec-categoryRole .ec-categoryRole__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto; }\n @media only screen and (min-width: 768px) {\n .ec-categoryRole .ec-categoryRole__listItem {\n width: calc(100% / 3); }\n .ec-categoryRole .ec-categoryRole__listItem:not(:last-of-type) {\n margin-right: 30px; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n見出し\n\nトップページで使用されている新着情報のスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.8.1\n*/\n.ec-newsRole {\n padding: 40px 0 0; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole {\n padding: 60px 0 0; } }\n .ec-newsRole .ec-newsRole__news {\n box-sizing: border-box; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__news {\n border: 16px solid #F8F8F8;\n padding: 20px 30px; } }\n .ec-newsRole .ec-newsRole__newsItem {\n width: 100%; }\n .ec-newsRole .ec-newsRole__newsItem:not(:last-of-type) {\n border-bottom: 1px solid #ccc; }\n .ec-newsRole .ec-newsRole__newsItem:last-of-type {\n margin-bottom: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsItem:last-of-type {\n margin-bottom: 0; } }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsItem {\n padding: 20px 0; } }\n .ec-newsRole .ec-newsRole__newsHeading {\n cursor: pointer; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsHeading {\n display: flex; } }\n .ec-newsRole .ec-newsRole__newsDate {\n display: block;\n margin: 15px 0 5px;\n font-size: 12px;\n color: black; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsDate {\n display: inline-block;\n margin: 0;\n min-width: 120px;\n font-size: 14px; } }\n .ec-newsRole .ec-newsRole__newsColumn {\n display: flex; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsColumn {\n display: inline-flex;\n min-width: calc(100% - 120px); } }\n .ec-newsRole .ec-newsRole__newsTitle {\n display: inline-block;\n margin-bottom: 10px;\n width: 90%;\n font-size: 14px;\n font-weight: bold;\n color: #7D7D7D;\n line-height: 1.6; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsTitle {\n margin-bottom: 0;\n line-height: 1.8; } }\n .ec-newsRole .ec-newsRole__newsClose {\n display: inline-block;\n width: 10%;\n position: relative; }\n .ec-newsRole .ec-newsRole__newsCloseBtn {\n display: inline-block;\n margin-left: auto;\n border-radius: 50%;\n width: 20px;\n height: 20px;\n color: white;\n text-align: center;\n background: black;\n cursor: pointer;\n position: absolute;\n right: 5px; }\n .ec-newsRole .ec-newsRole__newsDescription {\n display: none;\n margin: 0 0 10px;\n font-size: 14px;\n line-height: 1.4;\n overflow: hidden; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole .ec-newsRole__newsDescription {\n margin: 20px 0 0;\n line-height: 1.8; } }\n .ec-newsRole .ec-newsRole__newsDescription a {\n color: #0092C4; }\n .ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription {\n margin: 0 0 10px; }\n @media only screen and (min-width: 768px) {\n .ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription {\n margin: 20px 0 0; } }\n .ec-newsRole__newsItem.is_active .ec-newsRole__newsCloseBtn i {\n display: inline-block;\n transform: rotateX(180deg) translateY(2px); }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n検索ラベル\n\n商品一覧 ヘッダー部 に関する Project コンポーネントを定義します。\n\nex [商品一覧 ヘッダー部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.1.searchnav.pug\n+ec-searchnavRole__topicpath\n+ec-searchnavRole__info\n\nStyleguide 13.1\n\n*/\n.ec-searchnavRole {\n margin-bottom: 0;\n padding: 0; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-searchnavRole:after {\n content: \" \";\n display: table; }\n .ec-searchnavRole:after {\n clear: both; }\n .ec-searchnavRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-searchnavRole img {\n max-width: 100%; }\n .ec-searchnavRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-searchnavRole *,\n .ec-searchnavRole *::before,\n .ec-searchnavRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-searchnavRole img {\n width: 100%; } }\n .ec-searchnavRole .ec-searchnavRole__infos {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n border-top: 0;\n margin-bottom: 16px;\n padding-top: 5px;\n flex-direction: column; }\n .ec-searchnavRole .ec-searchnavRole__infos:after {\n content: \" \";\n display: table; }\n .ec-searchnavRole .ec-searchnavRole__infos:after {\n clear: both; }\n .ec-searchnavRole .ec-searchnavRole__infos textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-searchnavRole .ec-searchnavRole__infos img {\n max-width: 100%; }\n .ec-searchnavRole .ec-searchnavRole__infos html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-searchnavRole .ec-searchnavRole__infos *,\n .ec-searchnavRole .ec-searchnavRole__infos *::before,\n .ec-searchnavRole .ec-searchnavRole__infos *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-searchnavRole .ec-searchnavRole__infos img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole .ec-searchnavRole__infos {\n padding-left: 0;\n padding-right: 0;\n border-top: 1px solid #ccc;\n padding-top: 16px;\n flex-direction: row; } }\n .ec-searchnavRole .ec-searchnavRole__counter {\n margin-bottom: 16px;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole .ec-searchnavRole__counter {\n margin-bottom: 0;\n width: 50%; } }\n .ec-searchnavRole .ec-searchnavRole__actions {\n text-align: right;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-searchnavRole .ec-searchnavRole__actions {\n width: 50%; } }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n商品一覧\n\n商品一覧 に関する Project コンポーネントを定義します。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2\n\n*/\n.ec-shelfRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-shelfRole:after {\n content: \" \";\n display: table; }\n .ec-shelfRole:after {\n clear: both; }\n .ec-shelfRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-shelfRole img {\n max-width: 100%; }\n .ec-shelfRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-shelfRole *,\n .ec-shelfRole *::before,\n .ec-shelfRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-shelfRole img {\n width: 100%; }\n\n/*\n商品一覧グリッド\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2.1\n\n*/\n.ec-shelfGrid {\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none; }\n .ec-shelfGrid a {\n color: inherit;\n text-decoration: none; }\n .ec-shelfGrid a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid {\n margin-left: -16px;\n margin-right: -16px; } }\n .ec-shelfGrid .ec-shelfGrid__item {\n margin-bottom: 36px;\n width: 50%;\n display: flex;\n flex-direction: column; }\n .ec-shelfGrid .ec-shelfGrid__item-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item-image {\n height: 250px; } }\n .ec-shelfGrid .ec-shelfGrid__item img {\n width: auto;\n max-height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item {\n padding: 0 16px;\n width: 25%; } }\n .ec-shelfGrid .ec-shelfGrid__item .ec-productRole__btn {\n margin-top: auto;\n margin-bottom: 15px; }\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(odd) {\n padding-right: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(odd) {\n padding: 0 16px; } }\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {\n padding-left: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {\n padding: 0 16px; } }\n .ec-shelfGrid .ec-shelfGrid__title {\n margin-bottom: 7px; }\n .ec-shelfGrid .ec-shelfGrid__plice {\n font-weight: bold; }\n\n/*\n13.2.2 商品一覧グリッド(中央寄せ)\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n商品のあまりはセンタリングされ、中央に表示されます。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGridCenter\n\nStyleguide 13.2.2\n\n*/\n.ec-shelfGridCenter {\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n justify-content: center; }\n .ec-shelfGridCenter a {\n color: inherit;\n text-decoration: none; }\n .ec-shelfGridCenter a:hover {\n text-decoration: none; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter {\n margin-left: -16px;\n margin-right: -16px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item {\n margin-bottom: 36px;\n width: 50%; }\n .ec-shelfGridCenter .ec-shelfGridCenter__item-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item-image {\n height: 250px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item img {\n width: auto;\n max-height: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item {\n padding: 0 16px;\n width: 25%; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item .ec-productRole__btn {\n margin-top: auto;\n padding-top: 1em; }\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(odd) {\n padding-right: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(odd) {\n padding: 0 16px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even) {\n padding-left: 8px; }\n @media only screen and (min-width: 768px) {\n .ec-shelfGridCenter .ec-shelfGridCenter__item:nth-child(even) {\n padding: 0 16px; } }\n .ec-shelfGridCenter .ec-shelfGridCenter__title {\n margin-bottom: 7px; }\n .ec-shelfGridCenter .ec-shelfGridCenter__plice {\n font-weight: bold; }\n\n/*\n商品一覧フッター\n\n商品一覧 フッター に関する Project コンポーネントを定義します。\n\nex [商品一覧 ページャ部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.3.pager.pug\n+ec-pagerRole\n\nStyleguide 13.3\n\n*/\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nカート追加モーダル\n\nカート追加モーダルに関する Project コンポーネントを定義します。\n\nex [商品一覧、商品詳細](http://demo3.ec-cube.net/products/list)\n\n+ec-modal\n\nStyleguide 13.4\n\n*/\n.ec-modal {\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n z-index: 99999;\n width: 100%;\n height: 100%; }\n .ec-modal.small {\n width: 30%; }\n .ec-modal.full {\n width: 100%;\n height: 100%; }\n .ec-modal .ec-modal-overlay {\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: rgba(0, 0, 0, 0.3);\n width: 100%;\n height: 100%; }\n .ec-modal .ec-modal-wrap {\n position: relative;\n border-radius: 2px;\n border: 1px solid #333;\n background-color: #fff;\n width: 90%;\n margin: 20px;\n padding: 40px 5px; }\n @media only screen and (min-width: 768px) {\n .ec-modal .ec-modal-wrap {\n padding: 40px 10px;\n width: 50%;\n margin: 20px auto; } }\n .ec-modal .ec-modal-close {\n cursor: pointer;\n position: absolute;\n right: 20px;\n top: 10px;\n font-size: 20px;\n height: 30px;\n width: 20px; }\n .ec-modal .ec-modal-close:hover {\n color: #4b5361; }\n .ec-modal .ec-modal-box {\n text-align: center; }\n .ec-modal .ec-role {\n margin-top: 20px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n商品詳細\n\n商品詳細ページに関する Project コンポーネントを定義します。\n\nex [商品詳細ページ](http://demo3.ec-cube.net/products/detail/18)\n\n\nMarkup:\ninclude /assets/tmpl/elements/14.1.product.pug\n+ec-productSimpleRole\n\nStyleguide 14.1\n*/\n.ec-productRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-productRole:after {\n content: \" \";\n display: table; }\n .ec-productRole:after {\n clear: both; }\n .ec-productRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-productRole img {\n max-width: 100%; }\n .ec-productRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-productRole *,\n .ec-productRole *::before,\n .ec-productRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-productRole img {\n width: 100%; }\n .ec-productRole .ec-productRole__img {\n margin-right: 0;\n margin-bottom: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__img {\n margin-right: 16px;\n margin-bottom: 0; } }\n .ec-productRole .ec-productRole__profile {\n margin-left: 0; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__profile {\n margin-left: 16px; } }\n .ec-productRole .ec-productRole__title .ec-headingTitle {\n font-size: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__title .ec-headingTitle {\n font-size: 32px; } }\n .ec-productRole .ec-productRole__tags {\n margin-top: 16px;\n padding: 0;\n padding-bottom: 16px;\n border-bottom: 1px dotted #ccc; }\n .ec-productRole .ec-productRole__tag {\n display: inline-block;\n padding: 2px 5px;\n list-style: none;\n font-size: 80%;\n color: #525263;\n border: solid 1px #D7DADD;\n border-radius: 3px;\n background-color: #F5F7F8; }\n .ec-productRole .ec-productRole__priceRegular {\n padding-top: 14px; }\n .ec-productRole .ec-productRole__priceRegularTax {\n margin-left: 5px;\n font-size: 10px; }\n .ec-productRole .ec-productRole__price {\n color: #DE5D50;\n font-size: 28px;\n padding: 0;\n border-bottom: 0; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__price {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc; } }\n .ec-productRole .ec-productRole__code {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc; }\n .ec-productRole .ec-productRole__category {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc; }\n .ec-productRole .ec-productRole__category a {\n color: #33A8D0; }\n .ec-productRole .ec-productRole__category ul {\n list-style: none;\n padding: 0;\n margin: 0; }\n .ec-productRole .ec-productRole__actions {\n padding: 14px 0; }\n .ec-productRole .ec-productRole__actions .ec-select select {\n height: 40px;\n max-width: 100%;\n min-width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__actions .ec-select select {\n min-width: 350px;\n max-width: 350px; } }\n .ec-productRole .ec-productRole__btn {\n width: 100%;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-productRole .ec-productRole__btn {\n width: 60%;\n margin-bottom: 16px;\n min-width: 350px; } }\n .ec-productRole .ec-productRole__description {\n margin-bottom: 16px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\nカート\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [カートページ](http://demo3.ec-cube.net/shopping)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartRole\n\nStyleguide 15.1\n\n*/\n.ec-cartRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end; }\n .ec-cartRole:after {\n content: \" \";\n display: table; }\n .ec-cartRole:after {\n clear: both; }\n .ec-cartRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-cartRole img {\n max-width: 100%; }\n .ec-cartRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-cartRole *,\n .ec-cartRole *::before,\n .ec-cartRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-cartRole img {\n width: 100%; }\n .ec-cartRole::before {\n display: none; }\n .ec-cartRole .ec-cartRole__progress {\n width: 100%;\n text-align: center; }\n .ec-cartRole .ec-cartRole__error {\n width: 100%;\n text-align: center; }\n .ec-cartRole .ec-cartRole__error .ec-alert-warning {\n max-width: 80%;\n display: inline-block; }\n .ec-cartRole .ec-cartRole__totalText {\n margin-bottom: 0;\n padding: 16px 0 6px;\n width: 100%;\n text-align: center;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__totalText {\n margin-bottom: 30px;\n padding: 0; } }\n .ec-cartRole .ec-cartRole__cart {\n margin: 0;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__cart {\n margin: 0 10%; } }\n .ec-cartRole .ec-cartRole__actions {\n text-align: right;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__actions {\n width: 20%;\n margin-right: 10%; } }\n .ec-cartRole .ec-cartRole__total {\n padding: 15px 0 30px;\n font-weight: bold;\n font-size: 16px; }\n .ec-cartRole .ec-cartRole__totalAmount {\n margin-left: 30px;\n color: #de5d50;\n font-size: 16px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRole .ec-cartRole__totalAmount {\n font-size: 24px; } }\n .ec-cartRole .ec-blockBtn--action {\n margin-bottom: 10px; }\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品をを表示するテーブル枠です。\n\nex [カートページ テーブル部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartTable\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 15.1.2\n*/\n.ec-cartTable {\n display: table;\n border-top: 1px dotted #ccc;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-cartTable {\n border-top: none; } }\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品を表示するテーブルのヘッダです。\nスマホでは非表示となります。\n\nex [カートページ カートテーブルヘッダ部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartHeader\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.3\n*/\n.ec-cartHeader {\n display: none;\n width: 100%;\n background: #F4F3F0; }\n @media only screen and (min-width: 768px) {\n .ec-cartHeader {\n display: table-row; } }\n .ec-cartHeader .ec-cartHeader__label {\n display: table-cell;\n padding: 16px;\n text-align: center;\n background: #F4F3F0;\n overflow-x: hidden;\n font-weight: bold; }\n\n.ec-cartCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-cartCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-cartCompleteRole:after {\n clear: both; }\n .ec-cartCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-cartCompleteRole img {\n max-width: 100%; }\n .ec-cartCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-cartCompleteRole *,\n .ec-cartCompleteRole *::before,\n .ec-cartCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-cartCompleteRole img {\n width: 100%; }\n\n/*\nカート内商品\n\nカート内のアイテムを表示するテーブル行です。\nスマホでは非表示となります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRow\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.4\n*/\n.ec-cartRow {\n display: table-row; }\n .ec-cartRow .ec-cartRow__delColumn {\n border-bottom: 1px dotted #ccc;\n text-align: center;\n display: table-cell;\n width: 14%;\n vertical-align: middle; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__delColumn {\n width: 8.3333333%; } }\n .ec-cartRow .ec-cartRow__delColumn .ec-icon img {\n width: 1.5em;\n height: 1.5em; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__delColumn .ec-icon img {\n width: 1em;\n height: 1em; } }\n .ec-cartRow .ec-cartRow__contentColumn {\n border-bottom: 1px dotted #ccc;\n padding: 10px 0;\n display: table; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__contentColumn {\n display: table-cell; } }\n .ec-cartRow .ec-cartRow__img {\n display: table-cell;\n width: 40%;\n vertical-align: middle;\n padding-right: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__img {\n display: inline-block;\n min-width: 80px;\n max-width: 100px;\n padding-right: 0; } }\n .ec-cartRow .ec-cartRow__summary {\n display: table-cell;\n margin-left: 5px;\n font-weight: bold;\n vertical-align: middle;\n width: 46%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__summary {\n display: inline-block;\n margin-left: 20px;\n vertical-align: middle; } }\n .ec-cartRow .ec-cartRow__summary .ec-cartRow__name {\n margin-bottom: 5px; }\n .ec-cartRow .ec-cartRow__summary .ec-cartRow__sutbtotalSP {\n display: block;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__summary .ec-cartRow__sutbtotalSP {\n display: none; } }\n .ec-cartRow .ec-cartRow__amountColumn {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n vertical-align: middle;\n text-align: center;\n width: 20%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn {\n width: 16.66666667%; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amount {\n display: none;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amount {\n display: block; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP {\n display: block;\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountSP {\n display: none; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpDown {\n display: flex;\n justify-content: center; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpDown {\n display: block; } }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpButton {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountUpButton .ec-cartRow__amountUpButton__icon img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButton, .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButton .ec-cartRow__amountDownButton__icon img, .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled .ec-cartRow__amountDownButton__icon img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%; }\n .ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled {\n cursor: default; }\n .ec-cartRow .ec-cartRow__subtotalColumn {\n display: none;\n border-bottom: 1px dotted #ccc;\n text-align: right;\n width: 16.66666667%; }\n @media only screen and (min-width: 768px) {\n .ec-cartRow .ec-cartRow__subtotalColumn {\n display: table-cell; } }\n\n/*\nカート内商品(商品が1の場合)\n\n商品が1の場合はカート商品を減らす「-」ボタンの無効化状態になります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRowOnly\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.5\n*/\n.ec-cartRow .ec-cartRow__amountColumn .ec-cartRow__amountDownButtonDisabled {\n cursor: default; }\n\n/*\nアラート\n\nカート内の商品に問題があることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartRole\n .ec-cartRole__cart\n +ec-alert-warning\n\nStyleguide 15.1.6\n*/\n.ec-alert-warning {\n width: 100%;\n padding: 10px;\n text-align: center;\n background: #F99;\n margin-bottom: 20px; }\n .ec-alert-warning .ec-alert-warning__icon {\n display: inline-block;\n margin-right: 1rem;\n width: 20px;\n height: 20px;\n color: #fff;\n fill: #fff;\n vertical-align: top; }\n .ec-alert-warning .ec-alert-warning__text {\n display: inline-block;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n position: relative; }\n\n/*\nアラート(空)\n\nカートが空であることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-off3Grid\n .ec-off3Grid__cell\n +ec-alert-warningEnpty\n\nStyleguide 15.1.7\n*/\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n注文内容確認\n\nカート内 注文内容確認に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/shopping)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderRole\n\nStyleguide 15.2\n*/\n.ec-orderRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n display: flex;\n flex-direction: column;\n margin-top: 0; }\n .ec-orderRole:after {\n content: \" \";\n display: table; }\n .ec-orderRole:after {\n clear: both; }\n .ec-orderRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-orderRole img {\n max-width: 100%; }\n .ec-orderRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-orderRole *,\n .ec-orderRole *::before,\n .ec-orderRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-orderRole img {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole {\n margin-top: 20px;\n flex-direction: row; } }\n .ec-orderRole .ec-inlineBtn {\n font-weight: normal; }\n .ec-orderRole .ec-orderRole__detail {\n padding: 0;\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole .ec-orderRole__detail {\n padding: 0 16px;\n width: 66.66666%; } }\n .ec-orderRole .ec-orderRole__summary {\n width: 100%; }\n .ec-orderRole .ec-orderRole__summary .ec-inlineBtn {\n display: inline-block; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole .ec-orderRole__summary {\n width: 33.33333%;\n padding: 0 16px; }\n .ec-orderRole .ec-orderRole__summary .ec-inlineBtn {\n display: none; } }\n .ec-orderRole .ec-borderedList {\n margin-bottom: 20px;\n border-top: 1px dotted #ccc; }\n @media only screen and (min-width: 768px) {\n .ec-orderRole .ec-borderedList {\n border-top: none; } }\n\n/*\n注文履歴詳細 オーダ情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderInfo\n\nStyleguide 15.2.1\n*/\n.ec-orderOrder {\n margin-bottom: 30px; }\n .ec-orderOrder .ec-orderOrder__items {\n border-bottom: 1px dotted #ccc;\n border-top: 1px dotted #ccc; }\n\n/*\n注文履歴詳細 お客様情報\n\nマイページ 注文詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAccount\n\nStyleguide 15.2.2\n*/\n.ec-orderAccount {\n margin-bottom: 30px; }\n .ec-orderAccount p {\n margin-bottom: 0; }\n .ec-orderAccount:after {\n content: \" \";\n display: table; }\n .ec-orderAccount:after {\n clear: both; }\n .ec-orderAccount .ec-orderAccount__change {\n display: inline-block;\n margin-left: 10px;\n float: right; }\n .ec-orderAccount .ec-orderAccount__account {\n margin-bottom: 16px; }\n\n/*\n注文詳細 配送情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 配送情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderDelivery\n\nStyleguide 15.2.3\n*/\n.ec-orderDelivery .ec-orderDelivery__title {\n padding: 16px 0 17px;\n font-weight: bold;\n font-size: 18px;\n position: relative; }\n\n.ec-orderDelivery .ec-orderDelivery__change {\n display: inline-block;\n position: absolute;\n right: 0;\n top: 0; }\n\n.ec-orderDelivery .ec-orderDelivery__items {\n border-bottom: 1px dotted #ccc;\n border-top: 1px dotted #ccc; }\n\n.ec-orderDelivery .ec-orderDelivery__address {\n margin: 10px 0 18px; }\n .ec-orderDelivery .ec-orderDelivery__address p {\n margin: 0; }\n\n/*\n注文履歴詳細 支払情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 支払情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderPayment\n .ec-rectHeading\n h2 お支払方法\n p 支払方法: 郵便振替\n\nStyleguide 15.2.4\n*/\n/*\n注文履歴詳細 お問い合わせ\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ お問い合わせ(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderConfirm\n .ec-rectHeading\n h2 お問い合わせ\n p 記載なし\n\nStyleguide 15.2.5\n*/\n.ec-orderConfirm {\n margin-bottom: 20px; }\n @media only screen and (min-width: 768px) {\n .ec-orderConfirm {\n margin-bottom: 0; } }\n .ec-orderConfirm .ec-input textarea, .ec-orderConfirm .ec-halfInput textarea, .ec-orderConfirm .ec-numberInput textarea, .ec-orderConfirm .ec-zipInput textarea, .ec-orderConfirm .ec-telInput textarea, .ec-orderConfirm .ec-select textarea, .ec-orderConfirm .ec-birth textarea {\n height: 96px; }\n\n/*\nお届け先の複数指定\n\nお届け先の複数指定に関するコンポーネントを定義します。\n\nex [マイページ お届け先の複数指定](http://demo3.ec-cube.net/shopping/shipping_multiple)\n(商品購入画面 → 「お届け先を追加する」を押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAddAddress\n\nStyleguide 15.2.6\n*/\n.ec-AddAddress {\n padding: 0 10px; }\n @media only screen and (min-width: 768px) {\n .ec-AddAddress {\n margin: 0 10%; } }\n .ec-AddAddress .ec-AddAddress__info {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px; }\n .ec-AddAddress .ec-AddAddress__add {\n border-top: 1px solid #f4f4f4;\n padding-top: 20px;\n margin-bottom: 20px; }\n .ec-AddAddress .ec-AddAddress__item {\n display: table;\n padding: 16px;\n background: #f4f4f4;\n margin-bottom: 16px; }\n .ec-AddAddress .ec-AddAddress__itemThumb {\n display: table-cell;\n min-width: 160px;\n width: 20%; }\n .ec-AddAddress .ec-AddAddress__itemThumb img {\n width: 100%; }\n .ec-AddAddress .ec-AddAddress__itemtContent {\n display: table-cell;\n vertical-align: middle;\n padding-left: 16px;\n font-size: 16px; }\n .ec-AddAddress .ec-AddAddress__itemtTitle {\n font-weight: bold;\n margin-bottom: 10px; }\n .ec-AddAddress .ec-AddAddress__itemtSize {\n margin-bottom: 10px; }\n .ec-AddAddress .ec-AddAddress__select {\n margin-bottom: 5px; }\n .ec-AddAddress .ec-AddAddress__selectAddress {\n display: inline-block; }\n .ec-AddAddress .ec-AddAddress__selectAddress label {\n font-size: 16px;\n font-weight: normal; }\n .ec-AddAddress .ec-AddAddress__selectAddress select {\n min-width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-AddAddress .ec-AddAddress__selectAddress select {\n min-width: 350px; } }\n .ec-AddAddress .ec-AddAddress__selectNumber {\n display: inline-block;\n margin-left: 30px; }\n .ec-AddAddress .ec-AddAddress__selectNumber label {\n font-size: 16px;\n font-weight: normal; }\n .ec-AddAddress .ec-AddAddress__selectNumber input {\n display: inline-block;\n margin-left: 10px;\n width: 80px; }\n .ec-AddAddress .ec-AddAddress__actions .ec-blockBtn--action {\n margin-bottom: 8px; }\n .ec-AddAddress .ec-AddAddress__new {\n margin-bottom: 20px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/*\n注文履歴一覧\n\nマイページ 注文履歴部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole\n\nStyleguide 16.1\n*/\n.ec-historyRole .ec-historyRole__contents {\n padding-top: 1em;\n padding-bottom: 16px;\n border-top: 1px solid #ccc;\n display: flex;\n flex-direction: column;\n color: #525263; }\n @media only screen and (min-width: 768px) {\n .ec-historyRole .ec-historyRole__contents {\n flex-direction: row; } }\n\n.ec-historyRole .ec-historyRole__header {\n width: 100%; }\n @media only screen and (min-width: 768px) {\n .ec-historyRole .ec-historyRole__header {\n width: 33.3333%; } }\n\n.ec-historyRole .ec-historyRole__detail {\n border-top: 1px dotted #ccc;\n width: 100%; }\n .ec-historyRole .ec-historyRole__detail .ec-imageGrid:nth-of-type(1) {\n border-top: none; }\n .ec-historyRole .ec-historyRole__detail .ec-historyRole__detailTitle {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold; }\n .ec-historyRole .ec-historyRole__detail .ec-historyRole__detailPrice {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold; }\n @media only screen and (min-width: 768px) {\n .ec-historyRole .ec-historyRole__detail {\n width: 66.6666%;\n border-top: none; } }\n\n/*\n注文履歴一覧 規格\n\nマイページ 注文履歴内アイテムの規格を定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole-option\n\nStyleguide 16.1.1\n*/\n.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailOption {\n display: inline-block;\n margin-bottom: 8px;\n margin-right: .5rem;\n font-size: 1.6rem; }\n\n.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailOption::after {\n display: inline-block;\n padding-left: .5rem;\n content: \"/\";\n font-weight: bold; }\n\n/*\n注文履歴一覧ヘッダ\n\n注文履歴一覧で使用するヘッダのコンポーネントを定義します。\n\nex [マイページ 注文履歴一覧ヘッダ](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyHeader\np hofe\n\nStyleguide 16.1.2\n*/\n.ec-historyListHeader .ec-historyListHeader__date {\n font-weight: bold;\n font-size: 16px; }\n @media only screen and (min-width: 768px) {\n .ec-historyListHeader .ec-historyListHeader__date {\n font-weight: bold;\n font-size: 20px; } }\n\n.ec-historyListHeader .ec-historyListHeader__action {\n margin: 16px 0; }\n .ec-historyListHeader .ec-historyListHeader__action a {\n font-size: 12px;\n font-weight: normal; }\n @media only screen and (min-width: 768px) {\n .ec-historyListHeader .ec-historyListHeader__action a {\n font-size: 14px; } }\n\n/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n注文履歴詳細\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailRole\n\nStyleguide 16.2\n*/\n/*\n注文履歴詳細 メール履歴\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMail\n\nStyleguide 16.2.5\n*/\n.ec-orderMails .ec-orderMails__item {\n padding-bottom: 10px;\n border-bottom: 1px dotted #ccc; }\n\n.ec-orderMails .ec-orderMails__time {\n margin: 0; }\n\n.ec-orderMails .ec-orderMails__body {\n display: none; }\n\n/*\n注文履歴詳細 メール履歴個別\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴個別](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMailHistory\n\nStyleguide 16.2.6\n*/\n.ec-orderMail {\n padding-bottom: 10px;\n border-bottom: 1px dotted #ccc;\n margin-bottom: 16px; }\n .ec-orderMail .ec-orderMail__time {\n margin: 0; }\n .ec-orderMail .ec-orderMail__body {\n display: none; }\n .ec-orderMail .ec-orderMail__time {\n margin-bottom: 4px; }\n .ec-orderMail .ec-orderMail__link {\n margin-bottom: 4px; }\n .ec-orderMail .ec-orderMail__link a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n .ec-orderMail .ec-orderMail__link a:hover {\n color: #33A8D0; }\n .ec-orderMail .ec-orderMail__close a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer; }\n .ec-orderMail .ec-orderMail__close a:hover {\n color: #33A8D0; }\n\n/*\n住所一覧\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [マイページ内 お届け先編集](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\ninclude /assets/tmpl/elements/17.1.address.pug\n+ec-addressList\n+ec-addressRole\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 17.1\n\n*/\n.ec-addressRole .ec-addressRole__item {\n border-top: 1px dotted #ccc; }\n\n.ec-addressRole .ec-addressRole__actions {\n margin-top: 32px;\n padding-bottom: 20px;\n border-bottom: 1px dotted #ccc; }\n\n.ec-addressList .ec-addressList__item {\n display: table;\n width: 100%;\n position: relative;\n border-bottom: 1px dotted #ccc; }\n\n.ec-addressList .ec-addressList__remove {\n vertical-align: middle;\n padding: 16px;\n text-align: center; }\n .ec-addressList .ec-addressList__remove .ec-icon img {\n width: 1em;\n height: 1em; }\n\n.ec-addressList .ec-addressList__address {\n display: table-cell;\n vertical-align: middle;\n padding: 16px;\n margin-right: 4em;\n width: 80%; }\n\n.ec-addressList .ec-addressList__action {\n position: relative;\n vertical-align: middle;\n text-align: right;\n top: 27px;\n padding-right: 10px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nパスワードリセット\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [パスワードリセット画面](http://demo3.ec-cube.net/forgot)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/18.1.password.pug\n+ec-passwordRole\n\nStyleguide 18.1\n\n*/\n.ec-forgotRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-forgotRole:after {\n content: \" \";\n display: table; }\n .ec-forgotRole:after {\n clear: both; }\n .ec-forgotRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-forgotRole img {\n max-width: 100%; }\n .ec-forgotRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-forgotRole *,\n .ec-forgotRole *::before,\n .ec-forgotRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-forgotRole img {\n width: 100%; }\n .ec-forgotRole .ec-forgotRole__intro {\n font-size: 16px; }\n .ec-forgotRole .ec-forgotRole__form {\n margin-bottom: 16px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n会員登録\n\n新規会員登録 に関する Project コンポーネントを定義します。\n\nex [新規会員登録画面 会員登録](http://demo3.ec-cube.net/entry)\n\nMarkup:\ninclude /assets/tmpl/elements/19.1.register.pug\n+ec-registerRole\n\nStyleguide 19.1\n\n*/\n.ec-registerRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-registerRole:after {\n content: \" \";\n display: table; }\n .ec-registerRole:after {\n clear: both; }\n .ec-registerRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-registerRole img {\n max-width: 100%; }\n .ec-registerRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-registerRole *,\n .ec-registerRole *::before,\n .ec-registerRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-registerRole img {\n width: 100%; }\n .ec-registerRole .ec-registerRole__actions {\n padding-top: 20px;\n text-align: center; }\n @media only screen and (min-width: 768px) {\n .ec-registerRole .ec-registerRole__actions {\n text-align: left; } }\n .ec-registerRole .ec-registerRole__actions p {\n margin-bottom: 16px; }\n .ec-registerRole .ec-blockBtn--action {\n margin-bottom: 16px; }\n\n.ec-registerCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-registerCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-registerCompleteRole:after {\n clear: both; }\n .ec-registerCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-registerCompleteRole img {\n max-width: 100%; }\n .ec-registerCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-registerCompleteRole *,\n .ec-registerCompleteRole *::before,\n .ec-registerCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-registerCompleteRole img {\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nお問い合わせ\n\nお問い合わせ に関する Project コンポーネントを定義します。\n\nex [お問い合わせ](http://demo3.ec-cube.net/contact)\n\nMarkup:\ninclude /assets/tmpl/elements/19.2.contact.pug\n+ec-contactRole\n\nStyleguide 19.2\n\n*/\n.ec-contactRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactRole:after {\n content: \" \";\n display: table; }\n .ec-contactRole:after {\n clear: both; }\n .ec-contactRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactRole img {\n max-width: 100%; }\n .ec-contactRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactRole *,\n .ec-contactRole *::before,\n .ec-contactRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactRole img {\n width: 100%; }\n .ec-contactRole .ec-contactRole__actions {\n padding-top: 20px; }\n .ec-contactRole p {\n margin: 16px 0; }\n\n.ec-contactConfirmRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactConfirmRole:after {\n content: \" \";\n display: table; }\n .ec-contactConfirmRole:after {\n clear: both; }\n .ec-contactConfirmRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactConfirmRole img {\n max-width: 100%; }\n .ec-contactConfirmRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactConfirmRole *,\n .ec-contactConfirmRole *::before,\n .ec-contactConfirmRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactConfirmRole img {\n width: 100%; }\n .ec-contactConfirmRole .ec-contactConfirmRole__actions {\n padding-top: 20px; }\n .ec-contactConfirmRole .ec-blockBtn--action {\n margin-bottom: 16px; }\n\n.ec-contactCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-contactCompleteRole:after {\n clear: both; }\n .ec-contactCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactCompleteRole img {\n max-width: 100%; }\n .ec-contactCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactCompleteRole *,\n .ec-contactCompleteRole *::before,\n .ec-contactCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactCompleteRole img {\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\nお客様情報の入力\n\nログインせずゲストとして商品を購入する際の、お客様情報の入力 に関する Project コンポーネントを定義します。\n\nex [カートSTEP2 お客様情報の入力(ゲスト購入)](http://demo3.ec-cube.net/shopping/nonmember)\n\nMarkup:\ninclude /assets/tmpl/elements/19.3.customer.pug\n+ec-customerRole\nhoge\n\nStyleguide 19.3\n\n*/\n.ec-customerRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-customerRole:after {\n content: \" \";\n display: table; }\n .ec-customerRole:after {\n clear: both; }\n .ec-customerRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-customerRole img {\n max-width: 100%; }\n .ec-customerRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-customerRole *,\n .ec-customerRole *::before,\n .ec-customerRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-customerRole img {\n width: 100%; }\n .ec-customerRole .ec-customerRole__actions {\n padding-top: 20px; }\n .ec-customerRole .ec-blockBtn--action {\n margin-bottom: 10px; }\n @media only screen and (min-width: 768px) {\n .ec-customerRole .ec-blockBtn--action {\n margin-bottom: 16px; } }\n\n.ec-contactConfirmRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactConfirmRole:after {\n content: \" \";\n display: table; }\n .ec-contactConfirmRole:after {\n clear: both; }\n .ec-contactConfirmRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactConfirmRole img {\n max-width: 100%; }\n .ec-contactConfirmRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactConfirmRole *,\n .ec-contactConfirmRole *::before,\n .ec-contactConfirmRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactConfirmRole img {\n width: 100%; }\n .ec-contactConfirmRole .ec-contactConfirmRole__actions {\n padding-top: 20px; }\n .ec-contactConfirmRole .ec-blockBtn--action {\n margin-bottom: 16px; }\n\n.ec-contactCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px; }\n .ec-contactCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-contactCompleteRole:after {\n clear: both; }\n .ec-contactCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-contactCompleteRole img {\n max-width: 100%; }\n .ec-contactCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-contactCompleteRole *,\n .ec-contactCompleteRole *::before,\n .ec-contactCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-contactCompleteRole img {\n width: 100%; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n visibility: hidden; }\n 100% {\n opacity: 1;\n visibility: visible; } }\n\n@keyframes fadeOut {\n 0% {\n opacity: 1;\n visibility: visible; }\n 100% {\n opacity: 0;\n visibility: hidden; } }\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1; }\n\n/*\n404ページ\n\n404 エラー画面で使用するページコンポーネントです。\n\nex [404エラー画面](http://demo3.ec-cube.net/404)\n\nMarkup:\ninclude /assets/tmpl/elements/20.1.404.pug\n+ec-404Role\n\nStyleguide 20.1\n\n*/\n.ec-404Role {\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n height: 100vh;\n background-color: #f2f2f2;\n text-align: center;\n box-sizing: border-box; }\n .ec-404Role textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-404Role img {\n max-width: 100%; }\n .ec-404Role html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-404Role *,\n .ec-404Role *::before,\n .ec-404Role *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-404Role img {\n width: 100%; }\n .ec-404Role .ec-404Role__icon img {\n width: 1em;\n height: 1em; }\n .ec-404Role .ec-404Role__title {\n font-weight: bold;\n font-size: 25px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n退会手続き\n\n退会手続きで使用するページコンポーネントです。\n\nex [退会手続き](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawRole\n\nStyleguide 21.1\n\n*/\n.ec-withdrawRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n text-align: center;\n padding: 0 16px; }\n .ec-withdrawRole:after {\n content: \" \";\n display: table; }\n .ec-withdrawRole:after {\n clear: both; }\n .ec-withdrawRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-withdrawRole img {\n max-width: 100%; }\n .ec-withdrawRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-withdrawRole *,\n .ec-withdrawRole *::before,\n .ec-withdrawRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-withdrawRole img {\n width: 100%; }\n .ec-withdrawRole .ec-withdrawRole__title {\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px; }\n .ec-withdrawRole .ec-withdrawRole__description {\n margin-bottom: 32px;\n font-size: 16px; }\n .ec-withdrawRole .ec-icon img {\n width: 100px;\n height: 100px; }\n\n/*\n退会手続き実行確認\n\n退会手続き実行確認で使用するページコンポーネントです。\n\nex [退会手続き 退会手続きへボタン→押下](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawConfirm\n\nStyleguide 21.1.2\n\n*/\n.ec-withdrawConfirmRole .ec-withdrawConfirmRole__cancel {\n margin-bottom: 20px; }\n\n.ec-withdrawConfirmRole .ec-withdrawConfirmRole__title {\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px; }\n\n.ec-withdrawConfirmRole .ec-withdrawConfirmRole__description {\n margin-bottom: 32px;\n font-size: 16px; }\n\n.ec-withdrawConfirmRole .ec-icon img {\n width: 100px;\n height: 100px; }\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n/*\n会員情報編集完了\n\n会員情報編集完了で使用するページコンポーネントです。\n\nex [会員情報編集完了](http://demo3.ec-cube.net/mypage/change_complete)\n\nMarkup:\ninclude /assets/tmpl/elements/22.1.editComplete.pug\n+ec-userEditCompleteRole\n\nStyleguide 22.1\n\n*/\n.ec-userEditCompleteRole {\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n width: 100%;\n max-width: 1130px;\n text-align: center;\n padding: 0 16px; }\n .ec-userEditCompleteRole:after {\n content: \" \";\n display: table; }\n .ec-userEditCompleteRole:after {\n clear: both; }\n .ec-userEditCompleteRole textarea {\n /* for chrome fontsize bug */\n font-family: sans-serif; }\n .ec-userEditCompleteRole img {\n max-width: 100%; }\n .ec-userEditCompleteRole html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n .ec-userEditCompleteRole *,\n .ec-userEditCompleteRole *::before,\n .ec-userEditCompleteRole *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n .ec-userEditCompleteRole img {\n width: 100%; }\n .ec-userEditCompleteRole .ec-userEditCompleteRole__title {\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px; }\n @media only screen and (min-width: 768px) {\n .ec-userEditCompleteRole .ec-userEditCompleteRole__title {\n font-size: 32px; } }\n .ec-userEditCompleteRole .ec-userEditCompleteRole__description {\n margin-bottom: 32px;\n font-size: 16px; }\n","@import \"../mixins/media\";\n/*\n文字装飾\n\n文字装飾をするためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.2\n*/\n\n/*\nテキストリンク\n\nテキストリンクのスタイルです。\n\nMarkup:\na(href=\"#\").ec-link さくらのクラウド\n\nStyleguide 1.2.1\n*/\n.ec-link {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n &:hover {\n color: #33A8D0;\n text-decoration: none;\n }\n}\n\n/*\nテキスト(太字)\n\nテキストを太くするためのスタイルです。\n\nMarkup:\np.ec-font-bold この季節にぴったりな商品をご用意しました\n\nStyleguide 1.2.2\n*/\n\n.ec-font-bold {\n font-weight: bold;\n}\n\n/*\nテキスト(グレー)\n\nテキストをグレーにするためのスタイルです。\n\nMarkup:\np.ec-color-grey 青色が美しい職人が仕上げた吹きガラス\n\nStyleguide 1.2.3\n*/\n\n.ec-color-grey {\n color: #9a947e;\n}\n\n/*\nテキスト(赤)\n\nテキストを赤にするためのスタイルです。\n\nMarkup:\np.ec-color-red ¥ 2,728 税込\np.ec-color-accent ¥ 2,728 税込\n\nStyleguide 1.2.4\n*/\n\n.ec-color-red {\n color: #DE5D50;\n}\n\n.ec-color-accent {\n color: #DE5D50;\n}\n\n/*\nフォントサイズ\n\nフォントサイズを指定するためのスタイルです。\n\nMarkup:\n.ec-font-size-1 さわやかな日差しが過ごしやすい季節\n.ec-font-size-2 さわやかな日差しが過ごしやすい季節\n.ec-font-size-3 さわやかな日差しが過ごしやすい季節\n.ec-font-size-4 さわやかな日差しが過ごしやすい季節\n.ec-font-size-5 さわやかな日差しが過ごしやすい季節\n.ec-font-size-6 さわやかな日差しが過ごしやすい季節\n\n\nStyleguide 1.2.5\n*/\n\n.ec-font-size-1 {\n font-size: 12px;\n}\n\n.ec-font-size-2 {\n font-size: 14px;\n}\n\n.ec-font-size-3 {\n font-size: 16px;\n}\n\n.ec-font-size-4 {\n font-size: 20px;\n}\n\n.ec-font-size-5 {\n font-size: 32px;\n}\n\n.ec-font-size-6 {\n font-size: 40px;\n}\n\n/*\nテキスト水平位置\n\nテキストをセンタリングするためのスタイルです。\n\nMarkup:\np.ec-text-ac さわやかな日差しが過ごしやすい季節\n\nStyleguide 1.2.6\n*/\n\n.ec-text-ac {\n text-align: center;\n}\n\n/*\n価格テキスト\n\n価格を表示するテキストです。\n\n価格文字にスペースを取るほか、税込み等の表示を小さくする効果もあります。\n\nspanを用いたインライン要素として利用します。\n\nMarkup:\ndiv(style=\"color:#DE5D50;font-size:28px\")\n span.ec-price\n span.ec-price__unit ¥\n span.ec-price__price 1,280\n span.ec-price__tax 税込\n\nStyleguide 1.2.7\n*/\n.ec-price {\n & &__unit {\n font-size: 18px;\n font-weight: bold;\n @include media_desktop{\n font-size: 1em;\n }\n }\n & &__price {\n display: inline-block;\n padding: 0 .3em;\n font-size: 18px;\n font-weight: bold;\n @include media_desktop{\n font-size: 1em;\n }\n }\n & &__tax {\n font-size: 12px;\n @include media_desktop{\n font-size: 0.57em;\n }\n }\n\n}\n\n/*\nテキストの位置\n\nテキストや、入れ子にしたインライン要素を\n「左揃え」「中央揃え」「右揃え」に設定することができます。\n\nMarkup:\nh3 左揃え\np.text-left\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 中央揃え\np.text-center\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\nbr\nh3 右揃え\np.text-right\n | Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt praesentium repellat sapiente suscipit, unde veniam! Doloribus error, expedita id impedit iusto qui sint totam? Aspernatur error facere possimus quam quos?\n\nStyleguide 1.2.8\n*/\n.text-left {\n text-align: left;\n}\n\n.text-center {\n text-align: center;\n}\n\n.text-right {\n text-align: right;\n}\n\n/*\nメッセージテキスト\n\nユーザが行った操作に対する、完了報告やエラー表示のページで使用されるテキストのスタイルです。\n\nex [注文完了 (ログイン後、カートに商品を入れ注文完了まで行う)](http://demo3.ec-cube.net/shopping/)\n\nMarkup:\n.ec-reportHeading\n h2 ご注文ありがとうございました\np.ec-reportDescription\n | ただいま、ご注文の確認メールをお送りさせていただきました。\n br\n | 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n br\n | 今後ともご愛顧賜りますようよろしくお願い申し上げます。\n\n\nStyleguide 1.2.9\n*/\n.ec-reportDescription {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px;\n line-height: 1.4;\n}\n\n/*\nテキスト下部のスペース\n\nテキストの下に余白を追加することができます。 .ec-para-normalで16pxの余白をつけることができます。\n\nMarkup:\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\np.ec-para-normal 万一、ご確認メールが届かない場合は、トラブルの可能性もありますので大変お手数ではございますがもう一度お問い合わせいただくか、お電話にてお問い合わせくださいませ。\n\nStyleguide 1.2.10\n*/\n.ec-para-normal {\n margin-bottom: 16px;\n}\n","@import \"../mixins/media\";\n\n/*\nリスト\n\nシンプルなリストを構成するためのスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 1.3\n*/\n\n/*\n水平定義リスト\n\nシンプルな定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 水平定義リスト部分](http://demo3.ec-cube.net/help/about)\n\nMarkup:\ndl.ec-definitions\n dt 店名\n dd EC-CUBE3 DEMO SHOP\ndl.ec-definitions\n dt 会社名\n dd EC-CUBE3\ndl.ec-definitions--soft\n dt 所在地\n dd 〒 550-0001\n\nStyleguide 1.3.1\n*/\n.ec-definitions {\n margin: 5px 0;\n display: block;\n & dt, dd {\n display: inline-block;\n margin: 0;\n }\n & dt {\n font-weight: bold;\n }\n}\n\n.ec-definitions--soft {\n @extend .ec-definitions;\n & dt {\n font-weight: normal;\n }\n}\n\n/*\n下線つき定義リスト\n\n線が添えられた定義リストのスタイルを定義します。\n\ndl要素を用いてコーディングします。\n\nex [当サイトについて 下線つき定義リスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt 店名\n dd EC-CUBE3 DEMO SHOP\n dl\n dt 会社名\n dd EC-CUBE3\n dl\n dt 所在地\n dd 〒550 - 0001\n\nStyleguide 1.3.2\n*/\n\n.ec-borderedDefs {\n width: 100%;\n border-top: 1px dotted #ccc;\n margin-bottom:16px;\n dl {\n display: flex;\n border-bottom: 1px dotted #ccc;\n margin: 0;\n padding: 10px 0 0;\n flex-wrap: wrap;\n @include media_desktop {\n flex-wrap: nowrap;\n padding: 15px 0 4px;\n }\n }\n dt, dd {\n padding: 0;\n }\n\n dt {\n font-weight: normal;\n width: 100%;\n padding-top: 0;\n @include media_desktop {\n padding-top: 14px;\n width: 30%;\n }\n }\n\n dd {\n padding: 0;\n width: 100%;\n line-height: 2.5;\n @include media_desktop {\n width: 70%;\n //padding: 18px 16px;\n line-height: 3;\n }\n }\n p {\n line-height: 1.4;\n }\n}\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0;\n\n dt, dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 0;\n @include media_desktop {\n padding: 16px 0;\n }\n }\n\n dt {\n width: 30%;\n }\n\n dd {\n padding: 0;\n @include media_desktop {\n padding: 16px;\n }\n }\n}\n\n/*\nボーダーリスト\n\n線が添えられたリストを表示します。\n\nex [当サイトについて ボーダーリスト](http://demo3.ec-cube.net/help/about)\n\nMarkup:\nul.ec-borderedList\n li: p lorem\n li: p lorem\n li: p lorem\n\n\nStyleguide 1.3.3\n*/\n\n.ec-borderedList {\n width: 100%;\n border-top: 0;\n list-style: none;\n padding: 0;\n @include media_desktop {\n border-top: 1px dotted #ccc;\n }\n li {\n border-bottom: 1px dotted #ccc;\n }\n}\n\n.ec-list-chilled {\n display: table-row;\n border: 0 none;\n padding: 8px 0;\n\n dt, dd {\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n padding: 16px 0;\n }\n\n dt {\n width: 30%;\n }\n\n dd {\n padding: 16px;\n }\n}\n","@import \"../mixins/btn\";\n/*\nボタンサイズ\n\nボタンサイズを変更するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.1\n*/\n\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nex [トップページ ボタン部分](http://demo3.ec-cube.net/)\n\nMarkup:\n.ec-inlineBtn 住所検索\n.ec-inlineBtn--primary もっと見る\n.ec-inlineBtn--action カートに入れる\n.ec-inlineBtn--cancel キャンセル\n\nStyleguide 2.1.1\n*/\n.ec-inlineBtn{\n @include btn-default;\n}\n.ec-inlineBtn--primary{\n @include btn-primary\n}\n.ec-inlineBtn--action{\n @include btn-action\n}\n.ec-inlineBtn--cancel{\n @include btn-cancel\n}\n\n/*\nブロックボタン(全幅)\n\nボタンサイズは em で指定するため、テキストサイズの変更でボタンサイズを変更できます。\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\np: .ec-blockBtn 住所検索\np: .ec-blockBtn--primary もっと見る\np: .ec-blockBtn--action カートに入れる\np: .ec-blockBtn--cancel キャンセル\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn{\n @include blockBtn-default;\n}\n.ec-blockBtn--primary{\n @include blockBtn-primary\n}\n.ec-blockBtn--action{\n @include blockBtn-action\n}\n.ec-blockBtn--cancel{\n @include blockBtn-cancel\n}\n","@import \"../mixins/variables\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/buttons\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/opacity\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/vendor-prefixes\";\n\n$padding-base-vertical: 6px !default;\n\n\n$btn-primary-bg: #5CB1B1;\n$btn-primary-color: #fff;\n$btn-action-bg: #DE5D50;\n$btn-action-color: #fff;\n$btn-cancel-bg: #525263;\n$btn-cancel-color: #fff;\n$btn-default-bg: #F5F7F8;\n$btn-default-color: #525263;\n\n$btn-border-radius-base: 0px;\n\n\n@mixin _btn($color, $background, $border){\n display: inline-block;\n margin-bottom: 0; // For input.btn\n font-weight: bold;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n white-space: nowrap;\n @include button-size($padding-base-vertical, $padding-base-horizontal, $font-size-base, $line-height-base, $btn-border-radius-base);\n @include user-select(none);\n padding: 10px 16px;\n text-decoration: none;\n\n &,\n &:active,\n &.active {\n &:focus,\n &.focus {\n @include tab-focus;\n }\n }\n\n &:hover,\n &:focus,\n &.focus {\n color: $btn-default-color;\n text-decoration: none;\n }\n\n &:active,\n &.active {\n outline: 0;\n background-image: none;\n @include box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n cursor: $cursor-disabled;\n @include opacity(.65);\n @include box-shadow(none);\n }\n\n @include button-variant($color, $background, $border);\n // [converter] extracted a& to a.btn\n\n .ec-icon img {\n width: 1em;\n vertical-align: text-bottom;\n }\n}\n\n@mixin btn-default(){\n @include _btn($btn-default-color, $btn-default-bg, $btn-default-border)\n}\n@mixin btn-action(){\n @include _btn($btn-action-color, $btn-action-bg, $btn-action-bg)\n}\n@mixin btn-cancel(){\n @include _btn($btn-cancel-color, $btn-cancel-bg, $btn-cancel-bg)\n}\n@mixin btn-primary(){\n @include _btn($btn-primary-color, $btn-primary-bg, $btn-primary-bg)\n}\n\n@mixin blockBtn-default(){\n @include _btn($btn-default-color, $btn-default-bg, $btn-default-border);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n@mixin blockBtn-action(){\n @include _btn($btn-action-color, $btn-action-bg, $btn-action-bg);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n@mixin blockBtn-cancel(){\n @include _btn($btn-cancel-color, $btn-cancel-bg, $btn-cancel-bg);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n@mixin blockBtn-primary(){\n @include _btn($btn-primary-color, $btn-primary-bg, $btn-primary-bg);\n display: block;\n width: 100%;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n}\n\n// User select\n// For selecting text on the page\n\n@mixin user-select($select) {\n -webkit-user-select: $select;\n -moz-user-select: $select;\n -ms-user-select: $select; // IE10+\n user-select: $select;\n}\n\n\n\n\n@mixin linkBtn{\n &.disabled,\n fieldset[disabled] & {\n pointer-events: none; // Future-proof disabling of clicks on `` elements\n }\n}\n","// Button variants\n//\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for all buttons\n\n@mixin button-variant($color, $background, $border) {\n color: $color;\n background-color: $background;\n border-color: $border;\n\n &:focus,\n &.focus {\n color: $color;\n background-color: darken($background, 10%);\n border-color: darken($border, 25%);\n }\n &:hover {\n color: $color;\n background-color: darken($background, 10%);\n border-color: darken($border, 12%);\n }\n &:active,\n &.active,\n .open > &.dropdown-toggle {\n color: $color;\n background-color: darken($background, 10%);\n border-color: darken($border, 12%);\n\n &:hover,\n &:focus,\n &.focus {\n color: $color;\n background-color: darken($background, 17%);\n border-color: darken($border, 25%);\n }\n }\n &:active,\n &.active,\n .open > &.dropdown-toggle {\n background-image: none;\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus,\n &.focus {\n background-color: $background;\n border-color: $border;\n }\n }\n\n .badge {\n color: $background;\n background-color: $color;\n }\n}\n\n// Button sizes\n@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {\n padding: $padding-vertical $padding-horizontal;\n font-size: $font-size;\n line-height: $line-height;\n border-radius: $border-radius;\n}\n","// WebKit-style focus\n\n@mixin tab-focus() {\n // WebKit-specific. Other browsers will keep their default outline style.\n // (Initially tried to also force default via `outline: initial`,\n // but that seems to erroneously remove the outline in Firefox altogether.)\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n@mixin animation($animation) {\n -webkit-animation: $animation;\n -o-animation: $animation;\n animation: $animation;\n}\n@mixin animation-name($name) {\n -webkit-animation-name: $name;\n animation-name: $name;\n}\n@mixin animation-duration($duration) {\n -webkit-animation-duration: $duration;\n animation-duration: $duration;\n}\n@mixin animation-timing-function($timing-function) {\n -webkit-animation-timing-function: $timing-function;\n animation-timing-function: $timing-function;\n}\n@mixin animation-delay($delay) {\n -webkit-animation-delay: $delay;\n animation-delay: $delay;\n}\n@mixin animation-iteration-count($iteration-count) {\n -webkit-animation-iteration-count: $iteration-count;\n animation-iteration-count: $iteration-count;\n}\n@mixin animation-direction($direction) {\n -webkit-animation-direction: $direction;\n animation-direction: $direction;\n}\n@mixin animation-fill-mode($fill-mode) {\n -webkit-animation-fill-mode: $fill-mode;\n animation-fill-mode: $fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n@mixin backface-visibility($visibility) {\n -webkit-backface-visibility: $visibility;\n -moz-backface-visibility: $visibility;\n backface-visibility: $visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n@mixin box-shadow($shadow...) {\n -webkit-box-shadow: $shadow; // iOS <4.3 & Android <4.1\n box-shadow: $shadow;\n}\n\n// Box sizing\n@mixin box-sizing($boxmodel) {\n -webkit-box-sizing: $boxmodel;\n -moz-box-sizing: $boxmodel;\n box-sizing: $boxmodel;\n}\n\n// CSS3 Content Columns\n@mixin content-columns($column-count, $column-gap: $grid-gutter-width) {\n -webkit-column-count: $column-count;\n -moz-column-count: $column-count;\n column-count: $column-count;\n -webkit-column-gap: $column-gap;\n -moz-column-gap: $column-gap;\n column-gap: $column-gap;\n}\n\n// Optional hyphenation\n@mixin hyphens($mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: $mode;\n -moz-hyphens: $mode;\n -ms-hyphens: $mode; // IE10+\n -o-hyphens: $mode;\n hyphens: $mode;\n}\n\n// Placeholder text\n@mixin placeholder($color: $input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: $color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: $color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: $color; } // Safari and Chrome\n}\n\n// Transformations\n@mixin scale($ratio...) {\n -webkit-transform: scale($ratio);\n -ms-transform: scale($ratio); // IE9 only\n -o-transform: scale($ratio);\n transform: scale($ratio);\n}\n\n@mixin scaleX($ratio) {\n -webkit-transform: scaleX($ratio);\n -ms-transform: scaleX($ratio); // IE9 only\n -o-transform: scaleX($ratio);\n transform: scaleX($ratio);\n}\n@mixin scaleY($ratio) {\n -webkit-transform: scaleY($ratio);\n -ms-transform: scaleY($ratio); // IE9 only\n -o-transform: scaleY($ratio);\n transform: scaleY($ratio);\n}\n@mixin skew($x, $y) {\n -webkit-transform: skewX($x) skewY($y);\n -ms-transform: skewX($x) skewY($y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX($x) skewY($y);\n transform: skewX($x) skewY($y);\n}\n@mixin translate($x, $y) {\n -webkit-transform: translate($x, $y);\n -ms-transform: translate($x, $y); // IE9 only\n -o-transform: translate($x, $y);\n transform: translate($x, $y);\n}\n@mixin translate3d($x, $y, $z) {\n -webkit-transform: translate3d($x, $y, $z);\n transform: translate3d($x, $y, $z);\n}\n@mixin rotate($degrees) {\n -webkit-transform: rotate($degrees);\n -ms-transform: rotate($degrees); // IE9 only\n -o-transform: rotate($degrees);\n transform: rotate($degrees);\n}\n@mixin rotateX($degrees) {\n -webkit-transform: rotateX($degrees);\n -ms-transform: rotateX($degrees); // IE9 only\n -o-transform: rotateX($degrees);\n transform: rotateX($degrees);\n}\n@mixin rotateY($degrees) {\n -webkit-transform: rotateY($degrees);\n -ms-transform: rotateY($degrees); // IE9 only\n -o-transform: rotateY($degrees);\n transform: rotateY($degrees);\n}\n@mixin perspective($perspective) {\n -webkit-perspective: $perspective;\n -moz-perspective: $perspective;\n perspective: $perspective;\n}\n@mixin perspective-origin($perspective) {\n -webkit-perspective-origin: $perspective;\n -moz-perspective-origin: $perspective;\n perspective-origin: $perspective;\n}\n@mixin transform-origin($origin) {\n -webkit-transform-origin: $origin;\n -moz-transform-origin: $origin;\n -ms-transform-origin: $origin; // IE9 only\n transform-origin: $origin;\n}\n\n\n// Transitions\n\n@mixin transition($transition...) {\n -webkit-transition: $transition;\n -o-transition: $transition;\n transition: $transition;\n}\n@mixin transition-property($transition-property...) {\n -webkit-transition-property: $transition-property;\n transition-property: $transition-property;\n}\n@mixin transition-delay($transition-delay) {\n -webkit-transition-delay: $transition-delay;\n transition-delay: $transition-delay;\n}\n@mixin transition-duration($transition-duration...) {\n -webkit-transition-duration: $transition-duration;\n transition-duration: $transition-duration;\n}\n@mixin transition-timing-function($timing-function) {\n -webkit-transition-timing-function: $timing-function;\n transition-timing-function: $timing-function;\n}\n@mixin transition-transform($transition...) {\n -webkit-transition: -webkit-transform $transition;\n -moz-transition: -moz-transform $transition;\n -o-transition: -o-transform $transition;\n transition: transform $transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n@mixin user-select($select) {\n -webkit-user-select: $select;\n -moz-user-select: $select;\n -ms-user-select: $select; // IE10+\n user-select: $select;\n}\n","// Opacity\n\n@mixin opacity($opacity) {\n opacity: $opacity;\n // IE8 filter\n $opacity-ie: ($opacity * 100);\n filter: alpha(opacity=$opacity-ie);\n}\n","@import \"../mixins/variables\";\n/*\nアイコンボタン\n\nSVGアイコンを用いたアイコンボタンです。\n\nsg-wrapper:\n
\n \n\nStyleguide 2.2\n*/\n\n/*\nアイコンボタン\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\na.ec-closeBtn\n .ec-icon\n img(src='/moc/icon/cross.svg', alt='close')\n\nStyleguide 2.2.1\n*/\n.ec-closeBtn{\n cursor: pointer;\n .ec-icon {\n img {\n //overflow: hidden;\n display: inline-block;\n margin-right: 5px;\n width: 1em;\n height: 1em;\n position: relative;\n top: -1px;\n vertical-align: middle;\n }\n }\n}\n\n/*\nアイコンボタン(○)\n\n閉じるなどSVGアイコンを用いたボタン装飾で利用します。\n\nex [ログイン画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/login)\n\n\n\nex [お届け先編集画面 ☓ボタン部分](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\na.ec-closeBtn--circle\n .ec-icon\n img(src='/moc/icon/cross-white.svg', alt='close')\n\nStyleguide 2.2.2\n*/\n\n.ec-closeBtn--circle{\n display: block;\n border: 0 none;\n padding: 0;\n margin: 0;\n text-shadow: none;\n box-shadow: none;\n border-radius: 50%;\n background: #B8BEC4;\n cursor: pointer;\n width: 40px;\n min-width: 40px;\n max-width: 40px;\n height: 40px;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n\n .ec-icon img{\n display: block;\n margin-top: -.5em;\n margin-left: -.5em;\n width: 1em;\n height: 1em;\n position: absolute;\n top: 50%;\n left: 50%;\n }\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/media\";\n@import \"../mixins/btn\";\n\n/*\nその他のボタン\n\n通常のボタンや、アイコンボタン以外のボタンを定義します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 2.3\n*/\n\n\n/*\nページトップボタン\n\nページトップボタンを表示します\n\nex [商品詳細ページ カートボタン部分](http://demo3.ec-cube.net/products/detail/30)\n\nMarkup:\n.ec-blockTopBtn\n\nStyleguide 2.3.1\n*/\n.ec-blockTopBtn{\n display: none;\n position: fixed;\n width:120px;\n height: 40px;\n right: 0;\n bottom: 10px;\n cursor: pointer;\n color: #FFFFFF;\n text-align: center;\n line-height: 40px;\n opacity: 0.8;\n background-color: #9da3a9;\n @include media_desktop {\n right:30px;\n bottom: 30px;\n }\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/forms\";\n@import \"../mixins/media\";\n/*\nフォーム部品(テキスト)\n\nテキストや数値の入力項目に関する要素を定義します。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 3.1\n*/\n\n\n\n/*\nフォーム\n\n`.ec-input` 要素は全ての入力項目に関する標準的なコンポーネントクラスです。\n\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-input\n input(type=\"number\")\np.ec-input\n textarea(rows=\"6\")\n\nStyleguide 3.1.1\n*/\n.ec-input{\n @include forms-reset;\n @include form-controls;\n input{\n height: 40px;\n margin-bottom: 10px;\n @include media_desktop {\n margin-bottom: 16px;\n }\n }\n textarea {\n height: auto;\n min-height: 100px;\n }\n p {\n line-height: 1.4;\n }\n .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: $clrRed;\n }\n}\n.error.ec-input {\n input,select{\n margin-bottom: 5px;\n border-color: #CF3F34;\n background: #FDF1F0;\n }\n}\n\n.ec-checkbox{\n .ec-errorMessage {\n margin-bottom: 25px;\n font-size: 12px;\n font-weight: bold;\n color: $clrRed;\n }\n}\n.error.ec-checkbox {\n input, label{\n border-color: #CF3F34;\n background: #FDF1F0;\n }\n}\n\n/*\nフォーム(text2つ)\n\n姓名など2つ入力させたい入力項目で使用します。\n\n入力フォームを半分で用意したいときにも利用可能です。\n\nex [会員情報編集画面 フォーム部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\np.ec-halfInput\n input(type=\"text\")\n input(type=\"text\")\np.ec-halfInput\n input(type=\"text\")\n\nStyleguide 3.1.2\n*/\n.ec-halfInput{\n @extend .ec-input;\n input[type='text']{\n display: inline-block;\n width: 47%;\n margin-left: 2%;\n @include media_desktop {\n margin-left: 15px;\n width: 45%;\n }\n }\n input[type='text']:first-child{\n margin-left: 0;\n }\n}\n\n/*\n数量ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [商品詳細画面 数量ボタン部分](http://demo3.ec-cube.net/products/detail/27)\n\nMarkup:\n.ec-numberInput\n span 数量\n input(type=\"number\",value=\"0\")\n\nStyleguide 3.1.3\n*/\n.ec-numberInput{\n @extend .ec-input;\n input[type='number']{\n display: inline-block;\n width: auto;\n max-width: 100px;\n text-align: right;\n }\n}\n/*\n郵便番号フォーム\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 郵便番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-zipInput\n span 〒\n input(type=\"text\")\n.ec-zipInputHelp\n a(href=\"http://www.post.japanpost.jp/zipcode/\" target=\"_blank\")\n .ec-zipInputHelp__icon\n .ec-icon\n img(src='/moc/icon/question-white.svg', alt='')\n span 郵便番号検索\n.ec-zipAuto\n a.ec-inlineBtn 郵便番号から自動入力\n\nStyleguide 3.1.4\n*/\n.ec-zipInput{\n @extend .ec-input;\n display: inline-block;\n input{\n display: inline-block;\n text-align: left;\n width: auto;\n max-width: 8em;\n font-size: 16px;\n }\n span{\n display: inline-block;\n padding: 0 5px 0 3px;\n margin-left:5px;\n }\n}\n.ec-zipInputHelp {\n display: inline-block;\n margin-left: 10px;\n margin-bottom: 16px;\n vertical-align: baseline;\n line-height: 0;\n .ec-zipInputHelp__icon {\n display: inline-block;\n margin-top: -10px;\n width:20px;\n height:20px;\n background: #525263;\n border-radius: 50%;\n font-size: 13px;\n position: relative;\n top: -6px;\n .ec-icon img{\n width: 1em;\n height: 1em;\n position: relative;\n left: 3px;\n top: 3px;\n }\n }\n span {\n margin-left: 8px;\n display: inline-block;\n color: #0092C4;\n vertical-align: 3px;\n }\n}\n.ec-zipAuto {\n margin-bottom: 16px;\n .ec-inlineBtn {\n font-weight: normal;\n }\n}\n/*\n電話番号ボタン\n\n数量を表示するための小さなコンポーネントです。\n\n内部に input 要素を配置してコーディングします。\n\nex [会員情報編集画面 電話番号部分](http://demo3.ec-cube.net/mypage/change)\n\nMarkup:\n.ec-telInput\n input(type=\"text\")\n\nStyleguide 3.1.5\n*/\n.ec-telInput{\n @extend .ec-input;\n input {\n max-width: 10em;\n text-align: left;\n }\n}\n","@import \"./variables\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/forms\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/vendor-prefixes\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n\n@mixin forms-reset{\n input[type=\"search\"] {\n @include box-sizing(border-box);\n }\n\n // Position radios and checkboxes better\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n }\n\n input[type=\"file\"] {\n display: block;\n }\n\n // Make range inputs behave like textual form controls\n input[type=\"range\"] {\n display: block;\n width: 100%;\n }\n\n // Make multiple select elements height not fixed\n select[multiple],\n select[size] {\n height: auto;\n }\n\n // Focus for file, radio, and checkbox\n input[type=\"file\"]:focus,\n input[type=\"radio\"]:focus,\n input[type=\"checkbox\"]:focus {\n @include tab-focus;\n }\n\n}\n\n@mixin _form-control{\n display: block;\n width: 100%;\n height: $input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: $padding-base-vertical $padding-base-horizontal;\n font-size: $font-size-base;\n line-height: $line-height-base;\n color: $input-color;\n background-color: $input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid $input-border;\n border-radius: $input-border-radius; // Note: This has no effect on s in CSS.\n -webkit-appearance: none;\n @include box-shadow(none);\n @include transition(border-color ease-in-out .15s, box-shadow ease-in-out .15s);\n\n // Customize the `:focus` state to imitate native WebKit styles.\n @include form-control-focus;\n\n // Placeholder\n @include placeholder;\n\n // Unstyle the caret on ``\n// element gets special love because it's special, and that's a fact!\n// [converter] $parent hack\n@mixin input-size($parent, $input-height, $padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {\n #{$parent} {\n height: $input-height;\n padding: $padding-vertical $padding-horizontal;\n font-size: $font-size;\n line-height: $line-height;\n border-radius: $border-radius;\n }\n\n select#{$parent} {\n height: $input-height;\n line-height: $input-height;\n }\n\n textarea#{$parent},\n select[multiple]#{$parent} {\n height: auto;\n }\n}\n","@import \"../mixins/projects\";\n@import \"../mixins/forms\";\n@import \"./3.1.inputText\";\n/*\nフォーム部品(その他)\n\nフォーム部品でテキストの入力以外の動作要素を定義します。\n\nsg-wrapper:\n
\n \n\nStyleguide 3.2\n*/\n\n/*\nラジオ(水平)\n\n水平に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 性別選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-radio\n label\n input(type=\"radio\")\n span 男性\n label\n input(type=\"radio\")\n span 女性\n\nStyleguide 3.2.2\n*/\n.ec-radio{\n label{\n margin-right:20px;\n }\n input{\n margin-right: 10px;\n margin-bottom: 10px;\n }\n span{\n font-weight: normal;\n }\n\n}\n\n/*\nラジオ(垂直)\n\n垂直に並ぶラジオボタンフィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [購入画面 お支払方法](http://demo3.ec-cube.net/shopping)\n\nMarkup:\n.ec-blockRadio\n label\n input(type=\"radio\")\n span 郵便振替\n label\n input(type=\"radio\")\n span 現金書留\n label\n input(type=\"radio\")\n span 銀行振込\n label\n input(type=\"radio\")\n span 代金引換\n\nStyleguide 3.2.3\n*/\n.ec-blockRadio{\n label{\n display: block;\n }\n span {\n padding-left: 10px;\n font-weight: normal;\n }\n}\n/*\nセレクトボックス\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 都道府県選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-select\n select\n option 都道府県を選択\n option 北海道\n option 青森県\n option 岩手県\n option ...\n.ec-select\n select\n option 選択して下さい\n option 公務員\n option コンサルタント\n option コンピュータ関連技術職\n option コンピュータ関連以外の技術職\n option ...\n\nStyleguide 3.2.4\n*/\n.ec-selects {\n margin-bottom: 20px;\n @include borderBottom;\n}\n.ec-select{\n @extend .ec-input;\n margin-bottom: 16px;\n select{\n display: inline-block;\n width: auto;\n background-color: rgb(248, 248, 248);\n -webkit-appearance: menulist;\n -moz-appearance: menulist;\n &:focus {\n box-shadow: none;\n }\n }\n label{\n margin-right: 10px;\n font-weight: bold;\n }\n label:nth-child(3){\n margin-left: 10px;\n font-weight: bold;\n }\n}\n.ec-select__delivery {\n display: block;\n margin-right: 16px;\n @include media_desktop {\n display: inline-block;\n }\n}\n.ec-select__time {\n display: block;\n @include media_desktop {\n display: inline-block;\n }\n}\n\n/*\n生年月日選択\n\n数量を表示するための小さなコンポーネントです。\n\n数値表示に最適化するため、数字は右端揃えで表示されます。\n\nex [新規会員登録画面 生年月日選択部分](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-birth\n select\n option ----\n option 1960\n option 1961\n option 1962\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n span /\n select\n option --\n option 01\n option 02\n option 03\n option ...\n\nStyleguide 3.2.5\n*/\n.ec-birth{\n @extend .ec-input;\n select{\n display: inline-block;\n width: auto;\n margin: 0 0 10px;\n background-color: rgb(248, 248, 248);\n -webkit-appearance: menulist;\n -moz-appearance: menulist;\n &:focus {\n box-shadow: none;\n }\n @include media_desktop{\n margin: 0 8px 10px;\n }\n }\n span{\n margin-left:5px;\n }\n}\n\n/*\nチェックボックス (水平)\n\n水平に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nex [新規会員登録画面 利用規約](http://demo3.ec-cube.net/entry)\n\nMarkup:\n.ec-checkbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.6\n*/\n.ec-checkbox{\n label{\n display: inline-block;\n }\n input{\n margin-bottom: 10px;\n }\n span{\n font-weight: normal;\n }\n\n}\n\n/*\nチェックボックス (垂直)\n\n垂直に並ぶチェックボックス フィールドです。\n\n各要素をlabelでくくって、コーディングします。\n\nMarkup:\n.ec-blockCheckbox\n label\n input(type=\"checkbox\")\n span 利用規約に同意する\n\nStyleguide 3.2.7\n*/\n.ec-blockCheckbox{\n label{\n display: block;\n }\n span {\n font-weight: normal;\n }\n}\n","/**\n * ECCUBE 固有のスタイルユーティリティ\n */\n\n@mixin borderTop(){\n border-top: 1px dotted #ccc;\n}\n\n@mixin borderBottom(){\n border-bottom: 1px dotted #ccc;\n}\n\n@mixin reset_link(){\n a{\n color: inherit;\n text-decoration: none;\n }\n a:hover{\n text-decoration: none;\n }\n}\n","@import \"../mixins/media\";\n/*\nフォームラベル\n\nフォームのラベルに関する要素を定義します。\n\nsg-wrapper:\n
\n
\n
\n
\n \n
\n
\n
\n
\n\nStyleguide 3.3\n*/\n\n/*\nラベル\n\nフォーム要素で利用するラベル要素です。\n\nex [お問い合わせページ ラベル部分](http://demo3.ec-cube.net/contact)\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.1\n*/\n.ec-label{\n display: inline-block;\n font-weight: bold;\n margin-bottom: 5px;\n}\n\n/*\n必須ラベル\n\n必須文字を表示するラベル要素です。\n\nex [お問い合わせページ 必須ラベル部分](http://demo3.ec-cube.net/contact)\n\n\nMarkup:\n.ec-borderedDefs\n dl\n dt\n label.ec-label お名前\n span.ec-required 必須\n dd\n .ec-input\n input(type=\"text\")\n\nStyleguide 3.3.2\n*/\n\n.ec-required{\n display: inline-block;\n margin-left: .8em;\n vertical-align: 2px;\n color: #DE5D50;\n font-size: 12px;\n font-weight: normal;\n @include media_desktop {\n margin-left: 1em;\n }\n}\n","@import \"../mixins/variables\";\n/*\nアイコン\n\nデフォルトテンプレートのアイコンは`.ec-icon`>`img`タグで使用することができます\n\nsg-wrapper:\n
\n \n\nMarkup:\ninclude /assets/tmpl/elements/4.1.icon.pug\ndiv(style=\"background-color: rgba(130,130,130,.15); padding: 20px;\")\n +icon-all\n\nStyleguide 4.1\n*/\n.ec-icon img {\n max-width: 80px;\n max-height: 80px;\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/media\";\n\n@mixin row{\n display: block;\n margin: 0;\n @include media_desktop {\n display: flex;\n }\n}\n\n@mixin makeSmColumn($columns){\n position: relative;\n min-height: 1px;\n\n @media (min-width: $desktop) {\n width: percentage(($columns/ 12));\n }\n @include media_desktop{\n }\n\n}\n\n/*\nグリッド\n\n画面を12分割し、グリッドレイアウトに対応するためのスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.1\n*/\n\n/*\n2分割グリッド\n\n画面 2分割の グリッドです。\nBootstrap の col-sm-6 相当のグリッドを提供します。\n\nMarkup:\n.ec-grid2\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n .ec-grid2__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid2__cell\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 5.1.1\n*/\n.ec-grid2{\n @include row;\n & &__cell{\n @include makeSmColumn(6);\n }\n & &__cell2{\n @include makeSmColumn(12);\n }\n}\n/*\n3分割グリッド\n\n画面 3分割の グリッドです。\n\n\nMarkup:\n.ec-grid3\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n .ec-grid3__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid3__cell\n\nStyleguide 5.1.2\n*/\n.ec-grid3{\n @include row;\n & &__cell{\n @include makeSmColumn(4);\n }\n & &__cell2 {\n @include makeSmColumn(8);\n }\n & &__cell3 {\n @include makeSmColumn(12);\n }\n}\n\n/*\n4分割グリッド\n\n画面 4分割の グリッドです。\n\n\nMarkup:\n.ec-grid4\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid4__cell\n\nStyleguide 5.1.3\n*/\n.ec-grid4{\n @include row;\n & &__cell{\n @include makeSmColumn(3);\n }\n}\n\n/*\n6分割グリッド\n\n2つにまとめた cell2 や 3つをまとめた cell3 タグも使用可能です。\n\n\nMarkup:\n.ec-grid6\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n .ec-grid6__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell\n.ec-grid6\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n .ec-grid6__cell2(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell2\n.ec-grid6\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n .ec-grid6__cell3(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") .ec-grid6__cell3\n\nStyleguide 5.1.4\n*/\n.ec-grid6{\n @include row;\n & &__cell{\n @include makeSmColumn(2);\n }\n & &__cell2{\n @include makeSmColumn(4);\n }\n & &__cell3{\n @include makeSmColumn(6);\n }\n}\n\n/*\n中央寄せグリッド 10/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の10グリッドです\n\nex [ご利用規約ページ 本文](http://demo3.ec-cube.net/help/agreement)\n\nMarkup:\n.ec-off1Grid\n .ec-off1Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.5\n*/\n.ec-off1Grid{\n margin: 0;\n @include media_desktop {\n @include row;\n }\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(10);\n margin-left: percentage((1 / 12));\n }\n }\n}\n\n\n/*\n中央寄せグリッド 8/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の8グリッドです\n\n\nMarkup:\n.ec-off2Grid\n .ec-off2Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.6\n*/\n.ec-off2Grid{\n @include row;\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(8);\n margin-left: percentage((2 / 12));\n }\n }\n}\n/*\n中央寄せグリッド 6/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の6グリッドです\n\n\nMarkup:\n.ec-off3Grid\n .ec-off3Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\nStyleguide 5.1.7\n*/\n.ec-off3Grid{\n @include row;\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(6);\n margin-left: percentage((3 / 12));\n }\n }\n}\n/*\n中央寄せグリッド 4/12\n\n左右にマージンを持つ、中央寄せグリッドを提供します。12分の4グリッドです\n\n\nMarkup:\n.ec-off4Grid\n .ec-off4Grid__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\n\n\nStyleguide 5.1.8\n*/\n.ec-off4Grid{\n @include row;\n & &__cell{\n margin: 0;\n @include media_desktop {\n @include makeSmColumn(4);\n margin-left: percentage((4 / 12));\n }\n }\n}\n\n/*\nグリッドオプション\n\nグリッドのセルに対して「左寄せ」「中央寄せ」「右寄せ」のオプションを付与することができます。\n\nsg-wrapper:\n
\n \n\nStyleguide 5.1.9\n*/\n\n/*\nグリッドセルの左寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--left\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.10\n*/\n.ec-grid--left {\n justify-content: flex-start;\n}\n/*\nグリッドセルの右寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--right\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.11\n*/\n.ec-grid--right {\n justify-content: flex-end;\n}\n/*\nグリッドセルの中央寄せ\n\n.ec-gridに.ec-grid--leftを付与すると内包してるセルを左寄せにすることができます。\n\nMarkup:\n.ec-grid4.ec-grid--center\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n .ec-grid4__cell(style=\"background-color: rgba(86,61,124,.15);border: 1px solid rgba(86,61,124,.2);height:50px;\") ec-grid4__cell\n\nStyleguide 5.1.12\n*/\n.ec-grid--center {\n justify-content: center\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/projects\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/media\";\n\n@mixin row{\n margin-left: ceil((30px / -2));\n margin-right: floor((30px / -2));\n @include clearfix\n}\n\n@mixin makeSmColumn($columns){\n position: relative;\n min-height: 1px;\n padding-left: (30px / 2);\n padding-right: (30px / 2);\n\n @media (min-width: $desktop) {\n float: left;\n width: percentage(($columns/ 12));\n }\n}\n\n/*\nレイアウト\n\n様々なレイアウトを変更する為のスタイル群です。\n\nStyleguide 5.2\n*/\n\n/*\n画像レイアウト\n\n画像とテキストを水平に並べるレイアウトです。\n\n画像は20%で表示されます。\n\nex [注文履歴 ログイン後→注文履歴ボタンを押下](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-imageGrid\n .ec-imageGrid__img: img(src=\"http://demo3.ec-cube.net/upload/save_image/0701113537_559351f959620.jpeg\")\n .ec-imageGrid__content\n p.ec-font-bold ホーローマグ\n p ¥ 1,728 x 1\n\nsg-wrapper:\n
\n \n\n\nStyleguide 5.2.1\n*/\n.ec-imageGrid{\n display: table;\n @include borderTop;\n width: 100%;\n\n & &__img{\n display: table-cell;\n padding: 10px;\n width: 100px;\n\n @include media_desktop {\n padding: 10px;\n width: 130px;\n }\n\n img{\n width: 100%;\n }\n }\n & &__content{\n vertical-align: middle;\n display: table-cell;\n span {\n margin-left: 10px;\n }\n p {\n margin-bottom: 0;\n }\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\nログイン\n\n主にログインフォームのスタイルを表示します。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 6.1\n*/\n\n/*\nログインフォーム\n\nログインフォームを表示します。\n\nex [ログイン画面](http://demo3.ec-cube.net/mypage/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-login\n\n\nStyleguide 6.1.1\n*/\n.ec-login{\n margin: 0 0 20px;\n padding: 30px 13% 20px;\n height: auto;\n background: #F3F4F4;\n box-sizing: border-box;\n @include media_desktop {\n margin: 0 16px;\n padding: 30px 13% 60px;\n }\n & &__icon {\n text-align: center;\n }\n .ec-icon{\n margin-bottom: 10px;\n img {\n width: 90px;\n height: 90px;\n display: inline-block;\n }\n }\n & &__input {\n margin-bottom: 40px;\n .ec-checkbox {\n span {\n margin-left: 5px;\n font-weight:normal;\n }\n }\n }\n & &__actions {\n color: #fff;\n @include reset_link();\n }\n & &__link {\n margin-top: 5px;\n margin-left: 0;\n @include media_desktop {\n margin-left: 20px;\n }\n }\n .ec-errorMessage {\n color: $clrRed;\n margin-bottom: 20px;\n }\n}\n\n/*\nゲスト購入\n\nゲスト購入ボタンとそのフォームを表示します。\n\nex [ゲスト購入画面](http://demo3.ec-cube.net/shopping/login)\n\nMarkup:\ninclude /assets/tmpl/elements/6.3.login.pug\n+ec-guest\nhoge\n\nStyleguide 6.1.2\n*/\n.ec-guest{\n display: table;\n margin: 0;\n padding: 13%;\n height: auto;\n box-sizing: border-box;\n background: #F3F4F4;\n\n @include media_desktop {\n height: 100%;\n margin: 0 16px;\n }\n & &__inner{\n display: table-cell;\n vertical-align: middle;\n text-align: center;\n p {\n margin-bottom: 16px;\n }\n }\n & &__actions {\n display: block;\n vertical-align: middle;\n text-align: center;\n color: #fff;\n @include reset_link();\n }\n & &__icon{\n font-size: 70px;\n text-align: center;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\n商品掲載\n\nトップページに商品掲載するスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.1\n*/\n\n/*\n商品アイテム(商品紹介B)\n\n3項目横並びの商品アイテムを表示します。\n必要に応じて商品詳細や、キャッチコピーなどを添えることが出来ます。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayB\n\nStyleguide 7.1.1\n*/\n.ec-displayB{\n margin-bottom: 24px;\n display: flex;\n justify-content: space-between;\n flex-direction:column;\n @include media_desktop {\n flex-direction:row;\n }\n & &__cell {\n width: 100%;\n margin-bottom: 16px;\n @include reset_link();\n @include media_desktop {\n width: 31.4466%;\n margin-bottom: 0;\n }\n &:hover {\n text-decoration: none;\n img{\n opacity: .8;\n }\n a {\n text-decoration: none;\n }\n }\n }\n & &__img {\n margin-bottom: 15px;\n }\n\n & &__catch{\n margin-bottom: 15px;\n text-decoration: none;\n font-weight: bold;\n color: #9a947e;\n }\n & &__comment {\n margin-bottom: 14px;\n text-decoration: none;\n color: #525263;\n font-size: 14px;\n }\n & &__link{\n text-decoration: none;\n font-weight: bold;\n color: #9a947e;\n }\n\n}\n\n/*\n商品アイテム(商品紹介C)\n\n4項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayC\np hoge\n\nStyleguide 7.1.2\n*/\n\n.ec-displayC{\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n margin-bottom: 24px;\n & &__cell{\n width: 47%;\n @include reset_link();\n @include media_desktop(){\n width: 22.8775%;\n }\n &:hover {\n a {\n text-decoration: none;\n }\n img{\n opacity: .8;\n }\n }\n }\n & &__img{\n display: block;\n width: 100%;\n margin-bottom: 15px;\n }\n & &__catch{\n display: block;\n width: 100%;\n font-weight: bold;\n color: #9a947e;\n }\n & &__title{\n display: block;\n width: 100%;\n color: #525263;\n }\n & &__price{\n display: block;\n width: 100%;\n font-weight: bold;\n color: #525263;\n }\n & &__price--sp{\n display: block;\n width: 100%;\n font-weight: bold;\n color: #DE5D50;\n }\n}\n\n\n/*\n商品アイテム(商品紹介D)\n\n6項目横並びの商品アイテムを表示します。\n\nex [トップページ 商品紹介部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/7.1.itembanner.pug\n+ec-displayD\n\nStyleguide 7.1.3\n*/\n\n.ec-displayD {\n display:flex;\n justify-content:space-between;\n flex-wrap:wrap-reverse;\n @include media_desktop(){\n box-sizing: border-box;\n flex-wrap:nowrap;\n }\n\n & &__cell{\n width: 30%;\n margin-bottom: 8px;\n @include reset_link();\n @include media_desktop(){\n width: 14.3083%;\n margin-bottom: 16px;\n }\n &:hover {\n text-decoration: none;\n img{\n opacity: .8;\n }\n }\n }\n & &__img{\n display: block;\n width: 100%;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/variables\";\n@import \"../mixins/projects\";\n\n@mixin pager(){\n}\n/*\n検索・一覧表示\n\n検索欄や、一覧表示に使用するスタイル群です。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.2\n*/\n\n/*\nトピックパス\n\n検索結果で表示されるトピックパスのスタイルです。\n\nex [商品一覧ページ 横並びリスト部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-topicpath\n\nStyleguide 7.2.1\n*/\n.ec-topicpath{\n letter-spacing: -.4em;\n -webkit-margin-before: 0;\n -webkit-margin-after: 0;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n -webkit-padding-start: 0;\n border-top: 1px solid #ccc;\n border-bottom: 1px dotted #ccc;\n padding: 10px;\n list-style: none;\n overflow: hidden;\n font-size: 12px;\n color: #0092C4;\n @include media_desktop {\n padding: 30px 0 10px;\n border: 0;\n font-size: 16px;\n }\n\n & &__item {\n @include reset_link();\n }\n & &__divider{\n color: #000;\n }\n & &__item,\n & &__divider,\n & &__item--active{\n display: inline-block;\n min-width: 16px;\n text-align: center;\n position: relative;\n letter-spacing: normal;\n }\n & &__item--active{\n font-weight: bold;\n @include reset_link();\n }\n}\n\n/*\nページャ\n\n検索結果で表示される商品一覧のスタイルです。\n\nex [商品一覧ページ ページャ部分](http://demo3.ec-cube.net/products/list?category_id=&name=)\n\nMarkup:\ninclude /assets/tmpl/elements/7.2.search.pug\n+ec-pager\n\nStyleguide 7.2.2\n*/\n.ec-pager{\n list-style: none;\n list-style-type: none;\n margin: 0 auto;\n padding: 1em 0;\n text-align: center;\n & &__item,\n & &__item--active{\n display: inline-block;\n min-width: 29px;\n padding: 0 3px 0 2px;\n text-align: center;\n position: relative;\n @include reset_link();\n a{\n color: inherit;\n display: block;\n line-height: 1.8;\n padding: 5px 1em;\n text-decoration: none;\n }\n a:hover{\n color: inherit;\n }\n }\n & &__item--active {\n background: $clrGray;\n }\n & &__item:hover{\n background: $clrGray;\n }\n\n}\n","@import \"./variables\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/forms\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/vendor-prefixes\";\n@import \"../../../../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/tab-focus\";\n\n\n@keyframes fadeIn{\n 0%{\n opacity: 0;\n visibility: hidden;\n }\n 100%{\n opacity: 1;\n visibility: visible;\n }\n}\n\n@keyframes fadeOut{\n 0%{\n opacity: 1;\n visibility: visible;\n }\n 100%{\n opacity: 0;\n visibility: hidden;\n }\n}\n\n@mixin fadeIn($display:block,$time:150ms) {\n display: $display;\n opacity: 1;\n visibility: visible;\n animation: fadeIn $time linear 0s;\n}\n@mixin fadeOut($time:150ms) {\n opacity: 0;\n visibility:hidden;\n animation: fadeOut $time linear 0s;\n}\n\n.bg-load-overlay {\n background: rgba(255, 255, 255, 0.4);\n box-sizing: border-box;\n position: fixed;\n display: flex;\n flex-flow: column nowrap;\n align-items: center;\n justify-content: space-around;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 2147483647;\n opacity: 1;\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/media\";\n@import \"../mixins/animation\";\n@import \"../mixins/projects\";\n/*\nカート\n\nショッピングカートに関するスタイルです。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 7.3\n*/\n\n/*\nカートヘッダ\n\n購入完了までの手順や、現在の状態を表示します。\n\nul 要素を用いたリスト要素としてマークアップします。\n\nex [カートページ ヘッダ部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-progress\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 7.3.1\n*/\n.ec-progress{\n margin: 0 auto;\n padding: 8px 0 16px;\n display: table;\n table-layout: fixed;\n width: 100%;\n max-width: 600px;\n list-style: none;\n @include media_desktop {\n margin-bottom: 30px;\n padding: 0;\n }\n\n & &__item{\n display:table-cell;\n position: relative;\n font-size: 14px;\n text-align: center;\n font-weight: bold;\n z-index: 10;\n\n &:after {\n content: '';\n position: absolute;\n display: block;\n background: #525263;\n width: 100%;\n height: 0.25em;\n top: 1.25em;\n left: 50%;\n margin-left: 1.5em\\9;\n z-index: -1;\n }\n &:last-child:after {\n display: none;\n }\n }\n & &__number{\n line-height: 30px;\n width: 30px;\n height: 30px;\n margin-bottom: 5px;\n font-size: 12px;\n background: #525263;\n color: #fff;\n top: 0;\n left: 18px;\n display: inline-block;\n text-align: center;\n vertical-align: middle;\n border-radius: 50%;\n @include media_desktop(){\n line-height: 42px;\n width: 42px;\n height: 42px;\n font-size: 20px;\n }\n }\n & &__label {\n font-size: 12px;\n }\n .is-complete {\n .ec-progress__number {\n background: #5CB1B1;\n }\n .ec-progress__label {\n color: #5CB1B1;\n }\n }\n}\n\n\n\n/*\nカートナビゲーション\n\nカートナビゲーションを表示します。 カートに追加された商品の個数も表示します。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerCart\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.5\n*/\n.ec-cartNaviWrap{\n @include media_desktop {\n position: relative;\n }\n}\n.ec-cartNavi{\n display: inline-block;\n padding: 10px 0 0 20px;\n width: auto;\n color: black;\n background: transparent;\n @include media_desktop {\n display: flex;\n justify-content: space-between;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 12px 17px 10px;\n width: auto;\n min-width: 140px;\n height: 44px;\n white-space: nowrap;\n cursor: pointer;\n background: #F8F8F8;\n }\n\n & &__icon {\n display: inline-block;\n font-size: 20px;\n @include fadeIn(inline-block,200ms);\n position: relative;\n\n }\n & &__badge{\n display: inline-block;\n border-radius: 99999px;\n box-sizing: border-box;\n padding: 5px;\n height: 17px;\n font-size: 10px;\n line-height: 0.7;\n vertical-align: top;\n color: #fff;\n text-align: left;\n white-space: nowrap;\n background-color: #DE5D50;\n position: absolute;\n left: 60%;\n top: -10px;\n @include media_desktop {\n display: inline-block;\n min-width: 17px;\n position: relative;\n left: 0;\n top: 0;\n }\n }\n & &__price{\n display: none;\n\n @include media_desktop {\n display: inline-block;\n font-size: 14px;\n font-weight: normal;\n vertical-align: middle;\n }\n }\n}\n.ec-cartNavi.is-active {\n\n .ec-cartNavi__icon {\n &:before {\n content: \"\\f00d\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n }\n }\n .ec-cartNavi__badge{\n display: none;\n @include media_desktop {\n display: none;\n }\n\n }\n}\n\n\n/*\nカートナビゲーションのポップアップ(商品詳細)\n\nカートナビゲーションのポップアップを表示します。カートに追加された商品の詳細が表示されます。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:350px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='close')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n +b.ec-cartNaviIsset\n +e.cart\n +e.cartImage\n img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n +e.cartContent\n +e.cartContentTitle ミニテーブル\n +e.cartContentPrice ¥ 12,960\n +e.cartContentTax 税込\n +e.cartContentNumber 数量:1\n +e.action\n a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n a.ec-blockBtn.ec-cartNavi--cancel キャンセル\n\nStyleguide 7.3.6\n*/\n.ec-cartNaviIsset {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 20;\n position: absolute;\n right: 0;\n\n @include media_desktop {\n margin-top: 10px;\n min-width: 256px;\n max-width:256px;\n\n &::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px;\n\n }\n }\n\n\n\n & &__cart {\n @include clearfix;\n border-bottom: 1px solid #E8E8E8;\n margin-bottom: 16px;\n padding-bottom: 32px;\n }\n & &__cartImage {\n float: left;\n width: 45%;\n img {\n width: 100%;\n }\n }\n & &__cartContent {\n float: right;\n width: 55%;\n padding-left: 16px;\n text-align:left;\n box-sizing:border-box;\n }\n & &__action {\n .ec-blockBtn--action {\n color:#fff;\n margin-bottom: 8px;\n }\n }\n & &__cartContentTitle {\n margin-bottom: 8px;\n }\n & &__cartContentPrice {\n font-weight: bold;\n }\n & &__cartContentTax {\n display: inline-block;\n font-size: 12px;\n font-weight: normal;\n margin-left: 2px;\n }\n & &__cartContentNumber {\n font-size: 14px;\n }\n}\n\n.ec-cartNaviIsset.is-active {\n display: block;\n}\n\n\n\n/*\nカートナビゲーションのポップアップ(商品なし)\n\nカートナビゲーションのポップアップを表示します。商品が登録されていない場合の表示です。\n\nex [カートページ ナビゲーション部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ndiv(style=\"height:170px;\")\n // 上記のdivはスタイルガイド都合上、高さをもたせるため設置(mocでは不要)\n .is_active\n .ec-cartNavi\n .ec-cartNavi__icon\n img(src='/moc/icon/cart-dark.svg', alt='cart')\n .ec-cartNavi__iconClose\n img(src='/moc/icon/cross-dark.svg', alt='close')\n .ec-cartNavi__badge 1\n .ec-cartNavi__label\n | 合計\n .ec-cartNavi__price ¥1920\n .ec-cartNaviNull\n .ec-cartNaviNull__message\n p 現在カート内に\n br\n | 商品がございません。\n //+b.ec-cartNaviIsset\n // +e.cart\n // +e.cartImage\n // img(src='http://demo3.ec-cube.net/upload/save_image/0701104933_5593472d8d179.jpeg')\n // +e.cartContent\n // +e.cartContentTitle ミニテーブル\n // +e.cartContentPrice ¥ 12,960\n // +e.cartContentTax 税込\n // +e.cartContentNumber 数量:1\n // +e.action\n // a.ec-blockBtn--action(href=\"/moc/guest/cart1\") カートへ進む\n // a.ec-blockBtn キャンセル\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 7.3.7\n*/\n\n\n.ec-cartNaviNull {\n display: none;\n width: 100%;\n text-align: center;\n background: #f8f8f8;\n box-sizing: border-box;\n padding: 16px;\n z-index: 3;\n position: absolute;\n right: 0;\n\n @include media_desktop {\n margin-top: 10px;\n min-width: 256px;\n max-width:256px;\n\n &::before {\n display: inline-block;\n content: \"\";\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 8.5px 10px 8.5px;\n border-color: transparent transparent #f8f8f8 transparent;\n position: absolute;\n top: -9px;\n\n }\n }\n\n & &__message {\n border: 1px solid #D9D9D9;\n padding: 16px 0;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n background-color: #F99;\n p {\n margin: 0;\n }\n }\n}\n\n.ec-cartNaviNull.is-active {\n display: block;\n}\n\n\n\n/*\n総計\n\n会計時の合計金額、総計を表示します。\n\nex [カートページ 統計部分](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/7.3.cart.pug\n+ec-totalBox\n\nStyleguide 7.3.8\n*/\n.ec-totalBox{\n background:#F3F3F3;\n padding: 16px;\n margin-bottom: 16px;\n & &__spec{\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: space-between;\n justify-content: space-between;\n -ms-flex-pack: space-between;\n margin-bottom:8px;\n dt{\n font-weight: normal;\n text-align: left;\n }\n dd{\n text-align: right;\n }\n & &__specTotal {\n color: $clrRed;\n }\n }\n & &__total{\n border-top: 1px dotted #ccc;\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight:bold;\n }\n & &__paymentTotal{\n padding: 8px 0;\n text-align: right;\n font-size: 14px;\n font-weight:bold;\n .ec-totalBox__price,\n .ec-totalBox__taxLabel{\n color: $clrRed;\n }\n }\n & &__price{\n margin-left: 16px;\n font-size: 16px;\n font-weight:bold;\n @include media_desktop {\n font-size: 24px;\n }\n }\n & &__taxLabel {\n margin-left: 8px;\n font-size: 12px;\n @include media_desktop {\n font-size: 14px;\n }\n }\n & &__taxRate {\n display: -ms-flexbox;\n display: flex;\n -webkit-justify-content: flex-end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n margin-bottom:8px;\n font-size: 10px;\n @include media_desktop {\n font-size: 12px;\n }\n dt{\n font-weight: normal;\n text-align: left;\n margin-right: 8px;\n &::before {\n content: \"[ \";\n }\n }\n dd{\n text-align: right;\n &::after {\n content: \" ]\";\n }\n }\n }\n & &__pointBlock{\n padding: 18px 20px 10px;\n margin-bottom: 10px;\n background: #fff;\n }\n & &__btn {\n @include reset_link();\n color: #fff;\n .ec-blockBtn--action {\n font-size: 16px;\n font-weight: bold;\n }\n .ec-blockBtn--cancel {\n margin-top: 8px;\n }\n }\n}\n","// Clearfix\n//\n// For modern browsers\n// 1. The space content is one way to avoid an Opera bug when the\n// contenteditable attribute is included anywhere else in the document.\n// Otherwise it causes space to appear at the top and bottom of elements\n// that are clearfixed.\n// 2. The use of `table` rather than `block` is only necessary if using\n// `:before` to contain the top-margins of child elements.\n//\n// Source: http://nicolasgallagher.com/micro-clearfix-hack/\n\n@mixin clearfix() {\n //&:before, //to avoid flex effect\n &:after {\n content: \" \"; // 1\n display: table; // 2\n }\n &:after {\n clear: both;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n/*\nお知らせ\n\n新着情報やバナーなどの掲載項目を紹介していきます。\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 8.1\n*/\n\n/*\n新着情報\n\n新着情報の掲載をします。\n\nex [トップページ 新着情報部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+ec-news\n\nStyleguide 8.1.1\n*/\n.ec-news {\n margin-bottom: 16px;\n background: #F8F8F8;\n @include media_desktop {\n margin-right: 3%;\n }\n @include media_desktop {\n margin-bottom: 32px;\n }\n & &__title{\n font-weight: bold;\n padding: 8px;\n font-size: 16px;\n text-align: center;\n @include media_desktop {\n padding: 16px;\n text-align: left;\n font-size: 24px;\n }\n }\n & &__items{\n padding: 0;\n list-style: none;\n border-top: 1px dotted #ccc;\n }\n}\n/*\n折りたたみ項目\n\n折りたたみ項目を掲載します。\n\nex [トップページ 折りたたみ項目部分](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/8.1.info.pug\n+b.ec-news\n +e.title 新着情報\n +e.UL.items\n +e.LI.item\n +b.ec-newsline.is_active\n +e.info\n +e.date 2016/09/29\n +e.comment サイトオープンしました\n +e.close\n a.ec-closeBtn--circle\n span.ec-closeBtn--circle__icon\n .ec-icon\n img(src='/moc/icon/angle-down-white.svg', alt='')\n +e.description 一人暮らしからオフィスなどさまざまなシーンで あなたの生活をサポートするグッズをご家庭へお届けします!\n\nStyleguide 8.1.2\n*/\n.ec-newsline {\n display: flex;\n flex-wrap:wrap;\n overflow: hidden;\n padding: 0 16px;\n & &__info{\n width: 100%;\n padding: 16px 0;\n @include clearfix;\n }\n & &__date{\n display: inline-block;\n margin-right: 10px;\n float: left;\n }\n & &__comment{\n display: inline-block;\n float: left;\n }\n & &__close{\n float: right;\n display: inline-block;\n text-align: right;\n .ec-closeBtn--circle {\n display: inline-block;\n width: 25px;\n height: 25px;\n min-width: 25px;\n min-height: 25px;\n\n }\n }\n & &__description{\n width: 100%;\n height: 0;\n transition: all .2s ease-out;\n }\n\n &.is_active &__description{\n height: auto;\n transition: all .2s ease-out;\n padding-bottom: 16px;\n }\n &.is_active .ec-icon img {\n transform: rotateX(180deg);\n }\n}\n","@import \"../mixins/projects\";\n@import \"../mixins/variables\";\n@import \"../mixins/media\";\n/*\nマイページ\n\nマイページで利用するためのスタイルガイド群です。\n\nsg-wrapper:\n
\n \n\n\nStyleguide 9.1\n*/\n\n/*\nマイページ\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist\n\nStyleguide 9.1.1\n*/\n.ec-navlistRole{\n & &__navlist {\n @include reset_link;\n display: flex;\n flex-wrap: wrap;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 1px 0 0 1px;\n margin-bottom: 32px;\n padding: 0;\n list-style: none;\n @include media_desktop {\n flex-wrap: nowrap;\n }\n }\n\n & &__item{\n width: 50%;\n border-color: #D0D0D0;\n border-style: solid;\n border-width: 0 1px 1px 0;\n text-align: center;\n font-weight: bold;\n a {\n padding: 16px;\n width: 100%;\n display: inline-block;\n &:hover{\n background: #f5f7f8;\n }\n }\n }\n .active {\n a {\n color: #DE5D50;\n }\n }\n}\n\n/*\nマイページ(お気に入り機能無効)\n\nマイページで表示するメニューリストです。\n\nul を利用したリスト要素で記述します。\n\nex [マイページ メニューリスト部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-navlist_noFavorite\n\nStyleguide 9.1.2\n*/\n\n/*\nWelcome メッセージ\n\nマイページで表示するログイン名の表示コンポーネントです。\n\nex [マイページ メニューリスト下部分](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-welcomeMsg\n\nStyleguide 9.1.3\n*/\n.ec-welcomeMsg{\n @include mypageContainer;\n margin: 1em 0;\n padding-bottom: 32px;\n text-align: center;\n @include borderBottom;\n\n}\n\n/*\nお気に入り一覧\n\nお気に入り一覧で表示するアイテムの表示コンポーネントです。\n\nex [マイページ お気に入り一覧](http://demo3.ec-cube.net/mypage/favorite)\n\nMarkup:\ninclude /assets/tmpl/elements/9.1.mypage.pug\n+ec-favorite\n\nStyleguide 9.1.4\n*/\n.ec-favoriteRole{\n & &__header {\n margin-bottom: 16px;\n }\n & &__detail {\n }\n & &__itemList {\n @include reset_link;\n display: flex;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n }\n & &__item{\n margin-bottom: 8px;\n width: 47.5%;\n position: relative;\n box-sizing: border-box;\n padding: 10px;\n &-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center;\n @include media_desktop() {\n height: 250px;\n }\n }\n img{\n width: auto;\n max-height: 100%;\n }\n @include media_desktop(){\n width: 25%;\n }\n .ec-closeBtn--circle {\n position: absolute;\n right: 10px;\n top: 10px;\n .ec-icon img{\n width: 1em;\n height: 1em;\n }\n }\n }\n & &__itemThumb {\n display: block;\n height:auto;\n margin-bottom: 8px;\n }\n & &__itemTitle{\n margin-bottom: 2px;\n }\n & &__itemPrice{\n font-weight: bold;\n margin-bottom: 0;\n }\n\n}\n","@import \"./variables\";\n@import \"./clearfix\";\n\n/**\nメディアクエリ\nSP フォーストで記述する。\nTwitter Bootstrap デフォルト準拠\n */\n\n\n\n//@mixin media_tablet(){\n// @media only screen and (min-width: 768px) {\n// @content;\n// }\n//}\n\n@mixin media_desktop(){\n @media only screen and (min-width: 768px) {\n @content;\n }\n}\n\n//@mixin media_desktop2(){\n// @media only screen and (min-width: 768px) {\n// @content;\n// }\n//}\n//\n//@mixin media_desktop3(){\n// @media only screen and (min-width: 768px) {\n// @content;\n// }\n//}\n\n\n@mixin container(){\n margin: 0 auto;\n padding-left: 20px;\n padding-right: 20px;\n box-sizing: border-box;\n @include clearfix;\n @include commonStyle();\n width: 100%;\n max-width: 1130px;\n\n //@media (min-width: $desktop) {\n // width: 720 + 30px;\n //}\n //@media (min-width: $desktop2) {\n // width: 940 + 30px;\n //}\n //@media (min-width: $desktop3) {\n // width: 1140 + 30px;\n //}\n}\n@mixin mypageContainer(){\n margin-right: auto;\n margin-left: auto;\n padding-left: 16px;\n padding-right: 16px;\n box-sizing: border-box;\n @include clearfix;\n @include commonStyle();\n width: 100%;\n //max-width: 1130px;\n @include media_desktop {\n padding-left: 26px;\n padding-right: 26px;\n }\n}\n\n@mixin commonStyle(){\n font-size: 16px;\n line-height: 1.4;\n color: #525263;\n -webkit-text-size-adjust: 100%;\n\n //a {\n //color: #0092C4;\n //color: #A092C4;\n //text-decoration: none;\n //cursor: pointer;\n //}\n //a:hover,\n //a:focus,\n //a:active { color: #33A8D0;text-decoration: none; outline: none;}\n\n\n textarea { /* for chrome fontsize bug */\n font-family: sans-serif;\n }\n\n //ul, ol {\n // list-style: none;\n // margin: 0; padding: 0;\n //}\n //dl, dt, dd, li{\n // margin: 0; padding: 0;\n //}\n img {\n max-width: 100%;\n }\n\n html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n }\n\n *,\n *::before,\n *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit;\n }\n\n img{\n width: 100%;\n }\n\n\n}\n","@import \"../mixins/media\";\n\n/*\n標準セクション\n\n通常のコンテナブロックです。\n\nex [商品詳細ページ コンテナ](http://demo3.ec-cube.net/products/detail/33)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-roleRole\n\nStyleguide 11.1\n*/\n.ec-role{\n @include container;\n}\n\n/*\nマイページセクション\n\nマイページ専用のコンテナブロックです。\n\nex [マイページ コンテナ](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/11.1.role.pug\n+ec-mypageRole\n\nStyleguide 11.1.2\n*/\n.ec-mypageRole{\n @include mypageContainer;\n\n .ec-pageHeader h1{\n @include media_desktop {\n margin: 10px 0 48px;\n padding: 8px 0 18px;\n }\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/animation\";\n\n/*\nヘッダー\n\nヘッダー用のプロジェクトコンポーネントを提供します。\n\nex [トップページ ヘッダー](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+b.ec-layoutRole\n +e.header\n +ec-headerRole\n +ec-headerNaviRole\n +ec-categoryNaviRole\n\nStyleguide 11.2\n*/\n.ec-layoutRole {\n width: 100%;\n transition: transform 0.3s;\n background: #fff;\n & &__contentTop {\n padding: 0;\n }\n\n & &__contents {\n margin-right: auto;\n margin-left: auto;\n width: 100%;\n max-width: 1150px;\n display: flex;\n flex-wrap: nowrap;\n\n }\n & &__main {\n width: 100%;\n }\n & &__mainWithColumn {\n width: 100%;\n @include media_desktop() {\n width: 75%;\n }\n }\n & &__mainBetweenColumn {\n width: 100%;\n @include media_desktop() {\n width: 50%;\n }\n }\n & &__left,\n & &__right {\n display: none;\n @include media_desktop() {\n display: block;\n width: 25%;\n }\n }\n}\n\n\n.ec-headerRole {\n @include container;\n padding-top: 15px;\n position: relative;\n &:after {\n display: none;\n }\n @include media_desktop {\n @include clearfix;\n }\n &::before {\n display: none;\n }\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n width: auto;\n @include media_desktop {\n width: 100%;\n @include clearfix;\n }\n & &__title {\n width: 100%;\n }\n & &__navSP {\n display: block;\n position: absolute;\n top: 15px;\n width: 27%;\n right: 0;\n text-align: right;\n @include media_desktop {\n display: none;\n }\n }\n}\n\n.ec-headerNaviRole {\n @include container;\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-top: 15px;\n\n @include media_desktop {\n padding-bottom: 40px;\n }\n\n & &__left {\n width: calc(100% / 3);\n\n }\n\n & &__search {\n display: none;\n @include media_desktop() {\n display: inline-block;\n margin-top: 10px;\n @include reset_link;\n }\n }\n & &__navSP {\n display: block;\n @include media_desktop() {\n display: none;\n @include reset_link;\n }\n }\n\n & &__right {\n width: calc(100% * 2 / 3);\n display: flex;\n justify-content: flex-end;\n align-items: center;\n }\n\n & &__nav {\n display: inline-block;\n @include reset_link;\n }\n & &__cart {\n display: inline-block;\n @include reset_link;\n }\n}\n\n.ec-headerNavSP {\n display: block;\n cursor: pointer;\n //display: inline-block;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 10px;\n z-index: 1000;\n\n .fas {\n vertical-align: top;\n }\n\n @include media_desktop {\n display: none;\n }\n}\n.ec-headerNavSP.is-active {\n display: none;\n}\n\n/*\nヘッダー:タイトル\n\nヘッダー内で使用されるタイトルコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.2.header.pug\n+ec-headerTitle\n\nStyleguide 11.2.1\n*/\n.ec-headerTitle {\n @include commonStyle();\n & &__title {\n text-align: center;\n h1 {\n margin: 0;\n padding: 0;\n }\n a {\n display: inline-block;\n margin-bottom: 30px;\n text-decoration: none;\n font-size: 20px;\n\n @include media_desktop() {\n font-size: 40px;\n }\n font-weight: bold;\n color: black;\n\n &:hover {\n opacity: .8;\n }\n }\n }\n & &__subtitle {\n font-size: 10px;\n text-align: center;\n @include media_desktop() {\n font-size: 16px;\n margin-bottom: 10px;\n }\n a {\n display: inline-block;\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n }\n }\n}\n\n/*\nヘッダー:ユーザナビゲーション\n\nヘッダー内でユーザに関与するナビゲーションコンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__nav`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.3\n*/\n.ec-headerNav {\n text-align: right;\n & &__item {\n margin-left: 0;\n display: inline-block;\n font-size: 28px;\n }\n & &__itemIcon {\n display: inline-block;\n margin-right: 10px;\n margin-left: 10px;\n font-size: 18px;\n color: black;\n @include media_desktop {\n margin-right: 0;\n font-size: 20px;\n }\n }\n & &__itemLink {\n display: none;\n margin-right: 5px;\n font-size: 14px;\n vertical-align: middle;\n color: black;\n @include media_desktop {\n display: inline-block;\n }\n }\n}\n\n/*\nヘッダー:検索ボックス\n\nヘッダー内で使用される商品検索コンポーネントです。\n

\n`.ec-headerNaviRole`>`.ec-headerNaviRole__search`内に記述すると2カラム上の右側に配置することができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.3.headerNavi.pug\n+ec-headerSearch\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.2.4\n*/\n.ec-headerSearch{\n @include clearfix;\n & &__category {\n float: none;\n @include media_desktop {\n float: left;\n width: 43%;\n }\n .ec-select {\n overflow: hidden;\n width: 100%;\n margin: 0;\n text-align: center;\n\n select {\n width: 100%;\n cursor: pointer;\n padding: 8px 24px 8px 8px;\n text-indent: 0.01px;\n text-overflow: ellipsis;\n border: none;\n outline: none;\n background: transparent;\n background-image: none;\n box-shadow: none;\n appearance: none;\n color: #fff;\n\n @include media_desktop {\n max-width: 165px;\n height: 36px;\n }\n\n option {\n color: #000;\n }\n\n &::-ms-expand {\n display: none;\n }\n }\n\n &.ec-select_search {\n position: relative;\n border: 0;\n background: #000;\n color: #fff;\n border-top-right-radius: 10px;\n border-top-left-radius: 10px;\n\n @include media_desktop {\n border-top-right-radius: inherit;\n border-top-left-radius: 50px;\n border-bottom-left-radius: 50px;\n }\n\n &::before {\n position: absolute;\n top: 0.8em;\n right: 0.4em;\n width: 0;\n height: 0;\n padding: 0;\n content: '';\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid #fff;\n pointer-events: none;\n }\n }\n }\n }\n & &__keyword{\n position: relative;\n color: $clrDarkGray;\n border: 1px solid #ccc;\n background-color: #f6f6f6;\n border-bottom-right-radius: 10px;\n border-bottom-left-radius: 10px;\n\n @include media_desktop {\n float: right;\n width: 57%;\n border-bottom-left-radius: inherit;\n border-top-right-radius: 50px;\n border-bottom-right-radius: 50px;\n }\n input[type=\"search\"]{\n width: 100%;\n height: 34px;\n font-size: 1.2rem;\n border: 0 none;\n padding: 0.5em 50px 0.5em 1em;\n box-shadow: none;\n background: none;\n box-sizing: border-box;\n margin-bottom: 0;\n }\n .ec-icon {\n width: 22px;\n height: 22px;\n }\n }\n & &__keywordBtn{\n border: 0;\n background: none;\n position: absolute;\n right: 5px;\n top: 50%;\n transform: translateY(-55%);\n display: block;\n white-space: nowrap;\n z-index: 1;\n }\n}\n\n/*\nヘッダー:カテゴリナビ\n\nヘッダー内で使用されている商品のカテゴリ一覧として使用します。\n`li`の中に`ul > li`要素を入れることで、階層を深くする事ができます。\n\nMarkup:\ninclude /assets/tmpl/elements/11.4.categoryNavi.pug\n+ec-itemNav\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 11.2.5\n*/\n.ec-categoryNaviRole {\n @include container;\n display: none;\n @include media_desktop() {\n display: block;\n width: 100%;\n @include reset_link;\n }\n}\n\n.ec-itemNav {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n text-align: center;\n}\n\n.ec-itemNav__nav {\n display: block;\n margin: 0 auto;\n padding: 0;\n width: auto;\n height: auto;\n list-style-type: none;\n text-align: center;\n vertical-align: bottom;\n @include media_desktop {\n display: inline-block;\n }\n}\n\n.ec-itemNav__nav li {\n float: none;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: center;\n position: relative;\n @include media_desktop {\n float: left;\n width: auto;\n }\n}\n\n.ec-itemNav__nav li a {\n display: block;\n border-bottom: 1px solid #E8E8E8;\n margin: 0;\n padding: 16px;\n height: auto;\n color: #2e3233;;\n font-size: 16px;\n font-weight: bold;\n line-height: 20px;\n text-decoration: none;\n text-align: left;\n background: #fff;\n border-bottom: 1px solid #E8E8E8;\n @include media_desktop {\n text-align: center;\n border-bottom: none;\n }\n}\n\n.ec-itemNav__nav li ul {\n display: none;\n z-index: 0;\n margin: 0;\n padding: 0;\n min-width: 200px;\n list-style: none;\n position: static;\n top: 100%;\n left: 0;\n @include media_desktop {\n display: block;\n z-index: 100;\n position: absolute;\n }\n}\n\n.ec-itemNav__nav li ul li {\n overflow: hidden;\n width: 100%;\n height: auto;\n transition: .3s;\n @include media_desktop {\n overflow: hidden;\n height: 0;\n }\n}\n\n.ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #E8E8E8;\n padding: 16px 22px 16px 16px;\n font-size: 16px;\n font-weight: bold;\n color: white;\n text-align: left;\n background: black;\n}\n\n.ec-itemNav__nav > li:hover > a {\n background: #fafafa;\n}\n\n.ec-itemNav__nav > li:hover li:hover > a {\n background: #333;\n}\n\n.ec-itemNav__nav > li:hover > ul > li {\n @include media_desktop {\n overflow: visible;\n height: auto;\n\n }\n}\n\n.ec-itemNav__nav li ul li ul {\n top: 0;\n left: 100%;\n width: auto;\n}\n\n.ec-itemNav__nav li ul li ul:before {\n @include media_desktop {\n content: \"\\f054\";\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n font-size: 12px;\n color: white;\n position: absolute;\n top: 19px;\n right: auto;\n left: -20px;\n }\n}\n\n.ec-itemNav__nav li ul li:hover > ul > li {\n @include media_desktop {\n overflow: visible;\n height: auto;\n width: auto;\n }\n}\n\n.ec-itemNav__nav li ul li ul li a {\n background: #7D7D7D\n}\n\n.ec-itemNav__nav li:hover ul li ul li a:hover {\n background: #333;\n}\n\n/*\nヘッダー:SPヘッダー\n\nSP時のみ出現するヘッダーに関係するコンポーネントです。
\nex [トップページ](http://demo3.ec-cube.net/)画面サイズが768px以下に該当。
\n
\n`.ec-drawerRole`:SPのドロワー内の要素をwrapするコンポーネントです。
\n`.ec-headerSearch`、`.ec-headerNav`、`.ec-itemNav`は`.ec-drawerRole`の子要素にある場合、ドロワーに適したスタイルに変化します。

\n`.ec-overlayRole`:SPのドロワー出現時にz-indexがドロワー以下の要素に半透明の黒背景をかぶせるコンポーネントです。
\n\nStyleguide 11.2.6\n*/\n\n.ec-drawerRole {\n overflow-y: scroll;\n background: black;\n width: 260px;\n height: 100vh;\n transform: translateX(-300px);\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1;\n transition: z-index 0ms 1ms;\n @include media_desktop() {\n display: none;\n }\n\n\n .ec-headerSearchArea {\n padding: 20px 10px;\n width: 100%;\n background: #F8F8F8;\n }\n\n .ec-headerSearch{\n padding: 16px 8px 26px;\n background: #EBEBEB;\n color: #636378;\n select{\n width: 100% !important;\n }\n }\n\n .ec-headerCategoryArea{\n .ec-headerCategoryArea__heading {\n border-top: 1px solid #CCCCCC;\n border-bottom: 1px solid #CCCCCC;\n padding: 1em 10px;\n font-size: 16px;\n font-weight: bold;\n color: black;\n background: #F8F8F8;\n }\n\n p {\n margin-top: 0;\n margin-bottom: 0;\n }\n\n .ec-itemNav__nav li a {\n border-bottom: 1px solid #ccc;\n border-bottom: 1px solid #ccc;\n color: black;\n font-weight: normal;\n background: #f8f8f8;\n }\n\n .ec-itemNav__nav li ul li a {\n border-bottom: 1px solid #ccc;\n padding-left: 20px;\n font-weight: normal;\n background: white;\n }\n\n .ec-itemNav__nav > li:hover > a {\n background: #f8f8f8;\n }\n\n .ec-itemNav__nav > li:hover li:hover > a {\n background: white;\n }\n\n .ec-itemNav__nav li ul li ul li a {\n padding-left: 40px;\n color: black;\n background: white;\n }\n\n .ec-itemNav__nav li:hover ul li ul li a:hover {\n background: white;\n }\n\n .ec-itemNav__nav li ul li ul li ul li a{\n padding-left: 60px;\n font-weight: normal;\n }\n }\n .ec-headerLinkArea {\n background: black;\n\n .ec-headerLink__list {\n border-top: 1px solid #ccc;\n\n }\n\n .ec-headerLink__item {\n display: block;\n border-bottom: 1px solid #ccc;\n padding: 15px 20px;\n font-size: 16px;\n font-weight: bold;\n color: white;\n }\n .ec-headerLink__icon {\n display: inline-block;\n width: 28px;\n font-size: 17px;\n }\n\n\n\n }\n\n}\n\n.ec-drawerRoleClose {\n display: none;\n cursor: pointer;\n border-radius: 50%;\n box-sizing: border-box;\n padding: 10px;\n width: 40px;\n height: 40px;\n font-size: 18px;\n text-align: center;\n color: black;\n background: white;\n position: fixed;\n top: 10px;\n left: 270px;\n z-index: 1000;\n\n .fas {\n vertical-align: top;\n }\n @include media_desktop {\n display: none;\n }\n\n}\n\n.ec-drawerRole.is_active {\n display: block;\n transform: translateX(0);\n transition: all .3s;\n z-index: 100000;\n\n @include media_desktop() {\n display: none;\n }\n}\n.ec-drawerRoleClose.is_active {\n display: inline-block;\n transition: all .3s;\n\n @include media_desktop {\n display: none;\n }\n}\n\n.ec-overlayRole {\n position: fixed;\n width: 100%;\n height: 100vh;\n top: 0;\n left: 0;\n opacity: 0;\n background: transparent;\n transform: translateX(0);\n transition: all .3s;\n visibility: hidden;\n\n @include media_desktop {\n display: none;\n }\n}\n\n.have_curtain .ec-overlayRole {\n display: block;\n opacity: 1;\n background: rgba(0, 0, 0, 0.5);\n visibility: visible;\n\n @include media_desktop {\n display: none;\n }\n}\n\n/*\nヘッダー:test\n\ntest\n\nMarkup:\nspan.ec-itemAccordionParent test1\nul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test2\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test3\n ul.ec-itemNavAccordion\n li.ec-itemNavAccordion__item\n a(href='') test4\n\nStyleguide 11.2.7\n*/\n\n.ec-itemNavAccordion {\n display: none;\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\nフッター\n\n全ページで使用されるフッターのプロジェクトコンポーネントです。\n\nex [トップページ フッター](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerRole\n\nStyleguide 11.3\n*/\n.ec-footerRole{\n border-top: 1px solid #7d7d7d;\n margin-top: 30px;\n background: black;\n\n @include media_desktop(){\n padding-top: 40px;\n margin-top: 100px;\n }\n & &__inner{\n @include media_desktop {\n @include container;\n }\n }\n}\n\n/*\nフッターナビ\n\nフッタープロジェクトで使用するナビゲーション用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerNav\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.1\n*/\n.ec-footerNavi{\n padding: 0;\n color: white;\n list-style: none;\n text-align: center;\n\n & &__link{\n display: block;\n\n @include media_desktop {\n display: inline-block;\n }\n\n a{\n display: block;\n border-bottom: 1px solid #7d7d7d;\n padding: 15px 0;\n font-size: 14px;\n color: inherit;\n text-decoration: none;\n\n @include media_desktop {\n display: inline-block;\n border-bottom: none;\n margin: 0 10px;\n padding: 0;\n text-decoration: underline;\n }\n }\n &:hover {\n a {\n opacity: .8;\n text-decoration: none;\n }\n\n }\n\n }\n}\n\n/*\nフッタータイトル\n\nフッタープロジェクトで使用するタイトル用のコンポーネントです。\n\nMarkup:\ninclude /assets/tmpl/elements/11.8.footer.pug\n+ec-footerTitle\n\nsg-wrapper:\n
\n
\n \n
\n
\n\nStyleguide 11.3.2\n*/\n.ec-footerTitle{\n padding: 40px 0 60px;\n text-align: center;\n color: white;\n\n @include media_desktop {\n padding: 50px 0 80px;\n }\n\n & &__logo{\n display: block;\n margin-bottom: 10px;\n font-weight: bold;\n @include reset_link();\n\n a{\n font-size: 22px;\n color: inherit;\n @include media_desktop {\n font-size: 24px;\n }\n\n }\n\n &:hover {\n a {\n opacity: .8;\n text-decoration: none;\n }\n }\n }\n & &__copyright{\n font-size: 10px;\n\n @include media_desktop {\n font-size: 12px;\n }\n }\n}\n","@import \"../mixins/media\";\n/*\nトップページ\n\nトップページ スライド部に関する Project コンポーネントを定義します。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.1.slider.pug\n+ec-sliderRole\n\nStyleguide 12.1\n*/\n.ec-sliderRole{\n @include container;\n margin-bottom: 24px;\n ul{\n padding: 0;\n list-style: none;\n }\n}\n.ec-sliderItemRole{\n @include container;\n margin-bottom: 24px;\n ul{\n padding: 0;\n list-style: none;\n }\n .item_nav {\n display: none;\n @include media_desktop {\n display: flex;\n justify-content: flex-start;\n flex-wrap: wrap;\n margin-bottom: 0;\n }\n\n }\n .slideThumb{\n margin-bottom: 25px;\n width: 33%;\n opacity: .8;\n cursor: pointer;\n\n &:focus {\n outline: none;\n }\n &:hover {\n opacity: 1;\n }\n img {\n width: 80%;\n }\n }\n}\n","@import \"../mixins/media\";\n\n/*\nアイキャッチ\n\nトップページ アイキャッチ部に関する Project コンポーネントを定義します。\n\nex [トップページスライダー直下 アイキャッチ部](http://demo3.ec-cube.net/)\n\nMarkup:\ninclude /assets/tmpl/elements/12.2.eyecatch.pug\n+ec-eyecatchRole\n\nStyleguide 12.2\n*/\n.ec-eyecatchRole {\n display: flex;\n flex-wrap: wrap;\n margin-bottom: 40px;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n & &__image {\n display: block;\n margin-bottom: 40px;\n width: 100%;\n height: 100%;\n\n @include media_desktop {\n order: 2;\n }\n }\n\n & &__intro {\n color: black;\n\n @include media_desktop {\n padding-right: 5%;\n order: 1;\n }\n }\n & &__introEnTitle {\n margin-bottom: .8em;\n font-size: 16px;\n font-weight: normal;\n\n @include media_desktop {\n margin-top: 45px;\n }\n }\n & &__introTitle {\n margin-bottom: .8em;\n font-size: 24px;\n font-weight: bold;\n\n @include media_desktop {\n margin-bottom: 1em;\n font-size: 26px;\n }\n }\n & &__introDescriptiron {\n margin-bottom: 20px;\n font-size: 16px;\n line-height: 2;\n @include media_desktop {\n margin-bottom: 30px;\n }\n }\n\n}\n","@import \"../mixins/btn\";\n@import \"../mixins/media\";\n\n/*\nボタン\n\nトップページで使用されているボタンのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.3\n*/\n\n/*\n通常ボタン\n\nインラインの要素としてボタンを定義出来ます。\n\nMarkup:\n.ec-inlineBtn--top more\n\nStyleguide 12.3.1\n*/\n.ec-inlineBtn--top{\n @include _btn(white, black, black);\n}\n\n/*\nロングボタン(全幅)\n\nロングタイプのボタンです。\n\nMarkup:\n.ec-blockBtn--top 商品一覧へ\n\nStyleguide 2.1.2\n*/\n.ec-blockBtn--top{\n @include _btn(white, black, black);\n display: block;\n height:56px;\n line-height:56px;\n padding-top: 0;\n padding-bottom: 0;\n\n @include media_desktop {\n max-width: 260px;\n }\n}\n","/*\n見出し\n\nトップページで使用されている見出しのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.4\n*/\n\n/*\n横並び見出し\n\n横並びの見出しです。\n\nMarkup:\n.ec-secHeading\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.1\n*/\n.ec-secHeading {\n margin-bottom: 15px;\n color: black;\n & &__en{\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em;\n }\n & &__line{\n display: inline-block;\n margin: 0 20px;\n width: 1px;\n height: 14px;\n background: black;\n }\n & &__ja{\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px;\n }\n}\n\n/*\n縦並び見出し\n\n縦並びの見出しです。\n\nMarkup:\n.ec-secHeading--tandem\n span.ec-secHeading__en TOPIC\n span.ec-secHeading__line |\n span.ec-secHeading__ja 特集\n\nStyleguide 12.4.2\n*/\n\n.ec-secHeading--tandem {\n margin-bottom: 15px;\n color: black;\n text-align: center;\n & .ec-secHeading__en{\n display: block;\n font-size: 18px;\n font-weight: bold;\n letter-spacing: .2em;\n }\n & .ec-secHeading__line{\n display: block;\n margin: 13px auto;\n width: 20px;\n height: 1px;\n background: black;\n }\n & .ec-secHeading__ja{\n display: block;\n margin-bottom: 30px;\n font-size: 12px;\n font-weight: normal;\n letter-spacing: .15em;\n vertical-align: 2px;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\nトピック(アイテム2列)\n\nトップページで使用されているトピックのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.5.1\n*/\n\n.ec-topicRole {\n padding: 40px 0;\n background: #F8F8F8;\n\n @include media_desktop {\n padding: 60px 0;\n }\n\n & &__list {\n display: flex;\n flex-wrap: wrap;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n }\n & &__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto;\n\n @include media_desktop {\n width: calc(100% / 2);\n\n &:not(:last-of-type){\n margin-right: 30px;\n }\n }\n\n }\n & &__listItemTitle {\n margin-top: .5em;\n font-size: 14px;\n color: black;\n\n @include media_desktop {\n margin-top: 1em;\n }\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\nカテゴリ(アイテム4列 スマホの時は2列)\n\nトップページで使用されているアイテムリストのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.6.1\n*/\n\n.ec-newItemRole {\n padding: 40px 0;\n\n @include media_desktop {\n padding: 60px 0;\n }\n\n & &__list {\n display: flex;\n flex-wrap: wrap;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n }\n & &__listItem {\n margin-bottom: 4%;\n width: 48%;\n height: auto;\n\n &:not(:first-child){\n a {\n color: black;\n }\n }\n\n @include media_desktop {\n margin-bottom: 15px;\n width: calc(100% / 4);\n\n &:not(:last-of-type){\n margin-right: 30px;\n }\n }\n\n &:nth-child(odd){\n margin-right: 4%;\n\n @include media_desktop {\n margin-right: 30px;\n }\n }\n }\n & &__listItemHeading {\n margin-top: calc(45% - 20px);\n }\n & &__listItemTitle {\n margin: 8px 0;\n font-size: 14px;\n font-weight: bold;\n\n @include media_desktop {\n margin: 20px 0 10px;\n }\n }\n\n & &__listItemPrice {\n font-size: 12px;\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\nカテゴリ(アイテム3列)\n\nトップページで使用されているカテゴリのスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.7.1\n*/\n\n.ec-categoryRole {\n padding: 40px 0;\n color: black;\n background: #F8F8F8;\n\n @include media_desktop {\n padding: 60px 0;\n }\n\n & &__list {\n display: flex;\n flex-wrap: wrap;\n\n @include media_desktop {\n flex-wrap: nowrap;\n }\n\n }\n & &__listItem {\n margin-bottom: 20px;\n width: 100%;\n height: auto;\n\n @include media_desktop {\n width: calc(100% / 3);\n\n &:not(:last-of-type){\n margin-right: 30px;\n }\n }\n\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n\n/*\n見出し\n\nトップページで使用されている新着情報のスタイルです。\n\nex [トップページ](http://demo3.ec-cube.net/)\n\nMarkup:\nsg-wrapper:\n
\n \n
\n\nStyleguide 12.8.1\n*/\n\n.ec-newsRole {\n padding: 40px 0 0;\n\n @include media_desktop {\n padding: 60px 0 0;\n }\n\n & &__news {\n\n box-sizing: border-box;\n\n @include media_desktop {\n border: 16px solid #F8F8F8;\n padding: 20px 30px;\n }\n }\n & &__newsItem {\n width: 100%;\n\n &:not(:last-of-type){\n border-bottom: 1px solid #ccc;\n }\n\n &:last-of-type {\n margin-bottom: 20px;\n\n @include media_desktop {\n margin-bottom: 0;\n }\n }\n\n\n @include media_desktop {\n\n padding: 20px 0;\n }\n }\n & &__newsHeading {\n cursor: pointer;\n\n @include media_desktop {\n display: flex;\n }\n\n }\n & &__newsDate {\n display: block;\n margin: 15px 0 5px;\n font-size: 12px;\n color: black;\n\n @include media_desktop {\n display: inline-block;\n margin: 0;\n min-width: 120px;\n font-size: 14px;\n }\n\n }\n & &__newsColumn {\n display: flex;\n\n @include media_desktop {\n display: inline-flex;\n min-width: calc(100% - 120px);\n }\n }\n\n & &__newsTitle {\n display: inline-block;\n margin-bottom: 10px;\n width: 90%;\n font-size: 14px;\n font-weight: bold;\n color: #7D7D7D;\n line-height: 1.6;\n\n @include media_desktop {\n margin-bottom: 0;\n line-height: 1.8;\n }\n\n }\n & &__newsClose {\n display: inline-block;\n width: 10%;\n position: relative;\n\n }\n & &__newsCloseBtn {\n display: inline-block;\n margin-left: auto;\n border-radius: 50%;\n width: 20px;\n height: 20px;\n color: white;\n text-align: center;\n background: black;\n cursor: pointer;\n position: absolute;\n right: 5px;\n }\n & &__newsDescription {\n display: none;\n margin: 0 0 10px;\n font-size: 14px;\n line-height: 1.4;\n overflow: hidden;\n\n @include media_desktop {\n margin: 20px 0 0;\n line-height: 1.8;\n }\n\n a {\n color: #0092C4;\n }\n }\n &__newsItem.is_active &__newsDescription{\n margin: 0 0 10px;\n\n @include media_desktop {\n margin: 20px 0 0;\n }\n }\n &__newsItem.is_active &__newsCloseBtn i {\n display: inline-block;\n transform: rotateX(180deg) translateY(2px);\n\n }\n\n}\n","@import \"../mixins/media\";\n/*\n検索ラベル\n\n商品一覧 ヘッダー部 に関する Project コンポーネントを定義します。\n\nex [商品一覧 ヘッダー部](http://demo3.ec-cube.net/products/list)\n\nMarkup:\ninclude /assets/tmpl/elements/13.1.searchnav.pug\n+ec-searchnavRole__topicpath\n+ec-searchnavRole__info\n\nStyleguide 13.1\n\n*/\n.ec-searchnavRole{\n margin-bottom: 0;\n padding: 0;\n @include media_desktop {\n @include container;\n }\n & &__infos{\n @include container;\n display: flex;\n border-top: 0;\n margin-bottom: 16px;\n padding-top: 5px;\n flex-direction:column;\n @include media_desktop {\n padding-left: 0;\n padding-right: 0;\n border-top: 1px solid #ccc;\n padding-top: 16px;\n flex-direction:row;\n }\n }\n\n & &__counter{\n margin-bottom: 16px;\n width: 100%;\n @include media_desktop {\n margin-bottom: 0;\n width: 50%;\n }\n }\n\n & &__actions{\n text-align: right;\n width: 100%;\n @include media_desktop {\n width: 50%;\n }\n }\n\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n/*\n商品一覧\n\n商品一覧 に関する Project コンポーネントを定義します。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2\n\n*/\n.ec-shelfRole{\n @include container;\n}\n\n/*\n商品一覧グリッド\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGrid\n\nStyleguide 13.2.1\n\n*/\n.ec-shelfGrid{\n @include reset_link;\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n\n @include media_desktop {\n margin-left: -16px;\n margin-right: -16px;\n }\n & &__item{\n margin-bottom: 36px;\n width: 50%;\n display: flex;\n flex-direction: column;\n &-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center;\n @include media_desktop() {\n height: 250px;\n }\n }\n img{\n width: auto;\n max-height: 100%;\n }\n @include media_desktop(){\n padding: 0 16px;\n width: 25%;\n }\n\n .ec-productRole__btn {\n margin-top: auto;\n margin-bottom: 15px;\n }\n }\n & &__item:nth-child(odd){\n padding-right: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__item:nth-child(even){\n padding-left: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__title {\n margin-bottom: 7px;\n }\n & &__plice {\n font-weight: bold;\n }\n}\n\n/*\n13.2.2 商品一覧グリッド(中央寄せ)\n\n商品一覧 で使用するグリッドコンポーネントです。\n\nSP版2列、PC版4列の特殊グリッドを構成します。\n商品のあまりはセンタリングされ、中央に表示されます。\n\nMarkup:\ninclude /assets/tmpl/elements/13.2.shelf.pug\n+b.ec-shelfRole\n +ec-shelfGridCenter\n\nStyleguide 13.2.2\n\n*/\n.ec-shelfGridCenter{\n @include reset_link;\n display: flex;\n margin-left: 0;\n margin-right: 0;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n justify-content: center;\n\n @include media_desktop {\n margin-left: -16px;\n margin-right: -16px;\n }\n & &__item{\n margin-bottom: 36px;\n width: 50%;\n &-image {\n height: 150px;\n margin-bottom: 10px;\n text-align: center;\n @include media_desktop() {\n height: 250px;\n }\n }\n img{\n width: auto;\n max-height: 100%;\n }\n @include media_desktop(){\n padding: 0 16px;\n width: 25%;\n }\n\n .ec-productRole__btn {\n margin-top: auto;\n padding-top: 1em;\n }\n }\n & &__item:nth-child(odd){\n padding-right: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__item:nth-child(even){\n padding-left: 8px;\n @include media_desktop(){\n padding: 0 16px;\n }\n }\n & &__title {\n margin-bottom: 7px;\n }\n & &__plice {\n font-weight: bold;\n }\n}\n","@import \"../mixins/media\";\n\n/*\nカート追加モーダル\n\nカート追加モーダルに関する Project コンポーネントを定義します。\n\nex [商品一覧、商品詳細](http://demo3.ec-cube.net/products/list)\n\n+ec-modal\n\nStyleguide 13.4\n\n*/\n\n.ec-modal {\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n z-index: 99999;\n width: 100%;\n height: 100%;\n\n &.small {\n width: 30%;\n }\n\n &.full {\n width: 100%;\n height: 100%;\n }\n\n .ec-modal-overlay {\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: rgba(0, 0, 0, 0.3);\n width: 100%;\n height: 100%;\n }\n\n .ec-modal-wrap {\n position: relative;\n border-radius: 2px;\n border: 1px solid #333;\n background-color: #fff;\n width: 90%;\n margin: 20px;\n padding: 40px 5px;\n @include media_desktop {\n padding: 40px 10px;\n width: 50%;\n margin: 20px auto;\n }\n }\n\n .ec-modal-close {\n cursor: pointer;\n position: absolute;\n right: 20px;\n top: 10px;\n font-size: 20px;\n height: 30px;\n width: 20px;\n &:hover {\n color: #4b5361;\n }\n }\n\n .ec-modal-box {\n text-align: center;\n }\n\n .ec-role {\n margin-top: 20px;\n }\n}\n","@import \"../mixins/media\";\n\n/*\n商品詳細\n\n商品詳細ページに関する Project コンポーネントを定義します。\n\nex [商品詳細ページ](http://demo3.ec-cube.net/products/detail/18)\n\n\nMarkup:\ninclude /assets/tmpl/elements/14.1.product.pug\n+ec-productSimpleRole\n\nStyleguide 14.1\n*/\n.ec-productRole {\n @include container;\n & &__img {\n margin-right: 0;\n margin-bottom: 20px;\n @include media_desktop {\n margin-right: 16px;\n margin-bottom: 0;\n }\n }\n & &__profile {\n margin-left: 0;\n @include media_desktop {\n margin-left: 16px;\n }\n }\n & &__title {\n .ec-headingTitle {\n font-size: 20px;\n @include media_desktop {\n font-size: 32px;\n }\n }\n }\n & &__tags {\n margin-top: 16px;\n padding: 0;\n padding-bottom: 16px;\n border-bottom: 1px dotted #ccc;\n }\n & &__tag {\n display: inline-block;\n padding: 2px 5px;\n list-style: none;\n font-size: 80%;\n color: #525263;\n border: solid 1px #D7DADD;\n border-radius: 3px;\n background-color: #F5F7F8;\n }\n & &__priceRegular {\n padding-top: 14px\n }\n & &__priceRegularTax {\n margin-left: 5px;\n font-size: 10px;\n }\n & &__price {\n color: #DE5D50;\n font-size: 28px;\n padding: 0;\n border-bottom: 0;\n @include media_desktop {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc;\n }\n }\n & &__code {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc;\n }\n & &__category {\n padding: 14px 0;\n border-bottom: 1px dotted #ccc;\n a {\n color: #33A8D0;\n }\n ul {\n list-style: none;\n padding: 0;\n margin: 0;\n }\n }\n & &__actions {\n padding: 14px 0;\n .ec-select {\n select {\n height: 40px;\n max-width: 100%;\n min-width: 100%;\n @include media_desktop {\n min-width: 350px;\n max-width: 350px;\n }\n }\n }\n }\n & &__btn {\n width: 100%;\n margin-bottom: 10px;\n @include media_desktop {\n width: 60%;\n margin-bottom: 16px;\n min-width: 350px;\n }\n }\n & &__description {\n margin-bottom: 16px;\n }\n\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n\n/*\nカート\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [カートページ](http://demo3.ec-cube.net/shopping)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartRole\n\nStyleguide 15.1\n\n*/\n.ec-cartRole{\n @include container;\n &::before{\n display: none;\n }\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end;\n\n & &__progress{\n width: 100%;\n text-align: center;\n }\n & &__error{\n width: 100%;\n text-align: center;\n .ec-alert-warning {\n max-width: 80%;\n display: inline-block;\n }\n }\n & &__totalText{\n margin-bottom: 0;\n padding: 16px 0 6px;\n width: 100%;\n text-align: center;\n font-weight: normal;\n @include media_desktop {\n margin-bottom: 30px;\n padding: 0;\n }\n }\n & &__cart{\n margin: 0;\n width: 100%;\n @include media_desktop {\n margin: 0 10%;\n }\n\n }\n & &__actions{\n text-align: right;\n width: 100%;\n @include media_desktop {\n width: 20%;\n margin-right: 10%;\n }\n }\n & &__total{\n padding: 15px 0 30px ;\n font-weight: bold;\n font-size: 16px;\n }\n & &__totalAmount{\n margin-left: 30px;\n color: #de5d50;\n font-size: 16px;\n @include media_desktop {\n font-size: 24px;\n }\n }\n\n .ec-blockBtn--action {\n margin-bottom: 10px;\n }\n}\n\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品をを表示するテーブル枠です。\n\nex [カートページ テーブル部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n+ec-cartTable\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 15.1.2\n*/\n.ec-cartTable{\n display: table;\n border-top: 1px dotted #ccc;\n width: 100%;\n @include media_desktop {\n border-top: none;\n }\n}\n\n\n/*\nカート商品表示枠(テーブルヘッダ)\n\nカート内の商品を表示するテーブルのヘッダです。\nスマホでは非表示となります。\n\nex [カートページ カートテーブルヘッダ部分(カート内に商品がある状態でアクセス)](http://demo3.ec-cube.net/cart)\n\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartHeader\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.3\n*/\n.ec-cartHeader{\n display: none;\n width: 100%;\n background: #F4F3F0;\n @include media_desktop {\n display: table-row;\n }\n & &__label{\n display: table-cell;\n padding: 16px;\n text-align: center;\n background: #F4F3F0;\n overflow-x: hidden;\n font-weight: bold;\n }\n}\n.ec-cartCompleteRole {\n @include container;\n}\n/*\nカート内商品\n\nカート内のアイテムを表示するテーブル行です。\nスマホでは非表示となります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRow\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.4\n*/\n\n.ec-cartRow{\n display: table-row;\n & &__delColumn{\n border-bottom: 1px dotted #ccc;\n text-align: center;\n display: table-cell;\n width: 14%;\n vertical-align: middle;\n @include media_desktop{\n width: 8.3333333%;\n }\n .ec-icon {\n img {\n width: 1.5em;\n height: 1.5em;\n @include media_desktop {\n width: 1em;\n height: 1em;\n }\n }\n }\n }\n & &__contentColumn{\n border-bottom: 1px dotted #ccc;\n padding: 10px 0;\n display: table;\n @include media_desktop {\n display: table-cell;\n }\n }\n & &__img{\n display: table-cell;\n width: 40%;\n vertical-align: middle;\n padding-right: 10px;\n @include media_desktop {\n display: inline-block;\n min-width: 80px;\n max-width: 100px;\n padding-right: 0;\n }\n }\n & &__summary{\n display: table-cell;\n margin-left: 5px;\n font-weight: bold;\n vertical-align: middle;\n width: 46%;\n @include media_desktop {\n display: inline-block;\n margin-left: 20px;\n vertical-align: middle;\n }\n .ec-cartRow__name {\n margin-bottom: 5px;\n }\n .ec-cartRow__sutbtotalSP {\n display: block;\n font-weight: normal;\n @include media_desktop {\n display: none;\n }\n }\n }\n & &__amountColumn{\n display: table-cell;\n border-bottom: 1px dotted #ccc;\n vertical-align: middle;\n text-align: center;\n width: 20%;\n @include media_desktop {\n width: 16.66666667%;\n }\n\n .ec-cartRow__amount {\n display: none;\n margin-bottom: 10px;\n @include media_desktop {\n display: block;\n }\n }\n .ec-cartRow__amountSP {\n display: block;\n margin-bottom: 10px;\n @include media_desktop {\n display: none;\n }\n }\n\n .ec-cartRow__amountUpDown {\n display: flex;\n justify-content: center;\n @include media_desktop {\n display: block;\n }\n }\n\n .ec-cartRow__amountUpButton {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff;\n\n\n .ec-cartRow__amountUpButton__icon {\n img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%;\n }\n }\n }\n .ec-cartRow__amountDownButton {\n margin: 0 2px;\n display: inline-block;\n border: 2px solid #c9c9c9;\n border-radius: 50%;\n width: 30px;\n min-width: 30px;\n max-width: 30px;\n height: 30px;\n cursor: pointer;\n line-height: 40px;\n vertical-align: middle;\n position: relative;\n text-align: center;\n background: #fff;\n\n .ec-cartRow__amountDownButton__icon {\n img {\n display: block;\n margin-left: -0.4em;\n width: .8em;\n height: .8em;\n position: absolute;\n top: 28%;\n left: 50%;\n }\n }\n }\n\n .ec-cartRow__amountDownButtonDisabled {\n @extend .ec-cartRow__amountDownButton;\n cursor: default;\n }\n }\n & &__subtotalColumn{\n display: none;\n border-bottom: 1px dotted #ccc;\n text-align: right;\n width: 16.66666667%;\n @include media_desktop {\n display: table-cell;\n }\n }\n}\n\n/*\nカート内商品(商品が1の場合)\n\n商品が1の場合はカート商品を減らす「-」ボタンの無効化状態になります。\n\nex [カートページ テーブル部分](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartTable\n +ec-cartRowOnly\n\nsg-wrapper:\n
\n \n
\n\n\nStyleguide 15.1.5\n*/\n\n.ec-cartRow{\n & &__amountColumn{\n .ec-cartRow__amountDownButtonDisabled {\n @extend .ec-cartRow__amountDownButton;\n cursor: default;\n }\n }\n}\n\n/*\nアラート\n\nカート内の商品に問題があることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-cartRole\n .ec-cartRole__cart\n +ec-alert-warning\n\nStyleguide 15.1.6\n*/\n\n.ec-alert-warning {\n width: 100%;\n padding: 10px;\n text-align: center;\n background: #F99;\n margin-bottom: 20px;\n\n\n & &__icon {\n display: inline-block;\n margin-right: 1rem;\n width: 20px;\n height: 20px;\n color: #fff;\n fill: #fff;\n vertical-align: top;\n }\n & &__text {\n display: inline-block;\n font-size: 16px;\n font-weight: bold;\n color: #fff;\n position: relative;\n }\n}\n\n\n\n\n/*\nアラート(空)\n\nカートが空であることを示す警告メッセージです。\n\nex [マイページ カート](http://demo3.ec-cube.net/cart)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/15.1.cart.pug\n.ec-off3Grid\n .ec-off3Grid__cell\n +ec-alert-warningEnpty\n\nStyleguide 15.1.7\n*/\n","@import \"../mixins/media\";\n@import \"../mixins/clearfix\";\n@import \"../mixins/projects\";\n/*\n注文内容確認\n\nカート内 注文内容確認に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/shopping)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderRole\n\nStyleguide 15.2\n*/\n.ec-orderRole{\n @include container;\n display: flex;\n flex-direction: column;\n margin-top: 0;\n @include media_desktop {\n margin-top: 20px;\n flex-direction: row;\n }\n .ec-inlineBtn {\n font-weight: normal;\n }\n & &__detail{\n padding: 0;\n width: 100%;\n @include media_desktop {\n padding: 0 16px;\n width: 66.66666%;\n }\n }\n & &__summary{\n width: 100%;\n .ec-inlineBtn {\n display: inline-block;\n }\n @include media_desktop {\n width: 33.33333%;\n padding: 0 16px;\n .ec-inlineBtn {\n display: none;\n }\n }\n }\n .ec-borderedList {\n margin-bottom: 20px;\n border-top: 1px dotted #ccc;\n @include media_desktop {\n border-top: none;\n }\n }\n\n}\n\n/*\n注文履歴詳細 オーダ情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderInfo\n\nStyleguide 15.2.1\n*/\n.ec-orderOrder{\n margin-bottom: 30px;\n & &__items{\n @include borderBottom;\n @include borderTop;\n }\n}\n\n/*\n注文履歴詳細 お客様情報\n\nマイページ 注文詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ オーダ情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAccount\n\nStyleguide 15.2.2\n*/\n.ec-orderAccount{\n margin-bottom: 30px;\n p {\n margin-bottom: 0;\n }\n @include clearfix;\n & &__change{\n display: inline-block;\n margin-left: 10px;\n float: right;\n }\n & &__account {\n margin-bottom: 16px;\n }\n\n}\n\n\n/*\n注文詳細 配送情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 配送情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderDelivery\n\nStyleguide 15.2.3\n*/\n.ec-orderDelivery{\n & &__title{\n padding: 16px 0 17px;\n font-weight: bold;\n font-size: 18px;\n position: relative;\n }\n & &__change{\n display: inline-block;\n position: absolute;\n right: 0;\n top:0;\n }\n & &__items{\n @include borderBottom;\n @include borderTop;\n }\n & &__address{\n margin: 10px 0 18px ;\n p{\n margin:0;\n }\n }\n & &__edit{\n }\n\n}\n\n\n/*\n注文履歴詳細 支払情報\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 支払情報(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderPayment\n .ec-rectHeading\n h2 お支払方法\n p 支払方法: 郵便振替\n\nStyleguide 15.2.4\n*/\n.ec-orderPayment{\n\n}\n\n\n/*\n注文履歴詳細 お問い合わせ\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ お問い合わせ(要ログイン → 詳細を見るボタン押下)](http://demo3.ec-cube.net/mypage)\n\nMarkup:\n.ec-orderRole\n .ec-orderConfirm\n .ec-rectHeading\n h2 お問い合わせ\n p 記載なし\n\nStyleguide 15.2.5\n*/\n.ec-orderConfirm{\n margin-bottom: 20px;\n @include media_desktop {\n margin-bottom: 0;\n }\n .ec-input {\n textarea {\n height: 96px;\n }\n }\n\n}\n\n\n/*\nお届け先の複数指定\n\nお届け先の複数指定に関するコンポーネントを定義します。\n\nex [マイページ お届け先の複数指定](http://demo3.ec-cube.net/shopping/shipping_multiple)\n(商品購入画面 → 「お届け先を追加する」を押下)\n\nMarkup:\ninclude /assets/tmpl/elements/15.2.order.pug\n+ec-orderAddAddress\n\nStyleguide 15.2.6\n*/\n.ec-AddAddress {\n padding: 0 10px;\n @include media_desktop {\n margin: 0 10%;\n }\n\n & &__info {\n margin-bottom: 32px;\n text-align: center;\n font-size: 16px;\n }\n & &__add {\n border-top: 1px solid #f4f4f4;\n padding-top: 20px;\n margin-bottom: 20px;\n }\n & &__item {\n display: table;\n padding:16px;\n background: #f4f4f4;\n margin-bottom: 16px;\n }\n & &__itemThumb {\n display: table-cell;\n min-width: 160px;\n width: 20%;\n img {\n width: 100%;\n }\n }\n & &__itemtContent {\n display: table-cell;\n vertical-align: middle;\n padding-left: 16px;\n font-size:16px;\n }\n & &__itemtTitle {\n font-weight: bold;\n margin-bottom: 10px;\n }\n & &__itemtSize {\n margin-bottom: 10px;\n }\n & &__itemtPrice {\n\n }\n & &__itemtNumber {\n\n }\n & &__select {\n margin-bottom: 5px;\n }\n & &__selectAddress {\n display: inline-block;\n label {\n font-size: 16px;\n font-weight: normal;\n }\n select {\n min-width: 100%;\n @include media_desktop {\n min-width: 350px;\n }\n }\n }\n & &__selectNumber {\n display: inline-block;\n margin-left: 30px;\n label {\n font-size: 16px;\n font-weight: normal;\n }\n input {\n display: inline-block;\n margin-left: 10px;\n width: 80px;\n }\n }\n & &__actions {\n .ec-blockBtn--action {\n margin-bottom: 8px;\n }\n }\n & &__new {\n margin-bottom: 20px;\n }\n}\n","@import \"../mixins/media\";\n@import \"../mixins/projects\";\n\n/*\n注文履歴一覧\n\nマイページ 注文履歴部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole\n\nStyleguide 16.1\n*/\n.ec-historyRole{\n & &__contents{\n padding-top: 1em;\n padding-bottom: 16px;\n border-top: 1px solid #ccc;\n display: flex;\n flex-direction: column;\n color: #525263;\n @include media_desktop {\n flex-direction: row;\n }\n }\n & &__header{\n width: 100%;\n @include media_desktop {\n width: 33.3333%;\n }\n }\n & &__detail{\n @include borderTop;\n width: 100%;\n\n .ec-imageGrid:nth-of-type(1) {\n border-top: none;\n }\n\n .ec-historyRole__detailTitle {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold;\n }\n\n .ec-historyRole__detailPrice {\n margin-bottom: 8px;\n font-size: 1.6rem;\n font-weight: bold;\n }\n\n @include media_desktop {\n width: 66.6666%;\n border-top: none;\n }\n }\n}\n\n/*\n注文履歴一覧 規格\n\nマイページ 注文履歴内アイテムの規格を定義します。\n\nex [マイページ 注文履歴一覧](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyRole-option\n\nStyleguide 16.1.1\n*/\n\n.ec-historyRole{\n & &__detail {\n .ec-historyRole__detailOption {\n display: inline-block;\n margin-bottom: 8px;\n margin-right: .5rem;\n font-size: 1.6rem;\n }\n .ec-historyRole__detailOption::after {\n display: inline-block;\n padding-left: .5rem;\n content: \"/\";\n font-weight: bold;\n }\n }\n}\n\n/*\n注文履歴一覧ヘッダ\n\n注文履歴一覧で使用するヘッダのコンポーネントを定義します。\n\nex [マイページ 注文履歴一覧ヘッダ](http://demo3.ec-cube.net/mypage)\n(要ログイン)\n\nMarkup:\ninclude /assets/tmpl/elements/16.1.history.pug\n+ec-historyHeader\np hofe\n\nStyleguide 16.1.2\n*/\n\n\n.ec-historyListHeader{\n & &__date{\n font-weight: bold;\n font-size: 16px;\n @include media_desktop {\n font-weight: bold;\n font-size: 20px;\n }\n }\n & &__action{\n margin : 16px 0;\n a {\n font-size: 12px;\n font-weight: normal;\n @include media_desktop {\n font-size: 14px;\n }\n }\n }\n}\n","@import \"../mixins/projects\";\n@import \"../mixins/media\";\n\n/*\n注文履歴詳細\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ 注文詳細](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailRole\n\nStyleguide 16.2\n*/\n\n\n/*\n注文履歴詳細 メール履歴\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMail\n\nStyleguide 16.2.5\n*/\n.ec-orderMails{\n & &__item{\n padding-bottom: 10px;\n @include borderBottom();\n }\n & &__time{\n margin: 0;\n }\n & &__body{\n display: none;\n }\n}\n\n\n\n\n/*\n注文履歴詳細 メール履歴個別\n\nマイページ 注文履歴詳細部に関する Project コンポーネントを定義します。\n\nex [マイページ メール履歴個別](http://demo3.ec-cube.net/mypage)\n(要ログイン → 詳細を見るボタン押下)\n\nMarkup:\ninclude /assets/tmpl/elements/16.2.historyDetail.pug\n+ec-historyDetailMailHistory\n\nStyleguide 16.2.6\n*/\n.ec-orderMail{\n padding-bottom: 10px;\n @include borderBottom();\n margin-bottom: 16px;\n & &__time{\n margin: 0;\n }\n & &__body{\n display: none;\n }\n & &__time {\n margin-bottom: 4px;\n }\n & &__link {\n a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n }\n a:hover {\n color: #33A8D0;\n }\n margin-bottom: 4px;\n }\n & &__close{\n a {\n color: #0092C4;\n text-decoration: none;\n cursor: pointer;\n }\n a:hover {\n color: #33A8D0;\n }\n }\n}\n","/*\n住所一覧\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [マイページ内 お届け先編集](http://demo3.ec-cube.net/mypage/delivery)\n\nMarkup:\ninclude /assets/tmpl/elements/17.1.address.pug\n+ec-addressList\n+ec-addressRole\n\nsg-wrapper:\n
\n \n
\n\nStyleguide 17.1\n\n*/\n.ec-addressRole{\n & &__item{\n border-top: 1px dotted #ccc;\n }\n & &__actions{\n margin-top: 32px;\n padding-bottom:20px;\n border-bottom: 1px dotted #ccc;\n }\n}\n.ec-addressList{\n & &__item{\n display: table;\n width: 100%;\n position: relative;\n border-bottom: 1px dotted #ccc;\n }\n & &__remove{\n //display: table-cell;\n vertical-align: middle;\n padding: 16px;\n text-align: center;\n .ec-icon img {\n width: 1em;\n height: 1em;\n }\n }\n & &__address{\n display: table-cell;\n vertical-align: middle;\n padding: 16px;\n margin-right:4em;\n width: 80%;\n }\n & &__action{\n position: relative;\n vertical-align: middle;\n text-align: right;\n top: 27px;\n padding-right: 10px;\n }\n}\n","@import \"../mixins/media\";\n/*\nパスワードリセット\n\nカート 注文詳細 に関する Project コンポーネントを定義します。\n\nex [パスワードリセット画面](http://demo3.ec-cube.net/forgot)\n\n(カート内に商品がある状態でアクセス)\n\nMarkup:\ninclude /assets/tmpl/elements/18.1.password.pug\n+ec-passwordRole\n\nStyleguide 18.1\n\n*/\n.ec-forgotRole{\n @include container;\n & &__intro {\n font-size: 16px;\n }\n & &__form {\n margin-bottom: 16px;\n }\n\n}\n","@import \"../mixins/media\";\n/*\n会員登録\n\n新規会員登録 に関する Project コンポーネントを定義します。\n\nex [新規会員登録画面 会員登録](http://demo3.ec-cube.net/entry)\n\nMarkup:\ninclude /assets/tmpl/elements/19.1.register.pug\n+ec-registerRole\n\nStyleguide 19.1\n\n*/\n.ec-registerRole{\n @include container;\n & &__actions {\n padding-top:20px;\n text-align: center;\n @include media_desktop {\n text-align: left;\n }\n p {\n margin-bottom: 16px;\n }\n }\n .ec-blockBtn--action {\n margin-bottom: 16px;\n }\n}\n.ec-registerCompleteRole {\n @include container;\n}\n","@import \"../mixins/media\";\n/*\nお問い合わせ\n\nお問い合わせ に関する Project コンポーネントを定義します。\n\nex [お問い合わせ](http://demo3.ec-cube.net/contact)\n\nMarkup:\ninclude /assets/tmpl/elements/19.2.contact.pug\n+ec-contactRole\n\nStyleguide 19.2\n\n*/\n.ec-contactRole{\n @include container;\n & &__actions {\n padding-top:20px;\n }\n p {\n margin:16px 0;\n }\n\n}\n.ec-contactConfirmRole {\n @include container;\n & &__actions {\n padding-top:20px;\n }\n .ec-blockBtn--action {\n margin-bottom: 16px;\n }\n}\n.ec-contactCompleteRole {\n @include container;\n}\n","@import \"../mixins/media\";\n/*\nお客様情報の入力\n\nログインせずゲストとして商品を購入する際の、お客様情報の入力 に関する Project コンポーネントを定義します。\n\nex [カートSTEP2 お客様情報の入力(ゲスト購入)](http://demo3.ec-cube.net/shopping/nonmember)\n\nMarkup:\ninclude /assets/tmpl/elements/19.3.customer.pug\n+ec-customerRole\nhoge\n\nStyleguide 19.3\n\n*/\n.ec-customerRole{\n @include container;\n & &__actions {\n padding-top:20px;\n }\n .ec-blockBtn--action {\n margin-bottom: 10px;\n @include media_desktop {\n margin-bottom: 16px;\n }\n }\n}\n\n.ec-contactConfirmRole {\n @include container;\n & &__actions {\n padding-top:20px;\n }\n .ec-blockBtn--action {\n margin-bottom: 16px;\n }\n}\n.ec-contactCompleteRole {\n @include container;\n}\n","@import \"../mixins/variables\";\n@import \"../mixins/media\";\n@import \"../mixins/animation\";\n/*\n404ページ\n\n404 エラー画面で使用するページコンポーネントです。\n\nex [404エラー画面](http://demo3.ec-cube.net/404)\n\nMarkup:\ninclude /assets/tmpl/elements/20.1.404.pug\n+ec-404Role\n\nStyleguide 20.1\n\n*/\n.ec-404Role{\n @include commonStyle();\n width: 100%;\n height: 100vh;\n background-color: #f2f2f2;\n text-align: center;\n box-sizing: border-box;\n & &__icon{\n img {\n width: 1em;\n height: 1em;\n }\n }\n & &__title{\n font-weight: bold;\n font-size: 25px;\n }\n\n}\n","@import \"../mixins/media\";\n/*\n退会手続き\n\n退会手続きで使用するページコンポーネントです。\n\nex [退会手続き](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawRole\n\nStyleguide 21.1\n\n*/\n.ec-withdrawRole{\n @include container;\n text-align: center;\n padding: 0 16px;\n & &__title{\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px;\n }\n & &__description{\n margin-bottom: 32px;\n font-size: 16px;\n }\n .ec-icon {\n img {\n width: 100px;\n height: 100px;\n }\n }\n}/*\n退会手続き実行確認\n\n退会手続き実行確認で使用するページコンポーネントです。\n\nex [退会手続き 退会手続きへボタン→押下](http://demo3.ec-cube.net/mypage/withdraw)\n\nMarkup:\ninclude /assets/tmpl/elements/21.1.withdraw.pug\n+ec-withdrawConfirm\n\nStyleguide 21.1.2\n\n*/\n.ec-withdrawConfirmRole {\n & &__cancel {\n margin-bottom: 20px;\n }\n & &__title{\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px;\n }\n & &__description{\n margin-bottom: 32px;\n font-size: 16px;\n }\n .ec-icon {\n img {\n width: 100px;\n height: 100px;\n }\n }\n}\n","@import \"../mixins/media\";\n/*\n会員情報編集完了\n\n会員情報編集完了で使用するページコンポーネントです。\n\nex [会員情報編集完了](http://demo3.ec-cube.net/mypage/change_complete)\n\nMarkup:\ninclude /assets/tmpl/elements/22.1.editComplete.pug\n+ec-userEditCompleteRole\n\nStyleguide 22.1\n\n*/\n.ec-userEditCompleteRole{\n @include container;\n text-align: center;\n padding: 0 16px;\n & &__title{\n margin-bottom: 16px;\n font-weight: bold;\n font-size: 24px;\n @include media_desktop(){\n font-size: 32px;\n }\n }\n & &__description{\n margin-bottom: 32px;\n font-size: 16px;\n }\n}\n"]} \ No newline at end of file diff --git a/html/template/default/assets/scss/project/_13.4.cartModal.scss b/html/template/default/assets/scss/project/_13.4.cartModal.scss index 06599f8c715..e182ce63593 100644 --- a/html/template/default/assets/scss/project/_13.4.cartModal.scss +++ b/html/template/default/assets/scss/project/_13.4.cartModal.scss @@ -14,101 +14,65 @@ Styleguide 13.4 */ .ec-modal { - - .checkbox { - display: none; + display: none; + position: fixed; + top: 0; + left: 0; + z-index: 99999; + width: 100%; + height: 100%; + + &.small { + width: 30%; } - .ec-modal-overlay { - opacity: 0; - transition: all 0.3s ease; + &.full { width: 100%; height: 100%; - position: fixed; - top: 0; - left: 0; - z-index: -100; - transform: scale(1); + } + + .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-wrap { - background-color: #fff; + position: relative; + border-radius: 2px; border: 1px solid #333; + background-color: #fff; width: 90%; margin: 20px; padding: 40px 5px; - border-radius: 2px; - transition: all 0.5s ease; - -ms-flex-item-align: center; - align-self: center; - - .ec-modal-box { - text-align: center; - } - - .ec-modal-box div { - margin-top: 20px; - } - @include media_desktop { - & { - padding: 40px 10px; - width: 50%; - margin: 20px auto; - } - } - - &.small { - width: 30%; - } - - &.full { - width: 100%; - height: 100%; + padding: 40px 10px; + width: 50%; + margin: 20px auto; } } - .ec-modal-overlay { - .ec-modal-close { - position: absolute; - right: 20px; - top: 10px; - font-size: 20px; - height: 30px; - width: 20px; - - &:hover { - cursor: pointer; - color: #4b5361; - } + .ec-modal-close { + cursor: pointer; + position: absolute; + right: 20px; + top: 10px; + font-size: 20px; + height: 30px; + width: 20px; + &:hover { + color: #4b5361; } } - .ec-modal-overlay-close { - display: none; - width: 100%; - height: 100%; - position: fixed; - left: 0; - top: 0; + .ec-modal-box { + text-align: center; } - input:checked { - ~ .ec-modal-overlay { - transform: scale(1); - opacity: 1; - z-index: 9997; - overflow: auto; - .ec-modal-overlay-close { - display: block; - } - } - - ~ .ec-modal-overlay .ec-modal-wrap { - transform: translateY(0); - z-index: 9999; - } + .ec-role { + margin-top: 20px; } } diff --git a/src/Eccube/Resource/template/default/Product/detail.twig b/src/Eccube/Resource/template/default/Product/detail.twig index 46e96b16911..30640909f8e 100755 --- a/src/Eccube/Resource/template/default/Product/detail.twig +++ b/src/Eccube/Resource/template/default/Product/detail.twig @@ -187,7 +187,7 @@ file that was distributed with this source code. $('#ec-modal-header').html(this); }); - $('#ec-modal-checkbox').prop('checked', true); + $('.ec-modal').show() // カートブロックを更新する $.ajax({ @@ -205,6 +205,10 @@ file that was distributed with this source code. }); }); }); + + $('.ec-modal-overlay, .ec-modal .ec-inlineBtn--cancel').on('click', function() { + $('.ec-modal').hide() + }); {% endblock %} @@ -336,15 +340,13 @@ file that was distributed with this source code. {{ form_rest(form) }}
-
-
- +
{{ 'front.product.add_cart_complete'|trans }}
- + {{ 'front.product.continue'|trans }} {{ 'common.go_to_cart'|trans }}
diff --git a/src/Eccube/Resource/template/default/Product/list.twig b/src/Eccube/Resource/template/default/Product/list.twig index a8d7f0e2fc8..9e7852b451b 100644 --- a/src/Eccube/Resource/template/default/Product/list.twig +++ b/src/Eccube/Resource/template/default/Product/list.twig @@ -68,7 +68,7 @@ file that was distributed with this source code. $('#ec-modal-header').html(this); }); - $('#ec-modal-checkbox').prop('checked', true); + $('.ec-modal').show() // カートブロックを更新する $.ajax({ @@ -86,6 +86,10 @@ file that was distributed with this source code. }); }); }); + + $('.ec-modal-overlay, .ec-modal .ec-inlineBtn--cancel').on('click', function() { + $('.ec-modal').hide() + }); {% endblock %} @@ -205,15 +209,13 @@ file that was distributed with this source code.
-
-
- +
{{ 'front.product.add_cart_complete'|trans }}
From d88e9758df11c28faa899acfc8029eac13850dc1 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Mon, 9 Mar 2020 16:51:00 +0900 Subject: [PATCH 003/207] =?UTF-8?q?EccubeEvents::ADMIN=5FADMIM=5FINDEX=5FS?= =?UTF-8?q?ALES=20=E3=81=A7=E3=82=B0=E3=83=A9=E3=83=95=E3=81=AE=E9=9B=86?= =?UTF-8?q?=E8=A8=88=E6=9D=A1=E4=BB=B6=E3=82=82=E5=A4=89=E6=9B=B4=E5=8F=AF?= =?UTF-8?q?=E8=83=BD=E3=81=AA=E3=82=88=E3=81=86=E3=81=AB=E3=82=A4=E3=83=99?= =?UTF-8?q?=E3=83=B3=E3=83=88=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Controller/Admin/AdminController.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/Eccube/Controller/Admin/AdminController.php b/src/Eccube/Controller/Admin/AdminController.php index 80ee0ccce82..b0ff9758d5e 100644 --- a/src/Eccube/Controller/Admin/AdminController.php +++ b/src/Eccube/Controller/Admin/AdminController.php @@ -285,6 +285,15 @@ public function sale(Request $request) return $this->json(['status' => 'NG'], 400); } + $event = new EventArgs( + [ + 'excludes' => $this->excludes, + ], + $request + ); + $this->eventDispatcher->dispatch(EccubeEvents::ADMIN_ADMIM_INDEX_SALES, $event); + $this->excludes = $event->getArgument('excludes'); + // 週間の売上金額 $toDate = Carbon::now(); $fromDate = Carbon::today()->subWeek(); From c3b36ef3922a534921640b5ddde8b536b7bb49a2 Mon Sep 17 00:00:00 2001 From: kiy0taka Date: Thu, 2 Jul 2020 19:17:14 +0900 Subject: [PATCH 004/207] =?UTF-8?q?=E3=83=97=E3=83=A9=E3=82=B0=E3=82=A4?= =?UTF-8?q?=E3=83=B3=E3=81=8B=E3=82=89Symfony=20Bundle=E3=82=92=E3=82=A4?= =?UTF-8?q?=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=81=A7=E3=81=8D?= =?UTF-8?q?=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Kernel.php | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/Eccube/Kernel.php b/src/Eccube/Kernel.php index cea8e985f35..174051f0b3d 100644 --- a/src/Eccube/Kernel.php +++ b/src/Eccube/Kernel.php @@ -73,6 +73,28 @@ public function registerBundles() yield new $class(); } } + + $pluginDir = $this->getProjectDir().'/app/Plugin'; + $finder = (new Finder()) + ->in($pluginDir) + ->sortByName() + ->depth(0) + ->directories(); + $plugins = array_map(function ($dir) { + return $dir->getBaseName(); + }, iterator_to_array($finder)); + + foreach ($plugins as $code) { + $pluginBundles = $pluginDir.'/'.$code.'/Resource/config/bundles.php'; + if (file_exists($pluginBundles)) { + $contents = require $pluginBundles; + foreach ($contents as $class => $envs) { + if (isset($envs['all']) || isset($envs[$this->environment])) { + yield new $class(); + } + } + } + } } /** From eefc87cda329dc9f4d97fb83b7a7879c5dcc594e Mon Sep 17 00:00:00 2001 From: kiy0taka Date: Thu, 2 Jul 2020 19:23:58 +0900 Subject: [PATCH 005/207] =?UTF-8?q?=E3=83=97=E3=83=A9=E3=82=B0=E3=82=A4?= =?UTF-8?q?=E3=83=B3=E5=86=85=E3=81=AE=E3=83=AB=E3=83=BC=E3=83=86=E3=82=A3?= =?UTF-8?q?=E3=83=B3=E3=82=B0=E8=A8=AD=E5=AE=9A=E3=83=95=E3=82=A1=E3=82=A4?= =?UTF-8?q?=E3=83=AB=E3=82=92=E8=AA=AD=E3=81=BF=E8=BE=BC=E3=82=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Kernel.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Eccube/Kernel.php b/src/Eccube/Kernel.php index 174051f0b3d..c2a8e6ab6a9 100644 --- a/src/Eccube/Kernel.php +++ b/src/Eccube/Kernel.php @@ -189,6 +189,8 @@ protected function configureRoutes(RouteCollectionBuilder $routes) $builder = $routes->import($dir, '/', 'annotation'); $builder->setSchemes($scheme); } + $builder = $routes->import($pluginDir.'/'.$plugin.'/Resource/config/routes'.self::CONFIG_EXTS, '/', 'glob'); + $builder->setSchemes($scheme); } } From edf2bab6b61ee5c76d6338b7583506e8335ff744 Mon Sep 17 00:00:00 2001 From: kiy0taka Date: Thu, 2 Jul 2020 20:11:24 +0900 Subject: [PATCH 006/207] bump to php 7.2.0 --- composer.json | 4 ++-- symfony.lock | 11 ++++++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/composer.json b/composer.json index 4d459c9728c..8928ee350b7 100644 --- a/composer.json +++ b/composer.json @@ -12,7 +12,7 @@ }, "minimum-stability": "stable", "require": { - "php": "^7.1.3", + "php": "^7.2", "ext-intl": "*", "ext-mbstring": "*", "composer/ca-bundle": "^1.1", @@ -182,7 +182,7 @@ }, "config": { "platform": { - "php": "7.1.3" + "php": "7.2.0" }, "preferred-install": { "*": "dist" diff --git a/symfony.lock b/symfony.lock index a5fe3b35589..989c77d6f47 100644 --- a/symfony.lock +++ b/symfony.lock @@ -201,7 +201,7 @@ "version": "1.0.1" }, "php": { - "version": "7.1.3" + "version": "7.2.0" }, "php-coveralls/php-coveralls": { "version": "v2.0.0" @@ -335,6 +335,9 @@ "setasign/fpdi-tcpdf": { "version": "v2.0.0" }, + "skorp/detect-incompatible-samesite-useragents": { + "version": "1.0.0" + }, "suncat/mobile-detect-bundle": { "version": "1.0", "recipe": { @@ -482,9 +485,15 @@ "symfony/polyfill-ctype": { "version": "v1.8.0" }, + "symfony/polyfill-iconv": { + "version": "v1.17.1" + }, "symfony/polyfill-intl-icu": { "version": "v1.6.0" }, + "symfony/polyfill-intl-idn": { + "version": "v1.17.1" + }, "symfony/polyfill-mbstring": { "version": "v1.6.0" }, From 27e653caac6b72513b7aa72bb1f6a3db6b8a0222 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 13 Jul 2020 14:47:48 +0900 Subject: [PATCH 007/207] =?UTF-8?q?composer.json=20=E3=81=AE=20extra.entit?= =?UTF-8?q?y-namespace=20=E4=BB=A5=E4=B8=8B=E3=81=AE=E3=83=86=E3=83=BC?= =?UTF-8?q?=E3=83=96=E3=83=AB=E3=82=92=E5=89=8A=E9=99=A4=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Service/Composer/ComposerApiService.php | 37 ++++++++++++++++++- 1 file changed, 35 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Service/Composer/ComposerApiService.php b/src/Eccube/Service/Composer/ComposerApiService.php index c6dec916b9f..ac810660377 100644 --- a/src/Eccube/Service/Composer/ComposerApiService.php +++ b/src/Eccube/Service/Composer/ComposerApiService.php @@ -18,10 +18,12 @@ use Eccube\Entity\BaseInfo; use Eccube\Exception\PluginException; use Eccube\Repository\BaseInfoRepository; +use Eccube\Service\SchemaService; use Symfony\Component\Console\Input\ArrayInput; use Symfony\Component\Console\Output\BufferedOutput; use Symfony\Component\Console\Output\OutputInterface; + /** * Class ComposerApiService */ @@ -43,9 +45,17 @@ class ComposerApiService implements ComposerServiceInterface */ private $baseInfoRepository; - public function __construct(EccubeConfig $eccubeConfig, BaseInfoRepository $baseInfoRepository) + /** @var SchemaService */ + private $schemaService; + + public function __construct( + EccubeConfig $eccubeConfig, + BaseInfoRepository $baseInfoRepository, + SchemaService $schemaService + ) { $this->eccubeConfig = $eccubeConfig; + $this->schemaService = $schemaService; $this->baseInfoRepository = $baseInfoRepository; } @@ -115,8 +125,9 @@ public function execRequire($packageName, $output = null) */ public function execRemove($packageName, $output = null) { - $packageName = explode(' ', trim($packageName)); + $this->dropTableToExtra($packageName); + $packageName = explode(' ', trim($packageName)); return $this->runCommand([ 'command' => 'remove', 'packages' => $packageName, @@ -369,4 +380,26 @@ public function configureRepository(BaseInfo $BaseInfo) { $this->init($BaseInfo); } + + private function dropTableToExtra($packageNames) + { + $projectRoot = $this->eccubeConfig->get('kernel.project_dir'); + foreach (explode(' ', trim($packageNames)) as $packageName) { + $pluginCode = basename($packageName); + $composerJsonPath = $projectRoot.'/app/Plugin/'.$pluginCode.'/composer.json'; + if (file_exists($composerJsonPath) === false) { + throw new PluginException("${composerJsonPath} not found."); + } + $json = json_decode(file_get_contents($composerJsonPath), true); + if ($json === null) { + throw new PluginException("Invalid json format. [${composerJsonPath}]"); + } + + if (array_key_exists('entity-namespaces', $json['extra']) && is_array($json['extra']['entity-namespaces'])) { + foreach ($json['extra']['entity-namespaces'] as $namespace) { + $this->schemaService->dropTable($namespace); + } + } + } + } } From 85f80083f97e1a4a7ac97e0d68397b06d08b51c2 Mon Sep 17 00:00:00 2001 From: kiy0taka Date: Wed, 15 Jul 2020 13:26:50 +0900 Subject: [PATCH 008/207] =?UTF-8?q?=E3=83=97=E3=83=A9=E3=82=B0=E3=82=A4?= =?UTF-8?q?=E3=83=B3=E5=89=8A=E9=99=A4=E6=99=82=E3=81=AEMappingException?= =?UTF-8?q?=E3=82=92=E5=9B=9E=E9=81=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Command/ComposerRemoveCommand.php | 14 +++ .../Mapping/Driver/NopAnnotationDriver.php | 22 +++++ .../Service/Composer/ComposerApiService.php | 44 +++++---- src/Eccube/Service/PluginContext.php | 89 +++++++++++++++++++ src/Eccube/Service/PluginService.php | 14 ++- src/Eccube/Service/SchemaService.php | 17 +++- 6 files changed, 174 insertions(+), 26 deletions(-) create mode 100644 src/Eccube/Doctrine/ORM/Mapping/Driver/NopAnnotationDriver.php create mode 100644 src/Eccube/Service/PluginContext.php diff --git a/src/Eccube/Command/ComposerRemoveCommand.php b/src/Eccube/Command/ComposerRemoveCommand.php index 1422d8b99a6..d4259f13a06 100644 --- a/src/Eccube/Command/ComposerRemoveCommand.php +++ b/src/Eccube/Command/ComposerRemoveCommand.php @@ -15,9 +15,11 @@ use Eccube\Service\Composer\ComposerApiService; use Symfony\Component\Console\Command\Command; +use Symfony\Component\Console\Input\ArrayInput; use Symfony\Component\Console\Input\InputArgument; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Style\SymfonyStyle; class ComposerRemoveCommand extends Command { @@ -42,5 +44,17 @@ protected function configure() protected function execute(InputInterface $input, OutputInterface $output) { $this->composerService->execRemove($input->getArgument('package'), $output); + + $io = new SymfonyStyle($input, $output); + try { + /* @var Command $command */ + $command = $this->getApplication()->get('cache:clear'); + $command->run(new ArrayInput([ + 'command' => 'cache:clear', + '--no-warmup' => true, + ]), $io); + } catch (\Exception $e) { + $io->error($e->getMessage()); + } } } diff --git a/src/Eccube/Doctrine/ORM/Mapping/Driver/NopAnnotationDriver.php b/src/Eccube/Doctrine/ORM/Mapping/Driver/NopAnnotationDriver.php new file mode 100644 index 00000000000..d9bf5256c21 --- /dev/null +++ b/src/Eccube/Doctrine/ORM/Mapping/Driver/NopAnnotationDriver.php @@ -0,0 +1,22 @@ +eccubeConfig = $eccubeConfig; $this->schemaService = $schemaService; $this->baseInfoRepository = $baseInfoRepository; + $this->pluginContext = $pluginContext; } /** @@ -87,7 +93,7 @@ public function execInfo($pluginName, $version) * Run execute command * * @param string $packageName format "foo/bar foo/bar:1.0.0" - * @param null|OutputInterface $output + * @param OutputInterface|null $output * * @return string * @@ -115,7 +121,7 @@ public function execRequire($packageName, $output = null) * Run remove command * * @param string $packageName format "foo/bar foo/bar:1.0.0" - * @param null|OutputInterface $output + * @param OutputInterface|null $output * * @return string * @@ -128,6 +134,7 @@ public function execRemove($packageName, $output = null) $this->dropTableToExtra($packageName); $packageName = explode(' ', trim($packageName)); + return $this->runCommand([ 'command' => 'remove', 'packages' => $packageName, @@ -142,7 +149,7 @@ public function execRemove($packageName, $output = null) * Run update command * * @param boolean $dryRun - * @param null|OutputInterface $output + * @param OutputInterface|null $output * * @throws PluginException * @throws \Doctrine\ORM\NoResultException @@ -163,7 +170,7 @@ public function execUpdate($dryRun, $output = null) * Run install command * * @param boolean $dryRun - * @param null|OutputInterface $output + * @param OutputInterface|null $output * * @throws PluginException * @throws \Doctrine\ORM\NoResultException @@ -274,7 +281,7 @@ public function setWorkingDir($workingDir) * Run composer command * * @param array $commands - * @param null|OutputInterface $output + * @param OutputInterface|null $output * @param bool $init * * @return string @@ -370,8 +377,6 @@ private function initConsole() } /** - * @param BaseInfo $BaseInfo - * * @throws PluginException * @throws \Doctrine\ORM\NoResultException * @throws \Doctrine\ORM\NonUniqueResultException @@ -383,22 +388,13 @@ public function configureRepository(BaseInfo $BaseInfo) private function dropTableToExtra($packageNames) { - $projectRoot = $this->eccubeConfig->get('kernel.project_dir'); foreach (explode(' ', trim($packageNames)) as $packageName) { $pluginCode = basename($packageName); - $composerJsonPath = $projectRoot.'/app/Plugin/'.$pluginCode.'/composer.json'; - if (file_exists($composerJsonPath) === false) { - throw new PluginException("${composerJsonPath} not found."); - } - $json = json_decode(file_get_contents($composerJsonPath), true); - if ($json === null) { - throw new PluginException("Invalid json format. [${composerJsonPath}]"); - } + $this->pluginContext->setCode($pluginCode); + $this->pluginContext->setUninstall(); - if (array_key_exists('entity-namespaces', $json['extra']) && is_array($json['extra']['entity-namespaces'])) { - foreach ($json['extra']['entity-namespaces'] as $namespace) { - $this->schemaService->dropTable($namespace); - } + foreach ($this->pluginContext->getExtraEntityNamespaces() as $namespace) { + $this->schemaService->dropTable($namespace); } } } diff --git a/src/Eccube/Service/PluginContext.php b/src/Eccube/Service/PluginContext.php new file mode 100644 index 00000000000..8aa7b5b3f02 --- /dev/null +++ b/src/Eccube/Service/PluginContext.php @@ -0,0 +1,89 @@ +eccubeConfig = $eccubeConfig; + } + + public function isInstall() + { + return $this->mode === self::MODE_INSTALL; + } + + public function isUninstall() + { + return $this->mode === self::MODE_UNINSTALL; + } + + public function setInstall() + { + return $this->mode = self::MODE_INSTALL; + } + + public function setUninstall() + { + return $this->mode = self::MODE_UNINSTALL; + } + + public function setCode(string $code) + { + $this->code = $code; + } + + public function getComposerJson(): array + { + if ($this->composerJson) { + return $this->composerJson; + } + + $projectRoot = $this->eccubeConfig->get('kernel.project_dir'); + $composerJsonPath = $projectRoot.'/app/Plugin/'.$this->code.'/composer.json'; + if (file_exists($composerJsonPath) === false) { + throw new PluginException("${composerJsonPath} not found."); + } + $this->composerJson = json_decode(file_get_contents($composerJsonPath), true); + if ($this->composerJson === null) { + throw new PluginException("Invalid json format. [${composerJsonPath}]"); + } + + return $this->composerJson; + } + + public function getExtraEntityNamespaces(): array + { + $json = $this->getComposerJson(); + return isset($json['extra']) ? $json['extra']['entity-namespaces'] : []; + } +} diff --git a/src/Eccube/Service/PluginService.php b/src/Eccube/Service/PluginService.php index 9330e6548dc..e5778200ab2 100644 --- a/src/Eccube/Service/PluginService.php +++ b/src/Eccube/Service/PluginService.php @@ -100,6 +100,11 @@ class PluginService */ private $systemService; + /** + * @var PluginContext + */ + private $pluginContext; + /** * PluginService constructor. * @@ -112,6 +117,8 @@ class PluginService * @param CacheUtil $cacheUtil * @param ComposerServiceInterface $composerService * @param PluginApiService $pluginApiService + * @param SystemService $systemService + * @param PluginContext $pluginContext */ public function __construct( EntityManagerInterface $entityManager, @@ -123,7 +130,8 @@ public function __construct( CacheUtil $cacheUtil, ComposerServiceInterface $composerService, PluginApiService $pluginApiService, - SystemService $systemService + SystemService $systemService, + PluginContext $pluginContext ) { $this->entityManager = $entityManager; $this->pluginRepository = $pluginRepository; @@ -137,6 +145,7 @@ public function __construct( $this->composerService = $composerService; $this->pluginApiService = $pluginApiService; $this->systemService = $systemService; + $this->pluginContext = $pluginContext; } /** @@ -200,6 +209,9 @@ public function install($path, $source = 0) */ public function installWithCode($code) { + $this->pluginContext->setCode($code); + $this->pluginContext->setInstall(); + $pluginDir = $this->calcPluginDir($code); $this->checkPluginArchiveContent($pluginDir); $config = $this->readConfig($pluginDir); diff --git a/src/Eccube/Service/SchemaService.php b/src/Eccube/Service/SchemaService.php index 113aeb80fac..b25d14bcd4e 100644 --- a/src/Eccube/Service/SchemaService.php +++ b/src/Eccube/Service/SchemaService.php @@ -16,6 +16,7 @@ use Doctrine\Common\Annotations\AnnotationReader; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\Tools\SchemaTool; +use Eccube\Doctrine\ORM\Mapping\Driver\NopAnnotationDriver; use Eccube\Doctrine\ORM\Mapping\Driver\ReloadSafeAnnotationDriver; use Eccube\Util\StringUtil; use Symfony\Component\Finder\Finder; @@ -27,15 +28,21 @@ class SchemaService * @var EntityManagerInterface */ protected $entityManager; + /** + * @var PluginContext + */ + private $pluginContext; /** * SchemaService constructor. * * @param EntityManagerInterface $entityManager + * @param PluginContext $pluginContext */ - public function __construct(EntityManagerInterface $entityManager) + public function __construct(EntityManagerInterface $entityManager, PluginContext $pluginContext) { $this->entityManager = $entityManager; + $this->pluginContext = $pluginContext; } /** @@ -76,6 +83,14 @@ public function executeCallback(callable $callback, $generatedFiles, $proxiesDir $newDriver->setOutputDir($outputDir); $chain->addDriver($newDriver, $namespace); } + + if ($this->pluginContext->isUninstall()) { + foreach ($this->pluginContext->getExtraEntityNamespaces() as $extraEntityNamespace) { + if ($extraEntityNamespace === $namespace) { + $chain->addDriver(new NopAnnotationDriver(new AnnotationReader()), $namespace); + } + } + } } $tool = new SchemaTool($this->entityManager); From b4879379916a759551a30fb650859bfc09b8ba56 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Thu, 16 Jul 2020 09:39:18 +0900 Subject: [PATCH 009/207] Remove PHP7.1 --- .github/workflows/action.yml | 2 +- .travis.yml | 1 - composer.lock | 7 +++---- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml index 075a8fabee3..0c086fa14ef 100644 --- a/.github/workflows/action.yml +++ b/.github/workflows/action.yml @@ -22,7 +22,7 @@ jobs: fail-fast: false matrix: operating-system: [ ubuntu-18.04 ] - php: [ 7.1, 7.2, 7.3, 7.4 ] + php: [ 7.2, 7.3, 7.4 ] db: [ mysql, pgsql, sqlite3 ] include: - db: mysql diff --git a/.travis.yml b/.travis.yml index 250dc1d02c5..e3a7e287de8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,7 +20,6 @@ cache: - bin/.phpunit php: - - 7.1 - 7.2 - 7.3 - 7.4 diff --git a/composer.lock b/composer.lock index 8676bfaedf1..517361179b7 100644 --- a/composer.lock +++ b/composer.lock @@ -10621,13 +10621,12 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": "^7.1.3", + "php": "^7.2", "ext-intl": "*", "ext-mbstring": "*" }, "platform-dev": [], "platform-overrides": { - "php": "7.1.3" - }, - "plugin-api-version": "1.1.0" + "php": "7.2.0" + } } From 046266b8e8dd6aab6d9f54f37acb7d053c9f9bb0 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Thu, 16 Jul 2020 10:40:18 +0900 Subject: [PATCH 010/207] Fix undefined index > Symfony\Component\Debug\Exception\ContextErrorException: Notice: Undefined index: > entity-namespaces in /home/runner/work/ec-cube/ec-cube/src/Eccube/Service/PluginContext.php:87 --- src/Eccube/Service/PluginContext.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Eccube/Service/PluginContext.php b/src/Eccube/Service/PluginContext.php index 8aa7b5b3f02..3c7b5bd8299 100644 --- a/src/Eccube/Service/PluginContext.php +++ b/src/Eccube/Service/PluginContext.php @@ -84,6 +84,12 @@ public function getComposerJson(): array public function getExtraEntityNamespaces(): array { $json = $this->getComposerJson(); - return isset($json['extra']) ? $json['extra']['entity-namespaces'] : []; + if (isset($json['extra'])) { + if (array_key_exists('entity-namespaces', $json['extra'])) { + return $json['extra']['entity-namespaces']; + } + } + + return []; } } From 2b880925f09b585aa76fa0f70809a926b2a4f343 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Thu, 16 Jul 2020 14:58:54 +0900 Subject: [PATCH 011/207] Fix import routing --- src/Eccube/Kernel.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Kernel.php b/src/Eccube/Kernel.php index c2a8e6ab6a9..db2c344f6ae 100644 --- a/src/Eccube/Kernel.php +++ b/src/Eccube/Kernel.php @@ -189,8 +189,11 @@ protected function configureRoutes(RouteCollectionBuilder $routes) $builder = $routes->import($dir, '/', 'annotation'); $builder->setSchemes($scheme); } - $builder = $routes->import($pluginDir.'/'.$plugin.'/Resource/config/routes'.self::CONFIG_EXTS, '/', 'glob'); - $builder->setSchemes($scheme); + if (file_exists($pluginDir.'/'.$plugin.'/Resource/config')) { + + $builder = $routes->import($pluginDir.'/'.$plugin.'/Resource/config/routes'.self::CONFIG_EXTS, '/', 'glob'); + $builder->setSchemes($scheme); + } } } From 6abf0b54ac587c6a575f46b721030b1e93e3f8dc Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Fri, 17 Jul 2020 17:38:17 +0900 Subject: [PATCH 012/207] =?UTF-8?q?Symfony=20bundle=20=E3=81=AB=E4=BE=9D?= =?UTF-8?q?=E5=AD=98=E3=81=97=E3=81=9F=E3=83=97=E3=83=A9=E3=82=B0=E3=82=A4?= =?UTF-8?q?=E3=83=B3=E3=81=AEE2E=E3=83=86=E3=82=B9=E3=83=88=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codeception/_data/plugins/Bundle-1.0.0.tgz | Bin 0 -> 1665 bytes codeception/acceptance/EA10PluginCest.php | 39 +++++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 codeception/_data/plugins/Bundle-1.0.0.tgz diff --git a/codeception/_data/plugins/Bundle-1.0.0.tgz b/codeception/_data/plugins/Bundle-1.0.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..0e50a32f009daa9dc0cf7d52094a74340210d141 GIT binary patch literal 1665 zcmV-{27dV;iwFQPVi8{e1MOOEQ`<%m&S(9Ks~g59gJnrr_KZmAfa6Y>q=7LeoitF* zA)WDod{R$m8#hCLd-qO~ZNM*aik&vqen7HzZ+GwZ_V&?=!#?u^QhBycG7O_`+elq& z$0qaq#R_Dgww5s)~_?r;_8f<`P$aqpO=FtB<{x5%mXlq*Kg@#_B zc9+JeLj!`~8euL_*g?%kxp8*b1iln$gwcr8tF9<{+ZhWrj`f{)?bkXw2m;iS+!(b; zO!$EKdOENxMC4Q|!{JaTUfJtk65R{+>!_0Qe-1ekU4lA&(BWlP5N19Ks7F`~PO(nN zdsxtr?VuKWT?iyJ8CrFpGr5A8Hg?xXozFv(^znN*%!n|Ln^w!f!W1jpL+xh z`9ykH(KLp8B#tmVJPG<&l$|HpkY4sQtsg&Ry(ST1K4ISIh+Pv;I(FU&dlA^@sZ93s z1jq57QgJ%!bwV~$f*~VJ%u&Mxri}2zJ`H@r=Z$>>%lejZMuJEFdI8u()0vIPtpH2e zL+!JMfTI2-tS~G*Q>M|Sv{-uR0DA6aPqx*tWUx|zIk@6D$-pT&a3YhLJT32I-=AKV z5`z#vUaitLjF&_2v^(uvr^$CqGxpw-gMn4*zhTPr->%zMUjH{iv*Mp+;ZtpdRpM{j zGX8aY*UaO;30fHc$A|J)VZ&wkuU_As#NXOQz%+~;|80bF{I?AMEdqHdD*RGNmm`suPAU1L7A`s3(bbQ0WKCT+BHhm5RxfiaTTV+uKt%vjNivyEuMLI+Rg4 zky5eE=?z3V1LWt&2Yu1C(jUzMtjs&uA%v;GumRzsdFzo#4sM6Aiy;m%$wZ2etgD&( zr1N;zYjk37rVHhL50Zkn@fCpQ`yzMR{kt)y2Hh$X*4Y7Cq5fA*(~$k2npw~5|0ZZ0 zf7rVndbO5quu}ieu1frG)bsdngdWCU7HufEu|C4R;E8N3!GD%%+T;AMS+>OgHN(#F z-zF%^N^|U}!a&%d)NDvp=N=!Nwcl8-{CnIw`t6{7bo|~uZMHr%Tkc8g=)*y~>Ar1# z+;&iL>qfPpbU+OfqqsihTa^Lkl@LRnt3;d*ups&k85QSPX*Exe&svS<*udE#Ai6Kr zufWS9_09K<*2fbygH+{9uZ!6g(R*aSsA(dt&#qEvIZ5M6-iMt2sUWAT@GN&GZLefj zE|`@re#Odd6=x}PBfw`-m&0~+5Cb?o76KH=M+y|oH~L_vU?Ls*hFrd;s;Qr-7LuU->o8<29YWUr!JVsh$HF5++9KlC7TShi2U^Fm^8DWf$!2yze)=dlsE`)s6a*GzB`XXh z?hlz{o4TPJ$y1-i9;fP6RC3bK7U}l~1QkROo=A#OlRQO&*OLZ-RZcwyx!*0_%%s?;8wR~f6!W@bnYvW~&YiMO zZUx5^+Y$*#p~K1Cr4YR7icxv|Z72qjPlfThk{vAfPnPpvfEg4nwETZpa>^;Ee=+?H L)QHTz04@LkYtKt+ literal 0 HcmV?d00001 diff --git a/codeception/acceptance/EA10PluginCest.php b/codeception/acceptance/EA10PluginCest.php index 8b4f3dd27a9..d498d2dfabf 100644 --- a/codeception/acceptance/EA10PluginCest.php +++ b/codeception/acceptance/EA10PluginCest.php @@ -436,6 +436,15 @@ public function test_template_overwrite(\AcceptanceTester $I) $fs->remove($dir); } + public function test_bundle_install_enable_disable_remove_store(\AcceptanceTester $I) + { + $Bundle = Bundle_Store::start($I); + $Bundle->インストール() + ->有効化() + ->無効化() + ->削除(); + } + private function publishPlugin($fileName) { copy(codecept_data_dir().'/'.'plugins/'.$fileName, codecept_root_dir().'/repos/'.$fileName); @@ -965,3 +974,33 @@ public static function start(AcceptanceTester $I) return new self($I); } } + +class Bundle_Store extends Store_Plugin +{ + public function __construct(AcceptanceTester $I) + { + parent::__construct($I, 'Bundle'); + $this->tables[] = 'oauth2_client'; + $this->tables[] = 'oauth2_refresh_token'; + $this->tables[] = 'oauth2_access_token'; + $this->tables[] = 'oauth2_authorization_code'; + } + + public function 有効化() + { + parent::有効化(); + + return $this; + } + + public function 無効化() + { + parent::無効化(); + + return $this; + } + public static function start(AcceptanceTester $I) + { + return new self($I); + } +} From fe6386281e4fc8d3e220ec3d5033bc2615796d99 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 20 Jul 2020 09:18:16 +0900 Subject: [PATCH 013/207] Revert "Remove PHP7.1" This reverts commit b4879379916a759551a30fb650859bfc09b8ba56. --- .github/workflows/action.yml | 2 +- .travis.yml | 1 + composer.lock | 7 ++++--- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml index 0c086fa14ef..075a8fabee3 100644 --- a/.github/workflows/action.yml +++ b/.github/workflows/action.yml @@ -22,7 +22,7 @@ jobs: fail-fast: false matrix: operating-system: [ ubuntu-18.04 ] - php: [ 7.2, 7.3, 7.4 ] + php: [ 7.1, 7.2, 7.3, 7.4 ] db: [ mysql, pgsql, sqlite3 ] include: - db: mysql diff --git a/.travis.yml b/.travis.yml index e3a7e287de8..250dc1d02c5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,6 +20,7 @@ cache: - bin/.phpunit php: + - 7.1 - 7.2 - 7.3 - 7.4 diff --git a/composer.lock b/composer.lock index 517361179b7..8676bfaedf1 100644 --- a/composer.lock +++ b/composer.lock @@ -10621,12 +10621,13 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": "^7.2", + "php": "^7.1.3", "ext-intl": "*", "ext-mbstring": "*" }, "platform-dev": [], "platform-overrides": { - "php": "7.2.0" - } + "php": "7.1.3" + }, + "plugin-api-version": "1.1.0" } From ac02668dba409493fc08f28e5c9dbc72b487292c Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 20 Jul 2020 09:25:11 +0900 Subject: [PATCH 014/207] Add E2E testing to GitHub Actions --- .github/workflows/action.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml index 075a8fabee3..31c40e71563 100644 --- a/.github/workflows/action.yml +++ b/.github/workflows/action.yml @@ -237,6 +237,7 @@ jobs: - test_install_enable_disable_enable_disable_remove_local - test_install_remove_local - test_install_remove_store + - test_bundle_install_enable_disable_remove_store include: - db: pgsql database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db From a94f2bb59849b7b489b47a8b68cfc29d93339410 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 20 Jul 2020 09:18:16 +0900 Subject: [PATCH 015/207] Revert "Remove PHP7.1" This reverts commit b4879379916a759551a30fb650859bfc09b8ba56. --- .github/workflows/action.yml | 2 +- .travis.yml | 1 + composer.lock | 7 ++++--- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml index 0c086fa14ef..075a8fabee3 100644 --- a/.github/workflows/action.yml +++ b/.github/workflows/action.yml @@ -22,7 +22,7 @@ jobs: fail-fast: false matrix: operating-system: [ ubuntu-18.04 ] - php: [ 7.2, 7.3, 7.4 ] + php: [ 7.1, 7.2, 7.3, 7.4 ] db: [ mysql, pgsql, sqlite3 ] include: - db: mysql diff --git a/.travis.yml b/.travis.yml index e3a7e287de8..250dc1d02c5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,6 +20,7 @@ cache: - bin/.phpunit php: + - 7.1 - 7.2 - 7.3 - 7.4 diff --git a/composer.lock b/composer.lock index 517361179b7..8676bfaedf1 100644 --- a/composer.lock +++ b/composer.lock @@ -10621,12 +10621,13 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": "^7.2", + "php": "^7.1.3", "ext-intl": "*", "ext-mbstring": "*" }, "platform-dev": [], "platform-overrides": { - "php": "7.2.0" - } + "php": "7.1.3" + }, + "plugin-api-version": "1.1.0" } From bb2ea3beab07d6d99859ee832d70e5c6fa32b1e2 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 20 Jul 2020 09:30:55 +0900 Subject: [PATCH 016/207] Revert to version --- composer.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index 8928ee350b7..4d459c9728c 100644 --- a/composer.json +++ b/composer.json @@ -12,7 +12,7 @@ }, "minimum-stability": "stable", "require": { - "php": "^7.2", + "php": "^7.1.3", "ext-intl": "*", "ext-mbstring": "*", "composer/ca-bundle": "^1.1", @@ -182,7 +182,7 @@ }, "config": { "platform": { - "php": "7.2.0" + "php": "7.1.3" }, "preferred-install": { "*": "dist" From 555b5682894ead27fbd701eb30b2a77275cce5f1 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 20 Jul 2020 09:30:55 +0900 Subject: [PATCH 017/207] Revert to version --- composer.json | 4 ++-- symfony.lock | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/composer.json b/composer.json index 8928ee350b7..4d459c9728c 100644 --- a/composer.json +++ b/composer.json @@ -12,7 +12,7 @@ }, "minimum-stability": "stable", "require": { - "php": "^7.2", + "php": "^7.1.3", "ext-intl": "*", "ext-mbstring": "*", "composer/ca-bundle": "^1.1", @@ -182,7 +182,7 @@ }, "config": { "platform": { - "php": "7.2.0" + "php": "7.1.3" }, "preferred-install": { "*": "dist" diff --git a/symfony.lock b/symfony.lock index 989c77d6f47..366dae15455 100644 --- a/symfony.lock +++ b/symfony.lock @@ -201,7 +201,7 @@ "version": "1.0.1" }, "php": { - "version": "7.2.0" + "version": "7.1.3" }, "php-coveralls/php-coveralls": { "version": "v2.0.0" From ca1c17a7ab486cc60f5a76ed95851dc8a71ef18e Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 20 Jul 2020 14:05:08 +0900 Subject: [PATCH 018/207] =?UTF-8?q?=E3=82=A2=E3=83=83=E3=83=97=E3=83=87?= =?UTF-8?q?=E3=83=BC=E3=83=88=E3=81=AEE2E=E3=83=86=E3=82=B9=E3=83=88?= =?UTF-8?q?=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/action.yml | 1 + codeception/_data/plugins/Bundle-1.0.0.tgz | Bin 1665 -> 1669 bytes codeception/_data/plugins/Bundle-1.0.1.tgz | Bin 0 -> 1668 bytes codeception/acceptance/EA10PluginCest.php | 12 ++++++++++++ 4 files changed, 13 insertions(+) create mode 100644 codeception/_data/plugins/Bundle-1.0.1.tgz diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml index 31c40e71563..dd823e2ed7c 100644 --- a/.github/workflows/action.yml +++ b/.github/workflows/action.yml @@ -238,6 +238,7 @@ jobs: - test_install_remove_local - test_install_remove_store - test_bundle_install_enable_disable_remove_store + - test_bundle_install_update_enable_disable_remove_store include: - db: pgsql database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db diff --git a/codeception/_data/plugins/Bundle-1.0.0.tgz b/codeception/_data/plugins/Bundle-1.0.0.tgz index 0e50a32f009daa9dc0cf7d52094a74340210d141..1828972340b1686d6b531d8586dec6597d445b6e 100644 GIT binary patch literal 1669 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 L)QHTz04@LkYtKt+ diff --git a/codeception/_data/plugins/Bundle-1.0.1.tgz b/codeception/_data/plugins/Bundle-1.0.1.tgz new file mode 100644 index 0000000000000000000000000000000000000000..90c6781781d2272894c0c44b945f379fcad92e79 GIT binary patch literal 1668 zcmV-~27CD*iwFSZ1QlNZ1MOOEbJ|7_&S(9KD~$)7F+vguX5=Ito6w0TY3#u`oiuhe zXX!8(i<5dfz%=9j_U@e|z&0--HKa|oA1tBW+uggpy?wOu;eh!8sXW;v8HUlYZKSUC zx&BA! zFo}P1N&f0lFM3oPupaeVZDIUPtJau_zX|cL!v=VQj7Rli0sYV8|NJM2wx(5{Y3Ld1 z^k|H_G$07B5#|DgUDRrpn`ehD;7gHa7>zl->WPxKo3T*ySl@fwd8MO+AV6)&jZvG# zgb#_YrvrOJL{6nL8jW<~mA%0w(Y;Xr6jf6G&ml*mM^JYFI=svZ!puhj^$3f>Db@{n z9}60?Jro55;)RBkjMTWdN6pr|Q|V?h1JT0*jc|;78VgP@2ZH!$L`4rcFuOP$aF2i? zpGXfYn#ORS#1V#vC&A!~vhySx(#yW44dVN(S0p0LC(Iiku}{R4j-5BdegyV;DwF*@ z!EwB=RGg0c-H?ryV8{p)3)C=yDI@%FKm(ufMPpyXvc4glk>G*9UH~@HY-S^JBfwJj zQ2VSQplEOjD+~+IlxcJ+Etc*(fS!8UlU+3|8LSjw4z4&(GH^x?oXBLRPs=Z{@6Rqv zi9rY-u2yLm#>=6%+O77j)8xCQIeYKX!N5B8-!SF*Z#Qf!um9VidGXJ(@Ub?+I`KDc z8UKb|HS_pygOS-aVq7&towME9lo z6?j>uzV)uz{&1pZkg9y{^)S04dY`;3YMMyvv#S(ZPSUuN_aUc$D#+<7Jju8)jozCnm`I2Jh<@!6K*|8KLzLhy z1)RNr0{lQ8Cx9{q#X*d&IA&tTs+4sTId?|RRdNpM!aZ4KMowxJa(}+^jJuXfPP&}L z0O-SO!shEuMO-D4DHnXOQum$EtJj422Be%T+3P5mn4Ef4%vYIl=d1-!PwR(!QDwm5 zU9lv+vK-s#4Xhr=u>h^v7*HGVo^ZLJe%KJZA|A!MX;0%3KhugeQfakNH(i|u0xV(4? z2PO`JqP&x5|HYnCu=IsLW6nNYrto5aV@K=#{O2Jo)T5&R)%jnm*QfZu(UAFHwah&K zw?PTsbu+l5YI}r5&q0-)q*v!+zfYN~HpWh6A_#Im>Eb~k05g0>uIzpBFbDvZEZ_Xi ziQxIcEXbNZcO1%ma&wS$B5ySSBQxAOeo2FYf2L4NuuIH-^o<`e`LWF;#M zCGHQIWShF7o5@q3#2%;WRaA1)&lc(T2Lu&F5S~biag^$os>?|eKVfn5$AEIlO-q(``fK^UC2D#rY-AuidGaL89pkIk%-cU?aw+g_y zRrbk^;CO0XVgV_1IGw!|f_GgpE>FG=#US#rFgaPWqvh_|a{dc2gTjTD|MyBxIpy@P OrN04dQTr_bE&u>pt4Ztt literal 0 HcmV?d00001 diff --git a/codeception/acceptance/EA10PluginCest.php b/codeception/acceptance/EA10PluginCest.php index d498d2dfabf..7507f206da7 100644 --- a/codeception/acceptance/EA10PluginCest.php +++ b/codeception/acceptance/EA10PluginCest.php @@ -445,6 +445,18 @@ public function test_bundle_install_enable_disable_remove_store(\AcceptanceTeste ->削除(); } + public function test_bundle_install_update_enable_disable_remove_store(\AcceptanceTester $I) + { + Bundle_Store::start($I) + ->インストール() + ->有効化() + ->無効化() + ->アップデート() + ->有効化() + ->無効化() + ->削除(); + } + private function publishPlugin($fileName) { copy(codecept_data_dir().'/'.'plugins/'.$fileName, codecept_root_dir().'/repos/'.$fileName); From b5794c982f763eb5b497d8457719d097aa69e15e Mon Sep 17 00:00:00 2001 From: kiy0taka Date: Tue, 21 Jul 2020 20:34:58 +0900 Subject: [PATCH 019/207] =?UTF-8?q?=E3=83=97=E3=83=A9=E3=82=B0=E3=82=A4?= =?UTF-8?q?=E3=83=B3=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB?= =?UTF-8?q?=E6=99=82=E3=81=ABplatform.php=E3=82=92=E3=83=A9=E3=83=B3?= =?UTF-8?q?=E3=82=BF=E3=82=A4=E3=83=A0=E3=81=AE=E3=83=90=E3=83=BC=E3=82=B8?= =?UTF-8?q?=E3=83=A7=E3=83=B3=E3=81=AB=E8=A8=AD=E5=AE=9A=E3=81=97=E3=80=81?= =?UTF-8?q?=E3=83=97=E3=83=A9=E3=83=83=E3=83=88=E3=83=95=E3=82=A9=E3=83=BC?= =?UTF-8?q?=E3=83=A0=E3=81=AE=E5=BF=85=E9=A0=88=E6=9D=A1=E4=BB=B6=E3=82=92?= =?UTF-8?q?=E6=A4=9C=E8=A8=BC=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Service/Composer/ComposerApiService.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Service/Composer/ComposerApiService.php b/src/Eccube/Service/Composer/ComposerApiService.php index c6dec916b9f..0b7954365d3 100644 --- a/src/Eccube/Service/Composer/ComposerApiService.php +++ b/src/Eccube/Service/Composer/ComposerApiService.php @@ -95,7 +95,6 @@ public function execRequire($packageName, $output = null) '--no-interaction' => true, '--profile' => true, '--prefer-dist' => true, - '--ignore-platform-reqs' => true, '--update-with-dependencies' => true, '--no-scripts' => true, ], $output); @@ -343,6 +342,7 @@ private function init($BaseInfo = null) ], ], ]); + $this->execConfig('platform.php', [PHP_VERSION]); $this->execConfig('repositories.eccube', [$json]); if (strpos($url, 'http://') === 0) { $this->execConfig('secure-http', ['false']); From 6a05991ce1cdd92510c3e39bf2bba620d1dde512 Mon Sep 17 00:00:00 2001 From: dakeyama Date: Sat, 25 Jul 2020 14:10:11 +0900 Subject: [PATCH 020/207] =?UTF-8?q?=E7=AE=A1=E7=90=86=E7=94=BB=E9=9D=A2IP?= =?UTF-8?q?=E5=88=B6=E9=99=90=E3=83=9A=E3=83=BC=E3=82=B8=E3=81=AE=E3=83=AA?= =?UTF-8?q?=E3=83=B3=E3=82=AF=E5=85=88=E3=81=8Clocalhost=E3=81=AB=E3=81=AA?= =?UTF-8?q?=E3=82=8B=E5=95=8F=E9=A1=8C=E3=81=AE=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/template/admin/error.twig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Resource/template/admin/error.twig b/src/Eccube/Resource/template/admin/error.twig index b9ea013bc42..a72e939efbb 100644 --- a/src/Eccube/Resource/template/admin/error.twig +++ b/src/Eccube/Resource/template/admin/error.twig @@ -35,7 +35,7 @@ file that was distributed with this source code.
From 70d71c79504b35ff92c15a8321cf50614d40f403 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 27 Jul 2020 15:04:51 +0900 Subject: [PATCH 021/207] =?UTF-8?q?=E3=82=A2=E3=83=83=E3=83=97=E3=83=87?= =?UTF-8?q?=E3=83=BC=E3=83=88=E3=81=AE=20E2E=E3=83=86=E3=82=B9=E3=83=88?= =?UTF-8?q?=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codeception/_data/plugins/Bundle-1.0.0.tgz | Bin 1669 -> 1680 bytes codeception/_data/plugins/Bundle-1.0.1.tgz | Bin 1668 -> 1673 bytes codeception/acceptance/EA10PluginCest.php | 5 ++--- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/codeception/_data/plugins/Bundle-1.0.0.tgz b/codeception/_data/plugins/Bundle-1.0.0.tgz index 1828972340b1686d6b531d8586dec6597d445b6e..3b3a06462109d03a63c0dda04265f167f9d166be 100644 GIT binary patch literal 1680 zcmV;B25C>cS(a&<$S~_xz4Z*)PdciMhKax&hQctz2}zPgav&B2OY~&(m_Gj_ zw3qrneWZW&xF0{N4Oow6qp{HcrqyUE|2M3LT{oovn{})43>l9)iUssP_y5bEz}uQu zd!eBhsMn_n3TQ|WJY&oSiUQPWSKG&X9pFomb`(!IJ@1Q(x0$n0`#|4%*L$s_-7rL5 z$xTp~B!rKMuV)?mLc~t3HXe_4;#Ixj8PUB+zlduY|L2G!(I+Svf(|dYf-v(@NIk+5 z7!(U4KEQ%TYzxI90e_(pC1cg^-G00C{zwipoq_0MfyOvNK1~FtXG1}JG^U~t9GG1a z4Y^0akWb_YYnsOJfFv=7#=~%UPT5Hs4cTK`(}u}i)@u?I<`d>k_SpsTR2ZP9EZd$85 z*!O3brNY34_gAa33H@c)YwcS5)?xD9(wx2b=wRSW^S?a*4VC}xmTeXJe;qW>|9KQX z)<$@U|4m!^zh&3W!vE`_rT)KvD1Q|;T!sHyt@@4stvUjxVHEgpEmYvYRrqfi$jeaS zmqNM>8O{dOJ`;ooVD+DY!&_i)RzIQxSg8SMO3+-p3qWAZBM+kCAu#ZHtkx|-uWq5e zb0Q8ghs6bhl``>^>oZZEFnksgznnomNi;x}A1HG%=Xg>nr&B6#P1SF1&e+U5%o^qjDmZa*xwX@Ny2wPY!m6qHkqCIwM$_cd$bUQ;uOH!bRuGBeCqCoH!~m5H_lG+7i{d2fN3;HCV|GsT0of^Qn#l6As}x#JTDX$$5vPAD$muFP z%blCDS2`;f%*r8t#ma4z=P7ezz-Muv!*+BK12{Yt0u;z63KT3hdS|9!BJ2Jm`n690 zDFe)oP>Q=0aP~q9@B?|A0Ll~;hY338n28yyQr1o7+!;An$vG&1ce2WioYXkt{(R** z_dzN-2{=gr&_|bq&DWcWxJo2fF8FYz?pv-`*M#{7q?{|+4^b{LIrXTRuQKP(Sqq+> z*7x_Kih#wtVo7-AJ0yWi7fBrSsmuxX0dSYcoC;DtP1!LV5ek2L2XD zFe~W6bT|K>sVm9X)p-`tiu`Xh?YsD|1#dcP-Y3A5*-vSX zlU7__?ZAPF!>}yhr?nNO~E(@NyEre%XvAZ})W>i1)eqbC(DwvQ0pkou7?!O`Kt zQSbCS0y>^7G{Z@)UnCKGA{(pX-)^Sge_D;EX_ywoe*>C|_+JOfVs=S>`Y1W5lqKfu zyI)CWveHQ6{)kDosT;bHw)!OTI8|3s$;m!jWZxeUWDr4kDk&y$rdz76rbYae#mOH- z$|W}~sZZ^vLRHFO(Pco&{(pgOy;(}LYbn34rv(73n!;8oXX$1(NI9`dKMDu6IN>eH z``y&75^%1Sd2%H`AaivMLPsGx%WMf5kvb448hE&u?8SUCIu literal 1669 zcmV;02737)iwFSm1QlNZ1MOOEQ`<%m&S(9Ks~g59gJnrr_KZl<0mq#%Ndsd{I%%Mq zLpq}i@<~0NZQKm~?cF;`wgJDyDJE^I{eWcc-tOM*?d_u#2LtAZr1oT!WEe)%wvoCv z(yL+B(`!b^+-(|lt8VWa7Bb9TxO;-^je3>QAQ6~@D-1K7kR(|o2V%Y65-B4&n#30qfDI*B8d$wCc^7_?r;_25f*Q$aqjM7SR7Z{?C7cXlq*SnTDRB zZa@>%qai_XjWHJ}>Y;Y4+B!XG17C`?qIk^dWgsfvcFsbrBYo#>_mz(J!w_{OH$fee z5I!Wno(&9yh@Dz(G#cr|t9pYAqI;44DXwMwpCgV$Ku~W0I=tKp!puh@^$1JADb|a4 z9}60>9TbNI;)RBkjMTWdhpqOz6X|9;0})_>MmRw}O$4VG13`Q=q9One%r1!r+#_Jf zC(^^3rZL@3ZO?6Rk6gXAvj6^RM+3G>E>>=W^%V`r_XAA^0K$>cwe zagyvQ6({3~tE3d6!PWg1;biB`WLphO2P*}bgDZ}c4xEt#CvutT)9Op?`?JeZ zVGzRmt5w;C@p9;mcB6gkH2H36&fa@)FtASjH%xi{+fCal>i=WVy!hu?_)r^Ro%ox! zjDOSKHH-K^1}%;M{X_Yyu;D8F*KF=i<8SREU>Zh&{~m=3{I?4KEdzNOD*RGNmm$O1 zggRt`@E%zGXW;M_*qhalXdhOp51JA**X{xk81u-3Y*+^dK8@A7CFsR1w0B9wG3Kzi zV6ajqo(g>?suPAULgJS*s3(c`P~`{8T+BHhSIX&>$~zPF+uJiX^8vF41Dw1fJ<6z@ zNTuB6^a`S!1M;(@{ecLq>_>YDEAtk12w^HPY)H6hUwb5$gS!#zVu(XRa*^^q>uTmc z>D{082A$ZO>q7OV2T8%Z_!7YLZIK)8_T2iB@3f+yrEZR_R6Mc;P;RD%Nf&VPiv?uxBuxyF{8-`ur zzsI0BFU^Ug3Ik!oO1mXdoqM!@+I?-g^6ydS@VEW$;n6$yq}_Sn?zqRD!}t5$w)>|2 zVcS9Ftt-`n(g8I{jN7T#DeHoWL#cgrPDq+I_ zxnNeh_!TR+Ri3BJjRBv<0f+7AAO>)FA_ORqj}<6bZ1m1d!9+IvNAznz04W2^j!=rb z6ma%J3h)DYoB+xc6o(1A5-{fKk^`RSiVoc^e<>u4NYa z{}`0wT{nk2swK2A86G4#kNe>S~0hr-4a%Jy}M_~x4WclWA zO$5*OXF=BVx#Ljglk5Go6M3U)nUe~{%{ZujKZGA$sc5l%gy0P+h~ z@noYJPHO#A60r^0Se5@aFlGMRmSGxo`TehM%kRHM{%@XSGrJ@|eUuzj$_jG^0!y-z zm4*`cM@+I!-O!EnsZSD*Q}rq;IoW56?E3?P3L*$kCB-<-bW7FMw27axIQe5hx#XrT z^@;sds7e_ux=ctp{x7htH%e)BE#>d)X#>EjW*&o_rJI?Pa$@5k3j4J<;Z4c=-PElT zaBh@&axFNX8kbN&3LQ)*FNNS$SB$HZk3$KFd@M~4mi%P7eYBkY0?e>)jLB^wwVh;V!{r~(Y@V2Jao@wYA z>h@`jdNd#io)P8(g+0`6Ra>VAZQx6hRv1kqy^u+kK^@{UAUc$&FEm z#DtHCucsaRLPSojHXe_4;#Ixj1<}1w{}k0y{?8#tqEAq72s*sX3c}1s0rd!rVNk3W z@&Oh!WIHGd2>1()C>g7MZx37TcPDa~$qYmv3pBnl_B@vtE&iFrP4Qa>zarPY&#?6%Hb>&r_M~ z=P{1sJ*DDgGU$bDq69-mn3$u62}~K`2SXb8gwN~y8kY49;fw?i#_I)O6Xhctk!t~# zvPSK*hJd2s1*|YEJX5C8g|t|?KLGU9%UZTox1_UDfH@4sagvTXIT%DHbK6>diG4r6 zEENVWe7IVbZRjt%-e@=4w+@r|?rKs>rAzg|L z^8t0p1mQif`p>}O9k7?zkLUnaY5Z72_E6;q%3RDjo>a=ol*&6(_1oJyn^}jv!9I>(ksf7K zPNY)qa(V?`&H(w@(f&~Mt@KBG1S|6vb_ik0F>FM*XkU9IlAXID>|*dkOfr%31M6z$ zKIuK2^%@7UH**NpmmUNK@8U}U&v!*`w7YLpObxnKB&@Rnv_k%`o2DV_KTXpv^8Y4i z>VMd~J$kv8ZLm`PuThuy->?h+Z-nmqUnXrxx3NCKgW!>DEWv-4X*QHn&f#zS-NU1I?n%4zzTI(;JBRQ0yKVPP z`@^<_%3D{e1f>INkQl}FDc`D%Ft3Fe@?0(Abc6-bugIi4$4aMta&+2hwWkJ74*=19 zseT1s7O8K)Yjr*xs~My!pL>1GE{Q%MFUy)H(){cyg_e^PuH<{j>7NR6x(d&7=eF#X z%*q9`a)@8Ca$DtD%G?O>S=8sS9Ua5~4o`&u1@egk1@n#Gn<08i(AUtvutdq>_^! zCour}@QSe6dQ%ZsiDb$JA1>8>$Mx!(Fx!BXb0vEfx&c z`Ts&)NxrVmGmnf>!+grlhuDX5kt<vumJU*ZxZD8M@5dNNS1OusA0fCQ^+R8RqvNBK?)i5F zbUayThLc+V6o+h0HkQSIqghw+Z`YfKt>V94-2XR3vY1_xpFT{`n1>q!B?swS{i%KdKXW;#kavq?V;2DK>WwqlyPRRYe9 zvQMrB$G6rc7LY=@*+VP!q0KbR^ryV~ib-|)u_y-a$I|qm$xfQPN6pzUzzj;~TJg^; T1r=1#zlZ(?BILme04@Lk7D!R@ literal 1668 zcmV-~27CD*iwFSZ1QlNZ1MOOEbJ|7_&S(9KD~$)7F+vguX5=Ito6w0TY3#u`oiuhe zXX!8(i<5dfz%=9j_U@e|z&0--HKa|oA1tBW+uggpy?wOu;eh!8sXW;v8HUlYZKSUC zx&BA! zFo}P1N&f0lFM3oPupaeVZDIUPtJau_zX|cL!v=VQj7Rli0sYV8|NJM2wx(5{Y3Ld1 z^k|H_G$07B5#|DgUDRrpn`ehD;7gHa7>zl->WPxKo3T*ySl@fwd8MO+AV6)&jZvG# zgb#_YrvrOJL{6nL8jW<~mA%0w(Y;Xr6jf6G&ml*mM^JYFI=svZ!puhj^$3f>Db@{n z9}60?Jro55;)RBkjMTWdN6pr|Q|V?h1JT0*jc|;78VgP@2ZH!$L`4rcFuOP$aF2i? zpGXfYn#ORS#1V#vC&A!~vhySx(#yW44dVN(S0p0LC(Iiku}{R4j-5BdegyV;DwF*@ z!EwB=RGg0c-H?ryV8{p)3)C=yDI@%FKm(ufMPpyXvc4glk>G*9UH~@HY-S^JBfwJj zQ2VSQplEOjD+~+IlxcJ+Etc*(fS!8UlU+3|8LSjw4z4&(GH^x?oXBLRPs=Z{@6Rqv zi9rY-u2yLm#>=6%+O77j)8xCQIeYKX!N5B8-!SF*Z#Qf!um9VidGXJ(@Ub?+I`KDc z8UKb|HS_pygOS-aVq7&towME9lo z6?j>uzV)uz{&1pZkg9y{^)S04dY`;3YMMyvv#S(ZPSUuN_aUc$D#+<7Jju8)jozCnm`I2Jh<@!6K*|8KLzLhy z1)RNr0{lQ8Cx9{q#X*d&IA&tTs+4sTId?|RRdNpM!aZ4KMowxJa(}+^jJuXfPP&}L z0O-SO!shEuMO-D4DHnXOQum$EtJj422Be%T+3P5mn4Ef4%vYIl=d1-!PwR(!QDwm5 zU9lv+vK-s#4Xhr=u>h^v7*HGVo^ZLJe%KJZA|A!MX;0%3KhugeQfakNH(i|u0xV(4? z2PO`JqP&x5|HYnCu=IsLW6nNYrto5aV@K=#{O2Jo)T5&R)%jnm*QfZu(UAFHwah&K zw?PTsbu+l5YI}r5&q0-)q*v!+zfYN~HpWh6A_#Im>Eb~k05g0>uIzpBFbDvZEZ_Xi ziQxIcEXbNZcO1%ma&wS$B5ySSBQxAOeo2FYf2L4NuuIH-^o<`e`LWF;#M zCGHQIWShF7o5@q3#2%;WRaA1)&lc(T2Lu&F5S~biag^$os>?|eKVfn5$AEIlO-q(``fK^UC2D#rY-AuidGaL89pkIk%-cU?aw+g_y zRrbk^;CO0XVgV_1IGw!|f_GgpE>FG=#US#rFgaPWqvh_|a{dc2gTjTD|MyBxIpy@P OrN04dQTr_bE&u>pt4Ztt diff --git a/codeception/acceptance/EA10PluginCest.php b/codeception/acceptance/EA10PluginCest.php index 7507f206da7..f3436e4c9de 100644 --- a/codeception/acceptance/EA10PluginCest.php +++ b/codeception/acceptance/EA10PluginCest.php @@ -447,10 +447,9 @@ public function test_bundle_install_enable_disable_remove_store(\AcceptanceTeste public function test_bundle_install_update_enable_disable_remove_store(\AcceptanceTester $I) { - Bundle_Store::start($I) - ->インストール() + $Bundle = Bundle_Store::start($I); + $Bundle->インストール() ->有効化() - ->無効化() ->アップデート() ->有効化() ->無効化() From 65800a8ebc1c04e613adbcf20027ad8eac43296b Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 27 Jul 2020 18:14:46 +0900 Subject: [PATCH 022/207] Fix PHP_VERSION --- src/Eccube/Service/Composer/ComposerApiService.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Service/Composer/ComposerApiService.php b/src/Eccube/Service/Composer/ComposerApiService.php index 0b7954365d3..3340a0808cb 100644 --- a/src/Eccube/Service/Composer/ComposerApiService.php +++ b/src/Eccube/Service/Composer/ComposerApiService.php @@ -342,7 +342,7 @@ private function init($BaseInfo = null) ], ], ]); - $this->execConfig('platform.php', [PHP_VERSION]); + $this->execConfig('platform.php', [PHP_MAJOR_VERSION.'.'.PHP_MINOR_VERSION.'.'.PHP_RELEASE_VERSION]); $this->execConfig('repositories.eccube', [$json]); if (strpos($url, 'http://') === 0) { $this->execConfig('secure-http', ['false']); From 01ea62f58c2b10655fd46824fb2a071c507ecbb9 Mon Sep 17 00:00:00 2001 From: kurozumi Date: Wed, 29 Jul 2020 08:04:09 +0900 Subject: [PATCH 023/207] =?UTF-8?q?=E3=83=97=E3=83=A9=E3=82=B0=E3=82=A4?= =?UTF-8?q?=E3=83=B3=E3=81=AE=E3=82=A8=E3=83=B3=E3=83=86=E3=82=A3=E3=83=86?= =?UTF-8?q?=E3=82=A3=E3=82=92=E6=8B=A1=E5=BC=B5=E3=81=A7=E3=81=8D=E3=82=8B?= =?UTF-8?q?=E3=82=88=E3=81=86=E3=81=AB=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit APP_ENV=prod、APP_DEBUG=0の場合、 プラグインのエンティティをEntityExtensionで拡張しても 拡張したエンティティのキャッシュが生成されず正常に動作しないので キャッシュが生成されるように修正しました。 --- src/Eccube/Kernel.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/Eccube/Kernel.php b/src/Eccube/Kernel.php index cea8e985f35..41abfe2fab7 100644 --- a/src/Eccube/Kernel.php +++ b/src/Eccube/Kernel.php @@ -264,10 +264,12 @@ protected function addEntityExtensionPass(ContainerBuilder $container) foreach ($plugins as $code) { if (file_exists($pluginDir.'/'.$code.'/Entity')) { - $container->addCompilerPass(DoctrineOrmMappingsPass::createAnnotationMappingDriver( - ['Plugin\\'.$code.'\\Entity'], - ['%kernel.project_dir%/app/Plugin/'.$code.'/Entity'] - )); + $paths = ['%kernel.project_dir%/app/Plugin/'.$code.'/Entity']; + $namespaces = ['Plugin\\'.$code.'\\Entity']; + $reader = new Reference('annotation_reader'); + $driver = new Definition(AnnotationDriver::class, [$reader, $paths]); + $driver->addMethodCall('setTraitProxiesDirectory', [$projectDir.'/app/proxy/entity']); + $container->addCompilerPass(new DoctrineOrmMappingsPass($driver, $namespaces, [])); } } } From edf85f981f77babdb91322ba0e2f5c19ec113c89 Mon Sep 17 00:00:00 2001 From: fujiwara Date: Fri, 31 Jul 2020 23:34:13 +0900 Subject: [PATCH 024/207] =?UTF-8?q?Eccube\Form\Type\Admin\OrderType::valid?= =?UTF-8?q?ateOrderStatus=E5=86=85=E3=81=AEtrans=E3=81=AE=E5=BC=95?= =?UTF-8?q?=E6=95=B0=E3=81=AE=E6=8C=87=E5=AE=9A=E3=81=8C=E9=96=93=E9=81=95?= =?UTF-8?q?=E3=81=A3=E3=81=A6=E3=81=84=E3=81=9F=E3=81=AE=E3=82=92=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Form/Type/Admin/OrderType.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Eccube/Form/Type/Admin/OrderType.php b/src/Eccube/Form/Type/Admin/OrderType.php index 6205343f9d2..2bd20946b2a 100644 --- a/src/Eccube/Form/Type/Admin/OrderType.php +++ b/src/Eccube/Form/Type/Admin/OrderType.php @@ -426,7 +426,10 @@ public function validateOrderStatus(FormEvent $event) if ($oldStatus->getId() != $newStatus->getId()) { if (!$this->orderStateMachine->can($Order, $newStatus)) { $form['OrderStatus']->addError( - new FormError(trans('admin.order.failed_to_change_status__short', $oldStatus->getName(), $newStatus->getName()))); + new FormError(trans('admin.order.failed_to_change_status__short', [ + '%from%' => $oldStatus->getName(), + '%to%' => $newStatus->getName(), + ]))); } } } From 5398567675c23ace4ed79becc9d9da446786b16b Mon Sep 17 00:00:00 2001 From: kiy0taka Date: Thu, 6 Aug 2020 18:48:13 +0900 Subject: [PATCH 025/207] =?UTF-8?q?PostgreSQL=E7=92=B0=E5=A2=83=E3=81=A7?= =?UTF-8?q?=E7=99=BA=E7=94=9F=E3=81=99=E3=82=8B=E6=95=B0=E5=80=A4=E3=82=A8?= =?UTF-8?q?=E3=83=A9=E3=83=BC=E3=81=AE=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Repository/AbstractRepository.php | 21 +++++++++++++++++++ src/Eccube/Repository/CustomerRepository.php | 3 +++ src/Eccube/Repository/OrderRepository.php | 3 +++ src/Eccube/Repository/ProductRepository.php | 9 +++++--- .../Repository/CustomerRepositoryTest.php | 10 +++++++++ .../Tests/Repository/OrderRepositoryTest.php | 14 +++++++++++++ .../Repository/ProductRepositoryTest.php | 14 +++++++++++++ 7 files changed, 71 insertions(+), 3 deletions(-) diff --git a/src/Eccube/Repository/AbstractRepository.php b/src/Eccube/Repository/AbstractRepository.php index e905e2527f8..691f9b7c3fb 100644 --- a/src/Eccube/Repository/AbstractRepository.php +++ b/src/Eccube/Repository/AbstractRepository.php @@ -13,6 +13,7 @@ namespace Eccube\Repository; +use Doctrine\DBAL\DBALException; use Eccube\Entity\AbstractEntity; use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository; @@ -51,4 +52,24 @@ protected function getCacheLifetime() return 0; } + + /** + * PostgreSQL環境かどうかを判定します。 + * @return bool + * @throws DBALException + */ + protected function isPostgreSQL() + { + return 'postgresql' == $this->getEntityManager()->getConnection()->getDatabasePlatform()->getName(); + } + + /** + * MySQL環境かどうかを判定します。 + * @return bool + * @throws DBALException + */ + protected function isMySQL() + { + return 'mysql' == $this->getEntityManager()->getConnection()->getDatabasePlatform()->getName(); + } } diff --git a/src/Eccube/Repository/CustomerRepository.php b/src/Eccube/Repository/CustomerRepository.php index 434d9f95079..e6ef242ee2f 100644 --- a/src/Eccube/Repository/CustomerRepository.php +++ b/src/Eccube/Repository/CustomerRepository.php @@ -103,6 +103,9 @@ public function getQueryBuilderBySearchData($searchData) //スペース除去 $clean_key_multi = preg_replace('/\s+|[ ]+/u', '', $searchData['multi']); $id = preg_match('/^\d{0,10}$/', $clean_key_multi) ? $clean_key_multi : null; + if ($id && $id > '2147483647' && $this->isPostgreSQL()) { + $id = null; + } $qb ->andWhere('c.id = :customer_id OR CONCAT(c.name01, c.name02) LIKE :name OR CONCAT(c.kana01, c.kana02) LIKE :kana OR c.email LIKE :email') ->setParameter('customer_id', $id) diff --git a/src/Eccube/Repository/OrderRepository.php b/src/Eccube/Repository/OrderRepository.php index 3871dcec569..f80ee50e8d8 100644 --- a/src/Eccube/Repository/OrderRepository.php +++ b/src/Eccube/Repository/OrderRepository.php @@ -107,6 +107,9 @@ public function getQueryBuilderBySearchDataForAdmin($searchData) // multi if (isset($searchData['multi']) && StringUtil::isNotBlank($searchData['multi'])) { $multi = preg_match('/^\d{0,10}$/', $searchData['multi']) ? $searchData['multi'] : null; + if ($multi && $multi > '2147483647' && $this->isPostgreSQL()) { + $multi = null; + } $qb ->andWhere('o.id = :multi OR o.name01 LIKE :likemulti OR o.name02 LIKE :likemulti OR '. 'o.kana01 LIKE :likemulti OR o.kana02 LIKE :likemulti OR o.company_name LIKE :likemulti OR '. diff --git a/src/Eccube/Repository/ProductRepository.php b/src/Eccube/Repository/ProductRepository.php index 9f61b82a616..62667001d53 100644 --- a/src/Eccube/Repository/ProductRepository.php +++ b/src/Eccube/Repository/ProductRepository.php @@ -156,8 +156,8 @@ public function getQueryBuilderBySearchData($searchData) foreach ($keywords as $index => $keyword) { $key = sprintf('keyword%s', $index); $qb - ->andWhere(sprintf('NORMALIZE(p.name) LIKE NORMALIZE(:%s) OR - NORMALIZE(p.search_word) LIKE NORMALIZE(:%s) OR + ->andWhere(sprintf('NORMALIZE(p.name) LIKE NORMALIZE(:%s) OR + NORMALIZE(p.search_word) LIKE NORMALIZE(:%s) OR EXISTS (SELECT wpc%d FROM \Eccube\Entity\ProductClass wpc%d WHERE p = wpc%d.Product AND NORMALIZE(wpc%d.code) LIKE NORMALIZE(:%s))', $key, $key, $index, $index, $index, $index, $key)) ->setParameter($key, '%'.$keyword.'%'); @@ -226,7 +226,10 @@ public function getQueryBuilderBySearchDataForAdmin($searchData) // id if (isset($searchData['id']) && StringUtil::isNotBlank($searchData['id'])) { - $id = preg_match('/^\d{0,10}$/', $searchData['id']) ? $searchData['id'] : null; + $id = preg_match('/^\d{0,10}$/', $searchData['id']) ? $searchData['id'] : null; + if ($id && $id > '2147483647' && $this->isPostgreSQL()) { + $id = null; + } $qb ->andWhere('p.id = :id OR p.name LIKE :likeid OR pc.code LIKE :likeid') ->setParameter('id', $id) diff --git a/tests/Eccube/Tests/Repository/CustomerRepositoryTest.php b/tests/Eccube/Tests/Repository/CustomerRepositoryTest.php index 17fd6d78bc9..c6f35c2c9f9 100644 --- a/tests/Eccube/Tests/Repository/CustomerRepositoryTest.php +++ b/tests/Eccube/Tests/Repository/CustomerRepositoryTest.php @@ -126,6 +126,16 @@ public function testGetRegularCustomerByResetKeyWithException() $Customer = $this->customerRepo->getRegularCustomerByResetKey($reset_key); $this->assertNull($Customer); } + + public function testGetQueryBuilderBySearchDataByMulti2147483648() + { + $Customer = $this->createCustomer('2147483648@example.com'); + $actual = $this->customerRepo->getQueryBuilderBySearchData(['multi' => '2147483648']) + ->getQuery() + ->getResult(); + + self::assertEquals($Customer, $actual[0]); + } } class DummyCustomer implements UserInterface diff --git a/tests/Eccube/Tests/Repository/OrderRepositoryTest.php b/tests/Eccube/Tests/Repository/OrderRepositoryTest.php index bd3820fba4e..c13a5eac521 100644 --- a/tests/Eccube/Tests/Repository/OrderRepositoryTest.php +++ b/tests/Eccube/Tests/Repository/OrderRepositoryTest.php @@ -119,4 +119,18 @@ public function testUpdateOrderSummary() self::assertEquals(2, $Customer->getBuyTimes()); self::assertEquals($Order1->getTotal() + $Order2->getTotal(), $Customer->getBuyTotal()); } + + public function testGetQueryBuilderBySearchDataForAdmin_multi_2147483648() + { + $Order = $this->createOrder($this->createCustomer('2147483648@example.com')); + $Order->setOrderStatus($this->entityManager->find(OrderStatus::class, OrderStatus::NEW)); + $this->orderRepository->save($Order); + $this->entityManager->flush();; + + $actual = $this->orderRepository->getQueryBuilderBySearchDataForAdmin(['multi' => '2147483648']) + ->getQuery() + ->getResult(); + + self::assertEquals($Order, $actual[0]); + } } diff --git a/tests/Eccube/Tests/Repository/ProductRepositoryTest.php b/tests/Eccube/Tests/Repository/ProductRepositoryTest.php index 596f4e88d2e..dd405dc3fce 100644 --- a/tests/Eccube/Tests/Repository/ProductRepositoryTest.php +++ b/tests/Eccube/Tests/Repository/ProductRepositoryTest.php @@ -30,4 +30,18 @@ public function testFindWithSortedClassCategories() // visible = trueのみ取得する, 合計3件. self::assertCount(3, $Result->getProductClasses()); } + + public function testGetQueryBuilderBySearchDataForAdmin_id_2147483648() + { + $Product = $this->createProduct(null, 1); + $Product->setName('2147483648'); + + $this->productRepository->save($Product); + $this->entityManager->flush(); + + $qb = $this->productRepository->getQueryBuilderBySearchDataForAdmin(['id' => '2147483648']); + $result = $qb->getQuery()->getResult(); + + self::assertEquals($Product, $result[0]); + } } From 9ae5a907876b896fc34c69abeb92f207d9d5fd40 Mon Sep 17 00:00:00 2001 From: kiy0taka Date: Fri, 7 Aug 2020 15:09:40 +0900 Subject: [PATCH 026/207] =?UTF-8?q?=E4=BB=96=E3=83=97=E3=83=A9=E3=82=B0?= =?UTF-8?q?=E3=82=A4=E3=83=B3=E3=81=AEEntity=E3=82=92=E6=8B=A1=E5=BC=B5?= =?UTF-8?q?=E3=81=99=E3=82=8B=E3=83=86=E3=82=B9=E3=83=88=E3=82=B1=E3=83=BC?= =?UTF-8?q?=E3=82=B9=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/action.yml | 1 + .travis.yml | 8 +++ codeception/_data/plugins/Boomerang-1.0.0.tgz | Bin 1976 -> 2286 bytes .../_data/plugins/Boomerang10-1.0.0.tgz | Bin 0 -> 1138 bytes codeception/acceptance/EA10PluginCest.php | 46 ++++++++++++++++++ 5 files changed, 55 insertions(+) create mode 100644 codeception/_data/plugins/Boomerang10-1.0.0.tgz diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml index 075a8fabee3..1017c9cc8b1 100644 --- a/.github/workflows/action.yml +++ b/.github/workflows/action.yml @@ -660,6 +660,7 @@ jobs: - test_dependency_plugin_update - test_install_error - install_enable_disable_enable_disable_remove_store + - test_enhance_plugin_entity include: - db: pgsql database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db diff --git a/.travis.yml b/.travis.yml index 250dc1d02c5..c7c3d6553d2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -253,6 +253,10 @@ jobs: ./codeception.sh --reset psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test', php_path = '$(which php)';" ./codeception.sh EA10PluginCest:install_enable_disable_enable_disable_remove_store + - | + ./codeception.sh --reset + psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test', php_path = '$(which php)';" + ./codeception.sh EA10PluginCest:test_enhance_plugin_entity - <<: *e2e_test php: 7.3 env: APP_ENV=codeception DATABASE_URL=mysql://root:@localhost/eccube_db DATABASE_SERVER_VERSION=5 MAILER_URL=smtp://localhost:1025 ECCUBE_PACKAGE_API_URL=http://localhost:8080 NO_FIXTURES=1 @@ -385,6 +389,10 @@ jobs: ./codeception.sh --reset mysql -h 127.0.0.1 -u root eccube_db -e "update dtb_base_info set authentication_key='test', php_path = '$(which php)';" ./codeception.sh EA10PluginCest:install_enable_disable_enable_disable_remove_store + - | + ./codeception.sh --reset + mysql -h 127.0.0.1 -u root eccube_db -e "update dtb_base_info set authentication_key='test', php_path = '$(which php)';" + ./codeception.sh EA10PluginCest:test_enhance_plugin_entity # インストーラのテスト - <<: *e2e_test diff --git a/codeception/_data/plugins/Boomerang-1.0.0.tgz b/codeception/_data/plugins/Boomerang-1.0.0.tgz index 3cf4c13d5506e5ccb47a990737cb208d556fbcfd..ee51c85fa7d7672598e434cff3488f3440d61b87 100644 GIT binary patch literal 2286 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 literal 1976 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 E026mg`Tzg` literal 0 HcmV?d00001 diff --git a/codeception/acceptance/EA10PluginCest.php b/codeception/acceptance/EA10PluginCest.php index 8b4f3dd27a9..6947c02b5c0 100644 --- a/codeception/acceptance/EA10PluginCest.php +++ b/codeception/acceptance/EA10PluginCest.php @@ -436,6 +436,26 @@ public function test_template_overwrite(\AcceptanceTester $I) $fs->remove($dir); } + /** + * @see https://github.com/EC-CUBE/ec-cube/pull/4638 + */ + public function test_enhance_plugin_entity(\AcceptanceTester $I) + { + $Boomerang = Boomerang_Store::start($I) + ->インストール() + ->有効化() + ->カート作成(); + + $I->see('[1]'); + + Boomerang10_Store::start($I, $Boomerang) + ->インストール() + ->有効化(); + + $Boomerang->カート一覧(); + $I->see('[1]'); + } + private function publishPlugin($fileName) { copy(codecept_data_dir().'/'.'plugins/'.$fileName, codecept_root_dir().'/repos/'.$fileName); @@ -948,6 +968,32 @@ public static function start(AcceptanceTester $I) { return new self($I); } + + public function カート一覧() + { + $this->I->amOnPage('/boomerang'); + } + + public function カート作成() + { + $this->I->amOnPage('/boomerang/new'); + $this->I->seeCurrentUrlMatches('/^\/boomerang$/'); + return $this; + } +} + +class Boomerang10_Store extends Store_Plugin +{ + public function __construct(AcceptanceTester $I, Store_Plugin $dependency = null) + { + parent::__construct($I, 'Boomerang10', $dependency); + $this->columns[] = 'dtb_bar.mail'; + } + + public static function start(AcceptanceTester $I, Store_Plugin $dependency = null) + { + return new self($I, $dependency = null); + } } class Boomerang_Local extends Local_Plugin From 946624f49e0fdf9547b93ec66050e5007367b5da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Sat, 15 Aug 2020 20:26:10 +0900 Subject: [PATCH 027/207] =?UTF-8?q?editorconfig=20`*.md`=20=E3=81=AE?= =?UTF-8?q?=E8=A1=8C=E6=9C=AB=E7=A9=BA=E7=99=BD=E8=87=AA=E5=8B=95=E5=89=8A?= =?UTF-8?q?=E9=99=A4=E3=82=92=E8=A1=8C=E3=82=8F=E3=81=AA=E3=81=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .editorconfig | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.editorconfig b/.editorconfig index 72e83755023..a2c19b0d742 100644 --- a/.editorconfig +++ b/.editorconfig @@ -16,6 +16,9 @@ indent_size = 4 indent_style = space indent_size = 2 +[*.md] +trim_trailing_whitespace = false + [codeception/**.{yml,yaml}] indent_style = space indent_size = 4 From e80ff81afc5ac0df79c1a6c0fb544fefe6703ffc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Sun, 16 Aug 2020 14:10:35 +0900 Subject: [PATCH 028/207] =?UTF-8?q?VSCode=20Remote=20Containers=20?= =?UTF-8?q?=E8=B5=B7=E5=8B=95=E8=A8=AD=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .devcontainer/devcontainer.json | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 .devcontainer/devcontainer.json diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 00000000000..50c79834b3f --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,13 @@ +{ + "name": "eccube", + "dockerComposeFile": [ + "../docker-compose.yml" + ], + "service": "ec-cube", + "workspaceFolder": "/var/www", + "settings": { + "terminal.integrated.shell.linux": null + }, + "extensions": [ + ] +} From 1e09e77e448314214025d557d609e6da3d2e1305 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Sun, 16 Aug 2020 14:13:26 +0900 Subject: [PATCH 029/207] =?UTF-8?q?VSCode=20Remote=20Containers=20EditorCo?= =?UTF-8?q?nfig=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .devcontainer/devcontainer.json | 1 + 1 file changed, 1 insertion(+) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 50c79834b3f..9b168e27e7b 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -9,5 +9,6 @@ "terminal.integrated.shell.linux": null }, "extensions": [ + "EditorConfig.EditorConfig" ] } From 36b37c4c6402a864d637559efd682309c381f2bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Sun, 16 Aug 2020 14:14:01 +0900 Subject: [PATCH 030/207] =?UTF-8?q?VSCode=20Remote=20Containers=20inteleph?= =?UTF-8?q?ense=20=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .devcontainer/devcontainer.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 9b168e27e7b..02916095e5e 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -6,9 +6,13 @@ "service": "ec-cube", "workspaceFolder": "/var/www", "settings": { + "intelephense.environment.phpVersion": "7.3", + "php.suggest.basic": false, + "php.validate.enable": false, "terminal.integrated.shell.linux": null }, "extensions": [ + "bmewburn.vscode-intelephense-client", "EditorConfig.EditorConfig" ] } From bce7111a080a59a68ae70d67f62a918b45c4601a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Sun, 16 Aug 2020 14:15:12 +0900 Subject: [PATCH 031/207] =?UTF-8?q?VSCode=20Remote=20Containers=20php-cs-f?= =?UTF-8?q?ixer=20=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB?= =?UTF-8?q?=E3=81=A8=E8=A8=AD=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .devcontainer/devcontainer.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 02916095e5e..d5cbfc6c551 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -7,11 +7,17 @@ "workspaceFolder": "/var/www", "settings": { "intelephense.environment.phpVersion": "7.3", + "php-cs-fixer.allowRisky": false, + "php-cs-fixer.config": "/var/www/html/.php_cs.dist", + "php-cs-fixer.executablePath": "/var/www/html/vendor/bin/php-cs-fixer", + "php-cs-fixer.lastDownload": 0, + "php-cs-fixer.onsave": true, "php.suggest.basic": false, "php.validate.enable": false, "terminal.integrated.shell.linux": null }, "extensions": [ + "junstyle.php-cs-fixer", "bmewburn.vscode-intelephense-client", "EditorConfig.EditorConfig" ] From 63dcac6a3f9eb4c8e3ed490af12b1c9faa48619c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Sun, 16 Aug 2020 14:33:41 +0900 Subject: [PATCH 032/207] =?UTF-8?q?VSCode=20Remote=20Containers=20?= =?UTF-8?q?=E3=83=AF=E3=83=BC=E3=82=AF=E3=82=B9=E3=83=9A=E3=83=BC=E3=82=B9?= =?UTF-8?q?=E3=83=87=E3=82=A3=E3=83=AC=E3=82=AF=E3=83=88=E3=83=AA=E3=81=AE?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .devcontainer/devcontainer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index d5cbfc6c551..8b3646010f5 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -4,7 +4,7 @@ "../docker-compose.yml" ], "service": "ec-cube", - "workspaceFolder": "/var/www", + "workspaceFolder": "/var/www/html", "settings": { "intelephense.environment.phpVersion": "7.3", "php-cs-fixer.allowRisky": false, From fc0813b7e78554f4b78fad4c0350d0f4c3280a03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Sun, 16 Aug 2020 18:30:32 +0900 Subject: [PATCH 033/207] =?UTF-8?q?VSCode=20Remote=20Containers=20Twig=20L?= =?UTF-8?q?anguage=202=20=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC?= =?UTF-8?q?=E3=83=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .devcontainer/devcontainer.json | 1 + 1 file changed, 1 insertion(+) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 8b3646010f5..62c7212affc 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -19,6 +19,7 @@ "extensions": [ "junstyle.php-cs-fixer", "bmewburn.vscode-intelephense-client", + "mblode.twig-language-2", "EditorConfig.EditorConfig" ] } From 1b71b990396ef6b79efaefa9e1d5fbb74c224ce5 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Thu, 20 Aug 2020 13:01:48 +0900 Subject: [PATCH 034/207] =?UTF-8?q?=E7=AE=A1=E7=90=86=E7=94=BB=E9=9D=A2?= =?UTF-8?q?=E3=83=88=E3=83=83=E3=83=97=20=E5=A3=B2=E4=B8=8A=E7=8A=B6?= =?UTF-8?q?=E6=B3=81=E3=81=AE=E3=83=86=E3=82=B9=E3=83=88=E3=82=92=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Tests/Web/Admin/IndexControllerTest.php | 76 +++++++------------ 1 file changed, 27 insertions(+), 49 deletions(-) diff --git a/tests/Eccube/Tests/Web/Admin/IndexControllerTest.php b/tests/Eccube/Tests/Web/Admin/IndexControllerTest.php index 0a1459bd648..9ed70e22f3d 100644 --- a/tests/Eccube/Tests/Web/Admin/IndexControllerTest.php +++ b/tests/Eccube/Tests/Web/Admin/IndexControllerTest.php @@ -51,11 +51,16 @@ public function testRoutingAdminChangePassword() /** * @see https://github.com/EC-CUBE/ec-cube/issues/1143 + * + * @param int $hour + * + * @dataProvider indexWithSalesProvider */ - public function testIndexWithSales() + public function testIndexWithSales($hour) { $Customer = $this->createCustomer(); $Today = new \DateTime(); + $Today->setTime($hour, 0); $Yesterday = new \DateTime('-1 days'); $OrderNew = $this->orderStatusRepository->find(OrderStatus::NEW); @@ -90,15 +95,14 @@ public function testIndexWithSales() } } - $this->client->request( + $crawler = $this->client->request( 'GET', $this->generateUrl('admin_homepage') ); $this->assertTrue($this->client->getResponse()->isSuccessful()); - // TODO: Need to improve functionality sale today and this month, etc - /* preg_match('/^¥([0-9,]+) \/ ([0-9]+)/u', trim($crawler->filter('.today_sale')->text()), $match); + preg_match('/^¥([0-9,]+) \/ ([0-9]+)/u', trim($crawler->filter('#chart-statistics > div.card-body > div.row:nth-child(1) > div:nth-child(2) > div')->text()), $match); $this->expected = $todaysSales; $this->actual = str_replace(',', '', $match[1]); $this->verify('本日の売上'); @@ -107,57 +111,31 @@ public function testIndexWithSales() $this->actual = str_replace(',', '', $match[2]); $this->verify('本日の売上件数'); - preg_match('/^¥([0-9,]+) \/ ([0-9]+)/u', trim($crawler->filter('.yesterday_sale')->text()), $match); + preg_match('/^¥([0-9,]+) \/ ([0-9]+)/u', trim($crawler->filter('#chart-statistics > div.card-body > div.row:nth-child(1) > div:nth-child(3) > div')->text()), $match); $this->expected = $yesterdaysSales; $this->actual = str_replace(',', '', $match[1]); $this->verify('昨日の売上'); $this->expected = 3; $this->actual = str_replace(',', '', $match[2]); - $this->verify('昨日の売上件数');*/ - - /* - // 当月の受注を取得する - $firstDate = clone $Today; - $firstDate->setDate($Today->format('Y'), $Today->format('m'), 1); - $firstDate->setTime(0, 0 ,0); - $endDate = clone $firstDate; - $endDate->setDate($Today->format('Y'), $Today->format('m'), $Today->format('t')); - $endDate->setTime(23, 59, 59); - - $qb = $this->orderRepository->createQueryBuilder('o'); - $qb->andWhere($qb->expr()->notIn('o.OrderStatus', - array( - $OrderPending->getId(), - $OrderProcessing->getId(), - $OrderCancel->getId() - ))) - ->andWhere('o.order_date BETWEEN :firstDate AND :endDate') - ->setParameters( - array( - 'firstDate' => $firstDate, - 'endDate' => $endDate - ) - ); - $MonthlyOrders = $qb->getQuery()->getResult(); - - preg_match('/^¥([0-9,]+) \/ ([0-9]+)/u', trim($crawler->filter('.monthly_sale')->text()), $match); - $this->expected = array_reduce( // MonthlyOrders の payment_total をすべて足す - array_map( - function ($Order) { - return $Order->getPaymentTotal(); - }, $MonthlyOrders - ), - function ($carry, $item) { - return $carry += $item; - } - ); - $this->actual = str_replace(',', '', $match[1]); - $this->verify('今月の売上'); - - $this->expected = count($MonthlyOrders); - $this->actual = str_replace(',', '', $match[2]); - $this->verify('今月の売上件数');*/ + $this->verify('昨日の売上件数'); + + preg_match('/^¥([0-9,]+) \/ ([0-9]+)/u', trim($crawler->filter('#chart-statistics > div.card-body > div.row:nth-child(1) > div:nth-child(1) > div')->text()), $match); + $this->expected = $todaysSales + $yesterdaysSales; + $this->actual = str_replace(',', '', $match[1]); + $this->verify('今月の売上'); + + $this->expected = 6; + $this->actual = str_replace(',', '', $match[2]); + $this->verify('今月の売上件数'); + } + + public function indexWithSalesProvider() + { + return [ + [8], + [10], + ]; } public function testChangePasswordWithPost() From 743c17d431791ab91c21e58776b945f48526d478 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Thu, 20 Aug 2020 17:50:04 +0900 Subject: [PATCH 035/207] =?UTF-8?q?VSCode=20Remote=20Containers=20?= =?UTF-8?q?=E8=A8=AD=E5=AE=9A=E3=83=87=E3=82=A3=E3=83=AC=E3=82=AF=E3=83=88?= =?UTF-8?q?=E3=83=AA=E3=81=B8=E3=81=AE=E5=A4=96=E9=83=A8=E3=81=8B=E3=82=89?= =?UTF-8?q?=E3=81=AE=E3=82=A2=E3=82=AF=E3=82=BB=E3=82=B9=E3=82=92=E6=8B=92?= =?UTF-8?q?=E5=90=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .htaccess | 1 + web.config | 1 + 2 files changed, 2 insertions(+) diff --git a/.htaccess b/.htaccess index e98333ca32b..d2c88a117f0 100644 --- a/.htaccess +++ b/.htaccess @@ -47,6 +47,7 @@ DirectoryIndex index.php index.html .ht RewriteRule "^codeception/" - [F] RewriteRule "^bin/" - [F] RewriteRule "^dockerbuild/" - [F] + RewriteRule "^\.devcontainer/" - [F] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpe?g|css|ico|js|svg|map)$ [NC] diff --git a/web.config b/web.config index 65a30403cd4..7fe88c1d9db 100644 --- a/web.config +++ b/web.config @@ -56,6 +56,7 @@ + From 190efe393ce3f63402e39ec2ac1c64110c023718 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Thu, 20 Aug 2020 20:51:21 +0900 Subject: [PATCH 036/207] pre-commit-hook `npm i -D husky lint-staged` --- package-lock.json | 1223 ++++++++++++++++++++++++++++++++++++++++++--- package.json | 2 + 2 files changed, 1163 insertions(+), 62 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0c333f8c2de..abebbcc1c7f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,6 +4,44 @@ "lockfileVersion": 1, "requires": true, "dependencies": { + "@babel/code-frame": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "dev": true, + "requires": { + "@babel/highlight": "^7.10.4" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", + "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", + "dev": true + }, + "@babel/highlight": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", + "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.10.4", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@types/color-name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", + "dev": true + }, + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", @@ -26,6 +64,24 @@ "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", "dev": true }, + "aggregate-error": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", + "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "dependencies": { + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true + } + } + }, "ajv": { "version": "6.10.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", @@ -62,6 +118,15 @@ "ansi-wrap": "0.1.0" } }, + "ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "requires": { + "type-fest": "^0.11.0" + } + }, "ansi-gray": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", @@ -303,6 +368,12 @@ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", "dev": true }, + "astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true + }, "async": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", @@ -822,6 +893,12 @@ "upath": "^1.1.1" } }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, "class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", @@ -854,6 +931,65 @@ "source-map": "~0.6.0" } }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "requires": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, "cliui": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", @@ -957,6 +1093,12 @@ "integrity": "sha512-cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg==", "dev": true }, + "compare-versions": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", + "dev": true + }, "component-bind": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", @@ -1164,6 +1306,12 @@ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", "dev": true }, + "dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", + "dev": true + }, "default-compare": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz", @@ -1335,6 +1483,12 @@ "integrity": "sha512-qYWNMjKLEfQAWZF2Sarvo+ahigu0EArnpCFSoUuZJS3W5wIeVfeEvsgmT2mgIrieQkeQ0+xFmykK3nx2ezekPQ==", "dev": true }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -1437,6 +1591,23 @@ "has-binary2": "~1.0.2" } }, + "enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1" + }, + "dependencies": { + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true + } + } + }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -1520,6 +1691,45 @@ "integrity": "sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg=", "dev": true }, + "execa": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.0.3.tgz", + "integrity": "sha512-WFDXGHckXPWZX19t1kCsXzOpqX9LWYNqn4C+HqZlk/V0imTkzJZqf87ZBhvpHaftERYknpk0fjSylnXVlVgI0A==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, "expand-brackets": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", @@ -1701,6 +1911,15 @@ "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", "dev": true }, + "figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, "fill-range": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", @@ -1766,6 +1985,15 @@ "pinkie-promise": "^2.0.0" } }, + "find-versions": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz", + "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==", + "dev": true, + "requires": { + "semver-regex": "^2.0.0" + } + }, "findup-sync": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", @@ -2504,12 +2732,39 @@ "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", "dev": true }, + "get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", + "dev": true + }, "get-stdin": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", "dev": true }, + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "requires": { + "pump": "^3.0.0" + }, + "dependencies": { + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", @@ -3114,6 +3369,129 @@ "sshpk": "^1.7.0" } }, + "human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "dev": true + }, + "husky": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/husky/-/husky-4.2.5.tgz", + "integrity": "sha512-SYZ95AjKcX7goYVZtVZF2i6XiZcHknw50iXvY7b0MiGoj5RwdgRQNEHdb+gPDPCXKlzwrybjFjkL6FOj8uRhZQ==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "ci-info": "^2.0.0", + "compare-versions": "^3.6.0", + "cosmiconfig": "^6.0.0", + "find-versions": "^3.2.0", + "opencollective-postinstall": "^2.0.2", + "pkg-dir": "^4.2.0", + "please-upgrade-node": "^3.2.0", + "slash": "^3.0.0", + "which-pm-runs": "^1.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "cosmiconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "dev": true, + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "import-fresh": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", + "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "parse-json": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.1.tgz", + "integrity": "sha512-ztoZ4/DYeXQq4E21v169sC8qWINGpcosGv9XhTDvg9/hWvx/zrFkc9BiWxR58OJLHGk28j5BL0SDLeV2WmFZlQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1", + "lines-and-columns": "^1.1.6" + } + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -3388,6 +3766,12 @@ "lodash.isfinite": "^3.3.2" } }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, "is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", @@ -3397,6 +3781,12 @@ "isobject": "^3.0.1" } }, + "is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=", + "dev": true + }, "is-relative": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", @@ -3406,6 +3796,12 @@ "is-unc-path": "^1.0.0" } }, + "is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "dev": true + }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -3475,6 +3871,12 @@ "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", "dev": true }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, "js-yaml": { "version": "3.13.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", @@ -3613,73 +4015,342 @@ "integrity": "sha512-XCpr5bElgDI65vVgstP8TWjv6/QKWm9GU5UG0Pr5sLQ3QLo8NVKsioe+Jed5/3vFOe3IQuqE7DKwTvKQkjTHvg==", "dev": true }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "localtunnel": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-1.9.2.tgz", - "integrity": "sha512-NEKF7bDJE9U3xzJu3kbayF0WTvng6Pww7tzqNb/XtEARYwqw7CKEX7BvOMg98FtE9es2CRizl61gkV3hS8dqYg==", - "dev": true, - "requires": { - "axios": "0.19.0", - "debug": "4.1.1", - "openurl": "1.1.1", - "yargs": "6.6.0" + "lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true + }, + "lint-staged": { + "version": "10.2.11", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-10.2.11.tgz", + "integrity": "sha512-LRRrSogzbixYaZItE2APaS4l2eJMjjf5MbclRZpLJtcQJShcvUzKXsNeZgsLIZ0H0+fg2tL4B59fU9wHIHtFIA==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "cli-truncate": "2.1.0", + "commander": "^5.1.0", + "cosmiconfig": "^6.0.0", + "debug": "^4.1.1", + "dedent": "^0.7.0", + "enquirer": "^2.3.5", + "execa": "^4.0.1", + "listr2": "^2.1.0", + "log-symbols": "^4.0.0", + "micromatch": "^4.0.2", + "normalize-path": "^3.0.0", + "please-upgrade-node": "^3.2.0", + "string-argv": "0.3.1", + "stringify-object": "^3.3.0" }, "dependencies": { - "yargs": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", - "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", "dev": true, "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^4.2.0" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } - } - } - }, - "lodash": { - "version": "4.17.19", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", - "dev": true - }, - "lodash._reinterpolate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=", - "dev": true - }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, - "lodash.isfinite": { + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "dev": true + }, + "cosmiconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "dev": true, + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "import-fresh": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", + "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "parse-json": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.1.tgz", + "integrity": "sha512-ztoZ4/DYeXQq4E21v169sC8qWINGpcosGv9XhTDvg9/hWvx/zrFkc9BiWxR58OJLHGk28j5BL0SDLeV2WmFZlQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1", + "lines-and-columns": "^1.1.6" + } + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "listr2": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-2.6.0.tgz", + "integrity": "sha512-nwmqTJYQQ+AsKb4fCXH/6/UmLCEDL1jkRAdSn9M6cEUzoRGrs33YD/3N86gAZQnGZ6hxV18XSdlBcJ1GTmetJA==", + "dev": true, + "requires": { + "chalk": "^4.1.0", + "cli-truncate": "^2.1.0", + "figures": "^3.2.0", + "indent-string": "^4.0.0", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rxjs": "^6.6.2", + "through": "^2.3.8" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true + }, + "rxjs": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.2.tgz", + "integrity": "sha512-BHdBMVoWC2sL26w//BCu3YzKT4s2jip/WhwsGEDmeKYBhKDZeYezVUnHatYB7L85v5xs0BAQmg6BEYJEKxBabg==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "localtunnel": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-1.9.2.tgz", + "integrity": "sha512-NEKF7bDJE9U3xzJu3kbayF0WTvng6Pww7tzqNb/XtEARYwqw7CKEX7BvOMg98FtE9es2CRizl61gkV3hS8dqYg==", + "dev": true, + "requires": { + "axios": "0.19.0", + "debug": "4.1.1", + "openurl": "1.1.1", + "yargs": "6.6.0" + }, + "dependencies": { + "yargs": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", + "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "dev": true, + "requires": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^4.2.0" + } + } + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "lodash": { + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", + "dev": true + }, + "lodash._reinterpolate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", + "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=", + "dev": true + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.isfinite": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", "integrity": "sha1-+4m2WpqAKBgz8LdHizpRBPiY67M=", @@ -3704,6 +4375,160 @@ "lodash._reinterpolate": "^3.0.0" } }, + "log-symbols": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", + "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "dev": true, + "requires": { + "chalk": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "requires": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, "loud-rejection": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", @@ -3807,6 +4632,12 @@ "trim-newlines": "^1.0.0" } }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, "micromatch": { "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", @@ -3849,6 +4680,12 @@ "mime-db": "1.40.0" } }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -4133,6 +4970,15 @@ "once": "^1.3.2" } }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } + }, "npmlog": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", @@ -4298,6 +5144,21 @@ "wrappy": "1" } }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "opencollective-postinstall": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", + "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==", + "dev": true + }, "openurl": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/openurl/-/openurl-1.1.1.tgz", @@ -4353,6 +5214,56 @@ "os-tmpdir": "^1.0.0" } }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + }, + "dependencies": { + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + } + } + }, "parse-filepath": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", @@ -4436,6 +5347,12 @@ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, "path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", @@ -4474,6 +5391,12 @@ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", "dev": true }, + "picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "dev": true + }, "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", @@ -4495,6 +5418,42 @@ "pinkie": "^2.0.0" } }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + } + } + }, + "please-upgrade-node": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", + "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", + "dev": true, + "requires": { + "semver-compare": "^1.0.0" + } + }, "plugin-error": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", @@ -4941,6 +5900,16 @@ } } }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, "ret": { "version": "0.1.15", "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", @@ -5063,6 +6032,12 @@ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true }, + "semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", + "dev": true + }, "semver-greatest-satisfied-range": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz", @@ -5072,6 +6047,12 @@ "sver-compat": "^1.5.0" } }, + "semver-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz", + "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==", + "dev": true + }, "send": { "version": "0.16.2", "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", @@ -5255,6 +6236,21 @@ "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", "dev": true }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, "shellwords": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", @@ -5267,6 +6263,56 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", "dev": true }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + } + } + }, "snapdragon": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", @@ -5723,6 +6769,12 @@ "limiter": "^1.0.5" } }, + "string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "dev": true + }, "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", @@ -5743,6 +6795,17 @@ "safe-buffer": "~5.1.0" } }, + "stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dev": true, + "requires": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + } + }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -5761,6 +6824,12 @@ "is-utf8": "^0.2.0" } }, + "strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true + }, "strip-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", @@ -5843,6 +6912,12 @@ } } }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", @@ -5975,6 +7050,12 @@ "glob": "^7.1.2" } }, + "tslib": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", + "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", + "dev": true + }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", @@ -5996,6 +7077,12 @@ "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", "dev": true }, + "type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true + }, "typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", @@ -6301,6 +7388,12 @@ "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", "dev": true }, + "which-pm-runs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz", + "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=", + "dev": true + }, "wide-align": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", @@ -6365,6 +7458,12 @@ "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", "dev": true }, + "yaml": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", + "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", + "dev": true + }, "yargs": { "version": "6.4.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.4.0.tgz", diff --git a/package.json b/package.json index a54dfcecfd1..2e2ef7de2e6 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,8 @@ "gulp-postcss": "^8.0.0", "gulp-rename": "^1.4.0", "gulp-sass": "^4.0.2", + "husky": "^4.2.5", + "lint-staged": "^10.2.11", "normalize.css": "^5.0.0", "postcss-import": "^12.0.1", "process": "^0.11.10", From ee004a4e39383870e2e8ae889fca71985e49a6e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Thu, 20 Aug 2020 20:57:15 +0900 Subject: [PATCH 037/207] =?UTF-8?q?pre-commit-hook=20commit=E6=99=82?= =?UTF-8?q?=E3=81=ABlint-staged=E7=B5=8C=E7=94=B1=E3=81=A7php-cs-fixer?= =?UTF-8?q?=E3=82=92=E5=AE=9F=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/package.json b/package.json index 2e2ef7de2e6..814cd3ed4e3 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,16 @@ "url": "https://github.com/EC-CUBE/ec-cube/issues" }, "homepage": "https://www.ec-cube.net/", + "lint-staged": { + "*.php": [ + "vendor/bin/php-cs-fixer --config=.php_cs.dist --path-mode=intersection fix" + ] + }, + "husky": { + "hooks": { + "pre-commit": "lint-staged" + } + }, "dependencies": {}, "devDependencies": { "autoprefixer": "^9.6.4", From 558f65cfa535c8137bf5ee8e4d7ef20fae17c407 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Thu, 20 Aug 2020 22:38:04 +0900 Subject: [PATCH 038/207] =?UTF-8?q?pre-commit-hook=20php-cs-fixer=E5=AE=9F?= =?UTF-8?q?=E8=A1=8C=E3=81=AE=E9=9A=9B=E3=81=AE=E3=82=A8=E3=83=A9=E3=83=BC?= =?UTF-8?q?=E3=81=AF=E7=84=A1=E8=A6=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 814cd3ed4e3..c008439b555 100644 --- a/package.json +++ b/package.json @@ -24,12 +24,12 @@ "homepage": "https://www.ec-cube.net/", "lint-staged": { "*.php": [ - "vendor/bin/php-cs-fixer --config=.php_cs.dist --path-mode=intersection fix" + "vendor/bin/php-cs-fixer --config=.php_cs.dist --path-mode=intersection fix || node -e ''" ] }, "husky": { "hooks": { - "pre-commit": "lint-staged" + "pre-commit": "lint-staged --shell" } }, "dependencies": {}, From 4f3ad2f3a3a58a51c311f856e711403c4f421104 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Fri, 21 Aug 2020 00:00:05 +0900 Subject: [PATCH 039/207] pre-commit-hook `npm i -D cross-env` --- package-lock.json | 31 +++++++++++++++++++++++++++++++ package.json | 1 + 2 files changed, 32 insertions(+) diff --git a/package-lock.json b/package-lock.json index abebbcc1c7f..f70056070ce 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1237,6 +1237,37 @@ } } }, + "cross-env": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.2.tgz", + "integrity": "sha512-KZP/bMEOJEDCkDQAyRhu3RL2ZO/SUVrxQVI0G3YEQ+OLbRA3c6zgixe8Mq8a/z7+HKlNEjo8oiLUs8iRijY2Rw==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.1" + }, + "dependencies": { + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, "cross-spawn": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", diff --git a/package.json b/package.json index c008439b555..6b779f9ada4 100644 --- a/package.json +++ b/package.json @@ -38,6 +38,7 @@ "bootstrap": "^4.3.1", "bootstrap-sass": "^3.4.1", "browser-sync": "^2.26.7", + "cross-env": "^7.0.2", "css-mqpacker": "^7.0.0", "gulp": "^4.0.2", "gulp-clean-css": "^4.2.0", From 936ee075330d9e167c924780a7008abddd6ccc5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Fri, 21 Aug 2020 00:37:39 +0900 Subject: [PATCH 040/207] =?UTF-8?q?pre-commit-hook=20=E3=82=AF=E3=83=AD?= =?UTF-8?q?=E3=82=B9=E3=83=97=E3=83=A9=E3=83=83=E3=83=88=E3=83=95=E3=82=A9?= =?UTF-8?q?=E3=83=BC=E3=83=A0=E5=AF=BE=E5=BF=9C=EF=BC=86=E3=82=A8=E3=83=A9?= =?UTF-8?q?=E3=83=BC=E7=84=A1=E8=A6=96=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 6b779f9ada4..63439d1765c 100644 --- a/package.json +++ b/package.json @@ -24,12 +24,12 @@ "homepage": "https://www.ec-cube.net/", "lint-staged": { "*.php": [ - "vendor/bin/php-cs-fixer --config=.php_cs.dist --path-mode=intersection fix || node -e ''" + "cross-env vendor/bin/php-cs-fixer --config=.php_cs.dist --path-mode=intersection fix" ] }, "husky": { "hooks": { - "pre-commit": "lint-staged --shell" + "pre-commit": "lint-staged 2>&1 | echo || node -e ''" } }, "dependencies": {}, From b75acc8fb80d8fbabfca33a948395102eac29dd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A9=8D=E6=9C=A8=20=E8=A3=95=E8=8A=B1?= Date: Fri, 21 Aug 2020 10:39:50 +0900 Subject: [PATCH 041/207] =?UTF-8?q?=E7=AE=A1=E7=90=86=E7=94=BB=E9=9D=A2?= =?UTF-8?q?=E3=83=88=E3=83=83=E3=83=97=E3=81=AE=E3=81=8A=E3=81=99=E3=81=99?= =?UTF-8?q?=E3=82=81=E3=83=97=E3=83=A9=E3=82=B0=E3=82=A4=E3=83=B3=E3=81=A8?= =?UTF-8?q?=E3=81=8A=E7=9F=A5=E3=82=89=E3=81=9B=E3=81=AE=E5=86=85=E5=AE=B9?= =?UTF-8?q?=E3=81=AE=E9=AB=98=E3=81=95=E3=82=92=E5=90=88=E3=82=8F=E3=81=9B?= =?UTF-8?q?=E3=81=BE=E3=81=97=E3=81=9F=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/template/admin/index.twig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Eccube/Resource/template/admin/index.twig b/src/Eccube/Resource/template/admin/index.twig index fea976f7730..f9e34b635de 100644 --- a/src/Eccube/Resource/template/admin/index.twig +++ b/src/Eccube/Resource/template/admin/index.twig @@ -313,8 +313,9 @@ file that was distributed with this source code.
- +
+
From b38f4bad2e68a1121ec101c5e69ab8681a2833cb Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Fri, 21 Aug 2020 14:37:10 +0900 Subject: [PATCH 042/207] =?UTF-8?q?OrderNo=E3=82=92TimeZone=E3=81=AE?= =?UTF-8?q?=E5=A4=89=E6=9B=B4=E3=81=AB=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Service/PurchaseFlow/Processor/OrderNoProcessor.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Eccube/Service/PurchaseFlow/Processor/OrderNoProcessor.php b/src/Eccube/Service/PurchaseFlow/Processor/OrderNoProcessor.php index d25c02bcec3..d3a8dc60fd1 100644 --- a/src/Eccube/Service/PurchaseFlow/Processor/OrderNoProcessor.php +++ b/src/Eccube/Service/PurchaseFlow/Processor/OrderNoProcessor.php @@ -71,13 +71,13 @@ public function process(ItemHolderInterface $itemHolder, PurchaseContext $contex if (count($matches) === 2) { switch ($matches[1]) { case 'yyyy': - return date('Y'); + return (new \DateTime())->format('Y'); case 'yy': - return date('y'); + return (new \DateTime())->format('y'); case 'mm': - return date('m'); + return (new \DateTime())->format('m'); case 'dd': - return date('d'); + return (new \DateTime())->format('d'); default: $res = explode(',', str_replace(' ', '', $matches[1])); if (count($res) === 2 && is_numeric($res[1])) { From 111d031e7a78803802a0d6c3429847cc833acd7d Mon Sep 17 00:00:00 2001 From: Satoshi Nakano Date: Sun, 23 Aug 2020 19:30:36 +0900 Subject: [PATCH 043/207] =?UTF-8?q?=E3=83=AD=E3=82=B0=E3=81=AE=E3=83=80?= =?UTF-8?q?=E3=82=A6=E3=83=B3=E3=83=AD=E3=83=BC=E3=83=89=E6=A9=9F=E8=83=BD?= =?UTF-8?q?=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Setting/System/LogController.php | 28 +++++++++++++++---- src/Eccube/Form/Type/Admin/LogType.php | 4 +++ .../template/admin/Setting/System/log.twig | 3 ++ 3 files changed, 30 insertions(+), 5 deletions(-) diff --git a/src/Eccube/Controller/Admin/Setting/System/LogController.php b/src/Eccube/Controller/Admin/Setting/System/LogController.php index 885f25f80b8..b20c5c6d923 100644 --- a/src/Eccube/Controller/Admin/Setting/System/LogController.php +++ b/src/Eccube/Controller/Admin/Setting/System/LogController.php @@ -20,6 +20,7 @@ use Symfony\Component\Routing\Annotation\Route; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template; use Symfony\Component\HttpFoundation\Request; +use Symfony\Component\HttpFoundation\StreamedResponse; class LogController extends AbstractController { @@ -27,7 +28,7 @@ class LogController extends AbstractController * @Route("/%eccube_admin_route%/setting/system/log", name="admin_setting_system_log") * @Template("@admin/Setting/System/log.twig") * - * @return array + * @return array|Symfony\Component\HttpFoundation\StreamedResponse */ public function index(Request $request) { @@ -67,10 +68,27 @@ public function index(Request $request) $logDir = $this->getParameter('kernel.logs_dir').DIRECTORY_SEPARATOR.$this->getParameter('kernel.environment'); $logFile = $logDir.'/'.$formData['files']; - return [ - 'form' => $form->createView(), - 'log' => $this->parseLogFile($logFile, $formData), - ]; + if ($form->getClickedButton() && $form->getClickedButton()->getName() === 'download') { + $bufferSize = 1024 * 50; + $response = new StreamedResponse(); + $response->headers->set('Content-Length',filesize($logFile)); + $response->headers->set('Content-Disposition','attachment; filename=' . basename($logFile)); + $response->headers->set('Content-Type','application/octet-stream'); + $response->setCallback(function() use($logFile,$bufferSize) { + if ($fh = fopen($logFile,'r')) { + while (!feof($fh)) { + echo fread($fh,$bufferSize); + } + } + }); + $response->send(); + return $response; + } else { + return [ + 'form' => $form->createView(), + 'log' => $this->parseLogFile($logFile, $formData), + ]; + } } /** diff --git a/src/Eccube/Form/Type/Admin/LogType.php b/src/Eccube/Form/Type/Admin/LogType.php index 6d0dbde7dba..d3a77907c54 100644 --- a/src/Eccube/Form/Type/Admin/LogType.php +++ b/src/Eccube/Form/Type/Admin/LogType.php @@ -18,6 +18,7 @@ use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; use Symfony\Component\Form\Extension\Core\Type\TextType; +use Symfony\Component\Form\Extension\Core\Type\SubmitType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\HttpKernel\KernelInterface; use Symfony\Component\Validator\Constraints as Assert; @@ -82,6 +83,9 @@ public function buildForm(FormBuilderInterface $builder, array $options) new Assert\NotBlank(), new Assert\Range(['min' => 1, 'max' => 50000]), ], + ]) + ->add('download', SubmitType::class, [ + 'label' => 'admin.common.download' ]); } diff --git a/src/Eccube/Resource/template/admin/Setting/System/log.twig b/src/Eccube/Resource/template/admin/Setting/System/log.twig index 6b91154febe..afd12a109ab 100644 --- a/src/Eccube/Resource/template/admin/Setting/System/log.twig +++ b/src/Eccube/Resource/template/admin/Setting/System/log.twig @@ -40,6 +40,9 @@ file that was distributed with this source code.
+
+ {{ form_widget(form.download) }} +
{{ form_errors(form.line_max) }}
From dea0835f99bb76e11eea54cadba557b05c28f9a0 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Mon, 24 Aug 2020 10:05:57 +0900 Subject: [PATCH 044/207] =?UTF-8?q?=E3=83=90=E3=83=BC=E3=82=B8=E3=83=A7?= =?UTF-8?q?=E3=83=B3=E3=82=92=E6=9B=B4=E6=96=B0=204.0.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- src/Eccube/Common/Constant.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index a54dfcecfd1..2f773c3b3f8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "eccube", - "version": "4.0.4", + "version": "4.0.5", "description": "EC-CUBE EC open platform.", "main": "index.js", "directories": { diff --git a/src/Eccube/Common/Constant.php b/src/Eccube/Common/Constant.php index 122c13ecc71..501ea2b56f0 100644 --- a/src/Eccube/Common/Constant.php +++ b/src/Eccube/Common/Constant.php @@ -18,7 +18,7 @@ class Constant /** * EC-CUBE VERSION. */ - const VERSION = '4.0.4'; + const VERSION = '4.0.5'; /** * Enable value. From d553ac2799d5623b70085f55e498cc3186932606 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Mon, 24 Aug 2020 16:41:33 +0900 Subject: [PATCH 045/207] composer require easycorp/easy-log-handler --- composer.json | 2 +- composer.lock | 105 +++++++++++++++++++++++++------------------------- 2 files changed, 54 insertions(+), 53 deletions(-) diff --git a/composer.json b/composer.json index 4d459c9728c..cc932e0287a 100644 --- a/composer.json +++ b/composer.json @@ -32,6 +32,7 @@ "doctrine/lexer": "^1.0", "doctrine/migrations": "^1.8", "doctrine/orm": "^2.6", + "easycorp/easy-log-handler": "^1.0", "ec-cube/plugin-installer": "~0.0.6", "egulias/email-validator": "^2.1", "friendsofphp/php-cs-fixer": "^2.10", @@ -111,7 +112,6 @@ "captbaritone/mailcatcher-codeception-module": "^1.2", "codeception/codeception": "~2.4.5", "dama/doctrine-test-bundle": "^5.0", - "easycorp/easy-log-handler": "^1.0", "fzaninotto/faker": "^1.7", "mikey179/vfsstream": "^1.6", "php-coveralls/php-coveralls": "^2.1", diff --git a/composer.lock b/composer.lock index 8676bfaedf1..44539fedfaf 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "9f90fb1a2efd3a3160e24841a6a19488", + "content-hash": "26d5cd98f0123a682f18d802228af345", "packages": [ { "name": "composer/ca-bundle", @@ -1638,6 +1638,57 @@ ], "time": "2018-06-14T14:45:07+00:00" }, + { + "name": "easycorp/easy-log-handler", + "version": "v1.0.9", + "source": { + "type": "git", + "url": "https://github.com/EasyCorp/easy-log-handler.git", + "reference": "224e1dfcf9455aceee89cd0af306ac097167fac1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/EasyCorp/easy-log-handler/zipball/224e1dfcf9455aceee89cd0af306ac097167fac1", + "reference": "224e1dfcf9455aceee89cd0af306ac097167fac1", + "shasum": "" + }, + "require": { + "monolog/monolog": "~1.6|~2.0", + "php": ">=7.1", + "symfony/yaml": "^3.4|^4.0|^5.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "EasyCorp\\EasyLog\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Javier Eguiluz", + "email": "javiereguiluz@gmail.com" + }, + { + "name": "Project Contributors", + "homepage": "https://github.com/EasyCorp/easy-log-handler" + } + ], + "description": "A handler for Monolog that optimizes log messages to be processed by humans instead of software. Improve your productivity with logs that are easy to understand.", + "homepage": "https://github.com/EasyCorp/easy-log-handler", + "keywords": [ + "easy", + "log", + "logging", + "monolog", + "productivity" + ], + "abandoned": true, + "time": "2019-10-24T07:13:31+00:00" + }, { "name": "ec-cube/plugin-installer", "version": "0.0.8", @@ -8772,57 +8823,6 @@ ], "time": "2019-11-25T10:12:28+00:00" }, - { - "name": "easycorp/easy-log-handler", - "version": "v1.0.9", - "source": { - "type": "git", - "url": "https://github.com/EasyCorp/easy-log-handler.git", - "reference": "224e1dfcf9455aceee89cd0af306ac097167fac1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/EasyCorp/easy-log-handler/zipball/224e1dfcf9455aceee89cd0af306ac097167fac1", - "reference": "224e1dfcf9455aceee89cd0af306ac097167fac1", - "shasum": "" - }, - "require": { - "monolog/monolog": "~1.6|~2.0", - "php": ">=7.1", - "symfony/yaml": "^3.4|^4.0|^5.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "EasyCorp\\EasyLog\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Javier Eguiluz", - "email": "javiereguiluz@gmail.com" - }, - { - "name": "Project Contributors", - "homepage": "https://github.com/EasyCorp/easy-log-handler" - } - ], - "description": "A handler for Monolog that optimizes log messages to be processed by humans instead of software. Improve your productivity with logs that are easy to understand.", - "homepage": "https://github.com/EasyCorp/easy-log-handler", - "keywords": [ - "easy", - "log", - "logging", - "monolog", - "productivity" - ], - "abandoned": true, - "time": "2019-10-24T07:13:31+00:00" - }, { "name": "facebook/webdriver", "version": "1.7.1", @@ -9671,6 +9671,7 @@ "keywords": [ "tokenizer" ], + "abandoned": true, "time": "2017-11-27T05:48:46+00:00" }, { From afcb973cde79e98df35422640b892228e57b2da3 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Tue, 25 Aug 2020 10:58:37 +0900 Subject: [PATCH 046/207] =?UTF-8?q?GitHub=20Actions=20=E3=81=8C=E5=AE=9F?= =?UTF-8?q?=E8=A1=8C=E3=81=97=E3=82=84=E3=81=99=E3=81=84=E3=82=88=E3=81=86?= =?UTF-8?q?=E3=81=ABjob=E3=82=92=E5=88=86=E5=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/action.yml | 971 ------------------------------ .github/workflows/deploy.yml | 167 +++++ .github/workflows/e2e-test.yml | 133 ++++ .github/workflows/plugin-test.yml | 586 ++++++++++++++++++ .github/workflows/unit-test.yml | 105 ++++ 5 files changed, 991 insertions(+), 971 deletions(-) delete mode 100644 .github/workflows/action.yml create mode 100644 .github/workflows/deploy.yml create mode 100644 .github/workflows/e2e-test.yml create mode 100644 .github/workflows/plugin-test.yml create mode 100644 .github/workflows/unit-test.yml diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml deleted file mode 100644 index c6eeeee6a93..00000000000 --- a/.github/workflows/action.yml +++ /dev/null @@ -1,971 +0,0 @@ -name: CI/CD for EC-CUBE -on: - push: - branches: - - 4.0 - tags: - - '*' - paths: - - '**' - - '!*.md' - pull_request: - paths: - - '**' - - '!*.md' - release: - types: [ published ] -jobs: - phpunit: - name: PHPUnit - runs-on: ${{ matrix.operating-system }} - strategy: - fail-fast: false - matrix: - operating-system: [ ubuntu-18.04 ] - php: [ 7.1, 7.2, 7.3, 7.4 ] - db: [ mysql, pgsql, sqlite3 ] - include: - - db: mysql - database_url: mysql://root:password@127.0.0.1:3306/eccube_db - database_server_version: 5 - - db: pgsql - database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db - database_server_version: 11 - - db: sqlite3 - database_url: sqlite:///var/eccube.db - database_server_version: 3 - - services: - mysql: - image: mysql:5.7 - env: - MYSQL_ROOT_PASSWORD: password - ports: - - 3306:3306 - options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 - postgres: - image: postgres:11 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: password - ports: - - 5432:5432 - # needed because the postgres container does not provide a healthcheck - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 - - steps: - - name: Checkout - uses: actions/checkout@master - - - name: Get Composer Cache Directory - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Setup PHP - uses: nanasess/setup-php@master - with: - php-version: ${{ matrix.php }} - - - name: composer install - run: composer install --dev --no-interaction -o --apcu-autoloader - - - name: Setup EC-CUBE - env: - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - run: | - bin/console doctrine:database:create - bin/console doctrine:schema:create - bin/console eccube:fixtures:load - - - name: PHPUnit - env: - APP_ENV: 'test' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - run: | - bin/phpunit --exclude-group cache-clear,cache-clear-install,update-schema-doctrine - bin/phpunit --group cache-clear - bin/phpunit --group cache-clear-install - bin/phpunit --group update-schema-doctrine --exclude-group update-schema-doctrine-install - bin/phpunit --group update-schema-doctrine-install --filter=testInstallPluginWithNoProxy - bin/phpunit --group update-schema-doctrine-install --filter=testInstallPluginWithProxy - bin/phpunit --group update-schema-doctrine-install --filter=testEnablePluginWithNoProxy - bin/phpunit --group update-schema-doctrine-install --filter=testEnablePluginWithProxy - bin/phpunit --group update-schema-doctrine-install --filter=testDisablePluginWithNoProxy - bin/phpunit --group update-schema-doctrine-install --filter=testDisablePluginWithProxy - bin/phpunit --group update-schema-doctrine-install --filter=testCreateEntityAndTrait - - codeception: - name: Codeception - runs-on: ${{ matrix.operating-system }} - strategy: - fail-fast: false - matrix: - operating-system: [ ubuntu-18.04 ] - php: [ 7.3 ] - db: [ pgsql ] - group: [ admin01, admin02, admin03, front, installer ] - include: - - db: pgsql - database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db - database_server_version: 11 - - group: admin01 - app_env: 'codeception' - - group: admin02 - app_env: 'codeception' - - group: admin03 - app_env: 'codeception' - - group: front - app_env: 'codeception' - - group: installer - app_env: 'install' - services: - postgres: - image: postgres:11 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: password - ports: - - 5432:5432 - # needed because the postgres container does not provide a healthcheck - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 - - mailcatcher: - image: schickling/mailcatcher - ports: - - 1080:1080 - - 1025:1025 - - steps: - - name: Checkout - uses: actions/checkout@master - - - name: Get Composer Cache Directory - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Setup PHP - uses: nanasess/setup-php@master - with: - php-version: ${{ matrix.php }} - - - name: composer install - run: composer install --dev --no-interaction -o --apcu-autoloader - - name: Setup to EC-CUBE - env: - APP_ENV: ${{ matrix.app_env }} - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - run: | - echo "APP_ENV=${APP_ENV}" > .env - bin/console doctrine:database:create --env=dev - bin/console doctrine:schema:create --env=dev - bin/console eccube:fixtures:load --env=dev - - - name: setup-chromedriver - uses: nanasess/setup-chromedriver@master - - - name: Run chromedriver - run: | - export DISPLAY=:99 - chromedriver --url-base=/wd/hub & - echo ">>> Started chrome-driver" - sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & - echo ">>> Started xvfb" - - - name: Start PHP Development Server - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - run: php -S localhost:8000 & - - - name: Codeception - env: - APP_ENV: ${{ matrix.app_env }} - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - GROUP: ${{ matrix.group }} - SYMFONY_DEPRECATIONS_HELPER: weak - run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action -g ${GROUP} - - name: Upload evidence - if: failure() - uses: actions/upload-artifact@v2 - with: - name: codeception-${{ matrix.group }}-evidence - path: codeception/_output/ - - name: Upload logs - if: failure() - uses: actions/upload-artifact@v2 - with: - name: codeception-${{ matrix.group }}-logs - path: var/log/ - - plugin-install: - name: Plugin install - runs-on: ${{ matrix.operating-system }} - strategy: - fail-fast: false - matrix: - operating-system: [ ubuntu-18.04 ] - php: [ 7.3 ] - db: [ pgsql, mysql ] - method: - - test_install_enable_disable_remove_store - - test_install_enable_disable_remove_local - - test_install_enable_disable_enable_disable_remove_store - - test_install_enable_disable_enable_disable_remove_local - - test_install_remove_local - - test_install_remove_store - - test_bundle_install_enable_disable_remove_store - - test_bundle_install_update_enable_disable_remove_store - include: - - db: pgsql - database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db - database_server_version: 11 - - db: mysql - database_url: mysql://root:password@127.0.0.1:3306/eccube_db - database_server_version: 5 - - services: - mysql: - image: mysql:5.7 - env: - MYSQL_ROOT_PASSWORD: password - ports: - - 3306:3306 - options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 - postgres: - image: postgres:11 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: password - ports: - - 5432:5432 - # needed because the postgres container does not provide a healthcheck - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 - mailcatcher: - image: schickling/mailcatcher - ports: - - 1080:1080 - - 1025:1025 - - steps: - - name: Checkout - uses: actions/checkout@master - - - name: Get Composer Cache Directory - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Setup PHP - uses: nanasess/setup-php@master - with: - php-version: ${{ matrix.php }} - - - name: composer install - run: composer install --dev --no-interaction -o --apcu-autoloader - - - name: Setup to EC-CUBE - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - run: | - echo "APP_ENV=${APP_ENV}" > .env - bin/console doctrine:database:create --env=dev - bin/console doctrine:schema:create --env=dev - bin/console eccube:fixtures:load --env=dev - - - name: Update baseinfo with pgsql - if: matrix.db == 'pgsql' - env: - PGPASSWORD: 'password' - run: | - sudo apt-fast install -y postgresql-client - psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test';" - - - name: Update baseinfo with mysql - if: matrix.db == 'mysql' - run: mysql -h 127.0.0.1 -u root -ppassword eccube_db -e "update dtb_base_info set authentication_key='test';" - - - name: setup-chromedriver - uses: nanasess/setup-chromedriver@master - - - name: Run chromedriver - run: | - export DISPLAY=:99 - chromedriver --url-base=/wd/hub & - echo ">>> Started chrome-driver" - sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & - echo ">>> Started xvfb" - - - name: Start PHP Development Server - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - run: php -S localhost:8000 & - - ## ${PWD}/repos does not exist so service cannot be started - - name: Run package-api - run: | - if [[ ! -d ${PWD}/repos ]]; then mkdir -p ${PWD}/repos ; fi - docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api - - - name: Codeception - env: - APP_ENV: ${{ matrix.app_env }} - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - METHOD: ${{ matrix.method }} - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - NO_FIXTURES: 1 - run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action EA10PluginCest:${METHOD} - - name: Upload evidence - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-install-${{ matrix.method }}-evidence - path: codeception/_output/ - - name: Upload logs - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-install-${{ matrix.method }}-logs - path: var/log/ - - plugin-update: - name: Plugin Update - runs-on: ${{ matrix.operating-system }} - strategy: - fail-fast: false - matrix: - operating-system: [ ubuntu-18.04 ] - php: [ 7.3 ] - db: [ pgsql, mysql ] - method: - - test_install_update_remove_store - - test_install_update_remove_local - - test_install_enable_disable_update_enable_disable_remove_local - - test_install_enable_disable_update_enable_disable_remove_store - - test_install_enable_update_disable_remove_store - - test_install_enable_update_disable_remove_local - include: - - db: pgsql - database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db - database_server_version: 11 - - db: mysql - database_url: mysql://root:password@127.0.0.1:3306/eccube_db - database_server_version: 5 - - services: - mysql: - image: mysql:5.7 - env: - MYSQL_ROOT_PASSWORD: password - ports: - - 3306:3306 - options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 - postgres: - image: postgres:11 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: password - ports: - - 5432:5432 - # needed because the postgres container does not provide a healthcheck - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 - mailcatcher: - image: schickling/mailcatcher - ports: - - 1080:1080 - - 1025:1025 - - steps: - - name: Checkout - uses: actions/checkout@master - - - name: Get Composer Cache Directory - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Setup PHP - uses: nanasess/setup-php@master - with: - php-version: ${{ matrix.php }} - - - name: Install to Composer - run: composer install --dev --no-interaction -o --apcu-autoloader - - name: Setup to EC-CUBE - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - run: | - echo "APP_ENV=${APP_ENV}" > .env - bin/console doctrine:database:create --env=dev - bin/console doctrine:schema:create --env=dev - bin/console eccube:fixtures:load --env=dev - - - name: Update baseinfo with pgsql - if: matrix.db == 'pgsql' - env: - PGPASSWORD: 'password' - run: | - sudo apt-fast install -y postgresql-client - psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test';" - - - name: Update baseinfo with mysql - if: matrix.db == 'mysql' - run: mysql -h 127.0.0.1 -u root -ppassword eccube_db -e "update dtb_base_info set authentication_key='test';" - - - name: setup-chromedriver - uses: nanasess/setup-chromedriver@master - - - name: Run chromedriver - run: | - export DISPLAY=:99 - chromedriver --url-base=/wd/hub & - echo ">>> Started chrome-driver" - sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & - echo ">>> Started xvfb" - - - name: Start PHP Development Server - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - run: php -S localhost:8000 & - - ## ${PWD}/repos does not exist so service cannot be started - - name: Run package-api - run: | - if [[ ! -d ${PWD}/repos ]]; then mkdir -p ${PWD}/repos ; fi - docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api - - - name: Run to Codeception - env: - APP_ENV: ${{ matrix.app_env }} - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - METHOD: ${{ matrix.method }} - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - NO_FIXTURES: 1 - run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action EA10PluginCest:${METHOD} - - name: Upload evidence - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-update-${{ matrix.method }}-evidence - path: codeception/_output/ - - name: Upload logs - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-update-${{ matrix.method }}-logs - path: var/log/ - - plugin-extend: - name: Plugin extend - runs-on: ${{ matrix.operating-system }} - strategy: - fail-fast: false - matrix: - operating-system: [ ubuntu-18.04 ] - php: [ 7.3 ] - db: [ pgsql, mysql ] - method: - - test_extend_same_table_store - - test_extend_same_table_disabled_remove_store - - test_extend_same_table_local - - test_extend_same_table_disabled_remove_local - - test_extend_same_table_crossed_store - - test_extend_same_table_crossed_local - include: - - db: pgsql - database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db - database_server_version: 11 - - db: mysql - database_url: mysql://root:password@127.0.0.1:3306/eccube_db - database_server_version: 5 - - services: - mysql: - image: mysql:5.7 - env: - MYSQL_ROOT_PASSWORD: password - ports: - - 3306:3306 - options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 - postgres: - image: postgres:11 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: password - ports: - - 5432:5432 - # needed because the postgres container does not provide a healthcheck - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 - mailcatcher: - image: schickling/mailcatcher - ports: - - 1080:1080 - - 1025:1025 - - steps: - - name: Checkout - uses: actions/checkout@master - - - name: Get Composer Cache Directory - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Setup PHP - uses: nanasess/setup-php@master - with: - php-version: ${{ matrix.php }} - - - name: Install to Composer - run: composer install --dev --no-interaction -o --apcu-autoloader - - name: Setup to EC-CUBE - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - run: | - echo "APP_ENV=${APP_ENV}" > .env - bin/console doctrine:database:create --env=dev - bin/console doctrine:schema:create --env=dev - bin/console eccube:fixtures:load --env=dev - - - name: Update baseinfo with pgsql - if: matrix.db == 'pgsql' - env: - PGPASSWORD: 'password' - run: | - sudo apt-fast install -y postgresql-client - psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test';" - - - name: Update baseinfo with mysql - if: matrix.db == 'mysql' - run: mysql -h 127.0.0.1 -u root -ppassword eccube_db -e "update dtb_base_info set authentication_key='test';" - - - name: setup-chromedriver - uses: nanasess/setup-chromedriver@master - - - name: Run chromedriver - run: | - export DISPLAY=:99 - chromedriver --url-base=/wd/hub & - echo ">>> Started chrome-driver" - sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & - echo ">>> Started xvfb" - - - name: Start PHP Development Server - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - run: php -S localhost:8000 & - - ## ${PWD}/repos does not exist so service cannot be started - - name: Run package-api - run: | - if [[ ! -d ${PWD}/repos ]]; then mkdir -p ${PWD}/repos ; fi - docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api - - - name: Run to Codeception - env: - APP_ENV: ${{ matrix.app_env }} - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - METHOD: ${{ matrix.method }} - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - NO_FIXTURES: 1 - run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action EA10PluginCest:${METHOD} - - name: Upload evidence - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-extend-${{ matrix.method }}-evidence - path: codeception/_output/ - - name: Upload logs - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-extend-${{ matrix.method }}-logs - path: var/log/ - - plugin-depend: - name: Plugin depend - runs-on: ${{ matrix.operating-system }} - strategy: - fail-fast: false - matrix: - operating-system: [ ubuntu-18.04 ] - php: [ 7.3 ] - db: [ pgsql, mysql ] - method: - - test_dependency_each_install_plugin - - test_dependency_plugin_install - - test_dependency_plugin_update - - test_install_error - - install_enable_disable_enable_disable_remove_store - - test_enhance_plugin_entity - include: - - db: pgsql - database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db - database_server_version: 11 - - db: mysql - database_url: mysql://root:password@127.0.0.1:3306/eccube_db - database_server_version: 5 - exclude: - - db: mysql - method: test_dependency_plugin_update - - services: - mysql: - image: mysql:5.7 - env: - MYSQL_ROOT_PASSWORD: password - ports: - - 3306:3306 - options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 - postgres: - image: postgres:11 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: password - ports: - - 5432:5432 - # needed because the postgres container does not provide a healthcheck - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 - mailcatcher: - image: schickling/mailcatcher - ports: - - 1080:1080 - - 1025:1025 - - steps: - - name: Checkout - uses: actions/checkout@master - - - name: Get Composer Cache Directory - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Setup PHP - uses: nanasess/setup-php@master - with: - php-version: ${{ matrix.php }} - - - name: Install to Composer - run: composer install --dev --no-interaction -o --apcu-autoloader - - name: Setup to EC-CUBE - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - run: | - echo "APP_ENV=${APP_ENV}" > .env - bin/console doctrine:database:create --env=dev - bin/console doctrine:schema:create --env=dev - bin/console eccube:fixtures:load --env=dev - - - name: Update baseinfo with pgsql - if: matrix.db == 'pgsql' - env: - PGPASSWORD: 'password' - run: | - sudo apt-fast install -y postgresql-client - psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test';" - - - name: Update baseinfo with mysql - if: matrix.db == 'mysql' - run: mysql -h 127.0.0.1 -u root -ppassword eccube_db -e "update dtb_base_info set authentication_key='test';" - - - name: setup-chromedriver - uses: nanasess/setup-chromedriver@master - - - name: Run chromedriver - run: | - export DISPLAY=:99 - chromedriver --url-base=/wd/hub & - echo ">>> Started chrome-driver" - sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & - echo ">>> Started xvfb" - - - name: Start PHP Development Server - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - run: php -S localhost:8000 & - - ## ${PWD}/repos does not exist so service cannot be started - - name: Run package-api - run: | - if [[ ! -d ${PWD}/repos ]]; then mkdir -p ${PWD}/repos ; fi - docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api - - - name: Run to Codeception - env: - APP_ENV: ${{ matrix.app_env }} - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - METHOD: ${{ matrix.method }} - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - NO_FIXTURES: 1 - run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action EA10PluginCest:${METHOD} - - name: Upload evidence - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-depend-${{ matrix.method }}-evidence - path: codeception/_output/ - - name: Upload logs - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-depend-${{ matrix.method }}-logs - path: var/log/ - - deploy: - name: Deploy - runs-on: ubuntu-18.04 - needs: [ phpunit, codeception ] - steps: - - name: Checkout - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: actions/checkout@master - - - name: Setup PHP - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: nanasess/setup-php@master - with: - php-version: '7.3' - - - name: Get Composer Cache Directory - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Install to Composer - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - run: composer install --no-scripts --no-dev --no-interaction --optimize-autoloader - - - name: Dump GitHub context - env: - GITHUB_CONTEXT: ${{ toJson(github) }} - run: echo "$GITHUB_CONTEXT" - - name: Dump job context - env: - JOB_CONTEXT: ${{ toJson(job) }} - run: echo "$JOB_CONTEXT" - - name: Dump steps context - env: - STEPS_CONTEXT: ${{ toJson(steps) }} - run: echo "$STEPS_CONTEXT" - - name: Dump runner context - env: - RUNNER_CONTEXT: ${{ toJson(runner) }} - run: echo "$RUNNER_CONTEXT" - - name: Dump strategy context - env: - STRATEGY_CONTEXT: ${{ toJson(strategy) }} - run: echo "$STRATEGY_CONTEXT" - - name: Dump matrix context - env: - MATRIX_CONTEXT: ${{ toJson(matrix) }} - run: echo "$MATRIX_CONTEXT" - - - name: Translate to templates - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - run: php bin/template_jp.php - - - name: Packaging - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - working-directory: ../ - env: - TAG_NAME: ${{ github.event.release.tag_name }} - REPOSITORY_NAME: ${{ github.event.repository.name }} - run: | - rm -rf $GITHUB_WORKSPACE/.editorconfig - rm -rf $GITHUB_WORKSPACE/.gitignore - rm -rf $GITHUB_WORKSPACE/.buildpath - rm -rf $GITHUB_WORKSPACE/.gitmodules - rm -rf $GITHUB_WORKSPACE/.scrutinizer.yml - rm -rf $GITHUB_WORKSPACE/.travis.yml - rm -rf $GITHUB_WORKSPACE/appveyor.yml - rm -rf $GITHUB_WORKSPACE/.coveralls.yml - rm -rf $GITHUB_WORKSPACE/.php_cs.dist - rm -rf $GITHUB_WORKSPACE/phpunit.xml.dist - rm -rf $GITHUB_WORKSPACE/app.json - rm -rf $GITHUB_WORKSPACE/Procfile - rm -rf $GITHUB_WORKSPACE/LICENSE.txt - rm -rf $GITHUB_WORKSPACE/README.md - rm -rf $GITHUB_WORKSPACE/codeception.sh - rm -rf $GITHUB_WORKSPACE/codeception.yml - rm -rf $GITHUB_WORKSPACE/app/Plugin/* - rm -rf $GITHUB_WORKSPACE/codeception - rm -rf $GITHUB_WORKSPACE/tests - rm -rf $GITHUB_WORKSPACE/.github - find $GITHUB_WORKSPACE -name "dummy" -print0 | xargs -0 rm -rf - find $GITHUB_WORKSPACE -name ".git*" -and ! -name ".gitkeep" -print0 | xargs -0 rm -rf - find $GITHUB_WORKSPACE -name ".git*" -type d -print0 | xargs -0 rm -rf - - echo "set permissions..." - chmod -R o+w $GITHUB_WORKSPACE - - echo "complession files..." - tar czfp eccube-$TAG_NAME.tar.gz $REPOSITORY_NAME - zip -ry eccube-$TAG_NAME.zip $REPOSITORY_NAME 1> /dev/null - md5sum eccube-$TAG_NAME.tar.gz | awk '{ print $1 }' > eccube-$TAG_NAME.tar.gz.checksum.md5 - md5sum eccube-$TAG_NAME.zip | awk '{ print $1 }' > eccube-$TAG_NAME.zip.checksum.md5 - sha1sum eccube-$TAG_NAME.tar.gz | awk '{ print $1 }' > eccube-$TAG_NAME.tar.gz.checksum.sha1 - sha1sum eccube-$TAG_NAME.zip | awk '{ print $1 }' > eccube-$TAG_NAME.zip.checksum.sha1 - sha256sum eccube-$TAG_NAME.tar.gz | awk '{ print $1 }' > eccube-$TAG_NAME.tar.gz.checksum.sha256 - sha256sum eccube-$TAG_NAME.zip | awk '{ print $1 }' > eccube-$TAG_NAME.zip.checksum.sha256 - ls -al - - - name: Upload binaries to release of TGZ - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.tar.gz - asset_name: eccube-${{ github.event.release.tag_name }}.tar.gz - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of ZIP - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.zip - asset_name: eccube-${{ github.event.release.tag_name }}.zip - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of TGZ md5 checksum - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.md5 - asset_name: eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.md5 - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of TGZ sha1 checksum - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.sha1 - asset_name: eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.sha1 - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of TGZ sha256 checksum - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.sha256 - asset_name: eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.sha256 - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of ZIP md5 checksum - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.zip.checksum.md5 - asset_name: eccube-${{ github.event.release.tag_name }}.zip.checksum.md5 - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of ZIP sha1 checksum - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.zip.checksum.sha1 - asset_name: eccube-${{ github.event.release.tag_name }}.zip.checksum.sha1 - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of ZIP sha256 checksum - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.zip.checksum.sha256 - asset_name: eccube-${{ github.event.release.tag_name }}.zip.checksum.sha256 - tag: ${{ github.ref }} - overwrite: true diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 00000000000..5e742f155ca --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,167 @@ +name: Deploy for EC-CUBE +on: + release: + types: [ published ] +jobs: + deploy: + name: Deploy + runs-on: ubuntu-18.04 + steps: + - name: Checkout + uses: actions/checkout@master + + - name: Setup PHP + uses: nanasess/setup-php@master + with: + php-version: '7.3' + + - name: Get Composer Cache Directory + id: composer-cache + run: | + echo "::set-output name=dir::$(composer config cache-files-dir)" + - uses: actions/cache@v1 + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-composer- + + - name: Install to Composer + run: composer install --no-scripts --no-dev --no-interaction --optimize-autoloader + + - name: Dump GitHub context + env: + GITHUB_CONTEXT: ${{ toJson(github) }} + run: echo "$GITHUB_CONTEXT" + - name: Dump job context + env: + JOB_CONTEXT: ${{ toJson(job) }} + run: echo "$JOB_CONTEXT" + - name: Dump steps context + env: + STEPS_CONTEXT: ${{ toJson(steps) }} + run: echo "$STEPS_CONTEXT" + - name: Dump runner context + env: + RUNNER_CONTEXT: ${{ toJson(runner) }} + run: echo "$RUNNER_CONTEXT" + - name: Dump strategy context + env: + STRATEGY_CONTEXT: ${{ toJson(strategy) }} + run: echo "$STRATEGY_CONTEXT" + - name: Dump matrix context + env: + MATRIX_CONTEXT: ${{ toJson(matrix) }} + run: echo "$MATRIX_CONTEXT" + + - name: Translate to templates + run: php bin/template_jp.php + + - name: Packaging + working-directory: ../ + env: + TAG_NAME: ${{ github.event.release.tag_name }} + REPOSITORY_NAME: ${{ github.event.repository.name }} + run: | + rm -rf $GITHUB_WORKSPACE/.editorconfig + rm -rf $GITHUB_WORKSPACE/.gitignore + rm -rf $GITHUB_WORKSPACE/.buildpath + rm -rf $GITHUB_WORKSPACE/.gitmodules + rm -rf $GITHUB_WORKSPACE/.scrutinizer.yml + rm -rf $GITHUB_WORKSPACE/.travis.yml + rm -rf $GITHUB_WORKSPACE/appveyor.yml + rm -rf $GITHUB_WORKSPACE/.coveralls.yml + rm -rf $GITHUB_WORKSPACE/.php_cs.dist + rm -rf $GITHUB_WORKSPACE/phpunit.xml.dist + rm -rf $GITHUB_WORKSPACE/app.json + rm -rf $GITHUB_WORKSPACE/Procfile + rm -rf $GITHUB_WORKSPACE/LICENSE.txt + rm -rf $GITHUB_WORKSPACE/README.md + rm -rf $GITHUB_WORKSPACE/codeception.sh + rm -rf $GITHUB_WORKSPACE/codeception.yml + rm -rf $GITHUB_WORKSPACE/app/Plugin/* + rm -rf $GITHUB_WORKSPACE/codeception + rm -rf $GITHUB_WORKSPACE/tests + rm -rf $GITHUB_WORKSPACE/.github + find $GITHUB_WORKSPACE -name "dummy" -print0 | xargs -0 rm -rf + find $GITHUB_WORKSPACE -name ".git*" -and ! -name ".gitkeep" -print0 | xargs -0 rm -rf + find $GITHUB_WORKSPACE -name ".git*" -type d -print0 | xargs -0 rm -rf + + echo "set permissions..." + chmod -R o+w $GITHUB_WORKSPACE + + echo "complession files..." + tar czfp eccube-$TAG_NAME.tar.gz $REPOSITORY_NAME + zip -ry eccube-$TAG_NAME.zip $REPOSITORY_NAME 1> /dev/null + md5sum eccube-$TAG_NAME.tar.gz | awk '{ print $1 }' > eccube-$TAG_NAME.tar.gz.checksum.md5 + md5sum eccube-$TAG_NAME.zip | awk '{ print $1 }' > eccube-$TAG_NAME.zip.checksum.md5 + sha1sum eccube-$TAG_NAME.tar.gz | awk '{ print $1 }' > eccube-$TAG_NAME.tar.gz.checksum.sha1 + sha1sum eccube-$TAG_NAME.zip | awk '{ print $1 }' > eccube-$TAG_NAME.zip.checksum.sha1 + sha256sum eccube-$TAG_NAME.tar.gz | awk '{ print $1 }' > eccube-$TAG_NAME.tar.gz.checksum.sha256 + sha256sum eccube-$TAG_NAME.zip | awk '{ print $1 }' > eccube-$TAG_NAME.zip.checksum.sha256 + ls -al + + - name: Upload binaries to release of TGZ + uses: svenstaro/upload-release-action@v1-release + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.tar.gz + asset_name: eccube-${{ github.event.release.tag_name }}.tar.gz + tag: ${{ github.ref }} + overwrite: true + - name: Upload binaries to release of ZIP + uses: svenstaro/upload-release-action@v1-release + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.zip + asset_name: eccube-${{ github.event.release.tag_name }}.zip + tag: ${{ github.ref }} + overwrite: true + - name: Upload binaries to release of TGZ md5 checksum + uses: svenstaro/upload-release-action@v1-release + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.md5 + asset_name: eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.md5 + tag: ${{ github.ref }} + overwrite: true + - name: Upload binaries to release of TGZ sha1 checksum + uses: svenstaro/upload-release-action@v1-release + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.sha1 + asset_name: eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.sha1 + tag: ${{ github.ref }} + overwrite: true + - name: Upload binaries to release of TGZ sha256 checksum + uses: svenstaro/upload-release-action@v1-release + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.sha256 + asset_name: eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.sha256 + tag: ${{ github.ref }} + overwrite: true + - name: Upload binaries to release of ZIP md5 checksum + uses: svenstaro/upload-release-action@v1-release + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.zip.checksum.md5 + asset_name: eccube-${{ github.event.release.tag_name }}.zip.checksum.md5 + tag: ${{ github.ref }} + overwrite: true + - name: Upload binaries to release of ZIP sha1 checksum + uses: svenstaro/upload-release-action@v1-release + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.zip.checksum.sha1 + asset_name: eccube-${{ github.event.release.tag_name }}.zip.checksum.sha1 + tag: ${{ github.ref }} + overwrite: true + - name: Upload binaries to release of ZIP sha256 checksum + uses: svenstaro/upload-release-action@v1-release + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.zip.checksum.sha256 + asset_name: eccube-${{ github.event.release.tag_name }}.zip.checksum.sha256 + tag: ${{ github.ref }} + overwrite: true diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml new file mode 100644 index 00000000000..449dfb2aabc --- /dev/null +++ b/.github/workflows/e2e-test.yml @@ -0,0 +1,133 @@ +name: E2E test for EC-CUBE +on: + push: + branches: + - 4.0 + tags: + - '*' + paths: + - '**' + - '!*.md' + pull_request: + paths: + - '**' + - '!*.md' + release: + types: [ published ] +jobs: + codeception: + name: Codeception + runs-on: ${{ matrix.operating-system }} + strategy: + fail-fast: false + matrix: + operating-system: [ ubuntu-18.04 ] + php: [ 7.3 ] + db: [ pgsql ] + group: [ admin01, admin02, admin03, front, installer ] + include: + - db: pgsql + database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db + database_server_version: 11 + - group: admin01 + app_env: 'codeception' + - group: admin02 + app_env: 'codeception' + - group: admin03 + app_env: 'codeception' + - group: front + app_env: 'codeception' + - group: installer + app_env: 'install' + services: + postgres: + image: postgres:11 + env: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: password + ports: + - 5432:5432 + # needed because the postgres container does not provide a healthcheck + options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 + + mailcatcher: + image: schickling/mailcatcher + ports: + - 1080:1080 + - 1025:1025 + + steps: + - name: Checkout + uses: actions/checkout@master + + - name: Get Composer Cache Directory + id: composer-cache + run: | + echo "::set-output name=dir::$(composer config cache-files-dir)" + - uses: actions/cache@v1 + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-composer- + + - name: Setup PHP + uses: nanasess/setup-php@master + with: + php-version: ${{ matrix.php }} + + - name: composer install + run: composer install --dev --no-interaction -o --apcu-autoloader + - name: Setup to EC-CUBE + env: + APP_ENV: ${{ matrix.app_env }} + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + run: | + echo "APP_ENV=${APP_ENV}" > .env + bin/console doctrine:database:create --env=dev + bin/console doctrine:schema:create --env=dev + bin/console eccube:fixtures:load --env=dev + + - name: setup-chromedriver + uses: nanasess/setup-chromedriver@master + + - name: Run chromedriver + run: | + export DISPLAY=:99 + chromedriver --url-base=/wd/hub & + echo ">>> Started chrome-driver" + sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & + echo ">>> Started xvfb" + + - name: Start PHP Development Server + env: + APP_ENV: 'codeception' + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + MAILER_URL: 'smtp://localhost:1025' + ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' + run: php -S localhost:8000 & + + - name: Codeception + env: + APP_ENV: ${{ matrix.app_env }} + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + MAILER_URL: 'smtp://localhost:1025' + ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' + GROUP: ${{ matrix.group }} + SYMFONY_DEPRECATIONS_HELPER: weak + run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action -g ${GROUP} + - name: Upload evidence + if: failure() + uses: actions/upload-artifact@v2 + with: + name: codeception-${{ matrix.group }}-evidence + path: codeception/_output/ + - name: Upload logs + if: failure() + uses: actions/upload-artifact@v2 + with: + name: codeception-${{ matrix.group }}-logs + path: var/log/ diff --git a/.github/workflows/plugin-test.yml b/.github/workflows/plugin-test.yml new file mode 100644 index 00000000000..7f2301d2dc5 --- /dev/null +++ b/.github/workflows/plugin-test.yml @@ -0,0 +1,586 @@ +name: Plugin test for EC-CUBE +on: + push: + branches: + - 4.0 + tags: + - '*' + paths: + - '**' + - '!*.md' + pull_request: + paths: + - '**' + - '!*.md' + release: + types: [ published ] +jobs: + plugin-install: + name: Plugin install + runs-on: ${{ matrix.operating-system }} + strategy: + fail-fast: false + matrix: + operating-system: [ ubuntu-18.04 ] + php: [ 7.3 ] + db: [ pgsql, mysql ] + method: + - test_install_enable_disable_remove_store + - test_install_enable_disable_remove_local + - test_install_enable_disable_enable_disable_remove_store + - test_install_enable_disable_enable_disable_remove_local + - test_install_remove_local + - test_install_remove_store + - test_bundle_install_enable_disable_remove_store + - test_bundle_install_update_enable_disable_remove_store + include: + - db: pgsql + database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db + database_server_version: 11 + - db: mysql + database_url: mysql://root:password@127.0.0.1:3306/eccube_db + database_server_version: 5 + + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: password + ports: + - 3306:3306 + options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + postgres: + image: postgres:11 + env: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: password + ports: + - 5432:5432 + # needed because the postgres container does not provide a healthcheck + options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 + mailcatcher: + image: schickling/mailcatcher + ports: + - 1080:1080 + - 1025:1025 + + steps: + - name: Checkout + uses: actions/checkout@master + + - name: Get Composer Cache Directory + id: composer-cache + run: | + echo "::set-output name=dir::$(composer config cache-files-dir)" + - uses: actions/cache@v1 + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-composer- + + - name: Setup PHP + uses: nanasess/setup-php@master + with: + php-version: ${{ matrix.php }} + + - name: composer install + run: composer install --dev --no-interaction -o --apcu-autoloader + + - name: Setup to EC-CUBE + env: + APP_ENV: 'codeception' + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + run: | + echo "APP_ENV=${APP_ENV}" > .env + bin/console doctrine:database:create --env=dev + bin/console doctrine:schema:create --env=dev + bin/console eccube:fixtures:load --env=dev + + - name: Update baseinfo with pgsql + if: matrix.db == 'pgsql' + env: + PGPASSWORD: 'password' + run: | + sudo apt-fast install -y postgresql-client + psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test';" + + - name: Update baseinfo with mysql + if: matrix.db == 'mysql' + run: mysql -h 127.0.0.1 -u root -ppassword eccube_db -e "update dtb_base_info set authentication_key='test';" + + - name: setup-chromedriver + uses: nanasess/setup-chromedriver@master + + - name: Run chromedriver + run: | + export DISPLAY=:99 + chromedriver --url-base=/wd/hub & + echo ">>> Started chrome-driver" + sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & + echo ">>> Started xvfb" + + - name: Start PHP Development Server + env: + APP_ENV: 'codeception' + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + MAILER_URL: 'smtp://localhost:1025' + ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' + run: php -S localhost:8000 & + + ## ${PWD}/repos does not exist so service cannot be started + - name: Run package-api + run: | + if [[ ! -d ${PWD}/repos ]]; then mkdir -p ${PWD}/repos ; fi + docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api + + - name: Codeception + env: + APP_ENV: ${{ matrix.app_env }} + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + MAILER_URL: 'smtp://localhost:1025' + METHOD: ${{ matrix.method }} + ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' + NO_FIXTURES: 1 + run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action EA10PluginCest:${METHOD} + - name: Upload evidence + if: failure() + uses: actions/upload-artifact@v2 + with: + name: plugin-install-${{ matrix.method }}-evidence + path: codeception/_output/ + - name: Upload logs + if: failure() + uses: actions/upload-artifact@v2 + with: + name: plugin-install-${{ matrix.method }}-logs + path: var/log/ + + plugin-update: + name: Plugin Update + runs-on: ${{ matrix.operating-system }} + strategy: + fail-fast: false + matrix: + operating-system: [ ubuntu-18.04 ] + php: [ 7.3 ] + db: [ pgsql, mysql ] + method: + - test_install_update_remove_store + - test_install_update_remove_local + - test_install_enable_disable_update_enable_disable_remove_local + - test_install_enable_disable_update_enable_disable_remove_store + - test_install_enable_update_disable_remove_store + - test_install_enable_update_disable_remove_local + include: + - db: pgsql + database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db + database_server_version: 11 + - db: mysql + database_url: mysql://root:password@127.0.0.1:3306/eccube_db + database_server_version: 5 + + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: password + ports: + - 3306:3306 + options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + postgres: + image: postgres:11 + env: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: password + ports: + - 5432:5432 + # needed because the postgres container does not provide a healthcheck + options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 + mailcatcher: + image: schickling/mailcatcher + ports: + - 1080:1080 + - 1025:1025 + + steps: + - name: Checkout + uses: actions/checkout@master + + - name: Get Composer Cache Directory + id: composer-cache + run: | + echo "::set-output name=dir::$(composer config cache-files-dir)" + - uses: actions/cache@v1 + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-composer- + + - name: Setup PHP + uses: nanasess/setup-php@master + with: + php-version: ${{ matrix.php }} + + - name: Install to Composer + run: composer install --dev --no-interaction -o --apcu-autoloader + - name: Setup to EC-CUBE + env: + APP_ENV: 'codeception' + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + run: | + echo "APP_ENV=${APP_ENV}" > .env + bin/console doctrine:database:create --env=dev + bin/console doctrine:schema:create --env=dev + bin/console eccube:fixtures:load --env=dev + + - name: Update baseinfo with pgsql + if: matrix.db == 'pgsql' + env: + PGPASSWORD: 'password' + run: | + sudo apt-fast install -y postgresql-client + psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test';" + + - name: Update baseinfo with mysql + if: matrix.db == 'mysql' + run: mysql -h 127.0.0.1 -u root -ppassword eccube_db -e "update dtb_base_info set authentication_key='test';" + + - name: setup-chromedriver + uses: nanasess/setup-chromedriver@master + + - name: Run chromedriver + run: | + export DISPLAY=:99 + chromedriver --url-base=/wd/hub & + echo ">>> Started chrome-driver" + sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & + echo ">>> Started xvfb" + + - name: Start PHP Development Server + env: + APP_ENV: 'codeception' + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + MAILER_URL: 'smtp://localhost:1025' + ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' + run: php -S localhost:8000 & + + ## ${PWD}/repos does not exist so service cannot be started + - name: Run package-api + run: | + if [[ ! -d ${PWD}/repos ]]; then mkdir -p ${PWD}/repos ; fi + docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api + + - name: Run to Codeception + env: + APP_ENV: ${{ matrix.app_env }} + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + MAILER_URL: 'smtp://localhost:1025' + METHOD: ${{ matrix.method }} + ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' + NO_FIXTURES: 1 + run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action EA10PluginCest:${METHOD} + - name: Upload evidence + if: failure() + uses: actions/upload-artifact@v2 + with: + name: plugin-update-${{ matrix.method }}-evidence + path: codeception/_output/ + - name: Upload logs + if: failure() + uses: actions/upload-artifact@v2 + with: + name: plugin-update-${{ matrix.method }}-logs + path: var/log/ + + plugin-extend: + name: Plugin extend + runs-on: ${{ matrix.operating-system }} + strategy: + fail-fast: false + matrix: + operating-system: [ ubuntu-18.04 ] + php: [ 7.3 ] + db: [ pgsql, mysql ] + method: + - test_extend_same_table_store + - test_extend_same_table_disabled_remove_store + - test_extend_same_table_local + - test_extend_same_table_disabled_remove_local + - test_extend_same_table_crossed_store + - test_extend_same_table_crossed_local + include: + - db: pgsql + database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db + database_server_version: 11 + - db: mysql + database_url: mysql://root:password@127.0.0.1:3306/eccube_db + database_server_version: 5 + + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: password + ports: + - 3306:3306 + options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + postgres: + image: postgres:11 + env: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: password + ports: + - 5432:5432 + # needed because the postgres container does not provide a healthcheck + options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 + mailcatcher: + image: schickling/mailcatcher + ports: + - 1080:1080 + - 1025:1025 + + steps: + - name: Checkout + uses: actions/checkout@master + + - name: Get Composer Cache Directory + id: composer-cache + run: | + echo "::set-output name=dir::$(composer config cache-files-dir)" + - uses: actions/cache@v1 + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-composer- + + - name: Setup PHP + uses: nanasess/setup-php@master + with: + php-version: ${{ matrix.php }} + + - name: Install to Composer + run: composer install --dev --no-interaction -o --apcu-autoloader + - name: Setup to EC-CUBE + env: + APP_ENV: 'codeception' + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + run: | + echo "APP_ENV=${APP_ENV}" > .env + bin/console doctrine:database:create --env=dev + bin/console doctrine:schema:create --env=dev + bin/console eccube:fixtures:load --env=dev + + - name: Update baseinfo with pgsql + if: matrix.db == 'pgsql' + env: + PGPASSWORD: 'password' + run: | + sudo apt-fast install -y postgresql-client + psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test';" + + - name: Update baseinfo with mysql + if: matrix.db == 'mysql' + run: mysql -h 127.0.0.1 -u root -ppassword eccube_db -e "update dtb_base_info set authentication_key='test';" + + - name: setup-chromedriver + uses: nanasess/setup-chromedriver@master + + - name: Run chromedriver + run: | + export DISPLAY=:99 + chromedriver --url-base=/wd/hub & + echo ">>> Started chrome-driver" + sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & + echo ">>> Started xvfb" + + - name: Start PHP Development Server + env: + APP_ENV: 'codeception' + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + MAILER_URL: 'smtp://localhost:1025' + ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' + run: php -S localhost:8000 & + + ## ${PWD}/repos does not exist so service cannot be started + - name: Run package-api + run: | + if [[ ! -d ${PWD}/repos ]]; then mkdir -p ${PWD}/repos ; fi + docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api + + - name: Run to Codeception + env: + APP_ENV: ${{ matrix.app_env }} + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + MAILER_URL: 'smtp://localhost:1025' + METHOD: ${{ matrix.method }} + ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' + NO_FIXTURES: 1 + run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action EA10PluginCest:${METHOD} + - name: Upload evidence + if: failure() + uses: actions/upload-artifact@v2 + with: + name: plugin-extend-${{ matrix.method }}-evidence + path: codeception/_output/ + - name: Upload logs + if: failure() + uses: actions/upload-artifact@v2 + with: + name: plugin-extend-${{ matrix.method }}-logs + path: var/log/ + + plugin-depend: + name: Plugin depend + runs-on: ${{ matrix.operating-system }} + strategy: + fail-fast: false + matrix: + operating-system: [ ubuntu-18.04 ] + php: [ 7.3 ] + db: [ pgsql, mysql ] + method: + - test_dependency_each_install_plugin + - test_dependency_plugin_install + - test_dependency_plugin_update + - test_install_error + - install_enable_disable_enable_disable_remove_store + - test_enhance_plugin_entity + include: + - db: pgsql + database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db + database_server_version: 11 + - db: mysql + database_url: mysql://root:password@127.0.0.1:3306/eccube_db + database_server_version: 5 + exclude: + - db: mysql + method: test_dependency_plugin_update + + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: password + ports: + - 3306:3306 + options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + postgres: + image: postgres:11 + env: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: password + ports: + - 5432:5432 + # needed because the postgres container does not provide a healthcheck + options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 + mailcatcher: + image: schickling/mailcatcher + ports: + - 1080:1080 + - 1025:1025 + + steps: + - name: Checkout + uses: actions/checkout@master + + - name: Get Composer Cache Directory + id: composer-cache + run: | + echo "::set-output name=dir::$(composer config cache-files-dir)" + - uses: actions/cache@v1 + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-composer- + + - name: Setup PHP + uses: nanasess/setup-php@master + with: + php-version: ${{ matrix.php }} + + - name: Install to Composer + run: composer install --dev --no-interaction -o --apcu-autoloader + - name: Setup to EC-CUBE + env: + APP_ENV: 'codeception' + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + run: | + echo "APP_ENV=${APP_ENV}" > .env + bin/console doctrine:database:create --env=dev + bin/console doctrine:schema:create --env=dev + bin/console eccube:fixtures:load --env=dev + + - name: Update baseinfo with pgsql + if: matrix.db == 'pgsql' + env: + PGPASSWORD: 'password' + run: | + sudo apt-fast install -y postgresql-client + psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test';" + + - name: Update baseinfo with mysql + if: matrix.db == 'mysql' + run: mysql -h 127.0.0.1 -u root -ppassword eccube_db -e "update dtb_base_info set authentication_key='test';" + + - name: setup-chromedriver + uses: nanasess/setup-chromedriver@master + + - name: Run chromedriver + run: | + export DISPLAY=:99 + chromedriver --url-base=/wd/hub & + echo ">>> Started chrome-driver" + sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & + echo ">>> Started xvfb" + + - name: Start PHP Development Server + env: + APP_ENV: 'codeception' + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + MAILER_URL: 'smtp://localhost:1025' + ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' + run: php -S localhost:8000 & + + ## ${PWD}/repos does not exist so service cannot be started + - name: Run package-api + run: | + if [[ ! -d ${PWD}/repos ]]; then mkdir -p ${PWD}/repos ; fi + docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api + + - name: Run to Codeception + env: + APP_ENV: ${{ matrix.app_env }} + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + MAILER_URL: 'smtp://localhost:1025' + METHOD: ${{ matrix.method }} + ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' + NO_FIXTURES: 1 + run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action EA10PluginCest:${METHOD} + - name: Upload evidence + if: failure() + uses: actions/upload-artifact@v2 + with: + name: plugin-depend-${{ matrix.method }}-evidence + path: codeception/_output/ + - name: Upload logs + if: failure() + uses: actions/upload-artifact@v2 + with: + name: plugin-depend-${{ matrix.method }}-logs + path: var/log/ diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml new file mode 100644 index 00000000000..ae138c1459b --- /dev/null +++ b/.github/workflows/unit-test.yml @@ -0,0 +1,105 @@ +name: Unit test for EC-CUBE +on: + push: + branches: + - 4.0 + tags: + - '*' + paths: + - '**' + - '!*.md' + pull_request: + paths: + - '**' + - '!*.md' + release: + types: [ published ] +jobs: + phpunit: + name: PHPUnit + runs-on: ${{ matrix.operating-system }} + strategy: + fail-fast: false + matrix: + operating-system: [ ubuntu-18.04 ] + php: [ 7.1, 7.2, 7.3, 7.4 ] + db: [ mysql, pgsql, sqlite3 ] + include: + - db: mysql + database_url: mysql://root:password@127.0.0.1:3306/eccube_db + database_server_version: 5 + - db: pgsql + database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db + database_server_version: 11 + - db: sqlite3 + database_url: sqlite:///var/eccube.db + database_server_version: 3 + + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: password + ports: + - 3306:3306 + options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + postgres: + image: postgres:11 + env: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: password + ports: + - 5432:5432 + # needed because the postgres container does not provide a healthcheck + options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 + + steps: + - name: Checkout + uses: actions/checkout@master + + - name: Get Composer Cache Directory + id: composer-cache + run: | + echo "::set-output name=dir::$(composer config cache-files-dir)" + - uses: actions/cache@v1 + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-composer- + + - name: Setup PHP + uses: nanasess/setup-php@master + with: + php-version: ${{ matrix.php }} + + - name: composer install + run: composer install --dev --no-interaction -o --apcu-autoloader + + - name: Setup EC-CUBE + env: + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + run: | + bin/console doctrine:database:create + bin/console doctrine:schema:create + bin/console eccube:fixtures:load + + - name: PHPUnit + env: + APP_ENV: 'test' + DATABASE_URL: ${{ matrix.database_url }} + DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} + MAILER_URL: 'smtp://localhost:1025' + run: | + bin/phpunit --exclude-group cache-clear,cache-clear-install,update-schema-doctrine + bin/phpunit --group cache-clear + bin/phpunit --group cache-clear-install + bin/phpunit --group update-schema-doctrine --exclude-group update-schema-doctrine-install + bin/phpunit --group update-schema-doctrine-install --filter=testInstallPluginWithNoProxy + bin/phpunit --group update-schema-doctrine-install --filter=testInstallPluginWithProxy + bin/phpunit --group update-schema-doctrine-install --filter=testEnablePluginWithNoProxy + bin/phpunit --group update-schema-doctrine-install --filter=testEnablePluginWithProxy + bin/phpunit --group update-schema-doctrine-install --filter=testDisablePluginWithNoProxy + bin/phpunit --group update-schema-doctrine-install --filter=testDisablePluginWithProxy + bin/phpunit --group update-schema-doctrine-install --filter=testCreateEntityAndTrait From ed5608417a9956454ce842baa9f1e8efc536c019 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Tue, 25 Aug 2020 15:03:35 +0900 Subject: [PATCH 047/207] =?UTF-8?q?release=E6=99=82=E3=81=AB=E4=B8=80?= =?UTF-8?q?=E5=BA=A6=E3=81=A0=E3=81=91CI=E3=81=8C=E8=B5=B0=E3=82=8B?= =?UTF-8?q?=E3=82=88=E3=81=86=E3=81=AB=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/e2e-test.yml | 2 -- .github/workflows/plugin-test.yml | 2 -- .github/workflows/unit-test.yml | 2 -- 3 files changed, 6 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 449dfb2aabc..3be94a4eb42 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -12,8 +12,6 @@ on: paths: - '**' - '!*.md' - release: - types: [ published ] jobs: codeception: name: Codeception diff --git a/.github/workflows/plugin-test.yml b/.github/workflows/plugin-test.yml index 7f2301d2dc5..c6261a442df 100644 --- a/.github/workflows/plugin-test.yml +++ b/.github/workflows/plugin-test.yml @@ -12,8 +12,6 @@ on: paths: - '**' - '!*.md' - release: - types: [ published ] jobs: plugin-install: name: Plugin install diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index ae138c1459b..9bb48e7cbbe 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -12,8 +12,6 @@ on: paths: - '**' - '!*.md' - release: - types: [ published ] jobs: phpunit: name: PHPUnit From 4a9ecb50ffa6c0d04da1ff54770d24543a7b3933 Mon Sep 17 00:00:00 2001 From: Hideki Okajima Date: Wed, 26 Aug 2020 16:42:48 +0900 Subject: [PATCH 048/207] =?UTF-8?q?=E5=8F=97=E6=B3=A8=E7=B7=A8=E9=9B=86?= =?UTF-8?q?=E3=83=9A=E3=83=BC=E3=82=B8=E5=86=85=E3=81=A7=E3=81=AE=E9=A1=A7?= =?UTF-8?q?=E5=AE=A2=E6=A4=9C=E7=B4=A2=E3=81=AE=E3=83=91=E3=83=A9=E3=83=A1?= =?UTF-8?q?=E3=83=BC=E3=82=BF=E3=81=AE=E6=9D=A1=E4=BB=B6=E3=82=92=E8=AA=BF?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 受注編集ページ内での顧客検索のパラメータの条件を調整 --- src/Eccube/Controller/Admin/Order/EditController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Controller/Admin/Order/EditController.php b/src/Eccube/Controller/Admin/Order/EditController.php index 0fdba5afeee..006a80e6829 100644 --- a/src/Eccube/Controller/Admin/Order/EditController.php +++ b/src/Eccube/Controller/Admin/Order/EditController.php @@ -408,7 +408,7 @@ public function index(Request $request, $id = null, RouterInterface $router) * 顧客情報を検索する. * * @Route("/%eccube_admin_route%/order/search/customer/html", name="admin_order_search_customer_html") - * @Route("/%eccube_admin_route%/order/search/customer/html/page/{page_no}", requirements={"page_No" = "\d+"}, name="admin_order_search_customer_html_page") + * @Route("/%eccube_admin_route%/order/search/customer/html/page/{page_no}", requirements={"page_no" = "\d+"}, name="admin_order_search_customer_html_page") * @Template("@admin/Order/search_customer.twig") * * @param Request $request From ff10cb16a23adc0b4aa2d0939034465d62704487 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Thu, 27 Aug 2020 15:05:05 +0900 Subject: [PATCH 049/207] =?UTF-8?q?Dump=20context=20=E3=81=AF=E4=B8=8D?= =?UTF-8?q?=E8=A6=81=E3=81=AA=E3=81=AE=E3=81=A7=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 25 ------------------------- 1 file changed, 25 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 5e742f155ca..5bfd5ea1d9d 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -29,31 +29,6 @@ jobs: - name: Install to Composer run: composer install --no-scripts --no-dev --no-interaction --optimize-autoloader - - name: Dump GitHub context - env: - GITHUB_CONTEXT: ${{ toJson(github) }} - run: echo "$GITHUB_CONTEXT" - - name: Dump job context - env: - JOB_CONTEXT: ${{ toJson(job) }} - run: echo "$JOB_CONTEXT" - - name: Dump steps context - env: - STEPS_CONTEXT: ${{ toJson(steps) }} - run: echo "$STEPS_CONTEXT" - - name: Dump runner context - env: - RUNNER_CONTEXT: ${{ toJson(runner) }} - run: echo "$RUNNER_CONTEXT" - - name: Dump strategy context - env: - STRATEGY_CONTEXT: ${{ toJson(strategy) }} - run: echo "$STRATEGY_CONTEXT" - - name: Dump matrix context - env: - MATRIX_CONTEXT: ${{ toJson(matrix) }} - run: echo "$MATRIX_CONTEXT" - - name: Translate to templates run: php bin/template_jp.php From 66712a08c9bee91a1092b82f9b8e2169b3c89ede Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Sun, 30 Aug 2020 11:07:14 +0900 Subject: [PATCH 050/207] =?UTF-8?q?docker=20ec-cube=E3=82=B3=E3=83=B3?= =?UTF-8?q?=E3=83=86=E3=83=8A=E5=86=85=E3=81=A7=E3=81=AE=20nodejs=20?= =?UTF-8?q?=E3=82=92=E5=AE=9F=E8=A1=8C=E3=81=A7=E3=81=8D=E3=82=8B=E3=82=88?= =?UTF-8?q?=E3=81=86=E3=81=AB=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Dockerfile b/Dockerfile index 479dcbafb14..89e718fa24a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -35,6 +35,11 @@ RUN docker-php-ext-configure pgsql -with-pgsql=/usr/local/pgsql \ RUN pecl install apcu && echo "extension=apcu.so" > /usr/local/etc/php/conf.d/apc.ini +RUN curl -sL https://deb.nodesource.com/setup_12.x | bash - \ + && apt-get install -y nodejs \ + && apt-get clean \ + ; + RUN mkdir -p ${APACHE_DOCUMENT_ROOT} \ && sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf \ && sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf \ From 43a8d99da2eecb5ca41f2a921d6666078e5e6d1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Sun, 30 Aug 2020 11:16:39 +0900 Subject: [PATCH 051/207] =?UTF-8?q?docker-compose=20node=5Fmodules?= =?UTF-8?q?=E3=83=95=E3=82=A9=E3=83=AB=E3=83=80=E3=81=AF=E3=82=B3=E3=82=B9?= =?UTF-8?q?=E3=83=88=E3=81=8C=E9=87=8D=E3=81=84=E3=81=9F=E3=82=81=E5=90=8C?= =?UTF-8?q?=E6=9C=9F=E5=AF=BE=E8=B1=A1=E3=82=88=E3=82=8A=E9=99=A4=E5=A4=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docker-compose.yml b/docker-compose.yml index 4d93df5a415..c53a14a1ca5 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -17,6 +17,8 @@ volumes: driver: local vendor: driver: local + node_modules: + driver: local services: ### ECCube4 ################################## @@ -35,6 +37,7 @@ services: ### 同期対象からコストの重いフォルダを除外 ##################### - "var:/var/www/html/var" - "vendor:/var/www/html/vendor" + - "node_modules:/var/www/html/node_modules" networks: - backend From 689f13fc39f9d97f892f27609342c99459d3b428 Mon Sep 17 00:00:00 2001 From: DESKTOP-96ssbike Date: Mon, 31 Aug 2020 03:06:55 +0900 Subject: [PATCH 052/207] =?UTF-8?q?=E6=B3=A8=E6=96=87=E7=A2=BA=E8=AA=8D?= =?UTF-8?q?=E3=83=A1=E3=83=BC=E3=83=AB=EF=BC=88HTML=EF=BC=89=E3=81=AE?= =?UTF-8?q?=E8=A6=8B=E5=87=BA=E3=81=97=E3=81=8C=E6=9C=AC=E6=96=87=E3=81=A8?= =?UTF-8?q?=E5=90=8C=E3=81=98=E3=83=95=E3=82=A9=E3=83=B3=E3=83=88=E3=82=B5?= =?UTF-8?q?=E3=82=A4=E3=82=BA=E3=81=AB=E3=81=AA=E3=81=A3=E3=81=A6=E3=81=84?= =?UTF-8?q?=E3=81=9F=E3=81=AE=E3=82=92=E4=BF=AE=E6=AD=A3=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/template/default/Mail/order.html.twig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Resource/template/default/Mail/order.html.twig b/src/Eccube/Resource/template/default/Mail/order.html.twig index dc959ef81cf..0733579fea0 100644 --- a/src/Eccube/Resource/template/default/Mail/order.html.twig +++ b/src/Eccube/Resource/template/default/Mail/order.html.twig @@ -25,7 +25,7 @@ file that was distributed with this source code.
-
この度はご注文いただき誠にありがとうございます。
+
この度はご注文いただき誠にありがとうございます。

{{ Order.name01 }} {{ Order.name02 }} 様
From acbb8286f818aee955ad42720c02b0e084a9a2db Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Mon, 31 Aug 2020 13:24:41 +0900 Subject: [PATCH 053/207] =?UTF-8?q?=E3=83=91=E3=83=83=E3=82=B1=E3=83=BC?= =?UTF-8?q?=E3=82=B8=E3=81=AE=E3=83=87=E3=82=A3=E3=83=AC=E3=82=AF=E3=83=88?= =?UTF-8?q?=E3=83=AA=E5=90=8D=E3=81=AB=E3=82=BF=E3=82=B0=E3=82=92=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/action.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml index c6eeeee6a93..e5bbf643448 100644 --- a/.github/workflows/action.yml +++ b/.github/workflows/action.yml @@ -858,6 +858,7 @@ jobs: env: TAG_NAME: ${{ github.event.release.tag_name }} REPOSITORY_NAME: ${{ github.event.repository.name }} + PATH_NAME: eccube-${{ github.event.release.tag_name }} run: | rm -rf $GITHUB_WORKSPACE/.editorconfig rm -rf $GITHUB_WORKSPACE/.gitignore @@ -887,14 +888,16 @@ jobs: chmod -R o+w $GITHUB_WORKSPACE echo "complession files..." - tar czfp eccube-$TAG_NAME.tar.gz $REPOSITORY_NAME - zip -ry eccube-$TAG_NAME.zip $REPOSITORY_NAME 1> /dev/null + mv $REPOSITORY_NAME $PATH_NAME + tar czfp eccube-$TAG_NAME.tar.gz $PATH_NAME + zip -ry eccube-$TAG_NAME.zip $PATH_NAME 1> /dev/null md5sum eccube-$TAG_NAME.tar.gz | awk '{ print $1 }' > eccube-$TAG_NAME.tar.gz.checksum.md5 md5sum eccube-$TAG_NAME.zip | awk '{ print $1 }' > eccube-$TAG_NAME.zip.checksum.md5 sha1sum eccube-$TAG_NAME.tar.gz | awk '{ print $1 }' > eccube-$TAG_NAME.tar.gz.checksum.sha1 sha1sum eccube-$TAG_NAME.zip | awk '{ print $1 }' > eccube-$TAG_NAME.zip.checksum.sha1 sha256sum eccube-$TAG_NAME.tar.gz | awk '{ print $1 }' > eccube-$TAG_NAME.tar.gz.checksum.sha256 sha256sum eccube-$TAG_NAME.zip | awk '{ print $1 }' > eccube-$TAG_NAME.zip.checksum.sha256 + mv $PATH_NAME $REPOSITORY_NAME ls -al - name: Upload binaries to release of TGZ From ec1743a877eb5adfc79d6d79f49f37852115a035 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Tue, 1 Sep 2020 16:28:57 +0900 Subject: [PATCH 054/207] =?UTF-8?q?=E6=AF=8E=E6=9C=881=E6=97=A5=E3=81=ABUn?= =?UTF-8?q?itTest=E3=81=8C=E8=90=BD=E3=81=A1=E3=82=8B=E5=95=8F=E9=A1=8C?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/Eccube/Tests/Web/Admin/IndexControllerTest.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/tests/Eccube/Tests/Web/Admin/IndexControllerTest.php b/tests/Eccube/Tests/Web/Admin/IndexControllerTest.php index 9ed70e22f3d..e199496275f 100644 --- a/tests/Eccube/Tests/Web/Admin/IndexControllerTest.php +++ b/tests/Eccube/Tests/Web/Admin/IndexControllerTest.php @@ -13,6 +13,7 @@ namespace Eccube\Tests\Web\Admin; +use DateTime; use Eccube\Entity\Master\OrderStatus; use Eccube\Entity\Member; use Eccube\Repository\Master\OrderStatusRepository; @@ -59,9 +60,9 @@ public function testRoutingAdminChangePassword() public function testIndexWithSales($hour) { $Customer = $this->createCustomer(); - $Today = new \DateTime(); + $Today = new DateTime(); $Today->setTime($hour, 0); - $Yesterday = new \DateTime('-1 days'); + $Yesterday = new DateTime('-1 days'); $OrderNew = $this->orderStatusRepository->find(OrderStatus::NEW); $OrderPending = $this->orderStatusRepository->find(OrderStatus::PENDING); @@ -121,11 +122,11 @@ public function testIndexWithSales($hour) $this->verify('昨日の売上件数'); preg_match('/^¥([0-9,]+) \/ ([0-9]+)/u', trim($crawler->filter('#chart-statistics > div.card-body > div.row:nth-child(1) > div:nth-child(1) > div')->text()), $match); - $this->expected = $todaysSales + $yesterdaysSales; + $this->expected = (new DateTime('today'))->format('m') === (new DateTime('yesterday'))->format('m') ? $todaysSales + $yesterdaysSales : $todaysSales; $this->actual = str_replace(',', '', $match[1]); $this->verify('今月の売上'); - $this->expected = 6; + $this->expected = (new DateTime('today'))->format('m') === (new DateTime('yesterday'))->format('m') ? 6 : 3; $this->actual = str_replace(',', '', $match[2]); $this->verify('今月の売上件数'); } From 114fa4d807b73306009aba709e545713a5cd310d Mon Sep 17 00:00:00 2001 From: hama Date: Mon, 7 Sep 2020 14:10:21 +0900 Subject: [PATCH 055/207] =?UTF-8?q?=E5=95=86=E5=93=81=E3=81=AEmin|max?= =?UTF-8?q?=E9=9B=86=E8=A8=88=E3=81=A7=E3=82=A8=E3=83=A9=E3=83=BC=E3=81=8C?= =?UTF-8?q?=E7=99=BA=E7=94=9F=E3=81=99=E3=82=8B=E3=81=AE=E3=82=92=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Entity/Product.php | 44 +++++++++++++++++------ tests/Eccube/Tests/Entity/ProductTest.php | 38 ++++++++++++++++++++ 2 files changed, 71 insertions(+), 11 deletions(-) create mode 100644 tests/Eccube/Tests/Entity/ProductTest.php diff --git a/src/Eccube/Entity/Product.php b/src/Eccube/Entity/Product.php index 75c38a680d1..c39e0e0095b 100644 --- a/src/Eccube/Entity/Product.php +++ b/src/Eccube/Entity/Product.php @@ -198,7 +198,9 @@ public function getStockFind() { $this->_calc(); - return max($this->stockFinds); + return count($this->stockFinds) + ? max($this->stockFinds) + : null; } /** @@ -210,7 +212,9 @@ public function getStockMin() { $this->_calc(); - return min($this->stocks); + return count($this->stocks) + ? min($this->stocks) + : null; } /** @@ -222,7 +226,9 @@ public function getStockMax() { $this->_calc(); - return max($this->stocks); + return count($this->stocks) + ? max($this->stocks) + : null; } /** @@ -234,7 +240,9 @@ public function getStockUnlimitedMin() { $this->_calc(); - return min($this->stockUnlimiteds); + return count($this->stockUnlimiteds) + ? min($this->stockUnlimiteds) + : null; } /** @@ -246,7 +254,9 @@ public function getStockUnlimitedMax() { $this->_calc(); - return max($this->stockUnlimiteds); + return count($this->stockUnlimiteds) + ? max($this->stockUnlimiteds) + : null; } /** @@ -290,7 +300,9 @@ public function getPrice02Min() { $this->_calc(); - return min($this->price02); + return count($this->price02) + ? min($this->price02) + : null; } /** @@ -302,7 +314,9 @@ public function getPrice02Max() { $this->_calc(); - return max($this->price02); + return count($this->price02) + ? max($this->price02) + : null; } /** @@ -314,7 +328,9 @@ public function getPrice01IncTaxMin() { $this->_calc(); - return min($this->price01IncTaxs); + return count($this->price01IncTaxs) + ? min($this->price01IncTaxs) + : null; } /** @@ -326,7 +342,9 @@ public function getPrice01IncTaxMax() { $this->_calc(); - return max($this->price01IncTaxs); + return count($this->price01IncTaxs) + ? max($this->price01IncTaxs) + : null; } /** @@ -338,7 +356,9 @@ public function getPrice02IncTaxMin() { $this->_calc(); - return min($this->price02IncTaxs); + return count($this->price02IncTaxs) + ? min($this->price02IncTaxs) + : null; } /** @@ -350,7 +370,9 @@ public function getPrice02IncTaxMax() { $this->_calc(); - return max($this->price02IncTaxs); + return count($this->price02IncTaxs) + ? max($this->price02IncTaxs) + : null; } /** diff --git a/tests/Eccube/Tests/Entity/ProductTest.php b/tests/Eccube/Tests/Entity/ProductTest.php new file mode 100644 index 00000000000..dfad3a67731 --- /dev/null +++ b/tests/Eccube/Tests/Entity/ProductTest.php @@ -0,0 +1,38 @@ +createProduct(null, 0); + $Product->getProductClasses()->clear(); + $this->assertNull($Product->getStockFind()); + $this->assertNull($Product->getStockMin()); + $this->assertNull($Product->getStockMax()); + $this->assertNull($Product->getStockUnlimitedMin()); + $this->assertNull($Product->getStockUnlimitedMax()); + $this->assertNull($Product->getPrice01Min()); + $this->assertNull($Product->getPrice01Max()); + $this->assertNull($Product->getPrice02Min()); + $this->assertNull($Product->getPrice02Max()); + $this->assertNull($Product->getPrice01IncTaxMin()); + $this->assertNull($Product->getPrice01IncTaxMax()); + $this->assertNull($Product->getPrice02IncTaxMin()); + $this->assertNull($Product->getPrice02IncTaxMax()); + } +} From 76d5d15fb65eb0056d24371c87949bb5a67a3a69 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Tue, 8 Sep 2020 12:37:44 +0900 Subject: [PATCH 056/207] =?UTF-8?q?=E3=83=86=E3=82=B9=E3=83=88=E3=81=AE?= =?UTF-8?q?=E5=AF=BE=E8=B1=A1=E3=82=92=E3=81=99=E3=81=B9=E3=81=A6=E3=81=AE?= =?UTF-8?q?=E3=83=96=E3=83=A9=E3=83=B3=E3=83=81=E3=81=AB=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/e2e-test.yml | 2 +- .github/workflows/plugin-test.yml | 2 +- .github/workflows/unit-test.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 3be94a4eb42..696272c667b 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -2,7 +2,7 @@ name: E2E test for EC-CUBE on: push: branches: - - 4.0 + - '*' tags: - '*' paths: diff --git a/.github/workflows/plugin-test.yml b/.github/workflows/plugin-test.yml index c6261a442df..9777dcf5c00 100644 --- a/.github/workflows/plugin-test.yml +++ b/.github/workflows/plugin-test.yml @@ -2,7 +2,7 @@ name: Plugin test for EC-CUBE on: push: branches: - - 4.0 + - '*' tags: - '*' paths: diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 9bb48e7cbbe..a95f4fc2e40 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -2,7 +2,7 @@ name: Unit test for EC-CUBE on: push: branches: - - 4.0 + - '*' tags: - '*' paths: From c1dbe4267e1a3f353522835a22793aa278f42ef3 Mon Sep 17 00:00:00 2001 From: hama Date: Tue, 8 Sep 2020 14:35:03 +0900 Subject: [PATCH 057/207] =?UTF-8?q?WhereClause=E3=81=A7false=E3=81=A8?= =?UTF-8?q?=E3=81=97=E3=81=A6=E8=A9=95=E4=BE=A1=E3=81=95=E3=82=8C=E3=82=8B?= =?UTF-8?q?=E3=83=91=E3=83=A9=E3=83=A1=E3=83=BC=E3=82=BF=E3=82=92=E5=8F=97?= =?UTF-8?q?=E3=81=91=E5=8F=96=E3=82=8C=E3=82=8B=E3=82=88=E3=81=86=E5=A4=89?= =?UTF-8?q?=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Doctrine/Query/WhereClause.php | 12 ++++-------- .../Tests/Doctrine/Query/WhereClauseTest.php | 14 ++++++++++++++ 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/src/Eccube/Doctrine/Query/WhereClause.php b/src/Eccube/Doctrine/Query/WhereClause.php index 8d9aa9df996..af0e39cfffb 100644 --- a/src/Eccube/Doctrine/Query/WhereClause.php +++ b/src/Eccube/Doctrine/Query/WhereClause.php @@ -45,15 +45,11 @@ private function __construct($expr, $params = null) */ private static function newWhereClause($expr, $x, $y) { - if ($y) { - if (is_array($y)) { - return new WhereClause($expr, $y); - } else { - return new WhereClause($expr, [$x => $y]); - } + if (is_array($y)) { + return new WhereClause($expr, $y); + } else { + return new WhereClause($expr, [$x => $y]); } - - return new WhereClause($expr); } /** diff --git a/tests/Eccube/Tests/Doctrine/Query/WhereClauseTest.php b/tests/Eccube/Tests/Doctrine/Query/WhereClauseTest.php index 2dcc26fd539..eec61e0c956 100644 --- a/tests/Eccube/Tests/Doctrine/Query/WhereClauseTest.php +++ b/tests/Eccube/Tests/Doctrine/Query/WhereClauseTest.php @@ -167,6 +167,20 @@ public function testLteWithMap() self::assertEquals([new Parameter('Price', 1000)], $this->getParams($actual)); } + public function testParameterNull() + { + $actual = WhereClause::eq('name', ':Name', null); + self::assertEquals('name = :Name', $this->asString($actual)); + self::assertEquals([new Parameter('Name', null)], $this->getParams($actual)); + } + + public function testParameterFalseEquivalent() + { + $actual = WhereClause::eq('name', ':Name', '0'); + self::assertEquals('name = :Name', $this->asString($actual)); + self::assertEquals([new Parameter('Name', '0')], $this->getParams($actual)); + } + /* * Helper methods. */ From b4d51da742a1361f6f6c4bab388674abd940152c Mon Sep 17 00:00:00 2001 From: dakeyama Date: Sat, 12 Sep 2020 21:41:59 +0900 Subject: [PATCH 058/207] =?UTF-8?q?=E3=82=BF=E3=82=B0=E5=89=8A=E9=99=A4?= =?UTF-8?q?=E3=82=A8=E3=83=A9=E3=83=BC=E6=99=82=E3=81=AE=E3=83=A1=E3=83=83?= =?UTF-8?q?=E3=82=BB=E3=83=BC=E3=82=B8id=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Controller/Admin/Product/TagController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Controller/Admin/Product/TagController.php b/src/Eccube/Controller/Admin/Product/TagController.php index 681681c45e2..b3e10d2ce26 100644 --- a/src/Eccube/Controller/Admin/Product/TagController.php +++ b/src/Eccube/Controller/Admin/Product/TagController.php @@ -148,7 +148,7 @@ public function delete(Request $request, Tag $Tag) } catch (\Exception $e) { log_info('タグ削除エラー', [$Tag->getId(), $e]); - $message = trans('admin.common.delete_error.foreign_key', ['%name%' => $Tag->getName()]); + $message = trans('admin.common.delete_error_foreign_key', ['%name%' => $Tag->getName()]); $this->addError($message, 'admin'); } From b4c7a713734d2fc584dc58633c610bd16ac1f009 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Mon, 14 Sep 2020 16:30:55 +0900 Subject: [PATCH 059/207] =?UTF-8?q?fix=20refs=20#4686=20"element=20is=20no?= =?UTF-8?q?t=20attached=20to=20the=20page=20document"=20=E3=81=AE=E3=82=A8?= =?UTF-8?q?=E3=83=A9=E3=83=BC=E3=81=A7E2E=E3=83=86=E3=82=B9=E3=83=88?= =?UTF-8?q?=E3=81=8C=E8=90=BD=E3=81=A1=E3=82=8B=E3=81=AE=E3=81=A7=20wait?= =?UTF-8?q?=20=E3=82=92=E5=85=A5=E3=82=8C=E3=81=A6=E3=81=BF=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codeception/acceptance/EF05MypageCest.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codeception/acceptance/EF05MypageCest.php b/codeception/acceptance/EF05MypageCest.php index 6b464eabbff..988630c0032 100644 --- a/codeception/acceptance/EF05MypageCest.php +++ b/codeception/acceptance/EF05MypageCest.php @@ -263,6 +263,8 @@ public function mypage_お届け先編集削除(\AcceptanceTester $I) CustomerAddressListPage::at($I) ->削除(1); + $I->wait(1); + // 確認 $I->see('お届け先は登録されていません。', '#page_mypage_delivery > div.ec-layoutRole > div.ec-layoutRole__contents > div > div > div:nth-child(2) > p'); } From 8090285782ea3bc6caf31ee18441d19cbb0d1572 Mon Sep 17 00:00:00 2001 From: bravemaster619 <50212003+bravemaster619@users.noreply.github.com> Date: Tue, 15 Sep 2020 21:15:31 +0800 Subject: [PATCH 060/207] Change mailHistoryRepository access to protected Issue #4692 --- src/Eccube/Service/MailService.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Service/MailService.php b/src/Eccube/Service/MailService.php index 705f61f5fc2..fe5aa852b18 100644 --- a/src/Eccube/Service/MailService.php +++ b/src/Eccube/Service/MailService.php @@ -44,7 +44,7 @@ class MailService /** * @var MailHistoryRepository */ - private $mailHistoryRepository; + protected $mailHistoryRepository; /** * @var EventDispatcher From 81ad221f851e962f83de9abddc949b3b00c19872 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Wed, 16 Sep 2020 16:18:25 +0900 Subject: [PATCH 061/207] =?UTF-8?q?OWASP=20ZAP=20=E9=80=A3=E6=90=BA?= =?UTF-8?q?=E7=94=A8=E3=81=AE=20docker-compose=20=E3=82=92=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose-owaspzap.yml | 19 + zap/.gitignore | 2 + zap/.htaccess | 2 + zap/Dockerfile | 8 + zap/README.md | 51 + zap/admin.context | 82 + zap/containing_urls.txt | 298 ++ zap/front_guest.context | 74 + zap/front_login.context | 83 + zap/options.properties | 45 + zap/selenium/ide/Manual_Inspection.side | 4668 +++++++++++++++++ zap/selenium/ide/Manual_Inspection_Admin.side | 4655 ++++++++++++++++ 12 files changed, 9987 insertions(+) create mode 100644 docker-compose-owaspzap.yml create mode 100644 zap/.gitignore create mode 100644 zap/.htaccess create mode 100644 zap/Dockerfile create mode 100644 zap/README.md create mode 100644 zap/admin.context create mode 100644 zap/containing_urls.txt create mode 100644 zap/front_guest.context create mode 100644 zap/front_login.context create mode 100644 zap/options.properties create mode 100644 zap/selenium/ide/Manual_Inspection.side create mode 100644 zap/selenium/ide/Manual_Inspection_Admin.side diff --git a/docker-compose-owaspzap.yml b/docker-compose-owaspzap.yml new file mode 100644 index 00000000000..220d7802c6b --- /dev/null +++ b/docker-compose-owaspzap.yml @@ -0,0 +1,19 @@ +version: "3" + +services: + zap: + build: + context: ./zap + command: bash -c "zap.sh -cmd -addonupdate -addoninstall help_ja_JP -addoninstall wappalyzer -addoninstall sequence -addonuninstall hud -configfile /zap/wrk/options.properties -certpubdump /zap/wrk/owasp_zap_root_ca.cer && zap-webswing.sh" + # 詳細スキャンしたい場合はこちらを使用する command: bash -c "zap.sh -cmd -addonupdate -addoninstall help_ja_JP -addoninstall wappalyzer -addoninstall ascanrulesAlpha -addoninstall ascanrulesBeta -addoninstall sqliplugin -addoninstall sequence -addonuninstall hud -configfile /zap/wrk/options.properties -certpubdump /zap/wrk/owasp_zap_root_ca.cer && zap-webswing.sh" + volumes: + - ./zap:/zap/wrk/ + ports: + - "8081:8080" + - "8090:8090" + depends_on: + - ec-cube + networks: + - backend + - default + tty: true diff --git a/zap/.gitignore b/zap/.gitignore new file mode 100644 index 00000000000..30430fa4e05 --- /dev/null +++ b/zap/.gitignore @@ -0,0 +1,2 @@ +/owasp_zap_root_ca.cer +/sessions diff --git a/zap/.htaccess b/zap/.htaccess new file mode 100644 index 00000000000..281d5c33db3 --- /dev/null +++ b/zap/.htaccess @@ -0,0 +1,2 @@ +order allow,deny +deny from all diff --git a/zap/Dockerfile b/zap/Dockerfile new file mode 100644 index 00000000000..10833bc889e --- /dev/null +++ b/zap/Dockerfile @@ -0,0 +1,8 @@ +FROM owasp/zap2docker-stable + +USER root +RUN apt-get update \ + && apt-get install --no-install-recommends -y \ + fonts-noto-cjk + +USER zap diff --git a/zap/README.md b/zap/README.md new file mode 100644 index 00000000000..c61272f8371 --- /dev/null +++ b/zap/README.md @@ -0,0 +1,51 @@ +# EC-CUBE Penetration Testing with OWASP ZAP + +## Quick Start + +- 意図しない外部サイトへの攻撃を防ぐため、 OWASP ZAP は必ず **プロテクトモード** で使用してください + +1. [docker-compose を使用して EC-CUBE をインストールします](https://doc4.ec-cube.net/quickstart_install#4docker-compose%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B) +1. テスト用のデータを生成しておきます + ```shell + ## APP_ENV=dev に設定 + sed -i.bak -e 's/APP_ENV=prod/APP_ENV=dev/g' ./.env + ## customer を1件生成 + docker-compose -f docker-compose.yml -f docker-compose-owaspzap.yml exec ec-cube bin/console eccube:fixtures:generate --products=0 --customers=1 --orders=0 + ## メールアドレスを zap_user@example.com に変更 + docker-compose -f docker-compose.yml -f docker-compose-owaspzap.yml exec ec-cube bin/console doctrine:query:sql "UPDATE dtb_customer SET email = 'zap_user@example.com' WHERE id = 1;" + ## ZAP でテストする場合は APP_ENV=prod に設定しておく + sed -i.bak -e 's/APP_ENV=dev/APP_ENV=prod/g' ./.env + ``` +1. OWASP ZAP コンテナを起動します + ```shell + docker-compose -f docker-compose.yml -f docker-compose-owaspzap.yml up -d zap + ``` + - *アドオンをアップデートするため、少し時間がかかります* + - 起動してから、 Firefox 以外のブラウザで `http://localhost:8081/zap/` へアクセスすると、OWASP ZAP の管理画面が表示されます +1. Firefox を起動し、設定→ネットワーク設定→接続設定からプロキシーの設定をします + - **手動でプロキシーを設定する** を選択 + - HTTPプロキシー: localhost, ポート: 8090 + - **このプロキシーを FTP と HTTPS でも使用する** にチェックを入れる +1. Firefox に SSL ルート CA 証明書をインポートします + - ローカルの `path/to/ec-cube/zap/owasp_zap_root_ca.cer` に証明書が生成されています + - 設定→プライバシーとセキュリティ→証明書→証明書を表示から証明書マネージャーを表示 + - 認証局証明書→読み込むをクリックし、 `path/to/ec-cube/zap/owasp_zap_root_ca.cer` を選択 + - **この認証局によるウェブサイトの識別を信頼する** にチェックを入れ、 OK をクリック、設定を閉じます +1. Firefox で `https://ec-cube/` へアクセスし、プロキシー経由で EC-CUBE にアクセスできるのを確認します。 +1. コンテキストをインポートします。 + ```shell + ## 管理画面用 + docker-compose -f docker-compose.yml -f docker-compose-owaspzap.yml exec zap zap-cli -p 8090 context import /zap/wrk/admin.context + ## フロント(ログイン用) + docker-compose -f docker-compose.yml -f docker-compose-owaspzap.yml exec zap zap-cli -p 8090 context import /zap/wrk/front_login.context + ``` + - *フロントと管理画面のコンテキストを同時にインポートすると、セッションが競合してログインできなくなる場合があるため注意* +1. OWASP ZAP のツールバーにある [Forced User Mode On/Off ボタン](https://www.zaproxy.org/docs/desktop/ui/tltoolbar/#--forced-user-mode-on--off) を ON にすると、OWASP ZAP の自動ログインが有効になり、ユーザーログイン中のテストが有効になります +1. [OWASP ZAP Getting Started](https://qiita.com/koujimatsuda11/items/3d5b7eac5f9455015ba6) を参考に、テストを実施します + + +## 参考 + +- [DockerでOWASP ZAPを使う](https://pc.atsuhiro-me.net/entry/2019/08/19/011324) +- [Docker版OWASP ZAPを動かしてみる](https://qiita.com/koujimatsuda11/items/83558cd62c20141ebdda) +- [テスティングガイド](https://owasp.org/www-pdf-archive/OTGv3Japanese.pdf) diff --git a/zap/admin.context b/zap/admin.context new file mode 100644 index 00000000000..d13e9471f0d --- /dev/null +++ b/zap/admin.context @@ -0,0 +1,82 @@ + + + + admin + + true + \Qhttps://ec-cube/admin\E.* + \Qhttps://ec-cube/_wdt\E.* + \Qhttps://ec-cube/_profile\E.* + \Qhttps://ec-cube/html\E.* + + Db.MySQL + Db.PostgreSQL + Db.SQLite + Language.JavaScript + Language.PHP + OS.Linux + OS.MacOS + SCM.Git + WS.Apache + Db + Db.CouchDB + Db.Firebird + Db.HypersonicSQL + Db.IBM DB2 + Db.Microsoft Access + Db.Microsoft SQL Server + Db.MongoDB + Db.Oracle + Db.SAP MaxDB + Db.Sybase + Language + Language.ASP + Language.C + Language.JSP/Servlet + Language.Java + Language.Python + Language.Ruby + Language.XML + OS + OS.Windows + SCM + SCM.SVN + WS + WS.IIS + WS.Tomcat + + + org.zaproxy.zap.model.StandardParameterParser + {"kvps":"&","kvs":"=","struct":[]} + + + org.zaproxy.zap.model.StandardParameterParser + {"kvps":"&","kvs":"=","struct":[]} + + + 2 + \Q<button type="submit" class="btn btn-primary btn-lg btn-block">ログイン</button>\E +
+ https://ec-cube/admin/login + _csrf_token=xxx&login_id={%username%}&password={%password%} + https://ec-cube/admin/login +
+
+ + 55;true;YWRtaW4=;2;YWRtaW4=~cGFzc3dvcmQ=~ + + 55 + + 0 + + + 0 + +
+ + AND + -1 + + + + diff --git a/zap/containing_urls.txt b/zap/containing_urls.txt new file mode 100644 index 00000000000..2b2fe4ba362 --- /dev/null +++ b/zap/containing_urls.txt @@ -0,0 +1,298 @@ +https://ec-cube/ +https://ec-cube/admin +https://ec-cube/admin/ +https://ec-cube/admin/change_password +https://ec-cube/admin/content +https://ec-cube/admin/content/block +https://ec-cube/admin/content/block/1 +https://ec-cube/admin/content/block/1/delete +https://ec-cube/admin/content/block/1/edit +https://ec-cube/admin/content/block/new +https://ec-cube/admin/content/cache +https://ec-cube/admin/content/css +https://ec-cube/admin/content/file_delete +https://ec-cube/admin/content/file_delete?select_file=/assets +https://ec-cube/admin/content/file_download +https://ec-cube/admin/content/file_download?select_file=%2Fbbb.html +https://ec-cube/admin/content/file_manager +https://ec-cube/admin/content/file_view +https://ec-cube/admin/content/file_view?file=%2Fbbb.html +https://ec-cube/admin/content/js +https://ec-cube/admin/content/layout +https://ec-cube/admin/content/layout/1 +https://ec-cube/admin/content/layout/1/delete +https://ec-cube/admin/content/layout/1/edit +https://ec-cube/admin/content/layout/1/preview +https://ec-cube/admin/content/layout/new +https://ec-cube/admin/content/layout/view_block +https://ec-cube/admin/content/maintenance +https://ec-cube/admin/content/news +https://ec-cube/admin/content/news/1 +https://ec-cube/admin/content/news/1/delete +https://ec-cube/admin/content/news/1/edit +https://ec-cube/admin/content/news/new +https://ec-cube/admin/content/news/page/1 +https://ec-cube/admin/content/page +https://ec-cube/admin/content/page/1 +https://ec-cube/admin/content/page/1/delete +https://ec-cube/admin/content/page/1/edit +https://ec-cube/admin/content/page/new +https://ec-cube/admin/customer +https://ec-cube/admin/customer/1 +https://ec-cube/admin/customer/1/delete +https://ec-cube/admin/customer/1/delivery +https://ec-cube/admin/customer/1/delivery/1/delete +https://ec-cube/admin/customer/1/delivery/1/edit +https://ec-cube/admin/customer/1/delivery/2 +https://ec-cube/admin/customer/1/delivery/2/delete +https://ec-cube/admin/customer/1/delivery/2/edit +https://ec-cube/admin/customer/1/delivery/new +https://ec-cube/admin/customer/1/edit +https://ec-cube/admin/customer/1/resend +https://ec-cube/admin/customer/export +https://ec-cube/admin/customer/new +https://ec-cube/admin/customer/page +https://ec-cube/admin/customer/page/1 +https://ec-cube/admin/customer/page/1?resume=1 +https://ec-cube/admin/login +https://ec-cube/admin/logout +https://ec-cube/admin/order +https://ec-cube/admin/order/1 +https://ec-cube/admin/order/1/edit +https://ec-cube/admin/order/1/mail +https://ec-cube/admin/order/bulk_delete +https://ec-cube/admin/order/csv_template +https://ec-cube/admin/order/export +https://ec-cube/admin/order/export/order +https://ec-cube/admin/order/export/pdf +https://ec-cube/admin/order/export/pdf/download +https://ec-cube/admin/order/export/pdf?ids%5B%5D=3 +https://ec-cube/admin/order/export/shipping +https://ec-cube/admin/order/mail/view +https://ec-cube/admin/order/new +https://ec-cube/admin/order/page/1 +https://ec-cube/admin/order/search/customer/html +https://ec-cube/admin/order/search/customer/html/page/1 +https://ec-cube/admin/order/search/customer/id +https://ec-cube/admin/order/search/order_item_type +https://ec-cube/admin/order/search/product +https://ec-cube/admin/order/search/product/page/1 +https://ec-cube/admin/order/shipping_csv_upload +https://ec-cube/admin/order?order_status_id=1 +https://ec-cube/admin/order?order_status_id=4 +https://ec-cube/admin/order?resume=1 +https://ec-cube/admin/product +https://ec-cube/admin/product/bulk/product-status/1 +https://ec-cube/admin/product/category +https://ec-cube/admin/product/category/1 +https://ec-cube/admin/product/category/1/delete +https://ec-cube/admin/product/category/1/edit +https://ec-cube/admin/product/category/export +https://ec-cube/admin/product/category/sort_no/move +https://ec-cube/admin/product/category_csv_upload +https://ec-cube/admin/product/class_category +https://ec-cube/admin/product/class_category/1 +https://ec-cube/admin/product/class_category/1/1 +https://ec-cube/admin/product/class_category/1/1/delete +https://ec-cube/admin/product/class_category/1/1/edit +https://ec-cube/admin/product/class_category/1/1/visibility +https://ec-cube/admin/product/class_category/1/2 +https://ec-cube/admin/product/class_category/1/2/edit +https://ec-cube/admin/product/class_category/1/2/visibility +https://ec-cube/admin/product/class_category/1/3 +https://ec-cube/admin/product/class_category/1/3/edit +https://ec-cube/admin/product/class_category/1/3/visibility +https://ec-cube/admin/product/class_category/sort_no/move +https://ec-cube/admin/product/class_name +https://ec-cube/admin/product/class_name/1/delete +https://ec-cube/admin/product/class_name/1/edit +https://ec-cube/admin/product/class_name/sort_no/move +https://ec-cube/admin/product/classes/1/load +https://ec-cube/admin/product/csv_template +https://ec-cube/admin/product/csv_template/1 +https://ec-cube/admin/product/csv_template/category +https://ec-cube/admin/product/csv_template/product +https://ec-cube/admin/product/export +https://ec-cube/admin/product/page +https://ec-cube/admin/product/page/1 +https://ec-cube/admin/product/product +https://ec-cube/admin/product/product/1 +https://ec-cube/admin/product/product/1/copy +https://ec-cube/admin/product/product/1/delete +https://ec-cube/admin/product/product/1/display +https://ec-cube/admin/product/product/1/edit +https://ec-cube/admin/product/product/class +https://ec-cube/admin/product/product/class/1 +https://ec-cube/admin/product/product/class/1/clear +https://ec-cube/admin/product/product/class/1/clear?return_product_list=0 +https://ec-cube/admin/product/product/class/1?return_product_list=0 +https://ec-cube/admin/product/product/class/2 +https://ec-cube/admin/product/product/class/2?return_product_list=0 +https://ec-cube/admin/product/product/image/add +https://ec-cube/admin/product/product/new +https://ec-cube/admin/product/product_csv_upload +https://ec-cube/admin/product/tag +https://ec-cube/admin/product/tag/1/delete +https://ec-cube/admin/product/tag/sort_no/move +https://ec-cube/admin/sale_chart +https://ec-cube/admin/search_customer +https://ec-cube/admin/search_nonstock +https://ec-cube/admin/setting +https://ec-cube/admin/setting/shop +https://ec-cube/admin/setting/shop/csv +https://ec-cube/admin/setting/shop/csv/1 +https://ec-cube/admin/setting/shop/csv/2 +https://ec-cube/admin/setting/shop/csv/4 +https://ec-cube/admin/setting/shop/csv/5 +https://ec-cube/admin/setting/shop/delivery +https://ec-cube/admin/setting/shop/delivery/1 +https://ec-cube/admin/setting/shop/delivery/1/delete +https://ec-cube/admin/setting/shop/delivery/1/edit +https://ec-cube/admin/setting/shop/delivery/1/visibility +https://ec-cube/admin/setting/shop/delivery/2 +https://ec-cube/admin/setting/shop/delivery/new +https://ec-cube/admin/setting/shop/delivery/sort_no/move +https://ec-cube/admin/setting/shop/mail +https://ec-cube/admin/setting/shop/mail/1 +https://ec-cube/admin/setting/shop/mail/preview +https://ec-cube/admin/setting/shop/payment +https://ec-cube/admin/setting/shop/payment/1 +https://ec-cube/admin/setting/shop/payment/1/delete +https://ec-cube/admin/setting/shop/payment/1/edit +https://ec-cube/admin/setting/shop/payment/1/visible +https://ec-cube/admin/setting/shop/payment/image/add +https://ec-cube/admin/setting/shop/payment/new +https://ec-cube/admin/setting/shop/payment/sort_no/move +https://ec-cube/admin/setting/shop/tax +https://ec-cube/admin/setting/shop/tax/1/delete +https://ec-cube/admin/setting/shop/tax/new +https://ec-cube/admin/setting/system +https://ec-cube/admin/setting/system/authority +https://ec-cube/admin/setting/system/log +https://ec-cube/admin/setting/system/masterdata +https://ec-cube/admin/setting/system/masterdata/Eccube-Entity-Master-Work +https://ec-cube/admin/setting/system/masterdata/Eccube-Entity-Master-Work/edit +https://ec-cube/admin/setting/system/member +https://ec-cube/admin/setting/system/member/1 +https://ec-cube/admin/setting/system/member/1/delete +https://ec-cube/admin/setting/system/member/1/down +https://ec-cube/admin/setting/system/member/1/edit +https://ec-cube/admin/setting/system/member/1/up +https://ec-cube/admin/setting/system/member/new +https://ec-cube/admin/setting/system/security +https://ec-cube/admin/setting/system/system +https://ec-cube/admin/setting/system/system/phpinfo +https://ec-cube/admin/shipping +https://ec-cube/admin/shipping/1 +https://ec-cube/admin/shipping/1/edit +https://ec-cube/admin/shipping/1/order_status +https://ec-cube/admin/shipping/1/tracking_number +https://ec-cube/admin/shipping/2 +https://ec-cube/admin/shipping/2/edit +https://ec-cube/admin/shipping/notify_mail/1 +https://ec-cube/admin/shipping/preview_notify_mail/1 +https://ec-cube/admin/store +https://ec-cube/admin/store/plugin +https://ec-cube/admin/store/plugin/1/disable +https://ec-cube/admin/store/plugin/1/enable +https://ec-cube/admin/store/plugin/1/uninstall +https://ec-cube/admin/store/plugin/1/update +https://ec-cube/admin/store/plugin/api +https://ec-cube/admin/store/plugin/api/delete/1/uninstall +https://ec-cube/admin/store/plugin/api/install +https://ec-cube/admin/store/plugin/api/install/1/confirm +https://ec-cube/admin/store/plugin/api/schema_update +https://ec-cube/admin/store/plugin/api/search +https://ec-cube/admin/store/plugin/api/search/page +https://ec-cube/admin/store/plugin/api/search/page/1 +https://ec-cube/admin/store/plugin/api/update +https://ec-cube/admin/store/plugin/api/upgrade +https://ec-cube/admin/store/plugin/api/upgrade/1/confirm +https://ec-cube/admin/store/plugin/authentication_setting +https://ec-cube/admin/store/plugin/install +https://ec-cube/admin/store/template +https://ec-cube/admin/store/template/1 +https://ec-cube/admin/store/template/1/delete +https://ec-cube/admin/store/template/1/download +https://ec-cube/admin/store/template/install +https://ec-cube/block +https://ec-cube/block/cart +https://ec-cube/block/cart_sp +https://ec-cube/block/search_product +https://ec-cube/block/search_product_sp +https://ec-cube/cart +https://ec-cube/cart/buystep +https://ec-cube/cart/buystep/1_1 +https://ec-cube/cart/down +https://ec-cube/cart/down/1 +https://ec-cube/cart/down/11 +https://ec-cube/cart/remove +https://ec-cube/cart/remove/11 +https://ec-cube/cart/up +https://ec-cube/cart/up/1 +https://ec-cube/cart/up/11 +https://ec-cube/contact +https://ec-cube/contact/complete +https://ec-cube/entry +https://ec-cube/entry/activate/xxx/1 +https://ec-cube/entry/complete +https://ec-cube/forgot +https://ec-cube/forgot/complete +https://ec-cube/forgot/reset/xxx +https://ec-cube/guide +https://ec-cube/help +https://ec-cube/help/about +https://ec-cube/help/agreement +https://ec-cube/help/privacy +https://ec-cube/help/tradelaw +https://ec-cube/logout +https://ec-cube/mypage +https://ec-cube/mypage/ +https://ec-cube/mypage/change +https://ec-cube/mypage/change_complete +https://ec-cube/mypage/delivery +https://ec-cube/mypage/delivery/1 +https://ec-cube/mypage/delivery/1/delete +https://ec-cube/mypage/delivery/1/edit +https://ec-cube/mypage/delivery/new +https://ec-cube/mypage/favorite +https://ec-cube/mypage/favorite/1/delete +https://ec-cube/mypage/history +https://ec-cube/mypage/history/1 +https://ec-cube/mypage/history/2 +https://ec-cube/mypage/login +https://ec-cube/mypage/order/1 +https://ec-cube/mypage/withdraw +https://ec-cube/mypage/withdraw_complete +https://ec-cube/products +https://ec-cube/products/add_cart +https://ec-cube/products/add_cart/1 +https://ec-cube/products/add_cart/2 +https://ec-cube/products/add_favorite +https://ec-cube/products/add_favorite/1 +https://ec-cube/products/add_favorite/2 +https://ec-cube/products/detail +https://ec-cube/products/detail/1 +https://ec-cube/products/list +https://ec-cube/products/list?category_id&disp_number=0&mode&name&orderby=0&pageno +https://ec-cube/products/list?category_id=6 +https://ec-cube/products/list?category_id=6&name +https://ec-cube/robots.txt +https://ec-cube/shopping +https://ec-cube/shopping/checkout +https://ec-cube/shopping/complete +https://ec-cube/shopping/confirm +https://ec-cube/shopping/customer +https://ec-cube/shopping/error +https://ec-cube/shopping/login +https://ec-cube/shopping/nonmember +https://ec-cube/shopping/redirect_to +https://ec-cube/shopping/shipping +https://ec-cube/shopping/shipping/1 +https://ec-cube/shopping/shipping/4 +https://ec-cube/shopping/shipping_edit +https://ec-cube/shopping/shipping_edit/1 +https://ec-cube/shopping/shipping_edit/4 +https://ec-cube/shopping/shipping_multiple +https://ec-cube/shopping/shipping_multiple_edit +https://ec-cube/user_data/xxx diff --git a/zap/front_guest.context b/zap/front_guest.context new file mode 100644 index 00000000000..82b01c5fe11 --- /dev/null +++ b/zap/front_guest.context @@ -0,0 +1,74 @@ + + + + front_guest + + true + \Qhttps://ec-cube\E.* + \Qhttps://ec-cube/_wdt\E.* + \Qhttps://ec-cube/_profile\E.* + \Qhttps://ec-cube/admin\E.* + \Qhttps://ec-cube/html\E.* + + Db.MySQL + Db.PostgreSQL + Db.SQLite + Language.JavaScript + Language.PHP + OS.Linux + OS.MacOS + SCM.Git + WS.Apache + Db + Db.CouchDB + Db.Firebird + Db.HypersonicSQL + Db.IBM DB2 + Db.Microsoft Access + Db.Microsoft SQL Server + Db.MongoDB + Db.Oracle + Db.SAP MaxDB + Db.Sybase + Language + Language.ASP + Language.C + Language.JSP/Servlet + Language.Java + Language.Python + Language.Ruby + Language.XML + OS + OS.Windows + SCM + SCM.SVN + WS + WS.IIS + WS.Tomcat + + + org.zaproxy.zap.model.StandardParameterParser + {"kvps":"&","kvs":"=","struct":[]} + + + org.zaproxy.zap.model.StandardParameterParser + {"kvps":"&","kvs":"=","struct":[]} + + + 0 + + -1 + + 0 + + + 0 + +
+ + AND + -1 + + + + diff --git a/zap/front_login.context b/zap/front_login.context new file mode 100644 index 00000000000..5d9c7496bfd --- /dev/null +++ b/zap/front_login.context @@ -0,0 +1,83 @@ + + + + front_login + + true + \Qhttps://ec-cube\E.* + \Qhttps://ec-cube/_wdt\E.* + \Qhttps://ec-cube/_profile\E.* + \Qhttps://ec-cube/admin\E.* + \Qhttps://ec-cube/html\E.* + + Db.MySQL + Db.PostgreSQL + Db.SQLite + Language.JavaScript + Language.PHP + OS.Linux + OS.MacOS + SCM.Git + WS.Apache + Db + Db.CouchDB + Db.Firebird + Db.HypersonicSQL + Db.IBM DB2 + Db.Microsoft Access + Db.Microsoft SQL Server + Db.MongoDB + Db.Oracle + Db.SAP MaxDB + Db.Sybase + Language + Language.ASP + Language.C + Language.JSP/Servlet + Language.Java + Language.Python + Language.Ruby + Language.XML + OS + OS.Windows + SCM + SCM.SVN + WS + WS.IIS + WS.Tomcat + + + org.zaproxy.zap.model.StandardParameterParser + {"kvps":"&","kvs":"=","struct":[]} + + + org.zaproxy.zap.model.StandardParameterParser + {"kvps":"&","kvs":"=","struct":[]} + + + 2 + \Q<span class="ec-headerNav__itemLink">ログイン</span>\E +
+ https://ec-cube/mypage/login + login_email={%username%}&login_pass={%password%}&_csrf_token=xxx + https://ec-cube/mypage/login +
+
+ + 110;true;emFwX3VzZXI=;2;emFwX3VzZXJAZXhhbXBsZS5jb20=~cGFzc3dvcmQ=~ + + 110 + + 0 + + + 0 + +
+ + AND + -1 + + + + diff --git a/zap/options.properties b/zap/options.properties new file mode 100644 index 00000000000..fa8445ac469 --- /dev/null +++ b/zap/options.properties @@ -0,0 +1,45 @@ +view.locale=ja_JP +api.disablekey=true +fuzz.defaultCategoryName=dirbuster +anticsrf.tokens.token\(0\).name=_csrf_token +anticsrf.tokens.token\(0\).enabled=true +anticsrf.tokens.token\(1\).name=_csrf +anticsrf.tokens.token\(1\).enabled=true +anticsrf.tokens.token\(2\).name=_token +anticsrf.tokens.token\(2\).enabled=true +anticsrf.tokens.token\(3\).name=_shopping_order[_token] +anticsrf.tokens.token\(3\).enabled=true +anticsrf.tokens.token\(4\).name=form[_token] +anticsrf.tokens.token\(4\).enabled=true +anticsrf.tokens.token\(5\).name=shopping_shipping[_token] +anticsrf.tokens.token\(5\).enabled=true +httpsessions.tokens.token\(0\).name=eccube +httpsessions.tokens.token\(0\).enabled=true +httpsessions.tokens.token\(1\).name=ecsessid +httpsessions.tokens.token\(1\).enabled=true +httpsessions.tokens.token\(2\).name=phpsessid +httpsessions.tokens.token\(2\).enabled=true +## Filtering out false positives in PATH Traversal +globalalertfilter.filters.filter\(0\).ruleid=6 +globalalertfilter.filters.filter\(0\).newrisk=-1 +globalalertfilter.filters.filter\(0\).url=https://ec-cube/products/add_cart/[0-9]+ +globalalertfilter.filters.filter\(0\).urlregex=true +globalalertfilter.filters.filter\(0\).param= +globalalertfilter.filters.filter\(0\).paramregex=false +globalalertfilter.filters.filter\(0\).attack= +globalalertfilter.filters.filter\(0\).attackregex=false +globalalertfilter.filters.filter\(0\).evidence= +globalalertfilter.filters.filter\(0\).evidenceregex=false +globalalertfilter.filters.filter\(0\).enabled=true +## Filtering out false positives in SQL Injection +globalalertfilter.filters.filter\(1\).ruleid=40018 +globalalertfilter.filters.filter\(1\).newrisk=-1 +globalalertfilter.filters.filter\(1\).url=https://ec-cube/entry +globalalertfilter.filters.filter\(1\).urlregex=false +globalalertfilter.filters.filter\(1\).param=mode +globalalertfilter.filters.filter\(1\).paramregex=false +globalalertfilter.filters.filter\(1\).attack=confirm OR 1=1 -- +globalalertfilter.filters.filter\(1\).attackregex=false +globalalertfilter.filters.filter\(1\).evidence= +globalalertfilter.filters.filter\(1\).evidenceregex=false +globalalertfilter.filters.filter\(1\).enabled=true diff --git a/zap/selenium/ide/Manual_Inspection.side b/zap/selenium/ide/Manual_Inspection.side new file mode 100644 index 00000000000..785e4984435 --- /dev/null +++ b/zap/selenium/ide/Manual_Inspection.side @@ -0,0 +1,4668 @@ +{ + "id": "b61df7db-8ea0-4d70-84f9-0ba1ae62176c", + "version": "2.0", + "name": "[WIP]Manual_Inspection", + "url": "https://ec-cube", + "tests": [{ + "id": "6f6ae007-51ec-4832-98cd-d625753b58c8", + "name": "お問い合わせ(ゲスト)", + "commands": [{ + "id": "86629d3f-566b-4d16-a518-fa92cc8914aa", + "comment": "", + "command": "open", + "target": "/", + "targets": [], + "value": "" + }, { + "id": "799abeb3-d165-4f45-a7b3-56945a634702", + "comment": "", + "command": "setWindowSize", + "target": "550x691", + "targets": [], + "value": "" + }, { + "id": "3609f12a-99fa-4cbe-8e03-584800f723b7", + "comment": "", + "command": "click", + "target": "linkText=お問い合わせ", + "targets": [ + ["linkText=お問い合わせ", "linkText"], + ["css=.ec-footerNavi__link:nth-child(4) > a", "css:finder"], + ["xpath=//a[contains(text(),'お問い合わせ')]", "xpath:link"], + ["xpath=//body[@id='page_homepage']/div/div[3]/div/div/ul/li[4]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/contact')]", "xpath:href"], + ["xpath=//li[4]/a", "xpath:position"], + ["xpath=//a[contains(.,'お問い合わせ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "b8bf8918-df16-4274-911e-e565a9a4d7ae", + "comment": "", + "command": "click", + "target": "id=contact_name_name01", + "targets": [ + ["id=contact_name_name01", "id"], + ["name=contact[name][name01]", "name"], + ["css=#contact_name_name01", "css:finder"], + ["xpath=//input[@id='contact_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "3e668f89-5fe7-4312-a73d-184e835a048a", + "comment": "", + "command": "type", + "target": "id=contact_name_name01", + "targets": [ + ["id=contact_name_name01", "id"], + ["name=contact[name][name01]", "name"], + ["css=#contact_name_name01", "css:finder"], + ["xpath=//input[@id='contact_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "石" + }, { + "id": "32f32ca8-e327-4520-91f9-e1b1ea7c59d1", + "comment": "", + "command": "type", + "target": "id=contact_name_name02", + "targets": [ + ["id=contact_name_name02", "id"], + ["name=contact[name][name02]", "name"], + ["css=#contact_name_name02", "css:finder"], + ["xpath=//input[@id='contact_name_name02']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//input[2]", "xpath:position"] + ], + "value": "九部" + }, { + "id": "1198c988-8f33-413e-a9c3-dedef0ef5ce6", + "comment": "", + "command": "type", + "target": "id=contact_kana_kana01", + "targets": [ + ["id=contact_kana_kana01", "id"], + ["name=contact[kana][kana01]", "name"], + ["css=#contact_kana_kana01", "css:finder"], + ["xpath=//input[@id='contact_kana_kana01']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl[2]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input", "xpath:position"] + ], + "value": "イシ" + }, { + "id": "33f49c39-4740-4b76-903e-0f4854f46b9e", + "comment": "", + "command": "type", + "target": "id=contact_kana_kana02", + "targets": [ + ["id=contact_kana_kana02", "id"], + ["name=contact[kana][kana02]", "name"], + ["css=#contact_kana_kana02", "css:finder"], + ["xpath=//input[@id='contact_kana_kana02']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl[2]/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input[2]", "xpath:position"] + ], + "value": "キューブ" + }, { + "id": "11b592f1-d1e9-4dd4-8325-239d83e21ed9", + "comment": "", + "command": "type", + "target": "id=contact_postal_code", + "targets": [ + ["id=contact_postal_code", "id"], + ["name=contact[postal_code]", "name"], + ["css=#contact_postal_code", "css:finder"], + ["xpath=//input[@id='contact_postal_code']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl[3]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[3]/dd/div/input", "xpath:position"] + ], + "value": "5300001" + }, { + "id": "19125959-ef21-47de-a785-ff1279c04462", + "comment": "", + "command": "click", + "target": "id=contact_address_addr02", + "targets": [ + ["id=contact_address_addr02", "id"], + ["name=contact[address][addr02]", "name"], + ["css=#contact_address_addr02", "css:finder"], + ["xpath=//input[@id='contact_address_addr02']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl[3]/dd/div[5]/input", "xpath:idRelative"], + ["xpath=//div[5]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "d18ada44-d811-4f21-9793-64912b7e1270", + "comment": "", + "command": "type", + "target": "id=contact_address_addr02", + "targets": [ + ["id=contact_address_addr02", "id"], + ["name=contact[address][addr02]", "name"], + ["css=#contact_address_addr02", "css:finder"], + ["xpath=//input[@id='contact_address_addr02']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl[3]/dd/div[5]/input", "xpath:idRelative"], + ["xpath=//div[5]/input", "xpath:position"] + ], + "value": "2" + }, { + "id": "a82efb35-ce33-4c1f-a6cd-0cb8e2ee9295", + "comment": "", + "command": "type", + "target": "id=contact_phone_number", + "targets": [ + ["id=contact_phone_number", "id"], + ["name=contact[phone_number]", "name"], + ["css=#contact_phone_number", "css:finder"], + ["xpath=//input[@id='contact_phone_number']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl[4]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[4]/dd/div/input", "xpath:position"] + ], + "value": "999999999" + }, { + "id": "8c3f7f60-8ad2-4545-bacb-aac96db1c16b", + "comment": "", + "command": "type", + "target": "id=contact_email", + "targets": [ + ["id=contact_email", "id"], + ["name=contact[email]", "name"], + ["css=#contact_email", "css:finder"], + ["xpath=//input[@id='contact_email']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl[5]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[5]/dd/div/input", "xpath:position"] + ], + "value": "ec-cube@example.com" + }, { + "id": "025a6b1f-6045-42e8-9383-547c5687af15", + "comment": "", + "command": "type", + "target": "id=contact_contents", + "targets": [ + ["id=contact_contents", "id"], + ["name=contact[contents]", "name"], + ["css=#contact_contents", "css:finder"], + ["xpath=//textarea[@id='contact_contents']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl[6]/dd/div/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "お問い合わせのテスト" + }, { + "id": "5dd75e4b-b1fb-440a-ae66-88c38e4210f3", + "comment": "", + "command": "click", + "target": "name=mode", + "targets": [ + ["name=mode", "name"], + ["css=.ec-blockBtn--action", "css:finder"], + ["xpath=//button[@name='mode']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'確認ページへ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "9da4d740-a0ba-46fa-8e04-d9202b857a33", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,321.73333740234375)", + "targets": [], + "value": "" + }, { + "id": "400b2277-307d-49ee-b2e2-01ddf5011dbc", + "comment": "", + "command": "click", + "target": "name=mode", + "targets": [ + ["name=mode", "name"], + ["css=.ec-blockBtn--action", "css:finder"], + ["xpath=//button[@name='mode']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'送信する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "477f1fcc-32b5-4de3-9f87-1282ba6f7138", + "comment": "", + "command": "click", + "target": "linkText=トップページへ", + "targets": [ + ["linkText=トップページへ", "linkText"], + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'トップページへ')]", "xpath:link"], + ["xpath=//body[@id='page_contact_complete']/div/div[2]/div/div[2]/div/div/div[3]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/')])[11]", "xpath:href"], + ["xpath=//div[3]/div/a", "xpath:position"], + ["xpath=//a[contains(.,'トップページへ')]", "xpath:innerText"] + ], + "value": "" + }] + }, { + "id": "66cf94f2-7d92-4ff6-92dc-fb7800f0fff0", + "name": "会員登録", + "commands": [{ + "id": "23595b69-8bfa-43f1-8dd0-c6089ce1cbc0", + "comment": "", + "command": "open", + "target": "/", + "targets": [], + "value": "" + }, { + "id": "181fe481-c484-433d-8db1-40c725416e09", + "comment": "", + "command": "setWindowSize", + "target": "550x691", + "targets": [], + "value": "" + }, { + "id": "92948061-39a4-46ea-ac2b-01b85fe7b704", + "comment": "", + "command": "click", + "target": "css=a > .fa-user", + "targets": [ + ["css=a > .fa-user", "css:finder"], + ["xpath=//body[@id='page_homepage']/div/div/div/div[2]/div/div/div/a/i", "xpath:idRelative"], + ["xpath=//a/i", "xpath:position"] + ], + "value": "" + }, { + "id": "4831eaaf-551f-4b03-a501-9947044b191a", + "comment": "", + "command": "click", + "target": "id=entry_name_name01", + "targets": [ + ["id=entry_name_name01", "id"], + ["name=entry[name][name01]", "name"], + ["css=#entry_name_name01", "css:finder"], + ["xpath=//input[@id='entry_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "318739af-014c-492a-9b3f-ccab5f05a5ca", + "comment": "", + "command": "type", + "target": "id=entry_name_name01", + "targets": [ + ["id=entry_name_name01", "id"], + ["name=entry[name][name01]", "name"], + ["css=#entry_name_name01", "css:finder"], + ["xpath=//input[@id='entry_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "石" + }, { + "id": "8ee4754e-a218-46bf-90c3-4e1c866dab76", + "comment": "", + "command": "type", + "target": "id=entry_name_name02", + "targets": [ + ["id=entry_name_name02", "id"], + ["name=entry[name][name02]", "name"], + ["css=#entry_name_name02", "css:finder"], + ["xpath=//input[@id='entry_name_name02']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//input[2]", "xpath:position"] + ], + "value": "九部" + }, { + "id": "07a2537b-9fa8-4adc-bcd3-7bc59c36ff62", + "comment": "", + "command": "type", + "target": "id=entry_kana_kana01", + "targets": [ + ["id=entry_kana_kana01", "id"], + ["name=entry[kana][kana01]", "name"], + ["css=#entry_kana_kana01", "css:finder"], + ["xpath=//input[@id='entry_kana_kana01']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[2]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input", "xpath:position"] + ], + "value": "イーシー" + }, { + "id": "f0e21e5a-ffa1-4dba-8f9a-7695d0ac355b", + "comment": "", + "command": "type", + "target": "id=entry_kana_kana02", + "targets": [ + ["id=entry_kana_kana02", "id"], + ["name=entry[kana][kana02]", "name"], + ["css=#entry_kana_kana02", "css:finder"], + ["xpath=//input[@id='entry_kana_kana02']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[2]/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input[2]", "xpath:position"] + ], + "value": "キューブ" + }, { + "id": "d9ece77a-6717-43a2-8972-0f2b7d595882", + "comment": "", + "command": "type", + "target": "id=entry_company_name", + "targets": [ + ["id=entry_company_name", "id"], + ["name=entry[company_name]", "name"], + ["css=#entry_company_name", "css:finder"], + ["xpath=//input[@id='entry_company_name']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[3]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[3]/dd/div/input", "xpath:position"] + ], + "value": "イーシーキューブ株式会社" + }, { + "id": "d7d41110-146e-49e4-835f-0618cc4f7947", + "comment": "", + "command": "type", + "target": "id=entry_postal_code", + "targets": [ + ["id=entry_postal_code", "id"], + ["name=entry[postal_code]", "name"], + ["css=#entry_postal_code", "css:finder"], + ["xpath=//input[@id='entry_postal_code']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[4]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[4]/dd/div/input", "xpath:position"] + ], + "value": "5300001" + }, { + "id": "23682210-277e-4d3a-919f-cbb65682f97e", + "comment": "", + "command": "click", + "target": "id=entry_address_addr02", + "targets": [ + ["id=entry_address_addr02", "id"], + ["name=entry[address][addr02]", "name"], + ["css=#entry_address_addr02", "css:finder"], + ["xpath=//input[@id='entry_address_addr02']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[4]/dd/div[4]/input", "xpath:idRelative"], + ["xpath=//div[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "95501c92-e9aa-4947-b429-29ef1f08793a", + "comment": "", + "command": "type", + "target": "id=entry_address_addr02", + "targets": [ + ["id=entry_address_addr02", "id"], + ["name=entry[address][addr02]", "name"], + ["css=#entry_address_addr02", "css:finder"], + ["xpath=//input[@id='entry_address_addr02']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[4]/dd/div[4]/input", "xpath:idRelative"], + ["xpath=//div[4]/input", "xpath:position"] + ], + "value": "1" + }, { + "id": "ece5b2e9-d52d-4dd4-8af7-5d020413b2fc", + "comment": "", + "command": "click", + "target": "id=entry_phone_number", + "targets": [ + ["id=entry_phone_number", "id"], + ["name=entry[phone_number]", "name"], + ["css=#entry_phone_number", "css:finder"], + ["xpath=//input[@id='entry_phone_number']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[5]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[5]/dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "db5b482b-ce0a-4959-8e70-374195fd7b3d", + "comment": "", + "command": "type", + "target": "id=entry_phone_number", + "targets": [ + ["id=entry_phone_number", "id"], + ["name=entry[phone_number]", "name"], + ["css=#entry_phone_number", "css:finder"], + ["xpath=//input[@id='entry_phone_number']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[5]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[5]/dd/div/input", "xpath:position"] + ], + "value": "111222333" + }, { + "id": "d658ebdb-9156-4ff5-98e2-346886a88ef1", + "comment": "", + "command": "type", + "target": "id=entry_email_first", + "targets": [ + ["id=entry_email_first", "id"], + ["name=entry[email][first]", "name"], + ["css=#entry_email_first", "css:finder"], + ["xpath=//input[@id='entry_email_first']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[6]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[6]/dd/div/input", "xpath:position"] + ], + "value": "zap_user_guest@example.com" + }, { + "id": "f114f89e-9650-4eca-8411-c4fb95a97667", + "comment": "", + "command": "type", + "target": "id=entry_email_second", + "targets": [ + ["id=entry_email_second", "id"], + ["name=entry[email][second]", "name"], + ["css=#entry_email_second", "css:finder"], + ["xpath=//input[@id='entry_email_second']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[6]/dd/div[2]/input", "xpath:idRelative"], + ["xpath=//div[2]/input", "xpath:position"] + ], + "value": "zap_user_guest@example.com" + }, { + "id": "dc48d3fe-ab2e-45a1-a507-4091fe298b88", + "comment": "", + "command": "click", + "target": "id=entry_password_first", + "targets": [ + ["id=entry_password_first", "id"], + ["name=entry[password][first]", "name"], + ["css=#entry_password_first", "css:finder"], + ["xpath=//input[@id='entry_password_first']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[7]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[7]/dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "dc6782b2-a6fe-445e-a689-b6bf84c1df7a", + "comment": "", + "command": "click", + "target": "id=entry_password_first", + "targets": [ + ["id=entry_password_first", "id"], + ["name=entry[password][first]", "name"], + ["css=#entry_password_first", "css:finder"], + ["xpath=//input[@id='entry_password_first']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[7]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[7]/dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "b7f41a3b-4aa7-4e86-85a2-238dfa82fbbe", + "comment": "", + "command": "doubleClick", + "target": "id=entry_password_first", + "targets": [ + ["id=entry_password_first", "id"], + ["name=entry[password][first]", "name"], + ["css=#entry_password_first", "css:finder"], + ["xpath=//input[@id='entry_password_first']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[7]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[7]/dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "bae078eb-d27a-43b6-9e20-0f9af2a11eab", + "comment": "", + "command": "type", + "target": "id=entry_password_first", + "targets": [ + ["id=entry_password_first", "id"], + ["name=entry[password][first]", "name"], + ["css=#entry_password_first", "css:finder"], + ["xpath=//input[@id='entry_password_first']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[7]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[7]/dd/div/input", "xpath:position"] + ], + "value": "password" + }, { + "id": "4cfc914e-9ead-4605-acf5-6f8c4c897d3d", + "comment": "", + "command": "type", + "target": "id=entry_password_second", + "targets": [ + ["id=entry_password_second", "id"], + ["name=entry[password][second]", "name"], + ["css=#entry_password_second", "css:finder"], + ["xpath=//input[@id='entry_password_second']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[7]/dd/div[2]/input", "xpath:idRelative"], + ["xpath=//dl[7]/dd/div[2]/input", "xpath:position"] + ], + "value": "password" + }, { + "id": "d7f75b96-9762-4a25-abbd-00257559b5a4", + "comment": "", + "command": "click", + "target": "id=entry_birth_year", + "targets": [ + ["id=entry_birth_year", "id"], + ["name=entry[birth][year]", "name"], + ["css=#entry_birth_year", "css:finder"], + ["xpath=//select[@id='entry_birth_year']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[8]/dd/div/select", "xpath:idRelative"], + ["xpath=//dl[8]/dd/div/select", "xpath:position"] + ], + "value": "" + }, { + "id": "74966ade-1768-4767-8899-b776b5e5e502", + "comment": "", + "command": "select", + "target": "id=entry_birth_year", + "targets": [], + "value": "label=2006" + }, { + "id": "d2d2927c-baec-4cdf-9858-74baeaf46f8d", + "comment": "", + "command": "click", + "target": "css=#entry_birth_year > option:nth-child(16)", + "targets": [ + ["css=#entry_birth_year > option:nth-child(16)", "css:finder"], + ["xpath=//option[@value='2006']", "xpath:attributes"], + ["xpath=//select[@id='entry_birth_year']/option[16]", "xpath:idRelative"], + ["xpath=//dl[8]/dd/div/select/option[16]", "xpath:position"], + ["xpath=//option[contains(.,'2006')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "9bcbf068-0477-417c-a861-cc9a50fa06e6", + "comment": "", + "command": "select", + "target": "id=entry_birth_month", + "targets": [], + "value": "label=09" + }, { + "id": "bf710817-929c-45bd-98d8-18526892cb1f", + "comment": "", + "command": "click", + "target": "css=#entry_birth_month > option:nth-child(10)", + "targets": [ + ["css=#entry_birth_month > option:nth-child(10)", "css:finder"], + ["xpath=(//option[@value='9'])[2]", "xpath:attributes"], + ["xpath=//select[@id='entry_birth_month']/option[10]", "xpath:idRelative"], + ["xpath=//select[2]/option[10]", "xpath:position"] + ], + "value": "" + }, { + "id": "14e3301b-fdd1-4adc-9ff0-0c83065376b6", + "comment": "", + "command": "click", + "target": "id=entry_birth_day", + "targets": [ + ["id=entry_birth_day", "id"], + ["name=entry[birth][day]", "name"], + ["css=#entry_birth_day", "css:finder"], + ["xpath=//select[@id='entry_birth_day']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[8]/dd/div/select[3]", "xpath:idRelative"], + ["xpath=//select[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "cd8bac99-386a-425f-9ed8-87fbce2bc672", + "comment": "", + "command": "select", + "target": "id=entry_birth_day", + "targets": [], + "value": "label=01" + }, { + "id": "458e630a-8e56-4e7e-b752-e9647cf7dd9d", + "comment": "", + "command": "click", + "target": "css=#entry_birth_day > option:nth-child(3)", + "targets": [ + ["css=#entry_birth_day > option:nth-child(3)", "css:finder"], + ["xpath=(//option[@value='2'])[4]", "xpath:attributes"], + ["xpath=//select[@id='entry_birth_day']/option[3]", "xpath:idRelative"], + ["xpath=//select[3]/option[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "95f8a601-1824-422d-b074-99b8dfe47c42", + "comment": "", + "command": "click", + "target": "css=dl:nth-child(9) > dt", + "targets": [ + ["css=dl:nth-child(9) > dt", "css:finder"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[9]/dt", "xpath:idRelative"], + ["xpath=//dl[9]/dt", "xpath:position"], + ["xpath=//dt[contains(.,'性別')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "4f8b90a2-ebd7-4777-a4a8-f84dfd37ee28", + "comment": "", + "command": "doubleClick", + "target": "css=dl:nth-child(9) > dt", + "targets": [ + ["css=dl:nth-child(9) > dt", "css:finder"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[9]/dt", "xpath:idRelative"], + ["xpath=//dl[9]/dt", "xpath:position"], + ["xpath=//dt[contains(.,'性別')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "3676bfcd-fd2c-4912-b8c2-faf298e7eed2", + "comment": "", + "command": "click", + "target": "id=entry_birth_day", + "targets": [ + ["id=entry_birth_day", "id"], + ["name=entry[birth][day]", "name"], + ["css=#entry_birth_day", "css:finder"], + ["xpath=//select[@id='entry_birth_day']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[8]/dd/div/select[3]", "xpath:idRelative"], + ["xpath=//select[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "b536c971-0179-41fe-915f-90b9502710e2", + "comment": "", + "command": "click", + "target": "css=#entry_birth_day > option:nth-child(2)", + "targets": [ + ["css=#entry_birth_day > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[4]", "xpath:attributes"], + ["xpath=//select[@id='entry_birth_day']/option[2]", "xpath:idRelative"], + ["xpath=//select[3]/option[2]", "xpath:position"] + ], + "value": "" + }, { + "id": "764d9ae5-5dbf-4b65-9e2a-dac7eabeb031", + "comment": "", + "command": "click", + "target": "id=entry_sex_1", + "targets": [ + ["id=entry_sex_1", "id"], + ["name=entry[sex]", "name"], + ["css=#entry_sex_1", "css:finder"], + ["xpath=//input[@id='entry_sex_1']", "xpath:attributes"], + ["xpath=//div[@id='entry_sex']/input", "xpath:idRelative"], + ["xpath=//dd/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "d0fbae16-ed4d-42af-91f0-6a4e995d1552", + "comment": "", + "command": "click", + "target": "id=entry_job", + "targets": [ + ["id=entry_job", "id"], + ["name=entry[job]", "name"], + ["css=#entry_job", "css:finder"], + ["xpath=//select[@id='entry_job']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div/dl[10]/dd/div/select", "xpath:idRelative"], + ["xpath=//dl[10]/dd/div/select", "xpath:position"] + ], + "value": "" + }, { + "id": "287d3856-8c51-4919-9a43-1e82e424918f", + "comment": "", + "command": "select", + "target": "id=entry_job", + "targets": [], + "value": "label=コンピューター関連技術職" + }, { + "id": "1ffbf02e-d0e8-40a6-a5fc-907de557d3cc", + "comment": "", + "command": "click", + "target": "css=#entry_job > option:nth-child(4)", + "targets": [ + ["css=#entry_job > option:nth-child(4)", "css:finder"], + ["xpath=(//option[@value='3'])[5]", "xpath:attributes"], + ["xpath=//select[@id='entry_job']/option[4]", "xpath:idRelative"], + ["xpath=//dl[10]/dd/div/select/option[4]", "xpath:position"], + ["xpath=//option[contains(.,'コンピューター関連技術職')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "43b4a397-a20b-4bd2-8bda-777dc3018bac", + "comment": "", + "command": "click", + "target": "id=entry_user_policy_check", + "targets": [ + ["id=entry_user_policy_check", "id"], + ["name=entry[user_policy_check]", "name"], + ["css=#entry_user_policy_check", "css:finder"], + ["xpath=//input[@id='entry_user_policy_check']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/div/label/input", "xpath:idRelative"], + ["xpath=//label/input", "xpath:position"] + ], + "value": "" + }, { + "id": "5edafe12-8150-4ada-8bb7-b94a734cda28", + "comment": "", + "command": "click", + "target": "name=mode", + "targets": [ + ["name=mode", "name"], + ["css=.ec-blockBtn--action", "css:finder"], + ["xpath=//button[@name='mode']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'同意する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "0f1cf0e2-00c1-43a3-b0c7-d32f2bab912b", + "comment": "", + "command": "click", + "target": "name=mode", + "targets": [ + ["name=mode", "name"], + ["css=.ec-blockBtn--action", "css:finder"], + ["xpath=//button[@name='mode']", "xpath:attributes"], + ["xpath=//body[@id='page_entry']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'会員登録をする')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "02e550bf-3ac1-49b4-aaf2-2cfaa0f37fb9", + "comment": "", + "command": "click", + "target": "linkText=トップページへ", + "targets": [ + ["linkText=トップページへ", "linkText"], + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'トップページへ')]", "xpath:link"], + ["xpath=//body[@id='page_entry_complete']/div/div[2]/div/div[2]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/')])[11]", "xpath:href"], + ["xpath=//div[2]/div/a", "xpath:position"], + ["xpath=//a[contains(.,'トップページへ')]", "xpath:innerText"] + ], + "value": "" + }] + }, { + "id": "fd31340c-5aec-4d58-805a-73208678455d", + "name": "商品購入(複数配送先)(ゲスト)", + "commands": [{ + "id": "540d5907-b46b-40b6-bf0e-f38f1b3eff0e", + "comment": "", + "command": "open", + "target": "/", + "targets": [], + "value": "" + }, { + "id": "b8081b77-b274-4760-a667-b4622a1a8a75", + "comment": "", + "command": "setWindowSize", + "target": "1025x692", + "targets": [], + "value": "" + }, { + "id": "a7d0c8f1-5b48-421a-aefd-8a3e56be57eb", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_homepage']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "1b8b6ff7-60d6-4cd8-8949-18b9c79d6f7b", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(1) .ec-blockBtn--action", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(1) .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li/div/button", "xpath:idRelative"], + ["xpath=//li/div/button", "xpath:position"], + ["xpath=//button[contains(.,'カートに入れる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "2068611f-d9a1-401b-8594-f9311fa956e1", + "comment": "", + "command": "click", + "target": "css=.ec-inlineBtn--cancel", + "targets": [ + ["css=.ec-inlineBtn--cancel", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[3]/div/div/div[2]/div/label", "xpath:idRelative"], + ["xpath=//div[2]/div/label", "xpath:position"], + ["xpath=//label[contains(.,'お買い物を続ける')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e7b4767c-3ad1-4a8f-8e3c-c8d7e535e41a", + "comment": "", + "command": "select", + "target": "id=classcategory_id11", + "targets": [], + "value": "label=チョコ" + }, { + "id": "d083c0e9-8aae-404a-8087-8938981aba6c", + "comment": "", + "command": "click", + "target": "css=#classcategory_id11 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id11 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[4]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id11']/option[2]", "xpath:idRelative"], + ["xpath=//li[2]/form/div/div/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'チョコ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "08771f2e-818c-42e8-81be-7451161349b8", + "comment": "", + "command": "select", + "target": "id=classcategory_id21", + "targets": [], + "value": "label=16mm × 16mm" + }, { + "id": "2d18f3a0-ef2f-4bf8-bdd6-25359e6ff5f1", + "comment": "", + "command": "click", + "target": "css=#classcategory_id21 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id21 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='4'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id21']/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'16mm × 16mm')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "da4c6cac-c4b9-4fad-8d9b-aa2484ad2936", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(2) .ec-blockBtn--action", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(2) .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[3]", "xpath:attributes"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li[2]/div/button", "xpath:idRelative"], + ["xpath=//li[2]/div/button", "xpath:position"] + ], + "value": "" + }, { + "id": "e497e2c1-aa63-42f6-8d1a-735bd7d9d900", + "comment": "", + "command": "click", + "target": "linkText=カートへ進む", + "targets": [ + ["linkText=カートへ進む", "linkText"], + ["css=.ec-inlineBtn--action", "css:finder"], + ["xpath=(//a[contains(text(),'カートへ進む')])[2]", "xpath:link"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[3]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/cart')])[2]", "xpath:href"], + ["xpath=//div[3]/div/div/div[2]/div/a", "xpath:position"] + ], + "value": "" + }, { + "id": "cc2b585e-7823-488d-9a1e-d590312bb7ef", + "comment": "", + "command": "click", + "target": "linkText=お買い物を続ける", + "targets": [ + ["linkText=お買い物を続ける", "linkText"], + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'お買い物を続ける')]", "xpath:link"], + ["xpath=//form[@id='form_cart']/div[3]/a[2]", "xpath:idRelative"], + ["xpath=(//a[contains(@href, '/')])[21]", "xpath:href"], + ["xpath=//form/div[3]/a[2]", "xpath:position"], + ["xpath=//a[contains(.,'お買い物を続ける')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "058cede7-fc6e-445e-8675-960ea14b8117", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_homepage']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "de2f220c-0698-45fe-8268-3b2ca2b84f96", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(1) img", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(1) img", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li/a/p/img", "xpath:idRelative"], + ["xpath=//p/img", "xpath:position"] + ], + "value": "" + }, { + "id": "4559e33d-641f-4d56-839c-6fe14782328e", + "comment": "", + "command": "click", + "target": "css=.add-cart", + "targets": [ + ["css=.add-cart", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'カートに入れる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "f384c38f-4a62-408f-83c1-9cfffb595508", + "comment": "", + "command": "click", + "target": "css=.ec-inlineBtn--cancel", + "targets": [ + ["css=.ec-inlineBtn--cancel", "css:finder"], + ["xpath=//body[@id='page_product_detail']/div/div[2]/div/div/div/div[2]/div/div[5]/div/div/div[2]/div/label", "xpath:idRelative"], + ["xpath=//div[2]/div/label", "xpath:position"], + ["xpath=//label[contains(.,'お買い物を続ける')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "6753a4a0-908a-489c-9c1b-a09eae6553e7", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_product_detail']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "df050400-12fd-42f5-99b7-8d57e4f495f6", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(2) img", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(2) img", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li[2]/a/p/img", "xpath:idRelative"], + ["xpath=//li[2]/a/p/img", "xpath:position"] + ], + "value": "" + }, { + "id": "79e7757a-d4dd-4b18-a63a-8c72e9cb5171", + "comment": "", + "command": "click", + "target": "css=.ec-productRole__actions", + "targets": [ + ["css=.ec-productRole__actions", "css:finder"], + ["xpath=//form[@id='form1']/div", "xpath:idRelative"], + ["xpath=//div[2]/div/form/div", "xpath:position"] + ], + "value": "" + }, { + "id": "9bd4b2b3-bb3d-4139-b014-b07dad666406", + "comment": "", + "command": "select", + "target": "id=classcategory_id1", + "targets": [], + "value": "label=チョコ" + }, { + "id": "5ebf0d35-4b14-4cb8-8bfd-d52558f933f5", + "comment": "", + "command": "click", + "target": "css=#classcategory_id1 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id1 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id1']/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/div/form/div/div/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'チョコ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "936cf3f8-978b-48f0-840e-8047d782ede2", + "comment": "", + "command": "select", + "target": "id=classcategory_id2", + "targets": [], + "value": "label=64cm × 64cm" + }, { + "id": "1d317c1c-3b21-4ca7-b4ab-3a768f23db87", + "comment": "", + "command": "click", + "target": "css=#classcategory_id2 > option:nth-child(4)", + "targets": [ + ["css=#classcategory_id2 > option:nth-child(4)", "css:finder"], + ["xpath=(//option[@value='6'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id2']/option[4]", "xpath:idRelative"], + ["xpath=//div[2]/select/option[4]", "xpath:position"], + ["xpath=//option[contains(.,'64cm × 64cm')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "a7e45c5e-19bc-4685-9d82-7e6f5c285687", + "comment": "", + "command": "click", + "target": "css=.add-cart", + "targets": [ + ["css=.add-cart", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'カートに入れる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "5f7e0221-e585-42fa-bd16-3cb9df23487a", + "comment": "", + "command": "click", + "target": "linkText=カートへ進む", + "targets": [ + ["linkText=カートへ進む", "linkText"], + ["css=.ec-inlineBtn--action", "css:finder"], + ["xpath=(//a[contains(text(),'カートへ進む')])[2]", "xpath:link"], + ["xpath=//body[@id='page_product_detail']/div/div[2]/div/div/div/div[2]/div/div[6]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/cart')])[2]", "xpath:href"], + ["xpath=//div[6]/div/div/div[2]/div/a", "xpath:position"] + ], + "value": "" + }, { + "id": "43e3d9fd-6b7f-402e-a991-a3886b47776f", + "comment": "", + "command": "click", + "target": "linkText=レジに進む", + "targets": [ + ["linkText=レジに進む", "linkText"], + ["css=.ec-blockBtn--action:nth-child(2)", "css:finder"], + ["xpath=//a[contains(text(),'レジに進む')]", "xpath:link"], + ["xpath=//form[@id='form_cart']/div[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, '/cart/buystep/mC5FAu4iD1fimOf2y1YjmWqaarUDbIPB_1')]", "xpath:href"], + ["xpath=//form/div[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'レジに進む')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "6e935de1-f68c-4e7f-87d8-9019f3eb083f", + "comment": "", + "command": "click", + "target": "linkText=ゲスト購入", + "targets": [ + ["linkText=ゲスト購入", "linkText"], + ["css=.ec-guest__actions > .ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'ゲスト購入')]", "xpath:link"], + ["xpath=//body[@id='page_shopping_login']/div/div[2]/div/div[2]/div/div[2]/div/div/div/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/shopping/nonmember')]", "xpath:href"], + ["xpath=//div[2]/div/div[2]/div/div/div/a", "xpath:position"], + ["xpath=//a[contains(.,'ゲスト購入')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "b39cddd1-9070-45af-834a-11ac241159cd", + "comment": "", + "command": "click", + "target": "id=nonmember_name_name01", + "targets": [ + ["id=nonmember_name_name01", "id"], + ["name=nonmember[name][name01]", "name"], + ["css=#nonmember_name_name01", "css:finder"], + ["xpath=//input[@id='nonmember_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "9ac270d6-0bb4-4509-84cf-2ee206bd2e84", + "comment": "", + "command": "type", + "target": "id=nonmember_name_name01", + "targets": [ + ["id=nonmember_name_name01", "id"], + ["name=nonmember[name][name01]", "name"], + ["css=#nonmember_name_name01", "css:finder"], + ["xpath=//input[@id='nonmember_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "石" + }, { + "id": "547fbb97-487e-4a02-9a12-176dc853baec", + "comment": "", + "command": "type", + "target": "id=nonmember_name_name02", + "targets": [ + ["id=nonmember_name_name02", "id"], + ["name=nonmember[name][name02]", "name"], + ["css=#nonmember_name_name02", "css:finder"], + ["xpath=//input[@id='nonmember_name_name02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//input[2]", "xpath:position"] + ], + "value": "九部" + }, { + "id": "bf1fb79e-7d05-41cb-b08c-a123f7258f60", + "comment": "", + "command": "type", + "target": "id=nonmember_kana_kana01", + "targets": [ + ["id=nonmember_kana_kana01", "id"], + ["name=nonmember[kana][kana01]", "name"], + ["css=#nonmember_kana_kana01", "css:finder"], + ["xpath=//input[@id='nonmember_kana_kana01']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[2]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input", "xpath:position"] + ], + "value": "イシ" + }, { + "id": "bc8391da-ff81-4fa1-baa3-e551b7db6a3c", + "comment": "", + "command": "type", + "target": "id=nonmember_kana_kana02", + "targets": [ + ["id=nonmember_kana_kana02", "id"], + ["name=nonmember[kana][kana02]", "name"], + ["css=#nonmember_kana_kana02", "css:finder"], + ["xpath=//input[@id='nonmember_kana_kana02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[2]/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input[2]", "xpath:position"] + ], + "value": "キューブ" + }, { + "id": "1e075c31-2a34-4978-8572-f182c26cab0b", + "comment": "", + "command": "type", + "target": "id=nonmember_company_name", + "targets": [ + ["id=nonmember_company_name", "id"], + ["name=nonmember[company_name]", "name"], + ["css=#nonmember_company_name", "css:finder"], + ["xpath=//input[@id='nonmember_company_name']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[3]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[3]/dd/div/input", "xpath:position"] + ], + "value": "イーシーキューブ株式会社" + }, { + "id": "549e10dd-f72d-4772-a010-b92ce1623081", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,307.79998779296875)", + "targets": [], + "value": "" + }, { + "id": "52eb11b7-3cbc-40a8-a46c-69f1c4af576c", + "comment": "", + "command": "type", + "target": "id=nonmember_postal_code", + "targets": [ + ["id=nonmember_postal_code", "id"], + ["name=nonmember[postal_code]", "name"], + ["css=#nonmember_postal_code", "css:finder"], + ["xpath=//input[@id='nonmember_postal_code']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[4]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[4]/dd/div/input", "xpath:position"] + ], + "value": "5300001" + }, { + "id": "bd11f3fc-e7dd-4825-8ace-2cd791f537cc", + "comment": "", + "command": "click", + "target": "id=nonmember_address_addr02", + "targets": [ + ["id=nonmember_address_addr02", "id"], + ["name=nonmember[address][addr02]", "name"], + ["css=#nonmember_address_addr02", "css:finder"], + ["xpath=//input[@id='nonmember_address_addr02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[4]/dd/div[4]/input", "xpath:idRelative"], + ["xpath=//div[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "666eaff3-5420-4b68-8a9a-27debb5043d1", + "comment": "", + "command": "type", + "target": "id=nonmember_address_addr02", + "targets": [ + ["id=nonmember_address_addr02", "id"], + ["name=nonmember[address][addr02]", "name"], + ["css=#nonmember_address_addr02", "css:finder"], + ["xpath=//input[@id='nonmember_address_addr02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[4]/dd/div[4]/input", "xpath:idRelative"], + ["xpath=//div[4]/input", "xpath:position"] + ], + "value": "1" + }, { + "id": "b193faf5-82a9-4c07-8e48-e16c9ab5ea71", + "comment": "", + "command": "type", + "target": "id=nonmember_phone_number", + "targets": [ + ["id=nonmember_phone_number", "id"], + ["name=nonmember[phone_number]", "name"], + ["css=#nonmember_phone_number", "css:finder"], + ["xpath=//input[@id='nonmember_phone_number']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[5]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[5]/dd/div/input", "xpath:position"] + ], + "value": "999000999" + }, { + "id": "22030840-f78e-4b6b-b1e3-32b30322dc3c", + "comment": "", + "command": "type", + "target": "id=nonmember_email_first", + "targets": [ + ["id=nonmember_email_first", "id"], + ["name=nonmember[email][first]", "name"], + ["css=#nonmember_email_first", "css:finder"], + ["xpath=//input[@id='nonmember_email_first']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[6]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[6]/dd/div/input", "xpath:position"] + ], + "value": "ec-cube@example.com" + }, { + "id": "f43cc971-2a42-45c6-905f-e7e682419aee", + "comment": "", + "command": "type", + "target": "id=nonmember_email_second", + "targets": [ + ["id=nonmember_email_second", "id"], + ["name=nonmember[email][second]", "name"], + ["css=#nonmember_email_second", "css:finder"], + ["xpath=//input[@id='nonmember_email_second']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[6]/dd/div[2]/input", "xpath:idRelative"], + ["xpath=//div[2]/input", "xpath:position"] + ], + "value": "ec-cube@example.com" + }, { + "id": "66314fa9-ecc4-44d0-be72-883ea5838387", + "comment": "", + "command": "click", + "target": "css=.ec-off4Grid__cell > .ec-blockBtn--action", + "targets": [ + ["css=.ec-off4Grid__cell > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'次へ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "1e0b709c-41c5-44dc-a547-01b7440da09f", + "comment": "", + "command": "click", + "target": "id=customer", + "targets": [ + ["id=customer", "id"], + ["css=#customer", "css:finder"], + ["xpath=//button[@id='customer']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'変更')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "4c779894-bb75-4472-b498-8cd6d95d6d05", + "comment": "", + "command": "click", + "target": "id=edit8", + "targets": [ + ["id=edit8", "id"], + ["css=#edit8", "css:finder"], + ["xpath=//input[@id='edit8']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div/div[4]/dl[4]/dd/div[4]/span/input", "xpath:idRelative"], + ["xpath=//div[4]/span/input", "xpath:position"] + ], + "value": "" + }, { + "id": "981cde73-3b38-4905-a60e-a8e00bf6bd1a", + "comment": "", + "command": "click", + "target": "id=edit8", + "targets": [ + ["id=edit8", "id"], + ["css=#edit8", "css:finder"], + ["xpath=//input[@id='edit8']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div/div[4]/dl[4]/dd/div[4]/span/input", "xpath:idRelative"], + ["xpath=//div[4]/span/input", "xpath:position"] + ], + "value": "" + }, { + "id": "8e2bdc66-fdbb-40cb-b446-10a525ec45a8", + "comment": "", + "command": "doubleClick", + "target": "id=edit8", + "targets": [ + ["id=edit8", "id"], + ["css=#edit8", "css:finder"], + ["xpath=//input[@id='edit8']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div/div[4]/dl[4]/dd/div[4]/span/input", "xpath:idRelative"], + ["xpath=//div[4]/span/input", "xpath:position"] + ], + "value": "" + }, { + "id": "9514f969-2867-4b35-bc8f-d91d8e87b437", + "comment": "", + "command": "type", + "target": "id=edit8", + "targets": [ + ["id=edit8", "id"], + ["css=#edit8", "css:finder"], + ["xpath=//input[@id='edit8']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div/div[4]/dl[4]/dd/div[4]/span/input", "xpath:idRelative"], + ["xpath=//div[4]/span/input", "xpath:position"] + ], + "value": "2" + }, { + "id": "e587fd22-de96-42e8-ad8d-e87edca73562", + "comment": "", + "command": "click", + "target": "css=#customer-ok > .ec-inlineBtn", + "targets": [ + ["css=#customer-ok > .ec-inlineBtn", "css:finder"], + ["xpath=(//button[@type='button'])[2]", "xpath:attributes"], + ["xpath=//span[@id='customer-ok']/button", "xpath:idRelative"], + ["xpath=//span/button", "xpath:position"], + ["xpath=//button[contains(.,'OK')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "d35eebb9-534a-442e-b2c6-2cc40c9ae4c3", + "comment": "", + "command": "click", + "target": "css=.ec-orderDelivery__edit > .ec-inlineBtn", + "targets": [ + ["css=.ec-orderDelivery__edit > .ec-inlineBtn", "css:finder"], + ["xpath=(//button[@type='button'])[4]", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[2]/div[6]/button", "xpath:idRelative"], + ["xpath=//div[6]/button", "xpath:position"], + ["xpath=//button[contains(.,'お届け先を追加する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "2bcabdc4-868a-47bd-83ec-8a90990ce48d", + "comment": "", + "command": "click", + "target": "linkText=新規お届け先を追加する", + "targets": [ + ["linkText=新規お届け先を追加する", "linkText"], + ["css=.btn:nth-child(1)", "css:finder"], + ["xpath=//a[contains(text(),'新規お届け先を追加する')]", "xpath:link"], + ["xpath=//form[@id='shipping-multiple-form']/div[2]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/shopping/shipping_multiple_edit')]", "xpath:href"], + ["xpath=//form/div[2]/a", "xpath:position"], + ["xpath=//a[contains(.,'新規お届け先を追加する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e74b948d-687a-401a-a82b-b3f9f103d213", + "comment": "", + "command": "click", + "target": "id=shopping_shipping_name_name01", + "targets": [ + ["id=shopping_shipping_name_name01", "id"], + ["name=shopping_shipping[name][name01]", "name"], + ["css=#shopping_shipping_name_name01", "css:finder"], + ["xpath=//input[@id='shopping_shipping_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "66bd6a03-080e-4374-b441-e0af20d9870f", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_name_name01", + "targets": [ + ["id=shopping_shipping_name_name01", "id"], + ["name=shopping_shipping[name][name01]", "name"], + ["css=#shopping_shipping_name_name01", "css:finder"], + ["xpath=//input[@id='shopping_shipping_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "石井" + }, { + "id": "89e1e885-6c12-4aaa-b915-fa5a7708d2ef", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_name_name02", + "targets": [ + ["id=shopping_shipping_name_name02", "id"], + ["name=shopping_shipping[name][name02]", "name"], + ["css=#shopping_shipping_name_name02", "css:finder"], + ["xpath=//input[@id='shopping_shipping_name_name02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//input[2]", "xpath:position"] + ], + "value": "球部" + }, { + "id": "3af6d3a3-2b6a-4af2-81b5-61c4fe48da3f", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_kana_kana01", + "targets": [ + ["id=shopping_shipping_kana_kana01", "id"], + ["name=shopping_shipping[kana][kana01]", "name"], + ["css=#shopping_shipping_kana_kana01", "css:finder"], + ["xpath=//input[@id='shopping_shipping_kana_kana01']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[2]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input", "xpath:position"] + ], + "value": "イシイ" + }, { + "id": "8c4f4f06-1e3f-41a9-8720-4e0519a483b2", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_kana_kana02", + "targets": [ + ["id=shopping_shipping_kana_kana02", "id"], + ["name=shopping_shipping[kana][kana02]", "name"], + ["css=#shopping_shipping_kana_kana02", "css:finder"], + ["xpath=//input[@id='shopping_shipping_kana_kana02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[2]/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input[2]", "xpath:position"] + ], + "value": "キュウブ" + }, { + "id": "43c4009f-5d30-460e-b137-e75ea993a7e3", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_company_name", + "targets": [ + ["id=shopping_shipping_company_name", "id"], + ["name=shopping_shipping[company_name]", "name"], + ["css=#shopping_shipping_company_name", "css:finder"], + ["xpath=//input[@id='shopping_shipping_company_name']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[3]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[3]/dd/div/input", "xpath:position"] + ], + "value": "イーシーキューブ" + }, { + "id": "7e8e8c1e-da4a-43c2-851e-6a8f16892a0a", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_postal_code", + "targets": [ + ["id=shopping_shipping_postal_code", "id"], + ["name=shopping_shipping[postal_code]", "name"], + ["css=#shopping_shipping_postal_code", "css:finder"], + ["xpath=//input[@id='shopping_shipping_postal_code']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[4]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[4]/dd/div/input", "xpath:position"] + ], + "value": "5430001" + }, { + "id": "b49c6802-f3ea-4df2-9ec1-b5e6f11ee2f3", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,301.4666748046875)", + "targets": [], + "value": "" + }, { + "id": "8fbe895b-7d8e-4394-8e3a-9b899bfa2bf0", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_address_addr02", + "targets": [ + ["id=shopping_shipping_address_addr02", "id"], + ["name=shopping_shipping[address][addr02]", "name"], + ["css=#shopping_shipping_address_addr02", "css:finder"], + ["xpath=//input[@id='shopping_shipping_address_addr02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[4]/dd/div[4]/input", "xpath:idRelative"], + ["xpath=//div[4]/input", "xpath:position"] + ], + "value": "1" + }, { + "id": "cdef8fb1-bb60-49f4-8fca-f2b1c24ab350", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_phone_number", + "targets": [ + ["id=shopping_shipping_phone_number", "id"], + ["name=shopping_shipping[phone_number]", "name"], + ["css=#shopping_shipping_phone_number", "css:finder"], + ["xpath=//input[@id='shopping_shipping_phone_number']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[5]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[5]/dd/div/input", "xpath:position"] + ], + "value": "333333333" + }, { + "id": "11771814-8bb3-44ae-9837-c816e956d2b5", + "comment": "", + "command": "click", + "target": "css=.ec-off4Grid__cell > .ec-blockBtn--action", + "targets": [ + ["css=.ec-off4Grid__cell > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'登録する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "f07d254f-6f03-4682-bc42-60b36e4da49a", + "comment": "", + "command": "mouseOver", + "target": "css=.ec-off4Grid__cell > .ec-blockBtn--action", + "targets": [ + ["css=.ec-off4Grid__cell > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'登録する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "4c8b4f91-1ee7-4cb9-bf6c-df055d2aa788", + "comment": "", + "command": "mouseOut", + "target": "css=.ec-off4Grid__cell > .ec-blockBtn--action", + "targets": [ + ["css=.ec-off4Grid__cell > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'登録する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "64d91569-47c8-431d-b65a-f8f464a66154", + "comment": "", + "command": "click", + "target": "id=button__add0", + "targets": [ + ["id=button__add0", "id"], + ["css=#button__add0", "css:finder"], + ["xpath=//button[@id='button__add0']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__add_button0']/button", "xpath:idRelative"], + ["xpath=//div[3]/button", "xpath:position"], + ["xpath=//button[contains(.,'お届け先追加')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "95ae615e-ae89-4a5c-987b-79ea2b81154f", + "comment": "", + "command": "mouseOver", + "target": "id=button__add0", + "targets": [ + ["id=button__add0", "id"], + ["css=#button__add0", "css:finder"], + ["xpath=//button[@id='button__add0']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__add_button0']/button", "xpath:idRelative"], + ["xpath=//div[3]/button", "xpath:position"], + ["xpath=//button[contains(.,'お届け先追加')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "2e3c839f-2fb5-498d-8a8a-64efda8006ae", + "comment": "", + "command": "mouseOut", + "target": "id=button__add0", + "targets": [ + ["id=button__add0", "id"], + ["css=#button__add0", "css:finder"], + ["xpath=//button[@id='button__add0']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__add_button0']/button", "xpath:idRelative"], + ["xpath=//div[3]/button", "xpath:position"], + ["xpath=//button[contains(.,'お届け先追加')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "0c08e1b4-fbff-42ed-abf9-d244caf462a3", + "comment": "", + "command": "select", + "target": "id=form_shipping_multiple_0_shipping_1_customer_address", + "targets": [], + "value": "label=石井 大阪府 大阪市天王寺区上本町 1" + }, { + "id": "8cdd101b-9a2a-49b6-a9b7-e112288919a9", + "comment": "", + "command": "click", + "target": "css=#form_shipping_multiple_0_shipping_1_customer_address > option:nth-child(2)", + "targets": [ + ["css=#form_shipping_multiple_0_shipping_1_customer_address > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[3]", "xpath:attributes"], + ["xpath=//select[@id='form_shipping_multiple_0_shipping_1_customer_address']/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/div/div/select/option[2]", "xpath:position"] + ], + "value": "" + }, { + "id": "d55f7ac6-0ac3-48c3-9a3d-cad2c960fecc", + "comment": "", + "command": "click", + "target": "id=form_shipping_multiple_0_shipping_0_quantity", + "targets": [ + ["id=form_shipping_multiple_0_shipping_0_quantity", "id"], + ["name=form[shipping_multiple][0][shipping][0][quantity]", "name"], + ["css=#form_shipping_multiple_0_shipping_0_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_0_shipping_0_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--0_0']/div/input", "xpath:idRelative"], + ["xpath=//div/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "52e1e064-a825-495c-958a-0575ce9f472c", + "comment": "", + "command": "click", + "target": "id=form_shipping_multiple_0_shipping_0_quantity", + "targets": [ + ["id=form_shipping_multiple_0_shipping_0_quantity", "id"], + ["name=form[shipping_multiple][0][shipping][0][quantity]", "name"], + ["css=#form_shipping_multiple_0_shipping_0_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_0_shipping_0_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--0_0']/div/input", "xpath:idRelative"], + ["xpath=//div/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "3728c2b8-6780-4266-bb74-a96ff2ccd084", + "comment": "", + "command": "doubleClick", + "target": "id=form_shipping_multiple_0_shipping_0_quantity", + "targets": [ + ["id=form_shipping_multiple_0_shipping_0_quantity", "id"], + ["name=form[shipping_multiple][0][shipping][0][quantity]", "name"], + ["css=#form_shipping_multiple_0_shipping_0_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_0_shipping_0_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--0_0']/div/input", "xpath:idRelative"], + ["xpath=//div/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "07d2480b-3171-4900-8b13-c0933da9fd16", + "comment": "", + "command": "type", + "target": "id=form_shipping_multiple_0_shipping_0_quantity", + "targets": [ + ["id=form_shipping_multiple_0_shipping_0_quantity", "id"], + ["name=form[shipping_multiple][0][shipping][0][quantity]", "name"], + ["css=#form_shipping_multiple_0_shipping_0_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_0_shipping_0_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--0_0']/div/input", "xpath:idRelative"], + ["xpath=//div/div[2]/div/input", "xpath:position"] + ], + "value": "1" + }, { + "id": "a45fbbad-72b2-446f-b51a-eccfb02de5dc", + "comment": "", + "command": "click", + "target": "id=form_shipping_multiple_0_shipping_1_quantity", + "targets": [ + ["id=form_shipping_multiple_0_shipping_1_quantity", "id"], + ["name=form[shipping_multiple][0][shipping][1][quantity]", "name"], + ["css=#form_shipping_multiple_0_shipping_1_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_0_shipping_1_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--0_1']/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "020b74d7-05dd-4aac-b1f6-8d3d75d12070", + "comment": "", + "command": "click", + "target": "id=form_shipping_multiple_0_shipping_1_quantity", + "targets": [ + ["id=form_shipping_multiple_0_shipping_1_quantity", "id"], + ["name=form[shipping_multiple][0][shipping][1][quantity]", "name"], + ["css=#form_shipping_multiple_0_shipping_1_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_0_shipping_1_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--0_1']/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "6f02e61f-3fb1-4ad8-8e16-b63fbec5539d", + "comment": "", + "command": "doubleClick", + "target": "id=form_shipping_multiple_0_shipping_1_quantity", + "targets": [ + ["id=form_shipping_multiple_0_shipping_1_quantity", "id"], + ["name=form[shipping_multiple][0][shipping][1][quantity]", "name"], + ["css=#form_shipping_multiple_0_shipping_1_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_0_shipping_1_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--0_1']/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "2baa344c-b882-4b0c-8d46-64110ebf8868", + "comment": "", + "command": "type", + "target": "id=form_shipping_multiple_0_shipping_1_quantity", + "targets": [ + ["id=form_shipping_multiple_0_shipping_1_quantity", "id"], + ["name=form[shipping_multiple][0][shipping][1][quantity]", "name"], + ["css=#form_shipping_multiple_0_shipping_1_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_0_shipping_1_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--0_1']/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/input", "xpath:position"] + ], + "value": "1" + }, { + "id": "40c962e7-1382-4ad1-aef0-af2c0329ff4d", + "comment": "", + "command": "click", + "target": "id=multiple_list__add_button0", + "targets": [ + ["id=multiple_list__add_button0", "id"], + ["css=#multiple_list__add_button0", "css:finder"], + ["xpath=//div[@id='multiple_list__add_button0']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__item_box--0']/div[3]", "xpath:idRelative"], + ["xpath=//div[3]/div[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "3e85f362-daf4-4eca-b476-be320e98033f", + "comment": "", + "command": "click", + "target": "id=button__confirm", + "targets": [ + ["id=button__confirm", "id"], + ["css=#button__confirm", "css:finder"], + ["xpath=//button[@id='button__confirm']", "xpath:attributes"], + ["xpath=//form[@id='shipping-multiple-form']/div[6]/div/div/button", "xpath:idRelative"], + ["xpath=//div[6]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'選択したお届け先に送る')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "aa42fcc6-4c92-48c4-a272-31d3c5bf9d86", + "comment": "", + "command": "click", + "target": "css=div:nth-child(3) > label > span", + "targets": [ + ["css=div:nth-child(3) > label > span", "css:finder"], + ["xpath=//form[@id='shopping-form']/div/div/div[3]/div[2]/div[3]/label/span", "xpath:idRelative"], + ["xpath=//div[3]/label/span", "xpath:position"], + ["xpath=//span[contains(.,'銀行振込')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "94c9b1aa-8717-4e46-ab78-8fd5e501c2b0", + "comment": "", + "command": "click", + "target": "id=shopping_order_message", + "targets": [ + ["id=shopping_order_message", "id"], + ["name=_shopping_order[message]", "name"], + ["css=#shopping_order_message", "css:finder"], + ["xpath=//textarea[@id='shopping_order_message']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[4]/div[2]/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "79a8ca7b-8ac0-4344-a07f-2ec5ba79f74c", + "comment": "", + "command": "type", + "target": "id=shopping_order_message", + "targets": [ + ["id=shopping_order_message", "id"], + ["name=_shopping_order[message]", "name"], + ["css=#shopping_order_message", "css:finder"], + ["xpath=//textarea[@id='shopping_order_message']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[4]/div[2]/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "複数配送のテスト" + }, { + "id": "4bba4cfe-d220-46b1-b99e-c4786428b8f7", + "comment": "", + "command": "click", + "target": "css=.ec-totalBox__btn > .ec-blockBtn--action", + "targets": [ + ["css=.ec-totalBox__btn > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div[2]/div/div[3]/button", "xpath:idRelative"], + ["xpath=//div[3]/button", "xpath:position"], + ["xpath=//button[contains(.,'確認する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "64e51550-5f7d-4fda-91cd-ef9abd4bb580", + "comment": "", + "command": "click", + "target": "css=.ec-totalBox__btn > .ec-blockBtn--action", + "targets": [ + ["css=.ec-totalBox__btn > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div[2]/div/div[3]/button", "xpath:idRelative"], + ["xpath=//div[3]/button", "xpath:position"], + ["xpath=//button[contains(.,'注文する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "510b04db-272d-405c-b0f4-0618e4d5e39e", + "comment": "", + "command": "click", + "target": "linkText=トップページへ", + "targets": [ + ["linkText=トップページへ", "linkText"], + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'トップページへ')]", "xpath:link"], + ["xpath=//body[@id='page_shopping_complete']/div/div[2]/div/div[3]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/')])[11]", "xpath:href"], + ["xpath=//div[2]/div/a", "xpath:position"], + ["xpath=//a[contains(.,'トップページへ')]", "xpath:innerText"] + ], + "value": "" + }] + }, { + "id": "6e49bc53-4dbc-4e3a-802b-dfc0473463a4", + "name": "商品購入(ゲスト)", + "commands": [{ + "id": "76813b94-ab73-4d68-869f-5354f06f771c", + "comment": "", + "command": "open", + "target": "/", + "targets": [], + "value": "" + }, { + "id": "4a947343-8c18-4603-8413-48d08b9e7226", + "comment": "", + "command": "setWindowSize", + "target": "1160x692", + "targets": [], + "value": "" + }, { + "id": "c411ae09-71ec-414c-8c20-d0c4ea224bc2", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_homepage']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "ec3a1799-4e4e-463a-855a-857b0f2b90fe", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(1) .ec-blockBtn--action", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(1) .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li/div/button", "xpath:idRelative"], + ["xpath=//li/div/button", "xpath:position"], + ["xpath=//button[contains(.,'カートに入れる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "dc085baa-7941-4953-9c71-ffb5a7a0352e", + "comment": "", + "command": "click", + "target": "linkText=カートへ進む", + "targets": [ + ["linkText=カートへ進む", "linkText"], + ["css=.ec-inlineBtn--action", "css:finder"], + ["xpath=(//a[contains(text(),'カートへ進む')])[2]", "xpath:link"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[3]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/cart')])[2]", "xpath:href"], + ["xpath=//div[3]/div/div/div[2]/div/a", "xpath:position"] + ], + "value": "" + }, { + "id": "a03f5ffa-3b91-40ce-9b92-d605e8b42e25", + "comment": "", + "command": "click", + "target": "linkText=お買い物を続ける", + "targets": [ + ["linkText=お買い物を続ける", "linkText"], + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'お買い物を続ける')]", "xpath:link"], + ["xpath=//form[@id='form_cart']/div[3]/a[2]", "xpath:idRelative"], + ["xpath=(//a[contains(@href, '/')])[17]", "xpath:href"], + ["xpath=//div[3]/a[2]", "xpath:position"], + ["xpath=//a[contains(.,'お買い物を続ける')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "7f323ab2-0564-411e-8e67-7ecad0536aeb", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_homepage']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "1835e757-7e24-497d-bc94-f06440510c27", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,316.6666564941406)", + "targets": [], + "value": "" + }, { + "id": "c281340c-0f34-40e6-8812-33627a658b23", + "comment": "", + "command": "select", + "target": "id=classcategory_id11", + "targets": [], + "value": "label=チョコ" + }, { + "id": "fd2373ca-e970-416f-bdd5-3c8f426b1bf0", + "comment": "", + "command": "click", + "target": "css=#classcategory_id11 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id11 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[4]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id11']/option[2]", "xpath:idRelative"], + ["xpath=//li[2]/form/div/div/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'チョコ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "398fe89f-efbe-4861-a0de-0d6ec105cce2", + "comment": "", + "command": "select", + "target": "id=classcategory_id21", + "targets": [], + "value": "label=16mm × 16mm" + }, { + "id": "8b426bf1-8252-4657-ad2e-cde76f3afe9c", + "comment": "", + "command": "click", + "target": "css=#classcategory_id21 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id21 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='4'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id21']/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'16mm × 16mm')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "f0c73e3f-7934-4556-906f-7cffe278c78c", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(2) .ec-blockBtn--action", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(2) .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[3]", "xpath:attributes"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li[2]/div/button", "xpath:idRelative"], + ["xpath=//li[2]/div/button", "xpath:position"] + ], + "value": "" + }, { + "id": "b1a30a61-2ced-41ed-992e-471036e28756", + "comment": "", + "command": "click", + "target": "linkText=カートへ進む", + "targets": [ + ["linkText=カートへ進む", "linkText"], + ["css=.ec-inlineBtn--action", "css:finder"], + ["xpath=(//a[contains(text(),'カートへ進む')])[2]", "xpath:link"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[3]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/cart')])[2]", "xpath:href"], + ["xpath=//div[3]/div/div/div[2]/div/a", "xpath:position"] + ], + "value": "" + }, { + "id": "179b6934-11cc-44be-b84b-4f19ee756ea0", + "comment": "", + "command": "click", + "target": "linkText=お買い物を続ける", + "targets": [ + ["linkText=お買い物を続ける", "linkText"], + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'お買い物を続ける')]", "xpath:link"], + ["xpath=//form[@id='form_cart']/div[3]/a[2]", "xpath:idRelative"], + ["xpath=(//a[contains(@href, '/')])[21]", "xpath:href"], + ["xpath=//form/div[3]/a[2]", "xpath:position"], + ["xpath=//a[contains(.,'お買い物を続ける')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "d9b3fdca-c706-40b1-bc2e-844a18dbb347", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_homepage']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "2f74d531-6cca-4d3a-938c-3fd3d9061e07", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,300.20001220703125)", + "targets": [], + "value": "" + }, { + "id": "99423da2-5c78-40f1-b54a-7d1d0b7d0785", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(1) img", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(1) img", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li/a/p/img", "xpath:idRelative"], + ["xpath=//p/img", "xpath:position"] + ], + "value": "" + }, { + "id": "71da5e0a-c8ae-42e0-ba80-11ed6a19c6ca", + "comment": "", + "command": "click", + "target": "css=.add-cart", + "targets": [ + ["css=.add-cart", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'カートに入れる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "261a5918-a916-4f9a-a488-bf3c13d542d6", + "comment": "", + "command": "click", + "target": "css=.ec-inlineBtn--cancel", + "targets": [ + ["css=.ec-inlineBtn--cancel", "css:finder"], + ["xpath=//body[@id='page_product_detail']/div/div[2]/div/div/div/div[2]/div/div[5]/div/div/div[2]/div/label", "xpath:idRelative"], + ["xpath=//div[2]/div/label", "xpath:position"], + ["xpath=//label[contains(.,'お買い物を続ける')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "47a05c92-af74-4c25-9fd5-eaff2ad1d10c", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_product_detail']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "945c0ff8-3710-4321-8d21-eb1dea96bd32", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(2) img", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(2) img", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li[2]/a/p/img", "xpath:idRelative"], + ["xpath=//li[2]/a/p/img", "xpath:position"] + ], + "value": "" + }, { + "id": "c84e7074-9572-433d-acf4-234894670909", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,312.8666687011719)", + "targets": [], + "value": "" + }, { + "id": "2967c6f4-2d72-4f7b-af3c-d855d4459231", + "comment": "", + "command": "select", + "target": "id=classcategory_id1", + "targets": [], + "value": "label=バニラ" + }, { + "id": "bce8d9b1-1015-4e40-a2b9-6a4d476bcb34", + "comment": "", + "command": "click", + "target": "css=#classcategory_id1 > option:nth-child(4)", + "targets": [ + ["css=#classcategory_id1 > option:nth-child(4)", "css:finder"], + ["xpath=(//option[@value='3'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id1']/option[4]", "xpath:idRelative"], + ["xpath=//div[2]/div/form/div/div/select/option[4]", "xpath:position"], + ["xpath=//option[contains(.,'バニラ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "2e49db80-2d2a-472d-9e53-06a7847d4ba0", + "comment": "", + "command": "select", + "target": "id=classcategory_id2", + "targets": [], + "value": "label=64cm × 64cm" + }, { + "id": "a84c30c8-7e7f-470a-8cc3-961f356b12ef", + "comment": "", + "command": "click", + "target": "css=#classcategory_id2 > option:nth-child(4)", + "targets": [ + ["css=#classcategory_id2 > option:nth-child(4)", "css:finder"], + ["xpath=(//option[@value='6'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id2']/option[4]", "xpath:idRelative"], + ["xpath=//div[2]/select/option[4]", "xpath:position"], + ["xpath=//option[contains(.,'64cm × 64cm')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "0776f560-74de-4c79-9427-a114079f2d3e", + "comment": "", + "command": "click", + "target": "css=.add-cart", + "targets": [ + ["css=.add-cart", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'カートに入れる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "b7f60f11-b8b9-4782-8c7d-93ae56370775", + "comment": "", + "command": "click", + "target": "linkText=カートへ進む", + "targets": [ + ["linkText=カートへ進む", "linkText"], + ["css=.ec-inlineBtn--action", "css:finder"], + ["xpath=(//a[contains(text(),'カートへ進む')])[2]", "xpath:link"], + ["xpath=//body[@id='page_product_detail']/div/div[2]/div/div/div/div[2]/div/div[6]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/cart')])[2]", "xpath:href"], + ["xpath=//div[6]/div/div/div[2]/div/a", "xpath:position"] + ], + "value": "" + }, { + "id": "21c887e1-10af-4b3b-947e-f5c024f911c0", + "comment": "", + "command": "click", + "target": "css=.ec-cartRow:nth-child(3) .ec-cartRow__amountUpButton img", + "targets": [ + ["css=.ec-cartRow:nth-child(3) .ec-cartRow__amountUpButton img", "css:finder"], + ["xpath=(//img[@alt='increase'])[2]", "xpath:img"], + ["xpath=//form[@id='form_cart']/div/div/ul[2]/li[3]/div[3]/a/span/img", "xpath:idRelative"], + ["xpath=//ul[2]/li[3]/div[3]/a/span/img", "xpath:position"] + ], + "value": "" + }, { + "id": "1a077328-7d24-43da-8cfc-4c63725336f7", + "comment": "", + "command": "click", + "target": "css=.ec-cartRow:nth-child(3) .ec-cartRow__amountDownButton img", + "targets": [ + ["css=.ec-cartRow:nth-child(3) .ec-cartRow__amountDownButton img", "css:finder"], + ["xpath=(//img[@alt='reduce'])[2]", "xpath:img"], + ["xpath=//form[@id='form_cart']/div/div/ul[2]/li[3]/div[3]/a/span/img", "xpath:idRelative"], + ["xpath=//ul[2]/li[3]/div[3]/a/span/img", "xpath:position"] + ], + "value": "" + }, { + "id": "c818362c-d737-4e3a-9e76-c01a08815425", + "comment": "", + "command": "click", + "target": "linkText=レジに進む", + "targets": [ + ["linkText=レジに進む", "linkText"], + ["css=.ec-blockBtn--action:nth-child(2)", "css:finder"], + ["xpath=//a[contains(text(),'レジに進む')]", "xpath:link"], + ["xpath=//form[@id='form_cart']/div[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, '/cart/buystep/kR3Ty6253q4UR3zb7Ut4PgtUjhKHe80A_1')]", "xpath:href"], + ["xpath=//form/div[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'レジに進む')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "9d13ea23-89d8-4a32-a732-ccb5d0a9df84", + "comment": "", + "command": "click", + "target": "linkText=ゲスト購入", + "targets": [ + ["linkText=ゲスト購入", "linkText"], + ["css=.ec-guest__actions > .ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'ゲスト購入')]", "xpath:link"], + ["xpath=//body[@id='page_shopping_login']/div/div[2]/div/div[2]/div/div[2]/div/div/div/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/shopping/nonmember')]", "xpath:href"], + ["xpath=//div[2]/div/div[2]/div/div/div/a", "xpath:position"], + ["xpath=//a[contains(.,'ゲスト購入')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "aaa1a397-227b-4946-b0b9-51f8eaf978aa", + "comment": "", + "command": "click", + "target": "id=nonmember_name_name01", + "targets": [ + ["id=nonmember_name_name01", "id"], + ["name=nonmember[name][name01]", "name"], + ["css=#nonmember_name_name01", "css:finder"], + ["xpath=//input[@id='nonmember_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "d7c876ea-88a8-4480-812d-a08bb398ec5c", + "comment": "", + "command": "type", + "target": "id=nonmember_name_name01", + "targets": [ + ["id=nonmember_name_name01", "id"], + ["name=nonmember[name][name01]", "name"], + ["css=#nonmember_name_name01", "css:finder"], + ["xpath=//input[@id='nonmember_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "石" + }, { + "id": "2aeb2d44-6063-4a71-a49d-6581154d4c7f", + "comment": "", + "command": "type", + "target": "id=nonmember_name_name02", + "targets": [ + ["id=nonmember_name_name02", "id"], + ["name=nonmember[name][name02]", "name"], + ["css=#nonmember_name_name02", "css:finder"], + ["xpath=//input[@id='nonmember_name_name02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//input[2]", "xpath:position"] + ], + "value": "九部" + }, { + "id": "347e87c0-b06f-4867-963a-9abea690f1ec", + "comment": "", + "command": "type", + "target": "id=nonmember_kana_kana01", + "targets": [ + ["id=nonmember_kana_kana01", "id"], + ["name=nonmember[kana][kana01]", "name"], + ["css=#nonmember_kana_kana01", "css:finder"], + ["xpath=//input[@id='nonmember_kana_kana01']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[2]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input", "xpath:position"] + ], + "value": "イシ" + }, { + "id": "a46ddd68-cb83-4634-b7ec-b561e781b0ac", + "comment": "", + "command": "type", + "target": "id=nonmember_kana_kana02", + "targets": [ + ["id=nonmember_kana_kana02", "id"], + ["name=nonmember[kana][kana02]", "name"], + ["css=#nonmember_kana_kana02", "css:finder"], + ["xpath=//input[@id='nonmember_kana_kana02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[2]/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input[2]", "xpath:position"] + ], + "value": "キューブ" + }, { + "id": "222002ae-26c0-42db-85e4-ba9b773e1116", + "comment": "", + "command": "type", + "target": "id=nonmember_company_name", + "targets": [ + ["id=nonmember_company_name", "id"], + ["name=nonmember[company_name]", "name"], + ["css=#nonmember_company_name", "css:finder"], + ["xpath=//input[@id='nonmember_company_name']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[3]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[3]/dd/div/input", "xpath:position"] + ], + "value": "イーシーキューブ株式会社" + }, { + "id": "8f311a9c-362f-47f6-aea6-477458d28745", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,331.8666687011719)", + "targets": [], + "value": "" + }, { + "id": "a163b3f6-b17e-4197-993f-bd910f07570c", + "comment": "", + "command": "type", + "target": "id=nonmember_postal_code", + "targets": [ + ["id=nonmember_postal_code", "id"], + ["name=nonmember[postal_code]", "name"], + ["css=#nonmember_postal_code", "css:finder"], + ["xpath=//input[@id='nonmember_postal_code']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[4]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[4]/dd/div/input", "xpath:position"] + ], + "value": "5300001" + }, { + "id": "f14f7d34-4931-4e44-8708-ded025ef29eb", + "comment": "", + "command": "click", + "target": "css=dl:nth-child(4) > dd", + "targets": [ + ["css=dl:nth-child(4) > dd", "css:finder"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[4]/dd", "xpath:idRelative"], + ["xpath=//dl[4]/dd", "xpath:position"] + ], + "value": "" + }, { + "id": "3e2ae78b-4567-448b-adc1-16eda580e20f", + "comment": "", + "command": "click", + "target": "id=nonmember_address_addr02", + "targets": [ + ["id=nonmember_address_addr02", "id"], + ["name=nonmember[address][addr02]", "name"], + ["css=#nonmember_address_addr02", "css:finder"], + ["xpath=//input[@id='nonmember_address_addr02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[4]/dd/div[4]/input", "xpath:idRelative"], + ["xpath=//div[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "77d4700b-73fa-4680-9c6d-7812c30619d4", + "comment": "", + "command": "type", + "target": "id=nonmember_address_addr02", + "targets": [ + ["id=nonmember_address_addr02", "id"], + ["name=nonmember[address][addr02]", "name"], + ["css=#nonmember_address_addr02", "css:finder"], + ["xpath=//input[@id='nonmember_address_addr02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[4]/dd/div[4]/input", "xpath:idRelative"], + ["xpath=//div[4]/input", "xpath:position"] + ], + "value": "1" + }, { + "id": "eff693af-ee3c-4c40-b0ec-cde64d173307", + "comment": "", + "command": "click", + "target": "css=.ec-telInput", + "targets": [ + ["css=.ec-telInput", "css:finder"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[5]/dd/div", "xpath:idRelative"], + ["xpath=//dl[5]/dd/div", "xpath:position"] + ], + "value": "" + }, { + "id": "acc45c0b-f706-4cee-ac34-2930671ceed6", + "comment": "", + "command": "click", + "target": "id=nonmember_phone_number", + "targets": [ + ["id=nonmember_phone_number", "id"], + ["name=nonmember[phone_number]", "name"], + ["css=#nonmember_phone_number", "css:finder"], + ["xpath=//input[@id='nonmember_phone_number']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[5]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[5]/dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "1baadf51-024b-49f9-ae16-a4a5d973331c", + "comment": "", + "command": "type", + "target": "id=nonmember_phone_number", + "targets": [ + ["id=nonmember_phone_number", "id"], + ["name=nonmember[phone_number]", "name"], + ["css=#nonmember_phone_number", "css:finder"], + ["xpath=//input[@id='nonmember_phone_number']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[5]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[5]/dd/div/input", "xpath:position"] + ], + "value": "333333333" + }, { + "id": "3cd29b40-347c-4379-9dbb-333ab5116d28", + "comment": "", + "command": "click", + "target": "id=nonmember_email_first", + "targets": [ + ["id=nonmember_email_first", "id"], + ["name=nonmember[email][first]", "name"], + ["css=#nonmember_email_first", "css:finder"], + ["xpath=//input[@id='nonmember_email_first']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[6]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[6]/dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "514b790f-05ee-4811-93a9-53f07492b28c", + "comment": "", + "command": "type", + "target": "id=nonmember_email_first", + "targets": [ + ["id=nonmember_email_first", "id"], + ["name=nonmember[email][first]", "name"], + ["css=#nonmember_email_first", "css:finder"], + ["xpath=//input[@id='nonmember_email_first']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[6]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[6]/dd/div/input", "xpath:position"] + ], + "value": "ec-cube@example.com" + }, { + "id": "f700349e-fcf8-46b0-8e0a-cd7987b1ff13", + "comment": "", + "command": "click", + "target": "id=nonmember_email_second", + "targets": [ + ["id=nonmember_email_second", "id"], + ["name=nonmember[email][second]", "name"], + ["css=#nonmember_email_second", "css:finder"], + ["xpath=//input[@id='nonmember_email_second']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[6]/dd/div[2]/input", "xpath:idRelative"], + ["xpath=//div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "25ba77e4-467a-4e4d-bb5c-f4413dc609f9", + "comment": "", + "command": "type", + "target": "id=nonmember_email_second", + "targets": [ + ["id=nonmember_email_second", "id"], + ["name=nonmember[email][second]", "name"], + ["css=#nonmember_email_second", "css:finder"], + ["xpath=//input[@id='nonmember_email_second']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div/dl[6]/dd/div[2]/input", "xpath:idRelative"], + ["xpath=//div[2]/input", "xpath:position"] + ], + "value": "ec-cube@example.com" + }, { + "id": "f2f10548-1d67-44bf-9482-3ee49e98e0a4", + "comment": "", + "command": "click", + "target": "css=.ec-off4Grid__cell > .ec-blockBtn--action", + "targets": [ + ["css=.ec-off4Grid__cell > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_nonmember']/div/div[2]/div/div/div[3]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'次へ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "94af36da-b820-4d8e-a114-7f442c7d3c30", + "comment": "", + "command": "click", + "target": "css=#shopping_order_Shippings_0_shipping_delivery_date > option", + "targets": [ + ["css=#shopping_order_Shippings_0_shipping_delivery_date > option", "css:finder"], + ["xpath=(//option[@value=''])[2]", "xpath:attributes"], + ["xpath=//select[@id='shopping_order_Shippings_0_shipping_delivery_date']/option", "xpath:idRelative"], + ["xpath=//div[2]/select/option", "xpath:position"], + ["xpath=//option[contains(.,'指定なし')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "a441aee7-fe7a-4be9-a2d7-dce6aaee49e4", + "comment": "", + "command": "select", + "target": "id=shopping_order_Shippings_0_DeliveryTime", + "targets": [], + "value": "label=午前" + }, { + "id": "c07da011-b76a-490c-a015-54d0cf650f03", + "comment": "", + "command": "click", + "target": "css=#shopping_order_Shippings_0_DeliveryTime > option:nth-child(2)", + "targets": [ + ["css=#shopping_order_Shippings_0_DeliveryTime > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[3]", "xpath:attributes"], + ["xpath=//select[@id='shopping_order_Shippings_0_DeliveryTime']/option[2]", "xpath:idRelative"], + ["xpath=//div[3]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'午前')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "1f10174a-56ea-45a7-b6d2-5e43b0229b95", + "comment": "", + "command": "click", + "target": "css=div:nth-child(4) > label > span", + "targets": [ + ["css=div:nth-child(4) > label > span", "css:finder"], + ["xpath=//form[@id='shopping-form']/div/div/div[3]/div[2]/div[4]/label/span", "xpath:idRelative"], + ["xpath=//div[4]/label/span", "xpath:position"], + ["xpath=//span[contains(.,'代金引換')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "a23fabca-72fc-4bb2-a235-c68c5c54ef4a", + "comment": "", + "command": "click", + "target": "css=.ec-totalBox__btn > .ec-blockBtn--action", + "targets": [ + ["css=.ec-totalBox__btn > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div[2]/div/div[3]/button", "xpath:idRelative"], + ["xpath=//div[3]/button", "xpath:position"], + ["xpath=//button[contains(.,'確認する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "20c52c65-0028-4aff-a4b8-71ec4edb81e4", + "comment": "", + "command": "mouseOver", + "target": "css=.ec-totalBox__btn > .ec-blockBtn--action", + "targets": [ + ["css=.ec-totalBox__btn > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div[2]/div/div[3]/button", "xpath:idRelative"], + ["xpath=//div[3]/button", "xpath:position"], + ["xpath=//button[contains(.,'確認する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "42d684e0-d71d-40e9-bcbd-c22031f59f9a", + "comment": "", + "command": "mouseOut", + "target": "css=.ec-totalBox__btn > .ec-blockBtn--action", + "targets": [ + ["css=.ec-totalBox__btn > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div[2]/div/div[3]/button", "xpath:idRelative"], + ["xpath=//div[3]/button", "xpath:position"], + ["xpath=//button[contains(.,'確認する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "eabd2cee-2e64-4d86-98c2-8a45c12239ef", + "comment": "", + "command": "click", + "target": "css=.ec-totalBox__btn > .ec-blockBtn--action", + "targets": [ + ["css=.ec-totalBox__btn > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div[2]/div/div[3]/button", "xpath:idRelative"], + ["xpath=//div[3]/button", "xpath:position"], + ["xpath=//button[contains(.,'注文する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "93620f0c-a764-4250-a4d6-8c51c6a248ca", + "comment": "", + "command": "click", + "target": "linkText=トップページへ", + "targets": [ + ["linkText=トップページへ", "linkText"], + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'トップページへ')]", "xpath:link"], + ["xpath=//body[@id='page_shopping_complete']/div/div[2]/div/div[3]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/')])[11]", "xpath:href"], + ["xpath=//div[2]/div/a", "xpath:position"], + ["xpath=//a[contains(.,'トップページへ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "a5413ff3-6cd3-4629-ac6c-39f4f36c63c7", + "comment": "", + "command": "chooseOkOnNextConfirmation", + "target": "", + "targets": [], + "value": "" + }, { + "id": "555f059d-70cd-4510-871f-0eeaeb024067", + "comment": "", + "command": "close", + "target": "", + "targets": [], + "value": "" + }] + }, { + "id": "30749fcc-d7dc-4ac7-b2d8-bb46a9a968bf", + "name": "お問い合わせ(ログイン)", + "commands": [{ + "id": "d8ea74c4-3409-4041-ab67-bea0cc54bf93", + "comment": "", + "command": "open", + "target": "/", + "targets": [], + "value": "" + }, { + "id": "5866df66-1e67-4cfe-a1ff-81d302bc4003", + "comment": "", + "command": "setWindowSize", + "target": "1160x693", + "targets": [], + "value": "" + }, { + "id": "5adf0377-1682-4e98-975c-57b09f8432e6", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,321.73333740234375)", + "targets": [], + "value": "" + }, { + "id": "42c8b2b0-aec9-4ef0-911d-d9488d1c9977", + "comment": "", + "command": "click", + "target": "linkText=お問い合わせ", + "targets": [ + ["linkText=お問い合わせ", "linkText"], + ["css=.ec-footerNavi__link:nth-child(4) > a", "css:finder"], + ["xpath=//a[contains(text(),'お問い合わせ')]", "xpath:link"], + ["xpath=//body[@id='page_homepage']/div/div[3]/div/div/ul/li[4]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/contact')]", "xpath:href"], + ["xpath=//li[4]/a", "xpath:position"], + ["xpath=//a[contains(.,'お問い合わせ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "38ea2e95-e1d1-4db9-b7d6-7ba2f1d1ba26", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,307.79998779296875)", + "targets": [], + "value": "" + }, { + "id": "02b8b2b0-7cae-4f9d-be53-b813397d63eb", + "comment": "", + "command": "click", + "target": "id=contact_contents", + "targets": [ + ["id=contact_contents", "id"], + ["name=contact[contents]", "name"], + ["css=#contact_contents", "css:finder"], + ["xpath=//textarea[@id='contact_contents']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl[6]/dd/div/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "25a4dda9-8dcb-45e5-9a80-c0e1552c7648", + "comment": "", + "command": "type", + "target": "id=contact_contents", + "targets": [ + ["id=contact_contents", "id"], + ["name=contact[contents]", "name"], + ["css=#contact_contents", "css:finder"], + ["xpath=//textarea[@id='contact_contents']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div/dl[6]/dd/div/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "お問い合わせのテスト" + }, { + "id": "52399b20-861e-4de0-990f-ca78ccec5798", + "comment": "", + "command": "click", + "target": "name=mode", + "targets": [ + ["name=mode", "name"], + ["css=.ec-blockBtn--action", "css:finder"], + ["xpath=//button[@name='mode']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'確認ページへ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "23bc91a6-7ed4-4ede-8a4f-583ccc609ee6", + "comment": "", + "command": "mouseOver", + "target": "name=mode", + "targets": [ + ["name=mode", "name"], + ["css=.ec-blockBtn--action", "css:finder"], + ["xpath=//button[@name='mode']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'確認ページへ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "b30f7b98-8286-4e2d-9d56-a1ffe7abfb5e", + "comment": "", + "command": "mouseOut", + "target": "name=mode", + "targets": [ + ["name=mode", "name"], + ["css=.ec-blockBtn--action", "css:finder"], + ["xpath=//button[@name='mode']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'確認ページへ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "5389872b-14f8-443d-847e-29bad889a531", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,363.5333251953125)", + "targets": [], + "value": "" + }, { + "id": "59ba9aed-b652-434e-b8ff-a0141273001b", + "comment": "", + "command": "click", + "target": "name=mode", + "targets": [ + ["name=mode", "name"], + ["css=.ec-blockBtn--action", "css:finder"], + ["xpath=//button[@name='mode']", "xpath:attributes"], + ["xpath=//body[@id='page_contact']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'送信する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "30e07db1-a1b6-416d-8804-37f16f8c99fb", + "comment": "", + "command": "click", + "target": "linkText=トップページへ", + "targets": [ + ["linkText=トップページへ", "linkText"], + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'トップページへ')]", "xpath:link"], + ["xpath=//body[@id='page_contact_complete']/div/div[2]/div/div[2]/div/div/div[3]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/')])[11]", "xpath:href"], + ["xpath=//div[3]/div/a", "xpath:position"], + ["xpath=//a[contains(.,'トップページへ')]", "xpath:innerText"] + ], + "value": "" + }] + }, { + "id": "45f29c3b-c4e9-48bc-a433-770b13f3c2bd", + "name": "パスワード再発行", + "commands": [{ + "id": "2186e0e3-5ef6-43d5-8937-80f67666dff6", + "comment": "", + "command": "open", + "target": "/", + "targets": [], + "value": "" + }, { + "id": "eea18b28-43a1-4d4d-b10a-d0f338734fb3", + "comment": "", + "command": "setWindowSize", + "target": "1160x693", + "targets": [], + "value": "" + }, { + "id": "94152a2a-acac-4ebf-abf1-713e7ba9fe89", + "comment": "", + "command": "click", + "target": "css=.ec-headerNav__item:nth-child(3) .ec-headerNav__itemLink", + "targets": [ + ["css=.ec-headerNav__item:nth-child(3) .ec-headerNav__itemLink", "css:finder"], + ["xpath=//body[@id='page_homepage']/div/div/div/div[2]/div/div/div[3]/a/span", "xpath:idRelative"], + ["xpath=//div[3]/a/span", "xpath:position"], + ["xpath=//span[contains(.,'ログイン')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "a8e507ec-4b94-4062-b7e2-ac39390b8801", + "comment": "", + "command": "click", + "target": "linkText=ログイン情報をお忘れですか?", + "targets": [ + ["linkText=ログイン情報をお忘れですか?", "linkText"], + ["css=.ec-login__link:nth-child(1) > .ec-link", "css:finder"], + ["xpath=//a[contains(text(),'ログイン情報をお忘れですか?')]", "xpath:link"], + ["xpath=//form[@id='login_mypage']/div/div[3]/div[2]/div/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/forgot')]", "xpath:href"], + ["xpath=//div[2]/div/a", "xpath:position"], + ["xpath=//a[contains(.,'ログイン情報をお忘れですか?')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "505a6289-f925-4933-96a5-e9f181be5c2a", + "comment": "", + "command": "click", + "target": "id=login_email", + "targets": [ + ["id=login_email", "id"], + ["name=login_email", "name"], + ["css=#login_email", "css:finder"], + ["xpath=//input[@id='login_email']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div/div/div/div[2]/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "59f7b8d9-a6bb-4d01-b5e2-ee33df2cff3c", + "comment": "", + "command": "type", + "target": "id=login_email", + "targets": [ + ["id=login_email", "id"], + ["name=login_email", "name"], + ["css=#login_email", "css:finder"], + ["xpath=//input[@id='login_email']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div/div/div/div[2]/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "zap_user_guest@example.com" + }, { + "id": "7b1878ff-03d4-41e9-b51c-1bec90259cc6", + "comment": "", + "command": "click", + "target": "css=.ec-blockBtn--action", + "targets": [ + ["css=.ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/div/button", "xpath:idRelative"], + ["xpath=//div[2]/form/div[2]/div/button", "xpath:position"], + ["xpath=//button[contains(.,'次へ')]", "xpath:innerText"] + ], + "value": "" + }] + }, { + "id": "35d9fe92-2e6f-4c22-be4f-ce68a5a53756", + "name": "商品購入(ログイン)", + "commands": [{ + "id": "12d9a8f1-3dfa-4fc6-88d3-377df5598602", + "comment": "", + "command": "open", + "target": "/", + "targets": [], + "value": "" + }, { + "id": "7bcd2e4a-2e0e-4dd9-8376-c6849716e32e", + "comment": "", + "command": "setWindowSize", + "target": "1160x693", + "targets": [], + "value": "" + }, { + "id": "20207428-d03b-409b-b422-cd4f5f3cd87b", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_homepage']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "07a9c97e-6a42-4809-88e2-db79eb7cc0e6", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(1) .ec-blockBtn--action", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(1) .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li/div/button", "xpath:idRelative"], + ["xpath=//li/div/button", "xpath:position"], + ["xpath=//button[contains(.,'カートに入れる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "1fe3bf77-d475-42db-8813-82ba7d46f9d9", + "comment": "", + "command": "click", + "target": "linkText=カートへ進む", + "targets": [ + ["linkText=カートへ進む", "linkText"], + ["css=.ec-inlineBtn--action", "css:finder"], + ["xpath=(//a[contains(text(),'カートへ進む')])[2]", "xpath:link"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[3]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/cart')])[2]", "xpath:href"], + ["xpath=//div[3]/div/div/div[2]/div/a", "xpath:position"] + ], + "value": "" + }, { + "id": "c93a10d2-f0c0-41d7-b47c-3bab0174b6b3", + "comment": "", + "command": "click", + "target": "linkText=お買い物を続ける", + "targets": [ + ["linkText=お買い物を続ける", "linkText"], + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'お買い物を続ける')]", "xpath:link"], + ["xpath=//form[@id='form_cart']/div[3]/a[2]", "xpath:idRelative"], + ["xpath=(//a[contains(@href, '/')])[17]", "xpath:href"], + ["xpath=//div[3]/a[2]", "xpath:position"], + ["xpath=//a[contains(.,'お買い物を続ける')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "f9726a1f-c8bc-4eb4-8c8e-d9e61b59e8dd", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_homepage']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "32435465-d677-49d7-97df-867e1e7194a4", + "comment": "", + "command": "click", + "target": "id=classcategory_id11", + "targets": [ + ["id=classcategory_id11", "id"], + ["name=classcategory_id1", "name"], + ["css=#classcategory_id11", "css:finder"], + ["xpath=//select[@id='classcategory_id11']", "xpath:attributes"], + ["xpath=//form[@id='productForm1']/div/div/select", "xpath:idRelative"], + ["xpath=//li[2]/form/div/div/select", "xpath:position"] + ], + "value": "" + }, { + "id": "5e7b4d40-414f-426d-878c-afe139358ff6", + "comment": "", + "command": "select", + "target": "id=classcategory_id11", + "targets": [], + "value": "label=チョコ" + }, { + "id": "40ff6ebc-05e2-4197-aaea-17a1eac9445c", + "comment": "", + "command": "click", + "target": "css=#classcategory_id11 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id11 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[4]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id11']/option[2]", "xpath:idRelative"], + ["xpath=//li[2]/form/div/div/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'チョコ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "ebd06755-82a7-45f5-879c-830b61aca9df", + "comment": "", + "command": "select", + "target": "id=classcategory_id21", + "targets": [], + "value": "label=16mm × 16mm" + }, { + "id": "f4e062c8-90ea-4bce-978e-d0c7b8d03b17", + "comment": "", + "command": "click", + "target": "css=#classcategory_id21 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id21 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='4'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id21']/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'16mm × 16mm')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "3816cd3e-da65-4ea2-803d-8d8599f9d8d8", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(2) .ec-blockBtn--action", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(2) .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[3]", "xpath:attributes"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li[2]/div/button", "xpath:idRelative"], + ["xpath=//li[2]/div/button", "xpath:position"] + ], + "value": "" + }, { + "id": "9c188f89-9000-4a34-90e0-9f2217ac1924", + "comment": "", + "command": "click", + "target": "css=.ec-inlineBtn--cancel", + "targets": [ + ["css=.ec-inlineBtn--cancel", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[3]/div/div/div[2]/div/label", "xpath:idRelative"], + ["xpath=//div[2]/div/label", "xpath:position"], + ["xpath=//label[contains(.,'お買い物を続ける')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "235affcb-5e86-48e5-afae-d12a51f67e83", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(1) img", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(1) img", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li/a/p/img", "xpath:idRelative"], + ["xpath=//p/img", "xpath:position"] + ], + "value": "" + }, { + "id": "bfb18543-786c-4755-9d84-c0a55de7ec5c", + "comment": "", + "command": "click", + "target": "css=.add-cart", + "targets": [ + ["css=.add-cart", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'カートに入れる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "a144a0e6-bf9a-469f-8e26-c6d342c3c6a1", + "comment": "", + "command": "click", + "target": "linkText=カートへ進む", + "targets": [ + ["linkText=カートへ進む", "linkText"], + ["css=.ec-inlineBtn--action", "css:finder"], + ["xpath=(//a[contains(text(),'カートへ進む')])[2]", "xpath:link"], + ["xpath=//body[@id='page_product_detail']/div/div[2]/div/div/div/div[2]/div/div[5]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/cart')])[2]", "xpath:href"], + ["xpath=//div[5]/div/div/div[2]/div/a", "xpath:position"] + ], + "value": "" + }, { + "id": "8ed07c86-1e1e-4093-a72c-0c09aab60536", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_cart']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "b52bb6a6-61a0-4e2a-9fde-3b44c6cee9b7", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(2) img", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(2) img", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li[2]/a/p/img", "xpath:idRelative"], + ["xpath=//li[2]/a/p/img", "xpath:position"] + ], + "value": "" + }, { + "id": "939d101b-f705-4fc5-a933-f384aa13ea3d", + "comment": "", + "command": "select", + "target": "id=classcategory_id1", + "targets": [], + "value": "label=チョコ" + }, { + "id": "f348c7bb-d7fc-423a-b87a-52b4f11b0ada", + "comment": "", + "command": "click", + "target": "css=#classcategory_id1 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id1 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id1']/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/div/form/div/div/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'チョコ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "abad7282-3c89-41dc-a5ee-db05bdb80fb3", + "comment": "", + "command": "select", + "target": "id=classcategory_id2", + "targets": [], + "value": "label=16mm × 16mm" + }, { + "id": "a7971844-1815-4a4e-9619-a7bc45d87aa7", + "comment": "", + "command": "click", + "target": "css=#classcategory_id2 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id2 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='4'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id2']/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'16mm × 16mm')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "64de0afe-38f4-4b8a-89cb-61dc88ee885c", + "comment": "", + "command": "click", + "target": "css=.add-cart", + "targets": [ + ["css=.add-cart", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'カートに入れる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "8f49dde8-33ab-4d8e-8d0d-aa4e1f7232f4", + "comment": "", + "command": "click", + "target": "linkText=カートへ進む", + "targets": [ + ["linkText=カートへ進む", "linkText"], + ["css=.ec-inlineBtn--action", "css:finder"], + ["xpath=(//a[contains(text(),'カートへ進む')])[2]", "xpath:link"], + ["xpath=//body[@id='page_product_detail']/div/div[2]/div/div/div/div[2]/div/div[6]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/cart')])[2]", "xpath:href"], + ["xpath=//div[6]/div/div/div[2]/div/a", "xpath:position"] + ], + "value": "" + }, { + "id": "6db11f82-aeeb-4eb6-86ea-2e1a1859f61c", + "comment": "", + "command": "click", + "target": "linkText=レジに進む", + "targets": [ + ["linkText=レジに進む", "linkText"], + ["css=.ec-blockBtn--action:nth-child(2)", "css:finder"], + ["xpath=//a[contains(text(),'レジに進む')]", "xpath:link"], + ["xpath=//form[@id='form_cart']/div[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, '/cart/buystep/1_1')]", "xpath:href"], + ["xpath=//form/div[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'レジに進む')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "db01a59c-3db1-48ea-ba14-09dc9aea6131", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,305.26666259765625)", + "targets": [], + "value": "" + }, { + "id": "93377227-cb1a-481f-aeb1-78623c78b0c9", + "comment": "", + "command": "click", + "target": "id=shopping_order_Shippings_0_Delivery", + "targets": [ + ["id=shopping_order_Shippings_0_Delivery", "id"], + ["name=_shopping_order[Shippings][0][Delivery]", "name"], + ["css=#shopping_order_Shippings_0_Delivery", "css:finder"], + ["xpath=//select[@id='shopping_order_Shippings_0_Delivery']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[2]/div[5]/div/div/select", "xpath:idRelative"], + ["xpath=//div[5]/div/div/select", "xpath:position"], + ["xpath=//select[contains(.,'サンプル業者')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e94b0c9c-d7d3-4d56-82a5-d403af99cd08", + "comment": "", + "command": "click", + "target": "id=shopping_order_Shippings_0_DeliveryTime", + "targets": [ + ["id=shopping_order_Shippings_0_DeliveryTime", "id"], + ["name=_shopping_order[Shippings][0][DeliveryTime]", "name"], + ["css=#shopping_order_Shippings_0_DeliveryTime", "css:finder"], + ["xpath=//select[@id='shopping_order_Shippings_0_DeliveryTime']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[2]/div[5]/div/div[3]/select", "xpath:idRelative"], + ["xpath=//div[3]/select", "xpath:position"] + ], + "value": "" + }, { + "id": "066895ad-7495-4d3f-8d14-356c4dfaf46d", + "comment": "", + "command": "select", + "target": "id=shopping_order_Shippings_0_DeliveryTime", + "targets": [], + "value": "label=午後" + }, { + "id": "77f4ec3c-2f18-4c85-8554-332486744fb5", + "comment": "", + "command": "click", + "target": "css=#shopping_order_Shippings_0_DeliveryTime > option:nth-child(3)", + "targets": [ + ["css=#shopping_order_Shippings_0_DeliveryTime > option:nth-child(3)", "css:finder"], + ["xpath=(//option[@value='2'])[2]", "xpath:attributes"], + ["xpath=//select[@id='shopping_order_Shippings_0_DeliveryTime']/option[3]", "xpath:idRelative"], + ["xpath=//div[3]/select/option[3]", "xpath:position"], + ["xpath=//option[contains(.,'午後')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "b75a5213-478d-4723-b0b5-3eab4190b286", + "comment": "", + "command": "click", + "target": "css=div:nth-child(4) > label", + "targets": [ + ["css=div:nth-child(4) > label", "css:finder"], + ["xpath=//form[@id='shopping-form']/div/div/div[3]/div[2]/div[4]/label", "xpath:idRelative"], + ["xpath=//div[4]/label", "xpath:position"], + ["xpath=//label[contains(.,'代金引換')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "efcc6310-a83f-46a9-8c35-085b594e98b6", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,343.26666259765625)", + "targets": [], + "value": "" + }, { + "id": "4703e864-9b4b-4760-b6db-844523bd2922", + "comment": "", + "command": "click", + "target": "id=shopping_order_use_point", + "targets": [ + ["id=shopping_order_use_point", "id"], + ["name=_shopping_order[use_point]", "name"], + ["css=#shopping_order_use_point", "css:finder"], + ["xpath=//input[@id='shopping_order_use_point']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[4]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "c21afda7-cfb6-4d47-8931-a4ea3afaa1e1", + "comment": "", + "command": "click", + "target": "id=shopping_order_use_point", + "targets": [ + ["id=shopping_order_use_point", "id"], + ["name=_shopping_order[use_point]", "name"], + ["css=#shopping_order_use_point", "css:finder"], + ["xpath=//input[@id='shopping_order_use_point']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[4]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "b9e45263-297a-47b2-be6c-a80e70bcbab2", + "comment": "", + "command": "doubleClick", + "target": "id=shopping_order_use_point", + "targets": [ + ["id=shopping_order_use_point", "id"], + ["name=_shopping_order[use_point]", "name"], + ["css=#shopping_order_use_point", "css:finder"], + ["xpath=//input[@id='shopping_order_use_point']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[4]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "8f080440-d3f8-412a-86cf-49fc959fed93", + "comment": "", + "command": "type", + "target": "id=shopping_order_use_point", + "targets": [ + ["id=shopping_order_use_point", "id"], + ["name=_shopping_order[use_point]", "name"], + ["css=#shopping_order_use_point", "css:finder"], + ["xpath=//input[@id='shopping_order_use_point']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[4]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/input", "xpath:position"] + ], + "value": "1" + }, { + "id": "ab9ed110-4d4a-4743-bb7d-569356c0c4fa", + "comment": "", + "command": "click", + "target": "id=shopping_order_message", + "targets": [ + ["id=shopping_order_message", "id"], + ["name=_shopping_order[message]", "name"], + ["css=#shopping_order_message", "css:finder"], + ["xpath=//textarea[@id='shopping_order_message']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[5]/div[2]/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "75b5c0e4-f0cb-4aac-9d3a-b30f2c8b1b27", + "comment": "", + "command": "type", + "target": "id=shopping_order_message", + "targets": [ + ["id=shopping_order_message", "id"], + ["name=_shopping_order[message]", "name"], + ["css=#shopping_order_message", "css:finder"], + ["xpath=//textarea[@id='shopping_order_message']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[5]/div[2]/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "商品購入のテスト" + }, { + "id": "880755e3-c565-45bc-895f-6104b2d4f24a", + "comment": "", + "command": "click", + "target": "css=.ec-totalBox__btn > .ec-blockBtn--action", + "targets": [ + ["css=.ec-totalBox__btn > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div[2]/div/div[5]/button", "xpath:idRelative"], + ["xpath=//div[5]/button", "xpath:position"], + ["xpath=//button[contains(.,'確認する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "92408a52-7373-4bec-868a-a4c6599893fc", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,349.6000061035156)", + "targets": [], + "value": "" + }, { + "id": "6439b7b5-8c04-44a7-888f-ed3dc08735b3", + "comment": "", + "command": "click", + "target": "css=.ec-totalBox__btn > .ec-blockBtn--action", + "targets": [ + ["css=.ec-totalBox__btn > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div[2]/div/div[5]/button", "xpath:idRelative"], + ["xpath=//div[5]/button", "xpath:position"], + ["xpath=//button[contains(.,'注文する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "cc4e937c-3b14-415e-aae3-f8101e5c1011", + "comment": "", + "command": "click", + "target": "linkText=トップページへ", + "targets": [ + ["linkText=トップページへ", "linkText"], + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'トップページへ')]", "xpath:link"], + ["xpath=//body[@id='page_shopping_complete']/div/div[2]/div/div[3]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/')])[11]", "xpath:href"], + ["xpath=//div[2]/div/a", "xpath:position"], + ["xpath=//a[contains(.,'トップページへ')]", "xpath:innerText"] + ], + "value": "" + }] + }, { + "id": "9d966310-b239-4084-95c9-3c4aec4ec77f", + "name": "商品購入(複数配送先)(ログイン)", + "commands": [{ + "id": "0e5dd79e-0dce-41dd-a004-4cca5ea59ca4", + "comment": "", + "command": "open", + "target": "/", + "targets": [], + "value": "" + }, { + "id": "47fa5173-b26e-4232-8ed9-643337449ea3", + "comment": "", + "command": "setWindowSize", + "target": "1160x694", + "targets": [], + "value": "" + }, { + "id": "febbba39-0f48-45d7-92f4-6d8ae4c190b8", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_homepage']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "0a745a06-8394-451f-aaa0-97b8dd677fa0", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(1) .ec-blockBtn--action", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(1) .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li/div/button", "xpath:idRelative"], + ["xpath=//li/div/button", "xpath:position"], + ["xpath=//button[contains(.,'カートに入れる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "0eaa154d-25a2-488c-8b2a-4a501f8c97e5", + "comment": "", + "command": "click", + "target": "css=.ec-inlineBtn--cancel", + "targets": [ + ["css=.ec-inlineBtn--cancel", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[3]/div/div/div[2]/div/label", "xpath:idRelative"], + ["xpath=//div[2]/div/label", "xpath:position"], + ["xpath=//label[contains(.,'お買い物を続ける')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "d83c4dc2-cd7d-43cd-bd11-fb5ac58de2b6", + "comment": "", + "command": "click", + "target": "id=classcategory_id11", + "targets": [ + ["id=classcategory_id11", "id"], + ["name=classcategory_id1", "name"], + ["css=#classcategory_id11", "css:finder"], + ["xpath=//select[@id='classcategory_id11']", "xpath:attributes"], + ["xpath=//form[@id='productForm1']/div/div/select", "xpath:idRelative"], + ["xpath=//li[2]/form/div/div/select", "xpath:position"] + ], + "value": "" + }, { + "id": "7fec15cc-bb2f-410c-ac1f-1620d9b1160f", + "comment": "", + "command": "select", + "target": "id=classcategory_id11", + "targets": [], + "value": "label=チョコ" + }, { + "id": "c45ca11b-52a2-4450-9e9f-4a982be3de41", + "comment": "", + "command": "click", + "target": "css=#classcategory_id11 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id11 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[4]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id11']/option[2]", "xpath:idRelative"], + ["xpath=//li[2]/form/div/div/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'チョコ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "7479d8e7-9748-4474-91b9-b08af145ca2e", + "comment": "", + "command": "click", + "target": "css=.ec-select:nth-child(2)", + "targets": [ + ["css=.ec-select:nth-child(2)", "css:finder"], + ["xpath=//form[@id='productForm1']/div/div[2]", "xpath:idRelative"], + ["xpath=//form/div/div[2]", "xpath:position"] + ], + "value": "" + }, { + "id": "6093cc07-e555-4b3f-9267-07b30b0240d1", + "comment": "", + "command": "select", + "target": "id=classcategory_id21", + "targets": [], + "value": "label=16mm × 16mm" + }, { + "id": "b5489b9c-76d2-483f-b902-2da3373b461f", + "comment": "", + "command": "click", + "target": "css=#classcategory_id21 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id21 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='4'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id21']/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'16mm × 16mm')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "7057eee2-c92e-4f88-8ef9-d5bfe34326aa", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(2) .ec-blockBtn--action", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(2) .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[3]", "xpath:attributes"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li[2]/div/button", "xpath:idRelative"], + ["xpath=//li[2]/div/button", "xpath:position"] + ], + "value": "" + }, { + "id": "ce1d01ec-7842-4e20-82ba-7339186c1014", + "comment": "", + "command": "click", + "target": "css=.ec-inlineBtn--cancel", + "targets": [ + ["css=.ec-inlineBtn--cancel", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[3]/div/div/div[2]/div/label", "xpath:idRelative"], + ["xpath=//div[2]/div/label", "xpath:position"], + ["xpath=//label[contains(.,'お買い物を続ける')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "0c8bffde-6fe0-4785-b531-81cbf3d5f5f8", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(1) img", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(1) img", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li/a/p/img", "xpath:idRelative"], + ["xpath=//p/img", "xpath:position"] + ], + "value": "" + }, { + "id": "981e31a4-9864-4f11-bcf3-2f9c32e59f1e", + "comment": "", + "command": "click", + "target": "css=.add-cart", + "targets": [ + ["css=.add-cart", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'カートに入れる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "fee5204b-ecca-4edd-b198-4b3a190526b8", + "comment": "", + "command": "click", + "target": "css=.ec-inlineBtn--cancel", + "targets": [ + ["css=.ec-inlineBtn--cancel", "css:finder"], + ["xpath=//body[@id='page_product_detail']/div/div[2]/div/div/div/div[2]/div/div[5]/div/div/div[2]/div/label", "xpath:idRelative"], + ["xpath=//div[2]/div/label", "xpath:position"], + ["xpath=//label[contains(.,'お買い物を続ける')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "8b35e510-74fc-4892-9435-3b1e49995a7e", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_product_detail']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "52cf4076-4f5a-4c8e-b48d-aedbe4e49f84", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(2) img", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(2) img", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li[2]/a/p/img", "xpath:idRelative"], + ["xpath=//li[2]/a/p/img", "xpath:position"] + ], + "value": "" + }, { + "id": "5b5cc76e-7867-47e7-93d8-819b4cca9821", + "comment": "", + "command": "click", + "target": "id=classcategory_id1", + "targets": [ + ["id=classcategory_id1", "id"], + ["name=classcategory_id1", "name"], + ["css=#classcategory_id1", "css:finder"], + ["xpath=//select[@id='classcategory_id1']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div/div/select", "xpath:idRelative"], + ["xpath=//div[2]/div/form/div/div/select", "xpath:position"] + ], + "value": "" + }, { + "id": "1f97b4ed-c947-4a92-a4bb-bfd600e91c2f", + "comment": "", + "command": "select", + "target": "id=classcategory_id1", + "targets": [], + "value": "label=チョコ" + }, { + "id": "fc8a0737-57e0-4512-ae21-6bcf2d0ce75d", + "comment": "", + "command": "click", + "target": "css=#classcategory_id1 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id1 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id1']/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/div/form/div/div/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'チョコ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "27a8036c-14e0-4ad5-9eef-da88ef52b875", + "comment": "", + "command": "click", + "target": "id=classcategory_id2", + "targets": [ + ["id=classcategory_id2", "id"], + ["name=classcategory_id2", "name"], + ["css=#classcategory_id2", "css:finder"], + ["xpath=//select[@id='classcategory_id2']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div/div[2]/select", "xpath:idRelative"], + ["xpath=//div[2]/select", "xpath:position"] + ], + "value": "" + }, { + "id": "ad48981c-5f06-4f0f-92b9-4a47c1098732", + "comment": "", + "command": "select", + "target": "id=classcategory_id2", + "targets": [], + "value": "label=64cm × 64cm" + }, { + "id": "2f47f8f9-b61d-478e-b07b-040a0528d938", + "comment": "", + "command": "click", + "target": "css=#classcategory_id2 > option:nth-child(4)", + "targets": [ + ["css=#classcategory_id2 > option:nth-child(4)", "css:finder"], + ["xpath=(//option[@value='6'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id2']/option[4]", "xpath:idRelative"], + ["xpath=//div[2]/select/option[4]", "xpath:position"], + ["xpath=//option[contains(.,'64cm × 64cm')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "f784ab3c-598b-4940-9259-e3b8ea9a32c5", + "comment": "", + "command": "click", + "target": "css=.add-cart", + "targets": [ + ["css=.add-cart", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'カートに入れる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e69a27c5-86be-40e6-ae2e-81cb21fbb2fa", + "comment": "", + "command": "click", + "target": "linkText=カートへ進む", + "targets": [ + ["linkText=カートへ進む", "linkText"], + ["css=.ec-inlineBtn--action", "css:finder"], + ["xpath=(//a[contains(text(),'カートへ進む')])[2]", "xpath:link"], + ["xpath=//body[@id='page_product_detail']/div/div[2]/div/div/div/div[2]/div/div[6]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/cart')])[2]", "xpath:href"], + ["xpath=//div[6]/div/div/div[2]/div/a", "xpath:position"] + ], + "value": "" + }, { + "id": "3b8c937f-a47c-458e-9229-7ee3d1219e62", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,302.73333740234375)", + "targets": [], + "value": "" + }, { + "id": "c7bd40dc-07b5-4250-b9d1-c2cba3b3b2ec", + "comment": "", + "command": "click", + "target": "css=.ec-cartRow:nth-child(3) .ec-cartRow__amountUpButton img", + "targets": [ + ["css=.ec-cartRow:nth-child(3) .ec-cartRow__amountUpButton img", "css:finder"], + ["xpath=(//img[@alt='increase'])[2]", "xpath:img"], + ["xpath=//form[@id='form_cart']/div/div/ul[2]/li[3]/div[3]/a/span/img", "xpath:idRelative"], + ["xpath=//ul[2]/li[3]/div[3]/a/span/img", "xpath:position"] + ], + "value": "" + }, { + "id": "2061a2cb-3d21-41f9-88a4-1f72ee5b0d28", + "comment": "", + "command": "mouseOver", + "target": "css=.ec-cartRow:nth-child(3) .ec-cartRow__amountUpButton img", + "targets": [ + ["css=.ec-cartRow:nth-child(3) .ec-cartRow__amountUpButton img", "css:finder"], + ["xpath=(//img[@alt='increase'])[2]", "xpath:img"], + ["xpath=//form[@id='form_cart']/div/div/ul[2]/li[3]/div[3]/a/span/img", "xpath:idRelative"], + ["xpath=//ul[2]/li[3]/div[3]/a/span/img", "xpath:position"] + ], + "value": "" + }, { + "id": "97744677-c19a-4d1d-a030-ce1cd443b48b", + "comment": "", + "command": "mouseOut", + "target": "css=.ec-cartRow:nth-child(3) .ec-cartRow__amountUpButton img", + "targets": [ + ["css=.ec-cartRow:nth-child(3) .ec-cartRow__amountUpButton img", "css:finder"], + ["xpath=(//img[@alt='increase'])[2]", "xpath:img"], + ["xpath=//form[@id='form_cart']/div/div/ul[2]/li[3]/div[3]/a/span/img", "xpath:idRelative"], + ["xpath=//ul[2]/li[3]/div[3]/a/span/img", "xpath:position"] + ], + "value": "" + }, { + "id": "124b7fac-f90b-4246-891b-0c036eefac32", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,310.3333435058594)", + "targets": [], + "value": "" + }, { + "id": "d37477e4-39f3-46a1-837b-b574a3a96e7b", + "comment": "", + "command": "click", + "target": "css=.ec-cartRow:nth-child(3) .ec-cartRow__amountDownButton", + "targets": [ + ["css=.ec-cartRow:nth-child(3) .ec-cartRow__amountDownButton", "css:finder"], + ["xpath=//form[@id='form_cart']/div/div/ul[2]/li[3]/div[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/cart/down/10')]", "xpath:href"], + ["xpath=//ul[2]/li[3]/div[3]/a", "xpath:position"] + ], + "value": "" + }, { + "id": "bfa9d44c-3143-4abd-94a6-2936aa091f6a", + "comment": "", + "command": "click", + "target": "linkText=レジに進む", + "targets": [ + ["linkText=レジに進む", "linkText"], + ["css=.ec-blockBtn--action:nth-child(2)", "css:finder"], + ["xpath=//a[contains(text(),'レジに進む')]", "xpath:link"], + ["xpath=//form[@id='form_cart']/div[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, '/cart/buystep/1_1')]", "xpath:href"], + ["xpath=//form/div[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'レジに進む')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "d73c72f7-f3ef-4c0f-ad32-d538f19f9808", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,302.73333740234375)", + "targets": [], + "value": "" + }, { + "id": "f34031e8-8f77-4846-a523-f86e65f6e5ef", + "comment": "", + "command": "click", + "target": "css=.ec-orderDelivery__edit > .ec-inlineBtn", + "targets": [ + ["css=.ec-orderDelivery__edit > .ec-inlineBtn", "css:finder"], + ["xpath=//button[@type='button']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[2]/div[6]/button", "xpath:idRelative"], + ["xpath=//div[6]/button", "xpath:position"], + ["xpath=//button[contains(.,'お届け先を追加する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "9cd7bff0-955f-4da8-a4d9-4405a9cf81e5", + "comment": "", + "command": "click", + "target": "linkText=新規お届け先を追加する", + "targets": [ + ["linkText=新規お届け先を追加する", "linkText"], + ["css=.btn:nth-child(1)", "css:finder"], + ["xpath=//a[contains(text(),'新規お届け先を追加する')]", "xpath:link"], + ["xpath=//form[@id='shipping-multiple-form']/div[2]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/shopping/shipping_multiple_edit')]", "xpath:href"], + ["xpath=//form/div[2]/a", "xpath:position"], + ["xpath=//a[contains(.,'新規お届け先を追加する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "d57339e2-e98b-4271-9979-5ac73bf011d6", + "comment": "", + "command": "click", + "target": "id=shopping_shipping_name_name01", + "targets": [ + ["id=shopping_shipping_name_name01", "id"], + ["name=shopping_shipping[name][name01]", "name"], + ["css=#shopping_shipping_name_name01", "css:finder"], + ["xpath=//input[@id='shopping_shipping_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "d9ce43db-9723-4ff1-aa7f-0bdb7e3939a7", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_name_name01", + "targets": [ + ["id=shopping_shipping_name_name01", "id"], + ["name=shopping_shipping[name][name01]", "name"], + ["css=#shopping_shipping_name_name01", "css:finder"], + ["xpath=//input[@id='shopping_shipping_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "石井" + }, { + "id": "c1d6928c-5e9c-4a61-b5c0-c8ce50f34544", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_name_name02", + "targets": [ + ["id=shopping_shipping_name_name02", "id"], + ["name=shopping_shipping[name][name02]", "name"], + ["css=#shopping_shipping_name_name02", "css:finder"], + ["xpath=//input[@id='shopping_shipping_name_name02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//input[2]", "xpath:position"] + ], + "value": "給部" + }, { + "id": "f96a4b04-668e-4067-ae5f-0bbd7f086834", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_kana_kana01", + "targets": [ + ["id=shopping_shipping_kana_kana01", "id"], + ["name=shopping_shipping[kana][kana01]", "name"], + ["css=#shopping_shipping_kana_kana01", "css:finder"], + ["xpath=//input[@id='shopping_shipping_kana_kana01']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[2]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input", "xpath:position"] + ], + "value": "イシイ" + }, { + "id": "19b4f791-8bee-48dc-836e-c1e0a9920c24", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_kana_kana02", + "targets": [ + ["id=shopping_shipping_kana_kana02", "id"], + ["name=shopping_shipping[kana][kana02]", "name"], + ["css=#shopping_shipping_kana_kana02", "css:finder"], + ["xpath=//input[@id='shopping_shipping_kana_kana02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[2]/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input[2]", "xpath:position"] + ], + "value": "キュウブ" + }, { + "id": "aee2840b-14a9-4c2d-bd57-71d022ec905f", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_company_name", + "targets": [ + ["id=shopping_shipping_company_name", "id"], + ["name=shopping_shipping[company_name]", "name"], + ["css=#shopping_shipping_company_name", "css:finder"], + ["xpath=//input[@id='shopping_shipping_company_name']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[3]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[3]/dd/div/input", "xpath:position"] + ], + "value": "イーシーキューブ" + }, { + "id": "2b45716a-49b1-4fcb-8b0a-8b18368d1973", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_postal_code", + "targets": [ + ["id=shopping_shipping_postal_code", "id"], + ["name=shopping_shipping[postal_code]", "name"], + ["css=#shopping_shipping_postal_code", "css:finder"], + ["xpath=//input[@id='shopping_shipping_postal_code']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[4]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[4]/dd/div/input", "xpath:position"] + ], + "value": "5300002" + }, { + "id": "769fec35-db58-4bc4-baf2-9dc939b2b033", + "comment": "", + "command": "click", + "target": "id=shopping_shipping_address_addr02", + "targets": [ + ["id=shopping_shipping_address_addr02", "id"], + ["name=shopping_shipping[address][addr02]", "name"], + ["css=#shopping_shipping_address_addr02", "css:finder"], + ["xpath=//input[@id='shopping_shipping_address_addr02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[4]/dd/div[4]/input", "xpath:idRelative"], + ["xpath=//div[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "d8dc71f6-ef14-476c-af5c-57f595882212", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_address_addr02", + "targets": [ + ["id=shopping_shipping_address_addr02", "id"], + ["name=shopping_shipping[address][addr02]", "name"], + ["css=#shopping_shipping_address_addr02", "css:finder"], + ["xpath=//input[@id='shopping_shipping_address_addr02']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[4]/dd/div[4]/input", "xpath:idRelative"], + ["xpath=//div[4]/input", "xpath:position"] + ], + "value": "2" + }, { + "id": "ae89e65d-abc1-4961-ba41-b6ad713ec3aa", + "comment": "", + "command": "click", + "target": "id=shopping_shipping_phone_number", + "targets": [ + ["id=shopping_shipping_phone_number", "id"], + ["name=shopping_shipping[phone_number]", "name"], + ["css=#shopping_shipping_phone_number", "css:finder"], + ["xpath=//input[@id='shopping_shipping_phone_number']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[5]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[5]/dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "ce5982ae-b767-4d02-8df6-c698d09e6129", + "comment": "", + "command": "type", + "target": "id=shopping_shipping_phone_number", + "targets": [ + ["id=shopping_shipping_phone_number", "id"], + ["name=shopping_shipping[phone_number]", "name"], + ["css=#shopping_shipping_phone_number", "css:finder"], + ["xpath=//input[@id='shopping_shipping_phone_number']", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div/dl[5]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[5]/dd/div/input", "xpath:position"] + ], + "value": "333333333" + }, { + "id": "3a7e2938-6cfb-499f-8177-a3ac1b405aa5", + "comment": "", + "command": "click", + "target": "css=.ec-off4Grid__cell > .ec-blockBtn--action", + "targets": [ + ["css=.ec-off4Grid__cell > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//body[@id='page_shopping_shipping_multiple_edit']/div/div[2]/div/div/div[2]/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'登録する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "589b1327-6d06-4a3b-adbc-7d82abf6a3ee", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,304)", + "targets": [], + "value": "" + }, { + "id": "519a3272-974a-4163-b568-d43d432038fd", + "comment": "", + "command": "click", + "target": "css=#form_shipping_multiple_1_shipping_0_customer_address > option:nth-child(1)", + "targets": [ + ["css=#form_shipping_multiple_1_shipping_0_customer_address > option:nth-child(1)", "css:finder"], + ["xpath=(//option[@value='0'])[2]", "xpath:attributes"], + ["xpath=//select[@id='form_shipping_multiple_1_shipping_0_customer_address']/option", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/div/div/div/select/option", "xpath:position"] + ], + "value": "" + }, { + "id": "4745a003-0784-4919-a960-15e57db8f354", + "comment": "", + "command": "select", + "target": "id=form_shipping_multiple_2_shipping_0_customer_address", + "targets": [], + "value": "label=石井 大阪府 大阪市北区曽根崎新地 2" + }, { + "id": "9da1bb12-15f4-4641-ba89-acebe37012b3", + "comment": "", + "command": "click", + "target": "css=#form_shipping_multiple_2_shipping_0_customer_address > option:nth-child(2)", + "targets": [ + ["css=#form_shipping_multiple_2_shipping_0_customer_address > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[4]", "xpath:attributes"], + ["xpath=//select[@id='form_shipping_multiple_2_shipping_0_customer_address']/option[2]", "xpath:idRelative"], + ["xpath=//div[5]/div[2]/div/div/div/select/option[2]", "xpath:position"] + ], + "value": "" + }, { + "id": "4154f85e-5e69-4380-811d-f6014041b1aa", + "comment": "", + "command": "click", + "target": "id=button__add2", + "targets": [ + ["id=button__add2", "id"], + ["css=#button__add2", "css:finder"], + ["xpath=//button[@id='button__add2']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__add_button2']/button", "xpath:idRelative"], + ["xpath=//div[5]/div[3]/button", "xpath:position"] + ], + "value": "" + }, { + "id": "27081f10-637b-4145-9948-68f2415ae3cb", + "comment": "", + "command": "mouseOver", + "target": "id=button__add2", + "targets": [ + ["id=button__add2", "id"], + ["css=#button__add2", "css:finder"], + ["xpath=//button[@id='button__add2']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__add_button2']/button", "xpath:idRelative"], + ["xpath=//div[5]/div[3]/button", "xpath:position"] + ], + "value": "" + }, { + "id": "af8afa3c-8fc8-438e-9d56-19bfca6e3272", + "comment": "", + "command": "mouseOut", + "target": "id=button__add2", + "targets": [ + ["id=button__add2", "id"], + ["css=#button__add2", "css:finder"], + ["xpath=//button[@id='button__add2']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__add_button2']/button", "xpath:idRelative"], + ["xpath=//div[5]/div[3]/button", "xpath:position"] + ], + "value": "" + }, { + "id": "b35ae1f3-a4e0-48fa-9b2b-5ce8d2d6c1ed", + "comment": "", + "command": "click", + "target": "css=#form_shipping_multiple_2_shipping_1_customer_address > option:nth-child(1)", + "targets": [ + ["css=#form_shipping_multiple_2_shipping_1_customer_address > option:nth-child(1)", "css:finder"], + ["xpath=(//option[@value='0'])[4]", "xpath:attributes"], + ["xpath=//select[@id='form_shipping_multiple_2_shipping_1_customer_address']/option", "xpath:idRelative"], + ["xpath=//div[2]/div/div/select/option", "xpath:position"] + ], + "value": "" + }, { + "id": "d610467a-b123-4196-97f9-a68672b0be6a", + "comment": "", + "command": "click", + "target": "id=form_shipping_multiple_2_shipping_1_quantity", + "targets": [ + ["id=form_shipping_multiple_2_shipping_1_quantity", "id"], + ["name=form[shipping_multiple][2][shipping][1][quantity]", "name"], + ["css=#form_shipping_multiple_2_shipping_1_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_2_shipping_1_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--2_1']/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "e520b42d-7ad8-4b0f-9451-f6655e3a02d5", + "comment": "", + "command": "click", + "target": "id=form_shipping_multiple_2_shipping_1_quantity", + "targets": [ + ["id=form_shipping_multiple_2_shipping_1_quantity", "id"], + ["name=form[shipping_multiple][2][shipping][1][quantity]", "name"], + ["css=#form_shipping_multiple_2_shipping_1_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_2_shipping_1_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--2_1']/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "8d298cb9-c58a-4393-ad1c-0f558f78d1a4", + "comment": "", + "command": "doubleClick", + "target": "id=form_shipping_multiple_2_shipping_1_quantity", + "targets": [ + ["id=form_shipping_multiple_2_shipping_1_quantity", "id"], + ["name=form[shipping_multiple][2][shipping][1][quantity]", "name"], + ["css=#form_shipping_multiple_2_shipping_1_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_2_shipping_1_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--2_1']/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "065f2843-2313-47d5-8115-219c9ac59811", + "comment": "", + "command": "type", + "target": "id=form_shipping_multiple_2_shipping_1_quantity", + "targets": [ + ["id=form_shipping_multiple_2_shipping_1_quantity", "id"], + ["name=form[shipping_multiple][2][shipping][1][quantity]", "name"], + ["css=#form_shipping_multiple_2_shipping_1_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_2_shipping_1_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--2_1']/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/input", "xpath:position"] + ], + "value": "1" + }, { + "id": "aac79b98-d88b-463e-9213-dae8348408b9", + "comment": "", + "command": "click", + "target": "id=form_shipping_multiple_2_shipping_0_quantity", + "targets": [ + ["id=form_shipping_multiple_2_shipping_0_quantity", "id"], + ["name=form[shipping_multiple][2][shipping][0][quantity]", "name"], + ["css=#form_shipping_multiple_2_shipping_0_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_2_shipping_0_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--2_0']/div/input", "xpath:idRelative"], + ["xpath=//div[5]/div[2]/div/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "ae75ca10-e7a9-4279-96c7-27e9a0937e31", + "comment": "", + "command": "click", + "target": "id=form_shipping_multiple_2_shipping_0_quantity", + "targets": [ + ["id=form_shipping_multiple_2_shipping_0_quantity", "id"], + ["name=form[shipping_multiple][2][shipping][0][quantity]", "name"], + ["css=#form_shipping_multiple_2_shipping_0_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_2_shipping_0_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--2_0']/div/input", "xpath:idRelative"], + ["xpath=//div[5]/div[2]/div/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "dcf96c68-30f1-4411-9a3e-290a2f0d9813", + "comment": "", + "command": "doubleClick", + "target": "id=form_shipping_multiple_2_shipping_0_quantity", + "targets": [ + ["id=form_shipping_multiple_2_shipping_0_quantity", "id"], + ["name=form[shipping_multiple][2][shipping][0][quantity]", "name"], + ["css=#form_shipping_multiple_2_shipping_0_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_2_shipping_0_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--2_0']/div/input", "xpath:idRelative"], + ["xpath=//div[5]/div[2]/div/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "a8d5d09e-c5b7-4c3d-b2f0-c5ae698e941e", + "comment": "", + "command": "type", + "target": "id=form_shipping_multiple_2_shipping_0_quantity", + "targets": [ + ["id=form_shipping_multiple_2_shipping_0_quantity", "id"], + ["name=form[shipping_multiple][2][shipping][0][quantity]", "name"], + ["css=#form_shipping_multiple_2_shipping_0_quantity", "css:finder"], + ["xpath=//input[@id='form_shipping_multiple_2_shipping_0_quantity']", "xpath:attributes"], + ["xpath=//div[@id='multiple_list__shipping_quantity--2_0']/div/input", "xpath:idRelative"], + ["xpath=//div[5]/div[2]/div/div[2]/div/input", "xpath:position"] + ], + "value": "1" + }, { + "id": "338895fc-871f-4a5d-bb95-413d02466caf", + "comment": "", + "command": "click", + "target": "id=button__confirm", + "targets": [ + ["id=button__confirm", "id"], + ["css=#button__confirm", "css:finder"], + ["xpath=//button[@id='button__confirm']", "xpath:attributes"], + ["xpath=//form[@id='shipping-multiple-form']/div[6]/div/div/button", "xpath:idRelative"], + ["xpath=//div[6]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'選択したお届け先に送る')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "aee1e253-131e-44ac-a1d2-f6fc15ac2a84", + "comment": "", + "command": "click", + "target": "id=shopping_order_Shippings_0_DeliveryTime", + "targets": [ + ["id=shopping_order_Shippings_0_DeliveryTime", "id"], + ["name=_shopping_order[Shippings][0][DeliveryTime]", "name"], + ["css=#shopping_order_Shippings_0_DeliveryTime", "css:finder"], + ["xpath=//select[@id='shopping_order_Shippings_0_DeliveryTime']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[2]/div[5]/div/div[3]/select", "xpath:idRelative"], + ["xpath=//div[3]/select", "xpath:position"] + ], + "value": "" + }, { + "id": "29a4eaf6-ca1a-4147-8aca-f3241f3e23bb", + "comment": "", + "command": "select", + "target": "id=shopping_order_Shippings_0_DeliveryTime", + "targets": [], + "value": "label=午前" + }, { + "id": "1f72e7b7-0431-4f40-a446-2844c4126d08", + "comment": "", + "command": "click", + "target": "css=#shopping_order_Shippings_0_DeliveryTime > option:nth-child(2)", + "targets": [ + ["css=#shopping_order_Shippings_0_DeliveryTime > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[3]", "xpath:attributes"], + ["xpath=//select[@id='shopping_order_Shippings_0_DeliveryTime']/option[2]", "xpath:idRelative"], + ["xpath=//div[3]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'午前')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "1fa809a8-0305-4308-a0b3-7ec1469fde5c", + "comment": "", + "command": "click", + "target": "css=div:nth-child(4) > label > span", + "targets": [ + ["css=div:nth-child(4) > label > span", "css:finder"], + ["xpath=//form[@id='shopping-form']/div/div/div[3]/div[2]/div[4]/label/span", "xpath:idRelative"], + ["xpath=//div[4]/label/span", "xpath:position"], + ["xpath=//span[contains(.,'代金引換')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "d73a457e-196c-46c7-98cf-5e819183d95c", + "comment": "", + "command": "click", + "target": "id=shopping_order_use_point", + "targets": [ + ["id=shopping_order_use_point", "id"], + ["name=_shopping_order[use_point]", "name"], + ["css=#shopping_order_use_point", "css:finder"], + ["xpath=//input[@id='shopping_order_use_point']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[4]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "60979130-1ddc-4c55-bbd2-3a21844d9e37", + "comment": "", + "command": "click", + "target": "id=shopping_order_use_point", + "targets": [ + ["id=shopping_order_use_point", "id"], + ["name=_shopping_order[use_point]", "name"], + ["css=#shopping_order_use_point", "css:finder"], + ["xpath=//input[@id='shopping_order_use_point']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[4]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "282ea251-9c0c-490e-ac9b-5a3ec39e7c55", + "comment": "", + "command": "doubleClick", + "target": "id=shopping_order_use_point", + "targets": [ + ["id=shopping_order_use_point", "id"], + ["name=_shopping_order[use_point]", "name"], + ["css=#shopping_order_use_point", "css:finder"], + ["xpath=//input[@id='shopping_order_use_point']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[4]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "562e13b7-3078-4fc0-9a98-d5e17cf14bcc", + "comment": "", + "command": "type", + "target": "id=shopping_order_use_point", + "targets": [ + ["id=shopping_order_use_point", "id"], + ["name=_shopping_order[use_point]", "name"], + ["css=#shopping_order_use_point", "css:finder"], + ["xpath=//input[@id='shopping_order_use_point']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[4]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/input", "xpath:position"] + ], + "value": "1" + }, { + "id": "03600939-fc1b-4c9f-8105-5f8356438e00", + "comment": "", + "command": "click", + "target": "id=shopping_order_message", + "targets": [ + ["id=shopping_order_message", "id"], + ["name=_shopping_order[message]", "name"], + ["css=#shopping_order_message", "css:finder"], + ["xpath=//textarea[@id='shopping_order_message']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[5]/div[2]/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "6a581153-8b38-46ce-abee-c1aac46b0d2f", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,317.9333190917969)", + "targets": [], + "value": "" + }, { + "id": "15d2139e-fe2b-4453-bb48-4c04b24169e9", + "comment": "", + "command": "click", + "target": "id=shopping_order_message", + "targets": [ + ["id=shopping_order_message", "id"], + ["name=_shopping_order[message]", "name"], + ["css=#shopping_order_message", "css:finder"], + ["xpath=//textarea[@id='shopping_order_message']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[5]/div[2]/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "2be15243-3dd4-4574-a4c8-9443c73d3739", + "comment": "", + "command": "type", + "target": "id=shopping_order_message", + "targets": [ + ["id=shopping_order_message", "id"], + ["name=_shopping_order[message]", "name"], + ["css=#shopping_order_message", "css:finder"], + ["xpath=//textarea[@id='shopping_order_message']", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div/div[5]/div[2]/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "複数購入のテスト" + }, { + "id": "4ec20ebc-83d1-4c6e-a20d-e92dd522ca70", + "comment": "", + "command": "click", + "target": "css=.ec-totalBox__btn > .ec-blockBtn--action", + "targets": [ + ["css=.ec-totalBox__btn > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div[2]/div/div[5]/button", "xpath:idRelative"], + ["xpath=//div[5]/button", "xpath:position"], + ["xpath=//button[contains(.,'確認する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "ec6c30c3-291e-4f91-87b9-dd8d0e804fc6", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,335.6666564941406)", + "targets": [], + "value": "" + }, { + "id": "95863077-c0fc-43ec-bc9d-609107e874f9", + "comment": "", + "command": "click", + "target": "css=.ec-totalBox__btn > .ec-blockBtn--action", + "targets": [ + ["css=.ec-totalBox__btn > .ec-blockBtn--action", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//form[@id='shopping-form']/div/div[2]/div/div[5]/button", "xpath:idRelative"], + ["xpath=//div[5]/button", "xpath:position"], + ["xpath=//button[contains(.,'注文する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "344f2b60-0557-4614-9090-d10c253711dc", + "comment": "", + "command": "click", + "target": "linkText=トップページへ", + "targets": [ + ["linkText=トップページへ", "linkText"], + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'トップページへ')]", "xpath:link"], + ["xpath=//body[@id='page_shopping_complete']/div/div[2]/div/div[3]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/')])[11]", "xpath:href"], + ["xpath=//div[2]/div/a", "xpath:position"], + ["xpath=//a[contains(.,'トップページへ')]", "xpath:innerText"] + ], + "value": "" + }] + }, { + "id": "44b105b2-6222-41da-a4ae-270a674dd05e", + "name": "お気に入り追加", + "commands": [{ + "id": "1ea04cea-54db-483e-9823-569a9462bd0e", + "comment": "", + "command": "open", + "target": "/", + "targets": [], + "value": "" + }, { + "id": "47f34ae8-7a95-4ae2-a6d3-61a0a4bef86f", + "comment": "", + "command": "setWindowSize", + "target": "1160x694", + "targets": [], + "value": "" + }, { + "id": "671250e4-8355-4044-a9e3-036902f43ae6", + "comment": "", + "command": "click", + "target": "linkText=新入荷", + "targets": [ + ["linkText=新入荷", "linkText"], + ["css=.ec-itemNav:nth-child(1) > .ec-itemNav__nav > li:nth-child(1) > a", "css:finder"], + ["xpath=//a[contains(text(),'新入荷')]", "xpath:link"], + ["xpath=//body[@id='page_homepage']/div/div/div[3]/div/ul/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/products/list?category_id=2')]", "xpath:href"], + ["xpath=//li/a", "xpath:position"], + ["xpath=//a[contains(.,'新入荷')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "a3971e62-bd0c-4ede-aacc-910d21ffcfef", + "comment": "", + "command": "click", + "target": "css=.ec-shelfGrid__item:nth-child(1) img", + "targets": [ + ["css=.ec-shelfGrid__item:nth-child(1) img", "css:finder"], + ["xpath=//body[@id='page_product_list']/div/div[2]/div/div[2]/ul/li/a/p/img", "xpath:idRelative"], + ["xpath=//p/img", "xpath:position"] + ], + "value": "" + }, { + "id": "b4cf43cb-eb1f-412c-8c5b-ae62a6874013", + "comment": "", + "command": "click", + "target": "id=favorite", + "targets": [ + ["id=favorite", "id"], + ["css=#favorite", "css:finder"], + ["xpath=//button[@id='favorite']", "xpath:attributes"], + ["xpath=//body[@id='page_product_detail']/div/div[2]/div/div/div/div[2]/div/form[2]/div/button", "xpath:idRelative"], + ["xpath=//form[2]/div/button", "xpath:position"], + ["xpath=//button[contains(.,'お気に入りに追加')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "4761812f-359f-4760-a159-a05ecf93361d", + "comment": "", + "command": "click", + "target": "css=.ec-headerNav__item:nth-child(2) .ec-headerNav__itemLink", + "targets": [ + ["css=.ec-headerNav__item:nth-child(2) .ec-headerNav__itemLink", "css:finder"], + ["xpath=//body[@id='page_product_detail']/div/div/div/div[2]/div/div/div[2]/a/span", "xpath:idRelative"], + ["xpath=//div[2]/a/span", "xpath:position"], + ["xpath=//span[contains(.,'お気に入り')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "2ee8935f-b0a2-4f28-ab11-fce60e0196c9", + "comment": "", + "command": "click", + "target": "css=.ec-favoriteRole__item-image > img", + "targets": [ + ["css=.ec-favoriteRole__item-image > img", "css:finder"], + ["xpath=//body[@id='page_mypage_favorite']/div/div[2]/div/div/div[2]/div/div[2]/ul/li/a[2]/p/img", "xpath:idRelative"], + ["xpath=//p/img", "xpath:position"] + ], + "value": "" + }, { + "id": "689928ca-2f62-4e73-9976-571efd38ef81", + "comment": "", + "command": "click", + "target": "linkText=EC-CUBE SHOP", + "targets": [ + ["linkText=EC-CUBE SHOP", "linkText"], + ["css=h1 > a", "css:finder"], + ["xpath=//a[contains(text(),'EC-CUBE SHOP')]", "xpath:link"], + ["xpath=//body[@id='page_mypage_favorite']/div/div/div[2]/div/div/div/h1/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/')])[4]", "xpath:href"], + ["xpath=//h1/a", "xpath:position"], + ["xpath=//a[contains(.,'EC-CUBE SHOP')]", "xpath:innerText"] + ], + "value": "" + }] + }, { + "id": "4fde7efc-2af4-4831-8e38-098dd5039721", + "name": "会員情報編集", + "commands": [{ + "id": "3d6c9735-b2e4-4032-9def-83d54f1432e8", + "comment": "", + "command": "open", + "target": "/", + "targets": [], + "value": "" + }, { + "id": "c72091e5-bec7-428a-be90-c051829b1a3f", + "comment": "", + "command": "setWindowSize", + "target": "1160x694", + "targets": [], + "value": "" + }, { + "id": "ac021828-0e83-48b1-9617-ac74347678ca", + "comment": "", + "command": "click", + "target": "css=.ec-headerNav__item:nth-child(1) .ec-headerNav__itemLink", + "targets": [ + ["css=.ec-headerNav__item:nth-child(1) .ec-headerNav__itemLink", "css:finder"], + ["xpath=//body[@id='page_homepage']/div/div/div/div[2]/div/div/div/a/span", "xpath:idRelative"], + ["xpath=//span", "xpath:position"], + ["xpath=//span[contains(.,'マイページ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "58d39e65-617f-4880-a484-463fc04651ab", + "comment": "", + "command": "click", + "target": "linkText=会員情報編集", + "targets": [ + ["linkText=会員情報編集", "linkText"], + ["css=.ec-navlistRole__item:nth-child(3) > a", "css:finder"], + ["xpath=//a[contains(text(),'会員情報編集')]", "xpath:link"], + ["xpath=//body[@id='page_mypage']/div/div[2]/div/div/div/div[2]/ul/li[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/mypage/change')]", "xpath:href"], + ["xpath=//div[2]/ul/li[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'会員情報編集')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "b73d557b-f8ae-4265-8950-54870ec80ce4", + "comment": "", + "command": "click", + "target": "id=entry_name_name01", + "targets": [ + ["id=entry_name_name01", "id"], + ["name=entry[name][name01]", "name"], + ["css=#entry_name_name01", "css:finder"], + ["xpath=//input[@id='entry_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_mypage_change']/div/div[2]/div/div/div[2]/div/div/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "d451bc62-d1f9-4f10-8f5e-93f248dfa361", + "comment": "", + "command": "click", + "target": "id=entry_name_name01", + "targets": [ + ["id=entry_name_name01", "id"], + ["name=entry[name][name01]", "name"], + ["css=#entry_name_name01", "css:finder"], + ["xpath=//input[@id='entry_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_mypage_change']/div/div[2]/div/div/div[2]/div/div/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "c341e87a-503b-4deb-8695-28b3d696480b", + "comment": "", + "command": "doubleClick", + "target": "id=entry_name_name01", + "targets": [ + ["id=entry_name_name01", "id"], + ["name=entry[name][name01]", "name"], + ["css=#entry_name_name01", "css:finder"], + ["xpath=//input[@id='entry_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_mypage_change']/div/div[2]/div/div/div[2]/div/div/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "bcb004e2-ad9d-4046-accc-ac116a55360e", + "comment": "", + "command": "click", + "target": "id=entry_name_name01", + "targets": [ + ["id=entry_name_name01", "id"], + ["name=entry[name][name01]", "name"], + ["css=#entry_name_name01", "css:finder"], + ["xpath=//input[@id='entry_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_mypage_change']/div/div[2]/div/div/div[2]/div/div/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "2da6e8bc-871c-4b51-9dea-30e2e7b660c7", + "comment": "", + "command": "type", + "target": "id=entry_name_name01", + "targets": [ + ["id=entry_name_name01", "id"], + ["name=entry[name][name01]", "name"], + ["css=#entry_name_name01", "css:finder"], + ["xpath=//input[@id='entry_name_name01']", "xpath:attributes"], + ["xpath=//body[@id='page_mypage_change']/div/div[2]/div/div/div[2]/div/div/div/form/div/dl/dd/div/input", "xpath:idRelative"], + ["xpath=//dd/div/input", "xpath:position"] + ], + "value": "石" + }, { + "id": "4f0deb5b-7f60-4027-bfc4-dbda4a53d59a", + "comment": "", + "command": "type", + "target": "id=entry_name_name02", + "targets": [ + ["id=entry_name_name02", "id"], + ["name=entry[name][name02]", "name"], + ["css=#entry_name_name02", "css:finder"], + ["xpath=//input[@id='entry_name_name02']", "xpath:attributes"], + ["xpath=//body[@id='page_mypage_change']/div/div[2]/div/div/div[2]/div/div/div/form/div/dl/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//input[2]", "xpath:position"] + ], + "value": "球部" + }, { + "id": "66530d66-cb49-4ec1-81b7-7a8180ba790a", + "comment": "", + "command": "type", + "target": "id=entry_kana_kana01", + "targets": [ + ["id=entry_kana_kana01", "id"], + ["name=entry[kana][kana01]", "name"], + ["css=#entry_kana_kana01", "css:finder"], + ["xpath=//input[@id='entry_kana_kana01']", "xpath:attributes"], + ["xpath=//body[@id='page_mypage_change']/div/div[2]/div/div/div[2]/div/div/div/form/div/dl[2]/dd/div/input", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input", "xpath:position"] + ], + "value": "イシ" + }, { + "id": "d940367b-a6bc-4cc9-8275-ce8d30797fa4", + "comment": "", + "command": "type", + "target": "id=entry_kana_kana02", + "targets": [ + ["id=entry_kana_kana02", "id"], + ["name=entry[kana][kana02]", "name"], + ["css=#entry_kana_kana02", "css:finder"], + ["xpath=//input[@id='entry_kana_kana02']", "xpath:attributes"], + ["xpath=//body[@id='page_mypage_change']/div/div[2]/div/div/div[2]/div/div/div/form/div/dl[2]/dd/div/input[2]", "xpath:idRelative"], + ["xpath=//dl[2]/dd/div/input[2]", "xpath:position"] + ], + "value": "キュウブ" + }, { + "id": "d3eb4dd6-9bbe-47c6-bb35-8aa453b62aec", + "comment": "", + "command": "click", + "target": "css=.ec-blockBtn--cancel", + "targets": [ + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=(//button[@type='submit'])[2]", "xpath:attributes"], + ["xpath=//body[@id='page_mypage_change']/div/div[2]/div/div/div[2]/div/div/div/form/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'登録する')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "0c4677ba-9fb8-464b-b68d-b234fda42bf7", + "comment": "", + "command": "click", + "target": "linkText=戻る", + "targets": [ + ["linkText=戻る", "linkText"], + ["css=.ec-blockBtn--cancel", "css:finder"], + ["xpath=//a[contains(text(),'戻る')]", "xpath:link"], + ["xpath=//body[@id='page_mypage_change_complete']/div/div[2]/div/div/div[2]/div/div/div[2]/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, 'https://ec-cube/')])[16]", "xpath:href"], + ["xpath=//div[2]/div/a", "xpath:position"], + ["xpath=//a[contains(.,'戻る')]", "xpath:innerText"] + ], + "value": "" + }] + }], + "suites": [{ + "id": "c1384a80-cad4-4e78-8b42-25819b2333d0", + "name": "Guest", + "persistSession": false, + "parallel": false, + "timeout": 300, + "tests": ["6f6ae007-51ec-4832-98cd-d625753b58c8", "66cf94f2-7d92-4ff6-92dc-fb7800f0fff0", "6e49bc53-4dbc-4e3a-802b-dfc0473463a4", "fd31340c-5aec-4d58-805a-73208678455d", "45f29c3b-c4e9-48bc-a433-770b13f3c2bd"] + }, { + "id": "edba87bb-4124-48ed-a4db-d27a98a7b4dc", + "name": "Login", + "persistSession": false, + "parallel": false, + "timeout": 300, + "tests": ["35d9fe92-2e6f-4c22-be4f-ce68a5a53756", "30749fcc-d7dc-4ac7-b2d8-bb46a9a968bf", "44b105b2-6222-41da-a4ae-270a674dd05e", "4fde7efc-2af4-4831-8e38-098dd5039721", "9d966310-b239-4084-95c9-3c4aec4ec77f"] + }, { + "id": "444ec5d2-613c-4eb7-ae3d-59866db325b3", + "name": "Admin", + "persistSession": false, + "parallel": false, + "timeout": 300, + "tests": [] + }], + "urls": ["https://ec-cube/"], + "plugins": [] +} diff --git a/zap/selenium/ide/Manual_Inspection_Admin.side b/zap/selenium/ide/Manual_Inspection_Admin.side new file mode 100644 index 00000000000..5aec5f65410 --- /dev/null +++ b/zap/selenium/ide/Manual_Inspection_Admin.side @@ -0,0 +1,4655 @@ +{ + "id": "773de04e-e5ff-47e2-b7b4-f25612459238", + "version": "2.0", + "name": "[WIP]Manual_Inspection_Admin", + "url": "https://ec-cube/admin", + "tests": [{ + "id": "af12755b-95df-4a47-ba6d-b9ea45cb4ea7", + "name": "商品管理", + "commands": [{ + "id": "e54e183a-2cc3-43e1-adaf-fdb333d50358", + "comment": "", + "command": "open", + "target": "https://ec-cube/admin/", + "targets": [], + "value": "" + }, { + "id": "6b0f9261-bba0-4c11-969a-0a8c46b7f746", + "comment": "", + "command": "setWindowSize", + "target": "1160x821", + "targets": [], + "value": "" + }, { + "id": "4ec9526c-7e1e-497b-823d-23680444023a", + "comment": "", + "command": "click", + "target": "linkText=商品管理", + "targets": [ + ["linkText=商品管理", "linkText"], + ["css=.c-mainNavArea__navItem:nth-child(2) > .c-mainNavArea__navItemTitle", "css:finder"], + ["xpath=//body[@id='page_admin_homepage']/div/div/nav/ul/li[2]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, '#nav-product')]", "xpath:href"], + ["xpath=//li[2]/a", "xpath:position"], + ["xpath=//a[contains(.,' 商品管理')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "c84d90a4-4cae-4fe3-a871-d6f5d500bbd0", + "comment": "", + "command": "click", + "target": "linkText=商品登録", + "targets": [ + ["linkText=商品登録", "linkText"], + ["css=#nav-product > li:nth-child(2) > a", "css:finder"], + ["xpath=//ul[@id='nav-product']/li[2]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/product/new')]", "xpath:href"], + ["xpath=//li[2]/ul/li[2]/a", "xpath:position"], + ["xpath=//a[contains(.,'商品登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "46ffb765-fe51-4c4f-b271-c4756dba9ff1", + "comment": "", + "command": "click", + "target": "id=admin_product_name", + "targets": [ + ["id=admin_product_name", "id"], + ["name=admin_product[name]", "name"], + ["css=#admin_product_name", "css:finder"], + ["xpath=//input[@id='admin_product_name']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div/div[2]/input", "xpath:idRelative"], + ["xpath=//div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "51197b99-ec9f-410e-8556-9b79edbe2b14", + "comment": "", + "command": "type", + "target": "id=admin_product_name", + "targets": [ + ["id=admin_product_name", "id"], + ["name=admin_product[name]", "name"], + ["css=#admin_product_name", "css:finder"], + ["xpath=//input[@id='admin_product_name']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div/div[2]/input", "xpath:idRelative"], + ["xpath=//div[2]/input", "xpath:position"] + ], + "value": "テスト商品" + }, { + "id": "11b21b4d-d90b-4472-bd4b-7550049335ae", + "comment": "", + "command": "click", + "target": "linkText=ファイルを選択", + "targets": [ + ["linkText=ファイルを選択", "linkText"], + ["css=.btn:nth-child(3)", "css:finder"], + ["xpath=//a[contains(text(),'ファイルを選択')]", "xpath:link"], + ["xpath=//a[@onclick=\"$('#admin_product_product_image').click()\"]", "xpath:attributes"], + ["xpath=//div[@id='upload-zone']/div/a", "xpath:idRelative"], + ["xpath=//div[3]/div/a", "xpath:position"], + ["xpath=//a[contains(.,'ファイルを選択')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "d3dcbdd7-272f-4670-abbd-191fbcf3ebe8", + "comment": "", + "command": "click", + "target": "id=admin_product_description_detail", + "targets": [ + ["id=admin_product_description_detail", "id"], + ["name=admin_product[description_detail]", "name"], + ["css=#admin_product_description_detail", "css:finder"], + ["xpath=//textarea[@id='admin_product_description_detail']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div[4]/div[2]/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "d7635d40-db43-4998-acb4-2186517c28f9", + "comment": "", + "command": "type", + "target": "id=admin_product_description_detail", + "targets": [ + ["id=admin_product_description_detail", "id"], + ["name=admin_product[description_detail]", "name"], + ["css=#admin_product_description_detail", "css:finder"], + ["xpath=//textarea[@id='admin_product_description_detail']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div[4]/div[2]/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "テスト商品の説明" + }, { + "id": "cc5edef6-e202-402c-8e29-884bf84cc876", + "comment": "", + "command": "click", + "target": "id=admin_product_class_price02", + "targets": [ + ["id=admin_product_class_price02", "id"], + ["name=admin_product[class][price02]", "name"], + ["css=#admin_product_class_price02", "css:finder"], + ["xpath=//input[@id='admin_product_class_price02']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div[6]/div[2]/div/div/input", "xpath:idRelative"], + ["xpath=//div[6]/div[2]/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "a552fad9-7052-4b12-ab0c-590702efbc9a", + "comment": "", + "command": "type", + "target": "id=admin_product_class_price02", + "targets": [ + ["id=admin_product_class_price02", "id"], + ["name=admin_product[class][price02]", "name"], + ["css=#admin_product_class_price02", "css:finder"], + ["xpath=//input[@id='admin_product_class_price02']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div[6]/div[2]/div/div/input", "xpath:idRelative"], + ["xpath=//div[6]/div[2]/div/div/input", "xpath:position"] + ], + "value": "1000" + }, { + "id": "04284054-f748-4c2c-a5d1-1aa90d92fc58", + "comment": "", + "command": "type", + "target": "id=admin_product_class_price01", + "targets": [ + ["id=admin_product_class_price01", "id"], + ["name=admin_product[class][price01]", "name"], + ["css=#admin_product_class_price01", "css:finder"], + ["xpath=//input[@id='admin_product_class_price01']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div[7]/div[2]/div/div/input", "xpath:idRelative"], + ["xpath=//div[7]/div[2]/div/div/input", "xpath:position"] + ], + "value": "1000" + }, { + "id": "0fba28fe-84cb-4ff2-9bee-0bec18d5dd78", + "comment": "", + "command": "click", + "target": "css=.col .form-check-label", + "targets": [ + ["css=.col .form-check-label", "css:finder"], + ["xpath=//div[@id='basicConfig']/div/div[8]/div[2]/div/div/label", "xpath:idRelative"], + ["xpath=//label", "xpath:position"], + ["xpath=//label[contains(.,'無制限')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "909153cc-b8a7-491b-b54e-c0988307d308", + "comment": "", + "command": "click", + "target": "id=admin_product_class_stock", + "targets": [ + ["id=admin_product_class_stock", "id"], + ["name=admin_product[class][stock]", "name"], + ["css=#admin_product_class_stock", "css:finder"], + ["xpath=//input[@id='admin_product_class_stock']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div[8]/div[2]/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "7faf5a3f-b395-472d-a549-0a1a7b531c05", + "comment": "", + "command": "type", + "target": "id=admin_product_class_stock", + "targets": [ + ["id=admin_product_class_stock", "id"], + ["name=admin_product[class][stock]", "name"], + ["css=#admin_product_class_stock", "css:finder"], + ["xpath=//input[@id='admin_product_class_stock']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div[8]/div[2]/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div/input", "xpath:position"] + ], + "value": "10000" + }, { + "id": "727dfa0e-7c31-4738-9004-f352786ab993", + "comment": "", + "command": "click", + "target": "id=admin_product_search_word", + "targets": [ + ["id=admin_product_search_word", "id"], + ["name=admin_product[search_word]", "name"], + ["css=#admin_product_search_word", "css:finder"], + ["xpath=//input[@id='admin_product_search_word']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div[9]/div[2]/div/input", "xpath:idRelative"], + ["xpath=//div[9]/div[2]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "a3e7ee25-40b5-441e-8d49-049340dd4ac5", + "comment": "", + "command": "type", + "target": "id=admin_product_search_word", + "targets": [ + ["id=admin_product_search_word", "id"], + ["name=admin_product[search_word]", "name"], + ["css=#admin_product_search_word", "css:finder"], + ["xpath=//input[@id='admin_product_search_word']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div[9]/div[2]/div/input", "xpath:idRelative"], + ["xpath=//div[9]/div[2]/div/input", "xpath:position"] + ], + "value": "テスト,商品" + }, { + "id": "22be237a-de15-46fc-a36d-1c9505739b8e", + "comment": "", + "command": "type", + "target": "id=admin_product_class_code", + "targets": [ + ["id=admin_product_class_code", "id"], + ["name=admin_product[class][code]", "name"], + ["css=#admin_product_class_code", "css:finder"], + ["xpath=//input[@id='admin_product_class_code']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div[10]/div[2]/div/input", "xpath:idRelative"], + ["xpath=//div[10]/div[2]/div/input", "xpath:position"] + ], + "value": "testing-01" + }, { + "id": "acb7efd2-41a7-4805-8dc0-46ba8b4208a0", + "comment": "", + "command": "type", + "target": "id=admin_product_class_sale_limit", + "targets": [ + ["id=admin_product_class_sale_limit", "id"], + ["name=admin_product[class][sale_limit]", "name"], + ["css=#admin_product_class_sale_limit", "css:finder"], + ["xpath=//input[@id='admin_product_class_sale_limit']", "xpath:attributes"], + ["xpath=//div[@id='basicConfig']/div/div[11]/div[2]/div/input", "xpath:idRelative"], + ["xpath=//div[11]/div[2]/div/input", "xpath:position"] + ], + "value": "100" + }, { + "id": "6b1084b3-7178-4b8a-85d7-e5fa06be2af3", + "comment": "", + "command": "select", + "target": "id=admin_product_class_delivery_duration", + "targets": [], + "value": "label=即日" + }, { + "id": "4260b61f-7d64-4414-92d4-106942b19739", + "comment": "", + "command": "click", + "target": "css=#admin_product_class_delivery_duration > option:nth-child(2)", + "targets": [ + ["css=#admin_product_class_delivery_duration > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[2]", "xpath:attributes"], + ["xpath=//select[@id='admin_product_class_delivery_duration']/option[2]", "xpath:idRelative"], + ["xpath=//div[12]/div[2]/div/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'即日')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e0e9f606-4a18-4a1e-b70a-63b888189ad4", + "comment": "", + "command": "click", + "target": "id=wysiwyg-area", + "targets": [ + ["id=wysiwyg-area", "id"], + ["name=admin_product[free_area]", "name"], + ["css=#wysiwyg-area", "css:finder"], + ["xpath=//textarea[@id='wysiwyg-area']", "xpath:attributes"], + ["xpath=//div[@id='freeArea']/div/div/div[2]/div/textarea", "xpath:idRelative"], + ["xpath=//div[2]/div/div/div[2]/div/textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "4fb60435-8431-40f6-b559-5b96ad449574", + "comment": "", + "command": "type", + "target": "id=wysiwyg-area", + "targets": [ + ["id=wysiwyg-area", "id"], + ["name=admin_product[free_area]", "name"], + ["css=#wysiwyg-area", "css:finder"], + ["xpath=//textarea[@id='wysiwyg-area']", "xpath:attributes"], + ["xpath=//div[@id='freeArea']/div/div/div[2]/div/textarea", "xpath:idRelative"], + ["xpath=//div[2]/div/div/div[2]/div/textarea", "xpath:position"] + ], + "value": "ec-cube" + }, { + "id": "7cbc21de-57a6-4b1a-b549-91663b5f9704", + "comment": "", + "command": "click", + "target": "id=admin_product_note", + "targets": [ + ["id=admin_product_note", "id"], + ["name=admin_product[note]", "name"], + ["css=#admin_product_note", "css:finder"], + ["xpath=//textarea[@id='admin_product_note']", "xpath:attributes"], + ["xpath=//div[@id='shopMemo']/div/textarea", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/div/textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "e1011f1d-292f-43cf-b15c-1e900cef35f7", + "comment": "", + "command": "type", + "target": "id=admin_product_note", + "targets": [ + ["id=admin_product_note", "id"], + ["name=admin_product[note]", "name"], + ["css=#admin_product_note", "css:finder"], + ["xpath=//textarea[@id='admin_product_note']", "xpath:attributes"], + ["xpath=//div[@id='shopMemo']/div/textarea", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/div/textarea", "xpath:position"] + ], + "value": "ショップ要メモ" + }, { + "id": "bdab2416-c24d-4013-bf78-1f12306743a6", + "comment": "", + "command": "click", + "target": "css=.ladda-label", + "targets": [ + ["css=.ladda-label", "css:finder"], + ["xpath=//div[@id='ex-conversion-action']/div[2]/button/span", "xpath:idRelative"], + ["xpath=//div[2]/button/span", "xpath:position"] + ], + "value": "" + }, { + "id": "d37ef617-491b-45d0-9328-6acf78cabf27", + "comment": "", + "command": "mouseOver", + "target": "css=.ladda-label", + "targets": [ + ["css=.ladda-label", "css:finder"], + ["xpath=//div[@id='ex-conversion-action']/div[2]/button/span", "xpath:idRelative"], + ["xpath=//div[2]/button/span", "xpath:position"] + ], + "value": "" + }, { + "id": "ef825608-913e-484f-91a1-32420bc147b3", + "comment": "", + "command": "click", + "target": "id=admin_product_category_2", + "targets": [ + ["id=admin_product_category_2", "id"], + ["name=admin_product[Category][]", "name"], + ["css=#admin_product_category_2", "css:finder"], + ["xpath=//input[@id='admin_product_category_2']", "xpath:attributes"], + ["xpath=//div[@id='category']/div/div[2]/ul/li/input", "xpath:idRelative"], + ["xpath=//li/input", "xpath:position"] + ], + "value": "" + }, { + "id": "e9e04064-4de6-4572-94ac-a383e7d85d71", + "comment": "", + "command": "click", + "target": "id=admin_product_Status", + "targets": [ + ["id=admin_product_Status", "id"], + ["name=admin_product[Status]", "name"], + ["css=#admin_product_Status", "css:finder"], + ["xpath=//select[@id='admin_product_Status']", "xpath:attributes"], + ["xpath=//div[@id='ex-conversion-action']/div/select", "xpath:idRelative"], + ["xpath=//div[2]/div/div/select", "xpath:position"] + ], + "value": "" + }, { + "id": "8177723a-cccc-4481-93c1-51542b6ccd7f", + "comment": "", + "command": "select", + "target": "id=admin_product_Status", + "targets": [], + "value": "label=公開" + }, { + "id": "9a036c46-7159-4246-88b5-c145793e305c", + "comment": "", + "command": "click", + "target": "css=#admin_product_Status > option:nth-child(1)", + "targets": [ + ["css=#admin_product_Status > option:nth-child(1)", "css:finder"], + ["xpath=(//option[@value='1'])[3]", "xpath:attributes"], + ["xpath=//select[@id='admin_product_Status']/option", "xpath:idRelative"], + ["xpath=//div[2]/div/div/select/option", "xpath:position"], + ["xpath=//option[contains(.,'公開')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "80e8428b-401d-40d2-80e0-4e68f35f7c39", + "comment": "", + "command": "click", + "target": "css=.px-5", + "targets": [ + ["css=.px-5", "css:finder"], + ["xpath=//button[@type='submit']", "xpath:attributes"], + ["xpath=//div[@id='ex-conversion-action']/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "a17fbdb5-c5ca-47ca-9aaa-fed16193ab94", + "comment": "", + "command": "mouseOver", + "target": "css=.px-5", + "targets": [ + ["css=.px-5", "css:finder"], + ["xpath=//button[@type='submit']", "xpath:attributes"], + ["xpath=//div[@id='ex-conversion-action']/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e9bb07bc-d44d-4846-99d1-29bfb9987c88", + "comment": "", + "command": "click", + "target": "css=.d-block .font-weight-bold:nth-child(2)", + "targets": [ + ["css=.d-block .font-weight-bold:nth-child(2)", "css:finder"], + ["xpath=//div[@id='tag']/div/div/a/span", "xpath:idRelative"], + ["xpath=//div[2]/div/div/a/span", "xpath:position"], + ["xpath=//span[contains(.,'タグ登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e7c81c3d-cd1e-4114-b83e-bf3c438b65f4", + "comment": "", + "command": "click", + "target": "css=.d-inline-block:nth-child(3) > .btn", + "targets": [ + ["css=.d-inline-block:nth-child(3) > .btn", "css:finder"], + ["xpath=(//button[@type='button'])[4]", "xpath:attributes"], + ["xpath=//div[@id='allTags']/div[3]/button", "xpath:idRelative"], + ["xpath=//div[3]/button", "xpath:position"], + ["xpath=//button[contains(.,'おすすめ商品')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "991c5212-00ec-433b-82da-8f544f7c41f9", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,488.9333190917969)", + "targets": [], + "value": "" + }, { + "id": "a9c60312-7b91-4450-a47c-3e2d62f7161e", + "comment": "", + "command": "click", + "target": "css=.px-5", + "targets": [ + ["css=.px-5", "css:finder"], + ["xpath=//button[@type='submit']", "xpath:attributes"], + ["xpath=//div[@id='ex-conversion-action']/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "6b499b85-63b6-44e2-bca1-1562136a1413", + "comment": "", + "command": "click", + "target": "linkText=この商品の規格を確認", + "targets": [ + ["linkText=この商品の規格を確認", "linkText"], + ["css=#standardConfig .btn", "css:finder"], + ["xpath=//a[contains(text(),'この商品の規格を確認')]", "xpath:link"], + ["xpath=//div[@id='standardConfig']/div/div/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, '/admin/product/product/class/4')]", "xpath:href"], + ["xpath=//div[2]/div[2]/div/div/a", "xpath:position"], + ["xpath=//a[contains(.,'この商品の規格を確認')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "10502d07-82a1-4bf2-a304-eb891806d93c", + "comment": "", + "command": "mouseOver", + "target": "linkText=この商品の規格を確認", + "targets": [ + ["linkText=この商品の規格を確認", "linkText"], + ["css=#standardConfig .btn", "css:finder"], + ["xpath=//a[contains(text(),'この商品の規格を確認')]", "xpath:link"], + ["xpath=//div[@id='standardConfig']/div/div/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, '/admin/product/product/class/4')]", "xpath:href"], + ["xpath=//div[2]/div[2]/div/div/a", "xpath:position"], + ["xpath=//a[contains(.,'この商品の規格を確認')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e68616ff-314c-495c-a0ca-5f4fbd360de8", + "comment": "", + "command": "mouseOut", + "target": "linkText=この商品の規格を確認", + "targets": [ + ["linkText=この商品の規格を確認", "linkText"], + ["css=#standardConfig .btn", "css:finder"], + ["xpath=//a[contains(text(),'この商品の規格を確認')]", "xpath:link"], + ["xpath=//div[@id='standardConfig']/div/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, '/admin/product/product/class/4')])[2]", "xpath:href"], + ["xpath=//div[2]/div[2]/div/div/a", "xpath:position"], + ["xpath=//a[contains(.,'この商品の規格を確認')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "50c9519a-fb37-43df-94af-5e58033f9667", + "comment": "", + "command": "click", + "target": "linkText=保存せずに移動", + "targets": [ + ["linkText=保存せずに移動", "linkText"], + ["css=.btn-ec-sub", "css:finder"], + ["xpath=//a[contains(text(),'保存せずに移動')]", "xpath:link"], + ["xpath=//div[@id='confirmFormChangeModal']/div/div/div[3]/a[2]", "xpath:idRelative"], + ["xpath=//a[contains(@href, '/admin/product/product/class/4')]", "xpath:href"], + ["xpath=//div[3]/a[2]", "xpath:position"], + ["xpath=//a[contains(.,'保存せずに移動')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "3c2461a1-06ef-4c64-8d57-8690531c86fc", + "comment": "", + "command": "select", + "target": "id=product_class_matrix_class_name1", + "targets": [], + "value": "label=サイズ (CUBE用サイズ)" + }, { + "id": "dcbd18f0-ee1f-4c05-9407-72ac896795e9", + "comment": "", + "command": "click", + "target": "css=#product_class_matrix_class_name1 > option:nth-child(2)", + "targets": [ + ["css=#product_class_matrix_class_name1 > option:nth-child(2)", "css:finder"], + ["xpath=//option[@value='2']", "xpath:attributes"], + ["xpath=//select[@id='product_class_matrix_class_name1']/option[2]", "xpath:idRelative"], + ["xpath=//option[2]", "xpath:position"], + ["xpath=//option[contains(.,'サイズ (CUBE用サイズ)')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "b3e3973f-2229-4805-8fe0-4085af12f566", + "comment": "", + "command": "select", + "target": "id=product_class_matrix_class_name2", + "targets": [], + "value": "label=フレーバー (CUBE用味)" + }, { + "id": "cc5f149b-8633-45e7-a64e-f2bf1c46a369", + "comment": "", + "command": "click", + "target": "css=#product_class_matrix_class_name2 > option:nth-child(3)", + "targets": [ + ["css=#product_class_matrix_class_name2 > option:nth-child(3)", "css:finder"], + ["xpath=(//option[@value='1'])[2]", "xpath:attributes"], + ["xpath=//select[@id='product_class_matrix_class_name2']/option[3]", "xpath:idRelative"], + ["xpath=//div[2]/select/option[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "0321b51f-9a53-42ce-b713-bedbd69038d7", + "comment": "", + "command": "click", + "target": "css=.ladda-label", + "targets": [ + ["css=.ladda-label", "css:finder"], + ["xpath=//body[@id='page_admin_product_product_class']/div/div[3]/div[2]/div/div/div/form/div/div/div[2]/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"], + ["xpath=//span[contains(.,'商品規格の設定')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "40553273-9dab-4d78-a62b-a04393b638bb", + "comment": "", + "command": "click", + "target": "id=check-all", + "targets": [ + ["id=check-all", "id"], + ["css=#check-all", "css:finder"], + ["xpath=//input[@id='check-all']", "xpath:attributes"], + ["xpath=//div[@id='ex-product_class']/table/thead/tr/th/input", "xpath:idRelative"], + ["xpath=//th/input", "xpath:position"] + ], + "value": "" + }, { + "id": "eeb25565-f106-46cd-b170-169eda93361e", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_0_code", + "targets": [ + ["id=product_class_matrix_product_classes_0_code", "id"], + ["name=product_class_matrix[product_classes][0][code]", "name"], + ["css=#product_class_matrix_product_classes_0_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_0_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-0']/td[4]/input", "xpath:idRelative"], + ["xpath=//td[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "04936e6a-89f8-40ac-aed3-604c4fde90f4", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_0_code", + "targets": [ + ["id=product_class_matrix_product_classes_0_code", "id"], + ["name=product_class_matrix[product_classes][0][code]", "name"], + ["css=#product_class_matrix_product_classes_0_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_0_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-0']/td[4]/input", "xpath:idRelative"], + ["xpath=//td[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "8ce52cef-b2e1-49b7-bc10-ef7021f2e84c", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_0_code", + "targets": [ + ["id=product_class_matrix_product_classes_0_code", "id"], + ["name=product_class_matrix[product_classes][0][code]", "name"], + ["css=#product_class_matrix_product_classes_0_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_0_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-0']/td[4]/input", "xpath:idRelative"], + ["xpath=//td[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "50dc7ca5-a433-4a26-986b-efe49ae7d44b", + "comment": "", + "command": "doubleClick", + "target": "id=product_class_matrix_product_classes_0_code", + "targets": [ + ["id=product_class_matrix_product_classes_0_code", "id"], + ["name=product_class_matrix[product_classes][0][code]", "name"], + ["css=#product_class_matrix_product_classes_0_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_0_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-0']/td[4]/input", "xpath:idRelative"], + ["xpath=//td[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "f052e74d-45eb-4e0f-8bf9-3dbd7f6d266d", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_0_code", + "targets": [ + ["id=product_class_matrix_product_classes_0_code", "id"], + ["name=product_class_matrix[product_classes][0][code]", "name"], + ["css=#product_class_matrix_product_classes_0_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_0_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-0']/td[4]/input", "xpath:idRelative"], + ["xpath=//td[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "741383da-adc1-4894-89f4-8f58c3608acd", + "comment": "", + "command": "type", + "target": "id=product_class_matrix_product_classes_0_code", + "targets": [ + ["id=product_class_matrix_product_classes_0_code", "id"], + ["name=product_class_matrix[product_classes][0][code]", "name"], + ["css=#product_class_matrix_product_classes_0_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_0_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-0']/td[4]/input", "xpath:idRelative"], + ["xpath=//td[4]/input", "xpath:position"] + ], + "value": "testing-01" + }, { + "id": "4a2f42ed-c3aa-453b-bcec-3ced3dec479d", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_0_stock", + "targets": [ + ["id=product_class_matrix_product_classes_0_stock", "id"], + ["name=product_class_matrix[product_classes][0][stock]", "name"], + ["css=#product_class_matrix_product_classes_0_stock", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_0_stock']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-0']/td[5]/div/div/input", "xpath:idRelative"], + ["xpath=//div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "2c2c87fa-7ef1-415b-9b23-306420de9c96", + "comment": "", + "command": "type", + "target": "id=product_class_matrix_product_classes_0_stock", + "targets": [ + ["id=product_class_matrix_product_classes_0_stock", "id"], + ["name=product_class_matrix[product_classes][0][stock]", "name"], + ["css=#product_class_matrix_product_classes_0_stock", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_0_stock']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-0']/td[5]/div/div/input", "xpath:idRelative"], + ["xpath=//div/div/input", "xpath:position"] + ], + "value": "1000" + }, { + "id": "6d8e06d1-eac1-44f3-b0f7-b44914e17ff7", + "comment": "", + "command": "type", + "target": "id=product_class_matrix_product_classes_0_sale_limit", + "targets": [ + ["id=product_class_matrix_product_classes_0_sale_limit", "id"], + ["name=product_class_matrix[product_classes][0][sale_limit]", "name"], + ["css=#product_class_matrix_product_classes_0_sale_limit", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_0_sale_limit']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-0']/td[6]/div/div/input", "xpath:idRelative"], + ["xpath=//td[6]/div/div/input", "xpath:position"] + ], + "value": "100" + }, { + "id": "43d3f380-6d58-4458-8825-72d864812144", + "comment": "", + "command": "type", + "target": "id=product_class_matrix_product_classes_0_price01", + "targets": [ + ["id=product_class_matrix_product_classes_0_price01", "id"], + ["name=product_class_matrix[product_classes][0][price01]", "name"], + ["css=#product_class_matrix_product_classes_0_price01", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_0_price01']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-0']/td[7]/div/input", "xpath:idRelative"], + ["xpath=//td[7]/div/input", "xpath:position"] + ], + "value": "1000" + }, { + "id": "ba7bc95f-b9b1-48aa-84e9-a46235df7752", + "comment": "", + "command": "type", + "target": "id=product_class_matrix_product_classes_0_price02", + "targets": [ + ["id=product_class_matrix_product_classes_0_price02", "id"], + ["name=product_class_matrix[product_classes][0][price02]", "name"], + ["css=#product_class_matrix_product_classes_0_price02", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_0_price02']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-0']/td[8]/div/input", "xpath:idRelative"], + ["xpath=//td[8]/div/input", "xpath:position"] + ], + "value": "1000" + }, { + "id": "4e383450-abfe-4dd3-8caa-f3e58608994a", + "comment": "", + "command": "select", + "target": "id=product_class_matrix_product_classes_0_delivery_duration", + "targets": [], + "value": "label=即日" + }, { + "id": "39775784-30d9-4551-9454-37d2f7886fe7", + "comment": "", + "command": "click", + "target": "css=#product_class_matrix_product_classes_0_delivery_duration > option:nth-child(2)", + "targets": [ + ["css=#product_class_matrix_product_classes_0_delivery_duration > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[3]", "xpath:attributes"], + ["xpath=//select[@id='product_class_matrix_product_classes_0_delivery_duration']/option[2]", "xpath:idRelative"], + ["xpath=//td[9]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'即日')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "76e866ac-38c6-4fbb-9eba-8e1650d2186d", + "comment": "", + "command": "click", + "target": "css=#ex-product_class-0 > .pr-3", + "targets": [ + ["css=#ex-product_class-0 > .pr-3", "css:finder"], + ["xpath=//tr[@id='ex-product_class-0']/td[10]", "xpath:idRelative"], + ["xpath=//td[10]", "xpath:position"] + ], + "value": "" + }, { + "id": "55c296aa-d393-4476-9747-98755586ac27", + "comment": "", + "command": "click", + "target": "css=#copy > span", + "targets": [ + ["css=#copy > span", "css:finder"], + ["xpath=//button[@id='copy']/span", "xpath:idRelative"], + ["xpath=//div/div/div/div[2]/button/span", "xpath:position"], + ["xpath=//span[contains(.,'1行目をすべての行に複製')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e526ee21-a380-45f8-a002-afe5edb52cb6", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_1_code", + "targets": [ + ["id=product_class_matrix_product_classes_1_code", "id"], + ["name=product_class_matrix[product_classes][1][code]", "name"], + ["css=#product_class_matrix_product_classes_1_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_1_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-1']/td[4]/input", "xpath:idRelative"], + ["xpath=//tr[2]/td[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "2c14b95c-dd80-480b-b92b-af0693c13ea6", + "comment": "", + "command": "type", + "target": "id=product_class_matrix_product_classes_1_code", + "targets": [ + ["id=product_class_matrix_product_classes_1_code", "id"], + ["name=product_class_matrix[product_classes][1][code]", "name"], + ["css=#product_class_matrix_product_classes_1_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_1_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-1']/td[4]/input", "xpath:idRelative"], + ["xpath=//tr[2]/td[4]/input", "xpath:position"] + ], + "value": "testing-02" + }, { + "id": "78cde8ef-63cb-4681-ac11-1ca208e8c869", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_2_code", + "targets": [ + ["id=product_class_matrix_product_classes_2_code", "id"], + ["name=product_class_matrix[product_classes][2][code]", "name"], + ["css=#product_class_matrix_product_classes_2_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_2_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-2']/td[4]/input", "xpath:idRelative"], + ["xpath=//tr[3]/td[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "7ae89485-7f66-4d5f-837b-cd865d2c4b5b", + "comment": "", + "command": "type", + "target": "id=product_class_matrix_product_classes_2_code", + "targets": [ + ["id=product_class_matrix_product_classes_2_code", "id"], + ["name=product_class_matrix[product_classes][2][code]", "name"], + ["css=#product_class_matrix_product_classes_2_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_2_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-2']/td[4]/input", "xpath:idRelative"], + ["xpath=//tr[3]/td[4]/input", "xpath:position"] + ], + "value": "testing-03" + }, { + "id": "6234b7f4-1554-431c-99f2-eef8278617d3", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_3_code", + "targets": [ + ["id=product_class_matrix_product_classes_3_code", "id"], + ["name=product_class_matrix[product_classes][3][code]", "name"], + ["css=#product_class_matrix_product_classes_3_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_3_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-3']/td[4]/input", "xpath:idRelative"], + ["xpath=//tr[4]/td[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "abca796c-9cdd-47db-ba35-fb5c7dc817a8", + "comment": "", + "command": "type", + "target": "id=product_class_matrix_product_classes_3_code", + "targets": [ + ["id=product_class_matrix_product_classes_3_code", "id"], + ["name=product_class_matrix[product_classes][3][code]", "name"], + ["css=#product_class_matrix_product_classes_3_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_3_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-3']/td[4]/input", "xpath:idRelative"], + ["xpath=//tr[4]/td[4]/input", "xpath:position"] + ], + "value": "testing-04" + }, { + "id": "9c4afc20-a073-445d-b3e5-2d673c4195cc", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_4_code", + "targets": [ + ["id=product_class_matrix_product_classes_4_code", "id"], + ["name=product_class_matrix[product_classes][4][code]", "name"], + ["css=#product_class_matrix_product_classes_4_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_4_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-4']/td[4]/input", "xpath:idRelative"], + ["xpath=//tr[5]/td[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "d0ea3120-c4cc-4b96-a51a-f15bac9cb2b8", + "comment": "", + "command": "type", + "target": "id=product_class_matrix_product_classes_4_code", + "targets": [ + ["id=product_class_matrix_product_classes_4_code", "id"], + ["name=product_class_matrix[product_classes][4][code]", "name"], + ["css=#product_class_matrix_product_classes_4_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_4_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-4']/td[4]/input", "xpath:idRelative"], + ["xpath=//tr[5]/td[4]/input", "xpath:position"] + ], + "value": "testing-05" + }, { + "id": "774fc981-2faf-4bfa-83ec-4747a9c8f68d", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_5_code", + "targets": [ + ["id=product_class_matrix_product_classes_5_code", "id"], + ["name=product_class_matrix[product_classes][5][code]", "name"], + ["css=#product_class_matrix_product_classes_5_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_5_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-5']/td[4]/input", "xpath:idRelative"], + ["xpath=//tr[6]/td[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "99aa209c-ec95-4691-986c-604524b49b90", + "comment": "", + "command": "type", + "target": "id=product_class_matrix_product_classes_5_code", + "targets": [ + ["id=product_class_matrix_product_classes_5_code", "id"], + ["name=product_class_matrix[product_classes][5][code]", "name"], + ["css=#product_class_matrix_product_classes_5_code", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_5_code']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-5']/td[4]/input", "xpath:idRelative"], + ["xpath=//tr[6]/td[4]/input", "xpath:position"] + ], + "value": "testing-06" + }, { + "id": "70af2b05-d081-4592-a8e3-c435ab064502", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_6_checked", + "targets": [ + ["id=product_class_matrix_product_classes_6_checked", "id"], + ["name=product_class_matrix[product_classes][6][checked]", "name"], + ["css=#product_class_matrix_product_classes_6_checked", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_6_checked']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-6']/td/div/input", "xpath:idRelative"], + ["xpath=//tr[7]/td/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "3c23ceb8-722a-4940-9afb-f9cb75584525", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_7_checked", + "targets": [ + ["id=product_class_matrix_product_classes_7_checked", "id"], + ["name=product_class_matrix[product_classes][7][checked]", "name"], + ["css=#product_class_matrix_product_classes_7_checked", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_7_checked']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-7']/td/div/input", "xpath:idRelative"], + ["xpath=//tr[8]/td/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "123313a9-622c-4b87-a4a6-20a645a72ed1", + "comment": "", + "command": "click", + "target": "css=#ex-product_class-8 > .pl-3", + "targets": [ + ["css=#ex-product_class-8 > .pl-3", "css:finder"], + ["xpath=//tr[@id='ex-product_class-8']/td", "xpath:idRelative"], + ["xpath=//tr[9]/td", "xpath:position"] + ], + "value": "" + }, { + "id": "2c3788b9-4cc5-4e94-b46c-a07b2286f9d5", + "comment": "", + "command": "click", + "target": "css=#ex-product_class-8 > .pl-3", + "targets": [ + ["css=#ex-product_class-8 > .pl-3", "css:finder"], + ["xpath=//tr[@id='ex-product_class-8']/td", "xpath:idRelative"], + ["xpath=//tr[9]/td", "xpath:position"] + ], + "value": "" + }, { + "id": "c2aed2a9-5903-42f3-bb89-7ad904d0ef17", + "comment": "", + "command": "doubleClick", + "target": "css=#ex-product_class-8 > .pl-3", + "targets": [ + ["css=#ex-product_class-8 > .pl-3", "css:finder"], + ["xpath=//tr[@id='ex-product_class-8']/td", "xpath:idRelative"], + ["xpath=//tr[9]/td", "xpath:position"] + ], + "value": "" + }, { + "id": "bcf527a1-410c-4494-b620-fd3820f26f8b", + "comment": "", + "command": "click", + "target": "id=product_class_matrix_product_classes_8_checked", + "targets": [ + ["id=product_class_matrix_product_classes_8_checked", "id"], + ["name=product_class_matrix[product_classes][8][checked]", "name"], + ["css=#product_class_matrix_product_classes_8_checked", "css:finder"], + ["xpath=//input[@id='product_class_matrix_product_classes_8_checked']", "xpath:attributes"], + ["xpath=//tr[@id='ex-product_class-8']/td/div/input", "xpath:idRelative"], + ["xpath=//tr[9]/td/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "957b0c77-843d-4908-ba84-70835867fe72", + "comment": "", + "command": "click", + "target": "name=product_class_matrix[save]", + "targets": [ + ["name=product_class_matrix[save]", "name"], + ["css=.px-5", "css:finder"], + ["xpath=//button[@name='product_class_matrix[save]']", "xpath:attributes"], + ["xpath=//div[@id='ex-conversion-action']/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "d9ced51a-2239-4f81-9700-e5014b9fb709", + "comment": "", + "command": "click", + "target": "linkText=規格管理", + "targets": [ + ["linkText=規格管理", "linkText"], + ["css=#nav-product > li:nth-child(3) > a", "css:finder"], + ["xpath=//ul[@id='nav-product']/li[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/class_name')]", "xpath:href"], + ["xpath=//li[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'規格管理')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "35aacfde-ce52-4666-96d1-aebc3ce79438", + "comment": "", + "command": "click", + "target": "id=admin_class_name_name", + "targets": [ + ["id=admin_class_name_name", "id"], + ["name=admin_class_name[name]", "name"], + ["css=#admin_class_name_name", "css:finder"], + ["xpath=//input[@id='admin_class_name_name']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/input[2]", "xpath:idRelative"], + ["xpath=//input[2]", "xpath:position"] + ], + "value": "" + }, { + "id": "5140af68-f48c-48e1-ab17-48e0942d5f53", + "comment": "", + "command": "type", + "target": "id=admin_class_name_name", + "targets": [ + ["id=admin_class_name_name", "id"], + ["name=admin_class_name[name]", "name"], + ["css=#admin_class_name_name", "css:finder"], + ["xpath=//input[@id='admin_class_name_name']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/input[2]", "xpath:idRelative"], + ["xpath=//input[2]", "xpath:position"] + ], + "value": "色" + }, { + "id": "703ac5f9-1c4a-4c0c-9082-f6203ea08e25", + "comment": "", + "command": "type", + "target": "id=admin_class_name_backend_name", + "targets": [ + ["id=admin_class_name_backend_name", "id"], + ["name=admin_class_name[backend_name]", "name"], + ["css=#admin_class_name_backend_name", "css:finder"], + ["xpath=//input[@id='admin_class_name_backend_name']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[4]/input", "xpath:idRelative"], + ["xpath=//div[4]/input", "xpath:position"] + ], + "value": "色01" + }, { + "id": "497d7967-8d20-480b-adcb-fc9d9174fcd6", + "comment": "", + "command": "click", + "target": "css=.btn-ec-regular > .ladda-label", + "targets": [ + ["css=.btn-ec-regular > .ladda-label", "css:finder"], + ["xpath=//form[@id='form1']/div[5]/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"], + ["xpath=//span[contains(.,'新規作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "f2a3fd47-82a8-4419-b1c2-ca4e9ae4f0c8", + "comment": "", + "command": "mouseOver", + "target": "css=.btn-ec-regular > .ladda-label", + "targets": [ + ["css=.btn-ec-regular > .ladda-label", "css:finder"], + ["xpath=//form[@id='form1']/div[5]/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"], + ["xpath=//span[contains(.,'新規作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "69876e5a-47e1-4ed6-8d72-da7704950017", + "comment": "", + "command": "mouseOut", + "target": "css=.btn-ec-regular > .ladda-label", + "targets": [ + ["css=.btn-ec-regular > .ladda-label", "css:finder"], + ["xpath=//form[@id='form1']/div[5]/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"], + ["xpath=//span[contains(.,'新規作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "63080b33-ceb0-47cd-b062-04f55d38e5fe", + "comment": "", + "command": "mouseDownAt", + "target": "linkText=色[管理名:色01] (0)", + "targets": [ + ["linkText=色[管理名:色01] (0)", "linkText"], + ["css=#ex-class_name-3 .col > a", "css:finder"], + ["xpath=//a[contains(text(),'色[管理名:色01] (0)')]", "xpath:link"], + ["xpath=//li[@id='ex-class_name-3']/div/div[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/class_category/3')]", "xpath:href"], + ["xpath=//div[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'色[管理名:色01] (0)')]", "xpath:innerText"] + ], + "value": "117.61666870117188,-78.63333129882812" + }, { + "id": "724f8c1f-ae9f-451b-88ae-d191e14e1e45", + "comment": "", + "command": "mouseMoveAt", + "target": "css=#ex-class_name-3 .col", + "targets": [ + ["css=#ex-class_name-3 .col", "css:finder"], + ["xpath=//li[@id='ex-class_name-3']/div/div[3]", "xpath:idRelative"], + ["xpath=//li[3]/div/div[3]", "xpath:position"] + ], + "value": "126.61666870117188,24" + }, { + "id": "501c876d-b9c2-4a0d-b268-6228c8ed50f0", + "comment": "", + "command": "mouseUpAt", + "target": "css=#ex-class_name-3 .col", + "targets": [ + ["css=#ex-class_name-3 .col", "css:finder"], + ["xpath=//li[@id='ex-class_name-3']/div/div[3]", "xpath:idRelative"], + ["xpath=//li[3]/div/div[3]", "xpath:position"] + ], + "value": "126.61666870117188,24" + }, { + "id": "6148b10f-c3bb-4912-8f22-48a1be649e6b", + "comment": "", + "command": "click", + "target": "linkText=色[管理名:色01] (0)", + "targets": [ + ["linkText=色[管理名:色01] (0)", "linkText"], + ["css=#ex-class_name-3 .col > a", "css:finder"], + ["xpath=//a[contains(text(),'色[管理名:色01] (0)')]", "xpath:link"], + ["xpath=//li[@id='ex-class_name-3']/div/div[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/class_category/3')]", "xpath:href"], + ["xpath=//li[5]/div/div[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'色[管理名:色01] (0)')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "3e101d11-939f-4a8d-99b7-8f3ebfc56f78", + "comment": "", + "command": "click", + "target": "id=class_name_3_backend_name", + "targets": [ + ["id=class_name_3_backend_name", "id"], + ["name=class_name_3[backend_name]", "name"], + ["css=#class_name_3_backend_name", "css:finder"], + ["xpath=//input[@id='class_name_3_backend_name']", "xpath:attributes"], + ["xpath=//li[@id='ex-class_name-3']/form/div[4]/input", "xpath:idRelative"], + ["xpath=//li[5]/form/div[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "c2d39dc1-ad06-4f0e-aa17-0ca74ad7d3d1", + "comment": "", + "command": "type", + "target": "id=class_name_3_backend_name", + "targets": [ + ["id=class_name_3_backend_name", "id"], + ["name=class_name_3[backend_name]", "name"], + ["css=#class_name_3_backend_name", "css:finder"], + ["xpath=//input[@id='class_name_3_backend_name']", "xpath:attributes"], + ["xpath=//li[@id='ex-class_name-3']/form/div[4]/input", "xpath:idRelative"], + ["xpath=//li[5]/form/div[4]/input", "xpath:position"] + ], + "value": "色02" + }, { + "id": "60606cfb-c3c1-45fe-8228-847011e98ab7", + "comment": "", + "command": "click", + "target": "css=#ex-class_name-3 .ladda-label", + "targets": [ + ["css=#ex-class_name-3 .ladda-label", "css:finder"], + ["xpath=//li[@id='ex-class_name-3']/form/div[5]/button/span", "xpath:idRelative"], + ["xpath=//li[5]/form/div[5]/button/span", "xpath:position"] + ], + "value": "" + }, { + "id": "73524631-d498-41e6-934a-82c57287f866", + "comment": "", + "command": "click", + "target": "linkText=カテゴリ管理", + "targets": [ + ["linkText=カテゴリ管理", "linkText"], + ["css=#nav-product > li:nth-child(4) > a", "css:finder"], + ["xpath=//ul[@id='nav-product']/li[4]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/category')]", "xpath:href"], + ["xpath=//li[4]/a", "xpath:position"], + ["xpath=//a[contains(.,'カテゴリ管理')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "c896d056-b5e8-45bb-a81a-1177ac218dc5", + "comment": "", + "command": "click", + "target": "id=admin_category_name", + "targets": [ + ["id=admin_category_name", "id"], + ["name=admin_category[name]", "name"], + ["css=#admin_category_name", "css:finder"], + ["xpath=//input[@id='admin_category_name']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div/div/input", "xpath:idRelative"], + ["xpath=//div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "b89af73a-aec9-4c40-8966-f89e30fb903e", + "comment": "", + "command": "type", + "target": "id=admin_category_name", + "targets": [ + ["id=admin_category_name", "id"], + ["name=admin_category[name]", "name"], + ["css=#admin_category_name", "css:finder"], + ["xpath=//input[@id='admin_category_name']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div/div/input", "xpath:idRelative"], + ["xpath=//div/input", "xpath:position"] + ], + "value": "テスト" + }, { + "id": "1f0c27b5-ff9a-4acd-a3f2-4888be737890", + "comment": "", + "command": "click", + "target": "css=.btn-ec-regular > .ladda-label", + "targets": [ + ["css=.btn-ec-regular > .ladda-label", "css:finder"], + ["xpath=//form[@id='form1']/div/div[2]/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"], + ["xpath=//span[contains(.,'新規作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e98d386a-f311-4373-aaa6-835868e9e8a3", + "comment": "", + "command": "mouseOver", + "target": "css=.btn-ec-regular > .ladda-label", + "targets": [ + ["css=.btn-ec-regular > .ladda-label", "css:finder"], + ["xpath=//form[@id='form1']/div/div[2]/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"], + ["xpath=//span[contains(.,'新規作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "26300d8a-c1b6-401c-b72f-c6b113b47526", + "comment": "", + "command": "mouseOver", + "target": "css=#ex-category-7 .action-edit", + "targets": [ + ["css=#ex-category-7 .action-edit", "css:finder"], + ["xpath=//li[@id='ex-category-7']/div/div[4]/a[3]", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/category/7/edit')]", "xpath:href"], + ["xpath=//div[4]/a[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "3dc6465d-de2d-4c56-a689-08df61f7f407", + "comment": "", + "command": "mouseOut", + "target": "css=#ex-category-7 .action-edit", + "targets": [ + ["css=#ex-category-7 .action-edit", "css:finder"], + ["xpath=//li[@id='ex-category-7']/div/div[4]/a[3]", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/category/7/edit')]", "xpath:href"], + ["xpath=//div[4]/a[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "6e647eef-6e9c-42f6-a94d-652d1ee145d4", + "comment": "", + "command": "click", + "target": "css=#ex-category-7 .btn:nth-child(3) > .fa", + "targets": [ + ["css=#ex-category-7 .btn:nth-child(3) > .fa", "css:finder"], + ["xpath=//li[@id='ex-category-7']/div/div[4]/a[3]/i", "xpath:idRelative"], + ["xpath=//div[4]/a[3]/i", "xpath:position"] + ], + "value": "" + }, { + "id": "fe0d1bc5-5ebc-4e71-b838-e0270b1d54f2", + "comment": "", + "command": "click", + "target": "id=category_7_name", + "targets": [ + ["id=category_7_name", "id"], + ["name=category_7[name]", "name"], + ["css=#category_7_name", "css:finder"], + ["xpath=//input[@id='category_7_name']", "xpath:attributes"], + ["xpath=//li[@id='ex-category-7']/form/div/input", "xpath:idRelative"], + ["xpath=//form/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "7057b160-9867-444e-9dfa-67125b06ac08", + "comment": "", + "command": "type", + "target": "id=category_7_name", + "targets": [ + ["id=category_7_name", "id"], + ["name=category_7[name]", "name"], + ["css=#category_7_name", "css:finder"], + ["xpath=//input[@id='category_7_name']", "xpath:attributes"], + ["xpath=//li[@id='ex-category-7']/form/div/input", "xpath:idRelative"], + ["xpath=//form/div/input", "xpath:position"] + ], + "value": "テスト01" + }, { + "id": "8436bb12-be28-457a-bcf5-0835d346c8fe", + "comment": "", + "command": "mouseDownAt", + "target": "css=#ex-category-7 .col", + "targets": [ + ["css=#ex-category-7 .col", "css:finder"], + ["xpath=//li[@id='ex-category-7']/div/div[3]", "xpath:idRelative"], + ["xpath=//li[3]/div/div[3]", "xpath:position"] + ], + "value": "169.41668701171875,19.5" + }, { + "id": "2d40c91e-cbd6-41e6-884a-a28d18253c36", + "comment": "", + "command": "mouseMoveAt", + "target": "css=#ex-category-7 .col", + "targets": [ + ["css=#ex-category-7 .col", "css:finder"], + ["xpath=//li[@id='ex-category-7']/div/div[3]", "xpath:idRelative"], + ["xpath=//li[3]/div/div[3]", "xpath:position"] + ], + "value": "169.41668701171875,19.5" + }, { + "id": "40cfd921-1303-497b-a020-637690c8a369", + "comment": "", + "command": "mouseUpAt", + "target": "css=#ex-category-7 .col", + "targets": [ + ["css=#ex-category-7 .col", "css:finder"], + ["xpath=//li[@id='ex-category-7']/div/div[3]", "xpath:idRelative"], + ["xpath=//li[3]/div/div[3]", "xpath:position"] + ], + "value": "169.41668701171875,19.5" + }, { + "id": "3159f891-7196-41fd-9cd6-ada096b222b9", + "comment": "", + "command": "click", + "target": "css=#ex-category-7 .col", + "targets": [ + ["css=#ex-category-7 .col", "css:finder"], + ["xpath=//li[@id='ex-category-7']/div/div[3]", "xpath:idRelative"], + ["xpath=//li[6]/div/div[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "c28b49f5-cb2e-4ecf-a99b-f0046cb872ad", + "comment": "", + "command": "click", + "target": "linkText=テスト", + "targets": [ + ["linkText=テスト", "linkText"], + ["css=#ex-category-7 .col > a", "css:finder"], + ["xpath=//a[contains(text(),'テスト')]", "xpath:link"], + ["xpath=//li[@id='ex-category-7']/div/div[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/category/7')]", "xpath:href"], + ["xpath=//li[6]/div/div[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'テスト')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "a50dd304-a4b6-4a3d-8edb-3798066b9480", + "comment": "", + "command": "click", + "target": "id=admin_category_name", + "targets": [ + ["id=admin_category_name", "id"], + ["name=admin_category[name]", "name"], + ["css=#admin_category_name", "css:finder"], + ["xpath=//input[@id='admin_category_name']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div/div/input", "xpath:idRelative"], + ["xpath=//div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "5a5fa0b4-8c1c-46d0-8130-a717b0af1b57", + "comment": "", + "command": "type", + "target": "id=admin_category_name", + "targets": [ + ["id=admin_category_name", "id"], + ["name=admin_category[name]", "name"], + ["css=#admin_category_name", "css:finder"], + ["xpath=//input[@id='admin_category_name']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div/div/input", "xpath:idRelative"], + ["xpath=//div/input", "xpath:position"] + ], + "value": "テスト02" + }, { + "id": "658909bf-1441-49f3-a106-3335af4358ec", + "comment": "", + "command": "click", + "target": "css=.ladda-button", + "targets": [ + ["css=.ladda-button", "css:finder"], + ["xpath=//button[@type='submit']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div/div[2]/button", "xpath:idRelative"], + ["xpath=//button", "xpath:position"], + ["xpath=//button[contains(.,'新規作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e4fbea57-6071-4572-bc57-b958cd54ea57", + "comment": "", + "command": "mouseOver", + "target": "css=.ladda-button", + "targets": [ + ["css=.ladda-button", "css:finder"], + ["xpath=//button[@type='submit']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div/div[2]/button", "xpath:idRelative"], + ["xpath=//button", "xpath:position"], + ["xpath=//button[contains(.,'新規作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "6c1db7f5-3244-4230-99ad-76545b4d6db3", + "comment": "", + "command": "mouseOver", + "target": "css=.action-edit", + "targets": [ + ["css=.action-edit", "css:finder"], + ["xpath=//li[@id='ex-category-8']/div/div[4]/a[3]", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/category/8/edit')]", "xpath:href"], + ["xpath=//div[4]/a[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "cf2b68bf-ed06-45d4-8a8c-14926f6810b3", + "comment": "", + "command": "mouseOut", + "target": "css=.action-edit", + "targets": [ + ["css=.action-edit", "css:finder"], + ["xpath=//li[@id='ex-category-8']/div/div[4]/a[3]", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/category/8/edit')]", "xpath:href"], + ["xpath=//div[4]/a[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "a0cb67ae-7314-4784-87f6-6ec28aec1605", + "comment": "", + "command": "click", + "target": "linkText=テスト02", + "targets": [ + ["linkText=テスト02", "linkText"], + ["css=.col > a", "css:finder"], + ["xpath=//a[contains(text(),'テスト02')]", "xpath:link"], + ["xpath=//li[@id='ex-category-8']/div/div[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/category/8')]", "xpath:href"], + ["xpath=//div[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'テスト02')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "3a596b99-a66e-42d9-b697-aae3efa46404", + "comment": "", + "command": "click", + "target": "id=admin_category_name", + "targets": [ + ["id=admin_category_name", "id"], + ["name=admin_category[name]", "name"], + ["css=#admin_category_name", "css:finder"], + ["xpath=//input[@id='admin_category_name']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div/div/input", "xpath:idRelative"], + ["xpath=//div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "89b7f499-654c-4c81-9970-8f331e02421b", + "comment": "", + "command": "type", + "target": "id=admin_category_name", + "targets": [ + ["id=admin_category_name", "id"], + ["name=admin_category[name]", "name"], + ["css=#admin_category_name", "css:finder"], + ["xpath=//input[@id='admin_category_name']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div/div/input", "xpath:idRelative"], + ["xpath=//div/input", "xpath:position"] + ], + "value": "テスト03" + }, { + "id": "38b15837-0493-4daf-bde9-f37da6bd9493", + "comment": "", + "command": "click", + "target": "css=.ladda-label", + "targets": [ + ["css=.ladda-label", "css:finder"], + ["xpath=//form[@id='form1']/div/div[2]/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"], + ["xpath=//span[contains(.,'新規作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "fb852373-1e69-44db-bd0a-43f561ceb5cb", + "comment": "", + "command": "mouseOver", + "target": "css=.ladda-label", + "targets": [ + ["css=.ladda-label", "css:finder"], + ["xpath=//form[@id='form1']/div/div[2]/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"], + ["xpath=//span[contains(.,'新規作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "817ef252-57f5-49f2-9d62-d137d00a448b", + "comment": "", + "command": "mouseOut", + "target": "css=.ladda-label", + "targets": [ + ["css=.ladda-label", "css:finder"], + ["xpath=//form[@id='form1']/div/div[2]/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"], + ["xpath=//span[contains(.,'新規作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "1ad6019d-9956-4edc-80f7-f75fcb8f6706", + "comment": "", + "command": "mouseOver", + "target": "css=.action-edit", + "targets": [ + ["css=.action-edit", "css:finder"], + ["xpath=//li[@id='ex-category-9']/div/div[4]/a[3]", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/category/9/edit')]", "xpath:href"], + ["xpath=//div[4]/a[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "36fa7ff4-b4a8-4d4d-b5d9-887c9bdc4728", + "comment": "", + "command": "mouseOut", + "target": "css=.action-edit", + "targets": [ + ["css=.action-edit", "css:finder"], + ["xpath=//li[@id='ex-category-9']/div/div[4]/a[3]", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/category/9/edit')]", "xpath:href"], + ["xpath=//div[4]/a[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "ecce9bd1-6b6b-4026-a6ff-8f0a3f2520e0", + "comment": "", + "command": "click", + "target": "css=.fa-close", + "targets": [ + ["css=.fa-close", "css:finder"], + ["xpath=//li[@id='ex-category-9']/div/div[4]/div/a/i", "xpath:idRelative"], + ["xpath=//div[4]/div/a/i", "xpath:position"] + ], + "value": "" + }, { + "id": "bb40c5a9-61ae-431c-ba24-691a32f4134d", + "comment": "", + "command": "click", + "target": "linkText=削除", + "targets": [ + ["linkText=削除", "linkText"], + ["css=.btn-ec-delete", "css:finder"], + ["xpath=//a[contains(text(),'削除')]", "xpath:link"], + ["xpath=//div[@id='DeleteModal']/div/div/div[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/category/9/delete')]", "xpath:href"], + ["xpath=//div/div/div[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'削除')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "835df1f6-2607-45db-8d02-c00a3ccdbdb5", + "comment": "", + "command": "click", + "target": "linkText=タグ管理", + "targets": [ + ["linkText=タグ管理", "linkText"], + ["css=#nav-product > li:nth-child(5) > a", "css:finder"], + ["xpath=//ul[@id='nav-product']/li[5]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/tag')]", "xpath:href"], + ["xpath=//li[5]/a", "xpath:position"], + ["xpath=//a[contains(.,'タグ管理')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "539042e4-9bfe-467e-b3b6-efcb81ddf055", + "comment": "", + "command": "click", + "target": "id=admin_product_tag_name", + "targets": [ + ["id=admin_product_tag_name", "id"], + ["name=admin_product_tag[name]", "name"], + ["css=#admin_product_tag_name", "css:finder"], + ["xpath=//input[@id='admin_product_tag_name']", "xpath:attributes"], + ["xpath=//body[@id='page_admin_product_tag']/div/div[3]/div[2]/div/div/div/div/div/ul/li/form/div/input", "xpath:idRelative"], + ["xpath=//div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "70bf8e16-be2e-47a2-abae-2c63d488f23d", + "comment": "", + "command": "type", + "target": "id=admin_product_tag_name", + "targets": [ + ["id=admin_product_tag_name", "id"], + ["name=admin_product_tag[name]", "name"], + ["css=#admin_product_tag_name", "css:finder"], + ["xpath=//input[@id='admin_product_tag_name']", "xpath:attributes"], + ["xpath=//body[@id='page_admin_product_tag']/div/div[3]/div[2]/div/div/div/div/div/ul/li/form/div/input", "xpath:idRelative"], + ["xpath=//div/input", "xpath:position"] + ], + "value": "テストタグ" + }, { + "id": "0b31608f-73e5-49a8-84c5-7fd3d93cc19e", + "comment": "", + "command": "click", + "target": "css=.btn-ec-regular > .ladda-label", + "targets": [ + ["css=.btn-ec-regular > .ladda-label", "css:finder"], + ["xpath=//body[@id='page_admin_product_tag']/div/div[3]/div[2]/div/div/div/div/div/ul/li/form/div[2]/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"], + ["xpath=//span[contains(.,'新規作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "5c421b48-f031-48cd-b881-f4418e7dfd38", + "comment": "", + "command": "mouseOver", + "target": "css=.btn-ec-regular > .ladda-label", + "targets": [ + ["css=.btn-ec-regular > .ladda-label", "css:finder"], + ["xpath=//body[@id='page_admin_product_tag']/div/div[3]/div[3]/div/div/div/div/div/ul/li/form/div[2]/button/span", "xpath:idRelative"], + ["xpath=//form/div[2]/button/span", "xpath:position"], + ["xpath=//span[contains(.,'新規作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "6cc1d8c5-dbe8-4455-bb3c-82b6d0f27e20", + "comment": "", + "command": "mouseDownAt", + "target": "css=#ex-tag-4 .col", + "targets": [ + ["css=#ex-tag-4 .col", "css:finder"], + ["xpath=//li[@id='ex-tag-4']/div/div[3]", "xpath:idRelative"], + ["xpath=//li[3]/div/div[3]", "xpath:position"] + ], + "value": "128.38333129882812,18" + }, { + "id": "8d7a7de6-f320-49ef-8624-870f75273a78", + "comment": "", + "command": "mouseMoveAt", + "target": "css=#ex-tag-4 .col", + "targets": [ + ["css=#ex-tag-4 .col", "css:finder"], + ["xpath=//li[@id='ex-tag-4']/div/div[3]", "xpath:idRelative"], + ["xpath=//li[3]/div/div[3]", "xpath:position"] + ], + "value": "128.38333129882812,18" + }, { + "id": "3b3e5115-9565-482c-a2aa-9d27e0ee2e25", + "comment": "", + "command": "mouseUpAt", + "target": "css=#ex-tag-4 .col", + "targets": [ + ["css=#ex-tag-4 .col", "css:finder"], + ["xpath=//li[@id='ex-tag-4']/div/div[3]", "xpath:idRelative"], + ["xpath=//li[3]/div/div[3]", "xpath:position"] + ], + "value": "128.38333129882812,18" + }, { + "id": "05de52a7-cfab-49a5-8c39-6d2a71cbb7b8", + "comment": "", + "command": "click", + "target": "css=#ex-tag-4 .col", + "targets": [ + ["css=#ex-tag-4 .col", "css:finder"], + ["xpath=//li[@id='ex-tag-4']/div/div[3]", "xpath:idRelative"], + ["xpath=//li[5]/div/div[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "7e205980-b3ab-4701-800a-73c2aef82432", + "comment": "", + "command": "click", + "target": "css=#ex-tag-4 .d-inline-block .fa", + "targets": [ + ["css=#ex-tag-4 .d-inline-block .fa", "css:finder"], + ["xpath=//li[@id='ex-tag-4']/div/div[4]/div/a/i", "xpath:idRelative"], + ["xpath=//li[5]/div/div[4]/div/a/i", "xpath:position"] + ], + "value": "" + }, { + "id": "d62f6466-0667-4a8b-acff-051384399b98", + "comment": "", + "command": "click", + "target": "linkText=削除", + "targets": [ + ["linkText=削除", "linkText"], + ["css=.btn-ec-delete", "css:finder"], + ["xpath=//a[contains(text(),'削除')]", "xpath:link"], + ["xpath=//div[@id='DeleteModal']/div/div/div[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/tag/4/delete')]", "xpath:href"], + ["xpath=//div/div/div[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'削除')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "2f3d5431-b99c-461c-901c-f829e39a6f55", + "comment": "", + "command": "mouseOver", + "target": "linkText=削除", + "targets": [ + ["linkText=削除", "linkText"], + ["css=.btn-ec-delete", "css:finder"], + ["xpath=//a[contains(text(),'削除')]", "xpath:link"], + ["xpath=//div[@id='DeleteModal']/div/div/div[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/product/tag/4/delete')]", "xpath:href"], + ["xpath=//div/div/div[3]/a", "xpath:position"], + ["xpath=//a[contains(.,'削除')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "80f49145-53ca-4fe0-ab0b-b63db4b09017", + "comment": "", + "command": "mouseOver", + "target": "css=#ex-tag-3 .action-down", + "targets": [ + ["css=#ex-tag-3 .action-down", "css:finder"], + ["xpath=//li[@id='ex-tag-3']/div/div[4]/a[2]", "xpath:idRelative"], + ["xpath=(//a[contains(@href, '#')])[13]", "xpath:href"], + ["xpath=//div[4]/a[2]", "xpath:position"] + ], + "value": "" + }, { + "id": "2bdb2423-01cf-4fcf-8edb-fbc1614520bf", + "comment": "", + "command": "mouseOut", + "target": "css=#ex-tag-3 .action-down", + "targets": [ + ["css=#ex-tag-3 .action-down", "css:finder"], + ["xpath=//li[@id='ex-tag-3']/div/div[4]/a[2]", "xpath:idRelative"], + ["xpath=(//a[contains(@href, '#')])[13]", "xpath:href"], + ["xpath=//div[4]/a[2]", "xpath:position"] + ], + "value": "" + }, { + "id": "03a1c2ee-b888-4f75-a34f-85a55f46b9df", + "comment": "", + "command": "click", + "target": "css=#ex-tag-3 .action-edit", + "targets": [ + ["css=#ex-tag-3 .action-edit", "css:finder"], + ["xpath=//li[@id='ex-tag-3']/div/div[4]/a[3]", "xpath:idRelative"], + ["xpath=//div[4]/a[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "db840b3e-1264-4b21-823c-546eb2aed359", + "comment": "", + "command": "click", + "target": "css=#ex-tag-3 .ladda-label", + "targets": [ + ["css=#ex-tag-3 .ladda-label", "css:finder"], + ["xpath=//li[@id='ex-tag-3']/form/div[2]/button/span", "xpath:idRelative"], + ["xpath=//li[3]/form/div[2]/button/span", "xpath:position"], + ["xpath=//span[contains(.,'決定')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "05d132d0-dbb4-4ef0-8482-e4eb7c6137e2", + "comment": "", + "command": "mouseOver", + "target": "css=#ex-tag-3 .ladda-label", + "targets": [ + ["css=#ex-tag-3 .ladda-label", "css:finder"], + ["xpath=//li[@id='ex-tag-3']/form/div[2]/button/span", "xpath:idRelative"], + ["xpath=//li[3]/form/div[2]/button/span", "xpath:position"], + ["xpath=//span[contains(.,'決定')]", "xpath:innerText"] + ], + "value": "" + }] + }, { + "id": "93cadc3b-359e-440c-97b4-a69a41f7c12d", + "name": "受注管理", + "commands": [{ + "id": "2323aade-d77a-415d-8eb1-98988122a67b", + "comment": "", + "command": "open", + "target": "https://ec-cube/admin/", + "targets": [], + "value": "" + }, { + "id": "708266cf-87e2-42a9-b706-029508a5a7de", + "comment": "", + "command": "setWindowSize", + "target": "1160x821", + "targets": [], + "value": "" + }, { + "id": "77cf7e8f-3620-4c35-905b-0e369ea5ded0", + "comment": "", + "command": "click", + "target": "linkText=受注管理", + "targets": [ + ["linkText=受注管理", "linkText"], + ["css=.c-mainNavArea__navItem:nth-child(3) > .c-mainNavArea__navItemTitle", "css:finder"], + ["xpath=//body[@id='page_admin_homepage']/div/div/nav/ul/li[3]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, '#nav-order')]", "xpath:href"], + ["xpath=//nav/ul/li[3]/a", "xpath:position"], + ["xpath=//a[contains(.,' 受注管理')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "11e67ad6-7853-4201-a6a3-9f55b9e1bb19", + "comment": "", + "command": "click", + "target": "linkText=受注一覧", + "targets": [ + ["linkText=受注一覧", "linkText"], + ["css=#nav-order > li:nth-child(1) > a", "css:finder"], + ["xpath=//ul[@id='nav-order']/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/order')]", "xpath:href"], + ["xpath=//li[3]/ul/li/a", "xpath:position"], + ["xpath=//a[contains(.,'受注一覧')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "8865a6f5-b806-44fb-8fb8-2856a5a6e291", + "comment": "", + "command": "click", + "target": "linkText=受注登録", + "targets": [ + ["linkText=受注登録", "linkText"], + ["css=.is-active", "css:finder"], + ["xpath=//ul[@id='nav-order']/li[2]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/order/new')]", "xpath:href"], + ["xpath=//li[3]/ul/li[2]/a", "xpath:position"], + ["xpath=//a[contains(.,'受注登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "9c92cb52-4b77-4acc-8ba3-0d92a4256802", + "comment": "", + "command": "select", + "target": "id=order_Payment", + "targets": [], + "value": "label=郵便振替" + }, { + "id": "b75bb272-b344-4eb8-bb25-b472571dac33", + "comment": "", + "command": "click", + "target": "css=#order_Payment > option:nth-child(4)", + "targets": [ + ["css=#order_Payment > option:nth-child(4)", "css:finder"], + ["xpath=//option[@value='1']", "xpath:attributes"], + ["xpath=//select[@id='order_Payment']/option[4]", "xpath:idRelative"], + ["xpath=//option[4]", "xpath:position"], + ["xpath=//option[contains(.,'郵便振替')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "020513f3-e368-4706-9948-aa6c451c4a4e", + "comment": "", + "command": "click", + "target": "id=order_name_name01", + "targets": [ + ["id=order_name_name01", "id"], + ["name=order[name][name01]", "name"], + ["css=#order_name_name01", "css:finder"], + ["xpath=//input[@id='order_name_name01']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div/div[2]/div/div/div/input", "xpath:idRelative"], + ["xpath=//div[3]/div/div[2]/div/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "504b9fe8-9c91-48df-8850-7f1e37eaa2f4", + "comment": "", + "command": "type", + "target": "id=order_name_name01", + "targets": [ + ["id=order_name_name01", "id"], + ["name=order[name][name01]", "name"], + ["css=#order_name_name01", "css:finder"], + ["xpath=//input[@id='order_name_name01']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div/div[2]/div/div/div/input", "xpath:idRelative"], + ["xpath=//div[3]/div/div[2]/div/div/div/input", "xpath:position"] + ], + "value": "石" + }, { + "id": "1f96f4fc-0b42-431c-82b0-8b91d0c69ba4", + "comment": "", + "command": "type", + "target": "id=order_name_name02", + "targets": [ + ["id=order_name_name02", "id"], + ["name=order[name][name02]", "name"], + ["css=#order_name_name02", "css:finder"], + ["xpath=//input[@id='order_name_name02']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div/div[2]/div/div/div[2]/input", "xpath:idRelative"], + ["xpath=//div[3]/div/div[2]/div/div/div[2]/input", "xpath:position"] + ], + "value": "給部" + }, { + "id": "9000dcbd-8f34-4cbf-9ecf-b34c2a734e43", + "comment": "", + "command": "type", + "target": "id=order_kana_kana01", + "targets": [ + ["id=order_kana_kana01", "id"], + ["name=order[kana][kana01]", "name"], + ["css=#order_kana_kana01", "css:finder"], + ["xpath=//input[@id='order_kana_kana01']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div/div[3]/div/div/div/input", "xpath:idRelative"], + ["xpath=//div[3]/div/div[3]/div/div/div/input", "xpath:position"] + ], + "value": "イーシー" + }, { + "id": "0cafb072-8940-4cd6-9902-e58d22daa1f1", + "comment": "", + "command": "type", + "target": "id=order_kana_kana02", + "targets": [ + ["id=order_kana_kana02", "id"], + ["name=order[kana][kana02]", "name"], + ["css=#order_kana_kana02", "css:finder"], + ["xpath=//input[@id='order_kana_kana02']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div/div[3]/div/div/div[2]/input", "xpath:idRelative"], + ["xpath=//div[3]/div/div/div[2]/input", "xpath:position"] + ], + "value": "キューブ" + }, { + "id": "7b56c03e-f515-496d-b93e-931d90526a4d", + "comment": "", + "command": "type", + "target": "id=order_postal_code", + "targets": [ + ["id=order_postal_code", "id"], + ["name=order[postal_code]", "name"], + ["css=#order_postal_code", "css:finder"], + ["xpath=//input[@id='order_postal_code']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div/div[4]/div/div/div/input", "xpath:idRelative"], + ["xpath=//div[4]/div/div/div/input", "xpath:position"] + ], + "value": "5300001" + }, { + "id": "0f235bb5-4b5a-46df-a8db-7c2e4684fb40", + "comment": "", + "command": "click", + "target": "id=order_address_addr02", + "targets": [ + ["id=order_address_addr02", "id"], + ["name=order[address][addr02]", "name"], + ["css=#order_address_addr02", "css:finder"], + ["xpath=//input[@id='order_address_addr02']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div/div[4]/div/div[4]/div/input", "xpath:idRelative"], + ["xpath=//div[4]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "d69af810-7069-4c34-9543-d9fe1a6a30af", + "comment": "", + "command": "type", + "target": "id=order_address_addr02", + "targets": [ + ["id=order_address_addr02", "id"], + ["name=order[address][addr02]", "name"], + ["css=#order_address_addr02", "css:finder"], + ["xpath=//input[@id='order_address_addr02']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div/div[4]/div/div[4]/div/input", "xpath:idRelative"], + ["xpath=//div[4]/div/input", "xpath:position"] + ], + "value": "2" + }, { + "id": "43048b45-1bda-4746-b641-d2557ca08ded", + "comment": "", + "command": "click", + "target": "css=.card-body:nth-child(2)", + "targets": [ + ["css=.card-body:nth-child(2)", "css:finder"], + ["xpath=//div[@id='ordererInfo']/div", "xpath:idRelative"], + ["xpath=//form/div/div/div/div[2]/div[2]/div", "xpath:position"] + ], + "value": "" + }, { + "id": "61ff5889-0ace-4944-b9b1-af99b91c17c6", + "comment": "", + "command": "click", + "target": "id=order_email", + "targets": [ + ["id=order_email", "id"], + ["name=order[email]", "name"], + ["css=#order_email", "css:finder"], + ["xpath=//input[@id='order_email']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div[2]/div/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "5dbc8c65-3845-44b5-8e57-37bc9acffb93", + "comment": "", + "command": "type", + "target": "id=order_email", + "targets": [ + ["id=order_email", "id"], + ["name=order[email]", "name"], + ["css=#order_email", "css:finder"], + ["xpath=//input[@id='order_email']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div[2]/div/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div/div/input", "xpath:position"] + ], + "value": "ec-cube-guest@example.com" + }, { + "id": "ec027f10-fe40-43cc-9f1b-293c393c6421", + "comment": "", + "command": "type", + "target": "id=order_phone_number", + "targets": [ + ["id=order_phone_number", "id"], + ["name=order[phone_number]", "name"], + ["css=#order_phone_number", "css:finder"], + ["xpath=//input[@id='order_phone_number']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div[2]/div[2]/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div/input", "xpath:position"] + ], + "value": "333333333" + }, { + "id": "e33e8da6-9e22-45ae-b12e-c9a28652bef0", + "comment": "", + "command": "click", + "target": "id=order_company_name", + "targets": [ + ["id=order_company_name", "id"], + ["name=order[company_name]", "name"], + ["css=#order_company_name", "css:finder"], + ["xpath=//input[@id='order_company_name']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div[2]/div[3]/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[3]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "90ed8f2e-3106-4dbf-8661-9d7cfc10ef6c", + "comment": "", + "command": "type", + "target": "id=order_company_name", + "targets": [ + ["id=order_company_name", "id"], + ["name=order[company_name]", "name"], + ["css=#order_company_name", "css:finder"], + ["xpath=//input[@id='order_company_name']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div[2]/div[3]/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[3]/div/input", "xpath:position"] + ], + "value": "イーシーキューブ" + }, { + "id": "cf1f8a78-83dc-48b1-b8b1-8b43329c038b", + "comment": "", + "command": "type", + "target": "id=order_message", + "targets": [ + ["id=order_message", "id"], + ["name=order[message]", "name"], + ["css=#order_message", "css:finder"], + ["xpath=//textarea[@id='order_message']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div[2]/div[4]/div/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "お問い合わせ内容" + }, { + "id": "8e48b5e8-bfe4-40b8-9798-efcac2d3a612", + "comment": "", + "command": "click", + "target": "css=.copy-customer", + "targets": [ + ["css=.copy-customer", "css:finder"], + ["xpath=(//button[@type='button'])[4]", "xpath:attributes"], + ["xpath=//div[@id='shippingInfo']/div/div/div/button", "xpath:idRelative"], + ["xpath=//div/div/div[3]/div[2]/div/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'注文者情報をコピー')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "864be4c7-d5f0-4259-91f2-41ed7da4ecd8", + "comment": "", + "command": "click", + "target": "id=order_Shipping_address_addr02", + "targets": [ + ["id=order_Shipping_address_addr02", "id"], + ["name=order[Shipping][address][addr02]", "name"], + ["css=#order_Shipping_address_addr02", "css:finder"], + ["xpath=//input[@id='order_Shipping_address_addr02']", "xpath:attributes"], + ["xpath=//div[@id='shippingInfo']/div/div[2]/div/div[3]/div/div[4]/div/input", "xpath:idRelative"], + ["xpath=//div[3]/div/div[4]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "e3912008-a704-4e3a-8887-bb210c512843", + "comment": "", + "command": "type", + "target": "id=order_Shipping_address_addr02", + "targets": [ + ["id=order_Shipping_address_addr02", "id"], + ["name=order[Shipping][address][addr02]", "name"], + ["css=#order_Shipping_address_addr02", "css:finder"], + ["xpath=//input[@id='order_Shipping_address_addr02']", "xpath:attributes"], + ["xpath=//div[@id='shippingInfo']/div/div[2]/div/div[3]/div/div[4]/div/input", "xpath:idRelative"], + ["xpath=//div[3]/div/div[4]/div/input", "xpath:position"] + ], + "value": "2333" + }, { + "id": "33af45ed-2b53-40dc-9407-c06d3230157f", + "comment": "", + "command": "select", + "target": "id=order_Shipping_shipping_delivery_date_year", + "targets": [], + "value": "label=2015" + }, { + "id": "498ec859-1f9d-4ad3-b88b-d0092749c319", + "comment": "", + "command": "click", + "target": "css=#order_Shipping_shipping_delivery_date_year > option:nth-child(2)", + "targets": [ + ["css=#order_Shipping_shipping_delivery_date_year > option:nth-child(2)", "css:finder"], + ["xpath=//option[@value='2015']", "xpath:attributes"], + ["xpath=//select[@id='order_Shipping_shipping_delivery_date_year']/option[2]", "xpath:idRelative"], + ["xpath=//div[5]/div/div/div/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'2015')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "a4318c2e-30ae-4d94-95a8-4598d675898a", + "comment": "", + "command": "select", + "target": "id=order_Shipping_shipping_delivery_date_year", + "targets": [], + "value": "label=2020" + }, { + "id": "d195e485-09c7-4ecc-a2fa-4e27924e5ab4", + "comment": "", + "command": "click", + "target": "css=#order_Shipping_shipping_delivery_date_year > option:nth-child(7)", + "targets": [ + ["css=#order_Shipping_shipping_delivery_date_year > option:nth-child(7)", "css:finder"], + ["xpath=//option[@value='2020']", "xpath:attributes"], + ["xpath=//select[@id='order_Shipping_shipping_delivery_date_year']/option[7]", "xpath:idRelative"], + ["xpath=//div[5]/div/div/div/select/option[7]", "xpath:position"], + ["xpath=//option[contains(.,'2020')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e20bc0e2-6ec7-4614-bdfc-8dbf70624e58", + "comment": "", + "command": "select", + "target": "id=order_Shipping_shipping_delivery_date_month", + "targets": [], + "value": "label=08" + }, { + "id": "0d880539-a273-42ec-87b2-e59b082a8671", + "comment": "", + "command": "click", + "target": "css=#order_Shipping_shipping_delivery_date_month > option:nth-child(9)", + "targets": [ + ["css=#order_Shipping_shipping_delivery_date_month > option:nth-child(9)", "css:finder"], + ["xpath=(//option[@value='8'])[3]", "xpath:attributes"], + ["xpath=//select[@id='order_Shipping_shipping_delivery_date_month']/option[9]", "xpath:idRelative"], + ["xpath=//select[2]/option[9]", "xpath:position"], + ["xpath=//option[contains(.,'08')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "574b250e-e3a6-4439-b42d-ba4a3f82823a", + "comment": "", + "command": "select", + "target": "id=order_Shipping_shipping_delivery_date_day", + "targets": [], + "value": "label=19" + }, { + "id": "1404e420-c197-41f9-9f9a-1d939e5b3320", + "comment": "", + "command": "click", + "target": "css=#order_Shipping_shipping_delivery_date_day > option:nth-child(20)", + "targets": [ + ["css=#order_Shipping_shipping_delivery_date_day > option:nth-child(20)", "css:finder"], + ["xpath=(//option[@value='19'])[3]", "xpath:attributes"], + ["xpath=//select[@id='order_Shipping_shipping_delivery_date_day']/option[20]", "xpath:idRelative"], + ["xpath=//select[3]/option[20]", "xpath:position"] + ], + "value": "" + }, { + "id": "a49d78c4-7c45-4457-8ae2-fd19d699b919", + "comment": "", + "command": "select", + "target": "id=order_Shipping_DeliveryTime", + "targets": [], + "value": "label=午前" + }, { + "id": "367c6906-7558-42ee-bf72-613930bc016b", + "comment": "", + "command": "click", + "target": "css=#order_Shipping_DeliveryTime > option:nth-child(2)", + "targets": [ + ["css=#order_Shipping_DeliveryTime > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[7]", "xpath:attributes"], + ["xpath=//select[@id='order_Shipping_DeliveryTime']/option[2]", "xpath:idRelative"], + ["xpath=//div[5]/div[2]/div/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'午前')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "ffd5b0c9-bcf9-4623-9781-f67511a6823a", + "comment": "", + "command": "click", + "target": "id=order_Shipping_note", + "targets": [ + ["id=order_Shipping_note", "id"], + ["name=order[Shipping][note]", "name"], + ["css=#order_Shipping_note", "css:finder"], + ["xpath=//textarea[@id='order_Shipping_note']", "xpath:attributes"], + ["xpath=//div[@id='shippingInfo']/div/div[2]/div[4]/div[3]/div/textarea", "xpath:idRelative"], + ["xpath=//div[3]/div/textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "384d30fe-506d-4ccb-ade1-07cab31dce2f", + "comment": "", + "command": "type", + "target": "id=order_Shipping_note", + "targets": [ + ["id=order_Shipping_note", "id"], + ["name=order[Shipping][note]", "name"], + ["css=#order_Shipping_note", "css:finder"], + ["xpath=//textarea[@id='order_Shipping_note']", "xpath:attributes"], + ["xpath=//div[@id='shippingInfo']/div/div[2]/div[4]/div[3]/div/textarea", "xpath:idRelative"], + ["xpath=//div[3]/div/textarea", "xpath:position"] + ], + "value": "出荷メモ" + }, { + "id": "c9d2994f-11b2-4363-a058-7637af46d9c8", + "comment": "", + "command": "click", + "target": "linkText=商品を追加", + "targets": [ + ["linkText=商品を追加", "linkText"], + ["css=.add", "css:finder"], + ["xpath=//a[contains(text(),'商品を追加')]", "xpath:link"], + ["xpath=//div[@id='orderItem']/div/div/div/a", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/div/div/div/a", "xpath:position"], + ["xpath=//a[contains(.,'商品を追加')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "174106af-2729-4324-a681-80a67d59b2a1", + "comment": "", + "command": "click", + "target": "id=searchProductModalButton", + "targets": [ + ["id=searchProductModalButton", "id"], + ["css=#searchProductModalButton", "css:finder"], + ["xpath=//button[@id='searchProductModalButton']", "xpath:attributes"], + ["xpath=//div[@id='addProduct']/div/div/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/div/div/div/div/div[2]/button", "xpath:position"] + ], + "value": "" + }, { + "id": "6b58a636-2d05-4fd4-86b6-18adb489ca70", + "comment": "", + "command": "select", + "target": "id=classcategory_id14", + "targets": [], + "value": "label=16mm × 16mm" + }, { + "id": "47b135c7-6bbd-4c23-9816-f104b60016b7", + "comment": "", + "command": "click", + "target": "css=#classcategory_id14 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id14 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='4'])[7]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id14']/option[2]", "xpath:idRelative"], + ["xpath=//td[3]/div/div[2]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'16mm × 16mm')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "b637fa81-1f35-48cc-918a-fe557b9282d4", + "comment": "", + "command": "select", + "target": "name=classcategory_id2", + "targets": [], + "value": "label=バニラ" + }, { + "id": "a951fc89-36a9-4ade-b83a-23fad34b556f", + "comment": "", + "command": "click", + "target": "css=.row:nth-child(2) > .col-8 option:nth-child(2)", + "targets": [ + ["css=.row:nth-child(2) > .col-8 option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='3'])[7]", "xpath:attributes"], + ["xpath=//div[@id='searchProductModalList']/table/tbody/tr/td[3]/div[2]/div[2]/select/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'バニラ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "431ad801-1e14-43bc-9b4b-3c42ae64d986", + "comment": "", + "command": "click", + "target": "css=tr:nth-child(2) .fa", + "targets": [ + ["css=tr:nth-child(2) .fa", "css:finder"], + ["xpath=//div[@id='searchProductModalList']/table/tbody/tr/td[4]/button/i", "xpath:idRelative"], + ["xpath=//button/i", "xpath:position"] + ], + "value": "" + }, { + "id": "e5375fe7-9bd3-4d78-bfce-fb0614997286", + "comment": "", + "command": "click", + "target": "linkText=その他の明細を追加", + "targets": [ + ["linkText=その他の明細を追加", "linkText"], + ["css=.btn-ec-regular:nth-child(3)", "css:finder"], + ["xpath=//a[contains(text(),'その他の明細を追加')]", "xpath:link"], + ["xpath=//div[@id='orderItem']/div/div/div/a[2]", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/div/div/div/a[2]", "xpath:position"], + ["xpath=//a[contains(.,'その他の明細を追加')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "d53aff3b-a7fe-4a1e-9a92-e3b022f856ab", + "comment": "", + "command": "click", + "target": "css=tr:nth-child(4) .fa", + "targets": [ + ["css=tr:nth-child(4) .fa", "css:finder"], + ["xpath=//div[@id='searchOrderItemTypeList']/table/tbody/tr[2]/td[3]/button/i", "xpath:idRelative"], + ["xpath=//tr[2]/td[3]/button/i", "xpath:position"] + ], + "value": "" + }, { + "id": "c629cc5d-d145-485d-ab67-90601af72b88", + "comment": "", + "command": "click", + "target": "id=order_OrderItems_2_price", + "targets": [ + ["id=order_OrderItems_2_price", "id"], + ["name=order[OrderItems][2][price]", "name"], + ["css=#order_OrderItems_2_price", "css:finder"], + ["xpath=//input[@id='order_OrderItems_2_price']", "xpath:attributes"], + ["xpath=//table[@id='table-form-field']/tbody/tr[2]/td[2]/div/div/input", "xpath:idRelative"], + ["xpath=//tr[2]/td[2]/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "f4da6357-2aa3-4317-8a74-cf9fce7631fa", + "comment": "", + "command": "click", + "target": "id=order_OrderItems_2_price", + "targets": [ + ["id=order_OrderItems_2_price", "id"], + ["name=order[OrderItems][2][price]", "name"], + ["css=#order_OrderItems_2_price", "css:finder"], + ["xpath=//input[@id='order_OrderItems_2_price']", "xpath:attributes"], + ["xpath=//table[@id='table-form-field']/tbody/tr[2]/td[2]/div/div/input", "xpath:idRelative"], + ["xpath=//tr[2]/td[2]/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "e93f429a-639e-451b-a80b-1538da17cf7e", + "comment": "", + "command": "doubleClick", + "target": "id=order_OrderItems_2_price", + "targets": [ + ["id=order_OrderItems_2_price", "id"], + ["name=order[OrderItems][2][price]", "name"], + ["css=#order_OrderItems_2_price", "css:finder"], + ["xpath=//input[@id='order_OrderItems_2_price']", "xpath:attributes"], + ["xpath=//table[@id='table-form-field']/tbody/tr[2]/td[2]/div/div/input", "xpath:idRelative"], + ["xpath=//tr[2]/td[2]/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "89f9652a-af62-44fc-bbb9-17ce75eac42f", + "comment": "", + "command": "type", + "target": "id=order_OrderItems_2_price", + "targets": [ + ["id=order_OrderItems_2_price", "id"], + ["name=order[OrderItems][2][price]", "name"], + ["css=#order_OrderItems_2_price", "css:finder"], + ["xpath=//input[@id='order_OrderItems_2_price']", "xpath:attributes"], + ["xpath=//table[@id='table-form-field']/tbody/tr[2]/td[2]/div/div/input", "xpath:idRelative"], + ["xpath=//tr[2]/td[2]/div/div/input", "xpath:position"] + ], + "value": "1000" + }, { + "id": "0cf60fbe-95e7-4525-960e-78e64a7df4b9", + "comment": "", + "command": "click", + "target": "css=.justify-content-end:nth-child(4)", + "targets": [ + ["css=.justify-content-end:nth-child(4)", "css:finder"], + ["xpath=//div[@id='orderItem']/div/div[2]", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/div/div[2]", "xpath:position"] + ], + "value": "" + }, { + "id": "6eadf4ac-1bda-4971-a4a9-8b3680ff186f", + "comment": "", + "command": "click", + "target": "css=#calculate > .ladda-label", + "targets": [ + ["css=#calculate > .ladda-label", "css:finder"], + ["xpath=//button[@id='calculate']/span", "xpath:idRelative"], + ["xpath=//div[2]/button/span", "xpath:position"], + ["xpath=//span[contains(.,'計算結果を更新')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "c989a63d-e334-4c66-ba6b-e63e8074e6c1", + "comment": "", + "command": "mouseOver", + "target": "css=#calculate > .ladda-label", + "targets": [ + ["css=#calculate > .ladda-label", "css:finder"], + ["xpath=//button[@id='calculate']/span", "xpath:idRelative"], + ["xpath=//div[2]/button/span", "xpath:position"], + ["xpath=//span[contains(.,'計算結果を更新')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "fa3a1efc-7ab6-4b09-9c1b-6628fd60e8e1", + "comment": "", + "command": "click", + "target": "id=order_note", + "targets": [ + ["id=order_note", "id"], + ["name=order[note]", "name"], + ["css=#order_note", "css:finder"], + ["xpath=//textarea[@id='order_note']", "xpath:attributes"], + ["xpath=//div[@id='freeArea']/div/textarea", "xpath:idRelative"], + ["xpath=//div[2]/div/textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "e3c207ab-8364-42a6-b93e-5f9334afb639", + "comment": "", + "command": "type", + "target": "id=order_note", + "targets": [ + ["id=order_note", "id"], + ["name=order[note]", "name"], + ["css=#order_note", "css:finder"], + ["xpath=//textarea[@id='order_note']", "xpath:attributes"], + ["xpath=//div[@id='freeArea']/div/textarea", "xpath:idRelative"], + ["xpath=//div[2]/div/textarea", "xpath:position"] + ], + "value": "ショップ用メモ" + }, { + "id": "eea2a21a-8e3d-4db8-b82f-cb32efc3fee5", + "comment": "", + "command": "click", + "target": "css=.px-5:nth-child(1)", + "targets": [ + ["css=.px-5:nth-child(1)", "css:finder"], + ["xpath=(//button[@name='mode'])[2]", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/div/div/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "8c5c9245-6d80-4792-8f17-d5642a31333e", + "comment": "", + "command": "click", + "target": "css=.c-baseLink > span", + "targets": [ + ["css=.c-baseLink > span", "css:finder"], + ["xpath=//form[@id='form1']/div[2]/div/div/div/div/a/span", "xpath:idRelative"], + ["xpath=//div/div/a/span", "xpath:position"] + ], + "value": "" + }, { + "id": "d08d18dc-1e1d-4417-98c7-8750488fdfe3", + "comment": "", + "command": "click", + "target": "css=#admin_search_order_status > .form-check:nth-child(1) > .form-check-label", + "targets": [ + ["css=#admin_search_order_status > .form-check:nth-child(1) > .form-check-label", "css:finder"], + ["xpath=//div[@id='admin_search_order_status']/div/label", "xpath:idRelative"], + ["xpath=//div[2]/div/div/div/label", "xpath:position"], + ["xpath=//label[contains(.,'新規受付')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "dbfa1195-7d64-464f-9679-d850a4ede401", + "comment": "", + "command": "click", + "target": "css=.ladda-label", + "targets": [ + ["css=.ladda-label", "css:finder"], + ["xpath=//button[@id='search_submit']/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"] + ], + "value": "" + }, { + "id": "68852b37-3d8c-4d07-b8c4-a9258a949192", + "comment": "", + "command": "mouseOver", + "target": "css=.mb-3", + "targets": [ + ["css=.mb-3", "css:finder"], + ["xpath=//form[@id='search_form']/div/div/div/div[3]", "xpath:idRelative"], + ["xpath=//form/div/div/div/div[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "6904dd1c-6a28-405f-a5c7-0c4a7849bc18", + "comment": "", + "command": "click", + "target": "css=#admin_search_order_status > .form-check:nth-child(1) > .form-check-label", + "targets": [ + ["css=#admin_search_order_status > .form-check:nth-child(1) > .form-check-label", "css:finder"], + ["xpath=//div[@id='admin_search_order_status']/div/label", "xpath:idRelative"], + ["xpath=//div[2]/div/div/div/label", "xpath:position"], + ["xpath=//label[contains(.,'新規受付')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "33975424-5595-4f59-b193-f9b999d91079", + "comment": "", + "command": "click", + "target": "css=.c-outsideBlock__contents:nth-child(3) > .row", + "targets": [ + ["css=.c-outsideBlock__contents:nth-child(3) > .row", "css:finder"], + ["xpath=//form[@id='search_form']/div[3]/div", "xpath:idRelative"], + ["xpath=//form/div[3]/div", "xpath:position"] + ], + "value": "" + }, { + "id": "1bdbad2c-6b7b-4ddb-853c-de2a0f678bfb", + "comment": "", + "command": "click", + "target": "id=search_submit", + "targets": [ + ["id=search_submit", "id"], + ["css=#search_submit", "css:finder"], + ["xpath=//button[@id='search_submit']", "xpath:attributes"], + ["xpath=//form[@id='search_form']/div[3]/div/div/div/button", "xpath:idRelative"], + ["xpath=//button", "xpath:position"], + ["xpath=//button[contains(.,'検索')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "f9a2d10c-285e-4c6f-a236-2d18d0686853", + "comment": "", + "command": "mouseOver", + "target": "id=search_submit", + "targets": [ + ["id=search_submit", "id"], + ["css=#search_submit", "css:finder"], + ["xpath=//button[@id='search_submit']", "xpath:attributes"], + ["xpath=//form[@id='search_form']/div[3]/div/div/div/button", "xpath:idRelative"], + ["xpath=//button", "xpath:position"], + ["xpath=//button[contains(.,'検索')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e3822151-431f-496e-b164-aa3c08519a0e", + "comment": "", + "command": "click", + "target": "linkText=受注登録", + "targets": [ + ["linkText=受注登録", "linkText"], + ["css=#nav-order > li:nth-child(2) > a", "css:finder"], + ["xpath=//ul[@id='nav-order']/li[2]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/order/new')]", "xpath:href"], + ["xpath=//li[3]/ul/li[2]/a", "xpath:position"], + ["xpath=//a[contains(.,'受注登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "30c6aaae-6a67-4739-909b-e6ccd6773fc1", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,200.13333129882812)", + "targets": [], + "value": "" + }, { + "id": "2896e79c-a705-4918-b406-ca07de071087", + "comment": "", + "command": "click", + "target": "linkText=会員から検索・入力", + "targets": [ + ["linkText=会員から検索・入力", "linkText"], + ["css=.px-3", "css:finder"], + ["xpath=//a[contains(text(),'会員から検索・入力')]", "xpath:link"], + ["xpath=//div[@id='ordererInfo']/div/div/div/a", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div/div/a", "xpath:position"], + ["xpath=//a[contains(.,'会員から検索・入力')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "d935888e-b2b2-44bc-ae88-76cea38b8426", + "comment": "", + "command": "click", + "target": "id=searchCustomerModalButton", + "targets": [ + ["id=searchCustomerModalButton", "id"], + ["css=#searchCustomerModalButton", "css:finder"], + ["xpath=//button[@id='searchCustomerModalButton']", "xpath:attributes"], + ["xpath=//div[@id='searchCustomerModal']/div/div/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'検索')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "368ca419-c115-44ed-913b-95774a1aba3b", + "comment": "", + "command": "click", + "target": "css=tr:nth-child(1) .btn", + "targets": [ + ["css=tr:nth-child(1) .btn", "css:finder"], + ["xpath=(//button[@type='button'])[4]", "xpath:attributes"], + ["xpath=//div[@id='searchCustomerModalList']/table/tbody/tr/td[5]/div/button", "xpath:idRelative"], + ["xpath=//td[5]/div/button", "xpath:position"] + ], + "value": "" + }, { + "id": "ce4bb159-1c9f-4055-abd7-97bd39fa484c", + "comment": "", + "command": "click", + "target": "css=.copy-customer", + "targets": [ + ["css=.copy-customer", "css:finder"], + ["xpath=(//button[@type='button'])[7]", "xpath:attributes"], + ["xpath=//div[@id='shippingInfo']/div/div/div/button", "xpath:idRelative"], + ["xpath=//div/div/div[3]/div[2]/div/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'注文者情報をコピー')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "538fb061-9b4f-4e57-8182-327ae17e7ca7", + "comment": "", + "command": "runScript", + "target": "window.scrollTo(0,953.7999877929688)", + "targets": [], + "value": "" + }, { + "id": "3b91c647-b9c6-450f-86de-c26b8e31674c", + "comment": "", + "command": "click", + "target": "id=order_Shipping_tracking_number", + "targets": [ + ["id=order_Shipping_tracking_number", "id"], + ["name=order[Shipping][tracking_number]", "name"], + ["css=#order_Shipping_tracking_number", "css:finder"], + ["xpath=//input[@id='order_Shipping_tracking_number']", "xpath:attributes"], + ["xpath=//div[@id='shippingInfo']/div/div[2]/div[4]/div/div/input", "xpath:idRelative"], + ["xpath=//div[4]/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "0ec5b72b-0a37-40e2-9065-a46db640dcbd", + "comment": "", + "command": "type", + "target": "id=order_Shipping_tracking_number", + "targets": [ + ["id=order_Shipping_tracking_number", "id"], + ["name=order[Shipping][tracking_number]", "name"], + ["css=#order_Shipping_tracking_number", "css:finder"], + ["xpath=//input[@id='order_Shipping_tracking_number']", "xpath:attributes"], + ["xpath=//div[@id='shippingInfo']/div/div[2]/div[4]/div/div/input", "xpath:idRelative"], + ["xpath=//div[4]/div/div/input", "xpath:position"] + ], + "value": "999999999" + }, { + "id": "16976b7d-c1b7-43b8-b724-7c655783a6f8", + "comment": "", + "command": "click", + "target": "id=order_Shipping_note", + "targets": [ + ["id=order_Shipping_note", "id"], + ["name=order[Shipping][note]", "name"], + ["css=#order_Shipping_note", "css:finder"], + ["xpath=//textarea[@id='order_Shipping_note']", "xpath:attributes"], + ["xpath=//div[@id='shippingInfo']/div/div[2]/div[4]/div[3]/div/textarea", "xpath:idRelative"], + ["xpath=//div[3]/div/textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "378bed17-c663-4bed-8b61-c72ff1008476", + "comment": "", + "command": "type", + "target": "id=order_Shipping_note", + "targets": [ + ["id=order_Shipping_note", "id"], + ["name=order[Shipping][note]", "name"], + ["css=#order_Shipping_note", "css:finder"], + ["xpath=//textarea[@id='order_Shipping_note']", "xpath:attributes"], + ["xpath=//div[@id='shippingInfo']/div/div[2]/div[4]/div[3]/div/textarea", "xpath:idRelative"], + ["xpath=//div[3]/div/textarea", "xpath:position"] + ], + "value": "出荷メモ" + }, { + "id": "3401e07f-7b52-4d29-85c5-ce080a0779bc", + "comment": "", + "command": "click", + "target": "linkText=商品を追加", + "targets": [ + ["linkText=商品を追加", "linkText"], + ["css=.add", "css:finder"], + ["xpath=//a[contains(text(),'商品を追加')]", "xpath:link"], + ["xpath=//div[@id='orderItem']/div/div/div/a", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/div/div/div/a", "xpath:position"], + ["xpath=//a[contains(.,'商品を追加')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "bc82da26-3f8d-4e01-b304-c4b1b66af21e", + "comment": "", + "command": "click", + "target": "id=searchProductModalButton", + "targets": [ + ["id=searchProductModalButton", "id"], + ["css=#searchProductModalButton", "css:finder"], + ["xpath=//button[@id='searchProductModalButton']", "xpath:attributes"], + ["xpath=//div[@id='addProduct']/div/div/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/div/div/div/div/div[2]/button", "xpath:position"] + ], + "value": "" + }, { + "id": "f516fdea-3609-4013-92ef-8561b5942818", + "comment": "", + "command": "select", + "target": "id=classcategory_id14", + "targets": [], + "value": "label=32mm × 32mm" + }, { + "id": "ef7bc3c7-feac-4c5d-8454-5152c5ecb106", + "comment": "", + "command": "click", + "target": "css=#classcategory_id14 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id14 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='5'])[6]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id14']/option[2]", "xpath:idRelative"], + ["xpath=//td[3]/div/div[2]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'32mm × 32mm')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "ece13a31-1122-43e3-984f-54a52f7f984f", + "comment": "", + "command": "select", + "target": "name=classcategory_id2", + "targets": [], + "value": "label=チョコ" + }, { + "id": "2953a4d2-2774-44b5-b04c-9ce7b0364948", + "comment": "", + "command": "click", + "target": "css=.row:nth-child(2) > .col-8 option:nth-child(2)", + "targets": [ + ["css=.row:nth-child(2) > .col-8 option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='1'])[9]", "xpath:attributes"], + ["xpath=//div[@id='searchProductModalList']/table/tbody/tr/td[3]/div[2]/div[2]/select/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'チョコ')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "d7dbf528-05fd-4e8a-8e8c-aee55d023964", + "comment": "", + "command": "click", + "target": "css=tr:nth-child(2) > .align-middle .fa", + "targets": [ + ["css=tr:nth-child(2) > .align-middle .fa", "css:finder"], + ["xpath=//div[@id='searchProductModalList']/table/tbody/tr/td[4]/button/i", "xpath:idRelative"], + ["xpath=//td[4]/button/i", "xpath:position"] + ], + "value": "" + }, { + "id": "e82ba8b3-8921-477e-92f3-67fc9fdf0570", + "comment": "", + "command": "mouseOver", + "target": "css=tr:nth-child(2) > .align-middle .fa", + "targets": [ + ["css=tr:nth-child(2) > .align-middle .fa", "css:finder"], + ["xpath=//div[@id='searchProductModalList']/table/tbody/tr/td[4]/button/i", "xpath:idRelative"], + ["xpath=//td[4]/button/i", "xpath:position"] + ], + "value": "" + }, { + "id": "c0f58415-6edf-4f41-b699-27ebf512d0a0", + "comment": "", + "command": "click", + "target": "id=order_note", + "targets": [ + ["id=order_note", "id"], + ["name=order[note]", "name"], + ["css=#order_note", "css:finder"], + ["xpath=//textarea[@id='order_note']", "xpath:attributes"], + ["xpath=//div[@id='freeArea']/div/textarea", "xpath:idRelative"], + ["xpath=//div[2]/div/textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "16aac390-9d39-48c4-a9c6-5b03fbbadb91", + "comment": "", + "command": "type", + "target": "id=order_note", + "targets": [ + ["id=order_note", "id"], + ["name=order[note]", "name"], + ["css=#order_note", "css:finder"], + ["xpath=//textarea[@id='order_note']", "xpath:attributes"], + ["xpath=//div[@id='freeArea']/div/textarea", "xpath:idRelative"], + ["xpath=//div[2]/div/textarea", "xpath:position"] + ], + "value": "ショップメモ" + }, { + "id": "ee35d224-8e2f-4694-8101-7ae327d86df1", + "comment": "", + "command": "click", + "target": "css=.px-5:nth-child(1)", + "targets": [ + ["css=.px-5:nth-child(1)", "css:finder"], + ["xpath=(//button[@name='mode'])[2]", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[2]/div/div/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "b006fc9b-6c87-4610-8195-c29da4ae5030", + "comment": "", + "command": "click", + "target": "css=.fa-angle-down:nth-child(1)", + "targets": [ + ["css=.fa-angle-down:nth-child(1)", "css:finder"], + ["xpath=//form[@id='form1']/div/div/div/div[2]/div/div/div[3]/a/i", "xpath:idRelative"], + ["xpath=//div[3]/a/i", "xpath:position"] + ], + "value": "" + }, { + "id": "b3ad842a-2214-4864-aa5b-4a69c1547512", + "comment": "", + "command": "click", + "target": "id=shipping-add", + "targets": [ + ["id=shipping-add", "id"], + ["linkText=出荷情報の追加", "linkText"], + ["css=#shipping-add", "css:finder"], + ["xpath=//a[contains(text(),'出荷情報の追加')]", "xpath:link"], + ["xpath=//a[@id='shipping-add']", "xpath:attributes"], + ["xpath=//div[@id='shippingInfo']/div/div/div[2]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, '/admin/shipping/3/edit')]", "xpath:href"], + ["xpath=//div[2]/div/div/div[2]/a", "xpath:position"], + ["xpath=//a[contains(.,'出荷情報の追加')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "32d01e56-baa9-44a7-87f4-d24304ec94e5", + "comment": "", + "command": "click", + "target": "linkText=保存せずに移動", + "targets": [ + ["linkText=保存せずに移動", "linkText"], + ["css=.btn-ec-sub:nth-child(2)", "css:finder"], + ["xpath=//a[contains(text(),'保存せずに移動')]", "xpath:link"], + ["xpath=//div[@id='confirmFormChangeModal']/div/div/div[3]/a[2]", "xpath:idRelative"], + ["xpath=//a[contains(@href, '/admin/shipping/3/edit')]", "xpath:href"], + ["xpath=//div[3]/a[2]", "xpath:position"], + ["xpath=//a[contains(.,'保存せずに移動')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "f6aa4f27-08dc-4ea0-b78a-fcf1f2b2c382", + "comment": "", + "command": "click", + "target": "id=addShipping", + "targets": [ + ["id=addShipping", "id"], + ["css=#addShipping", "css:finder"], + ["xpath=//button[@id='addShipping']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[4]/div/div/div[2]/button", "xpath:idRelative"], + ["xpath=//div[4]/div/div/div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'出荷情報の追加')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "b12eeaab-854d-4317-9a1b-7cdac0151e44", + "comment": "", + "command": "click", + "target": "css=#shipmentOverview_1 .col-6 > .row:nth-child(1) .col:nth-child(1)", + "targets": [ + ["css=#shipmentOverview_1 .col-6 > .row:nth-child(1) .col:nth-child(1)", "css:finder"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[2]/div/div/div/div/div", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[2]/div/div/div/div/div", "xpath:position"] + ], + "value": "" + }, { + "id": "d4d5dfb8-907f-4992-9af4-13df2ecf43ed", + "comment": "", + "command": "click", + "target": "id=form_shippings_1_name_name01", + "targets": [ + ["id=form_shippings_1_name_name01", "id"], + ["name=form[shippings][1][name][name01]", "name"], + ["css=#form_shippings_1_name_name01", "css:finder"], + ["xpath=//input[@id='form_shippings_1_name_name01']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[2]/div/div/div/div/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[2]/div/div/div/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "b82f1b71-8dc4-4fbc-b6cb-6451c26a4b3f", + "comment": "", + "command": "type", + "target": "id=form_shippings_1_name_name01", + "targets": [ + ["id=form_shippings_1_name_name01", "id"], + ["name=form[shippings][1][name][name01]", "name"], + ["css=#form_shippings_1_name_name01", "css:finder"], + ["xpath=//input[@id='form_shippings_1_name_name01']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[2]/div/div/div/div/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[2]/div/div/div/div/div/input", "xpath:position"] + ], + "value": "石井" + }, { + "id": "d1c4669c-8562-48e2-a1e9-c2b5ef09eed6", + "comment": "", + "command": "type", + "target": "id=form_shippings_1_name_name02", + "targets": [ + ["id=form_shippings_1_name_name02", "id"], + ["name=form[shippings][1][name][name02]", "name"], + ["css=#form_shippings_1_name_name02", "css:finder"], + ["xpath=//input[@id='form_shippings_1_name_name02']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[2]/div/div/div/div/div[2]/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[2]/div/div/div/div/div[2]/input", "xpath:position"] + ], + "value": "キューブ" + }, { + "id": "8183ee82-caf3-45be-a010-e42206ba546f", + "comment": "", + "command": "type", + "target": "id=form_shippings_1_kana_kana01", + "targets": [ + ["id=form_shippings_1_kana_kana01", "id"], + ["name=form[shippings][1][kana][kana01]", "name"], + ["css=#form_shippings_1_kana_kana01", "css:finder"], + ["xpath=//input[@id='form_shippings_1_kana_kana01']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[2]/div/div[2]/div/div/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[2]/div/div[2]/div/div/div/input", "xpath:position"] + ], + "value": "イシイ" + }, { + "id": "5f3080be-d012-49db-9459-92cf8150fe46", + "comment": "", + "command": "type", + "target": "id=form_shippings_1_kana_kana02", + "targets": [ + ["id=form_shippings_1_kana_kana02", "id"], + ["name=form[shippings][1][kana][kana02]", "name"], + ["css=#form_shippings_1_kana_kana02", "css:finder"], + ["xpath=//input[@id='form_shippings_1_kana_kana02']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[2]/div/div[2]/div/div/div[2]/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[2]/div/div[2]/div/div/div[2]/input", "xpath:position"] + ], + "value": "キューブ" + }, { + "id": "21f72fe4-d2dd-4460-85dd-3c4aa9359408", + "comment": "", + "command": "type", + "target": "id=form_shippings_1_postal_code", + "targets": [ + ["id=form_shippings_1_postal_code", "id"], + ["name=form[shippings][1][postal_code]", "name"], + ["css=#form_shippings_1_postal_code", "css:finder"], + ["xpath=//input[@id='form_shippings_1_postal_code']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[2]/div/div[3]/div/div/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[2]/div/div[3]/div/div/div/input", "xpath:position"] + ], + "value": "5300002" + }, { + "id": "fad77f5b-01dd-4956-83f2-80aa79dc8773", + "comment": "", + "command": "click", + "target": "id=form_shippings_1_address_addr02", + "targets": [ + ["id=form_shippings_1_address_addr02", "id"], + ["name=form[shippings][1][address][addr02]", "name"], + ["css=#form_shippings_1_address_addr02", "css:finder"], + ["xpath=//input[@id='form_shippings_1_address_addr02']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[2]/div/div[3]/div/div[4]/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[2]/div/div[3]/div/div[4]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "ad4fcefd-3e8e-417c-867d-ed1050f75810", + "comment": "", + "command": "type", + "target": "id=form_shippings_1_address_addr02", + "targets": [ + ["id=form_shippings_1_address_addr02", "id"], + ["name=form[shippings][1][address][addr02]", "name"], + ["css=#form_shippings_1_address_addr02", "css:finder"], + ["xpath=//input[@id='form_shippings_1_address_addr02']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[2]/div/div[3]/div/div[4]/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[2]/div/div[3]/div/div[4]/div/input", "xpath:position"] + ], + "value": "2" + }, { + "id": "a2924fde-f0c9-4f8b-b069-570f289c1604", + "comment": "", + "command": "type", + "target": "id=form_shippings_1_phone_number", + "targets": [ + ["id=form_shippings_1_phone_number", "id"], + ["name=form[shippings][1][phone_number]", "name"], + ["css=#form_shippings_1_phone_number", "css:finder"], + ["xpath=//input[@id='form_shippings_1_phone_number']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[2]/div[2]/div/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[2]/div[2]/div/div/input", "xpath:position"] + ], + "value": "999999999" + }, { + "id": "d9a48246-7e84-4d1c-b9e6-1d36da14f593", + "comment": "", + "command": "type", + "target": "id=form_shippings_1_company_name", + "targets": [ + ["id=form_shippings_1_company_name", "id"], + ["name=form[shippings][1][company_name]", "name"], + ["css=#form_shippings_1_company_name", "css:finder"], + ["xpath=//input[@id='form_shippings_1_company_name']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[2]/div[2]/div[2]/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[2]/div[2]/div[2]/div/input", "xpath:position"] + ], + "value": "イーシーキューブ" + }, { + "id": "a5f75dfe-573b-419e-98ca-6b20e904b63b", + "comment": "", + "command": "click", + "target": "id=form_shippings_1_tracking_number", + "targets": [ + ["id=form_shippings_1_tracking_number", "id"], + ["name=form[shippings][1][tracking_number]", "name"], + ["css=#form_shippings_1_tracking_number", "css:finder"], + ["xpath=//input[@id='form_shippings_1_tracking_number']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[4]/div/div/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[4]/div/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "82e621a3-76f7-447d-9f52-11897e296a3a", + "comment": "", + "command": "type", + "target": "id=form_shippings_1_tracking_number", + "targets": [ + ["id=form_shippings_1_tracking_number", "id"], + ["name=form[shippings][1][tracking_number]", "name"], + ["css=#form_shippings_1_tracking_number", "css:finder"], + ["xpath=//input[@id='form_shippings_1_tracking_number']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[4]/div/div/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[4]/div/div/div/input", "xpath:position"] + ], + "value": "888888888" + }, { + "id": "ddabf73e-a5fe-4d9b-8248-c0423bfc71ba", + "comment": "", + "command": "select", + "target": "id=form_shippings_1_Delivery", + "targets": [], + "value": "label=サンプル宅配" + }, { + "id": "16ff4f07-efed-409f-a865-51fcebacda1f", + "comment": "", + "command": "click", + "target": "css=#form_shippings_1_Delivery > option:nth-child(2)", + "targets": [ + ["css=#form_shippings_1_Delivery > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='2'])[8]", "xpath:attributes"], + ["xpath=//select[@id='form_shippings_1_Delivery']/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[4]/div/div[2]/div/select/option[2]", "xpath:position"] + ], + "value": "" + }, { + "id": "03672bc2-0c25-4b50-b072-a679247cd24c", + "comment": "", + "command": "click", + "target": "id=form_shippings_1_DeliveryTime", + "targets": [ + ["id=form_shippings_1_DeliveryTime", "id"], + ["name=form[shippings][1][DeliveryTime]", "name"], + ["css=#form_shippings_1_DeliveryTime", "css:finder"], + ["xpath=//select[@id='form_shippings_1_DeliveryTime']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[4]/div[2]/div[2]/div/select", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[4]/div[2]/div[2]/div/select", "xpath:position"] + ], + "value": "" + }, { + "id": "bc779ac3-77c5-413f-8bd2-1a829383ae0f", + "comment": "", + "command": "click", + "target": "css=#form_shippings_1_shipping_delivery_date_year > option:nth-child(1)", + "targets": [ + ["css=#form_shippings_1_shipping_delivery_date_year > option:nth-child(1)", "css:finder"], + ["xpath=(//option[@value=''])[8]", "xpath:attributes"], + ["xpath=//select[@id='form_shippings_1_shipping_delivery_date_year']/option", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[4]/div[2]/div/div/div/select/option", "xpath:position"] + ], + "value": "" + }, { + "id": "434a9be4-c7ca-456c-9ac2-6ddcf5da38f6", + "comment": "", + "command": "select", + "target": "id=form_shippings_1_shipping_delivery_date_year", + "targets": [], + "value": "label=2016" + }, { + "id": "0bcd0afb-1888-461b-8300-fb4c58d66649", + "comment": "", + "command": "click", + "target": "css=#form_shippings_1_shipping_delivery_date_year > option:nth-child(3)", + "targets": [ + ["css=#form_shippings_1_shipping_delivery_date_year > option:nth-child(3)", "css:finder"], + ["xpath=(//option[@value='2016'])[2]", "xpath:attributes"], + ["xpath=//select[@id='form_shippings_1_shipping_delivery_date_year']/option[3]", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[4]/div[2]/div/div/div/select/option[3]", "xpath:position"] + ], + "value": "" + }, { + "id": "c76bc4b9-2d9e-4bbc-95a2-40c41cab44a0", + "comment": "", + "command": "select", + "target": "id=form_shippings_1_shipping_delivery_date_month", + "targets": [], + "value": "label=05" + }, { + "id": "e7e9404d-6f78-4fc2-9c30-25dd8cfc2beb", + "comment": "", + "command": "click", + "target": "css=#form_shippings_1_shipping_delivery_date_month > option:nth-child(6)", + "targets": [ + ["css=#form_shippings_1_shipping_delivery_date_month > option:nth-child(6)", "css:finder"], + ["xpath=(//option[@value='5'])[6]", "xpath:attributes"], + ["xpath=//select[@id='form_shippings_1_shipping_delivery_date_month']/option[6]", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[4]/div[2]/div/div/div/select[2]/option[6]", "xpath:position"] + ], + "value": "" + }, { + "id": "ed2b3088-261e-4b98-a3d2-af592b5941c6", + "comment": "", + "command": "select", + "target": "id=form_shippings_1_shipping_delivery_date_day", + "targets": [], + "value": "label=06" + }, { + "id": "b1851e0a-4a49-4b18-8c5f-7316bc39afdb", + "comment": "", + "command": "click", + "target": "css=#form_shippings_1_shipping_delivery_date_day > option:nth-child(7)", + "targets": [ + ["css=#form_shippings_1_shipping_delivery_date_day > option:nth-child(7)", "css:finder"], + ["xpath=(//option[@value='6'])[7]", "xpath:attributes"], + ["xpath=//select[@id='form_shippings_1_shipping_delivery_date_day']/option[7]", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[4]/div[2]/div/div/div/select[3]/option[7]", "xpath:position"] + ], + "value": "" + }, { + "id": "0eb43402-8f24-422a-80c7-518d4ee03f79", + "comment": "", + "command": "click", + "target": "css=#shipping-product_1 .addProduct-button", + "targets": [ + ["css=#shipping-product_1 .addProduct-button", "css:finder"], + ["xpath=(//button[@type='button'])[17]", "xpath:attributes"], + ["xpath=//div[@id='shipping-product_1']/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[6]/div/button", "xpath:position"] + ], + "value": "" + }, { + "id": "b64cb154-fb5d-487a-9cda-0c73e98969e9", + "comment": "", + "command": "mouseOver", + "target": "css=#shipping-product_1 .addProduct-button", + "targets": [ + ["css=#shipping-product_1 .addProduct-button", "css:finder"], + ["xpath=(//button[@type='button'])[17]", "xpath:attributes"], + ["xpath=//div[@id='shipping-product_1']/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[6]/div/button", "xpath:position"] + ], + "value": "" + }, { + "id": "219b8e17-3c07-44b5-9a76-be5ed688bc18", + "comment": "", + "command": "mouseOut", + "target": "css=#shipping-product_1 .addProduct-button", + "targets": [ + ["css=#shipping-product_1 .addProduct-button", "css:finder"], + ["xpath=(//button[@type='button'])[17]", "xpath:attributes"], + ["xpath=//div[@id='shipping-product_1']/div/button", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[6]/div/button", "xpath:position"] + ], + "value": "" + }, { + "id": "79a51688-af21-4319-b30b-5109c5f23c58", + "comment": "", + "command": "click", + "target": "id=searchProductModalButton", + "targets": [ + ["id=searchProductModalButton", "id"], + ["css=#searchProductModalButton", "css:finder"], + ["xpath=//button[@id='searchProductModalButton']", "xpath:attributes"], + ["xpath=//div[@id='addProduct']/div/div/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'検索')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "4918367b-c1ab-4503-a228-7305bb945179", + "comment": "", + "command": "select", + "target": "id=classcategory_id14", + "targets": [], + "value": "label=32mm × 32mm" + }, { + "id": "49ee4d7c-aac9-44f3-b136-c51572a31b4b", + "comment": "", + "command": "click", + "target": "css=#classcategory_id14 > option:nth-child(2)", + "targets": [ + ["css=#classcategory_id14 > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='5'])[2]", "xpath:attributes"], + ["xpath=//select[@id='classcategory_id14']/option[2]", "xpath:idRelative"], + ["xpath=//td[3]/div/div[2]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'32mm × 32mm')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "6bc9f9dc-53fe-44b5-be2e-95e042cbaab9", + "comment": "", + "command": "select", + "target": "name=classcategory_id2", + "targets": [], + "value": "label=抹茶" + }, { + "id": "f2d6b40f-2321-4f4a-8393-4430fc828ac1", + "comment": "", + "command": "click", + "target": "css=.row:nth-child(2) > .col-8 option:nth-child(2)", + "targets": [ + ["css=.row:nth-child(2) > .col-8 option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='2'])[2]", "xpath:attributes"], + ["xpath=//div[@id='searchProductModalList']/table/tbody/tr/td[3]/div[2]/div[2]/select/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'抹茶')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "c5697bc1-f2f1-4c76-9d08-daf31e63cec1", + "comment": "", + "command": "click", + "target": "css=tr:nth-child(2) .fa", + "targets": [ + ["css=tr:nth-child(2) .fa", "css:finder"], + ["xpath=//div[@id='searchProductModalList']/table/tbody/tr/td[4]/button/i", "xpath:idRelative"], + ["xpath=//button/i", "xpath:position"] + ], + "value": "" + }, { + "id": "fbd977d4-8b8b-4ebd-bd1b-07b49f76d57d", + "comment": "", + "command": "mouseOver", + "target": "css=tr:nth-child(2) .fa", + "targets": [ + ["css=tr:nth-child(2) .fa", "css:finder"], + ["xpath=//div[@id='searchProductModalList']/table/tbody/tr/td[4]/button/i", "xpath:idRelative"], + ["xpath=//button/i", "xpath:position"] + ], + "value": "" + }, { + "id": "c9d2ffff-df21-46e1-8f26-5c7f3316c428", + "comment": "", + "command": "click", + "target": "id=form_shippings_0_note", + "targets": [ + ["id=form_shippings_0_note", "id"], + ["name=form[shippings][0][note]", "name"], + ["css=#form_shippings_0_note", "css:finder"], + ["xpath=//textarea[@id='form_shippings_0_note']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_0']/div/div[9]/div/div/div/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "5dceae02-ecf7-493a-ae89-41140675af75", + "comment": "", + "command": "click", + "target": "id=form_shippings_1_note", + "targets": [ + ["id=form_shippings_1_note", "id"], + ["name=form[shippings][1][note]", "name"], + ["css=#form_shippings_1_note", "css:finder"], + ["xpath=//textarea[@id='form_shippings_1_note']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[9]/div/div/div/textarea", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[9]/div/div/div/textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "e031ee06-35b4-4701-b0e5-8b79ebf0339f", + "comment": "", + "command": "type", + "target": "id=form_shippings_1_note", + "targets": [ + ["id=form_shippings_1_note", "id"], + ["name=form[shippings][1][note]", "name"], + ["css=#form_shippings_1_note", "css:finder"], + ["xpath=//textarea[@id='form_shippings_1_note']", "xpath:attributes"], + ["xpath=//div[@id='shipmentOverview_1']/div/div[9]/div/div/div/textarea", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[9]/div/div/div/textarea", "xpath:position"] + ], + "value": "出荷メモ2" + }, { + "id": "3380b17f-47d5-4a48-bb42-51643a11b5de", + "comment": "", + "command": "click", + "target": "css=#shipping-product_1 .addOtherProduct-button", + "targets": [ + ["css=#shipping-product_1 .addOtherProduct-button", "css:finder"], + ["xpath=(//a[contains(text(),'その他の明細を追加')])[2]", "xpath:link"], + ["xpath=//div[@id='shipping-product_1']/div/a", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[6]/div/a", "xpath:position"] + ], + "value": "" + }, { + "id": "a4f10e27-58c6-4b2b-83a2-5188a647bb3f", + "comment": "", + "command": "click", + "target": "css=tr:nth-child(4) .fa", + "targets": [ + ["css=tr:nth-child(4) .fa", "css:finder"], + ["xpath=//div[@id='searchOrderItemTypeList']/table/tbody/tr[2]/td[3]/button/i", "xpath:idRelative"], + ["xpath=//tr[2]/td[3]/button/i", "xpath:position"] + ], + "value": "" + }, { + "id": "072cd5b1-0177-45b0-8753-07eea8594b13", + "comment": "", + "command": "mouseOver", + "target": "css=tr:nth-child(4) .fa", + "targets": [ + ["css=tr:nth-child(4) .fa", "css:finder"], + ["xpath=//div[@id='searchOrderItemTypeList']/table/tbody/tr[2]/td[3]/button/i", "xpath:idRelative"], + ["xpath=//tr[2]/td[3]/button/i", "xpath:position"] + ], + "value": "" + }, { + "id": "7b772945-53fe-4689-802f-e76669613a27", + "comment": "", + "command": "mouseOut", + "target": "css=tr:nth-child(4) .fa", + "targets": [ + ["css=tr:nth-child(4) .fa", "css:finder"], + ["xpath=//div[@id='searchOrderItemTypeList']/table/tbody/tr[2]/td[3]/button/i", "xpath:idRelative"], + ["xpath=//tr[2]/td[3]/button/i", "xpath:position"] + ], + "value": "" + }, { + "id": "2cb2997c-c906-4f60-b805-dde1c9cd336f", + "comment": "", + "command": "click", + "target": "id=btn_save", + "targets": [ + ["id=btn_save", "id"], + ["name=mode", "name"], + ["css=#btn_save", "css:finder"], + ["xpath=//button[@id='btn_save']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[5]/div/div/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[5]/div/div/div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "2efff5ca-32c4-4b25-8797-5b5ee574f65c", + "comment": "", + "command": "mouseOver", + "target": "id=btn_save", + "targets": [ + ["id=btn_save", "id"], + ["name=mode", "name"], + ["css=#btn_save", "css:finder"], + ["xpath=//button[@id='btn_save']", "xpath:attributes"], + ["xpath=//form[@id='form1']/div[5]/div/div/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//div[5]/div/div/div[2]/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "5c12f634-8dbf-46e0-8143-10742ec6677a", + "comment": "", + "command": "click", + "target": "css=.c-baseLink > span", + "targets": [ + ["css=.c-baseLink > span", "css:finder"], + ["xpath=//form[@id='form1']/div[5]/div/div/div/div/a/span", "xpath:idRelative"], + ["xpath=//div[5]/div/div/div/div/a/span", "xpath:position"] + ], + "value": "" + }, { + "id": "423985bd-b2b5-4fed-b012-f7053a735868", + "comment": "", + "command": "click", + "target": "css=.c-baseLink > span", + "targets": [ + ["css=.c-baseLink > span", "css:finder"], + ["xpath=//form[@id='form1']/div[5]/div/div/div/div/a/span", "xpath:idRelative"], + ["xpath=//div[5]/div/div/div/div/a/span", "xpath:position"] + ], + "value": "" + }, { + "id": "5849bb6e-c174-4f1b-9d7d-6c21fa3e2e09", + "comment": "", + "command": "doubleClick", + "target": "css=.c-baseLink > span", + "targets": [ + ["css=.c-baseLink > span", "css:finder"], + ["xpath=//form[@id='form1']/div[5]/div/div/div/div/a/span", "xpath:idRelative"], + ["xpath=//div[5]/div/div/div/div/a/span", "xpath:position"] + ], + "value": "" + }, { + "id": "20ccf336-7e35-471f-8f0f-b98433bcee2a", + "comment": "", + "command": "click", + "target": "linkText=その他の明細を追加", + "targets": [ + ["linkText=その他の明細を追加", "linkText"], + ["css=.col-6 > .btn", "css:finder"], + ["xpath=//a[contains(text(),'その他の明細を追加')]", "xpath:link"], + ["xpath=//div[@id='orderItem']/div/div/div/a", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/div/div/div/a", "xpath:position"], + ["xpath=//a[contains(.,'その他の明細を追加')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "3c8def23-902f-46a3-9915-ca34a7912601", + "comment": "", + "command": "click", + "target": "css=tr:nth-child(4) .fa", + "targets": [ + ["css=tr:nth-child(4) .fa", "css:finder"], + ["xpath=//div[@id='searchOrderItemTypeList']/table/tbody/tr[2]/td[3]/button/i", "xpath:idRelative"], + ["xpath=//tr[2]/td[3]/button/i", "xpath:position"] + ], + "value": "" + }, { + "id": "4d355047-4e97-4f30-b9a7-1a756a396716", + "comment": "", + "command": "click", + "target": "id=order_OrderItems_2_price", + "targets": [ + ["id=order_OrderItems_2_price", "id"], + ["name=order[OrderItems][2][price]", "name"], + ["css=#order_OrderItems_2_price", "css:finder"], + ["xpath=//input[@id='order_OrderItems_2_price']", "xpath:attributes"], + ["xpath=//table[@id='table-form-field']/tbody/tr[3]/td[2]/div/div/input", "xpath:idRelative"], + ["xpath=//tr[3]/td[2]/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "dc85d203-464b-45df-94ba-16eea738a67f", + "comment": "", + "command": "click", + "target": "id=order_OrderItems_2_price", + "targets": [ + ["id=order_OrderItems_2_price", "id"], + ["name=order[OrderItems][2][price]", "name"], + ["css=#order_OrderItems_2_price", "css:finder"], + ["xpath=//input[@id='order_OrderItems_2_price']", "xpath:attributes"], + ["xpath=//table[@id='table-form-field']/tbody/tr[3]/td[2]/div/div/input", "xpath:idRelative"], + ["xpath=//tr[3]/td[2]/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "109c74ce-6255-4d12-992a-f64bc01912ed", + "comment": "", + "command": "doubleClick", + "target": "id=order_OrderItems_2_price", + "targets": [ + ["id=order_OrderItems_2_price", "id"], + ["name=order[OrderItems][2][price]", "name"], + ["css=#order_OrderItems_2_price", "css:finder"], + ["xpath=//input[@id='order_OrderItems_2_price']", "xpath:attributes"], + ["xpath=//table[@id='table-form-field']/tbody/tr[3]/td[2]/div/div/input", "xpath:idRelative"], + ["xpath=//tr[3]/td[2]/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "a58ad46a-e7a6-42a3-a2df-6dcc6774d629", + "comment": "", + "command": "type", + "target": "id=order_OrderItems_2_price", + "targets": [ + ["id=order_OrderItems_2_price", "id"], + ["name=order[OrderItems][2][price]", "name"], + ["css=#order_OrderItems_2_price", "css:finder"], + ["xpath=//input[@id='order_OrderItems_2_price']", "xpath:attributes"], + ["xpath=//table[@id='table-form-field']/tbody/tr[3]/td[2]/div/div/input", "xpath:idRelative"], + ["xpath=//tr[3]/td[2]/div/div/input", "xpath:position"] + ], + "value": "1000" + }, { + "id": "cbb7c6cd-6e6b-45f3-b060-e0a591c98519", + "comment": "", + "command": "click", + "target": "id=order_OrderItems_4_price", + "targets": [ + ["id=order_OrderItems_4_price", "id"], + ["name=order[OrderItems][4][price]", "name"], + ["css=#order_OrderItems_4_price", "css:finder"], + ["xpath=//input[@id='order_OrderItems_4_price']", "xpath:attributes"], + ["xpath=//table[@id='table-form-field']/tbody/tr[4]/td[2]/div/div/input", "xpath:idRelative"], + ["xpath=//tr[4]/td[2]/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "83f19bd1-993f-474b-b0b2-588e8c169dc7", + "comment": "", + "command": "click", + "target": "id=order_OrderItems_4_price", + "targets": [ + ["id=order_OrderItems_4_price", "id"], + ["name=order[OrderItems][4][price]", "name"], + ["css=#order_OrderItems_4_price", "css:finder"], + ["xpath=//input[@id='order_OrderItems_4_price']", "xpath:attributes"], + ["xpath=//table[@id='table-form-field']/tbody/tr[4]/td[2]/div/div/input", "xpath:idRelative"], + ["xpath=//tr[4]/td[2]/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "61dc8c45-9c74-4488-994f-7d281e39429c", + "comment": "", + "command": "doubleClick", + "target": "id=order_OrderItems_4_price", + "targets": [ + ["id=order_OrderItems_4_price", "id"], + ["name=order[OrderItems][4][price]", "name"], + ["css=#order_OrderItems_4_price", "css:finder"], + ["xpath=//input[@id='order_OrderItems_4_price']", "xpath:attributes"], + ["xpath=//table[@id='table-form-field']/tbody/tr[4]/td[2]/div/div/input", "xpath:idRelative"], + ["xpath=//tr[4]/td[2]/div/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "a2527b54-c0ba-487e-8dec-cb06c4dd7245", + "comment": "", + "command": "type", + "target": "id=order_OrderItems_4_price", + "targets": [ + ["id=order_OrderItems_4_price", "id"], + ["name=order[OrderItems][4][price]", "name"], + ["css=#order_OrderItems_4_price", "css:finder"], + ["xpath=//input[@id='order_OrderItems_4_price']", "xpath:attributes"], + ["xpath=//table[@id='table-form-field']/tbody/tr[4]/td[2]/div/div/input", "xpath:idRelative"], + ["xpath=//tr[4]/td[2]/div/div/input", "xpath:position"] + ], + "value": "1000" + }, { + "id": "3bae2c1a-67a4-4859-a77b-20c709c5f81d", + "comment": "", + "command": "click", + "target": "css=.row:nth-child(10)", + "targets": [ + ["css=.row:nth-child(10)", "css:finder"], + ["xpath=//div[@id='orderItem']/div/div[7]", "xpath:idRelative"], + ["xpath=//div[7]", "xpath:position"] + ], + "value": "" + }, { + "id": "ed24d815-1778-4cfa-b46f-f6a9dbb05f29", + "comment": "", + "command": "click", + "target": "css=.btn-ec-conversion > .ladda-label", + "targets": [ + ["css=.btn-ec-conversion > .ladda-label", "css:finder"], + ["xpath=//form[@id='form1']/div[2]/div/div/div[2]/div/div/button/span", "xpath:idRelative"], + ["xpath=//div[2]/div/div/button/span", "xpath:position"] + ], + "value": "" + }, { + "id": "176e36ac-f4eb-4c2d-92f6-a2861d0093e8", + "comment": "", + "command": "click", + "target": "css=#mailHistory > .card-body", + "targets": [ + ["css=#mailHistory > .card-body", "css:finder"], + ["xpath=//div[@id='mailHistory']/div", "xpath:idRelative"], + ["xpath=//div[6]/div[2]/div", "xpath:position"] + ], + "value": "" + }, { + "id": "0aacdb15-1b20-48ac-93b3-a5594898e057", + "comment": "", + "command": "click", + "target": "linkText=メールを作成", + "targets": [ + ["linkText=メールを作成", "linkText"], + ["css=.text-center > .btn", "css:finder"], + ["xpath=//a[contains(text(),'メールを作成')]", "xpath:link"], + ["xpath=//div[@id='mailHistory']/div/div/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, '/admin/order/3/mail')]", "xpath:href"], + ["xpath=//div[6]/div[2]/div/div/a", "xpath:position"], + ["xpath=//a[contains(.,'メールを作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "6e412281-4b8f-4667-86ab-c736068d777e", + "comment": "", + "command": "mouseOver", + "target": "linkText=メールを作成", + "targets": [ + ["linkText=メールを作成", "linkText"], + ["css=.text-center > .btn", "css:finder"], + ["xpath=//a[contains(text(),'メールを作成')]", "xpath:link"], + ["xpath=//div[@id='mailHistory']/div/div/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, '/admin/order/3/mail')]", "xpath:href"], + ["xpath=//div[6]/div[2]/div/div/a", "xpath:position"], + ["xpath=//a[contains(.,'メールを作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "7d8cfa7a-4302-4426-ad84-efa5a0cb419c", + "comment": "", + "command": "mouseOut", + "target": "linkText=メールを作成", + "targets": [ + ["linkText=メールを作成", "linkText"], + ["css=.text-center > .btn", "css:finder"], + ["xpath=//a[contains(text(),'メールを作成')]", "xpath:link"], + ["xpath=//div[@id='mailHistory']/div/div/a", "xpath:idRelative"], + ["xpath=(//a[contains(@href, '/admin/order/3/mail')])[2]", "xpath:href"], + ["xpath=//div[6]/div[2]/div/div/a", "xpath:position"], + ["xpath=//a[contains(.,'メールを作成')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "2bd7dd2f-dfca-42d7-9bce-186e99106d7b", + "comment": "", + "command": "click", + "target": "linkText=保存せずに移動", + "targets": [ + ["linkText=保存せずに移動", "linkText"], + ["css=.btn-ec-sub:nth-child(2)", "css:finder"], + ["xpath=//a[contains(text(),'保存せずに移動')]", "xpath:link"], + ["xpath=//div[@id='confirmFormChangeModal']/div/div/div[3]/a[2]", "xpath:idRelative"], + ["xpath=//a[contains(@href, '/admin/order/3/mail')]", "xpath:href"], + ["xpath=//div[3]/a[2]", "xpath:position"], + ["xpath=//a[contains(.,'保存せずに移動')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "cd85f991-48f5-4bac-bf29-0b8e0f61320a", + "comment": "", + "command": "click", + "target": "css=option:nth-child(2)", + "targets": [ + ["css=option:nth-child(2)", "css:finder"], + ["xpath=//option[@value='1']", "xpath:attributes"], + ["xpath=//select[@id='template-change']/option[2]", "xpath:idRelative"], + ["xpath=//option[2]", "xpath:position"], + ["xpath=//option[contains(.,'注文受付メール')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "0b84df8b-e863-4230-b31b-3591ca2c5e32", + "comment": "", + "command": "click", + "target": "css=.ladda-label", + "targets": [ + ["css=.ladda-label", "css:finder"], + ["xpath=//form[@id='order-mail-form']/div[2]/div/div/div[2]/div/div/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"], + ["xpath=//span[contains(.,'送信内容を確認')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "f81b83a5-a92d-4a98-bb08-66ceeb9277bf", + "comment": "", + "command": "click", + "target": "css=.btn", + "targets": [ + ["css=.btn", "css:finder"], + ["xpath=//button[@name='mode']", "xpath:attributes"], + ["xpath=//form[@id='order-mail-form']/div/div[3]/div/div/div[2]/div/div/button", "xpath:idRelative"], + ["xpath=//button", "xpath:position"], + ["xpath=//button[contains(.,'送信')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "c44f984a-88c9-4b28-95cb-4e037b8878b3", + "comment": "", + "command": "click", + "target": "css=.c-baseLink > span", + "targets": [ + ["css=.c-baseLink > span", "css:finder"], + ["xpath=//form[@id='form1']/div[2]/div/div/div/div/a/span", "xpath:idRelative"], + ["xpath=//div/div/a/span", "xpath:position"] + ], + "value": "" + }, { + "id": "a4c7ab56-b824-4491-be12-5fa230630e4e", + "comment": "", + "command": "mouseOver", + "target": "css=tr:nth-child(3) > .align-middle > .btn", + "targets": [ + ["css=tr:nth-child(3) > .align-middle > .btn", "css:finder"], + ["xpath=//table[@id='search_result']/tbody/tr[3]/td[6]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/order/2/edit#order_message')]", "xpath:href"], + ["xpath=//tr[3]/td[6]/a", "xpath:position"] + ], + "value": "" + }, { + "id": "8ba852c7-68d0-4d3e-9db8-ea75f4a1671a", + "comment": "", + "command": "mouseOut", + "target": "css=tr:nth-child(3) > .align-middle > .btn", + "targets": [ + ["css=tr:nth-child(3) > .align-middle > .btn", "css:finder"], + ["xpath=//table[@id='search_result']/tbody/tr[3]/td[6]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/order/2/edit#order_message')]", "xpath:href"], + ["xpath=//tr[3]/td[6]/a", "xpath:position"] + ], + "value": "" + }, { + "id": "3c6e2619-917a-4464-b188-990d1987144e", + "comment": "", + "command": "click", + "target": "id=tracking_number_2", + "targets": [ + ["id=tracking_number_2", "id"], + ["css=#tracking_number_2", "css:finder"], + ["xpath=//input[@id='tracking_number_2']", "xpath:attributes"], + ["xpath=//table[@id='search_result']/tbody/tr[3]/td[8]/div/input", "xpath:idRelative"], + ["xpath=//tr[3]/td[8]/div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "e8463776-972d-490e-bec8-dd8690a01d30", + "comment": "", + "command": "type", + "target": "id=tracking_number_2", + "targets": [ + ["id=tracking_number_2", "id"], + ["css=#tracking_number_2", "css:finder"], + ["xpath=//input[@id='tracking_number_2']", "xpath:attributes"], + ["xpath=//table[@id='search_result']/tbody/tr[3]/td[8]/div/input", "xpath:idRelative"], + ["xpath=//tr[3]/td[8]/div/input", "xpath:position"] + ], + "value": "333333333" + }, { + "id": "52fc839d-1669-4462-b8a4-b73908780fdc", + "comment": "", + "command": "mouseOver", + "target": "css=tr:nth-child(2) .input-group .btn", + "targets": [ + ["css=tr:nth-child(2) .input-group .btn", "css:finder"], + ["xpath=(//button[@type='button'])[7]", "xpath:attributes"], + ["xpath=//table[@id='search_result']/tbody/tr[2]/td[8]/div/span/button", "xpath:idRelative"], + ["xpath=//tr[2]/td[8]/div/span/button", "xpath:position"] + ], + "value": "" + }, { + "id": "bce7756f-260b-49db-b24b-4f7b7173d803", + "comment": "", + "command": "click", + "target": "id=toggle_check_all", + "targets": [ + ["id=toggle_check_all", "id"], + ["name=filter", "name"], + ["css=#toggle_check_all", "css:finder"], + ["xpath=//input[@id='toggle_check_all']", "xpath:attributes"], + ["xpath=//table[@id='search_result']/thead/tr/th/input", "xpath:idRelative"], + ["xpath=//th/input", "xpath:position"] + ], + "value": "" + }, { + "id": "a74d3236-f5d7-4a15-b286-d70d6d01d178", + "comment": "", + "command": "select", + "target": "id=option_bulk_status", + "targets": [], + "value": "label=発送済み" + }, { + "id": "1b946eef-5b9a-4a8d-a2e2-01193eeb4b59", + "comment": "", + "command": "click", + "target": "css=#option_bulk_status > option:nth-child(6)", + "targets": [ + ["css=#option_bulk_status > option:nth-child(6)", "css:finder"], + ["xpath=//option[@value='5']", "xpath:attributes"], + ["xpath=//select[@id='option_bulk_status']/option[6]", "xpath:idRelative"], + ["xpath=//option[6]", "xpath:position"], + ["xpath=//option[contains(.,'発送済み')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "29a37fff-719e-4541-8590-d80e957880e9", + "comment": "", + "command": "click", + "target": "id=btn_bulk_status", + "targets": [ + ["id=btn_bulk_status", "id"], + ["css=#btn_bulk_status", "css:finder"], + ["xpath=//button[@id='btn_bulk_status']", "xpath:attributes"], + ["xpath=//form[@id='form_bulk']/div/div/div/div[2]/button", "xpath:idRelative"], + ["xpath=//div[2]/button", "xpath:position"], + ["xpath=//button[contains(.,'決定')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "e2c32a7e-0af3-45cb-b1ae-225359d3c953", + "comment": "", + "command": "click", + "target": "id=bulkChangeComplete", + "targets": [ + ["id=bulkChangeComplete", "id"], + ["css=#bulkChangeComplete", "css:finder"], + ["xpath=//button[@id='bulkChangeComplete']", "xpath:attributes"], + ["xpath=//div[@id='sentUpdateModal']/div/div/div[3]/button[3]", "xpath:idRelative"], + ["xpath=//button[3]", "xpath:position"], + ["xpath=//button[contains(.,'閉じる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "93d61621-ee6a-4a04-9815-cc2893c6b8da", + "comment": "", + "command": "click", + "target": "id=toggle_check_all", + "targets": [ + ["id=toggle_check_all", "id"], + ["name=filter", "name"], + ["css=#toggle_check_all", "css:finder"], + ["xpath=//input[@id='toggle_check_all']", "xpath:attributes"], + ["xpath=//table[@id='search_result']/thead/tr/th/input", "xpath:idRelative"], + ["xpath=//th/input", "xpath:position"] + ], + "value": "" + }, { + "id": "62901e89-47aa-4104-9778-b6a7aff916d1", + "comment": "", + "command": "click", + "target": "id=bulkSendMail", + "targets": [ + ["id=bulkSendMail", "id"], + ["css=#bulkSendMail", "css:finder"], + ["xpath=//button[@id='bulkSendMail']", "xpath:attributes"], + ["xpath=//form[@id='form_bulk']/div/div/div/div/button", "xpath:idRelative"], + ["xpath=//div[3]/div/div/form/div/div/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'メールする')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "8a7c1fbd-d262-4df5-9537-6bf1ad27bf64", + "comment": "", + "command": "mouseOver", + "target": "id=bulkSendMail", + "targets": [ + ["id=bulkSendMail", "id"], + ["css=#bulkSendMail", "css:finder"], + ["xpath=//button[@id='bulkSendMail']", "xpath:attributes"], + ["xpath=//form[@id='form_bulk']/div/div/div/div/button", "xpath:idRelative"], + ["xpath=//div[3]/div/div/form/div/div/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'メールする')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "66cf628d-8ec8-48aa-898c-8eb483ca575d", + "comment": "", + "command": "mouseOut", + "target": "id=bulkSendMail", + "targets": [ + ["id=bulkSendMail", "id"], + ["css=#bulkSendMail", "css:finder"], + ["xpath=//button[@id='bulkSendMail']", "xpath:attributes"], + ["xpath=//form[@id='form_bulk']/div/div/div/div/button", "xpath:idRelative"], + ["xpath=//div[3]/div/div/form/div/div/div/div/button", "xpath:position"], + ["xpath=//button[contains(.,'メールする')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "c95fe319-9e28-41ee-83e4-ba1cde806e59", + "comment": "", + "command": "click", + "target": "css=a > .font-weight-bold:nth-child(2)", + "targets": [ + ["css=a > .font-weight-bold:nth-child(2)", "css:finder"], + ["xpath=//div[@id='bulk-options']/div[3]/div/a/span", "xpath:idRelative"], + ["xpath=//div[3]/div/a/span", "xpath:position"], + ["xpath=//span[contains(.,'メールの文面を確認')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "a70fe589-b1f0-484d-ad77-e1c969a9daf3", + "comment": "", + "command": "click", + "target": "id=bulkChange", + "targets": [ + ["id=bulkChange", "id"], + ["css=#bulkChange", "css:finder"], + ["xpath=//button[@id='bulkChange']", "xpath:attributes"], + ["xpath=//div[@id='sentUpdateModal']/div/div/div[3]/button[2]", "xpath:idRelative"], + ["xpath=//div[3]/button[2]", "xpath:position"], + ["xpath=//button[contains(.,'送信')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "75ef8790-fd73-48e2-87f5-59b03032dc27", + "comment": "", + "command": "click", + "target": "id=bulkChangeComplete", + "targets": [ + ["id=bulkChangeComplete", "id"], + ["css=#bulkChangeComplete", "css:finder"], + ["xpath=//button[@id='bulkChangeComplete']", "xpath:attributes"], + ["xpath=//div[@id='sentUpdateModal']/div/div/div[3]/button[3]", "xpath:idRelative"], + ["xpath=//button[3]", "xpath:position"], + ["xpath=//button[contains(.,'閉じる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "41832942-3f1d-4c60-ad11-09cd45d46d9f", + "comment": "", + "command": "click", + "target": "id=bulkChangeComplete", + "targets": [ + ["id=bulkChangeComplete", "id"], + ["css=#bulkChangeComplete", "css:finder"], + ["xpath=//button[@id='bulkChangeComplete']", "xpath:attributes"], + ["xpath=//div[@id='sentUpdateModal']/div/div/div[3]/button[3]", "xpath:idRelative"], + ["xpath=//button[3]", "xpath:position"], + ["xpath=//button[contains(.,'閉じる')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "5190e5f1-00fa-4eb2-be1f-11ef7b1a549e", + "comment": "", + "command": "doubleClick", + "target": "id=bulkChangeComplete", + "targets": [ + ["id=bulkChangeComplete", "id"], + ["css=#bulkChangeComplete", "css:finder"], + ["xpath=//button[@id='bulkChangeComplete']", "xpath:attributes"], + ["xpath=//div[@id='sentUpdateModal']/div/div/div[3]/button[3]", "xpath:idRelative"], + ["xpath=//button[3]", "xpath:position"], + ["xpath=//button[contains(.,'閉じる')]", "xpath:innerText"] + ], + "value": "" + }] + }, { + "id": "72004182-0333-4101-8bdc-25c6e2eb91f1", + "name": "会員管理", + "commands": [{ + "id": "ccaf088d-8090-491d-9c51-bbe5bd4b2a9a", + "comment": "", + "command": "open", + "target": "https://ec-cube/admin/", + "targets": [], + "value": "" + }, { + "id": "fe4e8c55-4646-43df-b6d6-9054ccdaf74e", + "comment": "", + "command": "setWindowSize", + "target": "1160x821", + "targets": [], + "value": "" + }, { + "id": "c9b7c6a6-a5e9-4823-a556-e5fe2b1518d4", + "comment": "", + "command": "click", + "target": "linkText=会員管理", + "targets": [ + ["linkText=会員管理", "linkText"], + ["css=.c-mainNavArea__navItem:nth-child(4) > .c-mainNavArea__navItemTitle", "css:finder"], + ["xpath=//body[@id='page_admin_homepage']/div/div/nav/ul/li[4]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, '#nav-customer')]", "xpath:href"], + ["xpath=//nav/ul/li[4]/a", "xpath:position"], + ["xpath=//a[contains(.,' 会員管理')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "2b315ddb-b0b7-43e0-a44a-f242b187f743", + "comment": "", + "command": "click", + "target": "linkText=会員一覧", + "targets": [ + ["linkText=会員一覧", "linkText"], + ["css=#nav-customer > li:nth-child(1) > a", "css:finder"], + ["xpath=//ul[@id='nav-customer']/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/customer')]", "xpath:href"], + ["xpath=//li[4]/ul/li/a", "xpath:position"], + ["xpath=//a[contains(.,'会員一覧')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "33c0d106-c3f7-4b0a-994b-1c7acbf694dd", + "comment": "", + "command": "click", + "target": "linkText=会員登録", + "targets": [ + ["linkText=会員登録", "linkText"], + ["css=#nav-customer > li:nth-child(2) > a", "css:finder"], + ["xpath=//ul[@id='nav-customer']/li[2]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/customer/new')]", "xpath:href"], + ["xpath=//li[4]/ul/li[2]/a", "xpath:position"], + ["xpath=//a[contains(.,'会員登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "ab44b3ca-92c9-40dd-b893-0bb64d9a0420", + "comment": "", + "command": "click", + "target": "id=admin_customer_name_name01", + "targets": [ + ["id=admin_customer_name_name01", "id"], + ["name=admin_customer[name][name01]", "name"], + ["css=#admin_customer_name_name01", "css:finder"], + ["xpath=//input[@id='admin_customer_name_name01']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div/div[2]/div/div/input", "xpath:idRelative"], + ["xpath=//div/input", "xpath:position"] + ], + "value": "" + }, { + "id": "5c3c4516-611c-43cb-9533-8b449180733e", + "comment": "", + "command": "type", + "target": "id=admin_customer_name_name01", + "targets": [ + ["id=admin_customer_name_name01", "id"], + ["name=admin_customer[name][name01]", "name"], + ["css=#admin_customer_name_name01", "css:finder"], + ["xpath=//input[@id='admin_customer_name_name01']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div/div[2]/div/div/input", "xpath:idRelative"], + ["xpath=//div/input", "xpath:position"] + ], + "value": "石" + }, { + "id": "30efafb7-4a50-4cd7-b674-2ee930786f6a", + "comment": "", + "command": "type", + "target": "id=admin_customer_name_name02", + "targets": [ + ["id=admin_customer_name_name02", "id"], + ["name=admin_customer[name][name02]", "name"], + ["css=#admin_customer_name_name02", "css:finder"], + ["xpath=//input[@id='admin_customer_name_name02']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div/div[2]/div/div[2]/input", "xpath:idRelative"], + ["xpath=//div[2]/input", "xpath:position"] + ], + "value": "九部" + }, { + "id": "3dabb035-b073-4135-a9f2-cd3090879c5c", + "comment": "", + "command": "type", + "target": "id=admin_customer_kana_kana01", + "targets": [ + ["id=admin_customer_kana_kana01", "id"], + ["name=admin_customer[kana][kana01]", "name"], + ["css=#admin_customer_kana_kana01", "css:finder"], + ["xpath=//input[@id='admin_customer_kana_kana01']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[2]/div[2]/div/div/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div/input", "xpath:position"] + ], + "value": "イシ" + }, { + "id": "74678c2c-8e13-403c-a77d-ba03fc3dbf59", + "comment": "", + "command": "type", + "target": "id=admin_customer_kana_kana02", + "targets": [ + ["id=admin_customer_kana_kana02", "id"], + ["name=admin_customer[kana][kana02]", "name"], + ["css=#admin_customer_kana_kana02", "css:finder"], + ["xpath=//input[@id='admin_customer_kana_kana02']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[2]/div[2]/div/div[2]/input", "xpath:idRelative"], + ["xpath=//div[2]/div[2]/div/div[2]/input", "xpath:position"] + ], + "value": "キューブ" + }, { + "id": "4e7a0392-57f7-4bb7-a4f9-c93d866666d9", + "comment": "", + "command": "type", + "target": "id=admin_customer_company_name", + "targets": [ + ["id=admin_customer_company_name", "id"], + ["name=admin_customer[company_name]", "name"], + ["css=#admin_customer_company_name", "css:finder"], + ["xpath=//input[@id='admin_customer_company_name']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[3]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[3]/div[2]/input", "xpath:position"] + ], + "value": "イーシーキューブ" + }, { + "id": "55d7b0e5-f160-44f7-bf0c-4c594a5ab906", + "comment": "", + "command": "type", + "target": "id=admin_customer_postal_code", + "targets": [ + ["id=admin_customer_postal_code", "id"], + ["name=admin_customer[postal_code]", "name"], + ["css=#admin_customer_postal_code", "css:finder"], + ["xpath=//input[@id='admin_customer_postal_code']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[4]/div[2]/div/div/div[2]/input", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/div/div/div[2]/input", "xpath:position"] + ], + "value": "5" + }, { + "id": "9ca12c07-f425-4518-8033-19c0d7c38bbe", + "comment": "", + "command": "click", + "target": "id=admin_customer_postal_code", + "targets": [ + ["id=admin_customer_postal_code", "id"], + ["name=admin_customer[postal_code]", "name"], + ["css=#admin_customer_postal_code", "css:finder"], + ["xpath=//input[@id='admin_customer_postal_code']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[4]/div[2]/div/div/div[2]/input", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/div/div/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "ca6281de-9aef-475b-a672-35d5bd43885c", + "comment": "", + "command": "type", + "target": "id=admin_customer_postal_code", + "targets": [ + ["id=admin_customer_postal_code", "id"], + ["name=admin_customer[postal_code]", "name"], + ["css=#admin_customer_postal_code", "css:finder"], + ["xpath=//input[@id='admin_customer_postal_code']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[4]/div[2]/div/div/div[2]/input", "xpath:idRelative"], + ["xpath=//div[4]/div[2]/div/div/div[2]/input", "xpath:position"] + ], + "value": "5300003" + }, { + "id": "249eff04-d59c-4362-be02-db0e2580d54c", + "comment": "", + "command": "click", + "target": "id=admin_customer_address_addr02", + "targets": [ + ["id=admin_customer_address_addr02", "id"], + ["name=admin_customer[address][addr02]", "name"], + ["css=#admin_customer_address_addr02", "css:finder"], + ["xpath=//input[@id='admin_customer_address_addr02']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[4]/div[2]/div[4]/input", "xpath:idRelative"], + ["xpath=//div[4]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "bfd4e46b-b155-4438-959d-254c3f596b33", + "comment": "", + "command": "type", + "target": "id=admin_customer_address_addr02", + "targets": [ + ["id=admin_customer_address_addr02", "id"], + ["name=admin_customer[address][addr02]", "name"], + ["css=#admin_customer_address_addr02", "css:finder"], + ["xpath=//input[@id='admin_customer_address_addr02']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[4]/div[2]/div[4]/input", "xpath:idRelative"], + ["xpath=//div[4]/input", "xpath:position"] + ], + "value": "2" + }, { + "id": "15657c30-8359-4eee-8af9-d82bad850e97", + "comment": "", + "command": "click", + "target": "id=admin_customer_email", + "targets": [ + ["id=admin_customer_email", "id"], + ["name=admin_customer[email]", "name"], + ["css=#admin_customer_email", "css:finder"], + ["xpath=//input[@id='admin_customer_email']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[5]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[5]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "0d3996f7-d9d7-44b0-b553-f90ee8a8024c", + "comment": "", + "command": "type", + "target": "id=admin_customer_email", + "targets": [ + ["id=admin_customer_email", "id"], + ["name=admin_customer[email]", "name"], + ["css=#admin_customer_email", "css:finder"], + ["xpath=//input[@id='admin_customer_email']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[5]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[5]/div[2]/input", "xpath:position"] + ], + "value": "ec-cube-cube@example.com" + }, { + "id": "3d878741-b012-43ab-bcea-4950f0f42d69", + "comment": "", + "command": "type", + "target": "id=admin_customer_phone_number", + "targets": [ + ["id=admin_customer_phone_number", "id"], + ["name=admin_customer[phone_number]", "name"], + ["css=#admin_customer_phone_number", "css:finder"], + ["xpath=//input[@id='admin_customer_phone_number']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[6]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[6]/div[2]/input", "xpath:position"] + ], + "value": "222222222" + }, { + "id": "32028c70-0a9d-4e03-847b-44a0fcaf6254", + "comment": "", + "command": "type", + "target": "id=admin_customer_password_first", + "targets": [ + ["id=admin_customer_password_first", "id"], + ["name=admin_customer[password][first]", "name"], + ["css=#admin_customer_password_first", "css:finder"], + ["xpath=//input[@id='admin_customer_password_first']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[7]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[7]/div[2]/input", "xpath:position"] + ], + "value": "password" + }, { + "id": "3785b746-4b91-447f-9c32-b388d96aa1d0", + "comment": "", + "command": "type", + "target": "id=admin_customer_password_second", + "targets": [ + ["id=admin_customer_password_second", "id"], + ["name=admin_customer[password][second]", "name"], + ["css=#admin_customer_password_second", "css:finder"], + ["xpath=//input[@id='admin_customer_password_second']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[8]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[8]/div[2]/input", "xpath:position"] + ], + "value": "password" + }, { + "id": "10699b01-3faa-4444-9f35-0433ec8967a4", + "comment": "", + "command": "click", + "target": "id=admin_customer_password_first", + "targets": [ + ["id=admin_customer_password_first", "id"], + ["name=admin_customer[password][first]", "name"], + ["css=#admin_customer_password_first", "css:finder"], + ["xpath=//input[@id='admin_customer_password_first']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[7]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[7]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "eebfe387-a0e9-4948-805c-d82b4d0200b9", + "comment": "", + "command": "type", + "target": "id=admin_customer_password_first", + "targets": [ + ["id=admin_customer_password_first", "id"], + ["name=admin_customer[password][first]", "name"], + ["css=#admin_customer_password_first", "css:finder"], + ["xpath=//input[@id='admin_customer_password_first']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[7]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[7]/div[2]/input", "xpath:position"] + ], + "value": "password123" + }, { + "id": "034b442f-ca52-4cf4-b27b-73ec29e413ee", + "comment": "", + "command": "click", + "target": "id=admin_customer_password_second", + "targets": [ + ["id=admin_customer_password_second", "id"], + ["name=admin_customer[password][second]", "name"], + ["css=#admin_customer_password_second", "css:finder"], + ["xpath=//input[@id='admin_customer_password_second']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[8]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[8]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "653245c4-1a16-48f2-8a8f-08056f92967f", + "comment": "", + "command": "type", + "target": "id=admin_customer_password_second", + "targets": [ + ["id=admin_customer_password_second", "id"], + ["name=admin_customer[password][second]", "name"], + ["css=#admin_customer_password_second", "css:finder"], + ["xpath=//input[@id='admin_customer_password_second']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[8]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[8]/div[2]/input", "xpath:position"] + ], + "value": "password12" + }, { + "id": "2dd753c3-b248-4afe-ae4f-1838eaef4be8", + "comment": "", + "command": "click", + "target": "css=.form-check:nth-child(1) > .form-check-label", + "targets": [ + ["css=.form-check:nth-child(1) > .form-check-label", "css:finder"], + ["xpath=//div[@id='admin_customer_sex']/div/label", "xpath:idRelative"], + ["xpath=//label", "xpath:position"], + ["xpath=//label[contains(.,'男性')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "48b7d593-7020-4bd2-86ff-17ab7bd9c8ca", + "comment": "", + "command": "click", + "target": "id=admin_customer_job", + "targets": [ + ["id=admin_customer_job", "id"], + ["name=admin_customer[job]", "name"], + ["css=#admin_customer_job", "css:finder"], + ["xpath=//select[@id='admin_customer_job']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[10]/div[2]/select", "xpath:idRelative"], + ["xpath=//div[2]/select", "xpath:position"] + ], + "value": "" + }, { + "id": "8f242f85-a429-4e4a-9382-652c4ed6a6a8", + "comment": "", + "command": "select", + "target": "id=admin_customer_job", + "targets": [], + "value": "label=コンピューター関連技術職" + }, { + "id": "4483bb32-a088-4883-974b-bf68cb8a1801", + "comment": "", + "command": "click", + "target": "css=#admin_customer_job > option:nth-child(4)", + "targets": [ + ["css=#admin_customer_job > option:nth-child(4)", "css:finder"], + ["xpath=(//option[@value='3'])[2]", "xpath:attributes"], + ["xpath=//select[@id='admin_customer_job']/option[4]", "xpath:idRelative"], + ["xpath=//div[2]/select/option[4]", "xpath:position"], + ["xpath=//option[contains(.,'コンピューター関連技術職')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "f6c5ce2a-5601-4634-8764-f511cd3da15c", + "comment": "", + "command": "click", + "target": "id=admin_customer_birth", + "targets": [ + ["id=admin_customer_birth", "id"], + ["name=admin_customer[birth]", "name"], + ["css=#admin_customer_birth", "css:finder"], + ["xpath=//input[@id='admin_customer_birth']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[11]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[11]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "fba068ce-052d-4558-bd13-a271b8ed36ed", + "comment": "", + "command": "click", + "target": "id=admin_customer_birth", + "targets": [ + ["id=admin_customer_birth", "id"], + ["name=admin_customer[birth]", "name"], + ["css=#admin_customer_birth", "css:finder"], + ["xpath=//input[@id='admin_customer_birth']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[11]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[11]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "424626c5-5912-4033-81bd-1b8b6d2562e3", + "comment": "", + "command": "click", + "target": "id=admin_customer_birth", + "targets": [ + ["id=admin_customer_birth", "id"], + ["name=admin_customer[birth]", "name"], + ["css=#admin_customer_birth", "css:finder"], + ["xpath=//input[@id='admin_customer_birth']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[11]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[11]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "fcee8983-89f2-43b2-8c08-5370969d75da", + "comment": "", + "command": "doubleClick", + "target": "id=admin_customer_birth", + "targets": [ + ["id=admin_customer_birth", "id"], + ["name=admin_customer[birth]", "name"], + ["css=#admin_customer_birth", "css:finder"], + ["xpath=//input[@id='admin_customer_birth']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[11]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[11]/div[2]/input", "xpath:position"] + ], + "value": "" + }, { + "id": "044843e6-a5ee-4ee2-92cd-a59ed7ffc9d7", + "comment": "", + "command": "type", + "target": "id=admin_customer_birth", + "targets": [ + ["id=admin_customer_birth", "id"], + ["name=admin_customer[birth]", "name"], + ["css=#admin_customer_birth", "css:finder"], + ["xpath=//input[@id='admin_customer_birth']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[11]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[11]/div[2]/input", "xpath:position"] + ], + "value": "2006-09-01" + }, { + "id": "d85b1dec-bde7-4a28-9bfa-6ac2f5cb8693", + "comment": "", + "command": "type", + "target": "id=admin_customer_point", + "targets": [ + ["id=admin_customer_point", "id"], + ["name=admin_customer[point]", "name"], + ["css=#admin_customer_point", "css:finder"], + ["xpath=//input[@id='admin_customer_point']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[12]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[12]/div[2]/input", "xpath:position"] + ], + "value": "10000" + }, { + "id": "d8093263-2c31-408e-87e4-6cf8ee94a16c", + "comment": "", + "command": "click", + "target": "css=.row:nth-child(11) > .col-3", + "targets": [ + ["css=.row:nth-child(11) > .col-3", "css:finder"], + ["xpath=//div[@id='ordererInfo']/div/div[11]/div", "xpath:idRelative"], + ["xpath=//div[11]/div", "xpath:position"] + ], + "value": "" + }, { + "id": "67818cc8-4816-47fb-a1f5-97c877d4a9da", + "comment": "", + "command": "click", + "target": "id=admin_customer_note", + "targets": [ + ["id=admin_customer_note", "id"], + ["name=admin_customer[note]", "name"], + ["css=#admin_customer_note", "css:finder"], + ["xpath=//textarea[@id='admin_customer_note']", "xpath:attributes"], + ["xpath=//div[@id='shopMemo']/div/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "" + }, { + "id": "4a45f0ec-cc2b-4d84-af82-77ac9a15f5b1", + "comment": "", + "command": "type", + "target": "id=admin_customer_note", + "targets": [ + ["id=admin_customer_note", "id"], + ["name=admin_customer[note]", "name"], + ["css=#admin_customer_note", "css:finder"], + ["xpath=//textarea[@id='admin_customer_note']", "xpath:attributes"], + ["xpath=//div[@id='shopMemo']/div/textarea", "xpath:idRelative"], + ["xpath=//textarea", "xpath:position"] + ], + "value": "ショップ用メモ" + }, { + "id": "b0b204ca-f0bc-42fb-902d-c8b2070fabf2", + "comment": "", + "command": "click", + "target": "id=admin_customer_status", + "targets": [ + ["id=admin_customer_status", "id"], + ["name=admin_customer[status]", "name"], + ["css=#admin_customer_status", "css:finder"], + ["xpath=//select[@id='admin_customer_status']", "xpath:attributes"], + ["xpath=//div[@id='ex-conversion-action']/div/select", "xpath:idRelative"], + ["xpath=//div[2]/div/div/div[2]/div/div/select", "xpath:position"] + ], + "value": "" + }, { + "id": "4e383bc6-4fe2-4fe8-b43a-2f856e845a83", + "comment": "", + "command": "select", + "target": "id=admin_customer_status", + "targets": [], + "value": "label=本会員" + }, { + "id": "d4215ab0-0ab4-4eee-bff0-913feaef2416", + "comment": "", + "command": "click", + "target": "css=#admin_customer_status > option:nth-child(2)", + "targets": [ + ["css=#admin_customer_status > option:nth-child(2)", "css:finder"], + ["xpath=(//option[@value='2'])[3]", "xpath:attributes"], + ["xpath=//select[@id='admin_customer_status']/option[2]", "xpath:idRelative"], + ["xpath=//div[2]/div/div/div[2]/div/div/select/option[2]", "xpath:position"], + ["xpath=//option[contains(.,'本会員')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "34507518-2cbf-4ac9-838d-251449db652b", + "comment": "", + "command": "click", + "target": "css=.btn", + "targets": [ + ["css=.btn", "css:finder"], + ["xpath=//button[@type='submit']", "xpath:attributes"], + ["xpath=//div[@id='ex-conversion-action']/div[2]/button", "xpath:idRelative"], + ["xpath=//button", "xpath:position"], + ["xpath=//button[contains(.,'登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "ce87d86c-d859-4566-bc36-e487959f4824", + "comment": "", + "command": "type", + "target": "id=admin_customer_password_first", + "targets": [ + ["id=admin_customer_password_first", "id"], + ["name=admin_customer[password][first]", "name"], + ["css=#admin_customer_password_first", "css:finder"], + ["xpath=//input[@id='admin_customer_password_first']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[7]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[7]/div[2]/input", "xpath:position"] + ], + "value": "password.123" + }, { + "id": "23b6727b-f1ab-4bce-bf8b-1238041fdd78", + "comment": "", + "command": "type", + "target": "id=admin_customer_password_second", + "targets": [ + ["id=admin_customer_password_second", "id"], + ["name=admin_customer[password][second]", "name"], + ["css=#admin_customer_password_second", "css:finder"], + ["xpath=//input[@id='admin_customer_password_second']", "xpath:attributes"], + ["xpath=//div[@id='ordererInfo']/div/div[8]/div[2]/input", "xpath:idRelative"], + ["xpath=//div[8]/div[2]/input", "xpath:position"] + ], + "value": "password.123" + }, { + "id": "3f783397-0ddc-48d8-b70c-4f2983f85aa8", + "comment": "", + "command": "click", + "target": "css=.btn", + "targets": [ + ["css=.btn", "css:finder"], + ["xpath=//button[@type='submit']", "xpath:attributes"], + ["xpath=//div[@id='ex-conversion-action']/div[2]/button", "xpath:idRelative"], + ["xpath=//button", "xpath:position"], + ["xpath=//button[contains(.,'登録')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "1f35bc75-ea0a-44bc-a9ca-2118529bf1fa", + "comment": "", + "command": "click", + "target": "linkText=会員一覧", + "targets": [ + ["linkText=会員一覧", "linkText"], + ["css=#nav-customer > li:nth-child(1) > a", "css:finder"], + ["xpath=//ul[@id='nav-customer']/li/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/customer')]", "xpath:href"], + ["xpath=//li[4]/ul/li/a", "xpath:position"], + ["xpath=//a[contains(.,'会員一覧')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "19614483-9e4e-4d56-8d5e-cbee7bdd1e90", + "comment": "", + "command": "click", + "target": "linkText=石 九部", + "targets": [ + ["linkText=石 九部", "linkText"], + ["css=#ex-customer-4 > .align-middle > a", "css:finder"], + ["xpath=//a[contains(text(),'石 九部')]", "xpath:link"], + ["xpath=//tr[@id='ex-customer-4']/td[2]/a", "xpath:idRelative"], + ["xpath=//a[contains(@href, 'https://ec-cube/admin/customer/4/edit')]", "xpath:href"], + ["xpath=//td[2]/a", "xpath:position"], + ["xpath=//a[contains(.,'石 九部')]", "xpath:innerText"] + ], + "value": "" + }, { + "id": "a6efbfed-44d2-47d7-8e83-1654b7513770", + "comment": "", + "command": "click", + "target": "css=.ladda-label", + "targets": [ + ["css=.ladda-label", "css:finder"], + ["xpath=//div[@id='ex-conversion-action']/div[2]/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"] + ], + "value": "" + }, { + "id": "afa3be7f-721b-44ee-a6f7-374feb1e1d93", + "comment": "", + "command": "mouseOver", + "target": "css=.ladda-label", + "targets": [ + ["css=.ladda-label", "css:finder"], + ["xpath=//div[@id='ex-conversion-action']/div[2]/button/span", "xpath:idRelative"], + ["xpath=//button/span", "xpath:position"] + ], + "value": "" + }] + }], + "suites": [{ + "id": "9a93a5e6-e470-42fc-821f-e58d86b64905", + "name": "管理画面マニュアル探査", + "persistSession": false, + "parallel": false, + "timeout": 300, + "tests": ["72004182-0333-4101-8bdc-25c6e2eb91f1", "af12755b-95df-4a47-ba6d-b9ea45cb4ea7", "93cadc3b-359e-440c-97b4-a69a41f7c12d"] + }], + "urls": ["https://ec-cube/admin"], + "plugins": [] +} From d9db4518b9510477b95cdb68a33f6708cedf0c9f Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Wed, 16 Sep 2020 16:19:26 +0900 Subject: [PATCH 062/207] =?UTF-8?q?=E3=83=91=E3=83=83=E3=82=B1=E3=83=BC?= =?UTF-8?q?=E3=82=B8=E3=81=8B=E3=82=89=20OWASP=20ZAP=20=E9=96=A2=E9=80=A3?= =?UTF-8?q?=E3=81=AE=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=82=92=E9=99=A4?= =?UTF-8?q?=E5=A4=96=E3=83=BB=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/action.yml | 2 ++ .htaccess | 1 + 2 files changed, 3 insertions(+) diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml index e5bbf643448..44caff2fd8a 100644 --- a/.github/workflows/action.yml +++ b/.github/workflows/action.yml @@ -880,6 +880,8 @@ jobs: rm -rf $GITHUB_WORKSPACE/codeception rm -rf $GITHUB_WORKSPACE/tests rm -rf $GITHUB_WORKSPACE/.github + rm -rf $GITHUB_WORKSPACE/zap + rm -rf $GITHUB_WORKSPACE/docker-compose-owaspzap.yml find $GITHUB_WORKSPACE -name "dummy" -print0 | xargs -0 rm -rf find $GITHUB_WORKSPACE -name ".git*" -and ! -name ".gitkeep" -print0 | xargs -0 rm -rf find $GITHUB_WORKSPACE -name ".git*" -type d -print0 | xargs -0 rm -rf diff --git a/.htaccess b/.htaccess index d2c88a117f0..9a77b4d7e75 100644 --- a/.htaccess +++ b/.htaccess @@ -48,6 +48,7 @@ DirectoryIndex index.php index.html .ht RewriteRule "^bin/" - [F] RewriteRule "^dockerbuild/" - [F] RewriteRule "^\.devcontainer/" - [F] + RewriteRule "^zap/" - [F] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpe?g|css|ico|js|svg|map)$ [NC] From dbe85f96a78c610830dfa337190a2c5de84954f1 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Wed, 16 Sep 2020 16:43:48 +0900 Subject: [PATCH 063/207] Fix README --- zap/README.md | 53 +++----------------------------------- zap/selenium/ide/README.md | 7 +++++ 2 files changed, 11 insertions(+), 49 deletions(-) create mode 100644 zap/selenium/ide/README.md diff --git a/zap/README.md b/zap/README.md index c61272f8371..1841a51fe9c 100644 --- a/zap/README.md +++ b/zap/README.md @@ -1,51 +1,6 @@ # EC-CUBE Penetration Testing with OWASP ZAP -## Quick Start - -- 意図しない外部サイトへの攻撃を防ぐため、 OWASP ZAP は必ず **プロテクトモード** で使用してください - -1. [docker-compose を使用して EC-CUBE をインストールします](https://doc4.ec-cube.net/quickstart_install#4docker-compose%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B) -1. テスト用のデータを生成しておきます - ```shell - ## APP_ENV=dev に設定 - sed -i.bak -e 's/APP_ENV=prod/APP_ENV=dev/g' ./.env - ## customer を1件生成 - docker-compose -f docker-compose.yml -f docker-compose-owaspzap.yml exec ec-cube bin/console eccube:fixtures:generate --products=0 --customers=1 --orders=0 - ## メールアドレスを zap_user@example.com に変更 - docker-compose -f docker-compose.yml -f docker-compose-owaspzap.yml exec ec-cube bin/console doctrine:query:sql "UPDATE dtb_customer SET email = 'zap_user@example.com' WHERE id = 1;" - ## ZAP でテストする場合は APP_ENV=prod に設定しておく - sed -i.bak -e 's/APP_ENV=dev/APP_ENV=prod/g' ./.env - ``` -1. OWASP ZAP コンテナを起動します - ```shell - docker-compose -f docker-compose.yml -f docker-compose-owaspzap.yml up -d zap - ``` - - *アドオンをアップデートするため、少し時間がかかります* - - 起動してから、 Firefox 以外のブラウザで `http://localhost:8081/zap/` へアクセスすると、OWASP ZAP の管理画面が表示されます -1. Firefox を起動し、設定→ネットワーク設定→接続設定からプロキシーの設定をします - - **手動でプロキシーを設定する** を選択 - - HTTPプロキシー: localhost, ポート: 8090 - - **このプロキシーを FTP と HTTPS でも使用する** にチェックを入れる -1. Firefox に SSL ルート CA 証明書をインポートします - - ローカルの `path/to/ec-cube/zap/owasp_zap_root_ca.cer` に証明書が生成されています - - 設定→プライバシーとセキュリティ→証明書→証明書を表示から証明書マネージャーを表示 - - 認証局証明書→読み込むをクリックし、 `path/to/ec-cube/zap/owasp_zap_root_ca.cer` を選択 - - **この認証局によるウェブサイトの識別を信頼する** にチェックを入れ、 OK をクリック、設定を閉じます -1. Firefox で `https://ec-cube/` へアクセスし、プロキシー経由で EC-CUBE にアクセスできるのを確認します。 -1. コンテキストをインポートします。 - ```shell - ## 管理画面用 - docker-compose -f docker-compose.yml -f docker-compose-owaspzap.yml exec zap zap-cli -p 8090 context import /zap/wrk/admin.context - ## フロント(ログイン用) - docker-compose -f docker-compose.yml -f docker-compose-owaspzap.yml exec zap zap-cli -p 8090 context import /zap/wrk/front_login.context - ``` - - *フロントと管理画面のコンテキストを同時にインポートすると、セッションが競合してログインできなくなる場合があるため注意* -1. OWASP ZAP のツールバーにある [Forced User Mode On/Off ボタン](https://www.zaproxy.org/docs/desktop/ui/tltoolbar/#--forced-user-mode-on--off) を ON にすると、OWASP ZAP の自動ログインが有効になり、ユーザーログイン中のテストが有効になります -1. [OWASP ZAP Getting Started](https://qiita.com/koujimatsuda11/items/3d5b7eac5f9455015ba6) を参考に、テストを実施します - - -## 参考 - -- [DockerでOWASP ZAPを使う](https://pc.atsuhiro-me.net/entry/2019/08/19/011324) -- [Docker版OWASP ZAPを動かしてみる](https://qiita.com/koujimatsuda11/items/83558cd62c20141ebdda) -- [テスティングガイド](https://owasp.org/www-pdf-archive/OTGv3Japanese.pdf) +このツールは、サイトを実際に攻撃し、脆弱性が無いかを確認するツールです。 +必ずローカル環境の Docker でのみ使用し、稼動中のサイトには決して使用しないでください。 +意図せずデータが更新されたり、削除される場合があります。 +テストは自己責任で実施し、株式会社イーシーキューブ及び、関連する開発コミュニティは一切の責任を負いかねますのであらかじめご了承ください。 diff --git a/zap/selenium/ide/README.md b/zap/selenium/ide/README.md new file mode 100644 index 00000000000..751f07eb972 --- /dev/null +++ b/zap/selenium/ide/README.md @@ -0,0 +1,7 @@ +## 手動探索用 Selenium IDE project + +*現在作業作業進行中です。ブラウザ操作が途中で停止してしまう場合がありますのでご注意ください* + +- https://addons.mozilla.org/ja/firefox/addon/selenium-ide/ より、 Firefox のアドオンをインストールして利用してください +- OWASP ZAP での手動探索時を省力化するために使用します + From edc82fc61ef57b813ec2a0d6a8708e28d896c3cf Mon Sep 17 00:00:00 2001 From: hama Date: Thu, 17 Sep 2020 11:47:26 +0900 Subject: [PATCH 064/207] =?UTF-8?q?=E5=8F=97=E6=B3=A8=E7=99=BB=E9=8C=B2?= =?UTF-8?q?=E7=94=BB=E9=9D=A2=E3=81=A7=E5=95=86=E5=93=81=E3=82=B3=E3=83=BC?= =?UTF-8?q?=E3=83=89=E3=82=92=E6=8C=87=E5=AE=9A=E3=81=97=E3=81=9F=E5=95=86?= =?UTF-8?q?=E5=93=81=E6=A4=9C=E7=B4=A2=E6=99=82=E3=81=AB=E7=99=BA=E7=94=9F?= =?UTF-8?q?=E3=81=99=E3=82=8B=E3=81=93=E3=81=A8=E3=81=8C=E3=81=82=E3=82=8B?= =?UTF-8?q?=E3=82=A8=E3=83=A9=E3=83=BC=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Repository/ProductRepository.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Eccube/Repository/ProductRepository.php b/src/Eccube/Repository/ProductRepository.php index 62667001d53..cf772597f1f 100644 --- a/src/Eccube/Repository/ProductRepository.php +++ b/src/Eccube/Repository/ProductRepository.php @@ -216,11 +216,12 @@ public function getQueryBuilderBySearchData($searchData) public function getQueryBuilderBySearchDataForAdmin($searchData) { $qb = $this->createQueryBuilder('p') - ->addSelect('pc', 'pi', 'tr', 'ps') - ->innerJoin('p.ProductClasses', 'pc') + ->addSelect('_pc', 'pi', 'tr', 'ps') + ->innerJoin('p.ProductClasses', '_pc') + ->leftJoin('p.ProductClasses', 'pc') ->leftJoin('p.ProductImage', 'pi') - ->leftJoin('pc.TaxRule', 'tr') - ->leftJoin('pc.ProductStock', 'ps') + ->leftJoin('_pc.TaxRule', 'tr') + ->leftJoin('_pc.ProductStock', 'ps') ->andWhere('pc.visible = :visible') ->setParameter('visible', true); From 04f20f177fe12620984efbf315bdf70e32ce9e77 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Fri, 18 Sep 2020 14:48:23 +0900 Subject: [PATCH 065/207] =?UTF-8?q?=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88?= =?UTF-8?q?=E3=83=BC=E3=83=AB=E6=99=82=E3=81=AB=E3=83=97=E3=83=AD=E3=83=80?= =?UTF-8?q?=E3=82=AF=E3=82=B7=E3=83=A7=E3=83=B3=E3=83=A2=E3=83=BC=E3=83=89?= =?UTF-8?q?=E3=82=92=E3=83=87=E3=83=95=E3=82=A9=E3=83=AB=E3=83=88=E3=81=AB?= =?UTF-8?q?=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.dist | 6 ++++-- .env.install | 2 +- src/Eccube/Command/InstallerCommand.php | 12 ++++++------ 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/.env.dist b/.env.dist index 1ab6c62da37..fef8b909292 100644 --- a/.env.dist +++ b/.env.dist @@ -3,8 +3,10 @@ # https://symfony.com/doc/current/best_practices/configuration.html#infrastructure-related-configuration ###> symfony/framework-bundle ### -APP_ENV=dev -APP_DEBUG=1 +# For production servers, use: "APP_ENV=prod" and "APP_DEBUG=0" +# For local development, use: "APP_ENV=dev" and "APP_DEBUG=1" +APP_ENV=prod +APP_DEBUG=0 #TRUSTED_PROXIES=127.0.0.1,127.0.0.2 #TRUSTED_HOSTS=localhost,example.com ###< symfony/framework-bundle ### diff --git a/.env.install b/.env.install index 71898e1e875..4759aecbb6c 100644 --- a/.env.install +++ b/.env.install @@ -1,4 +1,4 @@ ###> symfony/framework-bundle ### APP_ENV=install -APP_DEBUG=1 +APP_DEBUG=0 ###< symfony/framework-bundle ### diff --git a/src/Eccube/Command/InstallerCommand.php b/src/Eccube/Command/InstallerCommand.php index 7a55c3b39e1..efc2b83393f 100644 --- a/src/Eccube/Command/InstallerCommand.php +++ b/src/Eccube/Command/InstallerCommand.php @@ -113,8 +113,8 @@ protected function interact(InputInterface $input, OutputInterface $output) $this->io->text([ 'If you prefer to not use this interactive wizard, define the environment valiables as follows:', '', - ' $ export APP_ENV=dev', - ' $ export APP_DEBUG=1', + ' $ export APP_ENV=prod', + ' $ export APP_DEBUG=0', ' $ export DATABASE_URL=database_url', ' $ export DATABASE_SERVER_VERSION=server_version', ' $ export MAILER_URL=mailer_url', @@ -150,15 +150,15 @@ protected function interact(InputInterface $input, OutputInterface $output) // 以下環境変数に規定済の設定値があれば利用する // APP_ENV - $appEnv = env('APP_ENV', 'dev'); - // .envが存在しない状態では規定値'install'となっているため、devに更新する + $appEnv = env('APP_ENV', 'prod'); + // .envが存在しない状態では規定値'install'となっているため、prodに更新する if ($appEnv === 'install') { - $appEnv = 'dev'; + $appEnv = 'prod'; } $this->envFileUpdater->appEnv = $appEnv; // APP_DEBUG - $this->envFileUpdater->appDebug = env('APP_DEBUG', '1'); + $this->envFileUpdater->appDebug = env('APP_DEBUG', '0'); // ECCUBE_ADMIN_ROUTE $adminRoute = $this->container->getParameter('eccube_admin_route'); From 386781f931983ef24d1a0ae45537417acf1ed37a Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Thu, 24 Sep 2020 13:30:39 +0900 Subject: [PATCH 066/207] =?UTF-8?q?OrderNo=E3=82=92EC-CUBE=E3=81=AETimeZon?= =?UTF-8?q?e=E3=81=AE=E8=A8=AD=E5=AE=9A=E3=81=AB=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PurchaseFlow/Processor/OrderNoProcessor.php | 9 +++++---- .../Processor/OrderNoProcessorTest.php | 15 ++++++++------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/src/Eccube/Service/PurchaseFlow/Processor/OrderNoProcessor.php b/src/Eccube/Service/PurchaseFlow/Processor/OrderNoProcessor.php index d3a8dc60fd1..30c167efba6 100644 --- a/src/Eccube/Service/PurchaseFlow/Processor/OrderNoProcessor.php +++ b/src/Eccube/Service/PurchaseFlow/Processor/OrderNoProcessor.php @@ -69,15 +69,16 @@ public function process(ItemHolderInterface $itemHolder, PurchaseContext $contex do { $orderNo = preg_replace_callback('/\{(.*)}/U', function ($matches) use ($Order) { if (count($matches) === 2) { + $dateTime = new \DateTime('now', new \DateTimeZone($this->eccubeConfig->get('timezone'))); switch ($matches[1]) { case 'yyyy': - return (new \DateTime())->format('Y'); + return $dateTime->format('Y'); case 'yy': - return (new \DateTime())->format('y'); + return $dateTime->format('y'); case 'mm': - return (new \DateTime())->format('m'); + return $dateTime->format('m'); case 'dd': - return (new \DateTime())->format('d'); + return $dateTime->format('d'); default: $res = explode(',', str_replace(' ', '', $matches[1])); if (count($res) === 2 && is_numeric($res[1])) { diff --git a/tests/Eccube/Tests/Service/PurchaseFlow/Processor/OrderNoProcessorTest.php b/tests/Eccube/Tests/Service/PurchaseFlow/Processor/OrderNoProcessorTest.php index aa651d70ae1..1c96328e500 100644 --- a/tests/Eccube/Tests/Service/PurchaseFlow/Processor/OrderNoProcessorTest.php +++ b/tests/Eccube/Tests/Service/PurchaseFlow/Processor/OrderNoProcessorTest.php @@ -42,6 +42,7 @@ public function testProcess($orderNoFormat, $expected) $config = $this->createMock(EccubeConfig::class); $config->method('offsetGet')->willReturn($orderNoFormat); + $config->method('get')->willReturn('Asia/Tokyo'); $processor = new OrderNoProcessor($config, $this->container->get(OrderRepository::class)); $processor->process($Order, new PurchaseContext()); @@ -53,10 +54,10 @@ public function processDataProvider() { return [ ['', '/^123$/'], - ['{yyyy}', '/^'.(new \DateTime())->format('Y').'$/'], - ['{yy}', '/^'.(new \DateTime())->format('y').'$/'], - ['{mm}', '/^'.(new \DateTime())->format('m').'$/'], - ['{dd}', '/^'.(new \DateTime())->format('d').'$/'], + ['{yyyy}', '/^'.(new \DateTime('now', new \DateTimeZone('Asia/Tokyo')))->format('Y').'$/'], + ['{yy}', '/^'.(new \DateTime('now', new \DateTimeZone('Asia/Tokyo')))->format('y').'$/'], + ['{mm}', '/^'.(new \DateTime('now', new \DateTimeZone('Asia/Tokyo')))->format('m').'$/'], + ['{dd}', '/^'.(new \DateTime('now', new \DateTimeZone('Asia/Tokyo')))->format('d').'$/'], ['{id}', '/^123$/'], ['{id,0}', '/^123$/'], ['{id,1}', '/^123$/'], @@ -74,9 +75,9 @@ public function processDataProvider() ['ORDER_{yy}_{mm}_{dd}_{id,5}_{random,5}_{random_alnum,10}', '/^'. 'ORDER_'. - (new \DateTime())->format('y').'_'. - (new \DateTime())->format('m').'_'. - (new \DateTime())->format('d').'_'. + (new \DateTime('now', new \DateTimeZone('Asia/Tokyo')))->format('y').'_'. + (new \DateTime('now', new \DateTimeZone('Asia/Tokyo')))->format('m').'_'. + (new \DateTime('now', new \DateTimeZone('Asia/Tokyo')))->format('d').'_'. '00123_'. '\d{5}_'. '[[:alnum:]]{10}'. From 8608e47ff5365c0b53ab576f00da3a9e139728b4 Mon Sep 17 00:00:00 2001 From: Takuya Sawada Date: Thu, 24 Sep 2020 22:39:33 +0900 Subject: [PATCH 067/207] =?UTF-8?q?=E4=B8=8D=E5=BF=85=E8=A6=81=E3=81=AB?= =?UTF-8?q?=E4=BA=8C=E9=87=8D=E3=81=AB=E5=91=BC=E3=81=B3=E5=87=BA=E3=81=95?= =?UTF-8?q?=E3=82=8C=E3=81=A6=E3=81=84=E3=82=8B=E3=82=B3=E3=83=B3=E3=82=BF?= =?UTF-8?q?=E3=82=AF=E3=83=88=E3=83=95=E3=82=A9=E3=83=BC=E3=83=A0=E3=81=AE?= =?UTF-8?q?=E5=87=A6=E7=90=86=E3=82=92=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Controller/ContactController.php | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/Eccube/Controller/ContactController.php b/src/Eccube/Controller/ContactController.php index 065e41b107a..63a2da3a199 100644 --- a/src/Eccube/Controller/ContactController.php +++ b/src/Eccube/Controller/ContactController.php @@ -84,9 +84,6 @@ public function index(Request $request) if ($form->isSubmitted() && $form->isValid()) { switch ($request->get('mode')) { case 'confirm': - $form = $builder->getForm(); - $form->handleRequest($request); - return $this->render('Contact/confirm.twig', [ 'form' => $form->createView(), ]); From 1cead4c8b07e043c573e9a23ec03d4759419643a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 25 Sep 2020 00:26:36 +0000 Subject: [PATCH 068/207] Bump node-sass from 4.12.0 to 4.14.1 Bumps [node-sass](https://github.com/sass/node-sass) from 4.12.0 to 4.14.1. - [Release notes](https://github.com/sass/node-sass/releases) - [Changelog](https://github.com/sass/node-sass/blob/master/CHANGELOG.md) - [Commits](https://github.com/sass/node-sass/compare/v4.12.0...v4.14.1) Signed-off-by: dependabot[bot] --- package-lock.json | 253 +++++++++++++++++++++++++++++++++++++--------- 1 file changed, 203 insertions(+), 50 deletions(-) diff --git a/package-lock.json b/package-lock.json index f70056070ce..4c00632800f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "eccube", - "version": "4.0.4", + "version": "4.0.5", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -4884,9 +4884,9 @@ } }, "node-sass": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.12.0.tgz", - "integrity": "sha512-A1Iv4oN+Iel6EPv77/HddXErL2a+gZ4uBeZUy+a8O35CFYTXhgA8MgLCWBtwpGZdCvTvQ9d+bQxX/QC36GDPpQ==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.14.1.tgz", + "integrity": "sha512-sjCuOlvGyCJS40R8BscF5vhVlQjNN069NtQ1gSxyK1u9iqvn6tf7O1R4GNowVZfiZUCRt5MmMs1xd+4V/7Yr0g==", "dev": true, "requires": { "async-foreach": "^0.1.3", @@ -4896,24 +4896,36 @@ "get-stdin": "^4.0.1", "glob": "^7.0.3", "in-publish": "^2.0.0", - "lodash": "^4.17.11", + "lodash": "^4.17.15", "meow": "^3.7.0", "mkdirp": "^0.5.1", "nan": "^2.13.2", "node-gyp": "^3.8.0", "npmlog": "^4.0.0", "request": "^2.88.0", - "sass-graph": "^2.2.4", + "sass-graph": "2.2.5", "stdout-stream": "^1.4.0", "true-case-path": "^1.0.2" }, "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", "dev": true }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", @@ -4927,11 +4939,196 @@ "supports-color": "^2.0.0" } }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + }, + "dependencies": { + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "sass-graph": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz", + "integrity": "sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==", + "dev": true, + "requires": { + "glob": "^7.0.0", + "lodash": "^4.0.0", + "scss-tokenizer": "^0.2.3", + "yargs": "^13.3.2" + } + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "dependencies": { + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", "dev": true + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, @@ -5992,50 +6189,6 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, - "sass-graph": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", - "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", - "dev": true, - "requires": { - "glob": "^7.0.0", - "lodash": "^4.0.0", - "scss-tokenizer": "^0.2.3", - "yargs": "^7.0.0" - }, - "dependencies": { - "yargs": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", - "dev": true, - "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^5.0.0" - } - }, - "yargs-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", - "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", - "dev": true, - "requires": { - "camelcase": "^3.0.0" - } - } - } - }, "scss-tokenizer": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", From 4b0af5eca73a34272ed9885c6c5e463ba62ee5d3 Mon Sep 17 00:00:00 2001 From: Bell Date: Fri, 25 Sep 2020 16:11:28 +0900 Subject: [PATCH 069/207] =?UTF-8?q?=E5=8F=97=E6=B3=A8=E7=99=BB=E9=8C=B2?= =?UTF-8?q?=E3=81=A7=E5=95=86=E5=93=81=E8=BF=BD=E5=8A=A0=E6=99=82=E3=80=81?= =?UTF-8?q?=E8=A6=8F=E6=A0=BC=E3=81=8C=E7=99=BB=E9=8C=B2=E3=81=95=E3=82=8C?= =?UTF-8?q?=E5=85=A8=E3=81=A6=E3=81=AE=E8=A6=8F=E6=A0=BC=E3=81=AE=E5=9C=A8?= =?UTF-8?q?=E5=BA=AB=E3=81=8C=E3=82=BC=E3=83=AD=E3=81=AE=E6=99=82=E3=80=81?= =?UTF-8?q?JavaScript=E3=82=A8=E3=83=A9=E3=83=BC=E3=81=AB=E3=81=AA?= =?UTF-8?q?=E3=82=8B=E3=81=AE=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../template/admin/Order/search_product.twig | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/Eccube/Resource/template/admin/Order/search_product.twig b/src/Eccube/Resource/template/admin/Order/search_product.twig index b8feb046952..f3c0a998b7d 100644 --- a/src/Eccube/Resource/template/admin/Order/search_product.twig +++ b/src/Eccube/Resource/template/admin/Order/search_product.twig @@ -174,11 +174,17 @@ file that was distributed with this source code.
{% endif %} - - - + {% if Product.stock_find %} + + + + {% else %} + + {{ '品切れ中'|trans }} + + {% endif %} {% endfor %} From 3c26d486760dfa06f45c014b28c7ba761dce3d2a Mon Sep 17 00:00:00 2001 From: hama Date: Mon, 28 Sep 2020 16:30:08 +0900 Subject: [PATCH 070/207] =?UTF-8?q?Revert=20"=E5=8F=97=E6=B3=A8=E7=99=BB?= =?UTF-8?q?=E9=8C=B2=E7=94=BB=E9=9D=A2=E3=81=A7=E5=95=86=E5=93=81=E3=82=B3?= =?UTF-8?q?=E3=83=BC=E3=83=89=E3=82=92=E6=8C=87=E5=AE=9A=E3=81=97=E3=81=9F?= =?UTF-8?q?=E5=95=86=E5=93=81=E6=A4=9C=E7=B4=A2=E6=99=82=E3=81=AB=E7=99=BA?= =?UTF-8?q?=E7=94=9F=E3=81=99=E3=82=8B=E3=81=93=E3=81=A8=E3=81=8C=E3=81=82?= =?UTF-8?q?=E3=82=8B=E3=82=A8=E3=83=A9=E3=83=BC=E3=82=92=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit edc82fc6 --- src/Eccube/Repository/ProductRepository.php | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/Eccube/Repository/ProductRepository.php b/src/Eccube/Repository/ProductRepository.php index cf772597f1f..62667001d53 100644 --- a/src/Eccube/Repository/ProductRepository.php +++ b/src/Eccube/Repository/ProductRepository.php @@ -216,12 +216,11 @@ public function getQueryBuilderBySearchData($searchData) public function getQueryBuilderBySearchDataForAdmin($searchData) { $qb = $this->createQueryBuilder('p') - ->addSelect('_pc', 'pi', 'tr', 'ps') - ->innerJoin('p.ProductClasses', '_pc') - ->leftJoin('p.ProductClasses', 'pc') + ->addSelect('pc', 'pi', 'tr', 'ps') + ->innerJoin('p.ProductClasses', 'pc') ->leftJoin('p.ProductImage', 'pi') - ->leftJoin('_pc.TaxRule', 'tr') - ->leftJoin('_pc.ProductStock', 'ps') + ->leftJoin('pc.TaxRule', 'tr') + ->leftJoin('pc.ProductStock', 'ps') ->andWhere('pc.visible = :visible') ->setParameter('visible', true); From d57cc6b45ee492688740e8c45aa3ac3494dbdcff Mon Sep 17 00:00:00 2001 From: Yousuke Hayashi <48919150+belltzel@users.noreply.github.com> Date: Mon, 28 Sep 2020 17:07:29 +0900 Subject: [PATCH 071/207] =?UTF-8?q?=E5=93=81=E5=88=87=E3=82=8C=E4=B8=AD?= =?UTF-8?q?=E3=81=AE=E3=83=86=E3=82=AD=E3=82=B9=E3=83=88=E3=82=92=E3=80=81?= =?UTF-8?q?=E7=94=A8=E6=84=8F=E3=81=95=E3=82=8C=E3=81=9F=E3=83=A1=E3=83=83?= =?UTF-8?q?=E3=82=BB=E3=83=BC=E3=82=B8=E3=81=B8=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Hideki Okajima --- src/Eccube/Resource/template/admin/Order/search_product.twig | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Eccube/Resource/template/admin/Order/search_product.twig b/src/Eccube/Resource/template/admin/Order/search_product.twig index f3c0a998b7d..f3123277e75 100644 --- a/src/Eccube/Resource/template/admin/Order/search_product.twig +++ b/src/Eccube/Resource/template/admin/Order/search_product.twig @@ -182,7 +182,7 @@ file that was distributed with this source code. {% else %} - {{ '品切れ中'|trans }} + {{ 'front.product.out_of_stock_label'|trans }} {% endif %} @@ -195,4 +195,3 @@ file that was distributed with this source code. {% include "@admin/pager.twig" with {'pages': pagination.paginationData, 'routes': 'admin_order_search_product_page'} %}
{% endif %} - From 4d2cc490ed8d43939da7f7950bf3607a35746404 Mon Sep 17 00:00:00 2001 From: morry48 Date: Tue, 29 Sep 2020 01:18:38 +0900 Subject: [PATCH 072/207] =?UTF-8?q?=E7=AE=A1=E7=90=86=E7=94=BB=E9=9D=A2?= =?UTF-8?q?=E3=81=AE=E4=BC=9A=E5=93=A1=E7=AE=A1=E7=90=86/=E3=81=8A?= =?UTF-8?q?=E5=B1=8A=E3=81=91=E5=85=88=E7=99=BB=E9=8C=B2=E3=81=A7=E5=BF=85?= =?UTF-8?q?=E9=A0=88=E9=A0=85=E7=9B=AE=E3=81=AB=20=20=E3=83=9E=E3=83=BC?= =?UTF-8?q?=E3=82=AF=E3=82=92=E3=81=A4=E3=81=91=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../template/admin/Customer/delivery_edit.twig | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Eccube/Resource/template/admin/Customer/delivery_edit.twig b/src/Eccube/Resource/template/admin/Customer/delivery_edit.twig index 07db613480c..494ae039c4f 100644 --- a/src/Eccube/Resource/template/admin/Customer/delivery_edit.twig +++ b/src/Eccube/Resource/template/admin/Customer/delivery_edit.twig @@ -53,7 +53,8 @@ file that was distributed with this source code.
- {{ 'admin.common.name'|trans }} + {{ 'admin.common.name'|trans }} + {{ 'admin.common.required'|trans }}
@@ -71,7 +72,8 @@ file that was distributed with this source code.
- {{ 'admin.common.kana'|trans }} + {{ 'admin.common.kana'|trans }} + {{ 'admin.common.required'|trans }}
@@ -99,7 +101,8 @@ file that was distributed with this source code.
- {{ 'admin.common.address'|trans }} + {{ 'admin.common.address'|trans }} + {{ 'admin.common.required'|trans }}
@@ -144,7 +147,8 @@ file that was distributed with this source code.
- {{ 'admin.common.phone_number'|trans }} + {{ 'admin.common.phone_number'|trans }} + {{ 'admin.common.required'|trans }}
{{ form_widget(form.phone_number) }} From 72c0d684fcef6e61c738e27af4a4060148f9f18c Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Tue, 29 Sep 2020 17:01:21 +0900 Subject: [PATCH 073/207] =?UTF-8?q?=E3=83=91=E3=83=83=E3=82=B1=E3=83=BC?= =?UTF-8?q?=E3=82=B8=E3=81=8B=E3=82=89=20OWASP=20ZAP=20=E9=96=A2=E9=80=A3?= =?UTF-8?q?=E3=81=AE=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=82=92=E5=89=8A?= =?UTF-8?q?=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 9baf0f27d16..bb05467b21f 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -59,6 +59,8 @@ jobs: rm -rf $GITHUB_WORKSPACE/codeception rm -rf $GITHUB_WORKSPACE/tests rm -rf $GITHUB_WORKSPACE/.github + rm -rf $GITHUB_WORKSPACE/zap + rm -rf $GITHUB_WORKSPACE/docker-compose-owaspzap.yml find $GITHUB_WORKSPACE -name "dummy" -print0 | xargs -0 rm -rf find $GITHUB_WORKSPACE -name ".git*" -and ! -name ".gitkeep" -print0 | xargs -0 rm -rf find $GITHUB_WORKSPACE -name ".git*" -type d -print0 | xargs -0 rm -rf From 48116a97784d95eb117403df9b11d4497ac70cfd Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Tue, 29 Sep 2020 17:02:32 +0900 Subject: [PATCH 074/207] Delete action.yml --- .github/workflows/action.yml | 976 ----------------------------------- 1 file changed, 976 deletions(-) delete mode 100644 .github/workflows/action.yml diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml deleted file mode 100644 index 44caff2fd8a..00000000000 --- a/.github/workflows/action.yml +++ /dev/null @@ -1,976 +0,0 @@ -name: CI/CD for EC-CUBE -on: - push: - branches: - - 4.0 - tags: - - '*' - paths: - - '**' - - '!*.md' - pull_request: - paths: - - '**' - - '!*.md' - release: - types: [ published ] -jobs: - phpunit: - name: PHPUnit - runs-on: ${{ matrix.operating-system }} - strategy: - fail-fast: false - matrix: - operating-system: [ ubuntu-18.04 ] - php: [ 7.1, 7.2, 7.3, 7.4 ] - db: [ mysql, pgsql, sqlite3 ] - include: - - db: mysql - database_url: mysql://root:password@127.0.0.1:3306/eccube_db - database_server_version: 5 - - db: pgsql - database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db - database_server_version: 11 - - db: sqlite3 - database_url: sqlite:///var/eccube.db - database_server_version: 3 - - services: - mysql: - image: mysql:5.7 - env: - MYSQL_ROOT_PASSWORD: password - ports: - - 3306:3306 - options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 - postgres: - image: postgres:11 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: password - ports: - - 5432:5432 - # needed because the postgres container does not provide a healthcheck - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 - - steps: - - name: Checkout - uses: actions/checkout@master - - - name: Get Composer Cache Directory - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Setup PHP - uses: nanasess/setup-php@master - with: - php-version: ${{ matrix.php }} - - - name: composer install - run: composer install --dev --no-interaction -o --apcu-autoloader - - - name: Setup EC-CUBE - env: - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - run: | - bin/console doctrine:database:create - bin/console doctrine:schema:create - bin/console eccube:fixtures:load - - - name: PHPUnit - env: - APP_ENV: 'test' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - run: | - bin/phpunit --exclude-group cache-clear,cache-clear-install,update-schema-doctrine - bin/phpunit --group cache-clear - bin/phpunit --group cache-clear-install - bin/phpunit --group update-schema-doctrine --exclude-group update-schema-doctrine-install - bin/phpunit --group update-schema-doctrine-install --filter=testInstallPluginWithNoProxy - bin/phpunit --group update-schema-doctrine-install --filter=testInstallPluginWithProxy - bin/phpunit --group update-schema-doctrine-install --filter=testEnablePluginWithNoProxy - bin/phpunit --group update-schema-doctrine-install --filter=testEnablePluginWithProxy - bin/phpunit --group update-schema-doctrine-install --filter=testDisablePluginWithNoProxy - bin/phpunit --group update-schema-doctrine-install --filter=testDisablePluginWithProxy - bin/phpunit --group update-schema-doctrine-install --filter=testCreateEntityAndTrait - - codeception: - name: Codeception - runs-on: ${{ matrix.operating-system }} - strategy: - fail-fast: false - matrix: - operating-system: [ ubuntu-18.04 ] - php: [ 7.3 ] - db: [ pgsql ] - group: [ admin01, admin02, admin03, front, installer ] - include: - - db: pgsql - database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db - database_server_version: 11 - - group: admin01 - app_env: 'codeception' - - group: admin02 - app_env: 'codeception' - - group: admin03 - app_env: 'codeception' - - group: front - app_env: 'codeception' - - group: installer - app_env: 'install' - services: - postgres: - image: postgres:11 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: password - ports: - - 5432:5432 - # needed because the postgres container does not provide a healthcheck - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 - - mailcatcher: - image: schickling/mailcatcher - ports: - - 1080:1080 - - 1025:1025 - - steps: - - name: Checkout - uses: actions/checkout@master - - - name: Get Composer Cache Directory - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Setup PHP - uses: nanasess/setup-php@master - with: - php-version: ${{ matrix.php }} - - - name: composer install - run: composer install --dev --no-interaction -o --apcu-autoloader - - name: Setup to EC-CUBE - env: - APP_ENV: ${{ matrix.app_env }} - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - run: | - echo "APP_ENV=${APP_ENV}" > .env - bin/console doctrine:database:create --env=dev - bin/console doctrine:schema:create --env=dev - bin/console eccube:fixtures:load --env=dev - - - name: setup-chromedriver - uses: nanasess/setup-chromedriver@master - - - name: Run chromedriver - run: | - export DISPLAY=:99 - chromedriver --url-base=/wd/hub & - echo ">>> Started chrome-driver" - sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & - echo ">>> Started xvfb" - - - name: Start PHP Development Server - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - run: php -S localhost:8000 & - - - name: Codeception - env: - APP_ENV: ${{ matrix.app_env }} - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - GROUP: ${{ matrix.group }} - SYMFONY_DEPRECATIONS_HELPER: weak - run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action -g ${GROUP} - - name: Upload evidence - if: failure() - uses: actions/upload-artifact@v2 - with: - name: codeception-${{ matrix.group }}-evidence - path: codeception/_output/ - - name: Upload logs - if: failure() - uses: actions/upload-artifact@v2 - with: - name: codeception-${{ matrix.group }}-logs - path: var/log/ - - plugin-install: - name: Plugin install - runs-on: ${{ matrix.operating-system }} - strategy: - fail-fast: false - matrix: - operating-system: [ ubuntu-18.04 ] - php: [ 7.3 ] - db: [ pgsql, mysql ] - method: - - test_install_enable_disable_remove_store - - test_install_enable_disable_remove_local - - test_install_enable_disable_enable_disable_remove_store - - test_install_enable_disable_enable_disable_remove_local - - test_install_remove_local - - test_install_remove_store - - test_bundle_install_enable_disable_remove_store - - test_bundle_install_update_enable_disable_remove_store - include: - - db: pgsql - database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db - database_server_version: 11 - - db: mysql - database_url: mysql://root:password@127.0.0.1:3306/eccube_db - database_server_version: 5 - - services: - mysql: - image: mysql:5.7 - env: - MYSQL_ROOT_PASSWORD: password - ports: - - 3306:3306 - options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 - postgres: - image: postgres:11 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: password - ports: - - 5432:5432 - # needed because the postgres container does not provide a healthcheck - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 - mailcatcher: - image: schickling/mailcatcher - ports: - - 1080:1080 - - 1025:1025 - - steps: - - name: Checkout - uses: actions/checkout@master - - - name: Get Composer Cache Directory - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Setup PHP - uses: nanasess/setup-php@master - with: - php-version: ${{ matrix.php }} - - - name: composer install - run: composer install --dev --no-interaction -o --apcu-autoloader - - - name: Setup to EC-CUBE - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - run: | - echo "APP_ENV=${APP_ENV}" > .env - bin/console doctrine:database:create --env=dev - bin/console doctrine:schema:create --env=dev - bin/console eccube:fixtures:load --env=dev - - - name: Update baseinfo with pgsql - if: matrix.db == 'pgsql' - env: - PGPASSWORD: 'password' - run: | - sudo apt-fast install -y postgresql-client - psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test';" - - - name: Update baseinfo with mysql - if: matrix.db == 'mysql' - run: mysql -h 127.0.0.1 -u root -ppassword eccube_db -e "update dtb_base_info set authentication_key='test';" - - - name: setup-chromedriver - uses: nanasess/setup-chromedriver@master - - - name: Run chromedriver - run: | - export DISPLAY=:99 - chromedriver --url-base=/wd/hub & - echo ">>> Started chrome-driver" - sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & - echo ">>> Started xvfb" - - - name: Start PHP Development Server - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - run: php -S localhost:8000 & - - ## ${PWD}/repos does not exist so service cannot be started - - name: Run package-api - run: | - if [[ ! -d ${PWD}/repos ]]; then mkdir -p ${PWD}/repos ; fi - docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api - - - name: Codeception - env: - APP_ENV: ${{ matrix.app_env }} - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - METHOD: ${{ matrix.method }} - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - NO_FIXTURES: 1 - run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action EA10PluginCest:${METHOD} - - name: Upload evidence - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-install-${{ matrix.method }}-evidence - path: codeception/_output/ - - name: Upload logs - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-install-${{ matrix.method }}-logs - path: var/log/ - - plugin-update: - name: Plugin Update - runs-on: ${{ matrix.operating-system }} - strategy: - fail-fast: false - matrix: - operating-system: [ ubuntu-18.04 ] - php: [ 7.3 ] - db: [ pgsql, mysql ] - method: - - test_install_update_remove_store - - test_install_update_remove_local - - test_install_enable_disable_update_enable_disable_remove_local - - test_install_enable_disable_update_enable_disable_remove_store - - test_install_enable_update_disable_remove_store - - test_install_enable_update_disable_remove_local - include: - - db: pgsql - database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db - database_server_version: 11 - - db: mysql - database_url: mysql://root:password@127.0.0.1:3306/eccube_db - database_server_version: 5 - - services: - mysql: - image: mysql:5.7 - env: - MYSQL_ROOT_PASSWORD: password - ports: - - 3306:3306 - options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 - postgres: - image: postgres:11 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: password - ports: - - 5432:5432 - # needed because the postgres container does not provide a healthcheck - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 - mailcatcher: - image: schickling/mailcatcher - ports: - - 1080:1080 - - 1025:1025 - - steps: - - name: Checkout - uses: actions/checkout@master - - - name: Get Composer Cache Directory - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Setup PHP - uses: nanasess/setup-php@master - with: - php-version: ${{ matrix.php }} - - - name: Install to Composer - run: composer install --dev --no-interaction -o --apcu-autoloader - - name: Setup to EC-CUBE - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - run: | - echo "APP_ENV=${APP_ENV}" > .env - bin/console doctrine:database:create --env=dev - bin/console doctrine:schema:create --env=dev - bin/console eccube:fixtures:load --env=dev - - - name: Update baseinfo with pgsql - if: matrix.db == 'pgsql' - env: - PGPASSWORD: 'password' - run: | - sudo apt-fast install -y postgresql-client - psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test';" - - - name: Update baseinfo with mysql - if: matrix.db == 'mysql' - run: mysql -h 127.0.0.1 -u root -ppassword eccube_db -e "update dtb_base_info set authentication_key='test';" - - - name: setup-chromedriver - uses: nanasess/setup-chromedriver@master - - - name: Run chromedriver - run: | - export DISPLAY=:99 - chromedriver --url-base=/wd/hub & - echo ">>> Started chrome-driver" - sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & - echo ">>> Started xvfb" - - - name: Start PHP Development Server - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - run: php -S localhost:8000 & - - ## ${PWD}/repos does not exist so service cannot be started - - name: Run package-api - run: | - if [[ ! -d ${PWD}/repos ]]; then mkdir -p ${PWD}/repos ; fi - docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api - - - name: Run to Codeception - env: - APP_ENV: ${{ matrix.app_env }} - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - METHOD: ${{ matrix.method }} - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - NO_FIXTURES: 1 - run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action EA10PluginCest:${METHOD} - - name: Upload evidence - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-update-${{ matrix.method }}-evidence - path: codeception/_output/ - - name: Upload logs - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-update-${{ matrix.method }}-logs - path: var/log/ - - plugin-extend: - name: Plugin extend - runs-on: ${{ matrix.operating-system }} - strategy: - fail-fast: false - matrix: - operating-system: [ ubuntu-18.04 ] - php: [ 7.3 ] - db: [ pgsql, mysql ] - method: - - test_extend_same_table_store - - test_extend_same_table_disabled_remove_store - - test_extend_same_table_local - - test_extend_same_table_disabled_remove_local - - test_extend_same_table_crossed_store - - test_extend_same_table_crossed_local - include: - - db: pgsql - database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db - database_server_version: 11 - - db: mysql - database_url: mysql://root:password@127.0.0.1:3306/eccube_db - database_server_version: 5 - - services: - mysql: - image: mysql:5.7 - env: - MYSQL_ROOT_PASSWORD: password - ports: - - 3306:3306 - options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 - postgres: - image: postgres:11 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: password - ports: - - 5432:5432 - # needed because the postgres container does not provide a healthcheck - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 - mailcatcher: - image: schickling/mailcatcher - ports: - - 1080:1080 - - 1025:1025 - - steps: - - name: Checkout - uses: actions/checkout@master - - - name: Get Composer Cache Directory - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Setup PHP - uses: nanasess/setup-php@master - with: - php-version: ${{ matrix.php }} - - - name: Install to Composer - run: composer install --dev --no-interaction -o --apcu-autoloader - - name: Setup to EC-CUBE - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - run: | - echo "APP_ENV=${APP_ENV}" > .env - bin/console doctrine:database:create --env=dev - bin/console doctrine:schema:create --env=dev - bin/console eccube:fixtures:load --env=dev - - - name: Update baseinfo with pgsql - if: matrix.db == 'pgsql' - env: - PGPASSWORD: 'password' - run: | - sudo apt-fast install -y postgresql-client - psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test';" - - - name: Update baseinfo with mysql - if: matrix.db == 'mysql' - run: mysql -h 127.0.0.1 -u root -ppassword eccube_db -e "update dtb_base_info set authentication_key='test';" - - - name: setup-chromedriver - uses: nanasess/setup-chromedriver@master - - - name: Run chromedriver - run: | - export DISPLAY=:99 - chromedriver --url-base=/wd/hub & - echo ">>> Started chrome-driver" - sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & - echo ">>> Started xvfb" - - - name: Start PHP Development Server - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - run: php -S localhost:8000 & - - ## ${PWD}/repos does not exist so service cannot be started - - name: Run package-api - run: | - if [[ ! -d ${PWD}/repos ]]; then mkdir -p ${PWD}/repos ; fi - docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api - - - name: Run to Codeception - env: - APP_ENV: ${{ matrix.app_env }} - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - METHOD: ${{ matrix.method }} - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - NO_FIXTURES: 1 - run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action EA10PluginCest:${METHOD} - - name: Upload evidence - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-extend-${{ matrix.method }}-evidence - path: codeception/_output/ - - name: Upload logs - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-extend-${{ matrix.method }}-logs - path: var/log/ - - plugin-depend: - name: Plugin depend - runs-on: ${{ matrix.operating-system }} - strategy: - fail-fast: false - matrix: - operating-system: [ ubuntu-18.04 ] - php: [ 7.3 ] - db: [ pgsql, mysql ] - method: - - test_dependency_each_install_plugin - - test_dependency_plugin_install - - test_dependency_plugin_update - - test_install_error - - install_enable_disable_enable_disable_remove_store - - test_enhance_plugin_entity - include: - - db: pgsql - database_url: postgres://postgres:password@127.0.0.1:5432/eccube_db - database_server_version: 11 - - db: mysql - database_url: mysql://root:password@127.0.0.1:3306/eccube_db - database_server_version: 5 - exclude: - - db: mysql - method: test_dependency_plugin_update - - services: - mysql: - image: mysql:5.7 - env: - MYSQL_ROOT_PASSWORD: password - ports: - - 3306:3306 - options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 - postgres: - image: postgres:11 - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: password - ports: - - 5432:5432 - # needed because the postgres container does not provide a healthcheck - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 - mailcatcher: - image: schickling/mailcatcher - ports: - - 1080:1080 - - 1025:1025 - - steps: - - name: Checkout - uses: actions/checkout@master - - - name: Get Composer Cache Directory - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Setup PHP - uses: nanasess/setup-php@master - with: - php-version: ${{ matrix.php }} - - - name: Install to Composer - run: composer install --dev --no-interaction -o --apcu-autoloader - - name: Setup to EC-CUBE - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - run: | - echo "APP_ENV=${APP_ENV}" > .env - bin/console doctrine:database:create --env=dev - bin/console doctrine:schema:create --env=dev - bin/console eccube:fixtures:load --env=dev - - - name: Update baseinfo with pgsql - if: matrix.db == 'pgsql' - env: - PGPASSWORD: 'password' - run: | - sudo apt-fast install -y postgresql-client - psql eccube_db -h 127.0.0.1 -U postgres -c "update dtb_base_info set authentication_key='test';" - - - name: Update baseinfo with mysql - if: matrix.db == 'mysql' - run: mysql -h 127.0.0.1 -u root -ppassword eccube_db -e "update dtb_base_info set authentication_key='test';" - - - name: setup-chromedriver - uses: nanasess/setup-chromedriver@master - - - name: Run chromedriver - run: | - export DISPLAY=:99 - chromedriver --url-base=/wd/hub & - echo ">>> Started chrome-driver" - sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & - echo ">>> Started xvfb" - - - name: Start PHP Development Server - env: - APP_ENV: 'codeception' - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - run: php -S localhost:8000 & - - ## ${PWD}/repos does not exist so service cannot be started - - name: Run package-api - run: | - if [[ ! -d ${PWD}/repos ]]; then mkdir -p ${PWD}/repos ; fi - docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api - - - name: Run to Codeception - env: - APP_ENV: ${{ matrix.app_env }} - DATABASE_URL: ${{ matrix.database_url }} - DATABASE_SERVER_VERSION: ${{ matrix.database_server_version }} - MAILER_URL: 'smtp://localhost:1025' - METHOD: ${{ matrix.method }} - ECCUBE_PACKAGE_API_URL: 'http://localhost:8080' - NO_FIXTURES: 1 - run: vendor/bin/codecept -vvv run acceptance --env chrome,github_action EA10PluginCest:${METHOD} - - name: Upload evidence - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-depend-${{ matrix.method }}-evidence - path: codeception/_output/ - - name: Upload logs - if: failure() - uses: actions/upload-artifact@v2 - with: - name: plugin-depend-${{ matrix.method }}-logs - path: var/log/ - - deploy: - name: Deploy - runs-on: ubuntu-18.04 - needs: [ phpunit, codeception ] - steps: - - name: Checkout - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: actions/checkout@master - - - name: Setup PHP - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: nanasess/setup-php@master - with: - php-version: '7.3' - - - name: Get Composer Cache Directory - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v1 - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - - name: Install to Composer - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - run: composer install --no-scripts --no-dev --no-interaction --optimize-autoloader - - - name: Dump GitHub context - env: - GITHUB_CONTEXT: ${{ toJson(github) }} - run: echo "$GITHUB_CONTEXT" - - name: Dump job context - env: - JOB_CONTEXT: ${{ toJson(job) }} - run: echo "$JOB_CONTEXT" - - name: Dump steps context - env: - STEPS_CONTEXT: ${{ toJson(steps) }} - run: echo "$STEPS_CONTEXT" - - name: Dump runner context - env: - RUNNER_CONTEXT: ${{ toJson(runner) }} - run: echo "$RUNNER_CONTEXT" - - name: Dump strategy context - env: - STRATEGY_CONTEXT: ${{ toJson(strategy) }} - run: echo "$STRATEGY_CONTEXT" - - name: Dump matrix context - env: - MATRIX_CONTEXT: ${{ toJson(matrix) }} - run: echo "$MATRIX_CONTEXT" - - - name: Translate to templates - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - run: php bin/template_jp.php - - - name: Packaging - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - working-directory: ../ - env: - TAG_NAME: ${{ github.event.release.tag_name }} - REPOSITORY_NAME: ${{ github.event.repository.name }} - PATH_NAME: eccube-${{ github.event.release.tag_name }} - run: | - rm -rf $GITHUB_WORKSPACE/.editorconfig - rm -rf $GITHUB_WORKSPACE/.gitignore - rm -rf $GITHUB_WORKSPACE/.buildpath - rm -rf $GITHUB_WORKSPACE/.gitmodules - rm -rf $GITHUB_WORKSPACE/.scrutinizer.yml - rm -rf $GITHUB_WORKSPACE/.travis.yml - rm -rf $GITHUB_WORKSPACE/appveyor.yml - rm -rf $GITHUB_WORKSPACE/.coveralls.yml - rm -rf $GITHUB_WORKSPACE/.php_cs.dist - rm -rf $GITHUB_WORKSPACE/phpunit.xml.dist - rm -rf $GITHUB_WORKSPACE/app.json - rm -rf $GITHUB_WORKSPACE/Procfile - rm -rf $GITHUB_WORKSPACE/LICENSE.txt - rm -rf $GITHUB_WORKSPACE/README.md - rm -rf $GITHUB_WORKSPACE/codeception.sh - rm -rf $GITHUB_WORKSPACE/codeception.yml - rm -rf $GITHUB_WORKSPACE/app/Plugin/* - rm -rf $GITHUB_WORKSPACE/codeception - rm -rf $GITHUB_WORKSPACE/tests - rm -rf $GITHUB_WORKSPACE/.github - rm -rf $GITHUB_WORKSPACE/zap - rm -rf $GITHUB_WORKSPACE/docker-compose-owaspzap.yml - find $GITHUB_WORKSPACE -name "dummy" -print0 | xargs -0 rm -rf - find $GITHUB_WORKSPACE -name ".git*" -and ! -name ".gitkeep" -print0 | xargs -0 rm -rf - find $GITHUB_WORKSPACE -name ".git*" -type d -print0 | xargs -0 rm -rf - - echo "set permissions..." - chmod -R o+w $GITHUB_WORKSPACE - - echo "complession files..." - mv $REPOSITORY_NAME $PATH_NAME - tar czfp eccube-$TAG_NAME.tar.gz $PATH_NAME - zip -ry eccube-$TAG_NAME.zip $PATH_NAME 1> /dev/null - md5sum eccube-$TAG_NAME.tar.gz | awk '{ print $1 }' > eccube-$TAG_NAME.tar.gz.checksum.md5 - md5sum eccube-$TAG_NAME.zip | awk '{ print $1 }' > eccube-$TAG_NAME.zip.checksum.md5 - sha1sum eccube-$TAG_NAME.tar.gz | awk '{ print $1 }' > eccube-$TAG_NAME.tar.gz.checksum.sha1 - sha1sum eccube-$TAG_NAME.zip | awk '{ print $1 }' > eccube-$TAG_NAME.zip.checksum.sha1 - sha256sum eccube-$TAG_NAME.tar.gz | awk '{ print $1 }' > eccube-$TAG_NAME.tar.gz.checksum.sha256 - sha256sum eccube-$TAG_NAME.zip | awk '{ print $1 }' > eccube-$TAG_NAME.zip.checksum.sha256 - mv $PATH_NAME $REPOSITORY_NAME - ls -al - - - name: Upload binaries to release of TGZ - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.tar.gz - asset_name: eccube-${{ github.event.release.tag_name }}.tar.gz - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of ZIP - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.zip - asset_name: eccube-${{ github.event.release.tag_name }}.zip - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of TGZ md5 checksum - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.md5 - asset_name: eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.md5 - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of TGZ sha1 checksum - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.sha1 - asset_name: eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.sha1 - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of TGZ sha256 checksum - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.sha256 - asset_name: eccube-${{ github.event.release.tag_name }}.tar.gz.checksum.sha256 - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of ZIP md5 checksum - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.zip.checksum.md5 - asset_name: eccube-${{ github.event.release.tag_name }}.zip.checksum.md5 - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of ZIP sha1 checksum - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.zip.checksum.sha1 - asset_name: eccube-${{ github.event.release.tag_name }}.zip.checksum.sha1 - tag: ${{ github.ref }} - overwrite: true - - name: Upload binaries to release of ZIP sha256 checksum - if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased' ) - uses: svenstaro/upload-release-action@v1-release - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ runner.workspace }}/eccube-${{ github.event.release.tag_name }}.zip.checksum.sha256 - asset_name: eccube-${{ github.event.release.tag_name }}.zip.checksum.sha256 - tag: ${{ github.ref }} - overwrite: true From 1c198f2a1c8bdf8841311e3d05c3cf69d7e23f52 Mon Sep 17 00:00:00 2001 From: hama Date: Wed, 30 Sep 2020 15:34:04 +0900 Subject: [PATCH 075/207] =?UTF-8?q?=E5=8F=97=E6=B3=A8=E7=99=BB=E9=8C=B2?= =?UTF-8?q?=E7=94=BB=E9=9D=A2=E3=81=A7=E5=95=86=E5=93=81=E3=82=B3=E3=83=BC?= =?UTF-8?q?=E3=83=89=E3=82=92=E6=8C=87=E5=AE=9A=E3=81=97=E3=81=9F=E5=95=86?= =?UTF-8?q?=E5=93=81=E6=A4=9C=E7=B4=A2=E6=99=82=E3=81=AB=E7=99=BA=E7=94=9F?= =?UTF-8?q?=E3=81=99=E3=82=8B=E3=81=93=E3=81=A8=E3=81=8C=E3=81=82=E3=82=8B?= =?UTF-8?q?=E3=82=A8=E3=83=A9=E3=83=BC=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Repository/ProductRepository.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Repository/ProductRepository.php b/src/Eccube/Repository/ProductRepository.php index 62667001d53..de7d641e6e4 100644 --- a/src/Eccube/Repository/ProductRepository.php +++ b/src/Eccube/Repository/ProductRepository.php @@ -66,7 +66,7 @@ public function __construct( public function findWithSortedClassCategories($productId) { $qb = $this->createQueryBuilder('p'); - $qb->addSelect(['pc', 'cc1', 'cc2', 'pi', 'pt']) + $qb ->innerJoin('p.ProductClasses', 'pc') ->leftJoin('pc.ClassCategory1', 'cc1') ->leftJoin('pc.ClassCategory2', 'cc2') From eeb8bb89d02055af7011b1113021a9a8f9832326 Mon Sep 17 00:00:00 2001 From: hama Date: Fri, 2 Oct 2020 13:42:27 +0900 Subject: [PATCH 076/207] =?UTF-8?q?Entity=E6=8B=A1=E5=BC=B5=E6=99=82?= =?UTF-8?q?=E3=81=AB=E3=82=AA=E3=83=AA=E3=82=B8=E3=83=8A=E3=83=AB=E3=81=AE?= =?UTF-8?q?=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=82=92=E5=84=AA=E5=85=88?= =?UTF-8?q?=E3=81=97=E3=81=A6=E5=8F=82=E7=85=A7=E3=81=99=E3=82=8B=E3=82=88?= =?UTF-8?q?=E3=81=86=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Service/EntityProxyService.php | 27 +++++++++- .../Tests/Service/EntityProxyServiceTest.php | 49 +++++++++++++++++++ 2 files changed, 74 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Service/EntityProxyService.php b/src/Eccube/Service/EntityProxyService.php index 90deea8e8ba..2db80a3bf1b 100644 --- a/src/Eccube/Service/EntityProxyService.php +++ b/src/Eccube/Service/EntityProxyService.php @@ -75,8 +75,7 @@ public function generate($includesDirs, $excludeDirs, $outputDir, OutputInterfac // プロキシファイルの生成 foreach ($targetEntities as $targetEntity) { $traits = isset($addTraits[$targetEntity]) ? $addTraits[$targetEntity] : []; - $rc = new ClassReflection($targetEntity); - $fileName = str_replace('\\', '/', $rc->getFileName()); + $fileName = $this->originalEntityPath($targetEntity); $baseName = basename($fileName); $entityTokens = Tokens::fromCode(file_get_contents($fileName)); @@ -115,6 +114,30 @@ public function generate($includesDirs, $excludeDirs, $outputDir, OutputInterfac return $generatedFiles; } + private function originalEntityPath(string $entityClassName): string + { + $projectDir = rtrim(str_replace('\\', '/', $this->container->getParameter('kernel.project_dir')), '/'); + $originalPath = null; + + if (preg_match('/\AEccube\\\\Entity\\\\(.+)\z/', $entityClassName, $matches)) { + $pathToEntity = str_replace('\\', '/', $matches[1]); + $originalPath = sprintf('%s/src/Eccube/Entity/%s.php', $projectDir, $pathToEntity); + } elseif (preg_match('/\ACustomize\\\\Entity\\\\(.+)\z/', $entityClassName, $matches)) { + $pathToEntity = str_replace('\\', '/', $matches[1]); + $originalPath = sprintf('%s/app/Customize/Entity/%s.php', $projectDir, $pathToEntity); + } elseif (preg_match('/\APlugin\\\\([^\\\\]+)\\\\Entity\\\\(.+)\z/', $entityClassName, $matches)) { + $pathToEntity = str_replace('\\', '/', $matches[2]); + $originalPath = sprintf('%s/app/Plugin/%s/Entity/%s.php', $projectDir, $matches[1], $pathToEntity); + } + + if ($originalPath !== null && file_exists($originalPath)) { + return $originalPath; + } + + $rc = new ClassReflection($entityClassName); + return str_replace('\\', '/', $rc->getFileName()); + } + /** * 複数のディレクトリセットをスキャンしてディレクトリセットごとのEntityとTraitのマッピングを返します. * diff --git a/tests/Eccube/Tests/Service/EntityProxyServiceTest.php b/tests/Eccube/Tests/Service/EntityProxyServiceTest.php index 7ec4952c7ea..1779d353197 100644 --- a/tests/Eccube/Tests/Service/EntityProxyServiceTest.php +++ b/tests/Eccube/Tests/Service/EntityProxyServiceTest.php @@ -16,6 +16,7 @@ use Eccube\Annotation\EntityExtension; use Eccube\Service\EntityProxyService; use PhpCsFixer\Tokenizer\CT; +use PhpCsFixer\Tokenizer\Token; use PhpCsFixer\Tokenizer\Tokens; use Eccube\Tests\EccubeTestCase; use Symfony\Component\Finder\Finder; @@ -84,6 +85,54 @@ public function testGenerate() self::assertNotNull($sequence); } + public function testGenerateFromOriginalFile() + { + $this->markTestSkipped(); + + $findSequence = static function (Tokens $tokens) { + return $tokens->findSequence([ + [T_PRIVATE, 'private'], + [T_VARIABLE, '$hoge'], + ]); + }; + + $this->entityProxyService->generate([__DIR__], [], $this->tempOutputDir); + + $generatedFile = $this->tempOutputDir.'/src/Eccube/Entity/Product.php'; + self::assertTrue(file_exists($generatedFile)); + + $tokens = Tokens::fromCode(file_get_contents($generatedFile)); + // private $hoge;がないことを確認 + self::assertNull($findSequence($tokens)); + + // private $hoge;を挿入 + $additionalVariableTokens = [ + new Token([T_WHITESPACE, PHP_EOL . ' ']), + new Token([T_PRIVATE, 'private']), + new Token([T_WHITESPACE, ' ']), + new Token([T_VARIABLE, '$hoge']), + new Token(';'), + new Token([T_WHITESPACE, PHP_EOL]) + ]; + + $classTokens = $tokens->findSequence([[T_CLASS], [T_STRING]]); + $classTokenEnd = $tokens->getNextTokenOfKind(array_keys($classTokens)[0], ['{']); + $tokens->insertAt($classTokenEnd + 1, $additionalVariableTokens); + $newCode = $tokens->generateCode(); + $newTokens = Tokens::fromCode($newCode); + + // private $hoge;が存在することを確認 + self::assertNotNull($findSequence($newTokens)); + + // 再生成する + file_put_contents($generatedFile, $newCode); + $this->entityProxyService->generate([__DIR__], [], $this->tempOutputDir); + $regeneratedTokens = Tokens::fromCode(file_get_contents($generatedFile)); + + // private $hoge;が存在しないことを確認 + self::assertNull($findSequence($regeneratedTokens)); + } + public function testGenerateExcluded() { $this->entityProxyService->generate([__DIR__], [], $this->tempOutputDir); From 5fc0b9954bde585c866d6959c9f7c68d8c2ed857 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Fri, 2 Oct 2020 21:32:03 +0900 Subject: [PATCH 077/207] =?UTF-8?q?=E3=82=AB=E3=82=B9=E3=82=BF=E3=83=9E?= =?UTF-8?q?=E3=82=A4=E3=82=BA=E9=85=8D=E4=B8=8B=E3=81=AE=E3=83=86=E3=83=B3?= =?UTF-8?q?=E3=83=97=E3=83=AC=E3=83=BC=E3=83=88=E3=83=95=E3=82=A9=E3=83=AB?= =?UTF-8?q?=E3=83=80=E3=81=A7=E3=82=82smartphone=E3=82=92git=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E5=87=BA=E6=9D=A5=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB?= =?UTF-8?q?=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + app/template/smartphone/.gitkeep | 0 2 files changed, 1 insertion(+) create mode 100644 app/template/smartphone/.gitkeep diff --git a/.gitignore b/.gitignore index 7fef6b6d3ab..6910581b4ad 100644 --- a/.gitignore +++ b/.gitignore @@ -18,6 +18,7 @@ composer.phar !/app/template/admin !/app/template/default !/app/template/user_data +!/app/template/smartphone /app/proxy/entity/* !/app/proxy/entity/.gitkeep /html/plugin/* diff --git a/app/template/smartphone/.gitkeep b/app/template/smartphone/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d From 11412c3714862731f4b1d8bbd4613aa7e812e5d6 Mon Sep 17 00:00:00 2001 From: Zero King Date: Sat, 3 Oct 2020 04:42:08 +0000 Subject: [PATCH 078/207] Replace reference to unknown Exception Fix https://github.com/EC-CUBE/ec-cube/issues/4683 --- src/Eccube/DataCollector/EccubeDataCollector.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/DataCollector/EccubeDataCollector.php b/src/Eccube/DataCollector/EccubeDataCollector.php index 515a25beff5..e838fdd6b8e 100644 --- a/src/Eccube/DataCollector/EccubeDataCollector.php +++ b/src/Eccube/DataCollector/EccubeDataCollector.php @@ -113,7 +113,7 @@ public function collect(Request $request, Response $response, \Exception $except try { $this->data['locale_code'] = $this->container->getParameter('locale'); - } catch (LocaleNotFoundException $exception) { + } catch (\Exception $exception) { } try { From d2f10eb093a88321c21f8cdaea8cbd4802b5e8a6 Mon Sep 17 00:00:00 2001 From: Zero King Date: Sat, 3 Oct 2020 04:52:17 +0000 Subject: [PATCH 079/207] Remove incorrect extra argument from log_error() calls Fix https://github.com/EC-CUBE/ec-cube/issues/4684 --- src/Eccube/Controller/Admin/Customer/CustomerController.php | 2 +- .../Admin/Customer/CustomerDeliveryEditController.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Controller/Admin/Customer/CustomerController.php b/src/Eccube/Controller/Admin/Customer/CustomerController.php index 7e3a9fba14a..880d3c80c49 100644 --- a/src/Eccube/Controller/Admin/Customer/CustomerController.php +++ b/src/Eccube/Controller/Admin/Customer/CustomerController.php @@ -245,7 +245,7 @@ public function delete(Request $request, $id, TranslatorInterface $translator) $this->entityManager->flush($Customer); $this->addSuccess('admin.common.delete_complete', 'admin'); } catch (ForeignKeyConstraintViolationException $e) { - log_error('会員削除失敗', [$e], 'admin'); + log_error('会員削除失敗', [$e]); $message = trans('admin.common.delete_error_foreign_key', ['%name%' => $Customer->getName01().' '.$Customer->getName02()]); $this->addError($message, 'admin'); diff --git a/src/Eccube/Controller/Admin/Customer/CustomerDeliveryEditController.php b/src/Eccube/Controller/Admin/Customer/CustomerDeliveryEditController.php index 112805c1a83..79a85c6002d 100644 --- a/src/Eccube/Controller/Admin/Customer/CustomerDeliveryEditController.php +++ b/src/Eccube/Controller/Admin/Customer/CustomerDeliveryEditController.php @@ -144,7 +144,7 @@ public function delete(Request $request, Customer $Customer, $did) $this->customerAddressRepository->delete($CustomerAddress); $this->addSuccess('admin.common.delete_complete', 'admin'); } catch (ForeignKeyConstraintViolationException $e) { - log_error('お届け先削除失敗', [$e], 'admin'); + log_error('お届け先削除失敗', [$e]); $message = trans('admin.common.delete_error_foreign_key', ['%name%' => trans('admin.customer.customer_address')]); $this->addError($message, 'admin'); From f9e525eb50891e14b144dc6aa904a835bc9264d2 Mon Sep 17 00:00:00 2001 From: kazumi Date: Tue, 6 Oct 2020 01:13:59 +0900 Subject: [PATCH 080/207] =?UTF-8?q?=E7=B4=8D=E5=93=81=E6=9B=B8=E3=81=AE?= =?UTF-8?q?=E9=80=81=E6=96=99=E3=81=8C=EF=BC=92=E3=81=A4=E8=A1=A8=E7=A4=BA?= =?UTF-8?q?=E3=81=95=E3=82=8C=E3=82=8B=E5=95=8F=E9=A1=8C=E3=82=92=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Service/OrderPdfService.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Service/OrderPdfService.php b/src/Eccube/Service/OrderPdfService.php index c746b068150..b3c52936122 100644 --- a/src/Eccube/Service/OrderPdfService.php +++ b/src/Eccube/Service/OrderPdfService.php @@ -461,8 +461,12 @@ protected function renderOrderDetailData(Shipping $Shipping) // ========================================= $i = 0; $isShowReducedTaxMess = false; + $Order = $Shipping->getOrder(); /* @var OrderItem $OrderItem */ foreach ($Shipping->getOrderItems() as $OrderItem) { + if (!$Order->isMultiple() && is_null($OrderItem->getProduct())) { + continue; + } // class categoryの生成 $classCategory = ''; /** @var OrderItem $OrderItem */ @@ -498,8 +502,6 @@ protected function renderOrderDetailData(Shipping $Shipping) ++$i; } - $Order = $Shipping->getOrder(); - if (!$Order->isMultiple()) { // ========================================= // 小計 From 9a8cd90f144eb7d987934b1adc4137f7cfa815ac Mon Sep 17 00:00:00 2001 From: hama Date: Tue, 6 Oct 2020 11:26:08 +0900 Subject: [PATCH 081/207] =?UTF-8?q?=E3=83=97=E3=83=A9=E3=82=B0=E3=82=A4?= =?UTF-8?q?=E3=83=B3=E7=94=9F=E6=88=90=E3=82=B3=E3=83=9E=E3=83=B3=E3=83=89?= =?UTF-8?q?=E3=81=AB=E3=82=88=E3=81=A3=E3=81=A6=E7=94=9F=E6=88=90=E3=81=95?= =?UTF-8?q?=E3=82=8C=E3=82=8BEntity=E3=81=A7class=5Fexists=E3=82=92?= =?UTF-8?q?=E3=83=81=E3=82=A7=E3=83=83=E3=82=AF=E3=81=99=E3=82=8B=E3=82=88?= =?UTF-8?q?=E3=81=86=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Command/PluginGenerateCommand.php | 88 ++++++++++---------- 1 file changed, 45 insertions(+), 43 deletions(-) diff --git a/src/Eccube/Command/PluginGenerateCommand.php b/src/Eccube/Command/PluginGenerateCommand.php index db83c4298bf..0e199211e4e 100644 --- a/src/Eccube/Command/PluginGenerateCommand.php +++ b/src/Eccube/Command/PluginGenerateCommand.php @@ -396,56 +396,58 @@ public function index(Request \$request) use Doctrine\\ORM\\Mapping as ORM; -/** - * Config - * - * @ORM\Table(name="plg_${snakecased}_config") - * @ORM\Entity(repositoryClass="Plugin\\${code}\\Repository\\ConfigRepository") - */ -class Config -{ - /** - * @var int - * - * @ORM\Column(name="id", type="integer", options={"unsigned":true}) - * @ORM\Id - * @ORM\GeneratedValue(strategy="IDENTITY") - */ - private \$id; - +if (!class_exists('\\Plugin\\${code}\\Entity\\Config', false)) { /** - * @var string + * Config * - * @ORM\Column(name="name", type="string", length=255) - */ - private \$name; - - /** - * @return int + * @ORM\Table(name="plg_${snakecased}_config") + * @ORM\Entity(repositoryClass="Plugin\\${code}\\Repository\\ConfigRepository") */ - public function getId() + class Config { - return \$this->id; - } + /** + * @var int + * + * @ORM\Column(name="id", type="integer", options={"unsigned":true}) + * @ORM\Id + * @ORM\GeneratedValue(strategy="IDENTITY") + */ + private \$id; + + /** + * @var string + * + * @ORM\Column(name="name", type="string", length=255) + */ + private \$name; + + /** + * @return int + */ + public function getId() + { + return \$this->id; + } - /** - * @return string - */ - public function getName() - { - return \$this->name; - } + /** + * @return string + */ + public function getName() + { + return \$this->name; + } - /** - * @param string \$name - * - * @return \$this; - */ - public function setName(\$name) - { - \$this->name = \$name; + /** + * @param string \$name + * + * @return \$this; + */ + public function setName(\$name) + { + \$this->name = \$name; - return \$this; + return \$this; + } } } From 720fc8e7e1dd5180d3611edd3872c0197959e596 Mon Sep 17 00:00:00 2001 From: hama Date: Tue, 6 Oct 2020 11:33:51 +0900 Subject: [PATCH 082/207] =?UTF-8?q?=E3=83=9E=E3=82=B9=E3=82=BFEntity?= =?UTF-8?q?=E3=81=A7class=5Fexists=E3=82=92=E3=83=81=E3=82=A7=E3=83=83?= =?UTF-8?q?=E3=82=AF=E3=81=99=E3=82=8B=E3=82=88=E3=81=86=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Entity/Master/Authority.php | 40 +++--- src/Eccube/Entity/Master/Country.php | 26 ++-- src/Eccube/Entity/Master/CsvType.php | 70 ++++++----- .../Entity/Master/CustomerOrderStatus.php | 26 ++-- src/Eccube/Entity/Master/CustomerStatus.php | 78 ++++++------ src/Eccube/Entity/Master/DeviceType.php | 32 ++--- src/Eccube/Entity/Master/Job.php | 26 ++-- src/Eccube/Entity/Master/OrderItemType.php | 118 +++++++++--------- src/Eccube/Entity/Master/OrderStatus.php | 96 +++++++------- src/Eccube/Entity/Master/OrderStatusColor.php | 26 ++-- src/Eccube/Entity/Master/PageMax.php | 26 ++-- src/Eccube/Entity/Master/Pref.php | 26 ++-- src/Eccube/Entity/Master/ProductListMax.php | 26 ++-- .../Entity/Master/ProductListOrderBy.php | 26 ++-- src/Eccube/Entity/Master/ProductStatus.php | 80 ++++++------ src/Eccube/Entity/Master/RoundingType.php | 56 +++++---- src/Eccube/Entity/Master/SaleType.php | 30 ++--- src/Eccube/Entity/Master/Sex.php | 26 ++-- src/Eccube/Entity/Master/TaxDisplayType.php | 48 +++---- src/Eccube/Entity/Master/TaxType.php | 82 ++++++------ src/Eccube/Entity/Master/Work.php | 38 +++--- 21 files changed, 522 insertions(+), 480 deletions(-) diff --git a/src/Eccube/Entity/Master/Authority.php b/src/Eccube/Entity/Master/Authority.php index 5d797886130..93f9b08b04b 100644 --- a/src/Eccube/Entity/Master/Authority.php +++ b/src/Eccube/Entity/Master/Authority.php @@ -15,25 +15,27 @@ use Doctrine\ORM\Mapping as ORM; -/** - * Authority - * - * @ORM\Table(name="mtb_authority") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\AuthorityRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class Authority extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(Authority::class, false)) { /** - * システム管理者 + * Authority + * + * @ORM\Table(name="mtb_authority") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\AuthorityRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") */ - const ADMIN = 0; + class Authority extends \Eccube\Entity\Master\AbstractMasterEntity + { + /** + * システム管理者 + */ + const ADMIN = 0; - /** - * 店舗オーナー - */ - const OWNER = 1; -} + /** + * 店舗オーナー + */ + const OWNER = 1; + } +} \ No newline at end of file diff --git a/src/Eccube/Entity/Master/Country.php b/src/Eccube/Entity/Master/Country.php index 07586e9194f..a27a7046ebd 100644 --- a/src/Eccube/Entity/Master/Country.php +++ b/src/Eccube/Entity/Master/Country.php @@ -15,16 +15,18 @@ use Doctrine\ORM\Mapping as ORM; -/** - * Country - * - * @ORM\Table(name="mtb_country") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\CountryRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class Country extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(Country::class, false)) { + /** + * Country + * + * @ORM\Table(name="mtb_country") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\CountryRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") + */ + class Country extends \Eccube\Entity\Master\AbstractMasterEntity + { + } } diff --git a/src/Eccube/Entity/Master/CsvType.php b/src/Eccube/Entity/Master/CsvType.php index 63f0d71c389..07123a77f79 100644 --- a/src/Eccube/Entity/Master/CsvType.php +++ b/src/Eccube/Entity/Master/CsvType.php @@ -15,40 +15,42 @@ use Doctrine\ORM\Mapping as ORM; -/** - * CsvType - * - * @ORM\Table(name="mtb_csv_type") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\CsvTypeRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class CsvType extends \Eccube\Entity\Master\AbstractMasterEntity -{ - /** - * @var integer - */ - const CSV_TYPE_PRODUCT = 1; - - /** - * @var integer - */ - const CSV_TYPE_CUSTOMER = 2; - - /** - * @var integer - */ - const CSV_TYPE_ORDER = 3; - - /** - * @var integer - */ - const CSV_TYPE_SHIPPING = 4; - +if (!class_exists(CsvType::class, false)) { /** - * @var integer + * CsvType + * + * @ORM\Table(name="mtb_csv_type") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\CsvTypeRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") */ - const CSV_TYPE_CATEGORY = 5; + class CsvType extends \Eccube\Entity\Master\AbstractMasterEntity + { + /** + * @var integer + */ + const CSV_TYPE_PRODUCT = 1; + + /** + * @var integer + */ + const CSV_TYPE_CUSTOMER = 2; + + /** + * @var integer + */ + const CSV_TYPE_ORDER = 3; + + /** + * @var integer + */ + const CSV_TYPE_SHIPPING = 4; + + /** + * @var integer + */ + const CSV_TYPE_CATEGORY = 5; + } } diff --git a/src/Eccube/Entity/Master/CustomerOrderStatus.php b/src/Eccube/Entity/Master/CustomerOrderStatus.php index b3a0403138a..1772aa8883f 100644 --- a/src/Eccube/Entity/Master/CustomerOrderStatus.php +++ b/src/Eccube/Entity/Master/CustomerOrderStatus.php @@ -15,16 +15,18 @@ use Doctrine\ORM\Mapping as ORM; -/** - * CustomerOrderStatus - * - * @ORM\Table(name="mtb_customer_order_status") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\CustomerOrderStatusRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class CustomerOrderStatus extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(CustomerOrderStatus::class, false)) { + /** + * CustomerOrderStatus + * + * @ORM\Table(name="mtb_customer_order_status") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\CustomerOrderStatusRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") + */ + class CustomerOrderStatus extends \Eccube\Entity\Master\AbstractMasterEntity + { + } } diff --git a/src/Eccube/Entity/Master/CustomerStatus.php b/src/Eccube/Entity/Master/CustomerStatus.php index ca32ee51d2e..4455381b6d4 100644 --- a/src/Eccube/Entity/Master/CustomerStatus.php +++ b/src/Eccube/Entity/Master/CustomerStatus.php @@ -15,44 +15,46 @@ use Doctrine\ORM\Mapping as ORM; -/** - * CustomerStatus - * - * @ORM\Table(name="mtb_customer_status") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\CustomerStatusRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class CustomerStatus extends \Eccube\Entity\Master\AbstractMasterEntity -{ - /** - * 仮会員. - * - * @deprecated - */ - const NONACTIVE = 1; - +if (!class_exists(CustomerStatus::class, false)) { /** - * 本会員. + * CustomerStatus * - * @deprecated - */ - const ACTIVE = 2; - - /** - * 仮会員. - */ - const PROVISIONAL = 1; - - /** - * 本会員 - */ - const REGULAR = 2; - - /** - * 退会 + * @ORM\Table(name="mtb_customer_status") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\CustomerStatusRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") */ - const WITHDRAWING = 3; -} + class CustomerStatus extends \Eccube\Entity\Master\AbstractMasterEntity + { + /** + * 仮会員. + * + * @deprecated + */ + const NONACTIVE = 1; + + /** + * 本会員. + * + * @deprecated + */ + const ACTIVE = 2; + + /** + * 仮会員. + */ + const PROVISIONAL = 1; + + /** + * 本会員 + */ + const REGULAR = 2; + + /** + * 退会 + */ + const WITHDRAWING = 3; + } +} \ No newline at end of file diff --git a/src/Eccube/Entity/Master/DeviceType.php b/src/Eccube/Entity/Master/DeviceType.php index 8a4f2c38127..f4b7d8b4d91 100644 --- a/src/Eccube/Entity/Master/DeviceType.php +++ b/src/Eccube/Entity/Master/DeviceType.php @@ -15,19 +15,21 @@ use Doctrine\ORM\Mapping as ORM; -/** - * DeviceType - * - * @ORM\Table(name="mtb_device_type") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\DeviceTypeRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class DeviceType extends \Eccube\Entity\Master\AbstractMasterEntity -{ - const DEVICE_TYPE_MB = 2; - // const DEVICE_TYPE_TABLET = 3; - const DEVICE_TYPE_PC = 10; +if (!class_exists(DeviceType::class, false)) { + /** + * DeviceType + * + * @ORM\Table(name="mtb_device_type") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\DeviceTypeRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") + */ + class DeviceType extends \Eccube\Entity\Master\AbstractMasterEntity + { + const DEVICE_TYPE_MB = 2; + // const DEVICE_TYPE_TABLET = 3; + const DEVICE_TYPE_PC = 10; + } } diff --git a/src/Eccube/Entity/Master/Job.php b/src/Eccube/Entity/Master/Job.php index f537f5018fd..b786ff1422f 100644 --- a/src/Eccube/Entity/Master/Job.php +++ b/src/Eccube/Entity/Master/Job.php @@ -15,16 +15,18 @@ use Doctrine\ORM\Mapping as ORM; -/** - * Job - * - * @ORM\Table(name="mtb_job") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\JobRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class Job extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(Job::class, false)) { + /** + * Job + * + * @ORM\Table(name="mtb_job") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\JobRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") + */ + class Job extends \Eccube\Entity\Master\AbstractMasterEntity + { + } } diff --git a/src/Eccube/Entity/Master/OrderItemType.php b/src/Eccube/Entity/Master/OrderItemType.php index d8b6e3ed5e6..1857bc6adae 100644 --- a/src/Eccube/Entity/Master/OrderItemType.php +++ b/src/Eccube/Entity/Master/OrderItemType.php @@ -15,73 +15,75 @@ use Doctrine\ORM\Mapping as ORM; -/** - * OrderItemType - * - * 受注明細種別 - * - * @ORM\Table(name="mtb_order_item_type") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\OrderItemTypeRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class OrderItemType extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(OrderItemType::class, false)) { /** - * 商品. + * OrderItemType * - * @var integer - */ - const PRODUCT = 1; - - /** - * 送料. + * 受注明細種別 * - * @var integer + * @ORM\Table(name="mtb_order_item_type") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\OrderItemTypeRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") */ - const DELIVERY_FEE = 2; + class OrderItemType extends \Eccube\Entity\Master\AbstractMasterEntity + { + /** + * 商品. + * + * @var integer + */ + const PRODUCT = 1; - /** - * 手数料. - * - * @var integer - */ - const CHARGE = 3; + /** + * 送料. + * + * @var integer + */ + const DELIVERY_FEE = 2; - /** - * 値引き. - * - * @var integer - */ - const DISCOUNT = 4; + /** + * 手数料. + * + * @var integer + */ + const CHARGE = 3; - /** - * 税. - * - * @var integer - */ - const TAX = 5; + /** + * 値引き. + * + * @var integer + */ + const DISCOUNT = 4; - /** - * ポイント. - * - * @var integer - */ - const POINT = 6; + /** + * 税. + * + * @var integer + */ + const TAX = 5; - /** - * 商品かどうか - * - * @return bool - */ - public function isProduct() - { - if ($this->id == self::PRODUCT) { - return true; - } + /** + * ポイント. + * + * @var integer + */ + const POINT = 6; + + /** + * 商品かどうか + * + * @return bool + */ + public function isProduct() + { + if ($this->id == self::PRODUCT) { + return true; + } - return false; + return false; + } } } diff --git a/src/Eccube/Entity/Master/OrderStatus.php b/src/Eccube/Entity/Master/OrderStatus.php index 93b7cdeace2..51a58382c3e 100644 --- a/src/Eccube/Entity/Master/OrderStatus.php +++ b/src/Eccube/Entity/Master/OrderStatus.php @@ -15,57 +15,59 @@ use Doctrine\ORM\Mapping as ORM; -/** - * OrderStatus - * - * @ORM\Table(name="mtb_order_status") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\OrderStatusRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class OrderStatus extends \Eccube\Entity\Master\AbstractMasterEntity -{ - /** 新規受付. */ - const NEW = 1; - /** 注文取消し. */ - const CANCEL = 3; - /** 対応中. */ - const IN_PROGRESS = 4; - /** 発送済み. */ - const DELIVERED = 5; - /** 入金済み. */ - const PAID = 6; - /** 決済処理中. */ - const PENDING = 7; - /** 購入処理中. */ - const PROCESSING = 8; - /** 返品 */ - const RETURNED = 9; - +if (!class_exists(OrderStatus::class, false)) { /** - * 受注一覧画面で, ステータスごとの受注件数を表示するかどうか - * - * @var bool + * OrderStatus * - * @ORM\Column(name="display_order_count", type="boolean", options={"default":false}) - */ - private $display_order_count = false; - - /** - * @return bool + * @ORM\Table(name="mtb_order_status") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\OrderStatusRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") */ - public function isDisplayOrderCount() + class OrderStatus extends \Eccube\Entity\Master\AbstractMasterEntity { - return $this->display_order_count; - } + /** 新規受付. */ + const NEW = 1; + /** 注文取消し. */ + const CANCEL = 3; + /** 対応中. */ + const IN_PROGRESS = 4; + /** 発送済み. */ + const DELIVERED = 5; + /** 入金済み. */ + const PAID = 6; + /** 決済処理中. */ + const PENDING = 7; + /** 購入処理中. */ + const PROCESSING = 8; + /** 返品 */ + const RETURNED = 9; - /** - * @param bool $display_order_count - */ - public function setDisplayOrderCount($display_order_count = false) - { - $this->display_order_count = $display_order_count; + /** + * 受注一覧画面で, ステータスごとの受注件数を表示するかどうか + * + * @var bool + * + * @ORM\Column(name="display_order_count", type="boolean", options={"default":false}) + */ + private $display_order_count = false; + + /** + * @return bool + */ + public function isDisplayOrderCount() + { + return $this->display_order_count; + } + + /** + * @param bool $display_order_count + */ + public function setDisplayOrderCount($display_order_count = false) + { + $this->display_order_count = $display_order_count; + } } } diff --git a/src/Eccube/Entity/Master/OrderStatusColor.php b/src/Eccube/Entity/Master/OrderStatusColor.php index a37c30afe2a..a6a97b64506 100644 --- a/src/Eccube/Entity/Master/OrderStatusColor.php +++ b/src/Eccube/Entity/Master/OrderStatusColor.php @@ -15,16 +15,18 @@ use Doctrine\ORM\Mapping as ORM; -/** - * OrderStatusColor - * - * @ORM\Table(name="mtb_order_status_color") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\OrderStatusColorRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class OrderStatusColor extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(OrderStatusColor::class, false)) { + /** + * OrderStatusColor + * + * @ORM\Table(name="mtb_order_status_color") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\OrderStatusColorRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") + */ + class OrderStatusColor extends \Eccube\Entity\Master\AbstractMasterEntity + { + } } diff --git a/src/Eccube/Entity/Master/PageMax.php b/src/Eccube/Entity/Master/PageMax.php index 428ad3b085e..c937dce8f99 100644 --- a/src/Eccube/Entity/Master/PageMax.php +++ b/src/Eccube/Entity/Master/PageMax.php @@ -15,16 +15,18 @@ use Doctrine\ORM\Mapping as ORM; -/** - * PageMax - * - * @ORM\Table(name="mtb_page_max") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\PageMaxRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class PageMax extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(PageMax::class, false)) { + /** + * PageMax + * + * @ORM\Table(name="mtb_page_max") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\PageMaxRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") + */ + class PageMax extends \Eccube\Entity\Master\AbstractMasterEntity + { + } } diff --git a/src/Eccube/Entity/Master/Pref.php b/src/Eccube/Entity/Master/Pref.php index 00969ca4164..7d4f879cb60 100644 --- a/src/Eccube/Entity/Master/Pref.php +++ b/src/Eccube/Entity/Master/Pref.php @@ -15,16 +15,18 @@ use Doctrine\ORM\Mapping as ORM; -/** - * Pref - * - * @ORM\Table(name="mtb_pref") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\PrefRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class Pref extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(Pref::class, false)) { + /** + * Pref + * + * @ORM\Table(name="mtb_pref") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\PrefRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") + */ + class Pref extends \Eccube\Entity\Master\AbstractMasterEntity + { + } } diff --git a/src/Eccube/Entity/Master/ProductListMax.php b/src/Eccube/Entity/Master/ProductListMax.php index be6525ca419..9144415aef1 100644 --- a/src/Eccube/Entity/Master/ProductListMax.php +++ b/src/Eccube/Entity/Master/ProductListMax.php @@ -15,16 +15,18 @@ use Doctrine\ORM\Mapping as ORM; -/** - * ProductListMax - * - * @ORM\Table(name="mtb_product_list_max") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\ProductListMaxRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class ProductListMax extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(ProductListMax::class, false)) { + /** + * ProductListMax + * + * @ORM\Table(name="mtb_product_list_max") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\ProductListMaxRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") + */ + class ProductListMax extends \Eccube\Entity\Master\AbstractMasterEntity + { + } } diff --git a/src/Eccube/Entity/Master/ProductListOrderBy.php b/src/Eccube/Entity/Master/ProductListOrderBy.php index 6b91d7f5eec..fa8b58db382 100644 --- a/src/Eccube/Entity/Master/ProductListOrderBy.php +++ b/src/Eccube/Entity/Master/ProductListOrderBy.php @@ -15,16 +15,18 @@ use Doctrine\ORM\Mapping as ORM; -/** - * ProductListOrderBy - * - * @ORM\Table(name="mtb_product_list_order_by") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\ProductListOrderByRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class ProductListOrderBy extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(ProductListOrderBy::class, false)) { + /** + * ProductListOrderBy + * + * @ORM\Table(name="mtb_product_list_order_by") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\ProductListOrderByRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") + */ + class ProductListOrderBy extends \Eccube\Entity\Master\AbstractMasterEntity + { + } } diff --git a/src/Eccube/Entity/Master/ProductStatus.php b/src/Eccube/Entity/Master/ProductStatus.php index cacd8b50c93..a61eb2c2fd2 100644 --- a/src/Eccube/Entity/Master/ProductStatus.php +++ b/src/Eccube/Entity/Master/ProductStatus.php @@ -15,49 +15,51 @@ use Doctrine\ORM\Mapping as ORM; -/** - * ProductStatus - * - * 商品の公開ステータス - * - * @ORM\Table(name="mtb_product_status") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\ProductStatusRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class ProductStatus extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(ProductStatus::class, false)) { /** - * 公開 + * ProductStatus * - * フロント画面: 表示されます。 - * 管理画面商品一覧: デフォルトで検索対象となります。 + * 商品の公開ステータス * - * @var integer + * @ORM\Table(name="mtb_product_status") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\ProductStatusRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") */ - const DISPLAY_SHOW = 1; + class ProductStatus extends \Eccube\Entity\Master\AbstractMasterEntity + { + /** + * 公開 + * + * フロント画面: 表示されます。 + * 管理画面商品一覧: デフォルトで検索対象となります。 + * + * @var integer + */ + const DISPLAY_SHOW = 1; - /** - * 非公開 - * - * フロント画面: 表示されません。 - * 管理画面商品一覧: デフォルトで検索対象となります。 - * - * @var integer - */ - const DISPLAY_HIDE = 2; + /** + * 非公開 + * + * フロント画面: 表示されません。 + * 管理画面商品一覧: デフォルトで検索対象となります。 + * + * @var integer + */ + const DISPLAY_HIDE = 2; - /** - * 廃止 - * - * 通常、商品情報は受注情報などに紐づいているため、商品情報を物理削除することはできません。 - * 廃止のステータスは2系や3系での論理削除に近い役割となります。 - * フロント画面: 表示されません。 - * 管理画面商品一覧: デフォルトで検索対象外となり、廃止の公開ステータスを指定して検索可能です。 - * - * @var integer - */ - const DISPLAY_ABOLISHED = 3; + /** + * 廃止 + * + * 通常、商品情報は受注情報などに紐づいているため、商品情報を物理削除することはできません。 + * 廃止のステータスは2系や3系での論理削除に近い役割となります。 + * フロント画面: 表示されません。 + * 管理画面商品一覧: デフォルトで検索対象外となり、廃止の公開ステータスを指定して検索可能です。 + * + * @var integer + */ + const DISPLAY_ABOLISHED = 3; + } } diff --git a/src/Eccube/Entity/Master/RoundingType.php b/src/Eccube/Entity/Master/RoundingType.php index 4b9acfe295c..a02f1b2663a 100644 --- a/src/Eccube/Entity/Master/RoundingType.php +++ b/src/Eccube/Entity/Master/RoundingType.php @@ -15,34 +15,36 @@ use Doctrine\ORM\Mapping as ORM; -/** - * RoundingType - * - * @ORM\Table(name="mtb_rounding_type") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\RoundingTypeRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class RoundingType extends \Eccube\Entity\Master\AbstractMasterEntity -{ - /** - * 四捨五入. - * - * @var integer - */ - const ROUND = 1; - /** - * 切り捨て. - * - * @var integer - */ - const FLOOR = 2; +if (!class_exists(RoundingType::class, false)) { /** - * 切り上げ. + * RoundingType * - * @var integer + * @ORM\Table(name="mtb_rounding_type") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\RoundingTypeRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") */ - const CEIL = 3; + class RoundingType extends \Eccube\Entity\Master\AbstractMasterEntity + { + /** + * 四捨五入. + * + * @var integer + */ + const ROUND = 1; + /** + * 切り捨て. + * + * @var integer + */ + const FLOOR = 2; + /** + * 切り上げ. + * + * @var integer + */ + const CEIL = 3; + } } diff --git a/src/Eccube/Entity/Master/SaleType.php b/src/Eccube/Entity/Master/SaleType.php index 8104fce9196..a88a6a0e0ef 100644 --- a/src/Eccube/Entity/Master/SaleType.php +++ b/src/Eccube/Entity/Master/SaleType.php @@ -15,20 +15,22 @@ use Doctrine\ORM\Mapping as ORM; -/** - * SaleType - * - * @ORM\Table(name="mtb_sale_type") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\SaleTypeRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class SaleType extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(SaleType::class, false)) { /** - * @var integer + * SaleType + * + * @ORM\Table(name="mtb_sale_type") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\SaleTypeRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") */ - const SALE_TYPE_NORMAL = 1; + class SaleType extends \Eccube\Entity\Master\AbstractMasterEntity + { + /** + * @var integer + */ + const SALE_TYPE_NORMAL = 1; + } } diff --git a/src/Eccube/Entity/Master/Sex.php b/src/Eccube/Entity/Master/Sex.php index 255f9739cea..f10fa286ca8 100644 --- a/src/Eccube/Entity/Master/Sex.php +++ b/src/Eccube/Entity/Master/Sex.php @@ -15,16 +15,18 @@ use Doctrine\ORM\Mapping as ORM; -/** - * Sex - * - * @ORM\Table(name="mtb_sex") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\SexRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class Sex extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(Sex::class, false)) { + /** + * Sex + * + * @ORM\Table(name="mtb_sex") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\SexRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") + */ + class Sex extends \Eccube\Entity\Master\AbstractMasterEntity + { + } } diff --git a/src/Eccube/Entity/Master/TaxDisplayType.php b/src/Eccube/Entity/Master/TaxDisplayType.php index 4a8acc98402..04b9260a794 100644 --- a/src/Eccube/Entity/Master/TaxDisplayType.php +++ b/src/Eccube/Entity/Master/TaxDisplayType.php @@ -15,31 +15,33 @@ use Doctrine\ORM\Mapping as ORM; -/** - * TaxDisplayType - * - * 税抜表示 / 税込表示 - * - * @ORM\Table(name="mtb_tax_display_type") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\TaxDisplayTypeRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class TaxDisplayType extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(TaxDisplayType::class, false)) { /** - * 税抜. + * TaxDisplayType * - * @var integer - */ - const EXCLUDED = 1; - - /** - * 税込. + * 税抜表示 / 税込表示 * - * @var integer + * @ORM\Table(name="mtb_tax_display_type") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\TaxDisplayTypeRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") */ - const INCLUDED = 2; + class TaxDisplayType extends \Eccube\Entity\Master\AbstractMasterEntity + { + /** + * 税抜. + * + * @var integer + */ + const EXCLUDED = 1; + + /** + * 税込. + * + * @var integer + */ + const INCLUDED = 2; + } } diff --git a/src/Eccube/Entity/Master/TaxType.php b/src/Eccube/Entity/Master/TaxType.php index 65643c613a8..d481f74da28 100644 --- a/src/Eccube/Entity/Master/TaxType.php +++ b/src/Eccube/Entity/Master/TaxType.php @@ -15,50 +15,52 @@ use Doctrine\ORM\Mapping as ORM; -/** - * TaxType - * - * 消費税の課税区分 - * - * @ORM\Table(name="mtb_tax_type") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\TaxTypeRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - * - * @see https://www.nta.go.jp/taxanswer/shohi/6209.htm - */ -class TaxType extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(TaxType::class, false)) { /** - * 課税. + * TaxType * - * 消費税は、国内において事業者が事業として対価を得て行う取引を課税の対象としています。 + * 消費税の課税区分 * - * @var integer - */ - const TAXATION = 1; - - /** - * 不課税. + * @ORM\Table(name="mtb_tax_type") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\TaxTypeRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") * - * 消費税の課税の対象は、国内において事業者が事業として対価を得て行う資産の譲渡等と輸入取引です。 - * これに当たらない取引には消費税はかかりません。 - * 例えば、国外取引、対価を得て行うことに当たらない寄附や単なる贈与、出資に対する配当などがこれに当たります。 - * - * @var integer + * @see https://www.nta.go.jp/taxanswer/shohi/6209.htm */ - const NON_TAXABLE = 2; + class TaxType extends \Eccube\Entity\Master\AbstractMasterEntity + { + /** + * 課税. + * + * 消費税は、国内において事業者が事業として対価を得て行う取引を課税の対象としています。 + * + * @var integer + */ + const TAXATION = 1; - /** - * 非課税. - * - * 国内において事業者が事業として対価を得て行う資産の譲渡等であっても、課税対象になじまないものや社会政策的配慮から消費税を課税しない取引があります。 - * これを非課税取引といいます。 - * 例えば、土地、有価証券、商品券などの譲渡、預貯金の利子や社会保険医療などがこれに当たります。 - * - * @var integer - */ - const TAX_EXEMPT = 3; + /** + * 不課税. + * + * 消費税の課税の対象は、国内において事業者が事業として対価を得て行う資産の譲渡等と輸入取引です。 + * これに当たらない取引には消費税はかかりません。 + * 例えば、国外取引、対価を得て行うことに当たらない寄附や単なる贈与、出資に対する配当などがこれに当たります。 + * + * @var integer + */ + const NON_TAXABLE = 2; + + /** + * 非課税. + * + * 国内において事業者が事業として対価を得て行う資産の譲渡等であっても、課税対象になじまないものや社会政策的配慮から消費税を課税しない取引があります。 + * これを非課税取引といいます。 + * 例えば、土地、有価証券、商品券などの譲渡、預貯金の利子や社会保険医療などがこれに当たります。 + * + * @var integer + */ + const TAX_EXEMPT = 3; + } } diff --git a/src/Eccube/Entity/Master/Work.php b/src/Eccube/Entity/Master/Work.php index 48feed81271..a69724257ae 100644 --- a/src/Eccube/Entity/Master/Work.php +++ b/src/Eccube/Entity/Master/Work.php @@ -15,25 +15,27 @@ use Doctrine\ORM\Mapping as ORM; -/** - * Work - * - * @ORM\Table(name="mtb_work") - * @ORM\InheritanceType("SINGLE_TABLE") - * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) - * @ORM\HasLifecycleCallbacks() - * @ORM\Entity(repositoryClass="Eccube\Repository\Master\WorkRepository") - * @ORM\Cache(usage="NONSTRICT_READ_WRITE") - */ -class Work extends \Eccube\Entity\Master\AbstractMasterEntity -{ +if (!class_exists(Work::class, false)) { /** - * 非稼働 + * Work + * + * @ORM\Table(name="mtb_work") + * @ORM\InheritanceType("SINGLE_TABLE") + * @ORM\DiscriminatorColumn(name="discriminator_type", type="string", length=255) + * @ORM\HasLifecycleCallbacks() + * @ORM\Entity(repositoryClass="Eccube\Repository\Master\WorkRepository") + * @ORM\Cache(usage="NONSTRICT_READ_WRITE") */ - const NON_ACTIVE = 0; + class Work extends \Eccube\Entity\Master\AbstractMasterEntity + { + /** + * 非稼働 + */ + const NON_ACTIVE = 0; - /** - * 稼働 - */ - const ACTIVE = 1; + /** + * 稼働 + */ + const ACTIVE = 1; + } } From 8e43f929a7425bb07caf29613fa1c5daf202676c Mon Sep 17 00:00:00 2001 From: Satoshi Nakano Date: Wed, 7 Oct 2020 13:02:47 +0900 Subject: [PATCH 083/207] =?UTF-8?q?Member=E3=81=AE=E3=82=B5=E3=83=96?= =?UTF-8?q?=E3=82=AF=E3=83=A9=E3=82=B9=E3=82=82true=E3=82=92=E8=BF=94?= =?UTF-8?q?=E3=81=99=E3=82=88=E3=81=86=E3=81=AB=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Security/Core/User/MemberProvider.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Security/Core/User/MemberProvider.php b/src/Eccube/Security/Core/User/MemberProvider.php index f045d12dc46..b27af2322cd 100644 --- a/src/Eccube/Security/Core/User/MemberProvider.php +++ b/src/Eccube/Security/Core/User/MemberProvider.php @@ -86,6 +86,6 @@ public function refreshUser(UserInterface $user) */ public function supportsClass($class) { - return Member::class === $class; + return Member::class === $class || is_subclass_of($class,Member::class); } } From 870a4286117d7c386872d6b4bcf72af2cd885a6b Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Thu, 8 Oct 2020 14:51:22 +0900 Subject: [PATCH 084/207] =?UTF-8?q?=E3=83=97=E3=83=A9=E3=82=B0=E3=82=A4?= =?UTF-8?q?=E3=83=B3=E6=9C=89=E5=8A=B9=E6=99=82=E3=81=AE=E3=82=AD=E3=83=A3?= =?UTF-8?q?=E3=83=83=E3=82=B7=E3=83=A5=E3=82=AF=E3=83=AA=E3=82=A2=E3=81=AE?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Kernel.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Kernel.php b/src/Eccube/Kernel.php index d9b3024e563..195314f1ab0 100644 --- a/src/Eccube/Kernel.php +++ b/src/Eccube/Kernel.php @@ -190,7 +190,6 @@ protected function configureRoutes(RouteCollectionBuilder $routes) $builder->setSchemes($scheme); } if (file_exists($pluginDir.'/'.$plugin.'/Resource/config')) { - $builder = $routes->import($pluginDir.'/'.$plugin.'/Resource/config/routes'.self::CONFIG_EXTS, '/', 'glob'); $builder->setSchemes($scheme); } @@ -214,7 +213,6 @@ protected function build(ContainerBuilder $container) // DocumentRootをルーティディレクトリに設定する. $container->addCompilerPass(new WebServerDocumentRootPass('%kernel.project_dir%/')); - // twigのurl,path関数を差し替え $container->addCompilerPass(new TwigExtensionPass()); @@ -303,6 +301,12 @@ protected function addEntityExtensionPass(ContainerBuilder $container) protected function loadEntityProxies() { + // see https://github.com/EC-CUBE/ec-cube/issues/4727 + // キャッシュクリアなど、コード内でコマンドを利用している場合に2回実行されてしまう + if (true === $this->booted) { + return; + } + $files = Finder::create() ->in(__DIR__.'/../../app/proxy/entity/') ->name('*.php') From fdb6ae791ffde31d6a2316ee8b6f88d4307d6271 Mon Sep 17 00:00:00 2001 From: kazumi watanabe <34618717+kazumiiiiiiiiiii@users.noreply.github.com> Date: Thu, 8 Oct 2020 19:19:37 +0900 Subject: [PATCH 085/207] Apply suggestions from code review Co-authored-by: Hideki Okajima --- src/Eccube/Service/OrderPdfService.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Service/OrderPdfService.php b/src/Eccube/Service/OrderPdfService.php index b3c52936122..1262c1c7cb3 100644 --- a/src/Eccube/Service/OrderPdfService.php +++ b/src/Eccube/Service/OrderPdfService.php @@ -464,7 +464,7 @@ protected function renderOrderDetailData(Shipping $Shipping) $Order = $Shipping->getOrder(); /* @var OrderItem $OrderItem */ foreach ($Shipping->getOrderItems() as $OrderItem) { - if (!$Order->isMultiple() && is_null($OrderItem->getProduct())) { + if (!$Order->isMultiple() && !$OrderItem->isProduct()) { continue; } // class categoryの生成 From 90be3f5742e8157b7e7ad1dcbc684a187013a79d Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Fri, 9 Oct 2020 14:03:43 +0900 Subject: [PATCH 086/207] Set cookie lifetime on test --- app/config/eccube/packages/test/framework.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/app/config/eccube/packages/test/framework.yaml b/app/config/eccube/packages/test/framework.yaml index 76d7e5e1157..e1c8a478ac4 100644 --- a/app/config/eccube/packages/test/framework.yaml +++ b/app/config/eccube/packages/test/framework.yaml @@ -2,3 +2,4 @@ framework: test: ~ session: storage_id: session.storage.mock_file + cookie_lifetime: 1440 From bc26d6bab1e3b355f9026785913215dc22c05aa7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Sun, 11 Oct 2020 19:49:15 +0900 Subject: [PATCH 087/207] =?UTF-8?q?AbstractRepository::save()=20=E3=81=AE?= =?UTF-8?q?=E3=82=BF=E3=82=A4=E3=83=97=E3=83=92=E3=83=B3=E3=83=88=EF=BC=88?= =?UTF-8?q?=E3=82=A2=E3=83=8E=E3=83=86=E3=83=BC=E3=82=B7=E3=83=A7=E3=83=B3?= =?UTF-8?q?=EF=BC=89=E3=81=AE=E8=AA=A4=E3=82=8A=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Repository/AbstractRepository.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Repository/AbstractRepository.php b/src/Eccube/Repository/AbstractRepository.php index 691f9b7c3fb..285aa8ffb4c 100644 --- a/src/Eccube/Repository/AbstractRepository.php +++ b/src/Eccube/Repository/AbstractRepository.php @@ -37,7 +37,7 @@ public function delete($entity) /** * エンティティの登録/保存します。 * - * @param $entity|AbstractEntity エンティティ + * @param AbstractEntity $entity */ public function save($entity) { From 31a7bff32e14dd494d359c77b68ca82761afb319 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Mon, 12 Oct 2020 18:39:32 +0900 Subject: [PATCH 088/207] refs #4678 --- src/Eccube/Controller/Admin/Order/EditController.php | 2 +- src/Eccube/Repository/ProductRepository.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Controller/Admin/Order/EditController.php b/src/Eccube/Controller/Admin/Order/EditController.php index 0fdba5afeee..377dd010f65 100644 --- a/src/Eccube/Controller/Admin/Order/EditController.php +++ b/src/Eccube/Controller/Admin/Order/EditController.php @@ -629,7 +629,7 @@ public function searchProduct(Request $request, $page_no = null, Paginator $pagi foreach ($Products as $Product) { /* @var $builder \Symfony\Component\Form\FormBuilderInterface */ $builder = $this->formFactory->createNamedBuilder('', AddCartType::class, null, [ - 'product' => $this->productRepository->findWithSortedClassCategories($Product->getId()), + 'product' => $Product, ]); $addCartForm = $builder->getForm(); $forms[$Product->getId()] = $addCartForm->createView(); diff --git a/src/Eccube/Repository/ProductRepository.php b/src/Eccube/Repository/ProductRepository.php index de7d641e6e4..62667001d53 100644 --- a/src/Eccube/Repository/ProductRepository.php +++ b/src/Eccube/Repository/ProductRepository.php @@ -66,7 +66,7 @@ public function __construct( public function findWithSortedClassCategories($productId) { $qb = $this->createQueryBuilder('p'); - $qb + $qb->addSelect(['pc', 'cc1', 'cc2', 'pi', 'pt']) ->innerJoin('p.ProductClasses', 'pc') ->leftJoin('pc.ClassCategory1', 'cc1') ->leftJoin('pc.ClassCategory2', 'cc2') From 97357014a6b0d516100a345930149bd43d7a5570 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Mon, 19 Oct 2020 15:52:40 +0900 Subject: [PATCH 089/207] =?UTF-8?q?=E4=BC=9A=E7=A4=BE=E5=90=8D=E3=82=92?= =?UTF-8?q?=E5=87=BA=E5=8A=9B=E3=81=99=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB?= =?UTF-8?q?=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Service/OrderPdfService.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Service/OrderPdfService.php b/src/Eccube/Service/OrderPdfService.php index 1262c1c7cb3..8cad2fb709b 100644 --- a/src/Eccube/Service/OrderPdfService.php +++ b/src/Eccube/Service/OrderPdfService.php @@ -413,8 +413,17 @@ protected function renderOrderData(Shipping $Shipping) $this->lfText(27, 51, $Shipping->getAddr02(), 10); //購入者住所2 // 購入者氏名 - $text = $Shipping->getName01().' '.$Shipping->getName02().' 様'; - $this->lfText(27, 59, $text, 11); + if ($Shipping->getCompanyName()) { + // 会社名 + $text = $Shipping->getCompanyName(); + $this->lfText(27, 57, $text, 11); + // 氏名 + $text = $Shipping->getName01().' '.$Shipping->getName02().' 様'; + $this->lfText(27, 63, $text, 11); + } else { + $text = $Shipping->getName01().' '.$Shipping->getName02().' 様'; + $this->lfText(27, 59, $text, 11); + } // ========================================= // お買い上げ明細部 From 5accbe92feab4afffe85d997882affd8ad6b6731 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Mon, 19 Oct 2020 16:17:49 +0900 Subject: [PATCH 090/207] =?UTF-8?q?scrutinizer=E3=81=AE=E6=8C=87=E6=91=98?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Service/OrderPdfService.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Service/OrderPdfService.php b/src/Eccube/Service/OrderPdfService.php index 8cad2fb709b..7281955ffb3 100644 --- a/src/Eccube/Service/OrderPdfService.php +++ b/src/Eccube/Service/OrderPdfService.php @@ -413,7 +413,7 @@ protected function renderOrderData(Shipping $Shipping) $this->lfText(27, 51, $Shipping->getAddr02(), 10); //購入者住所2 // 購入者氏名 - if ($Shipping->getCompanyName()) { + if (null !== $Shipping->getCompanyName()) { // 会社名 $text = $Shipping->getCompanyName(); $this->lfText(27, 57, $text, 11); From 4382e9ac3aabdf4cdf1bd8d4cc42d50671242178 Mon Sep 17 00:00:00 2001 From: Kiyoshi Yamamura Date: Sat, 24 Oct 2020 04:33:00 +0900 Subject: [PATCH 091/207] =?UTF-8?q?html=E3=83=A1=E3=83=BC=E3=83=AB?= =?UTF-8?q?=E3=82=92=E5=87=BA=E5=8A=9B=E3=81=99=E3=82=8B=E9=9A=9B=E3=81=AB?= =?UTF-8?q?=E3=80=81=E9=80=94=E4=B8=AD=E3=81=AE=E3=83=87=E3=82=A3=E3=83=AC?= =?UTF-8?q?=E3=82=AF=E3=83=88=E3=83=AA=E5=90=8D=E3=81=AA=E3=81=A9=E3=81=AB?= =?UTF-8?q?.=E3=81=8C=E5=90=AB=E3=81=BE=E3=82=8C=E3=81=A6=E3=81=84?= =?UTF-8?q?=E3=81=9F=E3=82=89=E6=AD=A3=E5=B8=B8=E3=81=AB=E5=87=BA=E5=8A=9B?= =?UTF-8?q?=E3=81=95=E3=82=8C=E3=81=AA=E3=81=84=E4=B8=8D=E5=85=B7=E5=90=88?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Controller/Admin/Setting/Shop/MailController.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Controller/Admin/Setting/Shop/MailController.php b/src/Eccube/Controller/Admin/Setting/Shop/MailController.php index d8fc1731617..b8ed5035537 100644 --- a/src/Eccube/Controller/Admin/Setting/Shop/MailController.php +++ b/src/Eccube/Controller/Admin/Setting/Shop/MailController.php @@ -177,9 +177,9 @@ public function preview(Request $request) protected function getHtmlFileName($fileName) { // HTMLテンプレートファイルの取得 - $targetTemplate = explode('.', $fileName); + $targetTemplate = pathinfo($fileName); $suffix = '.html'; - return $targetTemplate[0].$suffix.'.'.$targetTemplate[1]; + return $targetTemplate['dirname'].DIRECTORY_SEPARATOR.$targetTemplate['filename'].$suffix.'.'.$targetTemplate['extension']; } } From 2942142b6bd9552d39d14ee1a46eb2a18db16b3c Mon Sep 17 00:00:00 2001 From: Kiyoshi Yamamura Date: Sat, 24 Oct 2020 06:29:21 +0900 Subject: [PATCH 092/207] =?UTF-8?q?=E3=83=9A=E3=83=BC=E3=82=B8=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=B8=80=E8=A6=A7=E7=94=BB=E9=9D=A2=E3=81=A7=E3=83=AB?= =?UTF-8?q?=E3=83=BC=E3=83=88=E5=90=8D=E3=80=81URL=E3=80=81=E3=83=95?= =?UTF-8?q?=E3=82=A1=E3=82=A4=E3=83=AB=E5=90=8D=E3=82=92=E8=A1=A8=E7=A4=BA?= =?UTF-8?q?=E3=81=99=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Content/PageController.php | 3 +- src/Eccube/Resource/locale/messages.ja.yaml | 1 + .../Resource/template/admin/Content/page.twig | 34 ++++++++++++++----- 3 files changed, 28 insertions(+), 10 deletions(-) diff --git a/src/Eccube/Controller/Admin/Content/PageController.php b/src/Eccube/Controller/Admin/Content/PageController.php index 13bf8cfe0fb..4b22bf005b7 100644 --- a/src/Eccube/Controller/Admin/Content/PageController.php +++ b/src/Eccube/Controller/Admin/Content/PageController.php @@ -68,7 +68,7 @@ public function __construct( * @Route("/%eccube_admin_route%/content/page", name="admin_content_page") * @Template("@admin/Content/page.twig") */ - public function index(Request $request) + public function index(Request $request, RouterInterface $router) { $Pages = $this->pageRepository->getPageList(); @@ -82,6 +82,7 @@ public function index(Request $request) return [ 'Pages' => $Pages, + 'router' => $router, ]; } diff --git a/src/Eccube/Resource/locale/messages.ja.yaml b/src/Eccube/Resource/locale/messages.ja.yaml index ea35edcc335..5d23ae19f88 100644 --- a/src/Eccube/Resource/locale/messages.ja.yaml +++ b/src/Eccube/Resource/locale/messages.ja.yaml @@ -992,6 +992,7 @@ admin.content.layout_section__drawer: '#drawer' admin.content.layout_section__close_body_before: 'タグ直前' admin.content.page_name: ページ名 admin.content.page__card_title: ページ設定 +admin.content.page_route_name: ルート名 admin.content.page_url: URL admin.content.page_url_exists: 既にURLが存在しています。 admin.content.page_file_name: ファイル名 diff --git a/src/Eccube/Resource/template/admin/Content/page.twig b/src/Eccube/Resource/template/admin/Content/page.twig index 3473f356f97..f060360a42e 100644 --- a/src/Eccube/Resource/template/admin/Content/page.twig +++ b/src/Eccube/Resource/template/admin/Content/page.twig @@ -16,12 +16,12 @@ file that was distributed with this source code. {% block sub_title %}{{ 'admin.content.contents_management'|trans }}{% endblock %} {% block javascript %} - + {% endblock javascript %} {% block main %} @@ -52,6 +52,9 @@ file that was distributed with this source code. + + + @@ -60,8 +63,21 @@ file that was distributed with this source code. + + + {# TODO レイアウトの数にかかわらず高さを揃えたい #} - {# TODO レイアウトの数にかかわらず高さを揃えたい #} - +
{{ 'admin.content.page_name'|trans }}{{ 'admin.content.page_route_name'|trans }}{{ 'admin.content.page_url'|trans }}{{ 'admin.content.page_file_name'|trans }} {{ 'admin.content.layout_name'|trans }}
{{ Page.name }} + {{ Page.url }} + + {% if router.routecollection.get(Page.url) %} + {{ router.routecollection.get(Page.url).path }} + {% else %} + {{ Page.url }} + {% endif %} + + {{ Page.file_name }} + + {% for Layout in Page.layouts %} {% if Layout.device_type.id == constant('Eccube\\Entity\\Master\\DeviceType::DEVICE_TYPE_PC') %} {% set icon = 'fa-desktop' %} @@ -83,7 +99,7 @@ file that was distributed with this source code. - {{ Page.file_name }} + {% if Page.file_name %}{{ Page.file_name }}.twig{% endif %} From 0314df339c00b3f9a77f11f014864d04da413264 Mon Sep 17 00:00:00 2001 From: Kiyoshi Yamamura Date: Sat, 24 Oct 2020 06:59:29 +0900 Subject: [PATCH 095/207] =?UTF-8?q?=E9=83=B5=E4=BE=BF=E7=95=AA=E5=8F=B7?= =?UTF-8?q?=E3=80=81=E9=9B=BB=E8=A9=B1=E7=95=AA=E5=8F=B7=E3=81=AE=E5=85=A5?= =?UTF-8?q?=E5=8A=9B=E5=BD=A2=E5=BC=8F=E3=82=92TelType=E3=81=AB=E5=A4=89?= =?UTF-8?q?=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Form/Type/PhoneNumberType.php | 6 +++--- src/Eccube/Form/Type/PostalType.php | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Eccube/Form/Type/PhoneNumberType.php b/src/Eccube/Form/Type/PhoneNumberType.php index dc8e4a19510..a19ac0b0ce6 100644 --- a/src/Eccube/Form/Type/PhoneNumberType.php +++ b/src/Eccube/Form/Type/PhoneNumberType.php @@ -15,7 +15,7 @@ use Eccube\Common\EccubeConfig; use Symfony\Component\Form\AbstractType; -use Symfony\Component\Form\Extension\Core\Type\TextType; +use Symfony\Component\Form\Extension\Core\Type\TelType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\Options; use Symfony\Component\OptionsResolver\OptionsResolver; @@ -57,7 +57,7 @@ public function buildForm(FormBuilderInterface $builder, array $options) public function configureOptions(OptionsResolver $resolver) { $eccubeConfig = $this->eccubeConfig; - $constraints = function (Options $options) use ($eccubeConfig) { + $constraints = function(Options $options) use ($eccubeConfig) { $constraints = []; // requiredがtrueに指定されている場合, NotBlankを追加 if (isset($options['required']) && true === $options['required']) { @@ -91,7 +91,7 @@ public function configureOptions(OptionsResolver $resolver) */ public function getParent() { - return TextType::class; + return TelType::class; } /** diff --git a/src/Eccube/Form/Type/PostalType.php b/src/Eccube/Form/Type/PostalType.php index 1c7434e5b0a..765f8f18e9c 100644 --- a/src/Eccube/Form/Type/PostalType.php +++ b/src/Eccube/Form/Type/PostalType.php @@ -15,7 +15,7 @@ use Eccube\Common\EccubeConfig; use Symfony\Component\Form\AbstractType; -use Symfony\Component\Form\Extension\Core\Type\TextType; +use Symfony\Component\Form\Extension\Core\Type\TelType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\Options; use Symfony\Component\OptionsResolver\OptionsResolver; @@ -56,7 +56,7 @@ public function buildForm(FormBuilderInterface $builder, array $options) public function configureOptions(OptionsResolver $resolver) { $eccubeConfig = $this->eccubeConfig; - $constraints = function (Options $options) use ($eccubeConfig) { + $constraints = function(Options $options) use ($eccubeConfig) { $constraints = []; // requiredがtrueに指定されている場合, NotBlankを追加 if (isset($options['required']) && true === $options['required']) { @@ -91,7 +91,7 @@ public function configureOptions(OptionsResolver $resolver) */ public function getParent() { - return TextType::class; + return TelType::class; } /** From 942284e79fbefd059d469c1c40415176eabf0fca Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Tue, 27 Oct 2020 10:57:39 +0900 Subject: [PATCH 096/207] =?UTF-8?q?Composer1=20=E3=81=AB=E5=9B=BA=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Dockerfile b/Dockerfile index 89e718fa24a..bf45ab1e8c8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -62,6 +62,7 @@ WORKDIR ${APACHE_DOCUMENT_ROOT} RUN curl -sS https://getcomposer.org/installer \ | php \ && mv composer.phar /usr/bin/composer \ + && composer selfupdate --1 \ && composer config -g repos.packagist composer https://packagist.jp \ && composer global require hirak/prestissimo \ && chown www-data:www-data /var/www \ From 84fb854fe19b81a198512b7c0c726451f5366c3f Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Tue, 27 Oct 2020 11:09:24 +0900 Subject: [PATCH 097/207] =?UTF-8?q?appveyor=20=E3=82=82=20Composer1=20?= =?UTF-8?q?=E3=81=AB=E5=9B=BA=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- appveyor.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/appveyor.yml b/appveyor.yml index aba72cf58d7..bfc4f3d4f24 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -58,6 +58,7 @@ install: - echo memory_limit = 512M >> C:\tools\php72\php.ini - echo APP_ENV=codeception >> .env - php -r "readfile('http://getcomposer.org/installer');" | php + - php composer.phar selfupdate --1 - php composer.phar install --dev --no-interaction -o # Don't actually build. From 4a85f643ca575de3bd8512b5779b0057e388dd9d Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Tue, 27 Oct 2020 11:34:43 +0900 Subject: [PATCH 098/207] =?UTF-8?q?travis=20=E3=82=82=20Composer1=20?= =?UTF-8?q?=E3=81=AB=E5=9B=BA=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .travis.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index c7c3d6553d2..5d891879242 100644 --- a/.travis.yml +++ b/.travis.yml @@ -57,8 +57,12 @@ package_api_setup: &package_api_setup | mkdir ${PWD}/repos docker run -d --rm -v ${PWD}/repos:/repos -e MOCK_REPO_DIR=/repos -p 8080:8080 eccube/mock-package-api +composer_install: &composer_install | + composer selfupdate --1 + composer install --dev --no-interaction -o --apcu-autoloader + install: - - &composer_install composer install --dev --no-interaction -o --apcu-autoloader + - *composer_install - echo "APP_ENV=test" > .env - *eccube_setup From 4f5ed36976632d2ba54792f6b9ab6e9df94af876 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Tue, 27 Oct 2020 11:47:19 +0900 Subject: [PATCH 099/207] refs #4725 Allow wrapper classes in supportsClass --- src/Eccube/Security/Core/User/CustomerProvider.php | 2 +- src/Eccube/Security/Core/User/MemberProvider.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Security/Core/User/CustomerProvider.php b/src/Eccube/Security/Core/User/CustomerProvider.php index 1643488451f..8b50eee32ce 100644 --- a/src/Eccube/Security/Core/User/CustomerProvider.php +++ b/src/Eccube/Security/Core/User/CustomerProvider.php @@ -89,6 +89,6 @@ public function refreshUser(UserInterface $user) */ public function supportsClass($class) { - return Customer::class === $class; + return Customer::class === $class || is_subclass_of($class, Customer::class); } } diff --git a/src/Eccube/Security/Core/User/MemberProvider.php b/src/Eccube/Security/Core/User/MemberProvider.php index b27af2322cd..5b6a70da1f8 100644 --- a/src/Eccube/Security/Core/User/MemberProvider.php +++ b/src/Eccube/Security/Core/User/MemberProvider.php @@ -86,6 +86,6 @@ public function refreshUser(UserInterface $user) */ public function supportsClass($class) { - return Member::class === $class || is_subclass_of($class,Member::class); + return Member::class === $class || is_subclass_of($class, Member::class); } } From 9690879c384e4f7dddf471fde7d7133fc0054a6a Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Tue, 27 Oct 2020 11:35:02 +0900 Subject: [PATCH 100/207] =?UTF-8?q?GitHub=20Actions=20=E3=82=82=20Composer?= =?UTF-8?q?1=20=E3=81=AB=E5=9B=BA=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 4 +++- .github/workflows/e2e-test.yml | 4 +++- .github/workflows/plugin-test.yml | 4 +++- .github/workflows/unit-test.yml | 4 +++- 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 9baf0f27d16..7ab918f973c 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -27,7 +27,9 @@ jobs: ${{ runner.os }}-composer- - name: Install to Composer - run: composer install --no-scripts --no-dev --no-interaction --optimize-autoloader + run: | + sudo composer selfupdate --1 + composer install --no-scripts --no-dev --no-interaction --optimize-autoloader - name: Translate to templates run: php bin/template_jp.php diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 696272c667b..dfa52e1f453 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -75,7 +75,9 @@ jobs: php-version: ${{ matrix.php }} - name: composer install - run: composer install --dev --no-interaction -o --apcu-autoloader + run: | + sudo composer selfupdate --1 + composer install --dev --no-interaction -o --apcu-autoloader - name: Setup to EC-CUBE env: APP_ENV: ${{ matrix.app_env }} diff --git a/.github/workflows/plugin-test.yml b/.github/workflows/plugin-test.yml index 9777dcf5c00..e7cd47d6ff0 100644 --- a/.github/workflows/plugin-test.yml +++ b/.github/workflows/plugin-test.yml @@ -83,7 +83,9 @@ jobs: php-version: ${{ matrix.php }} - name: composer install - run: composer install --dev --no-interaction -o --apcu-autoloader + run: | + sudo composer selfupdate --1 + composer install --dev --no-interaction -o --apcu-autoloader - name: Setup to EC-CUBE env: diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index a95f4fc2e40..432cd846773 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -72,7 +72,9 @@ jobs: php-version: ${{ matrix.php }} - name: composer install - run: composer install --dev --no-interaction -o --apcu-autoloader + run: | + sudo composer selfupdate --1 + composer install --dev --no-interaction -o --apcu-autoloader - name: Setup EC-CUBE env: From dcd792b36d046a0e46f7bc9097edf476d3613792 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Tue, 27 Oct 2020 13:27:17 +0900 Subject: [PATCH 101/207] =?UTF-8?q?=E5=8B=95=E4=BD=9C=E7=A2=BA=E8=AA=8D?= =?UTF-8?q?=E7=92=B0=E5=A2=83=E3=82=92=E3=82=B7=E3=82=B9=E3=83=86=E3=83=A0?= =?UTF-8?q?=E8=A6=81=E4=BB=B6=E3=81=A8=E4=BA=8B=E5=AE=9F=E3=81=AB=E5=90=88?= =?UTF-8?q?=E3=82=8F=E3=81=9B=E3=81=A6=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 1f73abc71ae..c72dabca7f9 100644 --- a/README.md +++ b/README.md @@ -39,9 +39,9 @@ npm run build # Sass のビルド ### 動作確認環境 * Apache/2.4.x (mod_rewrite / mod_ssl 必須) -* PHP7.1.20 -* PostgreSQL 9.2.1 -* ブラウザー:Google Chrome +* PHP7.2 +* PostgreSQL 9.6 / MySQL 5.6 +* ブラウザー:Google Chrome 詳しくは開発ドキュメントの [システム要件](https://doc4.ec-cube.net/quickstart_requirement) をご確認ください。 From f3e69aec03ac22b457b3f42342850d635a3f01e4 Mon Sep 17 00:00:00 2001 From: tatsuishi Date: Wed, 28 Oct 2020 00:40:57 +0900 Subject: [PATCH 102/207] =?UTF-8?q?=E4=BC=9A=E5=93=A1=E4=B8=80=E8=A6=A7=20?= =?UTF-8?q?=E8=B3=BC=E5=85=A5=E5=95=86=E5=93=81=E6=A4=9C=E7=B4=A2=E3=81=A7?= =?UTF-8?q?=E8=B3=BC=E5=85=A5=E5=87=A6=E7=90=86=E4=B8=AD=E3=83=BB=E6=B1=BA?= =?UTF-8?q?=E6=B8=88=E5=87=A6=E7=90=86=E4=B8=AD=E3=82=92=E9=99=A4=E5=A4=96?= =?UTF-8?q?=20=20#4735?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Repository/CustomerRepository.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Eccube/Repository/CustomerRepository.php b/src/Eccube/Repository/CustomerRepository.php index e6ef242ee2f..f9299c602c7 100644 --- a/src/Eccube/Repository/CustomerRepository.php +++ b/src/Eccube/Repository/CustomerRepository.php @@ -18,6 +18,7 @@ use Eccube\Doctrine\Query\Queries; use Eccube\Entity\Customer; use Eccube\Entity\Master\CustomerStatus; +use Eccube\Entity\Master\OrderStatus; use Eccube\Util\StringUtil; use Symfony\Bridge\Doctrine\RegistryInterface; use Symfony\Component\Security\Core\Encoder\EncoderFactoryInterface; @@ -273,7 +274,9 @@ public function getQueryBuilderBySearchData($searchData) ->leftJoin('c.Orders', 'o') ->leftJoin('o.OrderItems', 'oi') ->andWhere('oi.product_name LIKE :buy_product_name') - ->setParameter('buy_product_name', '%'.$searchData['buy_product_name'].'%'); + ->andWhere($qb->expr()->notIn('o.OrderStatus', ':order_status')) + ->setParameter('buy_product_name', '%'.$searchData['buy_product_name'].'%') + ->setParameter('order_status', [OrderStatus::PROCESSING, OrderStatus::PENDING]); } // Order By From 533fe8864bca0b724ae87ee96c4c45585e0e83d0 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Wed, 28 Oct 2020 16:01:13 +0900 Subject: [PATCH 103/207] =?UTF-8?q?=E8=8B=B1=E8=AA=9E=E3=81=AE=E3=83=A1?= =?UTF-8?q?=E3=83=83=E3=82=BB=E3=83=BC=E3=82=B8=E3=83=95=E3=82=A1=E3=82=A4?= =?UTF-8?q?=E3=83=AB=E3=81=AB=20Route=20Name=20=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/locale/messages.en.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Eccube/Resource/locale/messages.en.yaml b/src/Eccube/Resource/locale/messages.en.yaml index 652266bb9cd..0be04642f36 100644 --- a/src/Eccube/Resource/locale/messages.en.yaml +++ b/src/Eccube/Resource/locale/messages.en.yaml @@ -992,6 +992,7 @@ admin.content.layout_section__drawer: '#drawer' admin.content.layout_section__close_body_before: 'Right before the tags' admin.content.page_name: Page Name admin.content.page__card_title: Page Settings +admin.content.page_route_name: Route Name admin.content.page_url: URL admin.content.page_url_exists: The URL already exists. admin.content.page_file_name: File Name From 66985e03ef8d139660f8738a4c0c1789b0f991dd Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Wed, 28 Oct 2020 18:00:45 +0900 Subject: [PATCH 104/207] =?UTF-8?q?=E4=BC=9A=E5=93=A1=E4=B8=80=E8=A6=A7=20?= =?UTF-8?q?=E8=B3=BC=E5=85=A5=E5=95=86=E5=93=81=E6=A4=9C=E7=B4=A2=E3=81=A7?= =?UTF-8?q?=E5=8F=97=E6=B3=A8=E3=82=B9=E3=83=86=E3=83=BC=E3=82=BF=E3=82=B9?= =?UTF-8?q?=E3=81=94=E3=81=A8=E3=81=AE=E3=83=86=E3=82=B9=E3=83=88=E3=82=92?= =?UTF-8?q?=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Customer/CustomerControllerTest.php | 31 +++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/tests/Eccube/Tests/Web/Admin/Customer/CustomerControllerTest.php b/tests/Eccube/Tests/Web/Admin/Customer/CustomerControllerTest.php index 335ebd2ef79..0b30a3ca7f9 100644 --- a/tests/Eccube/Tests/Web/Admin/Customer/CustomerControllerTest.php +++ b/tests/Eccube/Tests/Web/Admin/Customer/CustomerControllerTest.php @@ -14,8 +14,10 @@ namespace Eccube\Tests\Web\Admin\Customer; use Eccube\Entity\Master\CsvType; +use Eccube\Entity\Master\OrderStatus; use Eccube\Repository\BaseInfoRepository; use Eccube\Repository\CustomerRepository; +use Eccube\Repository\Master\OrderStatusRepository; use Eccube\Tests\Web\Admin\AbstractAdminWebTestCase; /** @@ -148,11 +150,19 @@ public function testIndexWithPostSearchById() /** * testIndexWithPostSearchByProductName + * + * @dataProvider indexWithPostSearchByProductNameProvider */ - public function testIndexWithPostSearchByProductName() + public function testIndexWithPostSearchByProductName(int $orderStatusId, string $expected) { $Customer = $this->container->get(CustomerRepository::class)->findOneBy([], ['id' => 'DESC']); $Order = $this->createOrder($Customer); + + /** @var OrderStatus $OrderStatus */ + $OrderStatus = $this->container->get(OrderStatusRepository::class)->find($orderStatusId); + $Order->setOrderStatus($OrderStatus); + $this->entityManager->flush(); + $ProductName = $Order->getOrderItems()->filter(function ($OrderItems) { return $OrderItems->isProduct(); })->first()->getProductName(); @@ -163,11 +173,28 @@ public function testIndexWithPostSearchByProductName() ); $this->assertTrue($this->client->getResponse()->isSuccessful()); - $this->expected = '検索結果:1件が該当しました'; + $this->expected = $expected; $this->actual = $crawler->filter('div.c-outsideBlock__contents.mb-5 > span')->text(); $this->verify(); } + /** + * @return array[] + */ + public function indexWithPostSearchByProductNameProvider() + { + return [ + [OrderStatus::NEW, '検索結果:1件が該当しました'], // 新規受付 + [OrderStatus::CANCEL, '検索結果:1件が該当しました'], // 注文取消し + [OrderStatus::IN_PROGRESS, '検索結果:1件が該当しました'], // 対応中 + [OrderStatus::DELIVERED, '検索結果:1件が該当しました'], // 発送済み + [OrderStatus::PAID, '検索結果:1件が該当しました'], // 入金済み + [OrderStatus::PENDING, '検索結果:0件が該当しました'], // 決済処理中 + [OrderStatus::PROCESSING, '検索結果:0件が該当しました'], // 購入処理中 + [OrderStatus::RETURNED, '検索結果:1件が該当しました'], // 返品 + ]; + } + /** * testResend */ From 1553db7f8fe88ea98af044d4667a6431ee3d97f3 Mon Sep 17 00:00:00 2001 From: m-pyon23 Date: Fri, 30 Oct 2020 13:53:08 +0900 Subject: [PATCH 105/207] =?UTF-8?q?Docker=E3=83=AA=E3=83=93=E3=83=AB?= =?UTF-8?q?=E3=83=89=E6=99=82=E3=81=AE=E5=8A=B9=E7=8E=87=E6=94=B9=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - composer.json及びcomposer.lock以外の編集でキャッシュが利用できる利用するようにした - 上記タイミング調整に伴うパーミッション・所有者設定手順の調整 --- Dockerfile | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/Dockerfile b/Dockerfile index bf45ab1e8c8..352749f9aae 100644 --- a/Dockerfile +++ b/Dockerfile @@ -55,31 +55,39 @@ RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" # Override with custom configuration settings COPY dockerbuild/php.ini $PHP_INI_DIR/conf.d/ -COPY . ${APACHE_DOCUMENT_ROOT} - -WORKDIR ${APACHE_DOCUMENT_ROOT} +RUN chown www-data:www-data /var/www RUN curl -sS https://getcomposer.org/installer \ | php \ && mv composer.phar /usr/bin/composer \ && composer selfupdate --1 \ && composer config -g repos.packagist composer https://packagist.jp \ - && composer global require hirak/prestissimo \ - && chown www-data:www-data /var/www \ - && mkdir -p ${APACHE_DOCUMENT_ROOT}/var \ - && chown -R www-data:www-data ${APACHE_DOCUMENT_ROOT} \ - && find ${APACHE_DOCUMENT_ROOT} -type d -print0 \ - | xargs -0 chmod g+s \ - ; + && composer global require hirak/prestissimo +# 全体コピー前にcomposer installを先行完了させる(docker cache利用によるリビルド速度向上) USER www-data - +COPY composer.json ${APACHE_DOCUMENT_ROOT}/composer.json +COPY composer.lock ${APACHE_DOCUMENT_ROOT}/composer.lock RUN composer install \ --no-scripts \ --no-autoloader \ -d ${APACHE_DOCUMENT_ROOT} \ ; +################################################################## +# ファイル変更時、以後のステップにはキャッシュが効かなくなる +USER root +COPY . ${APACHE_DOCUMENT_ROOT} +WORKDIR ${APACHE_DOCUMENT_ROOT} + +RUN mkdir -p ${APACHE_DOCUMENT_ROOT}/var \ + && find ${APACHE_DOCUMENT_ROOT} \( -path ${APACHE_DOCUMENT_ROOT}/vendor -prune \) -or -print0 \ + | xargs -0 chown www-data:www-data \ + && find ${APACHE_DOCUMENT_ROOT} -type d -print0 \ + | xargs -0 chmod g+s \ + ; + +USER www-data RUN composer dumpautoload -o --apcu RUN if [ ! -f ${APACHE_DOCUMENT_ROOT}/.env ]; then \ From 74eaea95b96471b5609a8d2ede87652f404d7500 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Fri, 30 Oct 2020 16:13:09 +0900 Subject: [PATCH 106/207] =?UTF-8?q?GitHub=20Actions=20=E3=82=92=20Composer?= =?UTF-8?q?1=20=E3=81=AB=E5=9B=BA=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/plugin-test.yml | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/.github/workflows/plugin-test.yml b/.github/workflows/plugin-test.yml index e7cd47d6ff0..f34a4e3dc00 100644 --- a/.github/workflows/plugin-test.yml +++ b/.github/workflows/plugin-test.yml @@ -227,7 +227,10 @@ jobs: php-version: ${{ matrix.php }} - name: Install to Composer - run: composer install --dev --no-interaction -o --apcu-autoloader + run: | + sudo composer selfupdate --1 + composer install --dev --no-interaction -o --apcu-autoloader + - name: Setup to EC-CUBE env: APP_ENV: 'codeception' @@ -368,7 +371,10 @@ jobs: php-version: ${{ matrix.php }} - name: Install to Composer - run: composer install --dev --no-interaction -o --apcu-autoloader + run: | + sudo composer selfupdate --1 + composer install --dev --no-interaction -o --apcu-autoloader + - name: Setup to EC-CUBE env: APP_ENV: 'codeception' @@ -512,7 +518,10 @@ jobs: php-version: ${{ matrix.php }} - name: Install to Composer - run: composer install --dev --no-interaction -o --apcu-autoloader + run: | + sudo composer selfupdate --1 + composer install --dev --no-interaction -o --apcu-autoloader + - name: Setup to EC-CUBE env: APP_ENV: 'codeception' From c2f106ebede1adc095ff18691858e54f21466a53 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Fri, 30 Oct 2020 15:42:19 +0900 Subject: [PATCH 107/207] =?UTF-8?q?=E6=B0=B8=E7=B6=9A=E5=8C=96=E3=81=95?= =?UTF-8?q?=E3=82=8C=E3=81=9F=E3=82=AB=E3=83=BC=E3=83=88=E3=81=A8=E3=82=BB?= =?UTF-8?q?=E3=83=83=E3=82=B7=E3=83=A7=E3=83=B3=E3=81=AE=E3=82=AB=E3=83=BC?= =?UTF-8?q?=E3=83=88=E3=81=8C=E5=90=8C=E4=B8=80=E3=81=AE=E5=A0=B4=E5=90=88?= =?UTF-8?q?=E3=81=AF=E3=83=9E=E3=83=BC=E3=82=B8=E3=81=97=E3=81=AA=E3=81=84?= =?UTF-8?q?=20refs=20#4574?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Service/CartService.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Service/CartService.php b/src/Eccube/Service/CartService.php index 5e97449e9fc..52a89964489 100644 --- a/src/Eccube/Service/CartService.php +++ b/src/Eccube/Service/CartService.php @@ -193,13 +193,22 @@ public function getSessionCarts() */ public function mergeFromPersistedCart() { + $persistedCarts = $this->getPersistedCarts(); + $sessionCarts = $this->getSessionCarts(); + + // 永続化されたカートとセッションのカートが同一の場合はマージしない #4574 + $cartKeys = $this->session->get('cart_keys', []); + if (in_array($persistedCarts[0]->getCartKey(), $cartKeys)) { + return; + }; + $CartItems = []; - foreach ($this->getPersistedCarts() as $Cart) { + foreach ($persistedCarts as $Cart) { $CartItems = $this->mergeCartItems($Cart->getCartItems(), $CartItems); } // セッションにある非会員カートとDBから取得した会員カートをマージする. - foreach ($this->getSessionCarts() as $Cart) { + foreach ($sessionCarts as $Cart) { $CartItems = $this->mergeCartItems($Cart->getCartItems(), $CartItems); } From 28b85c542629b0010ee54df94a529371b4917636 Mon Sep 17 00:00:00 2001 From: m-pyon23 Date: Fri, 30 Oct 2020 17:19:56 +0900 Subject: [PATCH 108/207] =?UTF-8?q?Docker=E5=88=9D=E5=9B=9E=E3=83=93?= =?UTF-8?q?=E3=83=AB=E3=83=89=E5=87=A6=E7=90=86=E6=99=82=E9=96=93=E3=81=AE?= =?UTF-8?q?=E7=9F=AD=E7=B8=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - vendor以下のchmod設定を先行実施し、後続のchmod処理時間を低減 --- Dockerfile | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index 352749f9aae..90476b436cb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -55,7 +55,11 @@ RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" # Override with custom configuration settings COPY dockerbuild/php.ini $PHP_INI_DIR/conf.d/ -RUN chown www-data:www-data /var/www +RUN chown www-data:www-data /var/www \ + && mkdir -p ${APACHE_DOCUMENT_ROOT}/vendor \ + && mkdir -p ${APACHE_DOCUMENT_ROOT}/var \ + && chown www-data:www-data ${APACHE_DOCUMENT_ROOT}/vendor \ + && chmod g+s ${APACHE_DOCUMENT_ROOT}/vendor RUN curl -sS https://getcomposer.org/installer \ | php \ @@ -80,10 +84,9 @@ USER root COPY . ${APACHE_DOCUMENT_ROOT} WORKDIR ${APACHE_DOCUMENT_ROOT} -RUN mkdir -p ${APACHE_DOCUMENT_ROOT}/var \ - && find ${APACHE_DOCUMENT_ROOT} \( -path ${APACHE_DOCUMENT_ROOT}/vendor -prune \) -or -print0 \ +RUN find ${APACHE_DOCUMENT_ROOT} \( -path ${APACHE_DOCUMENT_ROOT}/vendor -prune \) -or -print0 \ | xargs -0 chown www-data:www-data \ - && find ${APACHE_DOCUMENT_ROOT} -type d -print0 \ + && find ${APACHE_DOCUMENT_ROOT} \( -path ${APACHE_DOCUMENT_ROOT}/vendor -prune \) -or \( -type d -print0 \) \ | xargs -0 chmod g+s \ ; From 04bf89e780c69fb678fdc4838c2f7411d17ba13e Mon Sep 17 00:00:00 2001 From: morry48 Date: Sun, 8 Nov 2020 01:10:33 +0900 Subject: [PATCH 109/207] =?UTF-8?q?=E5=8F=97=E6=B3=A8=E7=AE=A1=E7=90=86?= =?UTF-8?q?=EF=BC=9E=E5=8F=97=E6=B3=A8=E6=A4=9C=E7=B4=A2=E3=81=AE=E3=81=8A?= =?UTF-8?q?=E5=90=8D=E5=89=8D=E3=80=81=E6=B3=A8=E6=96=87=E8=80=85=E5=90=8D?= =?UTF-8?q?=E6=A4=9C=E7=B4=A2=E3=81=AE=E3=83=AD=E3=82=B8=E3=83=83=E3=82=AF?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3=20=E3=81=8A=E5=90=8D=E5=89=8D=E3=83=BB?= =?UTF-8?q?=E6=B3=A8=E6=96=87=E8=80=85=E5=90=8D=E3=83=BB=E3=82=AB=E3=83=8A?= =?UTF-8?q?=E3=81=AB=E3=81=8A=E3=81=84=E3=81=A6=E3=83=95=E3=83=AB=E3=83=8D?= =?UTF-8?q?=E3=83=BC=E3=83=A0=E6=A4=9C=E7=B4=A2=E3=81=AB=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Repository/OrderRepository.php | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/Eccube/Repository/OrderRepository.php b/src/Eccube/Repository/OrderRepository.php index f80ee50e8d8..e1984e7e63f 100644 --- a/src/Eccube/Repository/OrderRepository.php +++ b/src/Eccube/Repository/OrderRepository.php @@ -106,16 +106,18 @@ public function getQueryBuilderBySearchDataForAdmin($searchData) } // multi if (isset($searchData['multi']) && StringUtil::isNotBlank($searchData['multi'])) { - $multi = preg_match('/^\d{0,10}$/', $searchData['multi']) ? $searchData['multi'] : null; - if ($multi && $multi > '2147483647' && $this->isPostgreSQL()) { - $multi = null; + //スペース除去 + $clean_key_multi = preg_replace('/\s+|[ ]+/u', '', $searchData['multi']); + $id = preg_match('/^\d{0,10}$/', $clean_key_multi) ? $clean_key_multi : null; + if ($id && $id > '2147483647' && $this->isPostgreSQL()) { + $id = null; } $qb - ->andWhere('o.id = :multi OR o.name01 LIKE :likemulti OR o.name02 LIKE :likemulti OR '. - 'o.kana01 LIKE :likemulti OR o.kana02 LIKE :likemulti OR o.company_name LIKE :likemulti OR '. + ->andWhere('o.id = :order_id OR CONCAT(o.name01, o.name02) LIKE :likemulti OR '. + 'CONCAT(o.kana01, o.kana02) LIKE :likemulti OR o.company_name LIKE :likemulti OR '. 'o.order_no LIKE :likemulti OR o.email LIKE :likemulti OR o.phone_number LIKE :likemulti') - ->setParameter('multi', $multi) - ->setParameter('likemulti', '%'.$searchData['multi'].'%'); + ->setParameter('order_id', $id) + ->setParameter('likemulti', '%'.$clean_key_multi.'%'); } // order_id_end From 57a22bcc23fc05a1e9affdb94b5d00b714e899b4 Mon Sep 17 00:00:00 2001 From: morry48 Date: Sun, 8 Nov 2020 01:29:23 +0900 Subject: [PATCH 110/207] =?UTF-8?q?=E5=8F=97=E6=B3=A8=E7=AE=A1=E7=90=86?= =?UTF-8?q?=EF=BC=9E=E5=8F=97=E6=B3=A8=E6=A4=9C=E7=B4=A2=E3=81=AE=E3=81=8A?= =?UTF-8?q?=E5=90=8D=E5=89=8D=E3=80=81=E6=B3=A8=E6=96=87=E8=80=85=E5=90=8D?= =?UTF-8?q?=E6=A4=9C=E7=B4=A2=E3=81=AE=E3=83=AD=E3=82=B8=E3=83=83=E3=82=AF?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3=20=E8=A9=B3=E7=B4=B0=E6=A4=9C=E7=B4=A2?= =?UTF-8?q?=EF=BC=88=E6=B3=A8=E6=96=87=E8=80=85=E5=90=8D=E3=83=BB=E6=B3=A8?= =?UTF-8?q?=E6=96=87=E8=80=85=E5=90=8D-=E3=82=AB=E3=83=8A=EF=BC=89?= =?UTF-8?q?=E3=81=AB=E3=81=8A=E3=81=84=E3=81=A6=E3=83=95=E3=83=AB=E3=83=8D?= =?UTF-8?q?=E3=83=BC=E3=83=A0=E6=A4=9C=E7=B4=A2=E3=82=92=E5=8F=AF=E8=83=BD?= =?UTF-8?q?=E3=81=AB=E3=81=99=E3=82=8B=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Repository/OrderRepository.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Repository/OrderRepository.php b/src/Eccube/Repository/OrderRepository.php index e1984e7e63f..c6fbcc94ec0 100644 --- a/src/Eccube/Repository/OrderRepository.php +++ b/src/Eccube/Repository/OrderRepository.php @@ -151,16 +151,18 @@ public function getQueryBuilderBySearchDataForAdmin($searchData) // name if (isset($searchData['name']) && StringUtil::isNotBlank($searchData['name'])) { + $clean_name = preg_replace('/\s+|[ ]+/u', '', $searchData['name']); $qb ->andWhere('CONCAT(o.name01, o.name02) LIKE :name') - ->setParameter('name', '%'.$searchData['name'].'%'); + ->setParameter('name', '%'.$clean_name.'%'); } // kana if (isset($searchData['kana']) && StringUtil::isNotBlank($searchData['kana'])) { + $clean_kana = preg_replace('/\s+|[ ]+/u', '', $searchData['kana']); $qb ->andWhere('CONCAT(o.kana01, o.kana02) LIKE :kana') - ->setParameter('kana', '%'.$searchData['kana'].'%'); + ->setParameter('kana', '%'.$clean_kana.'%'); } // email From 42609b52eca225faa8ae8d9bcad398f6983ba315 Mon Sep 17 00:00:00 2001 From: morry48 Date: Thu, 12 Nov 2020 00:23:01 +0900 Subject: [PATCH 111/207] =?UTF-8?q?issues=20#4716=20getQueryBuilderBySearc?= =?UTF-8?q?hDataForAdmin()=E3=81=AE$order=5Fid=E3=82=92$id=E3=81=AB?= =?UTF-8?q?=E6=88=BB=E3=81=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Repository/OrderRepository.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Eccube/Repository/OrderRepository.php b/src/Eccube/Repository/OrderRepository.php index c6fbcc94ec0..9ebd838d93d 100644 --- a/src/Eccube/Repository/OrderRepository.php +++ b/src/Eccube/Repository/OrderRepository.php @@ -108,15 +108,15 @@ public function getQueryBuilderBySearchDataForAdmin($searchData) if (isset($searchData['multi']) && StringUtil::isNotBlank($searchData['multi'])) { //スペース除去 $clean_key_multi = preg_replace('/\s+|[ ]+/u', '', $searchData['multi']); - $id = preg_match('/^\d{0,10}$/', $clean_key_multi) ? $clean_key_multi : null; - if ($id && $id > '2147483647' && $this->isPostgreSQL()) { - $id = null; + $multi = preg_match('/^\d{0,10}$/', $clean_key_multi) ? $clean_key_multi : null; + if ($multi && $multi > '2147483647' && $this->isPostgreSQL()) { + $multi = null; } $qb - ->andWhere('o.id = :order_id OR CONCAT(o.name01, o.name02) LIKE :likemulti OR '. + ->andWhere('o.id = :multi OR CONCAT(o.name01, o.name02) LIKE :likemulti OR '. 'CONCAT(o.kana01, o.kana02) LIKE :likemulti OR o.company_name LIKE :likemulti OR '. 'o.order_no LIKE :likemulti OR o.email LIKE :likemulti OR o.phone_number LIKE :likemulti') - ->setParameter('order_id', $id) + ->setParameter('multi', $multi) ->setParameter('likemulti', '%'.$clean_key_multi.'%'); } From da8d122c1c6682f26dca4f5429aba72e10ccfaef Mon Sep 17 00:00:00 2001 From: kurozumi Date: Thu, 12 Nov 2020 15:33:15 +0900 Subject: [PATCH 112/207] =?UTF-8?q?=E8=B3=BC=E5=85=A5=E6=89=8B=E7=B6=9A?= =?UTF-8?q?=E3=81=8D=E4=B8=AD=E3=81=A7=E3=82=82PurchaseContext=E3=81=A7?= =?UTF-8?q?=E3=83=A6=E3=83=BC=E3=82=B6=E3=83=BC=E6=83=85=E5=A0=B1=E3=82=92?= =?UTF-8?q?=E5=8F=96=E5=BE=97=E3=81=A7=E3=81=8D=E3=82=8B=E3=82=88=E3=81=86?= =?UTF-8?q?=E3=81=AB=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Controller/ShippingMultipleController.php | 2 +- src/Eccube/Controller/ShoppingController.php | 4 ++-- src/Eccube/Service/PurchaseFlow/PurchaseContext.php | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Eccube/Controller/ShippingMultipleController.php b/src/Eccube/Controller/ShippingMultipleController.php index d0a2c63ebd2..2044f86a47d 100644 --- a/src/Eccube/Controller/ShippingMultipleController.php +++ b/src/Eccube/Controller/ShippingMultipleController.php @@ -343,7 +343,7 @@ public function index(Request $request) } } - $this->cartPurchaseFlow->validate($Cart, new PurchaseContext()); + $this->cartPurchaseFlow->validate($Cart, new PurchaseContext($Cart, $this->getUser())); $this->cartService->save(); } diff --git a/src/Eccube/Controller/ShoppingController.php b/src/Eccube/Controller/ShoppingController.php index 2f841a003e4..457b58548b5 100644 --- a/src/Eccube/Controller/ShoppingController.php +++ b/src/Eccube/Controller/ShoppingController.php @@ -124,7 +124,7 @@ public function index(PurchaseFlow $cartPurchaseFlow) log_info('[注文手続] Warningが発生しました.', [$flowResult->getWarning()]); // 受注明細と同期をとるため, CartPurchaseFlowを実行する - $cartPurchaseFlow->validate($Cart, new PurchaseContext()); + $cartPurchaseFlow->validate($Cart, new PurchaseContext($Cart, $this->getUser())); $this->cartService->save(); } @@ -685,7 +685,7 @@ public function error(Request $request, PurchaseFlow $cartPurchaseFlow) // 受注とカートのずれを合わせるため, カートのPurchaseFlowをコールする. $Cart = $this->cartService->getCart(); if (null !== $Cart) { - $cartPurchaseFlow->validate($Cart, new PurchaseContext()); + $cartPurchaseFlow->validate($Cart, new PurchaseContext($Cart, $this->getUser())); $this->cartService->setPreOrderId(null); $this->cartService->save(); } diff --git a/src/Eccube/Service/PurchaseFlow/PurchaseContext.php b/src/Eccube/Service/PurchaseFlow/PurchaseContext.php index 68ba672db07..6b4544ede48 100644 --- a/src/Eccube/Service/PurchaseFlow/PurchaseContext.php +++ b/src/Eccube/Service/PurchaseFlow/PurchaseContext.php @@ -33,7 +33,7 @@ class PurchaseContext extends \SplObjectStorage const CART_FLOW = 'cart'; - public function __construct(ItemHolderInterface $originHolder = null, Customer $user = null) + public function __construct(ItemHolderInterface $originHolder = null, ?Customer $user = null) { $this->originHolder = $originHolder; $this->user = $user; From a8592c45987afdb1192009c54292b1da16aa4966 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Thu, 12 Nov 2020 16:45:57 +0900 Subject: [PATCH 113/207] =?UTF-8?q?=E5=8F=97=E6=B3=A8=E3=81=AE=E3=83=9E?= =?UTF-8?q?=E3=83=AB=E3=83=81=E6=A4=9C=E7=B4=A2=E3=81=A7=E3=80=81=E4=BC=9A?= =?UTF-8?q?=E7=A4=BE=E5=90=8D=E3=81=AF=E3=82=B9=E3=83=9A=E3=83=BC=E3=82=B9?= =?UTF-8?q?=E3=82=92=E9=99=A4=E5=8E=BB=E3=81=9B=E3=81=9A=E6=A4=9C=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Repository/OrderRepository.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Repository/OrderRepository.php b/src/Eccube/Repository/OrderRepository.php index 9ebd838d93d..3105015e9de 100644 --- a/src/Eccube/Repository/OrderRepository.php +++ b/src/Eccube/Repository/OrderRepository.php @@ -114,10 +114,11 @@ public function getQueryBuilderBySearchDataForAdmin($searchData) } $qb ->andWhere('o.id = :multi OR CONCAT(o.name01, o.name02) LIKE :likemulti OR '. - 'CONCAT(o.kana01, o.kana02) LIKE :likemulti OR o.company_name LIKE :likemulti OR '. + 'CONCAT(o.kana01, o.kana02) LIKE :likemulti OR o.company_name LIKE :company_name OR '. 'o.order_no LIKE :likemulti OR o.email LIKE :likemulti OR o.phone_number LIKE :likemulti') ->setParameter('multi', $multi) - ->setParameter('likemulti', '%'.$clean_key_multi.'%'); + ->setParameter('likemulti', '%'.$clean_key_multi.'%') + ->setParameter('company_name', '%'.$searchData['multi'].'%'); // 会社名はスペースを除去せず検索 } // order_id_end From 8b42ca6e5405e6f42c2adbf77fecde95e5a1e8fd Mon Sep 17 00:00:00 2001 From: hama Date: Thu, 12 Nov 2020 16:47:24 +0900 Subject: [PATCH 114/207] =?UTF-8?q?=E5=95=86=E5=93=81=E7=94=BB=E5=83=8F?= =?UTF-8?q?=E5=89=8A=E9=99=A4=E6=99=82=E3=80=81=E4=BB=96=E3=81=AE=E5=95=86?= =?UTF-8?q?=E5=93=81=E7=94=BB=E5=83=8F=E3=81=8C=E5=8F=82=E7=85=A7=E3=81=99?= =?UTF-8?q?=E3=82=8B=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=81=AF=E5=89=8A?= =?UTF-8?q?=E9=99=A4=E3=81=97=E3=81=AA=E3=81=84=E3=82=88=E3=81=86=E5=A4=89?= =?UTF-8?q?=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Product/CsvImportController.php | 13 ++++++ .../Admin/Product/ProductController.php | 9 ++-- .../Admin/Product/CsvImportControllerTest.php | 36 +++++++++++++++ .../Admin/Product/ProductContorllerTest.php | 44 +++++++++++++++++++ 4 files changed, 99 insertions(+), 3 deletions(-) diff --git a/src/Eccube/Controller/Admin/Product/CsvImportController.php b/src/Eccube/Controller/Admin/Product/CsvImportController.php index 902e60d825f..815b9a141e8 100644 --- a/src/Eccube/Controller/Admin/Product/CsvImportController.php +++ b/src/Eccube/Controller/Admin/Product/CsvImportController.php @@ -31,6 +31,7 @@ use Eccube\Repository\DeliveryDurationRepository; use Eccube\Repository\Master\ProductStatusRepository; use Eccube\Repository\Master\SaleTypeRepository; +use Eccube\Repository\ProductImageRepository; use Eccube\Repository\ProductRepository; use Eccube\Repository\TagRepository; use Eccube\Repository\TaxRuleRepository; @@ -74,6 +75,11 @@ class CsvImportController extends AbstractCsvImportController */ protected $classCategoryRepository; + /** + * @var ProductImageRepository + */ + protected $productImageRepository; + /** * @var ProductStatusRepository */ @@ -109,6 +115,7 @@ class CsvImportController extends AbstractCsvImportController * @param TagRepository $tagRepository * @param CategoryRepository $categoryRepository * @param ClassCategoryRepository $classCategoryRepository + * @param ProductImageRepository $productImageRepository * @param ProductStatusRepository $productStatusRepository * @param ProductRepository $productRepository * @param TaxRuleRepository $taxRuleRepository @@ -122,6 +129,7 @@ public function __construct( TagRepository $tagRepository, CategoryRepository $categoryRepository, ClassCategoryRepository $classCategoryRepository, + ProductImageRepository $productImageRepository, ProductStatusRepository $productStatusRepository, ProductRepository $productRepository, TaxRuleRepository $taxRuleRepository, @@ -133,6 +141,7 @@ public function __construct( $this->tagRepository = $tagRepository; $this->categoryRepository = $categoryRepository; $this->classCategoryRepository = $classCategoryRepository; + $this->productImageRepository = $productImageRepository; $this->productStatusRepository = $productStatusRepository; $this->productRepository = $productRepository; $this->taxRuleRepository = $taxRuleRepository; @@ -629,7 +638,11 @@ public function csvProduct(Request $request, CacheUtil $cacheUtil) // 画像ファイルの削除(commit後に削除させる) foreach ($deleteImages as $images) { + /** @var ProductImage $image */ foreach ($images as $image) { + if ($this->productImageRepository->findOneBy(['file_name' => $image->getFileName()])) { + continue; + } try { $fs = new Filesystem(); $fs->remove($this->eccubeConfig['eccube_save_image_dir'].'/'.$image); diff --git a/src/Eccube/Controller/Admin/Product/ProductController.php b/src/Eccube/Controller/Admin/Product/ProductController.php index b77dc83f781..16531d9f4c9 100644 --- a/src/Eccube/Controller/Admin/Product/ProductController.php +++ b/src/Eccube/Controller/Admin/Product/ProductController.php @@ -545,10 +545,13 @@ public function edit(Request $request, $id = null, RouterInterface $router, Cach $this->entityManager->remove($ProductImage); } $this->entityManager->persist($Product); + $this->entityManager->flush(); - // 削除 - $fs = new Filesystem(); - $fs->remove($this->eccubeConfig['eccube_save_image_dir'].'/'.$delete_image); + if (!$this->productImageRepository->findOneBy(['file_name' => $delete_image])) { + // 削除 + $fs = new Filesystem(); + $fs->remove($this->eccubeConfig['eccube_save_image_dir'] . '/' . $delete_image); + } } $this->entityManager->persist($Product); $this->entityManager->flush(); diff --git a/tests/Eccube/Tests/Web/Admin/Product/CsvImportControllerTest.php b/tests/Eccube/Tests/Web/Admin/Product/CsvImportControllerTest.php index db0e65faf05..5456d3fb04d 100644 --- a/tests/Eccube/Tests/Web/Admin/Product/CsvImportControllerTest.php +++ b/tests/Eccube/Tests/Web/Admin/Product/CsvImportControllerTest.php @@ -16,6 +16,7 @@ use Eccube\Entity\BaseInfo; use Eccube\Entity\Product; use Eccube\Entity\ProductClass; +use Eccube\Entity\ProductImage; use Eccube\Repository\CategoryRepository; use Eccube\Repository\ProductRepository; use Eccube\Tests\Web\Admin\AbstractAdminWebTestCase; @@ -928,4 +929,39 @@ public function dataTaxRuleProvider() [false, '', null], ]; } + + /** + * 商品を削除する際に、他の商品画像が参照しているファイルは削除せず、それ以外は削除することをテスト + */ + public function testDeleteImage() + { + /** @var \Eccube\Tests\Fixture\Generator $generator */ + $generator = $this->container->get(\Eccube\Tests\Fixture\Generator::class); + $Product1 = $generator->createProduct(null, 0, 'abstract'); + $Product2 = $generator->createProduct(null, 0, 'abstract'); + + $DuplicatedImage = $Product1->getProductImage()->first(); + assert($DuplicatedImage instanceof ProductImage); + + $NotDuplicatedImage = $Product1->getProductImage()->last(); + assert($NotDuplicatedImage instanceof ProductImage); + + $NewProduct2Image = new ProductImage(); + $NewProduct2Image + ->setProduct($Product2) + ->setFileName($DuplicatedImage->getFileName()) + ->setSortNo(999); + $Product2->addProductImage($NewProduct2Image); + $this->entityManager->persist($NewProduct2Image); + $this->entityManager->flush(); + + $csv[] = ['商品ID', '公開ステータス(ID)', '商品名', '商品削除フラグ', '販売種別(ID)', '販売価格']; + $csv[] = [$Product1->getId(), '1', 'hoge', '1', '1', '1000']; + $this->filepath = $this->createCsvFromArray($csv); + $this->scenario(); + + $dir = __DIR__ . '/../../../../../../html/upload/save_image/'; + $this->assertTrue(file_exists($dir . $DuplicatedImage->getFileName())); + $this->assertFalse(file_exists($dir . $NotDuplicatedImage->getFileName())); + } } diff --git a/tests/Eccube/Tests/Web/Admin/Product/ProductContorllerTest.php b/tests/Eccube/Tests/Web/Admin/Product/ProductContorllerTest.php index bb9c19361e6..ddd4e1b1435 100644 --- a/tests/Eccube/Tests/Web/Admin/Product/ProductContorllerTest.php +++ b/tests/Eccube/Tests/Web/Admin/Product/ProductContorllerTest.php @@ -17,9 +17,11 @@ use Eccube\Entity\Master\ProductStatus; use Eccube\Entity\Master\RoundingType; use Eccube\Entity\ProductClass; +use Eccube\Entity\ProductImage; use Eccube\Entity\ProductTag; use Eccube\Entity\Tag; use Eccube\Entity\TaxRule; +use Eccube\Tests\Fixture\Generator; use Eccube\Tests\Web\Admin\AbstractAdminWebTestCase; use Eccube\Util\StringUtil; use Symfony\Component\DomCrawler\Crawler; @@ -1049,4 +1051,46 @@ private function createSearchForm() return $post; } + + /** + * 商品画像を削除する際に、他の商品画像が参照しているファイルは削除せず、それ以外は削除することをテスト + */ + public function testDeleteImage() + { + /** @var Generator $generator */ + $generator = $this->container->get(Generator::class); + $Product1 = $generator->createProduct(null, 0, 'abstract'); + $Product2 = $generator->createProduct(null, 0, 'abstract'); + + $DuplicatedImage = $Product1->getProductImage()->first(); + assert($DuplicatedImage instanceof ProductImage); + + $NotDuplicatedImage = $Product1->getProductImage()->last(); + assert($NotDuplicatedImage instanceof ProductImage); + + $NewProduct2Image = new ProductImage(); + $NewProduct2Image + ->setProduct($Product2) + ->setFileName($DuplicatedImage->getFileName()) + ->setSortNo(999) + ; + $Product2->addProductImage($NewProduct2Image); + $this->entityManager->persist($NewProduct2Image); + $this->entityManager->flush(); + + $data = $this->createFormData(); + $data['delete_images'] = $Product1->getProductImage()->map(static function (ProductImage $ProductImage) { + return $ProductImage->getFileName(); + })->toArray(); + $this->client->request( + 'POST', + $this->generateUrl('admin_product_product_edit', ['id' => $Product1->getId()]), + ['admin_product' => $data] + ); + $this->assertTrue($this->client->getResponse()->isRedirect()); + + $dir = __DIR__.'/../../../../../../html/upload/save_image/'; + $this->assertTrue(file_exists($dir . $DuplicatedImage->getFileName())); + $this->assertFalse(file_exists($dir . $NotDuplicatedImage->getFileName())); + } } From 328bacddb9f7854be2652e41422864718dc639fd Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Thu, 12 Nov 2020 17:46:02 +0900 Subject: [PATCH 115/207] =?UTF-8?q?OrderRepository=20=E3=81=AE=E5=90=8D?= =?UTF-8?q?=E5=89=8D=E3=81=AE=E6=A4=9C=E7=B4=A2=E3=81=AB=E9=96=A2=E3=81=99?= =?UTF-8?q?=E3=82=8B=E3=83=86=E3=82=B9=E3=83=88=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Tests/Repository/OrderRepositoryTest.php | 73 ++++++++++++++++++- 1 file changed, 71 insertions(+), 2 deletions(-) diff --git a/tests/Eccube/Tests/Repository/OrderRepositoryTest.php b/tests/Eccube/Tests/Repository/OrderRepositoryTest.php index c13a5eac521..1537878094d 100644 --- a/tests/Eccube/Tests/Repository/OrderRepositoryTest.php +++ b/tests/Eccube/Tests/Repository/OrderRepositoryTest.php @@ -14,8 +14,8 @@ namespace Eccube\Tests\Repository; use Eccube\Entity\Customer; -use Eccube\Entity\Order; use Eccube\Entity\Master\OrderStatus; +use Eccube\Entity\Order; use Eccube\Repository\OrderRepository; use Eccube\Tests\EccubeTestCase; @@ -125,7 +125,7 @@ public function testGetQueryBuilderBySearchDataForAdmin_multi_2147483648() $Order = $this->createOrder($this->createCustomer('2147483648@example.com')); $Order->setOrderStatus($this->entityManager->find(OrderStatus::class, OrderStatus::NEW)); $this->orderRepository->save($Order); - $this->entityManager->flush();; + $this->entityManager->flush(); $actual = $this->orderRepository->getQueryBuilderBySearchDataForAdmin(['multi' => '2147483648']) ->getQuery() @@ -133,4 +133,73 @@ public function testGetQueryBuilderBySearchDataForAdmin_multi_2147483648() self::assertEquals($Order, $actual[0]); } + + /** + * @dataProvider dataGetQueryBuilderBySearchDataForAdmin_nameProvider + */ + public function testGetQueryBuilderBySearchDataForAdmin_name(string $formName, string $searchWord, int $expected) + { + $this->Order + ->setOrderStatus($this->entityManager->find(OrderStatus::class, OrderStatus::NEW)) + ->setName01('姓') + ->setName02('名') + ->setKana01('セイ') + ->setKana02('メイ') + ->setCompanyName('株式会社 会社名'); // 全角スペース + $this->orderRepository->save($this->Order); + $this->entityManager->flush(); + + $actual = $this->orderRepository->getQueryBuilderBySearchDataForAdmin([$formName => $searchWord]) + ->getQuery() + ->getResult(); + + self::assertCount($expected, $actual); + } + + public function dataGetQueryBuilderBySearchDataForAdmin_nameProvider() + { + return [ + ['multi', '姓', 1], + ['multi', '名', 1], + ['multi', '姓名', 1], + ['multi', '姓 名', 1], + ['multi', '姓 名', 1], + ['multi', 'セイ', 1], + ['multi', 'メイ', 1], + ['multi', 'セイメイ', 1], + ['multi', 'セイ メイ', 1], + ['multi', 'セイ メイ', 1], + ['multi', '株式会社', 1], + ['multi', '会社名', 1], + ['multi', '株式会社会社名', 0], + ['multi', '株式会社 会社名', 0], // 半角スペース + ['multi', '株式会社 会社名', 1], // 全角スペース + ['multi', '石', 0], + ['multi', 'キューブ', 0], + ['multi', '姓 球部', 0], + ['multi', 'セイ 名', 0], + ['multi', '姓 メイ', 0], + ['name', '姓', 1], + ['name', '名', 1], + ['name', '姓名', 1], + ['name', '姓 名', 1], + ['name', '姓 名', 1], + ['name', 'セイ', 0], + ['name', '株式会社 会社名', 0], + ['kana', 'セイ', 1], + ['kana', 'メイ', 1], + ['kana', 'セイメイ', 1], + ['kana', 'セイ メイ', 1], + ['kana', 'セイ メイ', 1], + ['kana', '姓', 0], + ['kana', '株式会社 会社名', 0], + ['company_name', '株式会社', 1], + ['company_name', '会社名', 1], + ['company_name', '株式会社会社名', 0], + ['company_name', '株式会社 会社名', 0], // 半角スペース + ['company_name', '株式会社 会社名', 1], // 全角スペース + ['company_name', '姓', 0], + ['company_name', 'セイ', 0], + ]; + } } From 0da4c71aa14c4d03ab29a16950ddd80a02d69f6c Mon Sep 17 00:00:00 2001 From: hama Date: Fri, 13 Nov 2020 11:07:06 +0900 Subject: [PATCH 116/207] =?UTF-8?q?=E5=AF=BE=E5=BF=9C=E6=BC=8F=E3=82=8C?= =?UTF-8?q?=E5=88=86=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Product/ProductController.php | 4 ++ .../Admin/Product/ProductContorllerTest.php | 39 +++++++++++++++++++ 2 files changed, 43 insertions(+) diff --git a/src/Eccube/Controller/Admin/Product/ProductController.php b/src/Eccube/Controller/Admin/Product/ProductController.php index 16531d9f4c9..f9043ff4a15 100644 --- a/src/Eccube/Controller/Admin/Product/ProductController.php +++ b/src/Eccube/Controller/Admin/Product/ProductController.php @@ -722,7 +722,11 @@ public function delete(Request $request, $id = null, CacheUtil $cacheUtil) $deleteImages = $event->getArgument('deleteImages'); // 画像ファイルの削除(commit後に削除させる) + /** @var ProductImage $deleteImage */ foreach ($deleteImages as $deleteImage) { + if ($this->productImageRepository->findOneBy(['file_name' => $deleteImage->getFileName()])) { + continue; + } try { $fs = new Filesystem(); $fs->remove($this->eccubeConfig['eccube_save_image_dir'].'/'.$deleteImage); diff --git a/tests/Eccube/Tests/Web/Admin/Product/ProductContorllerTest.php b/tests/Eccube/Tests/Web/Admin/Product/ProductContorllerTest.php index ddd4e1b1435..47f9db18e88 100644 --- a/tests/Eccube/Tests/Web/Admin/Product/ProductContorllerTest.php +++ b/tests/Eccube/Tests/Web/Admin/Product/ProductContorllerTest.php @@ -1093,4 +1093,43 @@ public function testDeleteImage() $this->assertTrue(file_exists($dir . $DuplicatedImage->getFileName())); $this->assertFalse(file_exists($dir . $NotDuplicatedImage->getFileName())); } + + public function testDeleteAndDeleteProductImage() + { + /** @var Generator $generator */ + $generator = $this->container->get(Generator::class); + $Product1 = $generator->createProduct(null, 0, 'abstract'); + $Product2 = $generator->createProduct(null, 0, 'abstract'); + + $DuplicatedImage = $Product1->getProductImage()->first(); + assert($DuplicatedImage instanceof ProductImage); + + $NotDuplicatedImage = $Product1->getProductImage()->last(); + assert($NotDuplicatedImage instanceof ProductImage); + + $NewProduct2Image = new ProductImage(); + $NewProduct2Image + ->setProduct($Product2) + ->setFileName($DuplicatedImage->getFileName()) + ->setSortNo(999) + ; + $Product2->addProductImage($NewProduct2Image); + $this->entityManager->persist($NewProduct2Image); + $this->entityManager->flush(); + + $params = [ + 'id' => $Product1->getId(), + Constant::TOKEN_NAME => 'dummy', + ]; + + $this->client->request('DELETE', $this->generateUrl('admin_product_product_delete', $params)); + + $rUrl = $this->generateUrl('admin_product_page', ['page_no' => 1]).'?resume=1'; + + $this->assertTrue($this->client->getResponse()->isRedirect($rUrl)); + + $dir = __DIR__.'/../../../../../../html/upload/save_image/'; + $this->assertTrue(file_exists($dir . $DuplicatedImage->getFileName())); + $this->assertFalse(file_exists($dir . $NotDuplicatedImage->getFileName())); + } } From f52c4dc8ed974a5642c0772b5f870ec40b7efac4 Mon Sep 17 00:00:00 2001 From: Yuki Okuno Date: Sun, 15 Nov 2020 00:11:18 +0900 Subject: [PATCH 117/207] =?UTF-8?q?fix:HTML=E3=81=AE=E5=B1=9E=E6=80=A7maxl?= =?UTF-8?q?ength=E3=81=AEtype=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Form/Type/Admin/LoginType.php | 4 ++-- src/Eccube/Form/Type/Front/CustomerLoginType.php | 4 ++-- src/Eccube/Form/Type/Front/ForgotType.php | 2 +- src/Eccube/Form/Type/Front/PasswordResetType.php | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Eccube/Form/Type/Admin/LoginType.php b/src/Eccube/Form/Type/Admin/LoginType.php index df8c18d95eb..5f7152619f1 100644 --- a/src/Eccube/Form/Type/Admin/LoginType.php +++ b/src/Eccube/Form/Type/Admin/LoginType.php @@ -40,7 +40,7 @@ public function buildForm(FormBuilderInterface $builder, array $options) { $builder->add('login_id', TextType::class, [ 'attr' => [ - 'max_length' => 50, + 'maxlength' => 50, ], 'constraints' => [ new Assert\NotBlank(), @@ -49,7 +49,7 @@ public function buildForm(FormBuilderInterface $builder, array $options) ]); $builder->add('password', PasswordType::class, [ 'attr' => [ - 'max_length' => 50, + 'maxlength' => 50, ], 'constraints' => [ new Assert\NotBlank(), diff --git a/src/Eccube/Form/Type/Front/CustomerLoginType.php b/src/Eccube/Form/Type/Front/CustomerLoginType.php index adbdc3f2a86..a60121c82aa 100644 --- a/src/Eccube/Form/Type/Front/CustomerLoginType.php +++ b/src/Eccube/Form/Type/Front/CustomerLoginType.php @@ -48,7 +48,7 @@ public function buildForm(FormBuilderInterface $builder, array $options) { $builder->add('login_email', EmailType::class, [ 'attr' => [ - 'max_length' => $this->eccubeConfig['eccube_stext_len'], + 'maxlength' => $this->eccubeConfig['eccube_stext_len'], ], 'constraints' => [ new Assert\NotBlank(), @@ -61,7 +61,7 @@ public function buildForm(FormBuilderInterface $builder, array $options) ]); $builder->add('login_pass', PasswordType::class, [ 'attr' => [ - 'max_length' => $this->eccubeConfig['eccube_stext_len'], + 'maxlength' => $this->eccubeConfig['eccube_stext_len'], ], 'constraints' => [ new Assert\NotBlank(), diff --git a/src/Eccube/Form/Type/Front/ForgotType.php b/src/Eccube/Form/Type/Front/ForgotType.php index b82f572b555..48a1423be4e 100644 --- a/src/Eccube/Form/Type/Front/ForgotType.php +++ b/src/Eccube/Form/Type/Front/ForgotType.php @@ -47,7 +47,7 @@ public function buildForm(FormBuilderInterface $builder, array $options) { $builder->add('login_email', EmailType::class, [ 'attr' => [ - 'max_length' => $this->eccubeConfig['eccube_stext_len'], + 'maxlength' => $this->eccubeConfig['eccube_stext_len'], ], 'constraints' => [ new Assert\NotBlank(), diff --git a/src/Eccube/Form/Type/Front/PasswordResetType.php b/src/Eccube/Form/Type/Front/PasswordResetType.php index 30068fc405d..588a2c979e4 100644 --- a/src/Eccube/Form/Type/Front/PasswordResetType.php +++ b/src/Eccube/Form/Type/Front/PasswordResetType.php @@ -49,7 +49,7 @@ public function buildForm(FormBuilderInterface $builder, array $options) { $builder->add('login_email', EmailType::class, [ 'attr' => [ - 'max_length' => $this->eccubeConfig['eccube_stext_len'], + 'maxlength' => $this->eccubeConfig['eccube_stext_len'], ], 'constraints' => [ new Assert\NotBlank(), From 8bef45912488cfe61e324ebbc5f04329c7f231a2 Mon Sep 17 00:00:00 2001 From: hama Date: Wed, 25 Nov 2020 16:45:32 +0900 Subject: [PATCH 118/207] =?UTF-8?q?=E7=89=B9=E5=AE=9A=E3=81=AEPDF=E3=83=86?= =?UTF-8?q?=E3=83=B3=E3=83=97=E3=83=AC=E3=83=BC=E3=83=88=E3=81=A7=E8=A1=A8?= =?UTF-8?q?=E3=81=8C=E6=AD=A3=E5=B8=B8=E3=81=AB=E5=87=BA=E5=8A=9B=E3=81=95?= =?UTF-8?q?=E3=82=8C=E3=81=AA=E3=81=84=E4=B8=8D=E5=85=B7=E5=90=88=E3=82=92?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Service/OrderPdfService.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Eccube/Service/OrderPdfService.php b/src/Eccube/Service/OrderPdfService.php index 7281955ffb3..c0031fd1fb3 100644 --- a/src/Eccube/Service/OrderPdfService.php +++ b/src/Eccube/Service/OrderPdfService.php @@ -287,6 +287,7 @@ protected function addPdfPage() // テンプレートに使うテンプレートファイルのページ番号を指定 $this->useTemplate($tplIdx, null, null, null, null, true); + $this->setPageMark(); } /** From 65ab823e3334eed60dc880ca967f75ee935365a7 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Mon, 30 Nov 2020 14:58:43 +0900 Subject: [PATCH 119/207] =?UTF-8?q?CSV=E3=81=A7=E5=95=86=E5=93=81=E8=A6=8F?= =?UTF-8?q?=E6=A0=BC=E3=82=92=E7=99=BB=E9=8C=B2=E6=99=82=E3=81=AB=E4=BB=BB?= =?UTF-8?q?=E6=84=8F=E9=A0=85=E7=9B=AE=E3=81=AE=E9=A0=85=E7=9B=AE=E3=81=8C?= =?UTF-8?q?=E3=81=AA=E3=81=84=E5=A0=B4=E5=90=88=E3=81=AE=E3=82=A8=E3=83=A9?= =?UTF-8?q?=E3=83=BC=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Product/CsvImportController.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/Eccube/Controller/Admin/Product/CsvImportController.php b/src/Eccube/Controller/Admin/Product/CsvImportController.php index 902e60d825f..fbd372d67ba 100644 --- a/src/Eccube/Controller/Admin/Product/CsvImportController.php +++ b/src/Eccube/Controller/Admin/Product/CsvImportController.php @@ -1202,7 +1202,7 @@ protected function updateProductClass($row, Product $Product, ProductClass $Prod $ProductClass->setProduct($Product); $line = $data->key() + 1; - if ($row[$headerByKey['sale_type']] == '') { + if (!isset($row[$headerByKey['sale_type']]) || $row[$headerByKey['sale_type']] == '') { $message = trans('admin.common.csv_invalid_required', ['%line%' => $line, '%name%' => $headerByKey['sale_type']]); $this->addErrors($message); } else { @@ -1221,7 +1221,7 @@ protected function updateProductClass($row, Product $Product, ProductClass $Prod } // 規格分類1、2をそれぞれセットし作成 - if ($row[$headerByKey['class_category1']] != '') { + if (isset($row[$headerByKey['class_category1']]) && $row[$headerByKey['class_category1']] != '') { if (preg_match('/^\d+$/', $row[$headerByKey['class_category1']])) { $ClassCategory = $this->classCategoryRepository->find($row[$headerByKey['class_category1']]); if (!$ClassCategory) { @@ -1236,7 +1236,7 @@ protected function updateProductClass($row, Product $Product, ProductClass $Prod } } - if ($row[$headerByKey['class_category2']] != '') { + if (isset($row[$headerByKey['class_category2']]) && $row[$headerByKey['class_category2']] != '') { if (preg_match('/^\d+$/', $row[$headerByKey['class_category2']])) { $ClassCategory = $this->classCategoryRepository->find($row[$headerByKey['class_category2']]); if (!$ClassCategory) { @@ -1251,7 +1251,7 @@ protected function updateProductClass($row, Product $Product, ProductClass $Prod } } - if ($row[$headerByKey['delivery_date']] != '') { + if (isset($row[$headerByKey['delivery_date']]) && $row[$headerByKey['delivery_date']] != '') { if (preg_match('/^\d+$/', $row[$headerByKey['delivery_date']])) { $DeliveryDuration = $this->deliveryDurationRepository->find($row[$headerByKey['delivery_date']]); if (!$DeliveryDuration) { @@ -1266,7 +1266,7 @@ protected function updateProductClass($row, Product $Product, ProductClass $Prod } } - if (StringUtil::isNotBlank($row[$headerByKey['product_code']])) { + if (isset($row[$headerByKey['product_code']]) && StringUtil::isNotBlank($row[$headerByKey['product_code']])) { $ProductClass->setCode(StringUtil::trimAll($row[$headerByKey['product_code']])); } else { $ProductClass->setCode(null); @@ -1298,7 +1298,7 @@ protected function updateProductClass($row, Product $Product, ProductClass $Prod $this->addErrors($message); } - if ($row[$headerByKey['sale_limit']] != '') { + if (isset($row[$headerByKey['sale_limit']]) && $row[$headerByKey['sale_limit']] != '') { $saleLimit = str_replace(',', '', $row[$headerByKey['sale_limit']]); if (preg_match('/^\d+$/', $saleLimit) && $saleLimit >= 0) { $ProductClass->setSaleLimit($saleLimit); @@ -1308,7 +1308,7 @@ protected function updateProductClass($row, Product $Product, ProductClass $Prod } } - if ($row[$headerByKey['price01']] != '') { + if (isset($row[$headerByKey['price01']]) && $row[$headerByKey['price01']] != '') { $price01 = str_replace(',', '', $row[$headerByKey['price01']]); $errors = $this->validator->validate($price01, new GreaterThanOrEqual(['value' => 0])); if ($errors->count() === 0) { @@ -1319,7 +1319,7 @@ protected function updateProductClass($row, Product $Product, ProductClass $Prod } } - if ($row[$headerByKey['price02']] == '') { + if (!isset($row[$headerByKey['price02']]) || $row[$headerByKey['price02']] == '') { $message = trans('admin.common.csv_invalid_required', ['%line%' => $line, '%name%' => $headerByKey['price02']]); $this->addErrors($message); } else { From a5055185e573d99824442c95366f3ec084b3915f Mon Sep 17 00:00:00 2001 From: ouyou Date: Sun, 12 Jan 2020 21:45:34 +0900 Subject: [PATCH 120/207] =?UTF-8?q?=E3=83=9A=E3=83=BC=E3=82=B8=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E3=81=AE=E7=B7=A8=E9=9B=86=E5=AF=BE=E8=B1=A1=E3=81=AB?= =?UTF-8?q?=E4=BC=9A=E5=93=A1=E7=99=BB=E9=8C=B2(=E7=A2=BA=E8=AA=8D?= =?UTF-8?q?=E3=83=9A=E3=83=BC=E3=82=B8)=E3=82=92=E5=8A=A0=E3=81=88?= =?UTF-8?q?=E3=82=8B=20#4428?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Content/LayoutController.php | 2 +- .../Admin/Content/PageController.php | 3 +- src/Eccube/Entity/Page.php | 1 + src/Eccube/Form/Type/Admin/MainEditType.php | 9 +- src/Eccube/Repository/PageRepository.php | 5 +- .../doctrine/import_csv/en/dtb_page.csv | 21 ++- .../doctrine/import_csv/ja/dtb_page.csv | 3 + .../template/admin/Content/page_edit.twig | 178 +++++++++--------- 8 files changed, 120 insertions(+), 102 deletions(-) diff --git a/src/Eccube/Controller/Admin/Content/LayoutController.php b/src/Eccube/Controller/Admin/Content/LayoutController.php index f5e32e07be6..c5b34f0660e 100644 --- a/src/Eccube/Controller/Admin/Content/LayoutController.php +++ b/src/Eccube/Controller/Admin/Content/LayoutController.php @@ -207,7 +207,7 @@ public function edit(Request $request, $id = null, $previewPageId = null, CacheU throw new NotFoundHttpException(); } - if ($Page->getEditType() == \Eccube\Entity\Page::EDIT_TYPE_DEFAULT) { + if ($Page->getEditType() >= \Eccube\Entity\Page::EDIT_TYPE_DEFAULT) { if ($Page->getUrl() === 'product_detail') { $product = $this->productRepository->findOneBy(['Status' => ProductStatus::DISPLAY_SHOW]); if (is_null($product)) { diff --git a/src/Eccube/Controller/Admin/Content/PageController.php b/src/Eccube/Controller/Admin/Content/PageController.php index 4b22bf005b7..d9f5b358388 100644 --- a/src/Eccube/Controller/Admin/Content/PageController.php +++ b/src/Eccube/Controller/Admin/Content/PageController.php @@ -120,7 +120,7 @@ public function edit(Request $request, $id = null, Environment $twig, RouterInte $namespace = '@user_data/'; if ($id) { // 編集不可ページはURL、ページ名、ファイル名を保持 - if ($Page->getEditType() == Page::EDIT_TYPE_DEFAULT) { + if ($Page->getEditType() >= Page::EDIT_TYPE_DEFAULT) { $isUserDataPage = false; $namespace = ''; $PrevPage = clone $Page; @@ -245,6 +245,7 @@ public function edit(Request $request, $id = null, Environment $twig, RouterInte 'form' => $form->createView(), 'page_id' => $Page->getId(), 'is_user_data_page' => $isUserDataPage, + 'is_confirm_page' => $Page->getEditType() == Page::EDIT_TYPE_DEFAULT_CONFIRM, 'template_path' => $templatePath, 'url' => $url, ]; diff --git a/src/Eccube/Entity/Page.php b/src/Eccube/Entity/Page.php index 44dc489d700..8df1344f2eb 100644 --- a/src/Eccube/Entity/Page.php +++ b/src/Eccube/Entity/Page.php @@ -31,6 +31,7 @@ class Page extends \Eccube\Entity\AbstractEntity const EDIT_TYPE_USER = 0; const EDIT_TYPE_PREVIEW = 1; const EDIT_TYPE_DEFAULT = 2; + const EDIT_TYPE_DEFAULT_CONFIRM = 3; // 特定商取引法ページID const TRADELAW_PAGE_ID = 21; diff --git a/src/Eccube/Form/Type/Admin/MainEditType.php b/src/Eccube/Form/Type/Admin/MainEditType.php index ac08f687788..9a41ef7bfea 100644 --- a/src/Eccube/Form/Type/Admin/MainEditType.php +++ b/src/Eccube/Form/Type/Admin/MainEditType.php @@ -221,6 +221,13 @@ public function buildForm(FormBuilderInterface $builder, array $options) ->setParameter('page_id', $Page->getId()); } + //確認ページの編集ページ存在している場合 + if ($Page->getEditType() == Page::EDIT_TYPE_DEFAULT_CONFIRM && $Page->getMasterPage()) { + $qb + ->andWhere('p.id <> :master_page_id') + ->setParameter('master_page_id', $Page->getMasterPage()->getId()); + } + $count = $qb->getQuery()->getSingleScalarResult(); if ($count > 0) { $form['url']->addError(new FormError(trans('admin.content.page_url_exists'))); @@ -253,7 +260,7 @@ public function buildForm(FormBuilderInterface $builder, array $options) $qb->select('count(p)') ->from('Eccube\\Entity\\Page', 'p') ->where('p.file_name = :file_name') - ->andWhere('p.edit_type = :edit_type') + ->andWhere('p.edit_type >= :edit_type') ->setParameter('file_name', $Page->getFileName()) ->setParameter('edit_type', Page::EDIT_TYPE_DEFAULT); diff --git a/src/Eccube/Repository/PageRepository.php b/src/Eccube/Repository/PageRepository.php index 5f34d053bf9..c64169a1d34 100644 --- a/src/Eccube/Repository/PageRepository.php +++ b/src/Eccube/Repository/PageRepository.php @@ -138,8 +138,9 @@ public function getPageList($where = null, $parameters = []) { $qb = $this->createQueryBuilder('p') ->andWhere('p.id <> 0') - ->andWhere('p.MasterPage is null') - ->orderBy('p.id', 'ASC'); + ->andWhere('(p.MasterPage is null OR p.edit_type = :edit_type)') + ->orderBy('p.id', 'ASC') + ->setParameter('edit_type', Page::EDIT_TYPE_DEFAULT_CONFIRM); if (!is_null($where)) { $qb->andWhere($where); foreach ($parameters as $key => $val) { diff --git a/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv b/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv index b13f8486e28..6f7485eac29 100644 --- a/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv +++ b/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv @@ -2,15 +2,15 @@ id,page_name,url,file_name,edit_type,author,description,keyword,create_date,upda 0,Preview,preview,,1,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,,,page, 1,Home,homepage,index,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,,,page, 2,All Products,product_list,Product/list,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,,,page, -3,Product Details,product_detail,Product/detail,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,,,page," - - - - - - - -" +3,Product Details,product_detail,Product/detail,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,,,page, + + + + + + + + 4,My Account,mypage,Mypage/index,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,noindex,,page, 5,My Account / Edit Customer Info (Form),mypage_change,Mypage/change,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,noindex,,page, 6,My Account / Edit Customer Info (Thank-you),mypage_change_complete,Mypage/change_complete,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,noindex,,page, @@ -47,3 +47,6 @@ id,page_name,url,file_name,edit_type,author,description,keyword,create_date,upda 42,Shopping / Change Delivery Address,shopping_shipping_edit_change,Shopping/index,2,,,,2017-03-07 01:15:03,2017-03-07 01:15:03,noindex,,page, 44,My Account / Edit Delivery Address,mypage_delivery_edit,Mypage/delivery_edit,2,,,,2017-03-07 01:15:05,2017-03-07 01:15:05,noindex,8,page, 45,Shopping / Review,shopping_confirm,Shopping/confirm,2,,,,2017-03-07 01:15:03,2017-03-07 01:15:03,noindex,,page, +46,Registration (Form) Review,entry,Entry/confirm,3,,,,2020-01-12 01:15:03,2020-01-12 01:15:03,noindex,18,page, +47,My Account / Membership Cancellation (Form) Review,mypage_withdraw,Mypage/withdraw_confirm,3,,,,2020-01-12 10:14:52,2020-01-12 10:14:52,noindex,12,page, +48,Inquiry (Form) Review,contact,Contact/confirm,3,,,,2020-01-12 10:14:52,2020-01-12 10:14:52,,16,page, diff --git a/src/Eccube/Resource/doctrine/import_csv/ja/dtb_page.csv b/src/Eccube/Resource/doctrine/import_csv/ja/dtb_page.csv index cf0294d41af..474a2f5426f 100644 --- a/src/Eccube/Resource/doctrine/import_csv/ja/dtb_page.csv +++ b/src/Eccube/Resource/doctrine/import_csv/ja/dtb_page.csv @@ -47,3 +47,6 @@ id,page_name,url,file_name,edit_type,author,description,keyword,create_date,upda "42","商品購入/遷移","shopping_redirect_to","Shopping/index","2",,,,"2017-03-07 01:15:03","2017-03-07 01:15:03","noindex",,"page", "44","MYページ/お届け先編集","mypage_delivery_edit","Mypage/delivery_edit","2",,,,"2017-03-07 01:15:05","2017-03-07 01:15:05","noindex",8,"page", "45","商品購入/ご注文確認","shopping_confirm","Shopping/confirm","2",,,,"2017-03-07 01:15:03","2017-03-07 01:15:03","noindex",,"page", +"46","会員登録(確認ページ)","entry","Entry/confirm","3",,,,"2020-01-12 01:15:03","2020-01-12 01:15:03","noindex",18,"page", +"47","MYページ/退会手続き(確認ページ)","mypage_withdraw","Mypage/withdraw_confirm","3",,,,"2020-01-12 10:14:52","2020-01-12 10:14:52","noindex",12,"page", +"48","お問い合わせ(確認ページ)","contact","Contact/confirm","3",,,,"2020-01-12 10:14:52","2020-01-12 10:14:52",,16,"page", diff --git a/src/Eccube/Resource/template/admin/Content/page_edit.twig b/src/Eccube/Resource/template/admin/Content/page_edit.twig index 9ad2fdf76d4..3d33dec3776 100644 --- a/src/Eccube/Resource/template/admin/Content/page_edit.twig +++ b/src/Eccube/Resource/template/admin/Content/page_edit.twig @@ -173,114 +173,116 @@ file that was distributed with this source code. - -
-
-
-
-
- - {{ 'admin.content.page_layout__card_title'|trans }} - - + {%- if not is_confirm_page %} + +
+
+
+
+
+ + {{ 'admin.content.page_layout__card_title'|trans }} + + +
+
+ -
-
-
-
-
- -
-
{{ 'admin.content.page_pc'|trans }}
-
- {{ form_widget(form.PcLayout) }} - {{ form_errors(form.PcLayout) }} +
+
+ +
+
{{ 'admin.content.page_pc'|trans }}
+
+ {{ form_widget(form.PcLayout) }} + {{ form_errors(form.PcLayout) }} +
-
- -
-
{{ 'admin.content.page_mobile'|trans }}
-
- {{ form_widget(form.SpLayout) }} - {{ form_errors(form.SpLayout) }} + +
+
{{ 'admin.content.page_mobile'|trans }}
+
+ {{ form_widget(form.SpLayout) }} + {{ form_errors(form.SpLayout) }} +
-
- -
-
-
-
-
- {{ 'admin.content.page_meta__card_title'|trans }} - + +
+
+
+
+
+ {{ 'admin.content.page_meta__card_title'|trans }} + +
-
-
- -
-
-
-
-
- -
-
{{ 'admin.content.page_meta_author'|trans }}
-
- {{ form_widget(form.author) }} - {{ form_errors(form.author) }} +
- -
-
{{ 'admin.content.page_meta_description'|trans }}
-
- {{ form_widget(form.description) }} - {{ form_errors(form.description) }} +
+
+
+ +
+
{{ 'admin.content.page_meta_author'|trans }}
+
+ {{ form_widget(form.author) }} + {{ form_errors(form.author) }} +
-
- -
-
{{ 'admin.content.page_meta_keyword'|trans }}
-
- {{ form_widget(form.keyword) }} - {{ form_errors(form.keyword) }} + +
+
{{ 'admin.content.page_meta_description'|trans }}
+
+ {{ form_widget(form.description) }} + {{ form_errors(form.description) }} +
-
- -
-
{{ 'admin.content.page_meta_robot'|trans }}
-
- {{ form_widget(form.meta_robots) }} - {{ form_errors(form.meta_robots) }} + +
+
{{ 'admin.content.page_meta_keyword'|trans }}
+
+ {{ form_widget(form.keyword) }} + {{ form_errors(form.keyword) }} +
-
- -
-
-
- {{ 'admin.content.page_meta_metatag'|trans }} - + +
+
{{ 'admin.content.page_meta_robot'|trans }}
+
+ {{ form_widget(form.meta_robots) }} + {{ form_errors(form.meta_robots) }}
-
- {{ form_widget(form.meta_tags, { attr : { placeholder : 'admin.content.page_meta_metatag_placeholder'|trans, rows : '10' }}) }} - {{ form_errors(form.meta_tags) }} + +
+
+
+ {{ 'admin.content.page_meta_metatag'|trans }} + +
+
+
+ {{ form_widget(form.meta_tags, { attr : { placeholder : 'admin.content.page_meta_metatag_placeholder'|trans, rows : '10' }}) }} + {{ form_errors(form.meta_tags) }} +
-
+ {% endif -%}
From 06946f34aff6e205bd02683d69a224709a050fb6 Mon Sep 17 00:00:00 2001 From: ouyou Date: Tue, 14 Jan 2020 10:34:30 +0900 Subject: [PATCH 121/207] =?UTF-8?q?csv=E4=B8=80=E9=83=A8=E6=88=BB=E3=81=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../doctrine/import_csv/en/dtb_page.csv | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv b/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv index 6f7485eac29..f1bbaa6271a 100644 --- a/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv +++ b/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv @@ -2,15 +2,15 @@ id,page_name,url,file_name,edit_type,author,description,keyword,create_date,upda 0,Preview,preview,,1,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,,,page, 1,Home,homepage,index,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,,,page, 2,All Products,product_list,Product/list,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,,,page, -3,Product Details,product_detail,Product/detail,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,,,page, - - - - - - - - +3,Product Details,product_detail,Product/detail,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,,,page," + + + + + + + +" 4,My Account,mypage,Mypage/index,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,noindex,,page, 5,My Account / Edit Customer Info (Form),mypage_change,Mypage/change,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,noindex,,page, 6,My Account / Edit Customer Info (Thank-you),mypage_change_complete,Mypage/change_complete,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,noindex,,page, From 148f22712548fb710a6c761b711034e5196d073c Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 1 Dec 2020 08:42:28 +0900 Subject: [PATCH 122/207] =?UTF-8?q?=E3=83=AC=E3=82=A4=E3=82=A2=E3=82=A6?= =?UTF-8?q?=E3=83=88=E3=81=A8=E9=80=A3=E5=8B=95=E3=81=99=E3=82=8B=E3=82=88?= =?UTF-8?q?=E3=81=86=E3=81=AB=E4=BF=AE=E6=AD=A3=E3=80=81=E3=83=9E=E3=82=A4?= =?UTF-8?q?=E3=82=B0=E3=83=AC=E3=83=BC=E3=82=B7=E3=83=A7=E3=83=B3=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Version20201127000000.php | 77 +++++++++++++++++++ src/Eccube/Controller/ContactController.php | 13 +++- src/Eccube/Controller/EntryController.php | 12 ++- .../Controller/Mypage/WithdrawController.php | 13 +++- .../doctrine/import_csv/ja/dtb_page.csv | 6 +- .../import_csv/ja/dtb_page_layout.csv | 3 + 6 files changed, 118 insertions(+), 6 deletions(-) create mode 100644 app/DoctrineMigrations/Version20201127000000.php diff --git a/app/DoctrineMigrations/Version20201127000000.php b/app/DoctrineMigrations/Version20201127000000.php new file mode 100644 index 00000000000..8a10e377667 --- /dev/null +++ b/app/DoctrineMigrations/Version20201127000000.php @@ -0,0 +1,77 @@ +connection->fetchColumn("SELECT COUNT(*) FROM dtb_page WHERE url = 'entry_confirm'"); + if ($count > 0) { + return; + } + $pageId = $this->connection->fetchColumn('SELECT MAX(id) FROM dtb_page'); + $sortNo = $this->connection->fetchColumn('SELECT MAX(sort_no) FROM dtb_page_layout'); + + $pageId++; + $this->addSql("INSERT INTO dtb_page ( + id, master_page_id, page_name, url, file_name, edit_type, create_date, update_date, meta_robots, discriminator_type + ) VALUES( + $pageId, 18, '会員登録(確認ページ)', 'entry_confirm', 'Entry/confirm', 3, '2020-01-12 01:15:03', '2020-01-12 01:15:03', 'noindex', 'page' + )"); + + $sortNo++; + $this->addSql("INSERT INTO dtb_page_layout (page_id, layout_id, sort_no, discriminator_type) VALUES ($pageId, 2, , $sortNo, 'pagelayout')"); + + $pageId++; + $this->addSql("INSERT INTO dtb_page ( + id, master_page_id, page_name, url, file_name, edit_type, create_date, update_date, meta_robots, discriminator_type + ) VALUES( + $pageId, 12, 'MYページ/退会手続き(確認ページ)', 'mypage_withdraw_confirm', 'Mypage/withdraw_confirm', 3, '2020-01-12 01:15:03', '2020-01-12 01:15:03', 'noindex', 'page' + )"); + + $sortNo++; + $this->addSql("INSERT INTO dtb_page_layout (page_id, layout_id, sort_no, discriminator_type) VALUES ($pageId, 2, , $sortNo, 'pagelayout')"); + + $pageId++; + $this->addSql("INSERT INTO dtb_page ( + id, master_page_id, page_name, url, file_name, edit_type, create_date, update_date, meta_robots, discriminator_type + ) VALUES( + $pageId, 16, 'お問い合わせ(確認ページ)', 'contact_confirm', 'Contact/confirm', 3, '2020-01-12 01:15:03', '2020-01-12 01:15:03', 'noindex', 'page' + )"); + + $sortNo++; + $this->addSql("INSERT INTO dtb_page_layout (page_id, layout_id, sort_no, discriminator_type) VALUES ($pageId, 2, , $sortNo, 'pagelayout')"); + + if ($this->platform->getName() === 'postgresql') { + $this->addSql("SELECT setval('dtb_page_id_seq', $pageId)"); + } + } + + public function down(Schema $schema) : void + { + // this down() migration is auto-generated, please modify it to your needs + + } +} diff --git a/src/Eccube/Controller/ContactController.php b/src/Eccube/Controller/ContactController.php index 63a2da3a199..3a60fe13cab 100644 --- a/src/Eccube/Controller/ContactController.php +++ b/src/Eccube/Controller/ContactController.php @@ -17,6 +17,7 @@ use Eccube\Event\EccubeEvents; use Eccube\Event\EventArgs; use Eccube\Form\Type\Front\ContactType; +use Eccube\Repository\PageRepository; use Eccube\Service\MailService; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template; use Symfony\Component\HttpFoundation\Request; @@ -29,21 +30,30 @@ class ContactController extends AbstractController */ protected $mailService; + /** + * @var PageRepository + */ + private $pageRepository; + /** * ContactController constructor. * * @param MailService $mailService + * @param PageRepository $pageRepository */ public function __construct( - MailService $mailService) + MailService $mailService, + PageRepository $pageRepository) { $this->mailService = $mailService; + $this->pageRepository = $pageRepository; } /** * お問い合わせ画面. * * @Route("/contact", name="contact") + * @Route("/contact", name="contact_confirm") * @Template("Contact/index.twig") */ public function index(Request $request) @@ -86,6 +96,7 @@ public function index(Request $request) case 'confirm': return $this->render('Contact/confirm.twig', [ 'form' => $form->createView(), + 'Page' => $this->pageRepository->getPageByRoute('') ]); case 'complete': diff --git a/src/Eccube/Controller/EntryController.php b/src/Eccube/Controller/EntryController.php index cc068746b2c..4cc7b80ae4c 100644 --- a/src/Eccube/Controller/EntryController.php +++ b/src/Eccube/Controller/EntryController.php @@ -21,6 +21,7 @@ use Eccube\Repository\BaseInfoRepository; use Eccube\Repository\CustomerRepository; use Eccube\Repository\Master\CustomerStatusRepository; +use Eccube\Repository\PageRepository; use Eccube\Service\MailService; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template; use Symfony\Component\HttpFoundation\Request; @@ -76,6 +77,11 @@ class EntryController extends AbstractController */ protected $cartService; + /** + * @var PageRepository + */ + protected $pageRepository; + /** * EntryController constructor. * @@ -96,7 +102,8 @@ public function __construct( CustomerRepository $customerRepository, EncoderFactoryInterface $encoderFactory, ValidatorInterface $validatorInterface, - TokenStorageInterface $tokenStorage + TokenStorageInterface $tokenStorage, + PageRepository $pageRepository ) { $this->customerStatusRepository = $customerStatusRepository; $this->mailService = $mailService; @@ -106,12 +113,14 @@ public function __construct( $this->recursiveValidator = $validatorInterface; $this->tokenStorage = $tokenStorage; $this->cartService = $cartService; + $this->pageRepository = $pageRepository; } /** * 会員登録画面. * * @Route("/entry", name="entry") + * @Route("/entry", name="entry_confirm") * @Template("Entry/index.twig") */ public function index(Request $request) @@ -152,6 +161,7 @@ public function index(Request $request) 'Entry/confirm.twig', [ 'form' => $form->createView(), + 'Page' => $this->pageRepository->getPageByRoute('entry_confirm') ] ); diff --git a/src/Eccube/Controller/Mypage/WithdrawController.php b/src/Eccube/Controller/Mypage/WithdrawController.php index 796a0b943e9..8afca2a8d41 100644 --- a/src/Eccube/Controller/Mypage/WithdrawController.php +++ b/src/Eccube/Controller/Mypage/WithdrawController.php @@ -18,6 +18,7 @@ use Eccube\Event\EccubeEvents; use Eccube\Event\EventArgs; use Eccube\Repository\Master\CustomerStatusRepository; +use Eccube\Repository\PageRepository; use Eccube\Service\CartService; use Eccube\Service\MailService; use Eccube\Service\OrderHelper; @@ -55,6 +56,11 @@ class WithdrawController extends AbstractController */ private $orderHelper; + /** + * @var PageRepository + */ + private $pageRepository; + /** * WithdrawController constructor. * @@ -63,25 +69,29 @@ class WithdrawController extends AbstractController * @param TokenStorageInterface $tokenStorage * @param CartService $cartService * @param OrderHelper $orderHelper + * @param PageRepository $pageRepository */ public function __construct( MailService $mailService, CustomerStatusRepository $customerStatusRepository, TokenStorageInterface $tokenStorage, CartService $cartService, - OrderHelper $orderHelper + OrderHelper $orderHelper, + PageRepository $pageRepository ) { $this->mailService = $mailService; $this->customerStatusRepository = $customerStatusRepository; $this->tokenStorage = $tokenStorage; $this->cartService = $cartService; $this->orderHelper = $orderHelper; + $this->pageRepository = $pageRepository; } /** * 退会画面. * * @Route("/mypage/withdraw", name="mypage_withdraw") + * @Route("/mypage/withdraw", name="mypage_withdraw_confirm") * @Template("Mypage/withdraw.twig") */ public function index(Request $request) @@ -109,6 +119,7 @@ public function index(Request $request) 'Mypage/withdraw_confirm.twig', [ 'form' => $form->createView(), + 'Page' => $this->pageRepository->getPageByRoute('mypage_withdraw_confirm') ] ); diff --git a/src/Eccube/Resource/doctrine/import_csv/ja/dtb_page.csv b/src/Eccube/Resource/doctrine/import_csv/ja/dtb_page.csv index 474a2f5426f..51fa4c5302d 100644 --- a/src/Eccube/Resource/doctrine/import_csv/ja/dtb_page.csv +++ b/src/Eccube/Resource/doctrine/import_csv/ja/dtb_page.csv @@ -47,6 +47,6 @@ id,page_name,url,file_name,edit_type,author,description,keyword,create_date,upda "42","商品購入/遷移","shopping_redirect_to","Shopping/index","2",,,,"2017-03-07 01:15:03","2017-03-07 01:15:03","noindex",,"page", "44","MYページ/お届け先編集","mypage_delivery_edit","Mypage/delivery_edit","2",,,,"2017-03-07 01:15:05","2017-03-07 01:15:05","noindex",8,"page", "45","商品購入/ご注文確認","shopping_confirm","Shopping/confirm","2",,,,"2017-03-07 01:15:03","2017-03-07 01:15:03","noindex",,"page", -"46","会員登録(確認ページ)","entry","Entry/confirm","3",,,,"2020-01-12 01:15:03","2020-01-12 01:15:03","noindex",18,"page", -"47","MYページ/退会手続き(確認ページ)","mypage_withdraw","Mypage/withdraw_confirm","3",,,,"2020-01-12 10:14:52","2020-01-12 10:14:52","noindex",12,"page", -"48","お問い合わせ(確認ページ)","contact","Contact/confirm","3",,,,"2020-01-12 10:14:52","2020-01-12 10:14:52",,16,"page", +"46","会員登録(確認ページ)","entry_confirm","Entry/confirm","3",,,,"2020-01-12 01:15:03","2020-01-12 01:15:03","noindex",18,"page", +"47","MYページ/退会手続き(確認ページ)","mypage_withdraw_confirm","Mypage/withdraw_confirm","3",,,,"2020-01-12 10:14:52","2020-01-12 10:14:52","noindex",12,"page", +"48","お問い合わせ(確認ページ)","contact_confirm","Contact/confirm","3",,,,"2020-01-12 10:14:52","2020-01-12 10:14:52","noindex",16,"page", diff --git a/src/Eccube/Resource/doctrine/import_csv/ja/dtb_page_layout.csv b/src/Eccube/Resource/doctrine/import_csv/ja/dtb_page_layout.csv index fa133883048..2b6c4f57492 100644 --- a/src/Eccube/Resource/doctrine/import_csv/ja/dtb_page_layout.csv +++ b/src/Eccube/Resource/doctrine/import_csv/ja/dtb_page_layout.csv @@ -39,3 +39,6 @@ page_id,layout_id,sort_no,discriminator_type "38","2","39","pagelayout" "44","2","40","pagelayout" "45","2","41","pagelayout" +"46","2","42","pagelayout" +"47","2","43","pagelayout" +"48","2","44","pagelayout" From cc5023512e240bcab03c14b596270d79134d22ec Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 1 Dec 2020 09:51:56 +0900 Subject: [PATCH 123/207] =?UTF-8?q?en=E3=81=AEimport=20csv=E3=81=AB?= =?UTF-8?q?=E3=82=82=E5=8F=8D=E6=98=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv | 2 +- src/Eccube/Resource/doctrine/import_csv/en/dtb_page_layout.csv | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv b/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv index f1bbaa6271a..f0a825c2d5c 100644 --- a/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv +++ b/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv @@ -49,4 +49,4 @@ id,page_name,url,file_name,edit_type,author,description,keyword,create_date,upda 45,Shopping / Review,shopping_confirm,Shopping/confirm,2,,,,2017-03-07 01:15:03,2017-03-07 01:15:03,noindex,,page, 46,Registration (Form) Review,entry,Entry/confirm,3,,,,2020-01-12 01:15:03,2020-01-12 01:15:03,noindex,18,page, 47,My Account / Membership Cancellation (Form) Review,mypage_withdraw,Mypage/withdraw_confirm,3,,,,2020-01-12 10:14:52,2020-01-12 10:14:52,noindex,12,page, -48,Inquiry (Form) Review,contact,Contact/confirm,3,,,,2020-01-12 10:14:52,2020-01-12 10:14:52,,16,page, +48,Inquiry (Form) Review,contact,Contact/confirm,3,,,,2020-01-12 10:14:52,2020-01-12 10:14:52,noindex,16,page, diff --git a/src/Eccube/Resource/doctrine/import_csv/en/dtb_page_layout.csv b/src/Eccube/Resource/doctrine/import_csv/en/dtb_page_layout.csv index fa133883048..2b6c4f57492 100644 --- a/src/Eccube/Resource/doctrine/import_csv/en/dtb_page_layout.csv +++ b/src/Eccube/Resource/doctrine/import_csv/en/dtb_page_layout.csv @@ -39,3 +39,6 @@ page_id,layout_id,sort_no,discriminator_type "38","2","39","pagelayout" "44","2","40","pagelayout" "45","2","41","pagelayout" +"46","2","42","pagelayout" +"47","2","43","pagelayout" +"48","2","44","pagelayout" From 72fcdef2a92678646f09102a8087c0444ac5800c Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 1 Dec 2020 09:58:46 +0900 Subject: [PATCH 124/207] =?UTF-8?q?=E3=83=9A=E3=83=BC=E3=82=B8=E3=81=AE?= =?UTF-8?q?=E5=8F=96=E5=BE=97=E5=87=A6=E7=90=86=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Controller/ContactController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Controller/ContactController.php b/src/Eccube/Controller/ContactController.php index 3a60fe13cab..48ea762ae2c 100644 --- a/src/Eccube/Controller/ContactController.php +++ b/src/Eccube/Controller/ContactController.php @@ -96,7 +96,7 @@ public function index(Request $request) case 'confirm': return $this->render('Contact/confirm.twig', [ 'form' => $form->createView(), - 'Page' => $this->pageRepository->getPageByRoute('') + 'Page' => $this->pageRepository->getPageByRoute('contact_confirm') ]); case 'complete': From 501ccb0862888aa79df414ed4a219f7a6e0771cc Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 1 Dec 2020 10:08:15 +0900 Subject: [PATCH 125/207] =?UTF-8?q?en=E3=81=AE=E4=BF=AE=E6=AD=A3=E6=BC=8F?= =?UTF-8?q?=E3=82=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv b/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv index f0a825c2d5c..fe3584d5f38 100644 --- a/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv +++ b/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv @@ -47,6 +47,6 @@ id,page_name,url,file_name,edit_type,author,description,keyword,create_date,upda 42,Shopping / Change Delivery Address,shopping_shipping_edit_change,Shopping/index,2,,,,2017-03-07 01:15:03,2017-03-07 01:15:03,noindex,,page, 44,My Account / Edit Delivery Address,mypage_delivery_edit,Mypage/delivery_edit,2,,,,2017-03-07 01:15:05,2017-03-07 01:15:05,noindex,8,page, 45,Shopping / Review,shopping_confirm,Shopping/confirm,2,,,,2017-03-07 01:15:03,2017-03-07 01:15:03,noindex,,page, -46,Registration (Form) Review,entry,Entry/confirm,3,,,,2020-01-12 01:15:03,2020-01-12 01:15:03,noindex,18,page, -47,My Account / Membership Cancellation (Form) Review,mypage_withdraw,Mypage/withdraw_confirm,3,,,,2020-01-12 10:14:52,2020-01-12 10:14:52,noindex,12,page, -48,Inquiry (Form) Review,contact,Contact/confirm,3,,,,2020-01-12 10:14:52,2020-01-12 10:14:52,noindex,16,page, +46,Registration (Form) Review,entry_confirm,Entry/confirm,3,,,,2020-01-12 01:15:03,2020-01-12 01:15:03,noindex,18,page, +47,My Account / Membership Cancellation (Form) Review,mypage_withdraw_confirm,Mypage/withdraw_confirm,3,,,,2020-01-12 10:14:52,2020-01-12 10:14:52,noindex,12,page, +48,Inquiry (Form) Review,contact_confirm,Contact/confirm,3,,,,2020-01-12 10:14:52,2020-01-12 10:14:52,noindex,16,page, From 187668a91e85e2302a00a02fd2fb910340ccd419 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 2 Dec 2020 14:03:00 +0900 Subject: [PATCH 126/207] =?UTF-8?q?=E3=83=9E=E3=82=A4=E3=82=B0=E3=83=AC?= =?UTF-8?q?=E3=83=BC=E3=82=B7=E3=83=A7=E3=83=B3=E3=81=AEsyntax=20error?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/DoctrineMigrations/Version20201127000000.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/DoctrineMigrations/Version20201127000000.php b/app/DoctrineMigrations/Version20201127000000.php index 8a10e377667..47455db826c 100644 --- a/app/DoctrineMigrations/Version20201127000000.php +++ b/app/DoctrineMigrations/Version20201127000000.php @@ -42,7 +42,7 @@ public function up(Schema $schema) : void )"); $sortNo++; - $this->addSql("INSERT INTO dtb_page_layout (page_id, layout_id, sort_no, discriminator_type) VALUES ($pageId, 2, , $sortNo, 'pagelayout')"); + $this->addSql("INSERT INTO dtb_page_layout (page_id, layout_id, sort_no, discriminator_type) VALUES ($pageId, 2, $sortNo, 'pagelayout')"); $pageId++; $this->addSql("INSERT INTO dtb_page ( @@ -52,7 +52,7 @@ public function up(Schema $schema) : void )"); $sortNo++; - $this->addSql("INSERT INTO dtb_page_layout (page_id, layout_id, sort_no, discriminator_type) VALUES ($pageId, 2, , $sortNo, 'pagelayout')"); + $this->addSql("INSERT INTO dtb_page_layout (page_id, layout_id, sort_no, discriminator_type) VALUES ($pageId, 2, $sortNo, 'pagelayout')"); $pageId++; $this->addSql("INSERT INTO dtb_page ( @@ -62,7 +62,7 @@ public function up(Schema $schema) : void )"); $sortNo++; - $this->addSql("INSERT INTO dtb_page_layout (page_id, layout_id, sort_no, discriminator_type) VALUES ($pageId, 2, , $sortNo, 'pagelayout')"); + $this->addSql("INSERT INTO dtb_page_layout (page_id, layout_id, sort_no, discriminator_type) VALUES ($pageId, 2, $sortNo, 'pagelayout')"); if ($this->platform->getName() === 'postgresql') { $this->addSql("SELECT setval('dtb_page_id_seq', $pageId)"); From 957db275c62a3e3eab1bc82ef52223808ac2170a Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 2 Dec 2020 14:04:20 +0900 Subject: [PATCH 127/207] =?UTF-8?q?=E4=B8=8D=E8=A6=81=E3=81=AA=E5=AE=9A?= =?UTF-8?q?=E6=95=B0=E3=82=92=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/DoctrineMigrations/Version20201127000000.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/DoctrineMigrations/Version20201127000000.php b/app/DoctrineMigrations/Version20201127000000.php index 47455db826c..b22190aee90 100644 --- a/app/DoctrineMigrations/Version20201127000000.php +++ b/app/DoctrineMigrations/Version20201127000000.php @@ -23,8 +23,6 @@ */ final class Version20201127000000 extends AbstractMigration { - const NAME = 'dtb_page'; - public function up(Schema $schema) : void { $count = $this->connection->fetchColumn("SELECT COUNT(*) FROM dtb_page WHERE url = 'entry_confirm'"); From 58ebb337eb9b5c65bad11d1fd3ff10264ada5b76 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 2 Dec 2020 14:42:11 +0900 Subject: [PATCH 128/207] =?UTF-8?q?=E3=83=9E=E3=83=BC=E3=82=B8=E3=83=9F?= =?UTF-8?q?=E3=82=B9=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv b/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv index fe3584d5f38..6614b1f00c8 100644 --- a/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv +++ b/src/Eccube/Resource/doctrine/import_csv/en/dtb_page.csv @@ -10,7 +10,7 @@ id,page_name,url,file_name,edit_type,author,description,keyword,create_date,upda -" +" 4,My Account,mypage,Mypage/index,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,noindex,,page, 5,My Account / Edit Customer Info (Form),mypage_change,Mypage/change,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,noindex,,page, 6,My Account / Edit Customer Info (Thank-you),mypage_change_complete,Mypage/change_complete,2,,,,2017-03-07 10:14:52,2017-03-07 10:14:52,noindex,,page, From 65bc130d61ff1abb0afc8544bb00dd30d065c488 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 2 Dec 2020 17:13:18 +0900 Subject: [PATCH 129/207] =?UTF-8?q?=E6=A9=9F=E7=A8=AE=E4=BE=9D=E5=AD=98?= =?UTF-8?q?=E6=96=87=E5=AD=97=E3=81=8C=E6=96=87=E5=AD=97=E5=8C=96=E3=81=91?= =?UTF-8?q?=E3=81=99=E3=82=8B=E4=B8=8D=E5=85=B7=E5=90=88=E3=82=92=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/AbstractCsvImportController.php | 2 +- .../Admin/Product/CsvImportControllerTest.php | 26 +++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/src/Eccube/Controller/Admin/AbstractCsvImportController.php b/src/Eccube/Controller/Admin/AbstractCsvImportController.php index 8a695b84330..6587c7e7254 100644 --- a/src/Eccube/Controller/Admin/AbstractCsvImportController.php +++ b/src/Eccube/Controller/Admin/AbstractCsvImportController.php @@ -54,7 +54,7 @@ protected function getImportData(UploadedFile $formFile) } } else { // アップロードされたファイルがUTF-8以外は文字コード変換を行う - $encode = StringUtil::characterEncoding($file); + $encode = StringUtil::characterEncoding($file, ['UTF-8', 'sjis-win', 'SJIS', 'EUC-JP', 'ASCII', 'JIS']); if (!empty($encode) && $encode != 'UTF-8') { $file = mb_convert_encoding($file, 'UTF-8', $encode); } diff --git a/tests/Eccube/Tests/Web/Admin/Product/CsvImportControllerTest.php b/tests/Eccube/Tests/Web/Admin/Product/CsvImportControllerTest.php index 5456d3fb04d..8d9c7c76029 100644 --- a/tests/Eccube/Tests/Web/Admin/Product/CsvImportControllerTest.php +++ b/tests/Eccube/Tests/Web/Admin/Product/CsvImportControllerTest.php @@ -964,4 +964,30 @@ public function testDeleteImage() $this->assertTrue(file_exists($dir . $DuplicatedImage->getFileName())); $this->assertFalse(file_exists($dir . $NotDuplicatedImage->getFileName())); } + + /** + * @see https://github.com/EC-CUBE/ec-cube/issues/4781 + */ + public function testSjisWinCsvTest() + { + // CSV生成 + $csv = $this->createCsvAsArray(); + $csv[1][2] = 'テスト①'; // 商品名:機種依存文字で設定 + $csv[1][3] = 'sjis-win-test'; + $this->filepath = $this->createCsvFromArray($csv); + + // sjis-winに変換 + $content = file_get_contents($this->filepath); + $content = mb_convert_encoding($content, 'sjis-win', 'UTF-8'); + file_put_contents($this->filepath, $content); + + $this->scenario(); + + $Product = $this->productRepo->findOneBy(['note' => 'sjis-win-test']); + + // 文字化けしないことを確認 + $this->expected = 'テスト①'; + $this->actual = $Product->getName(); + $this->verify(); + } } From 87ef07e07d802ca837934bae2bcc04954d30648e Mon Sep 17 00:00:00 2001 From: Tao Sasaki <485749+tao-s@users.noreply.github.com> Date: Fri, 4 Dec 2020 01:14:20 +0900 Subject: [PATCH 130/207] =?UTF-8?q?=E4=BE=A1=E6=A0=BC=E3=80=81=E3=82=AB?= =?UTF-8?q?=E3=83=BC=E3=83=88=E3=83=9C=E3=82=BF=E3=83=B3=E3=81=AE=E6=96=87?= =?UTF-8?q?=E8=A8=80=E3=82=92text=E3=81=8B=E3=82=89html=E3=81=AB=E5=A4=89?= =?UTF-8?q?=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit カートボタンにアイコンなどhtmlを追加している場合に、規格選択によってそれが消えてしまう不具合の対応 --- html/template/default/assets/js/eccube.js | 24 +++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/html/template/default/assets/js/eccube.js b/html/template/default/assets/js/eccube.js index 258a761635d..67f7d8a5544 100644 --- a/html/template/default/assets/js/eccube.js +++ b/html/template/default/assets/js/eccube.js @@ -92,26 +92,26 @@ var $cartbtn = $form.parent().find('.add-cart').first(); if (typeof this.product_cart_origin === 'undefined') { // 初期値を保持しておく - this.product_cart_origin = $cartbtn.text(); + this.product_cart_origin = $cartbtn.html(); } $cartbtn.prop('disabled', false); - $cartbtn.text(this.product_cart_origin); + $cartbtn.html(this.product_cart_origin); // 通常価格 var $price01 = $form.parent().find('.price01-default').first(); if (typeof this.price01_origin === 'undefined') { // 初期値を保持しておく - this.price01_origin = $price01.text(); + this.price01_origin = $price01.html(); } - $price01.text(this.price01_origin); + $price01.html(this.price01_origin); // 販売価格 var $price02 = $form.parent().find('.price02-default').first(); if (typeof price02_origin[product_id] === 'undefined') { // 初期値を保持しておく - price02_origin[product_id] = $price02.text(); + price02_origin[product_id] = $price02.html(); } - $price02.text(price02_origin[product_id]); + $price02.html(price02_origin[product_id]); // 商品規格 var $product_class_id_dynamic = $form.find('[id^=ProductClass]'); @@ -130,38 +130,38 @@ var $cartbtn = $form.parent().find('.add-cart').first(); if (typeof this.product_cart_origin === 'undefined') { // 初期値を保持しておく - this.product_cart_origin = $cartbtn.text(); + this.product_cart_origin = $cartbtn.html(); } if (classcat2 && classcat2.stock_find === false) { $cartbtn.prop('disabled', true); $cartbtn.text('ただいま品切れ中です'); } else { $cartbtn.prop('disabled', false); - $cartbtn.text(this.product_cart_origin); + $cartbtn.html(this.product_cart_origin); } // 通常価格 var $price01 = $form.parent().find('.price01-default').first(); if (typeof this.price01_origin === 'undefined') { // 初期値を保持しておく - this.price01_origin = $price01.text(); + this.price01_origin = $price01.html(); } if (classcat2 && typeof classcat2.price01_inc_tax !== 'undefined' && String(classcat2.price01_inc_tax).length >= 1) { $price01.text('¥' + classcat2.price01_inc_tax); } else { - $price01.text(this.price01_origin); + $price01.html(this.price01_origin); } // 販売価格 var $price02 = $form.parent().find('.price02-default').first(); if (typeof price02_origin[product_id] === 'undefined') { // 初期値を保持しておく - price02_origin[product_id] = $price02.text(); + price02_origin[product_id] = $price02.html(); } if (classcat2 && typeof classcat2.price02_inc_tax !== 'undefined' && String(classcat2.price02_inc_tax).length >= 1) { $price02.text('¥' + classcat2.price02_inc_tax); } else { - $price02.text(price02_origin[product_id]); + $price02.html(price02_origin[product_id]); } // ポイント From f3aedc8bc2e622fa0ab7d20ab8ed832d4d22764d Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 8 Dec 2020 15:49:21 +0900 Subject: [PATCH 131/207] =?UTF-8?q?=E3=82=A8=E3=83=B3=E3=82=B3=E3=83=BC?= =?UTF-8?q?=E3=83=87=E3=82=A3=E3=83=B3=E3=82=B0=E6=8C=87=E5=AE=9A=E3=82=92?= =?UTF-8?q?=E3=83=91=E3=83=A9=E3=83=A1=E3=83=BC=E3=82=BF=E3=81=AB=E8=A8=AD?= =?UTF-8?q?=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/config/eccube/packages/eccube.yaml | 2 ++ src/Eccube/Controller/Admin/AbstractCsvImportController.php | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/app/config/eccube/packages/eccube.yaml b/app/config/eccube/packages/eccube.yaml index 907d1c51d27..68964166558 100644 --- a/app/config/eccube/packages/eccube.yaml +++ b/app/config/eccube/packages/eccube.yaml @@ -73,6 +73,8 @@ parameters: eccube_csv_export_separator: , # 出力エンコーディング eccube_csv_export_encoding: SJIS-win + # 入力エンコーディング + eccube_csv_import_encoding: ['UTF-8', 'sjis-win', 'SJIS', 'EUC-JP', 'ASCII', 'JIS'] # 日付のフォーマット eccube_csv_export_date_format: 'Y-m-d H:i:s' # 複数データの区切り文字 diff --git a/src/Eccube/Controller/Admin/AbstractCsvImportController.php b/src/Eccube/Controller/Admin/AbstractCsvImportController.php index 6587c7e7254..32afaac8fb7 100644 --- a/src/Eccube/Controller/Admin/AbstractCsvImportController.php +++ b/src/Eccube/Controller/Admin/AbstractCsvImportController.php @@ -54,7 +54,7 @@ protected function getImportData(UploadedFile $formFile) } } else { // アップロードされたファイルがUTF-8以外は文字コード変換を行う - $encode = StringUtil::characterEncoding($file, ['UTF-8', 'sjis-win', 'SJIS', 'EUC-JP', 'ASCII', 'JIS']); + $encode = StringUtil::characterEncoding($file, $this->eccubeConfig['eccube_csv_import_encoding']); if (!empty($encode) && $encode != 'UTF-8') { $file = mb_convert_encoding($file, 'UTF-8', $encode); } From 6ed468ad6214ee7a29806323e0a5d3c2928dd2e6 Mon Sep 17 00:00:00 2001 From: kiy0taka Date: Tue, 8 Dec 2020 20:02:02 +0900 Subject: [PATCH 132/207] =?UTF-8?q?SJIS-win=E3=81=A7=E7=B5=B1=E4=B8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/config/eccube/packages/eccube.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/config/eccube/packages/eccube.yaml b/app/config/eccube/packages/eccube.yaml index 68964166558..620cc8851df 100644 --- a/app/config/eccube/packages/eccube.yaml +++ b/app/config/eccube/packages/eccube.yaml @@ -74,7 +74,7 @@ parameters: # 出力エンコーディング eccube_csv_export_encoding: SJIS-win # 入力エンコーディング - eccube_csv_import_encoding: ['UTF-8', 'sjis-win', 'SJIS', 'EUC-JP', 'ASCII', 'JIS'] + eccube_csv_import_encoding: ['UTF-8', 'SJIS-win', 'SJIS', 'EUC-JP', 'ASCII', 'JIS'] # 日付のフォーマット eccube_csv_export_date_format: 'Y-m-d H:i:s' # 複数データの区切り文字 From b3cc4f76afe5a903406ede02515439ef49d8380c Mon Sep 17 00:00:00 2001 From: Kiyoshi Yamamura Date: Thu, 10 Dec 2020 18:15:23 +0900 Subject: [PATCH 133/207] =?UTF-8?q?.gitignore=E3=81=AE=E8=A6=8B=E7=9B=B4?= =?UTF-8?q?=E3=81=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 13 +++---------- html/user_data/.gitkeep | 0 2 files changed, 3 insertions(+), 10 deletions(-) create mode 100644 html/user_data/.gitkeep diff --git a/.gitignore b/.gitignore index 6910581b4ad..7502edb41b0 100644 --- a/.gitignore +++ b/.gitignore @@ -2,16 +2,12 @@ !.gitmodule composer.phar /vendor/ -/node_modules/ +node_modules /var/* !/var/.gitkeep -/app/cache/* -!/app/cache/.gitkeep -/app/log/* -!/app/log/.gitkeep +!/var/.htaccess /app/Plugin/* !/app/Plugin/.gitkeep -!/app/Plugin/ExamplePlugin /app/PluginData/* !/app/PluginData/.gitkeep /app/template/* @@ -23,21 +19,18 @@ composer.phar !/app/proxy/entity/.gitkeep /html/plugin/* !/html/plugin/.gitkeep -/html/install/temp/* /html/upload/save_image/* !/html/upload/save_image/.gitkeep /html/upload/temp_image/* !/html/upload/temp_image/.gitkeep -/html/upload/temp_plugin/* /html/template/* !/html/template/admin !/html/template/default !/html/template/install /html/user_data/* +!/html/user_data/.gitkeep !/html/user_data/assets/css/customize.css !/html/user_data/assets/js/customize.js -!/html/user_data/.gitkeep -/src/Eccube/Resource/config/*.dist.php /tests/tmp/* /reports/* .idea diff --git a/html/user_data/.gitkeep b/html/user_data/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d From 0c3e672e2496ed09d8360c4a64148644bab5a5be Mon Sep 17 00:00:00 2001 From: Kiyoshi Yamamura Date: Fri, 11 Dec 2020 00:42:46 +0900 Subject: [PATCH 134/207] =?UTF-8?q?.gitignore=E3=81=AE=E8=A6=8B=E7=9B=B4?= =?UTF-8?q?=E3=81=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 7502edb41b0..8e4f5aae4f4 100644 --- a/.gitignore +++ b/.gitignore @@ -21,6 +21,7 @@ node_modules !/html/plugin/.gitkeep /html/upload/save_image/* !/html/upload/save_image/.gitkeep +!/html/upload/save_image/no_image_product.png /html/upload/temp_image/* !/html/upload/temp_image/.gitkeep /html/template/* From 0180c8faaf04e6f919cc1b8649d641eb527f121e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 10 Dec 2020 23:56:58 +0000 Subject: [PATCH 135/207] Bump ini from 1.3.5 to 1.3.7 Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.7. - [Release notes](https://github.com/isaacs/ini/releases) - [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.7) Signed-off-by: dependabot[bot] --- package-lock.json | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4c00632800f..433d388aaa9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2363,12 +2363,6 @@ "dev": true, "optional": true }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, "is-fullwidth-code-point": { "version": "1.0.0", "bundled": true, @@ -3604,9 +3598,9 @@ "dev": true }, "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", + "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", "dev": true }, "interpret": { From f6e4e3d963a34504c80da3db2b0f8d5d2ace5f0b Mon Sep 17 00:00:00 2001 From: Kiyoshi Yamamura Date: Sat, 12 Dec 2020 04:32:06 +0900 Subject: [PATCH 136/207] =?UTF-8?q?=E5=AE=9A=E7=BE=A9=E3=81=95=E3=82=8C?= =?UTF-8?q?=E3=81=A6=E3=81=84=E3=81=AA=E3=81=84=E4=B8=8D=E8=A6=81=E3=81=AA?= =?UTF-8?q?=E3=83=A1=E3=83=83=E3=82=BB=E3=83=BC=E3=82=B8=E5=87=BA=E5=8A=9B?= =?UTF-8?q?=E3=82=92=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Controller/Mypage/DeliveryController.php | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/Eccube/Controller/Mypage/DeliveryController.php b/src/Eccube/Controller/Mypage/DeliveryController.php index f3ecbc1ed05..af8dd653a6f 100644 --- a/src/Eccube/Controller/Mypage/DeliveryController.php +++ b/src/Eccube/Controller/Mypage/DeliveryController.php @@ -141,8 +141,6 @@ public function edit(Request $request, $id = null) ); $this->eventDispatcher->dispatch(EccubeEvents::FRONT_MYPAGE_DELIVERY_EDIT_COMPLETE, $event); - $this->addSuccess('mypage.delivery.add.complete'); - return $this->redirect($this->generateUrl('mypage_delivery')); } @@ -180,8 +178,6 @@ public function delete(Request $request, CustomerAddress $CustomerAddress) ); $this->eventDispatcher->dispatch(EccubeEvents::FRONT_MYPAGE_DELIVERY_DELETE_COMPLETE, $event); - $this->addSuccess('mypage.address.delete.complete'); - log_info('お届け先削除完了', [$CustomerAddress->getId()]); return $this->redirect($this->generateUrl('mypage_delivery')); From 2a7769659e98a87b6b001645fa101a41b76f75b8 Mon Sep 17 00:00:00 2001 From: Kiyoshi Yamamura Date: Sat, 12 Dec 2020 07:21:15 +0900 Subject: [PATCH 137/207] =?UTF-8?q?Bootstrap4.2=E3=81=8B=E3=82=89=E3=83=9C?= =?UTF-8?q?=E3=82=BF=E3=83=B3=E5=86=85=E3=81=AE=E6=8A=98=E3=82=8A=E8=BF=94?= =?UTF-8?q?=E3=81=97=E3=81=8C=E3=81=95=E3=82=8C=E3=81=AA=E3=81=8F=E3=81=AA?= =?UTF-8?q?=E3=81=A3=E3=81=9F=E3=81=9F=E3=82=81=E6=98=8E=E7=A4=BA=E7=9A=84?= =?UTF-8?q?=E3=81=AB=E8=A8=AD=E5=AE=9A=E3=80=81=E3=83=97=E3=83=A9=E3=82=B0?= =?UTF-8?q?=E3=82=A4=E3=83=B3=E4=B8=80=E8=A6=A7=E7=94=BB=E9=9D=A2=E3=81=A7?= =?UTF-8?q?=E3=83=96=E3=83=A9=E3=82=A6=E3=82=B6=E5=B9=85=E3=81=8C=E5=B0=8F?= =?UTF-8?q?=E3=81=95=E3=81=91=E3=82=8C=E3=81=B0=E5=89=8A=E9=99=A4=E3=80=81?= =?UTF-8?q?=E6=9C=89=E5=8A=B9=E3=83=9C=E3=82=BF=E3=83=B3=E3=81=8C=E9=87=8D?= =?UTF-8?q?=E3=81=AA=E3=81=A3=E3=81=A6=E3=81=84=E3=81=9F=E3=81=9F=E3=82=81?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../template/admin/Setting/Shop/mail.twig | 2 +- .../template/admin/Setting/Shop/tax_rule.twig | 4 +- .../admin/Store/plugin_table_official.twig | 84 +++++++++---------- 3 files changed, 44 insertions(+), 46 deletions(-) diff --git a/src/Eccube/Resource/template/admin/Setting/Shop/mail.twig b/src/Eccube/Resource/template/admin/Setting/Shop/mail.twig index fba3766717c..49befea1ce2 100644 --- a/src/Eccube/Resource/template/admin/Setting/Shop/mail.twig +++ b/src/Eccube/Resource/template/admin/Setting/Shop/mail.twig @@ -166,7 +166,7 @@ file that was distributed with this source code.
-
diff --git a/src/Eccube/Resource/template/admin/Setting/Shop/tax_rule.twig b/src/Eccube/Resource/template/admin/Setting/Shop/tax_rule.twig index 178fef358b8..6f4910a4d89 100644 --- a/src/Eccube/Resource/template/admin/Setting/Shop/tax_rule.twig +++ b/src/Eccube/Resource/template/admin/Setting/Shop/tax_rule.twig @@ -160,8 +160,8 @@ file that was distributed with this source code.
- - + +
diff --git a/src/Eccube/Resource/template/admin/Store/plugin_table_official.twig b/src/Eccube/Resource/template/admin/Store/plugin_table_official.twig index e15ee228249..095f1a138be 100644 --- a/src/Eccube/Resource/template/admin/Store/plugin_table_official.twig +++ b/src/Eccube/Resource/template/admin/Store/plugin_table_official.twig @@ -68,7 +68,7 @@ $(function() { {{ Plugin.name }} {{ Plugin.version }}{{ Plugin.version }}

{{ Plugin.code }}

{% if Plugin.id %} @@ -107,48 +107,46 @@ $(function() { {% if Plugin.id %} -
-
-
- {% if Plugin.enabled == false %} - - - +
+
+ {% if Plugin.enabled == false %} + + + - {% endif %} -
-
- {% if Plugin.enabled %} - - - - {% else %} - - - - {% endif %} -
-
- {% if configPages[Plugin.code] is defined %} - - - - {% endif %} -
+ {% endif %} +
+
+ {% if Plugin.enabled %} + + + + {% else %} + + + + {% endif %} +
+
+ {% if configPages[Plugin.code] is defined %} + + + + {% endif %}
{% endif %} @@ -159,7 +157,7 @@ $(function() {
{% if officialPluginsDetail|length == 0 %} -

{{ 'admin.store.plugin.help'|trans }}

+

{{ 'admin.store.plugin.help'|trans }}

{% endif %} {% else %}
From a55ea14154c5c3634695a8d0d6458d4ccb21dedd Mon Sep 17 00:00:00 2001 From: Kiyoshi Yamamura Date: Sun, 13 Dec 2020 17:04:39 +0900 Subject: [PATCH 138/207] =?UTF-8?q?=E4=BC=9A=E5=93=A1CSV=E9=A0=85=E7=9B=AE?= =?UTF-8?q?=E3=81=AB=E3=83=9D=E3=82=A4=E3=83=B3=E3=83=88=E3=82=92=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/doctrine/import_csv/en/dtb_csv.csv | 1 + src/Eccube/Resource/doctrine/import_csv/ja/dtb_csv.csv | 1 + 2 files changed, 2 insertions(+) diff --git a/src/Eccube/Resource/doctrine/import_csv/en/dtb_csv.csv b/src/Eccube/Resource/doctrine/import_csv/en/dtb_csv.csv index c318f12e47b..ff4e67c4bf5 100644 --- a/src/Eccube/Resource/doctrine/import_csv/en/dtb_csv.csv +++ b/src/Eccube/Resource/doctrine/import_csv/en/dtb_csv.csv @@ -203,3 +203,4 @@ id,csv_type_id,creator_id,entity_name,field_name,reference_field_name,disp_name, 202,5,,Eccube\\Entity\\Category,Parent,id,Parent Category ID,4,1,2017-03-07 10:14:00,2017-03-07 10:14:00,csv 203,5,,Eccube\\Entity\\Category,level,,Level,5,1,2017-03-07 10:14:00,2017-03-07 10:14:00,csv 204,1,,Eccube\\Entity\\ProductClass,TaxRule,tax_rate,Tax Rate,"31","0","2017-03-07 10:14:00","2017-03-07 10:14:00","csv" +205,2,,Eccube\\Entity\\Customer,point,,Point,32,1,2017-03-07 10:14:00,2017-03-07 10:14:00,csv diff --git a/src/Eccube/Resource/doctrine/import_csv/ja/dtb_csv.csv b/src/Eccube/Resource/doctrine/import_csv/ja/dtb_csv.csv index 5052c153023..3ff0973ce08 100644 --- a/src/Eccube/Resource/doctrine/import_csv/ja/dtb_csv.csv +++ b/src/Eccube/Resource/doctrine/import_csv/ja/dtb_csv.csv @@ -203,3 +203,4 @@ "202","5",,"Eccube\\Entity\\Category","Parent","id","親カテゴリID","4","1","2017-03-07 10:14:00","2017-03-07 10:14:00","csv" "203","5",,"Eccube\\Entity\\Category","level",,"階層","5","1","2017-03-07 10:14:00","2017-03-07 10:14:00","csv" "204","1",,"Eccube\\Entity\\ProductClass","TaxRule","tax_rate","税率","31","0","2017-03-07 10:14:00","2017-03-07 10:14:00","csv" +"205","2",,"Eccube\\Entity\\Customer","point",,"保有ポイント","33","1","2017-03-07 10:14:00","2017-03-07 10:14:00","csv" From 8606b748711adcd70c709adbd8b63a67d2dd96d9 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Mon, 14 Dec 2020 16:39:44 +0900 Subject: [PATCH 139/207] =?UTF-8?q?CSV=E3=81=AE=E5=88=86=E5=89=B2=E3=82=A2?= =?UTF-8?q?=E3=83=83=E3=83=97=E3=83=AD=E3=83=BC=E3=83=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/config/eccube/packages/eccube.yaml | 1 + .../Admin/Product/CsvImportController.php | 144 +++++++++++- src/Eccube/Form/Type/Admin/CsvImportType.php | 12 + src/Eccube/Resource/locale/messages.en.yaml | 9 + src/Eccube/Resource/locale/messages.ja.yaml | 9 + .../template/admin/Product/csv_product.twig | 208 +++++++++++++++--- 6 files changed, 349 insertions(+), 34 deletions(-) diff --git a/app/config/eccube/packages/eccube.yaml b/app/config/eccube/packages/eccube.yaml index 620cc8851df..ff19b84b601 100644 --- a/app/config/eccube/packages/eccube.yaml +++ b/app/config/eccube/packages/eccube.yaml @@ -42,6 +42,7 @@ parameters: eccube_temp_image_dir: '%kernel.project_dir%/html/upload/temp_image' eccube_csv_size: 5 # post_max_size, upload_max_filesize に任せればよい? eccube_csv_temp_realdir: '%kernel.cache_dir%/%kernel.environment%/eccube' # upload_tmp_dir に任せればよい? + eccube_csv_split_lines: 100 eccube_default_password: '**********' eccube_deliv_addr_max: 20 eccube_deliv_date_end_max: 21 diff --git a/src/Eccube/Controller/Admin/Product/CsvImportController.php b/src/Eccube/Controller/Admin/Product/CsvImportController.php index bea93d69515..200cacac016 100644 --- a/src/Eccube/Controller/Admin/Product/CsvImportController.php +++ b/src/Eccube/Controller/Admin/Product/CsvImportController.php @@ -40,11 +40,15 @@ use Eccube\Util\StringUtil; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template; use Symfony\Component\Filesystem\Filesystem; +use Symfony\Component\Finder\Finder; use Symfony\Component\Form\FormInterface; +use Symfony\Component\HttpFoundation\File\UploadedFile; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\StreamedResponse; +use Symfony\Component\HttpKernel\Exception\BadRequestHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\Routing\Annotation\Route; +use Symfony\Component\Security\Csrf\CsrfTokenManagerInterface; use Symfony\Component\Validator\Constraints\GreaterThanOrEqual; use Symfony\Component\Validator\Validator\ValidatorInterface; @@ -107,6 +111,12 @@ class CsvImportController extends AbstractCsvImportController private $errors = []; + protected $isXmlHttpRequest = false; + + protected $csvFileNo = 1; + + protected $currentLineNo = 1; + /** * CsvImportController constructor. * @@ -167,6 +177,9 @@ public function csvProduct(Request $request, CacheUtil $cacheUtil) if ('POST' === $request->getMethod()) { $form->handleRequest($request); if ($form->isValid()) { + $this->isXmlHttpRequest = $form['is_xml_http_request']->getData(); + $this->csvFileNo = $form['csv_file_no']->getData(); + $formFile = $form['import_file']->getData(); if (!empty($formFile)) { log_info('商品CSV登録開始'); @@ -207,7 +220,8 @@ public function csvProduct(Request $request, CacheUtil $cacheUtil) $this->entityManager->getConnection()->beginTransaction(); // CSVファイルの登録処理 foreach ($data as $row) { - $line = $data->key() + 1; + $line = $this->convertLineNo($data->key() + 1); + $this->currentLineNo = $line; if ($headerSize != count($row)) { $message = trans('admin.common.csv_invalid_format_line', ['%line%' => $line]); $this->addErrors($message); @@ -653,8 +667,10 @@ public function csvProduct(Request $request, CacheUtil $cacheUtil) } log_info('商品CSV登録完了'); - $message = 'admin.common.csv_upload_complete'; - $this->session->getFlashBag()->add('eccube.admin.success', $message); + if (!$this->isXmlHttpRequest) { + $message = 'admin.common.csv_upload_complete'; + $this->session->getFlashBag()->add('eccube.admin.success', $message); + } $cacheUtil->clearDoctrineCache(); } @@ -869,6 +885,19 @@ protected function renderWithError($form, $headers, $rollback = true) $this->removeUploadedFile(); + if ($this->isXmlHttpRequest) { + return $this->json([ + 'success' => !$this->hasErrors(), + 'success_message' => trans('admin.common.csv_upload_line_success', [ + '%from%' => $this->convertLineNo(2), + '%to%' => $this->currentLineNo]), + 'errors' => $this->errors, + 'error_message' => trans('admin.common.csv_upload_line_error',[ + '%from%' => $this->convertLineNo(2), + '%to%' => $this->currentLineNo]) + ]); + } + return [ 'form' => $form->createView(), 'headers' => $headers, @@ -1561,4 +1590,113 @@ private function makeProductCategory($Product, $Category, $sortNo) return $ProductCategory; } + + /** + * @Route("/%eccube_admin_route%/product/csv_split", name="admin_product_csv_split") + * @param Request $request + * @return \Symfony\Component\HttpFoundation\JsonResponse + */ + public function splitCsv(Request $request) + { + $this->isTokenValid(); + + if (!$request->isXmlHttpRequest()) { + throw new BadRequestHttpException(); + } + + $form = $this->formFactory->createBuilder(CsvImportType::class)->getForm(); + $form->handleRequest($request); + + if ($form->isSubmitted() && $form->isValid()) { + + $dir = $this->eccubeConfig['eccube_csv_temp_realdir']; + if (!file_exists($dir)) { + $fs = new Filesystem(); + $fs->mkdir($dir); + } + + $data = $form['import_file']->getData(); + $src = new \SplFileObject($data->getRealPath()); + $src->setFlags(\SplFileObject::READ_CSV | \SplFileObject::READ_AHEAD | \SplFileObject::SKIP_EMPTY | \SplFileObject::DROP_NEW_LINE); + + $fileNo = 1; + $fileName = StringUtil::random(8); + + $dist = new \SplFileObject($dir.'/'.$fileName.$fileNo.'.csv', 'w'); + $header = $src->current(); + $src->next(); + $dist->fputcsv($header); + + while ($row = $src->current()) { + $dist->fputcsv($row); + if (($src->key() + $fileNo) % $this->eccubeConfig['eccube_csv_split_lines'] === 0) { + \error_log($dir.'/'.$fileName.$fileNo.'.csv'); + $fileNo++; + $dist = new \SplFileObject($dir.'/'.$fileName.$fileNo.'.csv', 'w'); + $dist->fputcsv($header); + } + $src->next(); + } + + return $this->json(['success' => true, 'file_name' => $fileName, 'max_file_no' => $fileNo]); + } + + return $this->json(['success' => false, 'message' => $form->getErrors(true ,true)]); + } + + /** + * @Route("/%eccube_admin_route%/product/csv_split_import", name="admin_product_csv_split_import") + * @param Request $request + * @return \Symfony\Component\HttpFoundation\JsonResponse + */ + public function importCsv(Request $request, CsrfTokenManagerInterface $tokenManager) + { + $this->isTokenValid(); + + if (!$request->isXmlHttpRequest()) { + throw new BadRequestHttpException(); + } + + $files = Finder::create() + ->in($this->eccubeConfig['eccube_csv_temp_realdir']) + ->name('*.csv') + ->files(); + + $choices = []; + foreach ($files as $file) { + $choices[$file->getBaseName()] = true; + } + + $filename = $request->get('file_name'); + if (!isset($choices[$filename])) { + throw new BadRequestHttpException(); + } + + $path = $this->eccubeConfig['eccube_csv_temp_realdir'].'/'.$filename; + $request->files->set('admin_csv_import', ['import_file' => new UploadedFile( + $path, + 'import.csv', + 'text/csv', + filesize($path), + null, + true + )]); + + $request->setMethod('POST'); + $request->request->set('admin_csv_import', [ + Constant::TOKEN_NAME => $tokenManager->getToken('admin_csv_import')->getValue(), + 'is_xml_http_request' => true, + 'csv_file_no' => $request->get('file_no'), + ]); + + return $this->forwardToRoute('admin_product_csv_import'); + } + + protected function convertLineNo($currentLineNo) { + if ($this->isXmlHttpRequest) { + return ($this->eccubeConfig['eccube_csv_split_lines'] - 1) * ($this->csvFileNo - 1) + $currentLineNo; + } + + return $currentLineNo; + } } diff --git a/src/Eccube/Form/Type/Admin/CsvImportType.php b/src/Eccube/Form/Type/Admin/CsvImportType.php index f0cf98307a4..3acf1a4c44b 100644 --- a/src/Eccube/Form/Type/Admin/CsvImportType.php +++ b/src/Eccube/Form/Type/Admin/CsvImportType.php @@ -15,7 +15,9 @@ use Eccube\Common\EccubeConfig; use Symfony\Component\Form\AbstractType; +use Symfony\Component\Form\Extension\Core\Type\CheckboxType; use Symfony\Component\Form\Extension\Core\Type\FileType; +use Symfony\Component\Form\Extension\Core\Type\IntegerType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\Validator\Constraints as Assert; @@ -52,6 +54,16 @@ public function buildForm(FormBuilderInterface $builder, array $options) 'maxSize' => $this->csvMaxSize.'M', ]), ], + ]) + ->add('is_xml_http_request', CheckboxType::class, [ + 'label' => false, + 'mapped' => false, + 'required' => false, + ]) + ->add('csv_file_no', IntegerType::class, [ + 'label' => false, + 'mapped' => false, + 'required' => false, ]); } diff --git a/src/Eccube/Resource/locale/messages.en.yaml b/src/Eccube/Resource/locale/messages.en.yaml index 0be04642f36..407fa14f12a 100644 --- a/src/Eccube/Resource/locale/messages.en.yaml +++ b/src/Eccube/Resource/locale/messages.en.yaml @@ -428,6 +428,8 @@ admin.common.next: Next admin.common.first: Go to First admin.common.last: Go to Last admin.common.back: Go back +admin.common.open_detail: 'Show details' +admin.common.close_detail: 'Close details' # Generic Labels, Messages admin.common.show: Display @@ -469,6 +471,9 @@ admin.common.csv_invalid_can_not: '%name% is invalid in the line %line%' admin.common.csv_invalid_image: 'Your are not allowed to use "/" or "../" as suffix in %name% in the %line%' admin.common.csv_invalid_foreign_key: 'You are unable to delete %name% in the line %line% because it has related data' admin.common.csv_invalid_description_detail_upper_limit: '%name% should be less than %max% characters in the line %line%.' +admin.common.csv_upload_in_progress: 'Uploading CSV file ...' +admin.common.csv_upload_line_success: 'The %from% to %to% lines have been registered.' +admin.common.csv_upload_line_error: 'An error occurred on lines %from% to %to%.' admin.common.drag_and_drop_description: You can change the order of the items by drag & drop. admin.common.drag_and_drop_image_description: Drag & drop the images or admin.common.delete_modal__title: Delete @@ -744,6 +749,10 @@ admin.product.category_csv.parent_category_id_description: '' admin.product.category_csv.delete_flag_col: Category Deletion Flag admin.product.category_csv.delete_flag_description: 'Specify 0: Upload or 1: Delete. If unspecified, it is set to 0.' +# Product CSV +admin.product.product_csv_upload__title: 'Upload product CSV' +admin.product.product_csv_upload__message: 'Upload the product CSV file. Is it OK?' + #------------------------------------------------------------------------------------ # Orders #------------------------------------------------------------------------------------ diff --git a/src/Eccube/Resource/locale/messages.ja.yaml b/src/Eccube/Resource/locale/messages.ja.yaml index 4b88d36091b..ea8de786636 100644 --- a/src/Eccube/Resource/locale/messages.ja.yaml +++ b/src/Eccube/Resource/locale/messages.ja.yaml @@ -428,6 +428,8 @@ admin.common.next: 次へ admin.common.first: 最初へ admin.common.last: 最後へ admin.common.back: 戻る +admin.common.open_detail: '詳細を表示' +admin.common.close_detail: '詳細を閉じる' # 汎用ラベル, メッセージ admin.common.show: 表示 @@ -469,6 +471,9 @@ admin.common.csv_invalid_can_not: '%line%行目の%name%は設定できません admin.common.csv_invalid_image: '%line%行目の%name%には末尾に"/"や"../"を使用できません' admin.common.csv_invalid_foreign_key: '%line%行目の%name%は関連するデータがあるため削除できません' admin.common.csv_invalid_description_detail_upper_limit: '%line%行目の%name%は%max%文字以下の文字列を指定してください。' +admin.common.csv_upload_in_progress: 'CSVファイルのアップロード中...' +admin.common.csv_upload_line_success: '%from%行目〜%to%行目を登録しました。' +admin.common.csv_upload_line_error: '%from%行目〜%to%行目でエラーが発生しました。' admin.common.drag_and_drop_description: 項目の順番はドラッグ&ドロップでも変更可能です。 admin.common.drag_and_drop_image_description: 画像をドラッグ&ドロップまたは admin.common.delete_modal__title: 削除します @@ -744,6 +749,10 @@ admin.product.category_csv.parent_category_id_description: '' admin.product.category_csv.delete_flag_col: カテゴリ削除フラグ admin.product.category_csv.delete_flag_description: 0:登録 1:削除を指定します。未指定の場合、0として扱います。 +# 商品CSV +admin.product.product_csv_upload__title: '商品CSVをアップロードします' +admin.product.product_csv_upload__message: '商品CSVファイルをアップロードします。よろしいですか?' + #------------------------------------------------------------------------------------ # 受注 #------------------------------------------------------------------------------------ diff --git a/src/Eccube/Resource/template/admin/Product/csv_product.twig b/src/Eccube/Resource/template/admin/Product/csv_product.twig index 4689db6d614..73cd25f234e 100644 --- a/src/Eccube/Resource/template/admin/Product/csv_product.twig +++ b/src/Eccube/Resource/template/admin/Product/csv_product.twig @@ -18,34 +18,156 @@ file that was distributed with this source code. {% form_theme form '@admin/Form/bootstrap_4_horizontal_layout.html.twig' %} {% block javascript %} - + + +{% endblock %} {% block main %}
@@ -56,8 +67,13 @@ file that was distributed with this source code. {{ form_widget(OrderStatus.name) }} {{ form_errors(OrderStatus.name) }} - - {{ form_widget(OrderStatus.color) }} + +
+ {{ form_widget(OrderStatus.color) }} + + + +
{{ form_errors(OrderStatus.color) }} From 71f8df3ea75eae1d292e1fd93eb6b59337052418 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 20 Jan 2021 12:38:48 +0900 Subject: [PATCH 174/207] =?UTF-8?q?=E3=83=A1=E3=83=8B=E3=83=A5=E3=83=BC?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E3=81=AE=E5=A4=89=E6=9B=B4=E3=80=81=E3=83=A1?= =?UTF-8?q?=E3=83=83=E3=82=BB=E3=83=BC=E3=82=B8ID=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/config/eccube/packages/eccube_nav.yaml | 6 ++-- .../Shop/OrderStatusController.php} | 10 +++--- src/Eccube/Resource/locale/messages.ja.yaml | 14 +++++++++ .../Shop/order_status.twig} | 31 +++++++++++-------- 4 files changed, 40 insertions(+), 21 deletions(-) rename src/Eccube/Controller/Admin/{Order/StatusController.php => Setting/Shop/OrderStatusController.php} (87%) rename src/Eccube/Resource/template/admin/{Order/status.twig => Setting/Shop/order_status.twig} (75%) diff --git a/app/config/eccube/packages/eccube_nav.yaml b/app/config/eccube/packages/eccube_nav.yaml index b6ab67fd033..ebd6a83a66f 100644 --- a/app/config/eccube/packages/eccube_nav.yaml +++ b/app/config/eccube/packages/eccube_nav.yaml @@ -38,9 +38,6 @@ parameters: shipping_csv_import: name: admin.order.shipping_csv_upload url: admin_shipping_csv_import - order_status: - name: 対応状況管理 - url: admin_order_status customer: name: admin.customer.customer_management icon: fa-users @@ -115,6 +112,9 @@ parameters: shop_csv: name: admin.setting.shop.csv_setting url: admin_setting_shop_csv + shop_order_status: + name: admin.setting.shop.order_status_setting + url: admin_setting_shop_order_status system: name: admin.setting.system children: diff --git a/src/Eccube/Controller/Admin/Order/StatusController.php b/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php similarity index 87% rename from src/Eccube/Controller/Admin/Order/StatusController.php rename to src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php index 2d61752e4c6..e4356c83635 100644 --- a/src/Eccube/Controller/Admin/Order/StatusController.php +++ b/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php @@ -11,7 +11,7 @@ * file that was distributed with this source code. */ -namespace Eccube\Controller\Admin\Order; +namespace Eccube\Controller\Admin\Setting\Shop; use Eccube\Controller\AbstractController; use Eccube\Form\Type\Admin\OrderStatusType; @@ -22,7 +22,7 @@ use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Routing\Annotation\Route; -class StatusController extends AbstractController +class OrderStatusController extends AbstractController { /** * @var OrderStatusRepository @@ -46,8 +46,8 @@ public function __construct( /** * 受注ステータス編集画面. * - * @Route("/%eccube_admin_route%/order/status", name="admin_order_status") - * @Template("@admin/Order/status.twig") + * @Route("/%eccube_admin_route%/setting/shop/order_status", name="admin_setting_shop_order_status") + * @Template("@admin/Setting/Shop/order_status.twig") */ public function index(Request $request) { @@ -78,7 +78,7 @@ public function index(Request $request) $this->addSuccess('admin.common.save_complete', 'admin'); - return $this->redirectToRoute('admin_order_status'); + return $this->redirectToRoute('admin_setting_shop_order_status'); } return [ diff --git a/src/Eccube/Resource/locale/messages.ja.yaml b/src/Eccube/Resource/locale/messages.ja.yaml index 7e2cc2c8998..2f6b5e89805 100644 --- a/src/Eccube/Resource/locale/messages.ja.yaml +++ b/src/Eccube/Resource/locale/messages.ja.yaml @@ -1072,6 +1072,7 @@ admin.setting.shop.delivery_setting: 配送方法設定 admin.setting.shop.tax_setting: 税率設定 admin.setting.shop.mail_setting: メール設定 admin.setting.shop.csv_setting: CSV出力項目設定 +admin.setting.shop.order_status_setting: 受注対応状況設定 admin.setting.system: システム設定 admin.setting.system.member_management: メンバー管理 admin.setting.system.member_password_change: パスワード変更 @@ -1189,6 +1190,16 @@ admin.setting.shop.csv.how_to_use: | 出力する項目の順序は[項目順序]ボタンで変更することができます。 複数の項目を選択する場合はctrlキー(Macの場合はcommandキー)を押しながら項目を押します。shiftキーを押しながら選択すると範囲選択ができます。 +#------------------------------------------------------------------------------------ +# 設定:店舗設定:受注対応状況設定 +#------------------------------------------------------------------------------------ + +admin.setting.shop.order_status.order_status: 受注対応状況 +admin.setting.shop.order_status.id: ID +admin.setting.shop.order_status.name: 名称 +admin.setting.shop.order_status.color: 色 +admin.setting.shop.order_status.display_order_count: 件数表示 + #------------------------------------------------------------------------------------ # 設定:システム設定:メンバー管理 / パスワード変更 #------------------------------------------------------------------------------------ @@ -1594,6 +1605,9 @@ tooltip.setting.shop.tax_setting: 商品共通の税率を設定できます。 tooltip.setting.shop.mail.mail_template: 既存のメールテンプレートを選択してください。以下に内容が表示されます。 tooltip.setting.shop.csv.csv_columns: 各種のデータをCSVで出力できます。出力したい項目をこちらで設定することが可能です。 tooltip.setting.shop.csv.csv_type: 設定したいCSVの種類を指定してください。 +tooltip.setting.shop.order_status.order_status: 受注管理で利用される対応状況の設定を行います。名称、色、件数表示の設定が可能です。 +tooltip.setting.shop.order_status.color: 対応状況の色を設定できます。 +tooltip.setting.shop.order_status.display_order_count: 対応状況ごとの受注件数の表示・非表示を設定できます。 tooltip.setting.system.member.authority: 権限管理で設定した権限を選択できます。 tooltip.setting.system.member.work: 一時的に非稼働にすることが可能です。必要ない場合はメンバー一覧より削除してください。 tooltip.setting.system.security.admin_url: 管理画面にログインするためのURLを指定します。推測されにくいURLを指定して下さい。 diff --git a/src/Eccube/Resource/template/admin/Order/status.twig b/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig similarity index 75% rename from src/Eccube/Resource/template/admin/Order/status.twig rename to src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig index 8e7501775cf..547c6a0d7f2 100644 --- a/src/Eccube/Resource/template/admin/Order/status.twig +++ b/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig @@ -11,10 +11,11 @@ file that was distributed with this source code. {% extends '@admin/default_frame.twig' %} -{% set menus = ['order', 'order_status'] %} +{% set menus = ['setting', 'shop', 'shop_order_status'] %} + +{% block title %}{{ 'admin.setting.shop.order_status_setting'|trans }}{% endblock %} +{% block sub_title %}{{ 'admin.setting.shop'|trans }}{% endblock %} -{% block title %}{{ '対応状況管理'|trans }}{% endblock %} -{% block sub_title %}{{ 'admin.order.order_management'|trans }}{% endblock %} {% form_theme form '@admin/Form/bootstrap_4_horizontal_layout.html.twig' %} {% block javascript %} @@ -31,39 +32,43 @@ file that was distributed with this source code.
-
+ {{ form_widget(form._token) }}
-
- {{ '対応状況管理'|trans|nl2br }} +
+ {{ 'admin.setting.shop.order_status.order_status'|trans }}
- {% for OrderStatus in form.OrderStatuses %} - - From bbec7b8442c7e45c0ee1c67ae8283ef4bd798cf0 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 20 Jan 2021 12:43:56 +0900 Subject: [PATCH 175/207] cs fix --- .../Admin/Setting/Shop/OrderStatusController.php | 1 - src/Eccube/Form/Type/Admin/OrderStatusType.php | 16 ++-------------- 2 files changed, 2 insertions(+), 15 deletions(-) diff --git a/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php b/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php index e4356c83635..4cb8ad307b3 100644 --- a/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php +++ b/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php @@ -29,7 +29,6 @@ class OrderStatusController extends AbstractController */ protected $orderStatusRepository; - /** * @var OrderStatusColorRepository */ diff --git a/src/Eccube/Form/Type/Admin/OrderStatusType.php b/src/Eccube/Form/Type/Admin/OrderStatusType.php index fb0225765bd..cdd7d8e7a6b 100644 --- a/src/Eccube/Form/Type/Admin/OrderStatusType.php +++ b/src/Eccube/Form/Type/Admin/OrderStatusType.php @@ -13,14 +13,10 @@ namespace Eccube\Form\Type\Admin; -use Doctrine\DBAL\Types\IntegerType; use Eccube\Entity\Master\OrderStatus; use Eccube\Form\Type\ToggleSwitchType; use Eccube\Repository\Master\OrderStatusColorRepository; -use Eccube\Repository\Master\OrderStatusRepository; use Symfony\Component\Form\AbstractType; -use Symfony\Component\Form\Extension\Core\Type\CheckboxType; -use Symfony\Component\Form\Extension\Core\Type\ColorType; use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\Form\FormEvent; @@ -30,21 +26,14 @@ class OrderStatusType extends AbstractType { - /** - * @var OrderStatusRepository - */ - protected $orderStatusRepository; - /** * @var OrderStatusColorRepository */ protected $orderStatusColorRepository; public function __construct( - OrderStatusRepository $orderStatusRepository, OrderStatusColorRepository $orderStatusColorRepository ) { - $this->orderStatusRepository = $orderStatusRepository; $this->orderStatusColorRepository = $orderStatusColorRepository; } @@ -57,14 +46,14 @@ public function buildForm(FormBuilderInterface $builder, array $options) ->add('name', TextType::class, [ 'constraints' => [ new Assert\NotBlank(), - new Assert\Length(['max' => 255]) + new Assert\Length(['max' => 255]), ], ]) ->add('color', TextType::class, [ 'mapped' => false, 'constraints' => [ new Assert\NotBlank(), - new Assert\Length(['max' => 255]) + new Assert\Length(['max' => 255]), ], ]) ->add('display_order_count', ToggleSwitchType::class, [ @@ -98,5 +87,4 @@ public function configureOptions(OptionsResolver $resolver) 'data_class' => OrderStatus::class, ]); } - } From 64b2864380d99f1dac802f95e51dcca402ee5b06 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 20 Jan 2021 14:14:20 +0900 Subject: [PATCH 176/207] =?UTF-8?q?Master/OrderStatusType=E3=81=A8?= =?UTF-8?q?=E7=B4=9B=E3=82=89=E3=82=8F=E3=81=97=E3=81=84=E3=81=AE=E3=81=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controller/Admin/Setting/Shop/OrderStatusController.php | 4 ++-- .../Admin/{OrderStatusType.php => OrderStatusSettingType.php} | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) rename src/Eccube/Form/Type/Admin/{OrderStatusType.php => OrderStatusSettingType.php} (98%) diff --git a/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php b/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php index 4cb8ad307b3..abd5d508485 100644 --- a/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php +++ b/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php @@ -14,7 +14,7 @@ namespace Eccube\Controller\Admin\Setting\Shop; use Eccube\Controller\AbstractController; -use Eccube\Form\Type\Admin\OrderStatusType; +use Eccube\Form\Type\Admin\OrderStatusSettingType; use Eccube\Repository\Master\OrderStatusColorRepository; use Eccube\Repository\Master\OrderStatusRepository; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template; @@ -57,7 +57,7 @@ public function index(Request $request) 'OrderStatuses', CollectionType::class, [ - 'entry_type' => OrderStatusType::class, + 'entry_type' => OrderStatusSettingType::class, 'data' => $OrderStatuses, ] ); diff --git a/src/Eccube/Form/Type/Admin/OrderStatusType.php b/src/Eccube/Form/Type/Admin/OrderStatusSettingType.php similarity index 98% rename from src/Eccube/Form/Type/Admin/OrderStatusType.php rename to src/Eccube/Form/Type/Admin/OrderStatusSettingType.php index cdd7d8e7a6b..a0d5081596e 100644 --- a/src/Eccube/Form/Type/Admin/OrderStatusType.php +++ b/src/Eccube/Form/Type/Admin/OrderStatusSettingType.php @@ -24,7 +24,7 @@ use Symfony\Component\OptionsResolver\OptionsResolver; use Symfony\Component\Validator\Constraints as Assert; -class OrderStatusType extends AbstractType +class OrderStatusSettingType extends AbstractType { /** * @var OrderStatusColorRepository From dd3c5916e0bda2fb90751dd259433181d36a9a28 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 20 Jan 2021 14:15:51 +0900 Subject: [PATCH 177/207] =?UTF-8?q?=E3=83=A6=E3=83=8B=E3=83=83=E3=83=88?= =?UTF-8?q?=E3=83=86=E3=82=B9=E3=83=88=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Shop/OrderStatusControllerTest.php | 105 ++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 tests/Eccube/Tests/Web/Admin/Setting/Shop/OrderStatusControllerTest.php diff --git a/tests/Eccube/Tests/Web/Admin/Setting/Shop/OrderStatusControllerTest.php b/tests/Eccube/Tests/Web/Admin/Setting/Shop/OrderStatusControllerTest.php new file mode 100644 index 00000000000..84cf487ed9e --- /dev/null +++ b/tests/Eccube/Tests/Web/Admin/Setting/Shop/OrderStatusControllerTest.php @@ -0,0 +1,105 @@ +orderStatusRepository = $this->entityManager->getRepository(OrderStatus::class); + $this->orderStatusColorRepository = $this->entityManager->getRepository(OrderStatusColor::class); + } + + public function testRouting() + { + $this->client->request('GET', $this->generateUrl('admin_setting_shop_order_status')); + $this->assertTrue($this->client->getResponse()->isSuccessful()); + } + + public function testSubmit() + { + $formData = $this->createFormData(); + $formData['OrderStatuses'][0]['name'] = 'テスト名称'; + $formData['OrderStatuses'][0]['color'] = 'テスト色'; + + $this->client->request('GET', $this->generateUrl('admin_setting_shop_order_status')); + $this->client->request( + 'POST', + $this->generateUrl('admin_setting_shop_order_status'), + ['form' => $formData] + ); + + $this->assertTrue($this->client->getResponse()->isRedirection()); + + $OrderStatus = $this->orderStatusRepository->findOneBy([], ['sort_no' => 'ASC']); + $OrderStatusColor = $this->orderStatusColorRepository->findOneBy([], ['sort_no' => 'ASC']); + + $this->assertSame('テスト名称', $OrderStatus->getName()); + $this->assertSame('テスト色', $OrderStatusColor->getName()); + } + + public function testSubmitWithError() + { + $formData = $this->createFormData(); + $formData['OrderStatuses'][0]['name'] = ''; + $formData['OrderStatuses'][0]['color'] = ''; + + $this->client->request('GET', $this->generateUrl('admin_setting_shop_order_status')); + $crawler = $this->client->request( + 'POST', + $this->generateUrl('admin_setting_shop_order_status'), + ['form' => $formData] + ); + + $this->assertFalse($this->client->getResponse()->isRedirection()); + $this->assertContains('入力されていません。', $crawler->text()); + } + + private function createFormData() + { + $form = [ + '_token' => 'dummy', + 'OrderStatuses' => [], + ]; + + $OrderStatuses = $this->orderStatusRepository->findBy([], ['sort_no' => 'ASC']); + + foreach ($OrderStatuses as $OrderStatus) { + $form['OrderStatuses'][] = [ + 'name' => $OrderStatus->getName(), + 'color' => $this->orderStatusColorRepository->find($OrderStatus->getId()), + 'display_order_count' => $OrderStatus->isDisplayOrderCount() ? '1' : '', + ]; + } + + return $form; + } +} From 724af229059e0bf60c34ee2bc1d1b7237277f2e6 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 20 Jan 2021 14:58:33 +0900 Subject: [PATCH 178/207] =?UTF-8?q?=E6=96=87=E8=A8=80=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Resource/template/admin/Setting/Shop/order_status.twig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig b/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig index 547c6a0d7f2..5c44dc463e1 100644 --- a/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig +++ b/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig @@ -102,7 +102,7 @@ file that was distributed with this source code.
- +
From 544e7b393f2eee79b9f535859b5c8cdc651ecdce Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 20 Jan 2021 14:58:44 +0900 Subject: [PATCH 179/207] =?UTF-8?q?E2E=E3=83=86=E3=82=B9=E3=83=88=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codeception/acceptance/EA07BasicinfoCest.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/codeception/acceptance/EA07BasicinfoCest.php b/codeception/acceptance/EA07BasicinfoCest.php index 89d33595cd9..d0be5d3c57c 100644 --- a/codeception/acceptance/EA07BasicinfoCest.php +++ b/codeception/acceptance/EA07BasicinfoCest.php @@ -15,6 +15,7 @@ use Page\Admin\DeliveryEditPage; use Page\Admin\DeliveryManagePage; use Page\Admin\MailSettingsPage; +use Page\Admin\OrderStatusSettingsPage; use Page\Admin\PaymentEditPage; use Page\Admin\PaymentManagePage; use Page\Admin\ShopSettingPage; @@ -272,6 +273,19 @@ public function basicinfo_CSV出力項目(\AcceptanceTester $I) $I->see('保存しました', CsvSettingsPage::$登録完了メッセージ); } + public function basicinfo_受注対応状況設定(\AcceptanceTester $I) + { + $I->wantTo('EA0711-UC01-T01 受注対応状況設定'); + + // 表示 + OrderStatusSettingsPage::go($I) + ->入力_名称('新規受付') + ->入力_色("#19406C") + ->登録(); + + $I->see('保存しました', OrderStatusSettingsPage::$登録完了メッセージ); + } + /** * EA10PluginCestではテストが失敗するため、ここでテストを行う */ From aef4d1eb4008ff2de09b6b857025ee595b159819 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 20 Jan 2021 15:07:17 +0900 Subject: [PATCH 180/207] =?UTF-8?q?message.en.yaml=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/locale/messages.en.yaml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/Eccube/Resource/locale/messages.en.yaml b/src/Eccube/Resource/locale/messages.en.yaml index 38950ae7569..61407ae6112 100644 --- a/src/Eccube/Resource/locale/messages.en.yaml +++ b/src/Eccube/Resource/locale/messages.en.yaml @@ -1072,6 +1072,7 @@ admin.setting.shop.delivery_setting: Delivery Settings admin.setting.shop.tax_setting: Taxes admin.setting.shop.mail_setting: Emails admin.setting.shop.csv_setting: CSV Outputs +admin.setting.shop.order_status_setting: Order Status admin.setting.system: System Settings admin.setting.system.member_management: Users admin.setting.system.member_password_change: Passwords @@ -1189,6 +1190,16 @@ admin.setting.shop.csv.how_to_use: | The item orders can be changed with [Item Orders] menus. To select multiple items, hold Ctrl (Windows) or Command (Mac) and select. Or hold Shift to select a range of items. +#------------------------------------------------------------------------------------ +# Settings:Store Settings : Order Status +#------------------------------------------------------------------------------------ + +admin.setting.shop.order_status.order_status: Order Status +admin.setting.shop.order_status.id: ID +admin.setting.shop.order_status.name: Name +admin.setting.shop.order_status.color: Color +admin.setting.shop.order_status.display_order_count: Number display + #------------------------------------------------------------------------------------ # Settings : Customers : Change Password #------------------------------------------------------------------------------------ @@ -1594,6 +1605,9 @@ tooltip.setting.shop.tax_setting: You can set the tax rates applicable to all pr tooltip.setting.shop.mail.mail_template: Please select an existing email template. Contents are displayed in the text field below. tooltip.setting.shop.csv.csv_columns: You can output various data in CSV format. You can specify the items for CSV output. tooltip.setting.shop.csv.csv_type: Specify the CSV file type. +tooltip.setting.shop.order_status.order_status: Set the order status used in order management. You can set the name, color, and number display. +tooltip.setting.shop.order_status.color: You can set the color of the order status. +tooltip.setting.shop.order_status.display_order_count: You can set the display / non-display of the number of orders received for each order status. tooltip.setting.system.member.authority: You can select the authorization you have set under Authorization. tooltip.setting.system.member.work: You can set customers to inactive temporarily. If they are no longer necessary, please delete from All Customers. tooltip.setting.system.security.admin_url: Set the URL to sign in to the Admin Console. Please specify a URL which is hardly guessed. From c634e1cf5267b298bfc44408f0cd9e8a2756bad7 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 20 Jan 2021 15:15:00 +0900 Subject: [PATCH 181/207] =?UTF-8?q?E2E=E3=83=86=E3=82=B9=E3=83=88=E3=81=AE?= =?UTF-8?q?=E3=82=B3=E3=83=9F=E3=83=83=E3=83=88=E6=BC=8F=E3=82=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Page/Admin/OrderStatusSettingsPage.php | 63 +++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 codeception/_support/Page/Admin/OrderStatusSettingsPage.php diff --git a/codeception/_support/Page/Admin/OrderStatusSettingsPage.php b/codeception/_support/Page/Admin/OrderStatusSettingsPage.php new file mode 100644 index 00000000000..2522552384f --- /dev/null +++ b/codeception/_support/Page/Admin/OrderStatusSettingsPage.php @@ -0,0 +1,63 @@ + div.c-container > div.c-contentsArea > div.alert.alert-success.alert-dismissible.fade.show.m-3 > span'; + + /** + * CsvSettingsPage constructor. + */ + public function __construct(\AcceptanceTester $I) + { + parent::__construct($I); + } + + public static function go($I) + { + $page = new self($I); + + return $page->goPage('/setting/shop/order_status', '受注対応状況設定店舗設定'); + } + + public static function at($I) + { + $page = new self($I); + $page->tester->see('受注対応状況設定店舗設定', '.c-pageTitle'); + + return $page; + } + + public function 入力_名称($value) + { + $this->tester->fillField(['id' => 'form_OrderStatuses_0_name'], $value); + + return $this; + } + + public function 入力_色($value) + { + $this->tester->fillField(['id' => 'form_OrderStatuses_0_color'], $value); + + return $this; + } + + public function 登録() + { + $this->tester->click('#ex-conversion-action > div > button'); + + return $this; + } +} From 7faff4d1016811ece8c8fe04944ffd014a3a4896 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Wed, 20 Jan 2021 16:01:39 +0900 Subject: [PATCH 182/207] =?UTF-8?q?null=E3=83=81=E3=82=A7=E3=83=83?= =?UTF-8?q?=E3=82=AF=E3=80=81=E6=96=87=E5=AD=97=E9=95=B7=E3=83=81=E3=82=A7?= =?UTF-8?q?=E3=83=83=E3=82=AF=E3=81=AE=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Setting/Shop/OrderStatusController.php | 6 ++++-- .../Form/Type/Admin/OrderStatusSettingType.php | 13 +++++++++++-- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php b/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php index abd5d508485..cbefb1918f2 100644 --- a/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php +++ b/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php @@ -70,8 +70,10 @@ public function index(Request $request) $this->entityManager->persist($OrderStatus); $OrderStatusColor = $this->orderStatusColorRepository->find($OrderStatus->getId()); - $OrderStatusColor->setName($child['color']->getData()); - $this->entityManager->persist($OrderStatusColor); + if (null !== $OrderStatusColor) { + $OrderStatusColor->setName($child['color']->getData()); + $this->entityManager->persist($OrderStatusColor); + } } $this->entityManager->flush(); diff --git a/src/Eccube/Form/Type/Admin/OrderStatusSettingType.php b/src/Eccube/Form/Type/Admin/OrderStatusSettingType.php index a0d5081596e..088ee331a85 100644 --- a/src/Eccube/Form/Type/Admin/OrderStatusSettingType.php +++ b/src/Eccube/Form/Type/Admin/OrderStatusSettingType.php @@ -13,6 +13,7 @@ namespace Eccube\Form\Type\Admin; +use Eccube\Common\EccubeConfig; use Eccube\Entity\Master\OrderStatus; use Eccube\Form\Type\ToggleSwitchType; use Eccube\Repository\Master\OrderStatusColorRepository; @@ -26,14 +27,22 @@ class OrderStatusSettingType extends AbstractType { + /** + * @var EccubeConfig + */ + protected $eccubeConfig; + /** * @var OrderStatusColorRepository */ protected $orderStatusColorRepository; public function __construct( + EccubeConfig $eccubeConfig, OrderStatusColorRepository $orderStatusColorRepository + ) { + $this->eccubeConfig = $eccubeConfig; $this->orderStatusColorRepository = $orderStatusColorRepository; } @@ -46,14 +55,14 @@ public function buildForm(FormBuilderInterface $builder, array $options) ->add('name', TextType::class, [ 'constraints' => [ new Assert\NotBlank(), - new Assert\Length(['max' => 255]), + new Assert\Length(['max' => $this->eccubeConfig['eccube_stext_len']]), ], ]) ->add('color', TextType::class, [ 'mapped' => false, 'constraints' => [ new Assert\NotBlank(), - new Assert\Length(['max' => 255]), + new Assert\Length(['max' => $this->eccubeConfig['eccube_stext_len']]), ], ]) ->add('display_order_count', ToggleSwitchType::class, [ From c27c4d4671ae472e53c0a3c7c8f8590fade2a570 Mon Sep 17 00:00:00 2001 From: hideki_okajima Date: Mon, 25 Jan 2021 17:21:18 +0900 Subject: [PATCH 183/207] npm update browser-sync --- package-lock.json | 926 ++++++++++++++++++++++++++++------------------ package.json | 2 +- 2 files changed, 560 insertions(+), 368 deletions(-) diff --git a/package-lock.json b/package-lock.json index 433d388aaa9..894c9d7f19f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -410,12 +410,6 @@ "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=", "dev": true }, - "async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true - }, "async-settle": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/async-settle/-/async-settle-1.0.0.tgz", @@ -465,21 +459,12 @@ "dev": true }, "axios": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.0.tgz", - "integrity": "sha512-1uvKqKQta3KBxIz14F2v06AEHZ/dIoeKfbTRkK1E5oqjDnuEerLmYTgJB5AiQZHJcljpg1TuRzdjDR06qNk0DQ==", + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", "dev": true, "requires": { - "follow-redirects": "1.5.10", - "is-buffer": "^2.0.2" - }, - "dependencies": { - "is-buffer": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", - "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==", - "dev": true - } + "follow-redirects": "^1.10.0" } }, "bach": { @@ -567,15 +552,15 @@ } }, "base64-arraybuffer": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", - "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=", + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz", + "integrity": "sha1-mBjHngWbE1X5fgQooBfIOOkLqBI=", "dev": true }, "base64id": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz", - "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", "dev": true }, "batch": { @@ -593,15 +578,6 @@ "tweetnacl": "^0.14.3" } }, - "better-assert": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", - "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", - "dev": true, - "requires": { - "callsite": "1.0.0" - } - }, "binary-extensions": { "version": "1.13.1", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", @@ -675,28 +651,28 @@ } }, "browser-sync": { - "version": "2.26.7", - "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.26.7.tgz", - "integrity": "sha512-lY3emme0OyvA2ujEMpRmyRy9LY6gHLuTr2/ABxhIm3lADOiRXzP4dgekvnDrQqZ/Ec2Fz19lEjm6kglSG5766w==", + "version": "2.26.14", + "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.26.14.tgz", + "integrity": "sha512-3TtpsheGolJT6UFtM2CZWEcGJmI4ZEvoCKiKE2bvcDnPxRkhQT4nIGVtfiyPcoHKXGM0LwMOZmYJNWfiNfVXWA==", "dev": true, "requires": { - "browser-sync-client": "^2.26.6", - "browser-sync-ui": "^2.26.4", + "browser-sync-client": "^2.26.14", + "browser-sync-ui": "^2.26.14", "bs-recipes": "1.3.4", "bs-snippet-injector": "^2.0.1", - "chokidar": "^2.0.4", + "chokidar": "^3.5.1", "connect": "3.6.6", "connect-history-api-fallback": "^1", "dev-ip": "^1.0.1", "easy-extender": "^2.3.4", - "eazy-logger": "^3", + "eazy-logger": "3.1.0", "etag": "^1.8.1", "fresh": "^0.5.2", "fs-extra": "3.0.1", - "http-proxy": "1.15.2", + "http-proxy": "^1.18.1", "immutable": "^3", - "localtunnel": "1.9.2", - "micromatch": "^3.1.10", + "localtunnel": "^2.0.1", + "micromatch": "^4.0.2", "opn": "5.3.0", "portscanner": "2.1.1", "qs": "6.2.3", @@ -707,15 +683,126 @@ "serve-index": "1.9.1", "serve-static": "1.13.2", "server-destroy": "1.0.1", - "socket.io": "2.1.1", - "ua-parser-js": "0.7.17", - "yargs": "6.4.0" + "socket.io": "2.4.0", + "ua-parser-js": "^0.7.18", + "yargs": "^15.4.1" + }, + "dependencies": { + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chokidar": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "dev": true, + "requires": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.3.1", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.5.0" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "dev": true, + "optional": true + }, + "glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "readdirp": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", + "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } } }, "browser-sync-client": { - "version": "2.26.6", - "resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.26.6.tgz", - "integrity": "sha512-mGrkZdNzttKdf/16I+y+2dTQxoMCIpKbVIMJ/uP8ZpnKu9f9qa/2CYVtLtbjZG8nsM14EwiCrjuFTGBEnT3Gjw==", + "version": "2.26.14", + "resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.26.14.tgz", + "integrity": "sha512-be0m1MchmKv/26r/yyyolxXcBi052aYrmaQep5nm8YNMjFcEyzv0ZoOKn/c3WEXNlEB/KeXWaw70fAOJ+/F1zQ==", "dev": true, "requires": { "etag": "1.8.1", @@ -725,16 +812,16 @@ } }, "browser-sync-ui": { - "version": "2.26.4", - "resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.26.4.tgz", - "integrity": "sha512-u20P3EsZoM8Pt+puoi3BU3KlbQAH1lAcV+/O4saF26qokrBqIDotmGonfWwoRbUmdxZkM9MBmA0K39ZTG1h4sA==", + "version": "2.26.14", + "resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.26.14.tgz", + "integrity": "sha512-6oT1sboM4KVNnWCCJDMGbRIeTBw97toMFQ+srImvwQ6J5t9KMgizaIX8HcKLiemsUMSJkgGM9RVKIpq2UblgOA==", "dev": true, "requires": { "async-each-series": "0.1.1", "connect-history-api-fallback": "^1", "immutable": "^3", "server-destroy": "1.0.1", - "socket.io-client": "^2.0.4", + "socket.io-client": "^2.4.0", "stream-throttle": "^0.1.3" } }, @@ -814,12 +901,6 @@ "caller-callsite": "^2.0.0" } }, - "callsite": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", - "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", - "dev": true - }, "callsites": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", @@ -1088,9 +1169,9 @@ } }, "commander": { - "version": "2.20.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.1.tgz", - "integrity": "sha512-cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg==", + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, "compare-versions": { @@ -1186,9 +1267,9 @@ } }, "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", "dev": true }, "copy-descriptor": { @@ -1452,6 +1533,12 @@ "integrity": "sha1-p2o+0YVb56ASu4rBbLgPPADcKPA=", "dev": true }, + "dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true + }, "duplexify": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", @@ -1484,12 +1571,12 @@ } }, "eazy-logger": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/eazy-logger/-/eazy-logger-3.0.2.tgz", - "integrity": "sha1-oyWqXlPROiIliJsqxBE7K5Y29Pw=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eazy-logger/-/eazy-logger-3.1.0.tgz", + "integrity": "sha512-/snsn2JqBtUSSstEl4R0RKjkisGHAhvYj89i7r3ytNUKW12y178KDZwXLXIgwDqLW6E/VRMT9qfld7wvFae8bQ==", "dev": true, "requires": { - "tfunk": "^3.0.1" + "tfunk": "^4.0.0" } }, "ecc-jsbn": { @@ -1536,19 +1623,44 @@ } }, "engine.io": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.1.tgz", - "integrity": "sha512-+VlKzHzMhaU+GsCIg4AoXF1UdDFjHHwMmMKqMJNDNLlUlejz58FCy4LBqB2YVJskHGYl06BatYWKP2TVdVXE5w==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.5.0.tgz", + "integrity": "sha512-21HlvPUKaitDGE4GXNtQ7PLP0Sz4aWLddMPw2VTyFz1FVZqu/kZsJUO8WNpKuE/OCL7nkfRaOui2ZCJloGznGA==", "dev": true, "requires": { "accepts": "~1.3.4", - "base64id": "1.0.0", - "cookie": "0.3.1", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "debug": "~4.1.0", + "engine.io-parser": "~2.2.0", + "ws": "~7.4.2" + } + }, + "engine.io-client": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.0.tgz", + "integrity": "sha512-12wPRfMrugVw/DNyJk34GQ5vIVArEcVMXWugQGGuw2XxUSztFNmJggZmv8IZlLyEdnpO1QB9LkcjeWewO2vxtA==", + "dev": true, + "requires": { + "component-emitter": "~1.3.0", + "component-inherit": "0.0.3", "debug": "~3.1.0", - "engine.io-parser": "~2.1.0", - "ws": "~3.3.1" + "engine.io-parser": "~2.2.0", + "has-cors": "1.1.0", + "indexof": "0.0.1", + "parseqs": "0.0.6", + "parseuri": "0.0.6", + "ws": "~7.4.2", + "xmlhttprequest-ssl": "~1.5.4", + "yeast": "0.1.2" }, "dependencies": { + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, "debug": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", @@ -1558,66 +1670,23 @@ "ms": "2.0.0" } }, - "engine.io-parser": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.3.tgz", - "integrity": "sha512-6HXPre2O4Houl7c4g7Ic/XzPnHBvaEmN90vtRO9uLmwtRqQmTOw0QMevL1TOfL2Cpu1VzsaTmMotQgMdkzGkVA==", - "dev": true, - "requires": { - "after": "0.8.2", - "arraybuffer.slice": "~0.0.7", - "base64-arraybuffer": "0.1.5", - "blob": "0.0.5", - "has-binary2": "~1.0.2" - } - }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true - }, - "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - } } } }, - "engine.io-client": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.4.0.tgz", - "integrity": "sha512-a4J5QO2k99CM2a0b12IznnyQndoEvtA4UAldhGzKqnHf42I3Qs2W5SPnDvatZRcMaNZs4IevVicBPayxYt6FwA==", - "dev": true, - "requires": { - "component-emitter": "1.2.1", - "component-inherit": "0.0.3", - "debug": "~4.1.0", - "engine.io-parser": "~2.2.0", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "ws": "~6.1.0", - "xmlhttprequest-ssl": "~1.5.4", - "yeast": "0.1.2" - } - }, "engine.io-parser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.0.tgz", - "integrity": "sha512-6I3qD9iUxotsC5HEMuuGsKA0cXerGz+4uGcXQEkfBidgKf0amsjrrtwcbwK/nzpZBxclXlV7gGl9dgWvu4LF6w==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.1.tgz", + "integrity": "sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg==", "dev": true, "requires": { "after": "0.8.2", "arraybuffer.slice": "~0.0.7", - "base64-arraybuffer": "0.1.5", + "base64-arraybuffer": "0.1.4", "blob": "0.0.5", "has-binary2": "~1.0.2" } @@ -1692,6 +1761,12 @@ "es6-symbol": "^3.1.1" } }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", @@ -1717,9 +1792,9 @@ "dev": true }, "eventemitter3": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz", - "integrity": "sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg=", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", "dev": true }, "execa": { @@ -2067,30 +2142,10 @@ } }, "follow-redirects": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", - "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", - "dev": true, - "requires": { - "debug": "=3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.1.tgz", + "integrity": "sha512-SSG5xmZh1mkPGyKzjZP8zLjltIfpW32Y5QpdNJyjcfGxK3qo3NDDkZOZSFiGn1A6SclQxY9GzEwAHQ3dmYRWpg==", + "dev": true }, "for-in": { "version": "1.0.2", @@ -3374,13 +3429,14 @@ } }, "http-proxy": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.15.2.tgz", - "integrity": "sha1-ZC/cr/5S00SNK9o7AHnpQJBk2jE=", + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", "dev": true, "requires": { - "eventemitter3": "1.x.x", - "requires-port": "1.x.x" + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" } }, "http-signature": { @@ -4035,9 +4091,9 @@ } }, "limiter": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/limiter/-/limiter-1.1.4.tgz", - "integrity": "sha512-XCpr5bElgDI65vVgstP8TWjv6/QKWm9GU5UG0Pr5sLQ3QLo8NVKsioe+Jed5/3vFOe3IQuqE7DKwTvKQkjTHvg==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/limiter/-/limiter-1.1.5.tgz", + "integrity": "sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA==", "dev": true }, "lines-and-columns": { @@ -4314,36 +4370,129 @@ } }, "localtunnel": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-1.9.2.tgz", - "integrity": "sha512-NEKF7bDJE9U3xzJu3kbayF0WTvng6Pww7tzqNb/XtEARYwqw7CKEX7BvOMg98FtE9es2CRizl61gkV3hS8dqYg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-2.0.1.tgz", + "integrity": "sha512-LiaI5wZdz0xFkIQpXbNI62ZnNn8IMsVhwxHmhA+h4vj8R9JG/07bQHWwQlyy7b95/5fVOCHJfIHv+a5XnkvaJA==", "dev": true, "requires": { - "axios": "0.19.0", - "debug": "4.1.1", + "axios": "0.21.1", + "debug": "4.3.1", "openurl": "1.1.1", - "yargs": "6.6.0" + "yargs": "16.2.0" }, "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "y18n": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.5.tgz", + "integrity": "sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg==", + "dev": true + }, "yargs": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", - "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^4.2.0" + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" } } } @@ -4727,9 +4876,9 @@ "dev": true }, "mitt": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.1.3.tgz", - "integrity": "sha512-mUDCnVNsAi+eD6qA0HkRkwYczbLHJ49z17BGe2PYRhZL4wpZUFZGJHU7/5tmvohoma+Hdn0Vh/oJTiPEmgSruA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.2.0.tgz", + "integrity": "sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw==", "dev": true }, "mixin-deep": { @@ -5237,12 +5386,6 @@ "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "dev": true }, - "object-component": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", - "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=", - "dev": true - }, "object-copy": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", @@ -5280,12 +5423,6 @@ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true }, - "object-path": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/object-path/-/object-path-0.9.2.tgz", - "integrity": "sha1-D9mnT8X60a45aLWGvaXGMr1sBaU=", - "dev": true - }, "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", @@ -5519,22 +5656,16 @@ "dev": true }, "parseqs": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", - "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=", - "dev": true, - "requires": { - "better-assert": "~1.0.0" - } + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.6.tgz", + "integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==", + "dev": true }, "parseuri": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz", - "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=", - "dev": true, - "requires": { - "better-assert": "~1.0.0" - } + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.6.tgz", + "integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==", + "dev": true }, "parseurl": { "version": "1.3.3", @@ -6620,151 +6751,97 @@ } }, "socket.io": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz", - "integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.4.0.tgz", + "integrity": "sha512-9UPJ1UTvKayuQfVv2IQ3k7tCQC/fboDyIK62i99dAQIyHKaBsNdTpwHLgKJ6guRWxRtC9H+138UwpaGuQO9uWQ==", "dev": true, "requires": { - "debug": "~3.1.0", - "engine.io": "~3.2.0", + "debug": "~4.1.0", + "engine.io": "~3.5.0", "has-binary2": "~1.0.2", "socket.io-adapter": "~1.1.0", - "socket.io-client": "2.1.1", - "socket.io-parser": "~3.2.0" + "socket.io-client": "2.4.0", + "socket.io-parser": "~3.4.0" }, "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "engine.io-client": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz", - "integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==", - "dev": true, - "requires": { - "component-emitter": "1.2.1", - "component-inherit": "0.0.3", - "debug": "~3.1.0", - "engine.io-parser": "~2.1.1", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "ws": "~3.3.1", - "xmlhttprequest-ssl": "~1.5.4", - "yeast": "0.1.2" - } - }, - "engine.io-parser": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.3.tgz", - "integrity": "sha512-6HXPre2O4Houl7c4g7Ic/XzPnHBvaEmN90vtRO9uLmwtRqQmTOw0QMevL1TOfL2Cpu1VzsaTmMotQgMdkzGkVA==", - "dev": true, - "requires": { - "after": "0.8.2", - "arraybuffer.slice": "~0.0.7", - "base64-arraybuffer": "0.1.5", - "blob": "0.0.5", - "has-binary2": "~1.0.2" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "socket.io-client": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz", - "integrity": "sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ==", - "dev": true, - "requires": { - "backo2": "1.0.2", - "base64-arraybuffer": "0.1.5", - "component-bind": "1.0.0", - "component-emitter": "1.2.1", - "debug": "~3.1.0", - "engine.io-client": "~3.2.0", - "has-binary2": "~1.0.2", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "object-component": "0.0.3", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "socket.io-parser": "~3.2.0", - "to-array": "0.1.4" - } - }, "socket.io-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz", - "integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.4.1.tgz", + "integrity": "sha512-11hMgzL+WCLWf1uFtHSNvliI++tcRUWdoeYuwIl+Axvwy9z2gQM+7nJyN3STj1tLj5JyIUH8/gpDGxzAlDdi0A==", "dev": true, "requires": { "component-emitter": "1.2.1", - "debug": "~3.1.0", + "debug": "~4.1.0", "isarray": "2.0.1" } - }, - "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - } } } }, "socket.io-adapter": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz", - "integrity": "sha1-KoBeihTWNyEk3ZFZrUUC+MsH8Gs=", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz", + "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==", "dev": true }, "socket.io-client": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.3.0.tgz", - "integrity": "sha512-cEQQf24gET3rfhxZ2jJ5xzAOo/xhZwK+mOqtGRg5IowZsMgwvHwnf/mCRapAAkadhM26y+iydgwsXGObBB5ZdA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.4.0.tgz", + "integrity": "sha512-M6xhnKQHuuZd4Ba9vltCLT9oa+YvTsP8j9NcEiLElfIg8KeYPyhWOes6x4t+LTAC8enQbE/995AdTem2uNyKKQ==", "dev": true, "requires": { "backo2": "1.0.2", - "base64-arraybuffer": "0.1.5", "component-bind": "1.0.0", - "component-emitter": "1.2.1", - "debug": "~4.1.0", - "engine.io-client": "~3.4.0", + "component-emitter": "~1.3.0", + "debug": "~3.1.0", + "engine.io-client": "~3.5.0", "has-binary2": "~1.0.2", - "has-cors": "1.1.0", "indexof": "0.0.1", - "object-component": "0.0.3", - "parseqs": "0.0.5", - "parseuri": "0.0.5", + "parseqs": "0.0.6", + "parseuri": "0.0.6", "socket.io-parser": "~3.3.0", "to-array": "0.1.4" + }, + "dependencies": { + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } } }, "socket.io-parser": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.0.tgz", - "integrity": "sha512-hczmV6bDgdaEbVqhAeVMM/jfUfzuEZHsQg6eOmLgJht6G3mPKMxYm75w2+qhAQZ+4X+1+ATZ+QFKeOZD5riHng==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.2.tgz", + "integrity": "sha512-FJvDBuOALxdCI9qwRrO/Rfp9yfndRtc1jSgVgV8FDraihmSP/MLGD5PEuJrNfjALvcQ+vMDM/33AWOYP/JSjDg==", "dev": true, "requires": { - "component-emitter": "1.2.1", + "component-emitter": "~1.3.0", "debug": "~3.1.0", "isarray": "2.0.1" }, "dependencies": { + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, "debug": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", @@ -7054,13 +7131,13 @@ } }, "tfunk": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/tfunk/-/tfunk-3.1.0.tgz", - "integrity": "sha1-OORBT8ZJd9h6/apy+sttKfgve1s=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tfunk/-/tfunk-4.0.0.tgz", + "integrity": "sha512-eJQ0dGfDIzWNiFNYFVjJ+Ezl/GmwHaFTBTjrtqNPW0S7cuVDBrZrmzUz6VkMeCR4DZFqhd4YtLwsw3i2wYHswQ==", "dev": true, "requires": { - "chalk": "^1.1.1", - "object-path": "^0.9.0" + "chalk": "^1.1.3", + "dlv": "^1.1.3" }, "dependencies": { "ansi-styles": { @@ -7268,15 +7345,9 @@ "dev": true }, "ua-parser-js": { - "version": "0.7.17", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", - "integrity": "sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g==", - "dev": true - }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", + "version": "0.7.23", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.23.tgz", + "integrity": "sha512-m4hvMLxgGHXG3O3fQVAyyAQpZzDOvwnhOTjYz5Xmr7r/+LpkNy3vJXdVRWgd1TkAb7NGROZuSy96CrlNVjA7KA==", "dev": true }, "unc-path-regex": { @@ -7581,12 +7652,6 @@ "string-width": "^1.0.2 || 2" } }, - "window-size": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.2.0.tgz", - "integrity": "sha1-tDFbtCFKPXBY6+7okuE/ok2YsHU=", - "dev": true - }, "wrap-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", @@ -7604,13 +7669,10 @@ "dev": true }, "ws": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.1.4.tgz", - "integrity": "sha512-eqZfL+NE/YQc1/ZynhojeV8q+H050oR8AZ2uIev7RU10svA9ZnJUddHcOUZTJLinZ9yEfdA2kSATS2qZK5fhJA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0" - } + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.2.tgz", + "integrity": "sha512-T4tewALS3+qsrpGI/8dqNMLIVdq/g/85U98HPMa6F0m6xTbvhXU6RCQLqPH3+SlomNV/LdY6RXEbBpMH6EOJnA==", + "dev": true }, "xmlhttprequest-ssl": { "version": "1.5.5", @@ -7643,35 +7705,165 @@ "dev": true }, "yargs": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.4.0.tgz", - "integrity": "sha1-gW4ahm1VmMzzTlWW3c4i2S2kkNQ=", + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", "dev": true, "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", + "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "window-size": "^0.2.0", - "y18n": "^3.2.1", - "yargs-parser": "^4.1.0" + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "y18n": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz", + "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==", + "dev": true + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } } }, "yargs-parser": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", - "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", - "dev": true, - "requires": { - "camelcase": "^3.0.0" - } + "version": "20.2.4", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", + "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "dev": true }, "yeast": { "version": "0.1.2", diff --git a/package.json b/package.json index 5f8e0c89593..f95515ee5e2 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ "autoprefixer": "^9.6.4", "bootstrap": "^4.3.1", "bootstrap-sass": "^3.4.1", - "browser-sync": "^2.26.7", + "browser-sync": "^2.26.14", "cross-env": "^7.0.2", "css-mqpacker": "^7.0.0", "gulp": "^4.0.2", From 9d49ad66dd23035da91455e3390dbd62394626b8 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Tue, 26 Jan 2021 09:28:22 +0900 Subject: [PATCH 184/207] Fix namespace --- src/Eccube/EventListener/TransactionListener.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/EventListener/TransactionListener.php b/src/Eccube/EventListener/TransactionListener.php index a85f5062efe..ed6fc0414d3 100644 --- a/src/Eccube/EventListener/TransactionListener.php +++ b/src/Eccube/EventListener/TransactionListener.php @@ -13,7 +13,7 @@ namespace Eccube\EventListener; -use Doctrine\Dbal\Connection; +use Doctrine\DBAL\Connection; use Doctrine\DBAL\TransactionIsolationLevel; use Doctrine\ORM\EntityManager; use Doctrine\ORM\EntityManagerInterface; From 3d30e15a3bdee3904512476cc42ede567c57a121 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 26 Jan 2021 15:52:03 +0900 Subject: [PATCH 185/207] =?UTF-8?q?mtb=5Fcustomer=5Forder=5Fstatus?= =?UTF-8?q?=E3=82=92=E7=B7=A8=E9=9B=86=E5=AF=BE=E8=B1=A1=E3=81=AB=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Page/Admin/OrderStatusSettingsPage.php | 9 +++++++- codeception/acceptance/EA07BasicinfoCest.php | 3 ++- .../Setting/Shop/OrderStatusController.php | 16 +++++++++++++- .../Type/Admin/OrderStatusSettingType.php | 22 +++++++++++++++++-- src/Eccube/Resource/locale/messages.en.yaml | 9 ++++---- src/Eccube/Resource/locale/messages.ja.yaml | 9 ++++---- .../admin/Setting/Shop/order_status.twig | 9 +++++++- .../Shop/OrderStatusControllerTest.php | 17 ++++++++++++-- 8 files changed, 78 insertions(+), 16 deletions(-) diff --git a/codeception/_support/Page/Admin/OrderStatusSettingsPage.php b/codeception/_support/Page/Admin/OrderStatusSettingsPage.php index 2522552384f..87102a3c203 100644 --- a/codeception/_support/Page/Admin/OrderStatusSettingsPage.php +++ b/codeception/_support/Page/Admin/OrderStatusSettingsPage.php @@ -40,13 +40,20 @@ public static function at($I) return $page; } - public function 入力_名称($value) + public function 入力_名称_管理($value) { $this->tester->fillField(['id' => 'form_OrderStatuses_0_name'], $value); return $this; } + public function 入力_名称_マイページ($value) + { + $this->tester->fillField(['id' => 'form_OrderStatuses_0_customer_order_status_name'], $value); + + return $this; + } + public function 入力_色($value) { $this->tester->fillField(['id' => 'form_OrderStatuses_0_color'], $value); diff --git a/codeception/acceptance/EA07BasicinfoCest.php b/codeception/acceptance/EA07BasicinfoCest.php index d0be5d3c57c..470404b0249 100644 --- a/codeception/acceptance/EA07BasicinfoCest.php +++ b/codeception/acceptance/EA07BasicinfoCest.php @@ -279,7 +279,8 @@ public function basicinfo_受注対応状況設定(\AcceptanceTester $I) // 表示 OrderStatusSettingsPage::go($I) - ->入力_名称('新規受付') + ->入力_名称_管理('新規受付') + ->入力_名称_マイページ('注文受付') ->入力_色("#19406C") ->登録(); diff --git a/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php b/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php index cbefb1918f2..fe10bf9b206 100644 --- a/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php +++ b/src/Eccube/Controller/Admin/Setting/Shop/OrderStatusController.php @@ -15,6 +15,7 @@ use Eccube\Controller\AbstractController; use Eccube\Form\Type\Admin\OrderStatusSettingType; +use Eccube\Repository\Master\CustomerOrderStatusRepository; use Eccube\Repository\Master\OrderStatusColorRepository; use Eccube\Repository\Master\OrderStatusRepository; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template; @@ -34,12 +35,19 @@ class OrderStatusController extends AbstractController */ protected $orderStatusColorRepository; + /** + * @var CustomerOrderStatusRepository + */ + protected $customerOrderStatusRepository; + public function __construct( OrderStatusRepository $orderStatusRepository, - OrderStatusColorRepository $orderStatusColorRepository + OrderStatusColorRepository $orderStatusColorRepository, + CustomerOrderStatusRepository $customerOrderStatusRepository ) { $this->orderStatusRepository = $orderStatusRepository; $this->orderStatusColorRepository = $orderStatusColorRepository; + $this->customerOrderStatusRepository = $customerOrderStatusRepository; } /** @@ -69,6 +77,12 @@ public function index(Request $request) $OrderStatus = $child->getData(); $this->entityManager->persist($OrderStatus); + $CustomerOrderStatus = $this->customerOrderStatusRepository->find($OrderStatus->getId()); + if (null !== $CustomerOrderStatus) { + $CustomerOrderStatus->setName($child['customer_order_status_name']->getData()); + $this->entityManager->persist($CustomerOrderStatus); + } + $OrderStatusColor = $this->orderStatusColorRepository->find($OrderStatus->getId()); if (null !== $OrderStatusColor) { $OrderStatusColor->setName($child['color']->getData()); diff --git a/src/Eccube/Form/Type/Admin/OrderStatusSettingType.php b/src/Eccube/Form/Type/Admin/OrderStatusSettingType.php index 088ee331a85..152b46adeef 100644 --- a/src/Eccube/Form/Type/Admin/OrderStatusSettingType.php +++ b/src/Eccube/Form/Type/Admin/OrderStatusSettingType.php @@ -16,6 +16,7 @@ use Eccube\Common\EccubeConfig; use Eccube\Entity\Master\OrderStatus; use Eccube\Form\Type\ToggleSwitchType; +use Eccube\Repository\Master\CustomerOrderStatusRepository; use Eccube\Repository\Master\OrderStatusColorRepository; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\Extension\Core\Type\TextType; @@ -37,13 +38,19 @@ class OrderStatusSettingType extends AbstractType */ protected $orderStatusColorRepository; + /** + * @var CustomerOrderStatusRepository + */ + protected $customerOrderStatusRepository; + public function __construct( EccubeConfig $eccubeConfig, - OrderStatusColorRepository $orderStatusColorRepository - + OrderStatusColorRepository $orderStatusColorRepository, + CustomerOrderStatusRepository $customerOrderStatusRepository ) { $this->eccubeConfig = $eccubeConfig; $this->orderStatusColorRepository = $orderStatusColorRepository; + $this->customerOrderStatusRepository = $customerOrderStatusRepository; } /** @@ -58,6 +65,13 @@ public function buildForm(FormBuilderInterface $builder, array $options) new Assert\Length(['max' => $this->eccubeConfig['eccube_stext_len']]), ], ]) + ->add('customer_order_status_name', TextType::class, [ + 'mapped' => false, + 'constraints' => [ + new Assert\NotBlank(), + new Assert\Length(['max' => $this->eccubeConfig['eccube_stext_len']]), + ], + ]) ->add('color', TextType::class, [ 'mapped' => false, 'constraints' => [ @@ -84,6 +98,10 @@ public function buildForm(FormBuilderInterface $builder, array $options) if (null !== $OrderStatusColor) { $form->get('color')->setData($OrderStatusColor->getName()); } + $CustomerOrderStatus = $this->customerOrderStatusRepository->find($data->getId()); + if (null !== $CustomerOrderStatus) { + $form->get('customer_order_status_name')->setData($CustomerOrderStatus->getName()); + } }); } diff --git a/src/Eccube/Resource/locale/messages.en.yaml b/src/Eccube/Resource/locale/messages.en.yaml index 61407ae6112..a8d8340bfdc 100644 --- a/src/Eccube/Resource/locale/messages.en.yaml +++ b/src/Eccube/Resource/locale/messages.en.yaml @@ -1196,7 +1196,8 @@ admin.setting.shop.csv.how_to_use: | admin.setting.shop.order_status.order_status: Order Status admin.setting.shop.order_status.id: ID -admin.setting.shop.order_status.name: Name +admin.setting.shop.order_status.admin_order_status_name: Name(Order management) +admin.setting.shop.order_status.customer_order_status_name: Name(My page) admin.setting.shop.order_status.color: Color admin.setting.shop.order_status.display_order_count: Number display @@ -1605,9 +1606,9 @@ tooltip.setting.shop.tax_setting: You can set the tax rates applicable to all pr tooltip.setting.shop.mail.mail_template: Please select an existing email template. Contents are displayed in the text field below. tooltip.setting.shop.csv.csv_columns: You can output various data in CSV format. You can specify the items for CSV output. tooltip.setting.shop.csv.csv_type: Specify the CSV file type. -tooltip.setting.shop.order_status.order_status: Set the order status used in order management. You can set the name, color, and number display. -tooltip.setting.shop.order_status.color: You can set the color of the order status. -tooltip.setting.shop.order_status.display_order_count: You can set the display / non-display of the number of orders received for each order status. +tooltip.setting.shop.order_status.order_status: Set the order status used in order management and my page. You can set the name, color, and number display. +tooltip.setting.shop.order_status.color: You can set the color of the order status used in order management. +tooltip.setting.shop.order_status.display_order_count: You can set the display / non-display of the number of orders for each order status used in order management. tooltip.setting.system.member.authority: You can select the authorization you have set under Authorization. tooltip.setting.system.member.work: You can set customers to inactive temporarily. If they are no longer necessary, please delete from All Customers. tooltip.setting.system.security.admin_url: Set the URL to sign in to the Admin Console. Please specify a URL which is hardly guessed. diff --git a/src/Eccube/Resource/locale/messages.ja.yaml b/src/Eccube/Resource/locale/messages.ja.yaml index 2f6b5e89805..42f2740a368 100644 --- a/src/Eccube/Resource/locale/messages.ja.yaml +++ b/src/Eccube/Resource/locale/messages.ja.yaml @@ -1196,7 +1196,8 @@ admin.setting.shop.csv.how_to_use: | admin.setting.shop.order_status.order_status: 受注対応状況 admin.setting.shop.order_status.id: ID -admin.setting.shop.order_status.name: 名称 +admin.setting.shop.order_status.admin_order_status_name: 名称(受注管理) +admin.setting.shop.order_status.customer_order_status_name: 名称(マイページ) admin.setting.shop.order_status.color: 色 admin.setting.shop.order_status.display_order_count: 件数表示 @@ -1605,9 +1606,9 @@ tooltip.setting.shop.tax_setting: 商品共通の税率を設定できます。 tooltip.setting.shop.mail.mail_template: 既存のメールテンプレートを選択してください。以下に内容が表示されます。 tooltip.setting.shop.csv.csv_columns: 各種のデータをCSVで出力できます。出力したい項目をこちらで設定することが可能です。 tooltip.setting.shop.csv.csv_type: 設定したいCSVの種類を指定してください。 -tooltip.setting.shop.order_status.order_status: 受注管理で利用される対応状況の設定を行います。名称、色、件数表示の設定が可能です。 -tooltip.setting.shop.order_status.color: 対応状況の色を設定できます。 -tooltip.setting.shop.order_status.display_order_count: 対応状況ごとの受注件数の表示・非表示を設定できます。 +tooltip.setting.shop.order_status.order_status: 受注管理およびマイページで表示される対応状況の設定を行います。名称、色、件数表示の設定が可能です。 +tooltip.setting.shop.order_status.color: 受注管理の対応状況の色を設定できます。 +tooltip.setting.shop.order_status.display_order_count: 受注管理の対応状況ごとの受注件数の表示・非表示を設定できます。 tooltip.setting.system.member.authority: 権限管理で設定した権限を選択できます。 tooltip.setting.system.member.work: 一時的に非稼働にすることが可能です。必要ない場合はメンバー一覧より削除してください。 tooltip.setting.system.security.admin_url: 管理画面にログインするためのURLを指定します。推測されにくいURLを指定して下さい。 diff --git a/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig b/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig index 5c44dc463e1..76242aabf22 100644 --- a/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig +++ b/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig @@ -48,7 +48,10 @@ file that was distributed with this source code. {{ 'admin.setting.shop.order_status.id'|trans }} + + +
- {{ 'admin.setting.system.master_data.id'|trans }} + + {{ 'admin.setting.shop.order_status.id'|trans }} - {{ '名称'|trans }} + {{ 'admin.setting.shop.order_status.name'|trans }} - {{ '色'|trans }} +
+ {{ 'admin.setting.shop.order_status.color'|trans }} +
- {{ '受注一覧での件数表示'|trans }} +
+ {{ 'admin.setting.shop.order_status.display_order_count'|trans }} +
+ {{ OrderStatus.vars.data.id }} + {{ form_widget(OrderStatus.name) }} {{ form_errors(OrderStatus.name) }} - {{ 'admin.setting.shop.order_status.name'|trans }} + {{ 'admin.setting.shop.order_status.customer_order_status_name'|trans }} + + {{ 'admin.setting.shop.order_status.admin_order_status_name'|trans }}
@@ -68,6 +71,10 @@ file that was distributed with this source code.
{{ OrderStatus.vars.data.id }} + {{ form_widget(OrderStatus.customer_order_status_name) }} + {{ form_errors(OrderStatus.customer_order_status_name) }} + {{ form_widget(OrderStatus.name) }} {{ form_errors(OrderStatus.name) }} diff --git a/tests/Eccube/Tests/Web/Admin/Setting/Shop/OrderStatusControllerTest.php b/tests/Eccube/Tests/Web/Admin/Setting/Shop/OrderStatusControllerTest.php index 84cf487ed9e..5fdc64adf12 100644 --- a/tests/Eccube/Tests/Web/Admin/Setting/Shop/OrderStatusControllerTest.php +++ b/tests/Eccube/Tests/Web/Admin/Setting/Shop/OrderStatusControllerTest.php @@ -13,8 +13,10 @@ namespace Eccube\Tests\Web\Admin\Setting\Shop; +use Eccube\Entity\Master\CustomerOrderStatus; use Eccube\Entity\Master\OrderStatus; use Eccube\Entity\Master\OrderStatusColor; +use Eccube\Repository\Master\CustomerOrderStatusRepository; use Eccube\Repository\Master\OrderStatusColorRepository; use Eccube\Repository\Master\OrderStatusRepository; use Eccube\Tests\Web\Admin\AbstractAdminWebTestCase; @@ -31,11 +33,17 @@ class OrderStatusControllerTest extends AbstractAdminWebTestCase */ private $orderStatusColorRepository; + /** + * @var CustomerOrderStatusRepository + */ + private $customerOrderStatusRepository; + public function setUp() { parent::setUp(); $this->orderStatusRepository = $this->entityManager->getRepository(OrderStatus::class); $this->orderStatusColorRepository = $this->entityManager->getRepository(OrderStatusColor::class); + $this->customerOrderStatusRepository = $this->entityManager->getRepository(CustomerOrderStatus::class); } public function testRouting() @@ -47,7 +55,8 @@ public function testRouting() public function testSubmit() { $formData = $this->createFormData(); - $formData['OrderStatuses'][0]['name'] = 'テスト名称'; + $formData['OrderStatuses'][0]['name'] = 'テスト名称(受注管理)'; + $formData['OrderStatuses'][0]['customer_order_status_name'] = 'テスト名称(マイページ)'; $formData['OrderStatuses'][0]['color'] = 'テスト色'; $this->client->request('GET', $this->generateUrl('admin_setting_shop_order_status')); @@ -60,9 +69,11 @@ public function testSubmit() $this->assertTrue($this->client->getResponse()->isRedirection()); $OrderStatus = $this->orderStatusRepository->findOneBy([], ['sort_no' => 'ASC']); + $CustomerOrderStatus = $this->customerOrderStatusRepository->findOneBy([], ['sort_no' => 'ASC']); $OrderStatusColor = $this->orderStatusColorRepository->findOneBy([], ['sort_no' => 'ASC']); - $this->assertSame('テスト名称', $OrderStatus->getName()); + $this->assertSame('テスト名称(受注管理)', $OrderStatus->getName()); + $this->assertSame('テスト名称(マイページ)', $CustomerOrderStatus->getName()); $this->assertSame('テスト色', $OrderStatusColor->getName()); } @@ -70,6 +81,7 @@ public function testSubmitWithError() { $formData = $this->createFormData(); $formData['OrderStatuses'][0]['name'] = ''; + $formData['OrderStatuses'][0]['customer_order_status_name'] = ''; $formData['OrderStatuses'][0]['color'] = ''; $this->client->request('GET', $this->generateUrl('admin_setting_shop_order_status')); @@ -95,6 +107,7 @@ private function createFormData() foreach ($OrderStatuses as $OrderStatus) { $form['OrderStatuses'][] = [ 'name' => $OrderStatus->getName(), + 'customer_order_status_name' => $this->customerOrderStatusRepository->find($OrderStatus->getId()), 'color' => $this->orderStatusColorRepository->find($OrderStatus->getId()), 'display_order_count' => $OrderStatus->isDisplayOrderCount() ? '1' : '', ]; From 78780c9f27908249b315fdab95e1afc0b5694474 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 26 Jan 2021 15:55:15 +0900 Subject: [PATCH 186/207] =?UTF-8?q?=E3=82=A4=E3=83=B3=E3=83=87=E3=83=B3?= =?UTF-8?q?=E3=83=88=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/Setting/Shop/order_status.twig | 146 +++++++++--------- 1 file changed, 73 insertions(+), 73 deletions(-) diff --git a/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig b/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig index 76242aabf22..548561e0119 100644 --- a/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig +++ b/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig @@ -32,91 +32,91 @@ file that was distributed with this source code.
- - {{ form_widget(form._token) }} -
-
-
- {{ 'admin.setting.shop.order_status.order_status'|trans }} -
+ + {{ form_widget(form._token) }} +
+
+
+ {{ 'admin.setting.shop.order_status.order_status'|trans }}
-
- - + +
+
+ + + + + + + + + + + {% for OrderStatus in form.OrderStatuses %} - - - - - + + + + - - - {% for OrderStatus in form.OrderStatuses %} - - - - - - - - {% endfor %} - -
+ {{ 'admin.setting.shop.order_status.id'|trans }} + + {{ 'admin.setting.shop.order_status.customer_order_status_name'|trans }} + + {{ 'admin.setting.shop.order_status.admin_order_status_name'|trans }} + +
+ {{ 'admin.setting.shop.order_status.color'|trans }} +
+
+
+ {{ 'admin.setting.shop.order_status.display_order_count'|trans }} +
+
- {{ 'admin.setting.shop.order_status.id'|trans }} - - {{ 'admin.setting.shop.order_status.customer_order_status_name'|trans }} - - {{ 'admin.setting.shop.order_status.admin_order_status_name'|trans }} - -
- {{ 'admin.setting.shop.order_status.color'|trans }} -
-
-
- {{ 'admin.setting.shop.order_status.display_order_count'|trans }} +
+ {{ OrderStatus.vars.data.id }} + + {{ form_widget(OrderStatus.customer_order_status_name) }} + {{ form_errors(OrderStatus.customer_order_status_name) }} + + {{ form_widget(OrderStatus.name) }} + {{ form_errors(OrderStatus.name) }} + +
+ {{ form_widget(OrderStatus.color) }} + + +
- + {{ form_errors(OrderStatus.color) }} +
+ {{ form_widget(OrderStatus.display_order_count) }} + {{ form_errors(OrderStatus.display_order_count) }} +
- {{ OrderStatus.vars.data.id }} - - {{ form_widget(OrderStatus.customer_order_status_name) }} - {{ form_errors(OrderStatus.customer_order_status_name) }} - - {{ form_widget(OrderStatus.name) }} - {{ form_errors(OrderStatus.name) }} - -
- {{ form_widget(OrderStatus.color) }} - - - -
- {{ form_errors(OrderStatus.color) }} -
- {{ form_widget(OrderStatus.display_order_count) }} - {{ form_errors(OrderStatus.display_order_count) }} -
-
+ {% endfor %} +
+
-
-
-
-
-
-
+
+
+
+
+
-
-
-
- -
+
+
+
+
+
- +
+
From 24e82d8c7d825b4c81ffafe23a2dd61d4b75edc0 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 26 Jan 2021 16:10:17 +0900 Subject: [PATCH 187/207] =?UTF-8?q?CustomerOrderStatus=E3=82=92=E9=99=A4?= =?UTF-8?q?=E5=A4=96=E5=AF=BE=E8=B1=A1=E3=81=AB=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Form/Type/Admin/MasterdataType.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Eccube/Form/Type/Admin/MasterdataType.php b/src/Eccube/Form/Type/Admin/MasterdataType.php index 5a87468a9bf..87293ebbc8a 100644 --- a/src/Eccube/Form/Type/Admin/MasterdataType.php +++ b/src/Eccube/Form/Type/Admin/MasterdataType.php @@ -17,6 +17,7 @@ use Doctrine\Common\Persistence\Mapping\Driver\MappingDriverChain; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\Mapping\ClassMetadata; +use Eccube\Entity\Master\CustomerOrderStatus; use Eccube\Entity\Master\OrderStatus; use Eccube\Entity\Master\OrderStatusColor; use Symfony\Component\Form\AbstractType; @@ -65,7 +66,7 @@ public function buildForm(FormBuilderInterface $builder, array $options) // OrderStatus/OrderStatusColorは対象外 // @see https://github.com/EC-CUBE/ec-cube/pull/4844 - if (in_array($meta->getName(), [OrderStatus::class, OrderStatusColor::class])) { + if (in_array($meta->getName(), [OrderStatus::class, OrderStatusColor::class, CustomerOrderStatus::class,])) { continue; } From 508d376ab1e9ff07fd04298ff79fb51566ddb597 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 26 Jan 2021 16:10:53 +0900 Subject: [PATCH 188/207] =?UTF-8?q?=E6=98=8E=E7=A4=BA=E7=9A=84=E3=81=ABnam?= =?UTF-8?q?e=E3=82=92=E6=B8=A1=E3=81=99=E3=82=88=E3=81=86=E3=81=AB?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Web/Admin/Setting/Shop/OrderStatusControllerTest.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tests/Eccube/Tests/Web/Admin/Setting/Shop/OrderStatusControllerTest.php b/tests/Eccube/Tests/Web/Admin/Setting/Shop/OrderStatusControllerTest.php index 5fdc64adf12..da5c8d8852e 100644 --- a/tests/Eccube/Tests/Web/Admin/Setting/Shop/OrderStatusControllerTest.php +++ b/tests/Eccube/Tests/Web/Admin/Setting/Shop/OrderStatusControllerTest.php @@ -107,8 +107,12 @@ private function createFormData() foreach ($OrderStatuses as $OrderStatus) { $form['OrderStatuses'][] = [ 'name' => $OrderStatus->getName(), - 'customer_order_status_name' => $this->customerOrderStatusRepository->find($OrderStatus->getId()), - 'color' => $this->orderStatusColorRepository->find($OrderStatus->getId()), + 'customer_order_status_name' => $this->customerOrderStatusRepository + ->find($OrderStatus->getId()) + ->getName(), + 'color' => $this->orderStatusColorRepository + ->find($OrderStatus->getId()) + ->getName(), 'display_order_count' => $OrderStatus->isDisplayOrderCount() ? '1' : '', ]; } From 3cf66f217e1aed1a9076149e3d2fde6dd972abd2 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 26 Jan 2021 16:25:10 +0900 Subject: [PATCH 189/207] =?UTF-8?q?=E3=83=9E=E3=82=A4=E3=83=9A=E3=83=BC?= =?UTF-8?q?=E3=82=B8=E5=81=B4=E3=81=AE=E5=90=8D=E7=A7=B0=E3=81=AB=E6=B3=A8?= =?UTF-8?q?=E6=84=8F=E6=9B=B8=E3=81=8D=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/locale/messages.en.yaml | 1 + src/Eccube/Resource/locale/messages.ja.yaml | 1 + .../Resource/template/admin/Setting/Shop/order_status.twig | 4 +++- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Eccube/Resource/locale/messages.en.yaml b/src/Eccube/Resource/locale/messages.en.yaml index a8d8340bfdc..34ab889016c 100644 --- a/src/Eccube/Resource/locale/messages.en.yaml +++ b/src/Eccube/Resource/locale/messages.en.yaml @@ -1607,6 +1607,7 @@ tooltip.setting.shop.mail.mail_template: Please select an existing email templat tooltip.setting.shop.csv.csv_columns: You can output various data in CSV format. You can specify the items for CSV output. tooltip.setting.shop.csv.csv_type: Specify the CSV file type. tooltip.setting.shop.order_status.order_status: Set the order status used in order management and my page. You can set the name, color, and number display. +tooltip.setting.shop.order_status.customer_order_status_name: You can set the name of the order status. The name set here will be displayed on My Page after logging in as a customer. tooltip.setting.shop.order_status.color: You can set the color of the order status used in order management. tooltip.setting.shop.order_status.display_order_count: You can set the display / non-display of the number of orders for each order status used in order management. tooltip.setting.system.member.authority: You can select the authorization you have set under Authorization. diff --git a/src/Eccube/Resource/locale/messages.ja.yaml b/src/Eccube/Resource/locale/messages.ja.yaml index 42f2740a368..2d6d3b38261 100644 --- a/src/Eccube/Resource/locale/messages.ja.yaml +++ b/src/Eccube/Resource/locale/messages.ja.yaml @@ -1607,6 +1607,7 @@ tooltip.setting.shop.mail.mail_template: 既存のメールテンプレートを tooltip.setting.shop.csv.csv_columns: 各種のデータをCSVで出力できます。出力したい項目をこちらで設定することが可能です。 tooltip.setting.shop.csv.csv_type: 設定したいCSVの種類を指定してください。 tooltip.setting.shop.order_status.order_status: 受注管理およびマイページで表示される対応状況の設定を行います。名称、色、件数表示の設定が可能です。 +tooltip.setting.shop.order_status.customer_order_status_name: 対応状況の名称を設定できます。ここで設定した名称は会員ログイン後のマイページで表示されます。 tooltip.setting.shop.order_status.color: 受注管理の対応状況の色を設定できます。 tooltip.setting.shop.order_status.display_order_count: 受注管理の対応状況ごとの受注件数の表示・非表示を設定できます。 tooltip.setting.system.member.authority: 権限管理で設定した権限を選択できます。 diff --git a/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig b/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig index 548561e0119..d6095cd820e 100644 --- a/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig +++ b/src/Eccube/Resource/template/admin/Setting/Shop/order_status.twig @@ -48,7 +48,9 @@ file that was distributed with this source code. {{ 'admin.setting.shop.order_status.id'|trans }} - {{ 'admin.setting.shop.order_status.customer_order_status_name'|trans }} +
+ {{ 'admin.setting.shop.order_status.customer_order_status_name'|trans }} +
{{ 'admin.setting.shop.order_status.admin_order_status_name'|trans }} From a374f7bd8ea4e767f239192af79a6d8627423a8e Mon Sep 17 00:00:00 2001 From: Kiyoshi Yamamura Date: Wed, 27 Jan 2021 16:37:17 +0900 Subject: [PATCH 190/207] =?UTF-8?q?=E5=95=86=E5=93=81=E8=A6=8F=E6=A0=BC?= =?UTF-8?q?=E3=81=AE=E6=9D=A1=E4=BB=B6=E8=AA=A4=E3=82=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/template/default/Mypage/index.twig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Resource/template/default/Mypage/index.twig b/src/Eccube/Resource/template/default/Mypage/index.twig index 6e12ea8d476..dcc6e83e9fe 100755 --- a/src/Eccube/Resource/template/default/Mypage/index.twig +++ b/src/Eccube/Resource/template/default/Mypage/index.twig @@ -62,7 +62,7 @@ file that was distributed with this source code. {% if OrderItem.class_category_name1 is not empty %} {{ OrderItem.class_category_name1 }} {% endif %} - {% if OrderItem.class_category_name1 is not empty %} + {% if OrderItem.class_category_name2 is not empty %} / {{ OrderItem.class_category_name2 }} {% endif %}

{{ OrderItem.price_inc_tax|price }} From a3f9ac92a41e296784ee979a48b97b80d1854586 Mon Sep 17 00:00:00 2001 From: yshirai Date: Thu, 28 Jan 2021 20:49:28 +0900 Subject: [PATCH 191/207] =?UTF-8?q?=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E3=81=A7=E5=90=8D=E5=89=8D=E3=81=AE=E9=87=8D?= =?UTF-8?q?=E8=A4=87=E3=81=99=E3=82=8B=E3=83=87=E3=82=A3=E3=83=AC=E3=82=AF?= =?UTF-8?q?=E3=83=88=E3=83=AA=E3=82=92=E4=BD=9C=E3=82=8D=E3=81=86=E3=81=A8?= =?UTF-8?q?=E3=81=97=E3=81=9F=E6=99=82=E3=81=AB=E3=82=A8=E3=83=A9=E3=83=BC?= =?UTF-8?q?=E3=83=A1=E3=83=83=E3=82=BB=E3=83=BC=E3=82=B8=E3=82=92=E5=87=BA?= =?UTF-8?q?=E3=81=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Content/FileController.php | 6 ++- src/Eccube/Resource/locale/messages.en.yaml | 1 + src/Eccube/Resource/locale/messages.ja.yaml | 1 + .../Web/Admin/Content/FileControllerTest.php | 39 +++++++++++++++++++ 4 files changed, 46 insertions(+), 1 deletion(-) diff --git a/src/Eccube/Controller/Admin/Content/FileController.php b/src/Eccube/Controller/Admin/Content/FileController.php index 5c044b699b3..ed54ca9dea2 100644 --- a/src/Eccube/Controller/Admin/Content/FileController.php +++ b/src/Eccube/Controller/Admin/Content/FileController.php @@ -178,7 +178,11 @@ public function create(Request $request) $nowDir = $this->checkDir($nowDir, $topDir) ? $this->normalizePath($nowDir) : $topDir; - $fs->mkdir($nowDir.'/'.$filename); + $newFilePath = $nowDir.'/'.$filename; + if (file_exists($newFilePath)) { + throw new IOException(trans('admin.content.file.dir_exists', [ '%file_name%' => $filename, ])); + } + $fs->mkdir($newFilePath); $this->addSuccess('admin.common.create_complete', 'admin'); } catch (IOException $e) { diff --git a/src/Eccube/Resource/locale/messages.en.yaml b/src/Eccube/Resource/locale/messages.en.yaml index 35e19eda6e7..70ce17102d9 100644 --- a/src/Eccube/Resource/locale/messages.en.yaml +++ b/src/Eccube/Resource/locale/messages.en.yaml @@ -966,6 +966,7 @@ admin.content.file.updated: Update admin.content.file.directory_tree: Directories admin.content.file.upload_complete: %success% file upload completed. (%success%/%count%) admin.content.file.upload_error: Failed to upload %file_name%. (%error%) +admin.content.file.dir_exists: %file_name% is already exists. admin.content.layout_delete: Delete Layouts admin.content.layout_no_page: Page not registered admin.content.layout__card_title: Layout Overview diff --git a/src/Eccube/Resource/locale/messages.ja.yaml b/src/Eccube/Resource/locale/messages.ja.yaml index 7e2cc2c8998..3bb3894a8e2 100644 --- a/src/Eccube/Resource/locale/messages.ja.yaml +++ b/src/Eccube/Resource/locale/messages.ja.yaml @@ -966,6 +966,7 @@ admin.content.file.updated: 更新 admin.content.file.directory_tree: フォルダ構成 admin.content.file.upload_complete: %success%件のファイルをアップロードしました。(%success%/%count%) admin.content.file.upload_error: %file_name% のアップロードに失敗しました。(%error%) +admin.content.file.dir_exists: %file_name% は既に使用されています。別のフォルダ名を入力してください admin.content.layout_delete: レイアウトを削除 admin.content.layout_no_page: ページが登録されていません admin.content.layout__card_title: レイアウト概要 diff --git a/tests/Eccube/Tests/Web/Admin/Content/FileControllerTest.php b/tests/Eccube/Tests/Web/Admin/Content/FileControllerTest.php index c9aefabb4aa..85f840c0158 100644 --- a/tests/Eccube/Tests/Web/Admin/Content/FileControllerTest.php +++ b/tests/Eccube/Tests/Web/Admin/Content/FileControllerTest.php @@ -92,6 +92,45 @@ public function testIndexWithCreate() $this->assertTrue(is_dir($this->getUserDataDir().'/'.$folder)); } + /** + * 名前の重複するディレクトリを作る + */ + public function testIndexWithCreateDuplicateDir() + { + $folder = 'create_folder'; + $this->client->request( + 'POST', + $this->generateUrl('admin_content_file'), + [ + 'form' => [ + '_token' => 'dummy', + 'create_file' => $folder, + 'file' => '', + ], + 'mode' => 'create', + 'now_dir' => $this->getUserDataDir(), + ] + ); + $this->assertTrue($this->client->getResponse()->isSuccessful()); + $this->assertTrue(is_dir($this->getUserDataDir().'/'.$folder)); + $crawler = $this->client->request( + 'POST', + $this->generateUrl('admin_content_file'), + [ + 'form' => [ + '_token' => 'dummy', + 'create_file' => $folder, + 'file' => '', + ], + 'mode' => 'create', + 'now_dir' => $this->getUserDataDir(), + ] + ); + $this->assertTrue($this->client->getResponse()->isSuccessful()); + $this->assertTrue(is_dir($this->getUserDataDir().'/'.$folder)); + $this->assertCount(1, $crawler->filter('p.errormsg')); + } + public function testIndexWithUpload() { $filepath1 = $this->getUserDataDir().'/../aaa.html'; From 6d45798f97a74c6730bd99b9ddf4282f7c5b4a59 Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 1 Feb 2021 14:42:27 +0900 Subject: [PATCH 192/207] Fix variable $PrevPage might not be defined --- src/Eccube/Controller/Admin/Content/PageController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Eccube/Controller/Admin/Content/PageController.php b/src/Eccube/Controller/Admin/Content/PageController.php index 48d7607feb9..1515593159c 100644 --- a/src/Eccube/Controller/Admin/Content/PageController.php +++ b/src/Eccube/Controller/Admin/Content/PageController.php @@ -118,8 +118,8 @@ public function edit(Request $request, $id = null, Environment $twig, RouterInte // 更新時 $fileName = null; $namespace = '@user_data/'; + $PrevPage = clone $Page; if ($id) { - $PrevPage = clone $Page; // 編集不可ページはURL、ページ名、ファイル名を保持 if ($Page->getEditType() >= Page::EDIT_TYPE_DEFAULT) { $isUserDataPage = false; From 95ec207f583970f3e011619171bcfb92c661685b Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 1 Feb 2021 14:46:52 +0900 Subject: [PATCH 193/207] =?UTF-8?q?=E3=82=A8=E3=83=A9=E3=83=BC=E3=81=AE?= =?UTF-8?q?=E5=87=BA=E3=81=AA=E3=81=84=E4=B8=8B=E9=99=90=E3=81=AE=20level:?= =?UTF-8?q?=201=20=E3=82=92=E3=83=87=E3=83=95=E3=82=A9=E3=83=AB=E3=83=88?= =?UTF-8?q?=E3=81=AB=E8=A8=AD=E5=AE=9A=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- phpstan.neon.dist | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/phpstan.neon.dist b/phpstan.neon.dist index 14c1596a3a7..8b9b71bfd1d 100644 --- a/phpstan.neon.dist +++ b/phpstan.neon.dist @@ -1,5 +1,5 @@ parameters: - level: 0 + level: 1 ignoreErrors: - message: "#^Function twig_localized_date_filter not found\\.$#" From ca446a982b67cff0d7e73a177de951e38b17bdbf Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 1 Feb 2021 14:48:42 +0900 Subject: [PATCH 194/207] =?UTF-8?q?=E8=AA=B0=E3=81=A7=E3=82=82=E5=AE=9F?= =?UTF-8?q?=E8=A1=8C=E3=81=A7=E3=81=8D=E3=82=8B=E3=82=88=E3=81=86=20requir?= =?UTF-8?q?e-dev=20=E3=81=AB=20phpstan=20=E3=82=92=E5=85=A5=E3=82=8C?= =?UTF-8?q?=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- composer.json | 1 + composer.lock | 290 +++++++++++++++++++++++++++++++++++++++++++++++++- symfony.lock | 3 + 3 files changed, 291 insertions(+), 3 deletions(-) diff --git a/composer.json b/composer.json index cc932e0287a..5ae11e79883 100644 --- a/composer.json +++ b/composer.json @@ -115,6 +115,7 @@ "fzaninotto/faker": "^1.7", "mikey179/vfsstream": "^1.6", "php-coveralls/php-coveralls": "^2.1", + "phpstan/phpstan": "^0.12", "phpunit/phpunit": "^6.5", "symfony/browser-kit": "^3.4", "symfony/phpunit-bridge": "^3.4" diff --git a/composer.lock b/composer.lock index 44539fedfaf..5fe8525b98d 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "26d5cd98f0123a682f18d802228af345", + "content-hash": "c16b344c17ca75e636f20181046d0e6b", "packages": [ { "name": "composer/ca-bundle", @@ -672,6 +672,10 @@ "keywords": [ "database" ], + "support": { + "issues": "https://github.com/doctrine/data-fixtures/issues", + "source": "https://github.com/doctrine/data-fixtures/tree/1.3" + }, "time": "2019-10-24T04:52:28+00:00" }, { @@ -754,6 +758,10 @@ "php", "queryobject" ], + "support": { + "issues": "https://github.com/doctrine/dbal/issues", + "source": "https://github.com/doctrine/dbal/tree/2.9" + }, "time": "2019-11-02T22:19:34+00:00" }, { @@ -935,6 +943,7 @@ "cache", "caching" ], + "abandoned": true, "time": "2018-11-09T06:25:35+00:00" }, { @@ -1063,6 +1072,10 @@ "migrations", "schema" ], + "support": { + "issues": "https://github.com/doctrine/DoctrineMigrationsBundle/issues", + "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/1.3" + }, "time": "2018-12-03T11:55:33+00:00" }, { @@ -1206,6 +1219,10 @@ "singularize", "string" ], + "support": { + "issues": "https://github.com/doctrine/inflector/issues", + "source": "https://github.com/doctrine/inflector/tree/1.3.1" + }, "time": "2019-10-30T19:59:35+00:00" }, { @@ -1322,6 +1339,10 @@ "parser", "php" ], + "support": { + "issues": "https://github.com/doctrine/lexer/issues", + "source": "https://github.com/doctrine/lexer/tree/1.0.2" + }, "time": "2019-06-08T11:03:04+00:00" }, { @@ -1396,6 +1417,10 @@ "database", "migrations" ], + "support": { + "issues": "https://github.com/doctrine/migrations/issues", + "source": "https://github.com/doctrine/migrations/tree/1.8" + }, "time": "2018-06-06T21:00:30+00:00" }, { @@ -1636,6 +1661,7 @@ "keywords": [ "reflection" ], + "abandoned": "roave/better-reflection", "time": "2018-06-14T14:45:07+00:00" }, { @@ -1686,6 +1712,10 @@ "monolog", "productivity" ], + "support": { + "issues": "https://github.com/EasyCorp/easy-log-handler/issues", + "source": "https://github.com/EasyCorp/easy-log-handler/tree/master" + }, "abandoned": true, "time": "2019-10-24T07:13:31+00:00" }, @@ -2105,6 +2135,10 @@ "highlight", "sql" ], + "support": { + "issues": "https://github.com/jdorn/sql-formatter/issues", + "source": "https://github.com/jdorn/sql-formatter/tree/master" + }, "time": "2014-01-12T16:20:24+00:00" }, { @@ -2237,6 +2271,10 @@ "pager", "paginator" ], + "support": { + "issues": "https://github.com/KnpLabs/knp-components/issues", + "source": "https://github.com/KnpLabs/knp-components/tree/master" + }, "time": "2018-09-11T07:54:48+00:00" }, { @@ -2299,6 +2337,10 @@ "paginator", "symfony" ], + "support": { + "issues": "https://github.com/KnpLabs/KnpPaginatorBundle/issues", + "source": "https://github.com/KnpLabs/KnpPaginatorBundle/tree/master" + }, "time": "2018-05-16T12:15:58+00:00" }, { @@ -2396,6 +2438,10 @@ "mobile detector", "php mobile detect" ], + "support": { + "issues": "https://github.com/serbanghita/Mobile-Detect/issues", + "source": "https://github.com/serbanghita/Mobile-Detect/tree/2.8.34" + }, "time": "2019-09-18T18:44:20+00:00" }, { @@ -2535,6 +2581,10 @@ "datetime", "time" ], + "support": { + "issues": "https://github.com/briannesbitt/Carbon/issues", + "source": "https://github.com/briannesbitt/Carbon" + }, "time": "2019-10-14T05:51:36+00:00" }, { @@ -2706,6 +2756,10 @@ "proxy pattern", "service proxies" ], + "support": { + "issues": "https://github.com/Ocramius/ProxyManager/issues", + "source": "https://github.com/Ocramius/ProxyManager/tree/master" + }, "time": "2017-05-04T11:12:50+00:00" }, { @@ -2802,6 +2856,10 @@ "keywords": [ "diff" ], + "support": { + "issues": "https://github.com/PHP-CS-Fixer/diff/issues", + "source": "https://github.com/PHP-CS-Fixer/diff/tree/master" + }, "time": "2018-02-15T16:58:55+00:00" }, { @@ -2848,6 +2906,10 @@ "container", "dependency injection" ], + "support": { + "issues": "https://github.com/silexphp/Pimple/issues", + "source": "https://github.com/silexphp/Pimple/tree/v1.1.1" + }, "time": "2013-11-22T08:30:29+00:00" }, { @@ -2894,6 +2956,9 @@ "psr", "psr-6" ], + "support": { + "source": "https://github.com/php-fig/cache/tree/master" + }, "time": "2016-08-06T20:24:11+00:00" }, { @@ -2943,6 +3008,10 @@ "container-interop", "psr" ], + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/master" + }, "time": "2017-02-14T16:28:37+00:00" }, { @@ -2993,6 +3062,9 @@ "request", "response" ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/master" + }, "time": "2016-08-06T14:39:51+00:00" }, { @@ -3088,6 +3160,9 @@ "psr-16", "simple-cache" ], + "support": { + "source": "https://github.com/php-fig/simple-cache/tree/master" + }, "time": "2017-10-23T01:57:42+00:00" }, { @@ -3128,6 +3203,10 @@ } ], "description": "A polyfill for getallheaders.", + "support": { + "issues": "https://github.com/ralouphie/getallheaders/issues", + "source": "https://github.com/ralouphie/getallheaders/tree/develop" + }, "time": "2019-03-08T08:55:37+00:00" }, { @@ -3494,6 +3573,10 @@ "samesite", "samesite cookie" ], + "support": { + "issues": "https://github.com/skorp/detect-incompatible-samesite-useragents/issues", + "source": "https://github.com/skorp/detect-incompatible-samesite-useragents/tree/master" + }, "time": "2020-01-29T21:12:37+00:00" }, { @@ -3555,6 +3638,10 @@ "mobile view managing", "symfony mobile" ], + "support": { + "issues": "https://github.com/suncat2000/MobileDetectBundle/issues", + "source": "https://github.com/suncat2000/MobileDetectBundle/tree/master" + }, "time": "2018-05-02T10:20:57+00:00" }, { @@ -3617,6 +3704,10 @@ "mail", "mailer" ], + "support": { + "issues": "https://github.com/swiftmailer/swiftmailer/issues", + "source": "https://github.com/swiftmailer/swiftmailer/tree/v6.2.3" + }, "time": "2019-11-12T09:31:26+00:00" }, { @@ -5769,6 +5860,10 @@ "MIT" ], "description": "A pack for the Doctrine ORM", + "support": { + "issues": "https://github.com/symfony/orm-pack/issues", + "source": "https://github.com/symfony/orm-pack/tree/master" + }, "time": "2020-02-10T18:03:48+00:00" }, { @@ -8225,6 +8320,11 @@ "i18n", "text" ], + "support": { + "issues": "https://github.com/twigphp/Twig-extensions/issues", + "source": "https://github.com/twigphp/Twig-extensions/tree/master" + }, + "abandoned": true, "time": "2018-12-05T18:34:18+00:00" }, { @@ -8342,6 +8442,10 @@ "env", "environment" ], + "support": { + "issues": "https://github.com/vlucas/phpdotenv/issues", + "source": "https://github.com/vlucas/phpdotenv/tree/master" + }, "time": "2016-09-01T10:05:43+00:00" }, { @@ -8450,6 +8554,10 @@ "events", "zf2" ], + "support": { + "issues": "https://github.com/zendframework/zend-eventmanager/issues", + "source": "https://github.com/zendframework/zend-eventmanager/tree/master" + }, "abandoned": "laminas/laminas-eventmanager", "time": "2018-04-25T15:33:34+00:00" } @@ -8562,6 +8670,10 @@ "images-generator", "imagesgenerator" ], + "support": { + "issues": "https://github.com/bruceheller/images-generator/issues", + "source": "https://github.com/bruceheller/images-generator/tree/1.0.1" + }, "time": "2016-03-03T08:40:48+00:00" }, { @@ -8595,6 +8707,10 @@ } ], "description": "Test emails in your Codeception acceptance tests", + "support": { + "issues": "https://github.com/captbaritone/codeception-mailcatcher-module/issues", + "source": "https://github.com/captbaritone/codeception-mailcatcher-module/tree/master" + }, "time": "2016-08-16T21:35:06+00:00" }, { @@ -8686,6 +8802,10 @@ "functional testing", "unit testing" ], + "support": { + "issues": "https://github.com/Codeception/Codeception/issues", + "source": "https://github.com/Codeception/Codeception/tree/2.4.5" + }, "time": "2018-08-01T07:21:49+00:00" }, { @@ -8762,6 +8882,10 @@ "MIT" ], "description": "Flexible Stub wrapper for PHPUnit's Mock Builder", + "support": { + "issues": "https://github.com/Codeception/Stub/issues", + "source": "https://github.com/Codeception/Stub/tree/master" + }, "time": "2019-03-02T15:35:10+00:00" }, { @@ -8821,6 +8945,10 @@ "symfony 2", "tests" ], + "support": { + "issues": "https://github.com/dmaicher/doctrine-test-bundle/issues", + "source": "https://github.com/dmaicher/doctrine-test-bundle/tree/v5.0.5" + }, "time": "2019-11-25T10:12:28+00:00" }, { @@ -8881,6 +9009,11 @@ "selenium", "webdriver" ], + "support": { + "forum": "https://www.facebook.com/groups/phpwebdriver/", + "issues": "https://github.com/facebook/php-webdriver/issues", + "source": "https://github.com/facebook/php-webdriver" + }, "abandoned": "php-webdriver/webdriver", "time": "2019-06-13T08:02:18+00:00" }, @@ -8930,6 +9063,7 @@ "faker", "fixtures" ], + "abandoned": true, "time": "2019-11-14T13:13:06+00:00" }, { @@ -8976,6 +9110,11 @@ ], "description": "Virtual file system to mock the real file system in unit tests.", "homepage": "http://vfs.bovigo.org/", + "support": { + "issues": "https://github.com/bovigo/vfsStream/issues", + "source": "https://github.com/bovigo/vfsStream/tree/master", + "wiki": "https://github.com/bovigo/vfsStream/wiki" + }, "time": "2019-10-30T15:31:00+00:00" }, { @@ -9079,6 +9218,10 @@ } ], "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", + "support": { + "issues": "https://github.com/phar-io/manifest/issues", + "source": "https://github.com/phar-io/manifest/tree/master" + }, "time": "2017-03-05T18:14:27+00:00" }, { @@ -9126,6 +9269,10 @@ } ], "description": "Library for handling version information and constraints", + "support": { + "issues": "https://github.com/phar-io/version/issues", + "source": "https://github.com/phar-io/version/tree/master" + }, "time": "2017-03-05T17:38:23+00:00" }, { @@ -9359,6 +9506,10 @@ } ], "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", + "support": { + "issues": "https://github.com/phpDocumentor/TypeResolver/issues", + "source": "https://github.com/phpDocumentor/TypeResolver/tree/0.7.2" + }, "time": "2019-08-22T18:11:29+00:00" }, { @@ -9424,6 +9575,62 @@ ], "time": "2019-10-03T11:07:50+00:00" }, + { + "name": "phpstan/phpstan", + "version": "0.12.70", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpstan.git", + "reference": "07f0ef37f5f876e8cee44cc8ea0ec3fe80d499ee" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/07f0ef37f5f876e8cee44cc8ea0ec3fe80d499ee", + "reference": "07f0ef37f5f876e8cee44cc8ea0ec3fe80d499ee", + "shasum": "" + }, + "require": { + "php": "^7.1|^8.0" + }, + "conflict": { + "phpstan/phpstan-shim": "*" + }, + "bin": [ + "phpstan", + "phpstan.phar" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "0.12-dev" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPStan - PHP Static Analysis Tool", + "funding": [ + { + "url": "https://github.com/ondrejmirtes", + "type": "github" + }, + { + "url": "https://www.patreon.com/phpstan", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan", + "type": "tidelift" + } + ], + "time": "2021-01-27T17:06:47+00:00" + }, { "name": "phpunit/php-code-coverage", "version": "5.3.2", @@ -9485,6 +9692,10 @@ "testing", "xunit" ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/5.3" + }, "time": "2018-04-06T15:36:58+00:00" }, { @@ -9532,6 +9743,11 @@ "filesystem", "iterator" ], + "support": { + "irc": "irc://irc.freenode.net/phpunit", + "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/1.4.5" + }, "time": "2017-11-27T13:52:08+00:00" }, { @@ -9573,6 +9789,10 @@ "keywords": [ "template" ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-text-template/issues", + "source": "https://github.com/sebastianbergmann/php-text-template/tree/1.2.1" + }, "time": "2015-06-21T13:50:34+00:00" }, { @@ -9622,6 +9842,10 @@ "keywords": [ "timer" ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-timer/issues", + "source": "https://github.com/sebastianbergmann/php-timer/tree/master" + }, "time": "2017-02-26T11:10:40+00:00" }, { @@ -9671,6 +9895,10 @@ "keywords": [ "tokenizer" ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-token-stream/issues", + "source": "https://github.com/sebastianbergmann/php-token-stream/tree/master" + }, "abandoned": true, "time": "2017-11-27T05:48:46+00:00" }, @@ -9756,6 +9984,10 @@ "testing", "xunit" ], + "support": { + "issues": "https://github.com/sebastianbergmann/phpunit/issues", + "source": "https://github.com/sebastianbergmann/phpunit/tree/6.5.14" + }, "time": "2019-02-01T05:22:47+00:00" }, { @@ -9815,6 +10047,10 @@ "mock", "xunit" ], + "support": { + "issues": "https://github.com/sebastianbergmann/phpunit-mock-objects/issues", + "source": "https://github.com/sebastianbergmann/phpunit-mock-objects/tree/5.0.10" + }, "abandoned": true, "time": "2018-08-09T05:50:03+00:00" }, @@ -9861,6 +10097,10 @@ ], "description": "Looks up which function or method a line of code belongs to", "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", + "support": { + "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", + "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/master" + }, "time": "2017-03-04T06:30:41+00:00" }, { @@ -9925,6 +10165,10 @@ "compare", "equality" ], + "support": { + "issues": "https://github.com/sebastianbergmann/comparator/issues", + "source": "https://github.com/sebastianbergmann/comparator/tree/master" + }, "time": "2018-02-01T13:46:46+00:00" }, { @@ -9977,6 +10221,10 @@ "keywords": [ "diff" ], + "support": { + "issues": "https://github.com/sebastianbergmann/diff/issues", + "source": "https://github.com/sebastianbergmann/diff/tree/master" + }, "time": "2017-08-03T08:09:46+00:00" }, { @@ -10027,6 +10275,10 @@ "environment", "hhvm" ], + "support": { + "issues": "https://github.com/sebastianbergmann/environment/issues", + "source": "https://github.com/sebastianbergmann/environment/tree/master" + }, "time": "2017-07-01T08:51:00+00:00" }, { @@ -10094,6 +10346,10 @@ "export", "exporter" ], + "support": { + "issues": "https://github.com/sebastianbergmann/exporter/issues", + "source": "https://github.com/sebastianbergmann/exporter/tree/master" + }, "time": "2019-09-14T09:02:43+00:00" }, { @@ -10145,6 +10401,10 @@ "keywords": [ "global state" ], + "support": { + "issues": "https://github.com/sebastianbergmann/global-state/issues", + "source": "https://github.com/sebastianbergmann/global-state/tree/2.0.0" + }, "time": "2017-04-27T15:39:26+00:00" }, { @@ -10192,6 +10452,10 @@ ], "description": "Traverses array structures and object graphs to enumerate all referenced objects", "homepage": "https://github.com/sebastianbergmann/object-enumerator/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", + "source": "https://github.com/sebastianbergmann/object-enumerator/tree/master" + }, "time": "2017-08-03T12:35:26+00:00" }, { @@ -10237,6 +10501,10 @@ ], "description": "Allows reflection of object attributes, including inherited and non-public ones", "homepage": "https://github.com/sebastianbergmann/object-reflector/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-reflector/issues", + "source": "https://github.com/sebastianbergmann/object-reflector/tree/master" + }, "time": "2017-03-29T09:07:27+00:00" }, { @@ -10290,6 +10558,10 @@ ], "description": "Provides functionality to recursively process PHP variables", "homepage": "http://www.github.com/sebastianbergmann/recursion-context", + "support": { + "issues": "https://github.com/sebastianbergmann/recursion-context/issues", + "source": "https://github.com/sebastianbergmann/recursion-context/tree/master" + }, "time": "2017-03-03T06:23:57+00:00" }, { @@ -10332,6 +10604,10 @@ ], "description": "Provides a list of PHP built-in functions that operate on resources", "homepage": "https://www.github.com/sebastianbergmann/resource-operations", + "support": { + "issues": "https://github.com/sebastianbergmann/resource-operations/issues", + "source": "https://github.com/sebastianbergmann/resource-operations/tree/master" + }, "time": "2015-07-28T20:34:47+00:00" }, { @@ -10375,6 +10651,10 @@ ], "description": "Library that helps with managing the version number of Git-hosted PHP projects", "homepage": "https://github.com/sebastianbergmann/version", + "support": { + "issues": "https://github.com/sebastianbergmann/version/issues", + "source": "https://github.com/sebastianbergmann/version/tree/master" + }, "time": "2016-10-03T07:35:21+00:00" }, { @@ -10565,6 +10845,10 @@ } ], "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", + "support": { + "issues": "https://github.com/theseer/tokenizer/issues", + "source": "https://github.com/theseer/tokenizer/tree/master" + }, "time": "2019-06-13T22:48:21+00:00" }, { @@ -10572,12 +10856,12 @@ "version": "1.6.0", "source": { "type": "git", - "url": "https://github.com/webmozart/assert.git", + "url": "https://github.com/webmozarts/assert.git", "reference": "573381c0a64f155a0d9a23f4b0c797194805b925" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webmozart/assert/zipball/573381c0a64f155a0d9a23f4b0c797194805b925", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/573381c0a64f155a0d9a23f4b0c797194805b925", "reference": "573381c0a64f155a0d9a23f4b0c797194805b925", "shasum": "" }, diff --git a/symfony.lock b/symfony.lock index 366dae15455..7d74c13d637 100644 --- a/symfony.lock +++ b/symfony.lock @@ -221,6 +221,9 @@ "phpspec/prophecy": { "version": "1.7.5" }, + "phpstan/phpstan": { + "version": "0.12.70" + }, "phpunit/php-code-coverage": { "version": "5.3.2" }, From ec467505bc0ca1c012c88291768750060a1facca Mon Sep 17 00:00:00 2001 From: Kentaro Ohkouchi Date: Mon, 1 Feb 2021 15:08:44 +0900 Subject: [PATCH 195/207] =?UTF-8?q?phpstan=20=E3=81=AE=E3=82=A4=E3=83=B3?= =?UTF-8?q?=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=82=92=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/phpstan.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/phpstan.yml b/.github/workflows/phpstan.yml index cddab539318..60724eeceb5 100644 --- a/.github/workflows/phpstan.yml +++ b/.github/workflows/phpstan.yml @@ -31,6 +31,4 @@ jobs: sudo composer selfupdate --1 composer install --dev --no-interaction -o --apcu-autoloader - name: PHPStan - run: | - composer require phpstan/phpstan --dev - vendor/bin/phpstan analyze src/ --error-format=github + run: vendor/bin/phpstan analyze src/ --error-format=github From 47c1c208420ded8cb906b9b6c41abe063f70f2d1 Mon Sep 17 00:00:00 2001 From: yshirai Date: Mon, 1 Feb 2021 20:17:34 +0900 Subject: [PATCH 196/207] =?UTF-8?q?=E3=82=AB=E3=83=BC=E3=83=88=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0=E6=99=82=E3=81=AE=E3=83=A2=E3=83=BC=E3=83=80=E3=83=AB?= =?UTF-8?q?=E3=82=A6=E3=82=A3=E3=83=B3=E3=83=89=E3=82=A6=E3=81=AE=E7=99=BD?= =?UTF-8?q?=E3=81=84=E3=81=A8=E3=81=93=E3=82=8D=E3=82=92=E3=82=AF=E3=83=AA?= =?UTF-8?q?=E3=83=83=E3=82=AF=E3=81=95=E3=82=8C=E3=81=9F=E6=99=82=E3=81=AF?= =?UTF-8?q?=E3=83=A2=E3=83=BC=E3=83=80=E3=83=AB=E3=82=92=E6=B6=88=E3=81=95?= =?UTF-8?q?=E3=81=AA=E3=81=84=E3=82=88=E3=81=86=E3=81=AB=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/template/default/Product/detail.twig | 6 +++++- src/Eccube/Resource/template/default/Product/list.twig | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Resource/template/default/Product/detail.twig b/src/Eccube/Resource/template/default/Product/detail.twig index 30640909f8e..72533ccb38f 100755 --- a/src/Eccube/Resource/template/default/Product/detail.twig +++ b/src/Eccube/Resource/template/default/Product/detail.twig @@ -206,7 +206,11 @@ file that was distributed with this source code. }); }); - $('.ec-modal-overlay, .ec-modal .ec-inlineBtn--cancel').on('click', function() { + $('.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() }); diff --git a/src/Eccube/Resource/template/default/Product/list.twig b/src/Eccube/Resource/template/default/Product/list.twig index 9e7852b451b..ac0c2c533cf 100644 --- a/src/Eccube/Resource/template/default/Product/list.twig +++ b/src/Eccube/Resource/template/default/Product/list.twig @@ -87,7 +87,11 @@ file that was distributed with this source code. }); }); - $('.ec-modal-overlay, .ec-modal .ec-inlineBtn--cancel').on('click', function() { + $('.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() }); From f82d76bb5addc921eb2cc0cd17b9744ac8f76979 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 2 Feb 2021 10:53:08 +0900 Subject: [PATCH 197/207] =?UTF-8?q?=E5=88=A9=E7=94=A8=E6=9D=A1=E4=BB=B6?= =?UTF-8?q?=E3=81=AE=E5=88=A4=E5=AE=9A=E3=82=92=E3=80=81=E8=87=AA=E8=BA=AB?= =?UTF-8?q?=E3=81=AE=E6=89=8B=E6=95=B0=E6=96=99=E3=82=92=E8=80=83=E6=85=AE?= =?UTF-8?q?=E3=81=97=E3=81=A6=E8=A8=88=E7=AE=97=E3=81=99=E3=82=8B=E3=82=88?= =?UTF-8?q?=E3=81=86=E3=81=AB=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Form/Type/Shopping/OrderType.php | 13 +++++++++---- src/Eccube/Service/OrderHelper.php | 11 +++++++++++ 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/Eccube/Form/Type/Shopping/OrderType.php b/src/Eccube/Form/Type/Shopping/OrderType.php index a32ef8974f0..b7566c12766 100644 --- a/src/Eccube/Form/Type/Shopping/OrderType.php +++ b/src/Eccube/Form/Type/Shopping/OrderType.php @@ -133,7 +133,9 @@ public function buildForm(FormBuilderInterface $builder, array $options) $Deliveries = $this->getDeliveries($Order); $Payments = $this->getPayments($Deliveries); - $Payments = $this->filterPayments($Payments, $Order->getPaymentTotal()); + // @see https://github.com/EC-CUBE/ec-cube/issues/4881 + $charge = $Order->getPayment() ? $Order->getPayment()->getCharge() : 0; + $Payments = $this->filterPayments($Payments, $Order->getPaymentTotal() - $charge); $form = $event->getForm(); $this->addPaymentForm($form, $Payments, $Order->getPayment()); @@ -159,7 +161,9 @@ public function buildForm(FormBuilderInterface $builder, array $options) } $Payments = $this->getPayments($Deliveries); - $Payments = $this->filterPayments($Payments, $Order->getPaymentTotal()); + // @see https://github.com/EC-CUBE/ec-cube/issues/4881 + $charge = $Order->getPayment() ? $Order->getPayment()->getCharge() : 0; + $Payments = $this->filterPayments($Payments, $Order->getPaymentTotal() - $charge); $form = $event->getForm(); $this->addPaymentForm($form, $Payments); @@ -284,14 +288,15 @@ private function getPayments($Deliveries) private function filterPayments(ArrayCollection $Payments, $total) { $PaymentArrays = $Payments->filter(function (Payment $Payment) use ($total) { + $charge = $Payment->getCharge(); $min = $Payment->getRuleMin(); $max = $Payment->getRuleMax(); - if (null !== $min && $total < $min) { + if (null !== $min && ($total + $charge) < $min) { return false; } - if (null !== $max && $total > $max) { + if (null !== $max && ($total + $charge) > $max) { return false; } diff --git a/src/Eccube/Service/OrderHelper.php b/src/Eccube/Service/OrderHelper.php index fbd3e3a960e..f76f6681e6c 100644 --- a/src/Eccube/Service/OrderHelper.php +++ b/src/Eccube/Service/OrderHelper.php @@ -24,6 +24,7 @@ use Eccube\Entity\Master\OrderStatus; use Eccube\Entity\Order; use Eccube\Entity\OrderItem; +use Eccube\Entity\Payment; use Eccube\Entity\Shipping; use Eccube\EventListener\SecurityListener; use Eccube\Repository\DeliveryRepository; @@ -466,6 +467,16 @@ protected function setDefaultPayment(Order $Order) // 利用可能な支払い方法を抽出. $Payments = $this->paymentRepository->findAllowedPayments($Deliveries, true); + // ここでは支払総額はまだ決まっていないため、利用条件が設定されているものは初期選択の支払い方法として除外する + $Payments = array_filter($Payments, function (Payment $Payment) { + $min = $Payment->getRuleMin(); + $max = $Payment->getRuleMax(); + if ($max === null && ($min === null || $min <= 1)) { + return true; + } + + return false; + }); // 初期の支払い方法を設定. $Payment = current($Payments); From 9812a75b87ce1592119a7197fbbe4e5e60c30202 Mon Sep 17 00:00:00 2001 From: Dakeyama Date: Sat, 6 Feb 2021 16:49:37 +0900 Subject: [PATCH 198/207] =?UTF-8?q?=E3=81=94=E6=B3=A8=E6=96=87=E6=89=8B?= =?UTF-8?q?=E7=B6=9A=E3=81=8D=E7=94=BB=E9=9D=A2=E3=81=A7=E5=95=86=E5=93=81?= =?UTF-8?q?=E7=A8=AE=E5=88=A5=E3=81=8C=E5=85=A5=E3=82=8C=E6=9B=BF=E3=82=8F?= =?UTF-8?q?=E3=82=8B=E5=95=8F=E9=A1=8C=E3=81=AE=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Controller/ShippingMultipleController.php | 5 ++++- src/Eccube/Controller/ShoppingController.php | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/Eccube/Controller/ShippingMultipleController.php b/src/Eccube/Controller/ShippingMultipleController.php index 2044f86a47d..696c88a307b 100644 --- a/src/Eccube/Controller/ShippingMultipleController.php +++ b/src/Eccube/Controller/ShippingMultipleController.php @@ -344,7 +344,10 @@ public function index(Request $request) } $this->cartPurchaseFlow->validate($Cart, new PurchaseContext($Cart, $this->getUser())); - $this->cartService->save(); + + // 注文フローで取得されるカートの入れ替わりを防止する + // @see https://github.com/EC-CUBE/ec-cube/issues/4293 + $this->cartService->setPrimary($Cart->getCartKey()); } return $this->redirectToRoute('shopping'); diff --git a/src/Eccube/Controller/ShoppingController.php b/src/Eccube/Controller/ShoppingController.php index 457b58548b5..743b60284f3 100644 --- a/src/Eccube/Controller/ShoppingController.php +++ b/src/Eccube/Controller/ShoppingController.php @@ -125,7 +125,10 @@ public function index(PurchaseFlow $cartPurchaseFlow) // 受注明細と同期をとるため, CartPurchaseFlowを実行する $cartPurchaseFlow->validate($Cart, new PurchaseContext($Cart, $this->getUser())); - $this->cartService->save(); + + // 注文フローで取得されるカートの入れ替わりを防止する + // @see https://github.com/EC-CUBE/ec-cube/issues/4293 + $this->cartService->setPrimary($Cart->getCartKey()); } // マイページで会員情報が更新されていれば, Orderの注文者情報も更新する. From 70855743590004ff3e1f8c4f9888985e247db738 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 16 Feb 2021 15:18:02 +0900 Subject: [PATCH 199/207] =?UTF-8?q?=E8=A9=B3=E7=B4=B0=E6=A4=9C=E7=B4=A2?= =?UTF-8?q?=E3=83=9C=E3=82=BF=E3=83=B3=E3=81=AE=E5=AF=BE=E8=B1=A1=E7=AF=84?= =?UTF-8?q?=E5=9B=B2=E3=82=92=E8=AA=BF=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codeception/_support/Page/Admin/OrderManagePage.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codeception/_support/Page/Admin/OrderManagePage.php b/codeception/_support/Page/Admin/OrderManagePage.php index f473db0a8c5..fc17808f549 100644 --- a/codeception/_support/Page/Admin/OrderManagePage.php +++ b/codeception/_support/Page/Admin/OrderManagePage.php @@ -18,7 +18,7 @@ class OrderManagePage extends AbstractAdminPageStyleGuide public static $検索条件_受注ステータス = ['id' => 'admin_search_order_status']; public static $検索結果_メッセージ = '#search_form #search_total_count'; public static $検索結果_エラーメッセージ = '//*[@id="page_admin_order"]/div[1]/div[3]/div[3]/div/div/div[1]/div/div[1]'; - public static $詳細検索ボタン = '//*[@id="search_form"]/div[1]/div/div/div[3]/a/i/span'; + public static $詳細検索ボタン = '//*[@id="search_form"]/div[1]/div/div/div[3]'; public static $タイトル要素 = '.c-container .c-contentsArea .c-pageTitle .c-pageTitle__titles'; /** From c1768aa3c28d19ecd7dcd25ed1775af95abc9f49 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 16 Feb 2021 15:18:46 +0900 Subject: [PATCH 200/207] =?UTF-8?q?tempusdominus=E3=81=AE=E8=AA=AD?= =?UTF-8?q?=E3=81=BF=E8=BE=BC=E3=81=BF=E9=A0=86=E3=81=AE=E8=AA=BF=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Eccube/Resource/template/admin/Customer/index.twig | 7 ++++--- src/Eccube/Resource/template/admin/Order/index.twig | 7 ++++--- src/Eccube/Resource/template/admin/Order/order_pdf.twig | 7 ++++--- src/Eccube/Resource/template/admin/Product/index.twig | 7 ++++--- 4 files changed, 16 insertions(+), 12 deletions(-) diff --git a/src/Eccube/Resource/template/admin/Customer/index.twig b/src/Eccube/Resource/template/admin/Customer/index.twig index 325aa3db3ab..d9e2895c4f6 100644 --- a/src/Eccube/Resource/template/admin/Customer/index.twig +++ b/src/Eccube/Resource/template/admin/Customer/index.twig @@ -41,9 +41,10 @@ file that was distributed with this source code. $.when( $.getScript("{{ asset('assets/js/vendor/moment.min.js', 'admin') }}"), - $.getScript("{{ asset('assets/js/vendor/moment-with-locales.min.js', 'admin') }}"), - $.getScript("{{ asset('assets/js/vendor/tempusdominus-bootstrap-4.min.js', 'admin') }}") - ).done(function() { + $.getScript("{{ asset('assets/js/vendor/moment-with-locales.min.js', 'admin') }}") + ).then(function() { + return $.getScript("{{ asset('assets/js/vendor/tempusdominus-bootstrap-4.min.js', 'admin') }}") + }).then(function() { // datetimepicker で value が消えてしまうので data-value に保持しておく $('input.datetimepicker-input').each(function() { $(this).data('value', $(this).val()); diff --git a/src/Eccube/Resource/template/admin/Order/index.twig b/src/Eccube/Resource/template/admin/Order/index.twig index 0f8f48de4ef..3508e6f7230 100644 --- a/src/Eccube/Resource/template/admin/Order/index.twig +++ b/src/Eccube/Resource/template/admin/Order/index.twig @@ -36,9 +36,10 @@ file that was distributed with this source code. $(function() { $.when( $.getScript("{{ asset('assets/js/vendor/moment.min.js', 'admin') }}"), - $.getScript("{{ asset('assets/js/vendor/moment-with-locales.min.js', 'admin') }}"), - $.getScript("{{ asset('assets/js/vendor/tempusdominus-bootstrap-4.min.js', 'admin') }}") - ).done(function() { + $.getScript("{{ asset('assets/js/vendor/moment-with-locales.min.js', 'admin') }}") + ).then(function() { + return $.getScript("{{ asset('assets/js/vendor/tempusdominus-bootstrap-4.min.js', 'admin') }}") + }).then(function() { // datetimepicker で value が消えてしまうので data-value に保持しておく $('input.datetimepicker-input').each(function() { $(this).data('value', $(this).val()); diff --git a/src/Eccube/Resource/template/admin/Order/order_pdf.twig b/src/Eccube/Resource/template/admin/Order/order_pdf.twig index b0797b268f8..2b4a9d21d2b 100644 --- a/src/Eccube/Resource/template/admin/Order/order_pdf.twig +++ b/src/Eccube/Resource/template/admin/Order/order_pdf.twig @@ -54,9 +54,10 @@ file that was distributed with this source code. // input type属性でdateが利用できるかどうか(カレンダー表示できないブラウザ対応) $.when( $.getScript("{{ asset('assets/js/vendor/moment.min.js', 'admin') }}"), - $.getScript("{{ asset('assets/js/vendor/moment-with-locales.min.js', 'admin') }}"), - $.getScript("{{ asset('assets/js/vendor/tempusdominus-bootstrap-4.min.js', 'admin') }}") - ).done(function() { + $.getScript("{{ asset('assets/js/vendor/moment-with-locales.min.js', 'admin') }}") + ).then(function() { + return $.getScript("{{ asset('assets/js/vendor/tempusdominus-bootstrap-4.min.js', 'admin') }}") + }).then(function() { $('input[id$=_issue_date]').datetimepicker({ locale: '{{ eccube_config.locale }}', format: 'YYYY-MM-DD', diff --git a/src/Eccube/Resource/template/admin/Product/index.twig b/src/Eccube/Resource/template/admin/Product/index.twig index 87bbb3f620e..ccd965dd46a 100644 --- a/src/Eccube/Resource/template/admin/Product/index.twig +++ b/src/Eccube/Resource/template/admin/Product/index.twig @@ -37,9 +37,10 @@ file that was distributed with this source code. $(function() { $.when( $.getScript("{{ asset('assets/js/vendor/moment.min.js', 'admin') }}"), - $.getScript("{{ asset('assets/js/vendor/moment-with-locales.min.js', 'admin') }}"), - $.getScript("{{ asset('assets/js/vendor/tempusdominus-bootstrap-4.min.js', 'admin') }}") - ).done(function() { + $.getScript("{{ asset('assets/js/vendor/moment-with-locales.min.js', 'admin') }}") + ).then(function() { + return $.getScript("{{ asset('assets/js/vendor/tempusdominus-bootstrap-4.min.js', 'admin') }}") + }).then(function() { // datetimepicker で value が消えてしまうので data-value に保持しておく $('input.datetimepicker-input').each(function() { $(this).data('value', $(this).val()); From eb792e843d41ed4beb77cec9bbd8b4766339ca22 Mon Sep 17 00:00:00 2001 From: Chihiro Adachi <8196725+chihiro-adachi@users.noreply.github.com> Date: Tue, 16 Feb 2021 15:58:29 +0900 Subject: [PATCH 201/207] =?UTF-8?q?getScript=E3=81=A7=E3=81=AF=E3=81=AA?= =?UTF-8?q?=E3=81=8F=E3=82=B9=E3=82=AF=E3=83=AA=E3=83=97=E3=83=88=E3=82=BF?= =?UTF-8?q?=E3=82=B0=E3=81=A7=E8=AA=AD=E3=81=BF=E8=BE=BC=E3=82=80=E3=82=88?= =?UTF-8?q?=E3=81=86=E3=81=AB=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../template/admin/Customer/index.twig | 79 +++++++++---------- .../Resource/template/admin/Order/index.twig | 43 +++++----- .../template/admin/Order/order_pdf.twig | 28 +++---- .../template/admin/Product/index.twig | 43 +++++----- 4 files changed, 90 insertions(+), 103 deletions(-) diff --git a/src/Eccube/Resource/template/admin/Customer/index.twig b/src/Eccube/Resource/template/admin/Customer/index.twig index d9e2895c4f6..38ad651bf44 100644 --- a/src/Eccube/Resource/template/admin/Customer/index.twig +++ b/src/Eccube/Resource/template/admin/Customer/index.twig @@ -33,57 +33,54 @@ file that was distributed with this source code. {% endblock stylesheet %} {% block javascript %} + + + + + + + + + + + + +